diff --git a/web/_data/osReleases.ts b/web/_data/osReleases.ts index ec185f9d9..1a5225796 100644 --- a/web/_data/osReleases.ts +++ b/web/_data/osReleases.ts @@ -43,6 +43,19 @@ const testOsReleasesResponse: OsReleasesResponse = { } ], "stable": [ + { + "version": "6.12.5", + "name": "Unraid Server 6.12.5", + "basefile": "unRAIDServer-6.12.5-x86_64.zip", + "date": "2023-08-31", + "url": "https://dl.stable.unraid.net/unRAIDServer-6.12.5-x86_64.zip", + "changelog": "https://unraid.net/blog/unraid-os-6.12.5-release-notes", + "md5": "FAKEbddcf415f2d0518804e551c16125", + "size": 12345122, + "sha256": "fda177bb1336270b24e4df0fd0c1dd0596c44699204f57c83ce70a0f19173be4", + "plugin_url": "https://dl.stable.unraid.net/unRAIDServer-6.12.5.plg", + "plugin_sha256": "83850536ed6982bd582ed107d977d59e9b9b786363e698b14d1daf52e2dec2d9" + }, { "version": "6.12.4", "name": "Unraid Server 6.12.4", diff --git a/web/components/UserProfile.ce.vue b/web/components/UserProfile.ce.vue index 9b8bca468..2f524b5a1 100644 --- a/web/components/UserProfile.ce.vue +++ b/web/components/UserProfile.ce.vue @@ -7,7 +7,7 @@ import { useCallbackStore } from '~/store/callbackActions'; import { useDropdownStore } from '~/store/dropdown'; import { useServerStore } from '~/store/server'; import { useThemeStore } from '~/store/theme'; -import { useUpdateOsStore } from '~/store/updateOs'; +import { useUpdateOsStore } from '~/store/updateOsActions'; import type { Server } from '~/types/server'; import 'tailwindcss/tailwind.css'; import '~/assets/main.css'; @@ -25,7 +25,16 @@ const serverStore = useServerStore(); const updateOsStore = useUpdateOsStore(); const { dropdownVisible } = storeToRefs(dropdownStore); -const { name, description, lanIp, state, connectPluginInstalled } = storeToRefs(serverStore); +const { + name, + description, + guid, + keyfile, + lanIp, + osVersion, + state, + connectPluginInstalled, +} = storeToRefs(serverStore); const { bannerGradient, theme } = storeToRefs(useThemeStore()); const hideDropdown = computed(() => state.value === 'PRO' && !connectPluginInstalled.value); @@ -75,7 +84,12 @@ onBeforeMount(() => { } callbackStore.watcher(); - updateOsStore.checkForOsUpdate(); + updateOsStore.checkForUpdate({ + cache: true, + guid: guid.value, + keyfile: keyfile.value, + osVersion: osVersion.value, + }); }); diff --git a/web/components/UserProfile/CallbackFeedback.vue b/web/components/UserProfile/CallbackFeedback.vue index cd63e0e29..0a3f0d358 100644 --- a/web/components/UserProfile/CallbackFeedback.vue +++ b/web/components/UserProfile/CallbackFeedback.vue @@ -12,7 +12,7 @@ import { useCallbackActionsStore } from '~/store/callbackActions'; import { useInstallKeyStore } from '~/store/installKey'; // import { usePromoStore } from '~/store/promo'; import { useServerStore } from '~/store/server'; -import { useUpdateOsStore } from '~/store/updateOs'; +import { useUpdateOsActionsStore } from '~/store/updateOsActions'; export interface Props { open?: boolean; @@ -28,7 +28,7 @@ const callbackActionsStore = useCallbackActionsStore(); const installKeyStore = useInstallKeyStore(); // const promoStore = usePromoStore(); const serverStore = useServerStore(); -const updateOsStore = useUpdateOsStore(); +const updateOsActionStore = useUpdateOsActionsStore(); const { accountAction, @@ -54,7 +54,7 @@ const { const { status: updateOsStatus, callbackUpdateRelease, -} = storeToRefs(updateOsStore); +} = storeToRefs(updateOsActionStore); /** * Post sign in success state: * If we're on the Connect settings page in the webGUI @@ -111,7 +111,7 @@ const close = () => { }; const cancelUpdateOs = () => { - updateOsStore.setStatus('ready'); + updateOsActionStore.setStatus('ready'); callbackActionsStore.setCallbackStatus('ready') }; @@ -317,7 +317,7 @@ const { copy, copied, isSupported } = useClipboard({ source: keyUrl.value }); /> diff --git a/web/components/UserProfile/DropdownContent.vue b/web/components/UserProfile/DropdownContent.vue index 1754c8369..8d7814c19 100644 --- a/web/components/UserProfile/DropdownContent.vue +++ b/web/components/UserProfile/DropdownContent.vue @@ -6,7 +6,7 @@ import { ACCOUNT, CONNECT_DASHBOARD, PLUGIN_SETTINGS } from '~/helpers/urls'; import { useErrorsStore } from '~/store/errors'; // import { usePromoStore } from '~/store/promo'; import { useServerStore } from '~/store/server'; -import { useUpdateOsStore } from '~/store/updateOs'; +import { useUpdateOsStore, useUpdateOsActionsStore } from '~/store/updateOsActions'; import type { UserProfileLink } from '~/types/userProfile'; const props = defineProps<{ t: any; }>(); @@ -16,7 +16,8 @@ const errorsStore = useErrorsStore(); const { errors } = storeToRefs(errorsStore); const { keyActions, connectPluginInstalled, registered, stateData } = storeToRefs(useServerStore()); -const { updateAvailable, initUpdateOsCallback } = storeToRefs(useUpdateOsStore()); +const { available: osUpdateAvailable } = storeToRefs(useUpdateOsStore()); +const { initUpdateOsCallback } = storeToRefs(useUpdateOsActionsStore()); const signInAction = computed(() => stateData.value.actions?.filter((act: { name: string; }) => act.name === 'signIn') ?? []); const signOutAction = computed(() => stateData.value.actions?.filter((act: { name: string; }) => act.name === 'signOut') ?? []); @@ -26,7 +27,7 @@ const links = computed(():UserProfileLink[] => { ...(registered.value && connectPluginInstalled.value ? [ { - emphasize: !updateAvailable.value, // only emphasize when we don't have an update available + emphasize: !osUpdateAvailable.value, // only emphasize when we don't have an update available external: true, href: CONNECT_DASHBOARD.toString(), icon: ArrowTopRightOnSquareIcon, @@ -93,7 +94,7 @@ const showKeyline = computed(() => showConnectStatus.value && (keyActions.value? -