From 35baa1af5e92f913adcd1f459030e00b77b2d9af Mon Sep 17 00:00:00 2001 From: Calum Date: Thu, 10 Jul 2025 20:00:39 +0100 Subject: [PATCH] feat: polish update available modal --- .../src/components/ui/UpdateModal.vue | 156 ++++++++++++------ .../ui/src/components/base/JoinedButtons.vue | 120 ++++++++++++++ packages/ui/src/components/index.ts | 2 + 3 files changed, 228 insertions(+), 50 deletions(-) create mode 100644 packages/ui/src/components/base/JoinedButtons.vue diff --git a/apps/app-frontend/src/components/ui/UpdateModal.vue b/apps/app-frontend/src/components/ui/UpdateModal.vue index dc9108768..0372d351c 100644 --- a/apps/app-frontend/src/components/ui/UpdateModal.vue +++ b/apps/app-frontend/src/components/ui/UpdateModal.vue @@ -3,40 +3,49 @@ ref="modal" :header="formatMessage(messages.header)" :on-hide="onHide" - :closable="!updatingImmediately" + :closable="!updatingImmediately && !downloadInProgress" > -
{{ formatMessage(messages.bodyVersion, { version: update!.version }) }}
-
- {{ formatMessage(messages.bodySize, { size: formatBytes(updateSize) }) }} -
-
- {{ - formatMessage(messages.bodyChangelog) - }} -
- -
- - - - - - - - - +
+ + +
+
+ + v{{ update!.currentVersion }} + + + + v{{ update!.version }} + +
+
{{ formatMessage(messages.bodyVersion) }}
+
+ {{ formatMessage(messages.downloadSize, { size: formatBytes(updateSize) }) }} +
+ +
@@ -44,13 +53,19 @@ + + diff --git a/packages/ui/src/components/index.ts b/packages/ui/src/components/index.ts index 5a7c62e23..6f99e23a3 100644 --- a/packages/ui/src/components/index.ts +++ b/packages/ui/src/components/index.ts @@ -22,6 +22,8 @@ export { default as FileInput } from './base/FileInput.vue' export { default as FilterBar } from './base/FilterBar.vue' export type { FilterBarOption } from './base/FilterBar.vue' export { default as HeadingLink } from './base/HeadingLink.vue' +export { default as JoinedButtons } from './base/JoinedButtons.vue' +export type { JoinedButtonAction } from './base/JoinedButtons.vue' export { default as LoadingIndicator } from './base/LoadingIndicator.vue' export { default as ManySelect } from './base/ManySelect.vue' export { default as MarkdownEditor } from './base/MarkdownEditor.vue'