@lumeo-ui/mcp-server 2.0.0-rc.35 → 2.0.0-rc.36

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": "2.0.0-rc.35",
3
+ "version": "2.0.0-rc.36",
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": "2.0.0-rc.35",
4
- "generated": "2026-05-12T20:42:26.5402362Z",
3
+ "version": "2.0.0-rc.36",
4
+ "generated": "2026-05-13T06:19:03.9303031Z",
5
5
  "stats": {
6
6
  "componentCount": 145,
7
- "totalParameters": 3423,
7
+ "totalParameters": 3431,
8
8
  "totalEnums": 101,
9
- "totalRecords": 56,
9
+ "totalRecords": 57,
10
10
  "thinFallbacks": []
11
11
  },
12
12
  "themeTokens": [
@@ -5099,8 +5099,8 @@
5099
5099
  {
5100
5100
  "name": "LoadingText",
5101
5101
  "type": "string?",
5102
- "default": "\"Loading…\"",
5103
- "description": "Label rendered next to the spinner inside the loading pill. Set to null or empty to hide the text and show only the spinner. Defaults to \"Loading…\".",
5102
+ "default": null,
5103
+ "description": "Label rendered next to the spinner inside the loading pill. Set to null or empty to hide the text and show only the spinner. When not set, uses the active locale's \"Chart.Loading\" string (default: \"Loading…\").",
5104
5104
  "isCascading": false,
5105
5105
  "captureUnmatched": false
5106
5106
  }
@@ -15818,6 +15818,70 @@
15818
15818
  "isCascading": false,
15819
15819
  "captureUnmatched": false
15820
15820
  },
15821
+ {
15822
+ "name": "OnBatchSave",
15823
+ "type": "EventCallback<DataGridBatchSaveEventArgs<TItem>>",
15824
+ "default": null,
15825
+ "description": "Fired when the user clicks \"Save all\" while EditMode is Batch. Args carry the buffered modifications + added rows. On a clean callback return (no exception), the grid's pending-changes buffer is cleared automatically.",
15826
+ "isCascading": false,
15827
+ "captureUnmatched": false
15828
+ },
15829
+ {
15830
+ "name": "ShowAddRow",
15831
+ "type": "bool",
15832
+ "default": null,
15833
+ "description": "When true and NewItemFactory is set, renders a thin \"+ Add row\" trigger below the body. Each click creates a TItem via the factory, pushes it into the added-rows buffer, and immediately shows it inline so cells can be filled in. Only meaningful in Batch.",
15834
+ "isCascading": false,
15835
+ "captureUnmatched": false
15836
+ },
15837
+ {
15838
+ "name": "NewItemFactory",
15839
+ "type": "Func<TItem>?",
15840
+ "default": null,
15841
+ "description": "Factory used by the \"+ Add row\" trigger to produce a fresh TItem. Required when ShowAddRow is true. The returned item is stored in the added-rows buffer; the user fills its cells inline and the row is delivered via OnBatchSave.",
15842
+ "isCascading": false,
15843
+ "captureUnmatched": false
15844
+ },
15845
+ {
15846
+ "name": "ColumnVirtualize",
15847
+ "type": "bool",
15848
+ "default": null,
15849
+ "description": "Simplified column virtualization: caps the number of horizontally- rendered data columns at MaxVisibleColumns. Pinned columns always make the cut. Default false.",
15850
+ "isCascading": false,
15851
+ "captureUnmatched": false
15852
+ },
15853
+ {
15854
+ "name": "MaxVisibleColumns",
15855
+ "type": "int",
15856
+ "default": "30",
15857
+ "description": "Maximum columns rendered when ColumnVirtualize is true. Default 30.",
15858
+ "isCascading": false,
15859
+ "captureUnmatched": false
15860
+ },
15861
+ {
15862
+ "name": "BatchSaveAllText",
15863
+ "type": "string?",
15864
+ "default": "\"Save all\"",
15865
+ "description": "Label for the batch-mode \"Save all\" button. Override for localization.",
15866
+ "isCascading": false,
15867
+ "captureUnmatched": false
15868
+ },
15869
+ {
15870
+ "name": "BatchDiscardText",
15871
+ "type": "string?",
15872
+ "default": "\"Discard\"",
15873
+ "description": "Label for the batch-mode \"Discard\" button. Override for localization.",
15874
+ "isCascading": false,
15875
+ "captureUnmatched": false
15876
+ },
15877
+ {
15878
+ "name": "BatchAddRowText",
15879
+ "type": "string?",
15880
+ "default": "\"Add row\"",
15881
+ "description": "Label for the batch-mode \"+ Add row\" trigger. Override for localization.",
15882
+ "isCascading": false,
15883
+ "captureUnmatched": false
15884
+ },
15821
15885
  {
15822
15886
  "name": "OnColumnReorder",
15823
15887
  "type": "EventCallback<ColumnReorderEventArgs>",
@@ -15934,6 +15998,11 @@
15934
15998
  "type": "EventCallback<RowEditEventArgs<TItem>>",
15935
15999
  "description": null
15936
16000
  },
