@lumeo-ui/mcp-server 3.2.4 → 3.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lumeo-ui/mcp-server",
3
- "version": "3.2.4",
3
+ "version": "3.2.5",
4
4
  "description": "Model Context Protocol server for the Lumeo Blazor component library. Lets LLMs (Claude, Copilot, Cursor) author correct Lumeo markup.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "$schema": "https://lumeo.nativ.sh/components-api-schema.json",
3
- "version": "3.2.4",
4
- "generated": "2026-05-26T07:37:31.4781775Z",
3
+ "version": "3.2.5",
4
+ "generated": "2026-05-26T09:26:24.5534956Z",
5
5
  "stats": {
6
- "componentCount": 154,
7
- "totalParameters": 3748,
8
- "totalEnums": 65,
6
+ "componentCount": 155,
7
+ "totalParameters": 3767,
8
+ "totalEnums": 66,
9
9
  "totalRecords": 63,
10
10
  "thinFallbacks": []
11
11
  },
@@ -22451,6 +22451,226 @@
22451
22451
  "parseFailed": false,
22452
22452
  "parseError": null
22453
22453
  },
22454
+ "FileViewer": {
22455
+ "name": "FileViewer",
22456
+ "category": "Data Display",
22457
+ "subcategory": null,
22458
+ "description": "Universal file preview — auto-detects type from MIME / extension and renders PDF, images, video, audio, Markdown, JSON, CSV, source code (CodeMirror), and plain text inline; unknown types fall back to a download CTA. Pluggable per-kind renderer overrides; auth-aware HttpClient hook.",
22459
+ "nugetPackage": "Lumeo",
22460
+ "files": [
22461
+ "UI/FileViewer/FileKind.cs",
22462
+ "UI/FileViewer/FileTypeDetector.cs",
22463
+ "UI/FileViewer/FileViewer.razor",
22464
+ "UI/FileViewer/FileViewerRenderContext.cs"
22465
+ ],
22466
+ "namespace": "Lumeo",
22467
+ "inheritsFrom": null,
22468
+ "implements": [
22469
+ "IAsyncDisposable"
22470
+ ],
22471
+ "parameters": [
22472
+ {
22473
+ "name": "Src",
22474
+ "type": "string?",
22475
+ "default": null,
22476
+ "description": null,
22477
+ "isCascading": false,
22478
+ "captureUnmatched": false
22479
+ },
22480
+ {
22481
+ "name": "Kind",
22482
+ "type": "FileKind",
22483
+ "default": "FileKind.Auto",
22484
+ "description": "Override detection with an explicit kind. Default Auto.",
22485
+ "isCascading": false,
22486
+ "captureUnmatched": false
22487
+ },
22488
+ {
22489
+ "name": "MimeType",
22490
+ "type": "string?",
22491
+ "default": null,
22492
+ "description": "Explicit MIME type from your backend (e.g. \"application/pdf\"). Wins over HEAD and extension detection but loses to an explicit Kind override.",
22493
+ "isCascading": false,
22494
+ "captureUnmatched": false
22495
+ },
22496
+ {
22497
+ "name": "FileName",
22498
+ "type": "string?",
22499
+ "default": null,
22500
+ "description": "Human-readable file name. Used for the toolbar label, the download attribute, and the aria-label. Falls back to the last URL path segment when not provided.",
22501
+ "isCascading": false,
22502
+ "captureUnmatched": false
22503
+ },
22504
+ {
22505
+ "name": "AutoHead",
22506
+ "type": "bool",
22507
+ "default": null,
22508
+ "description": "Issue a HEAD request to inspect Content-Type when neither Kind nor MimeType is set. Off by default because many CDNs and signed URLs reject HEAD with 405 / 403.",
22509
+ "isCascading": false,
22510
+ "captureUnmatched": false
22511
+ },
22512
+ {
22513
+ "name": "MaxBytes",
22514
+ "type": "long",
22515
+ "default": "10L * 1024 * 1024",
22516
+ "description": "Cap on the number of bytes fetched for text-based kinds (Markdown, Code, JSON, CSV, Text). Default 10 MB. Excess content is truncated and a one-line notice is appended.",
22517
+ "isCascading": false,
22518
+ "captureUnmatched": false
22519
+ },
22520
+ {
22521
+ "name": "MaxCsvRows",
22522
+ "type": "int",
22523
+ "default": "1000",
22524
+ "description": "Cap on the number of CSV rows rendered. Default 1000.",
22525
+ "isCascading": false,
22526
+ "captureUnmatched": false
22527
+ },
22528
+ {
22529
+ "name": "ShowToolbar",
22530
+ "type": "bool",
22531
+ "default": "true",
22532
+ "description": "Show the top toolbar (file name + download). Default true.",
22533
+ "isCascading": false,
22534
+ "captureUnmatched": false
22535
+ },
22536
+ {
22537
+ "name": "ShowDownload",
22538
+ "type": "bool",
22539
+ "default": "true",
22540
+ "description": "Show the download button in the toolbar. Default true.",
22541
+ "isCascading": false,
22542
+ "captureUnmatched": false
22543
+ },
22544
+ {
22545
+ "name": "ShowFileName",
22546
+ "type": "bool",
22547
+ "default": "true",
22548
+ "description": "Show the file name in the toolbar. Default true.",
22549
+ "isCascading": false,
22550
+ "captureUnmatched": false
22551
+ },
22552
+ {
22553
+ "name": "HttpClient",
22554
+ "type": "HttpClient?",
22555
+ "default": null,
22556
+ "description": "Plug a custom HttpClient for the text fetches. Use this to attach a pre-configured Authorization handler instead of mutating the default client. Wins over ConfigureRequest.",
22557
+ "isCascading": false,
22558
+ "captureUnmatched": false
22559
+ },
22560
+ {
22561
+ "name": "ConfigureRequest",
22562
+ "type": "Func<HttpRequestMessage, Task>?",
22563
+ "default": null,
22564
+ "description": "Hook to mutate the outgoing HttpRequestMessage before it's sent — typical use is adding an Authorization header for signed-but-not-presigned URLs.",
22565
+ "isCascading": false,
22566
+ "captureUnmatched": false
22567
+ },
22568
+ {
22569
+ "name": "CustomRenderers",
22570
+ "type": "IReadOnlyDictionary<FileKind, RenderFragment<FileViewerRenderContext>>?",
22571
+ "default": null,
22572
+ "description": "Per-kind renderer overrides. The fragment receives a FileViewerRenderContext with the resolved URL, kind, the fetched text (when applicable) and the display name. When provided for a given kind, the built-in renderer is bypassed for that kind.",
22573
+ "isCascading": false,
22574
+ "captureUnmatched": false
22575
+ },
22576
+ {
22577
+ "name": "LoadingTemplate",
22578
+ "type": "RenderFragment?",
22579
+ "default": null,
22580
+ "description": "Custom loading view. Default is a centered Spinner.",
22581
+ "isCascading": false,
22582
+ "captureUnmatched": false
22583
+ },
22584
+ {
22585
+ "name": "OnKindDetected",
22586
+ "type": "EventCallback<FileKind>",
22587
+ "default": null,
22588
+ "description": "Fires once detection settles, with the resolved kind.",
22589
+ "isCascading": false,
22590
+ "captureUnmatched": false
22591
+ },
22592
+ {
22593
+ "name": "OnLoaded",
22594
+ "type": "EventCallback",
22595
+ "default": null,
22596
+ "description": "Fires when the file is fully rendered (text fetched, if any).",
22597
+ "isCascading": false,
22598
+ "captureUnmatched": false
22599
+ },
22600
+ {
22601
+ "name": "OnError",
22602
+ "type": "EventCallback<string>",
22603
+ "default": null,
22604
+ "description": "Fires on any detection or fetch error, with a message.",
22605
+ "isCascading": false,
22606
+ "captureUnmatched": false
22607
+ },
22608
+ {
22609
+ "name": "Class",
22610
+ "type": "string?",
22611
+ "default": null,
22612
+ "description": null,
22613
+ "isCascading": false,
22614
+ "captureUnmatched": false
22615
+ },
22616
+ {
22617
+ "name": "AdditionalAttributes",
22618
+ "type": "Dictionary<string, object>?",
22619
+ "default": null,
22620
+ "description": null,
22621
+ "isCascading": false,
22622
+ "captureUnmatched": true
22623
+ }
22624
+ ],
22625
+ "events": [
22626
+ {
22627
+ "name": "OnKindDetected",
22628
+ "type": "EventCallback<FileKind>",
22629
+ "description": "Fires once detection settles, with the resolved kind."
22630
+ },
22631
+ {
22632
+ "name": "OnLoaded",
22633
+ "type": "EventCallback",
22634
+ "description": "Fires when the file is fully rendered (text fetched, if any)."
22635
+ },
22636
+ {
22637
+ "name": "OnError",
22638
+ "type": "EventCallback<string>",
22639
+ "description": "Fires on any detection or fetch error, with a message."
22640
+ }
22641
+ ],
22642
+ "enums": [
22643
+ {
22644
+ "name": "ViewState",
22645
+ "values": [
22646
+ "Detecting",
22647
+ "Fetching",
22648
+ "Loaded",
22649
+ "Error"
22650
+ ],
22651
+ "description": null
22652
+ }
22653
+ ],
22654
+ "records": [],
22655
+ "cssVars": [
22656
+ "--color-accent",
22657
+ "--color-accent-foreground",
22658
+ "--color-background",
22659
+ "--color-border",
22660
+ "--color-card",
22661
+ "--color-foreground",
22662
+ "--color-muted",
22663
+ "--color-muted-foreground",
22664
+ "--color-primary",
22665
+ "--color-primary-foreground",
22666
+ "--color-ring",
22667
+ "--radius"
22668
+ ],
22669
+ "examples": [],
22670
+ "subComponents": {},
22671
+ "parseFailed": false,
22672
+ "parseError": null
22673
+ },
22454
22674
  "Filter": {
22455
22675
  "name": "Filter",
22456
22676
  "category": "Data Display",
package/src/registry.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://lumeo.nativ.sh/registry-schema.json",
3
- "version": "3.2.4",
4
- "generated": "2026-05-26T07:37:30.3267060Z",
3
+ "version": "3.2.5",
4
+ "generated": "2026-05-26T09:26:23.1612338Z",
5
5
  "components": {
6
6
  "accordion": {
7
7
  "name": "Accordion",
@@ -1447,6 +1447,47 @@
1447
1447
  ],
1448
1448
  "registryUrl": "https://lumeo.nativ.sh/registry/file-upload.json"
1449
1449
  },
1450
+ "file-viewer": {
1451
+ "name": "FileViewer",
1452
+ "category": "Data Display",
1453
+ "subcategory": null,
1454
+ "description": "Universal file preview — auto-detects type from MIME / extension and renders PDF, images, video, audio, Markdown, JSON, CSV, source code (CodeMirror), and plain text inline; unknown types fall back to a download CTA. Pluggable per-kind renderer overrides; auth-aware HttpClient hook.",
1455
+ "thumbnail": "/preview-cards/file-viewer.png",
1456
+ "hasDocsPage": true,
1457
+ "nugetPackage": "Lumeo.FileViewer",
1458
+ "files": [
1459
+ "UI/FileViewer/FileKind.cs",
1460
+ "UI/FileViewer/FileTypeDetector.cs",
1461
+ "UI/FileViewer/FileViewer.razor",
1462
+ "UI/FileViewer/FileViewerRenderContext.cs"
1463
+ ],
1464
+ "dependencies": [
1465
+ "code-editor",
1466
+ "empty-state",
1467
+ "icon",
1468
+ "list",
1469
+ "pdf-viewer",
1470
+ "spinner"
1471
+ ],
1472
+ "packageDependencies": [
1473
+ "Blazicons.Lucide"
1474
+ ],
1475
+ "cssVars": [
1476
+ "--color-accent",
1477
+ "--color-accent-foreground",
1478
+ "--color-background",
1479
+ "--color-border",
1480
+ "--color-card",
1481
+ "--color-foreground",
1482
+ "--color-muted",
1483
+ "--color-muted-foreground",
1484
+ "--color-primary",
1485
+ "--color-primary-foreground",
1486
+ "--color-ring",
1487
+ "--radius"
1488
+ ],
1489
+ "registryUrl": "https://lumeo.nativ.sh/registry/file-viewer.json"
1490
+ },
1450
1491
  "filter": {
1451
1492
  "name": "Filter",
1452
1493
  "category": "Data Display",