@esfaenza/es-table 20.3.36 → 20.3.37

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/index.d.ts CHANGED
@@ -2604,6 +2604,19 @@ declare class EsTable2Component implements ControlValueAccessor, AfterContentIni
2604
2604
  CountLabel: _angular_core.InputSignal<string>;
2605
2605
  Height: _angular_core.InputSignal<string>;
2606
2606
  MaxHeight: _angular_core.InputSignal<number>;
2607
+ /**
2608
+ * Rende solo le righe VISIBILI nel viewport (più un margine), con due righe
2609
+ * distanziatrici a compensare l'altezza mancante. Serve a tabelle molto lunghe
2610
+ * rese in un colpo solo (paginazione disattivata o pagina enorme).
2611
+ *
2612
+ * È OPT-IN: da spento il corpo della tabella è renderizzato esattamente come prima.
2613
+ * Richiede uno scroller ad altezza limitata (`[MaxHeight]`/`[Height]`) e righe di
2614
+ * altezza UNIFORME. Su raggruppamento e gerarchia si autodisattiva: lì il ciclo
2615
+ * salta le righe non visibili, quindi indice di riga e posizione non coincidono.
2616
+ */
2617
+ VirtualScroll: _angular_core.InputSignal<boolean>;
2618
+ /** Altezza di riga in px per il calcolo della finestra; se assente viene MISURATA dal DOM */
2619
+ VirtualRowHeight: _angular_core.InputSignal<number>;
2607
2620
  EmptySpaceBackgroundColor: _angular_core.InputSignal<string>;
2608
2621
  HighCellDensity: _angular_core.InputSignal<boolean>;
2609
2622
  HeaderHidden: _angular_core.InputSignal<boolean>;
@@ -2754,6 +2767,41 @@ declare class EsTable2Component implements ControlValueAccessor, AfterContentIni
2754
2767
  left: number | null;
2755
2768
  groupStart: boolean;
2756
2769
  }[]>;
2770
+ /** Righe extra rese sopra e sotto il viewport, per non vedere il vuoto durante lo scroll */
2771
+ private readonly VIRTUAL_OVERSCAN;
2772
+ /** Indice della prima riga della finestra */
2773
+ private vFirst;
2774
+ /** Altezza del viewport dello scroller (misurata) */
2775
+ private vViewportH;
2776
+ /** Altezza di riga misurata dal DOM (0 = non ancora nota) */
2777
+ private vMeasuredRowH;
2778
+ /** Altezza di riga effettiva: input esplicito, altrimenti misura */
2779
+ private virtualRowH;
2780
+ /**
2781
+ * Virtualizzazione attiva. Esclusi raggruppamento e gerarchia: in quelle modalità
2782
+ * il template salta le righe non espanse, quindi la finestra calcolata sugli indici
2783
+ * non corrisponderebbe alle righe effettivamente rese.
2784
+ */
2785
+ virtualActive: _angular_core.Signal<boolean>;
2786
+ /** Finestra corrente, o `null` per rendere tutto (fallback sicuro) */
2787
+ virtualWindow: _angular_core.Signal<{
2788
+ start: number;
2789
+ end: number;
2790
+ padTop: number;
2791
+ padBottom: number;
2792
+ }>;
2793
+ /** Indice ASSOLUTO della prima riga resa: 0 quando non si virtualizza */
2794
+ vStart: _angular_core.Signal<number>;
2795
+ /** Righe effettivamente rese: l'intero `boundSource()` se non si virtualizza */
2796
+ renderedRows: _angular_core.Signal<Est2Row[]>;
2797
+ /** Scroll dello scroller: sposta la finestra solo quando cambia davvero riga */
2798
+ onScrollerScroll(ev: Event): void;
2799
+ /** Misura viewport e altezza di riga dal DOM (una riga NON distanziatrice) */
2800
+ private measureVirtualMetrics;
2801
+ private scrollEl?;
2802
+ private scrollRO?;
2803
+ /** ViewChild-setter sullo scroller: da qui partono le misure della virtualizzazione */
2804
+ set scrollRefEl(ref: ElementRef<HTMLElement> | undefined);
2757
2805
  /** Numero di colonne pinnate visibili */
