@terreno/ui 0.7.1 → 0.8.0

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 (86) hide show
  1. package/dist/BooleanField.js +23 -23
  2. package/dist/BooleanField.js.map +1 -1
  3. package/dist/ConsentFormScreen.d.ts +14 -0
  4. package/dist/ConsentFormScreen.js +93 -0
  5. package/dist/ConsentFormScreen.js.map +1 -0
  6. package/dist/ConsentHistory.d.ts +8 -0
  7. package/dist/ConsentHistory.js +70 -0
  8. package/dist/ConsentHistory.js.map +1 -0
  9. package/dist/ConsentNavigator.d.ts +9 -0
  10. package/dist/ConsentNavigator.js +72 -0
  11. package/dist/ConsentNavigator.js.map +1 -0
  12. package/dist/DataTable.js +1 -1
  13. package/dist/DataTable.js.map +1 -1
  14. package/dist/DateTimeActionSheet.js +24 -8
  15. package/dist/DateTimeActionSheet.js.map +1 -1
  16. package/dist/DateTimeField.d.ts +22 -0
  17. package/dist/DateTimeField.js +187 -67
  18. package/dist/DateTimeField.js.map +1 -1
  19. package/dist/DraggableList.d.ts +66 -0
  20. package/dist/DraggableList.js +241 -0
  21. package/dist/DraggableList.js.map +1 -0
  22. package/dist/Link.js +1 -1
  23. package/dist/Link.js.map +1 -1
  24. package/dist/MarkdownEditor.d.ts +12 -0
  25. package/dist/MarkdownEditor.js +12 -0
  26. package/dist/MarkdownEditor.js.map +1 -0
  27. package/dist/MarkdownEditorField.d.ts +1 -0
  28. package/dist/MarkdownEditorField.js +16 -16
  29. package/dist/MarkdownEditorField.js.map +1 -1
  30. package/dist/Modal.js +11 -1
  31. package/dist/Modal.js.map +1 -1
  32. package/dist/PickerSelect.js +10 -0
  33. package/dist/PickerSelect.js.map +1 -1
  34. package/dist/Slider.js +2 -8
  35. package/dist/Slider.js.map +1 -1
  36. package/dist/TerrenoProvider.js +10 -1
  37. package/dist/TerrenoProvider.js.map +1 -1
  38. package/dist/UpgradeRequiredScreen.d.ts +8 -0
  39. package/dist/UpgradeRequiredScreen.js +10 -0
  40. package/dist/UpgradeRequiredScreen.js.map +1 -0
  41. package/dist/generateConsentHistoryPdf.d.ts +2 -0
  42. package/dist/generateConsentHistoryPdf.js +185 -0
  43. package/dist/generateConsentHistoryPdf.js.map +1 -0
  44. package/dist/index.d.ts +9 -0
  45. package/dist/index.js +9 -0
  46. package/dist/index.js.map +1 -1
  47. package/dist/useConsentForms.d.ts +29 -0
  48. package/dist/useConsentForms.js +50 -0
  49. package/dist/useConsentForms.js.map +1 -0
  50. package/dist/useConsentHistory.d.ts +31 -0
  51. package/dist/useConsentHistory.js +17 -0
  52. package/dist/useConsentHistory.js.map +1 -0
  53. package/dist/useSubmitConsent.d.ts +12 -0
  54. package/dist/useSubmitConsent.js +23 -0
  55. package/dist/useSubmitConsent.js.map +1 -0
  56. package/package.json +4 -2
  57. package/src/BooleanField.test.tsx +3 -5
  58. package/src/BooleanField.tsx +33 -31
  59. package/src/ConsentFormScreen.tsx +216 -0
  60. package/src/ConsentHistory.tsx +249 -0
  61. package/src/ConsentNavigator.test.tsx +111 -0
  62. package/src/ConsentNavigator.tsx +128 -0
  63. package/src/DataTable.tsx +1 -1
  64. package/src/DateTimeActionSheet.tsx +21 -8
  65. package/src/DateTimeField.tsx +416 -133
  66. package/src/DraggableList.tsx +424 -0
  67. package/src/Link.tsx +1 -1
  68. package/src/MarkdownEditor.tsx +66 -0
  69. package/src/MarkdownEditorField.tsx +32 -28
  70. package/src/Modal.tsx +19 -1
  71. package/src/PickerSelect.tsx +11 -0
  72. package/src/Slider.tsx +2 -1
  73. package/src/TerrenoProvider.tsx +10 -1
  74. package/src/TimezonePicker.test.tsx +9 -1
  75. package/src/UpgradeRequiredScreen.tsx +52 -0
  76. package/src/__snapshots__/BooleanField.test.tsx.snap +167 -203
  77. package/src/__snapshots__/DataTable.test.tsx.snap +0 -114
  78. package/src/__snapshots__/Field.test.tsx.snap +53 -69
  79. package/src/__snapshots__/Link.test.tsx.snap +14 -21
  80. package/src/__snapshots__/Slider.test.tsx.snap +0 -7
  81. package/src/__snapshots__/TimezonePicker.test.tsx.snap +0 -4710
  82. package/src/generateConsentHistoryPdf.ts +211 -0
  83. package/src/index.tsx +9 -1
  84. package/src/useConsentForms.ts +70 -0
  85. package/src/useConsentHistory.ts +40 -0
  86. package/src/useSubmitConsent.ts +35 -0
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useCallback, useEffect, useRef } from "react";
3
- import { Animated, TouchableWithoutFeedback, View } from "react-native";
3
+ import { Animated, Pressable, View } from "react-native";
4
4
  import { FieldHelperText, FieldTitle } from "./fieldElements";
