cli to create invites

This commit is contained in:
counterweight 2025-02-10 15:38:01 +01:00
parent 01f4b3743c
commit 7e4adf052c
Signed by: counterweight
GPG key ID: 883EDBAA726BD96C
5 changed files with 46 additions and 1 deletions

15
src/cli.js Normal file
View file

@ -0,0 +1,15 @@
const { Command } = require('commander');
const program = new Command();
const createInviteCommand = require('./commands/createInvite');
program
.version('1.0.0')
.description('CLI for managing web app tasks');
program
.command('createInvite <inviterNpub>')
.description('Create an invite')
.action(createInviteCommand);
program.parse(process.argv);

View file

@ -0,0 +1,7 @@
const { exec } = require('child_process');
const appInviteService = require('../services/appInviteService');
module.exports = async function createInvite(inviterNpub) {
await appInviteService.createInvite(inviterNpub);
};

View file

@ -1,3 +1,5 @@
const uuid = require('uuid');
const AppInvite = require('../models/AppInvite');
const InvitedNpub = require('../models/InvitedNpub');
@ -27,7 +29,17 @@ async function isAppInviteSpent(inviteUuid) {
return false;
}
async function createInvite(inviterNpub) {
await AppInvite.create({
uuid: uuid.v7(),
inviter_npub: inviterNpub,
created_at: new Date().toISOString()
}
);
}
exports.appInviteExists = appInviteExists;
exports.getAppInvite = getAppInvite;
exports.isAppInviteSpent = isAppInviteSpent;
exports.createInvite = createInvite;