@driveflux/pdf 1.6.7 → 1.6.8

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.
Files changed (25) hide show
  1. package/dist/__mocks__/subscription.js +380 -122
  2. package/dist/components/FluxLogo.js +62 -3
  3. package/dist/components/StandardPage.js +97 -8
  4. package/dist/templates/QuotationPdf/CustomerSubscriptionSection.js +145 -27
  5. package/dist/templates/QuotationPdf/GFV.js +49 -12
  6. package/dist/templates/QuotationPdf/Header.js +63 -5
  7. package/dist/templates/QuotationPdf/Pricing.js +574 -204
  8. package/dist/templates/QuotationPdf/QuotationPdfPage.js +23 -3
  9. package/dist/templates/QuotationPdf/SectionBoxNew.js +34 -4
  10. package/dist/templates/QuotationPdf/TermsSection.js +42 -5
  11. package/dist/templates/QuotationPdf/VehiclePhotos.js +54 -24
  12. package/dist/templates/QuotationPdf/index.js +198 -11
  13. package/dist/templates/SubscriptionAgreement/Confirmation.js +66 -11
  14. package/dist/templates/SubscriptionAgreement/CoverPage.js +77 -10
  15. package/dist/templates/SubscriptionAgreement/CoverPageSection.js +16 -5
  16. package/dist/templates/SubscriptionAgreement/Details.js +69 -43
  17. package/dist/templates/SubscriptionAgreement/Footer.js +48 -6
  18. package/dist/templates/SubscriptionAgreement/Header.js +35 -5
  19. package/dist/templates/SubscriptionAgreement/LabelValue.js +25 -3
  20. package/dist/templates/SubscriptionAgreement/SubscriptionAgreementPage.js +26 -3
  21. package/dist/templates/SubscriptionAgreement/TermsOfUse.js +52 -3
  22. package/dist/templates/SubscriptionAgreement/TermsOfUseSubSection.js +97 -9
  23. package/dist/templates/SubscriptionAgreement/index.js +249 -15
  24. package/dist/utils.js +166 -16
  25. package/package.json +2 -2