5
5
  import { Text } from "./Text";
6
6
  import { useTheme } from "./Theme";
@@ -59,31 +59,31 @@ export const BooleanField = ({ title, variant, value, onChange, disabled, disabl
59
59
  alignItems: variant === "title" ? "flex-start" : "center",
60
60
  flexDirection: variant === "title" ? "column" : "row",
61
61
  justifyContent: variant === "title" ? "flex-start" : "center",
62
- }, children: [Boolean(title) && _jsx(FieldTitle, { text: title }), _jsx(TouchableWithoutFeedback, { "aria-role": "button", onPress: handleSwitch, children: _jsxs(View, { style: { alignItems: "center", flexDirection: "row", justifyContent: "center" }, children: [_jsx(Animated.View, { style: {
63
- backgroundColor: disabled ? theme.surface.disabled : interpolatedColorAnimation,
64
- borderColor: disabled ? theme.surface.disabled : theme.surface.secondaryDark,
65
- borderRadius: TOUCHABLE_SIZE,
66
- borderWidth: 1,
67
- height: TOUCHABLE_SIZE,
68
- marginHorizontal: variant === "title" ? undefined : OFFSET,
69
- marginRight: variant === "title" ? OFFSET : undefined,
62
+ }, children: [Boolean(title) && _jsx(FieldTitle, { text: title }), _jsxs(Pressable, { "aria-role": "button", onPress: handleSwitch, style: { alignItems: "center", flexDirection: "row", justifyContent: "center" }, children: [_jsx(Animated.View, { style: {
63
+ backgroundColor: disabled ? theme.surface.disabled : interpolatedColorAnimation,
64
+ borderColor: disabled ? theme.surface.disabled : theme.surface.secondaryDark,
65
+ borderRadius: TOUCHABLE_SIZE,
66
+ borderWidth: 1,
67
+ height: TOUCHABLE_SIZE,
68
+ marginHorizontal: variant === "title" ? undefined : OFFSET,
69
+ marginRight: variant === "title" ? OFFSET : undefined,
70
+ width: WIDTH,
71
+ }, children: _jsx(Animated.View, { style: {
72
+ alignItems: "center",
73
+ flex: 1,
74
+ flexDirection: "row",
75
+ justifyContent: "center",
76
+ left: transformSwitch,
70
77
  width: WIDTH,
71
78
  }, children: _jsx(Animated.View, { style: {
72
79
  alignItems: "center",
73
- flex: 1,
74
- flexDirection: "row",
80
+ backgroundColor: theme.surface.base,
81
+ borderColor: disabled ? theme.surface.disabled : theme.surface.secondaryDark,
82
+ borderRadius: 10,
83
+ borderWidth: 1,
84
+ height: TOUCHABLE_SIZE,
75
85
  justifyContent: "center",
76
- left: transformSwitch,
77
- width: WIDTH,
78
- }, children: _jsx(Animated.View, { style: {
79
- alignItems: "center",
80
- backgroundColor: theme.surface.base,
81
- borderColor: disabled ? theme.surface.disabled : theme.surface.secondaryDark,
82
- borderRadius: 10,
83
- borderWidth: 1,
84
- height: TOUCHABLE_SIZE,
85
- justifyContent: "center",
86
- width: TOUCHABLE_SIZE,
87
- } }) }) }), variant === "title" && _jsx(Text, { size: "md", children: value ? "Yes" : "No" })] }) })] }), disabled && disabledHelperText && _jsx(FieldHelperText, { text: disabledHelperText }), Boolean(helperText) && _jsx(FieldHelperText, { text: helperText })] }));
86
+ width: TOUCHABLE_SIZE,
87
+ } }) }) }), variant === "title" && _jsx(Text, { size: "md", children: value ? "Yes" : "No" })] })] }), disabled && disabledHelperText && _jsx(FieldHelperText, { text: disabledHelperText }), Boolean(helperText) && _jsx(FieldHelperText, { text: helperText })] }));
88
88
  };
