Hooks changed significantly; useAppBridge() now returns the shopify global, and auth is wired to global fetch. (Shopify)
Before
const app = useAppBridge();
const fetch = useAuthenticatedFetch();
After
const shopify = useAppBridge();
// use shopify.toast / resourcePicker APIs; use global fetch for auth
Detect:
- Imports/usage of
useAuthenticatedFetch.
- Old patterns assuming
useAppBridge() returns app.
Edge cases:
- SSR:
useAppBridge() throws helpful errors if called outside browser context.
Reference: