@acorex/platform 20.9.37 → 20.9.38

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acorex/platform",
3
- "version": "20.9.37",
3
+ "version": "20.9.38",
4
4
  "peerDependencies": {
5
5
  "@acorex/cdk": "^19.0.0 || ^20.0.0 || ^22.0.0-next.0 || ^22.0.0-next.0",
6
6
  "@acorex/core": "^19.0.0 || ^20.0.0 || ^22.0.0-next.0 || ^22.0.0-next.0",
@@ -2777,6 +2777,12 @@ declare class AXPEntityListWidgetViewComponent extends AXPValueWidgetComponent {
2777
2777
  protected selectedItems: _angular_core.WritableSignal<any[]>;
2778
2778
  protected toolbarNode: _angular_core.WritableSignal<AXPWidgetNode | null>;
2779
2779
  protected destroyed: Subject<void>;
2780
+ /** Invalidates in-flight filter/refresh work on remount, rapid page switches, or destroy. */
2781
+ private opGeneration;
2782
+ private isViewDestroyed;
2783
+ private initListTimeoutId;
2784
+ /** Unpatched data-list refresh (hits the grid). Prefer this over the scoped patch to avoid recursion. */
2785
+ private boundDataListRefresh;
2780
2786
  protected entitySource: _angular_core.Signal<any>;
2781
2787
  protected excludeColumns: _angular_core.Signal<string[]>;
2782
2788
  protected includeColumns: _angular_core.Signal<string[]>;
@@ -2812,17 +2818,33 @@ declare class AXPEntityListWidgetViewComponent extends AXPValueWidgetComponent {
2812
2818
  */
2813
2819
  private mergeToolbarFilters;
2814
2820
  private getMergedToolbarFilters;
2821
+ private beginOp;
2822
+ private isOpStale;
2823
+ private delay;
2815
2824
  /**
2816
2825
  * Applies merged route + parent-scope filters to the widget value and data source.
2817
2826
  */
2818
2827
  private applyMergedRouteFiltersToList;
2819
- /** Syncs toolbar filters to context and AXDataSource (retries until data-list is mounted). */
2828
+ /**
2829
+ * Syncs toolbar filters to context and AXDataSource (retries until data-list is mounted).
2830
+ * Stale generations (destroy / newer op) exit without touching the grid.
2831
+ */
2820
2832
  private reapplyScopedFiltersToDataSource;
2821
2833
  /**
2822
2834
  * Entity lists use `fetchDataMode: 'manual'`; after scoped filters reach the data source,
2823
- * the grid must be refreshed once (initial #effect may run before the data-list is ready).
2835
+ * the grid must be refreshed once. Retries until the data-table view child accepts refresh
2836
+ * so rapid relatedEntity page switches cannot leave the table on "no data loaded yet".
2824
2837
  */
2825
2838
  private triggerInitialLoadIfNeeded;
2839
+ /**
2840
+ * Calls the unpatched data-list refresh until the grid is ready or the op is stale.
2841
+ */
2842
+ private refreshWhenGridReady;
2843
+ /**
2844
+ * Prefer the bound original refresh (pre-patch). Falls back to an unpatched instance refresh.
2845
+ */
2846
+ private resolveDataListRefresh;
2847
+ private refreshWhenGridReadyWith;
2826
2848
  /**
2827
2849
  * Re-evaluates related-entity list filters from the live dialog form context (e.g. after create saves the main row id).
2828
2850
  */
@@ -2845,6 +2867,10 @@ declare class AXPEntityListWidgetViewComponent extends AXPValueWidgetComponent {
2845
2867
  * Refreshes the embedded data list (toolbar / workflow). In wizard mode, `refresh` is patched to re-apply scoped filters first.
2846
2868
  */
2847
2869
  private refreshGridWithParentScopedFilters;
2870
+ /**
2871
+ * Re-applies parent-scoped filters then refreshes the grid, ignoring stale overlapping calls.
2872
+ */
2873
+ private runScopedDataListRefresh;
2848
2874
  protected queries: undefined;
2849
2875
  /**
2850
2876
  * Validates that all required dependencies are available
@@ -2487,7 +2487,11 @@ declare class AXPDataListWidgetViewComponent extends AXPValueWidgetComponent<any
2487
2487
  [name: string]: unknown;
2488
2488
  })[];
2489
2489
  api(): AXPWidgetCoreElementAPI;
2490
- refresh(): void;
2490
+ /**
2491
+ * Returns true when the data-table view child accepted the refresh.
2492
+ * Callers must retry while this is false (grid may not be ready yet after remount).
2493
+ */
2494
+ refresh(): boolean;
2491
2495
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPDataListWidgetViewComponent, never>;
2492
2496
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPDataListWidgetViewComponent, "axp-data-list-widget-view", never, {}, {}, never, never, true, never>;
2493
2497
  }