@f1studio/form-spec 5.0.0-alpha.157 → 5.0.0-alpha.160
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.FS/BitmaskHelpers.js.map +1 -0
- package/FormSpec.FS/BlueprintValidation.js.map +1 -0
- package/FormSpec.FS/Components/HelloComponent.js.map +1 -0
- package/FormSpec.FS/Designer.js.map +1 -0
- package/FormSpec.FS/FormSpec.d.ts +56 -24
- package/FormSpec.FS/FormSpec.d.ts.map +1 -1
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/FormSpec.js +172 -12
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/FormSpec.js.map +1 -1
- package/FormSpec.FS/FormSpecHelpers.js.map +1 -0
- package/FormSpec.FS/FormSpecValues.js.map +1 -0
- package/FormSpec.FS/Helpers.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRAdapter.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRElementTypeMap.js.map +1 -0
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRFieldTypeMapper.js +2 -2
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFieldTypeMapper.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFormSpecValidator.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRSectioning.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRSemanticReportBuilder.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRStepsBuilder.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTemplateMapper.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTemplateToFormSpec.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTriggerConverter.d.ts.map +1 -1
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRTriggerConverter.js +5 -2
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTriggerConverter.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.d.ts +46 -5
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.d.ts.map +1 -1
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CoreMREncoder.js +354 -36
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMRSourceMap.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMRTriggerEnrichment.d.ts +19 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMRTriggerEnrichment.d.ts.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMRTriggerEnrichment.js +99 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMRTriggerEnrichment.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/CorEMR/FormSpecToCoreMRInsert.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/FormSystemAdapter.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/ReactHookForm/ReactHookFormAdapter.js.map +1 -0
- package/FormSpec.FS/Integrations/Adapters/ReactHookForm/ReactHookFormTypes.js.map +1 -0
- package/FormSpec.FS/Integrations/CorEMR/CoreMRTypes.js.map +1 -0
- package/FormSpec.FS/Integrations/CorEMR/ItemTriggerConverter.d.ts +1 -1
- package/FormSpec.FS/Integrations/CorEMR/ItemTriggerConverter.d.ts.map +1 -1
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/CorEMR/ItemTriggerConverter.js +18 -10
- package/FormSpec.FS/Integrations/CorEMR/ItemTriggerConverter.js.map +1 -0
- package/FormSpec.FS/Integrations/CorEMR/TemplateDecodeTypes.js.map +1 -0
- package/FormSpec.FS/Integrations/CorEMR/TemplateManifestDecoder.d.ts.map +1 -1
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/CorEMR/TemplateManifestDecoder.js +3 -63
- package/FormSpec.FS/Integrations/CorEMR/TemplateManifestDecoder.js.map +1 -0
- package/FormSpec.FS/Integrations/OpenFda/OpenFdaTypes.js.map +1 -0
- package/FormSpec.FS/Interfaces.js.map +1 -0
- package/FormSpec.FS/Interop/Facade/BlueprintFilledForm.js.map +1 -0
- package/FormSpec.FS/Interop/Facade/FormAnswersGate.js.map +1 -0
- package/FormSpec.FS/Interop/FormSpec.Api.Helpers.d.ts.map +1 -1
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Interop/FormSpec.Api.Helpers.js +31 -10
- package/FormSpec.FS/Interop/FormSpec.Api.Helpers.js.map +1 -0
- package/FormSpec.FS/Interop/FormSpec.Api.Option.js.map +1 -0
- package/FormSpec.FS/Interop/FormSpec.Values.Api.Option.js.map +1 -0
- package/FormSpec.FS/Logging/LogTypes.js.map +1 -0
- package/FormSpec.FS/Migrator.js.map +1 -0
- package/FormSpec.FS/PathwayDataExtractor.d.ts.map +1 -1
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/PathwayDataExtractor.js +67 -42
- package/FormSpec.FS/PathwayDataExtractor.js.map +1 -0
- package/FormSpec.FS/PathwayExecutor.d.ts.map +1 -1
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/PathwayExecutor.js +20 -6
- package/FormSpec.FS/PathwayExecutor.js.map +1 -0
- package/FormSpec.FS/PathwayValidator.js.map +1 -0
- package/FormSpec.FS/PluginInterface.js.map +1 -0
- package/FormSpec.FS/Prelude.js.map +1 -0
- package/FormSpec.FS/Provenance.js.map +1 -0
- package/FormSpec.FS/Renderers/FormSpecMarkdownRenderer.js.map +1 -0
- package/FormSpec.FS/Renderers/MermaidRenderer.js.map +1 -0
- package/FormSpec.FS/Renderers/PathwayRenderers.js.map +1 -0
- package/FormSpec.FS/TriggerActionDto.d.ts +26 -10
- package/FormSpec.FS/TriggerActionDto.d.ts.map +1 -1
- package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/TriggerActionDto.js +82 -17
- package/FormSpec.FS/TriggerActionDto.js.map +1 -0
- package/PathwayExecutor.withPlugins.js.map +1 -0
- package/PluginRegistration.js.map +1 -0
- package/README.md +7 -7
- package/Thoth.Json/packages/Thoth.Json/Decode.d.ts +2 -2
- package/Thoth.Json/packages/Thoth.Json/Decode.d.ts.map +1 -1
- package/{FormSpec.TS/Thoth.Json → Thoth.Json}/packages/Thoth.Json/Decode.js +69 -63
- package/Thoth.Json/packages/Thoth.Json/Decode.js.map +1 -0
- package/Thoth.Json/packages/Thoth.Json/Encode.d.ts.map +1 -1
- package/{FormSpec.TS/Thoth.Json → Thoth.Json}/packages/Thoth.Json/Encode.js +10 -6
- package/Thoth.Json/packages/Thoth.Json/Encode.js.map +1 -0
- package/Thoth.Json/packages/Thoth.Json/Extra.js.map +1 -0
- package/Thoth.Json/packages/Thoth.Json/Types.js.map +1 -0
- package/fable_modules/Fable.Form.3.0.0/Base.fs.js.map +1 -0
- package/fable_modules/Fable.Form.3.0.0/Error.fs.js.map +1 -0
- package/fable_modules/Fable.Form.3.0.0/Extensions.fs.js.map +1 -0
- package/fable_modules/Fable.Form.3.0.0/Field.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.5.0.1/Form.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/CheckboxField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/ColorField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/DateField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/DateTimeLocalField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/EmailField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/FileField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Form.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/FormList.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Group.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Html.View.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/InputField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/NumberField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/PasswordField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/RadioField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/SearchField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Section.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/SelectField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/TelField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/TextField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/TextareaField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/TimeField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Types.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/CheckboxField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/ColorField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/DateField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/DateTimeLocalField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/EmailField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/NumberField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/PasswordField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/RadioField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/RangeField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/SearchField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/SelectField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/TelField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/TextField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/TextareaField.fs.js.map +1 -0
- package/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/TimeField.fs.js.map +1 -0
- package/fable_modules/Fable.Promise.3.2.0/AsyncIterable.fs.js.map +1 -0
- package/fable_modules/Fable.Promise.3.2.0/Promise.fs.js.map +1 -0
- package/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.js.map +1 -0
- package/fable_modules/Fable.React.Types.18.3.0/Fable.React.Hooks.fs.js.map +1 -0
- package/fable_modules/Fable.React.Types.18.3.0/Fable.React.fs.js.map +1 -0
- package/fable_modules/Fable.ReactDom.Types.18.2.0/Fable.ReactDom.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/Colors.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/DateParsing.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/Helpers.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/Internal.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/Interop.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/Key.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/Properties.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/ReactDOM.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/ReactInterop.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/ReactTypes.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/StyleTypes.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/Svg.fs.js.map +1 -0
- package/fable_modules/Feliz.2.8.0/Types.fs.js.map +1 -0
- package/fable_modules/Feliz.Bulma.3.0.0/ElementBuilders.fs.js.map +1 -0
- package/fable_modules/Feliz.Bulma.3.0.0/Modifiers.fs.js.map +1 -0
- package/fable_modules/Feliz.Bulma.3.0.0/Operators.fs.js.map +1 -0
- package/fable_modules/Glutinum.Feliz.ReactSignaturePadWrapper.1.0.2/Types.fs.js.map +1 -0
- package/package.json +1 -1
- package/plugins/allergyfinder/src/AllergyFinderField.js.map +1 -0
- package/plugins/allergyfinder/src/AllergyLogic.js.map +1 -0
- package/plugins/allergyfinder/src/OpenFdaClient.js.map +1 -0
- package/plugins/bmi/src/BMIField.js.map +1 -0
- package/plugins/demographics/src/DemographicsField.js.map +1 -0
- package/plugins/likert/src/LikertField.js.map +1 -0
- package/plugins/signature/src/SignatureField.js.map +1 -0
- package/plugins/vitals/src/VitalsField.d.ts +2 -0
- package/plugins/vitals/src/VitalsField.d.ts.map +1 -1
- package/{FormSpec.TS/plugins → plugins}/vitals/src/VitalsField.js +283 -67
- package/plugins/vitals/src/VitalsField.js.map +1 -0
- package/plugins/vitals/src/VitalsLogic.d.ts +41 -4
- package/plugins/vitals/src/VitalsLogic.d.ts.map +1 -1
- package/{FormSpec.TS/plugins → plugins}/vitals/src/VitalsLogic.js +176 -11
- package/plugins/vitals/src/VitalsLogic.js.map +1 -0
- package/src/FormSpec.FS/FormSpec.ts +98 -26
- package/src/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFieldTypeMapper.ts +3 -3
- package/src/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTriggerConverter.ts +4 -4
- package/src/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.ts +334 -67
- package/src/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMRTriggerEnrichment.ts +105 -0
- package/src/FormSpec.FS/Integrations/CorEMR/ItemTriggerConverter.ts +18 -16
- package/src/FormSpec.FS/Integrations/CorEMR/TemplateManifestDecoder.ts +12 -86
- package/src/FormSpec.FS/Interop/FormSpec.Api.Helpers.ts +30 -11
- package/src/FormSpec.FS/PathwayDataExtractor.ts +65 -44
- package/src/FormSpec.FS/PathwayExecutor.ts +22 -10
- package/src/FormSpec.FS/TriggerActionDto.ts +64 -29
- package/src/Thoth.Json/packages/Thoth.Json/Decode.ts +55 -38
- package/src/Thoth.Json/packages/Thoth.Json/Encode.ts +16 -10
- package/src/plugins/vitals/src/VitalsField.ts +203 -65
- package/src/plugins/vitals/src/VitalsLogic.ts +140 -14
- package/FormSpec.TS/FormSpec.FS/BitmaskHelpers.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/BlueprintValidation.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Components/HelloComponent.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Designer.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/FormSpecHelpers.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/FormSpecValues.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Helpers.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRAdapter.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRElementTypeMap.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFieldTypeMapper.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFormSpecValidator.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRSectioning.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRSemanticReportBuilder.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRStepsBuilder.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTemplateMapper.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTemplateToFormSpec.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTriggerConverter.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMRSourceMap.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/FormSpecToCoreMRInsert.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/FormSystemAdapter.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/ReactHookForm/ReactHookFormAdapter.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/ReactHookForm/ReactHookFormTypes.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/CorEMR/CoreMRTypes.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/CorEMR/ItemTriggerConverter.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/CorEMR/TemplateDecodeTypes.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/CorEMR/TemplateManifestDecoder.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Integrations/OpenFda/OpenFdaTypes.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Interfaces.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Interop/Facade/BlueprintFilledForm.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Interop/Facade/FormAnswersGate.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Interop/FormSpec.Api.Helpers.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Interop/FormSpec.Api.Option.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Interop/FormSpec.Values.Api.Option.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Logging/LogTypes.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Migrator.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/PathwayDataExtractor.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/PathwayExecutor.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/PathwayValidator.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/PluginInterface.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Prelude.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Provenance.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Renderers/FormSpecMarkdownRenderer.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Renderers/MermaidRenderer.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/Renderers/PathwayRenderers.js.map +0 -1
- package/FormSpec.TS/FormSpec.FS/TriggerActionDto.js.map +0 -1
- package/FormSpec.TS/PathwayExecutor.withPlugins.js.map +0 -1
- package/FormSpec.TS/PluginRegistration.js.map +0 -1
- package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Decode.js.map +0 -1
- package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Encode.js.map +0 -1
- package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Extra.js.map +0 -1
- package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Types.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.3.0.0/Base.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.3.0.0/Error.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.3.0.0/Extensions.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.3.0.0/Field.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.5.0.1/Form.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/CheckboxField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/ColorField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/DateField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/DateTimeLocalField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/EmailField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/FileField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Form.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/FormList.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Group.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Html.View.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/InputField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/NumberField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/PasswordField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/RadioField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/SearchField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Section.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/SelectField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/TelField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/TextField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/TextareaField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/TimeField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Bulma.5.0.1/Types.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/CheckboxField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/ColorField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/DateField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/DateTimeLocalField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/EmailField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/NumberField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/PasswordField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/RadioField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/RangeField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/SearchField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/SelectField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/TelField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/TextField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/TextareaField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Form.Simple.Fields.Html.1.0.1/TimeField.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/AsyncIterable.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/Promise.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.React.Types.18.3.0/Fable.React.Hooks.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.React.Types.18.3.0/Fable.React.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Fable.ReactDom.Types.18.2.0/Fable.ReactDom.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/Colors.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/DateParsing.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/Helpers.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/Internal.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/Interop.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/Key.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/Properties.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/ReactDOM.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/ReactInterop.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/ReactTypes.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/StyleTypes.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/Svg.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.2.8.0/Types.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.Bulma.3.0.0/ElementBuilders.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.Bulma.3.0.0/Modifiers.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Feliz.Bulma.3.0.0/Operators.fs.js.map +0 -1
- package/FormSpec.TS/fable_modules/Glutinum.Feliz.ReactSignaturePadWrapper.1.0.2/Types.fs.js.map +0 -1
- package/FormSpec.TS/plugins/allergyfinder/src/AllergyFinderField.js.map +0 -1
- package/FormSpec.TS/plugins/allergyfinder/src/AllergyLogic.js.map +0 -1
- package/FormSpec.TS/plugins/allergyfinder/src/OpenFdaClient.js.map +0 -1
- package/FormSpec.TS/plugins/bmi/src/BMIField.js.map +0 -1
- package/FormSpec.TS/plugins/demographics/src/DemographicsField.js.map +0 -1
- package/FormSpec.TS/plugins/likert/src/LikertField.js.map +0 -1
- package/FormSpec.TS/plugins/signature/src/SignatureField.js.map +0 -1
- package/FormSpec.TS/plugins/vitals/src/VitalsField.js.map +0 -1
- package/FormSpec.TS/plugins/vitals/src/VitalsLogic.js.map +0 -1
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/BitmaskHelpers.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/BlueprintValidation.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Components/HelloComponent.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Designer.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/FormSpecHelpers.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/FormSpecValues.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Helpers.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRAdapter.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRElementTypeMap.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRFormSpecValidator.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRSectioning.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRSemanticReportBuilder.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRStepsBuilder.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRTemplateMapper.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CorEMRTemplateToFormSpec.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/CoreMRSourceMap.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/CorEMR/FormSpecToCoreMRInsert.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/FormSystemAdapter.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/ReactHookForm/ReactHookFormAdapter.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/Adapters/ReactHookForm/ReactHookFormTypes.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/CorEMR/CoreMRTypes.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/CorEMR/TemplateDecodeTypes.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Integrations/OpenFda/OpenFdaTypes.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Interfaces.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Interop/Facade/BlueprintFilledForm.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Interop/Facade/FormAnswersGate.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Interop/FormSpec.Api.Option.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Interop/FormSpec.Values.Api.Option.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Logging/LogTypes.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Migrator.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/PathwayValidator.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/PluginInterface.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Prelude.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Provenance.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Renderers/FormSpecMarkdownRenderer.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Renderers/MermaidRenderer.js +0 -0
- /package/{FormSpec.TS/FormSpec.FS → FormSpec.FS}/Renderers/PathwayRenderers.js +0 -0
- /package/{FormSpec.TS/PathwayExecutor.withPlugins.js → PathwayExecutor.withPlugins.js} +0 -0
- /package/{FormSpec.TS/PluginRegistration.js → PluginRegistration.js} +0 -0
- /package/{FormSpec.TS/Thoth.Json → Thoth.Json}/packages/Thoth.Json/Extra.js +0 -0
- /package/{FormSpec.TS/Thoth.Json → Thoth.Json}/packages/Thoth.Json/Types.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.3.0.0/Base.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.3.0.0/Error.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.3.0.0/Extensions.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.3.0.0/Field.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.5.0.1/Form.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/CheckboxField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/ColorField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/DateField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/DateTimeLocalField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/EmailField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/FileField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/Form.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/FormList.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/Group.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/Html.View.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/InputField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/NumberField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/PasswordField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/RadioField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/SearchField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/Section.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/SelectField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/TelField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/TextField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/TextareaField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/TimeField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Bulma.5.0.1/Types.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/CheckboxField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/ColorField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/DateField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/DateTimeLocalField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/EmailField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/NumberField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/PasswordField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/RadioField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/RangeField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/SearchField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/SelectField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/TelField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/TextField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/TextareaField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Form.Simple.Fields.Html.1.0.1/TimeField.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Promise.3.2.0/AsyncIterable.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Promise.3.2.0/Promise.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.Promise.3.2.0/PromiseImpl.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.React.Types.18.3.0/Fable.React.Hooks.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.React.Types.18.3.0/Fable.React.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Fable.ReactDom.Types.18.2.0/Fable.ReactDom.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/Colors.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/DateParsing.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/Helpers.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/Internal.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/Interop.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/Key.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/Properties.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/ReactDOM.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/ReactInterop.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/ReactTypes.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/StyleTypes.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/Svg.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.2.8.0/Types.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.Bulma.3.0.0/ElementBuilders.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.Bulma.3.0.0/Modifiers.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Feliz.Bulma.3.0.0/Operators.fs.js +0 -0
- /package/{FormSpec.TS/fable_modules → fable_modules}/Glutinum.Feliz.ReactSignaturePadWrapper.1.0.2/Types.fs.js +0 -0
- /package/{FormSpec.TS/plugins → plugins}/allergyfinder/src/AllergyFinderField.js +0 -0
- /package/{FormSpec.TS/plugins → plugins}/allergyfinder/src/AllergyLogic.js +0 -0
- /package/{FormSpec.TS/plugins → plugins}/allergyfinder/src/OpenFdaClient.js +0 -0
- /package/{FormSpec.TS/plugins → plugins}/bmi/src/BMIField.js +0 -0
- /package/{FormSpec.TS/plugins → plugins}/demographics/src/DemographicsField.js +0 -0
- /package/{FormSpec.TS/plugins → plugins}/likert/src/LikertField.js +0 -0
- /package/{FormSpec.TS/plugins → plugins}/signature/src/SignatureField.js +0 -0
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
import { FSharpRef, Record } from "@fable-org/fable-library-js/Types.js";
|
|
2
|
-
import { orElse, defaultArg,
|
|
2
|
+
import { map as map_1, bind, orElse, defaultArg, value as value_21, unwrap, Option } from "@fable-org/fable-library-js/Option.js";
|
|
3
3
|
import { int32, float64 } from "@fable-org/fable-library-js/Int32.js";
|
|
4
4
|
import { comparePrimitives, stringHash, uncurry2, IComparable, IEquatable } from "@fable-org/fable-library-js/Util.js";
|
|
5
|
-
import { record_type, option_type, float64_type, TypeInfo } from "@fable-org/fable-library-js/Reflection.js";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
5
|
+
import { list_type, int32_type, string_type, anonRecord_type, bool_type, record_type, option_type, float64_type, TypeInfo } from "@fable-org/fable-library-js/Reflection.js";
|
|
6
|
+
import { Auto_generateBoxedEncoder_437914C6, toString } from "../../../../Thoth.Json/packages/Thoth.Json/Encode.js";
|
|
7
|
+
import { ErrorReason_$union, CaseStrategy_CamelCase } from "../../../../Thoth.Json/packages/Thoth.Json/Types.js";
|
|
8
|
+
import { int, IOptionalGetter, IGetters, bool, string, object, list as list_16, int64, field as field_1, fromString } from "../../../../Thoth.Json/packages/Thoth.Json/Decode.js";
|
|
9
|
+
import { FSharpResult$2_Ok, FSharpResult$2_Error, FSharpResult$2_$union } from "@fable-org/fable-library-js/Result.js";
|
|
10
|
+
import { op_LeftShift, op_BitwiseOr, fromInt32, toInt64, int64 as int64_1 } from "@fable-org/fable-library-js/BigInt.js";
|
|
11
|
+
import { fold, contains, exists, tail, mapIndexed, tryHead, choose, singleton, tryFind, map, head, isEmpty, FSharpList, collect, filter, empty } from "@fable-org/fable-library-js/List.js";
|
|
12
|
+
import { Shared_MatrixItemKey, Shared_MatrixAnswer, Spec_MultiChoiceInfo, Spec_SingleChoiceInfo, Shared_FieldOption, Shared_FieldOptionKey, Shared_FieldKey, Shared_PluginDataProperty, Spec_FormSpec$1, Shared_FieldValue, Shared_FieldAnswer, Shared_FieldValue_$union, Spec_FormStep$1, Spec_FormField$1, Spec_PluginFieldConfig, Spec_FieldType_$union } from "../../../FormSpec.js";
|
|
13
|
+
import { split, isNullOrWhiteSpace, join } from "@fable-org/fable-library-js/String.js";
|
|
9
14
|
import { tryParse } from "@fable-org/fable-library-js/Double.js";
|
|
10
15
|
import { item } from "@fable-org/fable-library-js/Array.js";
|
|
11
|
-
import { Auto_generateBoxedDecoder_Z6670B51, fromString } from "../../../../Thoth.Json/packages/Thoth.Json/Decode.js";
|
|
16
|
+
import { Auto_generateBoxedDecoder_Z6670B51, fromString as fromString_1 } from "../../../../Thoth.Json/packages/Thoth.Json/Decode.js";
|
|
12
17
|
import { CoreMRStepMap, CoreMRMatrixItemAnchor, CoreMRChoiceAnchor, CoreMRFieldAnchor, CoreMRSourceMap, CoreMRSourceMap_$reflection } from "./CoreMRSourceMap.js";
|
|
13
|
-
import { FSharpResult$2_Ok, FSharpResult$2_Error, FSharpResult$2_$union } from "@fable-org/fable-library-js/Result.js";
|
|
14
|
-
import { Auto_generateBoxedEncoder_437914C6, toString } from "../../../../Thoth.Json/packages/Thoth.Json/Encode.js";
|
|
15
18
|
import { CoreMRAnswer, CoreMRFormInsertRequest, CoreMRFormInsertRequest_$reflection } from "./FormSpecToCoreMRInsert.js";
|
|
16
|
-
import { CaseStrategy_CamelCase } from "../../../../Thoth.Json/packages/Thoth.Json/Types.js";
|
|
17
19
|
import { Helpers_canonicalizeFieldKey } from "../../../Helpers.js";
|
|
18
|
-
import { op_LeftShift, op_BitwiseOr, int64, fromInt32, toInt64 } from "@fable-org/fable-library-js/BigInt.js";
|
|
19
20
|
import { toList, FSharpSet } from "@fable-org/fable-library-js/Set.js";
|
|
20
21
|
import { computeBitmask } from "../../../BitmaskHelpers.js";
|
|
21
22
|
import { FSharpMap, ofList, tryFind as tryFind_1 } from "@fable-org/fable-library-js/Map.js";
|
|
@@ -30,7 +31,9 @@ export class ExtractedVitals extends Record implements IEquatable<ExtractedVital
|
|
|
30
31
|
readonly RespiratoryRate: Option<float64>;
|
|
31
32
|
readonly Spo2: Option<float64>;
|
|
32
33
|
readonly PainScale: Option<float64>;
|
|
33
|
-
|
|
34
|
+
readonly Weight: Option<float64>;
|
|
35
|
+
readonly Height: Option<float64>;
|
|
36
|
+
constructor(Temperature: Option<float64>, SystolicBp: Option<float64>, DiastolicBp: Option<float64>, HeartRate: Option<float64>, RespiratoryRate: Option<float64>, Spo2: Option<float64>, PainScale: Option<float64>, Weight: Option<float64>, Height: Option<float64>) {
|
|
34
37
|
super();
|
|
35
38
|
this.Temperature = Temperature;
|
|
36
39
|
this.SystolicBp = SystolicBp;
|
|
@@ -39,11 +42,13 @@ export class ExtractedVitals extends Record implements IEquatable<ExtractedVital
|
|
|
39
42
|
this.RespiratoryRate = RespiratoryRate;
|
|
40
43
|
this.Spo2 = Spo2;
|
|
41
44
|
this.PainScale = PainScale;
|
|
45
|
+
this.Weight = Weight;
|
|
46
|
+
this.Height = Height;
|
|
42
47
|
}
|
|
43
48
|
}
|
|
44
49
|
|
|
45
50
|
export function ExtractedVitals_$reflection(): TypeInfo {
|
|
46
|
-
return record_type("FormSpec.Integrations.CorEMR.CoreMREncoder.ExtractedVitals", [], ExtractedVitals, () => [["Temperature", option_type(float64_type)], ["SystolicBp", option_type(float64_type)], ["DiastolicBp", option_type(float64_type)], ["HeartRate", option_type(float64_type)], ["RespiratoryRate", option_type(float64_type)], ["Spo2", option_type(float64_type)], ["PainScale", option_type(float64_type)]]);
|
|
51
|
+
return record_type("FormSpec.Integrations.CorEMR.CoreMREncoder.ExtractedVitals", [], ExtractedVitals, () => [["Temperature", option_type(float64_type)], ["SystolicBp", option_type(float64_type)], ["DiastolicBp", option_type(float64_type)], ["HeartRate", option_type(float64_type)], ["RespiratoryRate", option_type(float64_type)], ["Spo2", option_type(float64_type)], ["PainScale", option_type(float64_type)], ["Weight", option_type(float64_type)], ["Height", option_type(float64_type)]]);
|
|
47
52
|
}
|
|
48
53
|
|
|
49
54
|
/**
|
|
@@ -51,15 +56,216 @@ export function ExtractedVitals_$reflection(): TypeInfo {
|
|
|
51
56
|
* No Extra.* needed - using native Thoth.Json auto generation only
|
|
52
57
|
* 🩺 Convert extracted vitals to CoreMR bridge API format (camelCase)
|
|
53
58
|
*/
|
|
54
|
-
export function vitalsTobridge(vitals: ExtractedVitals): { diastolicBp?: float64, heartRate?: float64, respiratoryRate?: float64, spo2?: float64, systolicBp?: float64, temperature?: float64 } {
|
|
59
|
+
export function vitalsTobridge(vitals: ExtractedVitals): { bmi?: float64, diastolicBp?: float64, heartRate?: float64, height?: float64, respiratoryRate?: float64, spo2?: float64, systolicBp?: float64, temperature?: float64, weight?: float64 } {
|
|
60
|
+
let matchValue: Option<float64>, matchValue_1: Option<float64>, w: float64, h_1: float64, w_1: float64;
|
|
55
61
|
return {
|
|
62
|
+
bmi: unwrap((matchValue = vitals.Weight, (matchValue_1 = vitals.Height, (matchValue != null) ? ((matchValue_1 != null) ? (((w = value_21(matchValue), value_21(matchValue_1) > 0)) ? ((h_1 = value_21(matchValue_1), (w_1 = value_21(matchValue), (w_1 / (h_1 * h_1)) * 703))) : undefined) : undefined) : undefined))),
|
|
56
63
|
diastolicBp: unwrap(vitals.DiastolicBp),
|
|
57
64
|
heartRate: unwrap(vitals.HeartRate),
|
|
65
|
+
height: unwrap(vitals.Height),
|
|
58
66
|
respiratoryRate: unwrap(vitals.RespiratoryRate),
|
|
59
67
|
spo2: unwrap(vitals.Spo2),
|
|
60
68
|
systolicBp: unwrap(vitals.SystolicBp),
|
|
61
69
|
temperature: unwrap(vitals.Temperature),
|
|
70
|
+
weight: unwrap(vitals.Weight),
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Build the JSON request body for POST /vitals.
|
|
76
|
+
* Shared by Studio (Fable) and .NET tests — single source of truth for the payload shape.
|
|
77
|
+
*/
|
|
78
|
+
export function buildVitalsRequest(vitals: ExtractedVitals, dryRun: boolean): string {
|
|
79
|
+
const bridge: { bmi?: float64, diastolicBp?: float64, heartRate?: float64, height?: float64, respiratoryRate?: float64, spo2?: float64, systolicBp?: float64, temperature?: float64, weight?: float64 } = vitalsTobridge(vitals);
|
|
80
|
+
const payload: { bmi?: float64, diastolicBp?: float64, dryRun: boolean, heartRate?: float64, height?: float64, respiratoryRate?: float64, spo2?: float64, systolicBp?: float64, temperature?: float64, weight?: float64 } = {
|
|
81
|
+
bmi: unwrap(bridge.bmi),
|
|
82
|
+
diastolicBp: unwrap(bridge.diastolicBp),
|
|
83
|
+
dryRun: dryRun,
|
|
84
|
+
heartRate: unwrap(bridge.heartRate),
|
|
85
|
+
height: unwrap(bridge.height),
|
|
86
|
+
respiratoryRate: unwrap(bridge.respiratoryRate),
|
|
87
|
+
spo2: unwrap(bridge.spo2),
|
|
88
|
+
systolicBp: unwrap(bridge.systolicBp),
|
|
89
|
+
temperature: unwrap(bridge.temperature),
|
|
90
|
+
weight: unwrap(bridge.weight),
|
|
62
91
|
};
|
|
92
|
+
return toString(0, Auto_generateBoxedEncoder_437914C6(anonRecord_type(["bmi", option_type(float64_type)], ["diastolicBp", option_type(float64_type)], ["dryRun", bool_type], ["heartRate", option_type(float64_type)], ["height", option_type(float64_type)], ["respiratoryRate", option_type(float64_type)], ["spo2", option_type(float64_type)], ["systolicBp", option_type(float64_type)], ["temperature", option_type(float64_type)], ["weight", option_type(float64_type)]), CaseStrategy_CamelCase(), undefined, undefined)(payload));
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Parse the /vitals response to extract flow_vitals.id.
|
|
97
|
+
* Shared by Studio (Fable) and .NET tests — single source of truth for response parsing.
|
|
98
|
+
*/
|
|
99
|
+
export function parseVitalsResponse(responseBody: string): FSharpResult$2_$union<int64_1, string> {
|
|
100
|
+
const matchValue: FSharpResult$2_$union<int64_1, string> = fromString<int64_1>((path_1: string, value_1: any): FSharpResult$2_$union<int64_1, [string, ErrorReason_$union]> => field_1<int64_1>("id", int64, path_1, value_1), responseBody);
|
|
101
|
+
if (matchValue.tag === /* Error */ 1) {
|
|
102
|
+
return FSharpResult$2_Error<int64_1, string>(`Failed to parse vitals response id: ${matchValue.fields[0]}`);
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
return FSharpResult$2_Ok<int64_1, string>(matchValue.fields[0]);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
export class ExtractedAllergy extends Record implements IEquatable<ExtractedAllergy>, IComparable<ExtractedAllergy> {
|
|
110
|
+
readonly Name: string;
|
|
111
|
+
readonly Category: int32;
|
|
112
|
+
readonly Severity: Option<int32>;
|
|
113
|
+
readonly Reaction: Option<string>;
|
|
114
|
+
readonly Remedy: Option<string>;
|
|
115
|
+
readonly StaffOnly: boolean;
|
|
116
|
+
constructor(Name: string, Category: int32, Severity: Option<int32>, Reaction: Option<string>, Remedy: Option<string>, StaffOnly: boolean) {
|
|
117
|
+
super();
|
|
118
|
+
this.Name = Name;
|
|
119
|
+
this.Category = (Category | 0);
|
|
120
|
+
this.Severity = Severity;
|
|
121
|
+
this.Reaction = Reaction;
|
|
122
|
+
this.Remedy = Remedy;
|
|
123
|
+
this.StaffOnly = StaffOnly;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
export function ExtractedAllergy_$reflection(): TypeInfo {
|
|
128
|
+
return record_type("FormSpec.Integrations.CorEMR.CoreMREncoder.ExtractedAllergy", [], ExtractedAllergy, () => [["Name", string_type], ["Category", int32_type], ["Severity", option_type(int32_type)], ["Reaction", option_type(string_type)], ["Remedy", option_type(string_type)], ["StaffOnly", bool_type]]);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
function categoryToInt(cat: string): int32 {
|
|
132
|
+
const matchValue: string = cat.toLowerCase();
|
|
133
|
+
switch (matchValue) {
|
|
134
|
+
case "drug":
|
|
135
|
+
return 0;
|
|
136
|
+
case "food":
|
|
137
|
+
return 1;
|
|
138
|
+
case "environmental":
|
|
139
|
+
return 2;
|
|
140
|
+
case "custom":
|
|
141
|
+
return 3;
|
|
142
|
+
default:
|
|
143
|
+
return 0;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
function severityToInt(sev: string): Option<int32> {
|
|
148
|
+
const matchValue: string = sev.toLowerCase();
|
|
149
|
+
switch (matchValue) {
|
|
150
|
+
case "mild":
|
|
151
|
+
return 1;
|
|
152
|
+
case "moderate":
|
|
153
|
+
return 2;
|
|
154
|
+
case "severe":
|
|
155
|
+
return 3;
|
|
156
|
+
case "life_threatening":
|
|
157
|
+
return 4;
|
|
158
|
+
default:
|
|
159
|
+
return undefined;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Extract allergy entries from FormSpec (finds Type 140 allergy fields).
|
|
165
|
+
* Parses JSON from FieldValue.Single. Returns empty list if no allergies or unfilled.
|
|
166
|
+
*/
|
|
167
|
+
export function extractAllergiesFromFormSpec(spec: Spec_FormSpec$1<Spec_FieldType_$union>): FSharpList<ExtractedAllergy> {
|
|
168
|
+
try {
|
|
169
|
+
const allergyFields: FSharpList<Spec_FormField$1<Spec_FieldType_$union>> = filter<Spec_FormField$1<Spec_FieldType_$union>>((field: Spec_FormField$1<Spec_FieldType_$union>): boolean => {
|
|
170
|
+
const matchValue: Spec_FieldType_$union = field.FieldType;
|
|
171
|
+
let matchResult: int32, pf_1: Spec_PluginFieldConfig;
|
|
172
|
+
if (matchValue.tag === /* PluginField */ 23) {
|
|
173
|
+
if (matchValue.fields[0].PluginId === "Fable.Form.Simple.Bulma.Fields.AllergyFinderField") {
|
|
174
|
+
matchResult = 0;
|
|
175
|
+
pf_1 = matchValue.fields[0];
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
matchResult = 1;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
matchResult = 1;
|
|
183
|
+
}
|
|
184
|
+
switch (matchResult) {
|
|
185
|
+
case 0:
|
|
186
|
+
return true;
|
|
187
|
+
default:
|
|
188
|
+
return false;
|
|
189
|
+
}
|
|
190
|
+
}, collect<Spec_FormStep$1<Spec_FieldType_$union>, Spec_FormField$1<Spec_FieldType_$union>>((step: Spec_FormStep$1<Spec_FieldType_$union>): FSharpList<Spec_FormField$1<Spec_FieldType_$union>> => step.Fields, spec.Steps));
|
|
191
|
+
if (!isEmpty(allergyFields)) {
|
|
192
|
+
const matchValue_1: Option<Shared_FieldValue_$union> = head(allergyFields).Value;
|
|
193
|
+
let matchResult_1: int32, answer_1: Shared_FieldAnswer;
|
|
194
|
+
if (matchValue_1 != null) {
|
|
195
|
+
if (value_21(matchValue_1).tag === /* Single */ 0) {
|
|
196
|
+
if (!isNullOrWhiteSpace((value_21(matchValue_1) as Shared_FieldValue<0>).fields[0].Value)) {
|
|
197
|
+
matchResult_1 = 0;
|
|
198
|
+
answer_1 = (value_21(matchValue_1) as Shared_FieldValue<0>).fields[0];
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
matchResult_1 = 1;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
matchResult_1 = 1;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
matchResult_1 = 1;
|
|
210
|
+
}
|
|
211
|
+
switch (matchResult_1) {
|
|
212
|
+
case 0: {
|
|
213
|
+
const matchValue_2: FSharpResult$2_$union<FSharpList<ExtractedAllergy>, string> = fromString<FSharpList<ExtractedAllergy>>((path_15: string, value_20: any): FSharpResult$2_$union<FSharpList<ExtractedAllergy>, [string, ErrorReason_$union]> => list_16<ExtractedAllergy>((path_14: string, v: any): FSharpResult$2_$union<ExtractedAllergy, [string, ErrorReason_$union]> => object<ExtractedAllergy>((get$: IGetters): ExtractedAllergy => {
|
|
214
|
+
let objectArg: IOptionalGetter, objectArg_1: IOptionalGetter, objectArg_2: IOptionalGetter, objectArg_3: IOptionalGetter, objectArg_4: IOptionalGetter, objectArg_5: IOptionalGetter, objectArg_6: IOptionalGetter, objectArg_7: IOptionalGetter, objectArg_8: IOptionalGetter, objectArg_9: IOptionalGetter, objectArg_10: IOptionalGetter, objectArg_11: IOptionalGetter;
|
|
215
|
+
const name: string = defaultArg(orElse((objectArg = get$.Optional, objectArg.Field<string>("Name", string)), (objectArg_1 = get$.Optional, objectArg_1.Field<string>("name", string))), "");
|
|
216
|
+
const category: string = defaultArg(orElse((objectArg_2 = get$.Optional, objectArg_2.Field<string>("Category", string)), (objectArg_3 = get$.Optional, objectArg_3.Field<string>("category", string))), "drug");
|
|
217
|
+
const severity: string = defaultArg(orElse((objectArg_4 = get$.Optional, objectArg_4.Field<string>("Severity", string)), (objectArg_5 = get$.Optional, objectArg_5.Field<string>("severity", string))), "unknown");
|
|
218
|
+
const reactions: FSharpList<string> = defaultArg(orElse((objectArg_6 = get$.Optional, objectArg_6.Field<FSharpList<string>>("Reactions", (path_7: string, value_10: any): FSharpResult$2_$union<FSharpList<string>, [string, ErrorReason_$union]> => list_16<string>(string, path_7, value_10))), (objectArg_7 = get$.Optional, objectArg_7.Field<FSharpList<string>>("reactions", (path_9: string, value_12: any): FSharpResult$2_$union<FSharpList<string>, [string, ErrorReason_$union]> => list_16<string>(string, path_9, value_12)))), empty<string>());
|
|
219
|
+
const remedy: string = defaultArg(orElse((objectArg_8 = get$.Optional, objectArg_8.Field<string>("Remedy", string)), (objectArg_9 = get$.Optional, objectArg_9.Field<string>("remedy", string))), "");
|
|
220
|
+
const staffOnly: boolean = defaultArg(orElse((objectArg_10 = get$.Optional, objectArg_10.Field<boolean>("StaffOnly", bool)), (objectArg_11 = get$.Optional, objectArg_11.Field<boolean>("staffOnly", bool))), false);
|
|
221
|
+
return new ExtractedAllergy(name, categoryToInt(category), severityToInt(severity), isEmpty(reactions) ? undefined : join(", ", reactions), isNullOrWhiteSpace(remedy) ? undefined : remedy, staffOnly);
|
|
222
|
+
}, path_14, v), path_15, value_20), answer_1!.Value);
|
|
223
|
+
return (matchValue_2.tag === /* Error */ 1) ? empty<ExtractedAllergy>() : filter<ExtractedAllergy>((a: ExtractedAllergy): boolean => !isNullOrWhiteSpace(a.Name), matchValue_2.fields[0]);
|
|
224
|
+
}
|
|
225
|
+
default:
|
|
226
|
+
return empty<ExtractedAllergy>();
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
return empty<ExtractedAllergy>();
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
catch (matchValue_3: any) {
|
|
234
|
+
return empty<ExtractedAllergy>();
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Build the JSON request body for POST /allergies.
|
|
240
|
+
* Shared by Studio (Fable) and .NET tests — single source of truth for the payload shape.
|
|
241
|
+
*/
|
|
242
|
+
export function buildAllergiesRequest(allergies: FSharpList<ExtractedAllergy>, dryRun: boolean): string {
|
|
243
|
+
const payload: { allergies: FSharpList<{ category: int32, name: string, reaction?: string, remedy?: string, severity?: int32, staffOnly: boolean }>, dryRun: boolean } = {
|
|
244
|
+
allergies: map<ExtractedAllergy, { category: int32, name: string, reaction?: string, remedy?: string, severity?: int32, staffOnly: boolean }>((a: ExtractedAllergy): { category: int32, name: string, reaction?: string, remedy?: string, severity?: int32, staffOnly: boolean } => ({
|
|
245
|
+
category: a.Category,
|
|
246
|
+
name: a.Name,
|
|
247
|
+
reaction: unwrap(a.Reaction),
|
|
248
|
+
remedy: unwrap(a.Remedy),
|
|
249
|
+
severity: unwrap(a.Severity),
|
|
250
|
+
staffOnly: a.StaffOnly,
|
|
251
|
+
}), allergies),
|
|
252
|
+
dryRun: dryRun,
|
|
253
|
+
};
|
|
254
|
+
return toString(0, Auto_generateBoxedEncoder_437914C6(anonRecord_type(["allergies", list_type(anonRecord_type(["category", int32_type], ["name", string_type], ["reaction", option_type(string_type)], ["remedy", option_type(string_type)], ["severity", option_type(int32_type)], ["staffOnly", bool_type]))], ["dryRun", bool_type]), CaseStrategy_CamelCase(), undefined, undefined)(payload));
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Parse the /allergies response to extract created count.
|
|
259
|
+
* Shared by Studio (Fable) and .NET tests — single source of truth for response parsing.
|
|
260
|
+
*/
|
|
261
|
+
export function parseAllergiesResponse(responseBody: string): FSharpResult$2_$union<int32, string> {
|
|
262
|
+
const matchValue: FSharpResult$2_$union<int32, string> = fromString<int32>((path: string, value: any): FSharpResult$2_$union<int32, [string, ErrorReason_$union]> => field_1<int32>("count", uncurry2(int), path, value), responseBody);
|
|
263
|
+
if (matchValue.tag === /* Error */ 1) {
|
|
264
|
+
return FSharpResult$2_Error<int32, string>(`Failed to parse allergies response: ${matchValue.fields[0]}`);
|
|
265
|
+
}
|
|
266
|
+
else {
|
|
267
|
+
return FSharpResult$2_Ok<int32, string>(matchValue.fields[0]);
|
|
268
|
+
}
|
|
63
269
|
}
|
|
64
270
|
|
|
65
271
|
/**
|
|
@@ -94,15 +300,15 @@ export function extractVitalsFromFormSpec(spec: Spec_FormSpec$1<Spec_FieldType_$
|
|
|
94
300
|
const matchValue_1: Option<Shared_FieldValue_$union> = head(vitalsFields).Value;
|
|
95
301
|
let matchResult_1: int32, props: FSharpList<Shared_PluginDataProperty>, answer: Shared_FieldAnswer;
|
|
96
302
|
if (matchValue_1 != null) {
|
|
97
|
-
switch (
|
|
303
|
+
switch (value_21(matchValue_1).tag) {
|
|
98
304
|
case /* PluginData */ 3: {
|
|
99
305
|
matchResult_1 = 0;
|
|
100
|
-
props = (
|
|
306
|
+
props = (value_21(matchValue_1) as Shared_FieldValue<3>).fields[0];
|
|
101
307
|
break;
|
|
102
308
|
}
|
|
103
309
|
case /* Single */ 0: {
|
|
104
310
|
matchResult_1 = 1;
|
|
105
|
-
answer = (
|
|
311
|
+
answer = (value_21(matchValue_1) as Shared_FieldValue<0>).fields[0];
|
|
106
312
|
break;
|
|
107
313
|
}
|
|
108
314
|
default:
|
|
@@ -132,7 +338,28 @@ export function extractVitalsFromFormSpec(spec: Spec_FormSpec$1<Spec_FieldType_$
|
|
|
132
338
|
}
|
|
133
339
|
}
|
|
134
340
|
}, tryFind<Shared_PluginDataProperty>((p: Shared_PluginDataProperty): boolean => (p.Name === propertyName), props!));
|
|
135
|
-
|
|
341
|
+
const getStringProp = (name: string): Option<string> => map_1<Shared_PluginDataProperty, string>((p_3: Shared_PluginDataProperty): string => p_3.Value, tryFind<Shared_PluginDataProperty>((p_2: Shared_PluginDataProperty): boolean => (p_2.Name === name), props!));
|
|
342
|
+
const weightUnit: string = defaultArg(getStringProp("weight_unit"), "lbs");
|
|
343
|
+
const heightUnit: string = defaultArg(getStringProp("height_unit"), "in");
|
|
344
|
+
const rawWeight: Option<float64> = getVitalValue("weight");
|
|
345
|
+
const rawHeight: Option<float64> = getVitalValue("height");
|
|
346
|
+
const weightLbs: Option<float64> = map_1<float64, float64>((w: float64): float64 => {
|
|
347
|
+
if (weightUnit === "kg") {
|
|
348
|
+
return w * 2.20462;
|
|
349
|
+
}
|
|
350
|
+
else {
|
|
351
|
+
return w;
|
|
352
|
+
}
|
|
353
|
+
}, rawWeight);
|
|
354
|
+
const heightIn: Option<float64> = map_1<float64, float64>((h: float64): float64 => {
|
|
355
|
+
if (heightUnit === "cm") {
|
|
356
|
+
return h / 2.54;
|
|
357
|
+
}
|
|
358
|
+
else {
|
|
359
|
+
return h;
|
|
360
|
+
}
|
|
361
|
+
}, rawHeight);
|
|
362
|
+
return new ExtractedVitals(getVitalValue("temperature"), getVitalValue("systolic_bp"), getVitalValue("diastolic_bp"), getVitalValue("pulse"), getVitalValue("respiration"), getVitalValue("oxygen_saturation"), getVitalValue("pain_scale"), weightLbs, heightIn);
|
|
136
363
|
}
|
|
137
364
|
case 1: {
|
|
138
365
|
const parts: string[] = split(answer!.Value, ["|"], undefined, 0);
|
|
@@ -154,7 +381,29 @@ export function extractVitalsFromFormSpec(spec: Spec_FormSpec$1<Spec_FieldType_$
|
|
|
154
381
|
return undefined;
|
|
155
382
|
}
|
|
156
383
|
};
|
|
157
|
-
|
|
384
|
+
const isMetric: boolean = (parts.length > 9) && (item(9, parts).trim().toLowerCase() === "metric");
|
|
385
|
+
return new ExtractedVitals(map_1<float64, float64>((v_6: float64): float64 => {
|
|
386
|
+
if (isMetric) {
|
|
387
|
+
return ((v_6 * 9) / 5) + 32;
|
|
388
|
+
}
|
|
389
|
+
else {
|
|
390
|
+
return v_6;
|
|
391
|
+
}
|
|
392
|
+
}, parseAt(0)), parseAt(1), parseAt(2), parseAt(3), parseAt(4), parseAt(5), parseAt(6), map_1<float64, float64>((v_4: float64): float64 => {
|
|
393
|
+
if (isMetric) {
|
|
394
|
+
return v_4 * 2.20462;
|
|
395
|
+
}
|
|
396
|
+
else {
|
|
397
|
+
return v_4;
|
|
398
|
+
}
|
|
399
|
+
}, parseAt(7)), map_1<float64, float64>((v_5: float64): float64 => {
|
|
400
|
+
if (isMetric) {
|
|
401
|
+
return v_5 / 2.54;
|
|
402
|
+
}
|
|
403
|
+
else {
|
|
404
|
+
return v_5;
|
|
405
|
+
}
|
|
406
|
+
}, parseAt(8)));
|
|
158
407
|
}
|
|
159
408
|
default:
|
|
160
409
|
return undefined;
|
|
@@ -175,7 +424,7 @@ export function extractVitalsFromFormSpec(spec: Spec_FormSpec$1<Spec_FieldType_$
|
|
|
175
424
|
* Native Thoth.Json auto generation with full int64 support.
|
|
176
425
|
*/
|
|
177
426
|
export function tryDecodeSourceMap(payloadJson: string): FSharpResult$2_$union<CoreMRSourceMap, string> {
|
|
178
|
-
return
|
|
427
|
+
return fromString_1<CoreMRSourceMap>(uncurry2(Auto_generateBoxedDecoder_Z6670B51(CoreMRSourceMap_$reflection(), undefined, undefined)), payloadJson);
|
|
179
428
|
}
|
|
180
429
|
|
|
181
430
|
/**
|
|
@@ -204,9 +453,9 @@ function getFieldOptionKeyGuid(_arg: Shared_FieldOptionKey): string {
|
|
|
204
453
|
return _arg.fields[0];
|
|
205
454
|
}
|
|
206
455
|
|
|
207
|
-
function getScoreFromOption(options: FSharpList<Shared_FieldOption>, selectedValue: string): Option<
|
|
456
|
+
function getScoreFromOption(options: FSharpList<Shared_FieldOption>, selectedValue: string): Option<int64_1> {
|
|
208
457
|
const canonicalSelected: string = Helpers_canonicalizeFieldKey(selectedValue);
|
|
209
|
-
return bind<Shared_FieldOption,
|
|
458
|
+
return bind<Shared_FieldOption, int64_1>((opt_1: Shared_FieldOption): Option<int64_1> => map_1<int32, int64_1>((value: int32): int64_1 => toInt64(fromInt32(value)), opt_1.Score), tryFind<Shared_FieldOption>((opt: Shared_FieldOption): boolean => (Helpers_canonicalizeFieldKey(opt.Value) === canonicalSelected), options));
|
|
210
459
|
}
|
|
211
460
|
|
|
212
461
|
function supportsTextContent(anchor: CoreMRFieldAnchor): boolean {
|
|
@@ -279,26 +528,35 @@ function getOptionsFromFieldType(ft: Spec_FieldType_$union): FSharpList<Shared_F
|
|
|
279
528
|
}
|
|
280
529
|
}
|
|
281
530
|
|
|
282
|
-
function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsIdOpt: Option<
|
|
283
|
-
if (anchor.Encoding.IsSkip
|
|
531
|
+
function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsIdOpt: Option<int64_1>, anchor: CoreMRFieldAnchor): FSharpList<CoreMRAnswer> {
|
|
532
|
+
if (anchor.Encoding.IsSkip) {
|
|
533
|
+
return empty<CoreMRAnswer>();
|
|
534
|
+
}
|
|
535
|
+
else if (anchor.ItemTypeId === 130) {
|
|
536
|
+
if (vitalsIdOpt == null) {
|
|
537
|
+
return empty<CoreMRAnswer>();
|
|
538
|
+
}
|
|
539
|
+
else {
|
|
540
|
+
return singleton(new CoreMRAnswer(anchor.Sequence, value_21(vitalsIdOpt), undefined));
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
else if (anchor.Encoding.IsScaffold) {
|
|
284
544
|
return empty<CoreMRAnswer>();
|
|
285
545
|
}
|
|
286
546
|
else {
|
|
287
547
|
const matchValue: Option<Shared_FieldValue_$union> = field.Value;
|
|
288
548
|
if (matchValue != null) {
|
|
289
|
-
switch (
|
|
549
|
+
switch (value_21(matchValue).tag) {
|
|
290
550
|
case /* Multiple */ 1: {
|
|
291
|
-
const answers: FSharpSet<Shared_FieldAnswer> = (
|
|
551
|
+
const answers: FSharpSet<Shared_FieldAnswer> = (value_21(matchValue) as Shared_FieldValue<1>).fields[0];
|
|
292
552
|
const matchValue_3: int32 = anchor.ItemTypeId | 0;
|
|
293
553
|
switch (matchValue_3) {
|
|
294
|
-
case 20:
|
|
295
|
-
case 21:
|
|
296
554
|
case 26:
|
|
297
555
|
case 40:
|
|
298
556
|
case 41:
|
|
299
557
|
case 143: {
|
|
300
558
|
const options_1: FSharpList<Shared_FieldOption> = getOptionsFromFieldType(field.FieldType);
|
|
301
|
-
const choicesWithBitPos_1: FSharpList<[string, int32]> =
|
|
559
|
+
const choicesWithBitPos_1: FSharpList<[string, int32]> = map<CoreMRChoiceAnchor, [string, int32]>((c_3: CoreMRChoiceAnchor): [string, int32] => {
|
|
302
560
|
const bit_2: int32 = defaultArg(c_3.BitPosition, c_3.Sequence - 1) | 0;
|
|
303
561
|
return [getFieldOptionKeyGuid(c_3.FieldOptionKey), bit_2] as [string, int32];
|
|
304
562
|
}, anchor.Choices);
|
|
@@ -306,26 +564,26 @@ function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsId
|
|
|
306
564
|
throw new Error(`🚨 ItemTypeId ${anchor.ItemTypeId} multiple choice field ${anchor.FieldKey} has no choices`);
|
|
307
565
|
}
|
|
308
566
|
else {
|
|
309
|
-
return singleton(new CoreMRAnswer(anchor.Sequence, computeBitmask(choose<string, int32>((key: string): Option<int32> =>
|
|
567
|
+
return singleton(new CoreMRAnswer(anchor.Sequence, computeBitmask(choose<string, int32>((key: string): Option<int32> => map_1<[string, int32], int32>((tuple: [string, int32]): int32 => tuple[1], tryFind<[string, int32]>((tupledArg_1: [string, int32]): boolean => (tupledArg_1[0] === key), choicesWithBitPos_1)), choose<string, string>((valStr_1: string): Option<string> => map_1<Shared_FieldOption, string>((opt_4: Shared_FieldOption): string => getFieldOptionKeyGuid(opt_4.OptionKey), tryFind<Shared_FieldOption>((opt_3: Shared_FieldOption): boolean => (Helpers_canonicalizeFieldKey(opt_3.Value) === Helpers_canonicalizeFieldKey(valStr_1)), options_1)), map<Shared_FieldAnswer, string>((a: Shared_FieldAnswer): string => a.Value, toList<Shared_FieldAnswer>(answers))))), supportsOptionalNotes(anchor) ? bind<Shared_FieldAnswer, string>((fa: Shared_FieldAnswer): Option<string> => fa.Documentation, tryHead<Shared_FieldAnswer>(toList<Shared_FieldAnswer>(answers))) : undefined));
|
|
310
568
|
}
|
|
311
569
|
}
|
|
312
570
|
default:
|
|
313
|
-
throw new Error(`🚨 Multiple answers not supported for CoreMR ItemTypeId ${anchor.ItemTypeId} field ${anchor.FieldKey} - only bitmask types (
|
|
571
|
+
throw new Error(`🚨 Multiple answers not supported for CoreMR ItemTypeId ${anchor.ItemTypeId} field ${anchor.FieldKey} - only bitmask types (26,40,41,143) support multiple selection!`);
|
|
314
572
|
}
|
|
315
573
|
}
|
|
316
574
|
case /* Matrix */ 2: {
|
|
317
|
-
const matrixAnswer: Shared_MatrixAnswer = (
|
|
575
|
+
const matrixAnswer: Shared_MatrixAnswer = (value_21(matchValue) as Shared_FieldValue<2>).fields[0];
|
|
318
576
|
if (isEmpty(anchor.MatrixItemAnchors)) {
|
|
319
577
|
return empty<CoreMRAnswer>();
|
|
320
578
|
}
|
|
321
579
|
else {
|
|
322
580
|
const options_2: FSharpList<Shared_FieldOption> = getOptionsFromFieldType(field.FieldType);
|
|
323
581
|
const docForFirst: Option<string> = supportsOptionalNotes(anchor) ? matrixAnswer.Documentation : undefined;
|
|
324
|
-
return choose<Option<CoreMRAnswer>, CoreMRAnswer>((x_1: Option<CoreMRAnswer>): Option<CoreMRAnswer> => x_1, mapIndexed<CoreMRMatrixItemAnchor, Option<CoreMRAnswer>>((i: int32, rowAnchor: CoreMRMatrixItemAnchor): Option<CoreMRAnswer> =>
|
|
582
|
+
return choose<Option<CoreMRAnswer>, CoreMRAnswer>((x_1: Option<CoreMRAnswer>): Option<CoreMRAnswer> => x_1, mapIndexed<CoreMRMatrixItemAnchor, Option<CoreMRAnswer>>((i: int32, rowAnchor: CoreMRMatrixItemAnchor): Option<CoreMRAnswer> => map_1<string, CoreMRAnswer>((selectedValue_1: string): CoreMRAnswer => (new CoreMRAnswer(rowAnchor.Sequence, defaultArg(getScoreFromOption(options_2, selectedValue_1), 0n), (i === 0) ? docForFirst : undefined)), tryFind_1<Shared_MatrixItemKey, string>(rowAnchor.MatrixItemKey, matrixAnswer.Values)), anchor.MatrixItemAnchors));
|
|
325
583
|
}
|
|
326
584
|
}
|
|
327
585
|
case /* PluginData */ 3: {
|
|
328
|
-
const props: FSharpList<Shared_PluginDataProperty> = (
|
|
586
|
+
const props: FSharpList<Shared_PluginDataProperty> = (value_21(matchValue) as Shared_FieldValue<3>).fields[0];
|
|
329
587
|
let matchResult: int32, p_1: Shared_PluginDataProperty;
|
|
330
588
|
if (!isEmpty(props)) {
|
|
331
589
|
if (isEmpty(tail(props))) {
|
|
@@ -352,7 +610,7 @@ function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsId
|
|
|
352
610
|
}
|
|
353
611
|
}
|
|
354
612
|
default: {
|
|
355
|
-
const answer: Shared_FieldAnswer = (
|
|
613
|
+
const answer: Shared_FieldAnswer = (value_21(matchValue) as Shared_FieldValue<0>).fields[0];
|
|
356
614
|
const options: FSharpList<Shared_FieldOption> = getOptionsFromFieldType(field.FieldType);
|
|
357
615
|
const matchValue_2: int32 = anchor.ItemTypeId | 0;
|
|
358
616
|
switch (matchValue_2) {
|
|
@@ -361,11 +619,29 @@ function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsId
|
|
|
361
619
|
return singleton(new CoreMRAnswer(anchor.Sequence, 0n, supportsTextContent(anchor) ? answer.Value : undefined));
|
|
362
620
|
case 20:
|
|
363
621
|
case 21:
|
|
622
|
+
case 25:
|
|
623
|
+
case 32: {
|
|
624
|
+
const canonicalAnswer: string = Helpers_canonicalizeFieldKey(answer.Value);
|
|
625
|
+
const scoreOpt: Option<int64_1> = map_1<CoreMRChoiceAnchor, int64_1>((c_1: CoreMRChoiceAnchor): int64_1 => c_1.Score, tryFind<CoreMRChoiceAnchor>((c: CoreMRChoiceAnchor): boolean => exists<Shared_FieldOption>((opt: Shared_FieldOption): boolean => {
|
|
626
|
+
if (getFieldOptionKeyGuid(opt.OptionKey) === getFieldOptionKeyGuid(c.FieldOptionKey)) {
|
|
627
|
+
return Helpers_canonicalizeFieldKey(opt.Value) === canonicalAnswer;
|
|
628
|
+
}
|
|
629
|
+
else {
|
|
630
|
+
return false;
|
|
631
|
+
}
|
|
632
|
+
}, options), anchor.Choices));
|
|
633
|
+
if (scoreOpt == null) {
|
|
634
|
+
throw new Error(`🚨 No matching choice found for ItemTypeId ${anchor.ItemTypeId} field ${anchor.FieldKey} answer '${answer.Value}'`);
|
|
635
|
+
}
|
|
636
|
+
else {
|
|
637
|
+
return singleton(new CoreMRAnswer(anchor.Sequence, value_21(scoreOpt), supportsOptionalNotes(anchor) ? answer.Documentation : undefined));
|
|
638
|
+
}
|
|
639
|
+
}
|
|
364
640
|
case 26:
|
|
365
641
|
case 40:
|
|
366
642
|
case 41:
|
|
367
643
|
case 143: {
|
|
368
|
-
const choicesWithBitPos: FSharpList<[string, int32]> =
|
|
644
|
+
const choicesWithBitPos: FSharpList<[string, int32]> = map<CoreMRChoiceAnchor, [string, int32]>((c_2: CoreMRChoiceAnchor): [string, int32] => {
|
|
369
645
|
const bit: int32 = defaultArg(c_2.BitPosition, c_2.Sequence - 1) | 0;
|
|
370
646
|
return [getFieldOptionKeyGuid(c_2.FieldOptionKey), bit] as [string, int32];
|
|
371
647
|
}, anchor.Choices);
|
|
@@ -375,7 +651,7 @@ function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsId
|
|
|
375
651
|
else {
|
|
376
652
|
const selectedKeys: FSharpList<string> = choose<string, string>((selectedValue: string): Option<string> => {
|
|
377
653
|
const canonicalSelected: string = Helpers_canonicalizeFieldKey(selectedValue);
|
|
378
|
-
return
|
|
654
|
+
return map_1<Shared_FieldOption, string>((opt_2: Shared_FieldOption): string => getFieldOptionKeyGuid(opt_2.OptionKey), tryFind<Shared_FieldOption>((opt_1: Shared_FieldOption): boolean => (Helpers_canonicalizeFieldKey(opt_1.Value) === canonicalSelected), options));
|
|
379
655
|
}, singleton(answer.Value));
|
|
380
656
|
const bitPositions: FSharpList<int32> = choose<[string, int32], int32>((tupledArg: [string, int32]): Option<int32> => {
|
|
381
657
|
if (contains<string>(tupledArg[0], selectedKeys, {
|
|
@@ -391,25 +667,7 @@ function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsId
|
|
|
391
667
|
if (isEmpty(bitPositions)) {
|
|
392
668
|
throw new Error(`🚨 No matching bitmask choice found for ItemTypeId ${anchor.ItemTypeId} field ${anchor.FieldKey} answer '${answer.Value}'`);
|
|
393
669
|
}
|
|
394
|
-
return singleton(new CoreMRAnswer(anchor.Sequence, fold<int32,
|
|
395
|
-
}
|
|
396
|
-
}
|
|
397
|
-
case 25:
|
|
398
|
-
case 32: {
|
|
399
|
-
const canonicalAnswer: string = Helpers_canonicalizeFieldKey(answer.Value);
|
|
400
|
-
const scoreOpt: Option<int64> = map<CoreMRChoiceAnchor, int64>((c_1: CoreMRChoiceAnchor): int64 => c_1.Score, tryFind<CoreMRChoiceAnchor>((c: CoreMRChoiceAnchor): boolean => exists<Shared_FieldOption>((opt: Shared_FieldOption): boolean => {
|
|
401
|
-
if (getFieldOptionKeyGuid(opt.OptionKey) === getFieldOptionKeyGuid(c.FieldOptionKey)) {
|
|
402
|
-
return Helpers_canonicalizeFieldKey(opt.Value) === canonicalAnswer;
|
|
403
|
-
}
|
|
404
|
-
else {
|
|
405
|
-
return false;
|
|
406
|
-
}
|
|
407
|
-
}, options), anchor.Choices));
|
|
408
|
-
if (scoreOpt == null) {
|
|
409
|
-
throw new Error(`🚨 No matching choice found for ItemTypeId ${anchor.ItemTypeId} field ${anchor.FieldKey} answer '${answer.Value}'`);
|
|
410
|
-
}
|
|
411
|
-
else {
|
|
412
|
-
return singleton(new CoreMRAnswer(anchor.Sequence, value_3(scoreOpt), supportsOptionalNotes(anchor) ? answer.Documentation : undefined));
|
|
670
|
+
return singleton(new CoreMRAnswer(anchor.Sequence, fold<int32, int64_1>((acc: int64_1, bit_1: int32): int64_1 => toInt64(op_BitwiseOr(acc, toInt64(op_LeftShift(1n, bit_1)))), 0n, bitPositions), supportsOptionalNotes(anchor) ? answer.Documentation : undefined));
|
|
413
671
|
}
|
|
414
672
|
}
|
|
415
673
|
case 30:
|
|
@@ -435,7 +693,6 @@ function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsId
|
|
|
435
693
|
case 110:
|
|
436
694
|
case 120:
|
|
437
695
|
case 121:
|
|
438
|
-
case 130:
|
|
439
696
|
case 131:
|
|
440
697
|
case 132:
|
|
441
698
|
case 133:
|
|
@@ -458,14 +715,14 @@ function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsId
|
|
|
458
715
|
return empty<CoreMRAnswer>();
|
|
459
716
|
case 20:
|
|
460
717
|
case 21:
|
|
718
|
+
case 25:
|
|
719
|
+
case 32:
|
|
720
|
+
return empty<CoreMRAnswer>();
|
|
461
721
|
case 26:
|
|
462
722
|
case 40:
|
|
463
723
|
case 41:
|
|
464
724
|
case 143:
|
|
465
725
|
return empty<CoreMRAnswer>();
|
|
466
|
-
case 25:
|
|
467
|
-
case 32:
|
|
468
|
-
return empty<CoreMRAnswer>();
|
|
469
726
|
case 30:
|
|
470
727
|
case 31:
|
|
471
728
|
return singleton(new CoreMRAnswer(anchor.Sequence, 2n, undefined));
|
|
@@ -479,7 +736,6 @@ function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsId
|
|
|
479
736
|
case 110:
|
|
480
737
|
case 120:
|
|
481
738
|
case 121:
|
|
482
|
-
case 130:
|
|
483
739
|
case 131:
|
|
484
740
|
case 132:
|
|
485
741
|
case 133:
|
|
@@ -496,18 +752,29 @@ function fieldToAnswers(field: Spec_FormField$1<Spec_FieldType_$union>, vitalsId
|
|
|
496
752
|
}
|
|
497
753
|
|
|
498
754
|
function buildFieldByKeyMap(spec: Spec_FormSpec$1<Spec_FieldType_$union>): FSharpMap<string, Spec_FormField$1<Spec_FieldType_$union>> {
|
|
499
|
-
return ofList<string, Spec_FormField$1<Spec_FieldType_$union>>(
|
|
755
|
+
return ofList<string, Spec_FormField$1<Spec_FieldType_$union>>(map<Spec_FormField$1<Spec_FieldType_$union>, [string, Spec_FormField$1<Spec_FieldType_$union>]>((f: Spec_FormField$1<Spec_FieldType_$union>): [string, Spec_FormField$1<Spec_FieldType_$union>] => ([getFieldKeyGuid(f.FieldKey), f] as [string, Spec_FormField$1<Spec_FieldType_$union>]), collect<Spec_FormStep$1<Spec_FieldType_$union>, Spec_FormField$1<Spec_FieldType_$union>>((step: Spec_FormStep$1<Spec_FieldType_$union>): FSharpList<Spec_FormField$1<Spec_FieldType_$union>> => step.Fields, spec.Steps)), {
|
|
500
756
|
Compare: comparePrimitives,
|
|
501
757
|
});
|
|
502
758
|
}
|
|
503
759
|
|
|
504
|
-
function anchorToAnswers(fieldMap: FSharpMap<string, Spec_FormField$1<Spec_FieldType_$union>>, vitalsIdOpt: Option<
|
|
760
|
+
function anchorToAnswers(fieldMap: FSharpMap<string, Spec_FormField$1<Spec_FieldType_$union>>, vitalsIdOpt: Option<int64_1>, anchor: CoreMRFieldAnchor): FSharpList<CoreMRAnswer> {
|
|
505
761
|
const field: Option<Spec_FormField$1<Spec_FieldType_$union>> = tryFind_1<string, Spec_FormField$1<Spec_FieldType_$union>>(getFieldKeyGuid(anchor.FieldKey), fieldMap);
|
|
506
|
-
if (anchor.Encoding.IsSkip
|
|
762
|
+
if (anchor.Encoding.IsSkip) {
|
|
763
|
+
return empty<CoreMRAnswer>();
|
|
764
|
+
}
|
|
765
|
+
else if (anchor.ItemTypeId === 130) {
|
|
766
|
+
if (vitalsIdOpt == null) {
|
|
767
|
+
return empty<CoreMRAnswer>();
|
|
768
|
+
}
|
|
769
|
+
else {
|
|
770
|
+
return singleton(new CoreMRAnswer(anchor.Sequence, value_21(vitalsIdOpt), undefined));
|
|
771
|
+
}
|
|
772
|
+
}
|
|
773
|
+
else if (anchor.Encoding.IsScaffold) {
|
|
507
774
|
return empty<CoreMRAnswer>();
|
|
508
775
|
}
|
|
509
776
|
else if (field != null) {
|
|
510
|
-
return fieldToAnswers(
|
|
777
|
+
return fieldToAnswers(value_21(field), vitalsIdOpt, anchor);
|
|
511
778
|
}
|
|
512
779
|
else {
|
|
513
780
|
const matchValue: string = anchor.Encoding.ValueEncoding;
|
|
@@ -534,7 +801,7 @@ function anchorToAnswers(fieldMap: FSharpMap<string, Spec_FormField$1<Spec_Field
|
|
|
534
801
|
* Uses provided flow_vitals.id for Type 130 vitals fields.
|
|
535
802
|
* This is the NEW smart coordination function that handles vitals references.
|
|
536
803
|
*/
|
|
537
|
-
export function encodeToFormAnswersWithVitals(provenancePayload: string, filledFormSpec: Spec_FormSpec$1<Spec_FieldType_$union>, vitalsIdOpt: Option<
|
|
804
|
+
export function encodeToFormAnswersWithVitals(provenancePayload: string, filledFormSpec: Spec_FormSpec$1<Spec_FieldType_$union>, vitalsIdOpt: Option<int64_1>, scaffoldMode: boolean, dryRun: boolean): FSharpResult$2_$union<CoreMRFormInsertRequest, string> {
|
|
538
805
|
let msg: string, acc: FSharpList<CoreMRAnswer>;
|
|
539
806
|
const matchValue: FSharpResult$2_$union<CoreMRSourceMap, string> = tryDecodeSourceMap(provenancePayload);
|
|
540
807
|
if (matchValue.tag === /* Ok */ 0) {
|
|
@@ -546,7 +813,7 @@ export function encodeToFormAnswersWithVitals(provenancePayload: string, filledF
|
|
|
546
813
|
}
|
|
547
814
|
catch (matchValue_1: any) {
|
|
548
815
|
const activePatternResult: Option<string> = Operators_FailurePattern(matchValue_1);
|
|
549
|
-
return (activePatternResult != null) ? ((msg =
|
|
816
|
+
return (activePatternResult != null) ? ((msg = value_21(activePatternResult), FSharpResult$2_Error<CoreMRFormInsertRequest, string>(`CoreMR encoding failed: ${msg}`))) : FSharpResult$2_Error<CoreMRFormInsertRequest, string>(`Unexpected error during CoreMR encoding: ${matchValue_1.message}`);
|
|
550
817
|
}
|
|
551
818
|
}
|
|
552
819
|
else {
|
|
@@ -594,7 +861,7 @@ export function encodeToFormAnswers(provenancePayload: string, filledFormSpec: S
|
|
|
594
861
|
}
|
|
595
862
|
catch (matchValue_1: any) {
|
|
596
863
|
const activePatternResult: Option<string> = Operators_FailurePattern(matchValue_1);
|
|
597
|
-
return (activePatternResult != null) ? ((msg =
|
|
864
|
+
return (activePatternResult != null) ? ((msg = value_21(activePatternResult), FSharpResult$2_Error<CoreMRFormInsertRequest, string>(`CoreMR encoding failed: ${msg}`))) : FSharpResult$2_Error<CoreMRFormInsertRequest, string>(`Unexpected error during CoreMR encoding: ${matchValue_1.message}`);
|
|
598
865
|
}
|
|
599
866
|
}
|
|
600
867
|
}
|