@esfaenza/flow-builder 20.3.10 → 20.3.12
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 +44 -8
- package/fesm2022/esfaenza-flow-builder.mjs +471 -92
- package/fesm2022/esfaenza-flow-builder.mjs.map +1 -1
- package/index.d.ts +197 -29
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -708,6 +708,23 @@ interface FlowFieldValue {
|
|
|
708
708
|
value: string;
|
|
709
709
|
label?: string | null;
|
|
710
710
|
}
|
|
711
|
+
/**
|
|
712
|
+
* §4.6 — un valore di un tipo di enumerazione: la risposta di
|
|
713
|
+
* `GET /catalog/enum-types/{name}/values`, dove `{name}` e' l'`objectType` della risorsa.
|
|
714
|
+
*
|
|
715
|
+
* Cio' che si scrive in `enumValue` e' il **nome** (§4.2): `numericValue` e' informativo — serve a
|
|
716
|
+
* riconoscere il valore in dati legacy — e non va mai messo nel documento, perche' un numero lì
|
|
717
|
+
* verrebbe letto come un altro tipo (§13.18).
|
|
718
|
+
*
|
|
719
|
+
* `name` e' il campo del valore, non `value` come in {@link FlowFieldValue}: sono due cataloghi
|
|
720
|
+
* diversi (i valori di un campo di schema contro i valori di un tipo enum) e leggere l'uno con la
|
|
721
|
+
* forma dell'altro darebbe un elenco di `undefined` senza nessun errore.
|
|
722
|
+
*/
|
|
723
|
+
interface FlowEnumValue {
|
|
724
|
+
name: string;
|
|
725
|
+
label?: string | null;
|
|
726
|
+
numericValue?: number | null;
|
|
727
|
+
}
|
|
711
728
|
/**
|
|
712
729
|
* §4.7 — un membro di una classe utilizzabile come `Structure`.
|
|
713
730
|
*
|
|
@@ -880,13 +897,12 @@ interface FlowReference {
|
|
|
880
897
|
isWritable?: boolean;
|
|
881
898
|
description?: string | null;
|
|
882
899
|
}
|
|
883
|
-
/**
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
}
|
|
900
|
+
/**
|
|
901
|
+
* Non esiste un `FlowReferenceQuery`: il body di `POST /flows/references` e
|
|
902
|
+
* `POST /flows/references/writable` e' il **documento nudo**, senza involucro e senza campi di
|
|
903
|
+
* filtro (§6.4, §13.17). La risposta porta tutti i riferimenti col proprio tipo, e la
|
|
904
|
+
* compatibilita' col campo la decide l'editor con `filterReferences` (`core/reference-filter.util`).
|
|
905
|
+
*/
|
|
890
906
|
interface FlowConnectorTarget {
|
|
891
907
|
name: string;
|
|
892
908
|
label?: string | null;
|
|
@@ -1188,8 +1204,12 @@ declare abstract class FlowBuilderApi {
|
|
|
1188
1204
|
* `POST /flows/references` — i valori proponibili in un campo che accetta una risorsa.
|
|
1189
1205
|
* Include gli **output automatici** degli elementi, che non sono dichiarati in nessuna
|
|
1190
1206
|
* collection: e' il motivo per cui non va ricostruita lato client (§4.5, §13.3).
|
|
1207
|
+
*
|
|
1208
|
+
* Prende il **documento nudo** e restituisce **tutti** i riferimenti: nel body non c'e' nessun
|
|
1209
|
+
* filtro di tipo, e la compatibilita' col campo la decide l'editor (§6.4, §13.17). Cosi' la
|
|
1210
|
+
* stessa risposta serve tutte le tendine di una schermata.
|
|
1191
1211
|
*/
|
|
1192
|
-
abstract getReferences(
|
|
1212
|
+
abstract getReferences(definition: FlowDefinition): Promise<FlowReference[]>;
|
|
1193
1213
|
/**
|
|
1194
1214
|
* `POST /flows/references/writable` — le variabili **piu' le globali assegnabili**, per i
|
|
1195
1215
|
* campi di destinazione. Le globali assegnabili sono **due**, `$Flow.CurrentStage` e
|
|
@@ -1197,8 +1217,11 @@ declare abstract class FlowBuilderApi {
|
|
|
1197
1217
|
* flag per dichiararne una scrivibile (§5.2). La primitiva le comprende già, l'editor non le
|
|
1198
1218
|
* aggiunge. Restano fuori i campi di `$Record`, che dipendono dallo schema: quelli arrivano da
|
|
1199
1219
|
* `listFields(object, 'updateable')` (§6.4).
|
|
1220
|
+
*
|
|
1221
|
+
* Come `getReferences`: documento nudo nel body, nessun filtro di tipo, elenco completo in
|
|
1222
|
+
* risposta (§13.17).
|
|
1200
1223
|
*/
|
|
1201
|
-
abstract getWritableReferences(
|
|
1224
|
+
abstract getWritableReferences(definition: FlowDefinition): Promise<FlowReference[]>;
|
|
1202
1225
|
/** `POST /flows/connector-targets?excluding=` — i node a cui un arco puo' puntare. */
|
|
1203
1226
|
abstract getConnectorTargets(definition: FlowDefinition, excluding?: string): Promise<FlowConnectorTarget[]>;
|
|
1204
1227
|
/**
|
|
@@ -1230,6 +1253,23 @@ declare abstract class FlowBuilderApi {
|
|
|
1230
1253
|
abstract listFormParameters(formName: string): Promise<FlowCatalogParameter[]>;
|
|
1231
1254
|
/** `GET /catalog/enum-types` — per `objectType` delle risorse `Enum`. */
|
|
1232
1255
|
abstract listEnumTypes(): Promise<FlowCatalogEntry[]>;
|
|
1256
|
+
/**
|
|
1257
|
+
* `GET /catalog/enum-types/{enumType}/values` — i valori di **un** tipo di enumerazione, cioe'
|
|
1258
|
+
* i nomi che si possono scrivere in `enumValue` (§4.2, §4.6). `enumType` e' esattamente
|
|
1259
|
+
* l'`objectType` della risorsa, del parametro o del membro.
|
|
1260
|
+
*
|
|
1261
|
+
* `listEnumTypes` e' l'altra meta' della catena e non basta: quella dice **quali tipi** esistono,
|
|
1262
|
+
* questa **quali valori** ha un tipo. Senza la seconda chiamata all'utente resta una casella di
|
|
1263
|
+
* testo su un insieme chiuso, che e' il modo piu' facile di scrivere un valore che il runtime non
|
|
1264
|
+
* riconoscera'.
|
|
1265
|
+
*
|
|
1266
|
+
* I valori sono del **tipo**, non del punto in cui compare: la risposta si tiene in cache per
|
|
1267
|
+
* nome del tipo e serve risorse, parametri di action e di form, e membri di una classe (§4.7.1).
|
|
1268
|
+
*
|
|
1269
|
+
* Opzionale come {@link listFieldValues}: un ambiente che non la espone degrada a "non lo so" —
|
|
1270
|
+
* elenco vuoto, valore digitabile a mano e nessuna segnalazione — invece di rompersi (§7).
|
|
1271
|
+
*/
|
|
1272
|
+
listEnumValues(enumType: string): Promise<FlowEnumValue[]>;
|
|
1233
1273
|
/**
|
|
1234
1274
|
* `GET /catalog/structures` — le classi utilizzabili come `objectType` di una risorsa
|
|
1235
1275
|
* `Structure` (§4.7). È un **elenco di classi** nella forma di ogni altro catalogo: i membri
|
|
@@ -1339,11 +1379,23 @@ declare class HttpFlowBuilderApi extends FlowBuilderApi {
|
|
|
1339
1379
|
deactivateFlow(flowName: string): Promise<void>;
|
|
1340
1380
|
deleteVersion(flowName: string, version: number): Promise<void>;
|
|
1341
1381
|
deleteFlow(flowName: string): Promise<void>;
|
|
1382
|
+
/**
|
|
1383
|
+
* Documento nudo alla radice: le primitive che **analizzano** il documento non usano
|
|
1384
|
+
* l'involucro `{definition, flowName, …}` della §6.2, che serve solo a chi deve sapere dove
|
|
1385
|
+
* riporlo (§6.4, §13.17). Sbagliare involucro qui non produce nessun errore: si otterrebbe la
|
|
1386
|
+
* validazione di un flow vuoto, cioe' «manca lo Start».
|
|
1387
|
+
*/
|
|
1342
1388
|
validateDefinition(definition: FlowDefinition): Promise<FlowValidationResult>;
|
|
1343
1389
|
validateVersion(flowName: string, version: number): Promise<FlowValidationResult>;
|
|
1344
1390
|
getDictionaries(processType?: string): Promise<FlowDictionaries>;
|
|
1345
|
-
|
|
1346
|
-
|
|
1391
|
+
/**
|
|
1392
|
+
* Il body e' il documento **nudo**, come per validate/parse/outline/connector-targets (§6.4,
|
|
1393
|
+
* §13.17): avvolgerlo (`{definition: …}`) o aggiungergli campi di filtro non da' nessun errore
|
|
1394
|
+
* — il backend deserializza un `Flow` in cui non riconosce nessuna proprieta', risponde `200` e
|
|
1395
|
+
* l'elenco contiene le sole globali. Se le tendine sembrano vuote, si guarda qui prima di tutto.
|
|
1396
|
+
*/
|
|
1397
|
+
getReferences(definition: FlowDefinition): Promise<FlowReference[]>;
|
|
1398
|
+
getWritableReferences(definition: FlowDefinition): Promise<FlowReference[]>;
|
|
1347
1399
|
getConnectorTargets(definition: FlowDefinition, excluding?: string): Promise<FlowConnectorTarget[]>;
|
|
1348
1400
|
getOutline(definition: FlowDefinition): Promise<FlowOutline>;
|
|
1349
1401
|
listObjects(): Promise<FlowObjectSummary[]>;
|
|
@@ -1358,6 +1410,8 @@ declare class HttpFlowBuilderApi extends FlowBuilderApi {
|
|
|
1358
1410
|
listForms(): Promise<FlowCatalogEntry[]>;
|
|
1359
1411
|
listFormParameters(formName: string): Promise<FlowCatalogParameter[]>;
|
|
1360
1412
|
listEnumTypes(): Promise<FlowCatalogEntry[]>;
|
|
1413
|
+
/** §4.6 — i valori di un tipo: `enumType` e' l'`objectType`, e va nel path come segmento. */
|
|
1414
|
+
listEnumValues(enumType: string): Promise<FlowEnumValue[]>;
|
|
1361
1415
|
/** §4.7.1 — solo l'elenco delle classi: i membri **non** ci sono, si chiedono a parte. */
|
|
1362
1416
|
listStructures(): Promise<FlowCatalogEntry[]>;
|
|
1363
1417
|
/**
|
|
@@ -1413,6 +1467,18 @@ interface FlowOutlet {
|
|
|
1413
1467
|
* di un percorso: il corpo di un Loop (§3.5).
|
|
1414
1468
|
*/
|
|
1415
1469
|
isStructural?: boolean;
|
|
1470
|
+
/**
|
|
1471
|
+
* `true` → e' un ramo di **recupero da errore**, e la sua assenza non e' «il percorso
|
|
1472
|
+
* finisce qui»: se l'elemento fallisce l'interview finisce `Failed`, con `fault`
|
|
1473
|
+
* valorizzato e le modifiche già eseguite **annullate** (§3.5). Resta una scelta
|
|
1474
|
+
* legittima, e la piu' comune: la validazione la segnala con l'avviso
|
|
1475
|
+
* `FAULT_CONNECTOR_MISSING`, che e' un promemoria e non un difetto.
|
|
1476
|
+
*
|
|
1477
|
+
* Vale sui soli elementi che possono fallire (Record*, ActionCall, ScriptCall, Wait):
|
|
1478
|
+
* il `faultConnector` di un `OrchestratedStage` porta `kind: 'Fault'` ma e' il ramo
|
|
1479
|
+
* dello **step rifiutato** (§5.13), non un ramo di guasto, e la §7 non lo comprende.
|
|
1480
|
+
*/
|
|
1481
|
+
isFaultRecovery?: boolean;
|
|
1416
1482
|
read(node: FlowAnyNode): FlowConnector | undefined;
|
|
1417
1483
|
write(node: FlowAnyNode, connector: FlowConnector | undefined): void;
|
|
1418
1484
|
}
|
|
@@ -1818,6 +1884,7 @@ declare class FlowCatalogStore {
|
|
|
1818
1884
|
private readonly objectsCache;
|
|
1819
1885
|
private readonly fieldsCache;
|
|
1820
1886
|
private readonly fieldValuesCache;
|
|
1887
|
+
private readonly enumValuesCache;
|
|
1821
1888
|
private readonly entriesCache;
|
|
1822
1889
|
private readonly parametersCache;
|
|
1823
1890
|
private readonly membersCache;
|
|
@@ -1840,6 +1907,15 @@ declare class FlowCatalogStore {
|
|
|
1840
1907
|
listForms(): Promise<FlowCatalogEntry[]>;
|
|
1841
1908
|
listFormParameters(formName: string): Promise<FlowCatalogParameter[]>;
|
|
1842
1909
|
listEnumTypes(): Promise<FlowCatalogEntry[]>;
|
|
1910
|
+
/**
|
|
1911
|
+
* §4.6 — i valori di un tipo di enumerazione, cioe' i nomi scrivibili in `enumValue` (§4.2).
|
|
1912
|
+
*
|
|
1913
|
+
* La cache e' per **nome del tipo** e non per punto di uso: i valori sono del tipo, quindi la
|
|
1914
|
+
* stessa risposta serve una risorsa, un parametro di action e un membro di classe che dichiarano
|
|
1915
|
+
* lo stesso `objectType`. La primitiva e' opzionale: assente o in errore l'elenco resta vuoto,
|
|
1916
|
+
* che significa "non lo so" — valore digitabile a mano e nessuna segnalazione (§7).
|
|
1917
|
+
*/
|
|
1918
|
+
listEnumValues(enumType: string | undefined): Promise<FlowEnumValue[]>;
|
|
1843
1919
|
/**
|
|
1844
1920
|
* §4.7 — le classi utilizzabili come `objectType` di una `Structure`. La primitiva e'
|
|
1845
1921
|
* opzionale: se l'ambiente non la espone, l'errore non si memoizza e l'elenco resta vuoto —
|
|
@@ -2035,6 +2111,40 @@ interface PathNavigation {
|
|
|
2035
2111
|
*/
|
|
2036
2112
|
declare function navigatePath(catalog: PathCatalog, request: () => PathNavigationRequest | null): PathNavigation;
|
|
2037
2113
|
|
|
2114
|
+
/**
|
|
2115
|
+
* Filtro di compatibilita' dei riferimenti — FRONTEND.md §6.4.
|
|
2116
|
+
*
|
|
2117
|
+
* `POST /flows/references` e `POST /flows/references/writable` prendono il **documento nudo** e
|
|
2118
|
+
* restituiscono **tutti** i riferimenti, ognuno col proprio `dataType`, `isCollection` e
|
|
2119
|
+
* `isWritable`: nel body non c'e' nessun campo di filtro. Chi sceglie cosa e' compatibile col
|
|
2120
|
+
* campo che l'utente sta compilando e' quindi l'editor, ed e' deliberato — la stessa risposta
|
|
2121
|
+
* serve tutte le tendine di una schermata, quindi si chiede una volta e si filtra n volte.
|
|
2122
|
+
*
|
|
2123
|
+
* Il filtro guarda **la radice**, non il percorso: una radice scartata si porta via anche cio'
|
|
2124
|
+
* che sta sotto, e chi propone i segmenti navigati applica la stessa regola separatamente
|
|
2125
|
+
* (`reference-picker`).
|
|
2126
|
+
*/
|
|
2127
|
+
|
|
2128
|
+
/** I vincoli del campo che si sta compilando. Un campo assente e' "nessun vincolo". */
|
|
2129
|
+
interface FlowReferenceFilter {
|
|
2130
|
+
dataType?: FlowDataType;
|
|
2131
|
+
isCollection?: boolean;
|
|
2132
|
+
objectType?: string;
|
|
2133
|
+
}
|
|
2134
|
+
/**
|
|
2135
|
+
* La forma minima su cui il filtro lavora: la regola vale sia per un riferimento sia per un
|
|
2136
|
+
* segmento di percorso, che riferimento non e'.
|
|
2137
|
+
*/
|
|
2138
|
+
interface FlowTypedEntry {
|
|
2139
|
+
dataType?: FlowDataType | null;
|
|
2140
|
+
isCollection?: boolean | null;
|
|
2141
|
+
objectType?: string | null;
|
|
2142
|
+
}
|
|
2143
|
+
/** `true` se il campo non pone nessun vincolo: lì filtrare e' inutile. */
|
|
2144
|
+
declare function isEmptyReferenceFilter(filter: FlowReferenceFilter | undefined): boolean;
|
|
2145
|
+
declare function matchesReferenceFilter(entry: FlowTypedEntry, filter: FlowReferenceFilter): boolean;
|
|
2146
|
+
declare function filterReferences(references: readonly FlowReference[], filter: FlowReferenceFilter | undefined): FlowReference[];
|
|
2147
|
+
|
|
2038
2148
|
/** Un node come lo vede l'editor: il node piu' da dove viene. */
|
|
2039
2149
|
interface FlowNodeRef {
|
|
2040
2150
|
name: string;
|
|
@@ -2686,19 +2796,29 @@ declare class ReferencePickerComponent {
|
|
|
2686
2796
|
*/
|
|
2687
2797
|
readonly elementsOnly: _angular_core.InputSignal<boolean>;
|
|
2688
2798
|
readonly valueChange: _angular_core.OutputEmitterRef<string | undefined>;
|
|
2689
|
-
private readonly references;
|
|
2690
2799
|
/**
|
|
2691
|
-
* L'elenco **senza** il filtro di tipo
|
|
2692
|
-
*
|
|
2693
|
-
* Il filtro (§6.4) guarda il tipo della **radice**, e una radice scartata si porta via anche cio'
|
|
2694
|
-
* che sta sotto: in un parametro `String` una variabile `Structure` non e' compatibile, ma
|
|
2695
|
-
* `Richiesta.Ragione` lo e', e `Leggi_Ordine` non e' un `String` mentre `Leggi_Ordine.Numero` lo
|
|
2696
|
-
* e'. Senza questo elenco il primo membro non si puo' proporre e il secondo viene accusato di non
|
|
2697
|
-
* esistere pur essendo un riferimento valido (§4.5).
|
|
2800
|
+
* L'elenco come arriva dalla primitiva, **senza** il filtro di tipo.
|
|
2698
2801
|
*
|
|
2699
|
-
*
|
|
2802
|
+
* Serve a due cose oltre che a produrre le proposte: riconoscere le radici dei percorsi e
|
|
2803
|
+
* mostrare i contenitori come righe in cui si entra. Il filtro (§6.4) guarda il tipo della
|
|
2804
|
+
* **radice**, e una radice scartata si porta via anche cio' che sta sotto: in un parametro
|
|
2805
|
+
* `String` una variabile `Structure` non e' compatibile, ma `Richiesta.Ragione` lo e', e
|
|
2806
|
+
* `Leggi_Ordine` non e' un `String` mentre `Leggi_Ordine.Numero` lo e'. Senza questo elenco il
|
|
2807
|
+
* primo membro non si puo' proporre e il secondo viene accusato di non esistere pur essendo un
|
|
2808
|
+
* riferimento valido (§4.5).
|
|
2700
2809
|
*/
|
|
2701
2810
|
private readonly unfiltered;
|
|
2811
|
+
/**
|
|
2812
|
+
* L'insieme da cui si pesca prima del filtro di tipo: in un campo di destinazione e' la
|
|
2813
|
+
* risposta di `getWritableReferences`, altrove {@link unfiltered} stesso.
|
|
2814
|
+
*/
|
|
2815
|
+
private readonly available;
|
|
2816
|
+
/**
|
|
2817
|
+
* Le proposte compatibili col campo. Il filtro e' **locale**: la primitiva prende il documento
|
|
2818
|
+
* nudo e restituisce tutto (§6.4, §13.17), cosi' la stessa risposta serve tutte le tendine di
|
|
2819
|
+
* una schermata.
|
|
2820
|
+
*/
|
|
2821
|
+
private readonly references;
|
|
2702
2822
|
/** Tutto cio' che puo' essere la radice di un percorso, filtrato o no. */
|
|
2703
2823
|
private readonly roots;
|
|
2704
2824
|
private readonly isLoading;
|
|
@@ -2744,10 +2864,9 @@ declare class ReferencePickerComponent {
|
|
|
2744
2864
|
private readonly isReadOnlyPath;
|
|
2745
2865
|
private readonly pathReferences;
|
|
2746
2866
|
/**
|
|
2747
|
-
* Lo stesso filtro
|
|
2748
|
-
*
|
|
2749
|
-
*
|
|
2750
|
-
* al membro che combacia.
|
|
2867
|
+
* Lo stesso filtro delle radici (§6.4), applicato ai segmenti di un percorso: in un parametro
|
|
2868
|
+
* `String` non si propone un membro `Date`. Un segmento da cui si scende resta comunque proposto
|
|
2869
|
+
* anche se il suo tipo non combacia — e' la strada per arrivare al membro che combacia.
|
|
2751
2870
|
*/
|
|
2752
2871
|
private matchesTarget;
|
|
2753
2872
|
/**
|
|
@@ -2786,7 +2905,7 @@ declare class ReferencePickerComponent {
|
|
|
2786
2905
|
* percorso inesistente di uno scope che i percorsi li dichiara, perche' lì il backend
|
|
2787
2906
|
* risponderebbe `GLOBAL_UNKNOWN`.
|
|
2788
2907
|
*/
|
|
2789
|
-
readonly valueState: _angular_core.Signal<"empty" | "
|
|
2908
|
+
readonly valueState: _angular_core.Signal<"empty" | "member" | "unknown" | "known" | "navigated" | "host" | "containerRoot" | "memberUnknown" | "memberNotWritable" | "pathUnverified" | "globalPathUntyped" | "globalPathInvalid">;
|
|
2790
2909
|
/** Le parole cambiano con la tappa: un campo di un'entita' non e' un membro di una classe. */
|
|
2791
2910
|
private readonly tailIsObject;
|
|
2792
2911
|
private readonly tailContainer;
|
|
@@ -3063,6 +3182,31 @@ declare class StructureMemberPickerComponent {
|
|
|
3063
3182
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StructureMemberPickerComponent, "fb-structure-member-picker", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; "usage": { "alias": "usage"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
3064
3183
|
}
|
|
3065
3184
|
|
|
3185
|
+
declare class EnumValuePickerComponent {
|
|
3186
|
+
private readonly catalog;
|
|
3187
|
+
readonly value: _angular_core.InputSignal<string | undefined>;
|
|
3188
|
+
/** Il tipo di enumerazione: e' esattamente l'`objectType` della destinazione (§4.6). */
|
|
3189
|
+
readonly enumType: _angular_core.InputSignal<string | undefined>;
|
|
3190
|
+
readonly label: _angular_core.InputSignal<string>;
|
|
3191
|
+
readonly placeholder: _angular_core.InputSignal<string>;
|
|
3192
|
+
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
3193
|
+
readonly valueChange: _angular_core.OutputEmitterRef<string | undefined>;
|
|
3194
|
+
private readonly values;
|
|
3195
|
+
/** Cresce a ogni caricamento: scarta la risposta di un tipo che non e' piu' quello scelto. */
|
|
3196
|
+
private sequence;
|
|
3197
|
+
constructor();
|
|
3198
|
+
readonly options: _angular_core.Signal<NamePickerOption[]>;
|
|
3199
|
+
/**
|
|
3200
|
+
* Due "non lo so" diversi, e la differenza e' azionabile: senza `objectType` manca una scelta a
|
|
3201
|
+
* monte — ed e' `OBJECT_TYPE_MISSING` da qualche parte in questo form — mentre col tipo scelto e
|
|
3202
|
+
* l'elenco vuoto non c'e' niente da correggere.
|
|
3203
|
+
*/
|
|
3204
|
+
readonly emptyMessage: _angular_core.Signal<string>;
|
|
3205
|
+
readonly unknownMessage: _angular_core.Signal<string>;
|
|
3206
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<EnumValuePickerComponent, never>;
|
|
3207
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EnumValuePickerComponent, "fb-enum-value-picker", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "enumType": { "alias": "enumType"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
3208
|
+
}
|
|
3209
|
+
|
|
3066
3210
|
/** Le modalita' offerte: una per campo del modello. */
|
|
3067
3211
|
type ValueMode = 'reference' | 'literal' | 'formula' | 'globalConstant' | 'empty';
|
|
3068
3212
|
declare class ValueEditorComponent {
|
|
@@ -3112,6 +3256,11 @@ declare class ValueEditorComponent {
|
|
|
3112
3256
|
setMode(mode: ValueMode): void;
|
|
3113
3257
|
onReferenceChange(reference: string | undefined): void;
|
|
3114
3258
|
onLiteralChange(raw: string): void;
|
|
3259
|
+
/**
|
|
3260
|
+
* §4.2 — l'`enumValue` e' il **nome** del valore. Svuotare il picker toglie il valore invece di
|
|
3261
|
+
* scrivere una stringa vuota: un `enumValue: ''` sarebbe un campo valorizzato con niente.
|
|
3262
|
+
*/
|
|
3263
|
+
onEnumChange(name: string | undefined): void;
|
|
3115
3264
|
onBooleanChange(checked: boolean): void;
|
|
3116
3265
|
private withDateZone;
|
|
3117
3266
|
/**
|
|
@@ -3162,6 +3311,12 @@ declare class ConditionEditorComponent {
|
|
|
3162
3311
|
private typeOfReference;
|
|
3163
3312
|
/** Il tipo del lato sinistro: guida il secondo operando. */
|
|
3164
3313
|
leftDataType(condition: FlowCondition): FlowDataType | undefined;
|
|
3314
|
+
/**
|
|
3315
|
+
* Il tipo concreto del lato sinistro quando e' un `Enum`: senza di questo il valore di confronto
|
|
3316
|
+
* resterebbe una casella di testo su un insieme chiuso (§4.6). Su un percorso navigato
|
|
3317
|
+
* (`Cliente.Stato`) il riferimento non e' in elenco e resta `undefined`: si digita, come prima.
|
|
3318
|
+
*/
|
|
3319
|
+
leftObjectType(condition: FlowCondition): string | undefined;
|
|
3165
3320
|
/** Il tipo del lato destro, dedotto dal campo valorizzato o dal riferimento scelto. */
|
|
3166
3321
|
private rightDataType;
|
|
3167
3322
|
/**
|
|
@@ -3170,7 +3325,7 @@ declare class ConditionEditorComponent {
|
|
|
3170
3325
|
*/
|
|
3171
3326
|
hasTypeMismatch(condition: FlowCondition): boolean;
|
|
3172
3327
|
typeMismatchMessage(condition: FlowCondition): string;
|
|
3173
|
-
readonly logicMode: _angular_core.Signal<"
|
|
3328
|
+
readonly logicMode: _angular_core.Signal<"formula" | "and" | "or" | "custom">;
|
|
3174
3329
|
readonly customLogic: _angular_core.Signal<string>;
|
|
3175
3330
|
/** Feedback immediato sull'espressione: la verita' resta della validazione backend. */
|
|
3176
3331
|
readonly customLogicError: _angular_core.Signal<string | null>;
|
|
@@ -3252,7 +3407,7 @@ declare class RecordFilterEditorComponent {
|
|
|
3252
3407
|
* evita la ricerca di un campo che nell'elenco non c'e' e non ci sara'.
|
|
3253
3408
|
*/
|
|
3254
3409
|
readonly identifierNotFilterable: _angular_core.Signal<boolean>;
|
|
3255
|
-
readonly logicMode: _angular_core.Signal<"
|
|
3410
|
+
readonly logicMode: _angular_core.Signal<"formula" | "and" | "or" | "custom">;
|
|
3256
3411
|
readonly customLogic: _angular_core.Signal<string>;
|
|
3257
3412
|
readonly showEmptyWarning: _angular_core.Signal<boolean>;
|
|
3258
3413
|
addFilter(): void;
|
|
@@ -3271,6 +3426,12 @@ declare class RecordFilterEditorComponent {
|
|
|
3271
3426
|
* catalogo resta caricato qui, e non solo dentro il picker.
|
|
3272
3427
|
*/
|
|
3273
3428
|
fieldDataType(filter: FlowRecordFilter): string | undefined;
|
|
3429
|
+
/**
|
|
3430
|
+
* Il tipo concreto del campo: su un campo `Enum` e' cio' che permette di proporre i valori
|
|
3431
|
+
* ammessi invece di farli digitare (§4.6). Su un percorso di relazione il campo non e' in elenco
|
|
3432
|
+
* e resta `undefined`, come per il tipo.
|
|
3433
|
+
*/
|
|
3434
|
+
fieldObjectType(filter: FlowRecordFilter): string | undefined;
|
|
3274
3435
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RecordFilterEditorComponent, never>;
|
|
3275
3436
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RecordFilterEditorComponent, "fb-record-filter-editor", never, { "holder": { "alias": "holder"; "required": true; "isSignal": true; }; "object": { "alias": "object"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "usage": { "alias": "usage"; "required": false; "isSignal": true; }; "supportsLogic": { "alias": "supportsLogic"; "required": false; "isSignal": true; }; "supportsFormula": { "alias": "supportsFormula"; "required": false; "isSignal": true; }; "emptyWarning": { "alias": "emptyWarning"; "required": false; "isSignal": true; }; "emptyWarningSeverity": { "alias": "emptyWarningSeverity"; "required": false; "isSignal": true; }; }, { "changed": "changed"; }, never, never, true, never>;
|
|
3276
3437
|
}
|
|
@@ -3776,6 +3937,13 @@ declare class DebugPanelComponent {
|
|
|
3776
3937
|
private readonly membersByClass;
|
|
3777
3938
|
/** I membri **scrivibili** di una classe: gli altri li calcola il backend. */
|
|
3778
3939
|
membersOf(className: string | undefined): FlowStructureMember[];
|
|
3940
|
+
/**
|
|
3941
|
+
* §4.6 — i valori di un tipo di enumerazione, per nome del tipo. Elenco vuoto significa "non lo
|
|
3942
|
+
* so" — tipo non indicato, primitiva assente, tipo senza valori dichiarati — e allora il valore
|
|
3943
|
+
* si scrive a mano.
|
|
3944
|
+
*/
|
|
3945
|
+
private readonly valuesByEnumType;
|
|
3946
|
+
enumValuesOf(enumType: string | null | undefined): FlowEnumValue[];
|
|
3779
3947
|
isStructureVariable(variable: FlowVariable): boolean;
|
|
3780
3948
|
readonly canRun: _angular_core.Signal<boolean>;
|
|
3781
3949
|
readonly status: _angular_core.Signal<string | null>;
|
|
@@ -4006,5 +4174,5 @@ declare class SelectValueDirective implements AfterViewChecked {
|
|
|
4006
4174
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SelectValueDirective, "select[fbValue]", never, { "fbValue": { "alias": "fbValue"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4007
4175
|
}
|
|
4008
4176
|
|
|
4009
|
-
export { ConditionEditorComponent, ConnectorEditorComponent, DebugPanelComponent, ElementDialogComponent, ElementInspectorComponent, ElementPaletteComponent, FALLBACK_COLLECTION_BY_TYPE, FALLBACK_TYPE_LABEL, FLOW_BUILDER_HTTP_CONFIG, FLOW_ELEMENT_ICONS, FLOW_ELEMENT_VARIANT_FIELDS, FLOW_ELEMENT_VARIANT_ICONS, FLOW_ERROR_FALLBACK_MESSAGE, FLOW_ERROR_HTTP_STATUS, FLOW_NAME_PATTERN, FLOW_NODE_COLLECTIONS, FLOW_NODE_HEIGHT, FLOW_NODE_WIDTH, FLOW_RESOURCE_COLLECTIONS, FieldAssignmentEditorComponent, FieldPickerComponent, FlowApiError, FlowBuilderApi, FlowBuilderComponent, FlowCanvasComponent, FlowCatalogStore, FlowDictionaryStore, FlowDocumentStore, FlowEditorSession, FlowLayoutService, FlowValidationStore, HttpFlowBuilderApi, NamePickerComponent, NodeInspectorBase, ORCHESTRATION_CONDITION_OUTPUT, ObjectPickerComponent, OrchestratedStageInspectorComponent, ParameterEditorComponent, ProblemsPanelComponent, RecordFilterEditorComponent, ReferencePickerComponent, ResourcePanelComponent, SEVERITY_BUCKETS, SEVERITY_ICON, SEVERITY_LABEL, START_NODE_NAME, SelectValueDirective, StartInspectorComponent, StructureMemberPickerComponent, StructurePickerComponent, TYPES_WITH_AUTOMATIC_OUTPUT, TYPE_BY_COLLECTION, UNSUPPORTED_TYPES, ValueEditorComponent, VersionPanelComponent, areTypesComparable, canvasNodeId, checkConditionLogic, checkFlowName, describePathEntry, elementIcon, emptyFlowDefinition, flowNodeWidth, flowNodeWidthClass, isCustomConditionLogic, isGlobalReference, isNumericType, isTypeCheckedOperator, isValidFlowName, loadPathLevel, moveCondition, navigatePath, outletByKey, outletsOf, parseCanvasNodeId, parseInvariantNumber, parseSourceConnectorId, parseTargetConnectorId, pathAvailableNames, pathContainerLabel, pathNotVerifiableMessage, referenceRoot, remapConditionLogic, removeCondition, resolvePath, severityBucket, slugifyFlowName, sourceConnectorId, stageStepNames, stageStepOutputReferenced, stepsOf, targetConnectorId, uniqueFlowName, variantFieldOf, variantOf, variantPresetOf };
|
|
4010
|
-
export type { FieldAssignmentHolder, FilterHolder, FlowActionCall, FlowAnyNode, FlowAssignment, FlowAssignmentItem, FlowAssignmentOperator, FlowAssignmentOperatorEntry, FlowBuilderHttpConfig, FlowCanvasEdge, FlowCanvasNode, FlowCatalogEntry, FlowCatalogParameter, FlowChoice, 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, FlowEdge, FlowElementType, FlowElementTypeEntry, FlowErrorCategory, FlowExportQuery, FlowFieldDescription, FlowFieldUsage, FlowFieldValue, FlowFormula, FlowGlobalVariableEntry, FlowInputFieldAssignment, FlowInputParameter, FlowInterviewResult, FlowInterviewStatus, FlowIssueSeverity, FlowLayoutDirection, FlowLayoutNodeInput, FlowLayoutOptions, FlowLayoutResult, FlowListQuery, FlowLoop, FlowNameCheck, FlowNameProblem, FlowNewVersionRequest, FlowNodeBase, FlowNodeCollection, FlowNodeRef, FlowObjectDescription, FlowObjectSummary, FlowOffsetUnit, FlowOrchestratedStage, FlowOutlet, FlowOutline, FlowOutlineConnection, FlowOutlineNode, FlowOutputFieldAssignment, FlowOutputParameter, FlowPalettePick, FlowPendingScreen, FlowProcessType, FlowRecordCreate, FlowRecordDelete, FlowRecordFilter, FlowRecordFilterOperator, FlowRecordLookup, FlowRecordRollback, FlowRecordTriggerType, FlowRecordUpdate, FlowRecordValue, FlowReference,
|
|
4177
|
+
export { ConditionEditorComponent, ConnectorEditorComponent, DebugPanelComponent, ElementDialogComponent, ElementInspectorComponent, ElementPaletteComponent, EnumValuePickerComponent, FALLBACK_COLLECTION_BY_TYPE, FALLBACK_TYPE_LABEL, FLOW_BUILDER_HTTP_CONFIG, FLOW_ELEMENT_ICONS, FLOW_ELEMENT_VARIANT_FIELDS, FLOW_ELEMENT_VARIANT_ICONS, FLOW_ERROR_FALLBACK_MESSAGE, FLOW_ERROR_HTTP_STATUS, FLOW_NAME_PATTERN, FLOW_NODE_COLLECTIONS, FLOW_NODE_HEIGHT, FLOW_NODE_WIDTH, FLOW_RESOURCE_COLLECTIONS, FieldAssignmentEditorComponent, FieldPickerComponent, FlowApiError, FlowBuilderApi, FlowBuilderComponent, FlowCanvasComponent, FlowCatalogStore, FlowDictionaryStore, FlowDocumentStore, FlowEditorSession, FlowLayoutService, FlowValidationStore, HttpFlowBuilderApi, NamePickerComponent, NodeInspectorBase, ORCHESTRATION_CONDITION_OUTPUT, ObjectPickerComponent, OrchestratedStageInspectorComponent, ParameterEditorComponent, ProblemsPanelComponent, RecordFilterEditorComponent, ReferencePickerComponent, ResourcePanelComponent, SEVERITY_BUCKETS, SEVERITY_ICON, SEVERITY_LABEL, START_NODE_NAME, SelectValueDirective, StartInspectorComponent, StructureMemberPickerComponent, StructurePickerComponent, TYPES_WITH_AUTOMATIC_OUTPUT, TYPE_BY_COLLECTION, UNSUPPORTED_TYPES, ValueEditorComponent, VersionPanelComponent, areTypesComparable, canvasNodeId, checkConditionLogic, checkFlowName, describePathEntry, elementIcon, emptyFlowDefinition, filterReferences, flowNodeWidth, flowNodeWidthClass, isCustomConditionLogic, isEmptyReferenceFilter, isGlobalReference, isNumericType, isTypeCheckedOperator, isValidFlowName, loadPathLevel, matchesReferenceFilter, moveCondition, navigatePath, outletByKey, outletsOf, parseCanvasNodeId, parseInvariantNumber, parseSourceConnectorId, parseTargetConnectorId, pathAvailableNames, pathContainerLabel, pathNotVerifiableMessage, referenceRoot, remapConditionLogic, removeCondition, resolvePath, severityBucket, slugifyFlowName, sourceConnectorId, stageStepNames, stageStepOutputReferenced, stepsOf, targetConnectorId, uniqueFlowName, variantFieldOf, variantOf, variantPresetOf };
|
|
4178
|
+
export type { FieldAssignmentHolder, FilterHolder, FlowActionCall, FlowAnyNode, FlowAssignment, FlowAssignmentItem, FlowAssignmentOperator, FlowAssignmentOperatorEntry, FlowBuilderHttpConfig, FlowCanvasEdge, FlowCanvasNode, FlowCatalogEntry, FlowCatalogParameter, FlowChoice, 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, FlowEdge, FlowElementType, FlowElementTypeEntry, FlowEnumValue, FlowErrorCategory, FlowExportQuery, FlowFieldDescription, FlowFieldUsage, FlowFieldValue, FlowFormula, FlowGlobalVariableEntry, FlowInputFieldAssignment, FlowInputParameter, FlowInterviewResult, FlowInterviewStatus, FlowIssueSeverity, FlowLayoutDirection, FlowLayoutNodeInput, FlowLayoutOptions, FlowLayoutResult, FlowListQuery, FlowLoop, FlowNameCheck, FlowNameProblem, FlowNewVersionRequest, FlowNodeBase, FlowNodeCollection, FlowNodeRef, FlowObjectDescription, FlowObjectSummary, FlowOffsetUnit, FlowOrchestratedStage, FlowOutlet, FlowOutline, FlowOutlineConnection, FlowOutlineNode, FlowOutputFieldAssignment, FlowOutputParameter, FlowPalettePick, FlowPendingScreen, FlowProcessType, FlowRecordCreate, FlowRecordDelete, FlowRecordFilter, FlowRecordFilterOperator, FlowRecordLookup, FlowRecordRollback, FlowRecordTriggerType, FlowRecordUpdate, FlowRecordValue, FlowReference, FlowReferenceFilter, FlowReferenceKind, FlowResourceCollection, FlowResourceKindEntry, FlowResourceRef, FlowResumeRequest, FlowSaveRequest, FlowSaveResult, FlowSchedule, FlowScheduledPath, FlowScreen, FlowScreenNavigation, FlowScreenResponseRequest, 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, StructureMemberUsage, ValueMode };
|