feat(mana): migrate subscription page to workbench app

Extract /mana route into lib/modules/mana/ListView.svelte. Register as
workbench app id='mana' with Crown icon (amber). The page shows the
SubscriptionPage component from @mana/subscriptions.

- Delete routes/(app)/mana/+page.svelte
- Update PillNavigation manaHref to /?app=mana

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Till JS 2026-04-16 12:03:20 +02:00
parent 5d46aa19a0
commit ae53e93b9a
3 changed files with 19 additions and 8 deletions

View file

@ -71,6 +71,7 @@ import {
SquaresFour,
Scroll,
Spiral,
Crown,
} from '@mana/shared-icons';
// ── Apps with entity capabilities ───────────────────────────
@ -1087,6 +1088,16 @@ registerApp({
},
});
registerApp({
id: 'mana',
name: 'Mana',
color: '#F59E0B',
icon: Crown,
views: {
list: { load: () => import('$lib/modules/mana/ListView.svelte') },
},
});
registerApp({
id: 'spiral',
name: 'Mana Spiral',

View file

@ -1,3 +1,7 @@
<!--
Mana — Workbench-embedded subscription / pricing page.
Shows available plans and one-time credit packages.
-->
<script lang="ts">
import { SubscriptionPage } from '@mana/subscriptions';
@ -14,11 +18,6 @@
}
</script>
<svelte:head>
<title>Mana - Mana</title>
</svelte:head>
<!-- Toast notification -->
{#if toastMessage}
<div
class="fixed bottom-6 left-1/2 z-50 -translate-x-1/2 rounded-lg bg-amber-600 px-5 py-3 text-sm font-medium text-white shadow-lg"
@ -42,9 +41,10 @@
<style>
.mana-page {
min-height: 100%;
height: 100%;
width: 100%;
overflow-y: auto;
overflow-x: hidden;
background-color: hsl(var(--color-background));
padding: 0.75rem;
}
</style>

View file

@ -974,7 +974,7 @@
currentSyncLabel={syncStatus.label}
{appItems}
{userEmail}
manaHref="/mana"
manaHref="/?app=mana"
profileHref="/?app=profile"
spiralHref="/?app=spiral"
creditsHref="/credits"