webviewNavigationPolicy function
origin: webview_dart/lib/main_inappwebview_flutter.dart (APP_RESTRICT_URL branching) author: anovsiradj, opencode-go/glm-5.2 version: 2026-08-13, revised: 2026-08-17
URL restriction policy. restrictMode: 0 = open external + block, 1 = block all non-baseUrl.
Returns: 'allow' | 'cancel' | 'download' | 'external'.
Implementation
String webviewNavigationPolicy(String url, String baseUrl, int restrictMode) {
if (isWhatsAppDeeplink(url)) return 'external';
if (isDownloadableUrl(url)) return 'download';
if (restrictMode == 1 && !url.startsWith(baseUrl)) return 'cancel';
if (restrictMode == 0 && url.isNotEmpty && !url.startsWith(baseUrl)) return 'external';
return 'allow';
}