@esfaenza/flow-builder 20.3.38 → 20.3.40

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
@@ -1124,8 +1124,13 @@ interface FlowValidationResult {
1124
1124
  /**
1125
1125
  * Dove comparira' l'espressione. Non e' cosmesi: e' cio' che permette al motore di dire
1126
1126
  * «qui serve un booleano» invece di accettare un'espressione che poi fallira' a runtime (§6.3).
1127
+ *
1128
+ * `Text` e' l'uso diverso dagli altri: cio' che si manda non e' un'espressione ma un **testo con
1129
+ * merge field** — il messaggio di un Custom Error, un text template, la scritta di un campo di
1130
+ * screen (§5.12) — e a essere verificate sono le isole `{!...}`, non la frase. Un testo che non
1131
+ * ne contiene si tiene per se': mandarlo si farebbe accusare ogni parola.
1127
1132
  */
1128
- type FlowFormulaUsage = 'Resource' | 'Condition' | 'ValidationRule' | 'Value' | string;
1133
+ type FlowFormulaUsage = 'Resource' | 'Condition' | 'ValidationRule' | 'Value' | 'Text' | string;
1129
1134
  /**
1130
1135
  * L'unica primitiva della §6.3 che **avvolge** il documento invece di prenderlo nudo: oltre al
1131
1136
  * flow deve portare l'espressione e cosa ci si aspetta che produca (§6.4, ultimo capoverso).
@@ -2523,7 +2528,14 @@ declare class FlowDictionaryStore {
2523
2528
  * significa "non lo so", non "non esiste".
2524
2529
  */
2525
2530
  isGlobalScopeVerifiable(scope: string | undefined | null): boolean;
2526
- /** I percorsi noti di uno scope, già prefissati: `$User.Email`. */
2531
+ /**
2532
+ * I percorsi noti di uno scope, già prefissati: `$User.Email`.
2533
+ *
2534
+ * Il percorso **vuoto** e' lo scope stesso (§4.1): un host puo' dichiarare `$Profile` senza
2535
+ * punto — un'unica istanza invece dell'elenco dei suoi campi — e lì il riferimento e' il nome
2536
+ * dello scope. Concatenare comunque il punto produrrebbe `$Profile.`, che non e' un
2537
+ * riferimento di niente.
2538
+ */
2527
2539
  globalPathsOf(scope: string | undefined | null): string[];
2528
2540
  /** §5.14 — la voce di `stageStepTypes` di un `actionType`. */
2529
2541
  stageStepType(value: string | undefined | null): FlowStageStepTypeEntry | undefined;
@@ -4597,7 +4609,7 @@ declare class ReferencePickerComponent {
4597
4609
  * percorso inesistente di uno scope che i percorsi li dichiara, perche' lì il backend
4598
4610
  * risponderebbe `GLOBAL_UNKNOWN`.
4599
4611
  */
4600
- readonly valueState: _angular_core.Signal<"member" | "empty" | "unknown" | "known" | "navigated" | "host" | "containerRoot" | "memberUnknown" | "memberNotWritable" | "pathUnverified" | "globalPathUntyped" | "globalPathInvalid">;
4612
+ readonly valueState: _angular_core.Signal<"empty" | "unknown" | "member" | "known" | "navigated" | "host" | "containerRoot" | "memberUnknown" | "memberNotWritable" | "pathUnverified" | "globalPathUntyped" | "globalPathInvalid">;
4601
4613
  /** Le parole cambiano con la tappa: un campo di un'entita' non e' un membro di una classe. */
4602
4614
  private readonly tailIsObject;
4603
4615
  private readonly tailContainer;
@@ -4979,7 +4991,7 @@ declare class FormulaEditorComponent {
4979
4991
  * dinamico — e riscriverla a ogni tasto costa. La **verifica** parte comunque durante la
4980
4992
  * digitazione: usa la bozza locale, non cio' che e' arrivato al documento.
4981
4993
  */
4982
- readonly commitOn: _angular_core.InputSignal<"change" | "input">;
4994
+ readonly commitOn: _angular_core.InputSignal<"input" | "change">;
4983
4995
  readonly expressionChange: _angular_core.OutputEmitterRef<string>;
4984
4996
  private readonly area;
4985
4997
  /**
@@ -5513,6 +5525,107 @@ declare class ConnectorEditorComponent {
5513
5525
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConnectorEditorComponent, "fb-connector-editor", never, { "nodeName": { "alias": "nodeName"; "required": true; "isSignal": true; }; "node": { "alias": "node"; "required": true; "isSignal": true; }; "outlets": { "alias": "outlets"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; }, { "connectorChanged": "connectorChanged"; }, never, never, true, never>;
5514
5526
  }
5515
5527
 
5528
+ declare class MergeTextEditorComponent {
5529
+ private readonly store;
5530
+ private readonly api;
5531
+ private readonly service;
5532
+ private readonly destroyRef;
5533
+ readonly text: _angular_core.InputSignal<string>;
5534
+ /**
5535
+ * Dove comparira'. Resta un input perche' un motore puo' distinguere il messaggio di un errore
5536
+ * dalla scritta di un campo, ma il valore giusto e' quasi sempre quello predefinito.
5537
+ */
5538
+ readonly usage: _angular_core.InputSignal<string>;
5539
+ readonly placeholder: _angular_core.InputSignal<string>;
5540
+ readonly ariaLabel: _angular_core.InputSignal<string>;
5541
+ readonly disabled: _angular_core.InputSignal<boolean>;
5542
+ readonly rows: _angular_core.InputSignal<number>;
5543
+ /** Come nel formula editor: `change` dove mutare il documento ridisegna mezza schermata. */
5544
+ readonly commitOn: _angular_core.InputSignal<"input" | "change">;
5545
+ readonly textChange: _angular_core.OutputEmitterRef<string>;
5546
+ private readonly area;
5547
+ /**
5548
+ * Il testo che si sta scrivendo. Non e' legato al DOM — la casella tiene il suo valore e la
5549
+ * `[value]` resta quella del documento — perche' riscrivere l'attributo a ogni tasto sposta il
5550
+ * cursore quando si corregge in mezzo alla frase.
5551
+ */
5552
+ private readonly draft;
5553
+ private readonly _result;
5554
+ private readonly _isChecking;
5555
+ private timer?;
5556
+ /** Cresce a ogni richiesta: scarta le risposte di verifiche già superate. */
5557
+ private sequence;
5558
+ readonly result: _angular_core.Signal<FlowFormulaValidationResult | null>;
5559
+ readonly isChecking: _angular_core.Signal<boolean>;
5560
+ private readonly references;
5561
+ /** Il documento per cui l'elenco e' stato chiesto: evita una richiesta a ogni apertura. */
5562
+ private loadedFor;
5563
+ protected readonly isPickerOpen: _angular_core.WritableSignal<boolean>;
5564
+ protected readonly filter: _angular_core.WritableSignal<string>;
5565
+ /**
5566
+ * Cio' che si sta scrivendo **dentro** un'isola aperta, se il cursore ci sta dentro: e' la
5567
+ * seconda strada per inserire un nome, e la piu' rapida — chi ha scritto `{!Ord` non va a
5568
+ * cercare un bottone.
5569
+ */
5570
+ private readonly token;
5571
+ protected readonly highlighted: _angular_core.WritableSignal<number>;
5572
+ readonly suggestions: _angular_core.Signal<FlowReference[]>;
5573
+ /** L'elenco del bottone: tutti i nomi, filtrati dalla ricerca. */
5574
+ readonly pickerOptions: _angular_core.Signal<FlowReference[]>;
5575
+ /** Un testo senza segnaposto non si manda: non c'e' niente da verificare (§5.12). */
5576
+ readonly hasMergeFields: _angular_core.Signal<boolean>;
5577
+ readonly issues: _angular_core.Signal<FlowFormulaIssue[]>;
5578
+ readonly hasErrors: _angular_core.Signal<boolean>;
5579
+ readonly isConfirmed: _angular_core.Signal<boolean>;
5580
+ /** Il motore c'e' come primitiva ma non come motore: si dice, non si tace (§6.3). */
5581
+ readonly isUnverified: _angular_core.Signal<boolean>;
5582
+ constructor();
5583
+ onInput(value: string): void;
5584
+ onCommit(value: string): void;
5585
+ onFocus(): void;
5586
+ onCaretMove(): void;
5587
+ onBlur(): void;
5588
+ /**
5589
+ * Le frecce scorrono i suggerimenti e Invio inserisce — ma **solo** quando ce ne sono: in un
5590
+ * testo Invio deve restare Invio, che qui e' un a capo dentro il messaggio.
5591
+ */
5592
+ onKeyDown(event: KeyboardEvent): void;
5593
+ togglePicker(): void;
5594
+ /**
5595
+ * Il bottone: scrive un'isola **intera** al punto del cursore, graffe comprese. Inserire il
5596
+ * solo nome lascerebbe all'utente il compito di ricordarsi la sintassi, che e' esattamente
5597
+ * cio' che il comando esiste per evitare.
5598
+ */
5599
+ insertReference(name: string): void;
5600
+ /**
5601
+ * Il suggerimento dentro un'isola aperta: **completa** il nome e chiude la graffa.
5602
+ *
5603
+ * Non e' {@link insertReference}, ed e' la distinzione da non perdere: lì si scrive un'isola
5604
+ * nuova al punto del cursore, qui si sta già scrivendo dentro una — passare per l'altra strada
5605
+ * produce `{!IdOr{!IdOrdine}`, cioe' due aperture e un segnaposto che non si risolve.
5606
+ */
5607
+ complete(name: string): void;
5608
+ /** Scrive nella casella e propaga: la casella e' la sorgente del testo mentre si digita. */
5609
+ private write;
5610
+ private loadReferences;
5611
+ /**
5612
+ * La parola sotto il cursore, **solo dentro un'isola aperta**: fuori dalle graffe si sta
5613
+ * scrivendo una frase, e proporre nomi di variabili a ogni parola sarebbe rumore.
5614
+ */
5615
+ private refreshToken;
5616
+ severityOf(issue: FlowFormulaIssue): string;
5617
+ hasPosition(issue: FlowFormulaIssue): boolean;
5618
+ /** Il tratto citato dal rilievo, così il messaggio dice *dove* anche senza il salto. */
5619
+ excerptOf(issue: FlowFormulaIssue): string;
5620
+ /** Porta il cursore sul tratto segnalato: e' il payoff di `position`. */
5621
+ goToIssue(issue: FlowFormulaIssue): void;
5622
+ private schedule;
5623
+ private cancel;
5624
+ private check;
5625
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MergeTextEditorComponent, never>;
5626
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MergeTextEditorComponent, "fb-merge-text-editor", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "usage": { "alias": "usage"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "commitOn": { "alias": "commitOn"; "required": false; "isSignal": true; }; }, { "textChange": "textChange"; }, never, ["*"], true, never>;
5627
+ }
5628
+
5516
5629
  /**
5517
5630
  * `@Directive()` senza selettore: e' il modo in cui Angular riconosce come input quelli
5518
5631
  * dichiarati su una classe base ereditata da piu' componenti.
@@ -5621,6 +5734,35 @@ declare class ElementInspectorComponent {
5621
5734
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ElementInspectorComponent, "fb-element-inspector", never, { "selectedName": { "alias": "selectedName"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "initialFieldPath": { "alias": "initialFieldPath"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "removeRequested": "removeRequested"; "duplicateRequested": "duplicateRequested"; "renamed": "renamed"; }, never, never, true, never>;
5622
5735
  }
5623
5736
 
5737
+ /**
5738
+ * Il vincolo di spostamento delle finestre trascinabili dell'editor.
5739
+ *
5740
+ * Cio' che deve restare nel builder e' la **maniglia**, non la finestra: un `cdkDragBoundary`
5741
+ * chiede che l'elemento ci stia tutto, e con una dialog quasi grande quanto il builder non
5742
+ * lascia nessun margine di movimento. Qui invece si spinge la finestra fin quasi fuori — che
5743
+ * e' il punto, la si sposta per guardare cio' che copre — e l'intestazione resta comunque
5744
+ * sotto il puntatore per riportarla indietro.
5745
+ *
5746
+ * Attenzione alla firma, che non e' simmetrica e il compilatore non lo dice: **in** arriva la
5747
+ * posizione del puntatore in coordinate di pagina, **fuori** deve andare l'angolo in alto a
5748
+ * sinistra dell'**elemento** — con un `constrainPosition` il CDK calcola la trasformazione da
5749
+ * `_initialDomRect`, non dal punto di presa. Restituendo un puntatore la finestra si sposta di
5750
+ * quanto e' distante la presa dal suo bordo, e il vincolo scatta nel posto sbagliato.
5751
+ *
5752
+ * Per lo stesso motivo i conti si fanno in coordinate del **viewport**: `_initialDomRect` viene
5753
+ * da `getBoundingClientRect`, mentre il punto in ingresso comprende lo scorrimento della pagina.
5754
+ */
5755
+ type DialogConstrainPosition = (point: {
5756
+ x: number;
5757
+ y: number;
5758
+ }, drag: unknown, dimensions: DOMRect, pickup: {
5759
+ x: number;
5760
+ y: number;
5761
+ }) => {
5762
+ x: number;
5763
+ y: number;
5764
+ };
5765
+
5624
5766
  declare class ElementDialogComponent {
5625
5767
  private readonly store;
5626
5768
  private readonly dictionaries;
@@ -5639,36 +5781,8 @@ declare class ElementDialogComponent {
5639
5781
  readonly typeLabel: _angular_core.Signal<string>;
5640
5782
  readonly title: _angular_core.Signal<string>;
5641
5783
  constructor();
5642
- /**
5643
- * Vincolo dello spostamento: cio' che deve restare nel builder e' la **maniglia**, non la
5644
- * finestra. Un `cdkDragBoundary` chiede che l'elemento ci stia tutto, e con una dialog quasi
5645
- * grande quanto il builder non lascia nessun margine di movimento; qui invece si spinge la
5646
- * finestra fin quasi fuori — che e' il punto: si sposta per guardare cio' che copre — e
5647
- * l'intestazione resta comunque sotto il puntatore per riportarla indietro.
5648
- *
5649
- * Attenzione alla firma, che non e' simmetrica e il compilatore non lo dice: **in** arriva la
5650
- * posizione del puntatore in coordinate di pagina, **fuori** deve andare l'angolo in alto a
5651
- * sinistra dell'**elemento** — con un `constrainPosition` il CDK calcola la trasformazione da
5652
- * `_initialDomRect`, non dal punto di presa. Restituendo un puntatore la finestra si sposta di
5653
- * quanto e' distante la presa dal suo bordo, e il vincolo scatta nel posto sbagliato.
5654
- *
5655
- * Per lo stesso motivo i conti si fanno in coordinate del **viewport**: `_initialDomRect` viene
5656
- * da `getBoundingClientRect`, mentre il punto in ingresso comprende lo scorrimento della pagina.
5657
- */
5658
- readonly constrainPosition: (point: {
5659
- x: number;
5660
- y: number;
5661
- }, _drag: unknown, dimensions: DOMRect, pickup: {
5662
- x: number;
5663
- y: number;
5664
- }) => {
5665
- x: number;
5666
- y: number;
5667
- };
5668
- /** Altezza dell'intestazione: la fetta che deve restare visibile in basso. */
5669
- private static readonly HEAD_HEIGHT;
5670
- /** Il rettangolo del builder, nelle stesse coordinate in cui il CDK vuole la risposta. */
5671
- private builderBounds;
5784
+ /** Il vincolo: dentro il builder resta la maniglia, non la finestra intera. */
5785
+ readonly constrainPosition: DialogConstrainPosition;
5672
5786
  close(): void;
5673
5787
  onRemoveRequested(name: string): void;
5674
5788
  onDuplicateRequested(name: string): void;
@@ -6213,16 +6327,36 @@ declare class DynamicScreenInspectorComponent extends NodeInspectorBase {
6213
6327
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DynamicScreenInspectorComponent, "fb-dynamic-screen-inspector", never, { "initialSelection": { "alias": "initialSelection"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
6214
6328
  }
6215
6329
 
6216
- /**
6217
- * La risorsa su cui aprire il pannello, quando ci arriva dalla ricerca. `token` esiste per far
6218
- * ripartire l'effetto anche se si scegliesse due volte la stessa risorsa: senza, il secondo
6219
- * arrivo non cambierebbe l'input e non accadrebbe niente.
6220
- */
6221
- interface FlowResourceTarget {
6330
+ /** La risorsa aperta in modifica: collection piu' indice, la sola chiave del documento. */
6331
+ interface FlowResourceEdit {
6222
6332
  collection: FlowResourceCollection;
6223
6333
  index: number;
6224
- token: number;
6225
6334
  }
6335
+ declare class ResourceDialogComponent {
6336
+ private readonly store;
6337
+ readonly edit: _angular_core.InputSignal<FlowResourceEdit>;
6338
+ readonly closed: _angular_core.OutputEmitterRef<void>;
6339
+ private readonly panel;
6340
+ readonly reference: _angular_core.Signal<FlowResourceRef | undefined>;
6341
+ readonly kindLabel: _angular_core.Signal<string>;
6342
+ readonly title: _angular_core.Signal<string>;
6343
+ constructor();
6344
+ /** Il vincolo: dentro il builder resta la maniglia, non la finestra intera. */
6345
+ readonly constrainPosition: DialogConstrainPosition;
6346
+ close(): void;
6347
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ResourceDialogComponent, never>;
6348
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ResourceDialogComponent, "fb-resource-dialog", never, { "edit": { "alias": "edit"; "required": true; "isSignal": true; }; }, { "closed": "closed"; }, never, never, true, never>;
6349
+ }
6350
+
6351
+ /**
6352
+ * Le sette collection di risorse (§4.6).
6353
+ *
6354
+ * `resourceKinds` del dizionario le **descrive**, ma la mappa collection → comportamento del
6355
+ * form resta qui perche' i campi cambiano per tipo, e cambiano in modo che nessun dizionario
6356
+ * dichiara. Sta in un file suo perche' la usano in due: l'elenco, per le schede e il testo del
6357
+ * bottone «Aggiungi», e la dialog, per dire di che cosa e' il form che ha aperto.
6358
+ */
6359
+
6226
6360
  interface ResourceKindDescriptor {
6227
6361
  collection: FlowResourceCollection;
6228
6362
  label: string;
@@ -6231,21 +6365,29 @@ interface ResourceKindDescriptor {
6231
6365
  /** Cosa serve dichiarare, in una riga. */
6232
6366
  note: string;
6233
6367
  }
6368
+
6369
+ /**
6370
+ * La risorsa su cui aprire il pannello, quando ci arriva dalla ricerca. `token` esiste per far
6371
+ * ripartire l'effetto anche se si scegliesse due volte la stessa risorsa: senza, il secondo
6372
+ * arrivo non cambierebbe l'input e non accadrebbe niente.
6373
+ */
6374
+ interface FlowResourceTarget {
6375
+ collection: FlowResourceCollection;
6376
+ index: number;
6377
+ token: number;
6378
+ }
6234
6379
  declare class ResourcePanelComponent {
6235
6380
  private readonly store;
6236
- private readonly dictionaries;
6237
- private readonly catalog;
6238
6381
  readonly closed: _angular_core.OutputEmitterRef<void>;
6239
6382
  /** Dove aprire il pannello: e' l'arrivo della ricerca su una risorsa. */
6240
6383
  readonly target: _angular_core.InputSignal<FlowResourceTarget | null>;
6384
+ /** La risorsa aperta nella finestra di modifica: la decide il builder, non il pannello. */
6385
+ readonly editing: _angular_core.InputSignal<FlowResourceEdit | null>;
6386
+ /** Quale risorsa configurare; `null` chiude la finestra. */
6387
+ readonly editRequested: _angular_core.OutputEmitterRef<FlowResourceEdit | null>;
6241
6388
  readonly kinds: ResourceKindDescriptor[];
6242
- readonly dataTypes: _angular_core.Signal<_esfaenza_flow_builder.FlowDataTypeEntry[]>;
6243
- readonly sortOrders: _angular_core.Signal<_esfaenza_flow_builder.FlowDictionaryEntry[]>;
6244
- private readonly enumTypes;
6245
6389
  /** La collection aperta nel pannello. */
6246
6390
  readonly activeCollection: _angular_core.WritableSignal<"variables" | "constants" | "formulas" | "textTemplates" | "choices" | "dynamicChoiceSets" | "stages">;
6247
- /** L'indice della risorsa in modifica, o `null`. */
6248
- readonly editingIndex: _angular_core.WritableSignal<number | null>;
6249
6391
  /**
6250
6392
  * La risorsa per cui e' stata chiesta la rimozione ma che risulta **usata**: si conferma.
6251
6393
  * La chiave e' `collection:index`, non la risorsa, perche' l'oggetto viene ricostruito a ogni
@@ -6253,14 +6395,17 @@ declare class ResourcePanelComponent {
6253
6395
  */
6254
6396
  readonly pendingRemoval: _angular_core.WritableSignal<string | null>;
6255
6397
  constructor();
6256
- readonly enumOptions: _angular_core.Signal<FlowCatalogEntry[]>;
6257
6398
  readonly activeKind: _angular_core.Signal<ResourceKindDescriptor>;
6258
6399
  readonly items: _angular_core.Signal<FlowResourceRef[]>;
6259
6400
  countOf(collection: FlowResourceCollection): number;
6260
6401
  select(collection: FlowResourceCollection): void;
6261
- toggleEdit(index: number): void;
6402
+ isEditing(reference: FlowResourceRef): boolean;
6403
+ /** Il click sul nome: apre la finestra, o la chiude se e' già quella risorsa. */
6404
+ edit(reference: FlowResourceRef): void;
6262
6405
  /** Nome valido e libero nello spazio dei nomi condiviso con i node (§3.3, §13.5). */
6263
6406
  nameError(reference: FlowResourceRef): string | null;
6407
+ constantReferencesResource(reference: FlowResourceRef): boolean;
6408
+ duplicateStageOrder(reference: FlowResourceRef): boolean;
6264
6409
  add(): void;
6265
6410
  /**
6266
6411
  * Quante volte la risorsa e' **usata** nel documento.
@@ -6284,74 +6429,97 @@ declare class ResourcePanelComponent {
6284
6429
  requestRemove(reference: FlowResourceRef): void;
6285
6430
  cancelRemove(): void;
6286
6431
  remove(reference: FlowResourceRef): void;
6287
- rename(reference: FlowResourceRef, name: string): void;
6288
- setField(reference: FlowResourceRef, field: string, value: unknown): void;
6289
- setNumberField(reference: FlowResourceRef, field: string, raw: string): void;
6290
- setBooleanField(reference: FlowResourceRef, field: string, value: boolean): void;
6432
+ string(reference: FlowResourceRef, field: string): string;
6433
+ boolean(reference: FlowResourceRef, field: string): boolean;
6434
+ close(): void;
6435
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ResourcePanelComponent, never>;
6436
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ResourcePanelComponent, "fb-resource-panel", never, { "target": { "alias": "target"; "required": false; "isSignal": true; }; "editing": { "alias": "editing"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "editRequested": "editRequested"; }, never, never, true, never>;
6437
+ }
6438
+
6439
+ declare class ResourceFormComponent {
6440
+ private readonly store;
6441
+ private readonly dictionaries;
6442
+ private readonly catalog;
6443
+ /** La risorsa in modifica. Arriva ricostruita a ogni ricalcolo del documento. */
6444
+ readonly reference: _angular_core.InputSignal<FlowResourceRef>;
6445
+ readonly dataTypes: _angular_core.Signal<_esfaenza_flow_builder.FlowDataTypeEntry[]>;
6446
+ readonly sortOrders: _angular_core.Signal<_esfaenza_flow_builder.FlowDictionaryEntry[]>;
6447
+ private readonly enumTypes;
6448
+ readonly enumOptions: _angular_core.Signal<FlowCatalogEntry[]>;
6449
+ readonly defaultDisplayField = "Label";
6450
+ readonly defaultValueField = "Name";
6451
+ constructor();
6452
+ readonly collection: _angular_core.Signal<"variables" | "constants" | "formulas" | "textTemplates" | "choices" | "dynamicChoiceSets" | "stages">;
6453
+ readonly resource: _angular_core.Signal<Record<string, unknown>>;
6454
+ nameError(): string | null;
6455
+ constantReferencesResource(): boolean;
6456
+ duplicateStageOrder(): boolean;
6457
+ rename(name: string): void;
6458
+ setField(field: string, value: unknown): void;
6459
+ setNumberField(field: string, raw: string): void;
6460
+ setBooleanField(field: string, value: boolean): void;
6291
6461
  /**
6292
6462
  * §4.6 — i filtri di un dynamic choice set. L'editor dei filtri emette una mutazione da
6293
6463
  * applicare al contenitore, non i filtri gia' pronti: qui il contenitore e' la risorsa stessa,
6294
6464
  * e la mutazione va dentro `updateResource` perche' e' lì che il documento viene rimpiazzato.
6295
6465
  */
6296
- onFiltersChanged(reference: FlowResourceRef, mutate: (holder: FilterHolder) => void): void;
6297
- /** La sorgente scelta per un set che ancora non ne dichiara nessuna. */
6466
+ onFiltersChanged(mutate: (holder: FilterHolder) => void): void;
6467
+ setValue(value: FlowValue | undefined): void;
6468
+ setDataType(dataType: string): void;
6469
+ /**
6470
+ * La sorgente scelta per un set che ancora non ne dichiara nessuna. La chiave e'
6471
+ * `collection:index` e non la risorsa: l'oggetto viene ricostruito a ogni ricalcolo del
6472
+ * documento, e la dialog puo' passare da una risorsa all'altra senza essere ricreata.
6473
+ */
6298
6474
  private readonly pendingSource;
6475
+ private key;
6299
6476
  /**
6300
6477
  * La sorgente dichiarata vince sempre: e' cio' che c'e' nel documento. Finche' non c'e' niente
6301
- * conta la scelta fatta nel pannello, e in mancanza si apre sulla query — la sorgente storica.
6478
+ * conta la scelta fatta nel form, e in mancanza si apre sulla query — la sorgente storica.
6302
6479
  */
6303
- choiceSetSource(reference: FlowResourceRef): ChoiceSetSource;
6480
+ choiceSetSource(): ChoiceSetSource;
6304
6481
  /**
6305
6482
  * Cambiare sorgente cancella le altre — dichiararne due e' `CHOICE_SET_SOURCE_AMBIGUOUS` — e
6306
6483
  * anche i **campi citati**: `Label` non e' un campo di un'entita' e `Ragione_Sociale` non e' una
6307
6484
  * proprieta' di un valore di enum, quindi lasciarli lì trasformerebbe un cambio di sorgente in
6308
6485
  * tre `FIELD_UNKNOWN` che l'utente non ha scritto.
6309
6486
  */
6310
- setChoiceSetSource(reference: FlowResourceRef, source: ChoiceSetSource): void;
6487
+ setChoiceSetSource(source: ChoiceSetSource): void;
6311
6488
  /** Su un choice set da enum il tipo e' `enumType`: il campo generico sarebbe un doppione. */
6312
- hidesObjectType(reference: FlowResourceRef): boolean;
6313
- isChoiceSetSource(reference: FlowResourceRef, source: ChoiceSetSource): boolean;
6489
+ hidesObjectType(): boolean;
6490
+ isChoiceSetSource(source: ChoiceSetSource): boolean;
6314
6491
  /** Piu' di una sorgente nel documento: il runtime ne usa una sola (§5.2). */
6315
- ambiguousChoiceSetSource(reference: FlowResourceRef): boolean;
6492
+ ambiguousChoiceSetSource(): boolean;
6316
6493
  /**
6317
6494
  * §5.2 — i campi citabili di un choice set da enum. Le etichette le dice il dizionario; il
6318
6495
  * **tipo** no, e senza tipo il valore di un filtro su `NumericValue` sarebbe una casella di testo.
6319
6496
  */
6320
6497
  readonly enumChoiceSetFields: _angular_core.Signal<FilterFieldOption[]>;
6321
6498
  /** Fuori dalle tre proprieta' di un valore di enum: `FIELD_UNKNOWN`. */
6322
- unknownEnumChoiceSetField(reference: FlowResourceRef, field: string): boolean;
6499
+ unknownEnumChoiceSetField(field: string): boolean;
6323
6500
  /**
6324
6501
  * §5.2 — qui l'elenco dei tipi e' **autorevole** quando non e' vuoto: un `enumType` che il
6325
6502
  * catalogo non conosce e' un errore, non l'avviso che si darebbe su un catalogo di campi.
6326
6503
  */
6327
- unknownEnumType(reference: FlowResourceRef): boolean;
6328
- readonly defaultDisplayField = "Label";
6329
- readonly defaultValueField = "Name";
6330
- setValue(reference: FlowResourceRef, value: FlowValue | undefined): void;
6331
- setDataType(reference: FlowResourceRef, dataType: string): void;
6332
- requiresObjectType(reference: FlowResourceRef): boolean;
6333
- supportsScale(reference: FlowResourceRef): boolean;
6334
- isEnum(reference: FlowResourceRef): boolean;
6504
+ unknownEnumType(): boolean;
6505
+ requiresObjectType(): boolean;
6506
+ supportsScale(): boolean;
6507
+ isEnum(): boolean;
6335
6508
  /** §4.7 — un'istanza di classe: `objectType` e' il nome della classe, non di un'entita'. */
6336
- isStructure(reference: FlowResourceRef): boolean;
6509
+ isStructure(): boolean;
6337
6510
  /**
6338
6511
  * §4.7 — una `Structure` non ha una forma letterale: nasce dal runtime come istanza vuota e i
6339
6512
  * membri si assegnano uno alla volta. Mostrare un campo «valore iniziale» prometterebbe una
6340
6513
  * cosa che il modello non sa esprimere.
6341
6514
  */
6342
- supportsInitialValue(reference: FlowResourceRef): boolean;
6515
+ supportsInitialValue(): boolean;
6343
6516
  /** Su una `Structure` l'`objectType` mancante e' un errore, non un avviso (§4.7). */
6344
- missingObjectType(reference: FlowResourceRef): boolean;
6345
- /** Una costante che referenzia una risorsa e' `CONSTANT_REFERENCES_RESOURCE`. */
6346
- constantReferencesResource(reference: FlowResourceRef): boolean;
6347
- /** `stageOrder` duplicati: quale stage sia il corrente all'avvio diventa arbitrario. */
6348
- duplicateStageOrder(reference: FlowResourceRef): boolean;
6349
- string(reference: FlowResourceRef, field: string): string;
6350
- boolean(reference: FlowResourceRef, field: string): boolean;
6351
- value(reference: FlowResourceRef): FlowValue | undefined;
6352
- close(): void;
6353
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ResourcePanelComponent, never>;
6354
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ResourcePanelComponent, "fb-resource-panel", never, { "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "closed": "closed"; }, never, never, true, never>;
6517
+ missingObjectType(): boolean;
6518
+ string(field: string): string;
6519
+ boolean(field: string): boolean;
6520
+ value(): FlowValue | undefined;
6521
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ResourceFormComponent, never>;
6522
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ResourceFormComponent, "fb-resource-form", never, { "reference": { "alias": "reference"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
6355
6523
  }
6356
6524
 
6357
6525
  /** Il riquadro su cui aprire il pannello. `token` fa ripartire l'effetto sulla stessa scelta. */
@@ -6521,7 +6689,7 @@ declare class RunDialogComponent {
6521
6689
  private readonly dictionaries;
6522
6690
  private readonly catalog;
6523
6691
  /** `debug` cambia il titolo, l'avviso sui dati e il flag nel payload annunciato. */
6524
- readonly mode: _angular_core.InputSignal<"run" | "debug">;
6692
+ readonly mode: _angular_core.InputSignal<"debug" | "run">;
6525
6693
  /** Il flow che verra' eseguito: e' quello **salvato**, non il documento in mano. */
6526
6694
  readonly flowName: _angular_core.InputSignal<string | null>;
6527
6695
  readonly version: _angular_core.InputSignal<number | null>;
@@ -6731,6 +6899,14 @@ declare class FlowBuilderComponent {
6731
6899
  /** La risorsa su cui aprire il pannello: e' l'arrivo della ricerca su una risorsa. */
6732
6900
  readonly resourceTarget: _angular_core.WritableSignal<FlowResourceTarget | null>;
6733
6901
  private resourceReveals;
6902
+ /**
6903
+ * La risorsa aperta nella sua finestra di modifica (§4.6).
6904
+ *
6905
+ * Sta qui e non nel pannello perche' la finestra va montata **fuori** dalla colonna laterale:
6906
+ * dentro sarebbe ritagliata dallo scorrimento del pannello. Il pannello annuncia quale
6907
+ * risorsa aprire e riceve indietro quale sia aperta, così i due non possono discordare.
6908
+ */
6909
+ readonly editingResource: _angular_core.WritableSignal<FlowResourceEdit | null>;
6734
6910
  /**
6735
6911
  * Il riquadro corrente (§3.6). E' una selezione **separata** da `selectedName`: un riquadro
6736
6912
  * non e' un elemento — non si copia, non si duplica, non si valida come tale — e tenerlo nella
@@ -6838,6 +7014,12 @@ declare class FlowBuilderComponent {
6838
7014
  /** Il comando della top bar: apre il dettaglio di cio' che e' selezionato. */
6839
7015
  openSelectedElement(): void;
6840
7016
  closeDialog(): void;
7017
+ /**
7018
+ * La finestra di una risorsa (§4.6): la apre il pannello, `null` la chiude. Il pannello non
7019
+ * tiene una copia sua di questo stato — riceve indietro questo — così chiudere dalla finestra
7020
+ * e chiudere dall'elenco sono la stessa cosa.
7021
+ */
7022
+ onResourceEditRequested(edit: FlowResourceEdit | null): void;
6841
7023
  /**
6842
7024
  * Evidenzia l'elemento sul canvas **senza** cambiare pannello.
6843
7025
  * Serve alla traccia del debug: portare l'utente sull'elemento e' il punto del pannello, ma
@@ -6972,7 +7154,7 @@ declare class FlowBuilderComponent {
6972
7154
  /** Scrive la copia e continua a lavorare su di essa (§6.2). */
6973
7155
  confirmCopy(): Promise<void>;
6974
7156
  /** Quale delle due finestre e' aperta; `null` = nessuna. */
6975
- readonly runMode: _angular_core.WritableSignal<"run" | "debug" | null>;
7157
+ readonly runMode: _angular_core.WritableSignal<"debug" | "run" | null>;
6976
7158
  /**
6977
7159
  * L'esito da mostrare nel pannello.
6978
7160
  *
@@ -7041,5 +7223,5 @@ declare class SelectValueDirective implements AfterViewChecked {
7041
7223
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SelectValueDirective, "select[fbValue]", never, { "fbValue": { "alias": "fbValue"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7042
7224
  }
7043
7225
 
7044
- 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, NamePickerComponent, NodeInspectorBase, ORCHESTRATION_CONDITION_OUTPUT, ObjectPickerComponent, OrchestratedStageInspectorComponent, ParameterEditorComponent, PasteDialogComponent, ProblemsPanelComponent, RecordFilterEditorComponent, ReferencePickerComponent, 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, 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, resolvePath, rewriteReferences, sameMembers, samePath, screenActionNames, screenFieldNames, severityBucket, slugifyFlowName, sourceConnectorId, stageStepNames, stageStepOutputReferenced, stepsOf, targetConnectorId, typeOfCollection, uniqueFlowName, valuedFieldOf, valuedFieldsOf, variantFieldOf, variantOf, variantPresetOf };
7045
- 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, FlowResourceKindEntry, FlowResourceRef, FlowResourceTarget, FlowResumeRequest, FlowRunOutcome, FlowRunRequest, FlowSaveRequest, FlowSaveResult, FlowSchedule, FlowScheduledPath, FlowScreen, FlowScreenAction, FlowScreenField, FlowScreenFieldInputsRevisited, FlowScreenFieldNode, FlowScreenFieldPath, FlowScreenFieldType, FlowScreenFieldTypeEntry, 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 };
7226
+ 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, 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, resolvePath, rewriteReferences, sameMembers, samePath, screenActionNames, screenFieldNames, severityBucket, slugifyFlowName, sourceConnectorId, stageStepNames, stageStepOutputReferenced, stepsOf, targetConnectorId, typeOfCollection, uniqueFlowName, valuedFieldOf, valuedFieldsOf, variantFieldOf, variantOf, variantPresetOf };
7227
+ 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, 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 };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esfaenza/flow-builder",
3
- "version": "20.3.38",
3
+ "version": "20.3.40",
4
4
  "peerDependencies": {
5
5
  "@angular/cdk": "^20.2.14",
6
6
  "@angular/common": "^20.3.28",