@hotelcard/ui 0.0.11 → 0.0.12
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/README.md +40 -0
- package/dist/index.cjs +209 -17
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +201 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +69 -1
- package/dist/index.d.ts +69 -1
- package/dist/index.js +208 -17
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -80,6 +80,7 @@ function App() {
|
|
|
80
80
|
| `SectionHeader` | Section title with "Show all" button |
|
|
81
81
|
| `WhenContent` | Date/month picker for search (accepts labels as props) |
|
|
82
82
|
| `DualCalendar` | Calendar component for date range selection |
|
|
83
|
+
| `GuestContent` | Guest selector with adults, children (with ages), and pet toggle |
|
|
83
84
|
|
|
84
85
|
### Icons
|
|
85
86
|
|
|
@@ -201,6 +202,41 @@ import { WhenContent } from '@hotelcard/ui';
|
|
|
201
202
|
|
|
202
203
|
**Note**: All text labels are passed as props. The consuming app provides translated strings.
|
|
203
204
|
|
|
205
|
+
### GuestContent (Guest Selector)
|
|
206
|
+
|
|
207
|
+
```tsx
|
|
208
|
+
import { GuestContent, type GuestCounts } from '@hotelcard/ui';
|
|
209
|
+
|
|
210
|
+
const [guests, setGuests] = useState<GuestCounts>({
|
|
211
|
+
adults: 2,
|
|
212
|
+
children: 0,
|
|
213
|
+
childrenAges: [],
|
|
214
|
+
});
|
|
215
|
+
const [petFilter, setPetFilter] = useState(0);
|
|
216
|
+
|
|
217
|
+
<GuestContent
|
|
218
|
+
guests={guests}
|
|
219
|
+
onChange={setGuests}
|
|
220
|
+
petFilter={petFilter}
|
|
221
|
+
onPetChange={setPetFilter}
|
|
222
|
+
showPetToggle={true}
|
|
223
|
+
labels={{
|
|
224
|
+
adults: 'Adults',
|
|
225
|
+
children: 'Children',
|
|
226
|
+
pet: 'Pet',
|
|
227
|
+
ageOfChild: 'Age of child',
|
|
228
|
+
age: 'Age',
|
|
229
|
+
decreaseAdults: 'Decrease adults',
|
|
230
|
+
increaseAdults: 'Increase adults',
|
|
231
|
+
decreaseChildren: 'Decrease children',
|
|
232
|
+
increaseChildren: 'Increase children',
|
|
233
|
+
togglePets: 'Toggle pets',
|
|
234
|
+
}}
|
|
235
|
+
/>
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
**Note**: All text labels are passed as props. The consuming app provides translated strings.
|
|
239
|
+
|
|
204
240
|
### Checkbox & RadioButton
|
|
205
241
|
|
|
206
242
|
```tsx
|
|
@@ -245,6 +281,10 @@ import type {
|
|
|
245
281
|
WhenContentProps,
|
|
246
282
|
WhenContentLabels,
|
|
247
283
|
DateRange,
|
|
284
|
+
GuestContentProps,
|
|
285
|
+
GuestContentLabels,
|
|
286
|
+
GuestCounts,
|
|
287
|
+
ChildAgeError,
|
|
248
288
|
|
|
249
289
|
// Data Types
|
|
250
290
|
Hotel,
|
package/dist/index.cjs
CHANGED
|
@@ -35,6 +35,7 @@ __export(index_exports, {
|
|
|
35
35
|
Dropdown: () => Dropdown,
|
|
36
36
|
DualCalendar: () => DualCalendar,
|
|
37
37
|
FAQ: () => FAQ,
|
|
38
|
+
GuestContent: () => GuestContent,
|
|
38
39
|
HeartIcon: () => HeartIcon2,
|
|
39
40
|
HotelCardUIProvider: () => HotelCardUIProvider,
|
|
40
41
|
Input: () => Input,
|
|
@@ -2005,9 +2006,199 @@ var DateSelector = ({
|
|
|
2005
2006
|
};
|
|
2006
2007
|
DateSelector.displayName = "DateSelector";
|
|
2007
2008
|
|
|
2008
|
-
// src/components/
|
|
2009
|
+
// src/components/GuestSelector/GuestContent.tsx
|
|
2009
2010
|
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
2010
|
-
var
|
|
2011
|
+
var MinusIcon = () => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("path", { d: "M0 10C0 9.48047 0.477679 9.0625 1.07143 9.0625H18.9286C19.5223 9.0625 20 9.48047 20 10C20 10.5195 19.5223 10.9375 18.9286 10.9375H1.07143C0.477679 10.9375 0 10.5195 0 10Z", fill: "currentColor" }) });
|
|
2012
|
+
var PlusIcon = () => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("path", { d: "M11.0714 2.1875C11.0714 1.66797 10.5938 1.25 10 1.25C9.40625 1.25 8.92857 1.66797 8.92857 2.1875V9.0625H1.07143C0.477679 9.0625 0 9.48047 0 10C0 10.5195 0.477679 10.9375 1.07143 10.9375H8.92857V17.8125C8.92857 18.332 9.40625 18.75 10 18.75C10.5938 18.75 11.0714 18.332 11.0714 17.8125V10.9375H18.9286C19.5223 10.9375 20 10.5195 20 10C20 9.48047 19.5223 9.0625 18.9286 9.0625H11.0714V2.1875Z", fill: "currentColor" }) });
|
|
2013
|
+
var DropdownIcon = () => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2014
|
+
"svg",
|
|
2015
|
+
{
|
|
2016
|
+
className: "hc-guest-content__select-icon",
|
|
2017
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
2018
|
+
width: "24",
|
|
2019
|
+
height: "24",
|
|
2020
|
+
viewBox: "0 0 24 24",
|
|
2021
|
+
fill: "none",
|
|
2022
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2023
|
+
"path",
|
|
2024
|
+
{
|
|
2025
|
+
d: "M11.24 16.6873C11.6598 17.1042 12.3386 17.1042 12.7539 16.6873L19.6852 9.81633C20.1049 9.39939 20.1049 8.7252 19.6852 8.3127C19.2654 7.9002 18.5866 7.89577 18.1713 8.3127L11.9992 14.4296L5.82701 8.3127C5.40724 7.89577 4.72846 7.89577 4.31316 8.3127C3.89785 8.72964 3.89338 9.40383 4.31316 9.81633L11.2445 16.6873H11.24Z",
|
|
2026
|
+
fill: "#6B7280"
|
|
2027
|
+
}
|
|
2028
|
+
)
|
|
2029
|
+
}
|
|
2030
|
+
);
|
|
2031
|
+
var defaultLabels2 = {
|
|
2032
|
+
adults: "Adults",
|
|
2033
|
+
children: "Children",
|
|
2034
|
+
pet: "Pet",
|
|
2035
|
+
ageOfChild: "Age of child",
|
|
2036
|
+
age: "Age",
|
|
2037
|
+
decreaseAdults: "Decrease adults",
|
|
2038
|
+
increaseAdults: "Increase adults",
|
|
2039
|
+
decreaseChildren: "Decrease children",
|
|
2040
|
+
increaseChildren: "Increase children",
|
|
2041
|
+
togglePets: "Toggle pets"
|
|
2042
|
+
};
|
|
2043
|
+
var GuestContent = ({
|
|
2044
|
+
guests,
|
|
2045
|
+
onChange,
|
|
2046
|
+
petFilter = 0,
|
|
2047
|
+
onPetChange,
|
|
2048
|
+
showPetToggle = true,
|
|
2049
|
+
className = "",
|
|
2050
|
+
childAgeErrors = [],
|
|
2051
|
+
onErrorClear,
|
|
2052
|
+
labels: labelsProp
|
|
2053
|
+
}) => {
|
|
2054
|
+
const labels = { ...defaultLabels2, ...labelsProp };
|
|
2055
|
+
const childrenAges = Array.isArray(guests.childrenAges) ? guests.childrenAges : [];
|
|
2056
|
+
const handleIncrement = (type) => {
|
|
2057
|
+
if (type === "children" && guests.children >= 6) return;
|
|
2058
|
+
if (type === "adults" && guests.adults >= 10) return;
|
|
2059
|
+
const newChildrenAges = type === "children" ? [...childrenAges, null] : childrenAges;
|
|
2060
|
+
onChange({
|
|
2061
|
+
...guests,
|
|
2062
|
+
[type]: guests[type] + 1,
|
|
2063
|
+
childrenAges: newChildrenAges
|
|
2064
|
+
});
|
|
2065
|
+
};
|
|
2066
|
+
const handleDecrement = (type) => {
|
|
2067
|
+
if (type === "adults" && guests.adults <= 1) return;
|
|
2068
|
+
if (type === "children" && guests.children <= 0) return;
|
|
2069
|
+
const newChildrenAges = type === "children" ? childrenAges.slice(0, -1) : childrenAges;
|
|
2070
|
+
onChange({
|
|
2071
|
+
...guests,
|
|
2072
|
+
[type]: guests[type] - 1,
|
|
2073
|
+
childrenAges: newChildrenAges
|
|
2074
|
+
});
|
|
2075
|
+
};
|
|
2076
|
+
const handleAgeChange = (index, value) => {
|
|
2077
|
+
const newChildrenAges = [...childrenAges];
|
|
2078
|
+
newChildrenAges[index] = value === "" ? null : parseInt(value, 10);
|
|
2079
|
+
onChange({
|
|
2080
|
+
...guests,
|
|
2081
|
+
childrenAges: newChildrenAges
|
|
2082
|
+
});
|
|
2083
|
+
onErrorClear?.(index);
|
|
2084
|
+
};
|
|
2085
|
+
const containerClasses = ["hc-guest-content", className].filter(Boolean).join(" ");
|
|
2086
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: containerClasses, children: [
|
|
2087
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "hc-guest-content__row", children: [
|
|
2088
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "hc-guest-content__label", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "hc-guest-content__name", children: labels.adults }) }),
|
|
2089
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "hc-guest-content__counter", children: [
|
|
2090
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2091
|
+
"button",
|
|
2092
|
+
{
|
|
2093
|
+
type: "button",
|
|
2094
|
+
className: "hc-guest-content__counter-button",
|
|
2095
|
+
onClick: () => handleDecrement("adults"),
|
|
2096
|
+
disabled: guests.adults <= 1,
|
|
2097
|
+
"aria-label": labels.decreaseAdults,
|
|
2098
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(MinusIcon, {})
|
|
2099
|
+
}
|
|
2100
|
+
),
|
|
2101
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "hc-guest-content__counter-value", children: guests.adults }),
|
|
2102
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2103
|
+
"button",
|
|
2104
|
+
{
|
|
2105
|
+
type: "button",
|
|
2106
|
+
className: "hc-guest-content__counter-button",
|
|
2107
|
+
onClick: () => handleIncrement("adults"),
|
|
2108
|
+
disabled: guests.adults >= 10,
|
|
2109
|
+
"aria-label": labels.increaseAdults,
|
|
2110
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(PlusIcon, {})
|
|
2111
|
+
}
|
|
2112
|
+
)
|
|
2113
|
+
] })
|
|
2114
|
+
] }),
|
|
2115
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "hc-guest-content__row hc-guest-content__row--children", children: [
|
|
2116
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "hc-guest-content__row-header", children: [
|
|
2117
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "hc-guest-content__label", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "hc-guest-content__name", children: labels.children }) }),
|
|
2118
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "hc-guest-content__counter", children: [
|
|
2119
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2120
|
+
"button",
|
|
2121
|
+
{
|
|
2122
|
+
type: "button",
|
|
2123
|
+
className: "hc-guest-content__counter-button",
|
|
2124
|
+
onClick: () => handleDecrement("children"),
|
|
2125
|
+
disabled: guests.children <= 0,
|
|
2126
|
+
"aria-label": labels.decreaseChildren,
|
|
2127
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(MinusIcon, {})
|
|
2128
|
+
}
|
|
2129
|
+
),
|
|
2130
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "hc-guest-content__counter-value", children: guests.children }),
|
|
2131
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2132
|
+
"button",
|
|
2133
|
+
{
|
|
2134
|
+
type: "button",
|
|
2135
|
+
className: "hc-guest-content__counter-button",
|
|
2136
|
+
onClick: () => handleIncrement("children"),
|
|
2137
|
+
disabled: guests.children >= 6,
|
|
2138
|
+
"aria-label": labels.increaseChildren,
|
|
2139
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(PlusIcon, {})
|
|
2140
|
+
}
|
|
2141
|
+
)
|
|
2142
|
+
] })
|
|
2143
|
+
] }),
|
|
2144
|
+
guests.children > 0 && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2145
|
+
"div",
|
|
2146
|
+
{
|
|
2147
|
+
className: "hc-guest-content__children-dropdowns",
|
|
2148
|
+
style: {
|
|
2149
|
+
gridTemplateColumns: guests.children === 1 ? "1fr" : "repeat(2, 1fr)"
|
|
2150
|
+
},
|
|
2151
|
+
children: Array.from({ length: guests.children }).map((_, index) => {
|
|
2152
|
+
const currentAge = childrenAges[index];
|
|
2153
|
+
const hasError = childAgeErrors.some((error) => error.index === index);
|
|
2154
|
+
const errorMessage = childAgeErrors.find((error) => error.index === index)?.message;
|
|
2155
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "hc-guest-content__child-dropdown", children: [
|
|
2156
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("label", { htmlFor: `child-age-${index}`, children: labels.ageOfChild }),
|
|
2157
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "hc-guest-content__select-wrapper", children: [
|
|
2158
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
|
|
2159
|
+
"select",
|
|
2160
|
+
{
|
|
2161
|
+
id: `child-age-${index}`,
|
|
2162
|
+
value: currentAge === null || currentAge === void 0 ? "" : currentAge,
|
|
2163
|
+
onChange: (e) => handleAgeChange(index, e.target.value),
|
|
2164
|
+
className: `hc-guest-content__select ${hasError ? "hc-guest-content__select--error" : ""}`,
|
|
2165
|
+
"aria-invalid": hasError,
|
|
2166
|
+
"aria-describedby": hasError ? `error-${index}` : void 0,
|
|
2167
|
+
children: [
|
|
2168
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("option", { value: "", children: labels.age }),
|
|
2169
|
+
Array.from({ length: 18 }, (_2, age) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("option", { value: age, children: age }, age))
|
|
2170
|
+
]
|
|
2171
|
+
}
|
|
2172
|
+
),
|
|
2173
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(DropdownIcon, {})
|
|
2174
|
+
] }),
|
|
2175
|
+
hasError && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { id: `error-${index}`, className: "hc-guest-content__error-text", children: errorMessage })
|
|
2176
|
+
] }, index);
|
|
2177
|
+
})
|
|
2178
|
+
}
|
|
2179
|
+
)
|
|
2180
|
+
] }),
|
|
2181
|
+
showPetToggle && /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "hc-guest-content__row", children: [
|
|
2182
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "hc-guest-content__label", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "hc-guest-content__name", children: labels.pet }) }),
|
|
2183
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "hc-guest-content__toggle-wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("label", { className: "hc-guest-content__toggle", children: [
|
|
2184
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
2185
|
+
"input",
|
|
2186
|
+
{
|
|
2187
|
+
type: "checkbox",
|
|
2188
|
+
checked: petFilter === 1,
|
|
2189
|
+
onChange: (e) => onPetChange?.(e.target.checked ? 1 : 0),
|
|
2190
|
+
"aria-label": labels.togglePets
|
|
2191
|
+
}
|
|
2192
|
+
),
|
|
2193
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "hc-guest-content__slider" })
|
|
2194
|
+
] }) })
|
|
2195
|
+
] })
|
|
2196
|
+
] });
|
|
2197
|
+
};
|
|
2198
|
+
|
|
2199
|
+
// src/components/icons/HeartIcon.tsx
|
|
2200
|
+
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
2201
|
+
var HeartIcon2 = ({ filled = false, className = "", size = 24 }) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
2011
2202
|
"svg",
|
|
2012
2203
|
{
|
|
2013
2204
|
width: size,
|
|
@@ -2019,14 +2210,14 @@ var HeartIcon2 = ({ filled = false, className = "", size = 24 }) => /* @__PURE__
|
|
|
2019
2210
|
strokeWidth: 2,
|
|
2020
2211
|
strokeLinecap: "round",
|
|
2021
2212
|
strokeLinejoin: "round",
|
|
2022
|
-
children: /* @__PURE__ */ (0,
|
|
2213
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("path", { d: "M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z" })
|
|
2023
2214
|
}
|
|
2024
2215
|
);
|
|
2025
2216
|
HeartIcon2.displayName = "HeartIcon";
|
|
2026
2217
|
|
|
2027
2218
|
// src/components/icons/StarIcon.tsx
|
|
2028
|
-
var
|
|
2029
|
-
var StarIcon4 = ({ filled = true, className = "", size = 9 }) => /* @__PURE__ */ (0,
|
|
2219
|
+
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
2220
|
+
var StarIcon4 = ({ filled = true, className = "", size = 9 }) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
|
|
2030
2221
|
"svg",
|
|
2031
2222
|
{
|
|
2032
2223
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -2036,22 +2227,22 @@ var StarIcon4 = ({ filled = true, className = "", size = 9 }) => /* @__PURE__ */
|
|
|
2036
2227
|
fill: "none",
|
|
2037
2228
|
className,
|
|
2038
2229
|
children: [
|
|
2039
|
-
/* @__PURE__ */ (0,
|
|
2230
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)("g", { clipPath: "url(#clip0_star_icon)", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
2040
2231
|
"path",
|
|
2041
2232
|
{
|
|
2042
2233
|
d: "M4.80018 0.366577C4.93104 0.366577 5.05173 0.440968 5.11135 0.557659L6.18011 2.66102L8.50521 3.03152C8.63462 3.05194 8.74222 3.14383 8.78294 3.26927C8.82365 3.39472 8.79021 3.53183 8.6986 3.62518L7.03366 5.29533L7.40155 7.6277C7.42191 7.75752 7.3681 7.88879 7.26195 7.9661C7.15581 8.04341 7.01476 8.05508 6.89843 7.99528L4.80018 6.92463L2.70192 7.99528C2.58559 8.05508 2.44454 8.04341 2.33839 7.9661C2.23225 7.88879 2.17844 7.75898 2.1988 7.6277L2.56523 5.29533L0.901751 3.62518C0.808689 3.53183 0.776699 3.39472 0.817413 3.26927C0.858128 3.14383 0.964277 3.05194 1.09515 3.03152L3.42024 2.66102L4.49045 0.557659C4.55007 0.440968 4.67076 0.366577 4.80163 0.366577H4.80018Z",
|
|
2043
2234
|
fill: filled ? "#1F2937" : "#D1D5DB"
|
|
2044
2235
|
}
|
|
2045
2236
|
) }),
|
|
2046
|
-
/* @__PURE__ */ (0,
|
|
2237
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("clipPath", { id: "clip0_star_icon", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("rect", { width: "8", height: "8", fill: "white", transform: "translate(0.800049 0.199951)" }) }) })
|
|
2047
2238
|
]
|
|
2048
2239
|
}
|
|
2049
2240
|
);
|
|
2050
2241
|
StarIcon4.displayName = "StarIcon";
|
|
2051
2242
|
|
|
2052
2243
|
// src/components/icons/ChevronLeftIcon.tsx
|
|
2053
|
-
var
|
|
2054
|
-
var ChevronLeftIcon = ({ className = "", size = 20 }) => /* @__PURE__ */ (0,
|
|
2244
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
2245
|
+
var ChevronLeftIcon = ({ className = "", size = 20 }) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
2055
2246
|
"svg",
|
|
2056
2247
|
{
|
|
2057
2248
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -2064,14 +2255,14 @@ var ChevronLeftIcon = ({ className = "", size = 20 }) => /* @__PURE__ */ (0, imp
|
|
|
2064
2255
|
strokeLinecap: "round",
|
|
2065
2256
|
strokeLinejoin: "round",
|
|
2066
2257
|
className,
|
|
2067
|
-
children: /* @__PURE__ */ (0,
|
|
2258
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("polyline", { points: "15 18 9 12 15 6" })
|
|
2068
2259
|
}
|
|
2069
2260
|
);
|
|
2070
2261
|
ChevronLeftIcon.displayName = "ChevronLeftIcon";
|
|
2071
2262
|
|
|
2072
2263
|
// src/components/icons/ChevronRightIcon.tsx
|
|
2073
|
-
var
|
|
2074
|
-
var ChevronRightIcon2 = ({ className = "", size = 20 }) => /* @__PURE__ */ (0,
|
|
2264
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
2265
|
+
var ChevronRightIcon2 = ({ className = "", size = 20 }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2075
2266
|
"svg",
|
|
2076
2267
|
{
|
|
2077
2268
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -2084,14 +2275,14 @@ var ChevronRightIcon2 = ({ className = "", size = 20 }) => /* @__PURE__ */ (0, i
|
|
|
2084
2275
|
strokeLinecap: "round",
|
|
2085
2276
|
strokeLinejoin: "round",
|
|
2086
2277
|
className,
|
|
2087
|
-
children: /* @__PURE__ */ (0,
|
|
2278
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("polyline", { points: "9 18 15 12 9 6" })
|
|
2088
2279
|
}
|
|
2089
2280
|
);
|
|
2090
2281
|
ChevronRightIcon2.displayName = "ChevronRightIcon";
|
|
2091
2282
|
|
|
2092
2283
|
// src/components/icons/PinIcon.tsx
|
|
2093
|
-
var
|
|
2094
|
-
var PinIcon = ({ className = "", size = 16 }) => /* @__PURE__ */ (0,
|
|
2284
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
2285
|
+
var PinIcon = ({ className = "", size = 16 }) => /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
|
|
2095
2286
|
"svg",
|
|
2096
2287
|
{
|
|
2097
2288
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -2101,7 +2292,7 @@ var PinIcon = ({ className = "", size = 16 }) => /* @__PURE__ */ (0, import_jsx_
|
|
|
2101
2292
|
fill: "none",
|
|
2102
2293
|
className,
|
|
2103
2294
|
children: [
|
|
2104
|
-
/* @__PURE__ */ (0,
|
|
2295
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2105
2296
|
"path",
|
|
2106
2297
|
{
|
|
2107
2298
|
fillRule: "evenodd",
|
|
@@ -2110,7 +2301,7 @@ var PinIcon = ({ className = "", size = 16 }) => /* @__PURE__ */ (0, import_jsx_
|
|
|
2110
2301
|
fill: "currentColor"
|
|
2111
2302
|
}
|
|
2112
2303
|
),
|
|
2113
|
-
/* @__PURE__ */ (0,
|
|
2304
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2114
2305
|
"path",
|
|
2115
2306
|
{
|
|
2116
2307
|
fillRule: "evenodd",
|
|
@@ -2170,6 +2361,7 @@ var calculateDiscount = (originalPrice, discountedPrice) => {
|
|
|
2170
2361
|
Dropdown,
|
|
2171
2362
|
DualCalendar,
|
|
2172
2363
|
FAQ,
|
|
2364
|
+
GuestContent,
|
|
2173
2365
|
HeartIcon,
|
|
2174
2366
|
HotelCardUIProvider,
|
|
2175
2367
|
Input,
|