import type { UiWidget } from './types' /** * SIE Drop Widget: MCP Apps inline HTML rendered by gnubok_create_sie_upload. * The user drags their .se/.sie export onto the card; the widget reads the * EXACT bytes itself (FileReader), computes sha256, and passes them through * `tools/call` as file_content_base64: no model in the byte path, so a * 100 KB+ file imports without token-by-token reproduction risk. Flow: * drop → gnubok_sie_preflight (verdict shown in the card) → user clicks * Importera → gnubok_import_sie with the preflight's mappings (stages for * approval as always). The tool's upload_url stays available as a fallback * for hosts without the widget. */ export const SIE_DROP_HTML = ` SIE-import - Accounted

Importera bokföring (SIE)

Släpp SIE-filen här så kontrolleras den innan något bokförs.

Släpp .se/.sie-filen här, eller klicka för att välja
` export const sieDropWidget: UiWidget = { uri: 'ui://sie-drop/app.html', name: 'SIE Import Drop', description: 'Drag-and-drop SIE import card: reads the exact file bytes, runs gnubok_sie_preflight, and stages gnubok_import_sie on click. Rendered by gnubok_create_sie_upload.', html: SIE_DROP_HTML, }