Skip to content

Commit b34f3b1

Browse files
committed
add loading & error messages while installing dependencies
1 parent 4488a17 commit b34f3b1

File tree

5 files changed

+35
-3
lines changed

5 files changed

+35
-3
lines changed

packages/renderer/src/modules/store/editor/slice.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,9 @@ export const slice = createSlice({
150150
state.isInstalledProject = true;
151151
state.isInstallingProject = false;
152152
});
153+
builder.addCase(workspaceActions.installProject.rejected, (state) => {
154+
state.isInstallingProject = false;
155+
});
153156
builder.addCase(workspaceActions.saveAndGetThumbnail.fulfilled, (state, action) => {
154157
if (state.project) {
155158
state.project.thumbnail = action.payload;

packages/renderer/src/modules/store/snackbar/slice.ts

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,29 @@ export const slice = createSlice({
4444
}),
4545
);
4646
})
47+
.addCase(workspaceActions.installProject.pending, (state, payload) => {
48+
const { requestId } = payload.meta;
49+
state.notifications.push(
50+
createGenericNotification('loading', t('snackbar.generic.installing_dependencies'), {
51+
requestId,
52+
duration: 0,
53+
}),
54+
);
55+
})
56+
.addCase(workspaceActions.installProject.fulfilled, (state, payload) => {
57+
const { requestId } = payload.meta;
58+
state.notifications = state.notifications.filter($ => $.id !== requestId);
59+
})
60+
.addCase(workspaceActions.installProject.rejected, (state, payload) => {
61+
const { requestId } = payload.meta;
62+
state.notifications = state.notifications.filter($ => $.id !== requestId);
63+
state.notifications.push(
64+
createGenericNotification('error', t('snackbar.generic.installing_dependencies_failed'), {
65+
requestId,
66+
duration: 2_000,
67+
}),
68+
);
69+
})
4770
.addCase(workspaceActions.importProject.fulfilled, (state, payload) => {
4871
const { requestId } = payload.meta;
4972
state.notifications = state.notifications.filter($ => $.id !== requestId);

packages/renderer/src/modules/store/translation/locales/en.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,9 @@
204204
"duplicate_scene_failed": "Failed duplicating scene",
205205
"delete_scene": "Deleting scene...",
206206
"delete_scene_failed": "Failed deleting scene",
207-
"dependencies_updated": "Scene dependencies were updated"
207+
"dependencies_updated": "Scene dependencies were updated",
208+
"installing_dependencies": "Installing dependencies...",
209+
"installing_dependencies_failed": "Failed installing dependencies"
208210
},
209211
"missing_projects": {
210212
"title": "{scenes} {scenes, plural, one {scene} other {scenes}} could not be loaded due to missing files",

packages/renderer/src/modules/store/translation/locales/es.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,9 @@
202202
"duplicate_scene_failed": "Error al duplicar escena",
203203
"delete_scene": "Borrando escena...",
204204
"delete_scene_failed": "Error al borrar escena",
205-
"dependencies_updated": "Las dependencias de la escena fueron actualizadas"
205+
"dependencies_updated": "Las dependencias de la escena fueron actualizadas",
206+
"installing_dependencies": "Instalando dependencias...",
207+
"installing_dependencies_failed": "Error al instalar dependencias"
206208
},
207209
"missing_projects": {
208210
"title": "{scenes} {scenes, plural, one {escena} other {escenas}} {scenes, plural, one {faltante} other {faltantes}}",

packages/renderer/src/modules/store/translation/locales/zh.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,9 @@
202202
"duplicate_scene_failed": "复制场景失败",
203203
"delete_scene": "删除场景...",
204204
"delete_scene_failed": "删除场景失败",
205-
"dependencies_updated": "場景相依性已更新"
205+
"dependencies_updated": "場景相依性已更新",
206+
"installing_dependencies": "安装依赖项",
207+
"installing_dependencies_failed": "安装依赖项失败"
206208
},
207209
"missing_projects": {
208210
"title": "{scenes} 丢失的 {scenes, plural, one {场景} other {场景}} 成立",

0 commit comments

Comments
 (0)