@driveflux/pdf 1.6.65 → 1.6.66
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/dist/__mocks__/quotation.js +10 -11
- package/dist/__mocks__/subscription.js +381 -123
- package/dist/__mocks__/tou.js +9 -10
- package/dist/components/FluxLogo.js +62 -3
- package/dist/components/StandardPage.js +97 -8
- package/dist/debug.js +221 -29
- package/dist/index.js +0 -1
- package/dist/templates/QuotationPdf/CustomerSubscriptionSection.js +145 -27
- package/dist/templates/QuotationPdf/GFV.js +49 -12
- package/dist/templates/QuotationPdf/Header.js +63 -5
- package/dist/templates/QuotationPdf/Pricing.js +573 -201
- package/dist/templates/QuotationPdf/QuotationPdfPage.js +23 -3
- package/dist/templates/QuotationPdf/SectionBoxNew.js +34 -4
- package/dist/templates/QuotationPdf/TermsSection.js +42 -5
- package/dist/templates/QuotationPdf/VehiclePhotos.js +54 -24
- package/dist/templates/QuotationPdf/index.js +198 -11
- package/dist/templates/QuotationPdf/translations.js +34 -22
- package/dist/templates/QuotationPdf/utils.js +59 -29
- package/dist/templates/SubscriptionAgreement/Confirmation.js +65 -10
- package/dist/templates/SubscriptionAgreement/CoverPage.js +77 -10
- package/dist/templates/SubscriptionAgreement/CoverPageSection.js +16 -5
- package/dist/templates/SubscriptionAgreement/Details.js +69 -43
- package/dist/templates/SubscriptionAgreement/Footer.js +48 -6
- package/dist/templates/SubscriptionAgreement/Header.js +35 -5
- package/dist/templates/SubscriptionAgreement/LabelValue.js +25 -3
- package/dist/templates/SubscriptionAgreement/SubscriptionAgreementPage.js +26 -3
- package/dist/templates/SubscriptionAgreement/TermsOfUse.js +92 -10
- package/dist/templates/SubscriptionAgreement/TermsOfUseSubSection.js +97 -9
- package/dist/templates/SubscriptionAgreement/index.js +251 -15
- package/dist/templates/SubscriptionAgreement/translations.js +194 -193
- package/dist/templates/SubscriptionAgreement/types.js +1 -2
- package/dist/templates/SubscriptionAgreement/utils.js +3 -5
- package/dist/templates/index.js +0 -1
- package/dist/theme/colors.js +44 -63
- package/dist/theme/index.js +0 -1
- package/dist/types.js +1 -2
- package/dist/utils.js +166 -16
- package/dist/watch.js +3 -4
- package/package.json +2 -2
|
@@ -1,13 +1,44 @@
|
|
|
1
|
+
function _object_without_properties(source, excluded) {
|
|
2
|
+
if (source == null) return {};
|
|
3
|
+
var target = _object_without_properties_loose(source, excluded);
|
|
4
|
+
var key, i;
|
|
5
|
+
if (Object.getOwnPropertySymbols) {
|
|
6
|
+
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
|
|
7
|
+
for(i = 0; i < sourceSymbolKeys.length; i++){
|
|
8
|
+
key = sourceSymbolKeys[i];
|
|
9
|
+
if (excluded.indexOf(key) >= 0) continue;
|
|
10
|
+
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
11
|
+
target[key] = source[key];
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return target;
|
|
15
|
+
}
|
|
16
|
+
function _object_without_properties_loose(source, excluded) {
|
|
17
|
+
if (source == null) return {};
|
|
18
|
+
var target = {};
|
|
19
|
+
var sourceKeys = Object.keys(source);
|
|
20
|
+
var key, i;
|
|
21
|
+
for(i = 0; i < sourceKeys.length; i++){
|
|
22
|
+
key = sourceKeys[i];
|
|
23
|
+
if (excluded.indexOf(key) >= 0) continue;
|
|
24
|
+
target[key] = source[key];
|
|
25
|
+
}
|
|
26
|
+
return target;
|
|
27
|
+
}
|
|
1
28
|
import { formatMoney } from '@driveflux/format-money';
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
29
|
+
export var formatAddress = function(originalAddress) {
|
|
30
|
+
var coordinates = originalAddress.coordinates, metadata = originalAddress.metadata, address = _object_without_properties(originalAddress, [
|
|
31
|
+
"coordinates",
|
|
32
|
+
"metadata"
|
|
33
|
+
]);
|
|
34
|
+
return Object.keys(address).filter(function(key) {
|
|
35
|
+
return key !== 'name' && !!address[key];
|
|
36
|
+
}).map(function(a) {
|
|
37
|
+
return address[a];
|
|
38
|
+
}).join(', ');
|
|
8
39
|
};
|
|
9
|
-
export
|
|
10
|
-
switch
|
|
40
|
+
export var getSimplifiedPlanTranslation = function(plan) {
|
|
41
|
+
switch(plan){
|
|
11
42
|
case 'plan60':
|
|
12
43
|
return '60 Months';
|
|
13
44
|
case 'plan36':
|
|
@@ -24,8 +55,8 @@ export const getSimplifiedPlanTranslation = (plan) => {
|
|
|
24
55
|
return 'Unknown Plan';
|
|
25
56
|
}
|
|
26
57
|
};
|
|
27
|
-
export
|
|
28
|
-
switch
|
|
58
|
+
export var getMileagePackageTranslation = function(mileagePackage) {
|
|
59
|
+
switch(mileagePackage){
|
|
29
60
|
case 'lite':
|
|
30
61
|
return 'Lite';
|
|
31
62
|
case 'standard':
|
|
@@ -38,8 +69,8 @@ export const getMileagePackageTranslation = (mileagePackage) => {
|
|
|
38
69
|
return 'Unknown Mileage Package';
|
|
39
70
|
}
|
|
40
71
|
};
|
|
41
|
-
export
|
|
42
|
-
switch
|
|
72
|
+
export var getFullMileagePackageTranslation = function(plan) {
|
|
73
|
+
switch(plan){
|
|
43
74
|
case 'lite':
|
|
44
75
|
return 'Lite - 1,250KM';
|
|
45
76
|
case 'standard':
|
|
@@ -52,25 +83,25 @@ export const getFullMileagePackageTranslation = (plan) => {
|
|
|
52
83
|
return 'Unknown Mileage Package';
|
|
53
84
|
}
|
|
54
85
|
};
|
|
55
|
-
export
|
|
56
|
-
|
|
57
|
-
switch
|
|
86
|
+
export var getPromoNotes = function(amount, discount) {
|
|
87
|
+
var discountType = discount.discountType, discountValue = discount.discountValue, maxRedemptions = discount.maxRedemptions;
|
|
88
|
+
switch(discountType){
|
|
58
89
|
case 'percentage':
|
|
59
|
-
return
|
|
60
|
-
case 'fixed':
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
?
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
90
|
+
return "Enjoy ".concat(discountValue * 100, "% off for ").concat(maxRedemptions, " month(s) for this vehicle.");
|
|
91
|
+
case 'fixed':
|
|
92
|
+
{
|
|
93
|
+
var money = formatMoney(discountValue);
|
|
94
|
+
return amount <= 0 ? "Enjoy free for ".concat(maxRedemptions, " month(s).") : "Enjoy ".concat(money, " off for the first ").concat(maxRedemptions, " month(s), then your subscription will switch to the regular price.");
|
|
95
|
+
}
|
|
96
|
+
case 'forceAmount':
|
|
97
|
+
{
|
|
98
|
+
var money1 = formatMoney(Math.min(amount, discountValue));
|
|
99
|
+
return "Enjoy only ".concat(money1, " for ").concat(maxRedemptions, " month(s), then your subscription will switch to the regular price.");
|
|
100
|
+
}
|
|
70
101
|
}
|
|
71
102
|
};
|
|
72
|
-
export
|
|
73
|
-
switch
|
|
103
|
+
export var getInspectionTypeTranslation = function(inspectionType) {
|
|
104
|
+
switch(inspectionType){
|
|
74
105
|
case 'exterior':
|
|
75
106
|
return 'Exterior';
|
|
76
107
|
case 'interior':
|
|
@@ -85,4 +116,3 @@ export const getInspectionTypeTranslation = (inspectionType) => {
|
|
|
85
116
|
return inspectionType;
|
|
86
117
|
}
|
|
87
118
|
};
|
|
88
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -4,22 +4,77 @@ import { Image, Text, View } from '@react-pdf/renderer';
|
|
|
4
4
|
import { format } from 'date-fns';
|
|
5
5
|
import { colors } from '../../theme/index.js';
|
|
6
6
|
import LabelValue from './LabelValue.js';
|
|
7
|
-
|
|
7
|
+
var Confirmation = function(param) {
|
|
8
|
+
var tConfirmation = param.tConfirmation, subscription = param.subscription, signature = param.signature;
|
|
9
|
+
var _subscription_user_identification;
|
|
8
10
|
if (!signature.signature) {
|
|
9
11
|
throw new Error('Missing signature');
|
|
10
12
|
}
|
|
11
|
-
|
|
12
|
-
return
|
|
13
|
+
var border = "1px solid ".concat(colors.primary2);
|
|
14
|
+
return /*#__PURE__*/ _jsxs(View, {
|
|
15
|
+
style: {
|
|
16
|
+
borderLeft: border,
|
|
17
|
+
borderRight: border,
|
|
18
|
+
borderBottom: border
|
|
19
|
+
},
|
|
20
|
+
children: [
|
|
21
|
+
/*#__PURE__*/ _jsx(View, {
|
|
22
|
+
style: {
|
|
13
23
|
backgroundColor: colors.primary1,
|
|
14
24
|
borderTop: border,
|
|
15
|
-
padding: 8
|
|
16
|
-
},
|
|
25
|
+
padding: 8
|
|
26
|
+
},
|
|
27
|
+
children: /*#__PURE__*/ _jsx(Text, {
|
|
28
|
+
style: {
|
|
17
29
|
fontWeight: 'bold',
|
|
18
30
|
textTransform: 'uppercase',
|
|
19
|
-
letterSpacing: 1
|
|
20
|
-
},
|
|
21
|
-
|
|
22
|
-
|
|
31
|
+
letterSpacing: 1
|
|
32
|
+
},
|
|
33
|
+
children: tConfirmation.title
|
|
34
|
+
})
|
|
35
|
+
}),
|
|
36
|
+
/*#__PURE__*/ _jsxs(View, {
|
|
37
|
+
style: {
|
|
38
|
+
padding: 8,
|
|
39
|
+
paddingBottom: 16,
|
|
40
|
+
rowGap: 8,
|
|
41
|
+
borderTop: border
|
|
42
|
+
},
|
|
43
|
+
children: [
|
|
44
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
45
|
+
children: tConfirmation.agreementText(subscription.businessId ? 'business' : 'member')
|
|
46
|
+
}),
|
|
47
|
+
/*#__PURE__*/ _jsx(View, {
|
|
48
|
+
style: {
|
|
49
|
+
height: 160,
|
|
50
|
+
alignItems: 'flex-start'
|
|
51
|
+
},
|
|
52
|
+
children: /*#__PURE__*/ _jsx(Image, {
|
|
53
|
+
src: signature.signature || ''
|
|
54
|
+
})
|
|
55
|
+
}),
|
|
56
|
+
/*#__PURE__*/ _jsxs(View, {
|
|
57
|
+
style: {
|
|
58
|
+
rowGap: 8
|
|
59
|
+
},
|
|
60
|
+
children: [
|
|
61
|
+
/*#__PURE__*/ _jsx(LabelValue, {
|
|
62
|
+
label: tConfirmation.name,
|
|
63
|
+
value: userName(subscription.user)
|
|
64
|
+
}),
|
|
65
|
+
/*#__PURE__*/ _jsx(LabelValue, {
|
|
66
|
+
label: tConfirmation.idOrPassportNo,
|
|
67
|
+
value: (_subscription_user_identification = subscription.user.identification) === null || _subscription_user_identification === void 0 ? void 0 : _subscription_user_identification.number
|
|
68
|
+
}),
|
|
69
|
+
/*#__PURE__*/ _jsx(LabelValue, {
|
|
70
|
+
label: tConfirmation.date,
|
|
71
|
+
value: signature.signedAt ? format(signature.signedAt, 'dd-MM-yyyy hh:mm a') : undefined
|
|
72
|
+
})
|
|
73
|
+
]
|
|
74
|
+
})
|
|
75
|
+
]
|
|
76
|
+
})
|
|
77
|
+
]
|
|
78
|
+
});
|
|
23
79
|
};
|
|
24
80
|
export default Confirmation;
|
|
25
|
-
//# sourceMappingURL=Confirmation.js.map
|
|
@@ -5,24 +5,91 @@ import { format } from 'date-fns';
|
|
|
5
5
|
import { colors } from '../../theme/colors.js';
|
|
6
6
|
import CoverPageSection from './CoverPageSection.js';
|
|
7
7
|
import LabelValue from './LabelValue.js';
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
var CoverPage = function(param) {
|
|
9
|
+
var tTitle = param.tTitle, tCover = param.tCover, signedAt = param.signedAt, user = param.user;
|
|
10
|
+
var _user_identification;
|
|
11
|
+
return /*#__PURE__*/ _jsxs(View, {
|
|
12
|
+
style: {
|
|
13
|
+
flex: 1,
|
|
14
|
+
paddingVertical: 80,
|
|
15
|
+
justifyContent: 'space-between'
|
|
16
|
+
},
|
|
17
|
+
children: [
|
|
18
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
19
|
+
style: {
|
|
10
20
|
fontWeight: 'bold',
|
|
11
21
|
fontSize: 40,
|
|
12
22
|
textTransform: 'uppercase',
|
|
13
|
-
flex: 1
|
|
14
|
-
},
|
|
23
|
+
flex: 1
|
|
24
|
+
},
|
|
25
|
+
children: tTitle
|
|
26
|
+
}),
|
|
27
|
+
/*#__PURE__*/ _jsxs(View, {
|
|
28
|
+
style: {
|
|
15
29
|
padding: 16,
|
|
16
30
|
rowGap: 32,
|
|
17
|
-
border:
|
|
18
|
-
fontSize: 10
|
|
19
|
-
},
|
|
31
|
+
border: "1px solid ".concat(colors.primary2),
|
|
32
|
+
fontSize: 10
|
|
33
|
+
},
|
|
34
|
+
children: [
|
|
35
|
+
/*#__PURE__*/ _jsx(CoverPageSection, {
|
|
36
|
+
title: tCover.effectiveDate,
|
|
37
|
+
children: /*#__PURE__*/ _jsxs(View, {
|
|
38
|
+
style: {
|
|
39
|
+
flexDirection: 'row',
|
|
40
|
+
columnGap: 4
|
|
41
|
+
},
|
|
42
|
+
children: [
|
|
43
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
44
|
+
style: {
|
|
45
|
+
textDecoration: 'underline'
|
|
46
|
+
},
|
|
47
|
+
children: format(signedAt, 'do')
|
|
48
|
+
}),
|
|
49
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
50
|
+
children: tCover.of
|
|
51
|
+
}),
|
|
52
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
53
|
+
style: {
|
|
54
|
+
textDecoration: 'underline'
|
|
55
|
+
},
|
|
56
|
+
children: format(signedAt, 'MMM')
|
|
57
|
+
}),
|
|
58
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
59
|
+
children: format(signedAt, 'yyyy')
|
|
60
|
+
})
|
|
61
|
+
]
|
|
62
|
+
})
|
|
63
|
+
}),
|
|
64
|
+
/*#__PURE__*/ _jsxs(CoverPageSection, {
|
|
65
|
+
title: tCover.agreementBetween,
|
|
66
|
+
children: [
|
|
67
|
+
/*#__PURE__*/ _jsx(LabelValue, {
|
|
68
|
+
label: tCover.name,
|
|
69
|
+
value: userName(user)
|
|
70
|
+
}),
|
|
71
|
+
/*#__PURE__*/ _jsx(LabelValue, {
|
|
72
|
+
label: tCover.idOrPassportNo,
|
|
73
|
+
value: (_user_identification = user.identification) === null || _user_identification === void 0 ? void 0 : _user_identification.number
|
|
74
|
+
})
|
|
75
|
+
]
|
|
76
|
+
}),
|
|
77
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
78
|
+
style: {
|
|
20
79
|
fontSize: 8,
|
|
21
80
|
fontWeight: 'bold',
|
|
22
81
|
color: colors.primary3,
|
|
23
82
|
textTransform: 'uppercase',
|
|
24
|
-
letterSpacing: 1
|
|
25
|
-
},
|
|
83
|
+
letterSpacing: 1
|
|
84
|
+
},
|
|
85
|
+
children: tCover.and
|
|
86
|
+
}),
|
|
87
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
88
|
+
children: "FLUX Sdn Bhd (1264766-H)"
|
|
89
|
+
})
|
|
90
|
+
]
|
|
91
|
+
})
|
|
92
|
+
]
|
|
93
|
+
});
|
|
26
94
|
};
|
|
27
95
|
export default CoverPage;
|
|
28
|
-
//# sourceMappingURL=CoverPage.js.map
|
|
@@ -1,14 +1,25 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Text, View } from '@react-pdf/renderer';
|
|
3
3
|
import { colors } from '../../theme/colors.js';
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
var CoverPageSection = function(param) {
|
|
5
|
+
var title = param.title, children = param.children;
|
|
6
|
+
return /*#__PURE__*/ _jsxs(View, {
|
|
7
|
+
style: {
|
|
8
|
+
rowGap: 16
|
|
9
|
+
},
|
|
10
|
+
children: [
|
|
11
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
12
|
+
style: {
|
|
6
13
|
fontSize: 8,
|
|
7
14
|
fontWeight: 'bold',
|
|
8
15
|
color: colors.primary3,
|
|
9
16
|
textTransform: 'uppercase',
|
|
10
|
-
letterSpacing: 1
|
|
11
|
-
},
|
|
17
|
+
letterSpacing: 1
|
|
18
|
+
},
|
|
19
|
+
children: "".concat(title, ":")
|
|
20
|
+
}),
|
|
21
|
+
children
|
|
22
|
+
]
|
|
23
|
+
});
|
|
12
24
|
};
|
|
13
25
|
export default CoverPageSection;
|
|
14
|
-
//# sourceMappingURL=CoverPageSection.js.map
|
|
@@ -4,86 +4,113 @@ import { format } from '@driveflux/time';
|
|
|
4
4
|
import { Text, View } from '@react-pdf/renderer';
|
|
5
5
|
import { colors } from '../../theme/index.js';
|
|
6
6
|
import LabelValue from './LabelValue.js';
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
var Details = function(param) {
|
|
8
|
+
var tDetails = param.tDetails, subscription = param.subscription;
|
|
9
|
+
var _subscription_user_identification, _subscription_vehicle, _subscription_vehicle1, _subscription_vehicle2, _subscription_vehicle3, _subscription_vehicle4, _subscription_schedule, _subscription_schedule1;
|
|
10
|
+
var details = {
|
|
9
11
|
member: [
|
|
10
12
|
{
|
|
11
13
|
key: tDetails.member.name,
|
|
12
|
-
value: userName(subscription.user)
|
|
14
|
+
value: userName(subscription.user)
|
|
13
15
|
},
|
|
14
16
|
{
|
|
15
17
|
key: tDetails.member.idOrPassportNo,
|
|
16
|
-
value: subscription.user.identification
|
|
17
|
-
}
|
|
18
|
+
value: (_subscription_user_identification = subscription.user.identification) === null || _subscription_user_identification === void 0 ? void 0 : _subscription_user_identification.number
|
|
19
|
+
}
|
|
18
20
|
],
|
|
19
21
|
vehicle: [
|
|
20
22
|
{
|
|
21
23
|
key: tDetails.vehicle.make,
|
|
22
|
-
value: subscription.vehicle
|
|
24
|
+
value: (_subscription_vehicle = subscription.vehicle) === null || _subscription_vehicle === void 0 ? void 0 : _subscription_vehicle.make
|
|
23
25
|
},
|
|
24
26
|
{
|
|
25
27
|
key: tDetails.vehicle.model,
|
|
26
|
-
value:
|
|
28
|
+
value: "".concat((_subscription_vehicle1 = subscription.vehicle) === null || _subscription_vehicle1 === void 0 ? void 0 : _subscription_vehicle1.vehicleModel, " ").concat((_subscription_vehicle2 = subscription.vehicle) === null || _subscription_vehicle2 === void 0 ? void 0 : _subscription_vehicle2.variant)
|
|
27
29
|
},
|
|
28
30
|
{
|
|
29
31
|
key: tDetails.vehicle.year,
|
|
30
|
-
value: subscription.vehicle
|
|
32
|
+
value: (_subscription_vehicle3 = subscription.vehicle) === null || _subscription_vehicle3 === void 0 ? void 0 : _subscription_vehicle3.year
|
|
31
33
|
},
|
|
32
34
|
{
|
|
33
35
|
key: tDetails.vehicle.plateNo,
|
|
34
|
-
value: subscription.vehicle
|
|
35
|
-
}
|
|
36
|
+
value: (_subscription_vehicle4 = subscription.vehicle) === null || _subscription_vehicle4 === void 0 ? void 0 : _subscription_vehicle4.registrationNumber
|
|
37
|
+
}
|
|
36
38
|
],
|
|
37
39
|
subscription: [
|
|
38
40
|
{
|
|
39
41
|
key: tDetails.subscription.subscriptionPlan,
|
|
40
|
-
value: getPlanTranslation(subscription.plan)
|
|
42
|
+
value: getPlanTranslation(subscription.plan)
|
|
41
43
|
},
|
|
42
44
|
{
|
|
43
45
|
key: tDetails.subscription.mileagePackage,
|
|
44
|
-
value: getFullMileagePackageTranslation(subscription.mileagePackage)
|
|
46
|
+
value: getFullMileagePackageTranslation(subscription.mileagePackage)
|
|
45
47
|
},
|
|
46
48
|
{
|
|
47
49
|
key: tDetails.subscription.startDate,
|
|
48
|
-
value: subscription.startedAt
|
|
49
|
-
? format(subscription.startedAt, 'dd-MM-yyyy')
|
|
50
|
-
: undefined,
|
|
50
|
+
value: subscription.startedAt ? format(subscription.startedAt, 'dd-MM-yyyy') : undefined
|
|
51
51
|
},
|
|
52
52
|
{
|
|
53
53
|
key: tDetails.subscription.endDate,
|
|
54
|
-
value: subscription.endedAt
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
? format(subscription.schedule?.endAt, 'dd-MM-yyyy')
|
|
58
|
-
: undefined,
|
|
59
|
-
},
|
|
60
|
-
],
|
|
54
|
+
value: subscription.endedAt ? format(subscription.endedAt, 'dd-MM-yyyy') : ((_subscription_schedule = subscription.schedule) === null || _subscription_schedule === void 0 ? void 0 : _subscription_schedule.endAt) ? format((_subscription_schedule1 = subscription.schedule) === null || _subscription_schedule1 === void 0 ? void 0 : _subscription_schedule1.endAt, 'dd-MM-yyyy') : undefined
|
|
55
|
+
}
|
|
56
|
+
]
|
|
61
57
|
};
|
|
62
|
-
|
|
63
|
-
return
|
|
58
|
+
var border = "1px solid ".concat(colors.primary2);
|
|
59
|
+
return /*#__PURE__*/ _jsxs(View, {
|
|
60
|
+
style: {
|
|
61
|
+
borderLeft: border,
|
|
62
|
+
borderRight: border
|
|
63
|
+
},
|
|
64
|
+
children: [
|
|
65
|
+
/*#__PURE__*/ _jsx(View, {
|
|
66
|
+
style: {
|
|
64
67
|
backgroundColor: colors.primary1,
|
|
65
68
|
borderTop: border,
|
|
66
|
-
padding: 8
|
|
67
|
-
},
|
|
69
|
+
padding: 8
|
|
70
|
+
},
|
|
71
|
+
children: /*#__PURE__*/ _jsx(Text, {
|
|
72
|
+
style: {
|
|
68
73
|
fontWeight: 'bold',
|
|
69
74
|
textTransform: 'uppercase',
|
|
70
|
-
letterSpacing: 1
|
|
71
|
-
},
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
75
|
+
letterSpacing: 1
|
|
76
|
+
},
|
|
77
|
+
children: tDetails.agreement
|
|
78
|
+
})
|
|
79
|
+
}),
|
|
80
|
+
Object.keys(details).map(function(key, i) {
|
|
81
|
+
return /*#__PURE__*/ _jsxs(View, {
|
|
82
|
+
style: {
|
|
83
|
+
padding: 8,
|
|
84
|
+
paddingBottom: 16,
|
|
85
|
+
rowGap: 8,
|
|
86
|
+
borderTop: border
|
|
87
|
+
},
|
|
88
|
+
children: [
|
|
89
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
90
|
+
style: {
|
|
91
|
+
textTransform: 'uppercase',
|
|
92
|
+
color: colors.primary2,
|
|
93
|
+
fontSize: 8,
|
|
94
|
+
letterSpacing: 1
|
|
95
|
+
},
|
|
96
|
+
children: "".concat(key, " details")
|
|
97
|
+
}),
|
|
98
|
+
details[key].map(function(line) {
|
|
99
|
+
return /*#__PURE__*/ _jsx(LabelValue, {
|
|
100
|
+
label: line.key,
|
|
101
|
+
value: line.value
|
|
102
|
+
}, line.key);
|
|
103
|
+
})
|
|
104
|
+
]
|
|
105
|
+
}, key);
|
|
106
|
+
})
|
|
107
|
+
]
|
|
108
|
+
});
|
|
82
109
|
};
|
|
83
110
|
export default Details;
|
|
84
111
|
// TODO: replace this with dump's once the package is ready
|
|
85
|
-
|
|
86
|
-
switch
|
|
112
|
+
var getPlanTranslation = function(plan, vehicleType) {
|
|
113
|
+
switch(plan){
|
|
87
114
|
case 'plan60':
|
|
88
115
|
return vehicleType === 'motorcycle' ? '60 Months' : '60 Months (Basic)';
|
|
89
116
|
case 'plan36':
|
|
@@ -100,8 +127,8 @@ const getPlanTranslation = (plan, vehicleType) => {
|
|
|
100
127
|
return 'Unknown Plan';
|
|
101
128
|
}
|
|
102
129
|
};
|
|
103
|
-
|
|
104
|
-
switch
|
|
130
|
+
var getFullMileagePackageTranslation = function(plan) {
|
|
131
|
+
switch(plan){
|
|
105
132
|
case 'lite':
|
|
106
133
|
return 'Lite - 1,250KM';
|
|
107
134
|
case 'standard':
|
|
@@ -114,4 +141,3 @@ const getFullMileagePackageTranslation = (plan) => {
|
|
|
114
141
|
return 'Unknown Mileage Package';
|
|
115
142
|
}
|
|
116
143
|
};
|
|
117
|
-
//# sourceMappingURL=Details.js.map
|
|
@@ -1,16 +1,58 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Text, View } from '@react-pdf/renderer';
|
|
3
3
|
import { colors } from '../../theme/colors.js';
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
var Footer = function(param) {
|
|
5
|
+
var tComputerGenerated = param.tComputerGenerated, tPage = param.tPage, tOf = param.tOf;
|
|
6
|
+
return /*#__PURE__*/ _jsxs(View, {
|
|
7
|
+
fixed: true,
|
|
8
|
+
style: {
|
|
6
9
|
justifyContent: 'space-between',
|
|
7
10
|
flexDirection: 'row',
|
|
8
11
|
paddingTop: 16,
|
|
9
12
|
marginTop: 16,
|
|
10
|
-
borderTop:
|
|
13
|
+
borderTop: "1px solid ".concat(colors.links),
|
|
11
14
|
color: colors.primary2,
|
|
12
|
-
fontSize: 8
|
|
13
|
-
},
|
|
15
|
+
fontSize: 8
|
|
16
|
+
},
|
|
17
|
+
children: [
|
|
18
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
19
|
+
children: tComputerGenerated
|
|
20
|
+
}),
|
|
21
|
+
/*#__PURE__*/ _jsxs(View, {
|
|
22
|
+
style: {
|
|
23
|
+
flexDirection: 'row',
|
|
24
|
+
columnGap: 4
|
|
25
|
+
},
|
|
26
|
+
children: [
|
|
27
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
28
|
+
children: tPage
|
|
29
|
+
}),
|
|
30
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
31
|
+
style: {
|
|
32
|
+
fontWeight: 'bold',
|
|
33
|
+
color: colors.black
|
|
34
|
+
},
|
|
35
|
+
render: function(param) {
|
|
36
|
+
var pageNumber = param.pageNumber;
|
|
37
|
+
return "".concat(pageNumber);
|
|
38
|
+
}
|
|
39
|
+
}),
|
|
40
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
41
|
+
children: tOf
|
|
42
|
+
}),
|
|
43
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
44
|
+
style: {
|
|
45
|
+
fontWeight: 'bold',
|
|
46
|
+
color: colors.black
|
|
47
|
+
},
|
|
48
|
+
render: function(param) {
|
|
49
|
+
var totalPages = param.totalPages;
|
|
50
|
+
return "".concat(totalPages);
|
|
51
|
+
}
|
|
52
|
+
})
|
|
53
|
+
]
|
|
54
|
+
})
|
|
55
|
+
]
|
|
56
|
+
});
|
|
14
57
|
};
|
|
15
58
|
export default Footer;
|
|
16
|
-
//# sourceMappingURL=Footer.js.map
|
|
@@ -2,15 +2,45 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { Link, Text, View } from '@react-pdf/renderer';
|
|
3
3
|
import FluxLogo from '../../components/FluxLogo.js';
|
|
4
4
|
import { colors } from '../../theme/colors.js';
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
var Header = function(param) {
|
|
6
|
+
var tTitle = param.tTitle, userId = param.userId, subscriptionId = param.subscriptionId;
|
|
7
|
+
return /*#__PURE__*/ _jsxs(View, {
|
|
8
|
+
fixed: true,
|
|
9
|
+
style: {
|
|
7
10
|
flexDirection: 'row',
|
|
8
11
|
justifyContent: 'space-between',
|
|
9
12
|
alignItems: 'center',
|
|
10
13
|
paddingBottom: 40,
|
|
11
14
|
// to not get pushed by the content
|
|
12
|
-
minHeight: 69
|
|
13
|
-
},
|
|
15
|
+
minHeight: 69
|
|
16
|
+
},
|
|
17
|
+
children: [
|
|
18
|
+
/*#__PURE__*/ _jsx(Link, {
|
|
19
|
+
src: "https://driveflux.com",
|
|
20
|
+
children: /*#__PURE__*/ _jsx(FluxLogo, {})
|
|
21
|
+
}),
|
|
22
|
+
/*#__PURE__*/ _jsxs(View, {
|
|
23
|
+
style: {
|
|
24
|
+
rowGap: 4,
|
|
25
|
+
fontSize: 8,
|
|
26
|
+
alignItems: 'flex-end'
|
|
27
|
+
},
|
|
28
|
+
children: [
|
|
29
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
30
|
+
style: {
|
|
31
|
+
fontWeight: 'bold'
|
|
32
|
+
},
|
|
33
|
+
children: tTitle
|
|
34
|
+
}),
|
|
35
|
+
/*#__PURE__*/ _jsx(Text, {
|
|
36
|
+
style: {
|
|
37
|
+
color: colors.primary2
|
|
38
|
+
},
|
|
39
|
+
children: "FLUX-".concat(userId, "-").concat(subscriptionId)
|
|
40
|
+
})
|
|
41
|
+
]
|
|
42
|
+
})
|
|
43
|
+
]
|
|
44
|
+
});
|
|
14
45
|
};
|
|
15
46
|
export default Header;
|
|
16
|
-
//# sourceMappingURL=Header.js.map
|