@memberjunction/ng-entity-viewer 2.132.0 → 2.133.0

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.
Files changed (37) hide show
  1. package/README.md +317 -124
  2. package/dist/lib/entity-data-grid/entity-data-grid.component.d.ts +792 -0
  3. package/dist/lib/entity-data-grid/entity-data-grid.component.d.ts.map +1 -0
  4. package/dist/lib/entity-data-grid/entity-data-grid.component.js +3778 -0
  5. package/dist/lib/entity-data-grid/entity-data-grid.component.js.map +1 -0
  6. package/dist/lib/entity-data-grid/events/grid-events.d.ts +398 -0
  7. package/dist/lib/entity-data-grid/events/grid-events.d.ts.map +1 -0
  8. package/dist/lib/entity-data-grid/events/grid-events.js +556 -0
  9. package/dist/lib/entity-data-grid/events/grid-events.js.map +1 -0
  10. package/dist/lib/entity-data-grid/models/grid-types.d.ts +437 -0
  11. package/dist/lib/entity-data-grid/models/grid-types.d.ts.map +1 -0
  12. package/dist/lib/entity-data-grid/models/grid-types.js +37 -0
  13. package/dist/lib/entity-data-grid/models/grid-types.js.map +1 -0
  14. package/dist/lib/entity-viewer/entity-viewer.component.d.ts +92 -2
  15. package/dist/lib/entity-viewer/entity-viewer.component.d.ts.map +1 -1
  16. package/dist/lib/entity-viewer/entity-viewer.component.js +255 -92
  17. package/dist/lib/entity-viewer/entity-viewer.component.js.map +1 -1
  18. package/dist/lib/types.d.ts +14 -31
  19. package/dist/lib/types.d.ts.map +1 -1
  20. package/dist/lib/types.js.map +1 -1
  21. package/dist/lib/view-config-panel/view-config-panel.component.d.ts +363 -0
  22. package/dist/lib/view-config-panel/view-config-panel.component.d.ts.map +1 -0
  23. package/dist/lib/view-config-panel/view-config-panel.component.js +2006 -0
  24. package/dist/lib/view-config-panel/view-config-panel.component.js.map +1 -0
  25. package/dist/module.d.ts +16 -13
  26. package/dist/module.d.ts.map +1 -1
  27. package/dist/module.js +24 -14
  28. package/dist/module.js.map +1 -1
  29. package/dist/public-api.d.ts +4 -1
  30. package/dist/public-api.d.ts.map +1 -1
  31. package/dist/public-api.js +6 -1
  32. package/dist/public-api.js.map +1 -1
  33. package/package.json +10 -6
  34. package/dist/lib/entity-grid/entity-grid.component.d.ts +0 -216
  35. package/dist/lib/entity-grid/entity-grid.component.d.ts.map +0 -1
  36. package/dist/lib/entity-grid/entity-grid.component.js +0 -676
  37. package/dist/lib/entity-grid/entity-grid.component.js.map +0 -1
