@aehrc/smart-forms-renderer 0.9.3 → 0.10.1

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 (163) hide show
  1. package/.swcrc +11 -0
  2. package/lib/components/FormComponents/GroupItem/NextTabButtonWrapper.js +5 -5
  3. package/lib/components/FormComponents/GroupItem/NextTabButtonWrapper.js.map +1 -1
  4. package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js +1 -1
  5. package/lib/components/FormComponents/RepeatItem/RemoveItemButton.d.ts +10 -0
  6. package/lib/components/FormComponents/RepeatItem/RemoveItemButton.js +30 -0
  7. package/lib/components/FormComponents/RepeatItem/RemoveItemButton.js.map +1 -0
  8. package/lib/components/FormComponents/RepeatItem/RepeatField.js +2 -2
  9. package/lib/components/FormComponents/SingleItem/SingleItem.js +2 -2
  10. package/lib/components/FormComponents/SingleItem/SingleItem.js.map +1 -1
  11. package/lib/components/FormComponents/Tables/GroupTable.d.ts +1 -2
  12. package/lib/components/FormComponents/Tables/GroupTable.js +59 -63
  13. package/lib/components/FormComponents/Tables/GroupTable.js.map +1 -1
  14. package/lib/components/FormComponents/Tables/GroupTableBody.d.ts +17 -0
  15. package/lib/components/FormComponents/Tables/GroupTableBody.js +48 -0
  16. package/lib/components/FormComponents/Tables/GroupTableBody.js.map +1 -0
  17. package/lib/components/FormComponents/Tables/GroupTableRow.d.ts +18 -5
  18. package/lib/components/FormComponents/Tables/GroupTableRow.js +17 -25
  19. package/lib/components/FormComponents/Tables/GroupTableRow.js.map +1 -1
  20. package/lib/components/FormComponents/Tables/GroupTableRowCells.d.ts +10 -0
  21. package/lib/components/FormComponents/Tables/GroupTableRowCells.js +46 -0
  22. package/lib/components/FormComponents/Tables/GroupTableRowCells.js.map +1 -0
  23. package/lib/components/FormComponents/Tables/GroupTableRows.d.ts +17 -0
  24. package/lib/components/FormComponents/Tables/GroupTableRows.js +45 -0
  25. package/lib/components/FormComponents/Tables/GroupTableRows.js.map +1 -0
  26. package/lib/components/FormComponents/Tables/GroupTableTestRow.d.ts +22 -0
  27. package/lib/components/FormComponents/Tables/GroupTableTestRow.js +43 -0
  28. package/lib/components/FormComponents/Tables/GroupTableTestRow.js.map +1 -0
  29. package/lib/components/FormComponents/Tables/GroupTableView.d.ts +21 -0
  30. package/lib/components/FormComponents/Tables/GroupTableView.js +65 -0
  31. package/lib/components/FormComponents/Tables/GroupTableView.js.map +1 -0
  32. package/lib/components/FormComponents/Tables/RemoveRowButton.d.ts +10 -0
  33. package/lib/components/FormComponents/Tables/RemoveRowButton.js +32 -0
  34. package/lib/components/FormComponents/Tables/RemoveRowButton.js.map +1 -0
  35. package/lib/components/FormComponents/Tables/SelectRowButton.d.ts +7 -0
  36. package/lib/components/FormComponents/Tables/SelectRowButton.js +26 -0
  37. package/lib/components/FormComponents/Tables/SelectRowButton.js.map +1 -0
  38. package/lib/components/FormComponents/Tables/Table.styles.d.ts +8 -0
  39. package/lib/components/FormComponents/Tables/Table.styles.js +17 -0
  40. package/lib/components/FormComponents/Tables/Table.styles.js.map +1 -1
  41. package/lib/components/Renderer/BaseRenderer.js +5 -6
  42. package/lib/components/Renderer/BaseRenderer.js.map +1 -1
  43. package/lib/components/Renderer/FormBodyCollapsible.js +4 -4
  44. package/lib/components/Renderer/FormBodyCollapsible.js.map +1 -1
  45. package/lib/components/Renderer/FormBodyTabbed.js +3 -3
  46. package/lib/components/Renderer/FormBodyTabbed.js.map +1 -1
  47. package/lib/components/Tabs/CompleteTabButton.js +2 -2
  48. package/lib/components/Tabs/CompleteTabButton.js.map +1 -1
  49. package/lib/components/Tabs/FormBodySingleTab.js +2 -2
  50. package/lib/components/Tabs/FormBodySingleTab.js.map +1 -1
  51. package/lib/components/Tabs/FormBodyTabList.js +4 -4
  52. package/lib/components/Tabs/FormBodyTabList.js.map +1 -1
  53. package/lib/hooks/useDecimalCalculatedExpression.js +2 -2
  54. package/lib/hooks/useDecimalCalculatedExpression.js.map +1 -1
  55. package/lib/hooks/useGroupTableRows.d.ts +9 -0
  56. package/lib/hooks/useGroupTableRows.js +26 -0
  57. package/lib/hooks/useGroupTableRows.js.map +1 -0
  58. package/lib/hooks/useHidden.js +4 -4
  59. package/lib/hooks/useHidden.js.map +1 -1
  60. package/lib/hooks/useInitialiseGroupTable.d.ts +2 -2
  61. package/lib/hooks/useInitialiseGroupTable.js.map +1 -1
  62. package/lib/hooks/useInitialiseRenderer.js +13 -15
  63. package/lib/hooks/useInitialiseRenderer.js.map +1 -1
  64. package/lib/hooks/useIntegerCalculatedExpression.js +2 -2
  65. package/lib/hooks/useIntegerCalculatedExpression.js.map +1 -1
  66. package/lib/hooks/useMinimalStringCalculatedExpression.js +25 -13
  67. package/lib/hooks/useStringCalculatedExpression.js +2 -2
  68. package/lib/hooks/useStringCalculatedExpression.js.map +1 -1
  69. package/lib/hooks/useTerminologyServerQuery.js +3 -4
  70. package/lib/hooks/useTerminologyServerQuery.js.map +1 -1
  71. package/lib/hooks/useValueSetCodings.js +10 -12
  72. package/lib/hooks/useValueSetCodings.js.map +1 -1
  73. package/lib/index.js +19 -20
  74. package/lib/index.js.map +1 -1
  75. package/lib/interfaces/groupTable.interface.d.ts +1 -1
  76. package/lib/setup-jest.js +1 -0
  77. package/lib/setup-jest.js.map +1 -0
  78. package/lib/stores/index.d.ts +4 -3
  79. package/lib/stores/index.js +4 -3
  80. package/lib/stores/index.js.map +1 -1
  81. package/lib/stores/questionnaireResponseStore.d.ts +28 -0
  82. package/lib/stores/questionnaireResponseStore.js +64 -0
  83. package/lib/stores/questionnaireResponseStore.js.map +1 -0
  84. package/lib/stores/questionnaireStore.d.ts +65 -0
  85. package/lib/stores/questionnaireStore.js +172 -0
  86. package/lib/stores/questionnaireStore.js.map +1 -0
  87. package/lib/stores/selector.d.ts +1 -1
  88. package/lib/stores/selector.js.map +1 -1
  89. package/lib/stores/smartConfigStore.d.ts +25 -0
  90. package/lib/stores/smartConfigStore.js +30 -0
  91. package/lib/stores/smartConfigStore.js.map +1 -0
  92. package/lib/stores/terminologyServerStore.d.ts +14 -0
  93. package/lib/stores/terminologyServerStore.js +26 -0
  94. package/lib/stores/terminologyServerStore.js.map +1 -0
  95. package/lib/stores/useQuestionnaireResponseStore.d.ts +14 -2
  96. package/lib/stores/useQuestionnaireResponseStore.js +4 -2
  97. package/lib/stores/useQuestionnaireResponseStore.js.map +1 -1
  98. package/lib/stores/useQuestionnaireStore.d.ts +30 -2
  99. package/lib/stores/useQuestionnaireStore.js +4 -2
  100. package/lib/stores/useQuestionnaireStore.js.map +1 -1
  101. package/lib/stories/MedicalHistoryTable.stories.js +45 -0
  102. package/lib/stories/MedicalHistoryTable.stories.js.map +1 -0
  103. package/lib/stories/SmartFormsRenderer.stories.js +103 -0
  104. package/lib/stories/SmartFormsRenderer.stories.js.map +1 -0
  105. package/lib/theme/overrides/Table.d.ts +1 -0
  106. package/lib/theme/overrides/Table.js +2 -1
  107. package/lib/theme/overrides/Table.js.map +1 -1
  108. package/lib/utils/calculatedExpression.js +1 -2
  109. package/lib/utils/calculatedExpression.js.map +1 -1
  110. package/lib/utils/groupTable.d.ts +3 -0
  111. package/lib/utils/groupTable.js +29 -0
  112. package/lib/utils/groupTable.js.map +1 -0
  113. package/package.json +9 -4
  114. package/src/components/FormComponents/GroupItem/NextTabButtonWrapper.tsx +5 -5
  115. package/src/components/FormComponents/RepeatGroup/DeleteItemButton.tsx +1 -1
  116. package/src/components/FormComponents/RepeatItem/{DeleteItemButton.tsx → RemoveItemButton.tsx} +4 -4
  117. package/src/components/FormComponents/RepeatItem/RepeatField.tsx +2 -2
  118. package/src/components/FormComponents/SingleItem/SingleItem.tsx +2 -2
  119. package/src/components/FormComponents/Tables/GroupTable.tsx +71 -125
  120. package/src/components/FormComponents/Tables/GroupTableBody.tsx +117 -0
  121. package/src/components/FormComponents/Tables/GroupTableRow.tsx +89 -49
  122. package/src/components/FormComponents/Tables/GroupTableRowCells.tsx +84 -0
  123. package/src/components/FormComponents/Tables/GroupTableView.tsx +169 -0
  124. package/src/components/FormComponents/Tables/{DeleteRowButton.tsx → RemoveRowButton.tsx} +7 -7
  125. package/src/components/FormComponents/Tables/SelectRowButton.tsx +37 -0
  126. package/src/components/FormComponents/Tables/Table.styles.tsx +25 -0
  127. package/src/components/Renderer/BaseRenderer.tsx +5 -6
  128. package/src/components/Renderer/FormBodyCollapsible.tsx +4 -5
  129. package/src/components/Renderer/FormBodyTabbed.tsx +3 -3
  130. package/src/components/Tabs/CompleteTabButton.tsx +2 -2
  131. package/src/components/Tabs/FormBodySingleTab.tsx +2 -3
  132. package/src/components/Tabs/FormBodyTabList.tsx +4 -4
  133. package/src/hooks/useDecimalCalculatedExpression.ts +2 -2
  134. package/src/hooks/useGroupTableRows.ts +33 -0
  135. package/src/hooks/useHidden.ts +4 -4
  136. package/src/hooks/useInitialiseGroupTable.ts +3 -3
  137. package/src/hooks/useInitialiseRenderer.ts +19 -19
  138. package/src/hooks/useIntegerCalculatedExpression.ts +2 -2
  139. package/src/hooks/useStringCalculatedExpression.ts +2 -2
  140. package/src/hooks/useTerminologyServerQuery.ts +3 -4
  141. package/src/hooks/useValueSetCodings.ts +10 -12
  142. package/src/index.ts +19 -20
  143. package/src/interfaces/groupTable.interface.ts +1 -1
  144. package/src/stores/index.ts +7 -3
  145. package/src/stores/questionnaireResponseStore.ts +83 -0
  146. package/src/stores/{useQuestionnaireStore.ts → questionnaireStore.ts} +7 -6
  147. package/src/stores/selector.ts +2 -1
  148. package/src/stores/smartConfigStore.ts +45 -0
  149. package/src/stores/{useTerminologyServerStore.ts → terminologyServerStore.ts} +5 -4
  150. package/src/stories/MedicalHistoryTable.stories.tsx +57 -0
  151. package/src/stories/SmartFormsRenderer.stories.ts +15 -5
  152. package/src/stories/assets/QItems-and-QRItems/QR_GTableMedicalHistory.json +80 -0
  153. package/src/stories/assets/QItems-and-QRItems/Q_GTableMedicalHistory.json +109 -0
  154. package/src/stories/assets/Qs-and-QRs/QDev715.json +16081 -0
  155. package/src/theme/overrides/Table.ts +2 -1
  156. package/src/utils/calculatedExpression.ts +1 -2
  157. package/src/utils/groupTable.ts +37 -0
  158. package/src/stores/useQuestionnaireResponseStore.ts +0 -63
  159. package/src/stores/useSmartConfigStore.ts +0 -27
  160. /package/src/stories/assets/{Q715.json → Qs-and-QRs/Q715.json} +0 -0
  161. /package/src/stories/assets/{QTestGrid.json → Qs-and-QRs/QTestGrid.json} +0 -0
  162. /package/src/stories/assets/{R715.json → Qs-and-QRs/R715.json} +0 -0
  163. /package/src/stories/assets/{RTestGrid.json → Qs-and-QRs/RTestGrid.json} +0 -0
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import type { QuestionnaireResponseItem } from 'fhir/r4';
3
+ declare function useGroupTableRows(qrItems: QuestionnaireResponseItem[]): {
4
+ tableRows: import("../interfaces/groupTable.interface").GroupTableRowModel[];
5
+ selectedIds: string[];
6
+ setTableRows: import("react").Dispatch<import("react").SetStateAction<import("../interfaces/groupTable.interface").GroupTableRowModel[]>>;
7
+ setSelectedIds: import("react").Dispatch<import("react").SetStateAction<string[]>>;
8
+ };
9
+ export default useGroupTableRows;
@@ -0,0 +1,26 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { useState } from 'react';
18
+ import useInitialiseGroupTable from './useInitialiseGroupTable';
19
+ function useGroupTableRows(qrItems) {
20
+ const initialisedGroupTableRows = useInitialiseGroupTable(qrItems);
21
+ const [tableRows, setTableRows] = useState(initialisedGroupTableRows);
22
+ const [selectedIds, setSelectedIds] = useState(initialisedGroupTableRows.map((row) => row.nanoId));
23
+ return { tableRows, selectedIds, setTableRows, setSelectedIds };
24
+ }
25
+ export default useGroupTableRows;
26
+ //# sourceMappingURL=useGroupTableRows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGroupTableRows.js","sourceRoot":"","sources":["../../src/hooks/useGroupTableRows.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAGhE,SAAS,iBAAiB,CAAC,OAAoC;IAC7D,MAAM,yBAAyB,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAEnE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IACtE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAC5C,yBAAyB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CACnD,CAAC;IAEF,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;AAClE,CAAC;AAED,eAAe,iBAAiB,CAAC"}
@@ -15,12 +15,12 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import { hasHiddenExtension } from '../utils/itemControl';
18
- import useQuestionnaireStore from '../stores/useQuestionnaireStore';
18
+ import { useQuestionnaireStore } from '../stores';
19
19
  import { isHiddenByEnableWhens } from '../utils/qItem';
