AyCode.Blazor/docs/GLOSSARY.md

5.0 KiB

Glossary

Blazor/MAUI UI terminology. For core framework terms see AyCode.Core/docs/GLOSSARY.md.

UI Components

Term Definition
DxGrid DevExpress Blazor data grid. Used with AcSignalRDataSource for real-time SignalR data.
CardView Card-style layout wrapping DxGrid. Mobile-friendly alternative to table grids.
AcSignalRDataSource Grid data source backed by SignalR. Handles load, CRUD, filtering, and change tracking. See AyCode.Services/docs/SIGNALR_DATASOURCE/README.md in AyCode.Core repo.
AcExpressionNode Serializable LINQ expression tree. Grid filters are serialized as expression nodes and sent to server.

MgGrid System

For full technical reference see AyCode.Blazor.Components/docs/MGGRID/README.md.

Term Definition
MgGridBase Abstract generic grid component extending DxGrid with SignalR CRUD, layout persistence, master-detail, InfoPanel, fullscreen, and a quick-filter FilterPanel slot.
FilterPanel MgGridBase RenderFragment slot for filter components (MgGridFilterPanelTagBox); rendered below the toolbar as its own full-bleed band (styled like the native group panel) in a .mg-grid-filter-panel container, with a toolbar Show/Hide toggle and a built-in right-aligned Clear button. Criteria persists with the grid layout; hiding the panel clears its OWN filters only (filter-row values survive — no invisible filtering either way).
MgTagBox Pure, behavior-free DxTagBox seam (Mg* seam policy) — universal, no grid/filter-panel wiring. The grid filter component derives from it: MgGridFilterPanelTagBox.
MgGridFilterPanelTagBox MgTagBox + the grid filter-panel wiring (IMgGridFilterPanelComponent), with a FieldName — a selection applies a per-field IN criteria via IMgGridBase.SetFilterPanelCriteria (DevExpress SetFieldFilterCriteria); used inside FilterPanel. Defaults its SizeMode to the grid's when unset; bind to lookup objects (ValueFieldName/TextFieldName) to filter an FK column by name; re-selects from a restored layout's criteria; only manages criteria it owns (its IN shape). Owns ValuesChanged — do not bind it.
IMgGridFilterPanelComponent Contract for FilterPanel filter components (FieldName, OwnsCriteria, SyncFromGrid) — future dropdown/textbox/checkbox filter components implement it over their own Mg* seams.
MgGridWithInfoPanel DxSplitter wrapper: grid (left pane) + InfoPanel (right pane), fullscreen overlay, splitter size persistence.
MgGridToolbarBase DxToolbar base with Grid (IMgGridBase) reference and RefreshClick callback.
MgGridToolbarTemplate Full toolbar: New/Edit/Delete/Save/Cancel, row navigation, layout menu, export, filter-panel toggle (when the grid has a FilterPanel), fullscreen. Extensible via ToolbarItemsExtended.
MgGridDataColumn Extended DxGridDataColumn with InfoPanel parameters and UrlLink template ({Property} placeholders).
MgGridInfoPanel Default InfoPanel: column-value pairs for focused row, responsive columns, edit mode with typed editors, template system.
MgGridSignalRDataSource GridCustomDataSource wrapping AcSignalRDataSource. Local cache, background refresh.
IMgGridBase Public interface: IsSyncing, GridEditState, ParentGrid, StepPrevRow/NextRow, layout persistence, filter panel (SetFilterPanelCriteria, GetFilterPanelCriteria, RegisterFilterPanelComponent, ClearFilterPanel, RefreshFilterPanel, HasFilterPanel, IsFilterPanelVisible, ToggleFilterPanel), GridSizeMode.
MgGridEditState Enum: None (no edit), New (adding item), Edit (modifying item).
SignalRCrudTags Bundle of 5 integer message tags (GetAll, GetItem, Add, Update, Remove) for one entity type. See AyCode.Services/docs/SIGNALR_DATASOURCE/README.md in AyCode.Core repo.
IsMasterGrid true when ParentDataItem == null — top-level grid (not detail).
AutoSaveLayoutName Base name for localStorage layout keys. Default: "Grid{TDataItem.Name}".

Architecture

Term Definition
Blazor Hybrid MAUI app hosting Blazor components via WebView. Shares UI code between web and native.
DLL Reference AyCode.Core projects are referenced as DLLs (not ProjectReference). This is intentional — separates solution build graphs.
AcBinaryHubProtocol Custom SignalR hub protocol using AcBinary serializer instead of default JSON. Used for performance.

Authentication

Term Definition
AcBlazorLoginServiceBase Client-side login service managing JWT tokens, SecureStorage, and auto-refresh.
AcAuthenticationStateProvider Custom Blazor auth state provider backed by JWT claims.

MAUI Platforms

Term Definition
Platforms/ Per-platform code folders: Android, iOS, Windows. MAUI SDK auto-includes based on target.
API 33+ Minimum Android API level (Android 13).