@meshmakers/shared-ui 3.4.1480 → 3.4.1490

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/README.md CHANGED
@@ -137,6 +137,8 @@ Configurable data grid with Kendo Grid integration.
137
137
 
138
138
  **Features:** Pagination, sorting, filtering, row selection, search, context menus, action menus, Excel/PDF export, toolbar actions, column types (text, numeric, boolean, date, bytes, status icons, cron expressions).
139
139
 
140
+ The toolbar's "Reset Filters" button only appears while something narrows the default view: a row filter, a column sort, a free-text search, or host-side filters. Hosts with their own quick-view/bar filters announce them via `[hasExternalFilters]="myBarFilterIsSet"` so the button shows (and `(resetFilters)` lets them clear those filters when it is clicked).
141
+
140
142
  ```html
141
143
  <mm-list-view
142
144
  appMyDataSource
@@ -182,6 +184,18 @@ Hierarchical tree view with Kendo TreeView, drag-drop support, and expandable no
182
184
 
183
185
  Display text with a one-click copy-to-clipboard button.
184
186
 
187
+ ### Actions (`mm-row-actions`, `mm-action-button`)
188
+
189
+ Row, toolbar and page actions from one shared `MmAction` definition (id, label, icon, danger,
190
+ disabled reason, visible): icon buttons with tooltip and a row-specific accessible name, max. 3
191
+ inline slots with a "More actions" menu, focusable disabled actions that announce their reason,
192
+ and a canonical verb→icon map (`MM_ACTION_ICONS`). See [Actions](docs/actions.md).
193
+
194
+ ```html
195
+ <mm-row-actions [actions]="actionsFor(row)" [rowLabel]="row.name" (triggered)="onAction($event, row)" />
196
+ <mm-action-button [action]="refresh" context="toolbar" (triggered)="reload()" />
197
+ ```
198
+
185
199
  ### EntitySelectInputComponent (`mm-entity-select-input`)
186
200
 
187
201
  Autocomplete input for entity selection with dialog fallback.
@@ -196,6 +210,9 @@ All complex dialogs are opened via injected services:
196
210
  | | `showYesNoCancelConfirmationDialog()` | Yes/No/Cancel with result |
197
211
  | | `showOkCancelConfirmationDialog()` | Ok/Cancel confirmation |
198
212
  | | `showOkDialog()` | Ok-only information dialog |
213
+ | | `showDestructiveConfirmationDialog(title, message, confirmLabel, cancelLabel = 'Cancel')` | Destructive action: verb labels (e.g. Rotate / Cancel), confirming button styled as danger |
214
+
215
+ All confirmation dialogs are `min(320px, 100vw − 32px)` to `min(560px, 100vw − 32px)` wide, so a long message wraps instead of stretching the dialog across the viewport.
199
216
  | `InputService` | — | Text input dialog |
200
217
  | `FileUploadService` | — | File upload dialog |
201
218
  | `ProgressWindowService` | `showDeterminateProgress()` | Progress bar with percentage |
@@ -206,6 +223,18 @@ All complex dialogs are opened via injected services:
206
223
  | `ImportStrategyDialogService` | — | Import strategy selection |
207
224
  | `MessageDetailsDialogService` | — | Detailed message/error display |
208
225
 
226
+ Toast stacking is configurable with `NOTIFICATION_DISPLAY_OPTIONS`: identical visible toasts (same
227
+ type, text and details) are never stacked twice (`dedupe`, default on); `errorHideAfter` /
228
+ `warningHideAfter` (ms, default 0 = until interaction or navigation) auto-hide non-critical errors
229
+ and warnings — a caller passing `hideAfter: 0` still gets a sticky one, and `stickyWithDetails`
230
+ keeps every error/warning that has details; a timed toast pauses while hovered or focused;
231
+ `maxVisible` (default 0 = unlimited) hides the oldest toast of the lowest severity, so an error or
232
+ warning is never dropped for a success or info.
233
+
234
+ ```typescript
235
+ { provide: NOTIFICATION_DISPLAY_OPTIONS, useValue: { errorHideAfter: 10000, warningHideAfter: 8000, stickyWithDetails: true, maxVisible: 3 } }
236
+ ```
237
+
209
238
  See [Progress Window Usage](src/lib/progress-window/USAGE.md) for progress dialog examples.
210
239
 
211
240
  ## Data Sources
@@ -266,6 +295,7 @@ Data binding directive for `ListViewComponent`, managing data source and paginat
266
295
 
267
296
  ## Detailed Documentation
268
297
 
298
+ - [Actions](docs/actions.md) — `mm-row-actions`, `mm-action-button`, `MmAction`, canonical icons
269
299
  - [Time Range Picker](docs/time-range-picker.md) — Full API reference, configuration, examples
270
300
  - [Unsaved Changes Guard](docs/unsaved-changes-guard.md) — Implementation guide with checklists
271
301
  - [Progress Window Usage](src/lib/progress-window/USAGE.md) — Progress dialog examples, migration from Angular Material