@driveflux/pdf 4.0.77 → 4.0.79

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 (35) hide show
  1. package/dist/components/FluxLogo.js +3 -62
  2. package/dist/components/StandardPage.js +10 -108
  3. package/dist/index.js +1 -0
  4. package/dist/templates/QuotationPdf/CustomerSubscriptionSection.js +27 -145
  5. package/dist/templates/QuotationPdf/GFV.js +12 -49
  6. package/dist/templates/QuotationPdf/Header.js +5 -63
  7. package/dist/templates/QuotationPdf/Pricing.js +191 -573
  8. package/dist/templates/QuotationPdf/QuotationPdfPage.js +3 -23
  9. package/dist/templates/QuotationPdf/SectionBoxNew.js +4 -34
  10. package/dist/templates/QuotationPdf/TermsSection.js +5 -42
  11. package/dist/templates/QuotationPdf/VehiclePhotos.js +24 -54
  12. package/dist/templates/QuotationPdf/index.js +10 -197
  13. package/dist/templates/QuotationPdf/translations.js +22 -34
  14. package/dist/templates/QuotationPdf/utils.js +49 -92
  15. package/dist/templates/SubscriptionAgreement/Confirmation.js +10 -65
  16. package/dist/templates/SubscriptionAgreement/CoverPage.js +10 -93
  17. package/dist/templates/SubscriptionAgreement/CoverPageSection.js +5 -16
  18. package/dist/templates/SubscriptionAgreement/Details.js +59 -139
  19. package/dist/templates/SubscriptionAgreement/Footer.js +6 -48
  20. package/dist/templates/SubscriptionAgreement/Header.js +5 -35
  21. package/dist/templates/SubscriptionAgreement/LabelValue.js +3 -25
  22. package/dist/templates/SubscriptionAgreement/SubscriptionAgreementPage.js +3 -26
  23. package/dist/templates/SubscriptionAgreement/TermsOfUse.js +8 -94
  24. package/dist/templates/SubscriptionAgreement/TermsOfUseSubSection.js +11 -97
  25. package/dist/templates/SubscriptionAgreement/index.js +15 -253
  26. package/dist/templates/SubscriptionAgreement/translations.js +194 -195
  27. package/dist/templates/SubscriptionAgreement/types.js +2 -1
  28. package/dist/templates/SubscriptionAgreement/utils.js +11 -16
  29. package/dist/templates/index.js +1 -0
  30. package/dist/theme/colors.js +63 -44
  31. package/dist/theme/index.js +1 -0
  32. package/dist/types.js +2 -1
  33. package/dist/utils.js +16 -167
  34. package/dist/watch.js +4 -3
  35. package/package.json +10 -10
@@ -1,187 +1,108 @@
1
- function _define_property(obj, key, value) {
2
- if (key in obj) {
3
- Object.defineProperty(obj, key, {
4
- value: value,
5
- enumerable: true,
6
- configurable: true,
7
- writable: true
8
- });
9
- } else {
10
- obj[key] = value;
11
- }
12
- return obj;
13
- }
14
- function _object_spread(target) {
15
- for(var i = 1; i < arguments.length; i++){
16
- var source = arguments[i] != null ? arguments[i] : {};
17
- var ownKeys = Object.keys(source);
18
- if (typeof Object.getOwnPropertySymbols === "function") {
19
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
20
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
21
- }));
22
- }
23
- ownKeys.forEach(function(key) {
24
- _define_property(target, key, source[key]);
25
- });
26
- }
27
- return target;
28
- }
29
- function ownKeys(object, enumerableOnly) {
30
- var keys = Object.keys(object);
31
- if (Object.getOwnPropertySymbols) {
32
- var symbols = Object.getOwnPropertySymbols(object);
33
- if (enumerableOnly) {
34
- symbols = symbols.filter(function(sym) {
35
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
36
- });
37
- }
38
- keys.push.apply(keys, symbols);
39
- }
40
- return keys;
41
- }
42
- function _object_spread_props(target, source) {
43
- source = source != null ? source : {};
44
- if (Object.getOwnPropertyDescriptors) {
45
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
46
- } else {
47
- ownKeys(Object(source)).forEach(function(key) {
48
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
49
- });
50
- }
51
- return target;
52
- }
53
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
54
2
  import { userName } from '@driveflux/db/models/user';
55
3
  import { format } from '@driveflux/time';
56
4
  import { Text, View } from '@react-pdf/renderer';
57
5
  import { colors } from '../../theme/index.js';
58
6
  import LabelValue from './LabelValue.js';
59
- var Details = function Details(param) {
60
- var tDetails = param.tDetails, subscription = param.subscription;
61
- var _subscription_vehicle, _subscription_vehicle1, _subscription_vehicle2, _subscription_vehicle3, _subscription_vehicle4;
62
- var details = {};
7
+ const Details = ({ tDetails, subscription }) => {
8
+ let details = {};
63
9
  if (subscription.payerType === 'business') {
64
- var _subscription_business;
65
10
  details.business = [
66
11
  {
67
12
  key: tDetails.business.name,
68
- value: subscription === null || subscription === void 0 ? void 0 : subscription.businessName
13
+ value: subscription?.businessName,
69
14
  },
70
15
  {
71
16
  key: tDetails.business.companyNo,
72
- value: subscription === null || subscription === void 0 ? void 0 : (_subscription_business = subscription.business) === null || _subscription_business === void 0 ? void 0 : _subscription_business.registrationNumber
73
- }
17
+ value: subscription?.business?.registrationNumber,
18
+ },
74
19
  ];
75
- } else {
76
- var _subscription_user_identification;
20
+ }
21
+ else {
77
22
  details.member = [
78
23
  {
79
24
  key: tDetails.member.name,
80
- value: userName(subscription.user)
25
+ value: userName(subscription.user),
81
26
  },
82
27
  {
83
28
  key: tDetails.member.idOrPassportNo,
84
- value: (_subscription_user_identification = subscription.user.identification) === null || _subscription_user_identification === void 0 ? void 0 : _subscription_user_identification.number
85
- }
29
+ value: subscription.user.identification?.number,
30
+ },
86
31
  ];
87
32
  }
88
- details = _object_spread_props(_object_spread({}, details), {
33
+ details = {
34
+ ...details,
89
35
  vehicle: [
90
36
  {
91
37
  key: tDetails.vehicle.make,
92
- value: (_subscription_vehicle = subscription.vehicle) === null || _subscription_vehicle === void 0 ? void 0 : _subscription_vehicle.make
38
+ value: subscription.vehicle?.make,
93
39
  },
94
40
  {
95
41
  key: tDetails.vehicle.model,
96
- 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)
42
+ value: `${subscription.vehicle?.vehicleModel} ${subscription.vehicle?.variant}`,
97
43
  },
98
44
  {
99
45
  key: tDetails.vehicle.year,
100
- value: (_subscription_vehicle3 = subscription.vehicle) === null || _subscription_vehicle3 === void 0 ? void 0 : _subscription_vehicle3.year
46
+ value: subscription.vehicle?.year,
101
47
  },
102
48
  {
103
49
  key: tDetails.vehicle.plateNo,
104
- value: (_subscription_vehicle4 = subscription.vehicle) === null || _subscription_vehicle4 === void 0 ? void 0 : _subscription_vehicle4.registrationNumber
105
- }
50
+ value: subscription.vehicle?.registrationNumber,
51
+ },
106
52
  ],
107
53
  subscription: [
108
54
  {
109
55
  key: tDetails.subscription.subscriptionPlan,
110
- value: getPlanTranslation(subscription.plan)
56
+ value: getPlanTranslation(subscription.plan),
111
57
  },
112
58
  {
113
59
  key: tDetails.subscription.mileagePackage,
114
- value: getFullMileagePackageTranslation(subscription.mileagePackage)
60
+ value: getFullMileagePackageTranslation(subscription.mileagePackage),
115
61
  },
116
62
  {
117
63
  key: tDetails.subscription.startDate,
118
- value: subscription.startedAt ? format(subscription.startedAt, 'dd-MM-yyyy') : undefined
64
+ value: subscription.startedAt
65
+ ? format(subscription.startedAt, 'dd-MM-yyyy')
66
+ : undefined,
119
67
  },
120
68
  {
121
69
  key: tDetails.subscription.endDate,
122
- value: subscription.endedAt ? format(subscription.endedAt, 'dd-MM-yyyy') : subscription.scheduledEndAt ? format(subscription.scheduledEndAt, 'dd-MM-yyyy') : undefined
123
- }
124
- ]
125
- });
126
- var border = "1px solid ".concat(colors.primary2);
127
- return /*#__PURE__*/ _jsxs(View, {
128
- style: {
129
- borderLeft: border,
130
- borderRight: border
131
- },
132
- children: [
133
- /*#__PURE__*/ _jsx(View, {
134
- style: {
70
+ value: subscription.endedAt
71
+ ? format(subscription.endedAt, 'dd-MM-yyyy')
72
+ : subscription.scheduledEndAt
73
+ ? format(subscription.scheduledEndAt, 'dd-MM-yyyy')
74
+ : undefined,
75
+ },
76
+ ],
77
+ };
78
+ const border = `1px solid ${colors.primary2}`;
79
+ return (_jsxs(View, { style: { borderLeft: border, borderRight: border }, children: [_jsx(View, { style: {
135
80
  backgroundColor: colors.primary1,
136
81
  borderTop: border,
137
- padding: 8
138
- },
139
- children: /*#__PURE__*/ _jsx(Text, {
140
- style: {
82
+ padding: 8,
83
+ }, children: _jsx(Text, { style: {
141
84
  fontWeight: 'bold',
142
85
  textTransform: 'uppercase',
143
- letterSpacing: 1
144
- },
145
- children: tDetails.agreement
146
- })
147
- }),
148
- Object.keys(details).map(function(key, _i) {
149
- return /*#__PURE__*/ _jsxs(View, {
150
- style: {
151
- padding: 8,
152
- paddingBottom: 16,
153
- rowGap: 8,
154
- borderTop: border
155
- },
156
- children: [
157
- /*#__PURE__*/ _jsx(Text, {
158
- style: {
159
- textTransform: 'uppercase',
160
- color: colors.primary2,
161
- fontSize: 8,
162
- letterSpacing: 1
163
- },
164
- children: "".concat(key, " details")
165
- }),
166
- details[key].map(function(line) {
167
- return /*#__PURE__*/ _jsx(LabelValue, {
168
- label: line.key,
169
- value: line.value
170
- }, line.key);
171
- })
172
- ]
173
- }, key);
174
- })
175
- ]
176
- });
86
+ letterSpacing: 1,
87
+ }, children: tDetails.agreement }) }), Object.keys(details).map((key, _i) => (_jsxs(View, { style: {
88
+ padding: 8,
89
+ paddingBottom: 16,
90
+ rowGap: 8,
91
+ borderTop: border,
92
+ }, children: [_jsx(Text, { style: {
93
+ textTransform: 'uppercase',
94
+ color: colors.primary2,
95
+ fontSize: 8,
96
+ letterSpacing: 1,
97
+ }, children: `${key} details` }), details[key].map((line) => (_jsx(LabelValue, { label: line.key, value: line.value }, line.key)))] }, key)))] }));
177
98
  };
178
99
  export default Details;
179
100
  // TODO: replace this with dump's once the package is ready