@@ -0,0 +1,437 @@
1
+ import { TemplateRef } from '@angular/core';
2
+ import { BaseEntity } from '@memberjunction/core';
3
+ export { SortDirection, SortState, ViewColumnConfig, ViewSortConfig, ViewGridStateConfig, GridStateChangedEvent } from '../../types';
4
+ /**
5
+ * Selection mode for the grid
6
+ * - 'none': No selection allowed
7
+ * - 'single': Only one row can be selected at a time
8
+ * - 'multiple': Multiple rows can be selected (click to toggle)
9
+ * - 'checkbox': Checkbox column for selection
10
+ */
11
+ export type GridSelectionMode = 'none' | 'single' | 'multiple' | 'checkbox';
12
+ /**
13
+ * Edit mode for the grid
14
+ * - 'none': No editing allowed
15
+ * - 'cell': Individual cell editing
16
+ * - 'row': Full row editing
17
+ * - 'batch': Batch editing with explicit save
18
+ */
19
+ export type GridEditMode = 'none' | 'cell' | 'row' | 'batch';
20
+ /**
21
+ * Grid lines display mode
22
+ */
23
+ export type GridLinesMode = 'none' | 'horizontal' | 'vertical' | 'both';
24
+ /**
25
+ * Filter operators for column filtering
26
+ */
27
+ export type FilterOperator = 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'contains' | 'startswith' | 'endswith' | 'isnull' | 'isnotnull' | 'in' | 'notin';
28
+ /**
29
+ * Column data type for formatting and editing
30
+ */
31
+ export type GridColumnType = 'string' | 'number' | 'boolean' | 'date' | 'datetime' | 'currency' | 'percent' | 'custom';
32
+ /**
33
+ * Configuration for a single grid column
34
+ */
35
+ export interface GridColumnConfig {
36
+ /** Field name on the entity */
37
+ field: string;
38
+ /** Display title (defaults to field name) */
39
+ title?: string;
40
+ /** Column width in pixels (or 'auto') */
41
+ width?: number | 'auto';
42
+ /** Minimum width for resizing */
43
+ minWidth?: number;
44
+ /** Maximum width for resizing */
45
+ maxWidth?: number;
46
+ /** Column is visible */
47
+ visible?: boolean;
48
+ /** Column is sortable */
49
+ sortable?: boolean;
50
+ /** Column is filterable */
51
+ filterable?: boolean;
52
+ /** Column is editable */
53
+ editable?: boolean;
54
+ /** Column is resizable */
55
+ resizable?: boolean;
56
+ /** Column is reorderable */
57
+ reorderable?: boolean;
58
+ /** Data type for formatting and editing */
59
+ type?: GridColumnType;
60
+ /** Format string (e.g., 'yyyy-MM-dd' for dates, '#,##0.00' for numbers) */
61
+ format?: string;
62
+ /** Text alignment */
63
+ align?: 'left' | 'center' | 'right';
64
+ /** Header alignment (defaults to align) */
65
+ headerAlign?: 'left' | 'center' | 'right';
66
+ /** CSS class for cells - can be string or function */
67
+ cellClass?: string | ((row: BaseEntity, column: GridColumnConfig) => string);
68
+ /** CSS class for header */
69
+ headerClass?: string;
70
+ /** Custom cell template reference */
71
+ cellTemplate?: TemplateRef<GridCellTemplateContext>;
72
+ /** Custom header template reference */
73
+ headerTemplate?: TemplateRef<GridHeaderTemplateContext>;
74
+ /** Custom editor template reference */
75
+ editorTemplate?: TemplateRef<GridEditorTemplateContext>;
76
+ /** Cell value formatter function */
77
+ formatter?: (value: unknown, row: BaseEntity, column: GridColumnConfig) => string;
78
+ /** Cell style function */
79
+ cellStyle?: (row: BaseEntity, column: GridColumnConfig) => Record<string, string>;
80
+ /** Whether to show tooltip on hover */
81
+ showTooltip?: boolean;
82
+ /** Custom tooltip content */
83
+ tooltip?: string | ((row: BaseEntity, column: GridColumnConfig) => string);
84
+ /** Frozen column position (alias for pinned, for backward compatibility) */
85
+ frozen?: 'left' | 'right' | false;
86
+ /** Column pinning position (AG Grid terminology) */
87
+ pinned?: 'left' | 'right' | null;
88
+ /** Flex grow factor for auto-sizing columns */
89
+ flex?: number;
90
+ /** Column group (for grouped headers) */
91
+ group?: string;
92
+ /** Filter options for dropdown filters */
93
+ filterOptions?: Array<{
94
+ value: unknown;
95
+ label: string;
96
+ }>;
97
+ /** Sort order index (for default multi-sort) */
98
+ sortIndex?: number;
99
+ /** Sort direction (for default sort) */
100
+ sortDirection?: 'asc' | 'desc';
101
+ }
102
+ /**
103
+ * Context provided to custom cell templates
104
+ */
105
+ export interface GridCellTemplateContext {
106
+ /** The row data (entity) */
107
+ row: BaseEntity;
108
+ /** Column configuration */
109
+ column: GridColumnConfig;
110
+ /** The cell value */
111
+ value: unknown;
112
+ /** Row index in the current view */
113
+ rowIndex: number;
114
+ /** Whether the cell is currently being edited */
115
+ isEditing: boolean;
116
+ }
117
+ /**
118
+ * Context provided to custom header templates
119
+ */
120
+ export interface GridHeaderTemplateContext {
121
+ /** Column configuration */
122
+ column: GridColumnConfig;
123
+ /** Current sort direction for this column */
124
+ sortDirection: 'asc' | 'desc' | 'none';
125
+ /** Current filter value for this column */
126
+ filterValue: unknown;
127
+ }
128
+ /**
129
+ * Context provided to custom editor templates
130
+ */
131
+ export interface GridEditorTemplateContext {
132
+ /** The row data (entity) */
133
+ row: BaseEntity;
134
+ /** Column configuration */
135
+ column: GridColumnConfig;
136
+ /** Current cell value */
137
+ value: unknown;
138
+ /** Row index in the current view */
139
+ rowIndex: number;
140
+ /** Function to commit the edit with a new value */
141
+ commitEdit: (newValue: unknown) => void;
142
+ /** Function to cancel the edit */
143
+ cancelEdit: () => void;
144
+ }
145
+ /**
146
+ * Configuration for the grid toolbar
147
+ */
148
+ export interface GridToolbarConfig {
149
+ /** Show search input */
150
+ showSearch?: boolean;
151
+ /** Search placeholder text */
152
+ searchPlaceholder?: string;
153
+ /** Search debounce time in ms */
154
+ searchDebounce?: number;
155
+ /** Show refresh button */
156
+ showRefresh?: boolean;
157
+ /** Show add button */
158
+ showAdd?: boolean;
159
+ /** Show delete button (for selected rows) */
160
+ showDelete?: boolean;
161
+ /** Show export button */
162
+ showExport?: boolean;
163
+ /** Export formats available */
164
+ exportFormats?: Array<'excel' | 'csv' | 'json'>;
165
+ /** Show column chooser button */
166
+ showColumnChooser?: boolean;
167
+ /** Show filter toggle button */
168
+ showFilterToggle?: boolean;
169
+ /** Custom toolbar buttons */
170
+ customButtons?: GridToolbarButton[];
171
+ /** Toolbar position */
172
+ position?: 'top' | 'bottom' | 'both';
173
+ /** Show row count */
174
+ showRowCount?: boolean;
175
+ /** Show selection count */
176
+ showSelectionCount?: boolean;
177
+ }
178
+ /**
179
+ * Custom toolbar button configuration
180
+ */
181
+ export interface GridToolbarButton {
182
+ /** Unique button ID */
183
+ id: string;
184
+ /** Button text */
185
+ text?: string;
186
+ /** Button icon (Font Awesome class) */
187
+ icon?: string;
188
+ /** Button tooltip */
189
+ tooltip?: string;
190
+ /** Button is disabled - can be boolean or function */
191
+ disabled?: boolean | (() => boolean);
192
+ /** Button is visible - can be boolean or function */
193
+ visible?: boolean | (() => boolean);
194
+ /** Button CSS class */
195
+ cssClass?: string;
196
+ /** Button position: 'left' | 'right' */
197
+ position?: 'left' | 'right';
198
+ /** Click handler (if not using event) */
199
+ onClick?: () => void;
200
+ }
201
+ /**
202
+ * Extended sort state with multi-sort index
203
+ * Extends the base SortState from types.ts with an index for multi-sort ordering
204
+ */
205
+ export interface DataGridSortState {
206
+ /** Field name being sorted */
207
+ field: string;
208
+ /** Sort direction */
209
+ direction: 'asc' | 'desc';
210
+ /** Index for multi-sort ordering */
211
+ index: number;
212
+ }
213
+ /**
214
+ * Filter state for a column
215
+ */
216
+ export interface FilterState {
217
+ /** Field name being filtered */
218
+ field: string;
219
+ /** Filter operator */
220
+ operator: FilterOperator;
221
+ /** Filter value */
222
+ value: unknown;
223
+ }
224
+ /**
225
+ * Pending change for batch editing
226
+ */
227
+ export interface PendingChange {
228
+ /** Row key (usually ID) */
229
+ rowKey: string;
230
+ /** The row entity */
231
+ row: BaseEntity;
232
+ /** Field that was changed */
233
+ field: string;
234
+ /** Original value */
235
+ oldValue: unknown;
236
+ /** New value */
237
+ newValue: unknown;
238
+ /** Type of change */
239
+ changeType: 'update' | 'insert' | 'delete';
240
+ }
241
+ /**
242
+ * Complete grid state for persistence (internal to EntityDataGrid)
243
+ * Note: For UserView persistence, use ViewGridState from @memberjunction/core-entities
244
+ */
245
+ export interface GridState {
246
+ /** Column states */
247
+ columns: Array<{
248
+ field: string;
249
+ width: number;
250
+ visible: boolean;
251
+ order: number;
252
+ /** Column pinning position */
253
+ pinned?: 'left' | 'right' | null;
254
+ /** Flex grow factor for auto-sizing */
255
+ flex?: number;
256
+ /** Minimum column width */
257
+ minWidth?: number;
258
+ /** Maximum column width */
259
+ maxWidth?: number;
260
+ }>;
261
+ /** Sort state */
262
+ sort: DataGridSortState[];
263
+ /** Filter state */
264
+ filters: FilterState[];
265
+ /** Selected row keys */
266
+ selection: string[];
267
+ }
268
+ /**
269
+ * Export options for grid data
270
+ */
271
+ export interface ExportOptions {
272
+ /** Export only visible columns */
273
+ visibleColumnsOnly?: boolean;
274
+ /** Export only selected rows */
275
+ selectedRowsOnly?: boolean;
276
+ /** Include headers */
277
+ includeHeaders?: boolean;
278
+ /** Custom column mapping */
279
+ columnMapping?: Record<string, string>;
280
+ }
281
+ /**
282
+ * Internal representation of a rendered row
283
+ */
284
+ export interface GridRowData {
285
+ /** Row key (usually ID) */
286
+ key: string;
287
+ /** Row index in the data array */
288
+ index: number;
289
+ /** The entity object */
290
+ entity: BaseEntity;
291
+ /** Whether the row is selected */
292
+ selected: boolean;
293
+ /** Whether the row is being edited */
294
+ editing: boolean;
295
+ /** Whether the row has unsaved changes */
296
+ dirty: boolean;
297
+ /** CSS classes for the row */
298
+ cssClasses: string[];
299
+ }
300
+ /**
301
+ * Virtual scroll viewport info
302
+ */
303
+ export interface VirtualScrollState {
304
+ /** First visible row index */
305
+ startIndex: number;
306
+ /** Last visible row index */
307
+ endIndex: number;
308
+ /** Scroll offset from top */
309
+ scrollTop: number;
310
+ /** Total scroll height */
311
+ totalHeight: number;
312
+ /** Viewport height */
313
+ viewportHeight: number;
314
+ /** Number of buffer rows above and below */
315
+ bufferSize: number;
316
+ }
317
+ /**
318
+ * Column runtime state (internal)
319
+ */
320
+ export interface ColumnRuntimeState {
321
+ /** Column configuration */
322
+ config: GridColumnConfig;
323
+ /** Computed width */
324
+ computedWidth: number;
325
+ /** Current sort direction */
326
+ sortDirection: 'asc' | 'desc' | 'none';
327
+ /** Sort index for multi-sort */
328
+ sortIndex: number;
329
+ /** Current filter value */
330
+ filterValue: unknown;
331
+ /** Current visibility */
332
+ visible: boolean;
333
+ /** Current order/position */
334
+ order: number;
335
+ }
336
+ /**
337
+ * RunView parameters subset for data loading
338
+ */
339
+ export interface GridRunViewParams {
340
+ /** Entity name */
341
+ entityName: string;
342
+ /** Extra filter clause */
343
+ extraFilter?: string;
344
+ /** Order by clause */
345
+ orderBy?: string;
346
+ /** Maximum rows to fetch */
347
+ maxRows?: number;
348
+ /** Fields to retrieve */
349
+ fields?: string[];
350
+ /** User search string */
351
+ searchString?: string;
352
+ }
353
+ /**
354
+ * Configuration for an entity action displayed in the grid toolbar.
355
+ * This is a simplified representation of EntityAction for the UI layer.
356
+ */
357
+ export interface EntityActionConfig {
358
+ /** Unique action ID */
359
+ id: string;
360
+ /** Display name */
361
+ name: string;
362
+ /** Optional description */
363
+ description?: string;
364
+ /** Optional icon (Font Awesome class) */
365
+ icon?: string;
366
+ /** Whether the action requires selected records */
367
+ requiresSelection?: boolean;
368
+ /** Minimum number of selected records required */
369
+ minSelectedRecords?: number;
370
+ /** Maximum number of selected records allowed */
371
+ maxSelectedRecords?: number;
372
+ /** Invocation type (e.g., 'View', 'SingleRecord', 'MultiRecord') */
373
+ invocationType?: string;
374
+ /** Additional action metadata */
375
+ metadata?: Record<string, unknown>;
376
+ }
377
+ /**
378
+ * Header style preset options
379
+ */
380
+ export type GridHeaderStyle = 'flat' | 'elevated' | 'gradient' | 'bold';
381
+ /**
382
+ * Configuration for grid visual appearance
383
+ * All properties are optional - defaults provide an attractive "out of the box" experience
384
+ */
385
+ export interface GridVisualConfig {
386
+ /** Header style preset: 'flat' | 'elevated' | 'gradient' | 'bold' */
387
+ headerStyle?: GridHeaderStyle;
388
+ /** Custom header background color (overrides preset) */
389
+ headerBackground?: string;
390
+ /** Custom header text color */
391
+ headerTextColor?: string;
392
+ /** Show bottom shadow/border on header */
393
+ headerShadow?: boolean;
394
+ /** Enable alternating row colors (zebra striping) */
395
+ alternateRows?: boolean;
396
+ /** Contrast level for alternating rows: 'subtle' | 'medium' | 'strong' */
397
+ alternateRowContrast?: 'subtle' | 'medium' | 'strong';
398
+ /** Enable smooth hover transitions */
399
+ hoverTransitions?: boolean;
400
+ /** Hover transition duration in ms */
401
+ hoverTransitionDuration?: number;
402
+ /** Right-align numeric columns automatically */
403
+ rightAlignNumbers?: boolean;
404
+ /** Format dates with a friendly format (e.g., "Jan 15, 2024" instead of "2024-01-15") */
405
+ friendlyDates?: boolean;
406
+ /** Render email cells as clickable mailto links */
407
+ clickableEmails?: boolean;
408
+ /** Render boolean cells as checkmark/x icons instead of text */
409
+ booleanIcons?: boolean;
410
+ /** Render URL cells as clickable links */
411
+ clickableUrls?: boolean;
412
+ /** Color for selection indicator (left border on selected rows) */
413
+ selectionIndicatorColor?: string;
414
+ /** Width of selection indicator in pixels */
415
+ selectionIndicatorWidth?: number;
416
+ /** Selection background color */
417
+ selectionBackground?: string;
418
+ /** Style for checkbox column: 'default' | 'rounded' | 'filled' */
419
+ checkboxStyle?: 'default' | 'rounded' | 'filled';
420
+ /** Checkbox accent color */
421
+ checkboxColor?: string;
422
+ /** Show skeleton loading rows instead of spinner */
423
+ skeletonLoading?: boolean;
424
+ /** Number of skeleton rows to show */
425
+ skeletonRowCount?: number;
426
+ /** Border radius for the grid container */
427
+ borderRadius?: number;
428
+ /** Cell padding preset: 'compact' | 'normal' | 'comfortable' */
429
+ cellPadding?: 'compact' | 'normal' | 'comfortable';
430
+ /** Primary accent color for interactive elements */
431
+ accentColor?: string;
432
+ }
433
+ /**
434
+ * Default visual configuration - provides attractive defaults out of the box
435
+ */
436
+ export declare const DEFAULT_VISUAL_CONFIG: Required<GridVisualConfig>;
437
+ //# sourceMappingURL=grid-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid-types.d.ts","sourceRoot":"","sources":["../../../../src/lib/entity-data-grid/models/grid-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Default visual configuration - provides attractive defaults out of the box
3
+ */
4
+ export const DEFAULT_VISUAL_CONFIG = {
5
+ // Header - elevated style with shadow
6
+ headerStyle: 'elevated',
7
+ headerBackground: '', // Empty = use CSS variable
8
+ headerTextColor: '', // Empty = use CSS variable
9
+ headerShadow: true,
10
+ // Rows - medium contrast zebra striping with transitions
11
+ alternateRows: true,
12
+ alternateRowContrast: 'medium',
13
+ hoverTransitions: true,
14
+ hoverTransitionDuration: 150,
15
+ // Cell formatting - smart defaults
16
+ rightAlignNumbers: true,
17
+ friendlyDates: true,
18
+ clickableEmails: true,
19
+ booleanIcons: true,
20
+ clickableUrls: true,
21
+ // Selection - mellow yellow accent (avoids conflict with blue hyperlinks)
22
+ selectionIndicatorColor: '#f9a825',
23
+ selectionIndicatorWidth: 3,
24
+ selectionBackground: '#fff9e6',
25
+ // Checkbox - rounded style
26
+ checkboxStyle: 'rounded',
27
+ checkboxColor: '#2196F3',
28
+ // Loading - skeleton for modern feel
29
+ skeletonLoading: true,
30
+ skeletonRowCount: 8,
31
+ // Borders & Spacing
32
+ borderRadius: 0,
33
+ cellPadding: 'normal',
34
+ // Accent color
35
+ accentColor: '#2196F3'
36
+ };
37
+ //# sourceMappingURL=grid-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid-types.js","sourceRoot":"","sources":["../../../../src/lib/entity-data-grid/models/grid-types.ts"],"names":[],"mappings":"AA6jBA;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAA+B;IAC/D,sCAAsC;IACtC,WAAW,EAAE,UAAU;IACvB,gBAAgB,EAAE,EAAE,EAAG,2BAA2B;IAClD,eAAe,EAAE,EAAE,EAAI,2BAA2B;IAClD,YAAY,EAAE,IAAI;IAElB,yDAAyD;IACzD,aAAa,EAAE,IAAI;IACnB,oBAAoB,EAAE,QAAQ;IAC9B,gBAAgB,EAAE,IAAI;IACtB,uBAAuB,EAAE,GAAG;IAE5B,mCAAmC;IACnC,iBAAiB,EAAE,IAAI;IACvB,aAAa,EAAE,IAAI;IACnB,eAAe,EAAE,IAAI;IACrB,YAAY,EAAE,IAAI;IAClB,aAAa,EAAE,IAAI;IAEnB,0EAA0E;IAC1E,uBAAuB,EAAE,SAAS;IAClC,uBAAuB,EAAE,CAAC;IAC1B,mBAAmB,EAAE,SAAS;IAE9B,2BAA2B;IAC3B,aAAa,EAAE,SAAS;IACxB,aAAa,EAAE,SAAS;IAExB,qCAAqC;IACrC,eAAe,EAAE,IAAI;IACrB,gBAAgB,EAAE,CAAC;IAEnB,oBAAoB;IACpB,YAAY,EAAE,CAAC;IACf,WAAW,EAAE,QAAQ;IAErB,eAAe;IACf,WAAW,EAAE,SAAS;CACvB,CAAC"}
@@ -1,9 +1,11 @@
1
1
  import { EventEmitter, OnChanges, OnInit, OnDestroy, SimpleChanges, ChangeDetectorRef } from '@angular/core';
