ugly-app 0.1.577 → 0.1.578
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/dist/cli/version.d.ts +1 -1
- package/dist/cli/version.js +1 -1
- package/dist/client/components/KeyboardProvider.d.ts.map +1 -1
- package/dist/client/components/KeyboardProvider.js +74 -31
- package/dist/client/components/KeyboardProvider.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/version.ts +1 -1
- package/src/client/components/KeyboardProvider.tsx +70 -15
package/dist/cli/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const CLI_VERSION = "0.1.
|
|
1
|
+
export declare const CLI_VERSION = "0.1.578";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/cli/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyboardProvider.d.ts","sourceRoot":"","sources":["../../../src/client/components/KeyboardProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"KeyboardProvider.d.ts","sourceRoot":"","sources":["../../../src/client/components/KeyboardProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AAGf,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,2DAA2D;IAC3D,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;;;;OAQG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,yEAAyE;IACzE,QAAQ,EAAE,YAAY,CAAC;CACxB;AAUD;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,QAAO,cAEpC,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,OAEpC,CAAC;AA4CF,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,2CAybtE;AAID,wBAAgB,cAAc,CAAC,EAAE,cAAc,EAAE,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAE,2CAM9E"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsxs as _jsxs, Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState, } from 'react';
|
|
3
|
+
import { createPortal } from 'react-dom';
|
|
3
4
|
const SafeAreaContext = createContext({
|
|
4
5
|
top: 0,
|
|
5
6
|
bottom: 0,
|
|
@@ -41,6 +42,13 @@ function useStateRef(initialValue) {
|
|
|
41
42
|
return [state, setState, ref];
|
|
42
43
|
}
|
|
43
44
|
// ---------- KeyboardProvider ----------
|
|
45
|
+
// When the VirtualKeyboard API is present (real on Chrome, polyfilled by the
|
|
46
|
+
// iOS/Android native shells), it is the AUTHORITATIVE keyboard-height source via
|
|
47
|
+
// geometrychange. In that case the visualViewport-diff heuristic must NOT also
|
|
48
|
+
// set the keyboard height — the two disagree (the diff path subtracts the CSS
|
|
49
|
+
// safe-area, yielding e.g. 346 vs the real 380) and fight, double-counting.
|
|
50
|
+
const hasVirtualKeyboardAPI = () => typeof navigator !== 'undefined' &&
|
|
51
|
+
!!navigator.virtualKeyboard;
|
|
44
52
|
export function KeyboardProvider({ children }) {
|
|
45
53
|
// Initialize with native values persisted on window or localStorage
|
|
46
54
|
// (window globals are cleared on reload, localStorage survives).
|
|
@@ -110,9 +118,11 @@ export function KeyboardProvider({ children }) {
|
|
|
110
118
|
offsets.bottom = Math.max(offsets.bottom, keyboardHeightRef.current);
|
|
111
119
|
}
|
|
112
120
|
// Detect keyboard from visualViewport when no native keyboard event
|
|
113
|
-
// (fallback for Android PWA / browser)
|
|
121
|
+
// (fallback for Android PWA / browser). Skip when the VirtualKeyboard API
|
|
122
|
+
// owns the height — see hasVirtualKeyboardAPI.
|
|
114
123
|
if (window.visualViewport &&
|
|
115
124
|
!hasNativeOverrideRef.current &&
|
|
125
|
+
!hasVirtualKeyboardAPI() &&
|
|
116
126
|
keyboardHeightRef.current === 0) {
|
|
117
127
|
const diff = window.innerHeight - window.visualViewport.height;
|
|
118
128
|
if (diff > 100) {
|
|
@@ -152,7 +162,10 @@ export function KeyboardProvider({ children }) {
|
|
|
152
162
|
// Detect keyboard from visualViewport when no native keyboard height events.
|
|
153
163
|
// This is needed on Android (browser, PWA, and native WebView) where
|
|
154
164
|
// update() may return early and no native keyboard-height event is sent.
|
|
155
|
-
|
|
165
|
+
// Skip when the VirtualKeyboard API owns the height (else the two fight).
|
|
166
|
+
if (!hasNativeOverrideRef.current &&
|
|
167
|
+
!hasVirtualKeyboardAPI() &&
|
|
168
|
+
window.visualViewport) {
|
|
156
169
|
const diff = window.innerHeight - window.visualViewport.height;
|
|
157
170
|
// Subtract the CSS safe area bottom to avoid double-counting
|
|
158
171
|
// (the page layout already adds safe area padding)
|
|
@@ -173,6 +186,21 @@ export function KeyboardProvider({ children }) {
|
|
|
173
186
|
setKeyboardHeight(newHeight);
|
|
174
187
|
}
|
|
175
188
|
}
|
|
189
|
+
// Corrective for the VirtualKeyboard path: the native→web geometrychange
|
|
190
|
+
// can be dropped/reordered on rapid open/close (the JS bridge is async),
|
|
191
|
+
// leaving keyboardHeight stuck > 0 after the keyboard is already gone. The
|
|
192
|
+
// visual viewport is authoritative for "keyboard gone" (it returns to full
|
|
193
|
+
// height), so use it to CLEAR a stuck height — downward only, so it never
|
|
194
|
+
// re-introduces the fight with the VK API on the way up.
|
|
195
|
+
if (hasVirtualKeyboardAPI() &&
|
|
196
|
+
window.visualViewport &&
|
|
197
|
+
keyboardHeightRef.current > 0) {
|
|
198
|
+
const diff = window.innerHeight - window.visualViewport.height;
|
|
199
|
+
if (diff < 100) {
|
|
200
|
+
setKeyboardHeight(0);
|
|
201
|
+
update();
|
|
202
|
+
}
|
|
203
|
+
}
|
|
176
204
|
};
|
|
177
205
|
if (window.visualViewport)
|
|
178
206
|
window.visualViewport.addEventListener('resize', onVisualViewportResize);
|
|
@@ -258,14 +286,23 @@ export function KeyboardProvider({ children }) {
|
|
|
258
286
|
});
|
|
259
287
|
if (kbHeight !== keyboardHeightRef.current) {
|
|
260
288
|
setKeyboardHeight(kbHeight);
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
289
|
+
if (hasNativeOverrideRef.current) {
|
|
290
|
+
// Native override active → update() returns early, so recompute the
|
|
291
|
+
// bottom directly against the native inset (Android path).
|
|
292
|
+
setSafeArea((prev) => {
|
|
293
|
+
const newBottom = Math.max(nativeSafeAreaRef.current.bottom, kbHeight);
|
|
294
|
+
if (prev.bottom !== newBottom)
|
|
295
|
+
return { ...prev, bottom: newBottom };
|
|
296
|
+
return prev;
|
|
297
|
+
});
|
|
298
|
+
}
|
|
299
|
+
else {
|
|
300
|
+
// iOS / WKWebView: getOffsets() takes the env-based device inset as
|
|
301
|
+
// the floor and folds in keyboardHeightRef. Going through update()
|
|
302
|
+
// (instead of max(nativeSafeArea.bottom, …), which is 0 on iOS)
|
|
303
|
+
// preserves the home-indicator inset when the keyboard closes.
|
|
304
|
+
update();
|
|
305
|
+
}
|
|
269
306
|
}
|
|
270
307
|
};
|
|
271
308
|
nav.virtualKeyboard.addEventListener('geometrychange', onVKGeometryChange);
|
|
@@ -310,27 +347,33 @@ export function KeyboardProvider({ children }) {
|
|
|
310
347
|
return (_jsxs(SafeAreaContext.Provider, { value: useMemo(() => ({
|
|
311
348
|
...safeArea,
|
|
312
349
|
keyboard: { showing: keyboardHeight > 0, height: keyboardHeight },
|
|
313
|
-
}), [safeArea, keyboardHeight]), children: [children, showDebugOverlay &&
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
350
|
+
}), [safeArea, keyboardHeight]), children: [children, showDebugOverlay &&
|
|
351
|
+
typeof document !== 'undefined' &&
|
|
352
|
+
createPortal(
|
|
353
|
+
// Portalled to <body> so the bars are positioned against the visual
|
|
354
|
+
// viewport — not a transformed/padded ancestor, which was pushing the
|
|
355
|
+
// top bar down and letting the bottom bar ride up with the keyboard.
|
|
356
|
+
_jsxs(_Fragment, { children: [_jsxs("div", { style: {
|
|
357
|
+
...debugOverlayBase,
|
|
358
|
+
top: 0,
|
|
359
|
+
height: safeArea.top,
|
|
360
|
+
backgroundColor: 'rgba(255, 0, 0, 0.2)',
|
|
361
|
+
color: 'red',
|
|
362
|
+
}, children: ["top: ", safeArea.top] }), _jsxs("div", { style: {
|
|
363
|
+
...debugOverlayBase,
|
|
364
|
+
bottom: 0,
|
|
365
|
+
height: safeArea.bottom,
|
|
366
|
+
backgroundColor: 'rgba(0, 0, 255, 0.2)',
|
|
367
|
+
color: 'blue',
|
|
368
|
+
}, children: ["bottom: ", safeArea.bottom, keyboardHeight > 0 && ` (kbd: ${keyboardHeight})`] }), keyboardHeight > 0 && (_jsxs("div", { style: {
|
|
369
|
+
...debugOverlayBase,
|
|
370
|
+
bottom: 0,
|
|
371
|
+
height: keyboardHeight,
|
|
372
|
+
backgroundColor: 'rgba(0, 255, 0, 0.15)',
|
|
373
|
+
zIndex: 99998,
|
|
374
|
+
fontSize: 12,
|
|
375
|
+
color: 'green',
|
|
376
|
+
}, children: ["keyboard: ", keyboardHeight] }))] }), document.body)] }));
|
|
334
377
|
}
|
|
335
378
|
// ---------- KeyboardSpacer ----------
|
|
336
379
|
export function KeyboardSpacer({ ignoreSafeArea }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyboardProvider.js","sourceRoot":"","sources":["../../../src/client/components/KeyboardProvider.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"KeyboardProvider.js","sourceRoot":"","sources":["../../../src/client/components/KeyboardProvider.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/cli/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Auto-generated by prebuild — do not edit manually
|
|
2
|
-
export const CLI_VERSION = "0.1.
|
|
2
|
+
export const CLI_VERSION = "0.1.578";
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
useRef,
|
|
10
10
|
useState,
|
|
11
11
|
} from 'react';
|
|
12
|
+
import { createPortal } from 'react-dom';
|
|
12
13
|
|
|
13
14
|
export interface EdgeInsets {
|
|
14
15
|
top: number;
|
|
@@ -93,6 +94,15 @@ interface AppHostEvent extends Event {
|
|
|
93
94
|
|
|
94
95
|
// ---------- KeyboardProvider ----------
|
|
95
96
|
|
|
97
|
+
// When the VirtualKeyboard API is present (real on Chrome, polyfilled by the
|
|
98
|
+
// iOS/Android native shells), it is the AUTHORITATIVE keyboard-height source via
|
|
99
|
+
// geometrychange. In that case the visualViewport-diff heuristic must NOT also
|
|
100
|
+
// set the keyboard height — the two disagree (the diff path subtracts the CSS
|
|
101
|
+
// safe-area, yielding e.g. 346 vs the real 380) and fight, double-counting.
|
|
102
|
+
const hasVirtualKeyboardAPI = (): boolean =>
|
|
103
|
+
typeof navigator !== 'undefined' &&
|
|
104
|
+
!!(navigator as { virtualKeyboard?: unknown }).virtualKeyboard;
|
|
105
|
+
|
|
96
106
|
export function KeyboardProvider({ children }: { children?: ReactNode }) {
|
|
97
107
|
// Initialize with native values persisted on window or localStorage
|
|
98
108
|
// (window globals are cleared on reload, localStorage survives).
|
|
@@ -181,10 +191,12 @@ export function KeyboardProvider({ children }: { children?: ReactNode }) {
|
|
|
181
191
|
}
|
|
182
192
|
|
|
183
193
|
// Detect keyboard from visualViewport when no native keyboard event
|
|
184
|
-
// (fallback for Android PWA / browser)
|
|
194
|
+
// (fallback for Android PWA / browser). Skip when the VirtualKeyboard API
|
|
195
|
+
// owns the height — see hasVirtualKeyboardAPI.
|
|
185
196
|
if (
|
|
186
197
|
window.visualViewport &&
|
|
187
198
|
!hasNativeOverrideRef.current &&
|
|
199
|
+
!hasVirtualKeyboardAPI() &&
|
|
188
200
|
keyboardHeightRef.current === 0
|
|
189
201
|
) {
|
|
190
202
|
const diff = window.innerHeight - window.visualViewport.height;
|
|
@@ -237,7 +249,12 @@ export function KeyboardProvider({ children }: { children?: ReactNode }) {
|
|
|
237
249
|
// Detect keyboard from visualViewport when no native keyboard height events.
|
|
238
250
|
// This is needed on Android (browser, PWA, and native WebView) where
|
|
239
251
|
// update() may return early and no native keyboard-height event is sent.
|
|
240
|
-
|
|
252
|
+
// Skip when the VirtualKeyboard API owns the height (else the two fight).
|
|
253
|
+
if (
|
|
254
|
+
!hasNativeOverrideRef.current &&
|
|
255
|
+
!hasVirtualKeyboardAPI() &&
|
|
256
|
+
window.visualViewport
|
|
257
|
+
) {
|
|
241
258
|
const diff = window.innerHeight - window.visualViewport.height;
|
|
242
259
|
// Subtract the CSS safe area bottom to avoid double-counting
|
|
243
260
|
// (the page layout already adds safe area padding)
|
|
@@ -261,6 +278,24 @@ export function KeyboardProvider({ children }: { children?: ReactNode }) {
|
|
|
261
278
|
setKeyboardHeight(newHeight);
|
|
262
279
|
}
|
|
263
280
|
}
|
|
281
|
+
|
|
282
|
+
// Corrective for the VirtualKeyboard path: the native→web geometrychange
|
|
283
|
+
// can be dropped/reordered on rapid open/close (the JS bridge is async),
|
|
284
|
+
// leaving keyboardHeight stuck > 0 after the keyboard is already gone. The
|
|
285
|
+
// visual viewport is authoritative for "keyboard gone" (it returns to full
|
|
286
|
+
// height), so use it to CLEAR a stuck height — downward only, so it never
|
|
287
|
+
// re-introduces the fight with the VK API on the way up.
|
|
288
|
+
if (
|
|
289
|
+
hasVirtualKeyboardAPI() &&
|
|
290
|
+
window.visualViewport &&
|
|
291
|
+
keyboardHeightRef.current > 0
|
|
292
|
+
) {
|
|
293
|
+
const diff = window.innerHeight - window.visualViewport.height;
|
|
294
|
+
if (diff < 100) {
|
|
295
|
+
setKeyboardHeight(0);
|
|
296
|
+
update();
|
|
297
|
+
}
|
|
298
|
+
}
|
|
264
299
|
};
|
|
265
300
|
|
|
266
301
|
if (window.visualViewport)
|
|
@@ -370,14 +405,25 @@ export function KeyboardProvider({ children }: { children?: ReactNode }) {
|
|
|
370
405
|
});
|
|
371
406
|
if (kbHeight !== keyboardHeightRef.current) {
|
|
372
407
|
setKeyboardHeight(kbHeight);
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
408
|
+
if (hasNativeOverrideRef.current) {
|
|
409
|
+
// Native override active → update() returns early, so recompute the
|
|
410
|
+
// bottom directly against the native inset (Android path).
|
|
411
|
+
setSafeArea((prev) => {
|
|
412
|
+
const newBottom = Math.max(
|
|
413
|
+
nativeSafeAreaRef.current.bottom,
|
|
414
|
+
kbHeight,
|
|
415
|
+
);
|
|
416
|
+
if (prev.bottom !== newBottom)
|
|
417
|
+
return { ...prev, bottom: newBottom };
|
|
418
|
+
return prev;
|
|
419
|
+
});
|
|
420
|
+
} else {
|
|
421
|
+
// iOS / WKWebView: getOffsets() takes the env-based device inset as
|
|
422
|
+
// the floor and folds in keyboardHeightRef. Going through update()
|
|
423
|
+
// (instead of max(nativeSafeArea.bottom, …), which is 0 on iOS)
|
|
424
|
+
// preserves the home-indicator inset when the keyboard closes.
|
|
425
|
+
update();
|
|
426
|
+
}
|
|
381
427
|
}
|
|
382
428
|
};
|
|
383
429
|
nav.virtualKeyboard.addEventListener(
|
|
@@ -442,9 +488,14 @@ export function KeyboardProvider({ children }: { children?: ReactNode }) {
|
|
|
442
488
|
)}
|
|
443
489
|
>
|
|
444
490
|
{children}
|
|
445
|
-
|
|
491
|
+
{showDebugOverlay &&
|
|
492
|
+
typeof document !== 'undefined' &&
|
|
493
|
+
createPortal(
|
|
494
|
+
// Portalled to <body> so the bars are positioned against the visual
|
|
495
|
+
// viewport — not a transformed/padded ancestor, which was pushing the
|
|
496
|
+
// top bar down and letting the bottom bar ride up with the keyboard.
|
|
446
497
|
<>
|
|
447
|
-
{/* Top safe area */}
|
|
498
|
+
{/* Top safe area (device) */}
|
|
448
499
|
<div
|
|
449
500
|
style={{
|
|
450
501
|
...debugOverlayBase,
|
|
@@ -456,7 +507,9 @@ export function KeyboardProvider({ children }: { children?: ReactNode }) {
|
|
|
456
507
|
>
|
|
457
508
|
top: {safeArea.top}
|
|
458
509
|
</div>
|
|
459
|
-
{/* Bottom
|
|
510
|
+
{/* Bottom inset — the effective value the layout uses
|
|
511
|
+
(max of device home-indicator and the keyboard). Sits at the very
|
|
512
|
+
bottom, so it stays behind the keyboard when one is open. */}
|
|
460
513
|
<div
|
|
461
514
|
style={{
|
|
462
515
|
...debugOverlayBase,
|
|
@@ -469,7 +522,8 @@ export function KeyboardProvider({ children }: { children?: ReactNode }) {
|
|
|
469
522
|
bottom: {safeArea.bottom}
|
|
470
523
|
{keyboardHeight > 0 && ` (kbd: ${keyboardHeight})`}
|
|
471
524
|
</div>
|
|
472
|
-
{/* Keyboard
|
|
525
|
+
{/* Keyboard region, drawn over the bottom inset so the keyboard's
|
|
526
|
+
share of the inset is visible distinctly. */}
|
|
473
527
|
{keyboardHeight > 0 && (
|
|
474
528
|
<div
|
|
475
529
|
style={{
|
|
@@ -485,7 +539,8 @@ export function KeyboardProvider({ children }: { children?: ReactNode }) {
|
|
|
485
539
|
keyboard: {keyboardHeight}
|
|
486
540
|
</div>
|
|
487
541
|
)}
|
|
488
|
-
|
|
542
|
+
</>,
|
|
543
|
+
document.body,
|
|
489
544
|
)}
|
|
490
545
|
</SafeAreaContext.Provider>
|
|
491
546
|
);
|