@aehrc/smart-forms-renderer 1.0.0-alpha.72 → 1.0.0-alpha.74

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 (36) hide show
  1. package/lib/components/FormComponents/Tables/GroupTable.js +1 -1
  2. package/lib/hooks/useValidationFeedback.js +2 -2
  3. package/lib/interfaces/targetConstraint.interface.d.ts +34 -1
  4. package/lib/stores/questionnaireResponseStore.d.ts +2 -2
  5. package/lib/stores/questionnaireResponseStore.js +1 -1
  6. package/lib/stores/questionnaireResponseStore.js.map +1 -1
  7. package/lib/stores/questionnaireStore.js +8 -3
  8. package/lib/stores/questionnaireStore.js.map +1 -1
  9. package/lib/stores/rendererStylingStore.js +15 -23
  10. package/lib/stores/rendererStylingStore.js.map +1 -1
  11. package/lib/utils/misc.d.ts +9 -0
  12. package/lib/utils/misc.js +44 -1
  13. package/lib/utils/misc.js.map +1 -1
  14. package/lib/utils/preferredTerminologyServer.d.ts +1 -1
  15. package/lib/utils/repopulateIntoResponse.d.ts +1 -1
  16. package/lib/utils/repopulateIntoResponse.js +21 -57
  17. package/lib/utils/repopulateIntoResponse.js.map +1 -1
  18. package/lib/utils/repopulateItems.d.ts +23 -13
  19. package/lib/utils/repopulateItems.js +68 -152
  20. package/lib/utils/repopulateItems.js.map +1 -1
  21. package/lib/utils/targetConstraint.js +12 -12
  22. package/lib/utils/validate.js +1 -1
  23. package/package.json +3 -2
  24. package/src/components/FormComponents/Tables/GroupTable.tsx +1 -1
  25. package/src/hooks/useValidationFeedback.ts +2 -2
  26. package/src/interfaces/targetConstraint.interface.ts +40 -1
  27. package/src/stores/questionnaireResponseStore.ts +2 -8
  28. package/src/stores/questionnaireStore.ts +10 -3
  29. package/src/stores/rendererStylingStore.ts +17 -23
  30. package/src/utils/misc.ts +56 -1
  31. package/src/utils/preferredTerminologyServer.ts +1 -1
  32. package/src/utils/repopulateIntoResponse.ts +21 -79
  33. package/src/utils/repopulateItems.ts +128 -211
  34. package/src/utils/targetConstraint.ts +12 -12
  35. package/src/utils/validate.ts +1 -1
  36. package/src/interfaces/itemDetails.interface.ts +0 -10
@@ -103,7 +103,7 @@ function GroupTable(props) {
103
103
  setSelectedIds([...selectedIds, newRowId]);
104
104
  }
