react-native-fpay 0.4.30 → 0.4.33

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 (71) hide show
  1. package/lib/module/FountainPayProvider.js +5 -0
  2. package/lib/module/FountainPayProvider.js.map +1 -1
  3. package/lib/module/core/api/index.js +59 -0
  4. package/lib/module/core/api/index.js.map +1 -1
  5. package/lib/module/core/types/index.js +32 -0
  6. package/lib/module/core/types/index.js.map +1 -1
  7. package/lib/module/engine/FPEngine.js +9 -0
  8. package/lib/module/engine/FPEngine.js.map +1 -1
  9. package/lib/module/ui/components/ConfirmScreen.js +43 -51
  10. package/lib/module/ui/components/ConfirmScreen.js.map +1 -1
  11. package/lib/module/ui/components/RecurringToggle.js +94 -0
  12. package/lib/module/ui/components/RecurringToggle.js.map +1 -0
  13. package/lib/module/ui/modals/FPShell.js +19 -0
  14. package/lib/module/ui/modals/FPShell.js.map +1 -1
  15. package/lib/module/ui/screens/BillsScreen.js +187 -0
  16. package/lib/module/ui/screens/BillsScreen.js.map +1 -0
  17. package/lib/module/ui/screens/ResultScreen.js +113 -28
  18. package/lib/module/ui/screens/ResultScreen.js.map +1 -1
  19. package/lib/module/ui/screens/SendScreen.js +54 -6
  20. package/lib/module/ui/screens/SendScreen.js.map +1 -1
  21. package/lib/module/ui/screens/sub/billPayment/AirtimeScreen.js +257 -0
  22. package/lib/module/ui/screens/sub/billPayment/AirtimeScreen.js.map +1 -0
  23. package/lib/module/ui/screens/sub/billPayment/CableScreen.js +264 -0
  24. package/lib/module/ui/screens/sub/billPayment/CableScreen.js.map +1 -0
  25. package/lib/module/ui/screens/sub/billPayment/DataScreen.js +273 -0
  26. package/lib/module/ui/screens/sub/billPayment/DataScreen.js.map +1 -0
  27. package/lib/module/ui/screens/sub/billPayment/ElectricityScreen.js +337 -0
  28. package/lib/module/ui/screens/sub/billPayment/ElectricityScreen.js.map +1 -0
  29. package/lib/typescript/src/FountainPayProvider.d.ts.map +1 -1
  30. package/lib/typescript/src/core/api/index.d.ts +52 -63
  31. package/lib/typescript/src/core/api/index.d.ts.map +1 -1
  32. package/lib/typescript/src/core/types/index.d.ts +146 -0
  33. package/lib/typescript/src/core/types/index.d.ts.map +1 -1
  34. package/lib/typescript/src/engine/FPEngine.d.ts +4 -2
  35. package/lib/typescript/src/engine/FPEngine.d.ts.map +1 -1
  36. package/lib/typescript/src/index.d.ts +1 -1
  37. package/lib/typescript/src/index.d.ts.map +1 -1
  38. package/lib/typescript/src/ui/components/ConfirmScreen.d.ts +25 -4
  39. package/lib/typescript/src/ui/components/ConfirmScreen.d.ts.map +1 -1
  40. package/lib/typescript/src/ui/components/RecurringToggle.d.ts +7 -0
  41. package/lib/typescript/src/ui/components/RecurringToggle.d.ts.map +1 -0
  42. package/lib/typescript/src/ui/modals/FPShell.d.ts.map +1 -1
  43. package/lib/typescript/src/ui/screens/BillsScreen.d.ts +10 -0
  44. package/lib/typescript/src/ui/screens/BillsScreen.d.ts.map +1 -0
  45. package/lib/typescript/src/ui/screens/ResultScreen.d.ts +20 -3
  46. package/lib/typescript/src/ui/screens/ResultScreen.d.ts.map +1 -1
  47. package/lib/typescript/src/ui/screens/SendScreen.d.ts.map +1 -1
  48. package/lib/typescript/src/ui/screens/sub/billPayment/AirtimeScreen.d.ts +15 -0
  49. package/lib/typescript/src/ui/screens/sub/billPayment/AirtimeScreen.d.ts.map +1 -0
  50. package/lib/typescript/src/ui/screens/sub/billPayment/CableScreen.d.ts +14 -0
  51. package/lib/typescript/src/ui/screens/sub/billPayment/CableScreen.d.ts.map +1 -0
  52. package/lib/typescript/src/ui/screens/sub/billPayment/DataScreen.d.ts +14 -0
  53. package/lib/typescript/src/ui/screens/sub/billPayment/DataScreen.d.ts.map +1 -0
  54. package/lib/typescript/src/ui/screens/sub/billPayment/ElectricityScreen.d.ts +16 -0
  55. package/lib/typescript/src/ui/screens/sub/billPayment/ElectricityScreen.d.ts.map +1 -0
  56. package/package.json +2 -2
  57. package/src/FountainPayProvider.tsx +7 -0
  58. package/src/core/api/index.ts +149 -27
  59. package/src/core/types/index.ts +181 -0
  60. package/src/engine/FPEngine.ts +12 -1
  61. package/src/index.ts +9 -1
  62. package/src/ui/components/ConfirmScreen.tsx +47 -54
  63. package/src/ui/components/RecurringToggle.tsx +106 -0
  64. package/src/ui/modals/FPShell.tsx +26 -3
  65. package/src/ui/screens/BillsScreen.tsx +198 -0
  66. package/src/ui/screens/ResultScreen.tsx +129 -28
  67. package/src/ui/screens/SendScreen.tsx +43 -6
  68. package/src/ui/screens/sub/billPayment/AirtimeScreen.tsx +252 -0
  69. package/src/ui/screens/sub/billPayment/CableScreen.tsx +274 -0
  70. package/src/ui/screens/sub/billPayment/DataScreen.tsx +263 -0
  71. package/src/ui/screens/sub/billPayment/ElectricityScreen.tsx +344 -0