2
- import { EntityInfo, EntityFieldInfo } from '@memberjunction/core';
2
+ import { EntityInfo, EntityFieldInfo, RunViewParams } from '@memberjunction/core';
3
3
  import { BaseEntity } from '@memberjunction/core';
4
4
  import { UserViewEntityExtended } from '@memberjunction/core-entities';
5
5
  import { TimelineGroup, TimeSegmentGrouping, TimelineSortOrder, AfterEventClickArgs } from '@memberjunction/ng-timeline';
6
6
  import { EntityViewMode, EntityViewerConfig, RecordSelectedEvent, RecordOpenedEvent, DataLoadedEvent, FilteredCountChangedEvent, CardTemplate, GridColumnDef, SortState, SortChangedEvent, PaginationState, ViewGridStateConfig, GridStateChangedEvent, TimelineOrientation, TimelineState } from '../types';
7
+ import { AfterRowClickEventArgs, AfterRowDoubleClickEventArgs, AfterSortEventArgs } from '../entity-data-grid/events/grid-events';
8
+ import { GridToolbarConfig, GridSelectionMode } from '../entity-data-grid/models/grid-types';
7
9
  import * as i0 from "@angular/core";
8
10
  /**
9
11
  * EntityViewerComponent - Full-featured composite component for viewing entity data
@@ -96,6 +98,23 @@ export declare class EntityViewerComponent implements OnInit, OnChanges, OnDestr
96
98
  get timelineConfig(): TimelineState | null;
97
99
  set timelineConfig(value: TimelineState | null);
98
100
  private _timelineConfig;
101
+ /**
102
+ * Whether to show the grid toolbar.
103
+ * When false, the grid is displayed without its own toolbar - useful when
104
+ * entity-viewer provides its own filter/actions in the header.
105
+ * @default false
106
+ */
107
+ showGridToolbar: boolean;
108
+ /**
109
+ * Grid toolbar configuration - controls which buttons are shown and their behavior
110
+ * When not provided, uses sensible defaults
111
+ */
112
+ gridToolbarConfig: Partial<GridToolbarConfig> | null;
113
+ /**
114
+ * Grid selection mode
115
+ * @default 'single'
116
+ */
117
+ gridSelectionMode: GridSelectionMode;
99
118
  /**
100
119
  * Emitted when a record is selected (single click)
101
120
  */
