- Remove usage of JS core checkValidity() in favour of custom backend compliant validation - Rewrite and refactor with removal of form tag in favour of section - Scope styles - Remove many uses of $nextTick - Refine disabled state logic - Translate account property constants Signed-off-by: Christopher Ng <chrng8@gmail.com>pull/28028/head
parent
5e67677d94
commit
d738ca48b2
@ -0,0 +1,51 @@ |
||||
/** |
||||
* @copyright 2021, Christopher Ng <chrng8@gmail.com> |
||||
* |
||||
* @author Christopher Ng <chrng8@gmail.com> |
||||
* |
||||
* @license GNU AGPL version 3 or any later version |
||||
* |
||||
* This program is free software: you can redistribute it and/or modify |
||||
* it under the terms of the GNU Affero General Public License as |
||||
* published by the Free Software Foundation, either version 3 of the |
||||
* License, or (at your option) any later version. |
||||
* |
||||
* This program is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
* GNU Affero General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU Affero General Public License |
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
* |
||||
*/ |
||||
|
||||
import { VALIDATE_EMAIL_REGEX } from '../constants/AccountPropertyConstants' |
||||
|
||||
/** |
||||
* Validate the display name input |
||||
* |
||||
* @param {string} input the input |
||||
* @returns {boolean} |
||||
*/ |
||||
export function validateDisplayName(input) { |
||||
return input !== '' |
||||
} |
||||
|
||||
/** |
||||
* Validate the email input |
||||
* |
||||
* *Compliant with PHP core FILTER_VALIDATE_EMAIL validator* |
||||
* |
||||
* *Reference implementation https://github.com/mpyw/FILTER_VALIDATE_EMAIL.js/blob/71e62ca48841d2246a1b531e7e84f5a01f15e615/src/index.ts*
|
||||
* |
||||
* @param {string} input the input |
||||
* @returns {boolean} |
||||
*/ |
||||
export function validateEmail(input) { |
||||
return typeof input === 'string' |
||||
&& VALIDATE_EMAIL_REGEX.test(input) |
||||
&& input.slice(-1) !== '\n' |
||||
&& input.length <= 320 |
||||
&& encodeURIComponent(input).replace(/%../g, 'x').length <= 320 |
||||
} |
||||
Loading…
Reference in new issue