89
89
  //# sourceMappingURL=BooleanField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BooleanField.js","sourceRoot":"","sources":["../src/BooleanField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAU,WAAW,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAC,QAAQ,EAAE,wBAAwB,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAGtE,OAAO,EAAC,eAAe,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAC;AAEjC,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,MAAM,MAAM,GAAG,EAAE,CAAC;AAClB,MAAM,KAAK,GAAG,EAAE,CAAC;AACjB,MAAM,iBAAiB,GAAG,MAAM,GAAG,KAAK,CAAC;AAEzC,MAAM,CAAC,MAAM,YAAY,GAA0B,CAAC,EAClD,KAAK,EACL,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAClB,UAAU,GACX,EAAE,EAAE;IACH,MAAM,EAAC,KAAK,EAAC,GAAG,QAAQ,EAAE,CAAC;IAC3B,MAAM,eAAe,GAAG,MAAM,CAC5B,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CACvE,CAAC,OAAO,CAAC;IACV,MAAM,WAAW,GAAG,MAAM,CACxB,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CACvE,CAAC,OAAO,CAAC;IACV,MAAM,iBAAiB,GAAG,MAAM,CAC9B,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CACvE,CAAC,OAAO,CAAC;IACV,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IAEzF,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,QAAiB,EAAE,EAAE;QACpB,QAAQ,CAAC,QAAQ,CAAC;YAChB,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE;gBAC/B,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM;gBACxC,eAAe,EAAE,KAAK;aACvB,CAAC;YACF,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE;gBAC/B,QAAQ,EAAE,GAAG;gBACb,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB;gBAC9D,eAAe,EAAE,KAAK;aACvB,CAAC;YACF,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE;gBAC3B,QAAQ,EAAE,GAAG;gBACb,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB;gBAC9D,eAAe,EAAE,KAAK;aACvB,CAAC;YACF,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE;gBACjC,QAAQ,EAAE,GAAG;gBACb,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB;gBAC3D,eAAe,EAAE,KAAK;aACvB,CAAC;SACH,CAAC,CAAC,KAAK,EAAE,CAAC;IACb,CAAC,EACD,CAAC,eAAe,EAAE,WAAW,EAAE,iBAAiB,EAAE,eAAe,EAAE,KAAK,CAAC,CAC1E,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC;QACtB,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC,CAAC;IAEF,uDAAuD;IACvD,SAAS,CAAC,GAAG,EAAE;QACb,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;IAE3B,MAAM,0BAA0B,GAAG,eAAe,CAAC,WAAW,CAAC;QAC7D,UAAU,EAAE,CAAC,CAAC,CAAC,GAAG,iBAAiB,EAAE,iBAAiB,CAAC;QACvD,WAAW,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;KAC/D,CAAC,CAAC;IAEH,OAAO,CACL,MAAC,IAAI,IACH,KAAK,EAAE;YACL,UAAU,EAAE,YAAY;YACxB,aAAa,EAAE,QAAQ;SACxB,aAED,MAAC,IAAI,IACH,KAAK,EAAE;oBACL,UAAU,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ;oBACzD,aAAa,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;oBACrD,cAAc,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ;iBAC9D,aAEA,OAAO,CAAC,KAAK,CAAC,IAAI,KAAC,UAAU,IAAC,IAAI,EAAE,KAAM,GAAI,EAC/C,KAAC,wBAAwB,iBAAW,QAAQ,EAAC,OAAO,EAAE,YAAY,YAChE,MAAC,IAAI,IAAC,KAAK,EAAE,EAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAC,aACjF,KAAC,QAAQ,CAAC,IAAI,IACZ,KAAK,EAAE;wCACL,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,0BAA0B;wCAC/E,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa;wCAC5E,YAAY,EAAE,cAAc;wCAC5B,WAAW,EAAE,CAAC;wCACd,MAAM,EAAE,cAAc;wCACtB,gBAAgB,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;wCAC1D,WAAW,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;wCACrD,KAAK,EAAE,KAAK;qCACb,YAED,KAAC,QAAQ,CAAC,IAAI,IACZ,KAAK,EAAE;4CACL,UAAU,EAAE,QAAQ;4CACpB,IAAI,EAAE,CAAC;4CACP,aAAa,EAAE,KAAK;4CACpB,cAAc,EAAE,QAAQ;4CACxB,IAAI,EAAE,eAAe;4CACrB,KAAK,EAAE,KAAK;yCACb,YAED,KAAC,QAAQ,CAAC,IAAI,IACZ,KAAK,EAAE;gDACL,UAAU,EAAE,QAAQ;gDACpB,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;gDACnC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa;gDAC5E,YAAY,EAAE,EAAE;gDAChB,WAAW,EAAE,CAAC;gDACd,MAAM,EAAE,cAAc;gDACtB,cAAc,EAAE,QAAQ;gDACxB,KAAK,EAAE,cAAc;6CACtB,GACD,GACY,GACF,EACf,OAAO,KAAK,OAAO,IAAI,KAAC,IAAI,IAAC,IAAI,EAAC,IAAI,YAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAQ,IAChE,GACkB,IACtB,EACN,QAAQ,IAAI,kBAAkB,IAAI,KAAC,eAAe,IAAC,IAAI,EAAE,kBAAkB,GAAI,EAC/E,OAAO,CAAC,UAAU,CAAC,IAAI,KAAC,eAAe,IAAC,IAAI,EAAE,UAAoB,GAAI,IAClE,CACR,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"BooleanField.js","sourceRoot":"","sources":["../src/BooleanField.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import type { ConsentFormPublic } from "./useConsentForms";
