@esfaenza/flow-builder 20.3.47 → 20.3.49
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 +27 -1
- package/fesm2022/esfaenza-flow-builder.mjs +229 -175
- package/fesm2022/esfaenza-flow-builder.mjs.map +1 -1
- package/index.d.ts +80 -5
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -435,7 +435,21 @@ Tre cose che il modello non mostra e il form dice:
|
|
|
435
435
|
- `autoSelectSingleChoice` fa prendere al campo l'**unica** opzione risolta, quando e' una sola: e'
|
|
436
436
|
la tendina che dipende da un'altra tendina — i CAP di un comune — dove chiedere di scegliere non
|
|
437
437
|
decide niente. La spunta compare solo dove il tipo `acceptsChoices`, e altrove e'
|
|
438
|
-
`SCREEN_FIELD_CONFIGURATION_INVALID` (avviso)
|
|
438
|
+
`SCREEN_FIELD_CONFIGURATION_INVALID` (avviso);
|
|
439
|
+
- `format` dice **che cosa** un campo di testo raccoglie — `Email`, `Url`, `Phone`, `MobilePhone`,
|
|
440
|
+
`LandlinePhone` — e serve a due cose insieme: il frontend ne ricava il tipo di input, il runtime
|
|
441
|
+
rifiuta l'invio sbagliato (`FORMAT_INVALID`). È l'unico dizionario **dichiaratamente aperto**
|
|
442
|
+
(`screenFieldFormats`): i pattern non stanno nel metadata — che cosa sia un cellulare valido e' una
|
|
443
|
+
regola del paese in cui il sistema gira — e l'host ne registra dei propri. Da lì le due gravita', che
|
|
444
|
+
sono l'eccezione alla regola di tutti gli altri cataloghi: fuori elenco e' un'**osservazione**
|
|
445
|
+
(`SCREEN_FIELD_FORMAT_UNKNOWN`), scritta senza il colore d'avviso, perche' bloccare l'attivazione per
|
|
446
|
+
un nome che la libreria non conosce sarebbe un falso positivo; su un campo che non raccoglie **un
|
|
447
|
+
solo testo** e' l'avviso `SCREEN_FIELD_FORMAT_NOT_APPLICABLE`, e il controllo non compare affatto —
|
|
448
|
+
la condizione e' il tipo di dato piu' la cardinalita', ed e' scritta una volta sola (`formatApplies`,
|
|
449
|
+
la stessa che applica il validatore della demo). Due cose che il formato **non** e': non e'
|
|
450
|
+
un'etichetta che il flow possa leggere — se a valle serve sapere che un numero e' un cellulare, quella
|
|
451
|
+
distinzione sta nel dato — e non riscrive il valore, che e' una trasformazione e la fa una screen
|
|
452
|
+
action.
|
|
439
453
|
|
|
440
454
|
Il riordino e l'annidamento si fanno trascinando (`@angular/cdk/drag-drop`, senza drop list: il
|
|
441
455
|
bersaglio si calcola dal DOM) oppure con i comandi «su / giu' / porta fuori».
|
|
@@ -473,6 +487,18 @@ cose che un editor ingenuo sbaglia lasciandole comporre per poi accusarle:
|
|
|
473
487
|
variabile in `collectionReference`: il campo si sceglie da `<fb-structure-member-picker>` con
|
|
474
488
|
`usage="writable"`, perche' un membro calcolato e' `TARGET_NOT_WRITABLE`.
|
|
475
489
|
|
|
490
|
+
- **le righe minime e le righe iniziali non sono la stessa cosa**, ed e' la distinzione che serve piu'
|
|
491
|
+
spesso. `minInstances` e' un **vincolo**: sotto quel numero la sezione non scende, e con `1` il
|
|
492
|
+
runtime non lascia togliere l'ultima riga. `initialInstances` e' una **comodita'**: la schermata si
|
|
493
|
+
apre con qualche riga pronta, e chi non la vuole la elimina. Un modulo con un punto luce e un punto
|
|
494
|
+
gas gia' aperti, dove chi ha una sola commodity toglie quello che non gli serve, e'
|
|
495
|
+
`initialInstances: 1` con `minInstances: 0` — col minimo a 1 sarebbe un modulo che **obbliga** a
|
|
496
|
+
entrambe. Le righe iniziali si applicano **una volta sola**, e solo finche' nessuno ha scritto la
|
|
497
|
+
collection: righe arrivate da un ciclo o da una schermata precedente *sono* le righe iniziali e non
|
|
498
|
+
vengono diluite con righe vuote. Fuori dai limiti il runtime le riporta dentro, quindi l'editor lo
|
|
499
|
+
dice come avviso e non come errore: il difetto non e' che qualcosa si rompa, e' che il numero scritto
|
|
500
|
+
non e' quello che si vedra'.
|
|
501
|
+
|
|
476
502
|
Nell'anteprima si disegna **una** riga, ed e' il modello: a runtime la schermata ne rende una copia
|
|
477
503
|
per elemento. Disegnarne due sarebbe finto — quante siano lo decide chi compila.
|
|
478
504
|
|