@@ -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
- const Details = ({ tDetails, subscription }) => {
8
- const details = {
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?.number,
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?.make,
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: `${subscription.vehicle?.vehicleModel} ${subscription.vehicle?.variant}`,
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?.year,
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?.registrationNumber,
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
- ? format(subscription.endedAt, 'dd-MM-yyyy')
56
- : subscription.schedule?.endAt
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
- const border = `1px solid ${colors.primary2}`;
63
- return (_jsxs(View, { style: { borderLeft: border, borderRight: border }, children: [_jsx(View, { style: {
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
- }, children: _jsx(Text, { style: {
69
+ padding: 8
70
+ },
71
+ children: /*#__PURE__*/ _jsx(Text, {
72
+ style: {
68
73
  fontWeight: 'bold',
69
74
  textTransform: 'uppercase',
70
- letterSpacing: 1,
71
- }, children: tDetails.agreement }) }), Object.keys(details).map((key, i) => (_jsxs(View, { style: {
72
- padding: 8,
73
- paddingBottom: 16,
74
- rowGap: 8,
75
- borderTop: border,
76
- }, children: [_jsx(Text, { style: {
77
- textTransform: 'uppercase',
78
- color: colors.primary2,
79
- fontSize: 8,
80
- letterSpacing: 1,
81
- }, children: `${key} details` }), details[key].map((line) => (_jsx(LabelValue, { label: line.key, value: line.value }, line.key)))] }, key)))] }));
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
- const getPlanTranslation = (plan, vehicleType) => {
86
- switch (plan) {
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
- const getFullMileagePackageTranslation = (plan) => {
104
- switch (plan) {
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
- const Footer = ({ tComputerGenerated, tPage, tOf }) => {
5
- return (_jsxs(View, { fixed: true, style: {
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: `1px solid ${colors.links}`,
13
+ borderTop: "1px solid ".concat(colors.links),
11
14
  color: colors.primary2,
12
- fontSize: 8,
13
- }, children: [_jsx(Text, { children: tComputerGenerated }), _jsxs(View, { style: { flexDirection: 'row', columnGap: 4 }, children: [_jsx(Text, { children: tPage }), _jsx(Text, { style: { fontWeight: 'bold', color: colors.black }, render: ({ pageNumber }) => `${pageNumber}` }), _jsx(Text, { children: tOf }), _jsx(Text, { style: { fontWeight: 'bold', color: colors.black }, render: ({ totalPages }) => `${totalPages}` })] })] }));
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
- const Header = ({ tTitle, userId, subscriptionId }) => {
6
- return (_jsxs(View, { fixed: true, style: {
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
- }, children: [_jsx(Link, { src: "https://driveflux.com", children: _jsx(FluxLogo, {}) }), _jsxs(View, { style: { rowGap: 4, fontSize: 8, alignItems: 'flex-end' }, children: [_jsx(Text, { style: { fontWeight: 'bold' }, children: tTitle }), _jsx(Text, { style: { color: colors.primary2 }, children: `FLUX-${userId}-${subscriptionId}` })] })] }));
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
@@ -1,7 +1,29 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Text, View } from '@react-pdf/renderer';
3
- const LabelValue = ({ label, value }) => {
4
- return (_jsxs(View, { style: { flexDirection: 'row' }, children: [_jsx(Text, { style: { minWidth: 120, textTransform: 'capitalize' }, children: label }), _jsx(Text, { children: ':' }), _jsx(Text, { style: { paddingLeft: 16 }, children: value ? `${value}` : '-' })] }));
3
+ var LabelValue = function(param) {
4
+ var label = param.label, value = param.value;
5
+ return /*#__PURE__*/ _jsxs(View, {
6
+ style: {
7
+ flexDirection: 'row'
8
+ },
9
+ children: [
10
+ /*#__PURE__*/ _jsx(Text, {
11
+ style: {
12
+ minWidth: 120,
13
+ textTransform: 'capitalize'
14
+ },
15
+ children: label
16
+ }),
17
+ /*#__PURE__*/ _jsx(Text, {
18
+ children: ':'
19
+ }),
20
+ /*#__PURE__*/ _jsx(Text, {
21
+ style: {
22
+ paddingLeft: 16
23
+ },
24
+ children: value ? "".concat(value) : '-'
25
+ })
26
+ ]
27
+ });
5
28
  };
6
29
  export default LabelValue;
7
- //# sourceMappingURL=LabelValue.js.map
@@ -3,8 +3,31 @@ import { View } from '@react-pdf/renderer';
3
3
  import StandardPage from '../../components/StandardPage.js';
4
4
  import Footer from './Footer.js';
5
5
  import Header from './Header.js';
6
- const SubscriptionAgreementPage = ({ t, userId, subscriptionId, children, }) => {
7
- return (_jsxs(StandardPage, { style: { padding: 40, fontSize: 10 }, children: [_jsx(Header, { tTitle: t.title, userId: userId, subscriptionId: subscriptionId }), _jsx(View, { style: { flex: 1 }, children: children }), _jsx(Footer, { tComputerGenerated: t.computerGenerated, tPage: t.page, tOf: t.of })] }));
6
+ var SubscriptionAgreementPage = function(param) {
7
+ var t = param.t, userId = param.userId, subscriptionId = param.subscriptionId, children = param.children;
8
+ return /*#__PURE__*/ _jsxs(StandardPage, {
9
+ style: {
10
+ padding: 40,
11
+ fontSize: 10
12
+ },
13
+ children: [
14
+ /*#__PURE__*/ _jsx(Header, {
15
+ tTitle: t.title,
16
+ userId: userId,
17
+ subscriptionId: subscriptionId
18
+ }),
19
+ /*#__PURE__*/ _jsx(View, {
20
+ style: {
21
+ flex: 1
22
+ },
23
+ children: children
24
+ }),
25
+ /*#__PURE__*/ _jsx(Footer, {
26
+ tComputerGenerated: t.computerGenerated,
27
+ tPage: t.page,
28
+ tOf: t.of
29
+ })
30
+ ]
31
+ });
8
32
  };
9
33
  export default SubscriptionAgreementPage;
10
- //# sourceMappingURL=SubscriptionAgreementPage.js.map
@@ -1,8 +1,57 @@
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 TermsOfUseSubSection from './TermsOfUseSubSection.js';
4
- const TermsOfUse = ({ t }) => {
5
- return (_jsxs(View, { style: { rowGap: 16 }, children: [_jsx(Text, { style: { fontWeight: 'bold', textTransform: 'uppercase' }, children: t.title }), _jsx(View, { style: { rowGap: 16, lineHeight: 1.4 }, children: t.content.map((section, i) => (_jsxs(View, { style: { rowGap: 16 }, children: [_jsx(Text, { style: { fontWeight: 'bold' }, children: `${i + 1} ${section.title}` }), _jsx(View, { style: { rowGap: 16, paddingLeft: 16 }, children: section.subSections.map((subSection, j) => (_jsx(TermsOfUseSubSection, { indices: [i + 1, j + 1], subSection: subSection }, `${i + 1}.${j}`))) })] }, section.title))) })] }));
4
+ var TermsOfUse = function(param) {
5
+ var t = param.t;
6
+ return /*#__PURE__*/ _jsxs(View, {
7
+ style: {
8
+ rowGap: 16
9
+ },
10
+ children: [
11
+ /*#__PURE__*/ _jsx(Text, {
12
+ style: {
13
+ fontWeight: 'bold',
14
+ textTransform: 'uppercase'
15
+ },
16
+ children: t.title
17
+ }),
18
+ /*#__PURE__*/ _jsx(View, {
19
+ style: {
20
+ rowGap: 16,
21
+ lineHeight: 1.4
22
+ },
23
+ children: t.content.map(function(section, i) {
24
+ return /*#__PURE__*/ _jsxs(View, {
25
+ style: {
26
+ rowGap: 16
27
+ },
28
+ children: [
29
+ /*#__PURE__*/ _jsx(Text, {
30
+ style: {
31
+ fontWeight: 'bold'
32
+ },
33
+ children: "".concat(i + 1, " ").concat(section.title)
34
+ }),
35
+ /*#__PURE__*/ _jsx(View, {
36
+ style: {
37
+ rowGap: 16,
38
+ paddingLeft: 16
39
+ },
40
+ children: section.subSections.map(function(subSection, j) {
41
+ return /*#__PURE__*/ _jsx(TermsOfUseSubSection, {
42
+ indices: [
43
+ i + 1,
44
+ j + 1
45
+ ],
46
+ subSection: subSection
47
+ }, "".concat(i + 1, ".").concat(j));
48
+ })
49
+ })
50
+ ]
51
+ }, section.title);
52
+ })
53
+ })
54
+ ]
55
+ });
6
56
  };
7
57
  export default TermsOfUse;
8
- //# sourceMappingURL=TermsOfUse.js.map
@@ -1,14 +1,102 @@
1
+ function _array_like_to_array(arr, len) {
2
+ if (len == null || len > arr.length) len = arr.length;
3
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
+ return arr2;
5
+ }
6
+ function _array_without_holes(arr) {
7
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
8
+ }
9
+ function _iterable_to_array(iter) {
10
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
11
+ }
12
+ function _non_iterable_spread() {
13
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14
+ }
15
+ function _to_consumable_array(arr) {
16
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
17
+ }
18
+ function _unsupported_iterable_to_array(o, minLen) {
19
+ if (!o) return;
20
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
21
+ var n = Object.prototype.toString.call(o).slice(8, -1);
22
+ if (n === "Object" && o.constructor) n = o.constructor.name;
23
+ if (n === "Map" || n === "Set") return Array.from(n);
24
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
25
+ }
1
26
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
27
  import { Text, View } from '@react-pdf/renderer';
3
28
  import { useMemo } from 'react';
4
- const TermsOfUseSubSection = ({ indices, subSection }) => {
5
- const { indicesString, paddingLeft } = useMemo(() => ({
6
- indicesString: indices.reduce((prev, curr, i) => `${prev}${curr}${i === indices.length - 1 ? '' : '.'}`, ''),
7
- paddingLeft: Math.max(indices.length - 2, 0) * 16,
8
- }), [indices.length, indices.reduce]);
9
- return typeof subSection === 'string' ? (_jsxs(View, { style: { flexDirection: 'row', paddingLeft, columnGap: 16 }, children: [_jsx(Text, { style: { fontWeight: 'bold' }, children: indicesString }), _jsx(Text, { style: { textAlign: 'justify', flex: 1 }, children: subSection })] }, indicesString)) : 'subSections' in subSection ? (_jsxs(View, { style: { gap: 16 }, children: [_jsxs(View, { style: { flexDirection: 'row', paddingLeft, columnGap: 16 }, children: [_jsx(Text, { style: { fontWeight: 'bold' }, children: indicesString }), _jsx(Text, { style: { textAlign: 'justify', flex: 1 }, children: subSection.paragraph })] }, indicesString), subSection.subSections.map((subSection, i) => (_jsx(TermsOfUseSubSection, { indices: [...indices, i + 1], subSection: subSection }, `${indices}.${
10
- // biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
11
- i}`)))] }, indicesString)) : null;
29
+ var TermsOfUseSubSection = function(param) {
30
+ var indices = param.indices, subSection = param.subSection;
31
+ var _useMemo = useMemo(function() {
32
+ return {
33
+ indicesString: indices.reduce(function(prev, curr, i) {
34
+ return "".concat(prev).concat(curr).concat(i === indices.length - 1 ? '' : '.');
35
+ }, ''),
36
+ paddingLeft: Math.max(indices.length - 2, 0) * 16
37
+ };
38
+ }, [
39
+ indices.length,
40
+ indices.reduce
41
+ ]), indicesString = _useMemo.indicesString, paddingLeft = _useMemo.paddingLeft;
42
+ return typeof subSection === 'string' ? /*#__PURE__*/ _jsxs(View, {
43
+ style: {
44
+ flexDirection: 'row',
45
+ paddingLeft: paddingLeft,
46
+ columnGap: 16
47
+ },
48
+ children: [
49
+ /*#__PURE__*/ _jsx(Text, {
50
+ style: {
51
+ fontWeight: 'bold'
52
+ },
53
+ children: indicesString
54
+ }),
55
+ /*#__PURE__*/ _jsx(Text, {
56
+ style: {
57
+ textAlign: 'justify',
58
+ flex: 1
59
+ },
60
+ children: subSection
61
+ })
62
+ ]
63
+ }, indicesString) : 'subSections' in subSection ? /*#__PURE__*/ _jsxs(View, {
64
+ style: {
65
+ gap: 16
66
+ },
67
+ children: [
68
+ /*#__PURE__*/ _jsxs(View, {
69
+ style: {
70
+ flexDirection: 'row',
71
+ paddingLeft: paddingLeft,
72
+ columnGap: 16
73
+ },
74
+ children: [
75
+ /*#__PURE__*/ _jsx(Text, {
76
+ style: {
77
+ fontWeight: 'bold'
78
+ },
79
+ children: indicesString
80
+ }),
81
+ /*#__PURE__*/ _jsx(Text, {
82
+ style: {
83
+ textAlign: 'justify',
84
+ flex: 1
85
+ },
86
+ children: subSection.paragraph
87
+ })
88
+ ]
89
+ }, indicesString),
90
+ subSection.subSections.map(function(subSection, i) {
91
+ return /*#__PURE__*/ _jsx(TermsOfUseSubSection, {
92
+ indices: _to_consumable_array(indices).concat([
93
+ i + 1
94
+ ]),
95
+ subSection: subSection
96
+ }, "".// biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
97
+ concat(indices, ".").concat(i));
98
+ })
99
+ ]
100
+ }, indicesString) : null;
12
101
  };
13
102
  export default TermsOfUseSubSection;
14
- //# sourceMappingURL=TermsOfUseSubSection.js.map