blixify-ui-web-mcp 0.1.31 → 0.1.32
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.
|
@@ -988,6 +988,7 @@ Which field types can be edited from the list table, and how. Types not listed u
|
|
|
988
988
|
| `hideNewTabs` | `boolean` | Hides the new-tab creation button |
|
|
989
989
|
| `splitView` | `boolean` | Renders a split list/detail layout in read mode |
|
|
990
990
|
| `listObjectTableView` | `boolean` | Shows list objects in table view during read and update |
|
|
991
|
+
| `listFlexFixedRows` | `boolean` | With `listFlexTable`, the rows are a fixed set — the user edits cells but cannot add or delete rows |
|
|
991
992
|
| `disableMulti` | `boolean` | Disables multi-row selection |
|
|
992
993
|
| `disableSelectFullData` | `{ table?: boolean; list?: boolean }` | Disables "select all pages" for table and/or list views |
|
|
993
994
|
| `disabledOnEnter` | `boolean` | Prevents Enter key from submitting forms |
|
|
@@ -100,6 +100,7 @@ const columns: DataStructure[] = [
|
|
|
100
100
|
| `showGrandTotal` | `boolean` | `false` | Show a grand total row summing all numeric columns across all categories |
|
|
101
101
|
| `hideCategory` | `boolean` | `false` | Hide category grouping and render a flat list of rows |
|
|
102
102
|
| `maxRows` | `number` | — | Maximum rows allowed per category. The add-row button is hidden once the limit is reached |
|
|
103
|
+
| `fixedRows` | `boolean` | `false` | The rows are a fixed set — hides every add-row and delete-row control; editable cells stay editable |
|
|
103
104
|
| `defaultTitleTemplate` | `string` | — | Default title string pre-filled when a new row is added |
|
|
104
105
|
| `flexMathQueries` | `FlexMathQuery[]` | — | Validation rules evaluated on form submit. See FlexMathQuery below |
|
|
105
106
|
| `darkMode` | `boolean` | `false` | Enable dark mode styling |
|
|
@@ -269,10 +269,51 @@ const flexMathQueries: FlexMathQuery[] = [
|
|
|
269
269
|
},
|
|
270
270
|
];
|
|
271
271
|
|
|
272
|
+
// ─── Fixed rows test data ────────────────────────────────────────────────────
|
|
273
|
+
// A checklist whose rows come from elsewhere — the user only marks each line.
|
|
274
|
+
const fixedRowColumns: DataStructure[] = [
|
|
275
|
+
{ id: "itemName", name: "Item", type: "string", disabled: true },
|
|
276
|
+
{ id: "quantity", name: "Qty", type: "number", disabled: true },
|
|
277
|
+
{
|
|
278
|
+
id: "received",
|
|
279
|
+
name: "Received",
|
|
280
|
+
type: "list",
|
|
281
|
+
listSelection: ["Yes", "No"],
|
|
282
|
+
},
|
|
283
|
+
];
|
|
284
|
+
|
|
285
|
+
const fixedRowData: FlexTableItem[] = [
|
|
286
|
+
{
|
|
287
|
+
id: "line-1",
|
|
288
|
+
title: "",
|
|
289
|
+
category: "Order Lines",
|
|
290
|
+
itemName: "Mounting Rail 3M",
|
|
291
|
+
quantity: 12,
|
|
292
|
+
received: "No",
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
id: "line-2",
|
|
296
|
+
title: "",
|
|
297
|
+
category: "Order Lines",
|
|
298
|
+
itemName: "End Clamp",
|
|
299
|
+
quantity: 24,
|
|
300
|
+
received: "No",
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
id: "line-3",
|
|
304
|
+
title: "",
|
|
305
|
+
category: "Order Lines",
|
|
306
|
+
itemName: "Junction Box",
|
|
307
|
+
quantity: 1,
|
|
308
|
+
received: "No",
|
|
309
|
+
},
|
|
310
|
+
];
|
|
311
|
+
|
|
272
312
|
export const FlexTable = () => {
|
|
273
313
|
const [data, setData] = useState<FlexTableItem[]>(sampleData);
|
|
274
314
|
const [viewOnlyData] = useState<FlexTableItem[]>(sampleData);
|
|
275
315
|
const [mediaData, setMediaData] = useState<FlexTableItem[]>(sampleMediaData);
|
|
316
|
+
const [fixedData, setFixedData] = useState<FlexTableItem[]>(fixedRowData);
|
|
276
317
|
|
|
277
318
|
const formRef = useRef<any>(null);
|
|
278
319
|
const tableRef = useRef<any>(null);
|
|
@@ -295,6 +336,22 @@ export const FlexTable = () => {
|
|
|
295
336
|
</div>
|
|
296
337
|
</StorySection>
|
|
297
338
|
|
|
339
|
+
<StorySection
|
|
340
|
+
title="Fixed Rows"
|
|
341
|
+
description="fixedRows=true keeps the row set as given — no add-row, no delete-row, no Actions column — while editable cells stay editable. Item and Qty are disabled columns; Received is a Yes/No list. Through DataTemplate this is listFlexFixedRows on a listFlexTable listObject."
|
|
342
|
+
>
|
|
343
|
+
<div className="w-full">
|
|
344
|
+
<FlexTableImpl
|
|
345
|
+
label="Order Lines"
|
|
346
|
+
data={fixedData}
|
|
347
|
+
columns={fixedRowColumns}
|
|
348
|
+
fixedRows={true}
|
|
349
|
+
showTotal={false}
|
|
350
|
+
onChangeData={setFixedData}
|
|
351
|
+
/>
|
|
352
|
+
</div>
|
|
353
|
+
</StorySection>
|
|
354
|
+
|
|
298
355
|
<StorySection
|
|
299
356
|
title="With Grand Total"
|
|
300
357
|
description="showGrandTotal=true adds a grand total row summing all numeric columns across all categories."
|