@admin-layout/tailwind-design-pro 10.1.1-alpha.2 → 10.1.1-alpha.22
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/components/Layout/BasicLayout/index.d.ts.map +1 -1
- package/lib/components/Layout/BasicLayout/index.js +3 -2
- package/lib/components/Layout/BasicLayout/index.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/SearchBar.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/SearchBar.js.map +1 -1
- package/lib/components/Layout/Sidebar/Sidebar.d.ts.map +1 -1
- package/lib/components/Layout/Sidebar/Sidebar.js +20 -27
- package/lib/components/Layout/Sidebar/Sidebar.js.map +1 -1
- package/lib/components/Layout/Sidebar/SidebarMenu.d.ts.map +1 -1
- package/lib/components/Layout/Sidebar/SidebarMenu.js +9 -6
- package/lib/components/Layout/Sidebar/SidebarMenu.js.map +1 -1
- package/lib/components/Layout/TailwindLayout.js +5 -2
- package/lib/components/Layout/TailwindLayout.js.map +1 -1
- package/lib/components/UI/CardList.js +1 -1
- package/lib/components/UI/ParamSearchResultContainer.d.ts +1 -3
- package/lib/components/UI/ParamSearchResultContainer.d.ts.map +1 -1
- package/lib/components/UI/PropertyCard.d.ts +2 -2
- package/lib/components/UI/PropertyCard.d.ts.map +1 -1
- package/lib/components/UI/PropertyCard.js +75 -33
- package/lib/components/UI/PropertyCard.js.map +1 -1
- package/lib/components/UI/VehicleCard/PricePopover.d.ts +8 -0
- package/lib/components/UI/VehicleCard/PricePopover.d.ts.map +1 -0
- package/lib/components/UI/VehicleCard/PricePopover.js +98 -0
- package/lib/components/UI/VehicleCard/PricePopover.js.map +1 -0
- package/lib/components/UI/VehicleCard/VehicleBadge.d.ts +7 -0
- package/lib/components/UI/VehicleCard/VehicleBadge.d.ts.map +1 -0
- package/lib/components/UI/VehicleCard/VehicleFeature.d.ts +9 -0
- package/lib/components/UI/VehicleCard/VehicleFeature.d.ts.map +1 -0
- package/lib/components/UI/VehicleCard/VehicleFeature.js +23 -0
- package/lib/components/UI/VehicleCard/VehicleFeature.js.map +1 -0
- package/lib/components/UI/VehicleCard/types.d.ts +59 -0
- package/lib/components/UI/VehicleCard/types.d.ts.map +1 -0
- package/lib/components/UI/VehicleCard.d.ts +11 -11
- package/lib/components/UI/VehicleCard.d.ts.map +1 -1
- package/lib/components/UI/VehicleCard.js +166 -0
- package/lib/components/UI/VehicleCard.js.map +1 -0
- package/lib/components/UI/VehicleCardList.js +38 -0
- package/lib/components/UI/VehicleCardList.js.map +1 -0
- package/lib/components/UI/index.d.ts +2 -1
- package/lib/components/UI/index.d.ts.map +1 -1
- package/lib/components/index.js +1 -1
- package/lib/compute.d.ts.map +1 -1
- package/lib/compute.js.map +1 -1
- package/lib/config/analytics-config.d.ts +59 -0
- package/lib/config/analytics-config.d.ts.map +1 -0
- package/lib/config/env-config.d.ts +3 -0
- package/lib/config/env-config.d.ts.map +1 -1
- package/lib/config/env-config.js +11 -1
- package/lib/config/env-config.js.map +1 -1
- package/lib/config/index.d.ts +3 -0
- package/lib/config/index.d.ts.map +1 -0
- package/lib/machines/settingsMachine.d.ts.map +1 -1
- package/lib/machines/settingsMachine.js +13 -77
- package/lib/machines/settingsMachine.js.map +1 -1
- package/lib/redux/searchReducer.d.ts +1 -1
- package/lib/redux/searchReducer.d.ts.map +1 -1
- package/lib/redux/searchReducer.js.map +1 -1
- package/lib/utils/analytics-utils.d.ts +43 -0
- package/lib/utils/analytics-utils.d.ts.map +1 -0
- package/lib/utils/analytics.d.ts +48 -0
- package/lib/utils/analytics.d.ts.map +1 -0
- package/package.json +4 -4
- package/lib/components/UI/VehicleComponents/CarCardFooter.d.ts +0 -7
- package/lib/components/UI/VehicleComponents/CarCardFooter.d.ts.map +0 -1
- package/lib/components/UI/VehicleComponents/CarCardFooter.js +0 -61
- package/lib/components/UI/VehicleComponents/CarCardFooter.js.map +0 -1
- package/lib/components/UI/VehicleComponents/CarCardImage.d.ts +0 -9
- package/lib/components/UI/VehicleComponents/CarCardImage.d.ts.map +0 -1
- package/lib/components/UI/VehicleComponents/CarCardImage.js +0 -32
- package/lib/components/UI/VehicleComponents/CarCardImage.js.map +0 -1
- package/lib/components/UI/VehicleComponents/CarCardInfo.d.ts +0 -13
- package/lib/components/UI/VehicleComponents/CarCardInfo.d.ts.map +0 -1
- package/lib/components/UI/VehicleComponents/CarCardInfo.js +0 -49
- package/lib/components/UI/VehicleComponents/CarCardInfo.js.map +0 -1
- package/lib/components/UI/VehicleComponents/index.d.ts +0 -4
- package/lib/components/UI/VehicleComponents/index.d.ts.map +0 -1
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import {jsxs,Fragment,jsx}from'react/jsx-runtime';import {useState,useRef,useEffect}from'react';import {BiTag}from'@react-icons/all-files/bi/BiTag.js';const PricePopover = ({
|
|
2
|
+
pricing
|
|
3
|
+
}) => {
|
|
4
|
+
const [position, setPosition] = useState({
|
|
5
|
+
top: 0,
|
|
6
|
+
left: 0
|
|
7
|
+
});
|
|
8
|
+
const popoverRef = useRef(null);
|
|
9
|
+
const triggerRef = useRef(null);
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
const updatePosition = () => {
|
|
12
|
+
if (!popoverRef.current || !triggerRef.current) return;
|
|
13
|
+
const trigger = triggerRef.current.getBoundingClientRect();
|
|
14
|
+
const popover = popoverRef.current.getBoundingClientRect();
|
|
15
|
+
const viewport = {
|
|
16
|
+
width: window.innerWidth,
|
|
17
|
+
height: window.innerHeight
|
|
18
|
+
};
|
|
19
|
+
let top = trigger.bottom + 8;
|
|
20
|
+
let left = trigger.left;
|
|
21
|
+
if (top + popover.height > viewport.height) {
|
|
22
|
+
top = trigger.top - popover.height - 8;
|
|
23
|
+
}
|
|
24
|
+
if (left + popover.width > viewport.width) {
|
|
25
|
+
left = viewport.width - popover.width - 16;
|
|
26
|
+
}
|
|
27
|
+
left = Math.max(16, left);
|
|
28
|
+
setPosition({
|
|
29
|
+
top,
|
|
30
|
+
left
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
updatePosition();
|
|
34
|
+
window.addEventListener('scroll', updatePosition);
|
|
35
|
+
window.addEventListener('resize', updatePosition);
|
|
36
|
+
return () => {
|
|
37
|
+
window.removeEventListener('scroll', updatePosition);
|
|
38
|
+
window.removeEventListener('resize', updatePosition);
|
|
39
|
+
};
|
|
40
|
+
}, []);
|
|
41
|
+
return jsxs(Fragment, {
|
|
42
|
+
children: [jsx("div", {
|
|
43
|
+
ref: triggerRef,
|
|
44
|
+
className: "absolute inset-0"
|
|
45
|
+
}), jsx("div", {
|
|
46
|
+
ref: popoverRef,
|
|
47
|
+
style: {
|
|
48
|
+
top: position.top,
|
|
49
|
+
left: position.left,
|
|
50
|
+
position: 'fixed'
|
|
51
|
+
},
|
|
52
|
+
className: "invisible group-hover:visible opacity-0 group-hover:opacity-100 transition-all duration-200 bg-white rounded-lg shadow-xl border border-gray-100 p-4 min-w-[280px] z-50",
|
|
53
|
+
children: jsxs("div", {
|
|
54
|
+
className: "flex flex-col gap-3",
|
|
55
|
+
children: [jsxs("div", {
|
|
56
|
+
className: "flex items-center justify-between text-[15px]",
|
|
57
|
+
children: [jsx("span", {
|
|
58
|
+
className: "text-gray-600",
|
|
59
|
+
children: "Base rate"
|
|
60
|
+
}), jsxs("span", {
|
|
61
|
+
className: "font-medium",
|
|
62
|
+
children: [pricing.currency, " ", pricing.amount]
|
|
63
|
+
})]
|
|
64
|
+
}), pricing.discount && jsxs("div", {
|
|
65
|
+
className: "flex items-center justify-between text-green-600",
|
|
66
|
+
children: [jsxs("div", {
|
|
67
|
+
className: "flex items-center",
|
|
68
|
+
children: [jsx(BiTag, {
|
|
69
|
+
className: "h-4 w-4 mr-1"
|
|
70
|
+
}), jsx("span", {
|
|
71
|
+
children: "Discount"
|
|
72
|
+
})]
|
|
73
|
+
}), jsxs("span", {
|
|
74
|
+
children: ["-", pricing.discount]
|
|
75
|
+
})]
|
|
76
|
+
}), jsx("div", {
|
|
77
|
+
className: "border-t border-gray-200 mt-1 pt-3",
|
|
78
|
+
children: jsxs("div", {
|
|
79
|
+
className: "flex items-center justify-between",
|
|
80
|
+
children: [jsxs("span", {
|
|
81
|
+
className: "font-medium text-[15px]",
|
|
82
|
+
children: ["Total ", pricing.period && `(${pricing.period})`]
|
|
83
|
+
}), jsxs("div", {
|
|
84
|
+
className: "text-right",
|
|
85
|
+
children: [jsxs("span", {
|
|
86
|
+
className: "text-xl font-semibold",
|
|
87
|
+
children: [pricing.currency, " ", pricing.amount]
|
|
88
|
+
}), pricing.beforeTaxes && jsx("div", {
|
|
89
|
+
className: "text-sm text-gray-500",
|
|
90
|
+
children: "before taxes"
|
|
91
|
+
})]
|
|
92
|
+
})]
|
|
93
|
+
})
|
|
94
|
+
})]
|
|
95
|
+
})
|
|
96
|
+
})]
|
|
97
|
+
});
|
|
98
|
+
};export{PricePopover as default};//# sourceMappingURL=PricePopover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PricePopover.js","sources":["../../../../src/components/UI/VehicleCard/PricePopover.tsx"],"sourcesContent":[null],"names":[],"mappings":"uJAQA,MAAM,YAAY,GAAgC,CAAC;AAC/C,EAAA;AACA,CAAA,KAAA;AACA,EAAA,MAAA,CAAA,qBAA0C,CAAA,GAAI,QAAE,CAAA;IAEhD,GAAS,EAAA,CAAA;QACL,EAAM;;kBACqD,GAAA,MAAA,CAAA,IAAA,CAAA;kBAEjD,GAAA,OAAU,IAAU,CAAA;YAC1B,MAAM;AACN,IAAA,MAAA,iBAAiB,MAAA;qBACR,CAAA,OAAQ,IAAW,CAAA,UAAA,CAAA,OAAA,EAAA;mBAClB,GAAA,UAAoB,CAAA,OAAA,CAAA,qBAAA,EAAA;mBAC5B,GAAA,UAAA,CAAA,OAAA,CAAA,qBAAA,EAAA;AAEF,MAAA,MAAA,QAAU,GAAA;AACV,QAAA,KAAA,EAAA,MAAQ,CAAA;cAEJ,EAAA,MAAM,CAAA;;aAET,GAAA,OAAA,CAAA,MAAA,GAAA,CAAA;cAEG,GAAA,OAAO,CAAA,IAAA;gBACP,OAAO,CAAQ,MAAA,GAAM,eAAW,EAAA;cACnC,OAAA,CAAA,GAAA,GAAA,OAAA,CAAA,MAAA,GAAA,CAAA;;AAID,MAAA,IAAA,IAAA,GAAA,OAAY,CAAE,QAAS,QAAI,CAAA,KAAA,EAAA;AAC/B,QAAA,IAAE,GAAA,QAAA,CAAA,KAAA,GAAA,OAAA,CAAA,KAAA,GAAA,EAAA;AAEF;AACA,MAAA,IAAA,GAAA,IAAuB,CAAA,GAAA,CAAA,EAAA,EAAA,IAAA,CAAA;AACvB,MAAA,WAAuB,CAAA;AAEvB,QAAA,GAAA;AACI,QAAA;AACA,OAAA,CAAA;AACJ,KAAA;IACJ,cAAO,EAAA;AAEP,IAAA,MAAA,CAAO,gBAEC,CAAA,QAAA,EAAA,cAAA,CAAA;2BAIqB,CAAA,QAAI,EAAA,cAAA,CAAA;;AAEjB,MAAA,MAAA,CAAA,mBAAiB,CAAA,QAAA,EAAA,cAAA,CAAA;AACpB,MAAA,MAAA,CAAA,mBACkL,CAAA,QAAA,EAAA,cAAA,CAAA;AAqCnM,KAAE;AAEF,GAAA,EAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VehicleBadge.d.ts","sourceRoot":"","sources":["../../../../src/components/UI/VehicleCard/VehicleBadge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,UAAU,cAAc;IACpB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAY1C,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
interface CardFeatureProps {
|
|
3
|
+
icon: ReactNode;
|
|
4
|
+
label: string;
|
|
5
|
+
iconColor?: string;
|
|
6
|
+
}
|
|
7
|
+
declare const VehicleFeature: React.FC<CardFeatureProps>;
|
|
8
|
+
export default VehicleFeature;
|
|
9
|
+
//# sourceMappingURL=VehicleFeature.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VehicleFeature.d.ts","sourceRoot":"","sources":["../../../../src/components/UI/VehicleCard/VehicleFeature.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGzC,UAAU,gBAAgB;IACtB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAiB9C,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import {jsxs,jsx}from'react/jsx-runtime';import {renderDynamicIcon}from'../../../helpers/DynamicIcon.js';const VehicleFeature = ({
|
|
2
|
+
icon,
|
|
3
|
+
label,
|
|
4
|
+
iconColor = '#6B7280'
|
|
5
|
+
}) => {
|
|
6
|
+
// gray-500
|
|
7
|
+
return jsxs("div", {
|
|
8
|
+
className: "flex items-center bg-gray-50 px-1.5 py-0.5 rounded text-[11px] text-gray-700",
|
|
9
|
+
children: [jsx("div", {
|
|
10
|
+
className: "text-gray-500 mr-0.5",
|
|
11
|
+
children: renderDynamicIcon({
|
|
12
|
+
name: icon,
|
|
13
|
+
style: {
|
|
14
|
+
iconColor: iconColor,
|
|
15
|
+
w: '20px',
|
|
16
|
+
h: '20px'
|
|
17
|
+
}
|
|
18
|
+
})
|
|
19
|
+
}), jsx("span", {
|
|
20
|
+
children: label
|
|
21
|
+
})]
|
|
22
|
+
});
|
|
23
|
+
};export{VehicleFeature as default};//# sourceMappingURL=VehicleFeature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VehicleFeature.js","sources":["../../../../src/components/UI/VehicleCard/VehicleFeature.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"yGASA,MAAM,cAAc,GAA+B,CAAC;MACrC;AACX,EAAA,KAAA;AAIgB,EAAA,SAAA,GAAA;AACA,CAAA,KAAA;AACI;AACA,EAAA,OAAAA,IAAA,CAAA,KAAA,EAAA;AACA,IAAA,SAAA,EAAA,8EAAS;AACZ,IAAA,QAAA,EAAA,CAAAC,GAAA,CAAA,KAAA,EAAA;AACJ,MAAA,SAAA,EAAA,sBAEL;AAGZ,MAAE,QAAA,EAAA,iBAAA,CAAA;AAEF,QAAA,IAAA,EAAA;;;;;;;;;;;"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
export interface CarBags {
|
|
2
|
+
count: number;
|
|
3
|
+
size?: string;
|
|
4
|
+
}
|
|
5
|
+
export interface RentalCompany {
|
|
6
|
+
name: string;
|
|
7
|
+
logo?: string;
|
|
8
|
+
rating?: number;
|
|
9
|
+
reviewCount?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface PickupInfo {
|
|
12
|
+
location: string;
|
|
13
|
+
description?: string;
|
|
14
|
+
freePickup?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface CarPricing {
|
|
17
|
+
currency: string;
|
|
18
|
+
amount: number | string;
|
|
19
|
+
originalPrice?: string;
|
|
20
|
+
discount?: string;
|
|
21
|
+
period?: string;
|
|
22
|
+
beforeTaxes?: boolean;
|
|
23
|
+
freeCancel?: boolean;
|
|
24
|
+
deals?: number;
|
|
25
|
+
}
|
|
26
|
+
export interface CarActions {
|
|
27
|
+
showInfo?: boolean;
|
|
28
|
+
showEmail?: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface Car {
|
|
31
|
+
id: string;
|
|
32
|
+
make: string;
|
|
33
|
+
model: string;
|
|
34
|
+
image?: string;
|
|
35
|
+
subtitle?: string;
|
|
36
|
+
tags?: string[];
|
|
37
|
+
isNewListing?: boolean;
|
|
38
|
+
isFavorite?: boolean;
|
|
39
|
+
rating?: number;
|
|
40
|
+
reviews?: string;
|
|
41
|
+
hostStatus?: string;
|
|
42
|
+
location?: string;
|
|
43
|
+
hasAC?: boolean;
|
|
44
|
+
transmission?: string;
|
|
45
|
+
seats?: number;
|
|
46
|
+
bags?: CarBags;
|
|
47
|
+
mileage?: string;
|
|
48
|
+
rentalCompany?: RentalCompany;
|
|
49
|
+
pickupInfo?: PickupInfo;
|
|
50
|
+
pricing?: CarPricing;
|
|
51
|
+
actions?: CarActions;
|
|
52
|
+
source?: string;
|
|
53
|
+
}
|
|
54
|
+
export interface CarCardProps {
|
|
55
|
+
car: Car;
|
|
56
|
+
onFavorite?: (id: string) => void;
|
|
57
|
+
onViewDeal?: (id: string) => void;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/UI/VehicleCard/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IACzB,GAAG,EAAE,GAAG,CAAC;IACT,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
type VehicleCardProps = {
|
|
3
|
-
|
|
4
|
-
isSaved
|
|
5
|
-
setFocus
|
|
6
|
-
setBlur
|
|
7
|
-
handleLike
|
|
8
|
-
likeBtnLoading
|
|
9
|
-
|
|
10
|
-
authenticated
|
|
11
|
-
extraIcons
|
|
3
|
+
item?: any;
|
|
4
|
+
isSaved?: boolean;
|
|
5
|
+
setFocus?: (index: number) => void;
|
|
6
|
+
setBlur?: (index: number) => void;
|
|
7
|
+
handleLike?: (index: number) => void;
|
|
8
|
+
likeBtnLoading?: boolean;
|
|
9
|
+
categoryTypes?: any[];
|
|
10
|
+
authenticated?: boolean;
|
|
11
|
+
extraIcons?: any[];
|
|
12
12
|
};
|
|
13
|
-
|
|
14
|
-
export
|
|
13
|
+
declare const VehicleCard: React.FC<VehicleCardProps>;
|
|
14
|
+
export default VehicleCard;
|
|
15
15
|
//# sourceMappingURL=VehicleCard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VehicleCard.d.ts","sourceRoot":"","sources":["../../../src/components/UI/VehicleCard.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"VehicleCard.d.ts","sourceRoot":"","sources":["../../../src/components/UI/VehicleCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAoC1B,KAAK,gBAAgB,GAAG;IACpB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;CACtB,CAAC;AAEF,QAAA,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAuK3C,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {AiFillHeart}from'@react-icons/all-files/ai/AiFillHeart.js';import {AiFillStar}from'@react-icons/all-files/ai/AiFillStar.js';import {AiOutlineHeart}from'@react-icons/all-files/ai/AiOutlineHeart.js';import {FaAward}from'@react-icons/all-files/fa/FaAward.js';import {FaShieldAlt}from'@react-icons/all-files/fa/FaShieldAlt.js';import {FiMapPin}from'@react-icons/all-files/fi/FiMapPin.js';import VehicleFeature from'./VehicleCard/VehicleFeature.js';import PricePopover from'./VehicleCard/PricePopover.js';import {useMemo}from'react';const startCase = str => {
|
|
2
|
+
return str.toLowerCase().split('_').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join(' ');
|
|
3
|
+
};
|
|
4
|
+
const seatWordToNumber = word => {
|
|
5
|
+
const map = {
|
|
6
|
+
ONE: 1,
|
|
7
|
+
TWO: 2,
|
|
8
|
+
THREE: 3,
|
|
9
|
+
FOUR: 4,
|
|
10
|
+
FIVE: 5,
|
|
11
|
+
SIX: 6,
|
|
12
|
+
SEVEN: 7,
|
|
13
|
+
EIGHT: 8,
|
|
14
|
+
NINE: 9,
|
|
15
|
+
TEN: 10
|
|
16
|
+
};
|
|
17
|
+
return map[word.toUpperCase()] || word;
|
|
18
|
+
};
|
|
19
|
+
const VehicleCard = ({
|
|
20
|
+
item,
|
|
21
|
+
isSaved,
|
|
22
|
+
setFocus,
|
|
23
|
+
setBlur,
|
|
24
|
+
handleLike,
|
|
25
|
+
likeBtnLoading,
|
|
26
|
+
categoryTypes,
|
|
27
|
+
authenticated,
|
|
28
|
+
extraIcons = []
|
|
29
|
+
}) => {
|
|
30
|
+
useMemo(() => categoryTypes?.filter(type => item?.types?.includes(type.id)), [item, categoryTypes]);
|
|
31
|
+
return jsx("div", {
|
|
32
|
+
className: "bg-white rounded-lg overflow-hidden border border-gray-200 sm:h-[250px]",
|
|
33
|
+
onMouseEnter: () => setFocus(item.id),
|
|
34
|
+
onMouseLeave: () => setBlur(item.id),
|
|
35
|
+
children: jsxs("div", {
|
|
36
|
+
className: "flex flex-col sm:flex-row sm:h-full",
|
|
37
|
+
children: [jsxs("div", {
|
|
38
|
+
className: "relative w-full sm:w-[240px] h-[200px] sm:h-full flex-shrink-0",
|
|
39
|
+
children: [item.thumbnail?.url && jsx("img", {
|
|
40
|
+
src: item.thumbnail.url,
|
|
41
|
+
alt: item.title,
|
|
42
|
+
className: "w-full h-full object-contain bg-gray-50 p-2"
|
|
43
|
+
}), jsx("button", {
|
|
44
|
+
onClick: () => handleLike?.(item.id),
|
|
45
|
+
className: "absolute top-2 right-2 p-1.5 bg-white/90 backdrop-blur-sm rounded-full hover:bg-white transition-colors duration-200",
|
|
46
|
+
children: item.isUserLike ? jsx(AiFillHeart, {
|
|
47
|
+
className: "h-4 w-4 text-red-500"
|
|
48
|
+
}) : jsx(AiOutlineHeart, {
|
|
49
|
+
className: "h-4 w-4 text-gray-500"
|
|
50
|
+
})
|
|
51
|
+
})]
|
|
52
|
+
}), jsxs("div", {
|
|
53
|
+
className: "flex-1 p-4 flex flex-col",
|
|
54
|
+
children: [jsxs("div", {
|
|
55
|
+
children: [jsxs("div", {
|
|
56
|
+
className: "flex items-start justify-between gap-2 mb-2",
|
|
57
|
+
children: [jsx("h2", {
|
|
58
|
+
className: "text-base font-semibold text-gray-900 truncate",
|
|
59
|
+
children: item.title
|
|
60
|
+
}), item.stats?.averageRating && jsxs("div", {
|
|
61
|
+
className: "flex items-center shrink-0",
|
|
62
|
+
children: [jsx("span", {
|
|
63
|
+
className: "font-semibold text-black-700",
|
|
64
|
+
children: item.stats.averageRating
|
|
65
|
+
}), jsx(AiFillStar, {
|
|
66
|
+
className: "h-3.5 w-3.5 text-yellow-500 ml-0.5"
|
|
67
|
+
}), item.stats?.totalReviews && jsxs("span", {
|
|
68
|
+
className: "text-xs text-gray-600 ml-1",
|
|
69
|
+
children: ["(", item.stats.totalReviews, ")"]
|
|
70
|
+
})]
|
|
71
|
+
})]
|
|
72
|
+
}), jsxs("div", {
|
|
73
|
+
className: "flex flex-wrap items-center gap-2 text-xs mb-2",
|
|
74
|
+
children: [item.orgName && jsxs("span", {
|
|
75
|
+
className: "text-purple-600 flex items-center",
|
|
76
|
+
children: [jsx(FaAward, {
|
|
77
|
+
className: "h-3.5 w-3.5 mr-0.5"
|
|
78
|
+
}), item.orgName]
|
|
79
|
+
}), item.preferences?.details?.freeCancellation && jsxs("span", {
|
|
80
|
+
className: "text-green-600 flex items-center",
|
|
81
|
+
children: [jsx(FaShieldAlt, {
|
|
82
|
+
className: "h-3.5 w-3.5 mr-0.5"
|
|
83
|
+
}), "Free cancellation"]
|
|
84
|
+
})]
|
|
85
|
+
}), item.address?.description && jsxs("div", {
|
|
86
|
+
className: "flex items-center text-xs text-gray-400 mb-3",
|
|
87
|
+
children: [jsx(FiMapPin, {
|
|
88
|
+
className: "h-3.5 w-3.5 mr-0.5 flex-shrink-0"
|
|
89
|
+
}), jsx("span", {
|
|
90
|
+
className: "truncate",
|
|
91
|
+
children: item.address.description
|
|
92
|
+
})]
|
|
93
|
+
})]
|
|
94
|
+
}), jsx("div", {
|
|
95
|
+
className: "flex flex-wrap gap-1.5 mb-4",
|
|
96
|
+
children: Object.entries(item.preferences?.details?.metadata || {}).map(([key, value]) => {
|
|
97
|
+
// Skip non-feature metadata
|
|
98
|
+
if (key === '__typename' || key === 'suitcases') return null;
|
|
99
|
+
const feature = value;
|
|
100
|
+
if (!feature.enable) return null;
|
|
101
|
+
let label = '';
|
|
102
|
+
switch (key) {
|
|
103
|
+
case 'aircon':
|
|
104
|
+
label = 'AC';
|
|
105
|
+
break;
|
|
106
|
+
case 'seats':
|
|
107
|
+
label = `${seatWordToNumber(item.preferences.details.seats.replace('_SEATER', ''))} Seats`;
|
|
108
|
+
break;
|
|
109
|
+
case 'suitcases':
|
|
110
|
+
const small = value.small?.value || 0;
|
|
111
|
+
const big = value.big?.value || 0;
|
|
112
|
+
label = `${small + big} Bags`;
|
|
113
|
+
break;
|
|
114
|
+
case 'unlimitedMileage':
|
|
115
|
+
label = startCase(item.mileage);
|
|
116
|
+
break;
|
|
117
|
+
default:
|
|
118
|
+
label = startCase(key);
|
|
119
|
+
}
|
|
120
|
+
return jsx(VehicleFeature, {
|
|
121
|
+
icon: feature.icon,
|
|
122
|
+
label: label
|
|
123
|
+
}, key);
|
|
124
|
+
})
|
|
125
|
+
}), jsx("div", {
|
|
126
|
+
className: "mt-auto",
|
|
127
|
+
children: jsxs("div", {
|
|
128
|
+
className: "flex items-end justify-between",
|
|
129
|
+
children: [jsxs("div", {
|
|
130
|
+
className: "relative group",
|
|
131
|
+
children: [item.pricingInfo && jsxs(Fragment, {
|
|
132
|
+
children: [jsx("div", {
|
|
133
|
+
className: "space-y-0.5",
|
|
134
|
+
children: jsxs("div", {
|
|
135
|
+
className: "flex items-baseline",
|
|
136
|
+
children: [jsxs("span", {
|
|
137
|
+
className: "text-lg font-bold",
|
|
138
|
+
children: [item.pricingInfo.currency, item.pricingInfo.basePrice]
|
|
139
|
+
}), jsx("span", {
|
|
140
|
+
className: "text-gray-500 text-xs ml-1",
|
|
141
|
+
children: "total"
|
|
142
|
+
})]
|
|
143
|
+
})
|
|
144
|
+
}), jsx(PricePopover, {
|
|
145
|
+
pricing: {
|
|
146
|
+
freeCancel: item.preferences?.details?.freeCancellation,
|
|
147
|
+
currency: item.pricingInfo.currency,
|
|
148
|
+
amount: item.pricingInfo.basePrice,
|
|
149
|
+
period: 'total'
|
|
150
|
+
}
|
|
151
|
+
})]
|
|
152
|
+
}), item.__typename && jsxs("span", {
|
|
153
|
+
className: "text-xs text-gray-400 block mt-1",
|
|
154
|
+
children: ["via ", item.__typename.replace('Vehicle', '')]
|
|
155
|
+
})]
|
|
156
|
+
}), jsx("button", {
|
|
157
|
+
onClick: () => {},
|
|
158
|
+
className: "bg-blue-600 text-white px-4 py-2 text-sm rounded-lg font-medium hover:bg-blue-700 transition-colors duration-200",
|
|
159
|
+
children: "View deal"
|
|
160
|
+
})]
|
|
161
|
+
})
|
|
162
|
+
})]
|
|
163
|
+
})]
|
|
164
|
+
})
|
|
165
|
+
});
|
|
166
|
+
};export{VehicleCard as default};//# sourceMappingURL=VehicleCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VehicleCard.js","sources":["../../../src/components/UI/VehicleCard.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":"0kBAYA,MAAM,SAAS,GAAG,GAAC,IAAe;AAC9B,EAAA,OAAA,GAAU,CAAA,WAAA,EAAA,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA,GAAA,CAAA,IAAA,IAAA,IAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA,WAAA,EAAA,GAAA,IAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,GAAA,CAAA;AACL,CAAA;sBACU,GAAA,IAAA,IAAA;WACP,GAAE;SACL,CAAI;AACb,IAAE,GAAA,EAAA,CAAA;AAEF,IAAA,KAAsB,EAAA,CAAA;AAClB,IAAA,IAAA,EAAM;AACF,IAAA,IAAA,EAAA,CAAG;AACH,IAAA,GAAA,EAAA,CAAA;AACA,IAAA,KAAA,EAAA,CAAA;AACA,IAAA,KAAA,EAAA,CAAI;AACJ,IAAA,IAAA,EAAA,CAAA;AACA,IAAA,GAAA,EAAA;AACA,GAAA;AACA,EAAA,OAAA,GAAA,CAAK,IAAG,CAAA,WAAA,EAAA,CAAA,IAAA,IAAA;AACR,CAAA;AACA,MAAA,WAAO,GAAA,CAAA;MACT;SACK;AACX,EAAE,QAAA;AAcF,EAAM,OAAA;AAWF,EAAA,UAAW;AAEX,EAAA,cACI;;AA8EoB,EAAA,aAAA;AAAiD,EAAA,UAAA,GAAA;;6BAGrC,EAAC,MAAM,CAAA,IAAA,IAAA,IAAA,EAAA,KAAA,EAAA,QAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,IAAA,EAAA,aAAA,CAAA;AAAE,EAAA,OAAAA,GAAA,CAAA,KAAA,EAAA;wFAEN;gCACf,CAAQ,IAAA,CAAA,EAAA,CAAA;AACJ,IAAA,YAAA,EAAA,MAAA,OAAA,CAAA,IAAA,CAAA,EAAA,CAAA;;sDAEU;AACV,MAAA,QAAA,EAAA,CAAAC,IAAA,CAAA,KAAA,EAAA;mFAEa;0CAEHD,GAAA,CAAA,KAAA,EAAA;AACV,UAAA,GAAA,EAAA,IAAA,CAAA,SAAA,CAAA,GAAA;;;AAGI,SAAA,CAAA,EAAAA,GAAA,CAAA,QAAA,EAAA;0CACM,CAAA,EAAA,CAAA;AACV,UAAA,SAAA,EAAA,sHAAuB;AACnB,UAAA,QAAA,EAAA,IAAA,CAAA,UAAA,GAAAA,GAAA,CAAA,WAAiB,EAAA;;AAErB,WAAA,CAAA,GAAAA,GAAA,CAAA,cAAA,EAAA;AACI,YAAA,SAAA,EAAA;;AAGR,SAAA,CAAA;AACJ,OAAA,CAAA,EAAAC,IAAA,CAAA,KAAA,EAAA;AAoBwB,QAAA,SAAA,EAAA,0BAAA;AACA,QAAA,QAAA,EAAA,CAAAA,IAAA,CAAA,KAAA,EAAA;AACA,UAAA,QAAA,EAAA,CAAAA,IAAA,CAAA,KAAA,EAAA;AACA,YAAA,SAAA,EAAA,6CAAQ;;AAwBxD,cAAE,SAAA,EAAA,gDAAA;AAEF,cAAA,cAA2B,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import {jsx}from'react/jsx-runtime';import {useTranslation}from'react-i18next';import {isEmpty}from'lodash-es';import {isUserAuthenticated}from'@adminide-stack/user-auth0-client';import VehicleCard from'./VehicleCard.js';const VehicleCardList = props => {
|
|
2
|
+
const {
|
|
3
|
+
setBlur,
|
|
4
|
+
setFocus,
|
|
5
|
+
cars,
|
|
6
|
+
handleLike,
|
|
7
|
+
likeBtnLoading,
|
|
8
|
+
vehicleTypes,
|
|
9
|
+
extraIcons,
|
|
10
|
+
className = ''
|
|
11
|
+
} = props;
|
|
12
|
+
const {
|
|
13
|
+
t
|
|
14
|
+
} = useTranslation();
|
|
15
|
+
const {
|
|
16
|
+
authenticated
|
|
17
|
+
} = isUserAuthenticated();
|
|
18
|
+
if (isEmpty(cars)) {
|
|
19
|
+
return jsx("div", {
|
|
20
|
+
className: "text-base",
|
|
21
|
+
children: t('property.not_found_any_room')
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
return jsx("div", {
|
|
25
|
+
className: "flex flex-wrap gap-4 flex-col",
|
|
26
|
+
children: cars.map((car, index) => jsx(VehicleCard, {
|
|
27
|
+
item: car,
|
|
28
|
+
isSaved: false,
|
|
29
|
+
setFocus: () => setFocus(index),
|
|
30
|
+
setBlur: setBlur,
|
|
31
|
+
handleLike: handleLike,
|
|
32
|
+
likeBtnLoading: likeBtnLoading,
|
|
33
|
+
categoryTypes: vehicleTypes,
|
|
34
|
+
authenticated: authenticated,
|
|
35
|
+
extraIcons: extraIcons
|
|
36
|
+
}, car.id))
|
|
37
|
+
});
|
|
38
|
+
};export{VehicleCardList};//# sourceMappingURL=VehicleCardList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VehicleCardList.js","sources":["../../../src/components/UI/VehicleCardList.tsx"],"sourcesContent":[null],"names":[],"mappings":"6NAiBa,MAAA,eAAe,GAAmC,KAAC,IAAS;QAC/D;AACN,IAAA;AACA,IAAA,QAAQ;AAER,IAAA,IAAI;cACO;IACX,cAAC;AACD,IAAA,YACI;AAiBR,IAAE,UAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -5,5 +5,6 @@ export * from './ParamSearchResultContainer';
|
|
|
5
5
|
export * from './CardList';
|
|
6
6
|
export * from './PropertyCard';
|
|
7
7
|
export * from './Pagination';
|
|
8
|
-
export * from './
|
|
8
|
+
export * from './VehicleCard';
|
|
9
|
+
export * from './VehicleCardList';
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/UI/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/UI/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC"}
|
package/lib/components/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{CategoriesTypeList}from'./UI/CategoriesTypeList.js';export{PropertyCardOnMap}from'./UI/PropertyCardOnMap.js';export{LazyLoadingGoogleMarker}from'./UI/LazyLoadingGoogleMarker.js';export{ParamSearchResultContainer}from'./UI/ParamSearchResultContainer.js';export{CardList}from'./UI/CardList.js';export{PropertyCard}from'./UI/PropertyCard.js';export{Pagination}from'./UI/Pagination.js';
|
|
1
|
+
export{CategoriesTypeList}from'./UI/CategoriesTypeList.js';export{PropertyCardOnMap}from'./UI/PropertyCardOnMap.js';export{LazyLoadingGoogleMarker}from'./UI/LazyLoadingGoogleMarker.js';export{ParamSearchResultContainer}from'./UI/ParamSearchResultContainer.js';export{CardList}from'./UI/CardList.js';export{PropertyCard}from'./UI/PropertyCard.js';export{Pagination}from'./UI/Pagination.js';import'react/jsx-runtime';import'@react-icons/all-files/ai/AiFillHeart.js';import'@react-icons/all-files/ai/AiFillStar.js';import'@react-icons/all-files/ai/AiOutlineHeart.js';import'@react-icons/all-files/fa/FaAward.js';import'@react-icons/all-files/fa/FaShieldAlt.js';import'@react-icons/all-files/fi/FiMapPin.js';import'../helpers/DynamicIcon.js';import'react';import'@react-icons/all-files/bi/BiTag.js';export{VehicleCardList}from'./UI/VehicleCardList.js';export{MainHeader,defaultRenderLogo,defaultRenderLogoAndTitle}from'./Layout/GlobalHeader/MainHeader.js';export{Logo}from'./Layout/GlobalHeader/Logo.js';export{RightMenu}from'./Layout/GlobalHeader/RightMenu.js';export{ThemeProviderTailwind,useTheme}from'./ThemeProvider/ThemeProvider.js';export{ThemeToggle}from'./ThemeProvider/ThemeToggle.js';//# sourceMappingURL=index.js.map
|
package/lib/compute.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compute.d.ts","sourceRoot":"","sources":["../src/compute.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compute.d.ts","sourceRoot":"","sources":["../src/compute.ts"],"names":[],"mappings":"AA2BA,QAAA,MAAM,aAAa,0CAA0C,CAAC;AAG9D,QAAA,MAAM,cAAc,0CAA2C,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC"}
|
package/lib/compute.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compute.js","sources":["../src/compute.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compute.js","sources":["../src/compute.ts"],"sourcesContent":[null],"names":[],"mappings":"oJAGA,MAAM,GAAG,GAAG,aAAa;AAEzB,MAAM,qBAAqB,GAAU,CAAA;AACjC,EAAA,GAAA,EAAA,GAAA;AACI,EAAA,IAAA,EAAA,aAAQ;AACR,EAAA,IAAA,EAAA,MAAM,CAAa,WAAA;QACnB,UAAY;AACZ,EAAA,gBAAgB,EAAA,CAAA,GAAA,CAAA;SACA,KAAA;AAChB,EAAA,SAAA,EAAK,MAAO,OAAA,0CAAA;AACZ,CAAA,EAAA;AACH,EAAA,GAAA,EAAA,0BAAA;AACD,EAAA,aAAA,EAAA,IAAA;AACI,EAAA,IAAA,EAAA,wBAA+B;AAC/B,EAAA,eAAA,EAAA,IAAe;AACf,EAAA,IAAA,EAAA;AACA,EAAA,SAAA,EAAA,MAAA,OAAqB,+DAAA,CAAA;AACrB,EAAA,IAAA,EAAA;AACA,CAAA,CAAA;AACA;AACH,gBAAA,CAAA,qBAAA;;AAGO,MAAA,cAAA,GAAA,iBAAA,CAAA,qBAAA"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Google Analytics Configuration
|
|
3
|
+
*/
|
|
4
|
+
export declare const ANALYTICS_CONFIG: {
|
|
5
|
+
enabled: boolean;
|
|
6
|
+
debug: boolean;
|
|
7
|
+
GA4_MEASUREMENT_ID: string;
|
|
8
|
+
trackEvents: {
|
|
9
|
+
pageViews: boolean;
|
|
10
|
+
clicks: boolean;
|
|
11
|
+
redirections: boolean;
|
|
12
|
+
errors: boolean;
|
|
13
|
+
};
|
|
14
|
+
trackUserProperties: {
|
|
15
|
+
userId: boolean;
|
|
16
|
+
deviceInfo: boolean;
|
|
17
|
+
location: boolean;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
export declare const EVENT_CATEGORIES: {
|
|
21
|
+
REDIRECTION: string;
|
|
22
|
+
USER_INTERACTION: string;
|
|
23
|
+
SYSTEM: string;
|
|
24
|
+
ERROR: string;
|
|
25
|
+
};
|
|
26
|
+
export declare const EVENT_ACTIONS: {
|
|
27
|
+
AUTO_REDIRECT: string;
|
|
28
|
+
MANUAL_CLICK: string;
|
|
29
|
+
LINK_CLICK: string;
|
|
30
|
+
BUTTON_CLICK: string;
|
|
31
|
+
FORM_SUBMIT: string;
|
|
32
|
+
SEARCH: string;
|
|
33
|
+
VIEW_ITEM: string;
|
|
34
|
+
ADD_TO_CART: string;
|
|
35
|
+
REMOVE_FROM_CART: string;
|
|
36
|
+
BEGIN_CHECKOUT: string;
|
|
37
|
+
ADD_PAYMENT_INFO: string;
|
|
38
|
+
PURCHASE: string;
|
|
39
|
+
LOAD: string;
|
|
40
|
+
INIT: string;
|
|
41
|
+
API_ERROR: string;
|
|
42
|
+
CLIENT_ERROR: string;
|
|
43
|
+
};
|
|
44
|
+
export declare const GA4_EVENTS: {
|
|
45
|
+
PAGE_VIEW: string;
|
|
46
|
+
SEARCH: string;
|
|
47
|
+
VIEW_ITEM: string;
|
|
48
|
+
VIEW_ITEM_LIST: string;
|
|
49
|
+
SELECT_ITEM: string;
|
|
50
|
+
ADD_TO_CART: string;
|
|
51
|
+
REMOVE_FROM_CART: string;
|
|
52
|
+
BEGIN_CHECKOUT: string;
|
|
53
|
+
ADD_PAYMENT_INFO: string;
|
|
54
|
+
PURCHASE: string;
|
|
55
|
+
LOGIN: string;
|
|
56
|
+
SIGN_UP: string;
|
|
57
|
+
USER_ENGAGEMENT: string;
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=analytics-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analytics-config.d.ts","sourceRoot":"","sources":["../../src/config/analytics-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;CAwB5B,CAAC;AAGF,eAAO,MAAM,gBAAgB;;;;;CAK5B,CAAC;AAGF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;CAwBzB,CAAC;AAGF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;CActB,CAAC"}
|
|
@@ -15,5 +15,8 @@ export declare const config: Readonly<{
|
|
|
15
15
|
BOOKING_COM_DEFAULT_PAGE_SIZE: number;
|
|
16
16
|
PRICELINE_API_KEY: string;
|
|
17
17
|
DEFAULT_COORDINATES: string;
|
|
18
|
+
ENABLE_SETTING_DRAWER: boolean;
|
|
19
|
+
GOOGLE_ANALYTICS_ID: string;
|
|
20
|
+
RAPID_API_KEY: string;
|
|
18
21
|
} & import("envalid").CleanedEnvAccessors>;
|
|
19
22
|
//# sourceMappingURL=env-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-config.d.ts","sourceRoot":"","sources":["../../src/config/env-config.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"env-config.d.ts","sourceRoot":"","sources":["../../src/config/env-config.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;0CAuCjB,CAAC"}
|
package/lib/config/env-config.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {cleanEnv,str,num
|
|
1
|
+
import {cleanEnv,str,bool,num}from'envalid';import {getEnvironment}from'@common-stack/core';import {SCROLL_THRESHOLD,LAYOUT_SETTINGS}from'./constants.js';const env = getEnvironment();
|
|
2
2
|
const defaultScrollThreshold = JSON.stringify({
|
|
3
3
|
MIN: SCROLL_THRESHOLD.MIN,
|
|
4
4
|
MAX: SCROLL_THRESHOLD.MAX,
|
|
@@ -68,5 +68,15 @@ const config = cleanEnv(env, {
|
|
|
68
68
|
DEFAULT_COORDINATES: str({
|
|
69
69
|
default: '{"lat":40.7127281,"lng":-74.0060152}',
|
|
70
70
|
desc: 'Default coordinates for property search'
|
|
71
|
+
}),
|
|
72
|
+
ENABLE_SETTING_DRAWER: bool({
|
|
73
|
+
default: false,
|
|
74
|
+
desc: 'Enable setting drawer'
|
|
75
|
+
}),
|
|
76
|
+
GOOGLE_ANALYTICS_ID: str({
|
|
77
|
+
default: 'G-L5J3SYZ69C'
|
|
78
|
+
}),
|
|
79
|
+
RAPID_API_KEY: str({
|
|
80
|
+
default: '7c2d15ba29msh468be2f129d847cp183e95jsnc7c279116f6e'
|
|
71
81
|
})
|
|
72
82
|
});export{config};//# sourceMappingURL=env-config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-config.js","sources":["../../src/config/env-config.ts"],"sourcesContent":[null],"names":[],"mappings":"0JAIA,MAAM,GAAG,GAAG,cAAc,EAAE;AAE5B,MAAM,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC;KACvC,EAAA,gBAAkB,CAAA,GAAI;KACtB,EAAA,gBAAkB,CAAA,GAAI;MACrB,EAAA,gBAAkB,CAAA,IAAK;SACpB,EAAA,gBAAkB,CAAA;AAC5B,CAAA,CAAC;AAEW,MAAA,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE;AAChC,EAAA,WAAA,EAAW,GAAE,CAAA;AACb,IAAA,OAAA,EAAA,aAAA;AACA,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;AACA,EAAA,gCAA4B,EAAI,IAAS,CAAA;AACzC,IAAA,OAAA,EAAA,KAAc;AACd,IAAA,IAAA,EAAA;AAEA,GAAA,CAAA;kBACmB,EAAA,GAAA,CAAA;IACnB,OAAiC,EAAA,sBAAA;AAC7B,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;iBACF,EAAA,GAAA,CAAA;IACF,OAAkC,EAAA,IAAA,CAAA,SAAA,CAAA,eAAK,CAAC;AACpC,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;4BACF,EAAA,GAAA,CAAA;IACF,OAA8B,EAAA,EAAA;QAC1B,EAAO;AACP,GAAA,CAAA;gBACF,EAAA,GAAA,CAAA;IACF,OAA0B,EAAA,EAAA;AACtB,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;qBACF,EAAA,GAAA,CAAA;IACF,OAA6B,EAAA,EAAA;AACzB,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;eACF,EAAA,GAAA,CAAA;IACF,OAAiB,EAAA,SAAA;IACjB,IAAmB,EAAA;AACf,GAAA,CAAA;AACA,EAAA,mBAA+C,EAAA,GAAA,CAAA;WACjD,EAAA;
|
|
1
|
+
{"version":3,"file":"env-config.js","sources":["../../src/config/env-config.ts"],"sourcesContent":[null],"names":[],"mappings":"0JAIA,MAAM,GAAG,GAAG,cAAc,EAAE;AAE5B,MAAM,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC;KACvC,EAAA,gBAAkB,CAAA,GAAI;KACtB,EAAA,gBAAkB,CAAA,GAAI;MACrB,EAAA,gBAAkB,CAAA,IAAK;SACpB,EAAA,gBAAkB,CAAA;AAC5B,CAAA,CAAC;AAEW,MAAA,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE;AAChC,EAAA,WAAA,EAAW,GAAE,CAAA;AACb,IAAA,OAAA,EAAA,aAAA;AACA,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;AACA,EAAA,gCAA4B,EAAI,IAAS,CAAA;AACzC,IAAA,OAAA,EAAA,KAAc;AACd,IAAA,IAAA,EAAA;AAEA,GAAA,CAAA;kBACmB,EAAA,GAAA,CAAA;IACnB,OAAiC,EAAA,sBAAA;AAC7B,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;iBACF,EAAA,GAAA,CAAA;IACF,OAAkC,EAAA,IAAA,CAAA,SAAA,CAAA,eAAK,CAAC;AACpC,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;4BACF,EAAA,GAAA,CAAA;IACF,OAA8B,EAAA,EAAA;QAC1B,EAAO;AACP,GAAA,CAAA;gBACF,EAAA,GAAA,CAAA;IACF,OAA0B,EAAA,EAAA;AACtB,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;qBACF,EAAA,GAAA,CAAA;IACF,OAA6B,EAAA,EAAA;AACzB,IAAA,IAAA,EAAA;AACA,GAAA,CAAA;eACF,EAAA,GAAA,CAAA;IACF,OAAiB,EAAA,SAAA;IACjB,IAAmB,EAAA;AACf,GAAA,CAAA;AACA,EAAA,mBAA+C,EAAA,GAAA,CAAA;WACjD,EAAA;AACF,GAAA,CAAA;wCACoC,CAAA;IACpC,OAAa,EAAA,EAAA;AAChB,IAAE,IAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settingsMachine.d.ts","sourceRoot":"","sources":["../../src/machines/settingsMachine.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,YAAY,EACZ,eAAe,EAMlB,MAAM,SAAS,CAAC;AAyFjB,eAAO,MAAM,eAAe;
|
|
1
|
+
{"version":3,"file":"settingsMachine.d.ts","sourceRoot":"","sources":["../../src/machines/settingsMachine.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,YAAY,EACZ,eAAe,EAMlB,MAAM,SAAS,CAAC;AAyFjB,eAAO,MAAM,eAAe;cAMN,eAAe;oBACT,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;sEAsIlE,CAAC"}
|