@esfaenza/flow-builder 20.3.2 → 20.3.3

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 CHANGED
@@ -202,6 +202,15 @@ qualsiasi.
202
202
  dalla mappa delle uscite invece di essere «ramo di errore» per tutti: su uno stage di
203
203
  orchestrazione quel ramo e' lo **step rifiutato**, non un guasto.
204
204
 
205
+ Un tipo con un **discriminatore** compare come piu' voci, una per valore: il Collection
206
+ Processor e' «Ordina» e «Filtra», non «ordina o filtra». Sono due gesti diversi — un `Sort`
207
+ vuole `sortOptions`, un `Filter` vuole condizioni (§5.5) — e sceglierli dalla palette evita di
208
+ sceglierli dopo, dentro il form. L'elemento nasce con il discriminatore già scritto, con la
209
+ label della variante (da cui viene anche il nome tecnico) e con il glifo della variante, lo
210
+ stesso che avra' sul canvas. `core/element-variants.ts` tiene la mappa tipo → campo del
211
+ discriminatore; i valori restano nel dizionario del backend (`collectionProcessorTypes`), e
212
+ senza quel dizionario il tipo torna a essere una voce sola.
213
+
205
214
  **Inspector.** Un form per ogni tipo supportato: Start, Screen, Assignment, Decision, Loop,
206
215
  Collection Processor, Get / Create / Update / Delete / Rollback Records, Action, Script,
207
216
  Subflow, Wait, Custom Error, Transform, Orchestrated Stage. Più l'intestazione comune con la
@@ -230,14 +239,21 @@ nome fuori catalogo viene segnalato subito, prima che il backend risponda `OBJEC
230
239
  aggiornabile" sono errori diversi. Restano `<select>` i dizionari chiusi — tipi di dato,
231
240
  operatori, enumerazioni — dove non c'e' niente da scrivere a mano.
232
241
 
233
- Lo stesso controllo, nella variante `<fb-name-picker>`, vale per i nomi che dipendono dal
234
- contesto e non da un catalogo di schema: il flow di uno step in background e dei suoi
235
- evaluation flow, il flow invocato da un Subflow, le variabili di input e output **del flow
236
- invocato**. Qui l'elenco arriva da chi ospita il picker (`listSubflowCandidates`, le variabili
237
- della definizione caricata), e un elenco vuoto resta "non lo so": il campo si scrive a mano e
238
- non si accusa nessun nome. Con l'elenco popolato, invece, un nome che non c'e' e' segnalato —
239
- ed e' la differenza rispetto al `datalist` che questi campi usavano prima, che accettava
240
- qualunque cosa in silenzio.
242
+ Lo stesso controllo, nella variante `<fb-name-picker>`, vale per **ogni altro nome che il flow
243
+ prende da fuori**: tipo di action e action, script, form, i nomi dei loro parametri di ingresso
244
+ e di uscita, il flow di uno step in background e dei suoi evaluation flow, il flow invocato da
245
+ un Subflow e le variabili di input e output **del flow invocato**. Qui l'elenco arriva da chi
246
+ ospita il picker il catalogo già caricato per altri motivi, `listSubflowCandidates`, le
247
+ variabili della definizione caricata perche' dipende dal contesto: le action dipendono dal
248
+ tipo scelto, i parametri dall'action, le variabili dal subflow.
249
+
250
+ Un elenco vuoto resta "non lo so": il campo si scrive a mano e non si accusa nessun nome. Con
251
+ l'elenco popolato, un nome che non c'e' e' segnalato, e con la **gravita' giusta**: un'action,
252
+ un form, uno script o un parametro inesistenti sono errori che bloccano l'attivazione
253
+ (`ACTION_UNKNOWN`, `FORM_UNKNOWN`, `PARAMETER_UNKNOWN`) e si mostrano in rosso; un flow senza
254
+ versione attiva e' un avviso. Prima questi campi erano `<select>` con un'opzione sintetica
255
+ «(non nel catalogo)» per non perdere il valore, oppure un `datalist` che accettava qualunque
256
+ cosa in silenzio: il primo non si poteva cercare, il secondo non diceva niente.
241
257
 
242
258
  **Problemi.** Pannello con filtro per gravita', navigazione all'elemento con un clic,
243
259
  validazione su pausa di digitazione (debounce 400 ms) e l'avvertenza che l'assenza di rilievi