FruitBankHybridApp/FruitBankHybrid.Shared/Components/Grids
Loretta aecd54ffdd [LOADED_DOCS: 4 files, no new loads]
Refactor docs: topic folders, TOON, XCUT, protocol sync

- Migrated all topic documentation into dedicated folders with canonical `README.md`, `ISSUES.md`, and `TODO.md` per topic (e.g., `LOGGING/`, `SIGNALR/`, `BINARY/`, `TOON/`).
- Added comprehensive TOON serializer documentation: design, format, options, attributes, inference, issues, and TODOs.
- Introduced `XCUT` folder for cross-cutting issues and TODOs, with canonical entries and topic cross-references.
- Updated all references and navigation to use new folder-based doc paths; fixed links and clarified doc structure.
- Enhanced AI agent protocol: enforce session skill preloading, `[LOADED_DOCS: ...]` short-name prefix, and mandatory `docs-check` skill for doc/code sync.
- Updated `.csproj` to include all `README.md` files for IDE visibility.
- Improved and clarified SignalR, grid, and project-level documentation.
- Minor code/test tweaks and doc content corrections for consistency.
2026-04-24 21:54:04 +02:00
..
GenericAttributes Improve docs, naming, and reference handling for Toon/DTOs 2026-01-16 09:28:17 +01:00
OrderItems improvements, fixes 2025-11-26 09:42:17 +01:00
Partners Add user layout management to grids with toolbar actions 2025-12-23 11:10:19 +01:00
Products Improve toolbar controls and async UX in stock taking 2026-02-07 08:55:00 +01:00
ShippingDocuments Enhance grids: add links, format dates, show modifiers 2026-02-23 18:04:43 +01:00
ShippingItems .Net10, VS2026; StockTaking in progress... 2025-12-01 16:18:47 +01:00
Shippings shipping updates 2026-03-02 12:14:20 +01:00
StockTakingItems Allow info panel collapse, improve grids, update SignalR 2026-03-22 16:04:17 +01:00
FruitBankGridBase.cs Add user layout management to grids with toolbar actions 2025-12-23 11:10:19 +01:00
README.md [LOADED_DOCS: 4 files, no new loads] 2026-04-24 21:54:04 +02:00

README.md

Grids

Domain-specific grid components, one per entity type. All inherit FruitBankGridBase<TEntity>.

For the MgGrid framework reference see: AyCode.Blazor/AyCode.Blazor.Components/docs/MGGRID/README.md

FruitBankGridBase

FruitBankGridBase<TDataItem> is the project-specific adapter that fixes the generic parameters:

MgGridBase<SignalRDataSourceObservable<TDataItem>, TDataItem, int, LoggerClient>

Adds these defaults in OnParametersSet (based on IsMasterGrid):

Setting Master Detail
SizeMode Small Small
ShowGroupPanel true false
ShowSearchBox true false
ShowFilterRow true false
FilterMenuButtonDisplayMode Never Always
DetailRowDisplayMode Auto Never
DetailExpandButtonDisplayMode Auto Never
PagerVisible true true
PageSize 20 (Small) / 15 10
AllowColumnReorder true true
AllowGroup true false
EditMode EditRow EditRow
FocusedRowEnabled true true
ColumnResizeMode NextColumn NextColumn
PageSizeSelectorVisible true true

Also adds OnCustomizeElement: alternating row colors (.alt-item), header background (#E6E6E6), hideDetailButton for non-admin users.

Legacy MgGridBase

Components/MgGridBase.cs — a non-generic legacy class that directly extends DxGrid and implements IMgGridBase. Used by older pages that predate the generic MgGridBase<…>. New grids should use FruitBankGridBase<TEntity> instead.

Subfolders

Folder Entity Notes
GenericAttributes/ GridGenericAttributeBase Context-based (ContextIds: EntityId, KeyGroup, StoreId). Parent type switching: Product, Order, OrderItem
OrderItems/ GridOrderItem Commented out — placeholder
Partners/ GridPartnerBase Simple master grid with CRUD tags
Products/ GridStockQuantityHistoryDtoBase Detail grid under ProductDto
ShippingDocuments/ GridShippingDocumentBase Parent type switching: Shipping, Product, Partner. Sets ContextIds/KeyFieldNameToParentId per parent type
ShippingItems/ GridShippingItemBase Parent type switching: ShippingDocument, Shipping, Partner
Shippings/ GridShippingBase Simple master grid with CRUD tags
StockTakingItems/ GridStockTakingItemBase Simple master grid, GetAll only