180
- var getPlanTranslation = function getPlanTranslation(plan, vehicleType) {
101
+ const getPlanTranslation = (plan, vehicleType) => {
181
102
  if (!plan) {
182
103
  return 'Unknown Plan';
183
104
  }
184
- switch(plan){
105
+ switch (plan) {
185
106
  case 'plan60':
186
107
  return vehicleType === 'motorcycle' ? '60 Months' : '60 Months (Basic)';
187
108
  case 'plan36':
@@ -194,18 +115,17 @@ var getPlanTranslation = function getPlanTranslation(plan, vehicleType) {
194
115
  return 'Monthly (Ultra)';
195
116
  case 'planWeekly':
196
117
  return 'Weekly';
197
- default:
198
- {
199
- var _exhaustiveCheck = plan;
200
- return 'Unknown Plan';
201
- }
118
+ default: {
119
+ const _exhaustiveCheck = plan;
120
+ return 'Unknown Plan';
121
+ }
202
122
  }
203
123
  };
204
- var getFullMileagePackageTranslation = function getFullMileagePackageTranslation(plan) {
124
+ const getFullMileagePackageTranslation = (plan) => {
205
125
  if (!plan) {
206
126
  return 'Unknown Mileage Package';
207
127
  }
208
- switch(plan){
128
+ switch (plan) {
209
129
  case 'lite':
210
130
  return 'Lite - 1,250KM';
211
131
  case 'standard':
@@ -214,10 +134,10 @@ var getFullMileagePackageTranslation = function getFullMileagePackageTranslation
214
134
  return 'Plus - 2,750KM';
215
135
  case 'unlimited':
216
136
  return 'Unlimited';
217
- default:
218
- {
219
- var _exhaustiveCheck = plan;
220
- return 'Unknown Mileage Package';
221
- }
137
+ default: {
138
+ const _exhaustiveCheck = plan;
139
+ return 'Unknown Mileage Package';
140
+ }
222
141
  }
223
142
  };
143
+ //# sourceMappingURL=Details.js.map
@@ -1,58 +1,16 @@
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
- var Footer = function Footer(param) {
5
- var tComputerGenerated = param.tComputerGenerated, tPage = param.tPage, tOf = param.tOf;
6
- return /*#__PURE__*/ _jsxs(View, {
7
- fixed: true,
8
- style: {
4
+ const Footer = ({ tComputerGenerated, tPage, tOf }) => {
5
+ return (_jsxs(View, { fixed: true, style: {
9
6
  justifyContent: 'space-between',
10
7
  flexDirection: 'row',
11
8
  paddingTop: 16,
12
9
  marginTop: 16,
13
- borderTop: "1px solid ".concat(colors.links),
10
+ borderTop: `1px solid ${colors.links}`,
14
11
  color: colors.primary2,
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 render(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 render(param) {
49
- var totalPages = param.totalPages;
50
- return "".concat(totalPages);
51
- }
52
- })
53
- ]
54
- })
55
- ]
56
- });
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}` })] })] }));
57
14
  };
58
15
  export default Footer;
16
+ //# sourceMappingURL=Footer.js.map
@@ -2,45 +2,15 @@ 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
- var Header = function Header(param) {
6
- var tTitle = param.tTitle, userId = param.userId, subscriptionId = param.subscriptionId;
7
- return /*#__PURE__*/ _jsxs(View, {
8
- fixed: true,
9
- style: {
5
+ const Header = ({ tTitle, userId, subscriptionId }) => {
6
+ return (_jsxs(View, { fixed: true, style: {
10
7
  flexDirection: 'row',
11
8
  justifyContent: 'space-between',
12
9
  alignItems: 'center',
13
10
  paddingBottom: 40,
14
11
  // to not get pushed by the content
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
- });
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}` })] })] }));
45
14
  };
46
15
  export default Header;
