@lumeo-ui/mcp-server 3.2.7 → 3.4.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.2.7",
3
+ "version": "3.4.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,11 +1,11 @@
1
1
  {
2
2
  "$schema": "https://lumeo.nativ.sh/components-api-schema.json",
3
- "version": "3.2.7",
4
- "generated": "2026-05-26T13:03:16.7223772Z",
3
+ "version": "3.4.0",
4
+ "generated": "2026-05-27T17:35:13.2085363Z",
5
5
  "stats": {
6
- "componentCount": 155,
7
- "totalParameters": 3767,
8
- "totalEnums": 66,
6
+ "componentCount": 162,
7
+ "totalParameters": 3846,
8
+ "totalEnums": 69,
9
9
  "totalRecords": 63,
10
10
  "thinFallbacks": []
11
11
  },
@@ -641,7 +641,7 @@
641
641
  "records": [
642
642
  {
643
643
  "name": "AccordionItemContext",
644
- "signature": "AccordionItemContext(string Value, bool Disabled)",
644
+ "signature": "AccordionItemContext(string Value, bool Disabled, string TriggerId, string ContentId)",
645
645
  "description": null
646
646
  }
647
647
  ],
@@ -2207,6 +2207,14 @@
2207
2207
  "isCascading": false,
2208
2208
  "captureUnmatched": false
2209
2209
  },
