related-ui-components 1.3.4 → 1.3.6
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/app.js +39 -20
- package/lib/commonjs/app.js.map +1 -1
- package/lib/commonjs/components/Banner/Banner.js +1 -1
- package/lib/commonjs/components/Banner/Banner.js.map +1 -1
- package/lib/commonjs/components/DateRangePicker/DateRangePicker.js +358 -0
- package/lib/commonjs/components/DateRangePicker/DateRangePicker.js.map +1 -0
- package/lib/commonjs/components/DateRangePicker/index.js +4 -0
- package/lib/commonjs/components/DateRangePicker/index.js.map +1 -0
- package/lib/commonjs/components/Filters/Filters.js +1 -1
- package/lib/commonjs/components/Filters/Filters.js.map +1 -1
- package/lib/commonjs/components/Input/Input.js +2 -2
- package/lib/commonjs/components/Input/Input.js.map +1 -1
- package/lib/commonjs/components/NumericStepper/NumericStepper.js +103 -0
- package/lib/commonjs/components/NumericStepper/NumericStepper.js.map +1 -0
- package/lib/commonjs/components/NumericStepper/index.js +29 -0
- package/lib/commonjs/components/NumericStepper/index.js.map +1 -0
- package/lib/commonjs/components/SelectAmount/SelectAmount.js +189 -0
- package/lib/commonjs/components/SelectAmount/SelectAmount.js.map +1 -0
- package/lib/commonjs/components/SelectAmount/index.js +4 -0
- package/lib/commonjs/components/SelectAmount/index.js.map +1 -0
- package/lib/commonjs/components/Suggestions/SuggestionList.js +98 -0
- package/lib/commonjs/components/Suggestions/SuggestionList.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/CarRentalForm.js +370 -0
- package/lib/commonjs/components/TravelBooking/CarRentalForm.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/FlightForm.js +347 -0
- package/lib/commonjs/components/TravelBooking/FlightForm.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/FlightSummary.js +257 -0
- package/lib/commonjs/components/TravelBooking/FlightSummary.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/HotelForm.js +290 -0
- package/lib/commonjs/components/TravelBooking/HotelForm.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/HotelSummary.js +246 -0
- package/lib/commonjs/components/TravelBooking/HotelSummary.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/README.md +421 -0
- package/lib/commonjs/components/TravelBooking/SummaryBar.js +181 -0
- package/lib/commonjs/components/TravelBooking/SummaryBar.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/TabSelector.js +115 -0
- package/lib/commonjs/components/TravelBooking/TabSelector.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/TravelBooking.js +261 -0
- package/lib/commonjs/components/TravelBooking/TravelBooking.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/index.js +22 -0
- package/lib/commonjs/components/TravelBooking/index.js.map +1 -0
- package/lib/commonjs/components/TravelBooking/types.js +15 -0
- package/lib/commonjs/components/TravelBooking/types.js.map +1 -0
- package/lib/commonjs/components/UnlockRewards/UnlockRewards.js +2 -2
- package/lib/commonjs/components/UnlockRewards/UnlockRewards.js.map +1 -1
- package/lib/commonjs/index.js +0 -5
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/app.js +43 -24
- package/lib/module/app.js.map +1 -1
- package/lib/module/components/Banner/Banner.js +1 -1
- package/lib/module/components/Banner/Banner.js.map +1 -1
- package/lib/module/components/DateRangePicker/DateRangePicker.js +350 -0
- package/lib/module/components/DateRangePicker/DateRangePicker.js.map +1 -0
- package/lib/module/components/DateRangePicker/index.js +4 -0
- package/lib/module/components/DateRangePicker/index.js.map +1 -0
- package/lib/module/components/Filters/Filters.js +1 -1
- package/lib/module/components/Filters/Filters.js.map +1 -1
- package/lib/module/components/Input/Input.js +2 -2
- package/lib/module/components/Input/Input.js.map +1 -1
- package/lib/module/components/NumericStepper/NumericStepper.js +96 -0
- package/lib/module/components/NumericStepper/NumericStepper.js.map +1 -0
- package/lib/module/components/NumericStepper/index.js +5 -0
- package/lib/module/components/NumericStepper/index.js.map +1 -0
- package/lib/module/components/SelectAmount/SelectAmount.js +184 -0
- package/lib/module/components/SelectAmount/SelectAmount.js.map +1 -0
- package/lib/module/components/SelectAmount/index.js +4 -0
- package/lib/module/components/SelectAmount/index.js.map +1 -0
- package/lib/module/components/Suggestions/SuggestionList.js +92 -0
- package/lib/module/components/Suggestions/SuggestionList.js.map +1 -0
- package/lib/module/components/TravelBooking/CarRentalForm.js +363 -0
- package/lib/module/components/TravelBooking/CarRentalForm.js.map +1 -0
- package/lib/module/components/TravelBooking/FlightForm.js +340 -0
- package/lib/module/components/TravelBooking/FlightForm.js.map +1 -0
- package/lib/module/components/TravelBooking/FlightSummary.js +254 -0
- package/lib/module/components/TravelBooking/FlightSummary.js.map +1 -0
- package/lib/module/components/TravelBooking/HotelForm.js +286 -0
- package/lib/module/components/TravelBooking/HotelForm.js.map +1 -0
- package/lib/module/components/TravelBooking/HotelSummary.js +239 -0
- package/lib/module/components/TravelBooking/HotelSummary.js.map +1 -0
- package/lib/module/components/TravelBooking/README.md +421 -0
- package/lib/module/components/TravelBooking/SummaryBar.js +174 -0
- package/lib/module/components/TravelBooking/SummaryBar.js.map +1 -0
- package/lib/module/components/TravelBooking/TabSelector.js +110 -0
- package/lib/module/components/TravelBooking/TabSelector.js.map +1 -0
- package/lib/module/components/TravelBooking/TravelBooking.js +243 -0
- package/lib/module/components/TravelBooking/TravelBooking.js.map +1 -0
- package/lib/module/components/TravelBooking/index.js +22 -0
- package/lib/module/components/TravelBooking/index.js.map +1 -0
- package/lib/module/components/TravelBooking/types.js +11 -0
- package/lib/module/components/TravelBooking/types.js.map +1 -0
- package/lib/module/components/UnlockRewards/UnlockRewards.js +2 -2
- package/lib/module/components/UnlockRewards/UnlockRewards.js.map +1 -1
- package/lib/module/index.js +7 -4
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/commonjs/app.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Banner/Banner.d.ts +2 -2
- package/lib/typescript/commonjs/components/Banner/Banner.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/DateRangePicker/DateRangePicker.d.ts +25 -0
- package/lib/typescript/commonjs/components/DateRangePicker/DateRangePicker.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/DateRangePicker/index.d.ts +1 -0
- package/lib/typescript/commonjs/components/DateRangePicker/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/NumericStepper/NumericStepper.d.ts +19 -0
- package/lib/typescript/commonjs/components/NumericStepper/NumericStepper.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/NumericStepper/index.d.ts +3 -0
- package/lib/typescript/commonjs/components/NumericStepper/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/SelectAmount/SelectAmount.d.ts +29 -0
- package/lib/typescript/commonjs/components/SelectAmount/SelectAmount.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/SelectAmount/index.d.ts +1 -0
- package/lib/typescript/commonjs/components/SelectAmount/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/Suggestions/SuggestionList.d.ts +14 -0
- package/lib/typescript/commonjs/components/Suggestions/SuggestionList.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/CarRentalForm.d.ts +58 -0
- package/lib/typescript/commonjs/components/TravelBooking/CarRentalForm.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/FlightForm.d.ts +57 -0
- package/lib/typescript/commonjs/components/TravelBooking/FlightForm.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/FlightSummary.d.ts +41 -0
- package/lib/typescript/commonjs/components/TravelBooking/FlightSummary.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/HotelForm.d.ts +52 -0
- package/lib/typescript/commonjs/components/TravelBooking/HotelForm.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/HotelSummary.d.ts +44 -0
- package/lib/typescript/commonjs/components/TravelBooking/HotelSummary.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/SummaryBar.d.ts +17 -0
- package/lib/typescript/commonjs/components/TravelBooking/SummaryBar.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/TabSelector.d.ts +17 -0
- package/lib/typescript/commonjs/components/TravelBooking/TabSelector.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/TravelBooking.d.ts +84 -0
- package/lib/typescript/commonjs/components/TravelBooking/TravelBooking.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/index.d.ts +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/components/TravelBooking/types.d.ts +26 -0
- package/lib/typescript/commonjs/components/TravelBooking/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/index.d.ts +0 -1
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/module/app.d.ts.map +1 -1
- package/lib/typescript/module/components/Banner/Banner.d.ts +2 -2
- package/lib/typescript/module/components/Banner/Banner.d.ts.map +1 -1
- package/lib/typescript/module/components/DateRangePicker/DateRangePicker.d.ts +25 -0
- package/lib/typescript/module/components/DateRangePicker/DateRangePicker.d.ts.map +1 -0
- package/lib/typescript/module/components/DateRangePicker/index.d.ts +1 -0
- package/lib/typescript/module/components/DateRangePicker/index.d.ts.map +1 -0
- package/lib/typescript/module/components/NumericStepper/NumericStepper.d.ts +19 -0
- package/lib/typescript/module/components/NumericStepper/NumericStepper.d.ts.map +1 -0
- package/lib/typescript/module/components/NumericStepper/index.d.ts +3 -0
- package/lib/typescript/module/components/NumericStepper/index.d.ts.map +1 -0
- package/lib/typescript/module/components/SelectAmount/SelectAmount.d.ts +29 -0
- package/lib/typescript/module/components/SelectAmount/SelectAmount.d.ts.map +1 -0
- package/lib/typescript/module/components/SelectAmount/index.d.ts +1 -0
- package/lib/typescript/module/components/SelectAmount/index.d.ts.map +1 -0
- package/lib/typescript/module/components/Suggestions/SuggestionList.d.ts +14 -0
- package/lib/typescript/module/components/Suggestions/SuggestionList.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/CarRentalForm.d.ts +58 -0
- package/lib/typescript/module/components/TravelBooking/CarRentalForm.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/FlightForm.d.ts +57 -0
- package/lib/typescript/module/components/TravelBooking/FlightForm.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/FlightSummary.d.ts +41 -0
- package/lib/typescript/module/components/TravelBooking/FlightSummary.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/HotelForm.d.ts +52 -0
- package/lib/typescript/module/components/TravelBooking/HotelForm.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/HotelSummary.d.ts +44 -0
- package/lib/typescript/module/components/TravelBooking/HotelSummary.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/SummaryBar.d.ts +17 -0
- package/lib/typescript/module/components/TravelBooking/SummaryBar.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/TabSelector.d.ts +17 -0
- package/lib/typescript/module/components/TravelBooking/TabSelector.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/TravelBooking.d.ts +84 -0
- package/lib/typescript/module/components/TravelBooking/TravelBooking.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/index.d.ts +1 -0
- package/lib/typescript/module/components/TravelBooking/index.d.ts.map +1 -0
- package/lib/typescript/module/components/TravelBooking/types.d.ts +26 -0
- package/lib/typescript/module/components/TravelBooking/types.d.ts.map +1 -0
- package/lib/typescript/module/index.d.ts +0 -1
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/package.json +12 -8
- package/src/app.tsx +80 -13
- package/src/components/Banner/Banner.tsx +3 -2
- package/src/components/DateRangePicker/DateRangePicker.tsx +410 -0
- package/src/components/DateRangePicker/index.ts +2 -0
- package/src/components/Filters/Filters.tsx +1 -1
- package/src/components/Input/Input.tsx +1 -1
- package/src/components/NumericStepper/NumericStepper.tsx +117 -0
- package/src/components/NumericStepper/index.ts +2 -0
- package/src/components/SelectAmount/SelectAmount.tsx +217 -0
- package/src/components/SelectAmount/index.ts +2 -0
- package/src/components/Suggestions/SuggestionList.tsx +106 -0
- package/src/components/TravelBooking/CarRentalForm.tsx +440 -0
- package/src/components/TravelBooking/FlightForm.tsx +452 -0
- package/src/components/TravelBooking/FlightSummary.tsx +388 -0
- package/src/components/TravelBooking/HotelForm.tsx +365 -0
- package/src/components/TravelBooking/HotelSummary.tsx +340 -0
- package/src/components/TravelBooking/README.md +421 -0
- package/src/components/TravelBooking/SummaryBar.tsx +239 -0
- package/src/components/TravelBooking/TabSelector.tsx +158 -0
- package/src/components/TravelBooking/TravelBooking.tsx +407 -0
- package/src/components/TravelBooking/index.ts +20 -0
- package/src/components/TravelBooking/types.ts +28 -0
- package/src/components/UnlockRewards/UnlockRewards.tsx +2 -2
- package/src/index.ts +4 -4
|
@@ -0,0 +1,363 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useTheme } from "@/theme";
|
|
4
|
+
import React, { useCallback, useMemo, useRef, useState } from "react";
|
|
5
|
+
import { View, Text, TouchableOpacity, StyleSheet } from "react-native";
|
|
6
|
+
import { Ionicons } from "@expo/vector-icons";
|
|
7
|
+
import CustomInput from "../Input/Input.js";
|
|
8
|
+
import DateRangePicker from "../DateRangePicker/DateRangePicker.js";
|
|
9
|
+
import { Picker } from "@react-native-picker/picker";
|
|
10
|
+
import SuggestionList from "../Suggestions/SuggestionList.js";
|
|
11
|
+
import { FormInputType } from "./types.js";
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
export const mockCarSuggestions = [{
|
|
14
|
+
id: 1,
|
|
15
|
+
city: "Beirut",
|
|
16
|
+
country: "Lebanon",
|
|
17
|
+
value: "BEIRUT, LEBANON"
|
|
18
|
+
}, {
|
|
19
|
+
id: 2,
|
|
20
|
+
city: "Dubai",
|
|
21
|
+
country: "UAE",
|
|
22
|
+
value: "DUBAI, UAE"
|
|
23
|
+
}, {
|
|
24
|
+
id: 3,
|
|
25
|
+
city: "London",
|
|
26
|
+
country: "UK",
|
|
27
|
+
value: "LONDON, UK"
|
|
28
|
+
}, {
|
|
29
|
+
id: 4,
|
|
30
|
+
city: "Paris",
|
|
31
|
+
country: "France",
|
|
32
|
+
value: "PARIS, FRANCE"
|
|
33
|
+
}, {
|
|
34
|
+
id: 5,
|
|
35
|
+
city: "New York",
|
|
36
|
+
country: "USA",
|
|
37
|
+
value: "NEW YORK, USA"
|
|
38
|
+
}];
|
|
39
|
+
|
|
40
|
+
// --- Helper Types ---
|
|
41
|
+
|
|
42
|
+
// --- Component Props ---
|
|
43
|
+
|
|
44
|
+
// --- Component ---
|
|
45
|
+
const CarRentalForm = ({
|
|
46
|
+
initialFromLocation,
|
|
47
|
+
initialToLocation,
|
|
48
|
+
initialPickupDate,
|
|
49
|
+
initialDropoffDate,
|
|
50
|
+
onSwapPress,
|
|
51
|
+
onSearchPress,
|
|
52
|
+
fromLabel = "PICK-UP",
|
|
53
|
+
toLabel = "DROP-OFF",
|
|
54
|
+
fromPlaceholder = "From Where?",
|
|
55
|
+
toPlaceholder = "To Where?",
|
|
56
|
+
pickupLabel = "PICK-UP DATE",
|
|
57
|
+
dropoffLabel = "DROP-OFF DATE",
|
|
58
|
+
swapIconName = "swap-horizontal",
|
|
59
|
+
searchIconName = "search",
|
|
60
|
+
calendarThemeOverrides = {},
|
|
61
|
+
containerStyle,
|
|
62
|
+
inputGroupContainerStyle,
|
|
63
|
+
// Added
|
|
64
|
+
inputWrapperStyle,
|
|
65
|
+
// Added
|
|
66
|
+
inputGroupStyle,
|
|
67
|
+
labelStyle,
|
|
68
|
+
swapButtonContainerStyle,
|
|
69
|
+
swapButtonStyle,
|
|
70
|
+
swapIconStyle,
|
|
71
|
+
pickupRowStyle,
|
|
72
|
+
searchButtonStyle,
|
|
73
|
+
searchIconStyle,
|
|
74
|
+
isOneWay,
|
|
75
|
+
suggestionData,
|
|
76
|
+
onInputFocus,
|
|
77
|
+
onTextChange,
|
|
78
|
+
dateRangePickerOuterContainerStyle,
|
|
79
|
+
dateRangePickerLabelStyle,
|
|
80
|
+
dateRangePickerInputGroupStyle,
|
|
81
|
+
dateRangePickerCalendarContainerStyle,
|
|
82
|
+
suggestionListContainerStyle,
|
|
83
|
+
suggestionItemStyle,
|
|
84
|
+
suggestionItemTextStyle,
|
|
85
|
+
agePickerWrapperStyle,
|
|
86
|
+
agePickerLabelStyle,
|
|
87
|
+
pickerContainerStyle,
|
|
88
|
+
pickerStyle
|
|
89
|
+
}) => {
|
|
90
|
+
const {
|
|
91
|
+
theme,
|
|
92
|
+
isRTL
|
|
93
|
+
} = useTheme();
|
|
94
|
+
const styles = useMemo(() => themedStyles(theme, isRTL), [theme, isRTL]);
|
|
95
|
+
const fromInputRef = useRef(null);
|
|
96
|
+
const toInputRef = useRef(null);
|
|
97
|
+
|
|
98
|
+
// --- State ---
|
|
99
|
+
const [fromLocation, setFromLocation] = useState(initialFromLocation);
|
|
100
|
+
const [toLocation, setToLocation] = useState(initialToLocation);
|
|
101
|
+
const [pickupDate, setPickupDate] = useState(initialPickupDate);
|
|
102
|
+
const [dropoffDate, setDropoffDate] = useState(initialDropoffDate);
|
|
103
|
+
const [age, setAge] = useState();
|
|
104
|
+
const [focusedInput, setFocusedInput] = useState();
|
|
105
|
+
|
|
106
|
+
// --- Handlers ---
|
|
107
|
+
const handleSwap = useCallback(() => {
|
|
108
|
+
const currentFrom = fromLocation;
|
|
109
|
+
const currentTo = toLocation;
|
|
110
|
+
setFromLocation(currentTo);
|
|
111
|
+
setToLocation(currentFrom);
|
|
112
|
+
onSwapPress?.(currentFrom, currentTo);
|
|
113
|
+
}, [fromLocation, toLocation, onSwapPress]);
|
|
114
|
+
const handleSearch = useCallback(() => {
|
|
115
|
+
onSearchPress?.({
|
|
116
|
+
from: fromLocation,
|
|
117
|
+
to: toLocation,
|
|
118
|
+
pickup: pickupDate,
|
|
119
|
+
dropoff: dropoffDate,
|
|
120
|
+
driverAge: age
|
|
121
|
+
});
|
|
122
|
+
}, [fromLocation, toLocation, pickupDate, dropoffDate, age, onSearchPress]);
|
|
123
|
+
|
|
124
|
+
// --- Shared Suggestion Render Item ---
|
|
125
|
+
const suggestionRenderItem = item => /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
126
|
+
onPress: () => {
|
|
127
|
+
if (focusedInput === FormInputType.CAR_PICKUP) {
|
|
128
|
+
setFromLocation(item.value);
|
|
129
|
+
fromInputRef.current?.blur();
|
|
130
|
+
} else if (focusedInput === FormInputType.CAR_DROP_OFF) {
|
|
131
|
+
setToLocation(item.value);
|
|
132
|
+
toInputRef.current?.blur();
|
|
133
|
+
}
|
|
134
|
+
// setFocusedInput(undefined); // Hide suggestions after selection
|
|
135
|
+
},
|
|
136
|
+
style: [styles.suggestionItem, suggestionItemStyle] // Use new prop
|
|
137
|
+
,
|
|
138
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
139
|
+
style: [styles.suggestionItemText, suggestionItemTextStyle],
|
|
140
|
+
children: item.value
|
|
141
|
+
})
|
|
142
|
+
}, item.id);
|
|
143
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
144
|
+
style: [styles.container, containerStyle],
|
|
145
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
146
|
+
style: [styles.inputGroupContainer, inputGroupContainerStyle],
|
|
147
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
148
|
+
style: [styles.inputWrapper, inputWrapperStyle],
|
|
149
|
+
children: [/*#__PURE__*/_jsx(CustomInput, {
|
|
150
|
+
ref: fromInputRef,
|
|
151
|
+
onChangeText: t => {
|
|
152
|
+
onTextChange?.(t);
|
|
153
|
+
setFromLocation(t);
|
|
154
|
+
},
|
|
155
|
+
label: fromLabel,
|
|
156
|
+
value: fromLocation,
|
|
157
|
+
labelStyle: [styles.label, labelStyle],
|
|
158
|
+
placeholder: fromPlaceholder,
|
|
159
|
+
onFocus: () => {
|
|
160
|
+
onInputFocus?.(FormInputType.CAR_PICKUP);
|
|
161
|
+
setFocusedInput(FormInputType.CAR_PICKUP);
|
|
162
|
+
},
|
|
163
|
+
onBlur: () => {
|
|
164
|
+
// Delay blur slightly to allow suggestion press
|
|
165
|
+
setTimeout(() => {
|
|
166
|
+
if (focusedInput === FormInputType.CAR_PICKUP) {
|
|
167
|
+
setFocusedInput(undefined);
|
|
168
|
+
}
|
|
169
|
+
}, 150);
|
|
170
|
+
},
|
|
171
|
+
containerStyle: inputGroupStyle
|
|
172
|
+
}), suggestionData && /*#__PURE__*/_jsx(SuggestionList, {
|
|
173
|
+
data: suggestionData,
|
|
174
|
+
visible: focusedInput === FormInputType.CAR_PICKUP,
|
|
175
|
+
renderItemContent: suggestionRenderItem,
|
|
176
|
+
containerStyle: suggestionListContainerStyle
|
|
177
|
+
})]
|
|
178
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
179
|
+
style: [styles.swapButtonContainer, swapButtonContainerStyle],
|
|
180
|
+
children: /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
181
|
+
style: [styles.swapButton, swapButtonStyle],
|
|
182
|
+
onPress: handleSwap,
|
|
183
|
+
activeOpacity: 0.7,
|
|
184
|
+
children: /*#__PURE__*/_jsx(Ionicons, {
|
|
185
|
+
name: swapIconName,
|
|
186
|
+
size: 20,
|
|
187
|
+
color: theme.onSurface,
|
|
188
|
+
style: swapIconStyle
|
|
189
|
+
})
|
|
190
|
+
})
|
|
191
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
192
|
+
style: [styles.inputWrapper, inputWrapperStyle],
|
|
193
|
+
children: [/*#__PURE__*/_jsx(CustomInput, {
|
|
194
|
+
ref: toInputRef,
|
|
195
|
+
onChangeText: t => {
|
|
196
|
+
setToLocation(t);
|
|
197
|
+
onTextChange?.(t);
|
|
198
|
+
},
|
|
199
|
+
label: toLabel,
|
|
200
|
+
value: toLocation,
|
|
201
|
+
labelStyle: [styles.label, labelStyle],
|
|
202
|
+
placeholder: toPlaceholder,
|
|
203
|
+
onFocus: () => {
|
|
204
|
+
onInputFocus?.(FormInputType.CAR_DROP_OFF);
|
|
205
|
+
setFocusedInput(FormInputType.CAR_DROP_OFF);
|
|
206
|
+
},
|
|
207
|
+
onBlur: () => {
|
|
208
|
+
setTimeout(() => {
|
|
209
|
+
if (focusedInput === FormInputType.CAR_DROP_OFF) {
|
|
210
|
+
setFocusedInput(undefined);
|
|
211
|
+
}
|
|
212
|
+
}, 150);
|
|
213
|
+
},
|
|
214
|
+
containerStyle: inputGroupStyle
|
|
215
|
+
}), suggestionData && /*#__PURE__*/_jsx(SuggestionList, {
|
|
216
|
+
data: suggestionData,
|
|
217
|
+
visible: focusedInput === FormInputType.CAR_DROP_OFF,
|
|
218
|
+
renderItemContent: suggestionRenderItem,
|
|
219
|
+
containerStyle: suggestionListContainerStyle // Use new prop
|
|
220
|
+
})]
|
|
221
|
+
})]
|
|
222
|
+
}), /*#__PURE__*/_jsx(DateRangePicker, {
|
|
223
|
+
departureLabel: pickupLabel,
|
|
224
|
+
returnLabel: dropoffLabel,
|
|
225
|
+
outerContainerStyle: [styles.dateRangePickerOuterContainer, dateRangePickerOuterContainerStyle],
|
|
226
|
+
labelStyle: [labelStyle, dateRangePickerLabelStyle],
|
|
227
|
+
inputGroupStyle: dateRangePickerInputGroupStyle,
|
|
228
|
+
calendarContainerStyle: dateRangePickerCalendarContainerStyle,
|
|
229
|
+
calendarThemeOverrides: calendarThemeOverrides,
|
|
230
|
+
onDatesChange: d => {
|
|
231
|
+
setDropoffDate(d.return);
|
|
232
|
+
setPickupDate(d.departure);
|
|
233
|
+
},
|
|
234
|
+
isOneWay: isOneWay
|
|
235
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
236
|
+
style: [styles.pickupRow, pickupRowStyle],
|
|
237
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
238
|
+
style: [styles.agePickerWrapper, agePickerWrapperStyle],
|
|
239
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
240
|
+
style: [styles.label, labelStyle, agePickerLabelStyle],
|
|
241
|
+
children: "Driver's Age"
|
|
242
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
243
|
+
style: [styles.pickerContainer, pickerContainerStyle],
|
|
244
|
+
children: /*#__PURE__*/_jsxs(Picker, {
|
|
245
|
+
selectedValue: age,
|
|
246
|
+
onValueChange: setAge,
|
|
247
|
+
style: [styles.picker, pickerStyle],
|
|
248
|
+
dropdownIconColor: theme.onSurface,
|
|
249
|
+
children: [/*#__PURE__*/_jsx(Picker.Item, {
|
|
250
|
+
label: "Select Age",
|
|
251
|
+
value: undefined,
|
|
252
|
+
enabled: false
|
|
253
|
+
}), Array.from({
|
|
254
|
+
length: 80 - 21 + 1
|
|
255
|
+
}, (_, i) => i + 21).map(n => /*#__PURE__*/_jsx(Picker.Item, {
|
|
256
|
+
label: n.toString(),
|
|
257
|
+
value: n
|
|
258
|
+
}, n))]
|
|
259
|
+
})
|
|
260
|
+
})]
|
|
261
|
+
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
262
|
+
style: [styles.searchButton, searchButtonStyle],
|
|
263
|
+
onPress: handleSearch,
|
|
264
|
+
activeOpacity: 0.8,
|
|
265
|
+
children: /*#__PURE__*/_jsx(Ionicons, {
|
|
266
|
+
name: searchIconName,
|
|
267
|
+
size: 24,
|
|
268
|
+
color: theme.onPrimary,
|
|
269
|
+
style: searchIconStyle
|
|
270
|
+
})
|
|
271
|
+
})]
|
|
272
|
+
})]
|
|
273
|
+
});
|
|
274
|
+
};
|
|
275
|
+
|
|
276
|
+
// --- Styles ---
|
|
277
|
+
const themedStyles = (theme, isRTL) => StyleSheet.create({
|
|
278
|
+
container: {
|
|
279
|
+
padding: 16,
|
|
280
|
+
backgroundColor: theme.surface,
|
|
281
|
+
borderBottomRightRadius: 8,
|
|
282
|
+
borderBottomLeftRadius: 8
|
|
283
|
+
},
|
|
284
|
+
inputGroupContainer: {
|
|
285
|
+
position: "relative"
|
|
286
|
+
},
|
|
287
|
+
inputWrapper: {
|
|
288
|
+
marginBottom: 15,
|
|
289
|
+
position: "relative"
|
|
290
|
+
},
|
|
291
|
+
label: {
|
|
292
|
+
color: theme.labelText,
|
|
293
|
+
fontSize: 12,
|
|
294
|
+
fontWeight: "600",
|
|
295
|
+
textTransform: "uppercase",
|
|
296
|
+
textAlign: isRTL ? "right" : "left",
|
|
297
|
+
marginBottom: 6
|
|
298
|
+
},
|
|
299
|
+
swapButtonContainer: {
|
|
300
|
+
// // Centering the button between the input wrappers
|
|
301
|
+
// position: "absolute",
|
|
302
|
+
// left: 0,
|
|
303
|
+
// right: 0,
|
|
304
|
+
// top: "50%", // Position roughly in the middle vertically
|
|
305
|
+
// transform: [{ translateY: -18 }], // Adjust based on button height / 2
|
|
306
|
+
alignItems: "center"
|
|
307
|
+
// zIndex: 1, // Ensure swap button is above inputs if they overlap slightly
|
|
308
|
+
},
|
|
309
|
+
swapButton: {
|
|
310
|
+
width: 36,
|
|
311
|
+
height: 36,
|
|
312
|
+
borderRadius: 18,
|
|
313
|
+
backgroundColor: theme.surface,
|
|
314
|
+
borderColor: theme.border,
|
|
315
|
+
borderWidth: 1,
|
|
316
|
+
justifyContent: "center",
|
|
317
|
+
alignItems: "center"
|
|
318
|
+
},
|
|
319
|
+
dateRangePickerOuterContainer: {
|
|
320
|
+
marginTop: 10 // Default margin, can be overridden
|
|
321
|
+
},
|
|
322
|
+
pickupRow: {
|
|
323
|
+
flexDirection: isRTL ? "row-reverse" : "row",
|
|
324
|
+
alignItems: "flex-end",
|
|
325
|
+
marginTop: 20,
|
|
326
|
+
gap: 10
|
|
327
|
+
},
|
|
328
|
+
agePickerWrapper: {
|
|
329
|
+
flex: 1
|
|
330
|
+
},
|
|
331
|
+
pickerContainer: {
|
|
332
|
+
borderWidth: 1,
|
|
333
|
+
borderColor: theme.border,
|
|
334
|
+
borderRadius: 8,
|
|
335
|
+
backgroundColor: theme.surface,
|
|
336
|
+
justifyContent: "center",
|
|
337
|
+
height: 50
|
|
338
|
+
},
|
|
339
|
+
picker: {
|
|
340
|
+
width: "100%",
|
|
341
|
+
color: theme.onSurface
|
|
342
|
+
},
|
|
343
|
+
searchButton: {
|
|
344
|
+
backgroundColor: theme.primary,
|
|
345
|
+
width: 50,
|
|
346
|
+
height: 50,
|
|
347
|
+
borderRadius: 8,
|
|
348
|
+
justifyContent: "center",
|
|
349
|
+
alignItems: "center"
|
|
350
|
+
},
|
|
351
|
+
suggestionItem: {
|
|
352
|
+
padding: 12,
|
|
353
|
+
borderBottomWidth: StyleSheet.hairlineWidth,
|
|
354
|
+
borderBottomColor: theme.border,
|
|
355
|
+
backgroundColor: theme.surface
|
|
356
|
+
},
|
|
357
|
+
suggestionItemText: {
|
|
358
|
+
fontSize: 14,
|
|
359
|
+
color: theme.onSurface
|
|
360
|
+
}
|
|
361
|
+
});
|
|
362
|
+
export default CarRentalForm;
|
|
363
|
+
//# sourceMappingURL=CarRentalForm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useTheme","React","useCallback","useMemo","useRef","useState","View","Text","TouchableOpacity","StyleSheet","Ionicons","CustomInput","DateRangePicker","Picker","SuggestionList","FormInputType","jsx","_jsx","jsxs","_jsxs","mockCarSuggestions","id","city","country","value","CarRentalForm","initialFromLocation","initialToLocation","initialPickupDate","initialDropoffDate","onSwapPress","onSearchPress","fromLabel","toLabel","fromPlaceholder","toPlaceholder","pickupLabel","dropoffLabel","swapIconName","searchIconName","calendarThemeOverrides","containerStyle","inputGroupContainerStyle","inputWrapperStyle","inputGroupStyle","labelStyle","swapButtonContainerStyle","swapButtonStyle","swapIconStyle","pickupRowStyle","searchButtonStyle","searchIconStyle","isOneWay","suggestionData","onInputFocus","onTextChange","dateRangePickerOuterContainerStyle","dateRangePickerLabelStyle","dateRangePickerInputGroupStyle","dateRangePickerCalendarContainerStyle","suggestionListContainerStyle","suggestionItemStyle","suggestionItemTextStyle","agePickerWrapperStyle","agePickerLabelStyle","pickerContainerStyle","pickerStyle","theme","isRTL","styles","themedStyles","fromInputRef","toInputRef","fromLocation","setFromLocation","toLocation","setToLocation","pickupDate","setPickupDate","dropoffDate","setDropoffDate","age","setAge","focusedInput","setFocusedInput","handleSwap","currentFrom","currentTo","handleSearch","from","to","pickup","dropoff","driverAge","suggestionRenderItem","item","onPress","CAR_PICKUP","current","blur","CAR_DROP_OFF","style","suggestionItem","children","suggestionItemText","container","inputGroupContainer","inputWrapper","ref","onChangeText","t","label","placeholder","onFocus","onBlur","setTimeout","undefined","data","visible","renderItemContent","swapButtonContainer","swapButton","activeOpacity","name","size","color","onSurface","departureLabel","returnLabel","outerContainerStyle","dateRangePickerOuterContainer","calendarContainerStyle","onDatesChange","d","return","departure","pickupRow","agePickerWrapper","pickerContainer","selectedValue","onValueChange","picker","dropdownIconColor","Item","enabled","Array","length","_","i","map","n","toString","searchButton","onPrimary","create","padding","backgroundColor","surface","borderBottomRightRadius","borderBottomLeftRadius","position","marginBottom","labelText","fontSize","fontWeight","textTransform","textAlign","alignItems","width","height","borderRadius","borderColor","border","borderWidth","justifyContent","marginTop","flexDirection","gap","flex","primary","borderBottomWidth","hairlineWidth","borderBottomColor"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/TravelBooking/CarRentalForm.tsx"],"mappings":"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","ignoreList":[]}
|