mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 23:41:08 +02:00
fix: revert tier test patch, widen toggleField, add spiral-db prepare
Three independent fixes grouped because they're each one-line changes:
1. Revert MANA_APPS requiredTier test patch
Commit e52b6e29f flipped all 36+ apps to requiredTier='guest' for
local testing. Restored original tiers from before the flip:
guest-accessible (contacts, calendar, todo), public (who),
beta (zitare, calc, guides, arcade), alpha (most modules),
founder (memoro, nutriphi, mail, habits, notes, dreams, cycles,
events, finance, places, news). Body stays at 'guest' (new module,
intentional). The memory note "REVERT BEFORE RELEASE" is now done.
2. Widen toggleField to accept IndexableType keys
`toggleField<T>(table: Table<T, string>, ...)` rejected Dexie
tables keyed by IndexableType (the default). Changed the second
generic to IndexableType so callers like images.svelte.ts don't
need the `as unknown as Parameters<...>[0]` double-cast.
3. Add prepare script to spiral-db
`"prepare": "pnpm build"` ensures `dist/` is rebuilt after
`pnpm install` on a fresh clone. Without this, the 209 cascading
type errors from stale/missing dist files return on every new
checkout. Also added `prepublishOnly` as a safety net.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
3e81a6ebef
commit
7df515434e
3 changed files with 41 additions and 39 deletions
|
|
@ -100,7 +100,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#6366f1',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'chat',
|
||||
|
|
@ -117,7 +117,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#0ea5e9',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'memoro',
|
||||
|
|
@ -134,7 +134,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#f8d62b',
|
||||
comingSoon: false,
|
||||
status: 'published',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'presi',
|
||||
|
|
@ -151,7 +151,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#f97316',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'cards',
|
||||
|
|
@ -168,7 +168,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#8b5cf6',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'picture',
|
||||
|
|
@ -185,7 +185,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#22c55e',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'zitare',
|
||||
|
|
@ -202,7 +202,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#f59e0b',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'beta',
|
||||
},
|
||||
{
|
||||
id: 'wisekeep',
|
||||
|
|
@ -219,7 +219,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#6366f1',
|
||||
comingSoon: false,
|
||||
status: 'planning',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
archived: true,
|
||||
},
|
||||
{
|
||||
|
|
@ -237,7 +237,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#10b981',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
archived: true,
|
||||
},
|
||||
{
|
||||
|
|
@ -255,7 +255,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#3b82f6',
|
||||
comingSoon: false,
|
||||
status: 'published',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'public',
|
||||
},
|
||||
{
|
||||
id: 'calendar',
|
||||
|
|
@ -272,7 +272,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#0ea5e9',
|
||||
comingSoon: false,
|
||||
status: 'published',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'public',
|
||||
},
|
||||
{
|
||||
id: 'storage',
|
||||
|
|
@ -289,7 +289,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#3b82f6',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
// Clock consolidated into Times
|
||||
{
|
||||
|
|
@ -307,7 +307,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#8b5cf6',
|
||||
comingSoon: false,
|
||||
status: 'published',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'public',
|
||||
},
|
||||
{
|
||||
id: 'mail',
|
||||
|
|
@ -324,7 +324,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#6366f1',
|
||||
comingSoon: false,
|
||||
status: 'planning',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'moodlit',
|
||||
|
|
@ -341,7 +341,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#8b5cf6',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'inventory',
|
||||
|
|
@ -358,7 +358,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#14b8a6',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'questions',
|
||||
|
|
@ -375,7 +375,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#8b5cf6',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'context',
|
||||
|
|
@ -392,7 +392,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#0ea5e9',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'times',
|
||||
|
|
@ -409,7 +409,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#f59e0b',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'citycorners',
|
||||
|
|
@ -426,7 +426,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#2563eb',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'uload',
|
||||
|
|
@ -443,7 +443,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#6366f1',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'news',
|
||||
|
|
@ -460,7 +460,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#10b981',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'calc',
|
||||
|
|
@ -477,7 +477,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#ec4899',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'beta',
|
||||
},
|
||||
{
|
||||
id: 'guides',
|
||||
|
|
@ -494,7 +494,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#0d9488',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'beta',
|
||||
},
|
||||
{
|
||||
id: 'music',
|
||||
|
|
@ -511,7 +511,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#ec4899',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'photos',
|
||||
|
|
@ -528,7 +528,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#8b5cf6',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'planta',
|
||||
|
|
@ -545,7 +545,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#22c55e',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'skilltree',
|
||||
|
|
@ -562,7 +562,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#f59e0b',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'alpha',
|
||||
},
|
||||
{
|
||||
id: 'body',
|
||||
|
|
@ -596,7 +596,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#8b5cf6',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'notes',
|
||||
|
|
@ -613,7 +613,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#f59e0b',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'dreams',
|
||||
|
|
@ -630,7 +630,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#6366f1',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'cycles',
|
||||
|
|
@ -647,7 +647,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#ec4899',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'events',
|
||||
|
|
@ -664,7 +664,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#f43f5e',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'finance',
|
||||
|
|
@ -681,7 +681,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#22c55e',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'places',
|
||||
|
|
@ -698,7 +698,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#0ea5e9',
|
||||
comingSoon: false,
|
||||
status: 'development',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'founder',
|
||||
},
|
||||
{
|
||||
id: 'arcade',
|
||||
|
|
@ -715,7 +715,7 @@ export const MANA_APPS: ManaApp[] = [
|
|||
color: '#ef4444',
|
||||
comingSoon: false,
|
||||
status: 'beta',
|
||||
requiredTier: 'guest',
|
||||
requiredTier: 'beta',
|
||||
},
|
||||
{
|
||||
id: 'who',
|
||||
|
|
|
|||
|
|
@ -16,14 +16,14 @@
|
|||
* ```
|
||||
*/
|
||||
|
||||
import type { Table, UpdateSpec } from 'dexie';
|
||||
import type { IndexableType, Table, UpdateSpec } from 'dexie';
|
||||
|
||||
/**
|
||||
* Toggle a boolean field on a Dexie record.
|
||||
* @returns The new value of the field after toggling.
|
||||
*/
|
||||
export async function toggleField<T>(
|
||||
table: Table<T, string>,
|
||||
table: Table<T, IndexableType>,
|
||||
id: string,
|
||||
field: string
|
||||
): Promise<boolean> {
|
||||
|
|
|
|||
|
|
@ -21,7 +21,9 @@
|
|||
"dev": "tsup src/index.ts src/wallpaper.ts --format esm --dts --watch",
|
||||
"test": "vitest",
|
||||
"test:run": "vitest run",
|
||||
"type-check": "tsc --noEmit"
|
||||
"type-check": "tsc --noEmit",
|
||||
"prepare": "pnpm build",
|
||||
"prepublishOnly": "pnpm build"
|
||||
},
|
||||
"dependencies": {
|
||||
"pako": "^2.1.0"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue