@react-native-ohos/react-native-safe-area-context 5.1.1-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.OpenSource +11 -0
- package/README.md +10 -0
- package/harmony/safe_area/LICENSE +21 -0
- package/harmony/safe_area/NOTICE +33 -0
- package/harmony/safe_area/README.md +270 -0
- package/harmony/safe_area/build-profile.json5 +9 -0
- package/harmony/safe_area/hvigorfile.ts +6 -0
- package/harmony/safe_area/index.ets +26 -0
- package/harmony/safe_area/oh-package.json5 +22 -0
- package/harmony/safe_area/src/main/cpp/CMakeLists.txt +9 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaBeanData.h +56 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaColumnNode.cpp +45 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaColumnNode.h +38 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaManagerMap.cpp +66 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaManagerMap.h +57 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaProviderComponentInstance.cpp +75 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaProviderComponentInstance.h +49 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaStackNode.cpp +94 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaStackNode.h +53 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaViewComponentInstance.cpp +94 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaViewComponentInstance.h +64 -0
- package/harmony/safe_area/src/main/cpp/SafeAreaViewPackage.h +60 -0
- package/harmony/safe_area/src/main/cpp/TurboModuleRequest.cpp +63 -0
- package/harmony/safe_area/src/main/cpp/TurboModuleRequest.h +33 -0
- package/harmony/safe_area/src/main/cpp/generated/RNOH/generated/BaseReactNativeSafeAreaContextPackage.h +72 -0
- package/harmony/safe_area/src/main/cpp/generated/RNOH/generated/components/BaseRNCSafeAreaProviderComponentInstance.h +18 -0
- package/harmony/safe_area/src/main/cpp/generated/RNOH/generated/components/BaseRNCSafeAreaViewComponentInstance.h +18 -0
- package/harmony/safe_area/src/main/cpp/generated/RNOH/generated/components/RNCSafeAreaProviderJSIBinder.h +27 -0
- package/harmony/safe_area/src/main/cpp/generated/RNOH/generated/components/RNCSafeAreaViewJSIBinder.h +30 -0
- package/harmony/safe_area/src/main/cpp/generated/RNOH/generated/turbo_modules/RNCSafeAreaContext.cpp +16 -0
- package/harmony/safe_area/src/main/cpp/generated/RNOH/generated/turbo_modules/RNCSafeAreaContext.h +16 -0
- package/harmony/safe_area/src/main/cpp/generated/react/renderer/components/react_native_safe_area_context/ComponentDescriptors.h +25 -0
- package/harmony/safe_area/src/main/cpp/generated/react/renderer/components/react_native_safe_area_context/EventEmitters.cpp +56 -0
- package/harmony/safe_area/src/main/cpp/generated/react/renderer/components/react_native_safe_area_context/EventEmitters.h +59 -0
- package/harmony/safe_area/src/main/cpp/generated/react/renderer/components/react_native_safe_area_context/Props.cpp +36 -0
- package/harmony/safe_area/src/main/cpp/generated/react/renderer/components/react_native_safe_area_context/Props.h +88 -0
- package/harmony/safe_area/src/main/cpp/generated/react/renderer/components/react_native_safe_area_context/ShadowNodes.cpp +20 -0
- package/harmony/safe_area/src/main/cpp/generated/react/renderer/components/react_native_safe_area_context/ShadowNodes.h +39 -0
- package/harmony/safe_area/src/main/cpp/generated/react/renderer/components/react_native_safe_area_context/States.cpp +18 -0
- package/harmony/safe_area/src/main/cpp/generated/react/renderer/components/react_native_safe_area_context/States.h +23 -0
- package/harmony/safe_area/src/main/ets/Logger.ts +64 -0
- package/harmony/safe_area/src/main/ets/SafeAreaProvider.ets +128 -0
- package/harmony/safe_area/src/main/ets/SafeAreaProviderModifier.ets +121 -0
- package/harmony/safe_area/src/main/ets/SafeAreaView.ets +242 -0
- package/harmony/safe_area/src/main/ets/SafeAreaViewModifier.ets +140 -0
- package/harmony/safe_area/src/main/ets/SafeAreaViewPackage.ts +46 -0
- package/harmony/safe_area/src/main/ets/SafeViewTurboModule.ts +131 -0
- package/harmony/safe_area/src/main/ets/common/SafeAreaType.ts +70 -0
- package/harmony/safe_area/src/main/module.json5 +7 -0
- package/harmony/safe_area/src/main/resources/base/element/string.json +8 -0
- package/harmony/safe_area/src/main/resources/en_US/element/string.json +8 -0
- package/harmony/safe_area/src/main/resources/zh_CN/element/string.json +8 -0
- package/harmony/safe_area/ts.ts +26 -0
- package/harmony/safe_area.har +0 -0
- package/lib/commonjs/SafeArea.types.js +6 -0
- package/lib/commonjs/SafeArea.types.js.map +1 -0
- package/lib/commonjs/SafeAreaView.js +184 -0
- package/lib/commonjs/SafeAreaView.js.map +1 -0
- package/lib/commonjs/index.js +51 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/specs/NativeSafeAreaContext.js +9 -0
- package/lib/commonjs/specs/NativeSafeAreaContext.js.map +1 -0
- package/lib/commonjs/specs/NativeSafeAreaProvider.js +10 -0
- package/lib/commonjs/specs/NativeSafeAreaProvider.js.map +1 -0
- package/lib/commonjs/specs/NativeSafeAreaView.js +12 -0
- package/lib/commonjs/specs/NativeSafeAreaView.js.map +1 -0
- package/lib/module/SafeArea.types.js +2 -0
- package/lib/module/SafeArea.types.js.map +1 -0
- package/lib/module/SafeAreaView.js +176 -0
- package/lib/module/SafeAreaView.js.map +1 -0
- package/lib/module/index.js +7 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/specs/NativeSafeAreaContext.js +3 -0
- package/lib/module/specs/NativeSafeAreaContext.js.map +1 -0
- package/lib/module/specs/NativeSafeAreaProvider.js +3 -0
- package/lib/module/specs/NativeSafeAreaProvider.js.map +1 -0
- package/lib/module/specs/NativeSafeAreaView.js +5 -0
- package/lib/module/specs/NativeSafeAreaView.js.map +1 -0
- package/lib/typescript/SafeArea.types.d.ts +36 -0
- package/lib/typescript/SafeArea.types.d.ts.map +1 -0
- package/lib/typescript/SafeAreaView.d.ts +6 -0
- package/lib/typescript/SafeAreaView.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +5 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/specs/NativeSafeAreaContext.d.ts +23 -0
- package/lib/typescript/specs/NativeSafeAreaContext.d.ts.map +1 -0
- package/lib/typescript/specs/NativeSafeAreaProvider.d.ts +22 -0
- package/lib/typescript/specs/NativeSafeAreaProvider.d.ts.map +1 -0
- package/lib/typescript/specs/NativeSafeAreaView.d.ts +24 -0
- package/lib/typescript/specs/NativeSafeAreaView.d.ts.map +1 -0
- package/package.json +139 -0
- package/src/SafeArea.types.ts +47 -0
- package/src/SafeAreaView.tsx +201 -0
- package/src/index.tsx +6 -0
- package/src/specs/NativeSafeAreaContext.ts +23 -0
- package/src/specs/NativeSafeAreaProvider.ts +29 -0
- package/src/specs/NativeSafeAreaView.ts +28 -0
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import NativeSafeAreaView from './specs/NativeSafeAreaView';
|
|
4
|
+
import { useMemo, useState } from 'react';
|
|
5
|
+
const defaultEdges = {
|
|
6
|
+
top: 'additive',
|
|
7
|
+
left: 'additive',
|
|
8
|
+
bottom: 'additive',
|
|
9
|
+
right: 'additive'
|
|
10
|
+
};
|
|
11
|
+
let isOnChange = false;
|
|
12
|
+
let realTop = 0;
|
|
13
|
+
let realLeft = 0;
|
|
14
|
+
let realBottom = 0;
|
|
15
|
+
let realRight = 0;
|
|
16
|
+
let safeAreaTop = 0;
|
|
17
|
+
let safeAreaLeft = 0;
|
|
18
|
+
let safeAreaBottom = 0;
|
|
19
|
+
let safeAreaRight = 0;
|
|
20
|
+
function getEdgeValue(edgeMode, insetValue, edgeValue) {
|
|
21
|
+
if (edgeMode === 'off') {
|
|
22
|
+
return edgeValue;
|
|
23
|
+
} else if (edgeMode === 'maximum') {
|
|
24
|
+
return Math.max(insetValue, edgeValue);
|
|
25
|
+
} else {
|
|
26
|
+
return insetValue + edgeValue;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export const SafeAreaView = /*#__PURE__*/React.forwardRef(({
|
|
30
|
+
edges,
|
|
31
|
+
...props
|
|
32
|
+
}, ref) => {
|
|
33
|
+
const nativeEdges = useMemo(() => {
|
|
34
|
+
if (edges == null) {
|
|
35
|
+
return defaultEdges;
|
|
36
|
+
}
|
|
37
|
+
const edgesObj = Array.isArray(edges) ? edges.reduce((acc, edge) => {
|
|
38
|
+
acc[edge] = 'additive';
|
|
39
|
+
return acc;
|
|
40
|
+
}, {}) :
|
|
41
|
+
// ts has trouble with refining readonly arrays.
|
|
42
|
+
edges;
|
|
43
|
+
|
|
44
|
+
// make sure that we always pass all edges, required for fabric
|
|
45
|
+
const requiredEdges = {
|
|
46
|
+
top: edgesObj.top ?? 'off',
|
|
47
|
+
right: edgesObj.right ?? 'off',
|
|
48
|
+
bottom: edgesObj.bottom ?? 'off',
|
|
49
|
+
left: edgesObj.left ?? 'off'
|
|
50
|
+
};
|
|
51
|
+
return requiredEdges;
|
|
52
|
+
}, [edges]);
|
|
53
|
+
const [isFirstRefresh, setIsFirstRefresh] = useState(false);
|
|
54
|
+
let safeAreaStyle = [props.style];
|
|
55
|
+
let rawPadding = 0;
|
|
56
|
+
let rawMargin = 0;
|
|
57
|
+
let rawPaddingTop = undefined;
|
|
58
|
+
let rawPaddingLeft = undefined;
|
|
59
|
+
let rawPaddingBottom = undefined;
|
|
60
|
+
let rawPaddingRight = undefined;
|
|
61
|
+
let rawMarginTop = undefined;
|
|
62
|
+
let rawMarginLeft = undefined;
|
|
63
|
+
let rawMarginBottom = undefined;
|
|
64
|
+
let rawMarginRight = undefined;
|
|
65
|
+
const safeAreaChange = e => {
|
|
66
|
+
if (e.nativeEvent.safeAreaViewInsetsValue?.top) {
|
|
67
|
+
safeAreaTop = e.nativeEvent.safeAreaViewInsetsValue?.top;
|
|
68
|
+
}
|
|
69
|
+
if (e.nativeEvent.safeAreaViewInsetsValue?.right) {
|
|
70
|
+
safeAreaRight = e.nativeEvent.safeAreaViewInsetsValue?.right;
|
|
71
|
+
}
|
|
72
|
+
if (e.nativeEvent.safeAreaViewInsetsValue?.bottom) {
|
|
73
|
+
safeAreaBottom = e.nativeEvent.safeAreaViewInsetsValue?.bottom;
|
|
74
|
+
}
|
|
75
|
+
if (e.nativeEvent.safeAreaViewInsetsValue?.left) {
|
|
76
|
+
safeAreaLeft = e.nativeEvent.safeAreaViewInsetsValue?.left;
|
|
77
|
+
}
|
|
78
|
+
if (!isOnChange) {
|
|
79
|
+
setIsFirstRefresh(true);
|
|
80
|
+
}
|
|
81
|
+
isOnChange = true;
|
|
82
|
+
};
|
|
83
|
+
let rawProp = props.style;
|
|
84
|
+
let i;
|
|
85
|
+
if (rawProp && rawProp.length > 0) {
|
|
86
|
+
for (i = 0; i < rawProp.length; i++) {
|
|
87
|
+
if (rawProp[i]?.padding) {
|
|
88
|
+
rawPadding = rawProp[i]?.padding;
|
|
89
|
+
}
|
|
90
|
+
if (rawProp[i]?.margin) {
|
|
91
|
+
rawMargin = rawProp[i]?.margin;
|
|
92
|
+
}
|
|
93
|
+
if (rawProp[i]?.paddingTop) {
|
|
94
|
+
rawPaddingTop = rawProp[i]?.paddingTop;
|
|
95
|
+
}
|
|
96
|
+
if (rawProp[i]?.paddingLeft) {
|
|
97
|
+
rawPaddingLeft = rawProp[i]?.paddingLeft;
|
|
98
|
+
}
|
|
99
|
+
if (rawProp[i]?.paddingRight) {
|
|
100
|
+
rawPaddingRight = rawProp[i]?.paddingRight;
|
|
101
|
+
}
|
|
102
|
+
if (rawProp[i]?.paddingBottom) {
|
|
103
|
+
rawPaddingBottom = rawProp[i]?.paddingBottom;
|
|
104
|
+
}
|
|
105
|
+
if (rawProp[i]?.marginTop) {
|
|
106
|
+
rawMarginTop = rawProp[i]?.marginTop;
|
|
107
|
+
}
|
|
108
|
+
if (rawProp[i]?.marginLeft) {
|
|
109
|
+
rawMarginLeft = rawProp[i]?.marginLeft;
|
|
110
|
+
}
|
|
111
|
+
if (rawProp[i]?.marginRight) {
|
|
112
|
+
rawMarginRight = rawProp[i]?.marginRight;
|
|
113
|
+
}
|
|
114
|
+
if (rawProp[i]?.marginBottom) {
|
|
115
|
+
rawMarginBottom = rawProp[i]?.marginBottom;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
if (!rawPaddingTop) {
|
|
120
|
+
rawPaddingTop = rawPadding;
|
|
121
|
+
}
|
|
122
|
+
if (!rawPaddingLeft) {
|
|
123
|
+
rawPaddingLeft = rawPadding;
|
|
124
|
+
}
|
|
125
|
+
if (!rawPaddingRight) {
|
|
126
|
+
rawPaddingRight = rawPadding;
|
|
127
|
+
}
|
|
128
|
+
if (!rawPaddingBottom) {
|
|
129
|
+
rawPaddingBottom = rawPadding;
|
|
130
|
+
}
|
|
131
|
+
if (!rawMarginTop) {
|
|
132
|
+
rawMarginTop = rawMargin;
|
|
133
|
+
}
|
|
134
|
+
if (!rawMarginLeft) {
|
|
135
|
+
rawMarginLeft = rawMargin;
|
|
136
|
+
}
|
|
137
|
+
if (!rawMarginRight) {
|
|
138
|
+
rawMarginRight = rawMargin;
|
|
139
|
+
}
|
|
140
|
+
if (!rawMarginBottom) {
|
|
141
|
+
rawMarginBottom = rawMargin;
|
|
142
|
+
}
|
|
143
|
+
if (isOnChange) {
|
|
144
|
+
if (props.mode === 'margin') {
|
|
145
|
+
realTop = getEdgeValue(nativeEdges.top, safeAreaTop, rawMarginTop);
|
|
146
|
+
realLeft = getEdgeValue(nativeEdges.left, safeAreaLeft, rawMarginLeft);
|
|
147
|
+
realBottom = getEdgeValue(nativeEdges.bottom, safeAreaBottom, rawMarginBottom);
|
|
148
|
+
realRight = getEdgeValue(nativeEdges.right, safeAreaRight, rawMarginRight);
|
|
149
|
+
safeAreaStyle = [props.style, {
|
|
150
|
+
marginTop: realTop,
|
|
151
|
+
marginLeft: realLeft,
|
|
152
|
+
marginBottom: realBottom,
|
|
153
|
+
marginRight: realRight
|
|
154
|
+
}];
|
|
155
|
+
} else {
|
|
156
|
+
realTop = getEdgeValue(nativeEdges.top, safeAreaTop, rawPaddingTop);
|
|
157
|
+
realLeft = getEdgeValue(nativeEdges.left, safeAreaLeft, rawPaddingLeft);
|
|
158
|
+
realBottom = getEdgeValue(nativeEdges.bottom, safeAreaBottom, rawPaddingBottom);
|
|
159
|
+
realRight = getEdgeValue(nativeEdges.right, safeAreaRight, rawPaddingRight);
|
|
160
|
+
safeAreaStyle = [props.style, {
|
|
161
|
+
paddingTop: realTop,
|
|
162
|
+
paddingLeft: realLeft,
|
|
163
|
+
paddingBottom: realBottom,
|
|
164
|
+
paddingRight: realRight
|
|
165
|
+
}];
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
return /*#__PURE__*/React.createElement(NativeSafeAreaView, _extends({}, props, {
|
|
169
|
+
style: safeAreaStyle,
|
|
170
|
+
edges: nativeEdges,
|
|
171
|
+
isFirstRefresh: isFirstRefresh,
|
|
172
|
+
onSafeAreaValueChange: safeAreaChange,
|
|
173
|
+
ref: ref
|
|
174
|
+
}));
|
|
175
|
+
});
|
|
176
|
+
//# sourceMappingURL=SafeAreaView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","NativeSafeAreaView","useMemo","useState","defaultEdges","top","left","bottom","right","isOnChange","realTop","realLeft","realBottom","realRight","safeAreaTop","safeAreaLeft","safeAreaBottom","safeAreaRight","getEdgeValue","edgeMode","insetValue","edgeValue","Math","max","SafeAreaView","forwardRef","edges","props","ref","nativeEdges","edgesObj","Array","isArray","reduce","acc","edge","requiredEdges","isFirstRefresh","setIsFirstRefresh","safeAreaStyle","style","rawPadding","rawMargin","rawPaddingTop","undefined","rawPaddingLeft","rawPaddingBottom","rawPaddingRight","rawMarginTop","rawMarginLeft","rawMarginBottom","rawMarginRight","safeAreaChange","e","nativeEvent","safeAreaViewInsetsValue","rawProp","i","length","padding","margin","paddingTop","paddingLeft","paddingRight","paddingBottom","marginTop","marginLeft","marginRight","marginBottom","mode","createElement","_extends","onSafeAreaValueChange"],"sourceRoot":"..\\..\\src","sources":["SafeAreaView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
export * from 'react-native-safe-area-context/src/SafeAreaContext';
|
|
4
|
+
export * from './SafeAreaView';
|
|
5
|
+
export * from 'react-native-safe-area-context/src//InitialWindow';
|
|
6
|
+
export * from 'react-native-safe-area-context/src//SafeArea.types';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":"AAAA,YAAY;;AAEZ,cAAc,oDAAoD;AAClE,cAAc,gBAAgB;AAC9B,cAAc,mDAAmD;AACjE,cAAc,oDAAoD","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"..\\..\\..\\src","sources":["specs/NativeSafeAreaContext.ts"],"mappings":"AAAA,SAAsBA,mBAAmB,QAAQ,cAAc;AAsB/D,eAAeA,mBAAmB,CAACC,GAAG,CAAO,oBAAoB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["codegenNativeComponent"],"sourceRoot":"..\\..\\..\\src","sources":["specs/NativeSafeAreaProvider.ts"],"mappings":"AAIA,OAAOA,sBAAsB,MAAM,yDAAyD;AAsB5F,eAAeA,sBAAsB,CACnC,qBACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["codegenNativeComponent","interfaceOnly"],"sourceRoot":"..\\..\\..\\src","sources":["specs/NativeSafeAreaView.ts"],"mappings":"AAAA,OAAOA,sBAAsB,MAAM,yDAAyD;AAyB5F,eAAeA,sBAAsB,CAAc,iBAAiB,EAAE;EACpEC,aAAa,EAAE;AACjB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type * as React from 'react';
|
|
2
|
+
import type { NativeSyntheticEvent, ViewProps } from 'react-native';
|
|
3
|
+
import NativeSafeAreaView from './specs/NativeSafeAreaView';
|
|
4
|
+
export type Edge = 'top' | 'right' | 'bottom' | 'left';
|
|
5
|
+
export type EdgeMode = 'off' | 'additive' | 'maximum';
|
|
6
|
+
export type EdgeRecord = Partial<Record<Edge, EdgeMode>>;
|
|
7
|
+
export type Edges = readonly Edge[] | Readonly<EdgeRecord>;
|
|
8
|
+
export interface EdgeInsets {
|
|
9
|
+
top: number;
|
|
10
|
+
right: number;
|
|
11
|
+
bottom: number;
|
|
12
|
+
left: number;
|
|
13
|
+
}
|
|
14
|
+
export interface Rect {
|
|
15
|
+
x: number;
|
|
16
|
+
y: number;
|
|
17
|
+
width: number;
|
|
18
|
+
height: number;
|
|
19
|
+
}
|
|
20
|
+
export interface Metrics {
|
|
21
|
+
insets: EdgeInsets;
|
|
22
|
+
frame: Rect;
|
|
23
|
+
}
|
|
24
|
+
export type InsetChangedEvent = NativeSyntheticEvent<Metrics>;
|
|
25
|
+
export type InsetChangeNativeCallback = (event: InsetChangedEvent) => void;
|
|
26
|
+
export interface NativeSafeAreaProviderProps extends ViewProps {
|
|
27
|
+
children?: React.ReactNode;
|
|
28
|
+
onInsetsChange: InsetChangeNativeCallback;
|
|
29
|
+
}
|
|
30
|
+
export interface NativeSafeAreaViewProps extends ViewProps {
|
|
31
|
+
children?: React.ReactNode;
|
|
32
|
+
mode?: 'padding' | 'margin';
|
|
33
|
+
edges?: Edges;
|
|
34
|
+
}
|
|
35
|
+
export type NativeSafeAreaViewInstance = InstanceType<typeof NativeSafeAreaView>;
|
|
36
|
+
//# sourceMappingURL=SafeArea.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SafeArea.types.d.ts","sourceRoot":"","sources":["../../src/SafeArea.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAE5D,MAAM,MAAM,IAAI,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AACvD,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,CAAC;AAEtD,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AACzD,MAAM,MAAM,KAAK,GAAG,SAAS,IAAI,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;AAE3D,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,IAAI;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,IAAI,CAAC;CACb;AAED,MAAM,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAE9D,MAAM,MAAM,yBAAyB,GAAG,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAE3E,MAAM,WAAW,2BAA4B,SAAQ,SAAS;IAC5D,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,cAAc,EAAE,yBAAyB,CAAC;CAC3C;AAED,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,MAAM,MAAM,0BAA0B,GAAG,YAAY,CACnD,OAAO,kBAAkB,CAC1B,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { NativeSafeAreaViewProps } from './SafeArea.types';
|
|
3
|
+
import type * as ReactNative from "react-native";
|
|
4
|
+
export type SafeAreaViewProps = NativeSafeAreaViewProps;
|
|
5
|
+
export declare const SafeAreaView: React.ForwardRefExoticComponent<NativeSafeAreaViewProps & React.RefAttributes<React.Component<import("./specs/NativeSafeAreaView").NativeProps, {}, any> & ReactNative.NativeMethods>>;
|
|
6
|
+
//# sourceMappingURL=SafeAreaView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SafeAreaView.d.ts","sourceRoot":"","sources":["../../src/SafeAreaView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAKV,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,KAAK,WAAW,MAAM,cAAc,CAAC;AAUjD,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAsBxD,eAAO,MAAM,YAAY,wLA+JvB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from 'react-native-safe-area-context/src/SafeAreaContext';
|
|
2
|
+
export * from './SafeAreaView';
|
|
3
|
+
export * from 'react-native-safe-area-context/src//InitialWindow';
|
|
4
|
+
export * from 'react-native-safe-area-context/src//SafeArea.types';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAEA,cAAc,oDAAoD,CAAC;AACnE,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mDAAmD,CAAC;AAClE,cAAc,oDAAoD,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { TurboModule } from 'react-native';
|
|
2
|
+
import type { Double } from 'react-native/Libraries/Types/CodegenTypes';
|
|
3
|
+
export interface Spec extends TurboModule {
|
|
4
|
+
getConstants: () => {
|
|
5
|
+
initialWindowMetrics?: {
|
|
6
|
+
insets: {
|
|
7
|
+
top: Double;
|
|
8
|
+
right: Double;
|
|
9
|
+
bottom: Double;
|
|
10
|
+
left: Double;
|
|
11
|
+
};
|
|
12
|
+
frame: {
|
|
13
|
+
x: Double;
|
|
14
|
+
y: Double;
|
|
15
|
+
width: Double;
|
|
16
|
+
height: Double;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
declare const _default: Spec | null;
|
|
22
|
+
export default _default;
|
|
23
|
+
//# sourceMappingURL=NativeSafeAreaContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeSafeAreaContext.d.ts","sourceRoot":"","sources":["../../../src/specs/NativeSafeAreaContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAuB,MAAM,cAAc,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAExE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,YAAY,EAAE,MAAM;QAClB,oBAAoB,CAAC,EAAE;YACrB,MAAM,EAAE;gBACN,GAAG,EAAE,MAAM,CAAC;gBACZ,KAAK,EAAE,MAAM,CAAC;gBACd,MAAM,EAAE,MAAM,CAAC;gBACf,IAAI,EAAE,MAAM,CAAC;aACd,CAAC;YACF,KAAK,EAAE;gBACL,CAAC,EAAE,MAAM,CAAC;gBACV,CAAC,EAAE,MAAM,CAAC;gBACV,KAAK,EAAE,MAAM,CAAC;gBACd,MAAM,EAAE,MAAM,CAAC;aAChB,CAAC;SACH,CAAC;KACH,CAAC;CACH;;AAED,wBAAmE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { DirectEventHandler, Double } from 'react-native/Libraries/Types/CodegenTypes';
|
|
2
|
+
import type { ViewProps, HostComponent } from 'react-native';
|
|
3
|
+
export type Event = Readonly<{
|
|
4
|
+
insets: Readonly<{
|
|
5
|
+
top: Double;
|
|
6
|
+
right: Double;
|
|
7
|
+
bottom: Double;
|
|
8
|
+
left: Double;
|
|
9
|
+
}>;
|
|
10
|
+
frame: Readonly<{
|
|
11
|
+
x: Double;
|
|
12
|
+
y: Double;
|
|
13
|
+
width: Double;
|
|
14
|
+
height: Double;
|
|
15
|
+
}>;
|
|
16
|
+
}>;
|
|
17
|
+
export interface NativeProps extends ViewProps {
|
|
18
|
+
onInsetsChange?: DirectEventHandler<Event>;
|
|
19
|
+
}
|
|
20
|
+
declare const _default: HostComponent<NativeProps>;
|
|
21
|
+
export default _default;
|
|
22
|
+
//# sourceMappingURL=NativeSafeAreaProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeSafeAreaProvider.d.ts","sourceRoot":"","sources":["../../../src/specs/NativeSafeAreaProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACP,MAAM,2CAA2C,CAAC;AAEnD,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7D,MAAM,MAAM,KAAK,GAAG,QAAQ,CAAC;IAC3B,MAAM,EAAE,QAAQ,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IACH,KAAK,EAAE,QAAQ,CAAC;QACd,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;CACJ,CAAC,CAAC;AAEH,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,cAAc,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;CAC5C;wBAII,aAAa,CAAC,WAAW,CAAC;AAF/B,wBAEgC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { WithDefault, Float, DirectEventHandler } from 'react-native/Libraries/Types/CodegenTypes';
|
|
2
|
+
import type { ViewProps, HostComponent } from 'react-native';
|
|
3
|
+
export type onSafeAreaValueChangeEvent = Readonly<{
|
|
4
|
+
safeAreaViewInsetsValue?: {
|
|
5
|
+
top?: Float;
|
|
6
|
+
left?: Float;
|
|
7
|
+
bottom?: Float;
|
|
8
|
+
right?: Float;
|
|
9
|
+
};
|
|
10
|
+
}>;
|
|
11
|
+
export interface NativeProps extends ViewProps {
|
|
12
|
+
mode?: WithDefault<'padding' | 'margin', 'padding'>;
|
|
13
|
+
edges?: Readonly<{
|
|
14
|
+
top: string;
|
|
15
|
+
right: string;
|
|
16
|
+
bottom: string;
|
|
17
|
+
left: string;
|
|
18
|
+
}>;
|
|
19
|
+
isFirstRefresh: boolean;
|
|
20
|
+
onSafeAreaValueChange: DirectEventHandler<onSafeAreaValueChangeEvent>;
|
|
21
|
+
}
|
|
22
|
+
declare const _default: HostComponent<NativeProps>;
|
|
23
|
+
export default _default;
|
|
24
|
+
//# sourceMappingURL=NativeSafeAreaView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeSafeAreaView.d.ts","sourceRoot":"","sources":["../../../src/specs/NativeSafeAreaView.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AACxG,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7D,MAAM,MAAM,0BAA0B,GAAG,QAAQ,CAAC;IAChD,uBAAuB,CAAC,EAAE;QACxB,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAA;QACd,KAAK,CAAC,EAAE,KAAK,CAAA;KACd,CAAC;CACH,CAAC,CAAA;AAEF,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,IAAI,CAAC,EAAE,WAAW,CAAC,SAAS,GAAG,QAAQ,EAAE,SAAS,CAAC,CAAC;IACpD,KAAK,CAAC,EAAE,QAAQ,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IACH,cAAc,EAAE,OAAO,CAAC;IACxB,qBAAqB,EAAE,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;CACvE;wBAIK,aAAa,CAAC,WAAW,CAAC;AAFhC,wBAEiC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@react-native-ohos/react-native-safe-area-context",
|
|
3
|
+
"version": "5.1.1-rc.1",
|
|
4
|
+
"description": "A flexible way to handle safe area, also works on Android and web.",
|
|
5
|
+
"main": "lib/commonjs/index.js",
|
|
6
|
+
"module": "lib/module/index.js",
|
|
7
|
+
"react-native": "src/index.tsx",
|
|
8
|
+
"types": "lib/typescript/index.d.ts",
|
|
9
|
+
"harmony": {
|
|
10
|
+
"alias": "react-native-safe-area-context"
|
|
11
|
+
},
|
|
12
|
+
"publishConfig": {
|
|
13
|
+
"registry": "https://registry.npmjs.org/",
|
|
14
|
+
"access": "public"
|
|
15
|
+
},
|
|
16
|
+
"source": "src/index.tsx",
|
|
17
|
+
"sideEffects": false,
|
|
18
|
+
"files": [
|
|
19
|
+
"src",
|
|
20
|
+
"lib",
|
|
21
|
+
"jest",
|
|
22
|
+
"*.podspec",
|
|
23
|
+
"react-native.config.js",
|
|
24
|
+
"!**/__tests__",
|
|
25
|
+
"!example",
|
|
26
|
+
"harmony"
|
|
27
|
+
],
|
|
28
|
+
"author": "Janic Duplessis <janicduplessis@gmail.com>",
|
|
29
|
+
"contributors": [
|
|
30
|
+
"Evan Bacon <bacon@expo.io> (https://github.com/evanbacon)"
|
|
31
|
+
],
|
|
32
|
+
"homepage": "https://github.com/th3rdwave/react-native-safe-area-context#readme",
|
|
33
|
+
"license": "MIT",
|
|
34
|
+
"scripts": {
|
|
35
|
+
"start": "react-native start",
|
|
36
|
+
"test": "yarn format:check && yarn validate:eslint && yarn validate:typescript && yarn validate:jest",
|
|
37
|
+
"validate:eslint": "eslint \"src/**/*.{js,ts,tsx}\" \"example/**/*.{js,ts,tsx}\"",
|
|
38
|
+
"validate:typescript": "tsc --project ./ --noEmit",
|
|
39
|
+
"validate:jest": "jest",
|
|
40
|
+
"format:prettier:check": "prettier \"src/**/*.{js,ts,tsx}\" \"example/**/*.{js,ts,tsx}\" --check",
|
|
41
|
+
"format:prettier:write": "yarn format:prettier:check --write",
|
|
42
|
+
"format:clang:check": "clang-format --dry-run --Werror --glob='{ios,android/src,common}/**/*.{h,cpp,m,mm}'",
|
|
43
|
+
"format:clang:write": "clang-format -i --glob='{ios,android/src,common}/**/*.{h,hpp,cpp,m,mm}'",
|
|
44
|
+
"format:spotless:check": "cd android && ./gradlew spotlessCheck",
|
|
45
|
+
"format:spotless:write": "cd android && ./gradlew spotlessApply",
|
|
46
|
+
"format:check": "yarn format:prettier:check && yarn format:clang:check && yarn format:spotless:check",
|
|
47
|
+
"format:write": "yarn format:prettier:write && yarn format:clang:write && yarn format:spotless:write",
|
|
48
|
+
"release": "release-it",
|
|
49
|
+
"prepare": "bob build"
|
|
50
|
+
},
|
|
51
|
+
"keywords": [
|
|
52
|
+
"react-native",
|
|
53
|
+
"react native",
|
|
54
|
+
"react-native-web",
|
|
55
|
+
"expo-web",
|
|
56
|
+
"safe area",
|
|
57
|
+
"view"
|
|
58
|
+
],
|
|
59
|
+
"peerDependencies": {
|
|
60
|
+
"react": "*",
|
|
61
|
+
"react-native": "*"
|
|
62
|
+
},
|
|
63
|
+
"devDependencies": {
|
|
64
|
+
"@commitlint/config-conventional": "^19.2.2",
|
|
65
|
+
"@jest/globals": "^29.7.0",
|
|
66
|
+
"@react-native/babel-preset": "^0.74.84",
|
|
67
|
+
"@react-native/eslint-config": "^0.74.84",
|
|
68
|
+
"@react-native/eslint-plugin-specs": "^0.74.84",
|
|
69
|
+
"@release-it/conventional-changelog": "^8.0.1",
|
|
70
|
+
"@types/react": "^18.3.3",
|
|
71
|
+
"@types/react-dom": "^18.3.0",
|
|
72
|
+
"@types/react-test-renderer": "^18.3.0",
|
|
73
|
+
"@typescript-eslint/eslint-plugin": "^7.14.1",
|
|
74
|
+
"@typescript-eslint/parser": "^7.14.1",
|
|
75
|
+
"babel-plugin-module-resolver": "^5.0.2",
|
|
76
|
+
"clang-format": "^1.8.0",
|
|
77
|
+
"commitlint": "^19.3.0",
|
|
78
|
+
"eslint": "^8.57.0",
|
|
79
|
+
"eslint-plugin-jest": "^28.6.0",
|
|
80
|
+
"eslint-config-prettier": "^9.1.0",
|
|
81
|
+
"eslint-plugin-prettier": "^5.1.3",
|
|
82
|
+
"husky": "^9.0.11",
|
|
83
|
+
"jest": "^29.7.0",
|
|
84
|
+
"prettier": "^3.3.2",
|
|
85
|
+
"react": "^18.3.1",
|
|
86
|
+
"react-dom": "^18.3.1",
|
|
87
|
+
"react-native": "^0.77.1",
|
|
88
|
+
"react-native-builder-bob": "^0.23.2",
|
|
89
|
+
"react-test-renderer": "^18.3.1",
|
|
90
|
+
"release-it": "^17.4.0",
|
|
91
|
+
"typescript": "^5.5.2"
|
|
92
|
+
},
|
|
93
|
+
"dependencies": {
|
|
94
|
+
"react-native-safe-area-context": "5.1.0"
|
|
95
|
+
},
|
|
96
|
+
"repository": {
|
|
97
|
+
"type": "git",
|
|
98
|
+
"url": "https://github.com/react-native-oh-library/react-native-safe-area-context.git"
|
|
99
|
+
},
|
|
100
|
+
"jest": {
|
|
101
|
+
"preset": "react-native",
|
|
102
|
+
"testEnvironment": "node",
|
|
103
|
+
"clearMocks": true,
|
|
104
|
+
"modulePathIgnorePatterns": [
|
|
105
|
+
"<rootDir>/lib/"
|
|
106
|
+
]
|
|
107
|
+
},
|
|
108
|
+
"commitlint": {
|
|
109
|
+
"extends": [
|
|
110
|
+
"@commitlint/config-conventional"
|
|
111
|
+
]
|
|
112
|
+
},
|
|
113
|
+
"release-it": {
|
|
114
|
+
"git": {
|
|
115
|
+
"commitMessage": "chore: release ${version}",
|
|
116
|
+
"tagName": "v${version}"
|
|
117
|
+
},
|
|
118
|
+
"npm": {
|
|
119
|
+
"publish": true
|
|
120
|
+
},
|
|
121
|
+
"github": {
|
|
122
|
+
"release": true
|
|
123
|
+
},
|
|
124
|
+
"plugins": {
|
|
125
|
+
"@release-it/conventional-changelog": {
|
|
126
|
+
"preset": "angular"
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"react-native-builder-bob": {
|
|
131
|
+
"source": "src",
|
|
132
|
+
"output": "lib",
|
|
133
|
+
"targets": [
|
|
134
|
+
"commonjs",
|
|
135
|
+
"module",
|
|
136
|
+
"typescript"
|
|
137
|
+
]
|
|
138
|
+
}
|
|
139
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type * as React from 'react';
|
|
2
|
+
import type { NativeSyntheticEvent, ViewProps } from 'react-native';
|
|
3
|
+
import NativeSafeAreaView from './specs/NativeSafeAreaView';
|
|
4
|
+
|
|
5
|
+
export type Edge = 'top' | 'right' | 'bottom' | 'left';
|
|
6
|
+
export type EdgeMode = 'off' | 'additive' | 'maximum';
|
|
7
|
+
|
|
8
|
+
export type EdgeRecord = Partial<Record<Edge, EdgeMode>>;
|
|
9
|
+
export type Edges = readonly Edge[] | Readonly<EdgeRecord>;
|
|
10
|
+
|
|
11
|
+
export interface EdgeInsets {
|
|
12
|
+
top: number;
|
|
13
|
+
right: number;
|
|
14
|
+
bottom: number;
|
|
15
|
+
left: number;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface Rect {
|
|
19
|
+
x: number;
|
|
20
|
+
y: number;
|
|
21
|
+
width: number;
|
|
22
|
+
height: number;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export interface Metrics {
|
|
26
|
+
insets: EdgeInsets;
|
|
27
|
+
frame: Rect;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export type InsetChangedEvent = NativeSyntheticEvent<Metrics>;
|
|
31
|
+
|
|
32
|
+
export type InsetChangeNativeCallback = (event: InsetChangedEvent) => void;
|
|
33
|
+
|
|
34
|
+
export interface NativeSafeAreaProviderProps extends ViewProps {
|
|
35
|
+
children?: React.ReactNode;
|
|
36
|
+
onInsetsChange: InsetChangeNativeCallback;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface NativeSafeAreaViewProps extends ViewProps {
|
|
40
|
+
children?: React.ReactNode;
|
|
41
|
+
mode?: 'padding' | 'margin';
|
|
42
|
+
edges?: Edges;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export type NativeSafeAreaViewInstance = InstanceType<
|
|
46
|
+
typeof NativeSafeAreaView
|
|
47
|
+
>;
|