@grupalia/rn-ui-kit 0.15.0 → 0.17.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.
- package/lib/commonjs/assets/illustrations/camera.svg +87 -0
- package/lib/commonjs/components/BaseDatesScrollView.js +71 -0
- package/lib/commonjs/components/BaseDatesScrollView.js.map +1 -0
- package/lib/commonjs/components/CameraImageInput.js +478 -0
- package/lib/commonjs/components/CameraImageInput.js.map +1 -0
- package/lib/commonjs/components/CameraWrapperModal.js +255 -0
- package/lib/commonjs/components/CameraWrapperModal.js.map +1 -0
- package/lib/commonjs/components/DateSelector.js +72 -0
- package/lib/commonjs/components/DateSelector.js.map +1 -0
- package/lib/commonjs/components/DateTimeSelector.js +197 -0
- package/lib/commonjs/components/DateTimeSelector.js.map +1 -0
- package/lib/commonjs/components/FormikCameraImageInput.js +37 -0
- package/lib/commonjs/components/FormikCameraImageInput.js.map +1 -0
- package/lib/commonjs/components/FormikDateSelector.js +28 -0
- package/lib/commonjs/components/FormikDateSelector.js.map +1 -0
- package/lib/commonjs/components/FormikDateTimeSelector.js +40 -0
- package/lib/commonjs/components/FormikDateTimeSelector.js.map +1 -0
- package/lib/commonjs/components/FormikDateTimeSelectorBottomSheet.js +107 -0
- package/lib/commonjs/components/FormikDateTimeSelectorBottomSheet.js.map +1 -0
- package/lib/commonjs/components/ImagePickerBottomSheet.js +100 -0
- package/lib/commonjs/components/ImagePickerBottomSheet.js.map +1 -0
- package/lib/commonjs/components/PhotoPickerModal.js +98 -0
- package/lib/commonjs/components/PhotoPickerModal.js.map +1 -0
- package/lib/commonjs/components/Toasts.js +188 -0
- package/lib/commonjs/components/Toasts.js.map +1 -0
- package/lib/commonjs/components/index.js +101 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/components/svgs/Camera.js +17 -0
- package/lib/commonjs/components/svgs/Camera.js.map +1 -0
- package/lib/commonjs/hoc-components.js +3 -1
- package/lib/commonjs/hoc-components.js.map +1 -1
- package/lib/commonjs/hooks/index.js +41 -0
- package/lib/commonjs/hooks/index.js.map +1 -0
- package/lib/commonjs/hooks/useInternetConnectionStatus.js +182 -0
- package/lib/commonjs/hooks/useInternetConnectionStatus.js.map +1 -0
- package/lib/commonjs/types/svg.d.js +2 -0
- package/lib/commonjs/types/svg.d.js.map +1 -0
- package/lib/commonjs/utils/date.js +8 -0
- package/lib/commonjs/utils/date.js.map +1 -0
- package/lib/commonjs/utils/fileDirectoryUtils.js +19 -0
- package/lib/commonjs/utils/fileDirectoryUtils.js.map +1 -0
- package/lib/commonjs/utils/index.js +22 -0
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/commonjs/utils/timeConstants.js +15 -0
- package/lib/commonjs/utils/timeConstants.js.map +1 -0
- package/lib/module/assets/illustrations/camera.svg +87 -0
- package/lib/module/components/BaseDatesScrollView.js +66 -0
- package/lib/module/components/BaseDatesScrollView.js.map +1 -0
- package/lib/module/components/CameraImageInput.js +471 -0
- package/lib/module/components/CameraImageInput.js.map +1 -0
- package/lib/module/components/CameraWrapperModal.js +250 -0
- package/lib/module/components/CameraWrapperModal.js.map +1 -0
- package/lib/module/components/DateSelector.js +66 -0
- package/lib/module/components/DateSelector.js.map +1 -0
- package/lib/module/components/DateTimeSelector.js +191 -0
- package/lib/module/components/DateTimeSelector.js.map +1 -0
- package/lib/module/components/FormikCameraImageInput.js +32 -0
- package/lib/module/components/FormikCameraImageInput.js.map +1 -0
- package/lib/module/components/FormikDateSelector.js +23 -0
- package/lib/module/components/FormikDateSelector.js.map +1 -0
- package/lib/module/components/FormikDateTimeSelector.js +35 -0
- package/lib/module/components/FormikDateTimeSelector.js.map +1 -0
- package/lib/module/components/FormikDateTimeSelectorBottomSheet.js +102 -0
- package/lib/module/components/FormikDateTimeSelectorBottomSheet.js.map +1 -0
- package/lib/module/components/ImagePickerBottomSheet.js +95 -0
- package/lib/module/components/ImagePickerBottomSheet.js.map +1 -0
- package/lib/module/components/PhotoPickerModal.js +93 -0
- package/lib/module/components/PhotoPickerModal.js.map +1 -0
- package/lib/module/components/Toasts.js +182 -0
- package/lib/module/components/Toasts.js.map +1 -0
- package/lib/module/components/index.js +11 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/components/svgs/Camera.js +12 -0
- package/lib/module/components/svgs/Camera.js.map +1 -0
- package/lib/module/hoc-components.js +2 -0
- package/lib/module/hoc-components.js.map +1 -1
- package/lib/module/hooks/index.js +6 -0
- package/lib/module/hooks/index.js.map +1 -0
- package/lib/module/hooks/useInternetConnectionStatus.js +177 -0
- package/lib/module/hooks/useInternetConnectionStatus.js.map +1 -0
- package/lib/module/types/svg.d.js +2 -0
- package/lib/module/types/svg.d.js.map +1 -0
- package/lib/module/utils/date.js +4 -0
- package/lib/module/utils/date.js.map +1 -0
- package/lib/module/utils/fileDirectoryUtils.js +14 -0
- package/lib/module/utils/fileDirectoryUtils.js.map +1 -0
- package/lib/module/utils/index.js +2 -0
- package/lib/module/utils/index.js.map +1 -1
- package/lib/module/utils/timeConstants.js +12 -0
- package/lib/module/utils/timeConstants.js.map +1 -0
- package/lib/typescript/commonjs/components/BaseDatesScrollView.d.ts +16 -0
- package/lib/typescript/commonjs/components/BaseDatesScrollView.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/CameraImageInput.d.ts +41 -0
- package/lib/typescript/commonjs/components/CameraImageInput.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/CameraWrapperModal.d.ts +18 -0
- package/lib/typescript/commonjs/components/CameraWrapperModal.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/DateSelector.d.ts +22 -0
- package/lib/typescript/commonjs/components/DateSelector.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/DateTimeSelector.d.ts +28 -0
- package/lib/typescript/commonjs/components/DateTimeSelector.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/FormikCameraImageInput.d.ts +14 -0
- package/lib/typescript/commonjs/components/FormikCameraImageInput.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/FormikDateSelector.d.ts +14 -0
- package/lib/typescript/commonjs/components/FormikDateSelector.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/FormikDateTimeSelector.d.ts +14 -0
- package/lib/typescript/commonjs/components/FormikDateTimeSelector.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/FormikDateTimeSelectorBottomSheet.d.ts +20 -0
- package/lib/typescript/commonjs/components/FormikDateTimeSelectorBottomSheet.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/ImagePickerBottomSheet.d.ts +15 -0
- package/lib/typescript/commonjs/components/ImagePickerBottomSheet.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/PhotoPickerModal.d.ts +19 -0
- package/lib/typescript/commonjs/components/PhotoPickerModal.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Toasts.d.ts +3 -0
- package/lib/typescript/commonjs/components/Toasts.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/index.d.ts +11 -0
- package/lib/typescript/commonjs/components/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/svgs/Camera.d.ts +9 -0
- package/lib/typescript/commonjs/components/svgs/Camera.d.ts.map +1 -0
- package/lib/typescript/commonjs/hoc-components.d.ts +12 -0
- package/lib/typescript/commonjs/hoc-components.d.ts.map +1 -1
- package/lib/typescript/commonjs/hooks/index.d.ts +4 -0
- package/lib/typescript/commonjs/hooks/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/hooks/useInternetConnectionStatus.d.ts +20 -0
- package/lib/typescript/commonjs/hooks/useInternetConnectionStatus.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/date.d.ts +2 -0
- package/lib/typescript/commonjs/utils/date.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/fileDirectoryUtils.d.ts +3 -0
- package/lib/typescript/commonjs/utils/fileDirectoryUtils.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/index.d.ts +2 -0
- package/lib/typescript/commonjs/utils/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/timeConstants.d.ts +10 -0
- package/lib/typescript/commonjs/utils/timeConstants.d.ts.map +1 -0
- package/lib/typescript/module/components/BaseDatesScrollView.d.ts +16 -0
- package/lib/typescript/module/components/BaseDatesScrollView.d.ts.map +1 -0
- package/lib/typescript/module/components/CameraImageInput.d.ts +41 -0
- package/lib/typescript/module/components/CameraImageInput.d.ts.map +1 -0
- package/lib/typescript/module/components/CameraWrapperModal.d.ts +18 -0
- package/lib/typescript/module/components/CameraWrapperModal.d.ts.map +1 -0
- package/lib/typescript/module/components/DateSelector.d.ts +22 -0
- package/lib/typescript/module/components/DateSelector.d.ts.map +1 -0
- package/lib/typescript/module/components/DateTimeSelector.d.ts +28 -0
- package/lib/typescript/module/components/DateTimeSelector.d.ts.map +1 -0
- package/lib/typescript/module/components/FormikCameraImageInput.d.ts +14 -0
- package/lib/typescript/module/components/FormikCameraImageInput.d.ts.map +1 -0
- package/lib/typescript/module/components/FormikDateSelector.d.ts +14 -0
- package/lib/typescript/module/components/FormikDateSelector.d.ts.map +1 -0
- package/lib/typescript/module/components/FormikDateTimeSelector.d.ts +14 -0
- package/lib/typescript/module/components/FormikDateTimeSelector.d.ts.map +1 -0
- package/lib/typescript/module/components/FormikDateTimeSelectorBottomSheet.d.ts +20 -0
- package/lib/typescript/module/components/FormikDateTimeSelectorBottomSheet.d.ts.map +1 -0
- package/lib/typescript/module/components/ImagePickerBottomSheet.d.ts +15 -0
- package/lib/typescript/module/components/ImagePickerBottomSheet.d.ts.map +1 -0
- package/lib/typescript/module/components/PhotoPickerModal.d.ts +19 -0
- package/lib/typescript/module/components/PhotoPickerModal.d.ts.map +1 -0
- package/lib/typescript/module/components/Toasts.d.ts +3 -0
- package/lib/typescript/module/components/Toasts.d.ts.map +1 -0
- package/lib/typescript/module/components/index.d.ts +11 -0
- package/lib/typescript/module/components/index.d.ts.map +1 -1
- package/lib/typescript/module/components/svgs/Camera.d.ts +9 -0
- package/lib/typescript/module/components/svgs/Camera.d.ts.map +1 -0
- package/lib/typescript/module/hoc-components.d.ts +12 -0
- package/lib/typescript/module/hoc-components.d.ts.map +1 -1
- package/lib/typescript/module/hooks/index.d.ts +4 -0
- package/lib/typescript/module/hooks/index.d.ts.map +1 -0
- package/lib/typescript/module/hooks/useInternetConnectionStatus.d.ts +20 -0
- package/lib/typescript/module/hooks/useInternetConnectionStatus.d.ts.map +1 -0
- package/lib/typescript/module/utils/date.d.ts +2 -0
- package/lib/typescript/module/utils/date.d.ts.map +1 -0
- package/lib/typescript/module/utils/fileDirectoryUtils.d.ts +3 -0
- package/lib/typescript/module/utils/fileDirectoryUtils.d.ts.map +1 -0
- package/lib/typescript/module/utils/index.d.ts +2 -0
- package/lib/typescript/module/utils/index.d.ts.map +1 -1
- package/lib/typescript/module/utils/timeConstants.d.ts +10 -0
- package/lib/typescript/module/utils/timeConstants.d.ts.map +1 -0
- package/package.json +31 -4
- package/src/components/BaseDatesScrollView.tsx +123 -0
- package/src/components/CameraImageInput.tsx +610 -0
- package/src/components/CameraWrapperModal.tsx +309 -0
- package/src/components/DateSelector.tsx +91 -0
- package/src/components/DateTimeSelector.tsx +267 -0
- package/src/components/FormikCameraImageInput.tsx +39 -0
- package/src/components/FormikDateSelector.tsx +36 -0
- package/src/components/FormikDateTimeSelector.tsx +49 -0
- package/src/components/FormikDateTimeSelectorBottomSheet.tsx +129 -0
- package/src/components/ImagePickerBottomSheet.tsx +109 -0
- package/src/components/PhotoPickerModal.tsx +116 -0
- package/src/components/Toasts.tsx +200 -0
- package/src/components/index.ts +11 -0
- package/src/components/svgs/Camera.tsx +14 -0
- package/src/hooks/index.ts +3 -0
- package/src/hooks/useBreakpoints.ts +20 -0
- package/src/hooks/useInternetConnectionStatus.ts +221 -0
- package/src/hooks/useIsAboveBreakpoint.ts +8 -0
- package/src/utils/date.ts +1 -0
- package/src/utils/fileDirectoryUtils.ts +12 -0
- package/src/utils/index.ts +2 -0
- package/src/utils/timeConstants.ts +19 -0
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _hooks = require("@react-native-community/hooks");
|
|
8
|
+
var _native = require("@react-navigation/native");
|
|
9
|
+
var _reactNative = require("@sentry/react-native");
|
|
10
|
+
var _reactQuery = require("@tanstack/react-query");
|
|
11
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
|
12
|
+
var _nativewind = require("nativewind");
|
|
13
|
+
var _react = require("react");
|
|
14
|
+
var _headless = _interopRequireDefault(require("react-hot-toast/headless"));
|
|
15
|
+
var _reactNative2 = require("react-native");
|
|
16
|
+
var _outline = require("react-native-heroicons/outline");
|
|
17
|
+
var _reactNativeVisionCamera = require("react-native-vision-camera");
|
|
18
|
+
var _hocComponents = require("../hoc-components");
|
|
19
|
+
var _BaseButton = _interopRequireDefault(require("./BaseButton"));
|
|
20
|
+
var _BaseIcon = _interopRequireDefault(require("./BaseIcon"));
|
|
21
|
+
var _BaseText = _interopRequireDefault(require("./BaseText"));
|
|
22
|
+
var _PressableOpacity = _interopRequireDefault(require("./PressableOpacity"));
|
|
23
|
+
var _useIsAboveBreakpoint = require("../hooks/useIsAboveBreakpoint");
|
|
24
|
+
var _fileDirectoryUtils = require("../utils/fileDirectoryUtils");
|
|
25
|
+
var _Camera = _interopRequireDefault(require("./svgs/Camera"));
|
|
26
|
+
var _Toasts = _interopRequireDefault(require("./Toasts"));
|
|
27
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
28
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
29
|
+
function PermissionCard({
|
|
30
|
+
onPermissionRequestPress
|
|
31
|
+
}) {
|
|
32
|
+
const largePhone = (0, _useIsAboveBreakpoint.useIsAboveBreakpoint)('xs');
|
|
33
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
34
|
+
className: (0, _clsx.default)('w-full flex-col items-center rounded-lg bg-white p-4', largePhone ? 'mt-10 space-y-10' : 'space-y-4'),
|
|
35
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
36
|
+
className: (0, _clsx.default)('text-center font-semibold', largePhone && 'text-xl'),
|
|
37
|
+
children: "Necesitamos permiso para acceder a la camara"
|
|
38
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Camera.default, {
|
|
39
|
+
width: "100%",
|
|
40
|
+
height: largePhone ? 200 : 100
|
|
41
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseButton.default, {
|
|
42
|
+
className: "w-full",
|
|
43
|
+
size: largePhone ? 'md' : 'xs',
|
|
44
|
+
text: "Permitir",
|
|
45
|
+
onPress: onPermissionRequestPress
|
|
46
|
+
})]
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
function CameraPreview({
|
|
50
|
+
onCapture,
|
|
51
|
+
previewOverlay,
|
|
52
|
+
filters,
|
|
53
|
+
isActive,
|
|
54
|
+
allowDeviceSwitching,
|
|
55
|
+
initialDevice,
|
|
56
|
+
pathToSave
|
|
57
|
+
}) {
|
|
58
|
+
const cameraRef = (0, _react.useRef)(null);
|
|
59
|
+
const [selectedDevice, setSelectedDevice] = (0, _react.useState)(initialDevice);
|
|
60
|
+
const device = (0, _reactNativeVisionCamera.useCameraDevice)(selectedDevice);
|
|
61
|
+
const format = (0, _reactNativeVisionCamera.useCameraFormat)(device, filters);
|
|
62
|
+
const {
|
|
63
|
+
mutate
|
|
64
|
+
} = (0, _reactQuery.useMutation)({
|
|
65
|
+
mutationFn: async () => {
|
|
66
|
+
if (cameraRef.current) {
|
|
67
|
+
if (pathToSave) await (0, _fileDirectoryUtils.ensureDirExists)(pathToSave);
|
|
68
|
+
const file = await cameraRef.current.takePhoto({
|
|
69
|
+
path: pathToSave?.replace('file://', '') ?? undefined
|
|
70
|
+
});
|
|
71
|
+
return file;
|
|
72
|
+
}
|
|
73
|
+
return Promise.reject(new Error('Camera ref is not defined'));
|
|
74
|
+
},
|
|
75
|
+
networkMode: 'always',
|
|
76
|
+
onSuccess: photoFile => onCapture({
|
|
77
|
+
...photoFile,
|
|
78
|
+
uri: `file://${photoFile.path}`
|
|
79
|
+
}),
|
|
80
|
+
onError: error => {
|
|
81
|
+
(0, _reactNative.captureException)(error);
|
|
82
|
+
_headless.default.error('Ocurrió un error al tomar la foto');
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
86
|
+
className: "flex h-full w-full flex-col",
|
|
87
|
+
children: [device ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
88
|
+
className: "relative h-full w-full flex-1 overflow-hidden rounded-xl border-2",
|
|
89
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeVisionCamera.Camera, {
|
|
90
|
+
style: {
|
|
91
|
+
flex: 1,
|
|
92
|
+
width: '100%',
|
|
93
|
+
height: '100%'
|
|
94
|
+
},
|
|
95
|
+
ref: cameraRef,
|
|
96
|
+
device: device,
|
|
97
|
+
format: format,
|
|
98
|
+
isActive: isActive,
|
|
99
|
+
photo: true
|
|
100
|
+
}), previewOverlay, allowDeviceSwitching && /*#__PURE__*/(0, _jsxRuntime.jsx)(_PressableOpacity.default, {
|
|
101
|
+
onPress: () => setSelectedDevice(selectedDevice === 'back' ? 'front' : 'back'),
|
|
102
|
+
className: "absolute bottom-8 right-8 flex h-12 w-12 items-center justify-center rounded-full bg-secondary",
|
|
103
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseIcon.default, {
|
|
104
|
+
icon: _outline.ArrowPathIcon,
|
|
105
|
+
className: "h-full w-full",
|
|
106
|
+
color: "utility-gray-200"
|
|
107
|
+
})
|
|
108
|
+
})]
|
|
109
|
+
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.View, {
|
|
110
|
+
className: "flex h-full w-full items-center justify-center bg-utility-gray-200",
|
|
111
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
112
|
+
className: "text-secondary",
|
|
113
|
+
children: "No fue posible acceder a la camara"
|
|
114
|
+
})
|
|
115
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PressableOpacity.default, {
|
|
116
|
+
onPress: () => mutate(),
|
|
117
|
+
className: "my-10 h-20 w-20 self-center rounded-full border-4 border-white bg-black p-1",
|
|
118
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.View, {
|
|
119
|
+
className: "h-full w-full rounded-full bg-white"
|
|
120
|
+
})
|
|
121
|
+
})]
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
function PhotoFilePreview({
|
|
125
|
+
photoFile,
|
|
126
|
+
onConfirm,
|
|
127
|
+
onCancel
|
|
128
|
+
}) {
|
|
129
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
130
|
+
className: "flex h-full w-full flex-col items-center pb-10",
|
|
131
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.View, {
|
|
132
|
+
className: "w-full flex-1 overflow-hidden rounded-xl",
|
|
133
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.Image, {
|
|
134
|
+
style: {
|
|
135
|
+
width: 'auto',
|
|
136
|
+
height: '100%'
|
|
137
|
+
},
|
|
138
|
+
source: {
|
|
139
|
+
uri: photoFile.uri
|
|
140
|
+
},
|
|
141
|
+
resizeMode: "cover"
|
|
142
|
+
})
|
|
143
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
144
|
+
className: "mt-12 flex flex-row items-center space-x-16",
|
|
145
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.Pressable, {
|
|
146
|
+
onPress: onCancel,
|
|
147
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseIcon.default, {
|
|
148
|
+
icon: _outline.ArrowUturnLeftIcon,
|
|
149
|
+
size: 64,
|
|
150
|
+
color: "fg-error-primary"
|
|
151
|
+
})
|
|
152
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.Pressable, {
|
|
153
|
+
onPress: onConfirm,
|
|
154
|
+
className: "self-end",
|
|
155
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseIcon.default, {
|
|
156
|
+
icon: _outline.CheckIcon,
|
|
157
|
+
size: 64,
|
|
158
|
+
color: "fg-success-primary"
|
|
159
|
+
})
|
|
160
|
+
})]
|
|
161
|
+
})]
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
function CameraWrapperModal({
|
|
165
|
+
onCapture,
|
|
166
|
+
onClose,
|
|
167
|
+
filters = [{
|
|
168
|
+
photoResolution: {
|
|
169
|
+
width: 720,
|
|
170
|
+
height: 1280
|
|
171
|
+
}
|
|
172
|
+
}],
|
|
173
|
+
previewOverlay = undefined,
|
|
174
|
+
allowDeviceSwitching = true,
|
|
175
|
+
initialDevice = 'back',
|
|
176
|
+
pathToSave = undefined,
|
|
177
|
+
...modalProps
|
|
178
|
+
}) {
|
|
179
|
+
const [photoFile, setPhotoFile] = (0, _react.useState)(null);
|
|
180
|
+
const [permissionRequested, setPermissionRequested] = (0, _react.useState)(false);
|
|
181
|
+
const isFocused = (0, _native.useIsFocused)();
|
|
182
|
+
const appState = (0, _hooks.useAppState)();
|
|
183
|
+
const isActive = isFocused && appState === 'active';
|
|
184
|
+
const {
|
|
185
|
+
hasPermission,
|
|
186
|
+
requestPermission
|
|
187
|
+
} = (0, _reactNativeVisionCamera.useCameraPermission)();
|
|
188
|
+
const handlePermissionRequestPress = (0, _react.useCallback)(() => {
|
|
189
|
+
if (!permissionRequested) {
|
|
190
|
+
setPermissionRequested(true);
|
|
191
|
+
requestPermission();
|
|
192
|
+
} else {
|
|
193
|
+
_reactNative2.Linking.openSettings();
|
|
194
|
+
}
|
|
195
|
+
}, [permissionRequested, requestPermission]);
|
|
196
|
+
const handleCaptureConfirm = (0, _react.useCallback)(() => {
|
|
197
|
+
if (photoFile) {
|
|
198
|
+
onCapture({
|
|
199
|
+
...photoFile,
|
|
200
|
+
uri: `file://${photoFile.path}`
|
|
201
|
+
});
|
|
202
|
+
setPhotoFile(null);
|
|
203
|
+
}
|
|
204
|
+
}, [onCapture, photoFile]);
|
|
205
|
+
const removePhotoFile = (0, _react.useCallback)(() => {
|
|
206
|
+
setPhotoFile(null);
|
|
207
|
+
}, [setPhotoFile]);
|
|
208
|
+
let content;
|
|
209
|
+
if (!hasPermission) {
|
|
210
|
+
content = /*#__PURE__*/(0, _jsxRuntime.jsx)(PermissionCard, {
|
|
211
|
+
onPermissionRequestPress: handlePermissionRequestPress
|
|
212
|
+
});
|
|
213
|
+
} else if (photoFile) {
|
|
214
|
+
content = /*#__PURE__*/(0, _jsxRuntime.jsx)(PhotoFilePreview, {
|
|
215
|
+
photoFile: photoFile,
|
|
216
|
+
onCancel: removePhotoFile,
|
|
217
|
+
onConfirm: handleCaptureConfirm
|
|
218
|
+
});
|
|
219
|
+
} else {
|
|
220
|
+
content = /*#__PURE__*/(0, _jsxRuntime.jsx)(CameraPreview, {
|
|
221
|
+
isActive: isActive,
|
|
222
|
+
filters: filters,
|
|
223
|
+
onCapture: setPhotoFile,
|
|
224
|
+
previewOverlay: previewOverlay,
|
|
225
|
+
allowDeviceSwitching: allowDeviceSwitching,
|
|
226
|
+
initialDevice: initialDevice,
|
|
227
|
+
pathToSave: pathToSave
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.Modal, {
|
|
231
|
+
animationType: "slide",
|
|
232
|
+
statusBarTranslucent: true,
|
|
233
|
+
...modalProps,
|
|
234
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Toasts.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
235
|
+
className: "flex h-full w-full flex-col items-center bg-black px-4 pt-12",
|
|
236
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.View, {
|
|
237
|
+
className: "self-start py-4",
|
|
238
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.Pressable, {
|
|
239
|
+
hitSlop: 10,
|
|
240
|
+
onPress: onClose,
|
|
241
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseIcon.default, {
|
|
242
|
+
icon: _outline.ArrowLongLeftIcon,
|
|
243
|
+
color: "fg-brand-primary",
|
|
244
|
+
size: 32
|
|
245
|
+
})
|
|
246
|
+
})
|
|
247
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.View, {
|
|
248
|
+
className: "mb-4 w-full flex-1",
|
|
249
|
+
children: content
|
|
250
|
+
})]
|
|
251
|
+
})]
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
var _default = exports.default = (0, _nativewind.styled)(CameraWrapperModal);
|
|
255
|
+
//# sourceMappingURL=CameraWrapperModal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_hooks","require","_native","_reactNative","_reactQuery","_clsx","_interopRequireDefault","_nativewind","_react","_headless","_reactNative2","_outline","_reactNativeVisionCamera","_hocComponents","_BaseButton","_BaseIcon","_BaseText","_PressableOpacity","_useIsAboveBreakpoint","_fileDirectoryUtils","_Camera","_Toasts","_jsxRuntime","e","__esModule","default","PermissionCard","onPermissionRequestPress","largePhone","useIsAboveBreakpoint","jsxs","View","className","clsx","children","jsx","width","height","size","text","onPress","CameraPreview","onCapture","previewOverlay","filters","isActive","allowDeviceSwitching","initialDevice","pathToSave","cameraRef","useRef","selectedDevice","setSelectedDevice","useState","device","useCameraDevice","format","useCameraFormat","mutate","useMutation","mutationFn","current","ensureDirExists","file","takePhoto","path","replace","undefined","Promise","reject","Error","networkMode","onSuccess","photoFile","uri","onError","error","captureException","toast","Camera","style","flex","ref","photo","icon","ArrowPathIcon","color","PhotoFilePreview","onConfirm","onCancel","Image","source","resizeMode","Pressable","ArrowUturnLeftIcon","CheckIcon","CameraWrapperModal","onClose","photoResolution","modalProps","setPhotoFile","permissionRequested","setPermissionRequested","isFocused","useIsFocused","appState","useAppState","hasPermission","requestPermission","useCameraPermission","handlePermissionRequestPress","useCallback","Linking","openSettings","handleCaptureConfirm","removePhotoFile","content","Modal","animationType","statusBarTranslucent","hitSlop","ArrowLongLeftIcon","_default","exports","styled"],"sourceRoot":"../../../src","sources":["components/CameraWrapperModal.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _dateFns = require("date-fns");
|
|
8
|
+
var _nativewind = require("nativewind");
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _hocComponents = require("../hoc-components");
|
|
11
|
+
var _BaseDatesScrollView = _interopRequireDefault(require("./BaseDatesScrollView"));
|
|
12
|
+
var _BaseText = _interopRequireDefault(require("./BaseText"));
|
|
13
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
16
|
+
function DateSelector({
|
|
17
|
+
value,
|
|
18
|
+
label,
|
|
19
|
+
description,
|
|
20
|
+
onChange,
|
|
21
|
+
minDate,
|
|
22
|
+
maxDate,
|
|
23
|
+
disabledWeekDays = [],
|
|
24
|
+
disabled = false,
|
|
25
|
+
error,
|
|
26
|
+
allowPastDates = false,
|
|
27
|
+
...props
|
|
28
|
+
}) {
|
|
29
|
+
const minDateStartOfDay = (0, _react.useMemo)(() => (0, _dateFns.startOfDay)(minDate || new Date()), [minDate]);
|
|
30
|
+
const maxDateEndOfDay = (0, _react.useMemo)(() => maxDate ? (0, _dateFns.startOfDay)(maxDate) : null, [maxDate]);
|
|
31
|
+
const dateRange = (0, _react.useMemo)(() => {
|
|
32
|
+
const startDate = minDateStartOfDay;
|
|
33
|
+
const endDate = maxDateEndOfDay || (0, _dateFns.addDays)(startDate, 7);
|
|
34
|
+
return (0, _dateFns.eachDayOfInterval)({
|
|
35
|
+
start: startDate,
|
|
36
|
+
end: endDate
|
|
37
|
+
});
|
|
38
|
+
}, [minDateStartOfDay, maxDateEndOfDay]);
|
|
39
|
+
const isDayDisabled = (0, _react.useCallback)(day => {
|
|
40
|
+
if (disabled) return true;
|
|
41
|
+
if (minDateStartOfDay && (0, _dateFns.isBefore)(day, minDateStartOfDay)) return true;
|
|
42
|
+
if (maxDateEndOfDay && (0, _dateFns.isAfter)(day, maxDateEndOfDay)) return true;
|
|
43
|
+
if (disabledWeekDays.includes((0, _dateFns.getDay)(day))) return true;
|
|
44
|
+
if (!allowPastDates && (0, _dateFns.isBefore)(day, (0, _dateFns.startOfDay)(new Date()))) return true;
|
|
45
|
+
return false;
|
|
46
|
+
}, [disabled, minDateStartOfDay, maxDateEndOfDay, disabledWeekDays, allowPastDates]);
|
|
47
|
+
const handleDayPress = (0, _react.useCallback)(day => {
|
|
48
|
+
if (isDayDisabled(day)) return;
|
|
49
|
+
onChange?.(day);
|
|
50
|
+
}, [isDayDisabled, onChange]);
|
|
51
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
52
|
+
className: "flex flex-col",
|
|
53
|
+
...props,
|
|
54
|
+
children: [label && /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
55
|
+
className: "mb-2 font-semibold text-secondary",
|
|
56
|
+
children: label
|
|
57
|
+
}), description && /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
58
|
+
className: "mb-2 text-tertiary",
|
|
59
|
+
children: description
|
|
60
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseDatesScrollView.default, {
|
|
61
|
+
dateRange: dateRange,
|
|
62
|
+
selectedDate: value,
|
|
63
|
+
isDayDisabled: isDayDisabled,
|
|
64
|
+
onDayPress: handleDayPress
|
|
65
|
+
}), error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
66
|
+
className: "mt-2 text-error-primary",
|
|
67
|
+
children: error
|
|
68
|
+
})]
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
var _default = exports.default = (0, _nativewind.styled)(DateSelector);
|
|
72
|
+
//# sourceMappingURL=DateSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_dateFns","require","_nativewind","_react","_interopRequireWildcard","_hocComponents","_BaseDatesScrollView","_interopRequireDefault","_BaseText","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DateSelector","value","label","description","onChange","minDate","maxDate","disabledWeekDays","disabled","error","allowPastDates","props","minDateStartOfDay","useMemo","startOfDay","Date","maxDateEndOfDay","dateRange","startDate","endDate","addDays","eachDayOfInterval","start","end","isDayDisabled","useCallback","day","isBefore","isAfter","includes","getDay","handleDayPress","jsxs","View","className","children","jsx","selectedDate","onDayPress","_default","exports","styled"],"sourceRoot":"../../../src","sources":["components/DateSelector.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _dateFns = require("date-fns");
|
|
8
|
+
var _nativewind = require("nativewind");
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _hocComponents = require("../hoc-components");
|
|
11
|
+
var _BaseDatesScrollView = _interopRequireDefault(require("./BaseDatesScrollView"));
|
|
12
|
+
var _BaseRadioGroup = _interopRequireDefault(require("./BaseRadioGroup"));
|
|
13
|
+
var _BaseText = _interopRequireDefault(require("./BaseText"));
|
|
14
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
17
|
+
function TimeSlots({
|
|
18
|
+
timeSlots,
|
|
19
|
+
selectedTime,
|
|
20
|
+
handleTimePress,
|
|
21
|
+
disabled,
|
|
22
|
+
timeLabel
|
|
23
|
+
}) {
|
|
24
|
+
const radioOptions = timeSlots.map(slot => ({
|
|
25
|
+
label: slot.label,
|
|
26
|
+
value: `${slot.hour}-${slot.minute}`
|
|
27
|
+
}));
|
|
28
|
+
const selectedValue = selectedTime ? `${selectedTime.hour}-${selectedTime.minute}` : undefined;
|
|
29
|
+
const handleRadioChange = value => {
|
|
30
|
+
const [hour, minute] = value.split('-').map(Number);
|
|
31
|
+
handleTimePress({
|
|
32
|
+
hour,
|
|
33
|
+
minute
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
37
|
+
className: "mt-4 flex-1",
|
|
38
|
+
children: [timeLabel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
39
|
+
className: "mb-3 text-sm font-semibold text-secondary",
|
|
40
|
+
children: timeLabel
|
|
41
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
42
|
+
className: "relative flex-1",
|
|
43
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.GestureScrollView, {
|
|
44
|
+
style: {
|
|
45
|
+
flex: 1,
|
|
46
|
+
minHeight: 200
|
|
47
|
+
},
|
|
48
|
+
showsVerticalScrollIndicator: false,
|
|
49
|
+
nestedScrollEnabled: true,
|
|
50
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseRadioGroup.default, {
|
|
51
|
+
options: radioOptions,
|
|
52
|
+
value: selectedValue,
|
|
53
|
+
onChange: handleRadioChange,
|
|
54
|
+
disabled: disabled
|
|
55
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.View, {
|
|
56
|
+
className: "h-20"
|
|
57
|
+
})]
|
|
58
|
+
}), radioOptions.length > 3 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_hocComponents.LinearGradient, {
|
|
59
|
+
colors: ['rgba(255, 255, 255, 0)', 'rgba(255, 255, 255, 1)'],
|
|
60
|
+
start: {
|
|
61
|
+
x: 0,
|
|
62
|
+
y: 0
|
|
63
|
+
},
|
|
64
|
+
end: {
|
|
65
|
+
x: 0,
|
|
66
|
+
y: 1
|
|
67
|
+
},
|
|
68
|
+
className: "absolute bottom-0 left-0 h-32 w-full",
|
|
69
|
+
style: {
|
|
70
|
+
pointerEvents: 'none'
|
|
71
|
+
}
|
|
72
|
+
})]
|
|
73
|
+
})]
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
function DateTimeSelector({
|
|
77
|
+
value,
|
|
78
|
+
onChange,
|
|
79
|
+
minDate,
|
|
80
|
+
maxDate,
|
|
81
|
+
minHour = 0,
|
|
82
|
+
maxHour = 23,
|
|
83
|
+
timeSlotStepMinutes = 30,
|
|
84
|
+
disabledWeekDays = [],
|
|
85
|
+
disabledHours = [],
|
|
86
|
+
dateLabel,
|
|
87
|
+
timeLabel,
|
|
88
|
+
description,
|
|
89
|
+
disabled = false,
|
|
90
|
+
error,
|
|
91
|
+
allowPastDatetimes = false,
|
|
92
|
+
...props
|
|
93
|
+
}) {
|
|
94
|
+
const [selectedDate, setSelectedDate] = (0, _react.useState)(value);
|
|
95
|
+
const minDateStartOfDay = (0, _react.useMemo)(() => (0, _dateFns.startOfDay)(minDate || new Date()), [minDate]);
|
|
96
|
+
const maxDateEndOfDay = (0, _react.useMemo)(() => maxDate ? (0, _dateFns.startOfDay)(maxDate) : null, [maxDate]);
|
|
97
|
+
const dateRange = (0, _react.useMemo)(() => {
|
|
98
|
+
const startDate = minDateStartOfDay;
|
|
99
|
+
const endDate = maxDateEndOfDay || (0, _dateFns.addDays)(startDate, 7);
|
|
100
|
+
return (0, _dateFns.eachDayOfInterval)({
|
|
101
|
+
start: startDate,
|
|
102
|
+
end: endDate
|
|
103
|
+
});
|
|
104
|
+
}, [minDateStartOfDay, maxDateEndOfDay]);
|
|
105
|
+
const getTimeSlotsForDate = (0, _react.useCallback)(date => {
|
|
106
|
+
const slots = [];
|
|
107
|
+
const now = new Date();
|
|
108
|
+
for (let hour = minHour; hour <= maxHour; hour += 1) {
|
|
109
|
+
if (disabledHours.includes(hour)) continue;
|
|
110
|
+
if (!allowPastDatetimes && (0, _dateFns.isToday)(date) && hour < now.getHours()) continue;
|
|
111
|
+
for (let minute = 0; minute < 60; minute += timeSlotStepMinutes) {
|
|
112
|
+
if (!allowPastDatetimes && (0, _dateFns.isToday)(date) && hour === now.getHours() && minute <= now.getMinutes()) continue;
|
|
113
|
+
const endTime = new Date();
|
|
114
|
+
endTime.setHours(hour, minute + timeSlotStepMinutes, 0, 0);
|
|
115
|
+
const endHour = endTime.getHours();
|
|
116
|
+
const endMinute = endTime.getMinutes();
|
|
117
|
+
const startTime = new Date().setHours(hour, minute);
|
|
118
|
+
const endTimeForLabel = new Date().setHours(endHour, endMinute);
|
|
119
|
+
const startLabel = (0, _dateFns.format)(startTime, 'h:mm');
|
|
120
|
+
const endLabel = (0, _dateFns.format)(endTimeForLabel, 'h:mm a');
|
|
121
|
+
const hourLabel = `${startLabel} - ${endLabel}`;
|
|
122
|
+
slots.push({
|
|
123
|
+
hour,
|
|
124
|
+
minute,
|
|
125
|
+
endHour,
|
|
126
|
+
endMinute,
|
|
127
|
+
label: hourLabel
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return slots;
|
|
132
|
+
}, [minHour, maxHour, timeSlotStepMinutes, disabledHours, allowPastDatetimes]);
|
|
133
|
+
const timeSlots = (0, _react.useMemo)(() => {
|
|
134
|
+
if (!selectedDate) return [];
|
|
135
|
+
return getTimeSlotsForDate(selectedDate);
|
|
136
|
+
}, [selectedDate, getTimeSlotsForDate]);
|
|
137
|
+
const isDayDisabled = (0, _react.useCallback)(day => {
|
|
138
|
+
if (disabled) return true;
|
|
139
|
+
if (minDateStartOfDay && (0, _dateFns.isBefore)(day, minDateStartOfDay)) return true;
|
|
140
|
+
if (maxDateEndOfDay && (0, _dateFns.isAfter)(day, maxDateEndOfDay)) return true;
|
|
141
|
+
if (disabledWeekDays.includes((0, _dateFns.getDay)(day))) return true;
|
|
142
|
+
if (!allowPastDatetimes && (0, _dateFns.isBefore)(day, (0, _dateFns.startOfDay)(new Date()))) return true;
|
|
143
|
+
|
|
144
|
+
// Check if there are available time slots for this day
|
|
145
|
+
const availableSlots = getTimeSlotsForDate(day);
|
|
146
|
+
if (availableSlots.length === 0) return true;
|
|
147
|
+
return false;
|
|
148
|
+
}, [disabled, minDateStartOfDay, maxDateEndOfDay, disabledWeekDays, allowPastDatetimes, getTimeSlotsForDate]);
|
|
149
|
+
const handleDayPress = (0, _react.useCallback)(day => {
|
|
150
|
+
if (isDayDisabled(day)) return;
|
|
151
|
+
setSelectedDate(day);
|
|
152
|
+
if (value) {
|
|
153
|
+
onChange(undefined);
|
|
154
|
+
}
|
|
155
|
+
}, [isDayDisabled, onChange, value]);
|
|
156
|
+
const handleTimePress = (0, _react.useCallback)(time => {
|
|
157
|
+
if (selectedDate) {
|
|
158
|
+
const newDate = new Date(selectedDate);
|
|
159
|
+
newDate.setHours(time.hour, time.minute, 0, 0);
|
|
160
|
+
onChange(newDate);
|
|
161
|
+
}
|
|
162
|
+
}, [selectedDate, onChange]);
|
|
163
|
+
const selectedTime = (0, _react.useMemo)(() => {
|
|
164
|
+
if (!value || !selectedDate || !(0, _dateFns.isSameDay)(value, selectedDate)) return null;
|
|
165
|
+
return {
|
|
166
|
+
hour: value.getHours(),
|
|
167
|
+
minute: value.getMinutes()
|
|
168
|
+
};
|
|
169
|
+
}, [value, selectedDate]);
|
|
170
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_hocComponents.View, {
|
|
171
|
+
className: "flex flex-1 flex-col",
|
|
172
|
+
...props,
|
|
173
|
+
children: [dateLabel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
174
|
+
className: "mb-2 font-semibold text-secondary",
|
|
175
|
+
children: dateLabel
|
|
176
|
+
}), description && /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
177
|
+
className: "mb-4 text-tertiary",
|
|
178
|
+
children: description
|
|
179
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseDatesScrollView.default, {
|
|
180
|
+
dateRange: dateRange,
|
|
181
|
+
selectedDate: selectedDate,
|
|
182
|
+
isDayDisabled: isDayDisabled,
|
|
183
|
+
onDayPress: handleDayPress
|
|
184
|
+
}), selectedDate && /*#__PURE__*/(0, _jsxRuntime.jsx)(TimeSlots, {
|
|
185
|
+
timeSlots: timeSlots,
|
|
186
|
+
selectedTime: selectedTime,
|
|
187
|
+
handleTimePress: handleTimePress,
|
|
188
|
+
disabled: disabled,
|
|
189
|
+
timeLabel: timeLabel
|
|
190
|
+
}), error && /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
191
|
+
className: "mt-2 text-error-primary",
|
|
192
|
+
children: error
|
|
193
|
+
})]
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
var _default = exports.default = (0, _nativewind.styled)(DateTimeSelector);
|
|
197
|
+
//# sourceMappingURL=DateTimeSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_dateFns","require","_nativewind","_react","_interopRequireWildcard","_hocComponents","_BaseDatesScrollView","_interopRequireDefault","_BaseRadioGroup","_BaseText","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TimeSlots","timeSlots","selectedTime","handleTimePress","disabled","timeLabel","radioOptions","map","slot","label","value","hour","minute","selectedValue","undefined","handleRadioChange","split","Number","jsxs","View","className","children","jsx","GestureScrollView","style","flex","minHeight","showsVerticalScrollIndicator","nestedScrollEnabled","options","onChange","length","LinearGradient","colors","start","x","y","end","pointerEvents","DateTimeSelector","minDate","maxDate","minHour","maxHour","timeSlotStepMinutes","disabledWeekDays","disabledHours","dateLabel","description","error","allowPastDatetimes","props","selectedDate","setSelectedDate","useState","minDateStartOfDay","useMemo","startOfDay","Date","maxDateEndOfDay","dateRange","startDate","endDate","addDays","eachDayOfInterval","getTimeSlotsForDate","useCallback","date","slots","now","includes","isToday","getHours","getMinutes","endTime","setHours","endHour","endMinute","startTime","endTimeForLabel","startLabel","format","endLabel","hourLabel","push","isDayDisabled","day","isBefore","isAfter","getDay","availableSlots","handleDayPress","time","newDate","isSameDay","onDayPress","_default","exports","styled"],"sourceRoot":"../../../src","sources":["components/DateTimeSelector.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _formik = require("formik");
|
|
8
|
+
var _nativewind = require("nativewind");
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _BaseText = _interopRequireDefault(require("./BaseText"));
|
|
11
|
+
var _CameraImageInput = _interopRequireDefault(require("./CameraImageInput"));
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
function FormikCameraImageInput({
|
|
15
|
+
name,
|
|
16
|
+
...props
|
|
17
|
+
}) {
|
|
18
|
+
const [field, meta, helpers] = (0, _formik.useField)(name);
|
|
19
|
+
const hasError = !!(meta.error && meta.touched);
|
|
20
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
21
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_CameraImageInput.default, {
|
|
22
|
+
value: field.value,
|
|
23
|
+
onValueChange: helpers.setValue,
|
|
24
|
+
hasError: hasError,
|
|
25
|
+
showImages: true,
|
|
26
|
+
...props
|
|
27
|
+
}), hasError && /*#__PURE__*/(0, _jsxRuntime.jsx)(_formik.ErrorMessage, {
|
|
28
|
+
name: name,
|
|
29
|
+
children: msg => /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseText.default, {
|
|
30
|
+
className: "mt-1 text-sm text-error-primary",
|
|
31
|
+
children: msg
|
|
32
|
+
})
|
|
33
|
+
})]
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
var _default = exports.default = (0, _nativewind.styled)(FormikCameraImageInput);
|
|
37
|
+
//# sourceMappingURL=FormikCameraImageInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_formik","require","_nativewind","_react","_interopRequireDefault","_BaseText","_CameraImageInput","_jsxRuntime","e","__esModule","default","FormikCameraImageInput","name","props","field","meta","helpers","useField","hasError","error","touched","jsxs","Fragment","children","jsx","value","onValueChange","setValue","showImages","ErrorMessage","msg","className","_default","exports","styled"],"sourceRoot":"../../../src","sources":["components/FormikCameraImageInput.tsx"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AAGA,IAAAI,SAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,iBAAA,GAAAF,sBAAA,CAAAH,OAAA;AAA6E,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAG,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAM7E,SAASG,sBAAsBA,CAAC;EAC9BC,IAAI;EACJ,GAAGC;AACwB,CAAC,EAAE;EAC9B,MAAM,CAACC,KAAK,EAAEC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,gBAAQ,EAACL,IAAI,CAAC;EAE7C,MAAMM,QAAQ,GAAG,CAAC,EAAEH,IAAI,CAACI,KAAK,IAAIJ,IAAI,CAACK,OAAO,CAAC;EAE/C,oBACE,IAAAb,WAAA,CAAAc,IAAA,EAAAd,WAAA,CAAAe,QAAA;IAAAC,QAAA,gBACE,IAAAhB,WAAA,CAAAiB,GAAA,EAAClB,iBAAA,CAAAI,OAAgB;MACfe,KAAK,EAAEX,KAAK,CAACW,KAAM;MACnBC,aAAa,EAAEV,OAAO,CAACW,QAAS;MAChCT,QAAQ,EAAEA,QAAS;MACnBU,UAAU;MAAA,GACNf;IAAK,CACV,CAAC,EACDK,QAAQ,iBACP,IAAAX,WAAA,CAAAiB,GAAA,EAACxB,OAAA,CAAA6B,YAAY;MAACjB,IAAI,EAAEA,IAAK;MAAAW,QAAA,EACrBO,GAAG,iBAAK,IAAAvB,WAAA,CAAAiB,GAAA,EAACnB,SAAA,CAAAK,OAAQ;QAACqB,SAAS,EAAC,iCAAiC;QAAAR,QAAA,EAAEO;MAAG,CAAW;IAAC,CACpE,CACf;EAAA,CACD,CAAC;AAEP;AAAC,IAAAE,QAAA,GAAAC,OAAA,CAAAvB,OAAA,GAEc,IAAAwB,kBAAM,EAACvB,sBAAsB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _formik = require("formik");
|
|
8
|
+
var _nativewind = require("nativewind");
|
|
9
|
+
var _DateSelector = _interopRequireDefault(require("./DateSelector"));
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
function FormikDateSelector({
|
|
13
|
+
name,
|
|
14
|
+
disabled = false,
|
|
15
|
+
...props
|
|
16
|
+
}) {
|
|
17
|
+
const [field, meta, helpers] = (0, _formik.useField)(name);
|
|
18
|
+
const hasError = meta.touched && meta.error;
|
|
19
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_DateSelector.default, {
|
|
20
|
+
...props,
|
|
21
|
+
value: field.value,
|
|
22
|
+
onChange: date => helpers.setValue(date),
|
|
23
|
+
disabled: disabled,
|
|
24
|
+
error: hasError ? meta.error : undefined
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
var _default = exports.default = (0, _nativewind.styled)(FormikDateSelector);
|
|
28
|
+
//# sourceMappingURL=FormikDateSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_formik","require","_nativewind","_DateSelector","_interopRequireDefault","_jsxRuntime","e","__esModule","default","FormikDateSelector","name","disabled","props","field","meta","helpers","useField","hasError","touched","error","jsx","value","onChange","date","setValue","undefined","_default","exports","styled"],"sourceRoot":"../../../src","sources":["components/FormikDateSelector.tsx"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,aAAA,GAAAC,sBAAA,CAAAH,OAAA;AAAiE,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAYjE,SAASG,kBAAkBA,CAAC;EAC1BC,IAAI;EACJC,QAAQ,GAAG,KAAK;EAChB,GAAGC;AACoB,CAAC,EAAE;EAC1B,MAAM,CAACC,KAAK,EAAEC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,gBAAQ,EAAmBN,IAAI,CAAC;EAE/D,MAAMO,QAAQ,GAAGH,IAAI,CAACI,OAAO,IAAIJ,IAAI,CAACK,KAAK;EAE3C,oBACE,IAAAd,WAAA,CAAAe,GAAA,EAACjB,aAAA,CAAAK,OAAY;IAAA,GACPI,KAAK;IACTS,KAAK,EAAER,KAAK,CAACQ,KAAM;IACnBC,QAAQ,EAAGC,IAAI,IAAKR,OAAO,CAACS,QAAQ,CAACD,IAAI,CAAE;IAC3CZ,QAAQ,EAAEA,QAAS;IACnBQ,KAAK,EAAEF,QAAQ,GAAGH,IAAI,CAACK,KAAK,GAAGM;EAAU,CAC1C,CAAC;AAEN;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAnB,OAAA,GAEc,IAAAoB,kBAAM,EAACnB,kBAAkB,CAAC","ignoreList":[]}
|