@f1studio/form-spec 5.0.0-alpha.102 → 5.0.0-alpha.104
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/FormSpec.TS/Designer.js +2 -2
- package/FormSpec.TS/Designer.js.map +1 -1
- package/FormSpec.TS/Designer.ts.map +1 -1
- package/FormSpec.TS/FormSpec.js +235 -178
- package/FormSpec.TS/FormSpec.js.map +1 -1
- package/FormSpec.TS/FormSpec.ts.map +1 -1
- package/FormSpec.TS/FormSpecHelpers.js +62 -40
- package/FormSpec.TS/FormSpecHelpers.js.map +1 -1
- package/FormSpec.TS/FormSpecHelpers.ts.map +1 -1
- package/FormSpec.TS/FormSpecValues.js +207 -0
- package/FormSpec.TS/FormSpecValues.js.map +1 -0
- package/FormSpec.TS/FormSpecValues.ts.map +1 -0
- package/FormSpec.TS/Helpers.js +26 -25
- package/FormSpec.TS/Helpers.js.map +1 -1
- package/FormSpec.TS/Helpers.ts.map +1 -1
- package/FormSpec.TS/Interop/FormSpec.Api.Helpers.js +85 -125
- package/FormSpec.TS/Interop/FormSpec.Api.Helpers.js.map +1 -1
- package/FormSpec.TS/Interop/FormSpec.Api.Helpers.ts.map +1 -1
- package/FormSpec.TS/Interop/FormSpec.Api.Option.js +40 -19
- package/FormSpec.TS/Interop/FormSpec.Api.Option.js.map +1 -1
- package/FormSpec.TS/Interop/FormSpec.Api.Option.ts.map +1 -1
- package/FormSpec.TS/Interop/FormSpec.Values.Api.Option.js +103 -80
- package/FormSpec.TS/Interop/FormSpec.Values.Api.Option.js.map +1 -1
- package/FormSpec.TS/Interop/FormSpec.Values.Api.Option.ts.map +1 -1
- package/FormSpec.TS/PathwayDataExtractor.js +4 -19
- package/FormSpec.TS/PathwayDataExtractor.js.map +1 -1
- package/FormSpec.TS/PathwayDataExtractor.ts.map +1 -1
- package/FormSpec.TS/PathwayExecutor.js +371 -125
- package/FormSpec.TS/PathwayExecutor.js.map +1 -1
- package/FormSpec.TS/PathwayExecutor.ts.map +1 -1
- package/FormSpec.TS/PathwayValidator.js +14 -26
- package/FormSpec.TS/PathwayValidator.js.map +1 -1
- package/FormSpec.TS/PathwayValidator.ts.map +1 -1
- package/FormSpec.TS/Renderers/FormSpecMarkdownRenderer.ts.map +1 -1
- package/FormSpec.TS/Renderers/MermaidRenderer.js +8 -5
- package/FormSpec.TS/Renderers/MermaidRenderer.js.map +1 -1
- package/FormSpec.TS/Renderers/MermaidRenderer.ts.map +1 -1
- package/FormSpec.TS/Renderers/PathwayRenderers.js +35 -26
- package/FormSpec.TS/Renderers/PathwayRenderers.js.map +1 -1
- package/FormSpec.TS/Renderers/PathwayRenderers.ts.map +1 -1
- package/FormSpec.TS/fable_modules/Thoth.Json.10.4.1/Encode.fs.js.map +1 -1
- package/FormSpec.TS/fable_modules/Thoth.Json.10.4.1/Encode.fs.ts.map +1 -1
- package/FormSpec.TS/fable_modules/project_cracked.json +1 -1
- package/FormSpec.d.ts +67 -56
- package/FormSpec.d.ts.map +1 -1
- package/FormSpecHelpers.d.ts +18 -12
- package/FormSpecHelpers.d.ts.map +1 -1
- package/FormSpecValues.d.ts +62 -0
- package/FormSpecValues.d.ts.map +1 -0
- package/Helpers.d.ts +11 -10
- package/Helpers.d.ts.map +1 -1
- package/Interop/FormSpec.Api.Helpers.d.ts +26 -30
- package/Interop/FormSpec.Api.Helpers.d.ts.map +1 -1
- package/Interop/FormSpec.Api.Option.d.ts +11 -8
- package/Interop/FormSpec.Api.Option.d.ts.map +1 -1
- package/Interop/FormSpec.Values.Api.Option.d.ts +35 -22
- package/Interop/FormSpec.Values.Api.Option.d.ts.map +1 -1
- package/PathwayDataExtractor.d.ts +1 -2
- package/PathwayDataExtractor.d.ts.map +1 -1
- package/PathwayExecutor.d.ts +63 -33
- package/PathwayExecutor.d.ts.map +1 -1
- package/PathwayValidator.d.ts.map +1 -1
- package/README.md +18 -7
- package/Renderers/FormSpecMarkdownRenderer.d.ts +3 -2
- package/Renderers/FormSpecMarkdownRenderer.d.ts.map +1 -1
- package/Renderers/MermaidRenderer.d.ts.map +1 -1
- package/Renderers/PathwayRenderers.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/Designer.ts +2 -2
- package/src/FormSpec.ts +145 -109
- package/src/FormSpecHelpers.ts +71 -48
- package/src/FormSpecValues.ts +158 -0
- package/src/Helpers.ts +52 -51
- package/src/Interop/FormSpec.Api.Helpers.ts +113 -150
- package/src/Interop/FormSpec.Api.Option.ts +37 -23
- package/src/Interop/FormSpec.Values.Api.Option.ts +156 -129
- package/src/PathwayDataExtractor.ts +6 -17
- package/src/PathwayExecutor.ts +431 -154
- package/src/PathwayValidator.ts +17 -23
- package/src/Renderers/FormSpecMarkdownRenderer.ts +6 -5
- package/src/Renderers/MermaidRenderer.ts +19 -16
- package/src/Renderers/PathwayRenderers.ts +37 -29
package/src/Helpers.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Values_StepOrder, Shared_FieldValue_Multiple, Shared_FieldValue_Single, Shared_FieldAnswer, Shared_FieldValue_$union,
|
|
1
|
+
import { Values_StepOrder, Shared_FieldValue_Multiple, Shared_FieldValue_Single, Shared_FieldAnswer, Shared_FieldValue_$union, Shared_FieldOption, Spec_FieldType_$union, Spec_FieldType, Spec_FormSpec$1, Spec_FormField$1, Spec_FormStep$1, Shared_FieldKey } from "./FormSpec.js";
|
|
2
2
|
import { arrayToGuid, parse } from "@fable-org/fable-library-js/Guid.js";
|
|
3
3
|
import { toConsole, isNullOrEmpty, trimEnd, trim, isNullOrWhiteSpace } from "@fable-org/fable-library-js/String.js";
|
|
4
4
|
import { replace } from "@fable-org/fable-library-js/RegExp.js";
|
|
@@ -10,6 +10,7 @@ import { splitAt, tryFindIndex, forAll, sortBy, find, insertAt, mapIndexed, sing
|
|
|
10
10
|
import { Result_Map, FSharpResult$2_$union, FSharpResult$2_Error, FSharpResult$2_Ok } from "@fable-org/fable-library-js/Result.js";
|
|
11
11
|
import { List_distinct } from "@fable-org/fable-library-js/Seq2.js";
|
|
12
12
|
import { map as map_2, tryFind as tryFind_1 } from "@fable-org/fable-library-js/Seq.js";
|
|
13
|
+
import { FieldDetails$1 } from "./FormSpecValues.js";
|
|
13
14
|
import { FSharpMap__Change, ofList, toList, FSharpMap__get_Count, FSharpMap__get_IsEmpty, FSharpMap__ContainsKey, filter as filter_1, FSharpMap__Add, FSharpMap__Remove, FSharpMap, FSharpMap__get_Item, toSeq } from "@fable-org/fable-library-js/Map.js";
|
|
14
15
|
import { FSharpSet, empty as empty_1, map as map_3 } from "@fable-org/fable-library-js/Set.js";
|
|
15
16
|
|
|
@@ -382,7 +383,7 @@ export function Helpers_FormSpecMutators_updateFormFieldInFormSpecStep<UserField
|
|
|
382
383
|
else {
|
|
383
384
|
return s;
|
|
384
385
|
}
|
|
385
|
-
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
386
|
+
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
386
387
|
}
|
|
387
388
|
|
|
388
389
|
/**
|
|
@@ -396,7 +397,7 @@ export function Helpers_FormSpecMutators_updateFormStepInFormSpec<UserField>(for
|
|
|
396
397
|
else {
|
|
397
398
|
return s;
|
|
398
399
|
}
|
|
399
|
-
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
400
|
+
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
400
401
|
}
|
|
401
402
|
|
|
402
403
|
/**
|
|
@@ -411,7 +412,7 @@ export function Helpers_FormSpecMutators_addFormFieldToStep<UserField>(formStep:
|
|
|
411
412
|
else {
|
|
412
413
|
return s;
|
|
413
414
|
}
|
|
414
|
-
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
415
|
+
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
415
416
|
}
|
|
416
417
|
|
|
417
418
|
/**
|
|
@@ -420,19 +421,19 @@ export function Helpers_FormSpecMutators_addFormFieldToStep<UserField>(formStep:
|
|
|
420
421
|
export function Helpers_FormSpecMutators_removeFormFieldFromFormSpec<UserField>(formStepOrder: int32, formField: Spec_FormField$1<UserField>, formSpec: Spec_FormSpec$1<UserField>): Spec_FormSpec$1<UserField> {
|
|
421
422
|
return new Spec_FormSpec$1(formSpec.Id, formSpec.Code, formSpec.Title, formSpec.Abstract, formSpec.Version, formSpec.FormSpecVersion, map_1<Spec_FormStep$1<UserField>, Spec_FormStep$1<UserField>>((s: Spec_FormStep$1<UserField>): Spec_FormStep$1<UserField> => {
|
|
422
423
|
if (s.StepOrder === formStepOrder) {
|
|
423
|
-
return new Spec_FormStep$1(s.StepOrder, s.StepLabel, mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((i: int32, f_1: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(i + 1, f_1.FieldKey, f_1.Label, f_1.Notes, f_1.DependsOn, f_1.IsOptional, f_1.IsDeprecated, f_1.FieldType)), filter<Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): boolean => (f.FieldOrder !== formField.FieldOrder), s.Fields)));
|
|
424
|
+
return new Spec_FormStep$1(s.StepOrder, s.StepLabel, mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((i: int32, f_1: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(i + 1, f_1.FieldKey, f_1.Label, f_1.Notes, f_1.DependsOn, f_1.IsOptional, f_1.IsDeprecated, f_1.FieldType, f_1.Value)), filter<Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): boolean => (f.FieldOrder !== formField.FieldOrder), s.Fields)));
|
|
424
425
|
}
|
|
425
426
|
else {
|
|
426
427
|
return s;
|
|
427
428
|
}
|
|
428
|
-
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
429
|
+
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
429
430
|
}
|
|
430
431
|
|
|
431
432
|
/**
|
|
432
433
|
* Inserts a form field at a specific position within a step.
|
|
433
434
|
*/
|
|
434
435
|
export function Helpers_FormSpecMutators_insertFormFieldToStepAt<UserField>(formStep: Spec_FormStep$1<UserField>, newPositionFieldOrder: int32, fieldKey: Shared_FieldKey): FSharpList<Spec_FormField$1<UserField>> {
|
|
435
|
-
return mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((index_1: int32, f_1: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(index_1 + 1, f_1.FieldKey, f_1.Label, f_1.Notes, f_1.DependsOn, f_1.IsOptional, f_1.IsDeprecated, f_1.FieldType)), insertAt<Spec_FormField$1<UserField>>(newPositionFieldOrder - 1, find<Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): boolean => equals(f.FieldKey, fieldKey), formStep.Fields), formStep.Fields));
|
|
436
|
+
return mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((index_1: int32, f_1: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(index_1 + 1, f_1.FieldKey, f_1.Label, f_1.Notes, f_1.DependsOn, f_1.IsOptional, f_1.IsDeprecated, f_1.FieldType, f_1.Value)), insertAt<Spec_FormField$1<UserField>>(newPositionFieldOrder - 1, find<Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): boolean => equals(f.FieldKey, fieldKey), formStep.Fields), formStep.Fields));
|
|
436
437
|
}
|
|
437
438
|
|
|
438
439
|
/**
|
|
@@ -441,12 +442,12 @@ export function Helpers_FormSpecMutators_insertFormFieldToStepAt<UserField>(form
|
|
|
441
442
|
export function Helpers_FormSpecMutators_moveFormFieldUpInFormSpec<UserField>(formStepOrder: int32, formField: Spec_FormField$1<UserField>, formSpec: Spec_FormSpec$1<UserField>): Spec_FormSpec$1<UserField> {
|
|
442
443
|
return new Spec_FormSpec$1(formSpec.Id, formSpec.Code, formSpec.Title, formSpec.Abstract, formSpec.Version, formSpec.FormSpecVersion, map_1<Spec_FormStep$1<UserField>, Spec_FormStep$1<UserField>>((s: Spec_FormStep$1<UserField>): Spec_FormStep$1<UserField> => {
|
|
443
444
|
if (s.StepOrder === formStepOrder) {
|
|
444
|
-
return new Spec_FormStep$1(s.StepOrder, s.StepLabel, mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((index: int32, f_2: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(index + 1, f_2.FieldKey, f_2.Label, f_2.Notes, f_2.DependsOn, f_2.IsOptional, f_2.IsDeprecated, f_2.FieldType)), sortBy<Spec_FormField$1<UserField>, int32>((f_1: Spec_FormField$1<UserField>): int32 => f_1.FieldOrder, map_1<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => {
|
|
445
|
+
return new Spec_FormStep$1(s.StepOrder, s.StepLabel, mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((index: int32, f_2: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(index + 1, f_2.FieldKey, f_2.Label, f_2.Notes, f_2.DependsOn, f_2.IsOptional, f_2.IsDeprecated, f_2.FieldType, f_2.Value)), sortBy<Spec_FormField$1<UserField>, int32>((f_1: Spec_FormField$1<UserField>): int32 => f_1.FieldOrder, map_1<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => {
|
|
445
446
|
if (f.FieldOrder === formField.FieldOrder) {
|
|
446
|
-
return new Spec_FormField$1(formField.FieldOrder - 1, f.FieldKey, f.Label, f.Notes, f.DependsOn, f.IsOptional, f.IsDeprecated, f.FieldType);
|
|
447
|
+
return new Spec_FormField$1(formField.FieldOrder - 1, f.FieldKey, f.Label, f.Notes, f.DependsOn, f.IsOptional, f.IsDeprecated, f.FieldType, f.Value);
|
|
447
448
|
}
|
|
448
449
|
else if (f.FieldOrder === (formField.FieldOrder - 1)) {
|
|
449
|
-
return new Spec_FormField$1(formField.FieldOrder, f.FieldKey, f.Label, f.Notes, f.DependsOn, f.IsOptional, f.IsDeprecated, f.FieldType);
|
|
450
|
+
return new Spec_FormField$1(formField.FieldOrder, f.FieldKey, f.Label, f.Notes, f.DependsOn, f.IsOptional, f.IsDeprecated, f.FieldType, f.Value);
|
|
450
451
|
}
|
|
451
452
|
else {
|
|
452
453
|
return f;
|
|
@@ -458,7 +459,7 @@ export function Helpers_FormSpecMutators_moveFormFieldUpInFormSpec<UserField>(fo
|
|
|
458
459
|
else {
|
|
459
460
|
return s;
|
|
460
461
|
}
|
|
461
|
-
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
462
|
+
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
462
463
|
}
|
|
463
464
|
|
|
464
465
|
/**
|
|
@@ -467,12 +468,12 @@ export function Helpers_FormSpecMutators_moveFormFieldUpInFormSpec<UserField>(fo
|
|
|
467
468
|
export function Helpers_FormSpecMutators_moveFormFieldDownInFormSpec<UserField>(formStepOrder: int32, formField: Spec_FormField$1<UserField>, formSpec: Spec_FormSpec$1<UserField>): Spec_FormSpec$1<UserField> {
|
|
468
469
|
return new Spec_FormSpec$1(formSpec.Id, formSpec.Code, formSpec.Title, formSpec.Abstract, formSpec.Version, formSpec.FormSpecVersion, map_1<Spec_FormStep$1<UserField>, Spec_FormStep$1<UserField>>((s: Spec_FormStep$1<UserField>): Spec_FormStep$1<UserField> => {
|
|
469
470
|
if (s.StepOrder === formStepOrder) {
|
|
470
|
-
return new Spec_FormStep$1(s.StepOrder, s.StepLabel, mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((index: int32, f_2: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(index + 1, f_2.FieldKey, f_2.Label, f_2.Notes, f_2.DependsOn, f_2.IsOptional, f_2.IsDeprecated, f_2.FieldType)), sortBy<Spec_FormField$1<UserField>, int32>((f_1: Spec_FormField$1<UserField>): int32 => f_1.FieldOrder, map_1<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => {
|
|
471
|
+
return new Spec_FormStep$1(s.StepOrder, s.StepLabel, mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((index: int32, f_2: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(index + 1, f_2.FieldKey, f_2.Label, f_2.Notes, f_2.DependsOn, f_2.IsOptional, f_2.IsDeprecated, f_2.FieldType, f_2.Value)), sortBy<Spec_FormField$1<UserField>, int32>((f_1: Spec_FormField$1<UserField>): int32 => f_1.FieldOrder, map_1<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => {
|
|
471
472
|
if (f.FieldOrder === formField.FieldOrder) {
|
|
472
|
-
return new Spec_FormField$1(formField.FieldOrder + 1, f.FieldKey, f.Label, f.Notes, f.DependsOn, f.IsOptional, f.IsDeprecated, f.FieldType);
|
|
473
|
+
return new Spec_FormField$1(formField.FieldOrder + 1, f.FieldKey, f.Label, f.Notes, f.DependsOn, f.IsOptional, f.IsDeprecated, f.FieldType, f.Value);
|
|
473
474
|
}
|
|
474
475
|
else if (f.FieldOrder === (formField.FieldOrder + 1)) {
|
|
475
|
-
return new Spec_FormField$1(formField.FieldOrder, f.FieldKey, f.Label, f.Notes, f.DependsOn, f.IsOptional, f.IsDeprecated, f.FieldType);
|
|
476
|
+
return new Spec_FormField$1(formField.FieldOrder, f.FieldKey, f.Label, f.Notes, f.DependsOn, f.IsOptional, f.IsDeprecated, f.FieldType, f.Value);
|
|
476
477
|
}
|
|
477
478
|
else {
|
|
478
479
|
return f;
|
|
@@ -484,7 +485,7 @@ export function Helpers_FormSpecMutators_moveFormFieldDownInFormSpec<UserField>(
|
|
|
484
485
|
else {
|
|
485
486
|
return s;
|
|
486
487
|
}
|
|
487
|
-
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
488
|
+
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
488
489
|
}
|
|
489
490
|
|
|
490
491
|
/**
|
|
@@ -496,7 +497,7 @@ export function Helpers_FormSpecMutators_moveFieldByKeyToPositionInFormStepSpec<
|
|
|
496
497
|
const formStep_1: Spec_FormStep$1<UserField> = value_1(formStep);
|
|
497
498
|
return new Spec_FormSpec$1(formSpec.Id, formSpec.Code, formSpec.Title, formSpec.Abstract, formSpec.Version, formSpec.FormSpecVersion, map_1<Spec_FormStep$1<UserField>, Spec_FormStep$1<UserField>>((s: Spec_FormStep$1<UserField>): Spec_FormStep$1<UserField> => {
|
|
498
499
|
if (s.StepOrder === formStep_1.StepOrder) {
|
|
499
|
-
return new Spec_FormStep$1(s.StepOrder, s.StepLabel, mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((index_1: int32, f_1: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(index_1 + 1, f_1.FieldKey, f_1.Label, f_1.Notes, f_1.DependsOn, f_1.IsOptional, f_1.IsDeprecated, f_1.FieldType)), List_distinct<Spec_FormField$1<UserField>>(insertAt<Spec_FormField$1<UserField>>(newPositionFieldOrder - 1, find<Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): boolean => equals(f.FieldKey, fieldKey), s.Fields), s.Fields), {
|
|
500
|
+
return new Spec_FormStep$1(s.StepOrder, s.StepLabel, mapIndexed<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((index_1: int32, f_1: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1(index_1 + 1, f_1.FieldKey, f_1.Label, f_1.Notes, f_1.DependsOn, f_1.IsOptional, f_1.IsDeprecated, f_1.FieldType, f_1.Value)), List_distinct<Spec_FormField$1<UserField>>(insertAt<Spec_FormField$1<UserField>>(newPositionFieldOrder - 1, find<Spec_FormField$1<UserField>>((f: Spec_FormField$1<UserField>): boolean => equals(f.FieldKey, fieldKey), s.Fields), s.Fields), {
|
|
500
501
|
Equals: equals,
|
|
501
502
|
GetHashCode: safeHash,
|
|
502
503
|
})));
|
|
@@ -504,7 +505,7 @@ export function Helpers_FormSpecMutators_moveFieldByKeyToPositionInFormStepSpec<
|
|
|
504
505
|
else {
|
|
505
506
|
return s;
|
|
506
507
|
}
|
|
507
|
-
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
508
|
+
}, formSpec.Steps), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
508
509
|
}
|
|
509
510
|
else {
|
|
510
511
|
return formSpec;
|
|
@@ -527,7 +528,7 @@ export function Helpers_FormSpecMutators_moveFormStepUpInFormSpec<UserField>(for
|
|
|
527
528
|
}
|
|
528
529
|
}, formSpec.Steps), {
|
|
529
530
|
Compare: comparePrimitives,
|
|
530
|
-
})), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
531
|
+
})), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
531
532
|
}
|
|
532
533
|
|
|
533
534
|
/**
|
|
@@ -546,14 +547,14 @@ export function Helpers_FormSpecMutators_moveFormStepDownInFormSpec<UserField>(f
|
|
|
546
547
|
}
|
|
547
548
|
}, formSpec.Steps), {
|
|
548
549
|
Compare: comparePrimitives,
|
|
549
|
-
})), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
550
|
+
})), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
550
551
|
}
|
|
551
552
|
|
|
552
553
|
/**
|
|
553
554
|
* Removes a form step from a FormSpec.
|
|
554
555
|
*/
|
|
555
556
|
export function Helpers_FormSpecMutators_removeFormStepFromFormSpec<UserField>(formStepOrder: int32, formSpec: Spec_FormSpec$1<UserField>): Spec_FormSpec$1<UserField> {
|
|
556
|
-
return new Spec_FormSpec$1(formSpec.Id, formSpec.Code, formSpec.Title, formSpec.Abstract, formSpec.Version, formSpec.FormSpecVersion, mapIndexed<Spec_FormStep$1<UserField>, Spec_FormStep$1<UserField>>((i: int32, s_1: Spec_FormStep$1<UserField>): Spec_FormStep$1<UserField> => (new Spec_FormStep$1(i + 1, s_1.StepLabel, s_1.Fields)), filter<Spec_FormStep$1<UserField>>((s: Spec_FormStep$1<UserField>): boolean => (s.StepOrder !== formStepOrder), formSpec.Steps)), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
557
|
+
return new Spec_FormSpec$1(formSpec.Id, formSpec.Code, formSpec.Title, formSpec.Abstract, formSpec.Version, formSpec.FormSpecVersion, mapIndexed<Spec_FormStep$1<UserField>, Spec_FormStep$1<UserField>>((i: int32, s_1: Spec_FormStep$1<UserField>): Spec_FormStep$1<UserField> => (new Spec_FormStep$1(i + 1, s_1.StepLabel, s_1.Fields)), filter<Spec_FormStep$1<UserField>>((s: Spec_FormStep$1<UserField>): boolean => (s.StepOrder !== formStepOrder), formSpec.Steps)), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
557
558
|
}
|
|
558
559
|
|
|
559
560
|
/**
|
|
@@ -568,7 +569,7 @@ export function Helpers_FormSpecTransformers_flattenSpecSteps<UserField>(formSpe
|
|
|
568
569
|
if (!isEmpty(steps)) {
|
|
569
570
|
const step: Spec_FormStep$1<UserField> = head(steps);
|
|
570
571
|
steps_mut = tail(steps);
|
|
571
|
-
acc_mut = append(acc, map_1<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((field: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1((step.StepOrder * 1000) + field.FieldOrder, field.FieldKey, field.Label, field.Notes, field.DependsOn, field.IsOptional, field.IsDeprecated, field.FieldType)), step.Fields));
|
|
572
|
+
acc_mut = append(acc, map_1<Spec_FormField$1<UserField>, Spec_FormField$1<UserField>>((field: Spec_FormField$1<UserField>): Spec_FormField$1<UserField> => (new Spec_FormField$1((step.StepOrder * 1000) + field.FieldOrder, field.FieldKey, field.Label, field.Notes, field.DependsOn, field.IsOptional, field.IsDeprecated, field.FieldType, field.Value)), step.Fields));
|
|
572
573
|
continue flatten;
|
|
573
574
|
}
|
|
574
575
|
else {
|
|
@@ -577,7 +578,7 @@ export function Helpers_FormSpecTransformers_flattenSpecSteps<UserField>(formSpe
|
|
|
577
578
|
break;
|
|
578
579
|
}
|
|
579
580
|
};
|
|
580
|
-
return new Spec_FormSpec$1(formSpec.Id, formSpec.Code, formSpec.Title, formSpec.Abstract, formSpec.Version, formSpec.FormSpecVersion, singleton(new Spec_FormStep$1(1, "Complete Form", flatten(formSpec.Steps, empty<Spec_FormField$1<UserField>>()))), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway);
|
|
581
|
+
return new Spec_FormSpec$1(formSpec.Id, formSpec.Code, formSpec.Title, formSpec.Abstract, formSpec.Version, formSpec.FormSpecVersion, singleton(new Spec_FormStep$1(1, "Complete Form", flatten(formSpec.Steps, empty<Spec_FormField$1<UserField>>()))), formSpec.CategoryTags, formSpec.Score, formSpec.AssociatedCodes, formSpec.RequiresReview, formSpec.RequiresReviewAndApproval, formSpec.ClinicalPathway, formSpec.Lifecycle, formSpec.FilledMeta);
|
|
581
582
|
}
|
|
582
583
|
|
|
583
584
|
/**
|
|
@@ -595,7 +596,7 @@ export function Helpers_FormSpecValidators_hasClinicalPathway<UserField>(formSpe
|
|
|
595
596
|
}
|
|
596
597
|
|
|
597
598
|
export function Helpers_specFieldOptionsToValueOptions(options: FSharpList<Shared_FieldOption>): FSharpList<Shared_FieldOption> {
|
|
598
|
-
return map_1<Shared_FieldOption, Shared_FieldOption>((o: Shared_FieldOption): Shared_FieldOption => (new Shared_FieldOption(o.Description, o.Value, o.OptionKey)), options);
|
|
599
|
+
return map_1<Shared_FieldOption, Shared_FieldOption>((o: Shared_FieldOption): Shared_FieldOption => (new Shared_FieldOption(o.Description, o.Value, o.OptionKey, o.Score)), options);
|
|
599
600
|
}
|
|
600
601
|
|
|
601
602
|
export function Helpers_optionsFromSpecField(field: Spec_FormField$1<Spec_FieldType_$union>): FSharpList<Shared_FieldOption> {
|
|
@@ -624,8 +625,8 @@ export function Helpers_optionsFromSpecField(field: Spec_FormField$1<Spec_FieldT
|
|
|
624
625
|
}
|
|
625
626
|
}
|
|
626
627
|
|
|
627
|
-
export function Helpers_readValue<FieldType>(field: Spec_FormField$1<FieldType>, values: FSharpMap<Shared_FieldKey,
|
|
628
|
-
const matchValue: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, field.FieldKey), map_2<[Shared_FieldKey,
|
|
628
|
+
export function Helpers_readValue<FieldType>(field: Spec_FormField$1<FieldType>, values: FSharpMap<Shared_FieldKey, FieldDetails$1<FieldType>>): string {
|
|
629
|
+
const matchValue: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, field.FieldKey), map_2<[Shared_FieldKey, FieldDetails$1<FieldType>], Shared_FieldKey>((tuple: [Shared_FieldKey, FieldDetails$1<FieldType>]): Shared_FieldKey => tuple[0], toSeq<Shared_FieldKey, FieldDetails$1<FieldType>>(values)));
|
|
629
630
|
if (matchValue != null) {
|
|
630
631
|
const matchValue_1: Shared_FieldValue_$union = FSharpMap__get_Item(values, value_1(matchValue)).FieldValue;
|
|
631
632
|
if (matchValue_1.tag === /* Single */ 0) {
|
|
@@ -640,8 +641,8 @@ export function Helpers_readValue<FieldType>(field: Spec_FormField$1<FieldType>,
|
|
|
640
641
|
}
|
|
641
642
|
}
|
|
642
643
|
|
|
643
|
-
export function Helpers_readManyValue<FieldType>(fieldKey: Shared_FieldKey, values: FSharpMap<Shared_FieldKey,
|
|
644
|
-
const matchValue: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, fieldKey), map_2<[Shared_FieldKey,
|
|
644
|
+
export function Helpers_readManyValue<FieldType>(fieldKey: Shared_FieldKey, values: FSharpMap<Shared_FieldKey, FieldDetails$1<FieldType>>): FSharpSet<string> {
|
|
645
|
+
const matchValue: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, fieldKey), map_2<[Shared_FieldKey, FieldDetails$1<FieldType>], Shared_FieldKey>((tuple: [Shared_FieldKey, FieldDetails$1<FieldType>]): Shared_FieldKey => tuple[0], toSeq<Shared_FieldKey, FieldDetails$1<FieldType>>(values)));
|
|
645
646
|
if (matchValue != null) {
|
|
646
647
|
const matchValue_1: Shared_FieldValue_$union = FSharpMap__get_Item(values, value_1(matchValue)).FieldValue;
|
|
647
648
|
if (matchValue_1.tag === /* Multiple */ 1) {
|
|
@@ -662,14 +663,14 @@ export function Helpers_readManyValue<FieldType>(fieldKey: Shared_FieldKey, valu
|
|
|
662
663
|
}
|
|
663
664
|
}
|
|
664
665
|
|
|
665
|
-
export function Helpers_updateSingleFunc(formatter: ((arg0: string) => string), specField: Spec_FormField$1<Spec_FieldType_$union>, newValue: string, values: FSharpMap<Shared_FieldKey,
|
|
666
|
+
export function Helpers_updateSingleFunc(formatter: ((arg0: string) => string), specField: Spec_FormField$1<Spec_FieldType_$union>, newValue: string, values: FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>): FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>> {
|
|
666
667
|
let Value: string, matchValue: Option<Shared_FieldOption>;
|
|
667
668
|
const fieldOptions: FSharpList<Shared_FieldOption> = Helpers_optionsFromSpecField(specField);
|
|
668
|
-
const newFieldDetails:
|
|
669
|
-
const matchValue_1: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, newFieldDetails.Key), map_2<[Shared_FieldKey,
|
|
669
|
+
const newFieldDetails: FieldDetails$1<Spec_FieldType_$union> = new FieldDetails$1(specField.FieldOrder, specField.FieldKey, specField.Label, Shared_FieldValue_Single((Value = formatter(newValue), new Shared_FieldAnswer(specField.FieldKey, (matchValue = tryFind<Shared_FieldOption>((o: Shared_FieldOption): boolean => (o.Value === newValue), fieldOptions), (matchValue == null) ? newValue : value_1(matchValue).Description), Value))), specField.FieldType, Helpers_specFieldOptionsToValueOptions(fieldOptions));
|
|
670
|
+
const matchValue_1: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, newFieldDetails.Key), map_2<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>], Shared_FieldKey>((tuple: [Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]): Shared_FieldKey => tuple[0], toSeq<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>(values)));
|
|
670
671
|
if (matchValue_1 != null) {
|
|
671
672
|
const key: Shared_FieldKey = value_1(matchValue_1);
|
|
672
|
-
const f: FSharpMap<Shared_FieldKey,
|
|
673
|
+
const f: FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>> = FSharpMap__Remove(values, key);
|
|
673
674
|
return FSharpMap__Add(values, key, newFieldDetails);
|
|
674
675
|
}
|
|
675
676
|
else {
|
|
@@ -677,15 +678,15 @@ export function Helpers_updateSingleFunc(formatter: ((arg0: string) => string),
|
|
|
677
678
|
}
|
|
678
679
|
}
|
|
679
680
|
|
|
680
|
-
export function Helpers_updateManyFunc(formatter: ((arg0: string) => string), specField: Spec_FormField$1<Spec_FieldType_$union>, newValue: FSharpSet<string>, values: FSharpMap<Shared_FieldKey,
|
|
681
|
-
const newFieldDetails:
|
|
681
|
+
export function Helpers_updateManyFunc(formatter: ((arg0: string) => string), specField: Spec_FormField$1<Spec_FieldType_$union>, newValue: FSharpSet<string>, values: FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>): FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>> {
|
|
682
|
+
const newFieldDetails: FieldDetails$1<Spec_FieldType_$union> = new FieldDetails$1(specField.FieldOrder, specField.FieldKey, specField.Label, Shared_FieldValue_Multiple(map_3<string, Shared_FieldAnswer>((v: string): Shared_FieldAnswer => {
|
|
682
683
|
let matchValue: Option<Shared_FieldOption>;
|
|
683
684
|
const Value: string = formatter(v);
|
|
684
685
|
return new Shared_FieldAnswer(specField.FieldKey, (matchValue = tryFind<Shared_FieldOption>((o: Shared_FieldOption): boolean => (o.Value === v), Helpers_optionsFromSpecField(specField)), (matchValue == null) ? v : value_1(matchValue).Description), Value);
|
|
685
686
|
}, newValue, {
|
|
686
687
|
Compare: compare,
|
|
687
688
|
})), specField.FieldType, Helpers_specFieldOptionsToValueOptions(Helpers_optionsFromSpecField(specField)));
|
|
688
|
-
const matchValue_1: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, newFieldDetails.Key), map_2<[Shared_FieldKey,
|
|
689
|
+
const matchValue_1: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, newFieldDetails.Key), map_2<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>], Shared_FieldKey>((tuple: [Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]): Shared_FieldKey => tuple[0], toSeq<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>(values)));
|
|
689
690
|
if (matchValue_1 != null) {
|
|
690
691
|
const key: Shared_FieldKey = value_1(matchValue_1);
|
|
691
692
|
return FSharpMap__Add(FSharpMap__Remove(values, newFieldDetails.Key), newFieldDetails.Key, newFieldDetails);
|
|
@@ -697,13 +698,13 @@ export function Helpers_updateManyFunc(formatter: ((arg0: string) => string), sp
|
|
|
697
698
|
|
|
698
699
|
/**
|
|
699
700
|
* It adds OR updates a form field's value based on its type
|
|
700
|
-
* Returns the updated
|
|
701
|
+
* Returns the updated ResultStepValues
|
|
701
702
|
*/
|
|
702
|
-
export function Helpers_updateFormFieldValue(field: Spec_FormField$1<Spec_FieldType_$union>, newValue: any, values: FSharpMap<Shared_FieldKey,
|
|
703
|
-
const newFieldDetails:
|
|
703
|
+
export function Helpers_updateFormFieldValue(field: Spec_FormField$1<Spec_FieldType_$union>, newValue: any, values: FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>): FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>> {
|
|
704
|
+
const newFieldDetails: FieldDetails$1<Spec_FieldType_$union> = new FieldDetails$1(field.FieldOrder, field.FieldKey, field.Label, (() => {
|
|
704
705
|
throw new Error("updateFormFieldValue: Field type handling not implemented.");
|
|
705
706
|
})(), field.FieldType, Helpers_specFieldOptionsToValueOptions(Helpers_optionsFromSpecField(field)));
|
|
706
|
-
const matchValue_1: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, newFieldDetails.Key), map_2<[Shared_FieldKey,
|
|
707
|
+
const matchValue_1: Option<Shared_FieldKey> = tryFind_1<Shared_FieldKey>((k: Shared_FieldKey): boolean => equals(k, newFieldDetails.Key), map_2<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>], Shared_FieldKey>((tuple: [Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]): Shared_FieldKey => tuple[0], toSeq<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>(values)));
|
|
707
708
|
if (matchValue_1 != null) {
|
|
708
709
|
const key: Shared_FieldKey = value_1(matchValue_1);
|
|
709
710
|
return FSharpMap__Add(FSharpMap__Remove(values, key), key, newFieldDetails);
|
|
@@ -717,20 +718,20 @@ export function Helpers_updateFormFieldValue(field: Spec_FormField$1<Spec_FieldT
|
|
|
717
718
|
* Updates a form's values with a new field value
|
|
718
719
|
* Returns the updated form
|
|
719
720
|
*/
|
|
720
|
-
export function Helpers_updateFormValuesWithField<T>(fieldKeyAndValue_: Shared_FieldKey, fieldKeyAndValue__1:
|
|
721
|
-
let patternInput: [FSharpList<[Shared_FieldKey,
|
|
722
|
-
const fieldKeyAndValue = [fieldKeyAndValue_, fieldKeyAndValue__1] as [Shared_FieldKey,
|
|
721
|
+
export function Helpers_updateFormValuesWithField<T>(fieldKeyAndValue_: Shared_FieldKey, fieldKeyAndValue__1: FieldDetails$1<Spec_FieldType_$union>, form: T, getSteps: ((arg0: T) => FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>>), setSteps: ((arg0: FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>>, arg1: T) => T)): T {
|
|
722
|
+
let patternInput: [FSharpList<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]>, FSharpList<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]>];
|
|
723
|
+
const fieldKeyAndValue = [fieldKeyAndValue_, fieldKeyAndValue__1] as [Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>];
|
|
723
724
|
let stepOrderResult: FSharpResult$2_$union<Values_StepOrder, string>;
|
|
724
|
-
const filteredFormSteps: FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey,
|
|
725
|
-
stepOrderResult = (FSharpMap__get_IsEmpty(filteredFormSteps) ? FSharpResult$2_Error<Values_StepOrder, string>("No fields found") : ((FSharpMap__get_Count(filteredFormSteps) > 1) ? FSharpResult$2_Error<Values_StepOrder, string>("More than one field found") : FSharpResult$2_Ok<Values_StepOrder, string>(head<[Values_StepOrder, FSharpMap<Shared_FieldKey,
|
|
725
|
+
const filteredFormSteps: FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>> = filter_1<Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>>((_arg: Values_StepOrder, fieldValues: FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>): boolean => FSharpMap__ContainsKey(fieldValues, fieldKeyAndValue[0]), getSteps(form));
|
|
726
|
+
stepOrderResult = (FSharpMap__get_IsEmpty(filteredFormSteps) ? FSharpResult$2_Error<Values_StepOrder, string>("No fields found") : ((FSharpMap__get_Count(filteredFormSteps) > 1) ? FSharpResult$2_Error<Values_StepOrder, string>("More than one field found") : FSharpResult$2_Ok<Values_StepOrder, string>(head<[Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>]>(toList<Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>>(filteredFormSteps))[0])));
|
|
726
727
|
if (stepOrderResult.tag === /* Ok */ 0) {
|
|
727
728
|
const stepOrd: Values_StepOrder = stepOrderResult.fields[0];
|
|
728
|
-
const foundStepValues: FSharpList<[Shared_FieldKey,
|
|
729
|
-
const foundField: Option<int32> = tryFindIndex<[Shared_FieldKey,
|
|
730
|
-
const dynamicStepValues: FSharpMap<Shared_FieldKey,
|
|
729
|
+
const foundStepValues: FSharpList<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]> = toList<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>(FSharpMap__get_Item(getSteps(form), stepOrd));
|
|
730
|
+
const foundField: Option<int32> = tryFindIndex<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]>((tupledArg_1: [Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]): boolean => equals(tupledArg_1[0], fieldKeyAndValue[0]), foundStepValues);
|
|
731
|
+
const dynamicStepValues: FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>> = ofList<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>(append<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]>(singleton(fieldKeyAndValue), (foundField == null) ? foundStepValues : ((patternInput = splitAt<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]>(value_1(foundField), foundStepValues), append(patternInput[0], tail<[Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>]>(patternInput[1]))))), {
|
|
731
732
|
Compare: compare,
|
|
732
733
|
});
|
|
733
|
-
return setSteps(FSharpMap__Change(getSteps(form), stepOrd, (_arg_3: Option<FSharpMap<Shared_FieldKey,
|
|
734
|
+
return setSteps(FSharpMap__Change(getSteps(form), stepOrd, (_arg_3: Option<FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>>): Option<FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>> => dynamicStepValues), form);
|
|
734
735
|
}
|
|
735
736
|
else {
|
|
736
737
|
toConsole(`ERROR updating value: ${stepOrderResult.fields[0]}`);
|
|
@@ -742,10 +743,10 @@ export function Helpers_updateFormValuesWithField<T>(fieldKeyAndValue_: Shared_F
|
|
|
742
743
|
* Finds and updates a form field's value by its label string in a specific step
|
|
743
744
|
* Returns Ok with the updated form if successful, Error otherwise
|
|
744
745
|
*/
|
|
745
|
-
export function Helpers_findAndUpdateFormField<T>(label: string, stepNumber: int32, newValue: any, formSpec: Spec_FormSpec$1<Spec_FieldType_$union>, form: T, getSteps: ((arg0: T) => FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey,
|
|
746
|
+
export function Helpers_findAndUpdateFormField<T>(label: string, stepNumber: int32, newValue: any, formSpec: Spec_FormSpec$1<Spec_FieldType_$union>, form: T, getSteps: ((arg0: T) => FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>>), setSteps: ((arg0: FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>>, arg1: T) => T)): FSharpResult$2_$union<T, string> {
|
|
746
747
|
return Result_Map<[Spec_FormStep$1<Spec_FieldType_$union>, Spec_FormField$1<Spec_FieldType_$union>], T, string>((tupledArg: [Spec_FormStep$1<Spec_FieldType_$union>, Spec_FormField$1<Spec_FieldType_$union>]): T => {
|
|
747
748
|
const field: Spec_FormField$1<Spec_FieldType_$union> = tupledArg[1];
|
|
748
|
-
const fieldKeyAndValue = [field.FieldKey, FSharpMap__get_Item(Helpers_updateFormFieldValue(field, newValue, FSharpMap__get_Item(getSteps(form), new Values_StepOrder(tupledArg[0].StepOrder))), field.FieldKey)] as [Shared_FieldKey,
|
|
749
|
+
const fieldKeyAndValue = [field.FieldKey, FSharpMap__get_Item(Helpers_updateFormFieldValue(field, newValue, FSharpMap__get_Item(getSteps(form), new Values_StepOrder(tupledArg[0].StepOrder))), field.FieldKey)] as [Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>];
|
|
749
750
|
return Helpers_updateFormValuesWithField<T>(fieldKeyAndValue[0], fieldKeyAndValue[1], form, getSteps, setSteps);
|
|
750
751
|
}, Helpers_FieldFinders_findUniqueFormFieldInStepByLabelString<Spec_FieldType_$union>(label, stepNumber, formSpec));
|
|
751
752
|
}
|
|
@@ -754,10 +755,10 @@ export function Helpers_findAndUpdateFormField<T>(label: string, stepNumber: int
|
|
|
754
755
|
* Finds and updates a form field's value by its label string across all steps
|
|
755
756
|
* Returns Ok with the updated form if successful, Error otherwise
|
|
756
757
|
*/
|
|
757
|
-
export function Helpers_findAndUpdateFormFieldInAnyStep<T>(label: string, newValue: any, formSpec: Spec_FormSpec$1<Spec_FieldType_$union>, form: T, getSteps: ((arg0: T) => FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey,
|
|
758
|
+
export function Helpers_findAndUpdateFormFieldInAnyStep<T>(label: string, newValue: any, formSpec: Spec_FormSpec$1<Spec_FieldType_$union>, form: T, getSteps: ((arg0: T) => FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>>), setSteps: ((arg0: FSharpMap<Values_StepOrder, FSharpMap<Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>>>, arg1: T) => T)): FSharpResult$2_$union<T, string> {
|
|
758
759
|
return Result_Map<[Spec_FormStep$1<Spec_FieldType_$union>, Spec_FormField$1<Spec_FieldType_$union>], T, string>((tupledArg: [Spec_FormStep$1<Spec_FieldType_$union>, Spec_FormField$1<Spec_FieldType_$union>]): T => {
|
|
759
760
|
const field: Spec_FormField$1<Spec_FieldType_$union> = tupledArg[1];
|
|
760
|
-
const fieldKeyAndValue = [field.FieldKey, FSharpMap__get_Item(Helpers_updateFormFieldValue(field, newValue, FSharpMap__get_Item(getSteps(form), new Values_StepOrder(tupledArg[0].StepOrder))), field.FieldKey)] as [Shared_FieldKey,
|
|
761
|
+
const fieldKeyAndValue = [field.FieldKey, FSharpMap__get_Item(Helpers_updateFormFieldValue(field, newValue, FSharpMap__get_Item(getSteps(form), new Values_StepOrder(tupledArg[0].StepOrder))), field.FieldKey)] as [Shared_FieldKey, FieldDetails$1<Spec_FieldType_$union>];
|
|
761
762
|
return Helpers_updateFormValuesWithField<T>(fieldKeyAndValue[0], fieldKeyAndValue[1], form, getSteps, setSteps);
|
|
762
763
|
}, Helpers_FieldFinders_findUniqueFormFieldInFormByLabelString<Spec_FieldType_$union>(label, formSpec));
|
|
763
764
|
}
|