mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-29 09:03:36 -05:00
eea27a36a4
* Add `unicorn/prefer-node-protocol` * Revert non-web changes * Run `npm run lint:fix` (prefer-node-protocol) GitOrigin-RevId: c3cdd88ff9e6b3de6a4397d45935c4d026c1c1ed
49 lines
1.3 KiB
JavaScript
49 lines
1.3 KiB
JavaScript
import { promisify } from 'node:util'
|
|
import InstitutionsManager from '../app/src/Features/Institutions/InstitutionsManager.js'
|
|
import { fileURLToPath } from 'node:url'
|
|
const sleep = promisify(setTimeout)
|
|
|
|
async function main() {
|
|
const institutionId = parseInt(process.argv[2])
|
|
if (isNaN(institutionId)) throw new Error('No institution id')
|
|
const dryRun = process.argv.includes('--dry-run')
|
|
|
|
console.log('Deleting notifications of institution', institutionId)
|
|
|
|
const preview =
|
|
await InstitutionsManager.promises.clearInstitutionNotifications(
|
|
institutionId,
|
|
true
|
|
)
|
|
console.log('--- Preview ---')
|
|
console.log(JSON.stringify(preview, null, 4))
|
|
console.log('---------------')
|
|
|
|
if (dryRun) {
|
|
console.log('Exiting early due to --dry-run flag')
|
|
return
|
|
}
|
|
|
|
console.log('Exit in the next 10s in case these numbers are off.')
|
|
await sleep(10 * 1000)
|
|
|
|
const cleared =
|
|
await InstitutionsManager.promises.clearInstitutionNotifications(
|
|
institutionId,
|
|
false
|
|
)
|
|
console.log('--- Cleared ---')
|
|
console.log(JSON.stringify(cleared, null, 4))
|
|
console.log('---------------')
|
|
}
|
|
|
|
if (fileURLToPath(import.meta.url) === process.argv[1]) {
|
|
try {
|
|
await main()
|
|
console.log('Done.')
|
|
process.exit(0)
|
|
} catch (error) {
|
|
console.error(error)
|
|
process.exit(1)
|
|
}
|
|
}
|