@memberjunction/ng-entity-viewer 6.1.3 → 6.2.0-edge.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 (40) hide show
  1. package/dist/lib/aggregate-panel/aggregate-panel.component.d.ts +18 -2
  2. package/dist/lib/aggregate-panel/aggregate-panel.component.d.ts.map +1 -1
  3. package/dist/lib/aggregate-panel/aggregate-panel.component.js +47 -18
  4. package/dist/lib/aggregate-panel/aggregate-panel.component.js.map +1 -1
  5. package/dist/lib/entity-cards/entity-cards.component.d.ts +1 -0
  6. package/dist/lib/entity-cards/entity-cards.component.d.ts.map +1 -1
  7. package/dist/lib/entity-cards/entity-cards.component.js +11 -2
  8. package/dist/lib/entity-cards/entity-cards.component.js.map +1 -1
  9. package/dist/lib/entity-data-grid/entity-data-grid.component.d.ts +18 -0
  10. package/dist/lib/entity-data-grid/entity-data-grid.component.d.ts.map +1 -1
  11. package/dist/lib/entity-data-grid/entity-data-grid.component.js +71 -25
  12. package/dist/lib/entity-data-grid/entity-data-grid.component.js.map +1 -1
  13. package/dist/lib/entity-record-detail-panel/entity-record-detail-panel.component.d.ts.map +1 -1
  14. package/dist/lib/entity-record-detail-panel/entity-record-detail-panel.component.js +10 -8
  15. package/dist/lib/entity-record-detail-panel/entity-record-detail-panel.component.js.map +1 -1
  16. package/dist/lib/entity-viewer/entity-viewer.component.d.ts +11 -0
  17. package/dist/lib/entity-viewer/entity-viewer.component.d.ts.map +1 -1
  18. package/dist/lib/entity-viewer/entity-viewer.component.js +29 -0
  19. package/dist/lib/entity-viewer/entity-viewer.component.js.map +1 -1
  20. package/dist/lib/utils/aggregate-field.util.d.ts +21 -0
  21. package/dist/lib/utils/aggregate-field.util.d.ts.map +1 -0
  22. package/dist/lib/utils/aggregate-field.util.js +40 -0
  23. package/dist/lib/utils/aggregate-field.util.js.map +1 -0
  24. package/dist/lib/view-config-panel/view-config-panel.component.d.ts +5 -1
  25. package/dist/lib/view-config-panel/view-config-panel.component.d.ts.map +1 -1
  26. package/dist/lib/view-config-panel/view-config-panel.component.js +15 -8
  27. package/dist/lib/view-config-panel/view-config-panel.component.js.map +1 -1
  28. package/dist/lib/view-types/renderers/grid-view-renderer.component.d.ts +93 -3
  29. package/dist/lib/view-types/renderers/grid-view-renderer.component.d.ts.map +1 -1
  30. package/dist/lib/view-types/renderers/grid-view-renderer.component.js +432 -10
  31. package/dist/lib/view-types/renderers/grid-view-renderer.component.js.map +1 -1
  32. package/dist/module.d.ts +5 -4
  33. package/dist/module.d.ts.map +1 -1
  34. package/dist/module.js +8 -1
  35. package/dist/module.js.map +1 -1
  36. package/dist/public-api.d.ts +1 -0
  37. package/dist/public-api.d.ts.map +1 -1
  38. package/dist/public-api.js +1 -0
  39. package/dist/public-api.js.map +1 -1
  40. package/package.json +20 -19
@@ -1,5 +1,6 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { EntityInfo, RunViewParams } from '@memberjunction/core';
1
+ import { EventEmitter, OnDestroy } from '@angular/core';
2
+ import { EntityInfo, RunViewParams, CompositeKey } from '@memberjunction/core';
3
+ import { type FieldComparison, type MergeConfig, type MergeConfirmedEvent } from '@memberjunction/ng-record-merge';
3
4
  import { BaseAngularComponent } from '@memberjunction/ng-base-types';
4
5
  import { PageChangeEvent } from '@memberjunction/ng-pagination';
5
6
  import { ListManagementDialogConfig, ListManagementResult } from '@memberjunction/ng-list-management';
@@ -101,7 +102,7 @@ export interface GridViewConfig {
101
102
  * by those exact names via `setInput`), rather than MJ's usual PascalCase for public members —
102
103
  * mirroring the Cards and Cluster renderers.
103
104
  */
