feat(shared): deep links for slash registry and invoke audit export JSON (v0.8.699)

Expose parseOpenSlashRegistryJsonQuery and parseOpenSlashInvokeAuditJsonQuery for
Phase 723 dedicated slash export modals on guild-channel navigation.

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Raven Scott
2026-06-03 08:54:44 -04:00
co-authored by Cursor
parent 08f93d1db7
commit 95998433a7
+39 -1
View File
@@ -136,6 +136,8 @@ function parsePearcordDeepLink (url) {
const openWorkerJson = parseOpenWorkerJsonQuery(m[3] || '')
const openBotJson = parseOpenBotJsonQuery(m[3] || '')
const openSlashJson = parseOpenSlashJsonQuery(m[3] || '')
const openSlashRegistryJson = parseOpenSlashRegistryJsonQuery(m[3] || '')
const openSlashInvokeAuditJson = parseOpenSlashInvokeAuditJsonQuery(m[3] || '')
const openOAuthJson = parseOpenOAuthJsonQuery(m[3] || '')
const openInviteJson = parseOpenInviteJsonQuery(m[3] || '')
const openPermissionJson = parseOpenPermissionJsonQuery(m[3] || '')
@@ -191,6 +193,8 @@ function parsePearcordDeepLink (url) {
openWorkerJson,
openBotJson,
openSlashJson,
openSlashRegistryJson,
openSlashInvokeAuditJson,
openOAuthJson,
openInviteJson,
openPermissionJson,
@@ -867,6 +871,38 @@ function parseOpenOAuthGrantJsonQuery (search) {
return false
}
function parseOpenSlashRegistryJsonQuery (search) {
const q = String(search || '').replace(/^\?/, '')
for (const part of q.split('&')) {
const [k, v] = part.split('=')
if (
k === 'slash-registry-json' ||
k === 'slash-registry-export-json' ||
k === 'slashRegistryJson' ||
k === 'slash-json'
) {
return !v || v === '1' || v === 'true'
}
}
return false
}
function parseOpenSlashInvokeAuditJsonQuery (search) {
const q = String(search || '').replace(/^\?/, '')
for (const part of q.split('&')) {
const [k, v] = part.split('=')
if (
k === 'slash-invoke-audit-json' ||
k === 'slash-invoke-audit-export-json' ||
k === 'slashInvokeAuditJson' ||
k === 'command-invoke-json'
) {
return !v || v === '1' || v === 'true'
}
}
return false
}
function parseOpenOAuthInstallTokenJsonQuery (search) {
const q = String(search || '').replace(/^\?/, '')
for (const part of q.split('&')) {
@@ -1120,5 +1156,7 @@ module.exports = {
parseOpenInviteLinkJsonQuery,
parseOpenRoleOverrideJsonQuery,
parseOpenOAuthGrantJsonQuery,
parseOpenOAuthInstallTokenJsonQuery
parseOpenOAuthInstallTokenJsonQuery,
parseOpenSlashRegistryJsonQuery,
parseOpenSlashInvokeAuditJsonQuery
}