@saleor/app-sdk
Version:
SDK for building great Saleor Apps
38 lines (36 loc) • 936 B
JavaScript
import {
actions,
useAppBridge
} from "../../chunk-XWDAZOZC.mjs";
import "../../chunk-NHGUNOYT.mjs";
// src/app-bridge/next/route-propagator.tsx
import * as NextRouter from "next/router.js";
import { useEffect } from "react";
var { useRouter } = NextRouter;
var useRoutePropagator = () => {
const { appBridge, appBridgeState } = useAppBridge();
const router = useRouter();
useEffect(() => {
const appBridgeStateIsReady = appBridgeState?.ready ?? false;
if (!appBridgeStateIsReady || !appBridge) {
return;
}
router.events.on("routeChangeComplete", (url) => {
appBridge?.dispatch(
actions.UpdateRouting({
newRoute: url
})
).catch(() => {
console.error("Error dispatching action");
});
});
}, [appBridgeState, appBridge]);
};
function RoutePropagator() {
useRoutePropagator();
return null;
}
export {
RoutePropagator,
useRoutePropagator
};