3
+ interface ConsentFormScreenProps {
4
+ form: ConsentFormPublic;
5
+ isSubmitting?: boolean;
6
+ locale: string;
7
+ onAgree: (data: {
8
+ checkboxValues: Record<string, boolean>;
9
+ signature?: string;
10
+ }) => void;
11
+ onDecline?: () => void;
12
+ }
13
+ export declare const ConsentFormScreen: React.FC<ConsentFormScreenProps>;
14
+ export {};
@@ -0,0 +1,93 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import { Pressable, ScrollView } from "react-native";
4
+ import { Box } from "./Box";
5
+ import { Button } from "./Button";
6
+ import { CheckBox } from "./CheckBox";
7
+ import { MarkdownView } from "./MarkdownView";
8
+ import { Modal } from "./Modal";
9
+ import { Page } from "./Page";
10
+ import { SignatureField } from "./SignatureField";
11
+ import { Text } from "./Text";
12
+ export const ConsentFormScreen = ({ form, isSubmitting = false, locale, onAgree, onDecline, }) => {
13
+ var _a, _b;
14
+ const [checkboxValues, setCheckboxValues] = useState({});
15
+ const [hasScrolledToBottom, setHasScrolledToBottom] = useState(!form.requireScrollToBottom);
16
+ const [signatureValue, setSignatureValue] = useState(undefined);
17
+ const [confirmModalVisible, setConfirmModalVisible] = useState(false);
18
+ const [confirmModalCheckboxIndex, setConfirmModalCheckboxIndex] = useState(null);
19
+ const [scrollEnabled, setScrollEnabled] = useState(true);
20
+ const [contentHeight, setContentHeight] = useState(0);
21
+ const [layoutHeight, setLayoutHeight] = useState(0);
22
+ const content = (_b = (_a = form.content[locale]) !== null && _a !== void 0 ? _a : form.content[form.defaultLocale]) !== null && _b !== void 0 ? _b : "";
23
+ const allRequiredCheckboxesChecked = form.checkboxes.every((checkbox, index) => {
24
+ if (!checkbox.required) {
25
+ return true;
26
+ }
27
+ return checkboxValues[index.toString()] === true;
28
+ });
29
+ const signatureProvided = !form.captureSignature || Boolean(signatureValue);
30
+ const canAgree = hasScrolledToBottom && allRequiredCheckboxesChecked && signatureProvided;
31
+ // Auto-satisfy scroll requirement when content fits within the viewport
32
+ const handleContentSizeChange = (_w, h) => {
33
+ setContentHeight(h);
34
+ if (!hasScrolledToBottom && h > 0 && layoutHeight > 0 && h <= layoutHeight) {
35
+ setHasScrolledToBottom(true);
36
+ }
37
+ };
38
+ const handleLayout = (event) => {
39
+ const h = event.nativeEvent.layout.height;
40
+ setLayoutHeight(h);
41
+ if (!hasScrolledToBottom && contentHeight > 0 && h > 0 && contentHeight <= h) {
42
+ setHasScrolledToBottom(true);
43
+ }
44
+ };
45
+ const handleScroll = (event) => {
46
+ if (hasScrolledToBottom) {
47
+ return;
48
+ }
49
+ const { contentOffset, contentSize, layoutMeasurement } = event.nativeEvent;
50
+ const distanceFromBottom = contentSize.height - layoutMeasurement.height - contentOffset.y;
51
+ if (distanceFromBottom <= 20) {
52
+ setHasScrolledToBottom(true);
53
+ }
54
+ };
55
+ const handleCheckboxPress = (index) => {
56
+ var _a;
57
+ const checkbox = form.checkboxes[index];
58
+ const key = index.toString();
59
+ const currentValue = (_a = checkboxValues[key]) !== null && _a !== void 0 ? _a : false;
60
+ if (checkbox.confirmationPrompt && !currentValue) {
61
+ // Show confirmation modal before toggling on
62
+ setConfirmModalCheckboxIndex(index);
63
+ setConfirmModalVisible(true);
64
+ }
65
+ else {
66
+ setCheckboxValues((prev) => (Object.assign(Object.assign({}, prev), { [key]: !currentValue })));
67
+ }
68
+ };
69
+ const handleConfirmModalConfirm = () => {
70
+ if (confirmModalCheckboxIndex !== null) {
71
+ const key = confirmModalCheckboxIndex.toString();
72
+ setCheckboxValues((prev) => (Object.assign(Object.assign({}, prev), { [key]: true })));
73
+ }
74
+ setConfirmModalVisible(false);
75
+ setConfirmModalCheckboxIndex(null);
76
+ };
77
+ const handleConfirmModalDismiss = () => {
78
+ setConfirmModalVisible(false);
79
+ setConfirmModalCheckboxIndex(null);
80
+ };
81
+ const handleAgree = () => {
82
+ onAgree({ checkboxValues, signature: signatureValue });
83
+ };
84
+ const confirmingCheckbox = confirmModalCheckboxIndex !== null ? form.checkboxes[confirmModalCheckboxIndex] : null;
85
+ const footer = (_jsxs(Box, { direction: "column", gap: 2, paddingY: 2, testID: "consent-form-footer", width: "100%", children: [Boolean(form.allowDecline && onDecline) && (_jsx(Box, { width: "100%", children: _jsx(Button, { fullWidth: true, onClick: onDecline, testID: "consent-form-decline-button", text: form.declineButtonText, variant: "muted" }) })), _jsx(Box, { width: "100%", children: _jsx(Button, { disabled: !canAgree, fullWidth: true, loading: isSubmitting, onClick: handleAgree, testID: "consent-form-agree-button", text: form.agreeButtonText }) })] }));
86
+ return (_jsxs(Page, { footer: footer, scroll: false, title: form.title, children: [_jsx(ScrollView, { onContentSizeChange: handleContentSizeChange, onLayout: handleLayout, onScroll: handleScroll, scrollEnabled: scrollEnabled, scrollEventThrottle: 16, style: { flex: 1 }, testID: "consent-form-scroll-view", children: _jsxs(Box, { direction: "column", gap: 3, paddingY: 2, children: [_jsx(MarkdownView, { children: content }), form.checkboxes.length > 0 && (_jsx(Box, { direction: "column", gap: 2, testID: "consent-form-checkboxes", children: form.checkboxes.map((checkbox, index) => {
87
+ var _a;
88
+ const key = index.toString();
89
+ const isChecked = (_a = checkboxValues[key]) !== null && _a !== void 0 ? _a : false;
90
+ return (_jsx(Pressable, { onPress: () => handleCheckboxPress(index), testID: `consent-form-checkbox-${index}`, children: _jsxs(Box, { alignItems: "center", direction: "row", gap: 2, children: [_jsx(CheckBox, { selected: isChecked, size: "md" }), _jsx(Box, { flex: "grow", children: _jsxs(Text, { size: "md", children: [checkbox.label, checkbox.required && " *"] }) })] }) }, key));
91
+ }) })), Boolean(form.captureSignature) && (_jsx(Box, { direction: "column", gap: 2, testID: "consent-form-signature", children: _jsx(SignatureField, { onChange: (value) => setSignatureValue(value), onEnd: () => setScrollEnabled(true), onStart: () => setScrollEnabled(false), title: "Signature", value: signatureValue }) })), Boolean(form.requireScrollToBottom && !hasScrolledToBottom) && (_jsx(Box, { paddingY: 2, testID: "consent-form-scroll-hint", children: _jsx(Text, { color: "secondaryDark", size: "sm", children: "Please scroll to the bottom to continue." }) }))] }) }), confirmingCheckbox && (_jsx(Modal, { onDismiss: handleConfirmModalDismiss, primaryButtonOnClick: handleConfirmModalConfirm, primaryButtonText: "Confirm", secondaryButtonOnClick: handleConfirmModalDismiss, secondaryButtonText: "Cancel", text: confirmingCheckbox.confirmationPrompt, title: "Please confirm", visible: confirmModalVisible }))] }));
92
+ };
93
+ //# sourceMappingURL=ConsentFormScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConsentFormScreen.js","sourceRoot":"","sources":["../src/ConsentFormScreen.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ interface ConsentHistoryProps {
3
+ api: any;
4
+ baseUrl?: string;
5
+ title?: string;
6
+ }
7
+ export declare const ConsentHistory: React.FC<ConsentHistoryProps>;
8
+ export {};
@@ -0,0 +1,70 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { DateTime } from "luxon";
3
+ import { useCallback, useState } from "react";
4
+ import { Image, Pressable } from "react-native";
5
+ import { Badge } from "./Badge";
6
+ import { Box } from "./Box";
7
+ import { Button } from "./Button";
8
+ import { Card } from "./Card";
9
+ import { generateConsentHistoryPdf } from "./generateConsentHistoryPdf";
10
+ import { Icon } from "./Icon";
11
+ import { IconButton } from "./IconButton";
12
+ import { MarkdownView } from "./MarkdownView";
13
+ import { Page } from "./Page";
14
+ import { Spinner } from "./Spinner";
15
+ import { Text } from "./Text";
16
+ import { useConsentHistory } from "./useConsentHistory";
17
+ const formatDate = (value) => {
18
+ if (!value) {
19
+ return "";
20
+ }
21
+ const dt = DateTime.fromISO(String(value));
22
+ if (!dt.isValid) {
23
+ return String(value);
24
+ }
25
+ return dt.toLocaleString(DateTime.DATETIME_MED);
26
+ };
27
+ const ConsentHistoryItem = ({ entry }) => {
28
+ var _a, _b, _c, _d, _e;
29
+ const [expanded, setExpanded] = useState(false);
30
+ const [isDownloading, setIsDownloading] = useState(false);
31
+ const toggle = useCallback(() => {
32
+ setExpanded((prev) => !prev);
33
+ }, []);
34
+ const handleDownload = useCallback(async () => {
35
+ setIsDownloading(true);
36
+ try {
37
+ await generateConsentHistoryPdf(entry);
38
+ }
39
+ catch (err) {
40
+ console.error("Failed to generate PDF", err);
41
+ }
42
+ finally {
43
+ setIsDownloading(false);
44
+ }
45
+ }, [entry]);
46
+ const formTitle = (_b = (_a = entry.form) === null || _a === void 0 ? void 0 : _a.title) !== null && _b !== void 0 ? _b : "Unknown Form";
47
+ const formType = (_d = (_c = entry.form) === null || _c === void 0 ? void 0 : _c.type) !== null && _d !== void 0 ? _d : "";
48
+ const checkboxEntries = entry.checkboxValues && typeof entry.checkboxValues === "object"
49
+ ? Object.entries(entry.checkboxValues)
50
+ : [];
51
+ return (_jsxs(Card, { padding: 0, testID: `consent-history-item-${entry._id}`, children: [_jsx(Pressable, { onPress: toggle, testID: `consent-history-item-toggle-${entry._id}`, children: _jsxs(Box, { direction: "row", gap: 3, padding: 4, children: [_jsxs(Box, { flex: "grow", gap: 1, children: [_jsxs(Box, { alignItems: "center", direction: "row", gap: 2, children: [_jsx(Text, { bold: true, size: "md", children: formTitle }), formType ? _jsx(Badge, { status: "neutral", value: formType }) : null] }), _jsxs(Box, { alignItems: "center", direction: "row", gap: 2, children: [_jsx(Badge, { status: entry.agreed ? "success" : "error", value: entry.agreed ? "Agreed" : "Declined" }), _jsx(Text, { color: "secondaryDark", size: "sm", children: formatDate(entry.agreedAt) })] })] }), _jsx(Box, { alignItems: "center", justifyContent: "center", children: _jsx(Icon, { color: "secondaryDark", iconName: expanded ? "chevron-up" : "chevron-down", size: "sm" }) })] }) }), expanded && (_jsxs(Box, { gap: 3, padding: 4, testID: `consent-history-item-details-${entry._id}`, children: [_jsxs(Box, { alignItems: "center", direction: "row", justifyContent: "between", children: [_jsx(Box, { color: "disabled", flex: "grow", height: 1 }), _jsx(Box, { marginLeft: 2, children: _jsx(IconButton, { accessibilityLabel: "Download PDF", iconName: "download", loading: isDownloading, onClick: handleDownload, testID: `consent-history-download-${entry._id}`, tooltipText: "Download PDF" }) })] }), ((_e = entry.form) === null || _e === void 0 ? void 0 : _e.version) !== undefined && (_jsxs(Box, { alignItems: "center", direction: "row", gap: 2, children: [_jsx(Text, { color: "secondaryDark", size: "sm", children: "Version:" }), _jsx(Text, { size: "sm", children: entry.form.version })] })), entry.locale && (_jsxs(Box, { alignItems: "center", direction: "row", gap: 2, children: [_jsx(Text, { color: "secondaryDark", size: "sm", children: "Locale:" }), _jsx(Text, { size: "sm", children: entry.locale })] })), entry.signedAt && (_jsxs(Box, { alignItems: "center", direction: "row", gap: 2, children: [_jsx(Text, { color: "secondaryDark", size: "sm", children: "Signed:" }), _jsx(Text, { size: "sm", children: formatDate(entry.signedAt) })] })), entry.ipAddress && (_jsxs(Box, { alignItems: "center", direction: "row", gap: 2, children: [_jsx(Text, { color: "secondaryDark", size: "sm", children: "IP Address:" }), _jsx(Text, { size: "sm", children: entry.ipAddress })] })), checkboxEntries.length > 0 && (_jsxs(Box, { gap: 2, children: [_jsx(Text, { bold: true, color: "secondaryDark", size: "sm", children: "Checkboxes" }), checkboxEntries.map(([index, checked]) => {
52
+ var _a, _b, _c;
53
+ const label = (_c = (_b = (_a = entry.form) === null || _a === void 0 ? void 0 : _a.checkboxes) === null || _b === void 0 ? void 0 : _b[Number(index)]) === null || _c === void 0 ? void 0 : _c.label;
54
+ return (_jsxs(Box, { alignItems: "center", direction: "row", gap: 2, children: [_jsx(Badge, { status: checked ? "success" : "neutral", value: checked ? "Yes" : "No" }), _jsx(Text, { size: "sm", children: label !== null && label !== void 0 ? label : `Checkbox ${index}` })] }, index));
55
+ })] })), entry.signature && (_jsxs(Box, { gap: 2, children: [_jsx(Text, { bold: true, color: "secondaryDark", size: "sm", children: "Signature" }), _jsx(Box, { border: "default", padding: 2, rounding: "sm", children: _jsx(Image, { accessibilityLabel: "Your signature", accessible: true, resizeMode: "contain", source: { uri: entry.signature }, style: { height: 80, width: "100%" }, testID: `consent-history-signature-${entry._id}` }) })] })), entry.contentSnapshot && (_jsxs(Box, { gap: 2, children: [_jsx(Text, { bold: true, color: "secondaryDark", size: "sm", children: "Form Content" }), _jsx(Box, { border: "default", padding: 3, rounding: "sm", children: _jsx(MarkdownView, { children: entry.contentSnapshot }) })] }))] }))] }));
56
+ };
57
+ export const ConsentHistory = ({ api, baseUrl, title = "My Consents", }) => {
58
+ const { entries, isLoading, error, refetch } = useConsentHistory(api, baseUrl);
59
+ if (isLoading) {
60
+ return (_jsx(Page, { maxWidth: 800, title: title, children: _jsx(Box, { alignItems: "center", justifyContent: "center", padding: 6, children: _jsx(Spinner, {}) }) }));
61
+ }
62
+ if (error) {
63
+ return (_jsx(Page, { maxWidth: 800, title: title, children: _jsxs(Box, { alignItems: "center", direction: "column", gap: 3, padding: 6, children: [_jsx(Text, { color: "error", size: "lg", children: "Failed to load consent history" }), _jsx(Button, { onClick: refetch, text: "Retry" })] }) }));
64
+ }
65
+ if (entries.length === 0) {
66
+ return (_jsx(Page, { maxWidth: 800, title: title, children: _jsx(Box, { alignItems: "center", padding: 6, children: _jsx(Text, { color: "secondaryDark", children: "No consent records found." }) }) }));
67
+ }
68
+ return (_jsx(Page, { maxWidth: 800, scroll: true, title: title, children: _jsx(Box, { gap: 3, padding: 4, testID: "consent-history-list", children: entries.map((entry) => (_jsx(ConsentHistoryItem, { entry: entry }, entry._id))) }) }));
69
+ };
70
+ //# sourceMappingURL=ConsentHistory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConsentHistory.js","sourceRoot":"","sources":["../src/ConsentHistory.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ interface ConsentNavigatorProps {
3
+ api: any;
4
+ baseUrl?: string;
5
+ children: React.ReactNode;
6
+ onError?: (error: any) => void;
7
+ }
8
+ export declare const ConsentNavigator: React.FC<ConsentNavigatorProps>;
9
+ export {};
@@ -0,0 +1,72 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import { Box } from "./Box";
4
+ import { Button } from "./Button";
5
+ import { ConsentFormScreen } from "./ConsentFormScreen";
6
+ import { Spinner } from "./Spinner";
7
+ import { Text } from "./Text";
8
+ import { detectLocale, useConsentForms } from "./useConsentForms";
9
+ import { useSubmitConsent } from "./useSubmitConsent";
10
+ export const ConsentNavigator = ({ api, baseUrl, children, onError, }) => {
11
+ var _a, _b;
12
+ const [currentIndex, setCurrentIndex] = useState(0);
13
+ const { forms, isLoading, error, refetch } = useConsentForms(api, baseUrl);
14
+ const { submit, isSubmitting } = useSubmitConsent(api, baseUrl);
15
+ const locale = detectLocale();
16
+ if (isLoading) {
17
+ console.debug("[ConsentNavigator] Loading pending consents...");
18
+ return (_jsx(Box, { alignItems: "center", flex: "grow", justifyContent: "center", testID: "consent-navigator-loading", children: _jsx(Spinner, {}) }));
19
+ }
20
+ if (error) {
21
+ const status = (_a = error === null || error === void 0 ? void 0 : error.status) !== null && _a !== void 0 ? _a : error === null || error === void 0 ? void 0 : error.originalStatus;
22
+ console.warn("[ConsentNavigator] Error fetching pending consents:", { error, status });
23
+ // On auth errors, pass through to let the app handle re-authentication
24
+ if (status === 401 || status === 403) {
25
+ return _jsx(_Fragment, { children: children });
26
+ }
27
+ onError === null || onError === void 0 ? void 0 : onError(error);
28
+ return (_jsxs(Box, { alignItems: "center", direction: "column", flex: "grow", gap: 3, justifyContent: "center", padding: 6, testID: "consent-navigator-error", children: [_jsx(Text, { align: "center", color: "error", size: "lg", children: "Failed to load consent forms" }), _jsx(Button, { onClick: refetch, text: "Retry" })] }));
29
+ }
30
+ if (forms.length === 0 || currentIndex >= forms.length) {
31
+ console.debug("[ConsentNavigator] No pending consents, showing app");
32
+ return _jsx(_Fragment, { children: children });
33
+ }
34
+ console.info(`[ConsentNavigator] Showing consent form ${currentIndex + 1}/${forms.length}: ${(_b = forms[currentIndex]) === null || _b === void 0 ? void 0 : _b.title}`);
35
+ const currentForm = forms[currentIndex];
36
+ const handleAgree = async (data) => {
37
+ const body = {
38
+ agreed: true,
39
+ checkboxValues: data.checkboxValues,
40
+ consentFormId: currentForm.id,
41
+ locale,
42
+ signature: data.signature,
43
+ };
44
+ try {
45
+ await submit(body);
46
+ // Always refetch and reset so we pick up the updated pending list.
47
+ // Advancing currentIndex is racy because invalidatesTags shrinks
48
+ // the forms array in the background.
49
+ setCurrentIndex(0);
50
+ await refetch();
51
+ }
52
+ catch (err) {
53
+ onError === null || onError === void 0 ? void 0 : onError(err);
54
+ }
55
+ };
56
+ const handleDecline = async () => {
57
+ try {
58
+ await submit({
59
+ agreed: false,
60
+ consentFormId: currentForm.id,
61
+ locale,
62
+ });
63
+ setCurrentIndex(0);
64
+ await refetch();
65
+ }
66
+ catch (err) {
67
+ onError === null || onError === void 0 ? void 0 : onError(err);
68
+ }
69
+ };
70
+ return (_jsx(ConsentFormScreen, { form: currentForm, isSubmitting: isSubmitting, locale: locale, onAgree: handleAgree, onDecline: currentForm.required ? undefined : handleDecline }));
71
+ };
72
+ //# sourceMappingURL=ConsentNavigator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConsentNavigator.js","sourceRoot":"","sources":["../src/ConsentNavigator.tsx"],"names":[],"mappings":"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"}
package/dist/DataTable.js CHANGED
@@ -14,7 +14,7 @@ import { TableTitle } from "./table/TableTitle";
14
14
  // TODO: Add permanent horizontal scroll bar so users with only a mouse can scroll left/right
