@esfaenza/es-table 20.3.30 → 20.3.32

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
@@ -2433,6 +2433,29 @@ interface Est2Column {
2433
2433
  multiIndex?: number | null;
2434
2434
  }
2435
2435
 
2436
+ /**
2437
+ * Riga della dialog "Visibilità e ordine colonne". `label` è il fallback testuale
2438
+ * (percorso dei gruppi + testo header letto dal DOM, o l'id); `tmpl` è il template
2439
+ * dell'`*th` ed è valorizzato SOLO quando la colonna non è renderizzata — è l'unico
2440
+ * modo di etichettare una colonna `Visible:false` o nascosta, che nel DOM non esiste.
2441
+ */
2442
+ interface Est2DialogColumn {
2443
+ id: string;
2444
+ /** etichetta testuale completa (prefisso gruppi incluso) */
2445
+ label: string;
2446
+ /** prefisso col percorso dei gruppi, es. `( Energia - Attiva )` — vuoto se nessun gruppo */
2447
+ prefix: string;
2448
+ /** template dell'header, usato quando la colonna non è renderizzata */
2449
+ tmpl: TemplateRef<any> | null;
2450
+ /** contesto del template (colonne Multi: `{ $implicit: header }`) */
2451
+ tmplCtx: any;
2452
+ visible: boolean;
2453
+ pinned: boolean;
2454
+ /** appartiene a un header-group (o è Multi): non pinnabile */
2455
+ grouped: boolean;
2456
+ /** colonna `Fixed`: sempre visibile e non riposizionabile */
2457
+ fixed: boolean;
2458
+ }
2436
2459
  /**
2437
2460
  * Riga della tabella. Oltre ai dati aperti del consumer (index signature) porta
2438
2461
  * un insieme FISSO di flag interni iniettati da grouping/hierarchy/selezione. Tiparli
@@ -2841,7 +2864,16 @@ declare class EsTable2Component implements ControlValueAccessor, AfterContentIni
2841
2864
  private emitSelection;
2842
2865
  /** Click su una riga: espande/collassa un gruppo, oppure gestisce la selezione. */
2843
2866
  handleRowClick(item: any, event?: MouseEvent): void;
2844
- /** Selezione a click stile Esplora risorse: plain=solo questo, Ctrl=toggle, Shift=range dall'ancora */
2867
+ /**
2868
+ * Shift/Ctrl+click stile Esplora risorse, attivo solo con `[ShiftClick]`.
2869
+ *
2870
+ * Lo **Shift+click** estende il range dall'ancora (l'ultima riga cliccata); senza
2871
+ * Ctrl il range SOSTITUISCE la selezione, con Ctrl la somma a quella esistente.
2872
+ * Ogni altro caso (Ctrl+click, o Shift senza un'ancora valida) è un toggle della
2873
+ * singola riga: passa da `toggleRow`, che è il percorso canonico usato anche dalle
2874
+ * checkbox e che gestisce correttamente la modalità "tutto selezionato"
2875
+ * (`sel.all` → toggle dell'esclusione invece di azzerare la selezione).
2876
+ */
2845
2877
  private windowsSelect;
2846
2878
  /** Pipe riusate per il testo di copia (dependency-free) */
2847
2879
  private fmt;
@@ -3022,14 +3054,7 @@ declare class EsTable2Component implements ControlValueAccessor, AfterContentIni
3022
3054
  togglePin(col: Est2Column, ev?: Event): void;
3023
3055
  columnsDialogOpen: _angular_core.WritableSignal<boolean>;
3024
3056
  /** Lista di lavoro della dialog (copia, per poter annullare) */
3025
- dialogCols: _angular_core.WritableSignal<{
3026
- id: string;
3027
- label: string;
3028
- visible: boolean;
3029
- pinned: boolean;
3030
- grouped: boolean;
3031
- fixed: boolean;
3032
- }[]>;
3057
+ dialogCols: _angular_core.WritableSignal<Est2DialogColumn[]>;
3033
3058
  /** Etichetta leggibile di una colonna (header statico o id) */
3034
3059
  columnLabel(col: Est2Column): string;
3035
3060
  /** true se la colonna appartiene a un gruppo (multi o `Parent`): non è pinnabile */
@@ -3039,6 +3064,8 @@ declare class EsTable2Component implements ControlValueAccessor, AfterContentIni
3039
3064
  * rispetta casing/contenuto) preceduto dal percorso dei gruppi, es.
3040
3065
  * `( Energia - Attiva ) Fascia F1`.
3041
3066
  */
3067
+ private dialogGroupPrefix;
3068
+ /** Etichetta testuale completa di una colonna nella dialog (prefisso gruppi + foglia) */
3042
3069
  private dialogLabelFor;
3043
3070
  openColumnsDialog(): void;
3044
3071
  closeColumnsDialog(): void;
@@ -3454,4 +3481,4 @@ declare const EST2_EXPORT_GLOBAL_ACL: InjectionToken<string>;
3454
3481
  declare const EST2_DEFAULTS: InjectionToken<EsTableDefaultable>;
3455
3482
 
3456
3483
  export { AppOrdering, AppSearch, CornerMenuOption, EST2_DEBUG, EST2_DEFAULTS, EST2_EXPORT_GLOBAL_ACL, EST_DEBUG, EST_DEFAULTS, EST_EXPORT_GLOBAL_ACL, EsTable2Component, EsTableColumnsDefinition, EsTableComponent, EsTableDefaultable, EsTableModelChange, EsTableModule, EsTableModuleConfig, EsTableMultiValue, EsTableOperationDefinition, EsTablePagerComponent, EsTdDirective, EsTdEditorDirective, EsThDirective, GenericItem, Group, GroupAggregation, GroupFilter, GroupOrAggregation, ItemPropEditableReference, ItemsSelection, ReportColumn, ReportParam, ReportRow, ThTdProvider };
3457
- export type { Est2Column, Est2HeaderGroupCell, Est2Row, InputType };
3484
+ export type { Est2Column, Est2DialogColumn, Est2HeaderGroupCell, Est2Row, InputType };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esfaenza/es-table",
3
- "version": "20.3.30",
3
+ "version": "20.3.32",
4
4
  "dependencies": {
5
5
  "tslib": "^2.0.0"
6
6
  },