Files
notification-elements-demo/node_modules/thingies/lib/normalizeEmail.js
Giuliano Silvestro 5d0c9ec7eb Initial commit: notification-elements-demo app
Interactive Angular 19 demo for @sda/notification-elements-ui with
6 sections: Bell & Feed, Notification Center, Inbox, Comments &
Threads, Mention Input, and Full-Featured layout. Includes mock
data, dark mode toggle, and real-time event log.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 21:49:19 +10:00

29 lines
729 B
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.normalizeEmail = void 0;
const DOT_REG = /\./g;
/**
* 1. Lower-cases whole email.
* 2. Removes dots ".".
* 3. Remotes name part after "+".
* 4. Throws if cannot parse the email.
*
* For example, this email
*
* Michal.Loler+twitter@Gmail.com
*
* will be normalized to
*
* michalloler@gmail.com
*
*/
const normalizeEmail = (email) => {
const [name, host] = email.split('@');
let [beforePlus] = name.split('+');
beforePlus = beforePlus.replace(DOT_REG, '');
const result = beforePlus.toLowerCase() + '@' + host.toLowerCase();
Number(result);
return result;
};
exports.normalizeEmail = normalizeEmail;