2758
2806
  pinnedCount: _angular_core.Signal<number>;
2759
2807
  /** true se c'è almeno una colonna pinnata */
@@ -3323,7 +3371,7 @@ declare class EsTable2Component implements ControlValueAccessor, AfterContentIni
3323
3371
  trackRow: (i: number, item: any) => any;
3324
3372
  trackCol: (_: number, col: Est2Column) => string;
3325
3373
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EsTable2Component, [{ optional: true; self: true; }, null, null, { optional: true; }, null, null, { optional: true; }, { optional: true; }, { optional: true; }]>;
3326
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<EsTable2Component, "es-table2", never, { "ContextMenu": { "alias": "ContextMenu"; "required": false; }; "_Selection": { "alias": "Selection"; "required": false; "isSignal": true; }; "SingleSelection": { "alias": "SingleSelection"; "required": false; "isSignal": true; }; "SelectionDisabled": { "alias": "SelectionDisabled"; "required": false; "isSignal": true; }; "_SelectAll": { "alias": "SelectAll"; "required": false; "isSignal": true; }; "_UseSelectionCache": { "alias": "UseSelectionCache"; "required": false; "isSignal": true; }; "_ShiftClick": { "alias": "ShiftClick"; "required": false; "isSignal": true; }; "_OrderByColumn": { "alias": "OrderByColumn"; "required": false; "isSignal": true; }; "MultipleOrderingDirectives": { "alias": "MultipleOrderingDirectives"; "required": false; "isSignal": true; }; "Removal": { "alias": "Removal"; "required": false; "isSignal": true; }; "RemovalCondition": { "alias": "RemovalCondition"; "required": false; "isSignal": true; }; "RowClassAssigner": { "alias": "RowClassAssigner"; "required": false; }; "_HidePaging": { "alias": "HidePaging"; "required": false; "isSignal": true; }; "_HidePagingCount": { "alias": "HidePagingCount"; "required": false; "isSignal": true; }; "_HidePagingButtons": { "alias": "HidePagingButtons"; "required": false; "isSignal": true; }; "_AllSearch": { "alias": "AllSearch"; "required": false; "isSignal": true; }; "_PagingStyle": { "alias": "PagingStyle"; "required": false; "isSignal": true; }; "_ArraymodeItemsPerPage": { "alias": "ArraymodeItemsPerPage"; "required": false; "isSignal": true; }; "_UseArrayModePaging": { "alias": "UseArrayModePaging"; "required": false; "isSignal": true; }; "CountLabel": { "alias": "CountLabel"; "required": false; "isSignal": true; }; "Height": { "alias": "Height"; "required": false; "isSignal": true; }; "MaxHeight": { "alias": "MaxHeight"; "required": false; "isSignal": true; }; "EmptySpaceBackgroundColor": { "alias": "EmptySpaceBackgroundColor"; "required": false; "isSignal": true; }; "HighCellDensity": { "alias": "HighCellDensity"; "required": false; "isSignal": true; }; "HeaderHidden": { "alias": "HeaderHidden"; "required": false; "isSignal": true; }; "BodyHidden": { "alias": "BodyHidden"; "required": false; "isSignal": true; }; "ShowLoadingOnBootstrap": { "alias": "ShowLoadingOnBootstrap"; "required": false; "isSignal": true; }; "_DefaultAlignment": { "alias": "DefaultAlignment"; "required": false; "isSignal": true; }; "_TableClass": { "alias": "TableClass"; "required": false; "isSignal": true; }; "_ContainerClass": { "alias": "ContainerClass"; "required": false; "isSignal": true; }; "EsTableHandledSearch": { "alias": "EsTableHandledSearch"; "required": false; "isSignal": true; }; "SearchThrottle": { "alias": "SearchThrottle"; "required": false; "isSignal": true; }; "_ColumnsResizable": { "alias": "ColumnsResizable"; "required": false; "isSignal": true; }; "_ColumnsPinnable": { "alias": "ColumnsPinnable"; "required": false; "isSignal": true; }; "_HiddenColumns": { "alias": "HiddenColumns"; "required": false; "isSignal": true; }; "_ColumnsOrdering": { "alias": "ColumnsOrdering"; "required": false; "isSignal": true; }; "_Export": { "alias": "Export"; "required": false; "isSignal": true; }; "XLSXExport": { "alias": "XLSXExport"; "required": false; "isSignal": true; }; "CSVExport": { "alias": "CSVExport"; "required": false; "isSignal": true; }; "ExportFileName": { "alias": "ExportFileName"; "required": false; "isSignal": true; }; "ExportOnlyVisibleColumns": { "alias": "ExportOnlyVisibleColumns"; "required": false; "isSignal": true; }; "ExportFunction": { "alias": "ExportFunction"; "required": false; }; "CornerMenuOptions": { "alias": "CornerMenuOptions"; "required": false; "isSignal": true; }; "DynamicOperations": { "alias": "DynamicOperations"; "required": false; "isSignal": true; }; "_DynamicRowColumnsDefinition": { "alias": "DynamicRowColumnsDefinition"; "required": false; "isSignal": true; }; "Hierarchy": { "alias": "Hierarchy"; "required": false; "isSignal": true; }; "_ParentKey": { "alias": "ParentKey"; "required": false; "isSignal": true; }; "_OwnKey": { "alias": "OwnKey"; "required": false; "isSignal": true; }; "_AutoSortHierarchy": { "alias": "AutoSortHierarchy"; "required": false; "isSignal": true; }; "StartsExpanded": { "alias": "StartsExpanded"; "required": false; "isSignal": true; }; "CascadeSelection": { "alias": "CascadeSelection"; "required": false; "isSignal": true; }; "_SavePreferences": { "alias": "SavePreferences"; "required": false; "isSignal": true; }; "Name": { "alias": "Name"; "required": false; "isSignal": true; }; "_RowGroupingPagingStyle": { "alias": "RowGroupingPagingStyle"; "required": false; "isSignal": true; }; "_ShowItemGroupsColumns": { "alias": "ShowItemGroupsColumns"; "required": false; "isSignal": true; }; "Editable": { "alias": "Editable"; "required": false; "isSignal": true; }; "RangeSelection": { "alias": "RangeSelection"; "required": false; "isSignal": true; }; "ItemSourceProperty": { "alias": "ItemSourceProperty"; "required": false; "isSignal": true; }; "HasHeaderGroup": { "alias": "HasHeaderGroup"; "required": false; "isSignal": true; }; "HasSecondaryHeaderGroup": { "alias": "HasSecondaryHeaderGroup"; "required": false; "isSignal": true; }; "SearchView": { "alias": "SearchView"; "required": false; "isSignal": true; }; "_AutoUpdate": { "alias": "AutoUpdate"; "required": false; "isSignal": true; }; "EsThTdProvider": { "alias": "EsThTdProvider"; "required": false; }; "globalCheck": { "alias": "globalCheck"; "required": false; "isSignal": true; }; "autoUpdate": { "alias": "autoUpdate"; "required": false; "isSignal": true; }; "seconds": { "alias": "seconds"; "required": false; "isSignal": true; }; "researchInProgress": { "alias": "researchInProgress"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; }; }, { "onOrderChanged": "onOrderChanged"; "onSearchRequest": "onSearchRequest"; "onSelectionChanged": "onSelectionChanged"; "onRemoval": "onRemoval"; "onAbortRemoval": "onAbortRemoval"; "onModelChange": "onModelChange"; "onOpenContextMenu": "onOpenContextMenu"; "onCornerAction": "onCornerAction"; "onDynamicOperation": "onDynamicOperation"; "globalCheck": "globalCheckChange"; "autoUpdate": "autoUpdateChange"; "seconds": "secondsChange"; "researchInProgress": "researchInProgressChange"; }, ["headerRef", "bodyRef", "thDirectives", "tdDirectives", "editorDirectives", "thTdProviders"], never, false, never>;
3374
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EsTable2Component, "es-table2", never, { "ContextMenu": { "alias": "ContextMenu"; "required": false; }; "_Selection": { "alias": "Selection"; "required": false; "isSignal": true; }; "SingleSelection": { "alias": "SingleSelection"; "required": false; "isSignal": true; }; "SelectionDisabled": { "alias": "SelectionDisabled"; "required": false; "isSignal": true; }; "_SelectAll": { "alias": "SelectAll"; "required": false; "isSignal": true; }; "_UseSelectionCache": { "alias": "UseSelectionCache"; "required": false; "isSignal": true; }; "_ShiftClick": { "alias": "ShiftClick"; "required": false; "isSignal": true; }; "_OrderByColumn": { "alias": "OrderByColumn"; "required": false; "isSignal": true; }; "MultipleOrderingDirectives": { "alias": "MultipleOrderingDirectives"; "required": false; "isSignal": true; }; "Removal": { "alias": "Removal"; "required": false; "isSignal": true; }; "RemovalCondition": { "alias": "RemovalCondition"; "required": false; "isSignal": true; }; "RowClassAssigner": { "alias": "RowClassAssigner"; "required": false; }; "_HidePaging": { "alias": "HidePaging"; "required": false; "isSignal": true; }; "_HidePagingCount": { "alias": "HidePagingCount"; "required": false; "isSignal": true; }; "_HidePagingButtons": { "alias": "HidePagingButtons"; "required": false; "isSignal": true; }; "_AllSearch": { "alias": "AllSearch"; "required": false; "isSignal": true; }; "_PagingStyle": { "alias": "PagingStyle"; "required": false; "isSignal": true; }; "_ArraymodeItemsPerPage": { "alias": "ArraymodeItemsPerPage"; "required": false; "isSignal": true; }; "_UseArrayModePaging": { "alias": "UseArrayModePaging"; "required": false; "isSignal": true; }; "CountLabel": { "alias": "CountLabel"; "required": false; "isSignal": true; }; "Height": { "alias": "Height"; "required": false; "isSignal": true; }; "MaxHeight": { "alias": "MaxHeight"; "required": false; "isSignal": true; }; "VirtualScroll": { "alias": "VirtualScroll"; "required": false; "isSignal": true; }; "VirtualRowHeight": { "alias": "VirtualRowHeight"; "required": false; "isSignal": true; }; "EmptySpaceBackgroundColor": { "alias": "EmptySpaceBackgroundColor"; "required": false; "isSignal": true; }; "HighCellDensity": { "alias": "HighCellDensity"; "required": false; "isSignal": true; }; "HeaderHidden": { "alias": "HeaderHidden"; "required": false; "isSignal": true; }; "BodyHidden": { "alias": "BodyHidden"; "required": false; "isSignal": true; }; "ShowLoadingOnBootstrap": { "alias": "ShowLoadingOnBootstrap"; "required": false; "isSignal": true; }; "_DefaultAlignment": { "alias": "DefaultAlignment"; "required": false; "isSignal": true; }; "_TableClass": { "alias": "TableClass"; "required": false; "isSignal": true; }; "_ContainerClass": { "alias": "ContainerClass"; "required": false; "isSignal": true; }; "EsTableHandledSearch": { "alias": "EsTableHandledSearch"; "required": false; "isSignal": true; }; "SearchThrottle": { "alias": "SearchThrottle"; "required": false; "isSignal": true; }; "_ColumnsResizable": { "alias": "ColumnsResizable"; "required": false; "isSignal": true; }; "_ColumnsPinnable": { "alias": "ColumnsPinnable"; "required": false; "isSignal": true; }; "_HiddenColumns": { "alias": "HiddenColumns"; "required": false; "isSignal": true; }; "_ColumnsOrdering": { "alias": "ColumnsOrdering"; "required": false; "isSignal": true; }; "_Export": { "alias": "Export"; "required": false; "isSignal": true; }; "XLSXExport": { "alias": "XLSXExport"; "required": false; "isSignal": true; }; "CSVExport": { "alias": "CSVExport"; "required": false; "isSignal": true; }; "ExportFileName": { "alias": "ExportFileName"; "required": false; "isSignal": true; }; "ExportOnlyVisibleColumns": { "alias": "ExportOnlyVisibleColumns"; "required": false; "isSignal": true; }; "ExportFunction": { "alias": "ExportFunction"; "required": false; }; "CornerMenuOptions": { "alias": "CornerMenuOptions"; "required": false; "isSignal": true; }; "DynamicOperations": { "alias": "DynamicOperations"; "required": false; "isSignal": true; }; "_DynamicRowColumnsDefinition": { "alias": "DynamicRowColumnsDefinition"; "required": false; "isSignal": true; }; "Hierarchy": { "alias": "Hierarchy"; "required": false; "isSignal": true; }; "_ParentKey": { "alias": "ParentKey"; "required": false; "isSignal": true; }; "_OwnKey": { "alias": "OwnKey"; "required": false; "isSignal": true; }; "_AutoSortHierarchy": { "alias": "AutoSortHierarchy"; "required": false; "isSignal": true; }; "StartsExpanded": { "alias": "StartsExpanded"; "required": false; "isSignal": true; }; "CascadeSelection": { "alias": "CascadeSelection"; "required": false; "isSignal": true; }; "_SavePreferences": { "alias": "SavePreferences"; "required": false; "isSignal": true; }; "Name": { "alias": "Name"; "required": false; "isSignal": true; }; "_RowGroupingPagingStyle": { "alias": "RowGroupingPagingStyle"; "required": false; "isSignal": true; }; "_ShowItemGroupsColumns": { "alias": "ShowItemGroupsColumns"; "required": false; "isSignal": true; }; "Editable": { "alias": "Editable"; "required": false; "isSignal": true; }; "RangeSelection": { "alias": "RangeSelection"; "required": false; "isSignal": true; }; "ItemSourceProperty": { "alias": "ItemSourceProperty"; "required": false; "isSignal": true; }; "HasHeaderGroup": { "alias": "HasHeaderGroup"; "required": false; "isSignal": true; }; "HasSecondaryHeaderGroup": { "alias": "HasSecondaryHeaderGroup"; "required": false; "isSignal": true; }; "SearchView": { "alias": "SearchView"; "required": false; "isSignal": true; }; "_AutoUpdate": { "alias": "AutoUpdate"; "required": false; "isSignal": true; }; "EsThTdProvider": { "alias": "EsThTdProvider"; "required": false; }; "globalCheck": { "alias": "globalCheck"; "required": false; "isSignal": true; }; "autoUpdate": { "alias": "autoUpdate"; "required": false; "isSignal": true; }; "seconds": { "alias": "seconds"; "required": false; "isSignal": true; }; "researchInProgress": { "alias": "researchInProgress"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; }; }, { "onOrderChanged": "onOrderChanged"; "onSearchRequest": "onSearchRequest"; "onSelectionChanged": "onSelectionChanged"; "onRemoval": "onRemoval"; "onAbortRemoval": "onAbortRemoval"; "onModelChange": "onModelChange"; "onOpenContextMenu": "onOpenContextMenu"; "onCornerAction": "onCornerAction"; "onDynamicOperation": "onDynamicOperation"; "globalCheck": "globalCheckChange"; "autoUpdate": "autoUpdateChange"; "seconds": "secondsChange"; "researchInProgress": "researchInProgressChange"; }, ["headerRef", "bodyRef", "thDirectives", "tdDirectives", "editorDirectives", "thTdProviders"], never, false, never>;
3327
3375
  }
3328
3376
 
3329
3377
  /** Componente rappresentante una Colonna della tabella */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esfaenza/es-table",
3
- "version": "20.3.36",
3
+ "version": "20.3.37",
4
4
  "dependencies": {
5
5
  "tslib": "^2.0.0"
6
6
  },