15
15
  // easily.
16
16
  const TextCell = ({ cellData }) => {
17
- return (_jsx(Box, { flex: "grow", justifyContent: "center", paddingX: 2, children: _jsx(Text, { size: cellData.textSize || "md", children: cellData.value }) }));
17
+ return (_jsx(Box, { flex: "grow", justifyContent: "center", children: _jsx(Text, { size: cellData.textSize || "md", children: cellData.value }) }));
18
18
  };
19
19
  const CheckedCell = ({ cellData }) => {
20
20
  return (_jsx(Box, { flex: "grow", justifyContent: "center", width: "100%", children: _jsx(Icon, { color: cellData.value ? "success" : "secondaryDark", iconName: cellData.value ? "check" : "x" }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"DataTable.js","sourceRoot":"","sources":["../src/DataTable.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataTable.js","sourceRoot":"","sources":["../src/DataTable.tsx"],"names":[],"mappings":"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"}
@@ -88,12 +88,12 @@ const MobileTime = ({ type, timezone, setTimezone, hour, setHour, minute, setMin
88
88
  }, onValueChange: (itemValue) => setHour(itemValue), selectedValue: hour, style: {
89
89
  backgroundColor: "#FFFFFF",
90
90
  height: TIME_PICKER_HEIGHT,
91
- }, children: hours.map((n) => (_jsx(Picker.Item, { label: String(n), value: String(n) }, String(n)))) }) }), _jsx(Box, { paddingY: 2, width: "35%", children: _jsx(Picker, { itemStyle: {
91
+ }, children: hours.map((n) => (_jsx(Picker.Item, { label: String(n), value: Number(n) }, String(n)))) }) }), _jsx(Box, { paddingY: 2, width: "35%", children: _jsx(Picker, { itemStyle: {
92
92
  height: TIME_PICKER_HEIGHT,
93
93
  }, onValueChange: (itemValue) => setMinute(itemValue), selectedValue: minute, style: {
94
94
  backgroundColor: "#FFFFFF",
95
95
  height: TIME_PICKER_HEIGHT,
96
- }, children: minutes.map((n) => (_jsx(Picker.Item, { label: String(n), value: String(n) }, String(n)))) }) }), _jsx(Box, { paddingY: 2, width: "30%", children: _jsxs(Picker, { itemStyle: {
96
+ }, children: minutes.map((n) => (_jsx(Picker.Item, { label: String(n), value: Number(n) }, String(n)))) }) }), _jsx(Box, { paddingY: 2, width: "30%", children: _jsxs(Picker, { itemStyle: {
97
97
  height: TIME_PICKER_HEIGHT,
98
98
  }, onValueChange: (itemValue) => setAmPm(itemValue), selectedValue: amPm, style: {
99
99
  backgroundColor: "#FFFFFF",
@@ -123,9 +123,16 @@ const DateCalendar = ({ type, onChange, onDismiss, date, setDate, timezone, }) =
123
123
  dateString = dt.setZone().toISO();
124
124
  }
125
125
  if (date) {
126
- const displayDate = timezone
127
- ? DateTime.fromISO(dateString).setZone(timezone).toFormat("yyyy-MM-dd")
128
- : DateTime.fromISO(dateString).toFormat("yyyy-MM-dd");
126
+ let displayDate;
127
+ if (type === "date") {
128
+ displayDate = DateTime.fromISO(dateString).toUTC().toFormat("yyyy-MM-dd");
129
+ }
130
+ else if (timezone) {
131
+ displayDate = DateTime.fromISO(dateString).setZone(timezone).toFormat("yyyy-MM-dd");
132
+ }
133
+ else {
134
+ displayDate = DateTime.fromISO(dateString).toFormat("yyyy-MM-dd");
135
+ }
129
136
  markedDates[displayDate] = {
130
137
  customStyles: {
131
138
  container: {
@@ -182,7 +189,14 @@ export const DateTimeActionSheet = ({ type = "datetime", value, onChange, visibl
182
189
  useEffect(() => {
183
190
  let datetime;
184
191
  if (value) {
185
- datetime = DateTime.fromISO(value).setZone(originalTimezone).set({ millisecond: 0, second: 0 });
192
+ if (type === "date") {
193
+ datetime = DateTime.fromISO(value).toUTC().set({ millisecond: 0, second: 0 });
194
+ }
195
+ else {
196
+ datetime = DateTime.fromISO(value)
197
+ .setZone(originalTimezone)
198
+ .set({ millisecond: 0, second: 0 });
199
+ }
186
200
  }
187
201
  else {
188
202
  datetime = DateTime.now().setZone(originalTimezone).set({ millisecond: 0, second: 0 });
@@ -201,7 +215,7 @@ export const DateTimeActionSheet = ({ type = "datetime", value, onChange, visibl
201
215
  setDate(datetime.toISO());
202
216
  // Reset timezone when the sent date changes.
203
217
  setTimezone(originalTimezone);
204
- }, [value, originalTimezone]);
218
+ }, [value, originalTimezone, type]);
205
219
  // TODO Support 24 hour time for time picker.
206
220
  // Note: do not call this if waiting on a state change.
207
221
  const sendOnChange = () => {
@@ -212,7 +226,9 @@ export const DateTimeActionSheet = ({ type = "datetime", value, onChange, visibl
212
226
  else if (amPm === "pm" && hour !== 12) {
213
227
  militaryHour = Number(hour) + 12;
214
228
  }
215
- const dateTime = DateTime.fromISO(date, { zone: timezone });
229
+ // For type="date" the date state is always UTC midnight — parse it in UTC, not the component
230
+ // timezone, to avoid shifting the date when converting back to UTC.
231
+ const dateTime = DateTime.fromISO(date, { zone: type === "date" ? "UTC" : timezone });
216
232
  if (type === "date") {
217
233
  const v = dateTime.set({ hour: 0, millisecond: 0, minute: 0, second: 0 }).toUTC().toISO();
218
234
  if (!v || !DateTime.fromISO(v).isValid) {