@aehrc/smart-forms-renderer 0.44.2 → 1.0.0-alpha.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.
Files changed (137) hide show
  1. package/lib/components/FormComponents/CustomComponent.d.ts +9 -0
  2. package/lib/components/FormComponents/CustomComponent.js +31 -0
  3. package/lib/components/FormComponents/CustomComponent.js.map +1 -0
  4. package/lib/components/FormComponents/CustomComponentWrapper.d.ts +1 -0
  5. package/lib/components/FormComponents/CustomComponentWrapper.js +40 -0
  6. package/lib/components/FormComponents/CustomComponentWrapper.js.map +1 -0
  7. package/lib/components/FormComponents/GroupItem/Collapsible.d.ts +3 -0
  8. package/lib/components/FormComponents/GroupItem/Collapsible.js +6 -0
  9. package/lib/components/FormComponents/GroupItem/Collapsible.js.map +1 -0
  10. package/lib/components/FormComponents/GroupItem/GroupAccordion.d.ts +0 -0
  11. package/lib/components/FormComponents/GroupItem/GroupAccordion.js +2 -0
  12. package/lib/components/FormComponents/GroupItem/GroupAccordion.js.map +1 -0
  13. package/lib/components/FormComponents/GroupItem/GroupItem.d.ts +1 -0
  14. package/lib/components/FormComponents/GroupItem/GroupItem.js +2 -2
  15. package/lib/components/FormComponents/GroupItem/GroupItem.js.map +1 -1
  16. package/lib/components/FormComponents/GroupItem/GroupItemView.d.ts +1 -0
  17. package/lib/components/FormComponents/GroupItem/GroupItemView.js +11 -1
  18. package/lib/components/FormComponents/GroupItem/GroupItemView.js.map +1 -1
  19. package/lib/components/FormComponents/GroupItem/PageButtonWrapper.js +7 -0
  20. package/lib/components/FormComponents/GroupItem/PageButtonWrapper.js.map +1 -1
  21. package/lib/components/FormComponents/ItemParts/ItemLabelText.js +4 -1
  22. package/lib/components/FormComponents/ItemParts/ItemLabelText.js.map +1 -1
  23. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js +6 -5
  24. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js.map +1 -1
  25. package/lib/components/FormComponents/ItemParts/index.d.ts +1 -0
  26. package/lib/components/FormComponents/ItemParts/index.js +18 -0
  27. package/lib/components/FormComponents/ItemParts/index.js.map +1 -0
  28. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js +9 -0
  29. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +1 -1
  30. package/lib/components/FormComponents/StringItem/index.d.ts +1 -0
  31. package/lib/components/FormComponents/StringItem/index.js +18 -0
  32. package/lib/components/FormComponents/StringItem/index.js.map +1 -0
  33. package/lib/components/FormComponents/index.d.ts +2 -0
  34. package/lib/components/FormComponents/index.js +3 -0
  35. package/lib/components/FormComponents/index.js.map +1 -1
  36. package/lib/components/Pages/SingleItemPaginated.d.ts +19 -0
  37. package/lib/components/Pages/SingleItemPaginated.js +7 -0
  38. package/lib/components/Pages/SingleItemPaginated.js.map +1 -0
  39. package/lib/components/Renderer/BaseRenderer.js +5 -5
  40. package/lib/components/Renderer/BaseRenderer.js.map +1 -1
  41. package/lib/components/Renderer/FormBodyPaginated.d.ts +9 -0
  42. package/lib/components/Renderer/FormBodyPaginated.js +49 -0
  43. package/lib/components/Renderer/FormBodyPaginated.js.map +1 -0
  44. package/lib/components/Renderer/FormTopLevelItem.js +0 -7
  45. package/lib/components/Renderer/FormTopLevelItem.js.map +1 -1
  46. package/lib/components/Renderer/PageItem.d.ts +9 -0
  47. package/lib/components/Renderer/PageItem.js +68 -0
  48. package/lib/components/Renderer/PageItem.js.map +1 -0
  49. package/lib/components/index.d.ts +2 -1
  50. package/lib/components/index.js +3 -1
  51. package/lib/components/index.js.map +1 -1
  52. package/lib/hooks/index.d.ts +4 -0
  53. package/lib/hooks/index.js +5 -0
  54. package/lib/hooks/index.js.map +1 -1
  55. package/lib/hooks/useBuildForm.d.ts +5 -1
  56. package/lib/hooks/useBuildForm.js +20 -3
  57. package/lib/hooks/useBuildForm.js.map +1 -1
  58. package/lib/hooks/useInitialiseGroupTable.d.ts +4 -0
  59. package/lib/hooks/useInitialiseGroupTable.js +36 -0
  60. package/lib/hooks/useInitialiseGroupTable.js.map +1 -0
  61. package/lib/hooks/useNumberInput.d.ts +3 -0
  62. package/lib/hooks/useNumberInput.js +31 -0
  63. package/lib/hooks/useNumberInput.js.map +1 -0
  64. package/lib/hooks/useRepeatGroups.d.ts +4 -0
  65. package/lib/hooks/useRepeatGroups.js +34 -0
  66. package/lib/hooks/useRepeatGroups.js.map +1 -0
  67. package/lib/hooks/useStringInput.d.ts +3 -0
  68. package/lib/hooks/useStringInput.js +32 -0
  69. package/lib/hooks/useStringInput.js.map +1 -0
  70. package/lib/index.d.ts +4 -4
  71. package/lib/index.js +3 -3
  72. package/lib/index.js.map +1 -1
  73. package/lib/interfaces/customComponent.d.ts +9 -0
  74. package/lib/interfaces/customComponent.interface.d.ts +9 -0
  75. package/lib/interfaces/customComponent.interface.js +18 -0
  76. package/lib/interfaces/customComponent.interface.js.map +1 -0
  77. package/lib/interfaces/customComponent.js +18 -0
  78. package/lib/interfaces/customComponent.js.map +1 -0
  79. package/lib/interfaces/index.d.ts +1 -0
  80. package/lib/stores/questionnaireStore.d.ts +6 -2
  81. package/lib/stores/questionnaireStore.js +5 -2
  82. package/lib/stores/questionnaireStore.js.map +1 -1
  83. package/lib/stores/rendererStylingStore.d.ts +28 -0
  84. package/lib/stores/rendererStylingStore.js +38 -0
  85. package/lib/stores/rendererStylingStore.js.map +1 -0
  86. package/lib/stores/stylingStore.d.ts +23 -0
  87. package/lib/stores/stylingStore.js +27 -0
  88. package/lib/stores/stylingStore.js.map +1 -0
  89. package/lib/stories/storybookWrappers/iframeResizerChild.d.ts +1 -0
  90. package/lib/stories/storybookWrappers/iframeResizerChild.js +849 -0
  91. package/lib/stories/storybookWrappers/iframeResizerChild.js.map +1 -0
  92. package/lib/utils/customComponent.d.ts +9 -0
  93. package/lib/utils/customComponent.js +18 -0
  94. package/lib/utils/customComponent.js.map +1 -0
  95. package/lib/utils/index.d.ts +1 -0
  96. package/lib/utils/index.js +1 -0
  97. package/lib/utils/index.js.map +1 -1
  98. package/lib/utils/manageForm.d.ts +3 -1
  99. package/lib/utils/manageForm.js +3 -2
  100. package/lib/utils/manageForm.js.map +1 -1
  101. package/lib/utils/openChoice.js +2 -10
  102. package/lib/utils/openChoice.js.map +1 -1
  103. package/lib/utils/page.d.ts +3 -3
  104. package/lib/utils/page.js +2 -5
  105. package/lib/utils/page.js.map +1 -1
  106. package/lib/utils/questionnaireStoreUtils/extractPages.js +5 -11
  107. package/lib/utils/questionnaireStoreUtils/extractPages.js.map +1 -1
  108. package/package.json +1 -1
  109. package/src/components/FormComponents/GroupItem/GroupItem.tsx +3 -0
  110. package/src/components/FormComponents/GroupItem/GroupItemView.tsx +33 -0
  111. package/src/components/FormComponents/GroupItem/PageButtonWrapper.tsx +8 -0
  112. package/src/components/FormComponents/ItemParts/ItemLabelText.tsx +9 -1
  113. package/src/components/FormComponents/ItemParts/ItemLabelWrapper.tsx +12 -10
  114. package/src/components/FormComponents/ItemParts/index.ts +18 -0
  115. package/src/components/FormComponents/SingleItem/SingleItemSwitcher.tsx +20 -0
  116. package/src/components/FormComponents/StringItem/index.ts +18 -0
  117. package/src/components/FormComponents/index.ts +4 -0
  118. package/src/components/Renderer/BaseRenderer.tsx +5 -5
  119. package/src/components/Renderer/FormBodyPaginated.tsx +127 -0
  120. package/src/components/Renderer/FormTopLevelItem.tsx +0 -17
  121. package/src/components/index.ts +6 -1
  122. package/src/hooks/index.ts +6 -0
  123. package/src/hooks/useBuildForm.ts +27 -3
  124. package/src/index.ts +22 -3
  125. package/src/interfaces/customComponent.interface.ts +27 -0
  126. package/src/interfaces/index.ts +1 -0
  127. package/src/stores/questionnaireStore.ts +11 -3
  128. package/src/stores/rendererStylingStore.ts +75 -0
  129. package/src/stories/assets/questionnaires/QItemControlGroup.ts +772 -0
  130. package/src/stories/sdc/ItemControlGroup.stories.tsx +7 -0
  131. package/src/utils/index.ts +2 -0
  132. package/src/utils/manageForm.ts +12 -2
  133. package/src/utils/openChoice.ts +2 -13
  134. package/src/utils/page.ts +4 -11
  135. package/src/utils/questionnaireStoreUtils/extractPages.ts +5 -12
  136. package/src/components/Renderer/FormBodyPage.tsx +0 -93
  137. package/src/components/Renderer/FormTopLevelPage.tsx +0 -70
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { PropsWithQrItemChangeHandler } from '../../interfaces/renderProps.interface';
3
+ import { QuestionnaireItem, QuestionnaireResponseItem } from 'fhir/r4';
4
+ interface CustomComponentProps extends PropsWithQrItemChangeHandler {
5
+ qItem: QuestionnaireItem;
6
+ qrItem: QuestionnaireResponseItem | null;
7
+ }
8
+ declare function CustomComponent(props: CustomComponentProps): React.JSX.Element;
9
+ export default CustomComponent;
@@ -0,0 +1,31 @@
1
+ /*
2
+ * Copyright 2024 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 React from 'react';
18
+ import { useQuestionnaireStore } from '../../stores';
19
+ import { FullWidthFormComponentBox } from '../Box.styles';
20
+ import ItemFieldGrid from './ItemParts/ItemFieldGrid';
21
+ import BooleanField from './BooleanItem/BooleanField';
22
+ function CustomComponent(props) {
23
+ const { qItem, qrItem, onQrItemChange } = props;
24
+ const onFocusLinkId = useQuestionnaireStore.use.onFocusLinkId();
25
+ r;
26
+ return (React.createElement(FullWidthFormComponentBox, { "data-test": "q-item-boolean-box", "data-linkid": qItem.linkId, onClick: () => onFocusLinkId(qItem.linkId) },
27
+ React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly },
28
+ React.createElement(BooleanField, { qItem: qItem, readOnly: readOnly, valueBoolean: valueBoolean, calcExpUpdated: calcExpUpdated, onCheckedChange: handleValueChange, onClear: handleClear }))));
29
+ }
30
+ export default CustomComponent;
31
+ //# sourceMappingURL=CustomComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomComponent.js","sourceRoot":"","sources":["../../../src/components/FormComponents/CustomComponent.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,aAAa,MAAM,2BAA2B,CAAC;AACtD,OAAO,YAAY,MAAM,4BAA4B,CAAC;AAOtD,SAAS,eAAe,CAAC,KAA2B;IAClD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IAEhD,MAAM,aAAa,GAAG,qBAAqB,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAEhE,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,yBAAyB,iBACd,oBAAoB,iBACjB,KAAK,CAAC,MAAM,EACzB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC;QAC1C,oBAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ;YAC7C,oBAAC,YAAY,IACX,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,iBAAiB,EAClC,OAAO,EAAE,WAAW,GACpB,CACY,CACU,CAC7B,CAAC;AACJ,CAAC;AAED,eAAe,eAAe,CAAC"}
@@ -0,0 +1,40 @@
1
+ /*
2
+ * Copyright 2024 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
+ export {};
18
+ // function CustomComponentWrapper(props: CustomComponentWrapperProps) {
19
+ // const { qItem, qrItem, onQrItemChange } = props;
20
+ //
21
+ // const onFocusLinkId = useQuestionnaireStore.use.onFocusLinkId();
22
+ //
23
+ // if (includeItemFieldGrid) {
24
+ // return (
25
+ // <FullWidthFormComponentBox
26
+ // data-test="q-item-boolean-box"
27
+ // data-linkid={qItem.linkId}
28
+ // onClick={() => onFocusLinkId(qItem.linkId)}>
29
+ // <ItemFieldGrid qItem={qItem} readOnly={false}>
30
+ // {children}
31
+ // </ItemFieldGrid>
32
+ // </FullWidthFormComponentBox>
33
+ // );
34
+ // }
35
+ //
36
+ // return <>{children}</>;
37
+ // }
38
+ //
39
+ // export default CustomComponentWrapper;
40
+ //# sourceMappingURL=CustomComponentWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomComponentWrapper.js","sourceRoot":"","sources":["../../../src/components/FormComponents/CustomComponentWrapper.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;AAUH,wEAAwE;AACxE,qDAAqD;AACrD,EAAE;AACF,qEAAqE;AACrE,EAAE;AACF,gCAAgC;AAChC,eAAe;AACf,mCAAmC;AACnC,yCAAyC;AACzC,qCAAqC;AACrC,uDAAuD;AACvD,yDAAyD;AACzD,uBAAuB;AACvB,2BAA2B;AAC3B,qCAAqC;AACrC,SAAS;AACT,MAAM;AACN,EAAE;AACF,4BAA4B;AAC5B,IAAI;AACJ,EAAE;AACF,yCAAyC"}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare function Collapsible(props: any): React.JSX.Element;
3
+ export default Collapsible;
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ function Collapsible(props) {
3
+ return React.createElement("div", null);
4
+ }
5
+ export default Collapsible;
6
+ //# sourceMappingURL=Collapsible.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Collapsible.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/Collapsible.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,SAAS,WAAW,CAAC,KAAK;IACxB,OAAO,gCAAW,CAAC;AACrB,CAAC;AAED,eAAe,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=GroupAccordion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupAccordion.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/GroupAccordion.tsx"],"names":[],"mappings":""}
@@ -7,6 +7,7 @@ interface GroupItemProps extends PropsWithQrItemChangeHandler, PropsWithIsRepeat
7
7
  qItem: QuestionnaireItem;
8
8
  qrItem: QuestionnaireResponseItem | null;
9
9
  groupCardElevation: number;
10
+ disableCardView?: boolean;
10
11
  tabIsMarkedAsComplete?: boolean;
11
12
  tabs?: Tabs;
12
13
  currentTabIndex?: number;
@@ -20,7 +20,7 @@ import { createEmptyQrGroup, updateQrItemsInGroup } from '../../../utils/qrItem'
20
20
  import useHidden from '../../../hooks/useHidden';
21
21
  import GroupItemView from './GroupItemView';
22
22
  function GroupItem(props) {
23
- const { qItem, qrItem, isRepeated, groupCardElevation, tabIsMarkedAsComplete, tabs, currentTabIndex, pageIsMarkedAsComplete, pages, currentPageIndex, parentIsReadOnly, parentIsRepeatGroup, parentRepeatGroupIndex, onQrItemChange } = props;
23
+ const { qItem, qrItem, isRepeated, groupCardElevation, disableCardView, tabIsMarkedAsComplete, tabs, currentTabIndex, pageIsMarkedAsComplete, pages, currentPageIndex, parentIsReadOnly, parentIsRepeatGroup, parentRepeatGroupIndex, onQrItemChange } = props;
24
24
  const qItemsIndexMap = useMemo(() => mapQItemsIndex(qItem), [qItem]);
25
25
  const itemIsHidden = useHidden(qItem, parentRepeatGroupIndex);
26
26
  if (itemIsHidden) {
@@ -45,7 +45,7 @@ function GroupItem(props) {
45
45
  }
46
46
  // If an item has multiple answers, it is a repeat group
47
47
  const qrItemsByIndex = getQrItemsIndex(qItems, qrItems, qItemsIndexMap);
48
- return (React.createElement(GroupItemView, { qItem: qItem, childQItems: qItems, qrItemsByIndex: qrItemsByIndex, isRepeated: isRepeated, groupCardElevation: groupCardElevation, tabIsMarkedAsComplete: tabIsMarkedAsComplete, tabs: tabs, currentTabIndex: currentTabIndex, pageIsMarkedAsComplete: pageIsMarkedAsComplete, pages: pages, currentPageIndex: currentPageIndex, parentIsReadOnly: parentIsReadOnly, parentIsRepeatGroup: parentIsRepeatGroup, parentRepeatGroupIndex: parentRepeatGroupIndex, onQrItemChange: handleQrItemChange, onQrRepeatGroupChange: handleQrRepeatGroupChange }));
48
+ return (React.createElement(GroupItemView, { qItem: qItem, childQItems: qItems, qrItemsByIndex: qrItemsByIndex, isRepeated: isRepeated, groupCardElevation: groupCardElevation, disableCardView: disableCardView, tabIsMarkedAsComplete: tabIsMarkedAsComplete, tabs: tabs, currentTabIndex: currentTabIndex, pageIsMarkedAsComplete: pageIsMarkedAsComplete, pages: pages, currentPageIndex: currentPageIndex, parentIsReadOnly: parentIsReadOnly, parentIsRepeatGroup: parentIsRepeatGroup, parentRepeatGroupIndex: parentRepeatGroupIndex, onQrItemChange: handleQrItemChange, onQrRepeatGroupChange: handleQrRepeatGroupChange }));
49
49
  }
50
50
  export default GroupItem;
51
51
  //# sourceMappingURL=GroupItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GroupItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/GroupItem.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAEzE,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAQjF,OAAO,SAAS,MAAM,0BAA0B,CAAC;AAGjD,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAkB5C,SAAS,SAAS,CAAC,KAAqB;IACtC,MAAM,EACJ,KAAK,EACL,MAAM,EACN,UAAU,EACV,kBAAkB,EAClB,qBAAqB,EACrB,IAAI,EACJ,eAAe,EACf,sBAAsB,EACtB,KAAK,EACL,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACf,GAAG,KAAK,CAAC;IAEV,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAErE,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;IAC9D,IAAI,YAAY,EAAE;QAChB,OAAO,IAAI,CAAC;KACb;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;IAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAE7B,iBAAiB;IACjB,SAAS,kBAAkB,CAAC,SAAoC;QAC9D,MAAM,cAAc,qBAAmC,OAAO,CAAE,CAAC;QACjE,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;QACtE,cAAc,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;IAED,SAAS,yBAAyB,CAAC,aAA4B;QAC7D,MAAM,cAAc,qBAAmC,OAAO,CAAE,CAAC;QACjE,oBAAoB,CAAC,IAAI,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;QAC1E,cAAc,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE;QACvB,OAAO,iHAAyE,CAAC;KAClF;IAED,wDAAwD;IACxD,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAExE,OAAO,CACL,oBAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,EAC9B,UAAU,EAAE,UAAU,EACtB,kBAAkB,EAAE,kBAAkB,EACtC,qBAAqB,EAAE,qBAAqB,EAC5C,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,EAChC,sBAAsB,EAAE,sBAAsB,EAC9C,KAAK,EAAE,KAAK,EACZ,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,EACxC,sBAAsB,EAAE,sBAAsB,EAC9C,cAAc,EAAE,kBAAkB,EAClC,qBAAqB,EAAE,yBAAyB,GAChD,CACH,CAAC;AACJ,CAAC;AAED,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"GroupItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/GroupItem.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAEzE,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAQjF,OAAO,SAAS,MAAM,0BAA0B,CAAC;AAGjD,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAmB5C,SAAS,SAAS,CAAC,KAAqB;IACtC,MAAM,EACJ,KAAK,EACL,MAAM,EACN,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,IAAI,EACJ,eAAe,EACf,sBAAsB,EACtB,KAAK,EACL,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACf,GAAG,KAAK,CAAC;IAEV,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAErE,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;IAC9D,IAAI,YAAY,EAAE;QAChB,OAAO,IAAI,CAAC;KACb;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;IAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAE7B,iBAAiB;IACjB,SAAS,kBAAkB,CAAC,SAAoC;QAC9D,MAAM,cAAc,qBAAmC,OAAO,CAAE,CAAC;QACjE,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;QACtE,cAAc,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;IAED,SAAS,yBAAyB,CAAC,aAA4B;QAC7D,MAAM,cAAc,qBAAmC,OAAO,CAAE,CAAC;QACjE,oBAAoB,CAAC,IAAI,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;QAC1E,cAAc,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE;QACvB,OAAO,iHAAyE,CAAC;KAClF;IAED,wDAAwD;IACxD,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAExE,OAAO,CACL,oBAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,EAC9B,UAAU,EAAE,UAAU,EACtB,kBAAkB,EAAE,kBAAkB,EACtC,eAAe,EAAE,eAAe,EAChC,qBAAqB,EAAE,qBAAqB,EAC5C,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,EAChC,sBAAsB,EAAE,sBAAsB,EAC9C,KAAK,EAAE,KAAK,EACZ,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,EACxC,sBAAsB,EAAE,sBAAsB,EAC9C,cAAc,EAAE,kBAAkB,EAClC,qBAAqB,EAAE,yBAAyB,GAChD,CACH,CAAC;AACJ,CAAC;AAED,eAAe,SAAS,CAAC"}
@@ -8,6 +8,7 @@ interface GroupItemViewProps extends PropsWithQrItemChangeHandler, PropsWithQrRe
8
8
  childQItems: QuestionnaireItem[];
9
9
  qrItemsByIndex: (QuestionnaireResponseItem | QuestionnaireResponseItem[] | undefined)[];
10
10
  groupCardElevation: number;
11
+ disableCardView?: boolean;
11
12
  tabIsMarkedAsComplete?: boolean;
12
13
  tabs?: Tabs;
13
14
  currentTabIndex?: number;
@@ -29,7 +29,7 @@ import useReadOnly from '../../../hooks/useReadOnly';
29
29
  import { GroupAccordion } from './GroupAccordion.styles';
30
30
  import PageButtonsWrapper from './PageButtonWrapper';
31
31
  function GroupItemView(props) {
32
- const { qItem, childQItems, qrItemsByIndex, isRepeated, groupCardElevation, tabIsMarkedAsComplete, tabs, currentTabIndex, pageIsMarkedAsComplete, pages, currentPageIndex, parentIsReadOnly, parentIsRepeatGroup, parentRepeatGroupIndex, onQrItemChange, onQrRepeatGroupChange } = props;
32
+ const { qItem, childQItems, qrItemsByIndex, isRepeated, groupCardElevation, disableCardView, tabIsMarkedAsComplete, tabs, currentTabIndex, pageIsMarkedAsComplete, pages, currentPageIndex, parentIsReadOnly, parentIsRepeatGroup, parentRepeatGroupIndex, onQrItemChange, onQrRepeatGroupChange } = props;
33
33
  const readOnly = useReadOnly(qItem, parentIsReadOnly);
34
34
  // Render collapsible group item
35
35
  // If group item is a repeating instance, do not render group item as collapsible
@@ -51,6 +51,16 @@ function GroupItemView(props) {
51
51
  React.createElement(TabButtonsWrapper, { currentTabIndex: currentTabIndex, tabs: tabs }),
52
52
  React.createElement(PageButtonsWrapper, { currentPageIndex: currentPageIndex, pages: pages })))));
53
53
  }
54
+ // Disable card view - currently only available via disablePageCardView API
55
+ if (disableCardView) {
56
+ return (React.createElement(QGroupContainerBox, { cardElevation: groupCardElevation, isRepeated: isRepeated, "data-test": "q-item-group-box" },
57
+ childQItems.map((qItem, i) => {
58
+ const qrItemOrItems = qrItemsByIndex[i];
59
+ return (React.createElement(GroupItemSwitcher, { key: qItem.linkId, qItem: qItem, qrItemOrItems: qrItemOrItems, groupCardElevation: groupCardElevation, parentIsReadOnly: readOnly, parentIsRepeatGroup: parentIsRepeatGroup, parentRepeatGroupIndex: parentRepeatGroupIndex, onQrItemChange: onQrItemChange, onQrRepeatGroupChange: onQrRepeatGroupChange }));
60
+ }),
61
+ React.createElement(TabButtonsWrapper, { currentTabIndex: currentTabIndex, tabs: tabs }),
62
+ React.createElement(PageButtonsWrapper, { currentPageIndex: currentPageIndex, pages: pages })));
63
+ }
54
64
  return (React.createElement(QGroupContainerBox, { cardElevation: groupCardElevation, isRepeated: isRepeated, "data-test": "q-item-group-box" },
55
65
  React.createElement(GroupCard, { elevation: groupCardElevation, isRepeated: isRepeated },
56
66
  React.createElement(GroupHeading, { qItem: qItem, readOnly: readOnly, tabIsMarkedAsComplete: tabIsMarkedAsComplete, pageIsMarkedAsComplete: pageIsMarkedAsComplete, isRepeated: isRepeated }),
@@ -1 +1 @@
1
- {"version":3,"file":"GroupItemView.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/GroupItemView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GroupItemView.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/GroupItemView.tsx"],"names":[],"mappings":"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"}
@@ -5,9 +5,11 @@ import { useQuestionnaireStore } from '../../../stores';
5
5
  import NextPageButton from './NextPageButton';
6
6
  import PreviousPageButton from './PreviousPageButton';
7
7
  import useNextAndPreviousVisiblePages from '../../../hooks/useNextAndPreviousVisiblePages';
8
+ import { useRendererStylingStore } from '../../../stores/rendererStylingStore';
8
9
  const PageButtonsWrapper = memo(function PageButtonsWrapper(props) {
9
10
  const { currentPageIndex, pages } = props;
10
11
  const switchPage = useQuestionnaireStore.use.switchPage();
12
+ const disablePageButtons = useRendererStylingStore.use.disablePageButtons();
11
13
  const { previousPageIndex, nextPageIndex, numOfVisiblePages } = useNextAndPreviousVisiblePages(currentPageIndex, pages);
12
14
  const pagesNotDefined = currentPageIndex === undefined || pages === undefined;
13
15
  // Event handlers
@@ -27,9 +29,14 @@ const PageButtonsWrapper = memo(function PageButtonsWrapper(props) {
27
29
  // Scroll to top of page
28
30
  window.scrollTo(0, 0);
29
31
  }
32
+ // No pages defined, do not render page buttons
30
33
  if (pagesNotDefined) {
31
34
  return null;
32
35
  }
36
+ // Disable page buttons - currently only available via disableTabButtons API
37
+ if (disablePageButtons) {
38
+ return null;
39
+ }
33
40
  const previousPageButtonHidden = previousPageIndex === null;
34
41
  const nextPageButtonHidden = nextPageIndex === null;
35
42
  // This is more of a fallback check to prevent the user from navigating to an invisble page if buttons are visble for some reason
@@ -1 +1 @@
1
- {"version":3,"file":"PageButtonWrapper.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/PageButtonWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,8BAA8B,MAAM,+CAA+C,CAAC;AAO3F,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,kBAAkB,CAAC,KAA8B;IACxF,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAE1C,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IAE1D,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,iBAAiB,EAAE,GAAG,8BAA8B,CAC5F,gBAAgB,EAChB,KAAK,CACN,CAAC;IAEF,MAAM,eAAe,GAAG,gBAAgB,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC;IAE9E,iBAAiB;IACjB,SAAS,6BAA6B;QACpC,IAAI,iBAAiB,KAAK,IAAI,EAAE;YAC9B,OAAO;SACR;QAED,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAE9B,wBAAwB;QACxB,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,SAAS,yBAAyB;QAChC,IAAI,aAAa,KAAK,IAAI,EAAE;YAC1B,OAAO;SACR;QAED,UAAU,CAAC,aAAa,CAAC,CAAC;QAE1B,wBAAwB;QACxB,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,eAAe,EAAE;QACnB,OAAO,IAAI,CAAC;KACb;IAED,MAAM,wBAAwB,GAAG,iBAAiB,KAAK,IAAI,CAAC;IAC5D,MAAM,oBAAoB,GAAG,aAAa,KAAK,IAAI,CAAC;IAEpD,iIAAiI;IACjI,MAAM,mBAAmB,GAAG,iBAAiB,IAAI,CAAC,CAAC;IAEnD,OAAO,CACL,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ;QACpD,oBAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,GAAI;QACpB,oBAAC,UAAU,IAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,gBAAgB;;YAC9C,GAAG,gBAAgB,GAAG,CAAC,MAAM,iBAAiB,EAAE,CAC3C;QACb,oBAAC,kBAAkB,IACjB,UAAU,EAAE,mBAAmB,IAAI,wBAAwB,EAC3D,mBAAmB,EAAE,6BAA6B,GAClD;QACF,oBAAC,cAAc,IACb,UAAU,EAAE,mBAAmB,IAAI,oBAAoB,EACvD,eAAe,EAAE,yBAAyB,GAC1C,CACE,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"PageButtonWrapper.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/PageButtonWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,8BAA8B,MAAM,+CAA+C,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAO/E,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,kBAAkB,CAAC,KAA8B;IACxF,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAE1C,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IAC1D,MAAM,kBAAkB,GAAG,uBAAuB,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;IAE5E,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,iBAAiB,EAAE,GAAG,8BAA8B,CAC5F,gBAAgB,EAChB,KAAK,CACN,CAAC;IAEF,MAAM,eAAe,GAAG,gBAAgB,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC;IAE9E,iBAAiB;IACjB,SAAS,6BAA6B;QACpC,IAAI,iBAAiB,KAAK,IAAI,EAAE;YAC9B,OAAO;SACR;QAED,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAE9B,wBAAwB;QACxB,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,SAAS,yBAAyB;QAChC,IAAI,aAAa,KAAK,IAAI,EAAE;YAC1B,OAAO;SACR;QAED,UAAU,CAAC,aAAa,CAAC,CAAC;QAE1B,wBAAwB;QACxB,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,+CAA+C;IAC/C,IAAI,eAAe,EAAE;QACnB,OAAO,IAAI,CAAC;KACb;IAED,4EAA4E;IAC5E,IAAI,kBAAkB,EAAE;QACtB,OAAO,IAAI,CAAC;KACb;IAED,MAAM,wBAAwB,GAAG,iBAAiB,KAAK,IAAI,CAAC;IAC5D,MAAM,oBAAoB,GAAG,aAAa,KAAK,IAAI,CAAC;IAEpD,iIAAiI;IACjI,MAAM,mBAAmB,GAAG,iBAAiB,IAAI,CAAC,CAAC;IAEnD,OAAO,CACL,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAC,QAAQ;QACpD,oBAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,GAAI;QACpB,oBAAC,UAAU,IAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,gBAAgB;;YAC9C,GAAG,gBAAgB,GAAG,CAAC,MAAM,iBAAiB,EAAE,CAC3C;QACb,oBAAC,kBAAkB,IACjB,UAAU,EAAE,mBAAmB,IAAI,wBAAwB,EAC3D,mBAAmB,EAAE,6BAA6B,GAClD;QACF,oBAAC,cAAc,IACb,UAAU,EAAE,mBAAmB,IAAI,oBAAoB,EACvD,eAAe,EAAE,yBAAyB,GAC1C,CACE,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,kBAAkB,CAAC"}
@@ -23,9 +23,11 @@ import Typography from '@mui/material/Typography';
23
23
  import useDisplayCqfAndCalculatedExpression from '../../../hooks/useDisplayCqfAndCalculatedExpression';
24
24
  import { structuredDataCapture } from 'fhir-sdc-helpers';
25
25
  import { default as styleParse } from 'style-to-js';
26
+ import { useRendererStylingStore } from '../../../stores/rendererStylingStore';
26
27
  const ItemLabelText = memo(function ItemLabelText(props) {
27
28
  var _a, _b;
28
29
  const { qItem, readOnly } = props;
30
+ const itemLabelFontWeight = useRendererStylingStore.use.itemLabelFontWeight();
29
31
  let labelText = (_a = qItem.text) !== null && _a !== void 0 ? _a : '';
30
32
  // Use calculatedExpressionString if available
31
33
  const calculatedExpressionString = (_b = useDisplayCqfAndCalculatedExpression(qItem)) !== null && _b !== void 0 ? _b : '';
@@ -56,8 +58,9 @@ const ItemLabelText = memo(function ItemLabelText(props) {
56
58
  if (qItem.type === 'group') {
57
59
  return React.createElement(React.Fragment, null, labelText);
58
60
  }
61
+ const textFontWeight = itemLabelFontWeight != 'default' ? itemLabelFontWeight : 'normal';
59
62
  // parse regular text
60
- return (React.createElement(Typography, { color: readOnly ? 'text.disabled' : 'text.primary', sx: { mt: 0.25 } }, labelText));
63
+ return (React.createElement(Typography, { color: readOnly ? 'text.disabled' : 'text.primary', fontWeight: itemLabelFontWeight ? itemLabelFontWeight : 'normal', sx: { mt: 0.25 } }, labelText));
61
64
  });
62
65
  export default ItemLabelText;
63
66
  //# sourceMappingURL=ItemLabelText.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ItemLabelText.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ItemParts/ItemLabelText.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,aAAa,MAAM,gBAAgB,CAAC;AAC3C,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,oCAAoC,MAAM,qDAAqD,CAAC;AACvG,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AAOpD,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,aAAa,CAAC,KAAyB;;IACzE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAElC,IAAI,SAAS,GAAG,MAAA,KAAK,CAAC,IAAI,mCAAI,EAAE,CAAC;IAEjC,8CAA8C;IAC9C,MAAM,0BAA0B,GAAG,MAAA,oCAAoC,CAAC,KAAK,CAAC,mCAAI,EAAE,CAAC;IACrF,IAAI,0BAA0B,EAAE;QAC9B,SAAS,GAAG,0BAA0B,CAAC;KACxC;IAED,uBAAuB;IACvB,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,WAAW,EAAE;QACf,OAAO,oBAAC,GAAG,QAAE,SAAS,CAAC,WAAW,CAAC,CAAO,CAAC;KAC5C;IAED,0BAA0B;IAC1B,MAAM,cAAc,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,cAAc,EAAE;QAClB,OAAO,CACL,oBAAC,GAAG;YACF,oBAAC,aAAa,QAAE,cAAc,CAAiB,CAC3C,CACP,CAAC;KACH;IAED,kCAAkC;IAClC,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,IAAI,CAAC;KACb;IAED,wBAAwB;IACxB,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjE,IAAI,YAAY,EAAE;QAChB,MAAM,MAAM,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;QACxC,OAAO,6BAAK,KAAK,EAAE,MAAM,IAAG,SAAS,CAAO,CAAC;KAC9C;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,OAAO,0CAAG,SAAS,CAAI,CAAC;KACzB;IAED,qBAAqB;IACrB,OAAO,CACL,oBAAC,UAAU,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAC7E,SAAS,CACC,CACd,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"ItemLabelText.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ItemParts/ItemLabelText.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,aAAa,MAAM,gBAAgB,CAAC;AAC3C,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,oCAAoC,MAAM,qDAAqD,CAAC;AACvG,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAO/E,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,aAAa,CAAC,KAAyB;;IACzE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAElC,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAE9E,IAAI,SAAS,GAAG,MAAA,KAAK,CAAC,IAAI,mCAAI,EAAE,CAAC;IAEjC,8CAA8C;IAC9C,MAAM,0BAA0B,GAAG,MAAA,oCAAoC,CAAC,KAAK,CAAC,mCAAI,EAAE,CAAC;IACrF,IAAI,0BAA0B,EAAE;QAC9B,SAAS,GAAG,0BAA0B,CAAC;KACxC;IAED,uBAAuB;IACvB,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,WAAW,EAAE;QACf,OAAO,oBAAC,GAAG,QAAE,SAAS,CAAC,WAAW,CAAC,CAAO,CAAC;KAC5C;IAED,0BAA0B;IAC1B,MAAM,cAAc,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,cAAc,EAAE;QAClB,OAAO,CACL,oBAAC,GAAG;YACF,oBAAC,aAAa,QAAE,cAAc,CAAiB,CAC3C,CACP,CAAC;KACH;IAED,kCAAkC;IAClC,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,IAAI,CAAC;KACb;IAED,wBAAwB;IACxB,MAAM,YAAY,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjE,IAAI,YAAY,EAAE;QAChB,MAAM,MAAM,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;QACxC,OAAO,6BAAK,KAAK,EAAE,MAAM,IAAG,SAAS,CAAO,CAAC;KAC9C;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,OAAO,0CAAG,SAAS,CAAI,CAAC;KACzB;IAED,MAAM,cAAc,GAAG,mBAAmB,IAAI,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEzF,qBAAqB;IACrB,OAAO,CACL,oBAAC,UAAU,IACT,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,EAClD,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,QAAQ,EAChE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IACf,SAAS,CACC,CACd,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAe,aAAa,CAAC"}
@@ -22,7 +22,7 @@ import ItemLabelText from './ItemLabelText';
22
22
  import Tooltip from '@mui/material/Tooltip';
23
23
  import Typography from '@mui/material/Typography';
24
24
  import useRenderingExtensions from '../../../hooks/useRenderingExtensions';
25
- import Iconify from '../../Iconify/Iconify';
25
+ import InfoOutlinedIcon from '@mui/icons-material/InfoOutlined';
26
26
  function ItemLabelWrapper(props) {
27
27
  const { qItem, readOnly } = props;
28
28
  const { required, displayFlyover } = useRenderingExtensions(qItem);
@@ -41,10 +41,11 @@ function ItemLabelWrapper(props) {
41
41
  }
42
42
  } },
43
43
  React.createElement("span", null,
44
- React.createElement(Box, { display: "flex", columnGap: 0.4, justifyContent: "space-between", alignItems: "center" },
45
- required ? (React.createElement(Typography, { color: "red", sx: { ml: -1.15 } }, "*")) : null,
46
- React.createElement(ItemLabelText, { qItem: qItem, readOnly: readOnly }),
47
- displayFlyover !== '' ? (React.createElement(Iconify, { icon: "mdi:information-outline", sx: { height: 16, width: 16, mt: 0.25, ml: 0.25, color: 'text.secondary' } })) : null))),
44
+ React.createElement(Box, { position: "relative" },
45
+ required ? (React.createElement(Typography, { color: "red", sx: { position: 'absolute', top: 0, left: -8 } }, "*")) : null,
46
+ React.createElement(Box, { display: "flex", columnGap: 0.5, justifyContent: "space-between", alignItems: "center" },
47
+ React.createElement(ItemLabelText, { qItem: qItem, readOnly: readOnly }),
48
+ displayFlyover !== '' ? (React.createElement(InfoOutlinedIcon, { sx: { color: 'text.secondary' }, fontSize: "small" })) : null)))),
48
49
  React.createElement(Box, { display: "flex", columnGap: 0.5 }, contextDisplayItems.map((item) => {
49
50
  return React.createElement(ContextDisplayItem, { key: item.linkId, displayItem: item });
50
51
  }))));
@@ -1 +1 @@
1
- {"version":3,"file":"ItemLabelWrapper.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ItemParts/ItemLabelWrapper.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAC5C,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,sBAAsB,MAAM,uCAAuC,CAAC;AAC3E,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAO5C,SAAS,gBAAgB,CAAC,KAAwB;IAChD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAElC,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACnE,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAEtD,OAAO,CACL,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,cAAc,EAAC,eAAe;QACpE,oBAAC,OAAO,IACN,KAAK,EAAE,cAAc,EACrB,SAAS,EAAC,KAAK,EACf,SAAS,EAAE;gBACT,MAAM,EAAE;oBACN,SAAS,EAAE;wBACT;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE;gCACP,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;6BAChB;yBACF;qBACF;iBACF;aACF;YACD;gBACE,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAE,GAAG,EAAE,cAAc,EAAC,eAAe,EAAC,UAAU,EAAC,QAAQ;oBACnF,QAAQ,CAAC,CAAC,CAAC,CACV,oBAAC,UAAU,IAAC,KAAK,EAAC,KAAK,EAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,QAE5B,CACd,CAAC,CAAC,CAAC,IAAI;oBACR,oBAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAI;oBAClD,cAAc,KAAK,EAAE,CAAC,CAAC,CAAC,CACvB,oBAAC,OAAO,IACN,IAAI,EAAC,yBAAyB,EAC9B,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAC1E,CACH,CAAC,CAAC,CAAC,IAAI,CACJ,CACD,CACC;QAEV,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAE,GAAG,IAC/B,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAChC,OAAO,oBAAC,kBAAkB,IAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,GAAI,CAAC;QACrE,CAAC,CAAC,CACE,CACF,CACP,CAAC;AACJ,CAAC;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"ItemLabelWrapper.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ItemParts/ItemLabelWrapper.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAC5C,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,sBAAsB,MAAM,uCAAuC,CAAC;AAC3E,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAOhE,SAAS,gBAAgB,CAAC,KAAwB;IAChD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAElC,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACnE,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAEtD,OAAO,CACL,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,cAAc,EAAC,eAAe;QACpE,oBAAC,OAAO,IACN,KAAK,EAAE,cAAc,EACrB,SAAS,EAAC,KAAK,EACf,SAAS,EAAE;gBACT,MAAM,EAAE;oBACN,SAAS,EAAE;wBACT;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE;gCACP,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;6BAChB;yBACF;qBACF;iBACF;aACF;YACD;gBACE,oBAAC,GAAG,IAAC,QAAQ,EAAC,UAAU;oBACrB,QAAQ,CAAC,CAAC,CAAC,CACV,oBAAC,UAAU,IACT,KAAK,EAAC,KAAK,EACX,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,QAGnC,CACd,CAAC,CAAC,CAAC,IAAI;oBACR,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAE,GAAG,EAAE,cAAc,EAAC,eAAe,EAAC,UAAU,EAAC,QAAQ;wBACpF,oBAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAI;wBAClD,cAAc,KAAK,EAAE,CAAC,CAAC,CAAC,CACvB,oBAAC,gBAAgB,IAAC,EAAE,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,QAAQ,EAAC,OAAO,GAAG,CACvE,CAAC,CAAC,CAAC,IAAI,CACJ,CACF,CACD,CACC;QAEV,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAE,GAAG,IAC/B,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAChC,OAAO,oBAAC,kBAAkB,IAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,GAAI,CAAC;QACrE,CAAC,CAAC,CACE,CACF,CACP,CAAC;AACJ,CAAC;AAED,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1 @@
1
+ export { default as ItemFieldGrid } from './ItemFieldGrid';
@@ -0,0 +1,18 @@
1
+ /*
2
+ * Copyright 2024 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
+ export { default as ItemFieldGrid } from './ItemFieldGrid';
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ItemParts/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -32,8 +32,17 @@ import IntegerItem from '../IntegerItem/IntegerItem';
32
32
  import AttachmentItem from '../AttachmentItem/AttachmentItem';
33
33
  import CustomDateTimeItem from '../DateTimeItems/CustomDateTimeItem/CustomDateTimeItem';
34
34
  import QuantityItem from '../QuantityItem/QuantityItem';
35
+ import { useQuestionnaireStore } from '../../../stores';
35
36
  function SingleItemSwitcher(props) {
36
37
  const { qItem, qrItem, isRepeated, isTabled, showMinimalView, parentIsReadOnly, onQrItemChange } = props;
38
+ const customComponents = useQuestionnaireStore.use.customComponents();
39
+ const CustomComponent = customComponents[qItem.linkId];
40
+ // If a custom component is defined for this item, render it
41
+ // Don't get too strict with the checks for now
42
+ if (CustomComponent && typeof CustomComponent === 'function') {
43
+ return (React.createElement(CustomComponent, { qItem: qItem, qrItem: qrItem, isRepeated: isRepeated, isTabled: isTabled, parentIsReadOnly: parentIsReadOnly, onQrItemChange: onQrItemChange }));
44
+ }
45
+ // Otherwise, render the default form component based on the item type
37
46
  switch (qItem.type) {
38
47
  case 'display':
39
48
  return React.createElement(DisplayItem, { qItem: qItem });
@@ -1 +1 @@
1
- {"version":3,"file":"SingleItemSwitcher.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/SingleItem/SingleItemSwitcher.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,kBAAkB,MAAM,mCAAmC,CAAC;AAEnE,OAAO,sBAAsB,MAAM,2CAA2C,CAAC;AAC/E,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAQlD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,cAAc,MAAM,gDAAgD,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,cAAc,MAAM,kCAAkC,CAAC;AAC9D,OAAO,kBAAkB,MAAM,wDAAwD,CAAC;AACxF,OAAO,YAAY,MAAM,8BAA8B,CAAC;AAYxD,SAAS,kBAAkB,CAAC,KAA8B;IACxD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE,GAC9F,KAAK,CAAC;IAER,QAAQ,KAAK,CAAC,IAAI,EAAE;QAClB,KAAK,SAAS;YACZ,OAAO,oBAAC,WAAW,IAAC,KAAK,EAAE,KAAK,GAAI,CAAC;QACvC,KAAK,SAAS;YACZ,OAAO,CACL,oBAAC,WAAW,IACV,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,SAAS;YACZ,OAAO,CACL,oBAAC,WAAW,IACV,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,SAAS;YACZ,IAAI,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE;gBAC1C,OAAO,CACL,oBAAC,UAAU,IACT,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;aACH;YAED,OAAO,CACL,oBAAC,WAAW,IACV,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,CACL,oBAAC,cAAc,IACb,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,UAAU;YACb,OAAO,CACL,oBAAC,kBAAkB,IACjB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,CACL,oBAAC,QAAQ,IACP,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO,CACL,oBAAC,UAAU,IACT,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,CACL,oBAAC,QAAQ,IACP,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,KAAK;YACR,OAAO,CACL,oBAAC,OAAO,IACN,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO,CACL,oBAAC,kBAAkB,IACjB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,aAAa;YAChB,OAAO,CACL,oBAAC,sBAAsB,IACrB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,YAAY;YACf,OAAO,CACL,oBAAC,cAAc,IACb,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,WAAW;YACd,wEAAwE;YACxE,OAAO,CACL,oBAAC,UAAU,IACT,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ,KAAK,UAAU;YACb,wEAAwE;YACxE,OAAO,CACL,oBAAC,YAAY,IACX,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;QACJ;YACE,OAAO,CACL,oBAAC,UAAU;;gBACC,+BAAI,KAAK,CAAC,IAAI,CAAK;yJAElB,CACd,CAAC;KACL;AACH,CAAC;AAED,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"SingleItemSwitcher.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/SingleItem/SingleItemSwitcher.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export { default as StringField } from './StringField';
@@ -0,0 +1,18 @@
1
+ /*
2
+ * Copyright 2024 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
+ export { default as StringField } from './StringField';
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/StringItem/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC"}
@@ -4,3 +4,5 @@ export { RepeatGroup } from './RepeatGroup';
4
4
  export { GroupTable } from './Tables';
5
5
  export { GridGroup } from './GridGroup';
6
6
  export { parseFhirDateToDisplayDate } from './DateTimeItems';
7
+ export { ItemFieldGrid } from './ItemParts';
8
+ export { StringField } from './StringItem';
@@ -20,4 +20,7 @@ export { RepeatGroup } from './RepeatGroup';
20
20
  export { GroupTable } from './Tables';
21
21
  export { GridGroup } from './GridGroup';
22
22
  export { parseFhirDateToDisplayDate } from './DateTimeItems';
23
+ export { ItemFieldGrid } from './ItemParts';
24
+ // item type components
25
+ export { StringField } from './StringItem';
23
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/FormComponents/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/FormComponents/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,uBAAuB;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import type { PropsWithIsRepeatedAttribute, PropsWithParentIsReadOnlyAttribute, PropsWithParentIsRepeatGroupAttribute, PropsWithQrItemChangeHandler } from '../../interfaces/renderProps.interface';
3
+ import type { QuestionnaireItem, QuestionnaireResponseItem } from 'fhir/r4';
4
+ import type { Tabs } from '../../interfaces';
5
+ import type { Pages } from '../../interfaces/page.interface';
6
+ interface SingleItemPaginatedProps extends PropsWithQrItemChangeHandler, PropsWithIsRepeatedAttribute, PropsWithParentIsReadOnlyAttribute, PropsWithParentIsRepeatGroupAttribute {
7
+ qItem: QuestionnaireItem;
8
+ qrItem: QuestionnaireResponseItem | null;
9
+ groupCardElevation: number;
10
+ disableCardView?: boolean;
11
+ tabIsMarkedAsComplete?: boolean;
12
+ tabs?: Tabs;
13
+ currentTabIndex?: number;
14
+ pageIsMarkedAsComplete?: boolean;
15
+ pages?: Pages;
16
+ currentPageIndex?: number;
17
+ }
18
+ declare function SingleItemPaginated(props: SingleItemPaginatedProps): React.JSX.Element;
19
+ export default SingleItemPaginated;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ function SingleItemPaginated(props) {
3
+ const { qItem, qrItem, isRepeated, groupCardElevation, disableCardView, tabIsMarkedAsComplete, tabs, currentTabIndex, pageIsMarkedAsComplete, pages, currentPageIndex, parentIsReadOnly, parentIsRepeatGroup, parentRepeatGroupIndex, onQrItemChange } = props;
4
+ return React.createElement("div", null);
5
+ }
6
+ export default SingleItemPaginated;
7
+ //# sourceMappingURL=SingleItemPaginated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingleItemPaginated.js","sourceRoot":"","sources":["../../../src/components/Pages/SingleItemPaginated.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AA4B1B,SAAS,mBAAmB,CAAC,KAA+B;IAC1D,MAAM,EACJ,KAAK,EACL,MAAM,EACN,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,IAAI,EACJ,eAAe,EACf,sBAAsB,EACtB,KAAK,EACL,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACf,GAAG,KAAK,CAAC;IAEV,OAAO,gCAAW,CAAC;AACrB,CAAC;AAED,eAAe,mBAAmB,CAAC"}
@@ -20,8 +20,8 @@ import FormTopLevelItem from './FormTopLevelItem';
20
20
  import { useQuestionnaireResponseStore, useQuestionnaireStore } from '../../stores';
21
21
  import { getQrItemsIndex, mapQItemsIndex } from '../../utils/mapItem';
22
22
  import { updateQrItemsInGroup } from '../../utils/qrItem';
23
- import { everyIsPages } from '../../utils/page';
24
- import FormTopLevelPage from './FormTopLevelPage';
23
+ import { isPage } from '../../utils/page';
24
+ import FormBodyPaginated from './FormBodyPaginated';
25
25
  import { Container } from '@mui/material';
26
26
  /**
27
27
  * Main component of the form-rendering engine.
@@ -61,11 +61,11 @@ function BaseRenderer() {
61
61
  }
62
62
  // If an item has multiple answers, it is a repeat group
63
63
  const topLevelQRItemsByIndex = getQrItemsIndex(topLevelQItems, topLevelQRItems, qItemsIndexMap);
64
- const everyItemIsPage = everyIsPages(topLevelQItems);
65
- if (everyItemIsPage) {
64
+ const formIsPaginated = topLevelQItems.some((i) => isPage(i));
65
+ if (formIsPaginated) {
66
66
  return (React.createElement(Fade, { in: true, timeout: 500 },
67
67
  React.createElement(Container, { disableGutters: true, maxWidth: "xl", key: responseKey },
68
- React.createElement(FormTopLevelPage, { topLevelQItems: topLevelQItems, topLevelQRItems: topLevelQRItemsByIndex, parentIsReadOnly: readOnly, onQrItemChange: (newTopLevelQRItem) => handleTopLevelQRItemSingleChange(newTopLevelQRItem) }))));
68
+ React.createElement(FormBodyPaginated, { topLevelQItems: topLevelQItems, topLevelQRItems: topLevelQRItemsByIndex, parentIsReadOnly: readOnly, onQrItemChange: (newTopLevelQRItem) => handleTopLevelQRItemSingleChange(newTopLevelQRItem) }))));
69
69
  }
70
70
  return (React.createElement(Fade, { in: true, timeout: 500 },
71
71
  React.createElement(Container, { disableGutters: true, maxWidth: "xl", key: responseKey }, topLevelQItems.map((qItem, index) => {
@@ -1 +1 @@
1
- {"version":3,"file":"BaseRenderer.js","sourceRoot":"","sources":["../../../src/components/Renderer/BaseRenderer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseRenderer.js","sourceRoot":"","sources":["../../../src/components/Renderer/BaseRenderer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type { QuestionnaireItem, QuestionnaireResponseItem } from 'fhir/r4';
3
+ import type { PropsWithParentIsReadOnlyAttribute, PropsWithQrItemChangeHandler } from '../../interfaces/renderProps.interface';
4
+ interface FormBodyPaginatedProps extends PropsWithQrItemChangeHandler, PropsWithParentIsReadOnlyAttribute {
5
+ topLevelQItems: QuestionnaireItem[];
6
+ topLevelQRItems: (QuestionnaireResponseItem | QuestionnaireResponseItem[] | undefined)[];
7
+ }
8
+ declare function FormBodyPaginated(props: FormBodyPaginatedProps): React.JSX.Element;
9
+ export default FormBodyPaginated;
@@ -0,0 +1,49 @@
1
+ import React from 'react';
2
+ import Grid from '@mui/material/Grid';
3
+ import TabContext from '@mui/lab/TabContext';
4
+ import TabPanel from '@mui/lab/TabPanel';
5
+ import GroupItem from '../FormComponents/GroupItem/GroupItem';
6
+ import { useQuestionnaireStore } from '../../stores';
7
+ import { useRendererStylingStore } from '../../stores/rendererStylingStore';
8
+ import { SingleItem } from '../FormComponents';
9
+ import PageButtonsWrapper from '../FormComponents/GroupItem/PageButtonWrapper';
10
+ import { QGroupContainerBox } from '../Box.styles';
11
+ import { GroupCard } from '../FormComponents/GroupItem/GroupItem.styles';
12
+ // TODO This implementation doesnt take into account repeat items and repeat groups
13
+ // TODO need to fix this before bringing it into release
14
+ // Every group item in here is rendered as a page
15
+ function FormBodyPaginated(props) {
16
+ const { topLevelQItems, topLevelQRItems, parentIsReadOnly, onQrItemChange } = props;
17
+ const pages = useQuestionnaireStore.use.pages();
18
+ const currentPage = useQuestionnaireStore.use.currentPageIndex();
19
+ const disableCardView = useRendererStylingStore.use.disablePageCardView();
20
+ return (React.createElement(Grid, { container: true, spacing: 1.5 },
21
+ React.createElement(TabContext, { value: currentPage.toString() },
22
+ React.createElement(Grid, { item: true, xs: 12, md: 12, lg: 12 }, topLevelQItems.map((qItem, i) => {
23
+ var _a, _b;
24
+ const qrItem = topLevelQRItems[i];
25
+ const isNotRepeatGroup = !Array.isArray(qrItem);
26
+ const isPage = !!pages[qItem.linkId];
27
+ const itemIsGroup = qItem.type === 'group';
28
+ if (!isPage || !isNotRepeatGroup) {
29
+ // Something has gone horribly wrong
30
+ return null;
31
+ }
32
+ const isRepeated = (_a = qItem.repeats) !== null && _a !== void 0 ? _a : false;
33
+ const pageIsMarkedAsComplete = (_b = pages[qItem.linkId].isComplete) !== null && _b !== void 0 ? _b : false;
34
+ // Render this page as a group
35
+ if (itemIsGroup) {
36
+ return (React.createElement(TabPanel, { key: qItem.linkId, sx: { p: 0 }, value: i.toString(), "data-test": "renderer-page-panel" },
37
+ React.createElement(GroupItem, { qItem: qItem, qrItem: qrItem !== null && qrItem !== void 0 ? qrItem : null, isRepeated: isRepeated, groupCardElevation: 1, disableCardView: disableCardView, pageIsMarkedAsComplete: pageIsMarkedAsComplete, pages: pages, currentPageIndex: currentPage, parentIsReadOnly: parentIsReadOnly, onQrItemChange: onQrItemChange })));
38
+ }
39
+ // Page consists of a non-group item
40
+ return (React.createElement(TabPanel, { key: qItem.linkId, sx: { p: 0 }, value: i.toString(), "data-test": "renderer-page-panel" },
41
+ React.createElement(QGroupContainerBox, { cardElevation: 1, isRepeated: isRepeated, "data-test": "q-item-group-box" }, disableCardView ? (React.createElement(React.Fragment, null,
42
+ React.createElement(SingleItem, { qItem: qItem, qrItem: qrItem !== null && qrItem !== void 0 ? qrItem : null, isRepeated: isRepeated, groupCardElevation: 1, parentIsReadOnly: parentIsReadOnly, onQrItemChange: onQrItemChange, isTabled: false }),
43
+ React.createElement(PageButtonsWrapper, { currentPageIndex: currentPage, pages: pages }))) : (React.createElement(GroupCard, { elevation: 1, isRepeated: isRepeated },
44
+ React.createElement(SingleItem, { qItem: qItem, qrItem: qrItem !== null && qrItem !== void 0 ? qrItem : null, isRepeated: isRepeated, groupCardElevation: 1, parentIsReadOnly: parentIsReadOnly, onQrItemChange: onQrItemChange, isTabled: false }),
45
+ React.createElement(PageButtonsWrapper, { currentPageIndex: currentPage, pages: pages }))))));
46
+ })))));
47
+ }
48
+ export default FormBodyPaginated;
49
+ //# sourceMappingURL=FormBodyPaginated.js.map