@esfaenza/es-diagrams 19.2.28 → 20.3.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 (31) hide show
  1. package/fesm2022/esfaenza-es-diagrams.mjs +16 -16
  2. package/fesm2022/esfaenza-es-diagrams.mjs.map +1 -1
  3. package/index.d.ts +1088 -3
  4. package/package.json +3 -3
  5. package/lib/components/es-diagram.component.d.ts +0 -305
  6. package/lib/esdiagram.module.d.ts +0 -12
  7. package/lib/extensions/ReactiveExtensions.d.ts +0 -20
  8. package/lib/extensions/ResizeSensor.d.ts +0 -43
  9. package/lib/models/EsDiagramModuleConfig.d.ts +0 -9
  10. package/lib/models/component/contextmenu/ContextMenuCommand.d.ts +0 -27
  11. package/lib/models/component/contextmenu/ContextMenuOptions.d.ts +0 -79
  12. package/lib/models/component/grouping/ExpandCollapseOptions.d.ts +0 -22
  13. package/lib/models/component/nodes/NodeHTMLTemplate.d.ts +0 -14
  14. package/lib/models/component/nodes/NodeTemplate.d.ts +0 -13
  15. package/lib/models/component/nodes/ZoomLevelBasedTemplate.d.ts +0 -14
  16. package/lib/models/layouts/BreadthFirstLayoutOptionsImpl.d.ts +0 -40
  17. package/lib/models/layouts/CircleLayoutOptionsImpl.d.ts +0 -28
  18. package/lib/models/layouts/ConcentricLayoutOptionsImpl.d.ts +0 -74
  19. package/lib/models/layouts/CoseLayoutOptionsImpl.d.ts +0 -80
  20. package/lib/models/layouts/DagreLayoutOptionsImpl.d.ts +0 -48
  21. package/lib/models/layouts/GridLayoutOptionsImpl.d.ts +0 -39
  22. package/lib/models/layouts/NullLayoutOptionsImpl.d.ts +0 -12
  23. package/lib/models/layouts/PresetLayoutOptionsImpl.d.ts +0 -37
  24. package/lib/models/layouts/RandomLayoutOptionsImpl.d.ts +0 -33
  25. package/lib/models/layouts/base/AnimateLayoutOptionsImpl.d.ts +0 -40
  26. package/lib/models/layouts/base/BaseLayoutOptionsImpl.d.ts +0 -15
  27. package/lib/models/layouts/base/ShapedLayoutOptionsImpl.d.ts +0 -46
  28. package/lib/services/es-diagram.dispatcher.d.ts +0 -44
  29. package/lib/services/es-diagram.service.d.ts +0 -51
  30. package/lib/tokens.d.ts +0 -5
  31. package/public-api.d.ts +0 -20
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@esfaenza/es-diagrams",
3
- "version": "19.2.28",
3
+ "version": "20.3.0",
4
4
  "dependencies": {
5
5
  "tslib": "^2.0.0"
6
6
  },
