/** * Product vocabulary — ownership vs curated lists. * See AGENTS.md § Product vocabulary and docs/SCHEMA_MAP.md glossary. */ /** Internal DB name for the auto-sync system collection — never render in UI. */ export const SYSTEM_COLLECTION_DB_NAME = 'All My Cards'; export const VOCAB = { MY_COLLECTION: 'My Collection', LISTS: 'Lists', LIST: 'List', ADD_TO_MY_COLLECTION: 'Add to My Collection', REMOVE_FROM_MY_COLLECTION: 'Remove from My Collection', ADD_TO_LIST: 'Add to List', ADD_TO_LISTS: 'Add to Lists', SYNCED_BINDER: 'Synced binder', SYSTEM_COLLECTION_SYNC_HINT: 'Automatically syncs with My Collection', }; /** User-facing label for a collection row (maps system collection DB name). */ export function collectionDisplayName(collection) { if (!collection) return ''; if ( collection.isSystemCollection || collection.is_system_collection || collection.name === SYSTEM_COLLECTION_DB_NAME ) { return VOCAB.SYNCED_BINDER; } return collection.name; } /** Scanner / bulk-action success line: "Added to …" */ export function formatProcessedDestination(action) { if (action === 'owned') return VOCAB.MY_COLLECTION; if (action === 'collection') return VOCAB.LIST; if (action === 'deck') return 'deck'; return action; }