@f1studio/form-spec 5.0.0-alpha.140 → 5.0.0-alpha.142

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.
Files changed (105) hide show
  1. package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRElementTypeMap.d.ts +3 -2
  2. package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRElementTypeMap.d.ts.map +1 -1
  3. package/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFieldTypeMapper.d.ts.map +1 -1
  4. package/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.d.ts.map +1 -1
  5. package/FormSpec.FS/Integrations/OpenFda/OpenFdaTypes.d.ts +74 -0
  6. package/FormSpec.FS/Integrations/OpenFda/OpenFdaTypes.d.ts.map +1 -0
  7. package/FormSpec.TS/FormSpec.FS/BlueprintValidation.js.map +1 -1
  8. package/FormSpec.TS/FormSpec.FS/BlueprintValidation.ts.map +1 -1
  9. package/FormSpec.TS/FormSpec.FS/FormSpecHelpers.js.map +1 -1
  10. package/FormSpec.TS/FormSpec.FS/FormSpecHelpers.ts.map +1 -1
  11. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRElementTypeMap.js +36 -30
  12. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRElementTypeMap.js.map +1 -1
  13. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRElementTypeMap.ts.map +1 -1
  14. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFieldTypeMapper.js +4 -19
  15. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFieldTypeMapper.js.map +1 -1
  16. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFieldTypeMapper.ts.map +1 -1
  17. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTemplateToFormSpec.js.map +1 -1
  18. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRTemplateToFormSpec.ts.map +1 -1
  19. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.js +12 -2
  20. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.js.map +1 -1
  21. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.ts.map +1 -1
  22. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMRSourceMap.js.map +1 -1
  23. package/FormSpec.TS/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMRSourceMap.ts.map +1 -1
  24. package/FormSpec.TS/FormSpec.FS/Integrations/CorEMR/TemplateManifestDecoder.js.map +1 -1
  25. package/FormSpec.TS/FormSpec.FS/Integrations/CorEMR/TemplateManifestDecoder.ts.map +1 -1
  26. package/FormSpec.TS/FormSpec.FS/Integrations/OpenFda/OpenFdaTypes.js +282 -0
  27. package/FormSpec.TS/FormSpec.FS/Integrations/OpenFda/OpenFdaTypes.js.map +1 -0
  28. package/FormSpec.TS/FormSpec.FS/Integrations/OpenFda/OpenFdaTypes.ts.map +1 -0
  29. package/FormSpec.TS/FormSpec.FS/Interop/Facade/FormAnswersGate.js.map +1 -1
  30. package/FormSpec.TS/FormSpec.FS/Interop/Facade/FormAnswersGate.ts.map +1 -1
  31. package/FormSpec.TS/FormSpec.FS/Interop/FormSpec.Api.Helpers.js.map +1 -1
  32. package/FormSpec.TS/FormSpec.FS/Interop/FormSpec.Api.Helpers.ts.map +1 -1
  33. package/FormSpec.TS/FormSpec.FS/Interop/FormSpec.Api.Option.js.map +1 -1
  34. package/FormSpec.TS/FormSpec.FS/Interop/FormSpec.Api.Option.ts.map +1 -1
  35. package/FormSpec.TS/FormSpec.FS/Interop/FormSpec.Values.Api.Option.js.map +1 -1
  36. package/FormSpec.TS/FormSpec.FS/Interop/FormSpec.Values.Api.Option.ts.map +1 -1
  37. package/FormSpec.TS/FormSpec.FS/Migrator.js.map +1 -1
  38. package/FormSpec.TS/FormSpec.FS/Migrator.ts.map +1 -1
  39. package/FormSpec.TS/FormSpec.FS/PathwayExecutor.js.map +1 -1
  40. package/FormSpec.TS/FormSpec.FS/PathwayExecutor.ts.map +1 -1
  41. package/FormSpec.TS/PluginRegistration.js +2 -0
  42. package/FormSpec.TS/PluginRegistration.js.map +1 -1
  43. package/FormSpec.TS/PluginRegistration.ts.map +1 -1
  44. package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Decode.js +63 -69
  45. package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Decode.js.map +1 -1
  46. package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Decode.ts.map +1 -1
  47. package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Encode.js +6 -10
  48. package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Encode.js.map +1 -1
  49. package/FormSpec.TS/Thoth.Json/packages/Thoth.Json/Encode.ts.map +1 -1
  50. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/AsyncIterable.fs +57 -0
  51. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/AsyncIterable.fs.js +119 -0
  52. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/AsyncIterable.fs.js.map +1 -0
  53. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/AsyncIterable.fs.ts.map +1 -0
  54. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/Fable.Promise.fableproj +20 -0
  55. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/Promise.fs +766 -0
  56. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/Promise.fs.js +165 -0
  57. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/Promise.fs.js.map +1 -0
  58. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/Promise.fs.ts.map +1 -0
  59. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs +31 -0
  60. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.js +32 -0
  61. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.js.map +1 -0
  62. package/FormSpec.TS/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.ts.map +1 -0
  63. package/FormSpec.TS/fable_modules/Feliz.2.8.0/DateParsing.fs.js.map +1 -1
  64. package/FormSpec.TS/fable_modules/Feliz.2.8.0/DateParsing.fs.ts.map +1 -1
  65. package/FormSpec.TS/fable_modules/project_cracked.json +1 -1
  66. package/FormSpec.TS/plugins/allergyfinder/src/AllergyFinderField.js +2431 -0
  67. package/FormSpec.TS/plugins/allergyfinder/src/AllergyFinderField.js.map +1 -0
  68. package/FormSpec.TS/plugins/allergyfinder/src/AllergyFinderField.ts.map +1 -0
  69. package/FormSpec.TS/plugins/allergyfinder/src/OpenFdaClient.js +107 -0
  70. package/FormSpec.TS/plugins/allergyfinder/src/OpenFdaClient.js.map +1 -0
  71. package/FormSpec.TS/plugins/allergyfinder/src/OpenFdaClient.ts.map +1 -0
  72. package/FormSpec.TS/plugins/vitals/src/VitalsField.js +85 -364
  73. package/FormSpec.TS/plugins/vitals/src/VitalsField.js.map +1 -1
  74. package/FormSpec.TS/plugins/vitals/src/VitalsField.ts.map +1 -1
  75. package/FormSpec.TS/plugins/vitals/src/VitalsLogic.js +548 -0
  76. package/FormSpec.TS/plugins/vitals/src/VitalsLogic.js.map +1 -0
  77. package/FormSpec.TS/plugins/vitals/src/VitalsLogic.ts.map +1 -0
  78. package/README.md +7 -7
  79. package/Thoth.Json/packages/Thoth.Json/Decode.d.ts +2 -2
  80. package/Thoth.Json/packages/Thoth.Json/Decode.d.ts.map +1 -1
  81. package/Thoth.Json/packages/Thoth.Json/Encode.d.ts.map +1 -1
  82. package/fable_modules/Fable.Promise.3.2.0/Promise.fs.d.ts +112 -0
  83. package/fable_modules/Fable.Promise.3.2.0/Promise.fs.d.ts.map +1 -0
  84. package/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.d.ts +8 -0
  85. package/fable_modules/Fable.Promise.3.2.0/PromiseImpl.fs.d.ts.map +1 -0
  86. package/package.json +5 -1
  87. package/plugins/allergyfinder/src/AllergyFinderField.d.ts +116 -0
  88. package/plugins/allergyfinder/src/AllergyFinderField.d.ts.map +1 -0
  89. package/plugins/allergyfinder/src/OpenFdaClient.d.ts +5 -0
  90. package/plugins/allergyfinder/src/OpenFdaClient.d.ts.map +1 -0
  91. package/plugins/vitals/src/VitalsField.d.ts +4 -43
  92. package/plugins/vitals/src/VitalsField.d.ts.map +1 -1
  93. package/plugins/vitals/src/VitalsLogic.d.ts +78 -0
  94. package/plugins/vitals/src/VitalsLogic.d.ts.map +1 -0
  95. package/src/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRElementTypeMap.ts +35 -32
  96. package/src/FormSpec.FS/Integrations/Adapters/CorEMR/CorEMRFieldTypeMapper.ts +5 -22
  97. package/src/FormSpec.FS/Integrations/Adapters/CorEMR/CoreMREncoder.ts +13 -2
  98. package/src/FormSpec.FS/Integrations/OpenFda/OpenFdaTypes.ts +160 -0
  99. package/src/PluginRegistration.ts +2 -0
  100. package/src/Thoth.Json/packages/Thoth.Json/Decode.ts +38 -55
  101. package/src/Thoth.Json/packages/Thoth.Json/Encode.ts +10 -16
  102. package/src/plugins/allergyfinder/src/AllergyFinderField.ts +1341 -0
  103. package/src/plugins/allergyfinder/src/OpenFdaClient.ts +103 -0
  104. package/src/plugins/vitals/src/VitalsField.ts +78 -298
  105. package/src/plugins/vitals/src/VitalsLogic.ts +399 -0