2210
+ {
2211
+ "name": "AriaLabel",
2212
+ "type": "string?",
2213
+ "default": null,
2214
+ "description": "Accessible name announced for the avatar. When set, the component renders role=\"img\" + aria-label so a screen-reader has something to read. Useful for image-only avatars (no initials in ChildContent) where the user's name is the meaningful AT context.",
2215
+ "isCascading": false,
2216
+ "captureUnmatched": false
2217
+ },
2210
2218
  {
2211
2219
  "name": "Class",
2212
2220
  "type": "string?",
@@ -4576,7 +4584,7 @@
4576
4584
  "records": [
4577
4585
  {
4578
4586
  "name": "CarouselContext",
4579
- "signature": "CarouselContext(\n string ContentId,\n Lumeo.Orientation Orientation,\n bool CanScrollPrev,\n bool CanScrollNext,\n EventCallback ScrollPrev,\n EventCallback ScrollNext\n )",
4587
+ "signature": "CarouselContext(\n string ContentId,\n Lumeo.Orientation Orientation,\n bool CanScrollPrev,\n bool CanScrollNext,\n EventCallback ScrollPrev,\n EventCallback ScrollNext,\n Action<object> RegisterItem,\n Action<object> UnregisterItem\n )",
4580
4588
  "description": null
4581
4589
  }
4582
4590
  ],
@@ -4657,7 +4665,9 @@
4657
4665
  "fileName": "CarouselItem.razor",
4658
4666
  "namespace": "Lumeo",
4659
4667
  "inheritsFrom": null,
4660
- "implements": [],
4668
+ "implements": [
4669
+ "IDisposable"
4670
+ ],
4661
4671
  "parameters": [
4662
4672
  {
4663
4673
  "name": "Context",
@@ -13438,7 +13448,7 @@
13438
13448
  "records": [
13439
13449
  {
13440
13450
  "name": "CollapsibleContext",
13441
- "signature": "CollapsibleContext(bool IsOpen, EventCallback Toggle)",
13451
+ "signature": "CollapsibleContext(bool IsOpen, EventCallback Toggle, string TriggerId, string ContentId)",
13442
13452
  "description": null
13443
13453
  }
13444
13454
  ],
@@ -13990,6 +14000,14 @@
13990
14000
  "isCascading": false,
13991
14001
  "captureUnmatched": false
13992
14002
  },
14003
+ {
14004
+ "name": "AutoFocus",
14005
+ "type": "bool",
14006
+ "default": null,
14007
+ "description": "Focuses the combobox text input on first render. See Input.AutoFocus — the HTML autofocus attribute doesn't work in Blazor WASM, this parameter uses FocusElement after the component has mounted.",
14008
+ "isCascading": false,
14009
+ "captureUnmatched": false
14010
+ },
13993
14011
  {
13994
14012
  "name": "Items",
13995
14013
  "type": "IEnumerable<object>?",
@@ -14091,7 +14109,7 @@
14091
14109
  "records": [
14092
14110
  {
14093
14111
  "name": "ComboboxContext",
14094
- "signature": "ComboboxContext(\n string? Value, HashSet<string>? Values, string SearchText, bool IsOpen, bool Multiple, bool IsSearchLoading, bool Creatable,\n EventCallback<string> OnSelect, EventCallback<bool> SetOpen, EventCallback<string> OnSearch,\n EventCallback<string> OnCreateItem,\n string WrapperId, string ContentId, int FocusedIndex, string? FocusedItemId, string? FocusedItemValue,\n EventCallback<int> SetFocusedIndex,\n Action<string, string> RegisterItem, Action<string> UnregisterItem, int ItemCount,\n bool Invalid, bool Required,\n // Data-bound mode params (null when composition mode)\n IEnumerable<object>? Items,\n Func<object, string> ItemValue,\n Func<object, string>? ItemText,\n Func<object, string?>? ItemGroup,\n Func<object, bool>? ItemDisabled,\n RenderFragment<object>? ItemTemplate,\n bool Virtualize,\n float ItemSize)",
14112
+ "signature": "ComboboxContext(\n string? Value, HashSet<string>? Values, string SearchText, bool IsOpen, bool Multiple, bool IsSearchLoading, bool Creatable,\n EventCallback<string> OnSelect, EventCallback<bool> SetOpen, EventCallback<string> OnSearch,\n EventCallback<string> OnCreateItem,\n string WrapperId, string ContentId, string InputId, int FocusedIndex, string? FocusedItemId, string? FocusedItemValue,\n EventCallback<int> SetFocusedIndex,\n Action<string, string> RegisterItem, Action<string> UnregisterItem, int ItemCount,\n bool Invalid, bool Required,\n // Data-bound mode params (null when composition mode)\n IEnumerable<object>? Items,\n Func<object, string> ItemValue,\n Func<object, string>? ItemText,\n Func<object, string?>? ItemGroup,\n Func<object, bool>? ItemDisabled,\n RenderFragment<object>? ItemTemplate,\n bool Virtualize,\n float ItemSize)",
14095
14113
  "description": null
14096
14114
  }
14097
14115
  ],
@@ -14881,6 +14899,154 @@
14881
14899
  "parseFailed": false,
14882
14900
  "parseError": null
14883
14901
  },
14902
+ "ConfirmButton": {
14903
+ "name": "ConfirmButton",
14904
+ "category": "Utility",
14905
+ "subcategory": null,
14906
+ "description": "Confirm Button component.",
14907
+ "nugetPackage": "Lumeo",
14908
+ "files": [
14909
+ "UI/ConfirmButton/ConfirmButton.razor"
14910
+ ],
14911
+ "namespace": "Lumeo",
14912
+ "inheritsFrom": null,
14913
+ "implements": [],
14914
+ "parameters": [
14915
+ {
14916
+ "name": "ChildContent",
14917
+ "type": "RenderFragment?",
14918
+ "default": null,
14919
+ "description": "Button content (the visible label or icon).",
14920
+ "isCascading": false,
14921
+ "captureUnmatched": false
14922
+ },
14923
+ {
14924
+ "name": "Title",
14925
+ "type": "string?",
14926
+ "default": null,
14927
+ "description": "Title shown at the top of the confirm dialog. Defaults to the AlertDialog default (\"Are you sure?\").",
14928
+ "isCascading": false,
14929
+ "captureUnmatched": false
14930
+ },
14931
+ {
14932
+ "name": "Description",
14933
+ "type": "string?",
14934
+ "default": null,
14935
+ "description": "Optional descriptive body text under the title.",
14936
+ "isCascading": false,
14937
+ "captureUnmatched": false
14938
+ },
14939
+ {
14940
+ "name": "ConfirmText",
14941
+ "type": "string?",
14942
+ "default": null,
14943
+ "description": "Label for the confirm action button. Defaults to \"Continue\".",
14944
+ "isCascading": false,
14945
+ "captureUnmatched": false
14946
+ },
14947
+ {
14948
+ "name": "CancelText",
14949
+ "type": "string?",
14950
+ "default": null,
14951
+ "description": "Label for the cancel action button. Defaults to \"Cancel\".",
14952
+ "isCascading": false,
14953
+ "captureUnmatched": false
14954
+ },
14955
+ {
14956
+ "name": "IsDestructive",
14957
+ "type": "bool",
14958
+ "default": null,
14959
+ "description": "When true, the confirm button is styled as destructive (red) — for delete / remove / discard actions.",
14960
+ "isCascading": false,
14961
+ "captureUnmatched": false
14962
+ },
14963
+ {
14964
+ "name": "OnConfirm",
14965
+ "type": "EventCallback",
14966
+ "default": null,
14967
+ "description": "Fires after the user confirms. Does NOT fire on cancel — listen to OnCancel for that path if needed.",
14968
+ "isCascading": false,
14969
+ "captureUnmatched": false
14970
+ },
14971
+ {
14972
+ "name": "OnCancel",
14973
+ "type": "EventCallback",
14974
+ "default": null,
14975
+ "description": "Fires when the user cancels (or closes the dialog without confirming). Optional — most consumers only care about OnConfirm.",
14976
+ "isCascading": false,
14977
+ "captureUnmatched": false
14978
+ },
14979
+ {
14980
+ "name": "Variant",
14981
+ "type": "Button.ButtonVariant",
14982
+ "default": "Button.ButtonVariant.Default",
14983
+ "description": "Visual variant of the trigger button. Defaults to Default; commonly set to Destructive for delete actions so the button itself is red even before the dialog opens.",
14984
+ "isCascading": false,
14985
+ "captureUnmatched": false
14986
+ },
14987
+ {
14988
+ "name": "Size",
14989
+ "type": "Button.ButtonSize",
14990
+ "default": "Button.ButtonSize.Default",
14991
+ "description": "Size of the trigger button.",
14992
+ "isCascading": false,
14993
+ "captureUnmatched": false
14994
+ },
14995
+ {
14996
+ "name": "Disabled",
14997
+ "type": "bool",
14998
+ "default": null,
14999
+ "description": null,
15000
+ "isCascading": false,
15001
+ "captureUnmatched": false
15002
+ },
15003
+ {
15004
+ "name": "IsLoading",
15005
+ "type": "bool",
15006
+ "default": null,
15007
+ "description": null,
15008
+ "isCascading": false,
15009
+ "captureUnmatched": false
15010
+ },
15011
+ {
15012
+ "name": "Class",
15013
+ "type": "string?",
15014
+ "default": null,
15015
+ "description": null,
15016
+ "isCascading": false,
15017
+ "captureUnmatched": false
15018
+ },
15019
+ {
15020
+ "name": "AdditionalAttributes",
15021
+ "type": "Dictionary<string, object>?",
15022
+ "default": null,
15023
+ "description": null,
15024
+ "isCascading": false,
15025
+ "captureUnmatched": true
15026
+ }
15027
+ ],
15028
+ "events": [
15029
+ {
15030
+ "name": "OnConfirm",
15031
+ "type": "EventCallback",
15032
+ "description": "Fires after the user confirms. Does NOT fire on cancel — listen to OnCancel for that path if needed."
15033
+ },
15034
+ {
15035
+ "name": "OnCancel",
15036
+ "type": "EventCallback",
15037
+ "description": "Fires when the user cancels (or closes the dialog without confirming). Optional — most consumers only care about OnConfirm."
15038
+ }
15039
+ ],
15040
+ "enums": [],
15041
+ "records": [],
15042
+ "cssVars": [
15043
+ "--color-foreground"
15044
+ ],
15045
+ "examples": [],
15046
+ "subComponents": {},
15047
+ "parseFailed": false,
15048
+ "parseError": null
15049
+ },
14884
15050
  "ConsentBanner": {
14885
15051
  "name": "ConsentBanner",
14886
15052
  "category": "Utility",
@@ -15870,6 +16036,82 @@
15870
16036
  "parseFailed": false,
15871
16037
  "parseError": null
15872
16038
  },
16039
+ "CTASection": {
16040
+ "name": "CTASection",
16041
+ "category": "Utility",
16042
+ "subcategory": null,
16043
+ "description": "CTASection component.",
16044
+ "nugetPackage": "Lumeo",
16045
+ "files": [
16046
+ "UI/CTASection/CTASection.razor"
16047
+ ],
16048
+ "namespace": "Lumeo",
16049
+ "inheritsFrom": null,
16050
+ "implements": [],
16051
+ "parameters": [
16052
+ {
16053
+ "name": "Title",
16054
+ "type": "string?",
16055
+ "default": null,
16056
+ "description": null,
16057
+ "isCascading": false,
16058
+ "captureUnmatched": false
16059
+ },
16060
+ {
16061
+ "name": "TitleSlot",
16062
+ "type": "RenderFragment?",
16063
+ "default": null,
16064
+ "description": null,
16065
+ "isCascading": false,
16066
+ "captureUnmatched": false
16067
+ },
16068
+ {
16069
+ "name": "Subtitle",
16070
+ "type": "string?",
16071
+ "default": null,
16072
+ "description": null,
16073
+ "isCascading": false,
16074
+ "captureUnmatched": false
16075
+ },
16076
+ {
16077
+ "name": "Actions",
16078
+ "type": "RenderFragment?",
16079
+ "default": null,
16080
+ "description": null,
16081
+ "isCascading": false,
16082
+ "captureUnmatched": false
16083
+ },
16084
+ {
16085
+ "name": "Class",
16086
+ "type": "string?",
16087
+ "default": null,
16088
+ "description": null,
16089
+ "isCascading": false,
16090
+ "captureUnmatched": false
16091
+ },
16092
+ {
16093
+ "name": "AdditionalAttributes",
16094
+ "type": "Dictionary<string, object>?",
16095
+ "default": null,
16096
+ "description": null,
16097
+ "isCascading": false,
16098
+ "captureUnmatched": true
16099
+ }
16100
+ ],
16101
+ "events": [],
16102
+ "enums": [],
16103
+ "records": [],
16104
+ "cssVars": [
16105
+ "--color-border",
16106
+ "--color-foreground",
16107
+ "--color-muted",
16108
+ "--color-muted-foreground"
16109
+ ],
16110
+ "examples": [],
16111
+ "subComponents": {},
16112
+ "parseFailed": false,
16113
+ "parseError": null
16114
+ },
15873
16115
  "DataGrid": {
15874
16116
  "name": "DataGrid",
15875
16117
  "category": "Data Display",
@@ -16482,6 +16724,14 @@
16482
16724
  "isCascading": false,
16483
16725
  "captureUnmatched": false
16484
16726
  },
16727
+ {
16728
+ "name": "SelectionKeySelector",
16729
+ "type": "Func<TItem, object?>?",
16730
+ "default": null,
16731
+ "description": "Optional key projector that identifies items across re-fetches. In server-mode where Items is a fresh instance per page-load, the default reference-based stale-selection cleanup wipes selections that survived a page. When this selector is set, the grid identifies stale-vs-still-selected rows by comparing keys instead of references — so a selection on page 1 stays applied after a page-2 fetch returns a fresh wrapper for the same logical row. Returning null from the selector for any item falls back to reference equality for that row.",
16732
+ "isCascading": false,
16733
+ "captureUnmatched": false
16734
+ },
16485
16735
  {
16486
16736
  "name": "Class",
16487
16737
  "type": "string?",
@@ -19001,6 +19251,14 @@
19001
19251
  "isCascading": false,
19002
19252
  "captureUnmatched": false
19003
19253
  },
19254
+ {
19255
+ "name": "AutoFocus",
19256
+ "type": "bool",
19257
+ "default": null,
19258
+ "description": "Focuses the date-picker trigger on first render. Whichever trigger element is rendered (button / range-button / masked input) receives the focus via its shared id. See Input.AutoFocus for the rationale.",
19259
+ "isCascading": false,
19260
+ "captureUnmatched": false
19261
+ },
19004
19262
  {
19005
19263
  "name": "AdditionalAttributes",
19006
19264
  "type": "Dictionary<string, object>?",
@@ -21821,6 +22079,14 @@
21821
22079
  "isCascading": false,
21822
22080
  "captureUnmatched": false
21823
22081
  },
22082
+ {
22083
+ "name": "Image",
22084
+ "type": "RenderFragment?",
22085
+ "default": null,
22086
+ "description": "Custom illustration slot for branded empty states. Wins over IconContent when both are provided. Use for SVGs / images where the icon doesn't carry enough brand weight (404, broken state, onboarding hero).",
22087
+ "isCascading": false,
22088
+ "captureUnmatched": false
22089
+ },
21824
22090
  {
21825
22091
  "name": "Title",
21826
22092
  "type": "string?",
@@ -21887,6 +22153,158 @@
21887
22153
  "parseFailed": false,
21888
22154
  "parseError": null
21889
22155
  },
22156
+ "FeatureGrid": {
22157
+ "name": "FeatureGrid",
22158
+ "category": "Utility",
22159
+ "subcategory": null,
22160
+ "description": "Feature Grid component.",
22161
+ "nugetPackage": "Lumeo",
22162
+ "files": [
22163
+ "UI/FeatureGrid/FeatureGrid.razor"
22164
+ ],
22165
+ "namespace": "Lumeo",
22166
+ "inheritsFrom": null,
22167
+ "implements": [],
22168
+ "parameters": [
22169
+ {
22170
+ "name": "Title",
22171
+ "type": "string?",
22172
+ "default": null,
22173
+ "description": null,
22174
+ "isCascading": false,
22175
+ "captureUnmatched": false
22176
+ },
22177
+ {
22178
+ "name": "Subtitle",
22179
+ "type": "string?",
22180
+ "default": null,
22181
+ "description": null,
22182
+ "isCascading": false,
22183
+ "captureUnmatched": false
22184
+ },
22185
+ {
22186
+ "name": "Columns",
22187
+ "type": "int",
22188
+ "default": "3",
22189
+ "description": null,
22190
+ "isCascading": false,
22191
+ "captureUnmatched": false
22192
+ },
22193
+ {
22194
+ "name": "ChildContent",
22195
+ "type": "RenderFragment?",
22196
+ "default": null,
22197
+ "description": null,
22198
+ "isCascading": false,
22199
+ "captureUnmatched": false
22200
+ },
22201
+ {
22202
+ "name": "Class",
22203
+ "type": "string?",
22204
+ "default": null,
22205
+ "description": null,
22206
+ "isCascading": false,
22207
+ "captureUnmatched": false
22208
+ },
22209
+ {
22210
+ "name": "AdditionalAttributes",
22211
+ "type": "Dictionary<string, object>?",
22212
+ "default": null,
22213
+ "description": null,
22214
+ "isCascading": false,
22215
+ "captureUnmatched": true
22216
+ }
22217
+ ],
22218
+ "events": [],
22219
+ "enums": [],
22220
+ "records": [],
22221
+ "cssVars": [
22222
+ "--color-foreground",
22223
+ "--color-muted",
22224
+ "--color-muted-foreground"
22225
+ ],
22226
+ "examples": [],
22227
+ "subComponents": {},
22228
+ "parseFailed": false,
22229
+ "parseError": null
22230
+ },
22231
+ "FeatureItem": {
22232
+ "name": "FeatureItem",
22233
+ "category": "Utility",
22234
+ "subcategory": null,
22235
+ "description": "Feature Item component.",
22236
+ "nugetPackage": "Lumeo",
22237
+ "files": [
22238
+ "UI/FeatureItem/FeatureItem.razor"
22239
+ ],
22240
+ "namespace": "Lumeo",
22241
+ "inheritsFrom": null,
22242
+ "implements": [],
22243
+ "parameters": [
22244
+ {
22245
+ "name": "Title",
22246
+ "type": "string?",
22247
+ "default": null,
22248
+ "description": null,
22249
+ "isCascading": false,
22250
+ "captureUnmatched": false
22251
+ },
22252
+ {
22253
+ "name": "Description",
22254
+ "type": "string?",
22255
+ "default": null,
22256
+ "description": null,
22257
+ "isCascading": false,
22258
+ "captureUnmatched": false
22259
+ },
22260
+ {
22261
+ "name": "Icon",
22262
+ "type": "RenderFragment?",
22263
+ "default": null,
22264
+ "description": null,
22265
+ "isCascading": false,
22266
+ "captureUnmatched": false
22267
+ },
22268
+ {
22269
+ "name": "ChildContent",
22270
+ "type": "RenderFragment?",
22271
+ "default": null,
22272
+ "description": null,
22273
+ "isCascading": false,
22274
+ "captureUnmatched": false
22275
+ },
22276
+ {
22277
+ "name": "Class",
22278
+ "type": "string?",
22279
+ "default": null,
22280
+ "description": null,
22281
+ "isCascading": false,
22282
+ "captureUnmatched": false
22283
+ },
22284
+ {
22285
+ "name": "AdditionalAttributes",
22286
+ "type": "Dictionary<string, object>?",
22287
+ "default": null,
22288
+ "description": null,
22289
+ "isCascading": false,
22290
+ "captureUnmatched": true
22291
+ }
22292
+ ],
22293
+ "events": [],
22294
+ "enums": [],
22295
+ "records": [],
22296
+ "cssVars": [
22297
+ "--color-foreground",
22298
+ "--color-muted",
22299
+ "--color-muted-foreground",
22300
+ "--color-primary",
22301
+ "--radius"
22302
+ ],
22303
+ "examples": [],
22304
+ "subComponents": {},
22305
+ "parseFailed": false,
22306
+ "parseError": null
22307
+ },
21890
22308
  "FileManager": {
21891
22309
  "name": "FileManager",
21892
22310
  "category": "Data Display",
@@ -23944,6 +24362,123 @@
23944
24362
  "parseFailed": false,
23945
24363
  "parseError": null
23946
24364
  },
24365
+ "Hero": {
24366
+ "name": "Hero",
24367
+ "category": "Utility",
24368
+ "subcategory": null,
24369
+ "description": "Hero component.",
24370
+ "nugetPackage": "Lumeo",
24371
+ "files": [
24372
+ "UI/Hero/Hero.razor"
24373
+ ],
24374
+ "namespace": "Lumeo",
24375
+ "inheritsFrom": null,
24376
+ "implements": [],
24377
+ "parameters": [
24378
+ {
24379
+ "name": "Title",
24380
+ "type": "string?",
24381
+ "default": null,
24382
+ "description": null,
24383
+ "isCascading": false,
24384
+ "captureUnmatched": false
24385
+ },
24386
+ {
24387
+ "name": "TitleSlot",
24388
+ "type": "RenderFragment?",
24389
+ "default": null,
24390
+ "description": null,
24391
+ "isCascading": false,
24392
+ "captureUnmatched": false
24393
+ },
24394
+ {
24395
+ "name": "Subtitle",
24396
+ "type": "string?",
24397
+ "default": null,
24398
+ "description": null,
24399
+ "isCascading": false,
24400
+ "captureUnmatched": false
24401
+ },
24402
+ {
24403
+ "name": "SubtitleSlot",
24404
+ "type": "RenderFragment?",
24405
+ "default": null,
24406
+ "description": null,
24407
+ "isCascading": false,
24408
+ "captureUnmatched": false
24409
+ },
24410
+ {
24411
+ "name": "Eyebrow",
24412
+ "type": "RenderFragment?",
24413
+ "default": null,
24414
+ "description": null,
24415
+ "isCascading": false,
24416
+ "captureUnmatched": false
24417
+ },
24418
+ {
24419
+ "name": "Actions",
24420
+ "type": "RenderFragment?",
24421
+ "default": null,
24422
+ "description": null,
24423
+ "isCascading": false,
24424
+ "captureUnmatched": false
24425
+ },
24426
+ {
24427
+ "name": "Media",
24428
+ "type": "RenderFragment?",
24429
+ "default": null,
24430
+ "description": null,
24431
+ "isCascading": false,
24432
+ "captureUnmatched": false
24433
+ },
24434
+ {
24435
+ "name": "Alignment",
24436
+ "type": "HeroAlignment",
24437
+ "default": "HeroAlignment.Start",
24438
+ "description": null,
24439
+ "isCascading": false,
24440
+ "captureUnmatched": false
24441
+ },
24442
+ {
24443
+ "name": "Class",
24444
+ "type": "string?",
24445
+ "default": null,
24446
+ "description": null,
24447
+ "isCascading": false,
24448
+ "captureUnmatched": false
24449
+ },
24450
+ {
24451
+ "name": "AdditionalAttributes",
24452
+ "type": "Dictionary<string, object>?",
24453
+ "default": null,
24454
+ "description": null,
24455
+ "isCascading": false,
24456
+ "captureUnmatched": true
24457
+ }
24458
+ ],
24459
+ "events": [],
24460
+ "enums": [
24461
+ {
24462
+ "name": "HeroAlignment",
24463
+ "values": [
24464
+ "Start",
24465
+ "Center",
24466
+ "End"
24467
+ ],
24468
+ "description": null
24469
+ }
24470
+ ],
24471
+ "records": [],
24472
+ "cssVars": [
24473
+ "--color-foreground",
24474
+ "--color-muted",
24475
+ "--color-muted-foreground"
24476
+ ],
24477
+ "examples": [],
24478
+ "subComponents": {},
24479
+ "parseFailed": false,
24480
+ "parseError": null
24481
+ },
23947
24482
  "Highlighter": {
23948
24483
  "name": "Highlighter",
23949
24484
  "category": "Typography",
@@ -25088,6 +25623,22 @@
25088
25623
  "isCascading": false,
25089
25624
  "captureUnmatched": false
25090
25625
  },
25626
+ {
25627
+ "name": "AutoFocus",
25628
+ "type": "bool",
25629
+ "default": null,
25630
+ "description": "Focuses the underlying &lt;input&gt; on first render. The HTML autofocus attribute doesn't work in Blazor WASM because the browser's autofocus algorithm runs during initial document parsing — at parse time the WASM runtime hasn't booted yet and no &lt;input&gt; exists for it to focus. This parameter uses ElementReference.FocusAsync in OnAfterRenderAsync(firstRender) which is the canonical workaround.",
25631
+ "isCascading": false,
25632
+ "captureUnmatched": false
25633
+ },
25634
+ {
25635
+ "name": "Variant",
25636
+ "type": "InputVariant",
25637
+ "default": "InputVariant.Default",
25638
+ "description": "Visual / semantic input variant. Default is the plain text input. Search auto-renders a search icon prefix, sets type=\"search\" (gives platforms a clear-button + IME hints), and applies a search-friendly minimum width so the field doesn't collapse in narrow flex containers — replaces the min-w-[180px] max-w-md + manual icon prefix consumers previously shipped at every search field call-site.",
25639
+ "isCascading": false,
25640
+ "captureUnmatched": false
25641
+ },
25091
25642
  {
25092
25643
  "name": "Class",
25093
25644
  "type": "string?",
@@ -25122,7 +25673,16 @@
25122
25673
  "description": null
25123
25674
  }
25124
25675
  ],
25125
- "enums": [],
25676
+ "enums": [
25677
+ {
25678
+ "name": "InputVariant",
25679
+ "values": [
25680
+ "Default",
25681
+ "Search"
25682
+ ],
25683
+ "description": null
25684
+ }
25685
+ ],
25126
25686
  "records": [],
25127
25687
  "cssVars": [
25128
25688
  "--color-destructive",
@@ -28819,6 +29379,14 @@
28819
29379
  "isCascading": false,
28820
29380
  "captureUnmatched": false
28821
29381
  },
29382
+ {
29383
+ "name": "IsActive",
29384
+ "type": "bool",
29385
+ "default": null,
29386
+ "description": "When true, the link is the user's current location and is rendered with aria-current=\"page\". Lets screen-reader users identify the active item in a nav landmark.",
29387
+ "isCascading": false,
29388
+ "captureUnmatched": false
29389
+ },
28822
29390
  {
28823
29391
  "name": "ChildContent",
28824
29392
  "type": "RenderFragment?",
@@ -29238,6 +29806,14 @@
29238
29806
  "isCascading": false,
29239
29807
  "captureUnmatched": false
29240
29808
  },
29809
+ {
29810
+ "name": "AutoFocus",
29811
+ "type": "bool",
29812
+ "default": null,
29813
+ "description": "Focuses the underlying number &lt;input&gt; on first render. See Input.AutoFocus for why the HTML autofocus attribute doesn't work in Blazor WASM.",
29814
+ "isCascading": false,
29815
+ "captureUnmatched": false
29816
+ },
29241
29817
  {
29242
29818
  "name": "Class",
29243
29819
  "type": "string?",
@@ -29555,6 +30131,14 @@
29555
30131
  "isCascading": false,
29556
30132
  "captureUnmatched": false
29557
30133
  },
30134
+ {
30135
+ "name": "AutoFocus",
30136
+ "type": "bool",
30137
+ "default": null,
30138
+ "description": "Focuses the first OTP digit input on first render. Useful for the typical OTP flow where the field appears right after a \"code sent\" screen and the user should be typing immediately. See Input.AutoFocus for why the HTML autofocus attribute doesn't work in Blazor WASM.",
30139
+ "isCascading": false,
30140
+ "captureUnmatched": false
30141
+ },
29558
30142
  {
29559
30143
  "name": "Class",
29560
30144
  "type": "string?",
@@ -29635,7 +30219,7 @@
29635
30219
  "enums": [],
29636
30220
  "records": [],
29637
30221
  "cssVars": [
29638
- "--color-foreground"
30222
+ "--radius"
29639
30223
  ],
29640
30224
  "examples": [
29641
30225
  {
@@ -29655,6 +30239,114 @@
29655
30239
  "parseFailed": false,
29656
30240
  "parseError": null
29657
30241
  },
30242
+ "OverlayForm": {
30243
+ "name": "OverlayForm",
30244
+ "category": "Utility",
30245
+ "subcategory": null,
30246
+ "description": "Overlay Form component.",
30247
+ "nugetPackage": "Lumeo",
30248
+ "files": [
30249
+ "UI/OverlayForm/OverlayForm.razor"
30250
+ ],
30251
+ "namespace": "Lumeo",
30252
+ "inheritsFrom": null,
30253
+ "implements": [],
30254
+ "parameters": [
30255
+ {
30256
+ "name": "Model",
30257
+ "type": "object",
30258
+ "default": "default!",
30259
+ "description": null,
30260
+ "isCascading": false,
30261
+ "captureUnmatched": false
30262
+ },
30263
+ {
30264
+ "name": "OnValidSubmit",
30265
+ "type": "EventCallback<EditContext>",
30266
+ "default": null,
30267
+ "description": null,
30268
+ "isCascading": false,
30269
+ "captureUnmatched": false
30270
+ },
30271
+ {
30272
+ "name": "OnInvalidSubmit",
30273
+ "type": "EventCallback<EditContext>",
30274
+ "default": null,
30275
+ "description": null,
30276
+ "isCascading": false,
30277
+ "captureUnmatched": false
30278
+ },
30279
+ {
30280
+ "name": "Header",
30281
+ "type": "RenderFragment?",
30282
+ "default": null,
30283
+ "description": null,
30284
+ "isCascading": false,
30285
+ "captureUnmatched": false
30286
+ },
30287
+ {
30288
+ "name": "Body",
30289
+ "type": "RenderFragment?",
30290
+ "default": null,
30291
+ "description": null,
30292
+ "isCascading": false,
30293
+ "captureUnmatched": false
30294
+ },
30295
+ {
30296
+ "name": "Footer",
30297
+ "type": "RenderFragment?",
30298
+ "default": null,
30299
+ "description": null,
30300
+ "isCascading": false,
30301
+ "captureUnmatched": false
30302
+ },
30303
+ {
30304
+ "name": "Validator",
30305
+ "type": "RenderFragment?",
30306
+ "default": null,
30307
+ "description": "Override the default DataAnnotationsValidator with a custom validator (e.g. FluentValidationValidator).",
30308
+ "isCascading": false,
30309
+ "captureUnmatched": false
30310
+ },
30311
+ {
30312
+ "name": "Class",
30313
+ "type": "string?",
30314
+ "default": null,
30315
+ "description": null,
30316
+ "isCascading": false,
30317
+ "captureUnmatched": false
30318
+ },
30319
+ {
30320
+ "name": "AdditionalAttributes",
30321
+ "type": "Dictionary<string, object>?",
30322
+ "default": null,
30323
+ "description": null,
30324
+ "isCascading": false,
30325
+ "captureUnmatched": true
30326
+ }
30327
+ ],
30328
+ "events": [
30329
+ {
30330
+ "name": "OnValidSubmit",
30331
+ "type": "EventCallback<EditContext>",
30332
+ "description": null
30333
+ },
30334
+ {
30335
+ "name": "OnInvalidSubmit",
30336
+ "type": "EventCallback<EditContext>",
30337
+ "description": null
30338
+ }
30339
+ ],
30340
+ "enums": [],
30341
+ "records": [],
30342
+ "cssVars": [
30343
+ "--color-border"
30344
+ ],
30345
+ "examples": [],
30346
+ "subComponents": {},
30347
+ "parseFailed": false,
30348
+ "parseError": null
30349
+ },
29658
30350
  "Pagination": {
29659
30351
  "name": "Pagination",
29660
30352
  "category": "Navigation",
@@ -30081,6 +30773,14 @@
30081
30773
  "isCascading": false,
30082
30774
  "captureUnmatched": false
30083
30775
  },
30776
+ {
30777
+ "name": "AutoFocus",
30778
+ "type": "bool",
30779
+ "default": null,
30780
+ "description": "Focuses the underlying password &lt;input&gt; on first render. See Input.AutoFocus for why the HTML autofocus attribute doesn't work in Blazor WASM.",
30781
+ "isCascading": false,
30782
+ "captureUnmatched": false
30783
+ },
30084
30784
  {
30085
30785
  "name": "Class",
30086
30786
  "type": "string?",
@@ -30193,6 +30893,14 @@
30193
30893
  "isCascading": false,
30194
30894
  "captureUnmatched": false
30195
30895
  },
30896
+ {
30897
+ "name": "FitMode",
30898
+ "type": "PdfFitMode",
30899
+ "default": "PdfFitMode.Custom",
30900
+ "description": "Fit-to-container mode that overrides Zoom when set to a non-Custom value. FitWidth scales the page so its width matches the scroll-parent's clientWidth (minus a 16px padding for breathing room before the scrollbar). FitPage scales so the whole page fits within the scroll-parent's box. JS computes the ratio on each render, so a container resize that triggers OnParametersSet re-renders the page at the new fit. Set back to Custom to return control to the numeric Zoom value.",
30901
+ "isCascading": false,
30902
+ "captureUnmatched": false
30903
+ },
30196
30904
  {
30197
30905
  "name": "ShowToolbar",
30198
30906
  "type": "bool",
@@ -30309,7 +31017,17 @@
30309
31017
  "description": "Fires when the underlying JS load/render fails (CDN unreachable, malformed PDF, worker init failure, …). Receives the exception message. Consumers can use this to surface their own error UI; the built-in EmptyState fallback renders regardless."
30310
31018
  }
30311
31019
  ],
30312
- "enums": [],
31020
+ "enums": [
31021
+ {
31022
+ "name": "PdfFitMode",
31023
+ "values": [
31024
+ "Custom",
31025
+ "FitWidth",
31026
+ "FitPage"
31027
+ ],
31028
+ "description": null
31029
+ }
31030
+ ],
30313
31031
  "records": [],
30314
31032
  "cssVars": [
30315
31033
  "--color-accent",
@@ -31715,6 +32433,14 @@
31715
32433
  "isCascading": false,
31716
32434
  "captureUnmatched": false
31717
32435
  },
32436
+ {
32437
+ "name": "AriaLabel",
32438
+ "type": "string?",
32439
+ "default": null,
32440
+ "description": "Override the accessible label announced for the QR code. Defaults to \"QR code: {Value}\". Useful when the encoded payload is a long URL or technical string the user doesn't need read out — pass a human-friendly description instead.",
32441
+ "isCascading": false,
32442
+ "captureUnmatched": false
32443
+ },
31718
32444
  {
31719
32445
  "name": "Class",
31720
32446
  "type": "string?",
@@ -34683,6 +35409,14 @@
34683
35409
  "isCascading": false,
34684
35410
  "captureUnmatched": false
34685
35411
  },
35412
+ {
35413
+ "name": "AutoFocus",
35414
+ "type": "bool",
35415
+ "default": null,
35416
+ "description": "Focuses the select's trigger button on first render. See Input.AutoFocus — the HTML autofocus attribute doesn't work in Blazor WASM, this parameter uses FocusElement after mount.",
35417
+ "isCascading": false,
35418
+ "captureUnmatched": false
35419
+ },
34686
35420
  {
34687
35421
  "name": "AdditionalAttributes",
34688
35422
  "type": "Dictionary<string, object>?",
@@ -34787,7 +35521,7 @@
34787
35521
  "records": [
34788
35522
  {
34789
35523
  "name": "SelectContext",
34790
- "signature": "SelectContext(\n string? Value, bool IsOpen, bool Searchable, string SearchText,\n bool Multiple, List<string>? Values, bool IsLoading, bool Disabled, bool Clearable, bool Creatable, int MaxDisplayTags,\n EventCallback<string> OnSelect, EventCallback<bool> SetOpen, EventCallback<string> OnSearch,\n EventCallback OnClear, EventCallback<string> OnCreateItem,\n string WrapperId, string ContentId, int FocusedIndex, string? FocusedItemId, string? FocusedItemValue,\n EventCallback<int> SetFocusedIndex,\n Action<string, string> RegisterItem, Action<string> UnregisterItem,\n bool Invalid, bool Required,\n // Data-bound mode params (null when composition mode)\n IEnumerable<object>? Items,\n Func<object, string> ItemValue,\n Func<object, string>? ItemText,\n Func<object, string?>? ItemGroup,\n Func<object, bool>? ItemDisabled,\n RenderFragment<object>? ItemTemplate,\n bool Virtualize,\n float ItemSize)",
35524
+ "signature": "SelectContext(\n string? Value, bool IsOpen, bool Searchable, string SearchText,\n bool Multiple, List<string>? Values, bool IsLoading, bool Disabled, bool Clearable, bool Creatable, int MaxDisplayTags,\n EventCallback<string> OnSelect, EventCallback<bool> SetOpen, EventCallback<string> OnSearch,\n EventCallback OnClear, EventCallback<string> OnCreateItem,\n string WrapperId, string ContentId, string TriggerId, int FocusedIndex, string? FocusedItemId, string? FocusedItemValue,\n EventCallback<int> SetFocusedIndex,\n Action<string, string> RegisterItem, Action<string> UnregisterItem,\n bool Invalid, bool Required,\n // Data-bound mode params (null when composition mode)\n IEnumerable<object>? Items,\n Func<object, string> ItemValue,\n Func<object, string>? ItemText,\n Func<object, string?>? ItemGroup,\n Func<object, bool>? ItemDisabled,\n RenderFragment<object>? ItemTemplate,\n bool Virtualize,\n float ItemSize)",
34791
35525
  "description": null
34792
35526
  }
34793
35527
  ],
@@ -37236,7 +37970,15 @@
37236
37970
  "name": "Size",
37237
37971
  "type": "string?",
37238
37972
  "default": null,
37239
- "description": null,
37973
+ "description": "Tailwind size token (e.g. \"4\", \"px\"). When set, renders a fixed-size square spacer. When unset, renders a flex-grow spacer that fills available space along the parent flex axis.",
37974
+ "isCascading": false,
37975
+ "captureUnmatched": false
37976
+ },
37977
+ {
37978
+ "name": "Orientation",
37979
+ "type": "Lumeo.Orientation",
37980
+ "default": "Lumeo.Orientation.Horizontal",
37981
+ "description": "Hints which axis the parent flex container uses so the grow-spacer collapses to zero on the cross-axis instead of expanding it. Default Horizontal keeps the historical behaviour (flex-1 inside a row). Switch to Vertical when the parent is a column stack — without it, the spacer's flex-1 took width from the column instead of pushing siblings to opposite ends.",
37240
37982
  "isCascading": false,
37241
37983
  "captureUnmatched": false
37242
37984
  },
@@ -40211,6 +40953,14 @@
40211
40953
  "isCascading": false,
40212
40954
  "captureUnmatched": false
40213
40955
  },
40956
+ {
40957
+ "name": "AutoFocus",
40958
+ "type": "bool",
40959
+ "default": null,
40960
+ "description": "Focuses the inner text &lt;input&gt; on first render. See Input.AutoFocus for why the HTML autofocus attribute doesn't work in Blazor WASM.",
40961
+ "isCascading": false,
40962
+ "captureUnmatched": false
40963
+ },
40214
40964
  {
40215
40965
  "name": "MaxTagsHelperText",
40216
40966
  "type": "string?",
@@ -40478,7 +41228,9 @@
40478
41228
  ],
40479
41229
  "namespace": "Lumeo",
40480
41230
  "inheritsFrom": null,
40481
- "implements": [],
41231
+ "implements": [
41232
+ "IAsyncDisposable"
41233
+ ],
40482
41234
  "parameters": [
40483
41235
  {
40484
41236
  "name": "FormField",
@@ -40608,6 +41360,14 @@
40608
41360
  "isCascading": false,
40609
41361
  "captureUnmatched": false
40610
41362
  },
41363
+ {
41364
+ "name": "AutoFocus",
41365
+ "type": "bool",
41366
+ "default": null,
41367
+ "description": "Focuses the underlying &lt;textarea&gt; on first render. See Input.AutoFocus — the HTML autofocus attribute doesn't work in Blazor WASM because parse-time has already passed by the time the runtime adds the element to the DOM.",
41368
+ "isCascading": false,
41369
+ "captureUnmatched": false
41370
+ },
40611
41371
  {
40612
41372
  "name": "Class",
40613
41373
  "type": "string?",
@@ -43718,6 +44478,136 @@
43718
44478
  "parseFailed": false,
43719
44479
  "parseError": null
43720
44480
  },
44481
+ "UploadTrigger": {
44482
+ "name": "UploadTrigger",
44483
+ "category": "Utility",
44484
+ "subcategory": null,
44485
+ "description": "Upload Trigger component.",
44486
+ "nugetPackage": "Lumeo",
44487
+ "files": [
44488
+ "UI/UploadTrigger/UploadTrigger.razor"
44489
+ ],
44490
+ "namespace": "Lumeo",
44491
+ "inheritsFrom": null,
44492
+ "implements": [],
44493
+ "parameters": [
44494
+ {
44495
+ "name": "OnFilesSelected",
44496
+ "type": "EventCallback<InputFileChangeEventArgs>",
44497
+ "default": null,
44498
+ "description": "Files chosen in the picker. Fires once per picker confirmation; the consumer is responsible for any subsequent state / upload logic.",
44499
+ "isCascading": false,
44500
+ "captureUnmatched": false
44501
+ },
44502
+ {
44503
+ "name": "Multiple",
44504
+ "type": "bool",
44505
+ "default": null,
44506
+ "description": "Allow multiple files. Maps to the native picker's multi-select.",
44507
+ "isCascading": false,
44508
+ "captureUnmatched": false
44509
+ },
44510
+ {
44511
+ "name": "Accept",
44512
+ "type": "string?",
44513
+ "default": null,
44514
+ "description": "MIME-type / extension filter passed to accept=. E.g. \"image/*\", \".pdf,.docx\". Null = no filter.",
44515
+ "isCascading": false,
44516
+ "captureUnmatched": false
44517
+ },
44518
+ {
44519
+ "name": "Disabled",
44520
+ "type": "bool",
44521
+ "default": null,
44522
+ "description": "Disables the trigger.",
44523
+ "isCascading": false,
44524
+ "captureUnmatched": false
44525
+ },
44526
+ {
44527
+ "name": "Variant",
44528
+ "type": "Button.ButtonVariant",
44529
+ "default": "Button.ButtonVariant.Default",
44530
+ "description": "Visual variant. Matches the corresponding Button variant so the trigger composes visually with surrounding buttons.",
44531
+ "isCascading": false,
44532
+ "captureUnmatched": false
44533
+ },
44534
+ {
44535
+ "name": "Size",
44536
+ "type": "Button.ButtonSize",
44537
+ "default": "Button.ButtonSize.Default",
44538
+ "description": "Size. Matches the corresponding Button size.",
44539
+ "isCascading": false,
44540
+ "captureUnmatched": false
44541
+ },
44542
+ {
44543
+ "name": "Text",
44544
+ "type": "string?",
44545
+ "default": null,
44546
+ "description": "Trigger label. Falls back to localized \"Pick a file\" when null. Ignored if ChildContent is provided.",
44547
+ "isCascading": false,
44548
+ "captureUnmatched": false
44549
+ },
44550
+ {
44551
+ "name": "ChildContent",
44552
+ "type": "RenderFragment?",
44553
+ "default": null,
44554
+ "description": "Custom label content. Overrides Text.",
44555
+ "isCascading": false,
44556
+ "captureUnmatched": false
44557
+ },
44558
+ {
44559
+ "name": "Icon",
44560
+ "type": "RenderFragment?",
44561
+ "default": null,
44562
+ "description": "Custom leading icon. Defaults to Lucide.Upload.",
44563
+ "isCascading": false,
44564
+ "captureUnmatched": false
44565
+ },
44566
+ {
44567
+ "name": "Class",
44568
+ "type": "string?",
44569
+ "default": null,
44570
+ "description": null,
44571
+ "isCascading": false,
44572
+ "captureUnmatched": false
44573
+ },
44574
+ {
44575
+ "name": "AdditionalAttributes",
44576
+ "type": "Dictionary<string, object>?",
44577
+ "default": null,
44578
+ "description": null,
44579
+ "isCascading": false,
44580
+ "captureUnmatched": true
44581
+ }
44582
+ ],
44583
+ "events": [
44584
+ {
44585
+ "name": "OnFilesSelected",
44586
+ "type": "EventCallback<InputFileChangeEventArgs>",
44587
+ "description": "Files chosen in the picker. Fires once per picker confirmation; the consumer is responsible for any subsequent state / upload logic."
44588
+ }
44589
+ ],
44590
+ "enums": [],
44591
+ "records": [],
44592
+ "cssVars": [
44593
+ "--color-accent",
44594
+ "--color-accent-foreground",
44595
+ "--color-background",
44596
+ "--color-destructive",
44597
+ "--color-destructive-foreground",
44598
+ "--color-input",
44599
+ "--color-primary",
44600
+ "--color-primary-foreground",
44601
+ "--color-ring",
44602
+ "--color-secondary",
44603
+ "--color-secondary-foreground",
44604
+ "--radius"
44605
+ ],
44606
+ "examples": [],
44607
+ "subComponents": {},
44608
+ "parseFailed": false,
44609
+ "parseError": null
44610
+ },
43721
44611
  "Watermark": {
43722
44612
  "name": "Watermark",
43723
44613
  "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.7",
4
- "generated": "2026-05-26T13:03:15.3872546Z",
3
+ "version": "3.4.0",
4
+ "generated": "2026-05-27T17:35:11.8614857Z",
5
5
  "components": {
6
6
  "accordion": {
7
7
  "name": "Accordion",
@@ -916,6 +916,26 @@
916
916
  ],
917
917
  "registryUrl": "https://lumeo.nativ.sh/registry/confetti.json"
918
918
  },
919
+ "confirm-button": {
920
+ "name": "ConfirmButton",
921
+ "category": "Utility",
922
+ "subcategory": null,
923
+ "description": "Confirm Button component.",
924
+ "thumbnail": "/preview-cards/confirm-button.png",
925
+ "hasDocsPage": false,
926
+ "nugetPackage": "Lumeo",
927
+ "files": [
928
+ "UI/ConfirmButton/ConfirmButton.razor"
929
+ ],
930
+ "dependencies": [
931
+ "button"
932
+ ],
933
+ "packageDependencies": [],
934
+ "cssVars": [
935
+ "--color-foreground"
936
+ ],
937
+ "registryUrl": "https://lumeo.nativ.sh/registry/confirm-button.json"
938
+ },
919
939
  "consent-banner": {
920
940
  "name": "ConsentBanner",
921
941
  "category": "Utility",
@@ -1002,6 +1022,27 @@
1002
1022
  ],
1003
1023
  "registryUrl": "https://lumeo.nativ.sh/registry/context-menu.json"
1004
1024
  },
1025
+ "cta-section": {
1026
+ "name": "CTASection",
1027
+ "category": "Utility",
1028
+ "subcategory": null,
1029
+ "description": "CTASection component.",
1030
+ "thumbnail": "/preview-cards/cta-section.png",
1031
+ "hasDocsPage": false,
1032
+ "nugetPackage": "Lumeo",
1033
+ "files": [
1034
+ "UI/CTASection/CTASection.razor"
1035
+ ],
1036
+ "dependencies": [],
1037
+ "packageDependencies": [],
1038
+ "cssVars": [
1039
+ "--color-border",
1040
+ "--color-foreground",
1041
+ "--color-muted",
1042
+ "--color-muted-foreground"
1043
+ ],
1044
+ "registryUrl": "https://lumeo.nativ.sh/registry/cta-section.json"
1045
+ },
1005
1046
  "data-grid": {
1006
1047
  "name": "DataGrid",
1007
1048
  "category": "Data Display",
@@ -1381,6 +1422,50 @@
1381
1422
  ],
1382
1423
  "registryUrl": "https://lumeo.nativ.sh/registry/empty-state.json"
1383
1424
  },
1425
+ "feature-grid": {
1426
+ "name": "FeatureGrid",
1427
+ "category": "Utility",
1428
+ "subcategory": null,
1429
+ "description": "Feature Grid component.",
1430
+ "thumbnail": "/preview-cards/feature-grid.png",
1431
+ "hasDocsPage": false,
1432
+ "nugetPackage": "Lumeo",
1433
+ "files": [
1434
+ "UI/FeatureGrid/FeatureGrid.razor"
1435
+ ],
1436
+ "dependencies": [
1437
+ "feature-item"
1438
+ ],
1439
+ "packageDependencies": [],
1440
+ "cssVars": [
1441
+ "--color-foreground",
1442
+ "--color-muted",
1443
+ "--color-muted-foreground"
1444
+ ],
1445
+ "registryUrl": "https://lumeo.nativ.sh/registry/feature-grid.json"
1446
+ },
1447
+ "feature-item": {
1448
+ "name": "FeatureItem",
1449
+ "category": "Utility",
1450
+ "subcategory": null,
1451
+ "description": "Feature Item component.",
1452
+ "thumbnail": "/preview-cards/feature-item.png",
1453
+ "hasDocsPage": false,
1454
+ "nugetPackage": "Lumeo",
1455
+ "files": [
1456
+ "UI/FeatureItem/FeatureItem.razor"
1457
+ ],
1458
+ "dependencies": [],
1459
+ "packageDependencies": [],
1460
+ "cssVars": [
1461
+ "--color-foreground",
1462
+ "--color-muted",
1463
+ "--color-muted-foreground",
1464
+ "--color-primary",
1465
+ "--radius"
1466
+ ],
1467
+ "registryUrl": "https://lumeo.nativ.sh/registry/feature-item.json"
1468
+ },
1384
1469
  "file-manager": {
1385
1470
  "name": "FileManager",
1386
1471
  "category": "Data Display",
@@ -1640,6 +1725,26 @@
1640
1725
  ],
1641
1726
  "registryUrl": "https://lumeo.nativ.sh/registry/heading.json"
1642
1727
  },
