/** * Utility functions for WebIRC Chat * * @package WebIRC_Chat * @license GPL-2.0-or-later * @since 0.1.0 */ /** * Mask sensitive information in IRC commands. * * @since 0.1.0 */ export function maskSensitive(line: string): string { // PASS command line = line.replace(/^PASS\s+\S+/i, 'PASS *****'); // OPER command (preserve username) line = line.replace(/^OPER\s+(\S+)\s+\S+/i, 'OPER $1 *****'); // AUTHENTICATE command line = line.replace(/^AUTHENTICATE\s+\S+/i, 'AUTHENTICATE *****'); // PRIVMSG NickServ :IDENTIFY password line = line.replace( /^PRIVMSG\s+NickServ\s+:IDENTIFY\s+\S+/i, 'PRIVMSG NickServ :IDENTIFY *****' ); // NICKSERV IDENTIFY password line = line.replace( /^NICKSERV\s+IDENTIFY\s+\S+/i, 'NICKSERV IDENTIFY *****' ); return line; }