Real-time sync for Projects (#1512)

* Real-time sync for Projects

* Do not create project in a transaction

Update hooks trigger before the transaction is commited, which causes insert events to be dismissed because the row is isn't found
This commit is contained in:
Solomon
2025-12-17 18:25:34 +00:00
committed by GitHub
parent 4b4fdb9a60
commit a282bbdae4
21 changed files with 402 additions and 133 deletions

View File

@@ -5,7 +5,8 @@
"linkToOrganization": "Link to Remote Project",
"loading": "Loading projects...",
"errors": {
"fetchFailed": "Failed to fetch projects"
"fetchFailed": "Failed to fetch projects",
"deleteFailed": "Failed to delete project"
},
"empty": {
"title": "No projects yet",
@@ -44,6 +45,7 @@
}
},
"unlinkFromOrganization": "Unlink from Remote Project",
"projectNotFound": "The project you're looking for doesn't exist or has been deleted.",
"viewProject": "View Project",
"openInIDE": "Open in IDE",
"createdDate": "Created {{date}}",

View File

@@ -5,7 +5,8 @@
"linkToOrganization": "Vincular a Proyecto Remoto",
"loading": "Cargando proyectos...",
"errors": {
"fetchFailed": "Error al cargar proyectos"
"fetchFailed": "Error al cargar proyectos",
"deleteFailed": "Error al eliminar el proyecto"
},
"empty": {
"title": "Aún no hay proyectos",
@@ -44,6 +45,7 @@
}
},
"unlinkFromOrganization": "Desvincular de Proyecto Remoto",
"projectNotFound": "El proyecto que buscas no existe o ha sido eliminado.",
"viewProject": "Ver Proyecto",
"openInIDE": "Abrir en IDE",
"createdDate": "Creado {{date}}",

View File

@@ -5,7 +5,8 @@
"linkToOrganization": "リモートプロジェクトにリンク",
"loading": "プロジェクトを読み込み中...",
"errors": {
"fetchFailed": "プロジェクトの取得に失敗しました"
"fetchFailed": "プロジェクトの取得に失敗しました",
"deleteFailed": "プロジェクトの削除に失敗しました"
},
"empty": {
"title": "プロジェクトがありません",
@@ -44,6 +45,7 @@
}
},
"unlinkFromOrganization": "リモートプロジェクトからリンク解除",
"projectNotFound": "お探しのプロジェクトは存在しないか、削除されました。",
"viewProject": "プロジェクトを表示",
"openInIDE": "IDEで開く",
"createdDate": "作成日 {{date}}",

View File

@@ -5,7 +5,8 @@
"linkToOrganization": "원격 프로젝트에 연결",
"loading": "프로젝트 로딩 중...",
"errors": {
"fetchFailed": "프로젝트를 불러오지 못했습니다"
"fetchFailed": "프로젝트를 불러오지 못했습니다",
"deleteFailed": "프로젝트 삭제에 실패했습니다"
},
"empty": {
"title": "아직 프로젝트가 없습니다",
@@ -44,6 +45,7 @@
}
},
"unlinkFromOrganization": "원격 프로젝트에서 연결 해제",
"projectNotFound": "찾으시는 프로젝트가 존재하지 않거나 삭제되었습니다.",
"viewProject": "프로젝트 보기",
"openInIDE": "IDE에서 열기",
"createdDate": "생성일 {{date}}",

View File

@@ -5,7 +5,8 @@
"linkToOrganization": "链接到远程项目",
"loading": "加载项目中...",
"errors": {
"fetchFailed": "获取项目失败"
"fetchFailed": "获取项目失败",
"deleteFailed": "删除项目失败"
},
"empty": {
"title": "还没有项目",
@@ -44,6 +45,7 @@
}
},
"unlinkFromOrganization": "取消链接远程项目",
"projectNotFound": "您查找的项目不存在或已被删除。",
"viewProject": "查看项目",
"openInIDE": "在 IDE 中打开",
"createdDate": "创建于 {{date}}",