@esfaenza/flow-builder 20.3.46 → 20.3.48

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
@@ -416,8 +416,39 @@ interface FlowDynamicScreen extends FlowNodeBase {
416
416
  actions?: FlowScreenAction[];
417
417
  /** Chi le invoca, e quando: due pezzi perche' piu' trigger possono chiamare la stessa action. */
418
418
  triggers?: FlowScreenTrigger[];
419
+ /**
420
+ * §5.2 — le regole della **schermata**: le verifiche che non appartengono a nessun campo. Vedi
421
+ * {@link FlowScreenRule}.
422
+ */
423
+ validationRules?: FlowScreenRule[];
419
424
  connector?: FlowConnector;
420
425
  }
426
+ /**
427
+ * §5.2 — una regola della **schermata**, cioe' una verifica che nessun campo puo' esprimere: «almeno
428
+ * un punto fra le due sezioni», «la somma delle percentuali fa cento», «queste due date sono in
429
+ * ordine». Si valutano all'invio, dopo i campi e dopo le righe, e una regola non soddisfatta
430
+ * **impedisce alla schermata di avanzare** (`SCREEN_RULE` fra i rilievi del runtime).
431
+ *
432
+ * Perche' non basta la `validationRule` di un campo: quella giudica **un** valore, e su una sezione
433
+ * ripetibile e' addirittura inerte, perche' la sezione un valore proprio non lo raccoglie.
434
+ * L'alternativa storica era un node a valle dello screen, che pero' non blocca la schermata —
435
+ * l'interview avanza e poi torna indietro — e mette una validazione dentro il disegno del flow.
436
+ */
437
+ interface FlowScreenRule extends FlowConditionHolder {
438
+ /**
439
+ * **Obbligatorio** (`SCREEN_RULE_INVALID`): senza, la schermata si rifiuterebbe di avanzare senza
440
+ * dire perche'. Supporta i merge field, ed e' il testo dell'autore — il runtime non ne costruisce
441
+ * uno, perche' non c'e' un campo da nominare.
442
+ */
443
+ errorMessage?: string;
444
+ /**
445
+ * Facoltativo: il campo a cui agganciare il rilievo. Senza, il rilievo e' **della schermata** e il
446
+ * frontend lo mostra dove mostra i messaggi che non hanno un controllo. Se c'e', deve nominare un
447
+ * campo di questo screen e **non** uno dentro una sezione ripetibile — quello esiste in una riga
448
+ * per elemento e non individua un controllo (`SCREEN_FIELD_IN_REPEATER`).
449
+ */
450
+ fieldName?: string;
451
+ }
421
452
  type FlowAssignmentOperator = 'Assign' | 'Add' | 'Subtract' | 'AddAtStart' | 'AssignCount' | 'RemoveFirst' | 'RemoveAll' | 'RemovePosition' | 'RemoveAfterFirst' | 'RemoveBeforeFirst' | 'RemoveUncommon' | string;
