From 1a57d3e0383be5dff0f2f06acbb0f6737301ebef Mon Sep 17 00:00:00 2001
From: Saurabh Kumar <70131915+Saurabhkmr98@users.noreply.github.com>
Date: Thu, 13 Feb 2025 15:19:37 +0530
Subject: [PATCH] [SILO] - add pat token error handling in importer form
(#2485)
* add pat token error handling in importer form
* remove console logs
---
.../src/locales/en/translations-extended.json | 3 +-
.../src/locales/es/translations-extended.json | 3 +-
.../src/locales/fr/translations-extended.json | 3 +-
.../src/locales/ja/translations-extended.json | 3 +-
.../locales/zh-CN/translations-extended.json | 3 +-
.../authentication/personal-access-token.tsx | 27 +++++++++++---
.../authentication/personal-access-token.tsx | 28 ++++++++++++---
.../authentication/personal-access-token.tsx | 36 +++++++++++++------
.../authentication/personal-access-token.tsx | 28 ++++++++++++---
.../components/importers/ui/error-banner.tsx | 17 +++++++++
web/ee/components/importers/ui/index.ts | 1 +
web/ee/types/importers/root.ts | 6 ++++
12 files changed, 128 insertions(+), 30 deletions(-)
create mode 100644 web/ee/components/importers/ui/error-banner.tsx
diff --git a/packages/i18n/src/locales/en/translations-extended.json b/packages/i18n/src/locales/en/translations-extended.json
index 7923b91c19..36a2da1937 100644
--- a/packages/i18n/src/locales/en/translations-extended.json
+++ b/packages/i18n/src/locales/en/translations-extended.json
@@ -689,7 +689,8 @@
"add_seat_msg_free_trial": "You're trying to import {additionalUserCount} non-registered users and you've only {currentWorkspaceSubscriptionAvailableSeats} seats available in current plan. To continue importing upgrade now.",
"add_seat_msg_paid": "You're trying to import {additionalUserCount} non-registered users and you've only {currentWorkspaceSubscriptionAvailableSeats} seats available in current plan. To continue importing buy atleast {extraSeatRequired} extra seats.",
"skip_user_import_title": "Skip importing User data",
- "skip_user_import_description": "Skipping user import will result in work items, comments, and other data from {serviceName} being created by the user performing the migration in Plane. You can still manually add users later."
+ "skip_user_import_description": "Skipping user import will result in work items, comments, and other data from {serviceName} being created by the user performing the migration in Plane. You can still manually add users later.",
+ "invalid_pat": "Invalid Personal Access Token"
},
"integrations": {
diff --git a/packages/i18n/src/locales/es/translations-extended.json b/packages/i18n/src/locales/es/translations-extended.json
index 8f987343b2..fdcc8f13a3 100644
--- a/packages/i18n/src/locales/es/translations-extended.json
+++ b/packages/i18n/src/locales/es/translations-extended.json
@@ -696,7 +696,8 @@
"add_seat_msg_free_trial": "Estás intentando importar {additionalUserCount} usuarios no registrados y solo tienes {currentWorkspaceSubscriptionAvailableSeats} asientos disponibles en el plan actual. Para continuar importando, actualiza ahora.",
"add_seat_msg_paid": "Estás intentando importar {additionalUserCount} usuarios no registrados y solo tienes {currentWorkspaceSubscriptionAvailableSeats} asientos disponibles en el plan actual. Para continuar importando, compra al menos {extraSeatRequired} asientos adicionales.",
"skip_user_import_title": "Omitir importación de datos de usuario",
- "skip_user_import_description": "Omitir la importación de usuarios resultará en que los elementos de trabajo, comentarios y otros datos de {serviceName} sean creados por el usuario que realiza la migración en Plane. Aún puedes agregar usuarios manualmente más tarde."
+ "skip_user_import_description": "Omitir la importación de usuarios resultará en que los elementos de trabajo, comentarios y otros datos de {serviceName} sean creados por el usuario que realiza la migración en Plane. Aún puedes agregar usuarios manualmente más tarde.",
+ "invalid_pat": "Token de acceso personal inválido"
},
"integrations": {
diff --git a/packages/i18n/src/locales/fr/translations-extended.json b/packages/i18n/src/locales/fr/translations-extended.json
index bc3964b440..4f924b9283 100644
--- a/packages/i18n/src/locales/fr/translations-extended.json
+++ b/packages/i18n/src/locales/fr/translations-extended.json
@@ -696,7 +696,8 @@
"add_seat_msg_free_trial": "Vous essayez d'importer {additionalUserCount} utilisateurs non enregistrés et vous n'avez que {currentWorkspaceSubscriptionAvailableSeats} sièges disponibles dans le plan actuel. Pour continuer l'importation, passez à la version supérieure maintenant.",
"add_seat_msg_paid": "Vous essayez d'importer {additionalUserCount} utilisateurs non enregistrés et vous n'avez que {currentWorkspaceSubscriptionAvailableSeats} sièges disponibles dans le plan actuel. Pour continuer l'importation, achetez au moins {extraSeatRequired} sièges supplémentaires.",
"skip_user_import_title": "Ignorer l'importation des données utilisateur",
- "skip_user_import_description": "Ignorer l'importation des utilisateurs entraînera la création des éléments de travail, commentaires et autres données de {serviceName} par l'utilisateur effectuant la migration dans Plane. Vous pourrez toujours ajouter manuellement des utilisateurs plus tard."
+ "skip_user_import_description": "Ignorer l'importation des utilisateurs entraînera la création des éléments de travail, commentaires et autres données de {serviceName} par l'utilisateur effectuant la migration dans Plane. Vous pourrez toujours ajouter manuellement des utilisateurs plus tard.",
+ "invalid_pat": "Token de connexion personnel invalide"
},
"integrations": {
diff --git a/packages/i18n/src/locales/ja/translations-extended.json b/packages/i18n/src/locales/ja/translations-extended.json
index 9b8d398e92..ce869ef6ad 100644
--- a/packages/i18n/src/locales/ja/translations-extended.json
+++ b/packages/i18n/src/locales/ja/translations-extended.json
@@ -696,7 +696,8 @@
"add_seat_msg_free_trial": "未登録の{additionalUserCount}人のユーザーをインポートしようとしていますが、現在のプランでは{currentWorkspaceSubscriptionAvailableSeats}席しか利用できません。インポートを続けるにはアップグレードしてください。",
"add_seat_msg_paid": "未登録の{additionalUserCount}人のユーザーをインポートしようとしていますが、現在のプランでは{currentWorkspaceSubscriptionAvailableSeats}席しか利用できません。インポートを続けるには少なくとも{extraSeatRequired}席追加購入してください。",
"skip_user_import_title": "ユーザーデータのインポートをスキップ",
- "skip_user_import_description": "ユーザーのインポートをスキップすると、{serviceName}からの作業項目、コメント、その他のデータはPlaneで移行を実行しているユーザーによって作成されます。後でユーザーを手動で追加することもできます。"
+ "skip_user_import_description": "ユーザーのインポートをスキップすると、{serviceName}からの作業項目、コメント、その他のデータはPlaneで移行を実行しているユーザーによって作成されます。後でユーザーを手動で追加することもできます。",
+ "invalid_pat": "無効な個人アクセストークン"
},
"integrations": {
diff --git a/packages/i18n/src/locales/zh-CN/translations-extended.json b/packages/i18n/src/locales/zh-CN/translations-extended.json
index d6dc82b4c3..c09b391b91 100644
--- a/packages/i18n/src/locales/zh-CN/translations-extended.json
+++ b/packages/i18n/src/locales/zh-CN/translations-extended.json
@@ -696,7 +696,8 @@
"add_seat_msg_free_trial": "您正在尝试导入 {additionalUserCount} 个未注册用户,但当前计划中只有 {currentWorkspaceSubscriptionAvailableSeats} 个席位可用。要继续导入,请立即升级。",
"add_seat_msg_paid": "您正在尝试导入 {additionalUserCount} 个未注册用户,但当前计划中只有 {currentWorkspaceSubscriptionAvailableSeats} 个席位可用。要继续导入,请至少购买 {extraSeatRequired} 个额外席位。",
"skip_user_import_title": "跳过导入用户数据",
- "skip_user_import_description": "跳过用户导入将导致工作项、评论和来自 {serviceName} 的其他数据由在 Plane 中执行迁移的用户创建。您以后仍可以手动添加用户。"
+ "skip_user_import_description": "跳过用户导入将导致工作项、评论和来自 {serviceName} 的其他数据由在 Plane 中执行迁移的用户创建。您以后仍可以手动添加用户。",
+ "invalid_pat": "无效的个人访问令牌"
},
"integrations": {
diff --git a/web/ee/components/importers/asana/authentication/personal-access-token.tsx b/web/ee/components/importers/asana/authentication/personal-access-token.tsx
index 4fcd5b2b61..ef1e6f55a5 100644
--- a/web/ee/components/importers/asana/authentication/personal-access-token.tsx
+++ b/web/ee/components/importers/asana/authentication/personal-access-token.tsx
@@ -10,6 +10,8 @@ import { AuthFormInput, TAuthFormInputFormField } from "@/plane-web/silo/ui/auth
// plane web types
import { TAsanaPATFormFields } from "@/plane-web/types/importers/asana";
import { useTranslation } from "@plane/i18n";
+import { TImporterPATError } from "@/plane-web/types";
+import ErrorBanner from "../../ui/error-banner";
export const PersonalAccessTokenAuth: FC = observer(() => {
// hooks
@@ -22,6 +24,18 @@ export const PersonalAccessTokenAuth: FC = observer(() => {
const [formData, setFormData] = useState
- {t("importers.migration_assistant_description", { "serviceName": "Jira" })} + {t("importers.migration_assistant_description", { "serviceName": "Jira" })}