16
+ //# sourceMappingURL=Header.js.map
@@ -1,29 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Text, View } from '@react-pdf/renderer';
3
- var LabelValue = function LabelValue(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
- });
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}` : '-' })] }));
28
5
  };
29
6
  export default LabelValue;
7
+ //# sourceMappingURL=LabelValue.js.map
@@ -3,31 +3,8 @@ 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
- var SubscriptionAgreementPage = function SubscriptionAgreementPage(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
- });
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 })] }));
32
8
  };
33
9
  export default SubscriptionAgreementPage;
10
+ //# sourceMappingURL=SubscriptionAgreementPage.js.map
@@ -1,101 +1,15 @@
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
- }
26
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
27
2
  import { Text, View } from '@react-pdf/renderer';
28
3
  import { renderMarkdown } from './utils.js';
29
- var TermsOfUse = function TermsOfUse(param) {
30
- var termsOfUse = param.termsOfUse;
31
- var getTerms = function getTerms1(items) {
32
- var indices = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];
33
- return items.map(function(item, i) {
34
- var _item_items;
35
- var currentIndices = _to_consumable_array(indices).concat([
36
- i + 1
37
- ]);
38
- var indicesString = currentIndices.join('.');
39
- return /*#__PURE__*/ _jsxs(View, {
40
- style: {
41
- rowGap: 16
42
- },
43
- children: [
44
- item.content && /*#__PURE__*/ _jsxs(View, {
45
- style: {
46
- flexDirection: 'row',
47
- columnGap: 16
48
- },
49
- children: [
50
- /*#__PURE__*/ _jsx(Text, {
51
- style: {
52
- fontWeight: 'bold'
53
- },
54
- children: indicesString
55
- }),
56
- /*#__PURE__*/ _jsxs(Text, {
57
- style: {
58
- textAlign: 'justify',
59
- flex: 1
60
- },
61
- children: [
62
- renderMarkdown(item.content),
63
- ' '
64
- ]
65
- })
66
- ]
67
- }),
68
- ((_item_items = item.items) === null || _item_items === void 0 ? void 0 : _item_items.length) > 0 && /*#__PURE__*/ _jsx(View, {
69
- style: {
70
- paddingLeft: 16,
71
- rowGap: 16
72
- },
73
- children: getTerms(item.items, currentIndices)
74
- })
75
- ]
76
- }, indicesString);
4
+ const TermsOfUse = ({ termsOfUse }) => {
5
+ const getTerms = (items, indices = []) => {
6
+ return items.map((item, i) => {
7
+ const currentIndices = [...indices, i + 1];
8
+ const indicesString = currentIndices.join('.');
9
+ return (_jsxs(View, { style: { rowGap: 16 }, children: [item.content && (_jsxs(View, { style: { flexDirection: 'row', columnGap: 16 }, children: [_jsx(Text, { style: { fontWeight: 'bold' }, children: indicesString }), _jsxs(Text, { style: { textAlign: 'justify', flex: 1 }, children: [renderMarkdown(item.content), ' '] })] })), item.items?.length > 0 && (_jsx(View, { style: { paddingLeft: 16, rowGap: 16 }, children: getTerms(item.items, currentIndices) }))] }, indicesString));
77
10
  });
78
11
  };
79
- return /*#__PURE__*/ _jsxs(View, {
80
- style: {
81
- rowGap: 16
82
- },
83
- children: [
84
- /*#__PURE__*/ _jsx(Text, {
85
- style: {
86
- fontWeight: 'bold',
87
- textTransform: 'uppercase'
88
- },
89
- children: 'Terms of Use'
90
- }),
91
- /*#__PURE__*/ _jsx(View, {
92
- style: {
93
- rowGap: 16,
94
- lineHeight: 1.4
95
- },
96
- children: getTerms(termsOfUse.items)
97
- })
98
- ]
99
- });
12
+ return (_jsxs(View, { style: { rowGap: 16 }, children: [_jsx(Text, { style: { fontWeight: 'bold', textTransform: 'uppercase' }, children: 'Terms of Use' }), _jsx(View, { style: { rowGap: 16, lineHeight: 1.4 }, children: getTerms(termsOfUse.items) })] }));
100
13
  };
101
14
  export default TermsOfUse;
15
+ //# sourceMappingURL=TermsOfUse.js.map