File tree 2 files changed +12
-1
lines changed
2 files changed +12
-1
lines changed Original file line number Diff line number Diff line change @@ -36,6 +36,7 @@ export const configSchemata = {
36
36
useManualProxy : z . boolean ( ) ,
37
37
useProxy : z . boolean ( ) ,
38
38
useSystemProxy : z . boolean ( ) ,
39
+ whitelistedProtocols : z . string ( ) . array ( ) ,
39
40
} ;
40
41
41
42
export const enterpriseConfigSchemata = {
Original file line number Diff line number Diff line change @@ -3,10 +3,20 @@ import fs from "node:fs";
3
3
import os from "node:os" ;
4
4
import path from "node:path" ;
5
5
6
+ import * as ConfigUtil from "./config-util.js" ;
6
7
import { html } from "./html.js" ;
7
8
9
+ /* Fetches the current protocolLaunchers from settings.json */
10
+ const whitelistedProtocols = ConfigUtil . getConfigItem ( "whitelistedProtocols" , [
11
+ "http:" ,
12
+ "https:" ,
13
+ "mailto:" ,
14
+ "tel:" ,
15
+ "sip:" ,
16
+ ] ) ;
17
+
8
18
export async function openBrowser ( url : URL ) : Promise < void > {
9
- if ( [ "http:" , "https:" , "mailto:" ] . includes ( url . protocol ) ) {
19
+ if ( whitelistedProtocols . includes ( url . protocol ) ) {
10
20
await shell . openExternal ( url . href ) ;
11
21
} else {
12
22
// For security, indirect links to non-whitelisted protocols
You can’t perform that action at this time.
0 commit comments