@@ -132,6 +151,27 @@ export declare class EntityViewerComponent implements OnInit, OnChanges, OnDestr
132
151
  * Emitted when timeline configuration changes (date field, grouping, etc.)
133
152
  */
134
153
  timelineConfigChange: EventEmitter<TimelineState>;
154
+ /**
155
+ * Emitted when the Add/New button is clicked in the grid toolbar
156
+ */
157
+ addRequested: EventEmitter<void>;
158
+ /**
159
+ * Emitted when the Delete button is clicked in the grid toolbar
160
+ * Includes the selected records to be deleted
161
+ */
162
+ deleteRequested: EventEmitter<{
163
+ records: BaseEntity[];
164
+ }>;
165
+ /**
166
+ * Emitted when the Refresh button is clicked in the grid toolbar
167
+ */
168
+ refreshRequested: EventEmitter<void>;
169
+ /**
170
+ * Emitted when the Export button is clicked in the grid toolbar
171
+ */
172
+ exportRequested: EventEmitter<{
173
+ format: 'excel' | 'csv' | 'json';
174
+ }>;
135
175
  internalViewMode: EntityViewMode;
136
176
  internalFilterText: string;
137
177
  debouncedFilterText: string;
@@ -144,6 +184,10 @@ export declare class EntityViewerComponent implements OnInit, OnChanges, OnDestr
144
184
  hiddenFieldMatches: Map<string, string>;
