Lines 1743-1783javascript
1745 await fs.outputFile(path.join(dest, "src", "model", `Coupon.${ext}`), content);
1747async function writeAuthExtendedRoutes(dest, opts) {
1748 const ext = opts.language === "typescript" ? "ts" : "js";
1749 const ts = opts.language === "typescript";
1750 const mwUser2 = opts.rbac ? `export const middlewares = [requireAuth('user', 'admin')];
1751` : `export const middlewares = [requireAuth];
1753 const mwUser3 = mwUser2;
1754 const reqT = ts ? `import type { Request, Response } from 'express';
1756 const RA = `import { requireAuth } from 'express-file-cluster/auth';
1758 const mongo = opts.database === "mongodb";
1759 const sendResetEmail = opts.mailer ? ` var appUrl = process.env.APP_URL || 'http://localhost:3000';
1760 await enqueue('SendEmail', {
1762 subject: 'Reset your password',
1763 body: 'Reset your password: ' + appUrl + '/auth/reset-password?token=' + resetToken,
1765` : ` // TODO: email this token to the user \u2014 enable the Mailer feature to auto-wire SendEmail
1767 const sendVerifyEmailResend = opts.mailer ? ` var appUrl = process.env.APP_URL || 'http://localhost:3000';
1768 await enqueue('SendEmail', {
1770 subject: 'Verify your email address',
1771 body: 'Verify your email: ' + appUrl + '/auth/verify-email?token=' + verifyToken,
1773` : ` // TODO: email this token to the user \u2014 enable the Mailer feature to auto-wire SendEmail
1775 const mailerTaskImport = opts.mailer ? `import { enqueue } from 'express-file-cluster/tasks';
1777 const refreshMeta = mkMeta(opts, "Refresh the JWT and issue a new token.", `{ message: 'Token refreshed' }`);
1778 const refreshContent = mongo ? ts ? `import { issueToken } from 'express-file-cluster/auth';
1779import type { Request, Response } from 'express';
1780import crypto from 'node:crypto';
1781import { User } from '../../model/User.js';
1782import { Admin } from '../../model/Admin.js';
1783${refreshMeta}const REFRESH_TOKEN_TTL_MS = 1000 * 60 * 60 * 24 * 30; // 30 days