@onekeyfe/react-native-native-overlay 3.0.162-alpha.270 → 6.7.0-11
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/android/build.gradle +6 -0
- package/android/src/main/java/com/onekey/nativeoverlay/NativeOverlayAccessibilityIsolation.kt +37 -0
- package/android/src/main/java/com/onekey/nativeoverlay/NativeOverlayAnimation.kt +5 -10
- package/android/src/main/java/com/onekey/nativeoverlay/NativeOverlayEntryRootView.kt +23 -2
- package/android/src/main/java/com/onekey/nativeoverlay/NativeOverlayHost.kt +31 -32
- package/android/src/main/java/com/onekey/nativeoverlay/NativeOverlayPageHostView.kt +21 -0
- package/android/src/main/java/com/onekey/nativeoverlay/NativeOverlayView.kt +10 -3
- package/android/src/test/java/com/onekey/nativeoverlay/NativeOverlayAccessibilityIsolationTest.kt +112 -0
- package/android/src/test/java/com/onekey/nativeoverlay/NativeOverlayBackTest.kt +295 -0
- package/android/src/test/java/com/onekey/nativeoverlay/NativeOverlayMotionTest.kt +101 -0
- package/docs/SPEC.md +198 -30
- package/ios/NativeOverlayContainerView.swift +20 -7
- package/ios/NativeOverlaySheetController.swift +37 -1
- package/lib/module/OverlayPageHost.web.js +19 -6
- package/lib/module/OverlayPageHost.web.js.map +1 -1
- package/lib/module/OverlayStore.js +13 -1
- package/lib/module/OverlayStore.js.map +1 -1
- package/lib/module/OverlayView.web.js +107 -25
- package/lib/module/OverlayView.web.js.map +1 -1
- package/lib/module/useOverlayController.js +11 -3
- package/lib/module/useOverlayController.js.map +1 -1
- package/lib/module/web/animateTransition.js +20 -12
- package/lib/module/web/animateTransition.js.map +1 -1
- package/lib/module/web/overlayLayers.js +27 -9
- package/lib/module/web/overlayLayers.js.map +1 -1
- package/lib/module/web/useKeyboardShift.js +1 -1
- package/lib/module/web/useKeyboardShift.js.map +1 -1
- package/lib/module/web/useSheetDrag.js +22 -2
- package/lib/module/web/useSheetDrag.js.map +1 -1
- package/lib/typescript/src/OverlayPageHost.web.d.ts.map +1 -1
- package/lib/typescript/src/OverlayStore.d.ts +2 -0
- package/lib/typescript/src/OverlayStore.d.ts.map +1 -1
- package/lib/typescript/src/OverlayView.web.d.ts.map +1 -1
- package/lib/typescript/src/useOverlayController.d.ts.map +1 -1
- package/lib/typescript/src/web/animateTransition.d.ts +2 -2
- package/lib/typescript/src/web/animateTransition.d.ts.map +1 -1
- package/lib/typescript/src/web/overlayLayers.d.ts +3 -0
- package/lib/typescript/src/web/overlayLayers.d.ts.map +1 -1
- package/lib/typescript/src/web/useSheetDrag.d.ts.map +1 -1
- package/package.json +2 -1
- package/src/OverlayPageHost.web.tsx +24 -9
- package/src/OverlayStore.ts +13 -1
- package/src/OverlayView.web.tsx +197 -56
- package/src/useOverlayController.ts +11 -4
- package/src/web/animateTransition.ts +30 -11
- package/src/web/overlayLayers.ts +48 -10
- package/src/web/useKeyboardShift.ts +1 -1
- package/src/web/useSheetDrag.ts +23 -2
|
@@ -7,6 +7,7 @@ export const ENTRY_ATTRIBUTE = 'data-onekey-overlay-entry';
|
|
|
7
7
|
const APP_ROOT_ID = 'root';
|
|
8
8
|
const layerRoots = new Map();
|
|
9
9
|
const pageHosts = new Map();
|
|
10
|
+
const pageHostListeners = new Map();
|
|
10
11
|
const dismissRequesters = new Map();
|
|
11
12
|
let installed = false;
|
|
12
13
|
function createLayerRoot(level) {
|
|
@@ -52,14 +53,16 @@ function siblingsOutside(host, root) {
|
|
|
52
53
|
}
|
|
53
54
|
return siblings;
|
|
54
55
|
}
|
|
55
|
-
function inertEntriesBelow(container,
|
|
56
|
+
function inertEntriesBelow(container, top) {
|
|
56
57
|
container.querySelectorAll(`[${ENTRY_ATTRIBUTE}]`).forEach(node => {
|
|
57
|
-
|
|
58
|
+
const level = Number(node.dataset.overlayLevelOrder);
|
|
59
|
+
const below = !!top && (level < OVERLAY_LEVEL_ORDER[top.level] || level === OVERLAY_LEVEL_ORDER[top.level] && Number(node.dataset.stackOrder) < top.seq);
|
|
60
|
+
setInert(node, below || node.style.visibility === 'hidden' || node.getAttribute('aria-hidden') === 'true');
|
|
58
61
|
});
|
|
59
62
|
}
|
|
60
63
|
|
|
61
64
|
/** Everything rendered below the topmost blocking entry becomes inert. */
|
|
62
|
-
function
|
|
65
|
+
export function syncOverlayInert() {
|
|
63
66
|
const top = overlayStore.getBlockingTop();
|
|
64
67
|
const appRoot = document.getElementById(APP_ROOT_ID);
|
|
65
68
|
let nextPageInert = new Set();
|
|
@@ -67,7 +70,6 @@ function syncInert() {
|
|
|
67
70
|
if (top && pageHost && appRoot?.contains(pageHost)) {
|
|
68
71
|
setInert(appRoot, false);
|
|
69
72
|
nextPageInert = siblingsOutside(pageHost, appRoot);
|
|
70
|
-
inertEntriesBelow(pageHost, top.seq);
|
|
71
73
|
} else {
|
|
72
74
|
setInert(appRoot, !!top);
|
|
73
75
|
}
|
|
@@ -78,13 +80,14 @@ function syncInert() {
|
|
|
78
80
|
});
|
|
79
81
|
nextPageInert.forEach(element => setInert(element, true));
|
|
80
82
|
pageInertElements = nextPageInert;
|
|
83
|
+
for (const [hostKey, host] of pageHosts) {
|
|
84
|
+
inertEntriesBelow(host, top?.scope === 'page' && top.hostKey === hostKey ? top : undefined);
|
|
85
|
+
}
|
|
81
86
|
for (const [level, root] of layerRoots) {
|
|
82
87
|
// Global layers render above every page overlay.
|
|
83
88
|
const below = top?.scope === 'global' && OVERLAY_LEVEL_ORDER[level] < OVERLAY_LEVEL_ORDER[top.level];
|
|
84
89
|
setInert(root, below);
|
|
85
|
-
|
|
86
|
-
inertEntriesBelow(root, top.seq);
|
|
87
|
-
}
|
|
90
|
+
inertEntriesBelow(root, top?.scope === 'global' && level === top.level ? top : undefined);
|
|
88
91
|
}
|
|
89
92
|
}
|
|
90
93
|
function onKeyDown(event) {
|
|
@@ -107,7 +110,7 @@ function installOverlayWebManager() {
|
|
|
107
110
|
return;
|
|
108
111
|
}
|
|
109
112
|
installed = true;
|
|
110
|
-
overlayStore.subscribe(
|
|
113
|
+
overlayStore.subscribe(syncOverlayInert);
|
|
111
114
|
document.addEventListener('keydown', onKeyDown, true);
|
|
112
115
|
}
|
|
113
116
|
export function getOverlayLayerRoot(level) {
|
|
@@ -130,17 +133,32 @@ export function registerOverlayDismissRequester(id, requester) {
|
|
|
130
133
|
|
|
131
134
|
/** Re-run after entry DOM nodes mount, since the store emits before commit. */
|
|
132
135
|
export function scheduleOverlayInertSync() {
|
|
133
|
-
requestAnimationFrame(
|
|
136
|
+
requestAnimationFrame(syncOverlayInert);
|
|
134
137
|
}
|
|
135
138
|
export function registerOverlayPageHost(hostKey, element) {
|
|
136
139
|
installOverlayWebManager();
|
|
137
140
|
pageHosts.set(hostKey, element);
|
|
141
|
+
pageHostListeners.get(hostKey)?.forEach(listener => listener());
|
|
138
142
|
return () => {
|
|
139
143
|
if (pageHosts.get(hostKey) === element) {
|
|
140
144
|
pageHosts.delete(hostKey);
|
|
145
|
+
pageHostListeners.get(hostKey)?.forEach(listener => listener());
|
|
141
146
|
}
|
|
142
147
|
};
|
|
143
148
|
}
|
|
149
|
+
export function subscribeOverlayPageHost(hostKey, listener) {
|
|
150
|
+
if (!hostKey) return () => {};
|
|
151
|
+
let listeners = pageHostListeners.get(hostKey);
|
|
152
|
+
if (!listeners) {
|
|
153
|
+
listeners = new Set();
|
|
154
|
+
pageHostListeners.set(hostKey, listeners);
|
|
155
|
+
}
|
|
156
|
+
listeners.add(listener);
|
|
157
|
+
return () => {
|
|
158
|
+
listeners.delete(listener);
|
|
159
|
+
if (listeners.size === 0) pageHostListeners.delete(hostKey);
|
|
160
|
+
};
|
|
161
|
+
}
|
|
144
162
|
export function getOverlayPageHost(hostKey) {
|
|
145
163
|
return hostKey ? pageHosts.get(hostKey) : undefined;
|
|
146
164
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["OVERLAY_LEVELS","OVERLAY_LEVEL_ORDER","OVERLAY_WEB_Z_INDEX_BASE","overlayStore","LAYER_ATTRIBUTE","ENTRY_ATTRIBUTE","APP_ROOT_ID","layerRoots","Map","pageHosts","dismissRequesters","installed","createLayerRoot","level","root","document","createElement","setAttribute","Object","assign","style","position","inset","pointerEvents","zIndex","String","isolation","next","slice","indexOf","map","l","get","find","Boolean","body","insertBefore","setInert","element","inert","pageInertElements","Set","siblingsOutside","host","siblings","node","parentElement","parent","sibling","Array","from","children","HTMLElement","add","inertEntriesBelow","container","
|
|
1
|
+
{"version":3,"names":["OVERLAY_LEVELS","OVERLAY_LEVEL_ORDER","OVERLAY_WEB_Z_INDEX_BASE","overlayStore","LAYER_ATTRIBUTE","ENTRY_ATTRIBUTE","APP_ROOT_ID","layerRoots","Map","pageHosts","pageHostListeners","dismissRequesters","installed","createLayerRoot","level","root","document","createElement","setAttribute","Object","assign","style","position","inset","pointerEvents","zIndex","String","isolation","next","slice","indexOf","map","l","get","find","Boolean","body","insertBefore","setInert","element","inert","pageInertElements","Set","siblingsOutside","host","siblings","node","parentElement","parent","sibling","Array","from","children","HTMLElement","add","inertEntriesBelow","container","top","querySelectorAll","forEach","Number","dataset","overlayLevelOrder","below","stackOrder","seq","visibility","getAttribute","syncOverlayInert","getBlockingTop","appRoot","getElementById","nextPageInert","pageHost","scope","getOverlayPageHost","hostKey","undefined","contains","has","onKeyDown","event","key","isComposing","keyCode","resolution","resolveBack","kind","stopPropagation","preventDefault","id","installOverlayWebManager","subscribe","addEventListener","getOverlayLayerRoot","isConnected","set","registerOverlayDismissRequester","requester","delete","scheduleOverlayInertSync","requestAnimationFrame","registerOverlayPageHost","listener","subscribeOverlayPageHost","listeners","size"],"sourceRoot":"../../../src","sources":["web/overlayLayers.ts"],"mappings":";;AAAA,SACEA,cAAc,EACdC,mBAAmB,EACnBC,wBAAwB,QACnB,qBAAkB;AACzB,SAASC,YAAY,QAAQ,oBAAiB;AAK9C,MAAMC,eAAe,GAAG,2BAA2B;AACnD,OAAO,MAAMC,eAAe,GAAG,2BAA2B;AAE1D,MAAMC,WAAW,GAAG,MAAM;AAE1B,MAAMC,UAAU,GAAG,IAAIC,GAAG,CAAgC,CAAC;AAC3D,MAAMC,SAAS,GAAG,IAAID,GAAG,CAAyB,CAAC;AACnD,MAAME,iBAAiB,GAAG,IAAIF,GAAG,CAA0B,CAAC;AAC5D,MAAMG,iBAAiB,GAAG,IAAIH,GAAG,CAG/B,CAAC;AACH,IAAII,SAAS,GAAG,KAAK;AAErB,SAASC,eAAeA,CAACC,KAAoB,EAAkB;EAC7D,MAAMC,IAAI,GAAGC,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;EAC1CF,IAAI,CAACG,YAAY,CAACd,eAAe,EAAEU,KAAK,CAAC;EACzCK,MAAM,CAACC,MAAM,CAACL,IAAI,CAACM,KAAK,EAAE;IACxBC,QAAQ,EAAE,OAAO;IACjBC,KAAK,EAAE,GAAG;IACVC,aAAa,EAAE,MAAM;IACrBC,MAAM,EAAEC,MAAM,CAACxB,wBAAwB,CAACY,KAAK,CAAC,CAAC;IAC/Ca,SAAS,EAAE;EACb,CAAC,CAAC;EACF;EACA,MAAMC,IAAI,GAAG5B,cAAc,CAAC6B,KAAK,CAAC7B,cAAc,CAAC8B,OAAO,CAAChB,KAAK,CAAC,GAAG,CAAC,CAAC,CACjEiB,GAAG,CAAEC,CAAC,IAAKzB,UAAU,CAAC0B,GAAG,CAACD,CAAC,CAAC,CAAC,CAC7BE,IAAI,CAACC,OAAO,CAAC;EAChBnB,QAAQ,CAACoB,IAAI,CAACC,YAAY,CAACtB,IAAI,EAAEa,IAAI,IAAI,IAAI,CAAC;EAC9C,OAAOb,IAAI;AACb;AAEA,SAASuB,QAAQA,CAACC,OAAuC,EAAEC,KAAc,EAAE;EACzE,IAAID,OAAO,IAAIA,OAAO,CAACC,KAAK,KAAKA,KAAK,EAAE;IACtCD,OAAO,CAACC,KAAK,GAAGA,KAAK;EACvB;AACF;;AAEA;AACA,IAAIC,iBAAiB,GAAG,IAAIC,GAAG,CAAc,CAAC;;AAE9C;AACA;AACA;AACA;AACA;AACA,SAASC,eAAeA,CAACC,IAAiB,EAAE7B,IAAiB,EAAE;EAC7D,MAAM8B,QAAQ,GAAG,IAAIH,GAAG,CAAc,CAAC;EACvC,IAAII,IAAiB,GAAGF,IAAI;EAC5B,OAAOE,IAAI,KAAK/B,IAAI,IAAI+B,IAAI,CAACC,aAAa,EAAE;IAC1C,MAAMC,MAAmB,GAAGF,IAAI,CAACC,aAAa;IAC9C,KAAK,MAAME,OAAO,IAAIC,KAAK,CAACC,IAAI,CAACH,MAAM,CAACI,QAAQ,CAAC,EAAE;MACjD,IAAIH,OAAO,KAAKH,IAAI,IAAIG,OAAO,YAAYI,WAAW,EAAE;QACtDR,QAAQ,CAACS,GAAG,CAACL,OAAO,CAAC;MACvB;IACF;IACAH,IAAI,GAAGE,MAAM;EACf;EACA,OAAOH,QAAQ;AACjB;AAEA,SAASU,iBAAiBA,CAACC,SAAqB,EAAEC,GAAmB,EAAE;EACrED,SAAS,CACNE,gBAAgB,CAAc,IAAIrD,eAAe,GAAG,CAAC,CACrDsD,OAAO,CAAEb,IAAI,IAAK;IACjB,MAAMhC,KAAK,GAAG8C,MAAM,CAACd,IAAI,CAACe,OAAO,CAACC,iBAAiB,CAAC;IACpD,MAAMC,KAAK,GACT,CAAC,CAACN,GAAG,KACJ3C,KAAK,GAAGb,mBAAmB,CAACwD,GAAG,CAAC3C,KAAK,CAAC,IACpCA,KAAK,KAAKb,mBAAmB,CAACwD,GAAG,CAAC3C,KAAK,CAAC,IACvC8C,MAAM,CAACd,IAAI,CAACe,OAAO,CAACG,UAAU,CAAC,GAAGP,GAAG,CAACQ,GAAI,CAAC;IACjD3B,QAAQ,CACNQ,IAAI,EACJiB,KAAK,IACHjB,IAAI,CAACzB,KAAK,CAAC6C,UAAU,KAAK,QAAQ,IAClCpB,IAAI,CAACqB,YAAY,CAAC,aAAa,CAAC,KAAK,MACzC,CAAC;EACH,CAAC,CAAC;AACN;;AAEA;AACA,OAAO,SAASC,gBAAgBA,CAAA,EAAG;EACjC,MAAMX,GAAG,GAAGtD,YAAY,CAACkE,cAAc,CAAC,CAAC;EACzC,MAAMC,OAAO,GAAGtD,QAAQ,CAACuD,cAAc,CAACjE,WAAW,CAAC;EACpD,IAAIkE,aAAa,GAAG,IAAI9B,GAAG,CAAc,CAAC;EAC1C,MAAM+B,QAAQ,GACZhB,GAAG,EAAEiB,KAAK,KAAK,MAAM,GAAGC,kBAAkB,CAAClB,GAAG,CAACmB,OAAO,CAAC,GAAGC,SAAS;EACrE,IAAIpB,GAAG,IAAIgB,QAAQ,IAAIH,OAAO,EAAEQ,QAAQ,CAACL,QAAQ,CAAC,EAAE;IAClDnC,QAAQ,CAACgC,OAAO,EAAE,KAAK,CAAC;IACxBE,aAAa,GAAG7B,eAAe,CAAC8B,QAAQ,EAAEH,OAAO,CAAC;EACpD,CAAC,MAAM;IACLhC,QAAQ,CAACgC,OAAO,EAAE,CAAC,CAACb,GAAG,CAAC;EAC1B;EACAhB,iBAAiB,CAACkB,OAAO,CAAEpB,OAAO,IAAK;IACrC,IAAI,CAACiC,aAAa,CAACO,GAAG,CAACxC,OAAO,CAAC,EAAE;MAC/BD,QAAQ,CAACC,OAAO,EAAE,KAAK,CAAC;IAC1B;EACF,CAAC,CAAC;EACFiC,aAAa,CAACb,OAAO,CAAEpB,OAAO,IAAKD,QAAQ,CAACC,OAAO,EAAE,IAAI,CAAC,CAAC;EAC3DE,iBAAiB,GAAG+B,aAAa;EAEjC,KAAK,MAAM,CAACI,OAAO,EAAEhC,IAAI,CAAC,IAAInC,SAAS,EAAE;IACvC8C,iBAAiB,CACfX,IAAI,EACJa,GAAG,EAAEiB,KAAK,KAAK,MAAM,IAAIjB,GAAG,CAACmB,OAAO,KAAKA,OAAO,GAAGnB,GAAG,GAAGoB,SAC3D,CAAC;EACH;EAEA,KAAK,MAAM,CAAC/D,KAAK,EAAEC,IAAI,CAAC,IAAIR,UAAU,EAAE;IACtC;IACA,MAAMwD,KAAK,GACTN,GAAG,EAAEiB,KAAK,KAAK,QAAQ,IACvBzE,mBAAmB,CAACa,KAAK,CAAC,GAAGb,mBAAmB,CAACwD,GAAG,CAAC3C,KAAK,CAAC;IAC7DwB,QAAQ,CAACvB,IAAI,EAAEgD,KAAK,CAAC;IACrBR,iBAAiB,CACfxC,IAAI,EACJ0C,GAAG,EAAEiB,KAAK,KAAK,QAAQ,IAAI5D,KAAK,KAAK2C,GAAG,CAAC3C,KAAK,GAAG2C,GAAG,GAAGoB,SACzD,CAAC;EACH;AACF;AAEA,SAASG,SAASA,CAACC,KAAoB,EAAE;EACvC;EACA,IAAIA,KAAK,CAACC,GAAG,KAAK,QAAQ,IAAID,KAAK,CAACE,WAAW,IAAIF,KAAK,CAACG,OAAO,KAAK,GAAG,EAAE;IACxE;EACF;EACA,MAAMC,UAAU,GAAGlF,YAAY,CAACmF,WAAW,CAAC,CAAC;EAC7C,IAAID,UAAU,CAACE,IAAI,KAAK,MAAM,EAAE;IAC9B;EACF;EACAN,KAAK,CAACO,eAAe,CAAC,CAAC;EACvBP,KAAK,CAACQ,cAAc,CAAC,CAAC;EACtB,IAAIJ,UAAU,CAACE,IAAI,KAAK,SAAS,EAAE;IACjC5E,iBAAiB,CAACsB,GAAG,CAACoD,UAAU,CAACK,EAAE,CAAC,GAAG,MAAM,CAAC;EAChD;AACF;AAEA,SAASC,wBAAwBA,CAAA,EAAG;EAClC,IAAI/E,SAAS,IAAI,OAAOI,QAAQ,KAAK,WAAW,EAAE;IAChD;EACF;EACAJ,SAAS,GAAG,IAAI;EAChBT,YAAY,CAACyF,SAAS,CAACxB,gBAAgB,CAAC;EACxCpD,QAAQ,CAAC6E,gBAAgB,CAAC,SAAS,EAAEb,SAAS,EAAE,IAAI,CAAC;AACvD;AAEA,OAAO,SAASc,mBAAmBA,CAAChF,KAAoB,EAAkB;EACxE6E,wBAAwB,CAAC,CAAC;EAC1B,IAAI5E,IAAI,GAAGR,UAAU,CAAC0B,GAAG,CAACnB,KAAK,CAAC;EAChC,IAAI,CAACC,IAAI,IAAI,CAACA,IAAI,CAACgF,WAAW,EAAE;IAC9BhF,IAAI,GAAGF,eAAe,CAACC,KAAK,CAAC;IAC7BP,UAAU,CAACyF,GAAG,CAAClF,KAAK,EAAEC,IAAI,CAAC;EAC7B;EACA,OAAOA,IAAI;AACb;AAEA,OAAO,SAASkF,+BAA+BA,CAC7CP,EAAU,EACVQ,SAAyD,EAC7C;EACZvF,iBAAiB,CAACqF,GAAG,CAACN,EAAE,EAAEQ,SAAS,CAAC;EACpC,OAAO,MAAM;IACX,IAAIvF,iBAAiB,CAACsB,GAAG,CAACyD,EAAE,CAAC,KAAKQ,SAAS,EAAE;MAC3CvF,iBAAiB,CAACwF,MAAM,CAACT,EAAE,CAAC;IAC9B;EACF,CAAC;AACH;;AAEA;AACA,OAAO,SAASU,wBAAwBA,CAAA,EAAG;EACzCC,qBAAqB,CAACjC,gBAAgB,CAAC;AACzC;AAEA,OAAO,SAASkC,uBAAuBA,CACrC1B,OAAe,EACfrC,OAAuB,EACX;EACZoD,wBAAwB,CAAC,CAAC;EAC1BlF,SAAS,CAACuF,GAAG,CAACpB,OAAO,EAAErC,OAAO,CAAC;EAC/B7B,iBAAiB,CAACuB,GAAG,CAAC2C,OAAO,CAAC,EAAEjB,OAAO,CAAE4C,QAAQ,IAAKA,QAAQ,CAAC,CAAC,CAAC;EACjE,OAAO,MAAM;IACX,IAAI9F,SAAS,CAACwB,GAAG,CAAC2C,OAAO,CAAC,KAAKrC,OAAO,EAAE;MACtC9B,SAAS,CAAC0F,MAAM,CAACvB,OAAO,CAAC;MACzBlE,iBAAiB,CAACuB,GAAG,CAAC2C,OAAO,CAAC,EAAEjB,OAAO,CAAE4C,QAAQ,IAAKA,QAAQ,CAAC,CAAC,CAAC;IACnE;EACF,CAAC;AACH;AAEA,OAAO,SAASC,wBAAwBA,CACtC5B,OAA2B,EAC3B2B,QAAoB,EACR;EACZ,IAAI,CAAC3B,OAAO,EAAE,OAAO,MAAM,CAAC,CAAC;EAC7B,IAAI6B,SAAS,GAAG/F,iBAAiB,CAACuB,GAAG,CAAC2C,OAAO,CAAC;EAC9C,IAAI,CAAC6B,SAAS,EAAE;IACdA,SAAS,GAAG,IAAI/D,GAAG,CAAC,CAAC;IACrBhC,iBAAiB,CAACsF,GAAG,CAACpB,OAAO,EAAE6B,SAAS,CAAC;EAC3C;EACAA,SAAS,CAACnD,GAAG,CAACiD,QAAQ,CAAC;EACvB,OAAO,MAAM;IACXE,SAAS,CAACN,MAAM,CAACI,QAAQ,CAAC;IAC1B,IAAIE,SAAS,CAACC,IAAI,KAAK,CAAC,EAAEhG,iBAAiB,CAACyF,MAAM,CAACvB,OAAO,CAAC;EAC7D,CAAC;AACH;AAEA,OAAO,SAASD,kBAAkBA,CAChCC,OAA2B,EACC;EAC5B,OAAOA,OAAO,GAAGnE,SAAS,CAACwB,GAAG,CAAC2C,OAAO,CAAC,GAAGC,SAAS;AACrD","ignoreList":[]}
|
|
@@ -78,7 +78,7 @@ export function useKeyboardShift({
|
|
|
78
78
|
top = origin + sheet.offsetTop;
|
|
79
79
|
bottom = top + sheet.offsetHeight;
|
|
80
80
|
} else {
|
|
81
|
-
const extent = layoutExtent(contentRef.current);
|
|
81
|
+
const extent = layoutExtent(sheet ?? contentRef.current);
|
|
82
82
|
if (extent) {
|
|
83
83
|
top = origin + extent.top;
|
|
84
84
|
bottom = origin + extent.bottom;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useRef","KEYBOARD_MARGIN","computeKeyboardShift","keyboardTop","contentTop","contentBottom","isSheet","safeTop","undefined","needed","room","Math","max","min","layoutExtent","content","root","firstElementChild","children","Array","from","filter","child","HTMLElement","length","top","map","c","offsetTop","bottom","offsetHeight","useKeyboardShift","layerRef","sheetRef","contentRef","enabled","shiftRef","viewport","globalThis","visualViewport","layer","current","update","keyboardBottom","height","covered","innerHeight","origin","parentElement","getBoundingClientRect","sheet","extent","shift","abs","style","transform","addEventListener","removeEventListener"],"sourceRoot":"../../../src","sources":["web/useKeyboardShift.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","KEYBOARD_MARGIN","computeKeyboardShift","keyboardTop","contentTop","contentBottom","isSheet","safeTop","undefined","needed","room","Math","max","min","layoutExtent","content","root","firstElementChild","children","Array","from","filter","child","HTMLElement","length","top","map","c","offsetTop","bottom","offsetHeight","useKeyboardShift","layerRef","sheetRef","contentRef","enabled","shiftRef","viewport","globalThis","visualViewport","layer","current","update","keyboardBottom","height","covered","innerHeight","origin","parentElement","getBoundingClientRect","sheet","extent","shift","abs","style","transform","addEventListener","removeEventListener"],"sourceRoot":"../../../src","sources":["web/useKeyboardShift.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -111,15 +111,35 @@ export function useSheetDrag({
|
|
|
111
111
|
once: true
|
|
112
112
|
});
|
|
113
113
|
};
|
|
114
|
+
const onPointerCancel = event => {
|
|
115
|
+
if (!tracking || event.pointerId !== pointerId) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
tracking = false;
|
|
119
|
+
dragging = false;
|
|
120
|
+
velocity = 0;
|
|
121
|
+
if (sheet.hasPointerCapture?.(pointerId)) {
|
|
122
|
+
sheet.releasePointerCapture(pointerId);
|
|
123
|
+
}
|
|
124
|
+
pointerId = -1;
|
|
125
|
+
sheet.style.transform = '';
|
|
126
|
+
sheet.style.transition = '';
|
|
127
|
+
if (backdropRef.current) {
|
|
128
|
+
backdropRef.current.style.opacity = '1';
|
|
129
|
+
}
|
|
130
|
+
};
|
|
114
131
|
sheet.addEventListener('pointerdown', onPointerDown);
|
|
115
132
|
sheet.addEventListener('pointermove', onPointerMove);
|
|
116
133
|
sheet.addEventListener('pointerup', onPointerUp);
|
|
117
|
-
sheet.addEventListener('pointercancel',
|
|
134
|
+
sheet.addEventListener('pointercancel', onPointerCancel);
|
|
118
135
|
return () => {
|
|
136
|
+
if (sheet.hasPointerCapture?.(pointerId)) {
|
|
137
|
+
sheet.releasePointerCapture(pointerId);
|
|
138
|
+
}
|
|
119
139
|
sheet.removeEventListener('pointerdown', onPointerDown);
|
|
120
140
|
sheet.removeEventListener('pointermove', onPointerMove);
|
|
121
141
|
sheet.removeEventListener('pointerup', onPointerUp);
|
|
122
|
-
sheet.removeEventListener('pointercancel',
|
|
142
|
+
sheet.removeEventListener('pointercancel', onPointerCancel);
|
|
123
143
|
};
|
|
124
144
|
}, [sheetRef, backdropRef, enabled]);
|
|
125
145
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useRef","DRAG_START_THRESHOLD","DISMISS_DISTANCE_RATIO","DISMISS_VELOCITY","UPWARD_RESISTANCE","SETTLE_TRANSITION","scrolledAncestorWithin","target","sheet","node","HTMLElement","scrollTop","scrollHeight","clientHeight","parentElement","undefined","useSheetDrag","sheetRef","backdropRef","enabled","onDismissByPan","onDismissRef","current","startY","lastY","lastTime","velocity","tracking","dragging","pointerId","setOffset","offset","style","transform","backdrop","opacity","String","Math","max","offsetHeight","onPointerDown","event","button","clientY","timeStamp","onPointerMove","dy","setPointerCapture","transition","dt","onPointerUp","height","addEventListener","clickEvent","stopPropagation","preventDefault","capture","once","removeEventListener"],"sourceRoot":"../../../src","sources":["web/useSheetDrag.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","DRAG_START_THRESHOLD","DISMISS_DISTANCE_RATIO","DISMISS_VELOCITY","UPWARD_RESISTANCE","SETTLE_TRANSITION","scrolledAncestorWithin","target","sheet","node","HTMLElement","scrollTop","scrollHeight","clientHeight","parentElement","undefined","useSheetDrag","sheetRef","backdropRef","enabled","onDismissByPan","onDismissRef","current","startY","lastY","lastTime","velocity","tracking","dragging","pointerId","setOffset","offset","style","transform","backdrop","opacity","String","Math","max","offsetHeight","onPointerDown","event","button","clientY","timeStamp","onPointerMove","dy","setPointerCapture","transition","dt","onPointerUp","height","addEventListener","clickEvent","stopPropagation","preventDefault","capture","once","onPointerCancel","hasPointerCapture","releasePointerCapture","removeEventListener"],"sourceRoot":"../../../src","sources":["web/useSheetDrag.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OverlayPageHost.web.d.ts","sourceRoot":"","sources":["../../../src/OverlayPageHost.web.tsx"],"names":[],"mappings":"AAKA,QAAA,MAAM,eAAe,uBAAuB,CAAC;AAE7C;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"OverlayPageHost.web.d.ts","sourceRoot":"","sources":["../../../src/OverlayPageHost.web.tsx"],"names":[],"mappings":"AAKA,QAAA,MAAM,eAAe,uBAAuB,CAAC;AAE7C;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,2CAqD/D;AAED,OAAO,EAAE,eAAe,IAAI,uBAAuB,EAAE,CAAC"}
|
|
@@ -32,6 +32,8 @@ export declare class OverlayStore {
|
|
|
32
32
|
request(request: IOverlayRequest, handlers?: IOverlayEntryHandlers): IOverlayEntry;
|
|
33
33
|
/** Starts closing an entry; the native side calls `finalize` after its exit animation. */
|
|
34
34
|
dismiss(id: string, reason?: IOverlayDismissReason): void;
|
|
35
|
+
/** Reverses an unfinished close without creating a new presentation cycle. */
|
|
36
|
+
reopen(id: string): void;
|
|
35
37
|
/** Removes a closing (or active) entry once its exit animation finished. */
|
|
36
38
|
finalize(id: string): void;
|
|
37
39
|
dismissAll(filter?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OverlayStore.d.ts","sourceRoot":"","sources":["../../../src/OverlayStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,qBAAqB;IACpC,yFAAyF;IACzF,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,MAAM,sBAAsB,GAC9B;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAErB,MAAM,WAAW,oBAAoB;IACnC,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAyBD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAE1C,OAAO,CAAC,GAAG,CAAK;IAEhB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoC;IAE1D,OAAO,CAAC,MAAM,CAAuB;IAErC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4C;IAErE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAG1B;IAEJ,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA8B;IAE7D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IAEnD,OAAO,CAAC,QAAQ,CAGd;gBAEU,OAAO,GAAE,oBAAyB;IAK9C,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAK9C;IAEF,WAAW,QAAO,gBAAgB,CAAkB;IAEpD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAI/C,OAAO,CACL,OAAO,EAAE,eAAe,EACxB,QAAQ,GAAE,qBAA0B,GACnC,aAAa;IAiDhB,0FAA0F;IAC1F,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,GAAE,qBAAsC,GAAG,IAAI;IAMzE,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAY1B,UAAU,CACR,MAAM,GAAE;QACN,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAC/B,UAAU,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,CAAC,EAAE,qBAAqB,CAAC;KAC3B,GACL,IAAI;IAqBP,qFAAqF;IACrF,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAqBxD,0DAA0D;IAC1D,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAalC;;;;OAIG;IACH,WAAW,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,sBAAsB;IAqB5D,6EAA6E;IAC7E,2EAA2E;IAC3E,iBAAiB,IAAI,aAAa,GAAG,SAAS;IAI9C,cAAc,IAAI,aAAa,GAAG,SAAS;IAgB3C,OAAO,CAAC,kBAAkB;
|
|
1
|
+
{"version":3,"file":"OverlayStore.d.ts","sourceRoot":"","sources":["../../../src/OverlayStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,qBAAqB;IACpC,yFAAyF;IACzF,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,MAAM,sBAAsB,GAC9B;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAErB,MAAM,WAAW,oBAAoB;IACnC,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAyBD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAE1C,OAAO,CAAC,GAAG,CAAK;IAEhB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoC;IAE1D,OAAO,CAAC,MAAM,CAAuB;IAErC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4C;IAErE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAG1B;IAEJ,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA8B;IAE7D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IAEnD,OAAO,CAAC,QAAQ,CAGd;gBAEU,OAAO,GAAE,oBAAyB;IAK9C,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAK9C;IAEF,WAAW,QAAO,gBAAgB,CAAkB;IAEpD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAI/C,OAAO,CACL,OAAO,EAAE,eAAe,EACxB,QAAQ,GAAE,qBAA0B,GACnC,aAAa;IAiDhB,0FAA0F;IAC1F,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,GAAE,qBAAsC,GAAG,IAAI;IAMzE,8EAA8E;IAC9E,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IASxB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAY1B,UAAU,CACR,MAAM,GAAE;QACN,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAC/B,UAAU,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,CAAC,EAAE,qBAAqB,CAAC;KAC3B,GACL,IAAI;IAqBP,qFAAqF;IACrF,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAqBxD,0DAA0D;IAC1D,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAalC;;;;OAIG;IACH,WAAW,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,sBAAsB;IAqB5D,6EAA6E;IAC7E,2EAA2E;IAC3E,iBAAiB,IAAI,aAAa,GAAG,SAAS;IAI9C,cAAc,IAAI,aAAa,GAAG,SAAS;IAgB3C,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,SAAS;IAiBjB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,IAAI;CASb;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,gBAAgB,GACzB,aAAa,GAAG,SAAS,CAc3B;AAED,eAAO,MAAM,YAAY,cAAqB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OverlayView.web.d.ts","sourceRoot":"","sources":["../../../src/OverlayView.web.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OverlayView.web.d.ts","sourceRoot":"","sources":["../../../src/OverlayView.web.tsx"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAGV,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAkY5B,wBAAgB,WAAW,CAAC,KAAK,EAAE,iBAAiB,sCA2EnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useOverlayController.d.ts","sourceRoot":"","sources":["../../../src/useOverlayController.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,KAAK,EACV,4BAA4B,EAC5B,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,aAAa,GAAG,SAAS,CAAC;IACjC,uDAAuD;IACvD,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,qEAAqE;IACrE,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,SAAS,EAAE,yBAAyB,CAAC;IACrC,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,oBAAoB,EAAE,CAAC,MAAM,EAAE,4BAA4B,KAAK,IAAI,CAAC;CACtE;AAQD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,iBAAiB,GACvB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"useOverlayController.d.ts","sourceRoot":"","sources":["../../../src/useOverlayController.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,KAAK,EACV,4BAA4B,EAC5B,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,aAAa,GAAG,SAAS,CAAC;IACjC,uDAAuD;IACvD,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,qEAAqE;IACrE,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,SAAS,EAAE,yBAAyB,CAAC;IACrC,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,oBAAoB,EAAE,CAAC,MAAM,EAAE,4BAA4B,KAAK,IAAI,CAAC;CACtE;AAQD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,iBAAiB,GACvB,kBAAkB,CAsJpB"}
|
|
@@ -13,6 +13,6 @@ export declare function measureContentExtent(container: HTMLElement): IContentEx
|
|
|
13
13
|
* slide distance and scale origin come from the children of `contentRoot`,
|
|
14
14
|
* because the content wrapper itself always fills the window.
|
|
15
15
|
*/
|
|
16
|
-
export declare function animateTransition(element: HTMLElement, contentRoot: HTMLElement, transition: IResolvedOverlayTransition, direction: 'in' | 'out'): Animation | undefined;
|
|
17
|
-
export declare function animateBackdrop(element: HTMLElement, motion: IOverlayMotion, direction: 'in' | 'out'): Animation;
|
|
16
|
+
export declare function animateTransition(element: HTMLElement, contentRoot: HTMLElement, transition: IResolvedOverlayTransition, direction: 'in' | 'out', interruptedFrames?: ReadonlyMap<HTMLElement, Keyframe>): Animation | undefined;
|
|
17
|
+
export declare function animateBackdrop(element: HTMLElement, motion: IOverlayMotion, direction: 'in' | 'out', interruptedFrames?: ReadonlyMap<HTMLElement, Keyframe>): Animation;
|
|
18
18
|
//# sourceMappingURL=animateTransition.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"animateTransition.d.ts","sourceRoot":"","sources":["../../../../src/web/animateTransition.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,WAAW,GAAG,cAAc,CAkB3E;AA8DD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,0BAA0B,EACtC,SAAS,EAAE,IAAI,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"animateTransition.d.ts","sourceRoot":"","sources":["../../../../src/web/animateTransition.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,WAAW,GAAG,cAAc,CAkB3E;AA8DD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,0BAA0B,EACtC,SAAS,EAAE,IAAI,GAAG,KAAK,EACvB,iBAAiB,CAAC,EAAE,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,GACrD,SAAS,GAAG,SAAS,CAqCvB;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,IAAI,GAAG,KAAK,EACvB,iBAAiB,CAAC,EAAE,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,GACrD,SAAS,CAOX"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import type { IOverlayRequestDismissReason } from '../OverlayViewTypes';
|
|
2
2
|
import type { IOverlayLevel } from '../types';
|
|
3
3
|
export declare const ENTRY_ATTRIBUTE = "data-onekey-overlay-entry";
|
|
4
|
+
/** Everything rendered below the topmost blocking entry becomes inert. */
|
|
5
|
+
export declare function syncOverlayInert(): void;
|
|
4
6
|
export declare function getOverlayLayerRoot(level: IOverlayLevel): HTMLDivElement;
|
|
5
7
|
export declare function registerOverlayDismissRequester(id: string, requester: (reason: IOverlayRequestDismissReason) => void): () => void;
|
|
6
8
|
/** Re-run after entry DOM nodes mount, since the store emits before commit. */
|
|
7
9
|
export declare function scheduleOverlayInertSync(): void;
|
|
8
10
|
export declare function registerOverlayPageHost(hostKey: string, element: HTMLDivElement): () => void;
|
|
11
|
+
export declare function subscribeOverlayPageHost(hostKey: string | undefined, listener: () => void): () => void;
|
|
9
12
|
export declare function getOverlayPageHost(hostKey: string | undefined): HTMLDivElement | undefined;
|
|
10
13
|
//# sourceMappingURL=overlayLayers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlayLayers.d.ts","sourceRoot":"","sources":["../../../../src/web/overlayLayers.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"overlayLayers.d.ts","sourceRoot":"","sources":["../../../../src/web/overlayLayers.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAiB,aAAa,EAAE,MAAM,UAAU,CAAC;AAG7D,eAAO,MAAM,eAAe,8BAA8B,CAAC;AA+E3D,0EAA0E;AAC1E,wBAAgB,gBAAgB,SAsC/B;AA2BD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,CAQxE;AAED,wBAAgB,+BAA+B,CAC7C,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,CAAC,MAAM,EAAE,4BAA4B,KAAK,IAAI,GACxD,MAAM,IAAI,CAOZ;AAED,+EAA+E;AAC/E,wBAAgB,wBAAwB,SAEvC;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,GACtB,MAAM,IAAI,CAUZ;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,QAAQ,EAAE,MAAM,IAAI,GACnB,MAAM,IAAI,CAYZ;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,cAAc,GAAG,SAAS,CAE5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSheetDrag.d.ts","sourceRoot":"","sources":["../../../../src/web/useSheetDrag.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAsBvC;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,WAAW,EACX,OAAO,EACP,cAAc,GACf,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC3C,WAAW,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B,
|
|
1
|
+
{"version":3,"file":"useSheetDrag.d.ts","sourceRoot":"","sources":["../../../../src/web/useSheetDrag.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAsBvC;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,WAAW,EACX,OAAO,EACP,cAAc,GACf,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC3C,WAAW,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B,QA6HA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/react-native-native-overlay",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "6.7.0-11",
|
|
4
4
|
"description": "Native and Web overlay hosts with ordered levels, page scope and Fabric measurement",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -77,6 +77,7 @@
|
|
|
77
77
|
"eslint-config-prettier": "^10.1.8",
|
|
78
78
|
"eslint-plugin-prettier": "^5.5.4",
|
|
79
79
|
"jest": "^29.7.0",
|
|
80
|
+
"jest-environment-jsdom": "29.7.0",
|
|
80
81
|
"lefthook": "^2.0.3",
|
|
81
82
|
"prettier": "^2.8.8",
|
|
82
83
|
"react": "19.2.3",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useEffect, useRef } from 'react';
|
|
2
2
|
|
|
3
3
|
import { useSuspendedPageOwners } from './useSuspendedPageOwners';
|
|
4
|
-
import { registerOverlayPageHost } from './web/overlayLayers';
|
|
4
|
+
import { registerOverlayPageHost, syncOverlayInert } from './web/overlayLayers';
|
|
5
5
|
|
|
6
6
|
const OWNER_ATTRIBUTE = 'data-overlay-owner';
|
|
7
7
|
|
|
@@ -28,14 +28,29 @@ export function OverlayPageHost({ hostKey }: { hostKey: string }) {
|
|
|
28
28
|
return;
|
|
29
29
|
}
|
|
30
30
|
const suspended = new Set(suspendedOwners);
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
31
|
+
const applySuspension = () => {
|
|
32
|
+
element
|
|
33
|
+
.querySelectorAll<HTMLElement>(`[${OWNER_ATTRIBUTE}]`)
|
|
34
|
+
.forEach((node) => {
|
|
35
|
+
const hidden =
|
|
36
|
+
suspended.has(node.getAttribute(OWNER_ATTRIBUTE) ?? '') ||
|
|
37
|
+
node.getAttribute('aria-hidden') === 'true';
|
|
38
|
+
node.style.visibility = hidden ? 'hidden' : '';
|
|
39
|
+
});
|
|
40
|
+
// Combine suspension with blocking-level isolation; resuming an owner
|
|
41
|
+
// must not make an entry below a blocker interactive.
|
|
42
|
+
syncOverlayInert();
|
|
43
|
+
};
|
|
44
|
+
applySuspension();
|
|
45
|
+
const observer = new MutationObserver(applySuspension);
|
|
46
|
+
observer.observe(element, {
|
|
47
|
+
childList: true,
|
|
48
|
+
subtree: true,
|
|
49
|
+
attributes: true,
|
|
50
|
+
attributeFilter: [OWNER_ATTRIBUTE, 'aria-hidden'],
|
|
51
|
+
});
|
|
52
|
+
return () => observer.disconnect();
|
|
53
|
+
}, [hostKey, suspendedOwners]);
|
|
39
54
|
|
|
40
55
|
return (
|
|
41
56
|
<div
|
package/src/OverlayStore.ts
CHANGED
|
@@ -148,6 +148,16 @@ export class OverlayStore {
|
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
150
|
|
|
151
|
+
/** Reverses an unfinished close without creating a new presentation cycle. */
|
|
152
|
+
reopen(id: string): void {
|
|
153
|
+
const entry = this.shown.get(id);
|
|
154
|
+
if (!entry || entry.phase !== 'closing') return;
|
|
155
|
+
this.clearClosingTimer(id);
|
|
156
|
+
entry.phase = 'active';
|
|
157
|
+
entry.dismissReason = undefined;
|
|
158
|
+
this.emit();
|
|
159
|
+
}
|
|
160
|
+
|
|
151
161
|
/** Removes a closing (or active) entry once its exit animation finished. */
|
|
152
162
|
finalize(id: string): void {
|
|
153
163
|
const entry = this.shown.get(id);
|
|
@@ -280,7 +290,9 @@ export class OverlayStore {
|
|
|
280
290
|
if (queuedIndex !== -1) {
|
|
281
291
|
this.queued = this.queued.filter((e) => e.id !== id);
|
|
282
292
|
// Queued entries never rendered, so they leave without an exit animation.
|
|
283
|
-
|
|
293
|
+
const handlers = this.handlers.get(id);
|
|
294
|
+
this.handlers.delete(id);
|
|
295
|
+
queueMicrotask(() => handlers?.onRemoved?.(reason));
|
|
284
296
|
return true;
|
|
285
297
|
}
|
|
286
298
|
const entry = this.shown.get(id);
|