145
185
  /** Current sort state */
146
186
  internalSortState: SortState | null;
187
+ /** Cached grid params to avoid recreating object on every change detection */
188
+ private _cachedGridParams;
189
+ private _lastGridParamsEntity;
190
+ private _lastGridParamsViewEntity;
147
191
  /** Pagination state */
148
192
  pagination: PaginationState;
149
193
  /** Whether the current entity has date fields available for timeline view */
@@ -185,10 +229,25 @@ export declare class EntityViewerComponent implements OnInit, OnChanges, OnDestr
185
229
  * Get the effective sort state (external or internal)
186
230
  */
187
231
  get effectiveSortState(): SortState | null;
232
+ /**
233
+ * Get the OrderBy string for mj-entity-data-grid from the effective sort state
234
+ */
235
+ get effectiveSortOrderBy(): string;
188
236
  /**
189
237
  * Get merged configuration with defaults
190
238
  */
191
239
  get effectiveConfig(): Required<EntityViewerConfig>;
240
+ /**
241
+ * Get cached grid params - only recreates object when entity or viewEntity changes
242
+ * This prevents Angular from seeing a new object reference on every change detection
243
+ * which would cause the grid to reinitialize
244
+ */
245
+ get gridParams(): RunViewParams | null;
246
+ /**
247
+ * Get the effective grid toolbar configuration
248
+ * Merges user-provided config with defaults appropriate for entity-viewer context
249
+ */
250
+ get effectiveGridToolbarConfig(): GridToolbarConfig;
192
251
  /**
193
252
  * Get the records to display (external or internal)
194
253
  */
