refactor: purchase store (#25734)

This commit is contained in:
Jason Rasmussen
2026-02-12 13:32:17 -05:00
committed by GitHub
parent 6c0c4b3dda
commit 5bf4e9595c
9 changed files with 39 additions and 49 deletions

View File

@@ -1,5 +1,5 @@
<script lang="ts">
import { purchaseStore } from '$lib/stores/purchase.store';
import { authManager } from '$lib/managers/auth-manager.svelte';
import { handleError } from '$lib/utils/handle-error';
import { activateProduct, getActivationKey } from '$lib/utils/license-utils';
import { Button, Heading, LoadingSpinner } from '@immich/ui';
@@ -26,7 +26,7 @@
await activateProduct(productKey, activationKey);
onActivate();
purchaseStore.setPurchaseStatus(true);
authManager.isPurchased = true;
} catch (error) {
handleError(error, $t('purchase_failed_activation'));
} finally {

View File

@@ -2,9 +2,9 @@
import { goto } from '$app/navigation';
import { OpenQueryParam } from '$lib/constants';
import Portal from '$lib/elements/Portal.svelte';
import { authManager } from '$lib/managers/auth-manager.svelte';
import PurchaseModal from '$lib/modals/PurchaseModal.svelte';
import { Route } from '$lib/route';
import { purchaseStore } from '$lib/stores/purchase.store';
import { preferences } from '$lib/stores/user.store';
import { getAccountAge } from '$lib/utils/auth';
import { handleError } from '$lib/utils/handle-error';
@@ -22,8 +22,6 @@
let showBuyButton = $state(getButtonVisibility());
const { isPurchased } = purchaseStore;
const openPurchaseModal = async () => {
await modalManager.show(PurchaseModal);
showMessage = false;
@@ -72,7 +70,7 @@
</script>
<div class="license-status ps-4 text-sm">
{#if $isPurchased && $preferences.purchase.showSupportBadge}
{#if authManager.isPurchased && $preferences.purchase.showSupportBadge}
<button
onclick={() => goto(Route.userSettings({ isOpen: OpenQueryParam.PURCHASE_SETTINGS }))}
class="w-full mt-2"
@@ -80,7 +78,7 @@
>
<SupporterBadge size="small" effect="always" />
</button>
{:else if !$isPurchased && showBuyButton && getAccountAge() > 14}
{:else if !authManager.isPurchased && showBuyButton && getAccountAge() > 14}
<button
type="button"
onclick={openPurchaseModal}