From 4019d254122817b7fbc4563f54a3f0e1178bc1d6 Mon Sep 17 00:00:00 2001 From: 10G Meow <10gmeow@gmail.com> Date: Sun, 30 Oct 2022 18:28:16 +0200 Subject: [PATCH 1/2] CreateRoom validation improvements --- src/assets/translations/bo.json | 3 ++- src/assets/translations/de.json | 3 ++- src/assets/translations/en.json | 3 ++- src/assets/translations/es.json | 3 ++- src/assets/translations/fi.json | 3 ++- src/assets/translations/fr.json | 3 ++- src/assets/translations/it.json | 3 ++- src/assets/translations/nb_NO.json | 3 ++- src/assets/translations/pt_BR.json | 3 ++- src/assets/translations/ro.json | 3 ++- src/assets/translations/ug.json | 3 ++- src/assets/translations/zh_Hans.json | 3 ++- src/components/CreateRoom.vue | 23 +++++++++++++++++------ 13 files changed, 41 insertions(+), 18 deletions(-) diff --git a/src/assets/translations/bo.json b/src/assets/translations/bo.json index 42d9488..ee5586e 100644 --- a/src/assets/translations/bo.json +++ b/src/assets/translations/bo.json @@ -70,7 +70,8 @@ "name_room": "ཁ་བརྡ་ཁང་ལ་མིང་ཐོགས།", "room_topic": "གལ་ཏེ་འདོད་པ་ཡོད་ན། ཚོགས་པའི་སྐོར་གྱི་འགྲེལ་བཤད་ཐུང་ངུ་ཞིག་འབྲི་ཆོག", "create": "བཟོས།", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "menu": { "logout": "ཕྱིར་ཐོན།", diff --git a/src/assets/translations/de.json b/src/assets/translations/de.json index bdd50f5..7334c0f 100644 --- a/src/assets/translations/de.json +++ b/src/assets/translations/de.json @@ -96,7 +96,8 @@ "next": "Nächste", "name_room": "Raum benennen", "room_topic": "Füge eine Beschreibung hinzu, wenn du möchtest", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "device_list": { "title": "GERÄTE", diff --git a/src/assets/translations/en.json b/src/assets/translations/en.json index b795483..a5f9bd1 100644 --- a/src/assets/translations/en.json +++ b/src/assets/translations/en.json @@ -106,7 +106,8 @@ "status_creating": "Creating room", "status_avatar_total": "Uploading avatar: {count} of {total}", "status_avatar": "Uploading avatar: {count}", - "room_name_limit_error_msg": "Maximum 50 characters allowed" + "room_name_limit_error_msg": "Maximum 50 characters allowed", + "semicolon_not_allowed": "Semicolon is allowed" }, "device_list": { "title": "DEVICES", diff --git a/src/assets/translations/es.json b/src/assets/translations/es.json index db9243e..c88d7f2 100644 --- a/src/assets/translations/es.json +++ b/src/assets/translations/es.json @@ -122,7 +122,8 @@ "new_room": "Nueva Sala", "create": "Crear", "room_topic": "Añade una descripción si quieres", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "room_welcome": { "join_public": "Cualquiera puede unirse abriendo este vínculo: {link}", diff --git a/src/assets/translations/fi.json b/src/assets/translations/fi.json index aba08c7..3ad8111 100644 --- a/src/assets/translations/fi.json +++ b/src/assets/translations/fi.json @@ -28,7 +28,8 @@ "add_people": "Lisää ihmisiä", "link_copied": "Linkki kopioitu!", "public_info": "Kuka tahansa, jolla on linkki", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "purge_room": { "n_seconds": "{seconds} sekuntia", diff --git a/src/assets/translations/fr.json b/src/assets/translations/fr.json index b4a1dad..22396f4 100644 --- a/src/assets/translations/fr.json +++ b/src/assets/translations/fr.json @@ -96,7 +96,8 @@ "public_info": "Quiconque avec un lien", "join_permissions_info": "Ces autorisations déterminent comment les personnes peuvent rejoindre le salon et avec quelle facilité d’autres personnes peuvent être invitées. Elles peuvent être modifiées à tout moment.", "status_creating": "Création du salon", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "device_list": { "title": "APPAREILS", diff --git a/src/assets/translations/it.json b/src/assets/translations/it.json index 7e2017b..a59e312 100644 --- a/src/assets/translations/it.json +++ b/src/assets/translations/it.json @@ -95,7 +95,8 @@ "invite_info": "Solo le persone aggiunte", "join_permissions_info": "Questi permessi determinano come le persone possono entrare nella stanza e quanto facilmente gli altri possono essere invitati. Possono essere cambiati in qualsiasi momento.", "public_info": "Chiunque abbia un collegamento", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "device_list": { "title": "DISPOSITIVI", diff --git a/src/assets/translations/nb_NO.json b/src/assets/translations/nb_NO.json index 1e0342d..3597637 100644 --- a/src/assets/translations/nb_NO.json +++ b/src/assets/translations/nb_NO.json @@ -115,7 +115,8 @@ "next": "Neste", "create": "Opprett", "new_room": "Nytt rom", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "room_welcome": { "room_history_is": "Romhistorikken er {type}.", diff --git a/src/assets/translations/pt_BR.json b/src/assets/translations/pt_BR.json index 8c395dc..5b2c83f 100644 --- a/src/assets/translations/pt_BR.json +++ b/src/assets/translations/pt_BR.json @@ -119,7 +119,8 @@ "status_creating": "Criando a sala", "status_avatar_total": "Enviando o avatar: {count} de {total}", "status_avatar": "Enviando avatar: {count}", - "room_name_limit_error_msg": "O máximo de 50 caracteres são permitidos" + "room_name_limit_error_msg": "O máximo de 50 caracteres são permitidos", + "semicolon_not_allowed": "" }, "device_list": { "title": "DISPOSITIVOS", diff --git a/src/assets/translations/ro.json b/src/assets/translations/ro.json index d9df0b9..2353cca 100644 --- a/src/assets/translations/ro.json +++ b/src/assets/translations/ro.json @@ -167,7 +167,8 @@ "next": "Următorul", "create": "Creați", "new_room": "Cameră nouă", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "room_welcome": { "got_it": "L-am prins", diff --git a/src/assets/translations/ug.json b/src/assets/translations/ug.json index 1df59c3..cbefdc5 100644 --- a/src/assets/translations/ug.json +++ b/src/assets/translations/ug.json @@ -84,7 +84,8 @@ "next": "كېيىنكى", "create": "قۇرۇش", "new_room": "يېڭى مۇنازىرەخانا", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "room": { "purge_failed": "مۇنازىرەخانىنى يۇيۇش مەغلۇب بولدى!", diff --git a/src/assets/translations/zh_Hans.json b/src/assets/translations/zh_Hans.json index 570f338..a03a21e 100644 --- a/src/assets/translations/zh_Hans.json +++ b/src/assets/translations/zh_Hans.json @@ -217,7 +217,8 @@ "new_room": "新的聊天室", "room_topic": "如果您愿意,请添加说明", "create": "创建", - "room_name_limit_error_msg": "" + "room_name_limit_error_msg": "", + "semicolon_not_allowed": "" }, "room_welcome": { "got_it": "知道了", diff --git a/src/components/CreateRoom.vue b/src/components/CreateRoom.vue index 79fa4bc..43e72d9 100644 --- a/src/components/CreateRoom.vue +++ b/src/components/CreateRoom.vue @@ -52,6 +52,7 @@ :disabled="step > steps.INITIAL" autofocus solo + @update:error="updateErrorState" >
{{ $t("new_room.room_topic") }}
+
{{roomCreationErrorMsg}}
{{ status }} @@ -298,7 +300,12 @@ export default { name: "" }, enterRoomDialog: false, - roomNamerules: [v => v.length <= 50 || this.$t("new_room.room_name_limit_error_msg")], + roomNamerules: [ + v => v.length <= 50 || this.$t("new_room.room_name_limit_error_msg"), + v => !v.includes(':') || this.$t("new_room.semicolon_not_allowed") + ], + roomNameHasError: false, + roomCreationErrorMsg: "" }; }, @@ -318,6 +325,9 @@ export default { }, }, computed: { + isDisabled() { + return this.status ? true : this.roomName.length === 0 || this.roomName.length > 50 || this.roomNameHasError + }, roomAvatarLetter() { if (!this.roomName) { return null; @@ -337,6 +347,9 @@ export default { }, methods: { + updateErrorState(errorState) { + this.roomNameHasError = errorState + }, goBack() { if (this.step == steps.NAME_SET) { this.step = steps.INITIAL; @@ -578,10 +591,8 @@ export default { return roomId; }) .catch((error) => { - this.status = - (error.data && error.data.error) || - error.message || - error.toString(); + this.status = "" + this.roomCreationErrorMsg = (error.data && error.data.error) || error.message || error.toString(); this.step = steps.INITIAL; // revert return null; }); From f7580bdb511a716abc885d2ddc56a25cb3a48999 Mon Sep 17 00:00:00 2001 From: 10G Meow <10gmeow@gmail.com> Date: Wed, 2 Nov 2022 17:50:51 +0200 Subject: [PATCH 2/2] review changes: colon --- src/assets/translations/bo.json | 2 +- src/assets/translations/de.json | 2 +- src/assets/translations/en.json | 2 +- src/assets/translations/es.json | 2 +- src/assets/translations/fi.json | 2 +- src/assets/translations/fr.json | 2 +- src/assets/translations/it.json | 2 +- src/assets/translations/nb_NO.json | 2 +- src/assets/translations/pt_BR.json | 2 +- src/assets/translations/ro.json | 2 +- src/assets/translations/ug.json | 2 +- src/assets/translations/zh_Hans.json | 2 +- src/components/CreateRoom.vue | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/assets/translations/bo.json b/src/assets/translations/bo.json index ee5586e..0ad9610 100644 --- a/src/assets/translations/bo.json +++ b/src/assets/translations/bo.json @@ -71,7 +71,7 @@ "room_topic": "གལ་ཏེ་འདོད་པ་ཡོད་ན། ཚོགས་པའི་སྐོར་གྱི་འགྲེལ་བཤད་ཐུང་ངུ་ཞིག་འབྲི་ཆོག", "create": "བཟོས།", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "menu": { "logout": "ཕྱིར་ཐོན།", diff --git a/src/assets/translations/de.json b/src/assets/translations/de.json index 7334c0f..5af960b 100644 --- a/src/assets/translations/de.json +++ b/src/assets/translations/de.json @@ -97,7 +97,7 @@ "name_room": "Raum benennen", "room_topic": "Füge eine Beschreibung hinzu, wenn du möchtest", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "device_list": { "title": "GERÄTE", diff --git a/src/assets/translations/en.json b/src/assets/translations/en.json index a5f9bd1..5a3fa1a 100644 --- a/src/assets/translations/en.json +++ b/src/assets/translations/en.json @@ -107,7 +107,7 @@ "status_avatar_total": "Uploading avatar: {count} of {total}", "status_avatar": "Uploading avatar: {count}", "room_name_limit_error_msg": "Maximum 50 characters allowed", - "semicolon_not_allowed": "Semicolon is allowed" + "colon_not_allowed": "Colon is not allowed" }, "device_list": { "title": "DEVICES", diff --git a/src/assets/translations/es.json b/src/assets/translations/es.json index c88d7f2..ce9a3e6 100644 --- a/src/assets/translations/es.json +++ b/src/assets/translations/es.json @@ -123,7 +123,7 @@ "create": "Crear", "room_topic": "Añade una descripción si quieres", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "room_welcome": { "join_public": "Cualquiera puede unirse abriendo este vínculo: {link}", diff --git a/src/assets/translations/fi.json b/src/assets/translations/fi.json index 3ad8111..d1f274b 100644 --- a/src/assets/translations/fi.json +++ b/src/assets/translations/fi.json @@ -29,7 +29,7 @@ "link_copied": "Linkki kopioitu!", "public_info": "Kuka tahansa, jolla on linkki", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "purge_room": { "n_seconds": "{seconds} sekuntia", diff --git a/src/assets/translations/fr.json b/src/assets/translations/fr.json index 22396f4..6cd2c6e 100644 --- a/src/assets/translations/fr.json +++ b/src/assets/translations/fr.json @@ -97,7 +97,7 @@ "join_permissions_info": "Ces autorisations déterminent comment les personnes peuvent rejoindre le salon et avec quelle facilité d’autres personnes peuvent être invitées. Elles peuvent être modifiées à tout moment.", "status_creating": "Création du salon", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "device_list": { "title": "APPAREILS", diff --git a/src/assets/translations/it.json b/src/assets/translations/it.json index a59e312..6bfcc62 100644 --- a/src/assets/translations/it.json +++ b/src/assets/translations/it.json @@ -96,7 +96,7 @@ "join_permissions_info": "Questi permessi determinano come le persone possono entrare nella stanza e quanto facilmente gli altri possono essere invitati. Possono essere cambiati in qualsiasi momento.", "public_info": "Chiunque abbia un collegamento", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "device_list": { "title": "DISPOSITIVI", diff --git a/src/assets/translations/nb_NO.json b/src/assets/translations/nb_NO.json index 3597637..a8f00b5 100644 --- a/src/assets/translations/nb_NO.json +++ b/src/assets/translations/nb_NO.json @@ -116,7 +116,7 @@ "create": "Opprett", "new_room": "Nytt rom", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "room_welcome": { "room_history_is": "Romhistorikken er {type}.", diff --git a/src/assets/translations/pt_BR.json b/src/assets/translations/pt_BR.json index 5b2c83f..c322a1e 100644 --- a/src/assets/translations/pt_BR.json +++ b/src/assets/translations/pt_BR.json @@ -120,7 +120,7 @@ "status_avatar_total": "Enviando o avatar: {count} de {total}", "status_avatar": "Enviando avatar: {count}", "room_name_limit_error_msg": "O máximo de 50 caracteres são permitidos", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "device_list": { "title": "DISPOSITIVOS", diff --git a/src/assets/translations/ro.json b/src/assets/translations/ro.json index 2353cca..e8c59b9 100644 --- a/src/assets/translations/ro.json +++ b/src/assets/translations/ro.json @@ -168,7 +168,7 @@ "create": "Creați", "new_room": "Cameră nouă", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "room_welcome": { "got_it": "L-am prins", diff --git a/src/assets/translations/ug.json b/src/assets/translations/ug.json index cbefdc5..339ab19 100644 --- a/src/assets/translations/ug.json +++ b/src/assets/translations/ug.json @@ -85,7 +85,7 @@ "create": "قۇرۇش", "new_room": "يېڭى مۇنازىرەخانا", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "room": { "purge_failed": "مۇنازىرەخانىنى يۇيۇش مەغلۇب بولدى!", diff --git a/src/assets/translations/zh_Hans.json b/src/assets/translations/zh_Hans.json index a03a21e..d83e981 100644 --- a/src/assets/translations/zh_Hans.json +++ b/src/assets/translations/zh_Hans.json @@ -218,7 +218,7 @@ "room_topic": "如果您愿意,请添加说明", "create": "创建", "room_name_limit_error_msg": "", - "semicolon_not_allowed": "" + "colon_not_allowed": "" }, "room_welcome": { "got_it": "知道了", diff --git a/src/components/CreateRoom.vue b/src/components/CreateRoom.vue index 43e72d9..3332e2a 100644 --- a/src/components/CreateRoom.vue +++ b/src/components/CreateRoom.vue @@ -302,7 +302,7 @@ export default { enterRoomDialog: false, roomNamerules: [ v => v.length <= 50 || this.$t("new_room.room_name_limit_error_msg"), - v => !v.includes(':') || this.$t("new_room.semicolon_not_allowed") + v => !v.includes(':') || this.$t("new_room.colon_not_allowed") ], roomNameHasError: false, roomCreationErrorMsg: ""