@@ -0,0 +1,548 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get VitalPropertyValidation () {
13
+ return VitalPropertyValidation;
14
+ },
15
+ get VitalPropertyValidation_$reflection () {
16
+ return VitalPropertyValidation_$reflection;
17
+ },
18
+ get VitalsConfig () {
19
+ return VitalsConfig;
20
+ },
21
+ get VitalsConfig_$reflection () {
22
+ return VitalsConfig_$reflection;
23
+ },
24
+ get VitalsData () {
25
+ return VitalsData;
26
+ },
27
+ get VitalsData_$reflection () {
28
+ return VitalsData_$reflection;
29
+ },
30
+ get VitalsValidationResult () {
31
+ return VitalsValidationResult;
32
+ },
33
+ get VitalsValidationResult_$reflection () {
34
+ return VitalsValidationResult_$reflection;
35
+ },
36
+ get getVitalStatus () {
37
+ return getVitalStatus;
38
+ },
39
+ get isCriticalDiastolicBP () {
40
+ return isCriticalDiastolicBP;
41
+ },
42
+ get isCriticalOxygenSat () {
43
+ return isCriticalOxygenSat;
44
+ },
45
+ get isCriticalPulse () {
46
+ return isCriticalPulse;
47
+ },
48
+ get isCriticalRespiration () {
49
+ return isCriticalRespiration;
50
+ },
51
+ get isCriticalSystolicBP () {
52
+ return isCriticalSystolicBP;
53
+ },
54
+ get isCriticalTemperature () {
55
+ return isCriticalTemperature;
56
+ },
57
+ get isNormalTemperature () {
58
+ return isNormalTemperature;
59
+ },
60
+ get isValidDiastolicBP () {
61
+ return isValidDiastolicBP;
62
+ },
63
+ get isValidOxygenSat () {
64
+ return isValidOxygenSat;
65
+ },
66
+ get isValidPainScale () {
67
+ return isValidPainScale;
68
+ },
69
+ get isValidPulse () {
70
+ return isValidPulse;
71
+ },
72
+ get isValidRespiration () {
73
+ return isValidRespiration;
74
+ },
75
+ get isValidSystolicBP () {
76
+ return isValidSystolicBP;
77
+ },
78
+ get isValidTemperature () {
79
+ return isValidTemperature;
80
+ },
81
+ get parseVitalsData () {
82
+ return parseVitalsData;
83
+ },
84
+ get serializeVitalsData () {
85
+ return serializeVitalsData;
86
+ },
87
+ get validateVitalsData () {
88
+ return validateVitalsData;
89
+ },
90
+ get validateVitalsPluginData () {
91
+ return validateVitalsPluginData;
92
+ },
93
+ get validateVitalsProperty () {
94
+ return validateVitalsProperty;
95
+ }
96
+ });
97
+ const _Types = require("@fable-org/fable-library-js/Types.js");
98
+ const _Option = require("@fable-org/fable-library-js/Option.js");
99
+ const _Reflection = require("@fable-org/fable-library-js/Reflection.js");
100
+ const _String = require("@fable-org/fable-library-js/String.js");
101
+ const _Double = require("@fable-org/fable-library-js/Double.js");
102
+ const _Array = require("@fable-org/fable-library-js/Array.js");
103
+ const _List = require("@fable-org/fable-library-js/List.js");
104
+ class VitalsData extends _Types.Record {
105
+ constructor(Temperature, SystolicBP, DiastolicBP, Pulse, Respiration, OxygenSaturation, PainScale){
106
+ super();
107
+ this.Temperature = Temperature;
108
+ this.SystolicBP = SystolicBP;
109
+ this.DiastolicBP = DiastolicBP;
110
+ this.Pulse = Pulse;
111
+ this.Respiration = Respiration;
112
+ this.OxygenSaturation = OxygenSaturation;
113
+ this.PainScale = PainScale;
114
+ }
115
+ }
116
+ function VitalsData_$reflection() {
117
+ return (0, _Reflection.record_type)("Fable.Form.Simple.Bulma.Fields.VitalsField.VitalsLogic.VitalsData", [], VitalsData, ()=>[
118
+ [
119
+ "Temperature",
120
+ (0, _Reflection.option_type)(_Reflection.float64_type)
121
+ ],
122
+ [
123
+ "SystolicBP",
124
+ (0, _Reflection.option_type)(_Reflection.float64_type)
125
+ ],
126
+ [
127
+ "DiastolicBP",
128
+ (0, _Reflection.option_type)(_Reflection.float64_type)
129
+ ],
130
+ [
131
+ "Pulse",
132
+ (0, _Reflection.option_type)(_Reflection.float64_type)
133
+ ],
134
+ [
135
+ "Respiration",
136
+ (0, _Reflection.option_type)(_Reflection.float64_type)
137
+ ],
138
+ [
139
+ "OxygenSaturation",
140
+ (0, _Reflection.option_type)(_Reflection.float64_type)
141
+ ],
142
+ [
143
+ "PainScale",
144
+ (0, _Reflection.option_type)(_Reflection.float64_type)
145
+ ]
146
+ ]);
147
+ }
148
+ class VitalsConfig extends _Types.Record {
149
+ constructor(IncludeTemperature, IncludeBP, IncludePulse, IncludeRespiration, IncludeOxygenSat, IncludePainScale){
150
+ super();
151
+ this.IncludeTemperature = IncludeTemperature;
152
+ this.IncludeBP = IncludeBP;
153
+ this.IncludePulse = IncludePulse;
154
+ this.IncludeRespiration = IncludeRespiration;
155
+ this.IncludeOxygenSat = IncludeOxygenSat;
156
+ this.IncludePainScale = IncludePainScale;
157
+ }
158
+ }
159
+ function VitalsConfig_$reflection() {
160
+ return (0, _Reflection.record_type)("Fable.Form.Simple.Bulma.Fields.VitalsField.VitalsLogic.VitalsConfig", [], VitalsConfig, ()=>[
161
+ [
162
+ "IncludeTemperature",
163
+ _Reflection.bool_type
164
+ ],
165
+ [
166
+ "IncludeBP",
167
+ _Reflection.bool_type
168
+ ],
169
+ [
170
+ "IncludePulse",
171
+ _Reflection.bool_type
172
+ ],
173
+ [
174
+ "IncludeRespiration",
175
+ _Reflection.bool_type
176
+ ],
177
+ [
178
+ "IncludeOxygenSat",
179
+ _Reflection.bool_type
180
+ ],
181
+ [
182
+ "IncludePainScale",
183
+ _Reflection.bool_type
184
+ ]
185
+ ]);
186
+ }
187
+ function isValidTemperature(temp) {
188
+ if (temp >= 95) {
189
+ return temp <= 108;
190
+ } else {
191
+ return false;
192
+ }
193
+ }
194
+ function isValidSystolicBP(sys) {
195
+ if (sys >= 60) {
196
+ return sys <= 200;
197
+ } else {
198
+ return false;
199
+ }
200
+ }
201
+ function isValidDiastolicBP(dia) {
202
+ if (dia >= 40) {
203
+ return dia <= 120;
204
+ } else {
205
+ return false;
206
+ }
207
+ }
208
+ function isValidPulse(pulse) {
209
+ if (pulse >= 40) {
210
+ return pulse <= 180;
211
+ } else {
212
+ return false;
213
+ }
214
+ }
215
+ function isValidRespiration(resp) {
216
+ if (resp >= 8) {
217
+ return resp <= 35;
218
+ } else {
219
+ return false;
220
+ }
221
+ }
222
+ function isValidOxygenSat(sat) {
223
+ if (sat >= 70) {
224
+ return sat <= 100;
225
+ } else {
226
+ return false;
227
+ }
228
+ }
229
+ function isValidPainScale(pain) {
230
+ if (pain >= 0) {
231
+ return pain <= 10;
232
+ } else {
233
+ return false;
234
+ }
235
+ }
236
+ function isCriticalTemperature(temp) {
237
+ if (temp < 96) {
238
+ return true;
239
+ } else {
240
+ return temp > 104;
241
+ }
242
+ }
243
+ function isCriticalSystolicBP(sys) {
244
+ if (sys < 90) {
245
+ return true;
246
+ } else {
247
+ return sys > 180;
248
+ }
249
+ }
250
+ function isCriticalDiastolicBP(dia) {
251
+ if (dia < 60) {
252
+ return true;
253
+ } else {
254
+ return dia > 110;
255
+ }
256
+ }
257
+ function isCriticalPulse(pulse) {
258
+ if (pulse < 50) {
259
+ return true;
260
+ } else {
261
+ return pulse > 120;
262
+ }
263
+ }
264
+ function isCriticalRespiration(resp) {
265
+ if (resp < 12) {
266
+ return true;
267
+ } else {
268
+ return resp > 25;
269
+ }
270
+ }
271
+ function isCriticalOxygenSat(sat) {
272
+ return sat < 95;
273
+ }
274
+ function isNormalTemperature(temp) {
275
+ if (temp >= 97) {
276
+ return temp <= 99;
277
+ } else {
278
+ return false;
279
+ }
280
+ }
281
+ function parseVitalsData(value) {
282
+ try {
283
+ if ((0, _String.isNullOrWhiteSpace)(value)) {
284
+ return new VitalsData(undefined, undefined, undefined, undefined, undefined, undefined, undefined);
285
+ } else {
286
+ const parts = (0, _String.split)(value, [
287
+ "|"
288
+ ], undefined, 0);
289
+ const tryParseFloat = (s)=>{
290
+ if ((0, _String.isNullOrWhiteSpace)(s)) {
291
+ return undefined;
292
+ } else {
293
+ let matchValue;
294
+ let outArg = 0;
295
+ matchValue = [
296
+ (0, _Double.tryParse)(s, new _Types.FSharpRef(()=>outArg, (v)=>{
297
+ outArg = v;
298
+ })),
299
+ outArg
300
+ ];
301
+ if (matchValue[0]) {
302
+ return matchValue[1];
303
+ } else {
304
+ return undefined;
305
+ }
306
+ }
307
+ };
308
+ return new VitalsData(parts.length > 0 ? tryParseFloat((0, _Array.item)(0, parts)) : undefined, parts.length > 1 ? tryParseFloat((0, _Array.item)(1, parts)) : undefined, parts.length > 2 ? tryParseFloat((0, _Array.item)(2, parts)) : undefined, parts.length > 3 ? tryParseFloat((0, _Array.item)(3, parts)) : undefined, parts.length > 4 ? tryParseFloat((0, _Array.item)(4, parts)) : undefined, parts.length > 5 ? tryParseFloat((0, _Array.item)(5, parts)) : undefined, parts.length > 6 ? tryParseFloat((0, _Array.item)(6, parts)) : undefined);
309
+ }
310
+ } catch (matchValue_1) {
311
+ return new VitalsData(undefined, undefined, undefined, undefined, undefined, undefined, undefined);
312
+ }
313
+ }
314
+ function serializeVitalsData(vitalsData) {
315
+ const optToString = (opt)=>(0, _Option.defaultArg)((0, _Option.map)((value)=>value.toString(), opt), "");
316
+ return (0, _String.join)("|", [
317
+ optToString(vitalsData.Temperature),
318
+ optToString(vitalsData.SystolicBP),
319
+ optToString(vitalsData.DiastolicBP),
320
+ optToString(vitalsData.Pulse),
321
+ optToString(vitalsData.Respiration),
322
+ optToString(vitalsData.OxygenSaturation),
323
+ optToString(vitalsData.PainScale)
324
+ ]);
325
+ }
326
+ function getVitalStatus(value, isValid, isCritical, isNormal) {
327
+ let v_2;
328
+ if (value == null) {
329
+ return "empty";
330
+ } else if (isCritical((0, _Option.value)(value))) {
331
+ const v_3 = (0, _Option.value)(value);
332
+ return "critical";
333
+ } else if (!isValid((0, _Option.value)(value))) {
334
+ const v_4 = (0, _Option.value)(value);
335
+ return "abnormal";
336
+ } else if (v_2 = (0, _Option.value)(value), isNormal != null && !(0, _Option.value)(isNormal)(v_2)) {
337
+ const v_5 = (0, _Option.value)(value);
338
+ return "abnormal";
339
+ } else {
340
+ return "normal";
341
+ }
342
+ }
343
+ class VitalPropertyValidation extends _Types.Record {
344
+ constructor(PropertyName, DisplayName, Unit, Value, IsValid, ClinicalStatus, Message){
345
+ super();
346
+ this.PropertyName = PropertyName;
347
+ this.DisplayName = DisplayName;
348
+ this.Unit = Unit;
349
+ this.Value = Value;
350
+ this.IsValid = IsValid;
351
+ this.ClinicalStatus = ClinicalStatus;
352
+ this.Message = Message;
353
+ }
354
+ }
355
+ function VitalPropertyValidation_$reflection() {
356
+ return (0, _Reflection.record_type)("Fable.Form.Simple.Bulma.Fields.VitalsField.VitalsLogic.VitalPropertyValidation", [], VitalPropertyValidation, ()=>[
357
+ [
358
+ "PropertyName",
359
+ _Reflection.string_type
360
+ ],
361
+ [
362
+ "DisplayName",
363
+ _Reflection.string_type
364
+ ],
365
+ [
366
+ "Unit",
367
+ _Reflection.string_type
368
+ ],
369
+ [
370
+ "Value",
371
+ _Reflection.string_type
372
+ ],
373
+ [
374
+ "IsValid",
375
+ _Reflection.bool_type
376
+ ],
377
+ [
378
+ "ClinicalStatus",
379
+ _Reflection.string_type
380
+ ],
381
+ [
382
+ "Message",
383
+ _Reflection.string_type
384
+ ]
385
+ ]);
386
+ }
387
+ class VitalsValidationResult extends _Types.Record {
388
+ constructor(IsValid, HasCriticalValues, Properties){
389
+ super();
390
+ this.IsValid = IsValid;
391
+ this.HasCriticalValues = HasCriticalValues;
392
+ this.Properties = Properties;
393
+ }
394
+ }
395
+ function VitalsValidationResult_$reflection() {
396
+ return (0, _Reflection.record_type)("Fable.Form.Simple.Bulma.Fields.VitalsField.VitalsLogic.VitalsValidationResult", [], VitalsValidationResult, ()=>[
397
+ [
398
+ "IsValid",
399
+ _Reflection.bool_type
400
+ ],
401
+ [
402
+ "HasCriticalValues",
403
+ _Reflection.bool_type
404
+ ],
405
+ [
406
+ "Properties",
407
+ (0, _Reflection.array_type)(VitalPropertyValidation_$reflection())
408
+ ]
409
+ ]);
410
+ }
411
+ class VitalPropertyDef extends _Types.Record {
412
+ constructor(Name, DisplayName, Unit, IsValid, IsCritical, IsNormal, ValidRangeDescription){
413
+ super();
414
+ this.Name = Name;
415
+ this.DisplayName = DisplayName;
416
+ this.Unit = Unit;
417
+ this.IsValid = IsValid;
418
+ this.IsCritical = IsCritical;
419
+ this.IsNormal = IsNormal;
420
+ this.ValidRangeDescription = ValidRangeDescription;
421
+ }
422
+ }
423
+ function VitalPropertyDef_$reflection() {
424
+ return (0, _Reflection.record_type)("Fable.Form.Simple.Bulma.Fields.VitalsField.VitalsLogic.VitalPropertyDef", [], VitalPropertyDef, ()=>[
425
+ [
426
+ "Name",
427
+ _Reflection.string_type
428
+ ],
429
+ [
430
+ "DisplayName",
431
+ _Reflection.string_type
432
+ ],
433
+ [
434
+ "Unit",
435
+ _Reflection.string_type
436
+ ],
437
+ [
438
+ "IsValid",
439
+ (0, _Reflection.lambda_type)(_Reflection.float64_type, _Reflection.bool_type)
440
+ ],
441
+ [
442
+ "IsCritical",
443
+ (0, _Reflection.lambda_type)(_Reflection.float64_type, _Reflection.bool_type)
444
+ ],
445
+ [
446
+ "IsNormal",
447
+ (0, _Reflection.option_type)((0, _Reflection.lambda_type)(_Reflection.float64_type, _Reflection.bool_type))
448
+ ],
449
+ [
450
+ "ValidRangeDescription",
451
+ _Reflection.string_type
452
+ ]
453
+ ]);
454
+ }
455
+ const vitalPropertyDefs = [
456
+ new VitalPropertyDef("temperature", "Temperature", "°F", isValidTemperature, isCriticalTemperature, isNormalTemperature, "95–108°F"),
457
+ new VitalPropertyDef("systolic_bp", "Systolic BP", "mmHg", isValidSystolicBP, isCriticalSystolicBP, undefined, "60–200 mmHg"),
458
+ new VitalPropertyDef("diastolic_bp", "Diastolic BP", "mmHg", isValidDiastolicBP, isCriticalDiastolicBP, undefined, "40–120 mmHg"),
459
+ new VitalPropertyDef("pulse", "Pulse", "BPM", isValidPulse, isCriticalPulse, undefined, "40–180 BPM"),
460
+ new VitalPropertyDef("respiration", "Respiration", "RPM", isValidRespiration, isCriticalRespiration, undefined, "8–35 RPM"),
461
+ new VitalPropertyDef("oxygen_saturation", "O₂ Sat", "%", isValidOxygenSat, isCriticalOxygenSat, undefined, "70–100%"),
462
+ new VitalPropertyDef("pain_scale", "Pain", "/10", isValidPainScale, (_arg)=>false, undefined, "0–10")
463
+ ];
464
+ function validateVitalsProperty(propertyName, rawValue) {
465
+ const defOpt = (0, _Array.tryFind)((d)=>d.Name === propertyName, vitalPropertyDefs);
466
+ if (defOpt != null) {
467
+ const def = (0, _Option.value)(defOpt);
468
+ if ((0, _String.isNullOrWhiteSpace)(rawValue)) {
469
+ return new VitalPropertyValidation(def.Name, def.DisplayName, def.Unit, "", true, "empty", "");
470
+ } else {
471
+ let matchValue;
472
+ let outArg = 0;
473
+ matchValue = [
474
+ (0, _Double.tryParse)(rawValue, new _Types.FSharpRef(()=>outArg, (v)=>{
475
+ outArg = v;
476
+ })),
477
+ outArg
478
+ ];
479
+ if (matchValue[0]) {
480
+ const v_1 = matchValue[1];
481
+ if (!def.IsValid(v_1)) {
482
+ return new VitalPropertyValidation(def.Name, def.DisplayName, def.Unit, rawValue, false, "invalid", def.DisplayName + " must be " + def.ValidRangeDescription + ", got " + rawValue + def.Unit);
483
+ } else if (def.IsCritical(v_1)) {
484
+ return new VitalPropertyValidation(def.Name, def.DisplayName, def.Unit, rawValue, true, "critical", def.DisplayName + " " + rawValue + def.Unit + " — CRITICAL");
485
+ } else {
486
+ const status = getVitalStatus(v_1, def.IsValid, def.IsCritical, def.IsNormal);
487
+ return new VitalPropertyValidation(def.Name, def.DisplayName, def.Unit, rawValue, true, status, status === "abnormal" ? def.DisplayName + " " + rawValue + def.Unit + " — above normal" : "");
488
+ }
489
+ } else {
490
+ return new VitalPropertyValidation(def.Name, def.DisplayName, def.Unit, rawValue, false, "invalid", def.DisplayName + " must be a valid number");
491
+ }
492
+ }
493
+ } else {
494
+ return new VitalPropertyValidation(propertyName, propertyName, "", rawValue, false, "invalid", "Unknown vital sign property: " + propertyName);
495
+ }
496
+ }
497
+ function validateTypedValue(def, value) {
498
+ if (value != null) {
499
+ const v = (0, _Option.value)(value);
500
+ const rawValue = v.toString();
501
+ if (!def.IsValid(v)) {
502
+ return new VitalPropertyValidation(def.Name, def.DisplayName, def.Unit, rawValue, false, "invalid", def.DisplayName + " must be " + def.ValidRangeDescription + ", got " + rawValue + def.Unit);
503
+ } else if (def.IsCritical(v)) {
504
+ return new VitalPropertyValidation(def.Name, def.DisplayName, def.Unit, rawValue, true, "critical", def.DisplayName + " " + rawValue + def.Unit + " — CRITICAL");
505
+ } else {
506
+ const status = getVitalStatus(v, def.IsValid, def.IsCritical, def.IsNormal);
507
+ return new VitalPropertyValidation(def.Name, def.DisplayName, def.Unit, rawValue, true, status, status === "abnormal" ? def.DisplayName + " " + rawValue + def.Unit + " — above normal" : "");
508
+ }
509
+ } else {
510
+ return new VitalPropertyValidation(def.Name, def.DisplayName, def.Unit, "", true, "empty", "");
511
+ }
512
+ }
513
+ function validateVitalsData(data) {
514
+ const results = (0, _Array.map)((tupledArg)=>validateTypedValue(tupledArg[0], tupledArg[1]), (0, _Array.zip)(vitalPropertyDefs, [
515
+ data.Temperature,
516
+ data.SystolicBP,
517
+ data.DiastolicBP,
518
+ data.Pulse,
519
+ data.Respiration,
520
+ data.OxygenSaturation,
521
+ data.PainScale
522
+ ]));
523
+ return new VitalsValidationResult(results.every((r)=>r.IsValid), results.some((r_1)=>r_1.ClinicalStatus === "critical"), results);
524
+ }
525
+ function validateVitalsPluginData(properties) {
526
+ const getPropertyValue = (name)=>(0, _Option.bind)((p_1)=>{
527
+ if ((0, _String.isNullOrWhiteSpace)(p_1.Value)) {
528
+ return undefined;
529
+ } else {
530
+ let matchValue;
531
+ let outArg = 0;
532
+ matchValue = [
533
+ (0, _Double.tryParse)(p_1.Value, new _Types.FSharpRef(()=>outArg, (v)=>{
534
+ outArg = v;
535
+ })),
536
+ outArg
537
+ ];
538
+ if (matchValue[0]) {
539
+ return matchValue[1];
540
+ } else {
541
+ return undefined;
542
+ }
543
+ }
544
+ }, (0, _List.tryFind)((p)=>p.Name === name, properties));
545
+ return validateVitalsData(new VitalsData(getPropertyValue("temperature"), getPropertyValue("systolic_bp"), getPropertyValue("diastolic_bp"), getPropertyValue("pulse"), getPropertyValue("respiration"), getPropertyValue("oxygen_saturation"), getPropertyValue("pain_scale")));
546
+ } //# sourceMappingURL=VitalsLogic.ts.map
547
+
548
+ //# sourceMappingURL=VitalsLogic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../FormSpec.TS/plugins/vitals/src/VitalsLogic.ts"],"names":["temp","sys","dia","pulse","resp","sat","pain","value","parts","tryParseFloat","s","matchValue","outArg","optToString","opt","vitalsData","v","isCritical","isValid","isNormal","isValidTemperature","isCriticalTemperature","isNormalTemperature","isValidSystolicBP","isCriticalSystolicBP","isValidDiastolicBP","isCriticalDiastolicBP","isValidPulse","isCriticalPulse","isValidRespiration","isCriticalRespiration","isValidOxygenSat","isCriticalOxygenSat","isValidPainScale","defOpt","d","propertyName","vitalPropertyDefs","def","rawValue","status","getVitalStatus","results","validateTypedValue","tupledArg","data","array","r","getPropertyValue","p","name","properties","validateVitalsData"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../plugins/vitals/src/VitalsLogic.fs"],"names":["temp","sys","dia","pulse","resp","sat","pain","value","parts","tryParseFloat","s","matchValue","outArg","optToString","opt","vitalsData","v","isCritical","isValid","isNormal","isValidTemperature","isCriticalTemperature","isNormalTemperature","isValidSystolicBP","isCriticalSystolicBP","isValidDiastolicBP","isCriticalDiastolicBP","isValidPulse","isCriticalPulse","isValidRespiration","isCriticalRespiration","isValidOxygenSat","isCriticalOxygenSat","isValidPainScale","defOpt","d","propertyName","vitalPropertyDefs","def","rawValue","status","getVitalStatus","results","validateTypedValue","tupledArg","data","array","r","getPropertyValue","p","name","properties","validateVitalsData"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwC2C,QAAA,AAAAA,QAAQ;AAAQ,eAAA,AAAAA,QAAQ;;;eAAxB;;;;;AACF,QAAA,AAAAC,OAAO;AAAQ,eAAA,AAAAA,OAAO;;;eAAtB;;;;;AACC,QAAA,AAAAC,OAAO;AAAQ,eAAA,AAAAA,OAAO;;;eAAtB;;;;;AACJ,QAAA,AAAAC,SAAS;AAAQ,eAAA,AAAAA,SAAS;;;eAA1B;;;;;AACK,QAAA,AAAAC,QAAQ;AAAO,eAAA,AAAAA,QAAQ;;;eAAvB;;;;;AACH,QAAA,AAAAC,OAAO;AAAQ,eAAA,AAAAA,OAAO;;;eAAtB;;;;;AACC,QAAA,AAAAC,QAAQ;AAAO,eAAA,AAAAA,QAAQ;;;eAAvB;;;;;AAGK,QAAA,AAAAN,OAAO;eAAP;;;AAAe,eAAA,AAAAA,OAAO;;;;;AACxB,QAAA,AAAAC,MAAM;eAAN;;;AAAc,eAAA,AAAAA,MAAM;;;;;AACnB,QAAA,AAAAC,MAAM;eAAN;;;AAAc,eAAA,AAAAA,MAAM;;;;;AACxB,QAAA,AAAAC,QAAQ;eAAR;;;AAAgB,eAAA,AAAAA,QAAQ;;;;;AACnB,QAAA,AAAAC,OAAO;eAAP;;;AAAe,eAAA,AAAAA,OAAO;;;;;WACzB,AAAAC,MAAM;;;;AAGL,QAAA,AAAAL,QAAQ;AAAQ,eAAA,AAAAA,QAAQ;;;eAAxB;;;;;AAOpC;AACI,YAAG,mBAA0BO;AACzB,mBAAA,eACkB,WAAmB,WAAoB,WAC7C,WAAoB,WAAyB,WAAkB;;;AAGvEC,oCAAQ,MAAAD,QAAY,iBAAZ;AACRE;AACA,oBAAG,mBAA0BC;AAAQ,2BAAA;;;AAE3BC;AAAAC;AAAAD,mCAAA,SAAgBD,GAAhB,sCAAAE;AAAAA;yBAAAA;AAAA,wBAAA,AAAAD;AACS,\u002BBAAA,AAAAA;;;AACR,\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\u002BCAEG,iJAA\u002BB,AAAAC,mBAAf,AAAAC,cAAA,AAAAA,eADnB,uCAAUP,oBATV,AAAAQ,kBACA,AAAAA,iBACA,AAAAA,kBACA,AAAAA,YACA,AAAAA,kBACA,AAAAA,uBACA,AAAAA;AAKJ,WAAA,2BACyB,AAAAC,AAAXJ,uDAAkC,AAAAK,YACb,AAAAD,AAAXJ,yDAAkC,AAAAK,uBAAmB,cAC5DL;;;;;;;AAKbM,gEAGG;AACC,YAAG,mBAA0B,AAAAC;AAAc,mBAAA;;;AAEjCtC;AAAAC;AAAAD,2BAAA,SAAgB,AAAAsC,WAAhB,sCAAArC;AAAAA;iBAAAA;AAAA,gBAAA,AAAAD;AACS,uBAAA,AAAAA;;;AACR,uBAAA;;;OANZ,iFAAuB,AAAAsC,WAASC,OADnCC;AAiBJ,WAAA,AAAAC,mBATW,eACO,AAAAJ,iBAAiB,gBAClB,AAAAA,iBAAiB,gBAChB,AAAAA,iBAAiB,iBACvB,AAAAA,iBAAiB,UACX,AAAAA,iBAAiB,gBACZ,AAAAA,iBAAiB,sBACxB,AAAAA,iBAAiB","file":null,"sourcesContent":null,"sourceRoot":null}
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # FormSpec – Build & Publish
2
2
 
