/**
* Modul: Pinnwand / Notizen (Notes)
* Zweck: Masonry-Grid mit farbigen Sticky Notes, Pin-Toggle, CRUD
* Abhängigkeiten: /api.js, /router.js (window.oikos)
*/
import { api } from '/api.js';
// --------------------------------------------------------
// Konstanten
// --------------------------------------------------------
const NOTE_COLORS = [
'#FFEB3B', '#FFD54F', '#A5D6A7', '#80DEEA',
'#90CAF9', '#CE93D8', '#FFAB91', '#FFFFFF',
];
// --------------------------------------------------------
// State
// --------------------------------------------------------
let state = { notes: [], user: null };
let _container = null;
// --------------------------------------------------------
// Markdown-Light Renderer
// --------------------------------------------------------
function renderMarkdownLight(text) {
if (!text) return '';
return escHtml(text)
.replace(/\*\*(.+?)\*\*/g, '$1')
.replace(/\*(.+?)\*/g, '$1')
.replace(/^- (.+)$/gm, '• $1')
.replace(/\n/g, '
');
}
// --------------------------------------------------------
// Entry Point
// --------------------------------------------------------
export async function render(container, { user }) {
_container = container;
state.user = user;
container.innerHTML = `