20
20
  function useHidden(qItem) {
21
- const enableWhenIsActivated = useQuestionnaireStore((state) => state.enableWhenIsActivated);
22
- const enableWhenItems = useQuestionnaireStore((state) => state.enableWhenItems);
23
- const enableWhenExpressions = useQuestionnaireStore((state) => state.enableWhenExpressions);
21
+ const enableWhenIsActivated = useQuestionnaireStore.use.enableWhenIsActivated();
22
+ const enableWhenItems = useQuestionnaireStore.use.enableWhenItems();
23
+ const enableWhenExpressions = useQuestionnaireStore.use.enableWhenExpressions();
24
24
  if (hasHiddenExtension(qItem)) {
25
25
  return true;
26
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useHidden.js","sourceRoot":"","sources":["../../src/hooks/useHidden.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,qBAAqB,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,SAAS,SAAS,CAAC,KAAwB;IACzC,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC5F,MAAM,eAAe,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAChF,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAE5F,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE;QAC7B,OAAO,IAAI,CAAC;KACb;IAED,OAAO,qBAAqB,CAAC;QAC3B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,qBAAqB;QACrB,eAAe;QACf,qBAAqB;KACtB,CAAC,CAAC;AACL,CAAC;AAED,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"useHidden.js","sourceRoot":"","sources":["../../src/hooks/useHidden.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,SAAS,SAAS,CAAC,KAAwB;IACzC,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAChF,MAAM,eAAe,GAAG,qBAAqB,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;IACpE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE;QAC7B,OAAO,IAAI,CAAC;KACb;IAED,OAAO,qBAAqB,CAAC;QAC3B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,qBAAqB;QACrB,eAAe;QACf,qBAAqB;KACtB,CAAC,CAAC;AACL,CAAC;AAED,eAAe,SAAS,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import type { QuestionnaireResponseItem } from 'fhir/r4';
2
- import type { GroupTableRow } from '../interfaces/groupTable.interface';
3
- declare function useInitialiseGroupTable(qrItems: QuestionnaireResponseItem[]): GroupTableRow[];
2
+ import type { GroupTableRowModel } from '../interfaces/groupTable.interface';
3
+ declare function useInitialiseGroupTable(qrItems: QuestionnaireResponseItem[]): GroupTableRowModel[];
4
4
  export default useInitialiseGroupTable;
@@ -1 +1 @@
1
- {"version":3,"file":"useInitialiseGroupTable.js","sourceRoot":"","sources":["../../src/hooks/useInitialiseGroupTable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,SAAS,uBAAuB,CAAC,OAAoC;IACnE,IAAI,qBAAqB,GAAoB;QAC3C;YACE,MAAM,EAAE,MAAM,EAAE;YAChB,MAAM,EAAE,IAAI;SACb;KACF,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC7C,OAAO;gBACL,MAAM,EAAE,MAAM,EAAE;gBAChB,MAAM;aACP,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,eAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"useInitialiseGroupTable.js","sourceRoot":"","sources":["../../src/hooks/useInitialiseGroupTable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,SAAS,uBAAuB,CAAC,OAAoC;IACnE,IAAI,qBAAqB,GAAyB;QAChD;YACE,MAAM,EAAE,MAAM,EAAE;YAChB,MAAM,EAAE,IAAI;SACb;KACF,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC7C,OAAO;gBACL,MAAM,EAAE,MAAM,EAAE;gBAChB,MAAM;aACP,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,eAAe,uBAAuB,CAAC"}
@@ -16,22 +16,19 @@
16
16
  */
17
17
  import { useLayoutEffect, useState } from 'react';
18
18
  import { createEmptyQuestionnaireResponse } from '../utils/qrItem';
19
- import useQuestionnaireStore from '../stores/useQuestionnaireStore';
20
- import useQuestionnaireResponseStore from '../stores/useQuestionnaireResponseStore';
21
- import useSmartConfigStore from '../stores/useSmartConfigStore';
22
19
  import { readEncounter, readPatient, readUser } from '../api/smartClient';
23
- import useTerminologyServerStore from '../stores/useTerminologyServerStore';
20
+ import { useQuestionnaireResponseStore, useQuestionnaireStore, useSmartConfigStore, useTerminologyServerStore } from '../stores';
24
21
  function useInitialiseRenderer(questionnaire, questionnaireResponse, additionalVariables, terminologyServerUrl, fhirClient) {
25
- const buildSourceQuestionnaire = useQuestionnaireStore((state) => state.buildSourceQuestionnaire);
26
- const updatePopulatedProperties = useQuestionnaireStore((state) => state.updatePopulatedProperties);
27
- const buildSourceResponse = useQuestionnaireResponseStore((state) => state.buildSourceResponse);
28
- const setUpdatableResponseAsPopulated = useQuestionnaireResponseStore((state) => state.setUpdatableResponseAsPopulated);
29
- const setTerminologyServerUrl = useTerminologyServerStore((state) => state.setUrl);
30
- const resetTerminologyServerUrl = useTerminologyServerStore((state) => state.resetUrl);
31
- const setSmartClient = useSmartConfigStore((state) => state.setClient);
32
- const setPatient = useSmartConfigStore((state) => state.setPatient);
33
- const setUser = useSmartConfigStore((state) => state.setUser);
34
- const setEncounter = useSmartConfigStore((state) => state.setEncounter);
22
+ const buildSourceQuestionnaire = useQuestionnaireStore.use.buildSourceQuestionnaire();
23
+ const updatePopulatedProperties = useQuestionnaireStore.use.updatePopulatedProperties();
24
+ const buildSourceResponse = useQuestionnaireResponseStore.use.buildSourceResponse();
25
+ const setUpdatableResponseAsPopulated = useQuestionnaireResponseStore.use.setUpdatableResponseAsPopulated();
26
+ const setTerminologyServerUrl = useTerminologyServerStore.use.setUrl();
27
+ const resetTerminologyServerUrl = useTerminologyServerStore.use.resetUrl();
28
+ const setSmartClient = useSmartConfigStore.use.setClient();
29
+ const setPatient = useSmartConfigStore.use.setPatient();
30
+ const setUser = useSmartConfigStore.use.setUser();
31
+ const setEncounter = useSmartConfigStore.use.setEncounter();
35
32
  const [loading, setLoading] = useState(true);
36
33
  useLayoutEffect(() => {
37
34
  setLoading(true);
@@ -78,7 +75,8 @@ function useInitialiseRenderer(questionnaire, questionnaireResponse, additionalV
78
75
  setUser,
79
76
  setEncounter,
80
77
  terminologyServerUrl,
81
- setTerminologyServerUrl
78
+ setTerminologyServerUrl,
79
+ resetTerminologyServerUrl
82
80
  ]);
83
81
  return loading;
84
82
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useInitialiseRenderer.js","sourceRoot":"","sources":["../../src/hooks/useInitialiseRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useInitialiseRenderer.js","sourceRoot":"","sources":["../../src/hooks/useInitialiseRenderer.ts"],"names":[],"mappings":"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"}
@@ -16,10 +16,10 @@
16
16
  */
17
17
  import { useEffect, useState } from 'react';
18
18
  import { createEmptyQrItem } from '../utils/qrItem';
19
- import useQuestionnaireStore from '../stores/useQuestionnaireStore';
19
+ import { useQuestionnaireStore } from '../stores/questionnaireStore';
20
20
  function useIntegerCalculatedExpression(props) {
21
21
  const { qItem, inputValue, setInputValue, onQrItemChange } = props;
22
- const calculatedExpressions = useQuestionnaireStore((state) => state.calculatedExpressions);
22
+ const calculatedExpressions = useQuestionnaireStore.use.calculatedExpressions();
23
23
  const [calcExpUpdated, setCalcExpUpdated] = useState(false);
24
24
  useEffect(() => {
25
25
  const calcExpression = calculatedExpressions[qItem.linkId];
@@ -1 +1 @@
1
- {"version":3,"file":"useIntegerCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useIntegerCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,qBAAqB,MAAM,iCAAiC,CAAC;AAapE,SAAS,8BAA8B,CACrC,KAA0C;IAE1C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IAEnE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAE5F,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;QACH,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE3D,kEAAkE;QAClE,IAAI,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,MAAK,UAAU,IAAI,OAAO,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,CAAA,KAAK,QAAQ,EAAE;YACrF,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,UAAU,CAAC,GAAG,EAAE;gBACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,+BAA+B;YAC/B,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACpC,cAAc,iCACT,iBAAiB,CAAC,KAAK,CAAC,KAC3B,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,IAChD,CAAC;SACJ;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,eAAe,8BAA8B,CAAC"}
1
+ {"version":3,"file":"useIntegerCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useIntegerCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAarE,SAAS,8BAA8B,CACrC,KAA0C;IAE1C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IAEnE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;QACH,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE3D,kEAAkE;QAClE,IAAI,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,MAAK,UAAU,IAAI,OAAO,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,CAAA,KAAK,QAAQ,EAAE;YACrF,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,UAAU,CAAC,GAAG,EAAE;gBACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,+BAA+B;YAC/B,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACpC,cAAc,iCACT,iBAAiB,CAAC,KAAK,CAAC,KAC3B,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,IAChD,CAAC;SACJ;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,eAAe,8BAA8B,CAAC"}
@@ -18,20 +18,32 @@ import { useEffect } from 'react';
18
18
  import { createEmptyQrItem } from '../utils/qrItem';
19
19
  import useQuestionnaireStore from '../stores/useQuestionnaireStore';
20
20
  function useMinimalStringCalculatedExpression(props) {
21
- const { qItem, inputValue, onQrItemChange } = props;
22
- const calculatedExpressions = useQuestionnaireStore((state) => state.calculatedExpressions);
23
- useEffect(() => {
24
- const calcExpression = calculatedExpressions[qItem.linkId];
25
- // only update if calculated value is different from current value
26
- if ((calcExpression === null || calcExpression === void 0 ? void 0 : calcExpression.value) !== inputValue && typeof (calcExpression === null || calcExpression === void 0 ? void 0 : calcExpression.value) === 'string') {
27
- // update questionnaireResponse
28
- onQrItemChange(Object.assign(Object.assign({}, createEmptyQrItem(qItem)), { answer: [{ valueString: calcExpression.value }] }));
29
- }
30
- },
21
+ const { qItem, inputValue, onQrItemChange } = props;
22
+ const calculatedExpressions = useQuestionnaireStore((state) => state.calculatedExpressions);
23
+ useEffect(
24
+ () => {
25
+ const calcExpression = calculatedExpressions[qItem.linkId];
26
+ // only update if calculated value is different from current value
27
+ if (
28
+ (calcExpression === null || calcExpression === void 0 ? void 0 : calcExpression.value) !==
29
+ inputValue &&
30
+ typeof (calcExpression === null || calcExpression === void 0
31
+ ? void 0
32
+ : calcExpression.value) === 'string'
33
+ ) {
34
+ // update questionnaireResponse
35
+ onQrItemChange(
36
+ Object.assign(Object.assign({}, createEmptyQrItem(qItem)), {
37
+ answer: [{ valueString: calcExpression.value }]
38
+ })
39
+ );
40
+ }
41
+ },
31
42
  // Only trigger this effect if calculatedExpression of item changes
32
43
  // eslint-disable-next-line react-hooks/exhaustive-deps
33
- [calculatedExpressions]);
34
- return { calcExpUpdated: false };
44
+ [calculatedExpressions]
45
+ );
46
+ return { calcExpUpdated: false };
35
47
  }
36
48
  export default useMinimalStringCalculatedExpression;
37
- //# sourceMappingURL=useMinimalStringCalculatedExpression.js.map
49
+ //# sourceMappingURL=useMinimalStringCalculatedExpression.js.map
@@ -16,10 +16,10 @@
16
16
  */
17
17
  import { useEffect, useState } from 'react';
18
18
  import { createEmptyQrItem } from '../utils/qrItem';
19
- import useQuestionnaireStore from '../stores/useQuestionnaireStore';
19
+ import { useQuestionnaireStore } from '../stores/questionnaireStore';
20
20
  function useStringCalculatedExpression(props) {
21
21
  const { qItem, inputValue, setInputValue, onQrItemChange } = props;
22
- const calculatedExpressions = useQuestionnaireStore((state) => state.calculatedExpressions);
22
+ const calculatedExpressions = useQuestionnaireStore.use.calculatedExpressions();
23
23
  const [calcExpUpdated, setCalcExpUpdated] = useState(false);
24
24
  useEffect(() => {
25
25
  const calcExpression = calculatedExpressions[qItem.linkId];
@@ -1 +1 @@
1
- {"version":3,"file":"useStringCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useStringCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,qBAAqB,MAAM,iCAAiC,CAAC;AAapE,SAAS,6BAA6B,CACpC,KAAyC;IAEzC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IAEnE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAE5F,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;QACH,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE3D,kEAAkE;QAClE,IAAI,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,MAAK,UAAU,IAAI,OAAO,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,CAAA,KAAK,QAAQ,EAAE;YACrF,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,UAAU,CAAC,GAAG,EAAE;gBACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,+BAA+B;YAC/B,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACpC,cAAc,iCACT,iBAAiB,CAAC,KAAK,CAAC,KAC3B,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,IAC/C,CAAC;SACJ;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,eAAe,6BAA6B,CAAC"}
1
+ {"version":3,"file":"useStringCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useStringCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAarE,SAAS,6BAA6B,CACpC,KAAyC;IAEzC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IAEnE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;QACH,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE3D,kEAAkE;QAClE,IAAI,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,MAAK,UAAU,IAAI,OAAO,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,CAAA,KAAK,QAAQ,EAAE;YACrF,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,UAAU,CAAC,GAAG,EAAE;gBACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,+BAA+B;YAC/B,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACpC,cAAc,iCACT,iBAAiB,CAAC,KAAK,CAAC,KAC3B,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,IAC/C,CAAC;SACJ;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,eAAe,6BAA6B,CAAC"}
@@ -16,12 +16,11 @@
16
16
  */
17
17
  import { useQuery } from '@tanstack/react-query';
18
18
  import { getTerminologyServerUrl, getValueSetCodings, getValueSetPromise } from '../utils/valueSet';
19
- import useQuestionnaireStore from '../stores/useQuestionnaireStore';
20
- import useTerminologyServerStore from '../stores/useTerminologyServerStore';
19
+ import { useQuestionnaireStore, useTerminologyServerStore } from '../stores';
21
20
  function useTerminologyServerQuery(qItem, maxList, input, searchTerm) {
22
21
  var _a, _b;
23
- const processedValueSetUrls = useQuestionnaireStore((state) => state.processedValueSetUrls);
24
- const defaultTerminologyServerUrl = useTerminologyServerStore((state) => state.url);
22
+ const processedValueSetUrls = useQuestionnaireStore.use.processedValueSetUrls();
23
+ const defaultTerminologyServerUrl = useTerminologyServerStore.use.url();
25
24
  let fullUrl = '';
26
25
  let options = [];
27
26
  let feedback;
@@ -1 +1 @@
1
- {"version":3,"file":"useTerminologyServerQuery.js","sourceRoot":"","sources":["../../src/hooks/useTerminologyServerQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useTerminologyServerQuery.js","sourceRoot":"","sources":["../../src/hooks/useTerminologyServerQuery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAGpG,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAE7E,SAAS,yBAAyB,CAChC,KAAwB,EACxB,OAAe,EACf,KAAa,EACb,UAAkB;;IAElB,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAChF,MAAM,2BAA2B,GAAG,yBAAyB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAExE,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,OAAO,GAAa,EAAE,CAAC;IAC3B,IAAI,QAA4D,CAAC;IAEjE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,QAAQ,GAAG,SAAS,CAAC;KACtB;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;QAClD,QAAQ,GAAG,EAAE,OAAO,EAAE,oDAAoD,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;KAC7F;IAED,yDAAyD;IACzD,IAAI,iBAAiB,GAAG,KAAK,CAAC,cAAc,CAAC;IAC7C,IAAI,iBAAiB,EAAE;QACrB,IAAI,iBAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACrC,iBAAiB,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAChD;QAED,0EAA0E;QAC1E,IAAI,qBAAqB,CAAC,iBAAiB,CAAC,EAAE;YAC5C,iBAAiB,GAAG,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;SAC9D;QAED,MAAM,wBAAwB,GAC5B,iBAAiB,GAAG,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3F,OAAO,GAAG,wBAAwB,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;KACnF;IAED,gBAAgB;IAChB,MAAM,oBAAoB,GAAG,MAAA,uBAAuB,CAAC,KAAK,CAAC,mCAAI,2BAA2B,CAAC;IAC3F,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,QAAQ,CAC1C,CAAC,gBAAgB,EAAE,OAAO,CAAC,EAC3B,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,CAAC,EACvD;QACE,OAAO,EAAE,UAAU,CAAC,MAAM,IAAI,CAAC,IAAI,iBAAiB,KAAK,SAAS;KACnE,CACF,CAAC;IAEF,IAAI,KAAK,EAAE;QACT,OAAO,CAAC,IAAI,CAAC,4CAA4C,GAAG,KAAK,CAAC,CAAC;QACnE,QAAQ,GAAG;YACT,OAAO,EAAE,2EAA2E;YACpF,KAAK,EAAE,OAAO;SACf,CAAC;KACH;IAED,IAAI,IAAI,EAAE;QACR,IAAI,CAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,KAAK,MAAK,CAAC,EAAE;YAC/B,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;SACpC;aAAM;YACL,QAAQ,GAAG;gBACT,OAAO,EAAE,wEAAwE;gBACjF,KAAK,EAAE,SAAS;aACjB,CAAC;SACH;KACF;IAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;AACpD,CAAC;AACD,eAAe,yBAAyB,CAAC"}
@@ -19,20 +19,18 @@ import { getResourceFromLaunchContext, getTerminologyServerUrl, getValueSetCodin
19
19
  import { getAnswerExpression } from '../utils/itemControl';
20
20
  import fhirpath from 'fhirpath';
21
21
  import fhirpath_r4_model from 'fhirpath/fhir-context/r4';
22
- import useSmartConfigStore from '../stores/useSmartConfigStore';
23
- import useQuestionnaireStore from '../stores/useQuestionnaireStore';
24
- import useTerminologyServerStore from '../stores/useTerminologyServerStore';
22
+ import { useQuestionnaireStore, useSmartConfigStore, useTerminologyServerStore } from '../stores';
25
23
  function useValueSetCodings(qItem) {
26
24
  var _a;
27
- const patient = useSmartConfigStore((state) => state.patient);
28
- const user = useSmartConfigStore((state) => state.user);
29
- const encounter = useSmartConfigStore((state) => state.encounter);
30
- const launchContexts = useQuestionnaireStore((state) => state.launchContexts);
31
- const processedValueSetCodings = useQuestionnaireStore((state) => state.processedValueSetCodings);
32
- const cachedValueSetCodings = useQuestionnaireStore((state) => state.cachedValueSetCodings);
33
- const addCodingToCache = useQuestionnaireStore((state) => state.addCodingToCache);
34
- const { xFhirQueryVariables } = useQuestionnaireStore((state) => state.variables);
35
- const defaultTerminologyServerUrl = useTerminologyServerStore((state) => state.url);
25
+ const patient = useSmartConfigStore.use.patient();
26
+ const user = useSmartConfigStore.use.user();
27
+ const encounter = useSmartConfigStore.use.encounter();
28
+ const launchContexts = useQuestionnaireStore.use.launchContexts();
29
+ const processedValueSetCodings = useQuestionnaireStore.use.processedValueSetCodings();
30
+ const cachedValueSetCodings = useQuestionnaireStore.use.cachedValueSetCodings();
31
+ const addCodingToCache = useQuestionnaireStore.use.addCodingToCache();
32
+ const { xFhirQueryVariables } = useQuestionnaireStore.use.variables();
33
+ const defaultTerminologyServerUrl = useTerminologyServerStore.use.url();
36
34
  const valueSetUrl = qItem.answerValueSet;
37
35
  let initialCodings = useMemo(() => {
38
36
  // set options from cached answer options if present
@@ -1 +1 @@
1
- {"version":3,"file":"useValueSetCodings.js","sourceRoot":"","sources":["../../src/hooks/useValueSetCodings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useValueSetCodings.js","sourceRoot":"","sources":["../../src/hooks/useValueSetCodings.ts"],"names":[],"mappings":"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"}
package/lib/index.js CHANGED
@@ -7,9 +7,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import useQuestionnaireStore from './stores/useQuestionnaireStore';
10
+ import { questionnaireResponseStore, questionnaireStore } from './stores';
11
11
  import { createEmptyQuestionnaireResponse } from './utils/qrItem';
12
- import useQuestionnaireResponseStore from './stores/useQuestionnaireResponseStore';
13
12
  import { removeHiddenAnswers } from './utils/removeHidden';
14
13
  import { getItemsToRepopulate } from './utils/repopulateItems';
15
14
  import { repopulateItemsIntoResponse } from './utils/repopulateIntoResponse';
@@ -25,15 +24,15 @@ export * from './utils';
25
24
  */
26
25
  export function buildForm(questionnaire, questionnaireResponse) {
27
26
  return __awaiter(this, void 0, void 0, function* () {
28
- yield useQuestionnaireStore.getState().buildSourceQuestionnaire(questionnaire);
27
+ yield questionnaireStore.getState().buildSourceQuestionnaire(questionnaire);
29
28
  if (!questionnaireResponse) {
30
- useQuestionnaireResponseStore
29
+ questionnaireResponseStore
31
30
  .getState()
32
31
  .buildSourceResponse(createEmptyQuestionnaireResponse(questionnaire));
33
32
  return;
34
33
  }
35
- useQuestionnaireResponseStore.getState().buildSourceResponse(questionnaireResponse);
36
- useQuestionnaireStore.getState().updatePopulatedProperties(questionnaireResponse);
34
+ questionnaireResponseStore.getState().buildSourceResponse(questionnaireResponse);
35
+ questionnaireStore.getState().updatePopulatedProperties(questionnaireResponse);
37
36
  });
38
37
  }
39
38
  /**
@@ -42,8 +41,8 @@ export function buildForm(questionnaire, questionnaireResponse) {
42
41
  * @author Sean Fong
43
42
  */
44
43
  export function destroyForm() {
45
- useQuestionnaireStore.getState().destroySourceQuestionnaire();
46
- useQuestionnaireResponseStore.getState().destroySourceResponse();
44
+ questionnaireStore.getState().destroySourceQuestionnaire();
45
+ questionnaireResponseStore.getState().destroySourceResponse();
47
46
  }
48
47
  /**
49
48
  * Get the filled QuestionnaireResponse at its current state.
@@ -52,7 +51,7 @@ export function destroyForm() {
52
51
  * @author Sean Fong
53
52
  */
54
53
  export function getResponse() {
55
- return useQuestionnaireResponseStore.getState().updatableResponse;
54
+ return questionnaireResponseStore.getState().updatableResponse;
56
55
  }
57
56
  /**
58
57
  * Remove all hidden answers from the filled QuestionnaireResponse.
@@ -61,9 +60,9 @@ export function getResponse() {
61
60
  * @author Sean Fong
62
61
  */
63
62
  export function removeHiddenAnswersFromResponse(questionnaire, questionnaireResponse) {
64
- const enableWhenIsActivated = useQuestionnaireStore.getState().enableWhenIsActivated;
65
- const enableWhenItems = useQuestionnaireStore.getState().enableWhenItems;
66
- const enableWhenExpressions = useQuestionnaireStore.getState().enableWhenExpressions;
63
+ const enableWhenIsActivated = questionnaireStore.getState().enableWhenIsActivated;
64
+ const enableWhenItems = questionnaireStore.getState().enableWhenItems;
65
+ const enableWhenExpressions = questionnaireStore.getState().enableWhenExpressions;
67
66
  return removeHiddenAnswers({
68
67
  questionnaire,
69
68
  questionnaireResponse,
@@ -78,12 +77,12 @@ export function removeHiddenAnswersFromResponse(questionnaire, questionnaireResp
78
77
  * @author Sean Fong
79
78
  */
80
79
  export function generateItemsToRepopulate(populatedResponse) {
81
- const sourceQuestionnaire = useQuestionnaireStore.getState().sourceQuestionnaire;
82
- const tabs = useQuestionnaireStore.getState().tabs;
83
- const updatableResponse = useQuestionnaireResponseStore.getState().updatableResponse;
84
- const enableWhenIsActivated = useQuestionnaireStore.getState().enableWhenIsActivated;
85
- const enableWhenItems = useQuestionnaireStore.getState().enableWhenItems;
86
- const enableWhenExpressions = useQuestionnaireStore.getState().enableWhenExpressions;
80
+ const sourceQuestionnaire = questionnaireStore.getState().sourceQuestionnaire;
81
+ const tabs = questionnaireStore.getState().tabs;
82
+ const updatableResponse = questionnaireResponseStore.getState().updatableResponse;
83
+ const enableWhenIsActivated = questionnaireStore.getState().enableWhenIsActivated;
84
+ const enableWhenItems = questionnaireStore.getState().enableWhenItems;
85
+ const enableWhenExpressions = questionnaireStore.getState().enableWhenExpressions;
87
86
  return getItemsToRepopulate({
88
87
  sourceQuestionnaire,
89
88
  tabs,
@@ -100,8 +99,8 @@ export function generateItemsToRepopulate(populatedResponse) {
100
99
  * @author Sean Fong
101
100
  */
102
101
  export function repopulateResponse(checkedItemsToRepopulate) {
103
- const sourceQuestionnaire = useQuestionnaireStore.getState().sourceQuestionnaire;
104
- const updatableResponse = useQuestionnaireResponseStore.getState().updatableResponse;
102
+ const sourceQuestionnaire = questionnaireStore.getState().sourceQuestionnaire;
103
+ const updatableResponse = questionnaireResponseStore.getState().updatableResponse;
105
104
  return repopulateItemsIntoResponse(sourceQuestionnaire, updatableResponse, checkedItemsToRepopulate);
106
105
  }
107
106
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,qBAAqB,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,gCAAgC,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,6BAA6B,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAE7E,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AAGxB;;;;;GAKG;AACH,MAAM,UAAgB,SAAS,CAC7B,aAA4B,EAC5B,qBAA6C;;QAE7C,MAAM,qBAAqB,CAAC,QAAQ,EAAE,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC;QAE/E,IAAI,CAAC,qBAAqB,EAAE;YAC1B,6BAA6B;iBAC1B,QAAQ,EAAE;iBACV,mBAAmB,CAAC,gCAAgC,CAAC,aAAa,CAAC,CAAC,CAAC;YACxE,OAAO;SACR;QAED,6BAA6B,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QACpF,qBAAqB,CAAC,QAAQ,EAAE,CAAC,yBAAyB,CAAC,qBAAqB,CAAC,CAAC;IACpF,CAAC;CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW;IACzB,qBAAqB,CAAC,QAAQ,EAAE,CAAC,0BAA0B,EAAE,CAAC;IAC9D,6BAA6B,CAAC,QAAQ,EAAE,CAAC,qBAAqB,EAAE,CAAC;AACnE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,6BAA6B,CAAC,QAAQ,EAAE,CAAC,iBAAiB,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAC7C,aAA4B,EAC5B,qBAA4C;IAE5C,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,qBAAqB,CAAC;IACrF,MAAM,eAAe,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAC;IACzE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,qBAAqB,CAAC;IAErF,OAAO,mBAAmB,CAAC;QACzB,aAAa;QACb,qBAAqB;QACrB,qBAAqB;QACrB,eAAe;QACf,qBAAqB;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,iBAAwC;IAChF,MAAM,mBAAmB,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC;IACjF,MAAM,IAAI,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC;IACnD,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,QAAQ,EAAE,CAAC,iBAAiB,CAAC;IACrF,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,qBAAqB,CAAC;IACrF,MAAM,eAAe,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAC;IACzE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,qBAAqB,CAAC;IAErF,OAAO,oBAAoB,CAAC;QAC1B,mBAAmB;QACnB,IAAI;QACJ,iBAAiB;QACjB,iBAAiB;QACjB,qBAAqB;QACrB,eAAe;QACf,qBAAqB;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,wBAA0D;IAC3F,MAAM,mBAAmB,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC;IACjF,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,QAAQ,EAAE,CAAC,iBAAiB,CAAC;IAErF,OAAO,2BAA2B,CAChC,mBAAmB,EACnB,iBAAiB,EACjB,wBAAwB,CACzB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { QuestionnaireResponseItem } from 'fhir/r4';
2
- export interface GroupTableRow {
2
+ export interface GroupTableRowModel {
3
3
  nanoId: string;
4
4
  qrItem: QuestionnaireResponseItem | null;
5
5
  }
@@ -0,0 +1 @@
1
+ import '@testing-library/jest-dom';
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/setup-jest.ts"],"sourcesContent":["import '@testing-library/jest-dom';\n"],"names":[],"mappings":"AAAA,OAAO,4BAA4B"}
@@ -1,3 +1,4 @@
1
- export { default as useQuestionnaireStore } from './useQuestionnaireStore';
2
- export { default as useQuestionnaireResponseStore } from './useQuestionnaireResponseStore';
3
- export { default as useSmartConfigStore } from './useSmartConfigStore';
1
+ export { questionnaireStore, useQuestionnaireStore } from './questionnaireStore';
2
+ export { questionnaireResponseStore, useQuestionnaireResponseStore } from './questionnaireResponseStore';
3
+ export { smartConfigStore, useSmartConfigStore } from './smartConfigStore';
4
+ export { terminologyServerStore, useTerminologyServerStore } from './terminologyServerStore';
@@ -1,4 +1,5 @@
1
- export { default as useQuestionnaireStore } from './useQuestionnaireStore';
2
- export { default as useQuestionnaireResponseStore } from './useQuestionnaireResponseStore';
3
- export { default as useSmartConfigStore } from './useSmartConfigStore';
1
+ export { questionnaireStore, useQuestionnaireStore } from './questionnaireStore';
2
+ export { questionnaireResponseStore, useQuestionnaireResponseStore } from './questionnaireResponseStore';
3
+ export { smartConfigStore, useSmartConfigStore } from './smartConfigStore';
4
+ export { terminologyServerStore, useTerminologyServerStore } from './terminologyServerStore';
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC9B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,28 @@
1
+ import type { QuestionnaireResponse } from 'fhir/r4';
2
+ import type { Diff } from 'deep-diff';
3
+ interface QuestionnaireResponseStoreType {
4
+ sourceResponse: QuestionnaireResponse;
5
+ updatableResponse: QuestionnaireResponse;
6
+ formChangesHistory: (Diff<QuestionnaireResponse, QuestionnaireResponse>[] | null)[];
7
+ buildSourceResponse: (response: QuestionnaireResponse) => void;
8
+ setUpdatableResponseAsPopulated: (populatedResponse: QuestionnaireResponse) => void;
9
+ updateResponse: (updatedResponse: QuestionnaireResponse) => void;
10
+ setUpdatableResponseAsSaved: (savedResponse: QuestionnaireResponse) => void;
11
+ setUpdatableResponseAsEmpty: (clearedResponse: QuestionnaireResponse) => void;
12
+ destroySourceResponse: () => void;
13
+ }
14
+ export declare const questionnaireResponseStore: import("zustand/vanilla").StoreApi<QuestionnaireResponseStoreType>;
15
+ export declare const useQuestionnaireResponseStore: import("zustand/vanilla").StoreApi<QuestionnaireResponseStoreType> & {
16
+ use: {
17
+ sourceResponse: () => QuestionnaireResponse;
18
+ updatableResponse: () => QuestionnaireResponse;
19
+ formChangesHistory: () => (Diff<QuestionnaireResponse, QuestionnaireResponse>[] | null)[];
20
+ buildSourceResponse: () => (response: QuestionnaireResponse) => void;
21
+ setUpdatableResponseAsPopulated: () => (populatedResponse: QuestionnaireResponse) => void;
22
+ updateResponse: () => (updatedResponse: QuestionnaireResponse) => void;
23
+ setUpdatableResponseAsSaved: () => (savedResponse: QuestionnaireResponse) => void;
24
+ setUpdatableResponseAsEmpty: () => (clearedResponse: QuestionnaireResponse) => void;
25
+ destroySourceResponse: () => () => void;
26
+ };
27
+ };
28
+ export {};
@@ -0,0 +1,64 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { createStore } from 'zustand/vanilla';
18
+ import { emptyResponse } from '../utils/emptyResource';
19
+ import cloneDeep from 'lodash.clonedeep';
20
+ import { diff } from 'deep-diff';
21
+ import { createSelectors } from './selector';
22
+ export const questionnaireResponseStore = createStore()((set, get) => ({
23
+ sourceResponse: cloneDeep(emptyResponse),
24
+ updatableResponse: cloneDeep(emptyResponse),
25
+ formChangesHistory: [],
26
+ buildSourceResponse: (questionnaireResponse) => {
27
+ set(() => ({
28
+ sourceResponse: questionnaireResponse,
29
+ updatableResponse: questionnaireResponse
30
+ }));
31
+ },
32
+ setUpdatableResponseAsPopulated: (populatedResponse) => {
33
+ var _a;
34
+ const formChanges = (_a = diff(get().updatableResponse, populatedResponse)) !== null && _a !== void 0 ? _a : null;
35
+ set(() => ({
36
+ updatableResponse: populatedResponse,
37
+ formChangesHistory: [...get().formChangesHistory, formChanges]
38
+ }));
39
+ },
40
+ updateResponse: (updatedResponse) => {
41
+ var _a;
42
+ const formChanges = (_a = diff(get().updatableResponse, updatedResponse)) !== null && _a !== void 0 ? _a : null;
43
+ set(() => ({
44
+ updatableResponse: updatedResponse,
45
+ formChangesHistory: [...get().formChangesHistory, formChanges]
46
+ }));
47
+ },
48
+ setUpdatableResponseAsSaved: (savedResponse) => set(() => ({
49
+ sourceResponse: savedResponse,
50
+ updatableResponse: savedResponse,
51
+ formChangesHistory: []
52
+ })),
53
+ setUpdatableResponseAsEmpty: (clearedResponse) => set(() => ({
54
+ updatableResponse: clearedResponse,
55
+ formChangesHistory: []
56
+ })),
57
+ destroySourceResponse: () => set(() => ({
58
+ sourceResponse: cloneDeep(emptyResponse),
59
+ updatableResponse: cloneDeep(emptyResponse),
60
+ formChangesHistory: []
61
+ }))
62
+ }));
63
+ export const useQuestionnaireResponseStore = createSelectors(questionnaireResponseStore);
64
+ //# sourceMappingURL=questionnaireResponseStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"questionnaireResponseStore.js","sourceRoot":"","sources":["../../src/stores/questionnaireResponseStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,SAAS,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAc7C,MAAM,CAAC,MAAM,0BAA0B,GAAG,WAAW,EAAkC,CACrF,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACb,cAAc,EAAE,SAAS,CAAC,aAAa,CAAC;IACxC,iBAAiB,EAAE,SAAS,CAAC,aAAa,CAAC;IAC3C,kBAAkB,EAAE,EAAE;IACtB,mBAAmB,EAAE,CAAC,qBAA4C,EAAE,EAAE;QACpE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACT,cAAc,EAAE,qBAAqB;YACrC,iBAAiB,EAAE,qBAAqB;SACzC,CAAC,CAAC,CAAC;IACN,CAAC;IACD,+BAA+B,EAAE,CAAC,iBAAwC,EAAE,EAAE;;QAC5E,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,GAAG,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,mCAAI,IAAI,CAAC;QAC7E,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACT,iBAAiB,EAAE,iBAAiB;YACpC,kBAAkB,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,kBAAkB,EAAE,WAAW,CAAC;SAC/D,CAAC,CAAC,CAAC;IACN,CAAC;IACD,cAAc,EAAE,CAAC,eAAsC,EAAE,EAAE;;QACzD,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,GAAG,EAAE,CAAC,iBAAiB,EAAE,eAAe,CAAC,mCAAI,IAAI,CAAC;QAC3E,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACT,iBAAiB,EAAE,eAAe;YAClC,kBAAkB,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,kBAAkB,EAAE,WAAW,CAAC;SAC/D,CAAC,CAAC,CAAC;IACN,CAAC;IACD,2BAA2B,EAAE,CAAC,aAAoC,EAAE,EAAE,CACpE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;QACT,cAAc,EAAE,aAAa;QAC7B,iBAAiB,EAAE,aAAa;QAChC,kBAAkB,EAAE,EAAE;KACvB,CAAC,CAAC;IACL,2BAA2B,EAAE,CAAC,eAAsC,EAAE,EAAE,CACtE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;QACT,iBAAiB,EAAE,eAAe;QAClC,kBAAkB,EAAE,EAAE;KACvB,CAAC,CAAC;IACL,qBAAqB,EAAE,GAAG,EAAE,CAC1B,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;QACT,cAAc,EAAE,SAAS,CAAC,aAAa,CAAC;QACxC,iBAAiB,EAAE,SAAS,CAAC,aAAa,CAAC;QAC3C,kBAAkB,EAAE,EAAE;KACvB,CAAC,CAAC;CACN,CAAC,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,eAAe,CAAC,0BAA0B,CAAC,CAAC"}