3
- **Version: `5.0.0-alpha.140`**
3
+ **Version: `5.0.0-alpha.142`**
4
4
 
5
5
  TypeScript package generated from F# via Fable. Runtime uses external `@fable-org/fable-library-js`.
6
6
 
@@ -63,17 +63,17 @@ Notes:
63
63
  ### From Verdaccio (local testing)
64
64
 
65
65
  ```bash
66
- npm install @f1studio/form-spec@5.0.0-alpha.140 --registry http://localhost:4873
67
- pnpm add @f1studio/form-spec@5.0.0-alpha.140 --registry http://localhost:4873
68
- bun add @f1studio/form-spec@5.0.0-alpha.140 --registry http://localhost:4873
66
+ npm install @f1studio/form-spec@5.0.0-alpha.142 --registry http://localhost:4873
67
+ pnpm add @f1studio/form-spec@5.0.0-alpha.142 --registry http://localhost:4873
68
+ bun add @f1studio/form-spec@5.0.0-alpha.142 --registry http://localhost:4873
69
69
  ```
70
70
 
71
71
  ### From npm (public registry)
72
72
 
73
73
  ```bash
74
- npm install @f1studio/form-spec@5.0.0-alpha.140
75
- pnpm add @f1studio/form-spec@5.0.0-alpha.140
76
- bun add @f1studio/form-spec@5.0.0-alpha.140
74
+ npm install @f1studio/form-spec@5.0.0-alpha.142
75
+ pnpm add @f1studio/form-spec@5.0.0-alpha.142
76
+ bun add @f1studio/form-spec@5.0.0-alpha.142
77
77
  ```
