feat(notes): liens internes, onglet Réseau, living blocks et consentement IA
Rend les liens entre notes visibles et persistants (sync NoteLink au save, auto-save, graphe réseau rafraîchi), ajoute living blocks, Memory Echo, recherche globale, consentement IA explicite et consolide les prototypes design en architectural-grid. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -43,21 +43,21 @@ export const PALETTE_ALIASES: Record<string, string> = {
|
||||
premium: 'platinum_white_gold', clean: 'vibrant_tech', stage: 'stage_dark',
|
||||
architectural: 'architectural_mono', silk: 'minimal_silk',
|
||||
black: 'keynote', white: 'platinum_white_gold', nuit: 'galaxy', sombre: 'stage_dark',
|
||||
|
||||
// Recipe explicit theme mappings
|
||||
architectural_saas: 'architectural_mono',
|
||||
midnight_cathedral: 'keynote',
|
||||
aurora_borealis: 'galaxy',
|
||||
tokyo_neon: 'vibrant_tech',
|
||||
sunlit_gallery: 'bohemian',
|
||||
clinical_precision: 'modern_wellness',
|
||||
venture_pitch: 'vibrant_orange_mint',
|
||||
forest_floor: 'forest_eco',
|
||||
steel_glass: 'luxury_mystery',
|
||||
cyberpunk_terminal: 'tech_night',
|
||||
editorial_ink: 'vintage_academic',
|
||||
coastal_morning: 'coastal_coral',
|
||||
paper_studio: 'craft_artisan',
|
||||
|
||||
// Recipe explicit theme mappings (both underscore and dash variants)
|
||||
architectural_saas: 'architectural_mono', 'architectural-saas': 'architectural_mono',
|
||||
midnight_cathedral: 'keynote', 'midnight-cathedral': 'keynote',
|
||||
aurora_borealis: 'galaxy', 'aurora-borealis': 'galaxy',
|
||||
tokyo_neon: 'vibrant_tech', 'tokyo-neon': 'vibrant_tech',
|
||||
sunlit_gallery: 'bohemian', 'sunlit-gallery': 'bohemian',
|
||||
clinical_precision: 'modern_wellness', 'clinical-precision': 'modern_wellness',
|
||||
venture_pitch: 'vibrant_orange_mint', 'venture-pitch': 'vibrant_orange_mint',
|
||||
forest_floor: 'forest_eco', 'forest-floor': 'forest_eco',
|
||||
steel_glass: 'luxury_mystery', 'steel-glass': 'luxury_mystery',
|
||||
cyberpunk_terminal: 'tech_night', 'cyberpunk-terminal': 'tech_night',
|
||||
editorial_ink: 'vintage_academic', 'editorial-ink': 'vintage_academic',
|
||||
coastal_morning: 'coastal_coral', 'coastal-morning': 'coastal_coral',
|
||||
paper_studio: 'craft_artisan', 'paper-studio': 'craft_artisan',
|
||||
}
|
||||
|
||||
export const THEME_NAMES: Record<string, string> = {
|
||||
@@ -74,7 +74,8 @@ export const THEME_NAMES: Record<string, string> = {
|
||||
}
|
||||
|
||||
export function resolvePalette(spec: Pick<PresentationSpec, 'theme'>): { palette: Palette; key: string } {
|
||||
const name = (spec.theme || '').toLowerCase().replace(/[\s-]/g, '_')
|
||||
// Normalize theme name: handle both dashes and underscores
|
||||
const name = (spec.theme || '').toLowerCase().replace(/[\s-]/g, '_').replace(/_+/g, '_').replace(/^_|_$/g, '')
|
||||
const key = PALETTE_ALIASES[name] || (PALETTES[name] ? name : 'keynote')
|
||||
return { palette: PALETTES[key]!, key }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user