feat: http.request permissions

This commit is contained in:
Vlad Stan
2026-07-08 11:55:22 +03:00
parent bf146c82b3
commit 053671b10f
2 changed files with 28 additions and 2 deletions
+15 -2
View File
@@ -791,7 +791,8 @@ window.PageExtensions = {
descriptions,
fieldGroups: [],
invoicePolicies: [],
extensionAccess: []
extensionAccess: [],
httpHosts: []
}
if (permission.id === 'ext.storage.read_public') {
@@ -810,6 +811,10 @@ window.PageExtensions = {
}))
}
if (permission.id === 'http.request') {
item.httpHosts = this.httpRequestPermissionHosts(permission)
}
if (permission.id === 'wallet.create_invoice_public') {
item.invoicePolicies = this.publicInvoicePolicies(permission)
}
@@ -839,7 +844,7 @@ window.PageExtensions = {
: this.mediumRisk()
}
if (permission.id === 'http.request') {
return this.highRisk('extension_permission_warning_http_request')
return this.mediumRisk()
}
if (
[
@@ -884,6 +889,7 @@ window.PageExtensions = {
'wallet.list',
'wallet.balance.read',
'extension.api.request',
'http.request',
'ui.camera.scan_qr',
'ext.storage.read',
'ext.storage.write',
@@ -912,6 +918,13 @@ window.PageExtensions = {
})
.filter(Boolean)
},
httpRequestPermissionHosts(permission) {
const hosts = permission.policies
if (!Array.isArray(hosts)) return []
return hosts
.map(host => (typeof host === 'string' ? host : host?.host || ''))
.filter(host => typeof host === 'string' && host)
},
publicInvoicePolicies(permission) {
const policies = permission.policies
if (!Array.isArray(policies)) return []