422
453
  interface FlowAssignmentItem {
423
454
  assignToReference?: string;
@@ -696,8 +727,21 @@ interface FlowStart {
696
727
  locationY?: number;
697
728
  /** Sempre necessario: senza, `START_NO_ENTRY_POINT`. */
698
729
  connector?: FlowConnector;
730
+ /** §3.4 — insieme a `processType` **determina il tipo di flow**: e' l'altra meta' della coppia. */
699
731
  triggerType?: FlowTriggerType;
732
+ /**
733
+ * Obbligatorio con i trigger su record: e' l'entita' che innesca (`START_OBJECT_MISSING`).
734
+ * **Facoltativo** con `Scheduled`, e lì significa un'altra cosa: un'esecuzione per ogni record
735
+ * che soddisfa i filtri, invece di una sola (§3.4).
736
+ */
700
737
  object?: string;
738
+ /**
739
+ * §3.4 — obbligatorio con `triggerType: "Event"`: e' cio' a cui l'host si sottoscrive. Senza,
740
+ * `START_EVENT_MISSING`.
741
+ */
742
+ eventType?: string;
743
+ /** §3.4 — facoltativo, quando il tipo da solo non identifica l'evento. */
744
+ eventName?: string;
701
745
  recordTriggerType?: FlowRecordTriggerType;
702
746
  filterLogic?: FlowConditionLogic;
703
747
  filters?: FlowRecordFilter[];
@@ -922,6 +966,36 @@ interface FlowScreenFieldTypeEntry extends FlowDictionaryEntry {
922
966
  /** `dataType` obbligatorio: senza, `DATA_TYPE_MISSING`. */
923
967
  requiresDataType?: boolean;
924
968
  }
969
+ /**
970
+ * §3.4 — un **tipo di flow**: la voce che tiene insieme `processType` e `start.triggerType`, e che
971
+ * dice cosa lo Start deve dichiarare.
972
+ *
973
+ * E' la seconda voce di dizionario che porta piu' di `value`/`label`/`description`, e i flag sono
974
+ * gli stessi che applica il backend: sono loro a decidere **quali pannelli mostrare** — oggetto e
975
+ * filtri, orario e ricorrenza, evento — e se offrire gli screen nella palette. Ricalcolarli lato
976
+ * editor porta prima o poi a chiedere un campo che il motore non pretende, o a non chiederne uno
977
+ * che pretende.
978
+ */
979
+ interface FlowFlowTypeEntry extends FlowDictionaryEntry {
980
+ /** Il `processType` che il tipo scrive nel radice. */
981
+ processType?: FlowProcessType;
982
+ /** I `triggerType` ammessi per questo tipo: uno solo per quasi tutti, tre per i record. */
983
+ triggerTypes?: FlowTriggerType[];
984
+ /** Quello con cui nasce un flow di questo tipo, dove ce n'e' piu' d'uno. */
985
+ defaultTriggerType?: FlowTriggerType;
986
+ /** Che genere di presa in carico serve all'host: una voce di `registrationKinds`. */
987
+ registration?: string;
988
+ /** Il tipo non parte da solo: l'attivazione lo registra presso l'host, e puo' fallire (§8). */
989
+ requiresRegistration?: boolean;
990
+ /** Il flow puo' contenere screen: c'e' qualcuno a cui mostrarli. */
991
+ allowsScreens?: boolean;
992
+ /** Lo Start deve dichiarare `object`: senza, `START_OBJECT_MISSING`. */
993
+ requiresObject?: boolean;
994
+ /** Lo Start deve dichiarare `schedule`: senza, `START_SCHEDULE_MISSING`. */
995
+ requiresSchedule?: boolean;
996
+ /** Lo Start deve dichiarare `eventType`: senza, `START_EVENT_MISSING`. */
997
+ requiresEvent?: boolean;
998
+ }
925
999
  interface FlowResourceKindEntry extends FlowDictionaryEntry {
926
1000
  /** Solo le variabili sono scrivibili (§4.6). */
927
1001
  isWritable?: boolean;
@@ -945,6 +1019,14 @@ interface FlowDictionaries {
945
1019
  elementTypes?: FlowElementTypeEntry[];
946
1020
  resourceKinds?: FlowResourceKindEntry[];
947
1021
  globalVariables?: FlowGlobalVariableEntry[];
1022
+ /**
1023
+ * §3.4 — i **sei tipi di flow**, cioe' la prima scelta che l'utente fa. E' la tabella con cui si
1024
+ * compone la creazione: `processType` e `triggerType` da scrivere, e i flag da cui dipende quali
1025
+ * pannelli dello Start pretendere.
1026
+ */
1027
+ flowTypes?: FlowFlowTypeEntry[];
1028
+ /** §3.4, §8 — i generi di presa in carico presso l'host (scheduler, bus, trigger sui record). */
1029
+ registrationKinds?: FlowDictionaryEntry[];
948
1030
  processTypes?: FlowDictionaryEntry[];
949
1031
  versionStatuses?: FlowDictionaryEntry[];
950
1032
  triggerTypes?: FlowDictionaryEntry[];
@@ -1153,6 +1235,13 @@ interface FlowSummary {
1153
1235
  label?: string | null;
1154
1236
  description?: string | null;
1155
1237
  processType?: FlowProcessType;
1238
+ /**
1239
+ * §3.4 — il **tipo di flow**: la lettura in una parola di `processType` + `start.triggerType`.
1240
+ * E' **derivato** e di sola lettura — nel documento quel campo non esiste — e vale `null` per un
1241
+ * flow che non e' uno dei sei tipi (un `Evaluation`, un'orchestrazione senza trigger): lì si
1242
+ * mostra il `processType`.
1243
+ */
1244
+ flowType?: string | null;
1156
1245
  activeVersion?: number | null;
1157
1246
  latestVersion?: number;
1158
1247
  versionCount?: number;
@@ -1168,6 +1257,8 @@ interface FlowVersionSummary {
1168
1257
  label?: string | null;
1169
1258
  description?: string | null;
1170
1259
  processType?: FlowProcessType;
1260
+ /** §3.4 — il tipo di flow, derivato: vedi {@link FlowSummary.flowType}. */
1261
+ flowType?: string | null;
1171
1262
  createdAt?: string;
1172
1263
  /** Da conservare e rimandare come `expectedUpdatedAt` al salvataggio (§9). */
1173
1264
  updatedAt?: string;
@@ -1179,6 +1270,8 @@ interface FlowVersionSummary {
1179
1270
  interface FlowListQuery {
1180
1271
  search?: string;
1181
1272
  processType?: FlowProcessType;
1273
+ /** §3.4, §6.1 — filtra per **tipo di flow**, che e' la coppia `processType` + `triggerType`. */
1274
+ flowType?: string;
1182
1275
  onlyActive?: boolean;
1183
1276
  }
1184
1277
  type FlowIssueSeverity = 'Error' | 'Warning' | 'Info' | string;
@@ -1359,6 +1452,13 @@ interface FlowOutline {
1359
1452
  label?: string | null;
1360
1453
  processType?: FlowProcessType;
1361
1454
  triggerType?: string | null;
1455
+ /**
1456
+ * §3.4 — il **tipo di flow**: la lettura in una parola di `processType` + `start.triggerType`.
1457
+ * E' **derivato** e di sola lettura — nel documento quel campo non esiste — e vale `null` per un
1458
+ * flow che non e' uno dei sei tipi (un `Evaluation`, un'orchestrazione senza trigger): lì si
1459
+ * mostra il `processType`.
1460
+ */
1461
+ flowType?: string | null;
1362
1462
  entryElementName?: string | null;
1363
1463
  nodes: FlowOutlineNode[];
1364
1464
  connections: FlowOutlineConnection[];
@@ -1598,8 +1698,19 @@ type FlowErrorCategory =
1598
1698
  | 'NotEditable'
1599
1699
  /** Qualcun altro ha salvato: proponi ricarica (§9). */
1600
1700
  | 'VersionConflict'
1601
- /** Funzione non configurata su questo ambiente: disabilita il comando. */
1701
+ /**
1702
+ * Funzione non configurata su questo ambiente: disabilita il comando. **Sull'attivazione**
1703
+ * significa un'altra cosa e va detta con altre parole: nessuno, su questa installazione, prende
1704
+ * in carico quel tipo di flow — la definizione e' valida, e «riprova» non ha senso (§8).
1705
+ */
1602
1706
  | 'MissingService'
1707
+ /**
1708
+ * §8, §10 — l'host ha **rifiutato la presa in carico** del flow: scheduler non raggiungibile,
1709
+ * evento sconosciuto, intercettore delle scritture che non risponde. Riguarda i tre tipi che non
1710
+ * partono da soli, la versione **non** e' attiva, e qui «riprova» ha senso — al contrario di
1711
+ * `MissingService`, con cui e' facile confonderlo.
1712
+ */
1713
+ | 'RegistrationFailed'
1603
1714
  /**
1604
1715
  * §4.7.1 — classe non registrata (o `IStructureMgr` assente sull'host): il 404 dei membri di
1605
1716
  * una classe. **Non e' una lista vuota**: quella dice "membri non dichiarati" e lascia
@@ -2566,6 +2677,31 @@ declare class FlowDictionaryStore {
2566
2677
  readonly processTypes: _angular_core.Signal<FlowDictionaryEntry[]>;
2567
2678
  readonly triggerTypes: _angular_core.Signal<FlowDictionaryEntry[]>;
2568
2679
  readonly recordTriggerTypes: _angular_core.Signal<FlowDictionaryEntry[]>;
2680
+ /**
2681
+ * §3.4 — i sei tipi di flow. E' la prima scelta che l'utente fa creando un flow, e non e' un
2682
+ * campo del documento: il tipo **e'** la coppia `processType` + `start.triggerType`.
2683
+ */
2684
+ readonly flowTypes: _angular_core.Signal<FlowFlowTypeEntry[]>;
2685
+ /** §3.4, §8 — i generi di presa in carico presso l'host. Elenco vuoto = non dichiarati. */
2686
+ readonly registrationKinds: _angular_core.Signal<FlowDictionaryEntry[]>;
2687
+ flowType(value: string | undefined | null): FlowFlowTypeEntry | undefined;
2688
+ /**
2689
+ * §3.4 — **il tipo di flow di un documento**, e questo e' l'unico posto in cui quella coppia si
2690
+ * legge: `processType` piu' `triggerType`.
2691
+ *
2692
+ * `undefined` non e' un difetto ed e' un caso normale: un `Evaluation`, un'orchestrazione senza
2693
+ * trigger, o semplicemente un dizionario che non dichiara `flowTypes`. Lì il documento resta
2694
+ * valido e si mostra il `processType` — e' cio' che il contratto chiama `flowType: null`.
2695
+ *
2696
+ * Il `triggerType` assente vale `None`, com'e' nel documento (§3.4): un flow appena creato non lo
2697
+ * scrive, e senza questo default nessun tipo corrisponderebbe.
2698
+ */
2699
+ flowTypeOf(processType: string | undefined | null, triggerType: string | undefined | null): FlowFlowTypeEntry | undefined;
2700
+ /**
2701
+ * Il tipo di flow di un documento intero: la stessa domanda, posta con in mano il documento.
2702
+ * Comoda perche' la coppia sta in due posti diversi, e ricordarsene e' meta' del difetto.
2703
+ */
2704
+ flowTypeOfDefinition(definition: FlowDefinition | undefined): FlowFlowTypeEntry | undefined;
2569
2705
  readonly startFrequencies: _angular_core.Signal<FlowDictionaryEntry[]>;
2570
2706
  readonly offsetUnits: _angular_core.Signal<FlowDictionaryEntry[]>;
2571
2707
  readonly sortOrders: _angular_core.Signal<FlowDictionaryEntry[]>;
@@ -3193,8 +3329,18 @@ interface FlowResourceRef {
3193
3329
  index: number;
3194
3330
  resource: Record<string, unknown>;
3195
3331
  }
3196
- /** Documento minimo per un flow nuovo (§11, "Creare un flow"). */
3197
- declare function emptyFlowDefinition(fullName: string, label: string, processType: string): FlowDefinition;
3332
+ /**
3333
+ * Documento minimo per un flow nuovo (§11, "Creare un flow").
3334
+ *
3335
+ * §3.4 — cio' che l'utente sceglie e' il **tipo di flow**, che nel documento non esiste come campo:
3336
+ * e' la coppia `processType` + `start.triggerType`. Il chiamante passa entrambi i pezzi presi dalla
3337
+ * voce di `flowTypes` (`processType` e `defaultTriggerType`), e li scrive questa funzione — che e'
3338
+ * l'unico posto in cui un documento nasce, quindi l'unico in cui la coppia si puo' dimenticare.
3339
+ *
3340
+ * `triggerType` assente non si scrive: nel documento vale `None` per omissione (§2, §3.4), ed e' la
3341
+ * forma giusta per i due tipi che non hanno un trigger.
3342
+ */
3343
+ declare function emptyFlowDefinition(fullName: string, label: string, processType: string, triggerType?: string): FlowDefinition;
3198
3344
  declare class FlowDocumentStore {
3199
3345
  private readonly _document;
3200
3346
  private readonly _isDirty;
@@ -3796,6 +3942,30 @@ declare class FlowLayoutService {
3796
3942
  * contraddicono vince lo stato, per la stessa ragione.
3797
3943
  */
3798
3944
  declare function isVersionActive(version: FlowVersionSummary | undefined): boolean;
3945
+ /**
3946
+ * §8, §10 — l'errore riguarda la **presa in carico** del flow, non la sua definizione.
3947
+ *
3948
+ * Sono i due esiti dell'altra meta' dell'attivazione, quella che vale per i tre tipi che non
3949
+ * partono da soli: `MissingService` (su questa installazione nessuno prende in carico quel tipo di
3950
+ * flow) e `RegistrationFailed` (l'host ha rifiutato). Vanno riconosciuti insieme per una ragione
3951
+ * sola: in **entrambi** i casi la versione non e' attiva e lo stato va ricaricato invece di
3952
+ * assumere il successo. Le parole con cui dirli invece sono diverse, e la differenza e' se
3953
+ * «riprova» abbia senso.
3954
+ */
3955
+ declare function isRegistrationError(error: unknown): boolean;
3956
+ /**
3957
+ * §8 — come si dice all'utente che l'attivazione non e' riuscita.
3958
+ *
3959
+ * Sono due domande diverse e vanno tenute distinte, perche' il rimedio e' diverso. Sulla
3960
+ * **definizione** parla il pannello dei problemi, e il messaggio del backend va bene com'e'. Sulla
3961
+ * **presa in carico** il pannello non ha niente da dire — non e' della definizione che si parla —
3962
+ * e allora la differenza che conta per chi legge e' una sola: se «riprova» abbia senso.
3963
+ *
3964
+ * Sta qui e non nei due componenti che attivano (la barra in cima e il pannello versioni) perche'
3965
+ * con due copie una delle due resta indietro, e la si scopre solo sull'ambiente in cui il servizio
3966
+ * manca davvero.
3967
+ */
3968
+ declare function describeActivationError(error: unknown): string;
3799
3969
  /** Cosa mostrare quando il salvataggio incontra una versione modificata da altri (§9). */
3800
3970
  interface FlowConflictState {
3801
3971
  message: string;
@@ -4622,11 +4792,18 @@ interface PaletteGroup {
4622
4792
  declare class ElementPaletteComponent {
4623
4793
  private readonly dictionaries;
4624
4794
  /**
4625
- * Il `processType` del flow: un flow `AutoLaunched` che contiene screen e' un errore di
4626
- * validazione, perche' non c'e' nessuno a cui mostrarli (§3.1). La palette lo segnala
4795
+ * Il `processType` del flow: un flow che parte senza nessuno davanti e contiene screen e' un
4796
+ * errore di validazione, perche' non c'e' nessuno a cui mostrarli (§3.1). La palette lo segnala
4627
4797
  * prima che l'utente lo scopra dal pannello dei problemi.
4628
4798
  */
4629
4799
  readonly processType: _angular_core.InputSignal<string | undefined>;
4800
+ /**
4801
+ * §3.4 — l'altra meta' della coppia che fa il tipo di flow. Serve a leggere `allowsScreens` dal
4802
+ * dizionario invece di cablare «AutoLaunched»: la domanda vera non e' quale `processType` sia, ma
4803
+ * se ci sia qualcuno a cui mostrare una schermata — e con i sei tipi le due cose non coincidono
4804
+ * piu' (uno schedulato e un innescato da record sono entrambi `AutoLaunched`).
4805
+ */
4806
+ readonly triggerType: _angular_core.InputSignal<string | undefined>;
4630
4807
  readonly elementPicked: _angular_core.OutputEmitterRef<FlowPalettePick>;
4631
4808
  private readonly filter;
4632
4809
  /** Le voci, con i tipi a varianti già divisi: e' l'elenco che l'utente vede. */
@@ -4641,6 +4818,13 @@ declare class ElementPaletteComponent {
4641
4818
  * l'utente, e in un flow `AutoLaunched` non c'e' nessuno a cui mostrarli.
4642
4819
  */
4643
4820
  isIncompatible(item: PaletteItem): boolean;
4821
+ /**
4822
+ * §3.4 — lo dice il flag `allowsScreens` del tipo di flow. `undefined` significa «non lo so» —
4823
+ * dizionario senza `flowTypes`, o una coppia che non e' fra i sei — e lì si ripiega sulla vecchia
4824
+ * regola cablata, che copre il caso di gran lunga piu' comune senza vietare niente a chi ha un
4825
+ * documento fuori dai sei tipi.
4826
+ */
4827
+ private screensAreAllowed;
4644
4828
  /**
4645
4829
  * Il testo del tooltip. Su una voce che nasce da una variante ci va anche il nome del tipo:
4646
4830
  * e' l'unico posto in cui si vede che «ordina» e «filtra» sono lo stesso elemento.
@@ -4656,7 +4840,7 @@ declare class ElementPaletteComponent {
4656
4840
  faultLabel(item: PaletteItem): string | null;
4657
4841
  categoryClass(category: string): string;
4658
4842
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ElementPaletteComponent, never>;
4659
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ElementPaletteComponent, "fb-element-palette", never, { "processType": { "alias": "processType"; "required": false; "isSignal": true; }; }, { "elementPicked": "elementPicked"; }, never, never, true, never>;
4843
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ElementPaletteComponent, "fb-element-palette", never, { "processType": { "alias": "processType"; "required": false; "isSignal": true; }; "triggerType": { "alias": "triggerType"; "required": false; "isSignal": true; }; }, { "elementPicked": "elementPicked"; }, never, never, true, never>;
4660
4844
  }
4661
4845
 
4662
4846
  declare class ReferencePickerComponent {
@@ -6154,7 +6338,29 @@ declare class StartInspectorComponent {
6154
6338
  readonly start: _angular_core.Signal<FlowStart>;
6155
6339
  readonly startNode: _angular_core.Signal<FlowAnyNode>;
6156
6340
  readonly outlets: _angular_core.Signal<_esfaenza_flow_builder.FlowOutlet[]>;
6341
+ /**
6342
+ * §3.4 — i trigger proponibili sono quelli del **tipo di flow**, non tutti: un flow `Screen` non
6343
+ * diventa schedulato cambiando una tendina, perche' il tipo lo si sceglie alla creazione. Dove il
6344
+ * tipo non si riconosce — dizionario senza `flowTypes`, oppure una coppia che non e' fra i sei —
6345
+ * si torna all'elenco intero: e' un ripiego, e togliere opzioni a chi ha un documento fuori dai
6346
+ * sei tipi lo bloccherebbe sul valore che ha.
6347
+ */
6157
6348
  readonly triggerTypes: _angular_core.Signal<_esfaenza_flow_builder.FlowDictionaryEntry[]>;
6349
+ /** Il tipo di flow, cioe' `processType` + `triggerType` letti insieme (§3.4). */
6350
+ readonly flowType: _angular_core.Signal<_esfaenza_flow_builder.FlowFlowTypeEntry | undefined>;
6351
+ /**
6352
+ * §3.4 — il tipo non parte da solo e l'attivazione lo **registra** presso l'host. Si dice qui,
6353
+ * perche' e' l'unico posto in cui si vede *perche'*: e' questo trigger a richiedere qualcuno che
6354
+ * lo prenda in carico, e l'attivazione puo' fallire per quello e non per la definizione (§8).
6355
+ */
6356
+ readonly requiresRegistration: _angular_core.Signal<boolean>;
6357
+ /**
6358
+ * **Chi** deve prenderlo in carico, con il nome che gli da' l'host: «il pianificatore», «il bus
6359
+ * degli eventi». Viene da `registrationKinds`, non da una mappa cablata — e dove il dizionario non
6360
+ * lo dichiara resta vuoto, e la frase parla genericamente di infrastruttura: e' meglio di un nome
6361
+ * inventato che poi nei log dell'ambiente non compare.
6362
+ */
6363
+ readonly registrationLabel: _angular_core.Signal<string>;
6158
6364
  readonly recordTriggerTypes: _angular_core.Signal<_esfaenza_flow_builder.FlowDictionaryEntry[]>;
6159
6365
  readonly frequencies: _angular_core.Signal<_esfaenza_flow_builder.FlowDictionaryEntry[]>;
6160
6366
  readonly offsetUnits: _angular_core.Signal<_esfaenza_flow_builder.FlowDictionaryEntry[]>;
@@ -6167,6 +6373,7 @@ declare class StartInspectorComponent {
6167
6373
  /** I rilievi sul documento, che e' dove finiscono quelli dello Start (§7). */
6168
6374
  readonly issues: _angular_core.Signal<_esfaenza_flow_builder.FlowValidationIssue[]>;
6169
6375
  setTriggerType(value: string): void;
6376
+ setEventField(field: 'eventType' | 'eventName', value: string): void;
6170
6377
  setObject(value: string): void;
6171
6378
  setRecordTriggerType(value: string): void;
6172
6379
  setRequireChanged(value: boolean): void;
@@ -6647,6 +6854,8 @@ declare class DynamicScreenInspectorComponent extends NodeInspectorBase {
6647
6854
  setProvidedField(value: string | undefined): void;
6648
6855
  readonly screenActions: _angular_core.Signal<FlowScreenAction[]>;
6649
6856
  readonly screenTriggers: _angular_core.Signal<FlowScreenTrigger[]>;
6857
+ /** §5.2 — le regole della **schermata**: quelle che nessun campo puo' esprimere. */
6858
+ readonly screenRules: _angular_core.Signal<FlowScreenRule[]>;
6650
6859
  /** Quale action e' aperta nel dettaglio; `null` = solo l'elenco. */
6651
6860
  private readonly actionSelection;
6652
6861
  readonly selectedActionIndex: _angular_core.Signal<number | null>;
@@ -6742,6 +6951,27 @@ declare class DynamicScreenInspectorComponent extends NodeInspectorBase {
6742
6951
  * l'action gira a ogni cambio del campo: un blocco vuoto si omette invece di scriverlo (§2).
6743
6952
  */
6744
6953
  onTriggerConditionsChanged(index: number, mutate: (holder: FlowConditionHolder) => void): void;
6954
+ /**
6955
+ * §5.2 — una regola nuova nasce **con le condizioni**, non con la formula, ed e' il consiglio che
6956
+ * conta: `IsEmpty` su una collection e' un operatore che il **runtime** valuta, mentre la stessa
6957
+ * domanda scritta in una formula chiede al motore una funzione che potrebbe non avere. Vale in
6958
+ * particolare per la verifica piu' frequente — che una sezione ripetibile abbia almeno una riga.
6959
+ */
6960
+ addScreenRule(): void;
6961
+ removeScreenRule(index: number): void;
6962
+ private patchScreenRule;
6963
+ setScreenRuleProperty(index: number, property: 'errorMessage' | 'fieldName', value: string): void;
6964
+ /**
6965
+ * Le condizioni di una regola sono quelle di una Decision, formula compresa: qui `Formula` e' un
6966
+ * `conditionLogic` ammesso (§5.2), a differenza di un `filterLogic`. Il blocco vuoto **non** si
6967
+ * cancella come per un trigger — lì assente significa «gira sempre», qui una regola senza
6968
+ * condizioni non verifica niente ed e' un difetto da vedere, non da nascondere.
6969
+ */
6970
+ onScreenRuleConditionsChanged(index: number, mutate: (holder: FlowConditionHolder) => void): void;
6971
+ /** §5.2 — `errorMessage` e' obbligatorio: senza, la schermata non avanza e non dice perche'. */
6972
+ screenRuleHasNoMessage(rule: FlowScreenRule): boolean;
6973
+ /** §5.2 — una regola senza condizioni (e senza formula) non verifica niente. */
6974
+ screenRuleIsEmpty(rule: FlowScreenRule): boolean;
6745
6975
  setScreenText(property: string, value: string): void;
6746
6976
  /** I flag con default `true` si scrivono solo quando si nega, per non sporcare il diff. */
6747
6977
  setScreenFlag(flag: 'allowBack' | 'allowFinish' | 'allowPause' | 'showHeader' | 'showFooter', value: boolean): void;
@@ -7567,7 +7797,33 @@ declare class FlowBuilderComponent {
7567
7797
  * nell'interfaccia; il controllo qui e' perché la chiamata resta pubblica.
7568
7798
  */
7569
7799
  setProcessType(value: string): void;
7800
+ /**
7801
+ * §3.4 — cio' che l'utente sceglie alla creazione e' il **tipo di flow**, non il `processType`:
7802
+ * quello si ricava, insieme al `triggerType`, dalla voce di `flowTypes`.
7803
+ *
7804
+ * I due campi si scrivono in **una** mutazione: con due, l'annulla riporterebbe indietro il
7805
+ * trigger lasciando il `processType` nuovo, cioe' una coppia che non e' nessuno dei sei tipi.
7806
+ * Vale la stessa regola del `setProcessType` qui sopra — si sceglie alla creazione e poi non si
7807
+ * tocca — e per la stessa ragione: cambiarlo su un documento già scritto lo riempie di
7808
+ * riferimenti a globali che da quel momento non esistono, e nessuna primitiva rimedia. Il
7809
+ * contratto ammette il cambio (riscrivere la coppia), ma non obbliga a offrirlo.
7810
+ */
7811
+ setFlowType(value: string): void;
7570
7812
  readonly processTypes: _angular_core.Signal<_esfaenza_flow_builder.FlowDictionaryEntry[]>;
7813
+ /**
7814
+ * I sei tipi di flow (§3.4). Elenco vuoto = il dizionario non li dichiara, e allora la scelta
7815
+ * torna a essere il solo `processType`: e' un ripiego, non un difetto — un host che non espone
7816
+ * `flowTypes` deve poter creare flow lo stesso.
7817
+ */
7818
+ readonly flowTypes: _angular_core.Signal<_esfaenza_flow_builder.FlowFlowTypeEntry[]>;
7819
+ /** Il tipo di flow del documento: la coppia `processType` + `triggerType` letta in un posto solo. */
7820
+ readonly flowType: _angular_core.Signal<_esfaenza_flow_builder.FlowFlowTypeEntry | undefined>;
7821
+ /**
7822
+ * L'etichetta del tipo, per il flow salvato dove non e' piu' una scelta. Dove la coppia non e'
7823
+ * uno dei sei — un `Evaluation`, un'orchestrazione senza trigger: e' il `flowType: null` del
7824
+ * contratto — si mostra il `processType`, che resta l'informazione vera.
7825
+ */
7826
+ readonly flowTypeLabel: _angular_core.Signal<string>;
7571
7827
  /**
7572
7828
  * Il tipo scritto per esteso, per il flow salvato dove non e' più una scelta. Fuori catalogo
7573
7829
  * si mostra il valore grezzo: e' del backend, non nostro da correggere (vedi
@@ -7862,5 +8118,5 @@ declare class SelectValueDirective implements AfterViewChecked {
7862
8118
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SelectValueDirective, "select[fbValue]", never, { "fbValue": { "alias": "fbValue"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7863
8119
  }
7864
8120
 
7865
- export { ConditionEditorComponent, ConnectorEditorComponent, DebugPanelComponent, DynamicScreenInspectorComponent, ENUM_CHOICE_SET_DEFAULT_DISPLAY_FIELD, ENUM_CHOICE_SET_DEFAULT_VALUE_FIELD, ENUM_CHOICE_SET_FIELDS, ElementDialogComponent, ElementInspectorComponent, ElementPaletteComponent, EnumValuePickerComponent, FALLBACK_COLLECTION_BY_TYPE, FALLBACK_TYPE_LABEL, FLOW_BUILDER_HTTP_CONFIG, FLOW_CLIPBOARD_KIND, FLOW_CLIPBOARD_VERSION, FLOW_ELEMENT_ICONS, FLOW_ELEMENT_VARIANT_FIELDS, FLOW_ELEMENT_VARIANT_ICONS, FLOW_ERROR_FALLBACK_MESSAGE, FLOW_ERROR_HTTP_STATUS, FLOW_FOLD_HEIGHT, FLOW_FOLD_WIDTH, FLOW_GROUP_COLORS, FLOW_NAME_PATTERN, FLOW_NODE_COLLECTIONS, FLOW_NODE_HEIGHT, FLOW_NODE_WIDTH, FLOW_REFERENCE_FIELDS, FLOW_RESOURCE_COLLECTIONS, FLOW_VALUE_FIELDS, FLOW_VALUE_LITERAL_FIELDS, FieldAssignmentEditorComponent, FieldPickerComponent, FieldValuePickerComponent, FlowApiError, FlowBuilderApi, FlowBuilderComponent, FlowCanvasComponent, FlowCatalogStore, FlowClipboardService, FlowDictionaryStore, FlowDocumentStore, FlowEditorSession, FlowLayoutService, FlowValidationStore, FormulaEditorComponent, FormulaValidationService, GROUP_HEADER_HEIGHT, GROUP_MIN_HEIGHT, GROUP_MIN_WIDTH, GROUP_PADDING, GroupPanelComponent, HttpFlowBuilderApi, MergeTextEditorComponent, NamePickerComponent, NodeInspectorBase, ORCHESTRATION_CONDITION_OUTPUT, ObjectPickerComponent, OrchestratedStageInspectorComponent, ParameterEditorComponent, PasteDialogComponent, ProblemsPanelComponent, RecordFilterEditorComponent, ReferencePickerComponent, ResourceDialogComponent, ResourceFormComponent, ResourcePanelComponent, RunDialogComponent, SEVERITY_BUCKETS, SEVERITY_ICON, SEVERITY_LABEL, START_NODE_NAME, SelectValueDirective, StartInspectorComponent, StructureMemberPickerComponent, StructurePickerComponent, TYPES_WITH_AUTOMATIC_OUTPUT, TYPE_BY_COLLECTION, UNSUPPORTED_TYPES, ValueEditorComponent, VersionPanelComponent, allFieldsOf, applyPaste, areTypesComparable, boundsAround, buildClipboardPayload, canvasFoldId, canvasGroupId, canvasNodeId, checkConditionLogic, checkFlowName, choiceSetSourceOf, declaredChoiceSetSources, describeFieldPath, describePathEntry, duplicateField, elementIcon, emptyFlowDefinition, enumChoiceSetFieldType, fieldAt, filterReferences, flattenFields, flowNodeWidth, flowNodeWidthClass, foldSourceConnectorId, foldTargetConnectorId, groupColorClass, groupRect, hasAutoSize, innerNamesOf, insertField, isClipboardPayload, isCustomConditionLogic, isEmptyReferenceFilter, isFieldResource, isFoldReference, isGlobalReference, isNumericType, isPathInside, isTypeCheckedOperator, isUnknownEnumChoiceSetField, isValidFlowName, isValued, isVersionActive, loadPathLevel, matchesReferenceFilter, membersInside, moveCondition, moveField, navigatePath, otherSourceFieldsOf, outletByKey, outletsOf, parseCanvasFoldId, parseCanvasGroupId, parseCanvasNodeId, parseFieldPath, parseInvariantNumber, parseSourceConnectorId, parseTargetConnectorId, pathAvailableNames, pathContainerLabel, pathKey, pathNotVerifiableMessage, planPaste, recomputeMembers, referenceRoot, referencedRootsOf, remapConditionLogic, removeCondition, removeField, repeatedFieldNames, repeatingSectionOf, resolvePath, resourceFieldsOf, rewriteReferences, sameMembers, samePath, screenActionNames, screenFieldNames, severityBucket, slugifyFlowName, sourceConnectorId, stageStepNames, stageStepOutputReferenced, stepsOf, targetConnectorId, typeOfCollection, uniqueFlowName, valuedFieldOf, valuedFieldsOf, variantFieldOf, variantOf, variantPresetOf };
7866
- export type { ChoiceSetSource, FieldAssignmentHolder, FilterFieldOption, FilterHolder, FlowActionCall, FlowAnyNode, FlowAssignment, FlowAssignmentItem, FlowAssignmentOperator, FlowAssignmentOperatorEntry, FlowBuilderHttpConfig, FlowCanvasEdge, FlowCanvasFold, FlowCanvasGroup, FlowCanvasNode, FlowCatalogEntry, FlowCatalogParameter, FlowChoice, FlowClipboardNode, FlowClipboardPayload, FlowClipboardResource, FlowCloneRequest, FlowCollectionProcessor, FlowCollectionProcessorType, FlowComparisonOperator, FlowComparisonOperatorEntry, FlowCondition, FlowConditionHolder, FlowConditionLogic, FlowConflictState, FlowConnectionKind, FlowConnector, FlowConnectorTarget, FlowConstant, FlowCreateRequest, FlowCustomError, FlowCustomErrorMessage, FlowCustomProperty, FlowDataType, FlowDataTypeEntry, FlowDecision, FlowDecisionRule, FlowDefinition, FlowDictionaries, FlowDictionaryEntry, FlowDynamicChoiceSet, FlowDynamicScreen, FlowEdge, FlowElementType, FlowElementTypeEntry, FlowEnumValue, FlowErrorCategory, FlowExportQuery, FlowFieldDescription, FlowFieldUsage, FlowFieldValue, FlowFormKind, FlowFormula, FlowFormulaFunction, FlowFormulaFunctionParameter, FlowFormulaIssue, FlowFormulaUsage, FlowFormulaValidationRequest, FlowFormulaValidationResult, FlowGlobalVariableEntry, FlowGroup, FlowGroupRef, FlowGroupTarget, FlowInputFieldAssignment, FlowInputParameter, FlowInterviewResult, FlowInterviewStatus, FlowIssueSeverity, FlowLayoutDirection, FlowLayoutNodeInput, FlowLayoutOptions, FlowLayoutResult, FlowListQuery, FlowLoop, FlowNameCheck, FlowNameProblem, FlowNewVersionRequest, FlowNodeBase, FlowNodeCollection, FlowNodeRef, FlowObjectDescription, FlowObjectSummary, FlowOffsetUnit, FlowOrchestratedStage, FlowOutlet, FlowOutline, FlowOutlineConnection, FlowOutlineGroup, FlowOutlineNode, FlowOutputFieldAssignment, FlowOutputParameter, FlowPalettePick, FlowPastePlan, FlowPasteRename, FlowPasteResource, FlowPendingScreen, FlowProcessType, FlowRecordCreate, FlowRecordDelete, FlowRecordFilter, FlowRecordFilterOperator, FlowRecordLookup, FlowRecordRollback, FlowRecordTriggerType, FlowRecordUpdate, FlowRecordValue, FlowRect, FlowReference, FlowReferenceFilter, FlowReferenceKind, FlowRegionContainerType, FlowResourceCollection, FlowResourceEdit, FlowResourceKindEntry, FlowResourceRef, FlowResourceTarget, FlowResumeRequest, FlowRunOutcome, FlowRunRequest, FlowSaveRequest, FlowSaveResult, FlowSchedule, FlowScheduledPath, FlowScreen, FlowScreenAction, FlowScreenField, FlowScreenFieldInputsRevisited, FlowScreenFieldNode, FlowScreenFieldPath, FlowScreenFieldType, FlowScreenFieldTypeEntry, FlowScreenFieldTypeResolver, FlowScreenNavigation, FlowScreenResponseRequest, FlowScreenTrigger, FlowScreenTriggerInitBehavior, FlowScreenValidationRule, FlowScriptPluginCall, FlowSeverityBucket, FlowSortOption, FlowSortOrder, FlowStage, FlowStageStep, FlowStageStepActionType, FlowStageStepAssignee, FlowStageStepConditionActionType, FlowStageStepRequest, FlowStageStepState, FlowStageStepStatus, FlowStageStepTypeEntry, FlowStart, FlowStartInterviewRequest, FlowStructureDescribed, FlowStructureDescription, FlowStructureInstance, FlowStructureMember, FlowSubflow, FlowSubflowInputAssignment, FlowSubflowOutputAssignment, FlowSummary, FlowTextTemplate, FlowTraceEntry, FlowTransactionModel, FlowTransform, FlowTransformType, FlowTransformValue, FlowTransformValueAction, FlowTriggerType, FlowTypedEntry, FlowTypedValue, FlowUnsupportedNode, FlowValidationIssue, FlowValidationResult, FlowValue, FlowVariable, FlowVersionStatus, FlowVersionSummary, FlowWait, FlowWaitEvent, NamePickerOption, PaletteGroup, PaletteItem, ParameterHolder, PathCatalog, PathContainer, PathContainerKind, PathEntry, PathLevel, PathLevelStatus, PathNavigation, PathNavigationRequest, PathResolution, PathStopReason, PathValueSet, StructureMemberUsage, ValueMode };
8121
+ export { ConditionEditorComponent, ConnectorEditorComponent, DebugPanelComponent, DynamicScreenInspectorComponent, ENUM_CHOICE_SET_DEFAULT_DISPLAY_FIELD, ENUM_CHOICE_SET_DEFAULT_VALUE_FIELD, ENUM_CHOICE_SET_FIELDS, ElementDialogComponent, ElementInspectorComponent, ElementPaletteComponent, EnumValuePickerComponent, FALLBACK_COLLECTION_BY_TYPE, FALLBACK_TYPE_LABEL, FLOW_BUILDER_HTTP_CONFIG, FLOW_CLIPBOARD_KIND, FLOW_CLIPBOARD_VERSION, FLOW_ELEMENT_ICONS, FLOW_ELEMENT_VARIANT_FIELDS, FLOW_ELEMENT_VARIANT_ICONS, FLOW_ERROR_FALLBACK_MESSAGE, FLOW_ERROR_HTTP_STATUS, FLOW_FOLD_HEIGHT, FLOW_FOLD_WIDTH, FLOW_GROUP_COLORS, FLOW_NAME_PATTERN, FLOW_NODE_COLLECTIONS, FLOW_NODE_HEIGHT, FLOW_NODE_WIDTH, FLOW_REFERENCE_FIELDS, FLOW_RESOURCE_COLLECTIONS, FLOW_VALUE_FIELDS, FLOW_VALUE_LITERAL_FIELDS, FieldAssignmentEditorComponent, FieldPickerComponent, FieldValuePickerComponent, FlowApiError, FlowBuilderApi, FlowBuilderComponent, FlowCanvasComponent, FlowCatalogStore, FlowClipboardService, FlowDictionaryStore, FlowDocumentStore, FlowEditorSession, FlowLayoutService, FlowValidationStore, FormulaEditorComponent, FormulaValidationService, GROUP_HEADER_HEIGHT, GROUP_MIN_HEIGHT, GROUP_MIN_WIDTH, GROUP_PADDING, GroupPanelComponent, HttpFlowBuilderApi, MergeTextEditorComponent, NamePickerComponent, NodeInspectorBase, ORCHESTRATION_CONDITION_OUTPUT, ObjectPickerComponent, OrchestratedStageInspectorComponent, ParameterEditorComponent, PasteDialogComponent, ProblemsPanelComponent, RecordFilterEditorComponent, ReferencePickerComponent, ResourceDialogComponent, ResourceFormComponent, ResourcePanelComponent, RunDialogComponent, SEVERITY_BUCKETS, SEVERITY_ICON, SEVERITY_LABEL, START_NODE_NAME, SelectValueDirective, StartInspectorComponent, StructureMemberPickerComponent, StructurePickerComponent, TYPES_WITH_AUTOMATIC_OUTPUT, TYPE_BY_COLLECTION, UNSUPPORTED_TYPES, ValueEditorComponent, VersionPanelComponent, allFieldsOf, applyPaste, areTypesComparable, boundsAround, buildClipboardPayload, canvasFoldId, canvasGroupId, canvasNodeId, checkConditionLogic, checkFlowName, choiceSetSourceOf, declaredChoiceSetSources, describeActivationError, describeFieldPath, describePathEntry, duplicateField, elementIcon, emptyFlowDefinition, enumChoiceSetFieldType, fieldAt, filterReferences, flattenFields, flowNodeWidth, flowNodeWidthClass, foldSourceConnectorId, foldTargetConnectorId, groupColorClass, groupRect, hasAutoSize, innerNamesOf, insertField, isClipboardPayload, isCustomConditionLogic, isEmptyReferenceFilter, isFieldResource, isFoldReference, isGlobalReference, isNumericType, isPathInside, isRegistrationError, isTypeCheckedOperator, isUnknownEnumChoiceSetField, isValidFlowName, isValued, isVersionActive, loadPathLevel, matchesReferenceFilter, membersInside, moveCondition, moveField, navigatePath, otherSourceFieldsOf, outletByKey, outletsOf, parseCanvasFoldId, parseCanvasGroupId, parseCanvasNodeId, parseFieldPath, parseInvariantNumber, parseSourceConnectorId, parseTargetConnectorId, pathAvailableNames, pathContainerLabel, pathKey, pathNotVerifiableMessage, planPaste, recomputeMembers, referenceRoot, referencedRootsOf, remapConditionLogic, removeCondition, removeField, repeatedFieldNames, repeatingSectionOf, resolvePath, resourceFieldsOf, rewriteReferences, sameMembers, samePath, screenActionNames, screenFieldNames, severityBucket, slugifyFlowName, sourceConnectorId, stageStepNames, stageStepOutputReferenced, stepsOf, targetConnectorId, typeOfCollection, uniqueFlowName, valuedFieldOf, valuedFieldsOf, variantFieldOf, variantOf, variantPresetOf };
8122
+ export type { ChoiceSetSource, FieldAssignmentHolder, FilterFieldOption, FilterHolder, FlowActionCall, FlowAnyNode, FlowAssignment, FlowAssignmentItem, FlowAssignmentOperator, FlowAssignmentOperatorEntry, FlowBuilderHttpConfig, FlowCanvasEdge, FlowCanvasFold, FlowCanvasGroup, FlowCanvasNode, FlowCatalogEntry, FlowCatalogParameter, FlowChoice, FlowClipboardNode, FlowClipboardPayload, FlowClipboardResource, FlowCloneRequest, FlowCollectionProcessor, FlowCollectionProcessorType, FlowComparisonOperator, FlowComparisonOperatorEntry, FlowCondition, FlowConditionHolder, FlowConditionLogic, FlowConflictState, FlowConnectionKind, FlowConnector, FlowConnectorTarget, FlowConstant, FlowCreateRequest, FlowCustomError, FlowCustomErrorMessage, FlowCustomProperty, FlowDataType, FlowDataTypeEntry, FlowDecision, FlowDecisionRule, FlowDefinition, FlowDictionaries, FlowDictionaryEntry, FlowDynamicChoiceSet, FlowDynamicScreen, FlowEdge, FlowElementType, FlowElementTypeEntry, FlowEnumValue, FlowErrorCategory, FlowExportQuery, FlowFieldDescription, FlowFieldUsage, FlowFieldValue, FlowFlowTypeEntry, FlowFormKind, FlowFormula, FlowFormulaFunction, FlowFormulaFunctionParameter, FlowFormulaIssue, FlowFormulaUsage, FlowFormulaValidationRequest, FlowFormulaValidationResult, FlowGlobalVariableEntry, FlowGroup, FlowGroupRef, FlowGroupTarget, FlowInputFieldAssignment, FlowInputParameter, FlowInterviewResult, FlowInterviewStatus, FlowIssueSeverity, FlowLayoutDirection, FlowLayoutNodeInput, FlowLayoutOptions, FlowLayoutResult, FlowListQuery, FlowLoop, FlowNameCheck, FlowNameProblem, FlowNewVersionRequest, FlowNodeBase, FlowNodeCollection, FlowNodeRef, FlowObjectDescription, FlowObjectSummary, FlowOffsetUnit, FlowOrchestratedStage, FlowOutlet, FlowOutline, FlowOutlineConnection, FlowOutlineGroup, FlowOutlineNode, FlowOutputFieldAssignment, FlowOutputParameter, FlowPalettePick, FlowPastePlan, FlowPasteRename, FlowPasteResource, FlowPendingScreen, FlowProcessType, FlowRecordCreate, FlowRecordDelete, FlowRecordFilter, FlowRecordFilterOperator, FlowRecordLookup, FlowRecordRollback, FlowRecordTriggerType, FlowRecordUpdate, FlowRecordValue, FlowRect, FlowReference, FlowReferenceFilter, FlowReferenceKind, FlowRegionContainerType, FlowResourceCollection, FlowResourceEdit, FlowResourceKindEntry, FlowResourceRef, FlowResourceTarget, FlowResumeRequest, FlowRunOutcome, FlowRunRequest, FlowSaveRequest, FlowSaveResult, FlowSchedule, FlowScheduledPath, FlowScreen, FlowScreenAction, FlowScreenField, FlowScreenFieldInputsRevisited, FlowScreenFieldNode, FlowScreenFieldPath, FlowScreenFieldType, FlowScreenFieldTypeEntry, FlowScreenFieldTypeResolver, FlowScreenNavigation, FlowScreenResponseRequest, FlowScreenRule, FlowScreenTrigger, FlowScreenTriggerInitBehavior, FlowScreenValidationRule, FlowScriptPluginCall, FlowSeverityBucket, FlowSortOption, FlowSortOrder, FlowStage, FlowStageStep, FlowStageStepActionType, FlowStageStepAssignee, FlowStageStepConditionActionType, FlowStageStepRequest, FlowStageStepState, FlowStageStepStatus, FlowStageStepTypeEntry, FlowStart, FlowStartInterviewRequest, FlowStructureDescribed, FlowStructureDescription, FlowStructureInstance, FlowStructureMember, FlowSubflow, FlowSubflowInputAssignment, FlowSubflowOutputAssignment, FlowSummary, FlowTextTemplate, FlowTraceEntry, FlowTransactionModel, FlowTransform, FlowTransformType, FlowTransformValue, FlowTransformValueAction, FlowTriggerType, FlowTypedEntry, FlowTypedValue, FlowUnsupportedNode, FlowValidationIssue, FlowValidationResult, FlowValue, FlowVariable, FlowVersionStatus, FlowVersionSummary, FlowWait, FlowWaitEvent, NamePickerOption, PaletteGroup, PaletteItem, ParameterHolder, PathCatalog, PathContainer, PathContainerKind, PathEntry, PathLevel, PathLevelStatus, PathNavigation, PathNavigationRequest, PathResolution, PathStopReason, PathValueSet, StructureMemberUsage, ValueMode };
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@esfaenza/flow-builder",
3
- "version": "20.3.46",
3
+ "version": "20.3.48",
4
4
  "peerDependencies": {
5
5
  "@angular/cdk": "^20.2.14",
6
- "@angular/common": "^20.3.28",
7
- "@angular/core": "^20.3.28",
6
+ "@angular/common": "^20.3.31",
7
+ "@angular/core": "^20.3.31",
8
8
  "@foblex/flow": ">=19.0.0",
9
9
  "dagre": "0.8.5"
10
10
  },