refactor regex

This commit is contained in:
2025-08-17 21:39:42 +02:00
parent b3a517bbff
commit c25704f943
4 changed files with 9 additions and 8 deletions

View File

@@ -1,6 +1,7 @@
package com.infendro.account.dto.request package com.infendro.account.dto.request
import com.infendro.account.util.REGEX import com.infendro.account.util.Regex.PASSWORD
import com.infendro.account.util.Regex.USERNAME
import io.ktor.server.plugins.requestvalidation.* import io.ktor.server.plugins.requestvalidation.*
import io.ktor.server.plugins.requestvalidation.ValidationResult.* import io.ktor.server.plugins.requestvalidation.ValidationResult.*
import kotlinx.serialization.Serializable import kotlinx.serialization.Serializable
@@ -20,8 +21,8 @@ data class PostAccountRequestAccess(
fun RequestValidationConfig.validatePostAccountRequest() { fun RequestValidationConfig.validatePostAccountRequest() {
validate<PostAccountRequest> { request -> validate<PostAccountRequest> { request ->
when { when {
!REGEX.USERNAME.matches(request.username) -> Invalid("") !USERNAME.matches(request.username) -> Invalid("")
!REGEX.PASSWORD.matches(request.password) -> Invalid("") !PASSWORD.matches(request.password) -> Invalid("")
else -> Valid else -> Valid
} }
} }

View File

@@ -1,6 +1,6 @@
package com.infendro.account.dto.request package com.infendro.account.dto.request
import com.infendro.account.util.REGEX import com.infendro.account.util.Regex.PASSWORD
import io.ktor.server.plugins.requestvalidation.* import io.ktor.server.plugins.requestvalidation.*
import io.ktor.server.plugins.requestvalidation.ValidationResult.* import io.ktor.server.plugins.requestvalidation.ValidationResult.*
import kotlinx.serialization.Serializable import kotlinx.serialization.Serializable
@@ -14,7 +14,7 @@ data class PutAccountCurrentPasswordRequest(
fun RequestValidationConfig.validatePutAccountCurrentPasswordRequest() { fun RequestValidationConfig.validatePutAccountCurrentPasswordRequest() {
validate<PutAccountCurrentPasswordRequest> { request -> validate<PutAccountCurrentPasswordRequest> { request ->
when { when {
!REGEX.PASSWORD.matches(request.password) -> Invalid("") !PASSWORD.matches(request.password) -> Invalid("")
else -> Valid else -> Valid
} }
} }

View File

@@ -1,6 +1,6 @@
package com.infendro.account.dto.request package com.infendro.account.dto.request
import com.infendro.account.util.REGEX import com.infendro.account.util.Regex.USERNAME
import io.ktor.server.plugins.requestvalidation.* import io.ktor.server.plugins.requestvalidation.*
import io.ktor.server.plugins.requestvalidation.ValidationResult.* import io.ktor.server.plugins.requestvalidation.ValidationResult.*
import kotlinx.serialization.Serializable import kotlinx.serialization.Serializable
@@ -14,7 +14,7 @@ data class PutAccountCurrentUsernameRequest(
fun RequestValidationConfig.validatePutAccountCurrentUsernameRequest() { fun RequestValidationConfig.validatePutAccountCurrentUsernameRequest() {
validate<PutAccountCurrentUsernameRequest> { request -> validate<PutAccountCurrentUsernameRequest> { request ->
when { when {
!REGEX.USERNAME.matches(request.username) -> Invalid("") !USERNAME.matches(request.username) -> Invalid("")
else -> Valid else -> Valid
} }
} }

View File

@@ -1,6 +1,6 @@
package com.infendro.account.util package com.infendro.account.util
object REGEX { object Regex {
val USERNAME = """^(?=.{1,32}$)[a-z0-9]+([\-._][a-z0-9]+)*$""".toRegex() val USERNAME = """^(?=.{1,32}$)[a-z0-9]+([\-._][a-z0-9]+)*$""".toRegex()
val PASSWORD = """^(?=.{8,}$)[a-zA-Z0-9!"#$%&'()*+,\-./:;<=>?@\[\\\]^_`{|}~]*$""".toRegex() val PASSWORD = """^(?=.{8,}$)[a-zA-Z0-9!"#$%&'()*+,\-./:;<=>?@\[\\\]^_`{|}~]*$""".toRegex()
} }