7
7
  "peerDependencies": {
8
- "@angular/common": "^19.2.25",
9
- "@angular/core": "^19.2.25",
8
+ "@angular/common": "^20.3.24",
9
+ "@angular/core": "^20.3.24",
10
10
  "@esfaenza/cytoscape-html-node": "^2.0.2",
11
11
  "cytoscape": "3.34.0",
12
12
  "cytoscape-cxtmenu": "3.5.0",
@@ -1,305 +0,0 @@
1
- import { ElementRef, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
- import { ContextMenuOptions } from '../models/component/contextmenu/ContextMenuOptions';
3
- import { ExpandCollapseOptions } from '../models/component/grouping/ExpandCollapseOptions';
4
- import { NodeHTMLTemplate } from '../models/component/nodes/NodeHTMLTemplate';
5
- import { BreadthFirstLayoutOptionsImpl } from '../models/layouts/BreadthFirstLayoutOptionsImpl';
6
- import { CircleLayoutOptionsImpl } from '../models/layouts/CircleLayoutOptionsImpl';
7
- import { ConcentricLayoutOptionsImpl } from '../models/layouts/ConcentricLayoutOptionsImpl';
8
- import { CoseLayoutOptionsImpl } from '../models/layouts/CoseLayoutOptionsImpl';
9
- import { DagreLayoutOptionsImpl } from '../models/layouts/DagreLayoutOptionsImpl';
10
- import { GridLayoutOptionsImpl } from '../models/layouts/GridLayoutOptionsImpl';
11
- import { NullLayoutOptionsImpl } from '../models/layouts/NullLayoutOptionsImpl';
12
- import { PresetLayoutOptionsImpl } from '../models/layouts/PresetLayoutOptionsImpl';
13
- import { RandomLayoutOptionsImpl } from '../models/layouts/RandomLayoutOptionsImpl';
14
- import { EsDiagramService } from '../services/es-diagram.service';
15
- import { EsDiagramDispatcher } from '../services/es-diagram.dispatcher';
16
- import { ReactiveExtensions } from '../extensions/ReactiveExtensions';
17
- import * as i0 from "@angular/core";
18
- /**
19
- * Componente che si occupa di graficare un diagramma e di gestirne il ciclo di vita
20
- */
21
- export declare class EsDiagramComponent implements OnChanges {
22
- private service;
23
- private dispatcher;
24
- private exts;
25
- /**
26
- * Riferimento all'oggetto HTML su cui creare il diagramma
27
- */
28
- cyGraph: ElementRef;
29
- /**
30
- * Nome del diagramma, fondamentale assegnarlo per permettere alla libreria di schedularne la creazione
31
- */
32
- name: string;
33
- /**
34
- * Indica se utilizzare il menù contestuale a ruota attorno ad ogni nodo
35
- */
36
- UseContextMenu: boolean;
37
- /**
38
- * Indica le opzioni del menù contestuale qualora **UseContextMenu** fosse **true**.
39
- *
40
- * Ogni elemento di questo array è un selettore con il menu da mostrare per quella casistica
41
- */
42
- ContextMenuOptions: ContextMenuOptions[];
43
- /**
44
- * Dice al componente se il diagramma deve utilizzare il sistema di estensione per l'expand e collapse dei gruppi
45
- */
46
- UseExpandCollapse: boolean;
47
- /**
48
- * Opzioni native dell'estensione expand-collapse, vengono ovviamente utilizzate solo se **UseExpandCollapse** è **true**
49
- */
50
- ExpandCollapseOptions: ExpandCollapseOptions;
51
- /**
52
- * Blocco completo delle opzioni, alternativo all'assegnazione di **Elements**, **NodeStyles**, **EdgeStyles**, e **Layout**.
53
- *
54
- * Qualora entrambe venissero specificate verrà effettuata un'unione fra queste opzioni e quelle specificate, dando priorità alle specificate
55
- */
56
- NativeOptions: cytoscape.CytoscapeOptions;
57
- /**
58
- * Definizione degli elementi da mostrare nel diagramma
59
- */
60
- Elements: cytoscape.ElementDefinition[];
61
- /**
62
- * Definizione degli stili dei nodi
63
- */
64
- NodeStyles: cytoscape.Css.Node;
65
- /**
66
- * Definizione degli stili dei collegamenti fra i nodi
67
- */
68
- EdgeStyles: cytoscape.Css.Edge;
69
- /**
70
- * In un diagramma in sola lettura tutte le interazioni utente sono annullate
71
- */
72
- Readonly: boolean;
73
- /**
74
- * Aggiorna automaticamente le dimensioni del diagramma quando cambiano le dimensioni della finestra
75
- */
76
- AutoupdateSize: boolean;
77
- /**
78
- * Indica di mantenere la posizione dei nodi qualora venissero cambiati dall'Input **Elements**.
79
- *
80
- * Se l'ID di un nodo è uguale all'ID di un nodo presente in precedenza, il nuovo nodo ne erediterà la posizione
81
- */
82
- PreserveElementsPosition: boolean;
83
- /**
84
- * Qualora venisse modificato l'Input **Elements**, piuttosto che mettere semplicemente il nuovo Elemento in base al Layout precedente, applica anche un'animazione
85
- *
86
- * Funziona solamente se il **Layout** corrente del diagramma supporta le animazioni
87
- */
88
- AnimateLayoutChanges: boolean;
89
- /**
90
- * Attiva una modalità di selezione "smart"... o perlomeno "smarter" del default di Cytoscape.
91
- *
92
- * - Il click di un elemento non selezionato lo seleziona
93
- * - Il click di un elemento selezionato lo deseleziona
94
- * - Lo stato di selezione viene persistito sull'oggetto originale invece di rimanere in un internal
95
- * - All'assegnazione di oggetti selezionati, questi vengono marcati correttamente con l'overlay di selezione
96
- *
97
- * N.B: la chiamata all'evento **onNodeClick** avviene **DOPO** la gestione della selezione
98
- */
99
- SmartSelection: boolean;
100
- /**
101
- * Indica di selezionare un elemento per volta qualora **SmartSelection** fosse attivo
102
- */
103
- SingleSelection: boolean;
104
- /**
105
- * CSS per la graficazione della selezione dei nodi. Quando un nodo verrà selezionato avrà sopra di se un overlay che 'sborda' di **overlay-padding** pixel,
106
- * di colore **overlay-color** e con un opacità **overlay-opacity**
107
- *
108
- * Assegnando "{}" a questo input, la Smart selection viene gestita ma la gestione grafica è affidata all'utente,
109
- * ad esempio usando dei **NodeHTMLTemplates** che definiscano selettori su nodi ":selected"
110
- *
111
- * @default {'overlay-color':'blue','overlay-opacity':0.5,'overlay-padding':7}
112
- */
113
- SmartSelectionStyles: {
114
- 'overlay-color': string;
115
- 'overlay-opacity': number;
116
- 'overlay-padding': number;
117
- };
118
- /**
119
- * Periodo di throttle da quando viene effettuato un resize a quando ricalcolare le dimensioni del diagramma.
120
- *
121
- * Può essere tenuto a 0 (redraw istantaneo) finché non ci sono problemi di prestazioni con eventualmente tanti resize a poca distanza l'uno dall'altro.
122
- */
123
- ResizeThrottleTime: number;
124
- /**
125
- * Layout di ordinamento dei nodi
126
- */
127
- Layout: BreadthFirstLayoutOptionsImpl | CircleLayoutOptionsImpl | ConcentricLayoutOptionsImpl | CoseLayoutOptionsImpl | DagreLayoutOptionsImpl | GridLayoutOptionsImpl | NullLayoutOptionsImpl | PresetLayoutOptionsImpl | RandomLayoutOptionsImpl;
128
- /**
129
- * Template HTML da applicare ai nodi per dargli stili particolari, diversi dalle shape di default
130
- */
131
- NodeHTMLTemplates: NodeHTMLTemplate[];
132
- /**
133
- * Fornisce il global della libreria (namespace **cytoscape**) e si aspetta che dopo operazioni di importazione
134
- * lasciate all'utente vengano aggiunti tutti i moduli desiderati.
135
- *
136
- * È **fondamentale** che il primo parametro (il nome del modulo) sia uguale a ciò di cui viene fatto il require in modo che la libreria
137
- * possa controllare che il modulo importato non sia già stato importato in precedenza
138
- *
139
- * ## Esempio:
140
- *
141
- * ```typescript
142
- * (global) => {
143
- * return import("cytoscape-extension-library").then(module => global.use("cytoscape-extension-library", module.default));
144
- *
145
- * ...
146
- * }
147
- * ```
148
- */
149
- ExtensionModulesImporter: (global: {
150
- use: (moduleName: string, module: void | cytoscape.Ext) => void;
151
- }) => Promise<any>;
152
- /**
153
- * Fornisce l'istanza attuale di Cytoscape da cui è possibile prendere le librerie di estensione caricate in **ExtensionModulesImporter**
154
- * e configurarle in base ai comportamenti specifici
155
- *
156
- * ## Esempio:
157
- *
158
- * ```typescript
159
- * (cytoscapeCore) => {
160
- * // Fare questo lavoro per ogni estensione caricata
161
- * let extensionConfiguration = { ... };
162
- * let extensionInstance = cytoscapeCore.extensionLibrary(extensionConfiguration);
163
- * extensionInstance.doSomethingSpecificToThisExtension();
164
- *
165
- * ...
166
- * }
167
- * ```
168
- */
169
- ExtensionModulesApplyer: (cytoscapeCore: cytoscape.Core) => void;
170
- /**
171
- * Evento lanciato al click di un nodo, contiene l'oggetto **data** del nodo in questione
172
- */
173
- onNodeClick: EventEmitter<{
174
- data: any;
175
- }>;
176
- /**
177
- * Evento lanciato alla selezione o deselezione di un nodo, contiene l'oggetto **data** del nodo in questione e informazioni sul suo stato di selezione
178
- */
179
- onNodeSelection: EventEmitter<{
180
- data: any;
181
- selected: boolean;
182
- }>;
183
- /**
184
- * Evento lanciato al termine del Layouting. Se si vuole eseguire codice dopo che il Layout è fatto e completamente graficato, questo è il punto
185
- */
186
- onLayoutDone: EventEmitter<void>;
187
- /**
188
- * Evento lanciato al termine del caricamento del diagramma
189
- */
190
- onLoaded: EventEmitter<void>;
191
- /**
192
- * Variabile su cui salvarsi se i nodi hanno una gerarchia a gruppi o no. Serve per poi caricare l'estensione expand-collapse qualora fosse richiesta
193
- */
194
- private NodesHierarchy;
195
- /**
196
- * Indica se il rendering del diagramma è terminato
197
- */
198
- private Rendered;
199
- /**
200
- * Istanza del diagramma attualmente in uso
201
- */
202
- cy: cytoscape.Core;
203
- /**
204
- * Api dell'estensione expand-collapse per permettere di effettuare operazioni dall'esterno del diagramma. Vengono valorizzate se **UseExpandCollapse** è **true**
205
- */
206
- ExpandCollapseApi: any;
207
- /**
208
- * Api dell'estensione html-node per permettere di effettuare operazioni dall'esterno del diagramma. Vengono valorizzate se sono impostati dei **NodeHTMLTemplates**
209
- */
210
- private HtmlNodeApi;
211
- /**
212
- * Osservatore delle modifiche al contenitore del diagramma
213
- */
214
- private resizeObserver;
215
- /**
216
- * Riferimento all'ultimo layout utilizzato. Viene riapplicato qualora venisse cambiato l'Input **Elements**.
217
- *
218
- * Non utilizzo il makeLayouts perché altrimenti rischierei di creare un layout riferito a X elementi, ne aggiungo 1, riapplico il Layout
219
- * ma mi viene riapplicato a X elementi invece che X + 1
220
- */
221
- private LastLayout;
222
- /**
223
- * Costruttore
224
- *
225
- * @ignore
226
- */
227
- constructor(service: EsDiagramService, dispatcher: EsDiagramDispatcher, exts: ReactiveExtensions);
228
- /**
229
- * @ignore
230
- *
231
- * Angular Pipeline
232
- */
233
- ngAfterViewInit(): void;
234
- /**
235
- * All'onDestroy ripulisco la memoria dal diagramma
236
- */
237
- ngOnDestroy(): void;
238
- /**
239
- * Registra il diagramma attuale nel Dispatcher in modo che venga caricato appena possibile
240
- */
241
- private dispatchLoadChart;
242
- /**
243
- * @ignore
244
- *
245
- * Angular Pipeline: Gestione ri-graficazione del diagramma, se possibile
246
- */
247
- ngOnChanges(changes: SimpleChanges): any;
248
- /**
249
- * Effettua il rendering del diagramma
250
- */
251
- private render;
252
- /**
253
- * Prende tutti gli elementi appena assegnati, e se qualcuno era selezionato la situazione viene persistita su cytoscape
254
- */
255
- private setupElementsSelectionIfNeeded;
256
- /**
257
- * Carica gli stili per mostrare carina la selezione dei nodi
258
- */
259
- private setupSelectionStyles;
260
- /**
261
- * Registra l'ascolto al contenitore del grafico e in caso di modifiche alla dimensione, al massimo una volta ogni 500 millisecondi, lo ridisegna
262
- */
263
- private listenOnChanges;
264
- /**
265
- * Funzione che si occupa di gestire il repaint del diagramma
266
- */
267
- private onContainerSizeChanged;
268
- /**
269
- * Collega tutti gli eventi che mi possono servire e li espone in output
270
- */
271
- private bindCytoscapeEvents;
272
- /**
273
- * Metodo che serve per caricare tutte le estensioni della libreria in base a ciò che viene utilizzato
274
- */
275
- private performModulesLoading;
276
- /**
277
- * Metodo che serve per caricare tutte le estensioni della libreria in base a ciò che viene utilizzato con le opzioni definite dagli Input
278
- */
279
- private performOperationsWithLoadedModules;
280
- updateCardData(): void;
281
- /**
282
- * Metodo interno per il caricamento dei moduli di estensione
283
- *
284
- * @param {'cytoscape-expand-collapse' | 'cytoscape-cxtmenu' | 'cytoscape-html-node' | 'cytoscape-dagre'} moduleId Modulo da caricare
285
- */
286
- private loadInternal;
287
- /**
288
- * Metodo che basandosi sulle opzioni native eventualmente assegnate le completa con gli Input addizionali
289
- *
290
- * @returns {cy_.CytoscapeOptions} Opzioni finali unite da Input ed opzioni native
291
- */
292
- private getCompletedOptions;
293
- /**
294
- * Aggiustamenti degli elementi di Cytoscape.
295
- *
296
- * I nodi non vengono toccati.
297
- *
298
- * Per ogni edge viene controllato se è specificata una sorgente ed una destinazione, in caso contrario si cerca di dedurli dall'ID
299
- *
300
- * @param {cytoscape.ElementDefinition[]} elements Elementi da sistemare
301
- */
302
- private reviewCytoscapeElements;
303
- static ɵfac: i0.ɵɵFactoryDeclaration<EsDiagramComponent, [{ optional: true; }, { optional: true; }, null]>;
304
- static ɵcmp: i0.ɵɵComponentDeclaration<EsDiagramComponent, "es-diagram", never, { "name": { "alias": "name"; "required": false; }; "UseContextMenu": { "alias": "UseContextMenu"; "required": false; }; "ContextMenuOptions": { "alias": "ContextMenuOptions"; "required": false; }; "UseExpandCollapse": { "alias": "UseExpandCollapse"; "required": false; }; "ExpandCollapseOptions": { "alias": "ExpandCollapseOptions"; "required": false; }; "NativeOptions": { "alias": "NativeOptions"; "required": false; }; "Elements": { "alias": "Elements"; "required": false; }; "NodeStyles": { "alias": "NodeStyles"; "required": false; }; "EdgeStyles": { "alias": "EdgeStyles"; "required": false; }; "Readonly": { "alias": "Readonly"; "required": false; }; "AutoupdateSize": { "alias": "AutoupdateSize"; "required": false; }; "PreserveElementsPosition": { "alias": "PreserveElementsPosition"; "required": false; }; "AnimateLayoutChanges": { "alias": "AnimateLayoutChanges"; "required": false; }; "SmartSelection": { "alias": "SmartSelection"; "required": false; }; "SingleSelection": { "alias": "SingleSelection"; "required": false; }; "SmartSelectionStyles": { "alias": "SmartSelectionStyles"; "required": false; }; "ResizeThrottleTime": { "alias": "ResizeThrottleTime"; "required": false; }; "Layout": { "alias": "Layout"; "required": false; }; "NodeHTMLTemplates": { "alias": "NodeHTMLTemplates"; "required": false; }; "ExtensionModulesImporter": { "alias": "ExtensionModulesImporter"; "required": false; }; "ExtensionModulesApplyer": { "alias": "ExtensionModulesApplyer"; "required": false; }; }, { "onNodeClick": "onNodeClick"; "onNodeSelection": "onNodeSelection"; "onLayoutDone": "onLayoutDone"; "onLoaded": "onLoaded"; }, never, never, false, never>;
305
- }
@@ -1,12 +0,0 @@
1
- import { ModuleWithProviders } from '@angular/core';
2
- import { EsDiagramModuleConfig } from './models/EsDiagramModuleConfig';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "./components/es-diagram.component";
5
- import * as i2 from "@angular/common";
6
- import * as i3 from "@angular/forms";
7
- export declare class EsDiagramModule {
8
- static forRoot(config?: EsDiagramModuleConfig): ModuleWithProviders<EsDiagramModule>;
9
- static ɵfac: i0.ɵɵFactoryDeclaration<EsDiagramModule, never>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<EsDiagramModule, [typeof i1.EsDiagramComponent], [typeof i2.CommonModule, typeof i3.FormsModule, typeof i3.ReactiveFormsModule, typeof i2.CommonModule], [typeof i1.EsDiagramComponent]>;
11
- static ɵinj: i0.ɵɵInjectorDeclaration<EsDiagramModule>;
12
- }
@@ -1,20 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- /**
3
- * Classe che fornisce metodi reattivi di estensione. Per ora implementato solo uno pseudo-throttle
4
- */
5
- export declare class ReactiveExtensions {
6
- /**
7
- * Cache di tutti i timer in esecuzione
8
- */
9
- private executionTimers;
10
- /**
11
- * Esecuzione deleyata di una funzione. Se viene richiamata nuovamente prima di venire eseguita dopo il delay, il delay viene resettato
12
- *
13
- * @param {string} id Id per aiutare il servizio a distinguere funzioni con nome uguale chiamate da componenti diversi
14
- * @param {Function} func Funzione da chiamare al termine del throttle
15
- * @param {number} throttleTime Tempo di throttling in millisecondi
16
- */
17
- throttle(id: string, func: Function, throttleTime?: number): void;
18
- static ɵfac: i0.ɵɵFactoryDeclaration<ReactiveExtensions, never>;
19
- static ɵprov: i0.ɵɵInjectableDeclaration<ReactiveExtensions>;
20
- }
@@ -1,43 +0,0 @@
1
- /**
2
- * Classe di utilità che tiene d'occhio i cambiamenti di dimensione di un elemento. Un **ResizeSensor** può controllare al massimo un elemento
3
- */
4
- export declare class ResizeSensor {
5
- /**
6
- * Riferimento all'observer nativo
7
- */
8
- private observer;
9
- /**
10
- * Indica se questo oggetto è stato distrutto o no
11
- */
12
- Disposed: boolean;
13
- /**
14
- * Elemento da controllare e callback da chiamare quando le dimensioni dell'elemento cambiano
15
- */
16
- private target;
17
- /**
18
- * Costruttore
19
- *
20
- * @param {HTMLElement} element Elemento HTML da controllare
21
- * @param {Function} callback Callback da chiamare quando le dimensioni di **element** cambiano
22
- */
23
- constructor(element: HTMLElement, callback: () => void);
24
- /**
25
- * Distruttore
26
- */
27
- dispose(): void;
28
- /**
29
- * Creazione del sensore che sarà collegato all'elemento da osservare dal metodo **addTarget**
30
- */
31
- private makeSensor;
32
- /**
33
- * Dice al sensore di osservare l'elemento **targetEl**, richiamando **callback** qualora le dimensioni cambino
34
- *
35
- * @param {HTMLElement} targetEl Elemento HTML da controllare
36
- * @param {Function} callback Callback da chiamare quando le dimensioni di **element** cambiano
37
- */
38
- addTarget(targetEl: HTMLElement, callback: () => void): void;
39
- /**
40
- * Rimuove l'elemento HTML attuale dall'osservazione del **ResizeObserver**
41
- */
42
- removeTarget(): void;
43
- }
@@ -1,9 +0,0 @@
1
- /**
2
- * Classe di configurazione per il Modulo
3
- */
4
- export declare class EsDiagramModuleConfig {
5
- /**
6
- * Attiva o disattiva la modalità di debug per scrivere i messaggi a console
7
- */
8
- debugMode?: boolean;
9
- }
@@ -1,27 +0,0 @@
1
- /**
2
- * Definizione di un comando del Context menù
3
- */
4
- export declare class ContextMenuCommand {
5
- /**
6
- * Background delo spicchio
7
- */
8
- fillColor?: string;
9
- /**
10
- * Contenuto del comando, html o testo
11
- */
12
- content: string;
13
- /**
14
- * Dizionario di stili da applicare all'html in cui viene wrappato il **content**
15
- */
16
- contentStyle?: {
17
- [key: string]: string;
18
- };
19
- /**
20
- * Funzione da eseguire quando questo comando viene cliccato
21
- */
22
- select: (ele: any) => void;
23
- /**
24
- * Indica se il comando è abilitato o no
25
- */
26
- enabled?: boolean;
27
- }
@@ -1,79 +0,0 @@
1
- import { ContextMenuCommand } from "./ContextMenuCommand";
2
- /**
3
- * Opzioni che gestiscono il context menu. Quando una di queste opzioni non viene assegnata viene mantenuto il default, assicurarsi quindi di modificare solo
4
- * le proprietà che si vogliono effettivamente cambiare rispetto ai default
5
- */
6
- export declare class ContextMenuOptions {
7
- /**
8
- * Raggio esterno del Menù, aggiunto alla dimensione renderizzata del nodo
9
- */
10
- menuRadius?: (ele: any) => number;
11
- /**
12
- * Selettore di tutti gli elementi a cui verrà applicato il context menu. Di default sono tutti i nodi
13
- */
14
- selector?: string;
15
- /**
16
- * Lista di comandi da mostrare nel menù
17
- */
18
- commands?: ContextMenuCommand[];
19
- /**
20
- * Colore di background del menu
21
- */
22
- fillColor?: string;
23
- /**
24
- * Colore di background del menù quando c'è il mouse in selezione sopra
25
- */
26
- activeFillColor?: string;
27
- /**
28
- * Dimensione aggiuntiva per l'operazione selezionata in modo da evidenziarla dalle altre
29
- */
30
- activePadding?: number;
31
- /**
32
- * Dimensione in pixel dell'indicatore sul comando attuale
33
- */
34
- indicatorSize?: number;
35
- /**
36
- * Distanza in pixel da un comando e l'altro
37
- */
38
- separatorWidth?: number;
39
- /**
40
- * Dimensione extra fra l'elemento e il centro del menù
41
- */
42
- spotlightPadding?: number;
43
- /**
44
- * Raggio minimo del centro del menù
45
- */
46
- minSpotlightRadius?: number;
47
- /**
48
- * Raggio massimo del centro del menù
49
- */
50
- maxSpotlightRadius?: number;
51
- /**
52
- * Eventi per il quale il menù deve aprirsi
53
- */
54
- openMenuEvents?: 'cxttapstart' | 'taphold';
55
- /**
56
- * Colore del testo del menù
57
- */
58
- itemColor?: string;
59
- /**
60
- * Colore dell'ombreggiatura del testo del menù
61
- */
62
- itemTextShadowColor?: string;
63
- /**
64
- * zIndex del div in cui viene renderizzato il menù
65
- */
66
- zIndex?: number;
67
- /**
68
- * Indica se mostrare il menù alla posizione del mouse
69
- */
70
- atMouse?: boolean;
71
- /**
72
- * Indica se adattarsi alla dimensione del nodo. Se impostato le proprietà **minSpotlightRadius** e **maxSpotlightRadius** vengono ignorate
73
- */
74
- adaptativeNodeSpotlightRadius?: boolean;
75
- /**
76
- * Se settato a number indica dopo quanti pixel fuori dal menu il click viene annullato, altrimenti va settato a **false**
77
- */
78
- outsideMenuCancel?: boolean | number;
79
- }
@@ -1,22 +0,0 @@
1
- /**
2
- * Opzioni native per l'estensione expand-collapse di cytoscape
3
- */
4
- export declare class ExpandCollapseOptions {
5
- /** @ignore */ layoutBy?: any;
6
- /** @ignore */ fisheye?: boolean;
7
- /** @ignore */ animate?: boolean;
8
- /** @ignore */ animationDuration?: number;
9
- /** @ignore */ ready?: () => void;
10
- /** @ignore */ undoable?: boolean;
11
- /** @ignore */ cueEnabled?: boolean;
12
- /** @ignore */ expandCollapseCuePosition?: string | ((node: any) => string);
13
- /** @ignore */ expandCollapseCueSize?: number;
14
- /** @ignore */ expandCollapseCueLineSize?: number;
15
- /** @ignore */ expandCueImage?: string;
16
- /** @ignore */ collapseCueImage?: string;
17
- /** @ignore */ expandCollapseCueSensitivity?: number;
18
- /** @ignore */ edgeTypeInfo?: string | Function;
19
- /** @ignore */ groupEdgesOfSameTypeOnCollapse?: boolean;
20
- /** @ignore */ allowNestedEdgeCollapse?: boolean;
21
- /** @ignore */ zIndex?: number;
22
- }
@@ -1,14 +0,0 @@
1
- import { ZoomLevelBasedTemplate } from "./ZoomLevelBasedTemplate";
2
- /**
3
- * Classe che indica per una data query quali template applicare
4
- */
5
- export declare class NodeHTMLTemplate {
6
- /**
7
- * Query Cytoscape. Esempio **"[type = 'node']"** per prendere tutti i nodi la cui proprietà **type** all'interno dell'oggetto **data** è uguale a **node**
8
- */
9
- query: string;
10
- /**
11
- * Lista dei template da applicare in base al livello di zoom del diagramma
12
- */
13
- template: ZoomLevelBasedTemplate[];
14
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * Classe che rappresenta un template HTML applicabile ad un nodo
3
- */
4
- export declare class NodeTemplate {
5
- /**
6
- * Template del nodo. È possibile prendere direttamente i valori del nodo utilizzando la convenzione **#{data.nodeproperty}**
7
- */
8
- html: string;
9
- /**
10
- * Classe da applicare al template
11
- */
12
- cssClass?: string;
13
- }
@@ -1,14 +0,0 @@
1
- import { NodeTemplate } from "./NodeTemplate";
2
- /**
3
- * Classe che rappresenta il template HTML di un nodo da utilizzare per un certo livello di zoom
4
- */
5
- export declare class ZoomLevelBasedTemplate {
6
- /**
7
- * Livello di zoom da minimo a massimo per cui viene utilizzato questo template
8
- */
9
- zoomRange: [number, number];
10
- /**
11
- * Template da utilizzare
12
- */
13
- template: NodeTemplate;
14
- }
@@ -1,40 +0,0 @@
1
- import { ShapedLayoutOptionsImpl } from './base/ShapedLayoutOptionsImpl';
2
- /**
3
- * Default per l'implementazione dell'algoritmo Breadth First
4
- */
5
- export declare class BreadthFirstLayoutOptionsImpl extends ShapedLayoutOptionsImpl {
6
- /** @ignore */
7
- constructor();
8
- /**
9
- * Nome dell'algoritmo di layouting
10
- */
11
- name: string;
12
- /**
13
- * Indica se l'albero è diretto in basso. Se false i collegamenti fra i nodi possono andare in qualsiasi direzione
14
- */
15
- directed: boolean;
16
- /**
17
- * Se **true** i livelli vengono ordinati in cerchi concentrici, se **false** vengono oridnati dall'alto al basso
18
- */
19
- circle: boolean;
20
- /**
21
- * Radici degli alberi
22
- */
23
- roots?: string;
24
- /**
25
- * Numero massimo di tentativi di posizionamento dei nodi in maniera massimale (senza backtracking)
26
- */
27
- maximalAdjustments: number;
28
- /**
29
- * Indica che i nodi verranno shiftati in base al proprio livello in modo da evitare collegamenti inversi (solo per i DAG)
30
- */
31
- maximal: boolean;
32
- /**
33
- * Indica se creare una griglia in cui ordinare i nodi del DAG (Solo quando la proprietà **circle** è a **false**)
34
- */
35
- grid: boolean;
36
- /**
37
- * Indica se escludere le label dei nodi quando vengono calcolati i limiti del layout
38
- */
39
- nodeDimensionsIncludeLabels: boolean;
40
- }
@@ -1,28 +0,0 @@
1
- import { ShapedLayoutOptionsImpl } from './base/ShapedLayoutOptionsImpl';
2
- /**
3
- * Default per l'implementazione dell'algoritmo Circle
4
- */
5
- export declare class CircleLayoutOptionsImpl extends ShapedLayoutOptionsImpl {
6
- /** @ignore */
7
- constructor();
8
- /**
9
- * Nome dell'algoritmo di layouting
10
- */
11
- name: string;
12
- /**
13
- * Raggio del cercho
14
- */
15
- radius: number;
16
- /**
17
- * Angolo da cui i nodi partono, in radianti (Default: **3 / 2 * Math.PI**)
18
- */
19
- startAngle: number;
20
- /**
21
- * Numero di radianti fra il primo e l'ultimo nodo. Di default viene utilizzata l'intera circonferenza
22
- */
23
- sweep: number;
24
- /**
25
- * Indica se andare in senso orario (**true**) o antiorario (**false**)
26
- */
27
- clockwise: boolean;
28
- }