@@ -280,6 +339,37 @@ export declare class EntityViewerComponent implements OnInit, OnChanges, OnDestr
280
339
  * Handle load more from pagination component
281
340
  */
282
341
  onLoadMore(): void;
342
+ /**
343
+ * Handle row click from mj-entity-data-grid
344
+ * Maps to recordSelected event for parent components
345
+ */
346
+ onDataGridRowClick(event: AfterRowClickEventArgs): void;
347
+ /**
348
+ * Handle row double-click from mj-entity-data-grid
349
+ * Maps to recordOpened event for parent components
350
+ */
351
+ onDataGridRowDoubleClick(event: AfterRowDoubleClickEventArgs): void;
352
+ /**
353
+ * Handle sort changed from mj-entity-data-grid
354
+ * Maps to sortChanged event for parent components
355
+ */
356
+ onDataGridSortChanged(event: AfterSortEventArgs): void;
357
+ /**
358
+ * Handle Add/New button click from data grid toolbar
359
+ */
360
+ onGridAddRequested(): void;
361
+ /**
362
+ * Handle Refresh button click from data grid toolbar
363
+ */
364
+ onGridRefreshRequested(): void;
365
+ /**
366
+ * Handle Delete button click from data grid toolbar
367
+ */
368
+ onGridDeleteRequested(records: BaseEntity[]): void;
369
+ /**
370
+ * Handle Export button click from data grid toolbar
371
+ */
372
+ onGridExportRequested(): void;
283
373
  /**
284
374
  * Handle timeline event click - emit as record selection
285
375
  */