16001
+ {
16002
+ "name": "OnBatchSave",
16003
+ "type": "EventCallback<DataGridBatchSaveEventArgs<TItem>>",
16004
+ "description": "Fired when the user clicks \"Save all\" while EditMode is Batch. Args carry the buffered modifications + added rows. On a clean callback return (no exception), the grid's pending-changes buffer is cleared automatically."
16005
+ },
15937
16006
  {
15938
16007
  "name": "OnColumnReorder",
15939
16008
  "type": "EventCallback<ColumnReorderEventArgs>",
@@ -27794,7 +27863,12 @@
27794
27863
  "records": [
27795
27864
  {
27796
27865
  "name": "ColumnLeaf",
27797
- "signature": "ColumnLeaf(string Label, object? Key, IReadOnlyList<TItem> Items)",
27866
+ "signature": "ColumnLeaf(\r\n string Label,\r\n string PathKey,\r\n object?[] Path,\r\n IReadOnlyList<TItem> Items,\r\n bool IsGrandTotal)",
27867
+ "description": null
27868
+ },
27869
+ {
27870
+ "name": "HeaderEntry",
27871
+ "signature": "HeaderEntry(string Label, int ColSpan, int RowSpan, bool IsGrandTotal)",
27798
27872
  "description": null
27799
27873
  },
27800
27874
  {
@@ -27815,15 +27889,19 @@
27815
27889
  "examples": [
27816
27890
  {
27817
27891
  "title": "Sales by region × year",
27818
- "code": "<PivotGrid TItem=\"Sale\"\n Items=\"_sales\"\n RowFields=\"@(new List<PivotField<Sale>> { new(\"Region\", s => s.Region) })\"\n ColumnFields=\"@(new List<PivotField<Sale>> { new(\"Year\", s => s.Year, v => \"FY \" + v) })\"\n Measures=\"@(new List<PivotMeasure<Sale>> { new(\"Revenue\", s => s.Amount, PivotAggregate.Sum, d => \"$\" + d.ToString(\"N0\")) })\" />\n\n@code {\n record Sale(string Region, string Country, int Year, int Quarter, decimal Amount, int Units);\n List<Sale> _sales = new() { /* ... */ };\n}"
27892
+ "code": "<PivotGrid TItem=\"Sale\"\r\n Items=\"_sales\"\r\n RowFields=\"@(new List<PivotField<Sale>> { new(\"Region\", s => s.Region) })\"\r\n ColumnFields=\"@(new List<PivotField<Sale>> { new(\"Year\", s => s.Year, v => \"FY \" + v) })\"\r\n Measures=\"@(new List<PivotMeasure<Sale>> { new(\"Revenue\", s => s.Amount, PivotAggregate.Sum, d => \"$\" + d.ToString(\"N0\")) })\" />\r\n\r\n@code {\r\n record Sale(string Region, string Country, int Year, int Quarter, decimal Amount, int Units);\r\n List<Sale> _sales = new() { /* ... */ };\r\n}"
27819
27893
  },
27820
27894
  {
27821
27895
  "title": "Multiple measures (sum + count)",
27822
- "code": "<PivotGrid TItem=\"Sale\"\n Items=\"_sales\"\n RowFields=\"_regionField\"\n ColumnFields=\"_yearField\"\n Measures=\"@(new List<PivotMeasure<Sale>> {\n new(\"Revenue\", s => s.Amount, PivotAggregate.Sum, d => \"$\" + d.ToString(\"N0\")),\n new(\"Deals\", s => s.Units, PivotAggregate.Count),\n })\" />"
27896
+ "code": "<PivotGrid TItem=\"Sale\"\r\n Items=\"_sales\"\r\n RowFields=\"_regionField\"\r\n ColumnFields=\"_yearField\"\r\n Measures=\"@(new List<PivotMeasure<Sale>> {\r\n new(\"Revenue\", s => s.Amount, PivotAggregate.Sum, d => \"$\" + d.ToString(\"N0\")),\r\n new(\"Deals\", s => s.Units, PivotAggregate.Count),\r\n })\" />"
27823
27897
  },
27824
27898
  {
27825
27899
  "title": "Collapsible nested row groups",
27826
- "code": "<PivotGrid TItem=\"Sale\"\n Items=\"_sales\"\n RowFields=\"@(new List<PivotField<Sale>> {\n new(\"Region\", s => s.Region),\n new(\"Country\", s => s.Country),\n })\"\n ColumnFields=\"_yearField\"\n Measures=\"_amountMeasure\"\n Collapsible=\"true\"\n Compact=\"true\" />"
27900
+ "code": "<PivotGrid TItem=\"Sale\"\r\n Items=\"_sales\"\r\n RowFields=\"@(new List<PivotField<Sale>> {\r\n new(\"Region\", s => s.Region),\r\n new(\"Country\", s => s.Country),\r\n })\"\r\n ColumnFields=\"_yearField\"\r\n Measures=\"_amountMeasure\"\r\n Collapsible=\"true\"\r\n Compact=\"true\" />"
27901
+ },
27902
+ {
27903
+ "title": "Multi-level column hierarchy (Year &gt; Quarter)",
27904
+ "code": "<PivotGrid TItem=\"Sale\"\r\n Items=\"_sales\"\r\n RowFields=\"_regionCountryFields\"\r\n ColumnFields=\"@(new List<PivotField<Sale>> {\r\n new(\"Year\", s => s.Year, v => \"FY \" + v),\r\n new(\"Quarter\", s => s.Quarter, v => \"Q\" + v),\r\n })\"\r\n Measures=\"_amountMeasure\"\r\n Compact=\"true\" />"
27827
27905
  }
27828
27906
  ],
27829
27907
  "subComponents": {},
@@ -38678,7 +38756,9 @@
38678
38756
  ],
38679
38757
  "namespace": "Lumeo",
38680
38758
  "inheritsFrom": null,
38681
- "implements": [],
38759
+ "implements": [
38760
+ "IAsyncDisposable"
38761
+ ],
38682
38762
  "parameters": [
38683
38763
  {
38684
38764
  "name": "ChildContent",
@@ -38708,7 +38788,7 @@
38708
38788
  "name": "Overflow",
38709
38789
  "type": "bool",
38710
38790
  "default": null,
38711
- "description": "When true the toolbar collapses items that don't fit into a trailing \"⋯\" dropdown. Use VisibleCount to control how many items are shown inline.",
38791
+ "description": "When true the toolbar collapses items that don't fit into a trailing \"⋯\" dropdown. Use VisibleCount to control how many items are shown inline, or leave it at -1 (the default) to let the toolbar auto-measure via ResizeObserver.",
38712
38792
  "isCascading": false,
38713
38793
  "captureUnmatched": false
38714
38794
  },
@@ -38716,7 +38796,7 @@
38716
38796
  "name": "VisibleCount",
38717
38797
  "type": "int",
38718
38798
  "default": "-1",
38719
- "description": "Number of leading items to show inline when Overflow is true. Items past this index are collapsed into the \"⋯\" dropdown. -1 (default) means show all items (no overflow). Set to a positive integer to collapse trailing items.",
38799
+ "description": "Number of leading items to show inline when Overflow is true. -1 (default) auto-measure mode: a ResizeObserver measures the container width on every resize and computes the maximum number of items that fit before a \"⋯\" trigger button is needed. No consumer configuration required. Positive integer manual mode: exactly that many items are shown inline and the rest collapse into the \"⋯\" dropdown regardless of available space.",
38720
38800
  "isCascading": false,
38721
38801
  "captureUnmatched": false
38722
38802
  },
package/src/registry.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://lumeo.nativ.sh/registry-schema.json",
3
3
  "version": "2.0.0",
4
- "generated": "2026-05-12T20:42:24.5776633Z",
4
+ "generated": "2026-05-13T06:19:03.0451418Z",
5
5
  "components": {
6
6
  "accordion": {
7
7
  "name": "Accordion",
@@ -2182,7 +2182,9 @@
2182
2182
  "UI/PivotGrid/PivotGrid.razor",
2183
2183
  "UI/PivotGrid/PivotMeasure.cs"
2184
2184
  ],
2185
- "dependencies": [],
2185
+ "dependencies": [
2186
+ "list"
2187
+ ],
2186
2188
  "packageDependencies": [
2187
2189
  "Blazicons.Lucide"
2188
2190
  ],