formbuilder-lhcforms 10.3.1 → 10.3.2
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/dist/formbuilder-lhcforms/assets/items-layout.json5 +3 -1
- package/dist/formbuilder-lhcforms/assets/ngx-item.schema.json5 +213 -10
- package/dist/formbuilder-lhcforms/assets/version.json +1 -1
- package/dist/formbuilder-lhcforms/index.html +1 -1
- package/dist/formbuilder-lhcforms/{main.34b919b259c754e8.js → main.0db1cf46e84a9e1a.js} +1 -1
- package/dist/formbuilder-lhcforms/tests/window-open-test.html +117 -0
- package/package.json +1 -1
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
{ "field": "__$answerOptionMethods", "col": 12 },
|
|
18
18
|
{ "field": "answerValueSet", "col": 12 },
|
|
19
19
|
{ "field": "answerOption", "title": "Answer choices", "col": 12 },
|
|
20
|
+
{ "field": "__$answerExpression", "col": 12 },
|
|
20
21
|
{ "field": "answerConstraint", "col": 12 },
|
|
21
22
|
{ "field": "__$valueMethod", "col": 12 },
|
|
22
23
|
{ "field": "initial", "title": "Default value", "col": 12 },
|
|
@@ -24,8 +25,9 @@
|
|
|
24
25
|
{ "field": "__$initialExpression", "col": 12 },
|
|
25
26
|
{ "field": "__$calculatedExpression", "col": 12 },
|
|
26
27
|
{ "field": "__$itemControl", "col": 12 },
|
|
28
|
+
{ "field": "__$itemControlQuestion", "col": 12 },
|
|
27
29
|
{ "field": "__$itemControlGroup", "col": 12 },
|
|
28
|
-
{ "field": "__$itemControlDisplay", "col": 12 },
|
|
30
|
+
{ "field": "__$itemControlDisplay", "col": 12 },
|
|
29
31
|
{ "field": "__$units", "col": 12 }
|
|
30
32
|
]
|
|
31
33
|
},
|
|
@@ -862,20 +862,22 @@
|
|
|
862
862
|
{
|
|
863
863
|
"type": "string",
|
|
864
864
|
"enum": ["answer-option"],
|
|
865
|
-
"title": "Answer options"
|
|
866
|
-
"dataType": ["all"]
|
|
865
|
+
"title": "Answer options"
|
|
867
866
|
},
|
|
868
867
|
{
|
|
869
868
|
"type": "string",
|
|
870
869
|
"enum": ["snomed-value-set"],
|
|
871
|
-
"title": "SNOMED answer value set"
|
|
872
|
-
"dataType": ["coding"]
|
|
870
|
+
"title": "SNOMED answer value set"
|
|
873
871
|
},
|
|
874
872
|
{
|
|
875
873
|
"type": "string",
|
|
876
874
|
"enum": ["value-set"],
|
|
877
|
-
"title": "Answer value set URI"
|
|
878
|
-
|
|
875
|
+
"title": "Answer value set URI"
|
|
876
|
+
},
|
|
877
|
+
{
|
|
878
|
+
"type": "string",
|
|
879
|
+
"enum": ["answer-expression"],
|
|
880
|
+
"title": "Answer expression"
|
|
879
881
|
}
|
|
880
882
|
],
|
|
881
883
|
"default": "answer-option",
|
|
@@ -887,7 +889,13 @@
|
|
|
887
889
|
"id": "answer-option-methods",
|
|
888
890
|
"labelPosition": "left",
|
|
889
891
|
"labelClasses": "col-2 ps-0 pe-1",
|
|
890
|
-
"controlClasses": "col-auto btn-group btn-group-sm m-auto p-0"
|
|
892
|
+
"controlClasses": "col-auto btn-group btn-group-sm m-auto p-0",
|
|
893
|
+
"supportedDataType": {
|
|
894
|
+
"answer-option": ["all"],
|
|
895
|
+
"snomed-value-set": ["coding"],
|
|
896
|
+
"value-set": ["coding"],
|
|
897
|
+
"answer-expression": ["all"]
|
|
898
|
+
}
|
|
891
899
|
}
|
|
892
900
|
},
|
|
893
901
|
/*
|
|
@@ -924,7 +932,14 @@
|
|
|
924
932
|
"pattern": "^\\S*$",
|
|
925
933
|
"type": "string",
|
|
926
934
|
"visibleIf": {
|
|
927
|
-
"
|
|
935
|
+
"allOf": [
|
|
936
|
+
{
|
|
937
|
+
"/__$answerOptionMethods": ["value-set", "snomed-value-set"],
|
|
938
|
+
},
|
|
939
|
+
{
|
|
940
|
+
"type": ["coding"]
|
|
941
|
+
}
|
|
942
|
+
]
|
|
928
943
|
},
|
|
929
944
|
"widget": {
|
|
930
945
|
"id": "answer-value-set",
|
|
@@ -1169,6 +1184,39 @@
|
|
|
1169
1184
|
"visibleIf": {
|
|
1170
1185
|
"__$isAnswerList": [true]
|
|
1171
1186
|
},
|
|
1187
|
+
"oneOf": [
|
|
1188
|
+
{
|
|
1189
|
+
'enum': ["autocomplete"],
|
|
1190
|
+
'display': 'Auto-complete',
|
|
1191
|
+
'description': 'A control that shows matching options as the user types. Ideal for large lists where searching by text is helpful.',
|
|
1192
|
+
'support': true,
|
|
1193
|
+
'dataType': ['coding']
|
|
1194
|
+
},
|
|
1195
|
+
{
|
|
1196
|
+
'enum': ["drop-down"],
|
|
1197
|
+
'display': 'Drop down',
|
|
1198
|
+
'description': 'Text displayed below or inside the answer-entry area as a prompt or guide.',
|
|
1199
|
+
'support': true
|
|
1200
|
+
},
|
|
1201
|
+
{
|
|
1202
|
+
'enum': ["check-box"],
|
|
1203
|
+
'display': 'Check-box',
|
|
1204
|
+
'description': 'A control listing choices with checkboxes. Users can select or deselect options, allowing multiple selections.',
|
|
1205
|
+
'support': true
|
|
1206
|
+
},
|
|
1207
|
+
/* TBD {
|
|
1208
|
+
'enum': ["lookup"],
|
|
1209
|
+
'display': 'Lookup',
|
|
1210
|
+
'description': 'A control that opens a dialog or screen for users to browse or filter and select a match. Best for large lists where text search is not suitable.',
|
|
1211
|
+
'support': false
|
|
1212
|
+
}, */
|
|
1213
|
+
{
|
|
1214
|
+
'enum': ["radio-button"],
|
|
1215
|
+
'display': 'Radio Button',
|
|
1216
|
+
'description': 'A control listing choices with radio buttons. Selecting one option deselects others. Used for single-choice items or booleans with an \'unanswered\' state.',
|
|
1217
|
+
'support': true
|
|
1218
|
+
}
|
|
1219
|
+
],
|
|
1172
1220
|
"widget": {
|
|
1173
1221
|
"id": "item-control",
|
|
1174
1222
|
"labelPosition": "left",
|
|
@@ -1176,6 +1224,69 @@
|
|
|
1176
1224
|
"controlClasses": "col-auto btn-group btn-group-sm p-0"
|
|
1177
1225
|
}
|
|
1178
1226
|
},
|
|
1227
|
+
"__$itemControlQuestion": {
|
|
1228
|
+
// Proxy for item control extension.
|
|
1229
|
+
"description": "Choose the type of control for the answer list. The default is a drop-down list, which works well for lists that aren't too large. You may also choose checkboxes or radio-buttons for smaller lists. For large lists, you can make it an autocomplete list, in which matching items will show up when the user starts typing, though some FHIR servers (e.g., the SNOMED server) might not return results until the user types a few characters.",
|
|
1230
|
+
"title": "Question item control",
|
|
1231
|
+
"type": "string",
|
|
1232
|
+
"oneOf": [
|
|
1233
|
+
{
|
|
1234
|
+
'enum': ["slider"],
|
|
1235
|
+
'display': 'Slider',
|
|
1236
|
+
'description': 'A control with a movable handle on an axis to select a value between set minimum and maximum.',
|
|
1237
|
+
'support': false,
|
|
1238
|
+
'dataType': ['decimal', 'integer']
|
|
1239
|
+
},
|
|
1240
|
+
{
|
|
1241
|
+
'enum': ["spinner"],
|
|
1242
|
+
'display': 'Spinner',
|
|
1243
|
+
'description': 'A control for scrolling through numeric or ordered values using arrows.',
|
|
1244
|
+
'support': false,
|
|
1245
|
+
'dataType': ['decimal', 'integer', 'date', 'dateTime', 'time']
|
|
1246
|
+
},
|
|
1247
|
+
{
|
|
1248
|
+
'enum': ["text-box"],
|
|
1249
|
+
'display': 'Text Box',
|
|
1250
|
+
'description': 'A control for free text entry.',
|
|
1251
|
+
'support': false,
|
|
1252
|
+
'dataType': ['string', 'text']
|
|
1253
|
+
}
|
|
1254
|
+
],
|
|
1255
|
+
"visibleIf": {
|
|
1256
|
+
"oneOf": [
|
|
1257
|
+
{
|
|
1258
|
+
"allOf": [
|
|
1259
|
+
{
|
|
1260
|
+
"__$isAnswerList": [false]
|
|
1261
|
+
},
|
|
1262
|
+
{
|
|
1263
|
+
"type": [
|
|
1264
|
+
"$EXP$ target.value != 'boolean' && target.value != 'url' && target.value != 'coding' && target.value != 'quantity'"
|
|
1265
|
+
]
|
|
1266
|
+
}
|
|
1267
|
+
],
|
|
1268
|
+
|
|
1269
|
+
},
|
|
1270
|
+
{
|
|
1271
|
+
"allOf": [
|
|
1272
|
+
{
|
|
1273
|
+
"type": [
|
|
1274
|
+
"$EXP$ target.value == 'decimal' || target.value == 'dateTime'"
|
|
1275
|
+
]
|
|
1276
|
+
}
|
|
1277
|
+
]
|
|
1278
|
+
}
|
|
1279
|
+
]
|
|
1280
|
+
},
|
|
1281
|
+
"default": "unspecified",
|
|
1282
|
+
"widget": {
|
|
1283
|
+
"id": "item-control",
|
|
1284
|
+
"labelPosition": "left",
|
|
1285
|
+
"labelClasses": "col-2 ps-0 pe-1",
|
|
1286
|
+
"controlClasses": "col-10 btn-group btn-group-sm p-0",
|
|
1287
|
+
"note": "(1) - not yet supported by LHC-Forms preview."
|
|
1288
|
+
}
|
|
1289
|
+
},
|
|
1179
1290
|
"__$itemControlGroup": {
|
|
1180
1291
|
// Proxy for item control extension.
|
|
1181
1292
|
"description": "Choose the type of control for the 'Group' data type. Some item controls are not supported by the LHC-Forms preview, as indicated by the asterisk (*) symbol.",
|
|
@@ -1627,7 +1738,7 @@
|
|
|
1627
1738
|
"visibleIf": {
|
|
1628
1739
|
"allOf": [
|
|
1629
1740
|
{
|
|
1630
|
-
"/__$answerOptionMethods": ["answer-option", "snomed-value-set", "value-set"]
|
|
1741
|
+
"/__$answerOptionMethods": ["answer-option", "snomed-value-set", "value-set", "answer-expression"]
|
|
1631
1742
|
},
|
|
1632
1743
|
{
|
|
1633
1744
|
"/type": ["$EXP$ target.value == 'coding'"]
|
|
@@ -1772,6 +1883,16 @@
|
|
|
1772
1883
|
"/__$answerOptionMethods": ["snomed-value-set", "value-set"]
|
|
1773
1884
|
}
|
|
1774
1885
|
]
|
|
1886
|
+
},
|
|
1887
|
+
{
|
|
1888
|
+
"allOf": [
|
|
1889
|
+
{
|
|
1890
|
+
"__$valueMethod": ["type-initial"]
|
|
1891
|
+
},
|
|
1892
|
+
{
|
|
1893
|
+
"/__$answerOptionMethods": ["answer-expression"]
|
|
1894
|
+
}
|
|
1895
|
+
]
|
|
1775
1896
|
}
|
|
1776
1897
|
]
|
|
1777
1898
|
},
|
|
@@ -1879,7 +2000,7 @@
|
|
|
1879
2000
|
"__$valueMethod": ["pick-initial"]
|
|
1880
2001
|
},
|
|
1881
2002
|
{
|
|
1882
|
-
"/__$answerOptionMethods": ["$EXP$ target.value == 'answer-option'"]
|
|
2003
|
+
"/__$answerOptionMethods": ["$EXP$ target.value == 'answer-option' || target.value == 'answer-expression' "]
|
|
1883
2004
|
}
|
|
1884
2005
|
],
|
|
1885
2006
|
},
|
|
@@ -2140,6 +2261,66 @@
|
|
|
2140
2261
|
"controlClasses": "col form-control form-control-sm"
|
|
2141
2262
|
}
|
|
2142
2263
|
},
|
|
2264
|
+
"__$answerExpression": {
|
|
2265
|
+
"description": "An expression (FHIRPath, CQL, or FHIR query) that dynamically generates a list of allowed answers for a question item, or provides context for a group item. Users can select one or more answers from the generated list.",
|
|
2266
|
+
"title": "Answer expression",
|
|
2267
|
+
"type": "object",
|
|
2268
|
+
"properties": {
|
|
2269
|
+
"id": {
|
|
2270
|
+
"description": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
|
|
2271
|
+
"title": "Id",
|
|
2272
|
+
"pattern": "^[ \\r\\n\\t\\S]+$",
|
|
2273
|
+
"type": "string",
|
|
2274
|
+
"widget": {"id": "hidden"}
|
|
2275
|
+
},
|
|
2276
|
+
"url": {
|
|
2277
|
+
"description": "A location where the data can be accessed.",
|
|
2278
|
+
"pattern": "^\\S*$",
|
|
2279
|
+
"type": "string"
|
|
2280
|
+
},
|
|
2281
|
+
"extension": {
|
|
2282
|
+
"description": "May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
|
|
2283
|
+
"items": {
|
|
2284
|
+
"$ref": "#/definitions/Extension"
|
|
2285
|
+
},
|
|
2286
|
+
"type": "array",
|
|
2287
|
+
"title": "Extension",
|
|
2288
|
+
"widget": {
|
|
2289
|
+
"id": "hidden"
|
|
2290
|
+
}
|
|
2291
|
+
},
|
|
2292
|
+
"valueString": {
|
|
2293
|
+
"description": "A potential answer that's allowed as the answer to this question.",
|
|
2294
|
+
"pattern": "^[ \\r\\n\\t\\S]+$",
|
|
2295
|
+
"type": "string",
|
|
2296
|
+
"title": "Value string",
|
|
2297
|
+
"visibleIf": {
|
|
2298
|
+
"/type": ["$EXP$ target.value == 'string' || target.value == 'text'"]
|
|
2299
|
+
}
|
|
2300
|
+
},
|
|
2301
|
+
"valueExpression": {
|
|
2302
|
+
"description": "The value of the Output parameter as a basic type.",
|
|
2303
|
+
"$ref": "#/definitions/Expression"
|
|
2304
|
+
}
|
|
2305
|
+
},
|
|
2306
|
+
"visibleIf": {
|
|
2307
|
+
"__$answerOptionMethods": ["answer-expression"]
|
|
2308
|
+
},
|
|
2309
|
+
"widget": {
|
|
2310
|
+
"id": "expression-editor",
|
|
2311
|
+
"expressionUri": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerExpression",
|
|
2312
|
+
"showExpression": true,
|
|
2313
|
+
"displayExpressionEditorSections": {
|
|
2314
|
+
titleSection: true,
|
|
2315
|
+
uneditableVariablesSection: false,
|
|
2316
|
+
itemVariablesSection: false,
|
|
2317
|
+
outputExpressionSection: true
|
|
2318
|
+
},
|
|
2319
|
+
"labelPosition": "left",
|
|
2320
|
+
"labelClasses": "col-2 ps-0 pe-1",
|
|
2321
|
+
"controlClasses": "col form-control form-control-sm"
|
|
2322
|
+
}
|
|
2323
|
+
},
|
|
2143
2324
|
"__$observationLinkPeriod": {
|
|
2144
2325
|
"description": "Sets a time window within which to look for an Observation with a matching code, for pre-population. Requires that a code be assigned to this item.",
|
|
2145
2326
|
"title": "Add link to pre-populate FHIR Observation?",
|
|
@@ -2578,6 +2759,17 @@
|
|
|
2578
2759
|
}
|
|
2579
2760
|
]
|
|
2580
2761
|
},
|
|
2762
|
+
{
|
|
2763
|
+
"fields": [
|
|
2764
|
+
"__$itemControlQuestion"
|
|
2765
|
+
],
|
|
2766
|
+
"showFields": [
|
|
2767
|
+
{
|
|
2768
|
+
"field": "__$itemControlQuestion",
|
|
2769
|
+
"col": 12
|
|
2770
|
+
}
|
|
2771
|
+
]
|
|
2772
|
+
},
|
|
2581
2773
|
{
|
|
2582
2774
|
"fields": [
|
|
2583
2775
|
"__$itemControlGroup"
|
|
@@ -2699,6 +2891,17 @@
|
|
|
2699
2891
|
}
|
|
2700
2892
|
]
|
|
2701
2893
|
},
|
|
2894
|
+
{
|
|
2895
|
+
"fields": [
|
|
2896
|
+
"__$answerExpression"
|
|
2897
|
+
],
|
|
2898
|
+
"showFields": [
|
|
2899
|
+
{
|
|
2900
|
+
"field": "__$answerExpression",
|
|
2901
|
+
"col": 12
|
|
2902
|
+
}
|
|
2903
|
+
]
|
|
2904
|
+
},
|
|
2702
2905
|
{
|
|
2703
2906
|
"fields": [
|
|
2704
2907
|
"__$restrictions"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version": "10.3.
|
|
1
|
+
{"version": "10.3.2"}
|
|
@@ -19,6 +19,6 @@
|
|
|
19
19
|
<body class="bg-secondary">
|
|
20
20
|
<lfb-root></lfb-root>
|
|
21
21
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
|
|
22
|
-
<script src="runtime.451db9930bcccb8c.js" type="module"></script><script src="polyfills.4992065cb715e9b6.js" type="module"></script><script src="scripts.5c83cbb4dbb11a83.js" defer></script><script src="main.
|
|
22
|
+
<script src="runtime.451db9930bcccb8c.js" type="module"></script><script src="polyfills.4992065cb715e9b6.js" type="module"></script><script src="scripts.5c83cbb4dbb11a83.js" defer></script><script src="main.0db1cf46e84a9e1a.js" type="module"></script></body>
|
|
23
23
|
</html>
|
|
24
24
|
|