@esfaenza/flow-builder 20.3.41 → 20.3.42
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/README.md +22 -3
- package/fesm2022/esfaenza-flow-builder.mjs +295 -37
- package/fesm2022/esfaenza-flow-builder.mjs.map +1 -1
- package/index.d.ts +93 -3
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -3187,6 +3187,21 @@ declare class FlowDocumentStore {
|
|
|
3187
3187
|
* riferimenti a output automatico (`Vecchio.Campo` → `Nuovo.Campo`).
|
|
3188
3188
|
*/
|
|
3189
3189
|
renameNode(oldName: string, newName: string): void;
|
|
3190
|
+
/**
|
|
3191
|
+
* Etichetta **e** nome tecnico in una sola mutazione.
|
|
3192
|
+
*
|
|
3193
|
+
* Serve al nome che segue l'etichetta di un elemento appena creato (§3.3): farlo con due
|
|
3194
|
+
* `update` scriverebbe due passi di storico per ogni battuta, e l'annulla riporterebbe
|
|
3195
|
+
* indietro il nome lasciando l'etichetta nuova — uno stato che non e' mai esistito. Con
|
|
3196
|
+
* `newName` assente e' un semplice cambio di etichetta.
|
|
3197
|
+
*/
|
|
3198
|
+
relabelNode(name: string, label: string, newName?: string | null): void;
|
|
3199
|
+
/**
|
|
3200
|
+
* Il corpo della rinomina, sul draft: nome del node, riferimenti, appartenenza ai riquadri.
|
|
3201
|
+
* `reference` va risolto **prima** dell'`update`, perche' l'indice viene dal documento
|
|
3202
|
+
* corrente e dentro il mutatore i signal derivati sono ancora quelli di prima.
|
|
3203
|
+
*/
|
|
3204
|
+
private static applyRename;
|
|
3190
3205
|
/**
|
|
3191
3206
|
* §5.2 — rinomina un campo di screen dinamico riscrivendo i riferimenti che lo usano.
|
|
3192
3207
|
*
|
|
@@ -4997,7 +5012,7 @@ declare class FormulaEditorComponent {
|
|
|
4997
5012
|
* dinamico — e riscriverla a ogni tasto costa. La **verifica** parte comunque durante la
|
|
4998
5013
|
* digitazione: usa la bozza locale, non cio' che e' arrivato al documento.
|
|
4999
5014
|
*/
|
|
5000
|
-
readonly commitOn: _angular_core.InputSignal<"
|
|
5015
|
+
readonly commitOn: _angular_core.InputSignal<"change" | "input">;
|
|
5001
5016
|
readonly expressionChange: _angular_core.OutputEmitterRef<string>;
|
|
5002
5017
|
private readonly area;
|
|
5003
5018
|
/**
|
|
@@ -5547,7 +5562,7 @@ declare class MergeTextEditorComponent {
|
|
|
5547
5562
|
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
5548
5563
|
readonly rows: _angular_core.InputSignal<number>;
|
|
5549
5564
|
/** Come nel formula editor: `change` dove mutare il documento ridisegna mezza schermata. */
|
|
5550
|
-
readonly commitOn: _angular_core.InputSignal<"
|
|
5565
|
+
readonly commitOn: _angular_core.InputSignal<"change" | "input">;
|
|
5551
5566
|
readonly textChange: _angular_core.OutputEmitterRef<string>;
|
|
5552
5567
|
private readonly area;
|
|
5553
5568
|
/**
|
|
@@ -5668,6 +5683,9 @@ declare class ElementInspectorComponent {
|
|
|
5668
5683
|
private readonly store;
|
|
5669
5684
|
private readonly dictionaries;
|
|
5670
5685
|
private readonly validation;
|
|
5686
|
+
private readonly injector;
|
|
5687
|
+
/** L'etichetta: e' il primo campo di un elemento nuovo, e prende il focus da se'. */
|
|
5688
|
+
private readonly labelInput;
|
|
5671
5689
|
/** Il nome dell'elemento selezionato; `$start` per lo Start. */
|
|
5672
5690
|
readonly selectedName: _angular_core.InputSignal<string | null>;
|
|
5673
5691
|
/**
|
|
@@ -5712,6 +5730,43 @@ declare class ElementInspectorComponent {
|
|
|
5712
5730
|
readonly hiddenIssueCount: _angular_core.Signal<number>;
|
|
5713
5731
|
toggleIssues(): void;
|
|
5714
5732
|
readonly pendingName: _angular_core.WritableSignal<string | null>;
|
|
5733
|
+
/**
|
|
5734
|
+
* L'elemento il cui nome si sta ancora componendo, e cosa c'e' scritto nel campo.
|
|
5735
|
+
*
|
|
5736
|
+
* `draft: null` e' «segue l'etichetta», che e' lo stato iniziale e quello in cui si torna
|
|
5737
|
+
* svuotando il campo. `element` segue le rinomine: senza, la prima battuta sull'etichetta —
|
|
5738
|
+
* che rinomina — farebbe ripartire lo stato da capo e il campo tornerebbe a seguire una
|
|
5739
|
+
* scelta che l'utente aveva già disfatto.
|
|
5740
|
+
*/
|
|
5741
|
+
private readonly composing;
|
|
5742
|
+
/** Il nome si compone qui invece di stare dietro il comando di rinomina. */
|
|
5743
|
+
readonly isComposingName: _angular_core.Signal<boolean>;
|
|
5744
|
+
/** Cio' che si vede nel campo: vuoto finche' non c'e' un'etichetta da cui costruirlo. */
|
|
5745
|
+
readonly composedName: _angular_core.Signal<string>;
|
|
5746
|
+
readonly composedNameError: _angular_core.Signal<string | null>;
|
|
5747
|
+
constructor();
|
|
5748
|
+
/**
|
|
5749
|
+
* Un elemento **senza etichetta** e' un elemento che nessuno ha ancora nominato: il campo del
|
|
5750
|
+
* nome parte vuoto e segue l'etichetta. Uno che ce l'ha e' un elemento vero, e il suo nome si
|
|
5751
|
+
* cambia solo col comando di rinomina, che dice prima quanti riferimenti riscrivera'.
|
|
5752
|
+
*/
|
|
5753
|
+
private seedComposing;
|
|
5754
|
+
/**
|
|
5755
|
+
* Il nome scritto a mano: smette di seguire l'etichetta e, appena e' valido, diventa il nome
|
|
5756
|
+
* dell'elemento. Un nome intermedio non valido resta nel campo senza toccare il documento —
|
|
5757
|
+
* ricopiarci sopra il nome corrente impedirebbe di digitare.
|
|
5758
|
+
*/
|
|
5759
|
+
onComposedNameInput(value: string): void;
|
|
5760
|
+
/**
|
|
5761
|
+
* Il nome costruito dall'etichetta (§3.3): spazi e caratteri non ammessi diventano `_`, i
|
|
5762
|
+
* diacritici cadono e un nome già preso prende un suffisso.
|
|
5763
|
+
*
|
|
5764
|
+
* Etichetta vuota → `null`, cioe' resta il nome provvisorio con cui l'elemento e' nato: il
|
|
5765
|
+
* documento non puo' stare senza, perche' il nome e' la chiave di tutto (§3.3).
|
|
5766
|
+
*/
|
|
5767
|
+
private deriveName;
|
|
5768
|
+
/** Rimette il nome a seguire l'etichetta, dopo che il campo e' stato svuotato. */
|
|
5769
|
+
private applyDerivedName;
|
|
5715
5770
|
readonly nameError: _angular_core.Signal<string | null>;
|
|
5716
5771
|
/**
|
|
5717
5772
|
* Quanti riferimenti verrebbero riscritti dalla rinomina. Serve a rendere visibile che
|
|
@@ -5786,6 +5841,15 @@ declare class ElementDialogComponent {
|
|
|
5786
5841
|
private readonly reference;
|
|
5787
5842
|
readonly typeLabel: _angular_core.Signal<string>;
|
|
5788
5843
|
readonly title: _angular_core.Signal<string>;
|
|
5844
|
+
/**
|
|
5845
|
+
* L'ultimo nome adottato da una rinomina.
|
|
5846
|
+
*
|
|
5847
|
+
* La selezione dell'editor **e' il nome**, quindi una rinomina cambia `selectedName` senza
|
|
5848
|
+
* che l'elemento sia cambiato. Senza distinguere i due casi il nome che si costruisce
|
|
5849
|
+
* dall'etichetta mentre la si digita riportava il focus sul pannello a ogni battuta, e
|
|
5850
|
+
* l'etichetta si scriveva una lettera alla volta.
|
|
5851
|
+
*/
|
|
5852
|
+
private renamedTo?;
|
|
5789
5853
|
constructor();
|
|
5790
5854
|
/** Il vincolo: dentro il builder resta la maniglia, non la finestra intera. */
|
|
5791
5855
|
readonly constrainPosition: DialogConstrainPosition;
|
|
@@ -6867,7 +6931,7 @@ declare class FlowBuilderComponent {
|
|
|
6867
6931
|
* troppo. `panel` tiene il form nel pannello laterale, che e' piu' comodo quando si
|
|
6868
6932
|
* modificano molti elementi di fila perche' non c'e' niente da aprire e chiudere.
|
|
6869
6933
|
*/
|
|
6870
|
-
readonly inspectorMode: _angular_core.InputSignal<"
|
|
6934
|
+
readonly inspectorMode: _angular_core.InputSignal<"panel" | "dialog">;
|
|
6871
6935
|
/**
|
|
6872
6936
|
* L'esito dell'ultima esecuzione, se l'ospite ne ha uno da mostrare.
|
|
6873
6937
|
*
|
|
@@ -6964,8 +7028,23 @@ declare class FlowBuilderComponent {
|
|
|
6964
7028
|
setFullName(value: string): void;
|
|
6965
7029
|
setDescription(value: string): void;
|
|
6966
7030
|
setInterviewLabel(value: string): void;
|
|
7031
|
+
/**
|
|
7032
|
+
* Il tipo di flow si sceglie **alla creazione**, e su un flow salvato non si tocca.
|
|
7033
|
+
*
|
|
7034
|
+
* Non e' una preferenza: decide quali globali esistono (`$Record` non c'e' in uno screen
|
|
7035
|
+
* flow, §4.1), quali elementi sono ammessi (§13.6) e come il motore lo esegue. Cambiarlo su
|
|
7036
|
+
* un documento già scritto lo lascia pieno di riferimenti a cose che da quel momento non
|
|
7037
|
+
* esistono — e nessuna primitiva del backend rimedia. Il comando non c'e' nemmeno
|
|
7038
|
+
* nell'interfaccia; il controllo qui e' perché la chiamata resta pubblica.
|
|
7039
|
+
*/
|
|
6967
7040
|
setProcessType(value: string): void;
|
|
6968
7041
|
readonly processTypes: _angular_core.Signal<_esfaenza_flow_builder.FlowDictionaryEntry[]>;
|
|
7042
|
+
/**
|
|
7043
|
+
* Il tipo scritto per esteso, per il flow salvato dove non e' più una scelta. Fuori catalogo
|
|
7044
|
+
* si mostra il valore grezzo: e' del backend, non nostro da correggere (vedi
|
|
7045
|
+
* {@link isProcessTypeOutOfCatalog}).
|
|
7046
|
+
*/
|
|
7047
|
+
readonly processTypeLabel: _angular_core.Signal<string>;
|
|
6969
7048
|
/**
|
|
6970
7049
|
* Il `processType` del documento non e' fra quelli del dizionario. Non e' un caso di scuola:
|
|
6971
7050
|
* basta che il dizionario arrivi senza `processTypes`, o che il backend salvi una scrittura
|
|
@@ -7143,6 +7222,17 @@ declare class FlowBuilderComponent {
|
|
|
7143
7222
|
autoLayout(): void;
|
|
7144
7223
|
undo(): void;
|
|
7145
7224
|
redo(): void;
|
|
7225
|
+
/**
|
|
7226
|
+
* Un passo di storico, con la selezione che lo segue.
|
|
7227
|
+
*
|
|
7228
|
+
* La selezione dell'editor **e' il nome** (§3.3), e un annulla può riportare indietro una
|
|
7229
|
+
* rinomina — succede a ogni battuta sull'etichetta di un elemento appena creato, dove il nome
|
|
7230
|
+
* la segue. Il nome selezionato allora non esiste più: l'inspector resta puntato sul vuoto, il
|
|
7231
|
+
* form del tipo sparisce e l'intestazione mostra un nome che nel documento non c'è. L'annulla
|
|
7232
|
+
* però non sposta gli elementi nella loro collection, quindi **dove** stavano — collection e
|
|
7233
|
+
* indice — e' la traccia che sopravvive: dopo il passo si adotta il nome che si trova lì.
|
|
7234
|
+
*/
|
|
7235
|
+
private stepHistory;
|
|
7146
7236
|
save(): Promise<void>;
|
|
7147
7237
|
/** Il modulo del duplicato e' aperto. */
|
|
7148
7238
|
readonly isCopyOpen: _angular_core.WritableSignal<boolean>;
|