@applicaster/quick-brick-core 12.0.0-alpha.4837064762 → 12.0.0-alpha.4840257570
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.
|
@@ -64,6 +64,8 @@ import { ZappPipesEntryContext } from "@applicaster/zapp-react-native-ui-compone
|
|
|
64
64
|
import { PlayNextState } from "@applicaster/zapp-react-native-utils/appUtils/playerManager/OverlayObserver/OverlaysObserver";
|
|
65
65
|
import { inflateUrl } from "@applicaster/zapp-react-native-ui-components/Components/LinkHandler/LinkHandler";
|
|
66
66
|
import { useModalStore } from "@applicaster/zapp-react-native-utils/modalState";
|
|
67
|
+
import { useSubscriberFor } from "@applicaster/zapp-react-native-utils/reactHooks/useSubscriberFor";
|
|
68
|
+
import { QBUIComponentEvents } from "@applicaster/zapp-react-native-ui-components/events";
|
|
67
69
|
|
|
68
70
|
const logger = coreAppLogger.addSubsystem("Navigator");
|
|
69
71
|
|
|
@@ -130,6 +132,10 @@ export function NavigationProvider({ children }: Props) {
|
|
|
130
132
|
|
|
131
133
|
const online = useConnectionInfo(true);
|
|
132
134
|
|
|
135
|
+
const replaceEvent = useSubscriberFor(
|
|
136
|
+
QBUIComponentEvents.navigatorReplaceItem
|
|
137
|
+
);
|
|
138
|
+
|
|
133
139
|
React.useEffect(() => {
|
|
134
140
|
stateRef.current = state;
|
|
135
141
|
pathnameRef.current = pathname;
|
|
@@ -259,6 +265,7 @@ export function NavigationProvider({ children }: Props) {
|
|
|
259
265
|
item?.id !==
|
|
260
266
|
legacyScreenData(state?.location?.state as NavigationScreenData)?.id
|
|
261
267
|
) {
|
|
268
|
+
replaceEvent();
|
|
262
269
|
navigateTo(item, ACTIONS.REPLACE, options);
|
|
263
270
|
}
|
|
264
271
|
};
|
|
@@ -665,15 +672,15 @@ export function NavigationProvider({ children }: Props) {
|
|
|
665
672
|
|
|
666
673
|
// It will only work for the regular stack and pathname, It won't work for modals
|
|
667
674
|
// TODO: integrate video/hook and regular modal into stack.
|
|
668
|
-
const getStackForPathname = (
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
const stack = [...
|
|
675
|
+
const getStackForPathname = React.useCallback((pathname: string):
|
|
676
|
+
| NavigationScreenState
|
|
677
|
+
| undefined => {
|
|
678
|
+
const stack = [...stateRef?.current?.stack?.mainStack];
|
|
672
679
|
|
|
673
680
|
const currentStack = stack.find(({ route }) => route === pathname);
|
|
674
681
|
|
|
675
682
|
return currentStack;
|
|
676
|
-
};
|
|
683
|
+
}, []);
|
|
677
684
|
|
|
678
685
|
const navigator: QuickBrickAppNavigator = React.useMemo(
|
|
679
686
|
() => ({
|
|
@@ -717,7 +724,6 @@ export function NavigationProvider({ children }: Props) {
|
|
|
717
724
|
replaceTop,
|
|
718
725
|
getStack,
|
|
719
726
|
getStackForPathname,
|
|
720
|
-
mainStack: state.stack.mainStack,
|
|
721
727
|
}),
|
|
722
728
|
[rivers, plugins, JSON.stringify(state), appLaunched, startUpHooks]
|
|
723
729
|
);
|
|
@@ -5,6 +5,7 @@ import { NetInfoState } from "@react-native-community/netinfo";
|
|
|
5
5
|
import { NETWORK_HOOKS_KEYS } from "./const";
|
|
6
6
|
import { platformSelect } from "@applicaster/zapp-react-native-utils/reactUtils";
|
|
7
7
|
import { Platform } from "react-native";
|
|
8
|
+
import { hasVizioAPIs } from "@applicaster/zapp-react-dom-app/App/Loader/utils/platform";
|
|
8
9
|
|
|
9
10
|
type ConnectionStatus = boolean;
|
|
10
11
|
type NetInfoNotReady = null;
|
|
@@ -203,6 +204,18 @@ export const subscribeToDeviceNetworkChanges = (callback: NetCb) => {
|
|
|
203
204
|
registeredListener = webapis.network.addNetworkStateChangeListener(
|
|
204
205
|
samsungNetworkChangeHandler(callback)
|
|
205
206
|
);
|
|
207
|
+
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
if (hasVizioAPIs()) {
|
|
212
|
+
window.addEventListener("online", function () {
|
|
213
|
+
callback({ online: true });
|
|
214
|
+
});
|
|
215
|
+
|
|
216
|
+
window.addEventListener("offline", function () {
|
|
217
|
+
callback({ online: false });
|
|
218
|
+
});
|
|
206
219
|
}
|
|
207
220
|
};
|
|
208
221
|
|
|
@@ -214,5 +227,12 @@ export const subscribeToDeviceNetworkChanges = (callback: NetCb) => {
|
|
|
214
227
|
export const unsubscribeToDeviceNetworkChanges = (id = registeredListener) => {
|
|
215
228
|
if (hasTizenAPIs()) {
|
|
216
229
|
webapis.network.removeNetworkStateChangeListener(id);
|
|
230
|
+
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
if (hasVizioAPIs()) {
|
|
235
|
+
window.removeEventListener("online", function () {});
|
|
236
|
+
window.removeEventListener("offline", function () {});
|
|
217
237
|
}
|
|
218
238
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applicaster/quick-brick-core",
|
|
3
|
-
"version": "12.0.0-alpha.
|
|
3
|
+
"version": "12.0.0-alpha.4840257570",
|
|
4
4
|
"description": "Core package for Applicaster's Quick Brick App",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
},
|
|
31
31
|
"homepage": "https://github.com/applicaster/quickbrick#readme",
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@applicaster/applicaster-types": "12.0.0-alpha.
|
|
34
|
-
"@applicaster/quick-brick-core-plugins": "12.0.0-alpha.
|
|
35
|
-
"@applicaster/zapp-pipes-v2-client": "12.0.0-alpha.
|
|
36
|
-
"@applicaster/zapp-react-native-bridge": "12.0.0-alpha.
|
|
37
|
-
"@applicaster/zapp-react-native-redux": "12.0.0-alpha.
|
|
38
|
-
"@applicaster/zapp-react-native-ui-components": "12.0.0-alpha.
|
|
39
|
-
"@applicaster/zapp-react-native-utils": "12.0.0-alpha.
|
|
33
|
+
"@applicaster/applicaster-types": "12.0.0-alpha.4840257570",
|
|
34
|
+
"@applicaster/quick-brick-core-plugins": "12.0.0-alpha.4840257570",
|
|
35
|
+
"@applicaster/zapp-pipes-v2-client": "12.0.0-alpha.4840257570",
|
|
36
|
+
"@applicaster/zapp-react-native-bridge": "12.0.0-alpha.4840257570",
|
|
37
|
+
"@applicaster/zapp-react-native-redux": "12.0.0-alpha.4840257570",
|
|
38
|
+
"@applicaster/zapp-react-native-ui-components": "12.0.0-alpha.4840257570",
|
|
39
|
+
"@applicaster/zapp-react-native-utils": "12.0.0-alpha.4840257570",
|
|
40
40
|
"atob": "^2.1.2",
|
|
41
41
|
"axios": "^0.28.0",
|
|
42
42
|
"btoa": "^1.2.1",
|