1728
+ "hero": {
1729
+ "name": "Hero",
1730
+ "category": "Utility",
1731
+ "subcategory": null,
1732
+ "description": "Hero component.",
1733
+ "thumbnail": "/preview-cards/hero.png",
1734
+ "hasDocsPage": false,
1735
+ "nugetPackage": "Lumeo",
1736
+ "files": [
1737
+ "UI/Hero/Hero.razor"
1738
+ ],
1739
+ "dependencies": [],
1740
+ "packageDependencies": [],
1741
+ "cssVars": [
1742
+ "--color-foreground",
1743
+ "--color-muted",
1744
+ "--color-muted-foreground"
1745
+ ],
1746
+ "registryUrl": "https://lumeo.nativ.sh/registry/hero.json"
1747
+ },
1643
1748
  "highlighter": {
1644
1749
  "name": "Highlighter",
1645
1750
  "category": "Typography",
@@ -2244,10 +2349,31 @@
2244
2349
  ],
2245
2350
  "packageDependencies": [],
2246
2351
  "cssVars": [
2247
- "--color-foreground"
2352
+ "--radius"
2248
2353
  ],
2249
2354
  "registryUrl": "https://lumeo.nativ.sh/registry/overlay.json"
2250
2355
  },
2356
+ "overlay-form": {
2357
+ "name": "OverlayForm",
2358
+ "category": "Utility",
2359
+ "subcategory": null,
2360
+ "description": "Overlay Form component.",
2361
+ "thumbnail": "/preview-cards/overlay-form.png",
2362
+ "hasDocsPage": false,
2363
+ "nugetPackage": "Lumeo",
2364
+ "files": [
2365
+ "UI/OverlayForm/OverlayForm.razor"
2366
+ ],
2367
+ "dependencies": [
2368
+ "button",
2369
+ "form"
2370
+ ],
2371
+ "packageDependencies": [],
2372
+ "cssVars": [
2373
+ "--color-border"
2374
+ ],
2375
+ "registryUrl": "https://lumeo.nativ.sh/registry/overlay-form.json"
2376
+ },
2251
2377
  "pagination": {
2252
2378
  "name": "Pagination",
2253
2379
  "category": "Navigation",
@@ -4057,6 +4183,39 @@
4057
4183
  ],