@@ -347,6 +437,6 @@ export declare class EntityViewerComponent implements OnInit, OnChanges, OnDestr
347
437
  */
348
438
  private findSubtitleField;
349
439
  static ɵfac: i0.ɵɵFactoryDeclaration<EntityViewerComponent, never>;
350
- static ɵcmp: i0.ɵɵComponentDeclaration<EntityViewerComponent, "mj-entity-viewer", never, { "entity": { "alias": "entity"; "required": false; }; "records": { "alias": "records"; "required": false; }; "config": { "alias": "config"; "required": false; }; "selectedRecordId": { "alias": "selectedRecordId"; "required": false; }; "viewMode": { "alias": "viewMode"; "required": false; }; "filterText": { "alias": "filterText"; "required": false; }; "sortState": { "alias": "sortState"; "required": false; }; "gridColumns": { "alias": "gridColumns"; "required": false; }; "cardTemplate": { "alias": "cardTemplate"; "required": false; }; "viewEntity": { "alias": "viewEntity"; "required": false; }; "gridState": { "alias": "gridState"; "required": false; }; "timelineConfig": { "alias": "timelineConfig"; "required": false; }; }, { "recordSelected": "recordSelected"; "recordOpened": "recordOpened"; "dataLoaded": "dataLoaded"; "viewModeChange": "viewModeChange"; "filterTextChange": "filterTextChange"; "filteredCountChanged": "filteredCountChanged"; "sortChanged": "sortChanged"; "gridStateChanged": "gridStateChanged"; "timelineConfigChange": "timelineConfigChange"; }, never, never, false, never>;
440
+ static ɵcmp: i0.ɵɵComponentDeclaration<EntityViewerComponent, "mj-entity-viewer", never, { "entity": { "alias": "entity"; "required": false; }; "records": { "alias": "records"; "required": false; }; "config": { "alias": "config"; "required": false; }; "selectedRecordId": { "alias": "selectedRecordId"; "required": false; }; "viewMode": { "alias": "viewMode"; "required": false; }; "filterText": { "alias": "filterText"; "required": false; }; "sortState": { "alias": "sortState"; "required": false; }; "gridColumns": { "alias": "gridColumns"; "required": false; }; "cardTemplate": { "alias": "cardTemplate"; "required": false; }; "viewEntity": { "alias": "viewEntity"; "required": false; }; "gridState": { "alias": "gridState"; "required": false; }; "timelineConfig": { "alias": "timelineConfig"; "required": false; }; "showGridToolbar": { "alias": "showGridToolbar"; "required": false; }; "gridToolbarConfig": { "alias": "gridToolbarConfig"; "required": false; }; "gridSelectionMode": { "alias": "gridSelectionMode"; "required": false; }; }, { "recordSelected": "recordSelected"; "recordOpened": "recordOpened"; "dataLoaded": "dataLoaded"; "viewModeChange": "viewModeChange"; "filterTextChange": "filterTextChange"; "filteredCountChanged": "filteredCountChanged"; "sortChanged": "sortChanged"; "gridStateChanged": "gridStateChanged"; "timelineConfigChange": "timelineConfigChange"; "addRequested": "addRequested"; "deleteRequested": "deleteRequested"; "refreshRequested": "refreshRequested"; "exportRequested": "exportRequested"; }, never, never, false, never>;
351
441
  }
352
442
  //# sourceMappingURL=entity-viewer.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity-viewer.component.d.ts","sourceRoot":"","sources":["../../../src/lib/entity-viewer/entity-viewer.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-viewer.component.d.ts","sourceRoot":"","sources":["../../../src/lib/entity-viewer/entity-viewer.component.ts"],"names":[],"mappings":"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"}