omnipay-savings-sdk
Version:
Omnipay Savings SDK
50 lines (49 loc) • 4.39 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const jsx_runtime_1 = require("react/jsx-runtime");
const react_native_1 = require("react-native");
const react_native_modal_datetime_picker_1 = __importDefault(require("react-native-modal-datetime-picker"));
const utils_1 = require("../../utils");
const Button_1 = require("../Button");
const SmartImage_1 = require("../Images/SmartImage");
const Text_1 = require("../Text");
const SDKConfigContext_1 = require("../../contexts/SDKConfigContext");
const AppDateTimePicker = (props) => {
const { value, placeholder, containerStyle, inputStyle, label, prependComponent, appendComponent, errorMsg = '', show, mode = 'date', onPress, onCancel, onChange, minimumDate, maximumDate, showAsterisk, } = props;
const { primaryColor } = (0, SDKConfigContext_1.useSDKConfig)();
return ((0, jsx_runtime_1.jsx)(react_native_1.View, Object.assign({ style: { width: '100%' } }, { children: (0, jsx_runtime_1.jsxs)(Button_1.CustomPressable, Object.assign({ activeOpacity: 0.8, style: Object.assign({ position: 'relative', paddingBottom: (0, utils_1.ms)(8) }, containerStyle), onPress: onPress }, { children: [(0, jsx_runtime_1.jsxs)(react_native_1.Text, Object.assign({ style: {
fontSize: (0, utils_1.fontSz)(14),
fontFamily: 'Gordita-Regular',
fontWeight: '400',
color: utils_1.Colors.inputBackgroundLight,
} }, { children: [label, showAsterisk && ((0, jsx_runtime_1.jsx)(Text_1.Text, { fontSize: (0, utils_1.fontSz)(14), fontFamily: "Gordita-Regular", fontWeight: "400", text: '*', color: utils_1.Colors.debitRed }))] })), (0, jsx_runtime_1.jsxs)(react_native_1.View, Object.assign({ style: {
flexDirection: 'row',
height: (0, utils_1.hp)(55),
paddingHorizontal: (0, utils_1.ms)(14),
marginTop: (0, utils_1.ms)(4),
borderRadius: (0, utils_1.ms)(8),
borderColor: errorMsg.length > 0 ? utils_1.Colors.error : '#F4F4F4',
borderWidth: (0, utils_1.ms)(1),
backgroundColor: '#F4F4F4',
} }, { children: [prependComponent, (0, jsx_runtime_1.jsxs)(Button_1.CustomPressable, Object.assign({ style: {
flex: 1,
justifyContent: 'center',
}, onPress: onPress }, { children: [(0, jsx_runtime_1.jsx)(react_native_modal_datetime_picker_1.default, { isVisible: show, mode: "date", onConfirm: onChange, onCancel: onCancel, minimumDate: minimumDate && new Date(minimumDate), maximumDate: maximumDate && new Date(maximumDate) }), (0, jsx_runtime_1.jsx)(Text_1.Text, { style: Object.assign(Object.assign({}, inputStyle), { fontFamily: 'Gordita-Medium', color: value === null ? '#C4C4C4' : utils_1.Colors.baseBlueText }), text: value === null
? 'Select date'
: (0, utils_1.formatDate)(value, 'DD-MMM-YYYY') })] })), (0, jsx_runtime_1.jsx)(react_native_1.View, Object.assign({ style: {
justifyContent: 'center',
} }, { children: (0, jsx_runtime_1.jsx)(Button_1.CustomPressable, Object.assign({ activeOpacity: 0.75, onPress: onPress }, { children: (0, jsx_runtime_1.jsx)(SmartImage_1.SmartImage, { source: utils_1.Images.calender, style: {
width: (0, utils_1.ms)(24),
height: (0, utils_1.ms)(24),
tintColor: utils_1.Colors.black,
} }) })) }))] })), (0, jsx_runtime_1.jsx)(Text_1.Text, { style: {
// paddingTop: ms(2.5),
position: 'absolute',
bottom: (0, utils_1.ms)(-10),
left: 0,
}, fontSize: (0, utils_1.fontSz)(14), fontFamily: "Gordita-Regular", fontWeight: "400", text: `${errorMsg}`, color: utils_1.Colors.error })] })) })));
};
exports.default = AppDateTimePicker;