openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
28 lines (27 loc) • 906 B
JavaScript
//#region extensions/browser/src/browser/cdp-target-filter.ts
/**
* CDP target filtering helpers.
*
* Browser-internal pages cannot be reliably automated as user content, so tab
* selection filters them before exposing targets to browser actions.
*/
const BROWSER_INTERNAL_TARGET_URL_PREFIXES = [
"chrome://",
"chrome-untrusted://",
"devtools://",
"edge://",
"brave://",
"vivaldi://",
"opera://"
];
/** Return true for browser-owned chrome/devtools/internal URLs. */
function isBrowserInternalTargetUrl(url) {
const normalized = url?.trim().toLowerCase() ?? "";
return BROWSER_INTERNAL_TARGET_URL_PREFIXES.some((prefix) => normalized.startsWith(prefix));
}
/** Return true when a CDP target should be selectable by user-facing actions. */
function isSelectableCdpBrowserTarget(target) {
return !isBrowserInternalTargetUrl(target.url);
}
//#endregion
export { isSelectableCdpBrowserTarget as t };