@pinnacle0/web-ui 0.6.31 → 0.6.32
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pinnacle0/web-ui",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.32",
|
|
4
4
|
"author": "Pinnacle",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"sideEffects": [
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
"react": "19.2.0",
|
|
47
47
|
"react-dom": "19.2.0",
|
|
48
48
|
"react-router-dom": "5.3.0",
|
|
49
|
-
"@pinnacle0/
|
|
50
|
-
"@pinnacle0/
|
|
49
|
+
"@pinnacle0/devtool-util": "1.3.6",
|
|
50
|
+
"@pinnacle0/webpack-util": "0.8.18"
|
|
51
51
|
},
|
|
52
52
|
"exports": {
|
|
53
53
|
"./core/*": {
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Orientation detection utility for mobile and desktop devices.
|
|
3
3
|
*
|
|
4
|
+
* For Android,
|
|
4
5
|
* Uses the ScreenOrientation API for checking the orientation of the screen.
|
|
5
6
|
* For Deprecated browsers, it uses the window.orientation API.
|
|
6
7
|
*
|
|
8
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/API/ScreenOrientation
|
|
9
|
+
*
|
|
7
10
|
* For iOS 26.0+ PWA, it does not dispatch any event when the orientation changes,
|
|
8
|
-
*
|
|
11
|
+
* For mobile Safari,
|
|
12
|
+
* Use media queries to check the orientation of the screen for iOS.
|
|
9
13
|
*
|
|
10
|
-
* @see https://developer.mozilla.org/en-US/docs/Web/API/ScreenOrientation
|
|
11
14
|
* @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_media_queries/Using_media_queries
|
|
12
15
|
*/
|
|
13
16
|
export type OrientationType = "portrait" | "landscape";
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Orientation detection utility for mobile and desktop devices.
|
|
3
3
|
*
|
|
4
|
+
* For Android,
|
|
4
5
|
* Uses the ScreenOrientation API for checking the orientation of the screen.
|
|
5
6
|
* For Deprecated browsers, it uses the window.orientation API.
|
|
6
7
|
*
|
|
8
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/API/ScreenOrientation
|
|
9
|
+
*
|
|
7
10
|
* For iOS 26.0+ PWA, it does not dispatch any event when the orientation changes,
|
|
8
|
-
*
|
|
11
|
+
* For mobile Safari,
|
|
12
|
+
* Use media queries to check the orientation of the screen for iOS.
|
|
9
13
|
*
|
|
10
|
-
* @see https://developer.mozilla.org/en-US/docs/Web/API/ScreenOrientation
|
|
11
14
|
* @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_media_queries/Using_media_queries
|
|
12
15
|
*/
|
|
13
16
|
import { BrowserUtil } from "../BrowserUtil";
|
|
14
17
|
const supportScreenOrientationAPI = typeof window.screen.orientation !== "undefined";
|
|
15
|
-
//
|
|
16
|
-
//
|
|
17
|
-
//
|
|
18
|
-
|
|
19
|
-
// "notation" is a new option in Intl.PluralRules.prototype.resolvedOptions() in iOS 26.
|
|
20
|
-
// https://webkit.org/blog/17333/webkit-features-in-safari-26-0/#web-api
|
|
21
|
-
const isIOS26PWA = BrowserUtil.os() === "ios" && "notation" in new Intl.PluralRules().resolvedOptions() && "standalone" in window.navigator && window.navigator.standalone;
|
|
18
|
+
// DO NOT USE matchMedia for non-safari browsers, because it can be incorrect if keyboard is popped up
|
|
19
|
+
// Tested on iOS safari: 26.0-15.2
|
|
20
|
+
// See Note from: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/orientation
|
|
21
|
+
const isIOSSafari = BrowserUtil.os() === "ios" && navigator.userAgent.includes("Safari");
|
|
22
22
|
function subscribe(subscriber) {
|
|
23
23
|
const handler = () => subscriber(current());
|
|
24
|
-
if (
|
|
24
|
+
if (isIOSSafari) {
|
|
25
25
|
window.matchMedia("(orientation: portrait)").addEventListener("change", handler);
|
|
26
26
|
return () => window.matchMedia("(orientation: portrait)").removeEventListener("change", handler);
|
|
27
27
|
}
|
|
@@ -36,7 +36,7 @@ function subscribe(subscriber) {
|
|
|
36
36
|
}
|
|
37
37
|
function current() {
|
|
38
38
|
try {
|
|
39
|
-
if (
|
|
39
|
+
if (isIOSSafari) {
|
|
40
40
|
return window.matchMedia("(orientation: portrait)").matches ? "portrait" : "landscape";
|
|
41
41
|
}
|
|
42
42
|
else if (supportScreenOrientationAPI) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/OrientationUtil/index.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/OrientationUtil/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAE3C,MAAM,2BAA2B,GAAG,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,KAAK,WAAW,CAAC;AAMrF,sGAAsG;AACtG,kCAAkC;AAClC,qFAAqF;AACrF,MAAM,WAAW,GAAG,WAAW,CAAC,EAAE,EAAE,KAAK,KAAK,IAAI,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAEzF,SAAS,SAAS,CAAC,UAAsB;IACrC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5C,IAAI,WAAW,EAAE,CAAC;QACd,MAAM,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjF,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACrG,CAAC;SAAM,IAAI,2BAA2B,EAAE,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9D,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClF,CAAC;SAAM,CAAC;QACJ,MAAM,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QACtD,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACjF,CAAC;AACL,CAAC;AAED,SAAS,OAAO;IACZ,IAAI,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YACd,OAAO,MAAM,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;QAC3F,CAAC;aAAM,IAAI,2BAA2B,EAAE,CAAC;YACrC,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;QAC5E,CAAC;aAAM,CAAC;YACJ,OAAO,MAAM,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;QAC/D,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACL,+GAA+G;QAC/G,OAAO,UAAU,CAAC;IACtB,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC,SAAS;IACT,OAAO;CACV,CAAC,CAAC"}
|