/**
* IdentityLibrary — Left-panel section showing character identities for the
* current wizard session.
*
* Only shows identities that were:
* 1. Created during this wizard session (sessionIds)
* 2. Imported from the full library (importedIds)
*
* An "Import from Library" picker lets users bring in pre-existing identities
* without cluttering the view with every identity ever created.
*/
import React, { useState } from 'react';
import { Plus, Download, X, Sparkles } from 'lucide-react';
// ---------------------------------------------------------------------------
// Component
// ---------------------------------------------------------------------------
export function IdentityLibrary({ items, sessionIds, importedIds, activeIdentityId, onSelectIdentity, onNewIdentity, onImportIdentity, resolveUrl, }) {
const [showPicker, setShowPicker] = useState(false);
// All root identities from the full gallery
const allIdentities = items.filter((i) => i.role === 'anchor' && !i.parentId);
// Session-scoped: created here + imported
const visibleIds = new Set([...sessionIds, ...importedIds]);
const sessionIdentities = allIdentities.filter((i) => visibleIds.has(i.id));
// Library identities available for import (not already visible)
const libraryIdentities = allIdentities.filter((i) => !visibleIds.has(i.id));
return (