@@ -0,0 +1,273 @@
1
+ "use strict";
2
+
3
+ import { useEffect, useState } from 'react';
4
+ import { View, Text, TouchableOpacity, ScrollView, KeyboardAvoidingView, Platform, ActivityIndicator } from 'react-native';
5
+ import styled from 'styled-components/native';
6
+ import { C, F, R, S } from "../../../theme/index.js";
7
+ import { billsAPI } from "../../../../core/api/index.js";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ const PREFIX_MAP = {
10
+ '0803': 'MTN',
11
+ '0806': 'MTN',
12
+ '0703': 'MTN',
13
+ '0706': 'MTN',
14
+ '0813': 'MTN',
15
+ '0816': 'MTN',
16
+ '0810': 'MTN',
17
+ '0814': 'MTN',
18
+ '0903': 'MTN',
19
+ '0906': 'MTN',
20
+ '0913': 'MTN',
21
+ '0916': 'MTN',
22
+ '0802': 'AIRTEL',
23
+ '0808': 'AIRTEL',
24
+ '0708': 'AIRTEL',
25
+ '0812': 'AIRTEL',
26
+ '0701': 'AIRTEL',
27
+ '0902': 'AIRTEL',
28
+ '0907': 'AIRTEL',
29
+ '0901': 'AIRTEL',
30
+ '0911': 'AIRTEL',
31
+ '0805': 'GLO',
32
+ '0807': 'GLO',
33
+ '0815': 'GLO',
34
+ '0811': 'GLO',
35
+ '0905': 'GLO',
36
+ '0915': 'GLO',
37
+ '0809': '9MOBILE',
38
+ '0817': '9MOBILE',
39
+ '0818': '9MOBILE',
40
+ '0908': '9MOBILE',
41
+ '0909': '9MOBILE'
42
+ };
43
+ function detectNetwork(phone) {
44
+ return PREFIX_MAP[phone.slice(0, 4)] ?? null;
45
+ }
46
+ const Container = styled(View)`
47
+ flex: 1;
48
+ background-color: ${C.white};
49
+ `;
50
+ const Body = styled(ScrollView)`
51
+ flex: 1;
52
+ padding: ${S.lg}px;
53
+ `;
54
+ const FieldLabel = styled(Text)`
55
+ font-size: ${F.sm}px;
56
+ font-weight: 600;
57
+ color: ${C.muted};
58
+ margin-bottom: ${S.xs}px;
59
+ `;
60
+ const InputBox = styled.View`
61
+ background-color: ${C.surface};
62
+ border-radius: ${R.lg}px;
63
+ padding: 0 ${S.md}px;
64
+ height: 52px;
65
+ flex-direction: row;
66
+ align-items: center;
67
+ margin-bottom: ${S.md}px;
68
+ `;
69
+ const StyledInput = styled.TextInput`
70
+ flex: 1;
71
+ font-size: ${F.md}px;
72
+ color: ${C.ink};
73
+ `;
74
+ const NetworkRow = styled(View)`
75
+ flex-direction: row;
76
+ gap: ${S.sm}px;
77
+ margin-bottom: ${S.lg}px;
78
+ `;
79
+ const NetworkChip = styled(TouchableOpacity)`
80
+ flex: 1;
81
+ height: 44px;
82
+ border-radius: ${R.full}px;
83
+ align-items: center;
84
+ justify-content: center;
85
+ background-color: ${props => props.selected ? props.brandColor ?? C.brand : C.surface};
86
+ `;
87
+ const NetworkChipText = styled(Text)`
88
+ font-size: ${F.sm}px;
89
+ font-weight: 700;
90
+ color: ${props => props.selected ? C.white : C.muted};
91
+ `;
92
+ const PlanCard = styled(TouchableOpacity)`
93
+ border-radius: ${R.lg}px;
94
+ padding: ${S.md}px;
95
+ margin-bottom: ${S.sm}px;
96
+ background-color: ${props => props.selected ? C.brandLight : C.surface};
97
+ border-width: 1.5px;
98
+ border-color: ${props => props.selected ? C.brand : 'transparent'};
99
+ opacity: ${props => props.disabled ? 0.45 : 1};
100
+ flex-direction: row;
101
+ justify-content: space-between;
102
+ align-items: center;
103
+ `;
104
+ const PlanLabel = styled(Text)`
105
+ font-size: ${F.md}px;
106
+ font-weight: 700;
107
+ color: ${C.ink};
108
+ `;
109
+ const PlanValidity = styled(Text)`
110
+ font-size: ${F.xs}px;
111
+ color: ${C.muted};
112
+ margin-top: 2px;
113
+ `;
114
+ const PlanPrice = styled(Text)`
115
+ font-size: ${F.md}px;
116
+ font-weight: 800;
117
+ color: ${C.brand};
118
+ `;
119
+ const EmptyText = styled(Text)`
120
+ text-align: center;
121
+ color: ${C.muted};
122
+ margin-top: ${S.lg}px;
123
+ `;
124
+ const ContinueButton = styled(TouchableOpacity)`
125
+ background-color: ${props => props.disabled ? C.ghost : C.brand};
126
+ border-radius: ${R.full}px;
127
+ padding: ${S.md}px 0;
128
+ align-items: center;
129
+ margin-top: ${S.md}px;
130
+ `;
131
+ const ContinueButtonText = styled(Text)`
132
+ color: ${C.white};
133
+ font-weight: 800;
134
+ font-size: ${F.md}px;
135
+ `;
136
+ export default function DataScreen({
137
+ onProcessTransaction,
138
+ onError
139
+ }) {
140
+ const [networks, setNetworks] = useState([]);
141
+ const [phone, setPhone] = useState('');
142
+ const [network, setNetwork] = useState(null);
143
+ const [networkTouched, setNetworkTouched] = useState(false);
144
+ const [plans, setPlans] = useState([]);
145
+ const [plansLoading, setPlansLoading] = useState(false);
146
+ const [selectedPlan, setSelectedPlan] = useState(null);
147
+ useEffect(() => {
148
+ billsAPI.getNetworks().then(res => {
149
+ if (res.status) setNetworks(res.payload.filter(n => n.isActive));
150
+ }).catch(() => {
151
+ onError?.({
152
+ code: 'NETWORK_LOAD_FAILED',
153
+ message: 'Could not load network list'
154
+ });
155
+ });
156
+ }, []);
157
+ useEffect(() => {
158
+ if (!networkTouched) {
159
+ const detected = detectNetwork(phone);
160
+ if (detected) setNetwork(detected);
161
+ }
162
+ }, [phone, networkTouched]);
163
+ useEffect(() => {
164
+ if (!network) {
165
+ setPlans([]);
166
+ setSelectedPlan(null);
167
+ return;
168
+ }
169
+ setPlansLoading(true);
170
+ setSelectedPlan(null);
171
+ billsAPI.getDataPlans(network).then(res => {
172
+ if (res.status) setPlans(res.payload);
173
+ }).catch(() => {
174
+ onError?.({
175
+ code: 'PLANS_LOAD_FAILED',
176
+ message: 'Could not load data plans'
177
+ });
178
+ }).finally(() => setPlansLoading(false));
179
+ }, [network]);
180
+ const isValid = /^0\d{10}$/.test(phone) && !!network && !!selectedPlan;
181
+ const handleContinue = () => {
182
+ if (!isValid || !network || !selectedPlan) return;
183
+ onProcessTransaction({
184
+ category: 'DATA',
185
+ phoneNumber: phone,
186
+ network,
187
+ planId: selectedPlan.id,
188
+ amountInKobo: selectedPlan.priceInKobo,
189
+ idempotencyKey: `data_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`
190
+ }, [{
191
+ label: 'Phone Number',
192
+ value: phone
193
+ }, {
194
+ label: 'Network',
195
+ value: network
196
+ }, {
197
+ label: 'Plan',
198
+ value: `${selectedPlan.label} / ${selectedPlan.validity}`
199
+ }]);
200
+ };
201
+ return /*#__PURE__*/_jsx(Container, {
202
+ children: /*#__PURE__*/_jsx(KeyboardAvoidingView, {
203
+ style: {
204
+ flex: 1
205
+ },
206
+ behavior: Platform.OS === 'ios' ? 'padding' : undefined,
207
+ children: /*#__PURE__*/_jsxs(Body, {
208
+ keyboardShouldPersistTaps: "handled",
209
+ showsVerticalScrollIndicator: false,
210
+ children: [/*#__PURE__*/_jsx(FieldLabel, {
211
+ children: "Phone Number"
212
+ }), /*#__PURE__*/_jsx(InputBox, {
213
+ children: /*#__PURE__*/_jsx(StyledInput, {
214
+ placeholder: "080XXXXXXXX",
215
+ placeholderTextColor: C.ghost,
216
+ keyboardType: "number-pad",
217
+ maxLength: 11,
218
+ value: phone,
219
+ onChangeText: setPhone
220
+ })
221
+ }), /*#__PURE__*/_jsx(FieldLabel, {
222
+ children: "Network"
223
+ }), /*#__PURE__*/_jsx(NetworkRow, {
224
+ children: ['MTN', 'AIRTEL', 'GLO', '9MOBILE'].map(code => {
225
+ const op = networks.find(n => n.code === code);
226
+ return /*#__PURE__*/_jsx(NetworkChip, {
227
+ selected: network === code,
228
+ brandColor: op?.brandColor,
229
+ onPress: () => {
230
+ setNetworkTouched(true);
231
+ setNetwork(code);
232
+ },
233
+ children: /*#__PURE__*/_jsx(NetworkChipText, {
234
+ selected: network === code,
235
+ children: code
236
+ })
237
+ }, code);
238
+ })
239
+ }), /*#__PURE__*/_jsx(FieldLabel, {
240
+ children: "Select a Plan"
241
+ }), plansLoading && /*#__PURE__*/_jsx(ActivityIndicator, {
242
+ color: C.brand,
243
+ style: {
244
+ marginTop: S.md
245
+ }
246
+ }), !plansLoading && network && plans.length === 0 && /*#__PURE__*/_jsxs(EmptyText, {
247
+ children: ["No plans available for ", network, " right now."]
248
+ }), !plansLoading && plans.map(plan => /*#__PURE__*/_jsxs(PlanCard, {
249
+ selected: selectedPlan?.id === plan.id,
250
+ disabled: !plan.isAvailable,
251
+ onPress: () => plan.isAvailable && setSelectedPlan(plan),
252
+ children: [/*#__PURE__*/_jsxs(View, {
253
+ children: [/*#__PURE__*/_jsx(PlanLabel, {
254
+ children: plan.label
255
+ }), /*#__PURE__*/_jsx(PlanValidity, {
256
+ children: plan.validity
257
+ })]
258
+ }), /*#__PURE__*/_jsxs(PlanPrice, {
259
+ children: ["\u20A6", (plan.priceInKobo / 100).toLocaleString()]
260
+ })]
261
+ }, plan.id)), /*#__PURE__*/_jsx(ContinueButton, {
262
+ disabled: !isValid,
263
+ onPress: handleContinue,
264
+ activeOpacity: 0.85,
265
+ children: /*#__PURE__*/_jsx(ContinueButtonText, {
266
+ children: "Continue"
267
+ })
268
+ })]
269
+ })
270
+ })
271
+ });
272
+ }
273
+ //# sourceMappingURL=DataScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useState","View","Text","TouchableOpacity","ScrollView","KeyboardAvoidingView","Platform","ActivityIndicator","styled","C","F","R","S","billsAPI","jsx","_jsx","jsxs","_jsxs","PREFIX_MAP","detectNetwork","phone","slice","Container","white","Body","lg","FieldLabel","sm","muted","xs","InputBox","surface","md","StyledInput","TextInput","ink","NetworkRow","NetworkChip","full","props","selected","brandColor","brand","NetworkChipText","PlanCard","brandLight","disabled","PlanLabel","PlanValidity","PlanPrice","EmptyText","ContinueButton","ghost","ContinueButtonText","DataScreen","onProcessTransaction","onError","networks","setNetworks","setPhone","network","setNetwork","networkTouched","setNetworkTouched","plans","setPlans","plansLoading","setPlansLoading","selectedPlan","setSelectedPlan","getNetworks","then","res","status","payload","filter","n","isActive","catch","code","message","detected","getDataPlans","finally","isValid","test","handleContinue","category","phoneNumber","planId","id","amountInKobo","priceInKobo","idempotencyKey","Date","now","Math","random","toString","label","value","validity","children","style","flex","behavior","OS","undefined","keyboardShouldPersistTaps","showsVerticalScrollIndicator","placeholder","placeholderTextColor","keyboardType","maxLength","onChangeText","map","op","find","onPress","color","marginTop","length","plan","isAvailable","toLocaleString","activeOpacity"],"sourceRoot":"../../../../../../src","sources":["ui/screens/sub/billPayment/DataScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,337 @@
1
+ "use strict";
2
+
3
+ import { useEffect, useState } from 'react';
4
+ import { View, Text, TouchableOpacity, ScrollView, KeyboardAvoidingView, Platform, Switch, ActivityIndicator } from 'react-native';
5
+ import styled from 'styled-components/native';
6
+ import { C, F, R, S } from "../../../theme/index.js";
7
+ import { billsAPI } from "../../../../core/api/index.js";
8
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
9
+ const Container = styled(View)`
10
+ flex: 1;
11
+ background-color: ${C.white};
12
+ `;
13
+ const Body = styled(ScrollView)`
14
+ flex: 1;
15
+ padding: ${S.lg}px;
16
+ `;
17
+ const FieldLabel = styled(Text)`
18
+ font-size: ${F.sm}px;
19
+ font-weight: 600;
20
+ color: ${C.muted};
21
+ margin-bottom: ${S.xs}px;
22
+ `;
23
+ const InputBox = styled.View`
24
+ background-color: ${C.surface};
25
+ border-radius: ${R.lg}px;
26
+ padding: 0 ${S.md}px;
27
+ height: 52px;
28
+ flex-direction: row;
29
+ align-items: center;
30
+ margin-bottom: ${S.md}px;
31
+ `;
32
+ const StyledInput = styled.TextInput`
33
+ flex: 1;
34
+ font-size: ${F.md}px;
35
+ color: ${C.ink};
36
+ `;
37
+ const CurrencyPrefix = styled(Text)`
38
+ font-size: ${F.md}px;
39
+ color: ${C.muted};
40
+ margin-right: ${S.xs}px;
41
+ `;
42
+ const SelectBox = styled(TouchableOpacity)`
43
+ background-color: ${C.surface};
44
+ border-radius: ${R.lg}px;
45
+ padding: 0 ${S.md}px;
46
+ height: 52px;
47
+ flex-direction: row;
48
+ align-items: center;
49
+ justify-content: space-between;
50
+ margin-bottom: ${S.md}px;
51
+ `;
52
+ const SelectBoxText = styled(Text)`
53
+ font-size: ${F.md}px;
54
+ color: ${props => props.placeholder ? C.ghost : C.ink};
55
+ `;
56
+ const DiscoSheet = styled(View)`
57
+ background-color: ${C.white};
58
+ border-radius: ${R.xl}px;
59
+ padding: ${S.md}px;
60
+ margin-bottom: ${S.md}px;
61
+ max-height: 240px;
62
+ `;
63
+ const DiscoRow = styled(TouchableOpacity)`
64
+ padding: ${S.sm}px ${S.md}px;
65
+ border-radius: ${R.md}px;
66
+ background-color: ${props => props.selected ? C.brandLight : 'transparent'};
67
+ margin-bottom: 4px;
68
+ `;
69
+ const DiscoRowText = styled(Text)`
70
+ font-size: ${F.md}px;
71
+ color: ${C.ink};
72
+ font-weight: 600;
73
+ `;
74
+ const TypeRow = styled(View)`
75
+ flex-direction: row;
76
+ gap: ${S.sm}px;
77
+ margin-bottom: ${S.md}px;
78
+ `;
79
+ const TypeChip = styled(TouchableOpacity)`
80
+ flex: 1;
81
+ height: 44px;
82
+ border-radius: ${R.md}px;
83
+ align-items: center;
84
+ justify-content: center;
85
+ background-color: ${props => props.selected ? C.brand : C.surface};
86
+ `;
87
+ const TypeChipText = styled(Text)`
88
+ font-size: ${F.sm}px;
89
+ font-weight: 700;
90
+ color: ${props => props.selected ? C.white : C.muted};
91
+ `;
92
+ const CustomerNameBox = styled(View)`
93
+ background-color: ${C.greenLight};
94
+ border-radius: ${R.md}px;
95
+ padding: ${S.sm}px ${S.md}px;
96
+ margin-bottom: ${S.md}px;
97
+ `;
98
+ const CustomerNameText = styled(Text)`
99
+ color: ${C.green};
100
+ font-weight: 700;
101
+ font-size: ${F.sm}px;
102
+ `;
103
+ const SwitchRow = styled(View)`
104
+ flex-direction: row;
105
+ justify-content: space-between;
106
+ align-items: center;
107
+ margin-bottom: ${S.md}px;
108
+ `;
109
+ const SwitchLabel = styled(Text)`
110
+ font-size: ${F.md}px;
111
+ color: ${C.ink};
112
+ font-weight: 600;
113
+ `;
114
+ const ContinueButton = styled(TouchableOpacity)`
115
+ background-color: ${props => props.disabled ? C.ghost : C.brand};
116
+ border-radius: ${R.full}px;
117
+ padding: ${S.md}px 0;
118
+ align-items: center;
119
+ margin-top: ${S.sm}px;
120
+ `;
121
+ const ContinueButtonText = styled(Text)`
122
+ color: ${C.white};
123
+ font-weight: 800;
124
+ font-size: ${F.md}px;
125
+ `;
126
+ export default function ElectricityScreen({
127
+ amount,
128
+ user,
129
+ onProcessTransaction,
130
+ onError
131
+ }) {
132
+ const [discos, setDiscos] = useState([]);
133
+ const [discoPickerOpen, setDiscoPickerOpen] = useState(false);
134
+ const [disco, setDisco] = useState(null);
135
+ const [meterType, setMeterType] = useState('PREPAID');
136
+ const [meterNumber, setMeterNumber] = useState('');
137
+ const [validating, setValidating] = useState(false);
138
+ const [customerName, setCustomerName] = useState(null);
139
+ const [minVendInKobo, setMinVendInKobo] = useState(null);
140
+ const [purchaseAmount, setPurchaseAmount] = useState(amount > 0 ? String(amount) : '');
141
+ const [forSelf, setForSelf] = useState(true);
142
+ const [phone, setPhone] = useState('');
143
+ const [email, setEmail] = useState('');
144
+ useEffect(() => {
145
+ billsAPI.getDiscos().then(res => {
146
+ if (res.status) setDiscos(res.payload.filter(d => d.isActive));
147
+ }).catch(() => onError?.({
148
+ code: 'DISCO_LOAD_FAILED',
149
+ message: 'Could not load electricity providers'
150
+ }));
151
+ }, []);
152
+
153
+ // Re-validate whenever the meter number reaches a plausible length, or
154
+ // the disco/type changes — mirrors checkMeterNumber()'s trigger in the
155
+ // existing BuyPower-backed Electricity screen.
156
+ useEffect(() => {
157
+ setCustomerName(null);
158
+ setMinVendInKobo(null);
159
+ if (!disco || meterNumber.length < 10) return;
160
+ setValidating(true);
161
+ billsAPI.validateMeter(meterNumber, disco.code, meterType).then(res => {
162
+ if (res.status) {
163
+ setCustomerName(res.payload.customerName);
164
+ setMinVendInKobo(res.payload.minVendAmountInKobo ?? null);
165
+ } else {
166
+ onError?.({
167
+ code: 'METER_INVALID',
168
+ message: res.message
169
+ });
170
+ }
171
+ }).catch(() => onError?.({
172
+ code: 'METER_VALIDATION_FAILED',
173
+ message: 'Could not validate meter number'
174
+ })).finally(() => setValidating(false));
175
+ }, [disco, meterType, meterNumber]);
176
+ const amountInKobo = Math.round((Number(purchaseAmount) || 0) * 100);
177
+ const meetsMinVend = minVendInKobo == null || amountInKobo >= minVendInKobo;
178
+ const contactValid = forSelf || /^0\d{10}$/.test(phone) && /\S+@\S+\.\S+/.test(email);
179
+ const isValid = !!disco && meterNumber.length >= 10 && !!customerName && amountInKobo > 0 && meetsMinVend && contactValid;
180
+ const handleContinue = () => {
181
+ if (!isValid || !disco) return;
182
+ onProcessTransaction({
183
+ category: 'ELECTRICITY',
184
+ meterNumber,
185
+ disco: disco.code,
186
+ meterType,
187
+ amountInKobo,
188
+ forSelf,
189
+ phoneNumber: forSelf ? user?.phone ?? '' : phone,
190
+ email: forSelf ? user?.email ?? '' : email,
191
+ idempotencyKey: `electricity_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`
192
+ }, [{
193
+ label: 'Disco',
194
+ value: disco.displayName
195
+ }, {
196
+ label: 'Meter Type',
197
+ value: meterType
198
+ }, {
199
+ label: 'Meter Number',
200
+ value: meterNumber
201
+ }, {
202
+ label: 'Customer',
203
+ value: customerName ?? ''
204
+ }]);
205
+ };
206
+ return /*#__PURE__*/_jsx(Container, {
207
+ children: /*#__PURE__*/_jsx(KeyboardAvoidingView, {
208
+ style: {
209
+ flex: 1
210
+ },
211
+ behavior: Platform.OS === 'ios' ? 'padding' : undefined,
212
+ children: /*#__PURE__*/_jsxs(Body, {
213
+ keyboardShouldPersistTaps: "handled",
214
+ showsVerticalScrollIndicator: false,
215
+ children: [/*#__PURE__*/_jsx(FieldLabel, {
216
+ children: "Distribution Company"
217
+ }), /*#__PURE__*/_jsxs(SelectBox, {
218
+ onPress: () => setDiscoPickerOpen(v => !v),
219
+ children: [/*#__PURE__*/_jsx(SelectBoxText, {
220
+ placeholder: !disco,
221
+ children: disco?.displayName ?? 'Select a disco'
222
+ }), /*#__PURE__*/_jsx(Text, {
223
+ children: discoPickerOpen ? '▲' : '▼'
224
+ })]
225
+ }), discoPickerOpen && /*#__PURE__*/_jsx(DiscoSheet, {
226
+ children: /*#__PURE__*/_jsx(ScrollView, {
227
+ showsVerticalScrollIndicator: false,
228
+ children: discos.map(d => /*#__PURE__*/_jsx(DiscoRow, {
229
+ selected: disco?.code === d.code,
230
+ onPress: () => {
231
+ setDisco(d);
232
+ setDiscoPickerOpen(false);
233
+ },
234
+ children: /*#__PURE__*/_jsx(DiscoRowText, {
235
+ children: d.displayName
236
+ })
237
+ }, d.code))
238
+ })
239
+ }), /*#__PURE__*/_jsx(FieldLabel, {
240
+ children: "Meter Type"
241
+ }), /*#__PURE__*/_jsxs(TypeRow, {
242
+ children: [/*#__PURE__*/_jsx(TypeChip, {
243
+ selected: meterType === 'PREPAID',
244
+ onPress: () => setMeterType('PREPAID'),
245
+ children: /*#__PURE__*/_jsx(TypeChipText, {
246
+ selected: meterType === 'PREPAID',
247
+ children: "Prepaid"
248
+ })
249
+ }), /*#__PURE__*/_jsx(TypeChip, {
250
+ selected: meterType === 'POSTPAID',
251
+ onPress: () => setMeterType('POSTPAID'),
252
+ children: /*#__PURE__*/_jsx(TypeChipText, {
253
+ selected: meterType === 'POSTPAID',
254
+ children: "Postpaid"
255
+ })
256
+ })]
257
+ }), /*#__PURE__*/_jsx(FieldLabel, {
258
+ children: "Meter Number"
259
+ }), /*#__PURE__*/_jsx(InputBox, {
260
+ children: /*#__PURE__*/_jsx(StyledInput, {
261
+ placeholder: "Enter meter number",
262
+ placeholderTextColor: C.ghost,
263
+ keyboardType: "number-pad",
264
+ value: meterNumber,
265
+ onChangeText: setMeterNumber
266
+ })
267
+ }), validating && /*#__PURE__*/_jsx(ActivityIndicator, {
268
+ color: C.brand,
269
+ style: {
270
+ marginBottom: S.md
271
+ }
272
+ }), customerName && /*#__PURE__*/_jsx(CustomerNameBox, {
273
+ children: /*#__PURE__*/_jsx(CustomerNameText, {
274
+ children: customerName
275
+ })
276
+ }), /*#__PURE__*/_jsx(FieldLabel, {
277
+ children: "Amount"
278
+ }), /*#__PURE__*/_jsxs(InputBox, {
279
+ children: [/*#__PURE__*/_jsx(CurrencyPrefix, {
280
+ children: "\u20A6"
281
+ }), /*#__PURE__*/_jsx(StyledInput, {
282
+ placeholder: "Enter amount",
283
+ placeholderTextColor: C.ghost,
284
+ keyboardType: "number-pad",
285
+ value: purchaseAmount,
286
+ onChangeText: setPurchaseAmount
287
+ })]
288
+ }), minVendInKobo != null && !meetsMinVend && /*#__PURE__*/_jsxs(Text, {
289
+ style: {
290
+ color: C.red,
291
+ fontSize: F.xs,
292
+ marginBottom: S.md
293
+ },
294
+ children: ["Minimum amount is \u20A6", (minVendInKobo / 100).toLocaleString()]
295
+ }), /*#__PURE__*/_jsxs(SwitchRow, {
296
+ children: [/*#__PURE__*/_jsx(SwitchLabel, {
297
+ children: "This is for me"
298
+ }), /*#__PURE__*/_jsx(Switch, {
299
+ value: forSelf,
300
+ onValueChange: setForSelf,
301
+ trackColor: {
302
+ false: C.border,
303
+ true: C.brandLight
304
+ },
305
+ thumbColor: forSelf ? C.brand : C.ghost
306
+ })]
307
+ }), !forSelf && /*#__PURE__*/_jsxs(_Fragment, {
308
+ children: [/*#__PURE__*/_jsx(InputBox, {
309
+ children: /*#__PURE__*/_jsx(StyledInput, {
310
+ placeholder: "Phone number",
311
+ placeholderTextColor: C.ghost,
312
+ keyboardType: "number-pad",
313
+ value: phone,
314
+ onChangeText: setPhone
315
+ })
316
+ }), /*#__PURE__*/_jsx(InputBox, {
317
+ children: /*#__PURE__*/_jsx(StyledInput, {
318
+ placeholder: "Email address",
319
+ placeholderTextColor: C.ghost,
320
+ keyboardType: "email-address",
321
+ value: email,
322
+ onChangeText: setEmail
323
+ })
324
+ })]
325
+ }), /*#__PURE__*/_jsx(ContinueButton, {
326
+ disabled: !isValid,
327
+ onPress: handleContinue,
328
+ activeOpacity: 0.85,
329
+ children: /*#__PURE__*/_jsx(ContinueButtonText, {
330
+ children: "Continue"
331
+ })
332
+ })]
333
+ })
334
+ })
335
+ });
336
+ }
337
+ //# sourceMappingURL=ElectricityScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useState","View","Text","TouchableOpacity","ScrollView","KeyboardAvoidingView","Platform","Switch","ActivityIndicator","styled","C","F","R","S","billsAPI","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","Container","white","Body","lg","FieldLabel","sm","muted","xs","InputBox","surface","md","StyledInput","TextInput","ink","CurrencyPrefix","SelectBox","SelectBoxText","props","placeholder","ghost","DiscoSheet","xl","DiscoRow","selected","brandLight","DiscoRowText","TypeRow","TypeChip","brand","TypeChipText","CustomerNameBox","greenLight","CustomerNameText","green","SwitchRow","SwitchLabel","ContinueButton","disabled","full","ContinueButtonText","ElectricityScreen","amount","user","onProcessTransaction","onError","discos","setDiscos","discoPickerOpen","setDiscoPickerOpen","disco","setDisco","meterType","setMeterType","meterNumber","setMeterNumber","validating","setValidating","customerName","setCustomerName","minVendInKobo","setMinVendInKobo","purchaseAmount","setPurchaseAmount","String","forSelf","setForSelf","phone","setPhone","email","setEmail","getDiscos","then","res","status","payload","filter","d","isActive","catch","code","message","length","validateMeter","minVendAmountInKobo","finally","amountInKobo","Math","round","Number","meetsMinVend","contactValid","test","isValid","handleContinue","category","phoneNumber","idempotencyKey","Date","now","random","toString","slice","label","value","displayName","children","style","flex","behavior","OS","undefined","keyboardShouldPersistTaps","showsVerticalScrollIndicator","onPress","v","map","placeholderTextColor","keyboardType","onChangeText","color","marginBottom","red","fontSize","toLocaleString","onValueChange","trackColor","false","border","true","thumbColor","activeOpacity"],"sourceRoot":"../../../../../../src","sources":["ui/screens/sub/billPayment/ElectricityScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"FountainPayProvider.d.ts","sourceRoot":"","sources":["../../../src/FountainPayProvider.tsx"],"names":[],"mappings":"AAYA,OAAO,EACL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AAKf,OAAO,KAAK,EACV,UAAU,EAEV,YAAY,EAMb,MAAM,cAAc,CAAC;AAStB;;;;;;;;GAQG;AACH,wBAAgB,cAAc,IAAI,UAAU,CAS3C;AAGD,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAED,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,OAAO,EACP,QAAQ,EACR,WAAW,EACX,WAAW,GACZ,EAAE,aAAa,2CAgPf"}
1
+ {"version":3,"file":"FountainPayProvider.d.ts","sourceRoot":"","sources":["../../../src/FountainPayProvider.tsx"],"names":[],"mappings":"AAYA,OAAO,EACL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AAKf,OAAO,KAAK,EACV,UAAU,EAEV,YAAY,EAOb,MAAM,cAAc,CAAC;AAStB;;;;;;;;GAQG;AACH,wBAAgB,cAAc,IAAI,UAAU,CAS3C;AAGD,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAED,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,OAAO,EACP,QAAQ,EACR,WAAW,EACX,WAAW,GACZ,EAAE,aAAa,2CAsPf"}