104
- export declare class GridViewRendererComponent extends BaseAngularComponent implements IViewRenderer<GridViewConfig> {
105
+ export declare class GridViewRendererComponent extends BaseAngularComponent implements IViewRenderer<GridViewConfig>, OnDestroy {
105
106
  /** Change detection ref used to flush dialog visibility toggles driven by grid events. */
106
107
  private cdr;
107
108
  /** The entity whose records are being rendered. Used to build default params + resolve selection. */
@@ -288,6 +289,95 @@ export declare class GridViewRendererComponent extends BaseAngularComponent impl
288
289
  onDeleteConfirmed(): Promise<void>;
289
290
  /** Delete cancelled → discard the staged records and close the confirm dialog. */
290
291
  onDeleteCancelled(): void;
292
+ /**
293
+ * The in-flight merge, or null when the panel is closed. Holds everything the panel needs
294
+ * plus the dependency preview, so the panel itself stays a pure presentation component.
295
+ */
296
+ protected mergeState: {
297
+ Config: MergeConfig;
298
+ Fields: FieldComparison[];
299
+ IsMerging: boolean;
300
+ DependencyNote: string | null;
301
+ /** The entity and the two records' real keys — the Config only carries their serialized form. */
302
+ Entity: EntityInfo;
303
+ Keys: [CompositeKey, CompositeKey];
304
+ } | null;
305
+ /** A one-line status shown under the grid — why a merge was refused, or how one ended. */
306
+ protected mergeNotice: string | null;
307
+ /** Auto-dismiss timer for {@link mergeNotice}; cleared whenever the notice is replaced. */
308
+ private mergeNoticeTimer;
309
+ /**
310
+ * How long a merge notice stays up before dismissing itself. The banner is fixed-position over
311
+ * the whole application, so leaving it until the next merge pins it across navigation and every
312
+ * other record the user visits afterwards.
313
+ */
314
+ private static readonly MERGE_NOTICE_TIMEOUT_MS;
315
+ private readonly comparison;
316
+ ngOnDestroy(): void;
317
+ /** Dismiss the merge notice from its own close button. */
318
+ onDismissMergeNotice(): void;
319
+ /**
320
+ * Set (or clear) the merge notice, replacing any pending auto-dismiss. Every write to
321
+ * `mergeNotice` goes through here so a notice cannot outlive its timer or strand an old one.
322
+ */
323
+ private setMergeNotice;
324
+ /**
325
+ * Show the Merge button only where merging can actually succeed: the entity opts in and the
326
+ * user can both update the survivor and delete the loser.
327
+ */
328
+ protected get effectiveShowMergeButton(): boolean;
329
+ /** The record that will be deleted, named so the user sees the choice before confirming. */
330
+ protected get mergeLoserLabel(): string;
331
+ /**
332
+ * The grid asked to merge the selected rows. Compare them, preview what will move, and open
333
+ * the panel — nothing is written until the user confirms.
334
+ */
335
+ onMergeRequested(event: {
336
+ entityInfo: EntityInfo;
337
+ records: Record<string, unknown>[];
338
+ }): Promise<void>;
339
+ /** The user chose which record survives; differing fields default to that record's values. */
340
+ onSurvivorChange(side: 'left' | 'right'): void;
341
+ private prepareMerge;
342
+ /** The user confirmed: merge, then reload the page so the loser disappears from the grid. */
343
+ onMergeConfirmed(event: MergeConfirmedEvent): Promise<void>;
344
+ /** Merge cancelled → close the panel, write nothing. */
345
+ onMergeCancelled(): void;
346
+ /**
347
+ * Fields whose resolution has to travel, and only those: the survivor already holds the value
348
+ * for any field resolved to its own side.
349
+ *
350
+ * The distinction that matters is "the user did not change this" versus "the user chose the
351
+ * blank side". Both arrive as an absent value, so deciding from the value alone drops a real
352
+ * resolution — the survivor silently keeps its old value on the one operation where someone is
353
+ * reconciling two records field by field, and the loser is gone afterwards. So the skip is
354
+ * decided from WHICH SIDE was chosen, and a chosen blank is written through as null.
355
+ */
356
+ private buildFieldMap;
357
+ /**
358
+ * True when any of these records has a row in an IS-A child entity, null when that could not be
359
+ * determined (a child view the user cannot read answers `Success: false`, which must not pass
360
+ * for "no rows"). `MergeRecords` has no subtype handling: the child rows share the parent's key,
361
+ * so merging would collide. Refuse rather than half-merge.
362
+ */
363
+ private hasIsAChildRows;
364
+ /**
365
+ * `(childPk = v1) OR (childPk = v2)` against one child entity, built from the parent's key
366
+ * VALUES and the child's own key COLUMN NAMES, paired positionally because an IS-A child shares
367
+ * its parent's key by design. Null when the child's key arity differs, which means it does not
368
+ * share the key and cannot hold a subtype row for these records.
369
+ */
370
+ private buildChildKeyFilter;
371
+ /**
372
+ * How many linked records will move to the survivor — the thing users most want to know.
373
+ *
374
+ * Indexes `counts[0]` / `counts[1]` directly: `onMergeRequested` refuses anything other than
375
+ * exactly two records before reaching here, and the merge panel's config is two-sided by
376
+ * construction, so this is only ever called with a pair. Widen both together.
377
+ */
378
+ private describeDependencies;
379
+ /** A human label for a row — its name field when it has one, else its key. */
380
+ private labelFor;
291
381
  /** Build a {@link ViewDataRequest} that re-requests the host's current page/pageSize, if known. */
292
382
  private currentPageDataRequest;
293
383
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"grid-view-renderer.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/view-types/renderers/grid-view-renderer.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grid-view-renderer.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/view-types/renderers/grid-view-renderer.component.ts"],"names":[],"mappings":"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"}