@lumeo-ui/mcp-server 3.12.1 → 3.13.0

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.12.1",
3
+ "version": "3.13.0",
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,12 +1,12 @@
1
1
  {
2
2
  "$schema": "https://lumeo.nativ.sh/components-api-schema.json",
3
- "version": "3.12.1",
4
- "generated": "2026-06-04T21:34:26.9204431Z",
3
+ "version": "3.13.0",
4
+ "generated": "2026-06-11T14:21:49.0464941Z",
5
5
  "stats": {
6
6
  "componentCount": 163,
7
- "totalParameters": 3958,
7
+ "totalParameters": 3965,
8
8
  "totalEnums": 71,
9
- "totalRecords": 63,
9
+ "totalRecords": 64,
10
10
  "serviceCount": 33,
11
11
  "thinFallbacks": []
12
12
  },
@@ -636,7 +636,7 @@
636
636
  {
637
637
  "name": "SetupFocusTrap",
638
638
  "returnType": "ValueTask",
639
- "signature": "SetupFocusTrap(string elementId)",
639
+ "signature": "SetupFocusTrap(string elementId, string? initialFocusSelector = null)",
640
640
  "summary": null
641
641
  },
642
642
  {
@@ -705,6 +705,12 @@
705
705
  "signature": "PositionFixed(string contentId, string referenceId, string align = \"start\", bool matchWidth = false, string side = \"bottom\")",
706
706
  "summary": null
707
707
  },
708
+ {
709
+ "name": "PositionFixed",
710
+ "returnType": "ValueTask",
711
+ "signature": "PositionFixed(string contentId, string referenceId, string align, bool matchWidth, string side, int offset)",
712
+ "summary": null
713
+ },
708
714
  {
709
715
  "name": "UnpositionFixed",
710
716
  "returnType": "ValueTask",
@@ -1005,6 +1011,18 @@
1005
1011
  "signature": "OnOtpPaste(string baseId, string digits)",
1006
1012
  "summary": null
1007
1013
  },
1014
+ {
1015
+ "name": "RegisterPreventDefaultKeys",
1016
+ "returnType": "ValueTask",
1017
+ "signature": "RegisterPreventDefaultKeys(string elementId, IReadOnlyList<PreventDefaultKeyRule> rules)",
1018
+ "summary": null
1019
+ },
1020
+ {
1021
+ "name": "UnregisterPreventDefaultKeys",
1022
+ "returnType": "ValueTask",
1023
+ "signature": "UnregisterPreventDefaultKeys(string elementId)",
1024
+ "summary": null
1025
+ },
1008
1026
  {
1009
1027
  "name": "RegisterColumnResize",
1010
1028
  "returnType": "ValueTask",
@@ -1053,6 +1071,12 @@
1053
1071
  "signature": "GetElementRectBySelector(string selector)",
1054
1072
  "summary": null
1055
1073
  },
1074
+ {
1075
+ "name": "ScrollSelectorIntoView",
1076
+ "returnType": "ValueTask",
1077
+ "signature": "ScrollSelectorIntoView(string selector)",
1078
+ "summary": null
1079
+ },
1056
1080
  {
1057
1081
  "name": "RegisterAffix",
1058
1082
  "returnType": "ValueTask",
@@ -1742,14 +1766,14 @@
1742
1766
  {
1743
1767
  "name": "SetupFocusTrap",
1744
1768
  "returnType": "ValueTask",
1745
- "signature": "SetupFocusTrap(string elementId)",
1746
- "summary": null
1769
+ "signature": "SetupFocusTrap(string elementId, string? initialFocusSelector = null)",
1770
+ "summary": "Engages a Tab-cycling focus trap on the element, saves the previously focused element (the trigger) and moves focus into the trap. optionally names the element (resolved within the trap) to focus first — e.g. AlertDialog targets its least destructive action via [data-lumeo-initial-focus]; when null/unmatched, the first focusable element receives focus."
1747
1771
  },
1748
1772
  {
1749
1773
  "name": "RemoveFocusTrap",
1750
1774
  "returnType": "ValueTask",
1751
1775
  "signature": "RemoveFocusTrap(string elementId)",
1752
- "summary": null
1776
+ "summary": "Releases the trap and returns focus to the element that was focused when SetupFocusTrap ran, if it is still in the document."
1753
1777
  },
1754
1778
  {
1755
1779
  "name": "AttachOverlaySlideEnd",
@@ -1805,6 +1829,12 @@
1805
1829
  "signature": "PositionFixed(string contentId, string referenceId, string align = \"start\", bool matchWidth = false, string side = \"bottom\")",
1806
1830
  "summary": null
1807
1831
  },
1832
+ {
1833
+ "name": "PositionFixed",
1834
+ "returnType": "ValueTask",
1835
+ "signature": "PositionFixed(string contentId, string referenceId, string align, bool matchWidth, string side, int offset)",
1836
+ "summary": "3.12.x — extended overload with an explicit trigger→content gap in pixels (Tooltip Offset). The default implementation ignores the offset and falls back to the 5-arg overload (JS hardcoded 4px) so existing implementations keep compiling unchanged."
1837
+ },
1808
1838
  {
1809
1839
  "name": "UnpositionFixed",
1810
1840
  "returnType": "ValueTask",
@@ -2033,6 +2063,18 @@
2033
2063
  "signature": "UnregisterOtpPaste(string baseId, int length)",
2034
2064
  "summary": null
2035
2065
  },
2066
+ {
2067
+ "name": "RegisterPreventDefaultKeys",
2068
+ "returnType": "ValueTask",
2069
+ "signature": "RegisterPreventDefaultKeys(string elementId, IReadOnlyList<PreventDefaultKeyRule> rules)",
2070
+ "summary": null
2071
+ },
2072
+ {
2073
+ "name": "UnregisterPreventDefaultKeys",
2074
+ "returnType": "ValueTask",
2075
+ "signature": "UnregisterPreventDefaultKeys(string elementId)",
2076
+ "summary": null
2077
+ },
2036
2078
  {
2037
2079
  "name": "RegisterColumnResize",
2038
2080
  "returnType": "ValueTask",
@@ -2063,6 +2105,12 @@
2063
2105
  "signature": "GetElementRectBySelector(string selector)",
2064
2106
  "summary": null
2065
2107
  },
2108
+ {
2109
+ "name": "ScrollSelectorIntoView",
2110
+ "returnType": "ValueTask",
2111
+ "signature": "ScrollSelectorIntoView(string selector)",
2112
+ "summary": "Instantly scrolls the first element matching into the viewport (block: center). Call BEFORE LockScroll — a locked body can't be scrolled, programmatically or otherwise."
2113
+ },
2066
2114
  {
2067
2115
  "name": "RegisterAffix",
2068
2116
  "returnType": "ValueTask",
@@ -6015,7 +6063,8 @@
6015
6063
  "records": [],
6016
6064
  "gotchas": [],
6017
6065
  "cssVars": [
6018
- "--color-foreground"
6066
+ "--color-muted",
6067
+ "--color-muted-foreground"
6019
6068
  ],
6020
6069
  "examples": [
6021
6070
  {
@@ -7594,7 +7643,9 @@
7594
7643
  ],
7595
7644
  "namespace": "Lumeo",
7596
7645
  "inheritsFrom": null,
7597
- "implements": [],
7646
+ "implements": [
7647
+ "IAsyncDisposable"
7648
+ ],
7598
7649
  "parameters": [
7599
7650
  {
7600
7651
  "name": "ChildContent",
@@ -17150,7 +17201,9 @@
17150
17201
  "fileName": "CollapsibleTrigger.razor",
17151
17202
  "namespace": "Lumeo",
17152
17203
  "inheritsFrom": null,
17153
- "implements": [],
17204
+ "implements": [
17205
+ "IAsyncDisposable"
17206
+ ],
17154
17207
  "parameters": [
17155
17208
  {
17156
17209
  "name": "Context",
@@ -18265,7 +18318,7 @@
18265
18318
  "records": [
18266
18319
  {
18267
18320
  "name": "CommandContext",
18268
- "signature": "CommandContext(\n string SearchText,\n EventCallback<string> OnSearch,\n Action<string> RegisterItem,\n Action<string> UnregisterItem,\n int VisibleItemCount)",
18321
+ "signature": "CommandContext(\n string SearchText,\n EventCallback<string> OnSearch,\n EventCallback<KeyboardEventArgs> OnNavigationKey,\n int VisibleItemCount,\n string ListId,\n string? HighlightedItemId,\n Command Owner)",
18269
18322
  "description": null
18270
18323
  }
18271
18324
  ],
@@ -18354,6 +18407,14 @@
18354
18407
  "inheritsFrom": null,
18355
18408
  "implements": [],
18356
18409
  "parameters": [
18410
+ {
18411
+ "name": "Context",
18412
+ "type": "Command.CommandContext?",
18413
+ "default": null,
18414
+ "description": null,
18415
+ "isCascading": true,
18416
+ "captureUnmatched": false
18417
+ },
18357
18418
  {
18358
18419
  "name": "ChildContent",
18359
18420
  "type": "RenderFragment?",
@@ -18399,7 +18460,9 @@
18399
18460
  "fileName": "CommandInput.razor",
18400
18461
  "namespace": "Lumeo",
18401
18462
  "inheritsFrom": null,
18402
- "implements": [],
18463
+ "implements": [
18464
+ "IAsyncDisposable"
18465
+ ],
18403
18466
  "parameters": [
18404
18467
  {
18405
18468
  "name": "Context",
@@ -18458,6 +18521,14 @@
18458
18521
  "isCascading": true,
18459
18522
  "captureUnmatched": false
18460
18523
  },
18524
+ {
18525
+ "name": "Group",
18526
+ "type": "CommandGroup?",
18527
+ "default": null,
18528
+ "description": null,
18529
+ "isCascading": true,
18530
+ "captureUnmatched": false
18531
+ },
18461
18532
  {
18462
18533
  "name": "ChildContent",
18463
18534
  "type": "RenderFragment?",
@@ -18535,6 +18606,14 @@
18535
18606
  "inheritsFrom": null,
18536
18607
  "implements": [],
18537
18608
  "parameters": [
18609
+ {
18610
+ "name": "Context",
18611
+ "type": "Command.CommandContext?",
18612
+ "default": null,
18613
+ "description": null,
18614
+ "isCascading": true,
18615
+ "captureUnmatched": false
18616
+ },
18538
18617
  {
18539
18618
  "name": "ChildContent",
18540
18619
  "type": "RenderFragment?",
@@ -23142,7 +23221,7 @@
23142
23221
  "name": "OnParseError",
23143
23222
  "type": "EventCallback<string>",
23144
23223
  "default": null,
23145
- "description": "Fires when keyboard input cannot be parsed against the active Format (or culture short pattern). The argument is the offending raw buffer.",
23224
+ "description": "Fires when keyboard input cannot be parsed against the active Format (or culture short pattern), or parses to a date that is rejected by MinDate/MaxDate/IsDateDisabled. The argument is the offending raw buffer.",
23146
23225
  "isCascading": false,
23147
23226
  "captureUnmatched": false
23148
23227
  },
@@ -23240,7 +23319,7 @@
23240
23319
  {
23241
23320
  "name": "OnParseError",
23242
23321
  "type": "EventCallback<string>",
23243
- "description": "Fires when keyboard input cannot be parsed against the active Format (or culture short pattern). The argument is the offending raw buffer."
23322
+ "description": "Fires when keyboard input cannot be parsed against the active Format (or culture short pattern), or parses to a date that is rejected by MinDate/MaxDate/IsDateDisabled. The argument is the offending raw buffer."
23244
23323
  },
23245
23324
  {
23246
23325
  "name": "OpenChanged",
@@ -23271,8 +23350,8 @@
23271
23350
  "records": [
23272
23351
  {
23273
23352
  "name": "DatePickerPreset",
23274
- "signature": "DatePickerPreset(string Label, DateOnly Date)",
23275
- "description": null
23353
+ "signature": "DatePickerPreset(string Label, DateOnly Date, DateOnly? End = null)",
23354
+ "description": "Quick-select preset. For Single only is used; for Range the preset selects .. (or a single-day range when is null)."
23276
23355
  }
23277
23356
  ],
23278
23357
  "gotchas": [],
@@ -32254,7 +32333,7 @@
32254
32333
  "namespace": "Lumeo",
32255
32334
  "inheritsFrom": null,
32256
32335
  "implements": [
32257
- "IDisposable"
32336
+ "IAsyncDisposable"
32258
32337
  ],
32259
32338
  "parameters": [
32260
32339
  {
@@ -33161,6 +33240,14 @@
33161
33240
  "isCascading": true,
33162
33241
  "captureUnmatched": false
33163
33242
  },
33243
+ {
33244
+ "name": "KeyNavGuard",
33245
+ "type": "MenubarContent.MenubarKeyNavGuard?",
33246
+ "default": null,
33247
+ "description": null,
33248
+ "isCascading": true,
33249
+ "captureUnmatched": false
33250
+ },
33164
33251
  {
33165
33252
  "name": "ChildContent",
33166
33253
  "type": "RenderFragment?",
@@ -35401,17 +35488,17 @@
35401
35488
  },
35402
35489
  {
35403
35490
  "name": "SourceTitle",
35404
- "type": "string",
35405
- "default": "\"Available\"",
35406
- "description": null,
35491
+ "type": "string?",
35492
+ "default": null,
35493
+ "description": "Source panel header. Defaults to the localized \"Available\".",
35407
35494
  "isCascading": false,
35408
35495
  "captureUnmatched": false
35409
35496
  },
35410
35497
  {
35411
35498
  "name": "TargetTitle",
35412
- "type": "string",
35413
- "default": "\"Selected\"",
35414
- "description": null,
35499
+ "type": "string?",
35500
+ "default": null,
35501
+ "description": "Target panel header. Defaults to the localized \"Selected\".",
35415
35502
  "isCascading": false,
35416
35503
  "captureUnmatched": false
35417
35504
  },
@@ -35762,7 +35849,7 @@
35762
35849
  "name": "Placement",
35763
35850
  "type": "string",
35764
35851
  "default": "\"top\"",
35765
- "description": null,
35852
+ "description": "Preferred side of the trigger for the confirm popover: \"top\" (default), \"bottom\", \"left\" or \"right\". Forwarded to the underlying Side.",
35766
35853
  "isCascading": false,
35767
35854
  "captureUnmatched": false
35768
35855
  },
@@ -37155,7 +37242,7 @@
37155
37242
  "records": [
37156
37243
  {
37157
37244
  "name": "RadioGroupContext",
37158
- "signature": "RadioGroupContext(\n string? Value,\n EventCallback<string> OnSelect,\n List<string> ItemValues,\n Dictionary<string, string> ItemIds)",
37245
+ "signature": "RadioGroupContext(\n string? Value,\n EventCallback<string> OnSelect,\n List<string> ItemValues,\n Dictionary<string, string> ItemIds,\n Dictionary<string, bool> ItemDisabled)",
37159
37246
  "description": null
37160
37247
  }
37161
37248
  ],
@@ -37190,7 +37277,9 @@
37190
37277
  "fileName": "RadioGroupCard.razor",
37191
37278
  "namespace": "Lumeo",
37192
37279
  "inheritsFrom": null,
37193
- "implements": [],
37280
+ "implements": [
37281
+ "IAsyncDisposable"
37282
+ ],
37194
37283
  "parameters": [
37195
37284
  {
37196
37285
  "name": "Context",
@@ -37245,7 +37334,9 @@
37245
37334
  "fileName": "RadioGroupItem.razor",
37246
37335
  "namespace": "Lumeo",
37247
37336
  "inheritsFrom": null,
37248
- "implements": [],
37337
+ "implements": [
37338
+ "IAsyncDisposable"
37339
+ ],
37249
37340
  "parameters": [
37250
37341
  {
37251
37342
  "name": "Context",
@@ -37852,7 +37943,7 @@
37852
37943
  "records": [
37853
37944
  {
37854
37945
  "name": "ResizablePanelGroupContext",
37855
- "signature": "ResizablePanelGroupContext(\n string GroupId,\n Lumeo.Orientation Direction,\n EventCallback<(int PanelIndex, double Delta)> OnHandleDrag,\n Func<int, double> GetPanelSize,\n int PanelCount,\n Action<int, double, double> RegisterPanel\n )",
37946
+ "signature": "ResizablePanelGroupContext(\n string GroupId,\n Lumeo.Orientation Direction,\n EventCallback<(int PanelIndex, double Delta)> OnHandleDrag,\n Func<int, double> GetPanelSize,\n int PanelCount,\n Action<int, double, double, double> RegisterPanel,\n Func<int, (double MinSize, double MaxSize)> GetPanelConstraints\n )",
37856
37947
  "description": null
37857
37948
  }
37858
37949
  ],
@@ -42960,7 +43051,7 @@
42960
43051
  "name": "Icon",
42961
43052
  "type": "string?",
42962
43053
  "default": null,
42963
- "description": null,
43054
+ "description": "Optional trigger icon override (text/emoji, like Icon). When unset, a Lucide plus icon that rotates into an × while open is rendered.",
42964
43055
  "isCascading": false,
42965
43056
  "captureUnmatched": false
42966
43057
  },
@@ -42984,7 +43075,7 @@
42984
43075
  "name": "Variant",
42985
43076
  "type": "string",
42986
43077
  "default": "\"Default\"",
42987
- "description": null,
43078
+ "description": "Trigger color variant following the Button variant names: \"Default\" (primary), \"Secondary\", \"Destructive\", \"Outline\", \"Ghost\".",
42988
43079
  "isCascading": false,
42989
43080
  "captureUnmatched": false
42990
43081
  },
@@ -43039,7 +43130,13 @@
43039
43130
  "records": [],
43040
43131
  "gotchas": [],
43041
43132
  "cssVars": [
43133
+ "--color-accent",
43134
+ "--color-accent-foreground",
43135
+ "--color-background",
43042
43136
  "--color-border",
43137
+ "--color-destructive",
43138
+ "--color-destructive-foreground",
43139
+ "--color-input",
43043
43140
  "--color-popover",
43044
43141
  "--color-popover-foreground",
43045
43142
  "--color-primary",
@@ -43379,7 +43476,7 @@
43379
43476
  "namespace": "Lumeo",
43380
43477
  "inheritsFrom": null,
43381
43478
  "implements": [
43382
- "IDisposable"
43479
+ "IAsyncDisposable"
43383
43480
  ],
43384
43481
  "parameters": [
43385
43482
  {
@@ -43944,7 +44041,9 @@
43944
44041
  "fileName": "StepperStep.razor",
43945
44042
  "namespace": "Lumeo",
43946
44043
  "inheritsFrom": null,
43947
- "implements": [],
44044
+ "implements": [
44045
+ "IDisposable"
44046
+ ],
43948
44047
  "parameters": [
43949
44048
  {
43950
44049
  "name": "Context",
@@ -45119,7 +45218,7 @@
45119
45218
  "records": [
45120
45219
  {
45121
45220
  "name": "TabsContext",
45122
- "signature": "TabsContext(\n string ActiveValue,\n EventCallback<string> SetValue,\n Lumeo.Orientation Orientation,\n TabsVariant Variant,\n Dictionary<string, (string TabId, string PanelId)> TabIds,\n bool AnimatedIndicator,\n TabsRenderMode RenderMode,\n HashSet<string> ActivatedValues,\n bool SwipeEnabled,\n bool SwipeWrap,\n Action<string> RegisterContent,\n Func<string, Task> SwipeNavigate,\n TabsReorderState Reorder)",
45221
+ "signature": "TabsContext(\n string ActiveValue,\n EventCallback<string> SetValue,\n Lumeo.Orientation Orientation,\n TabsVariant Variant,\n Dictionary<string, (string TabId, string PanelId, bool Disabled)> TabIds,\n bool AnimatedIndicator,\n TabsRenderMode RenderMode,\n HashSet<string> ActivatedValues,\n bool SwipeEnabled,\n bool SwipeWrap,\n Action<string> RegisterContent,\n Action<string> UnregisterContent,\n Func<string, Task> SwipeNavigate,\n TabsReorderState Reorder)",
45123
45222
  "description": null
45124
45223
  }
45125
45224
  ],
@@ -45333,7 +45432,9 @@
45333
45432
  "fileName": "TabsTrigger.razor",
45334
45433
  "namespace": "Lumeo",
45335
45434
  "inheritsFrom": null,
45336
- "implements": [],
45435
+ "implements": [
45436
+ "IAsyncDisposable"
45437
+ ],
45337
45438
  "parameters": [
45338
45439
  {
45339
45440
  "name": "Context",
@@ -48992,6 +49093,11 @@
48992
49093
  "name": "TreeViewItem",
48993
49094
  "signature": "TreeViewItem",
48994
49095
  "description": null
49096
+ },
49097
+ {
49098
+ "name": "TreeViewContext",
49099
+ "signature": "TreeViewContext(TreeView<T> Tree)",
49100
+ "description": "Cascaded once per tree (IsFixed) so recursively-rendered nodes can reach shared tree state: roving focus, search visibility, node ids."
48995
49101
  }
48996
49102
  ],
48997
49103
  "gotchas": [],
@@ -49028,8 +49134,18 @@
49028
49134
  "fileName": "TreeViewNode.razor",
49029
49135
  "namespace": "Lumeo",
49030
49136
  "inheritsFrom": null,
49031
- "implements": [],
49137
+ "implements": [
49138
+ "IAsyncDisposable"
49139
+ ],
49032
49140
  "parameters": [
49141
+ {
49142
+ "name": "Context",
49143
+ "type": "TreeView<T>.TreeViewContext?",
49144
+ "default": null,
49145
+ "description": null,
49146
+ "isCascading": true,
49147
+ "captureUnmatched": false
49148
+ },
49033
49149
  {
49034
49150
  "name": "Item",
49035
49151
  "type": "TreeView<T>.TreeViewItem<T>",
@@ -49046,6 +49162,22 @@
49046
49162
  "isCascading": false,
49047
49163
  "captureUnmatched": false
49048
49164
  },
49165
+ {
49166
+ "name": "PosInSet",
49167
+ "type": "int",
49168
+ "default": "1",
49169
+ "description": null,
49170
+ "isCascading": false,
49171
+ "captureUnmatched": false
49172
+ },
49173
+ {
49174
+ "name": "SetSize",
49175
+ "type": "int",
49176
+ "default": "1",
49177
+ "description": null,
49178
+ "isCascading": false,
49179
+ "captureUnmatched": false
49180
+ },
49049
49181
  {
49050
49182
  "name": "ShowCheckboxes",
49051
49183
  "type": "bool",
package/src/registry.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://lumeo.nativ.sh/registry-schema.json",
3
- "version": "3.12.1",
4
- "generated": "2026-06-04T21:34:25.6323781Z",
3
+ "version": "3.13.0",
4
+ "generated": "2026-06-11T14:21:47.6035773Z",
5
5
  "components": {
6
6
  "accordion": {
7
7
  "name": "Accordion",
@@ -322,7 +322,8 @@
322
322
  "dependencies": [],
323
323
  "packageDependencies": [],
324
324
  "cssVars": [
325
- "--color-foreground"
325
+ "--color-muted",
326
+ "--color-muted-foreground"
326
327
  ],
327
328
  "gotchas": [],
328
329
  "registryUrl": "https://lumeo.nativ.sh/registry/barcode.json"
@@ -3535,7 +3536,13 @@
3535
3536
  "Blazicons.Lucide"
3536
3537
  ],
3537
3538
  "cssVars": [
3539
+ "--color-accent",
3540
+ "--color-accent-foreground",
3541
+ "--color-background",
3538
3542
  "--color-border",
3543
+ "--color-destructive",
3544
+ "--color-destructive-foreground",
3545
+ "--color-input",
3539
3546
  "--color-popover",
3540
3547
  "--color-popover-foreground",
3541
3548
  "--color-primary",