105
105
  function handleSelectAll() {
106
- // deselect all if all are selected, otherwise select all
106
+ // unselect all if all are selected, otherwise select all
107
107
  const updatedTableIds = selectedIds.length === tableRows.length ? [] : tableRows.map((tableRow) => tableRow.id);
108
108
  setSelectedIds(updatedTableIds);
109
109
  // Don't need to include targetItemPath, only include targetItemPath if an answer is changed
@@ -29,8 +29,8 @@ function useValidationFeedback(qItem, feedbackFromParent, input) {
29
29
  for (const targetConstraintKey of targetConstraintKeys) {
30
30
  const targetConstraint = targetConstraints[targetConstraintKey];
31
31
  if (targetConstraint) {
32
- const { isEnabled, human } = targetConstraint;
33
- if (isEnabled) {
32
+ const { isInvalid, human } = targetConstraint;
33
+ if (isInvalid) {
34
34
  return human;
35
35
  }
36
36
  }
@@ -1,12 +1,45 @@
1
1
  import type { Expression, Extension } from 'fhir/r4';
2
+ /**
3
+ * Represents a FHIR SDC (Structured Data Capture) targetConstraint extension,
4
+ * used to define custom validation rules for Questionnaire items.
5
+ *
6
+ * Each TargetConstraint specifies a unique key, severity, validation expression,
7
+ * and a human-readable error or warning message. Optionally, it can include
8
+ * location or linkId references and a flag indicating validation status.
9
+ */
2
10
  export interface TargetConstraint {
11
+ /**
12
+ * Unique identifier for this constraint, used for reference and traceability.
13
+ */
3
14
  key: string;
15
+ /**
16
+ * The severity of the constraint violation.
17
+ * - 'error': Prevents submission if the constraint fails.
18
+ * - 'warning': Allows submission but alerts the user.
19
+ */
4
20
  severityCode: 'error' | 'warning';
21
+ /**
22
+ * The FHIRPath expression that defines the valid condition for the item.
23
+ * Should evaluate to true when the value is valid.
24
+ */
5
25
  valueExpression: Expression;
26
+ /**
27
+ * Human-readable message explaining the constraint,
28
+ * shown to users when the constraint fails.
29
+ */
6
30
  human: string;
31
+ /**
32
+ * (Optional) FHIRPath location string indicating where the constraint applies.
33
+ */
7
34
  location?: string;
35
+ /**
36
+ * (Optional) The linkId of the Questionnaire item this constraint applies to.
37
+ */
8
38
  linkId?: string;
9
- isEnabled?: boolean;
39
+ /**
40
+ * (Optional) Indicates if the current value is invalid according to this constraint.
41
+ */
42
+ isInvalid?: boolean;
10
43
  }
11
44
  export interface TargetConstraintKey extends Extension {
12
45
  url: 'key';
@@ -33,7 +33,7 @@ export interface QuestionnaireResponseStoreType {
33
33
  invalidItems: Record<string, OperationOutcome>;
34
34
  requiredItemsIsHighlighted: boolean;
35
35
  responseIsValid: boolean;
36
- validateQuestionnaire: (questionnaire: Questionnaire, updatedResponse: QuestionnaireResponse) => void;
36
+ validateResponse: (questionnaire: Questionnaire, updatedResponse: QuestionnaireResponse) => void;
37
37
  buildSourceResponse: (response: QuestionnaireResponse) => void;
38
38
  setUpdatableResponseAsPopulated: (populatedResponse: QuestionnaireResponse) => void;
39
39
  updateResponse: (updatedResponse: QuestionnaireResponse, debugType: 'initial' | 'async') => void;
@@ -68,7 +68,7 @@ export declare const useQuestionnaireResponseStore: import("zustand/vanilla").St
68
68
  invalidItems: () => Record<string, OperationOutcome>;
69
69
  requiredItemsIsHighlighted: () => boolean;
70
70
  responseIsValid: () => boolean;
71
- validateQuestionnaire: () => (questionnaire: Questionnaire, updatedResponse: QuestionnaireResponse) => void;
71
+ validateResponse: () => (questionnaire: Questionnaire, updatedResponse: QuestionnaireResponse) => void;
72
72
  buildSourceResponse: () => (response: QuestionnaireResponse) => void;
73
73
  setUpdatableResponseAsPopulated: () => (populatedResponse: QuestionnaireResponse) => void;
74
74
  updateResponse: () => (updatedResponse: QuestionnaireResponse, debugType: "initial" | "async") => void;
@@ -38,7 +38,7 @@ export const questionnaireResponseStore = createStore()((set, get) => ({
38
38
  invalidItems: {},
39
39
  requiredItemsIsHighlighted: false,
40
40
  responseIsValid: true,
41
- validateQuestionnaire: (questionnaire, updatedResponse) => {
41
+ validateResponse: (questionnaire, updatedResponse) => {
42
42
  const updatedInvalidItems = validateForm(questionnaire, updatedResponse);
43
43
  set(() => ({
44
44
  invalidItems: updatedInvalidItems,
@@ -1 +1 @@
1
- {"version":3,"file":"questionnaireResponseStore.js","sourceRoot":"","sources":["../../src/stores/questionnaireResponseStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"questionnaireResponseStore.js","sourceRoot":"","sources":["../../src/stores/questionnaireResponseStore.ts"],"names":[],"mappings":"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"}
@@ -210,8 +210,10 @@ export const questionnaireStore = createStore()((set, get) => ({
210
210
  }),
211
211
  toggleEnableWhenActivation: (isActivated) => set(() => ({ enableWhenIsActivated: isActivated })),
212
212
  updateExpressions: (updatedResponse) => __awaiter(void 0, void 0, void 0, function* () {
213
+ const sourceQuestionnaire = get().sourceQuestionnaire;
213
214
  const updateResponse = questionnaireResponseStore.getState().updateResponse;
214
- const updatedResponseItemMap = createQuestionnaireResponseItemMap(get().sourceQuestionnaire, updatedResponse);
215
+ const validateResponse = questionnaireResponseStore.getState().validateResponse;
216
+ const updatedResponseItemMap = createQuestionnaireResponseItemMap(sourceQuestionnaire, updatedResponse);
215
217
  const { isUpdated, updatedTargetConstraints, updatedAnswerOptionsToggleExpressions, updatedEnableWhenExpressions, updatedCalculatedExpressions, updatedProcessedValueSets, updatedFhirPathContext, fhirPathTerminologyCache, computedQRItemUpdates } = yield evaluateUpdatedExpressions({
216
218
  updatedResponse,
217
219
  updatedResponseItemMap,
@@ -230,9 +232,10 @@ export const questionnaireStore = createStore()((set, get) => ({
230
232
  * Before this, we were updating the store before applying the computed updates. This may cause downstream useEffects to use a stale QR.
231
233
  * By applying the computed updates first, we ensure that the QR is up-to-date when downstream useEffects are fired.
232
234
  */
235
+ let lastUpdatedResponse = structuredClone(updatedResponse);
233
236
  if (Object.keys(computedQRItemUpdates).length > 0) {
234
- const responseWithAppliedComputedUpdates = applyComputedUpdates(get().sourceQuestionnaire, updatedResponse, computedQRItemUpdates);
235
- updateResponse(responseWithAppliedComputedUpdates, 'async');
237
+ lastUpdatedResponse = applyComputedUpdates(get().sourceQuestionnaire, updatedResponse, computedQRItemUpdates);
238
+ updateResponse(lastUpdatedResponse, 'async');
236
239
  }
237
240
  if (isUpdated) {
238
241
  set(() => ({
@@ -244,6 +247,8 @@ export const questionnaireStore = createStore()((set, get) => ({
244
247
  fhirPathContext: updatedFhirPathContext,
245
248
  fhirPathTerminologyCache: fhirPathTerminologyCache
246
249
  }));
250
+ // Besides setting QuestionnaireStore state, we also need to update `invalidItems` and `responseIsValid` in QuestionnaireResponseStore
251
+ validateResponse(sourceQuestionnaire, lastUpdatedResponse); // Validate the updated response asynchronously
247
252
  }
248
253
  set(() => ({
249
254
  fhirPathContext: updatedFhirPathContext,
@@ -1 +1 @@
1
- {"version":3,"file":"questionnaireStore.js","sourceRoot":"","sources":["../../src/stores/questionnaireStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"questionnaireStore.js","sourceRoot":"","sources":["../../src/stores/questionnaireStore.ts"],"names":[],"mappings":"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"}
@@ -43,31 +43,23 @@ export const rendererStylingStore = createStore()((set) => ({
43
43
  disablePageButtons: false,
44
44
  disableTabButtons: false,
45
45
  setRendererStyling: (params) => {
46
- set(() => {
46
+ set((state) => {
47
47
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
48
48
  return ({
49
- readOnlyVisualStyle: (_a = params.readOnlyVisualStyle) !== null && _a !== void 0 ? _a : 'disabled',
50
- requiredIndicatorPosition: (_b = params.requiredIndicatorPosition) !== null && _b !== void 0 ? _b : 'start',
51
- itemResponsive: (_c = params.itemResponsive) !== null && _c !== void 0 ? _c : {
52
- labelBreakpoints: { xs: 12, md: 4 },
53
- fieldBreakpoints: { xs: 12, md: 8 },
54
- columnGapPixels: 32,
55
- rowGapPixels: 4
56
- },
57
- tabListWidthOrResponsive: (_d = params.tabListWidthOrResponsive) !== null && _d !== void 0 ? _d : {
58
- tabListBreakpoints: { xs: 12, md: 3, lg: 2.75 },
59
- tabContentBreakpoints: { xs: 12, md: 9, lg: 9.25 }
60
- },
61
- showTabbedFormAt: (_e = params.showTabbedFormAt) !== null && _e !== void 0 ? _e : { query: 'up', start: 'md' },
62
- textFieldWidth: (_f = params.textFieldWidth) !== null && _f !== void 0 ? _f : 320,
63
- inputsFlexGrow: (_g = params.inputsFlexGrow) !== null && _g !== void 0 ? _g : false,
64
- reverseBooleanYesNo: (_h = params.reverseBooleanYesNo) !== null && _h !== void 0 ? _h : false,
65
- hideClearButton: (_j = params.hideClearButton) !== null && _j !== void 0 ? _j : false,
66
- hideQuantityComparatorField: (_k = params.hideQuantityComparatorField) !== null && _k !== void 0 ? _k : false,
67
- enableWhenAsReadOnly: (_l = params.enableWhenAsReadOnly) !== null && _l !== void 0 ? _l : false,
68
- disablePageCardView: (_m = params.disablePageCardView) !== null && _m !== void 0 ? _m : false,
69
- disablePageButtons: (_o = params.disablePageButtons) !== null && _o !== void 0 ? _o : false,
70
- disableTabButtons: (_p = params.disableTabButtons) !== null && _p !== void 0 ? _p : false
49
+ readOnlyVisualStyle: (_a = params.readOnlyVisualStyle) !== null && _a !== void 0 ? _a : state.readOnlyVisualStyle,
50
+ requiredIndicatorPosition: (_b = params.requiredIndicatorPosition) !== null && _b !== void 0 ? _b : state.requiredIndicatorPosition,
51
+ itemResponsive: (_c = params.itemResponsive) !== null && _c !== void 0 ? _c : state.itemResponsive,
52
+ tabListWidthOrResponsive: (_d = params.tabListWidthOrResponsive) !== null && _d !== void 0 ? _d : state.tabListWidthOrResponsive,
53
+ showTabbedFormAt: (_e = params.showTabbedFormAt) !== null && _e !== void 0 ? _e : state.showTabbedFormAt,
54
+ textFieldWidth: (_f = params.textFieldWidth) !== null && _f !== void 0 ? _f : state.textFieldWidth,
55
+ inputsFlexGrow: (_g = params.inputsFlexGrow) !== null && _g !== void 0 ? _g : state.inputsFlexGrow,
56
+ reverseBooleanYesNo: (_h = params.reverseBooleanYesNo) !== null && _h !== void 0 ? _h : state.reverseBooleanYesNo,
57
+ hideClearButton: (_j = params.hideClearButton) !== null && _j !== void 0 ? _j : state.hideClearButton,
58
+ hideQuantityComparatorField: (_k = params.hideQuantityComparatorField) !== null && _k !== void 0 ? _k : state.hideQuantityComparatorField,
59
+ enableWhenAsReadOnly: (_l = params.enableWhenAsReadOnly) !== null && _l !== void 0 ? _l : state.enableWhenAsReadOnly,
60
+ disablePageCardView: (_m = params.disablePageCardView) !== null && _m !== void 0 ? _m : state.disablePageCardView,
61
+ disablePageButtons: (_o = params.disablePageButtons) !== null && _o !== void 0 ? _o : state.disablePageButtons,
62
+ disableTabButtons: (_p = params.disableTabButtons) !== null && _p !== void 0 ? _p : state.disableTabButtons
71
63
  });
72
64
  });
73
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rendererStylingStore.js","sourceRoot":"","sources":["../../src/stores/rendererStylingStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rendererStylingStore.js","sourceRoot":"","sources":["../../src/stores/rendererStylingStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAyH7C;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,EAA4B,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACpF,mBAAmB,EAAE,UAAU;IAC/B,yBAAyB,EAAE,OAAO;IAClC,cAAc,EAAE;QACd,gBAAgB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE;QACnC,gBAAgB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE;QACnC,eAAe,EAAE,EAAE;QACnB,YAAY,EAAE,CAAC;KAChB;IACD,wBAAwB,EAAE;QACxB,kBAAkB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;QACtD,qBAAqB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;KAC1D;IACD,gBAAgB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IAC9C,cAAc,EAAE,GAAG;IACnB,cAAc,EAAE,KAAK;IACrB,mBAAmB,EAAE,KAAK;IAC1B,eAAe,EAAE,KAAK;IACtB,2BAA2B,EAAE,KAAK;IAClC,oBAAoB,EAAE,KAAK;IAC3B,mBAAmB,EAAE,KAAK;IAC1B,kBAAkB,EAAE,KAAK;IACzB,iBAAiB,EAAE,KAAK;IACxB,kBAAkB,EAAE,CAAC,MAAuB,EAAE,EAAE;QAC9C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;;YAAC,OAAA,CAAC;gBACd,mBAAmB,EAAE,MAAA,MAAM,CAAC,mBAAmB,mCAAI,KAAK,CAAC,mBAAmB;gBAC5E,yBAAyB,EACvB,MAAA,MAAM,CAAC,yBAAyB,mCAAI,KAAK,CAAC,yBAAyB;gBACrE,cAAc,EAAE,MAAA,MAAM,CAAC,cAAc,mCAAI,KAAK,CAAC,cAAc;gBAC7D,wBAAwB,EAAE,MAAA,MAAM,CAAC,wBAAwB,mCAAI,KAAK,CAAC,wBAAwB;gBAC3F,gBAAgB,EAAE,MAAA,MAAM,CAAC,gBAAgB,mCAAI,KAAK,CAAC,gBAAgB;gBACnE,cAAc,EAAE,MAAA,MAAM,CAAC,cAAc,mCAAI,KAAK,CAAC,cAAc;gBAC7D,cAAc,EAAE,MAAA,MAAM,CAAC,cAAc,mCAAI,KAAK,CAAC,cAAc;gBAC7D,mBAAmB,EAAE,MAAA,MAAM,CAAC,mBAAmB,mCAAI,KAAK,CAAC,mBAAmB;gBAC5E,eAAe,EAAE,MAAA,MAAM,CAAC,eAAe,mCAAI,KAAK,CAAC,eAAe;gBAChE,2BAA2B,EACzB,MAAA,MAAM,CAAC,2BAA2B,mCAAI,KAAK,CAAC,2BAA2B;gBACzE,oBAAoB,EAAE,MAAA,MAAM,CAAC,oBAAoB,mCAAI,KAAK,CAAC,oBAAoB;gBAC/E,mBAAmB,EAAE,MAAA,MAAM,CAAC,mBAAmB,mCAAI,KAAK,CAAC,mBAAmB;gBAC5E,kBAAkB,EAAE,MAAA,MAAM,CAAC,kBAAkB,mCAAI,KAAK,CAAC,kBAAkB;gBACzE,iBAAiB,EAAE,MAAA,MAAM,CAAC,iBAAiB,mCAAI,KAAK,CAAC,iBAAiB;aACvE,CAAC,CAAA;SAAA,CAAC,CAAC;IACN,CAAC;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,MAAM,uBAAuB,GAAG,eAAe,CAAC,oBAAoB,CAAC,CAAC"}
@@ -15,6 +15,15 @@ export declare function getRepeatGroupParentItem(questionnaire: Questionnaire, t
15
15
  */
16
16
  export declare function getSectionHeading(questionnaire: Questionnaire, targetLinkId: string, tabs: Tabs): string | null;
17
17
  export declare function getSectionHeadingRecursive(qItem: QuestionnaireItem, targetLinkId: string, heading: string | null, tabs: Tabs): string | null;
18
+ /**
19
+ * Checks whether the item with the given linkId is nested under a grid item in the questionnaire.
20
+ * The item itself is not considered — only its ancestors are checked.
21
+ *
22
+ * @param questionnaire - The FHIR Questionnaire to search through
23
+ * @param targetLinkId - The linkId of the item to check
24
+ * @returns True if the item is nested under a grid item, false otherwise
25
+ */
26
+ export declare function isItemInGrid(questionnaire: Questionnaire, targetLinkId: string): boolean;
18
27
  /**
19
28
  * Retrieves a `QuestionnaireResponseItem` using a FHIRPath-compatible path string.
20
29
  *
package/lib/utils/misc.js CHANGED
@@ -14,7 +14,7 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- import { getShortText } from './itemControl';
17
+ import { getShortText, isSpecificItemControl } from './itemControl';
18
18
  import fhirpath from 'fhirpath';
19
19
  import fhirpath_r4_model from 'fhirpath/fhir-context/r4';
20
20
  // Get QuestionnaireItem from Questionnaire based on linkId
@@ -220,6 +220,49 @@ export function getSectionHeadingRecursive(qItem, targetLinkId, heading, tabs) {
220
220
  // No heading found in the current item or its child items, return null
221
221
  return null;
222
222
  }
223
+ // TODO test this unit test
224
+ /**
225
+ * Checks whether the item with the given linkId is nested under a grid item in the questionnaire.
226
+ * The item itself is not considered — only its ancestors are checked.
227
+ *
228
+ * @param questionnaire - The FHIR Questionnaire to search through
229
+ * @param targetLinkId - The linkId of the item to check
230
+ * @returns True if the item is nested under a grid item, false otherwise
231
+ */
232
+ export function isItemInGrid(questionnaire, targetLinkId) {
233
+ // Search through the top level items recursively
234
+ const topLevelQItems = questionnaire.item;
235
+ if (topLevelQItems) {
236
+ for (const topLevelQItem of topLevelQItems) {
237
+ const currentItemIsGrid = isSpecificItemControl(topLevelQItem, 'grid');
238
+ const isInGrid = isItemInGridRecursive(topLevelQItem, targetLinkId, currentItemIsGrid);
239
+ if (isInGrid) {
240
+ return true;
241
+ }
242
+ }
243
+ }
244
+ return false;
245
+ }
246
+ function isItemInGridRecursive(qItem, targetLinkId, hasGridAncestor) {
247
+ // Target linkId found in current item
248
+ if (qItem.linkId === targetLinkId) {
249
+ return hasGridAncestor;
250
+ }
251
+ // Search through its child items recursively
252
+ const childItems = qItem.item;
253
+ if (childItems) {
254
+ const currentItemIsGrid = isSpecificItemControl(qItem, 'grid');
255
+ const updatedHasGridAncestor = hasGridAncestor || currentItemIsGrid;
256
+ for (const child of childItems) {
257
+ const isInGrid = isItemInGridRecursive(child, targetLinkId, updatedHasGridAncestor);
258
+ if (isInGrid) {
259
+ return true;
260
+ }
261
+ }
262
+ }
263
+ // No matching item found in the current item or its child items
264
+ return false;
265
+ }
223
266
  /**
224
267
  * Retrieves a `QuestionnaireResponseItem` using a FHIRPath-compatible path string.
225
268
  *
@@ -1 +1 @@
1
- {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../src/utils/misc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../src/utils/misc.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { QuestionnaireItem } from 'fhir/r4';
1
+ import type { QuestionnaireItem } from 'fhir/r4';
2
2
  /**
3
3
  * Returns the terminology server URL to use for a given Questionnaire item.
4
4
  *
@@ -4,4 +4,4 @@ import type { ItemToRepopulate } from './repopulateItems';
4
4
  *
5
5
  * @author Sean Fong
6
6
  */
7
- export declare function repopulateResponse(checkedItemsToRepopulate: Record<string, ItemToRepopulate>): import("fhir/r4").QuestionnaireResponse;
7
+ export declare function repopulateResponse(filteredItemsToRepopulate: Record<string, ItemToRepopulate>): import("fhir/r4").QuestionnaireResponse;
@@ -1,5 +1,4 @@
1
1
  import { getQrItemsIndex, mapQItemsIndex } from './mapItem';
2
- import { isSpecificItemControl } from './itemControl';
3
2
  import { questionnaireResponseStore, questionnaireStore } from '../stores';
4
3
  import { updateQuestionnaireResponse } from './genericRecursive';
5
4
  /**
@@ -7,33 +6,28 @@ import { updateQuestionnaireResponse } from './genericRecursive';
7
6
  *
8
7
  * @author Sean Fong
9
8
  */
10
- export function repopulateResponse(checkedItemsToRepopulate) {
9
+ export function repopulateResponse(filteredItemsToRepopulate) {
11
10
  const sourceQuestionnaire = questionnaireStore.getState().sourceQuestionnaire;
12
11
  const updatableResponse = questionnaireResponseStore.getState().updatableResponse;
13
- return updateQuestionnaireResponse(sourceQuestionnaire, updatableResponse, repopulateItemRecursive, checkedItemsToRepopulate);
12
+ return updateQuestionnaireResponse(sourceQuestionnaire, updatableResponse, repopulateItemRecursive, filteredItemsToRepopulate);
14
13
  }
15
- function repopulateItemRecursive(qItem, qrItemOrItems, checkedItemsToRepopulate) {
14
+ function repopulateItemRecursive(qItem, qrItemOrItems, filteredItemsToRepopulate) {
16
15
  var _a;
17
16
  // For repeat groups
18
17
  const hasMultipleAnswers = Array.isArray(qrItemOrItems);
19
18
  if (hasMultipleAnswers) {
20
- return constructRepeatGroup(qItem, qrItemOrItems, checkedItemsToRepopulate);
19
+ return constructRepeatGroup(qItem, qrItemOrItems, filteredItemsToRepopulate);
21
20
  }
22
21
  const childQItems = qItem.item;
23
22
  if (childQItems && childQItems.length > 0) {
24
23
  const childQrItems = (_a = qrItemOrItems === null || qrItemOrItems === void 0 ? void 0 : qrItemOrItems.item) !== null && _a !== void 0 ? _a : [];
25
24
  const indexMap = mapQItemsIndex(qItem);
26
25
  const qrItemsByIndex = getQrItemsIndex(childQItems, childQrItems, indexMap);
27
- // For grid groups
28
- const itemIsGrid = isSpecificItemControl(qItem, 'grid');
29
- if (itemIsGrid) {
30
- return constructGridGroup(qItem, qrItemOrItems, checkedItemsToRepopulate);
31
- }
32
26
  // For normal groups with children
33
27
  const updatedQRItems = [];
34
28
  for (const [index, childQItem] of childQItems.entries()) {
35
29
  const childQRItemOrItems = qrItemsByIndex[index];
36
- const updatedChildQRItemOrItems = repopulateItemRecursive(childQItem, childQRItemOrItems !== null && childQRItemOrItems !== void 0 ? childQRItemOrItems : null, checkedItemsToRepopulate);
30
+ const updatedChildQRItemOrItems = repopulateItemRecursive(childQItem, childQRItemOrItems !== null && childQRItemOrItems !== void 0 ? childQRItemOrItems : null, filteredItemsToRepopulate);
37
31
  if (Array.isArray(updatedChildQRItemOrItems)) {
38
32
  if (updatedChildQRItemOrItems.length > 0) {
39
33
  updatedQRItems.push(...updatedChildQRItemOrItems);
@@ -44,11 +38,11 @@ function repopulateItemRecursive(qItem, qrItemOrItems, checkedItemsToRepopulate)
44
38
  updatedQRItems.push(updatedChildQRItemOrItems);
45
39
  }
46
40
  }
47
- return constructGroupItem(qItem, qrItemOrItems, updatedQRItems, checkedItemsToRepopulate);
41
+ return constructGroupItem(qItem, qrItemOrItems, updatedQRItems, filteredItemsToRepopulate);
48
42
  }
49
- return constructSingleItem(qItem, qrItemOrItems, checkedItemsToRepopulate);
43
+ return constructSingleItem(qItem, qrItemOrItems, filteredItemsToRepopulate);
50
44
  }
51
- function constructGroupItem(qItem, qrItemOrItems, childQrItems, checkedItemsToRepopulate) {
45
+ function constructGroupItem(qItem, qrItemOrItems, childQrItems, filteredItemsToRepopulate) {
52
46
  // Handle group items
53
47
  if (qItem.type === 'group') {
54
48
  return childQrItems && childQrItems.length > 0
@@ -64,7 +58,7 @@ function constructGroupItem(qItem, qrItemOrItems, childQrItems, checkedItemsToRe
64
58
  return null;
65
59
  }
66
60
  // If item is not of type group, its a single item with children
67
- const itemToRepopulate = checkedItemsToRepopulate[qItem.linkId];
61
+ const itemToRepopulate = filteredItemsToRepopulate[qItem.linkId];
68
62
  if (!itemToRepopulate) {
69
63
  if (qrItemOrItems) {
70
64
  return {
@@ -75,67 +69,37 @@ function constructGroupItem(qItem, qrItemOrItems, childQrItems, checkedItemsToRe
75
69
  }
76
70
  return null;
77
71
  }
78
- if (!itemToRepopulate.newQRItem) {
72
+ if (!itemToRepopulate.serverQRItem) {
79
73
  return null;
80
74
  }
81
75
  return {
82
76
  linkId: qItem.linkId,
83
77
  text: qItem.text,
84
- answer: itemToRepopulate.newQRItem.answer
78
+ answer: itemToRepopulate.serverQRItem.answer
85
79
  };
86
80
  }
87
- function constructSingleItem(qItem, qrItem, checkedItemsToRepopulate) {
88
- const itemToRepopulate = checkedItemsToRepopulate[qItem.linkId];
81
+ function constructSingleItem(qItem, qrItem, filteredItemsToRepopulate) {
82
+ const itemToRepopulate = filteredItemsToRepopulate[qItem.linkId];
89
83
  if (!itemToRepopulate) {
90
84
  return qrItem !== null && qrItem !== void 0 ? qrItem : null;
91
85
  }
92
- if (qrItem && itemToRepopulate.newQRItem) {
93
- return Object.assign(Object.assign({}, qrItem), { answer: itemToRepopulate.newQRItem.answer });
86
+ if (qrItem && itemToRepopulate.serverQRItem) {
87
+ return Object.assign(Object.assign({}, qrItem), { answer: itemToRepopulate.serverQRItem.answer });
94
88
  }
95
- if (!itemToRepopulate.newQRItem) {
89
+ if (!itemToRepopulate.serverQRItem) {
96
90
  return null;
97
91
  }
98
92
  return {
99
93
  linkId: qItem.linkId,
100
94
  text: qItem.text,
101
- answer: itemToRepopulate.newQRItem.answer
95
+ answer: itemToRepopulate.serverQRItem.answer
102
96
  };
103
97
  }
104
- function constructGridGroup(qItem, qrItem, checkedItemsToRepopulate) {
105
- const itemToRepopulate = checkedItemsToRepopulate[qItem.linkId];
106
- if (!itemToRepopulate || !itemToRepopulate.newQRItem) {
107
- return qrItem;
108
- }
109
- const qrItemsToRepopulate = itemToRepopulate.newQRItem.item;
110
- if (!qrItemsToRepopulate) {
111
- return qrItem;
112
- }
113
- const oldQrItems = qrItem === null || qrItem === void 0 ? void 0 : qrItem.item;
114
- if (!oldQrItems) {
115
- return {
116
- linkId: qItem.linkId,
117
- text: qItem.text,
118
- item: qrItemsToRepopulate
119
- };
120
- }
121
- const qrItemsToRepopulateMap = qrItemsToRepopulate.reduce((mapping, item) => {
122
- mapping[item.linkId] = item;
123
- return mapping;
124
- }, {});
125
- const repopulatedQrItems = oldQrItems.map((oldQrItem) => {
126
- const qrItemToRepopulate = qrItemsToRepopulateMap[oldQrItem.linkId];
127
- if (!qrItemToRepopulate) {
128
- return oldQrItem;
129
- }
130
- return Object.assign(Object.assign({}, oldQrItem), { item: qrItemToRepopulate.item });
131
- });
132
- return Object.assign(Object.assign({}, qrItem), { item: repopulatedQrItems });
133
- }
134
- function constructRepeatGroup(qItem, qrItems, checkedItemsToRepopulate) {
135
- const itemToRepopulate = checkedItemsToRepopulate[qItem.linkId];
136
- if (!itemToRepopulate || !itemToRepopulate.newQRItems) {
98
+ function constructRepeatGroup(qItem, qrItems, filteredItemsToRepopulate) {
99
+ const itemToRepopulate = filteredItemsToRepopulate[qItem.linkId];
100
+ if (!itemToRepopulate || !itemToRepopulate.serverQRItems) {
137
101
  return qrItems;
138
102
  }
139
- return itemToRepopulate.newQRItems;
103
+ return itemToRepopulate.serverQRItems;
140
104
  }
141
105
  //# sourceMappingURL=repopulateIntoResponse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"repopulateIntoResponse.js","sourceRoot":"","sources":["../../src/utils/repopulateIntoResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repopulateIntoResponse.js","sourceRoot":"","sources":["../../src/utils/repopulateIntoResponse.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,yBAA2D;IAC5F,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC;IAC9E,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,QAAQ,EAAE,CAAC,iBAAiB,CAAC;IAElF,OAAO,2BAA2B,CAChC,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,yBAAyB,CAC1B,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAwB,EACxB,aAA6E,EAC7E,yBAA2D;;IAE3D,oBAAoB;IACpB,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACxD,IAAI,kBAAkB,EAAE,CAAC;QACvB,OAAO,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,yBAAyB,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;IAC/B,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,YAAY,GAAG,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,mCAAI,EAAE,CAAC;QAE/C,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,cAAc,GAAG,eAAe,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAE5E,kCAAkC;QAClC,MAAM,cAAc,GAAgC,EAAE,CAAC;QACvD,KAAK,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACxD,MAAM,kBAAkB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAEjD,MAAM,yBAAyB,GAAG,uBAAuB,CACvD,UAAU,EACV,kBAAkB,aAAlB,kBAAkB,cAAlB,kBAAkB,GAAI,IAAI,EAC1B,yBAAyB,CAC1B,CAAC;YAEF,IAAI,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBAC7C,IAAI,yBAAyB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzC,cAAc,CAAC,IAAI,CAAC,GAAG,yBAAyB,CAAC,CAAC;gBACpD,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,yBAAyB,EAAE,CAAC;gBAC9B,cAAc,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAED,OAAO,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,yBAAyB,CAAC,CAAC;IAC7F,CAAC;IAED,OAAO,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,yBAAyB,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAwB,EACxB,aAA6E,EAC7E,YAAyC,EACzC,yBAA2D;IAE3D,qBAAqB;IACrB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;YAC5C,CAAC,CAAC;gBACE,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,YAAY;aACnB;YACH,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED,0DAA0D;IAC1D,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gEAAgE;IAChE,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO;gBACL,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,aAAa,CAAC,MAAM;aAC7B,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,MAAM;KAC7C,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAwB,EACxB,MAAwC,EACxC,yBAA2D;IAE3D,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEjE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,OAAO,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,CAAC;IACxB,CAAC;IAED,IAAI,MAAM,IAAI,gBAAgB,CAAC,YAAY,EAAE,CAAC;QAC5C,uCACK,MAAM,KACT,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,MAAM,IAC5C;IACJ,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,MAAM;KAC7C,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAAwB,EACxB,OAAoC,EACpC,yBAA2D;IAE3D,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEjE,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC;QACzD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,gBAAgB,CAAC,aAAa,CAAC;AACxC,CAAC"}
@@ -2,24 +2,34 @@ import type { Questionnaire, QuestionnaireItem, QuestionnaireResponse, Questionn
2
2
  import type { Tabs } from '../interfaces/tab.interface';
3
3
  import type { EnableWhenExpressions, EnableWhenItems } from '../interfaces/enableWhen.interface';
4
4
  /**
5
- * ItemToRepopulate interface
5
+ * Represents an item within a questionnaire that can be re-populated with updated data from the patient record.
6
6
  *
7
- * @property qItem - The QuestionnaireItem to repopulate
8
- * @property heading - The heading of the group to repopulate
9
- * @property newQRItem - The new QuestionnaireResponseItem to replace the old one
10
- * @property oldQRItem - The old QuestionnaireResponseItem to be replaced
11
- * @property newQRItems - The new QuestionnaireResponseItems to replace the old ones
12
- * @property oldQRItems - The old QuestionnaireResponseItems to be replaced
7
+ * @property qItem - QuestionnaireItem definition for this item
13
8
  *
14
- * @author Sean Fong
9
+ * @property sectionItemText - Top-level group item.text this item belongs to
10
+ *
11
+ * @property parentItemText - Immediate parent item.text
12
+ * @property isInGrid - Whether this item is part of a grid
13
+ *
14
+ * // For non-repeating items:
15
+ * @property serverQRItem - QuestionnaireResponseItem from server (optional)
16
+ * @property currentQRItem - Current QuestionnaireResponseItem in form (optional)
17
+ *
18
+ * // For repeating groups:
19
+ * @property serverQRItems - Array of QuestionnaireResponseItems from server (optional)
20
+ * @property currentQRItems - Array of current QuestionnaireResponseItems in form (optional)
21
+ *
22
+ * Use serverQRItem/currentQRItem for single items, and serverQRItems/currentQRItems for repeat groups.
15
23
  */
16
24
  export interface ItemToRepopulate {
17
25
  qItem: QuestionnaireItem | null;
18
- heading: string | null;
19
- newQRItem?: QuestionnaireResponseItem;
20
- oldQRItem?: QuestionnaireResponseItem;
21
- newQRItems?: QuestionnaireResponseItem[];
22
- oldQRItems?: QuestionnaireResponseItem[];
26
+ sectionItemText: string | null;
27
+ parentItemText: string | null;
28
+ isInGrid: boolean;
29
+ serverQRItem?: QuestionnaireResponseItem;
30
+ currentQRItem?: QuestionnaireResponseItem;
31
+ serverQRItems?: QuestionnaireResponseItem[];
32
+ currentQRItems?: QuestionnaireResponseItem[];
23
33
  }
24
34
  interface getItemsToRepopulateParams {
25
35
  sourceQuestionnaire: Questionnaire;