4058
4184
  "registryUrl": "https://lumeo.nativ.sh/registry/tree-view.json"
4059
4185
  },
4186
+ "upload-trigger": {
4187
+ "name": "UploadTrigger",
4188
+ "category": "Utility",
4189
+ "subcategory": null,
4190
+ "description": "Upload Trigger component.",
4191
+ "thumbnail": "/preview-cards/upload-trigger.png",
4192
+ "hasDocsPage": false,
4193
+ "nugetPackage": "Lumeo",
4194
+ "files": [
4195
+ "UI/UploadTrigger/UploadTrigger.razor"
4196
+ ],
4197
+ "dependencies": [
4198
+ "input"
4199
+ ],
4200
+ "packageDependencies": [
4201
+ "Blazicons.Lucide"
4202
+ ],
4203
+ "cssVars": [
4204
+ "--color-accent",
4205
+ "--color-accent-foreground",
4206
+ "--color-background",
4207
+ "--color-destructive",
4208
+ "--color-destructive-foreground",
4209
+ "--color-input",
4210
+ "--color-primary",
4211
+ "--color-primary-foreground",
4212
+ "--color-ring",
4213
+ "--color-secondary",
4214
+ "--color-secondary-foreground",
4215
+ "--radius"
4216
+ ],
4217
+ "registryUrl": "https://lumeo.nativ.sh/registry/upload-trigger.json"
4218
+ },
4060
4219
  "watermark": {
4061
4220
  "name": "Watermark",
4062
4221
  "category": "Data Display",