78
78
 
79
79
  Entry points:
@@ -34,8 +34,8 @@ export declare const int16: (path: string) => ((arg0: any) => FSharpResult$2_$un
34
34
  export declare const uint16: (path: string) => ((arg0: any) => FSharpResult$2_$union<uint16_1, [string, ErrorReason_$union]>);
35
35
  export declare const int: (path: string) => ((arg0: any) => FSharpResult$2_$union<int32, [string, ErrorReason_$union]>);
36
36
  export declare const uint32: (path: string) => ((arg0: any) => FSharpResult$2_$union<uint32_1, [string, ErrorReason_$union]>);
37
- export declare function int64(path: string, value_1: any): FSharpResult$2_$union<int64_1, [string, ErrorReason_$union]>;
38
- export declare function uint64(path: string, value_1: any): FSharpResult$2_$union<uint64_1, [string, ErrorReason_$union]>;
37
+ export declare const int64: (path: string) => ((arg0: any) => FSharpResult$2_$union<int64_1, [string, ErrorReason_$union]>);
38
+ export declare const uint64: (path: string) => ((arg0: any) => FSharpResult$2_$union<uint64_1, [string, ErrorReason_$union]>);
39
39
  export declare function bigint(path: string, value_1: any): FSharpResult$2_$union<bigint, [string, ErrorReason_$union]>;
40
40
  export declare function bool(path: string, value_1: any): FSharpResult$2_$union<boolean, [string, ErrorReason_$union]>;
41
41
  export declare function float(path: string, value_1: any): FSharpResult$2_$union<float64, [string, ErrorReason_$union]>;