本文整理汇总了TypeScript中server/libs/validator.password函数的典型用法代码示例。如果您正苦于以下问题:TypeScript password函数的具体用法?TypeScript password怎么用?TypeScript password使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了password函数的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: isSignupEmailValid
export async function isSignupEmailValid(param : Request.SignupEmail, alreadyExistsAccount : Account, locale : string) : Promise<ValidationResult>
{
const log = slog.stepIn('SignupApi', 'isSignupEmailValid');
const response : Response.SignupEmail = {status:Response.Status.OK, message:{}};
const {email, password} = param;
do
{
// メールアドレス検証
const resultEmail = await Validator.email(email, 0, alreadyExistsAccount, locale);
if (resultEmail.status !== Response.Status.OK)
{
response.status = resultEmail.status;
response.message.email = resultEmail.message;
}
// パスワード検証
const passwordResult = Validator.password({password}, locale);
if (passwordResult.status !== Response.Status.OK)
{
response.status = passwordResult.status;
response.message.password = passwordResult.password;
}
}
while (false);
if (response.status !== Response.Status.OK) {
log.w(JSON.stringify(response, null, 2));
}
log.stepOut();
return {response};
}
示例2:
test.serial('パスワード検証 - 英数以外の時は失敗すること', (t) =>
{
const log = slog.stepIn('test', t['_test'].title);
const password = 'あいうえおかきくけこ';
const result = Validator.password({password}, locale);
const {status} = result;
log.d(JSON.stringify(result, null, 2));
t.is(status, Response.Status.FAILED);
log.stepOut();
});
示例3: isResetPasswordValid
export function isResetPasswordValid(param : Request.ResetPassword, account : Account, locale : string) : ValidationResult
{
const log = slog.stepIn('ResetApi', 'isResetPasswordValid');
const response : Response.ResetPassword = {status:Response.Status.OK, message:{}};
const {password, confirm} = param;
do
{
// アカウント存在検証
if (account === null)
{
// パスワードリセットの画面でパスワードリセットを完了させた後、再度パスワードリセットを完了させようとした場合にここに到達する想定。
// リセットIDで該当するアカウントがないということが必ずしもパスワードリセット済みを意味するわけではないが、
// 第三者が直接このAPIをコールするなど、想定以外のケースでなければありえないので、パスワードリセット済みというメッセージでOK。
response.status = Response.Status.FAILED;
response.message.general = R.text(R.ALREADY_PASSWORD_RESET, locale);
break;
}
// パスワード検証
const passwordResult = Validator.password({password, confirm}, locale);
if (passwordResult.status !== Response.Status.OK)
{
response.status = passwordResult.status;
response.message.password = passwordResult.password;
response.message.confirm = passwordResult.confirm;
}
}
while (false);
if (response.status !== Response.Status.OK) {
log.w(JSON.stringify(response, null, 2));
}
log.stepOut();
return {response};
}
示例4: isJoinValid
export async function isJoinValid(param : Request.Join, account : Account, locale : string) : Promise<ValidationResult>
{
const log = slog.stepIn('SignupApi', 'isJoinValid');
const response : Response.Join = {status:Response.Status.OK, message:{}};
const {password} = param;
do
{
// アカウント存在検証
if (account === null)
{
// 参加画面で参加を完了させた後、再度参加を完了させようとした場合にここに到達する想定。
// 招待IDで該当するアカウントがないということが必ずしも参加済みを意味するわけではないが、
// 第三者が直接このAPIをコールするなど、想定以外のケースでなければありえないので、登録済みというメッセージでOK。
response.status = Response.Status.FAILED;
response.message.general = R.text(R.ALREADY_JOIN, locale);
break;
}
// パスワード検証
const passwordResult = Validator.password({password}, locale);
if (passwordResult.status !== Response.Status.OK)
{
response.status = passwordResult.status;
response.message.password = passwordResult.password;
}
}
while (false);
if (response.status !== Response.Status.OK) {
log.w(JSON.stringify(response, null, 2));
}
log.stepOut();
return {response};
}
示例5: isChangePasswordValid
export async function isChangePasswordValid(param : Request.ChangePassword, myAccountId : number, locale : string) : Promise<ValidationResult>
{
const log = slog.stepIn('SettingsApi', 'isChangePasswordValid');
const response : Response.ChangePassword = {status:Response.Status.OK, message:{}};
const {oldPassword, newPassword, confirm} = param;
let account : Account = null;
do
{
// パスワード検証
const passwordResult = Validator.password({password:newPassword, confirm, canNull:true}, locale);
if (passwordResult.status !== Response.Status.OK)
{
response.status = passwordResult.status;
response.message.newPassword = passwordResult.password;
response.message.confirm = passwordResult.confirm;
}
// アカウント存在検証
account = await AccountAgent.find(myAccountId);
if (account === null)
{
response.status = Response.Status.FAILED;
response.message.general = R.text(R.ACCOUNT_NOT_FOUND, locale);
break;
}
// メールアドレスが設定されているかどうか
if (account.email === null)
{
response.status = Response.Status.FAILED;
response.message.general = R.text(R.CANNOT_SET_PASSWORD, locale);
}
// パスワードを未設定にする場合は他に認証手段があるかどうか
if (newPassword === null)
{
if (AccountAgent.canUnlink(account, 'email') === false)
{
response.status = Response.Status.FAILED;
response.message.newPassword = R.text(R.CANNOT_NO_SET_PASSWORD, locale);
}
}
// 現在のパスワードと現在のパスワードとして入力されたパスワードが一致するかどうか
if (account.password !== null || oldPassword !== null)
{
const hashPassword = Utils.getHashPassword(account.email, oldPassword, Config.PASSWORD_SALT);
if (hashPassword !== account.password)
{
response.status = Response.Status.FAILED;
response.message.oldPassword = R.text(R.INVALID_PASSWORD, locale);
}
}
}
while (false);
if (response.status !== Response.Status.OK) {
log.w(JSON.stringify(response, null, 2));
}
log.stepOut();
return {response, account};
}