UNPKG

@techmely/utils

Version:

Collection of helpful JavaScript / TypeScript utils

67 lines (63 loc) 2.47 kB
/*! * @techmely/utils * Copyright(c) 2021-2024 Techmely <techmely.creation@gmail.com> * MIT Licensed */ "use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/regex.ts var regex_exports = {}; __export(regex_exports, { emailRegex: () => emailRegex, escapedSpaceCharactersRegex: () => escapedSpaceCharactersRegex, hexColor: () => hexColor, isValidEmail: () => isValidEmail, isValidUrl: () => isValidUrl, isValidVnPhone: () => isValidVnPhone, multilineCommentsRegex: () => multilineCommentsRegex, singlelineCommentsRegex: () => singlelineCommentsRegex, urlRegex: () => urlRegex, vietnamPhoneRegex: () => vietnamPhoneRegex }); module.exports = __toCommonJS(regex_exports); var emailRegex = new RegExp( /^(([^\s"(),.:;<>@[\\\]]+(\.[^\s"(),.:;<>@[\\\]]+)*)|(".+"))@((\[(?:\d{1,3}\.){3}\d{1,3}])|(([\dA-Za-z-]+\.)+[A-Za-z]{2,}))$/ ); var isValidEmail = (email) => emailRegex.test(email); var vietnamPhoneRegex = new RegExp(/^0(\d{9})$/); var isValidVnPhone = (phone) => vietnamPhoneRegex.test(phone); var urlRegex = /(((^https?:(?:\/\/)?)(?:[\w$&+,:;=-]+@)?[\d.A-Za-z-]+(?::\d+)?|(?:www.|[\w$&+,:;=-]+@)[\d.A-Za-z-]+)((?:\/[\w%+./~-]*)?\??[\w%&+.;=@-]*(?:#\w*)?)?)$/; var isValidUrl = (path) => urlRegex.test(path); var hexColor = /^#(([\da-f]{2}){3,4})$/; var multilineCommentsRegex = /\/\*(.|[\r\n])*?\*\//gm; var singlelineCommentsRegex = /\/\/.*/g; var escapedSpaceCharactersRegex = /( |\\t|\\n|\\f|\\r)+/g; // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { emailRegex, escapedSpaceCharactersRegex, hexColor, isValidEmail, isValidUrl, isValidVnPhone, multilineCommentsRegex, singlelineCommentsRegex, urlRegex, vietnamPhoneRegex });