@kiosinc/commons-rn 0.1.61 → 0.1.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/api/customer.js +75 -0
- package/lib/commonjs/api/customer.js.map +1 -0
- package/lib/commonjs/auth/hooks/useAuthentication.js +6 -0
- package/lib/commonjs/auth/hooks/useAuthentication.js.map +1 -1
- package/lib/commonjs/auth/hooks/useTermsOfService.js +8 -10
- package/lib/commonjs/auth/hooks/useTermsOfService.js.map +1 -1
- package/lib/commonjs/hooks/useCheckCustomer.js +57 -0
- package/lib/commonjs/hooks/useCheckCustomer.js.map +1 -0
- package/lib/commonjs/hooks/useCustomer.js +251 -0
- package/lib/commonjs/hooks/useCustomer.js.map +1 -0
- package/lib/commonjs/index.js +32 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/screens/SavedCards/CardRow.js +79 -0
- package/lib/commonjs/screens/SavedCards/CardRow.js.map +1 -0
- package/lib/commonjs/screens/SavedCards/SavedCards.js +180 -0
- package/lib/commonjs/screens/SavedCards/SavedCards.js.map +1 -0
- package/lib/commonjs/selectBusiness/queryKeys.js +6 -1
- package/lib/commonjs/selectBusiness/queryKeys.js.map +1 -1
- package/lib/commonjs/types/customer.d.js +7 -0
- package/lib/commonjs/types/customer.d.js.map +1 -0
- package/lib/commonjs/utils/checkout.js +11 -0
- package/lib/commonjs/utils/checkout.js.map +1 -0
- package/lib/commonjs/utils/currency.js +17 -0
- package/lib/commonjs/utils/currency.js.map +1 -0
- package/lib/commonjs/utils/square.js +39 -0
- package/lib/commonjs/utils/square.js.map +1 -0
- package/lib/module/api/customer.js +59 -0
- package/lib/module/api/customer.js.map +1 -0
- package/lib/module/auth/hooks/useAuthentication.js +6 -0
- package/lib/module/auth/hooks/useAuthentication.js.map +1 -1
- package/lib/module/auth/hooks/useTermsOfService.js +8 -10
- package/lib/module/auth/hooks/useTermsOfService.js.map +1 -1
- package/lib/module/hooks/useCheckCustomer.js +50 -0
- package/lib/module/hooks/useCheckCustomer.js.map +1 -0
- package/lib/module/hooks/useCustomer.js +243 -0
- package/lib/module/hooks/useCustomer.js.map +1 -0
- package/lib/module/index.js +4 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/screens/SavedCards/CardRow.js +71 -0
- package/lib/module/screens/SavedCards/CardRow.js.map +1 -0
- package/lib/module/screens/SavedCards/SavedCards.js +170 -0
- package/lib/module/screens/SavedCards/SavedCards.js.map +1 -0
- package/lib/module/selectBusiness/queryKeys.js +6 -1
- package/lib/module/selectBusiness/queryKeys.js.map +1 -1
- package/lib/module/types/customer.d.js +5 -0
- package/lib/module/types/customer.d.js.map +1 -0
- package/lib/module/utils/checkout.js +4 -0
- package/lib/module/utils/checkout.js.map +1 -0
- package/lib/module/utils/currency.js +10 -0
- package/lib/module/utils/currency.js.map +1 -0
- package/lib/module/utils/square.js +36 -0
- package/lib/module/utils/square.js.map +1 -0
- package/lib/typescript/src/api/customer.d.ts +23 -0
- package/lib/typescript/src/api/customer.d.ts.map +1 -0
- package/lib/typescript/src/auth/hooks/useAuthentication.d.ts.map +1 -1
- package/lib/typescript/src/auth/hooks/useTermsOfService.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useCheckCustomer.d.ts +4 -0
- package/lib/typescript/src/hooks/useCheckCustomer.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useCustomer.d.ts +58 -0
- package/lib/typescript/src/hooks/useCustomer.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +4 -0
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/screens/SavedCards/CardRow.d.ts +11 -0
- package/lib/typescript/src/screens/SavedCards/CardRow.d.ts.map +1 -0
- package/lib/typescript/src/screens/SavedCards/SavedCards.d.ts +7 -0
- package/lib/typescript/src/screens/SavedCards/SavedCards.d.ts.map +1 -0
- package/lib/typescript/src/selectBusiness/queryKeys.d.ts +5 -0
- package/lib/typescript/src/selectBusiness/queryKeys.d.ts.map +1 -1
- package/lib/typescript/src/utils/checkout.d.ts +3 -0
- package/lib/typescript/src/utils/checkout.d.ts.map +1 -0
- package/lib/typescript/src/utils/currency.d.ts +5 -0
- package/lib/typescript/src/utils/currency.d.ts.map +1 -0
- package/lib/typescript/src/utils/square.d.ts +6 -0
- package/lib/typescript/src/utils/square.d.ts.map +1 -0
- package/package.json +3 -1
- package/src/api/customer.ts +112 -0
- package/src/auth/hooks/useAuthentication.ts +4 -0
- package/src/auth/hooks/useTermsOfService.ts +8 -11
- package/src/hooks/useCheckCustomer.ts +42 -0
- package/src/hooks/useCustomer.ts +331 -0
- package/src/index.tsx +6 -0
- package/src/screens/SavedCards/CardRow.tsx +94 -0
- package/src/screens/SavedCards/SavedCards.tsx +197 -0
- package/src/selectBusiness/queryKeys.ts +5 -0
- package/src/types/customer.d.ts +70 -0
- package/src/utils/checkout.ts +5 -0
- package/src/utils/currency.ts +10 -0
- package/src/utils/square.ts +50 -0
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { useAuthentication } from '../auth';
|
|
3
|
+
import { Alert } from '../components';
|
|
4
|
+
import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
|
|
5
|
+
import firestore from '@react-native-firebase/firestore';
|
|
6
|
+
import uuid from 'react-native-uuid';
|
|
7
|
+
import { connectSquareCustomer, connectSquareLoyalty, createCustomer, fetchLoyaltyRewards, fetchSquareLoyalty, getCustomer, saveCustomerAddress, saveCustomerCard, updateCustomerProfile } from '../api/customer';
|
|
8
|
+
import { useMMKVString } from 'react-native-mmkv';
|
|
9
|
+
import { MMKV_KEYS } from '../constants';
|
|
10
|
+
import { queryKeys } from '../selectBusiness/queryKeys';
|
|
11
|
+
export const useCustomerQueries = () => {
|
|
12
|
+
const queryClient = useQueryClient();
|
|
13
|
+
const {
|
|
14
|
+
user
|
|
15
|
+
} = useAuthentication();
|
|
16
|
+
const [selectedBusinessId] = useMMKVString(MMKV_KEYS.BUSINESS_ID);
|
|
17
|
+
const isLoggedIn = user && !user.isAnonymous;
|
|
18
|
+
useEffect(() => {
|
|
19
|
+
if (!isLoggedIn) {
|
|
20
|
+
queryClient.invalidateQueries([queryKeys.LOYALTY, user?.uid]);
|
|
21
|
+
}
|
|
22
|
+
}, [isLoggedIn, queryClient, user?.uid]);
|
|
23
|
+
return {
|
|
24
|
+
useFetchCustomer: () => useQuery([queryKeys.CUSTOMER, user?.uid], async () => {
|
|
25
|
+
if (isLoggedIn) {
|
|
26
|
+
return await getCustomer(user.uid);
|
|
27
|
+
} else {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
}, {
|
|
31
|
+
select: data => data?.data?.customer
|
|
32
|
+
}),
|
|
33
|
+
useCreateCustomer: () => {
|
|
34
|
+
const mutation = useMutation(async () => {
|
|
35
|
+
if (isLoggedIn) {
|
|
36
|
+
const response = await createCustomer({
|
|
37
|
+
uid: user.uid
|
|
38
|
+
});
|
|
39
|
+
if (response?.data?.customer) {
|
|
40
|
+
await queryClient.invalidateQueries([queryKeys.CUSTOMER, user?.uid]);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}, {
|
|
44
|
+
onError: err => Alert.show({
|
|
45
|
+
title: 'Code ' + err?.code,
|
|
46
|
+
description: err?.message
|
|
47
|
+
})
|
|
48
|
+
});
|
|
49
|
+
return {
|
|
50
|
+
createCustomerHook: mutation.mutateAsync,
|
|
51
|
+
createCustomerLoading: mutation.isLoading
|
|
52
|
+
};
|
|
53
|
+
},
|
|
54
|
+
useUpdateCustomer: () => {
|
|
55
|
+
const mutation = useMutation(async props => {
|
|
56
|
+
if (isLoggedIn) {
|
|
57
|
+
const response = await updateCustomerProfile({
|
|
58
|
+
uid: user.uid,
|
|
59
|
+
props
|
|
60
|
+
});
|
|
61
|
+
if (response?.data?.customer) {
|
|
62
|
+
queryClient.invalidateQueries([queryKeys.CUSTOMER, user?.uid]);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}, {
|
|
66
|
+
onError: err => Alert.show({
|
|
67
|
+
title: 'Code ' + err?.code,
|
|
68
|
+
description: err?.message
|
|
69
|
+
})
|
|
70
|
+
});
|
|
71
|
+
return {
|
|
72
|
+
updateCustomer: mutation.mutate,
|
|
73
|
+
updateCustomerLoading: mutation.isLoading
|
|
74
|
+
};
|
|
75
|
+
},
|
|
76
|
+
useSaveCustomerAddress: () => {
|
|
77
|
+
const mutation = useMutation(async address => {
|
|
78
|
+
if (isLoggedIn) {
|
|
79
|
+
const response = await saveCustomerAddress({
|
|
80
|
+
uid: user.uid,
|
|
81
|
+
address
|
|
82
|
+
});
|
|
83
|
+
if (response?.data?.customer) {
|
|
84
|
+
queryClient.invalidateQueries([queryKeys.CUSTOMER, user?.uid]);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}, {
|
|
88
|
+
onError: err => Alert.show({
|
|
89
|
+
title: 'Code ' + err?.code,
|
|
90
|
+
description: err?.message
|
|
91
|
+
})
|
|
92
|
+
});
|
|
93
|
+
return {
|
|
94
|
+
useSaveAddress: mutation.mutate,
|
|
95
|
+
saveAddressLoading: mutation.isLoading
|
|
96
|
+
};
|
|
97
|
+
},
|
|
98
|
+
useFetchSavedCards: () => useQuery([queryKeys.CARDS, user?.uid], async () => {
|
|
99
|
+
if (isLoggedIn) {
|
|
100
|
+
const payments = await firestore().collection(`customers/${user?.uid}/payments`).orderBy('updated', 'desc').where('isActive', '==', true).get();
|
|
101
|
+
if (payments.docs.length > 0) {
|
|
102
|
+
return payments.docs.map(payment => {
|
|
103
|
+
return {
|
|
104
|
+
...payment.data(),
|
|
105
|
+
id: payment.id
|
|
106
|
+
};
|
|
107
|
+
});
|
|
108
|
+
} else {
|
|
109
|
+
return [];
|
|
110
|
+
}
|
|
111
|
+
} else {
|
|
112
|
+
return [];
|
|
113
|
+
}
|
|
114
|
+
}, {
|
|
115
|
+
enabled: Boolean(isLoggedIn)
|
|
116
|
+
}),
|
|
117
|
+
useFetchSquareProgram: queryOptions => useQuery([queryKeys.PROGRAM, user?.uid, selectedBusinessId], async () => {
|
|
118
|
+
if (isLoggedIn) {
|
|
119
|
+
const programs = await firestore().collection(`customers/${user?.uid}/programs`).where('type', '==', 'customer').where('businessId', '==', selectedBusinessId).orderBy('updated', 'asc').get();
|
|
120
|
+
if (programs.docs.length > 0) {
|
|
121
|
+
return programs.docs.map(program => program.data())[0];
|
|
122
|
+
} else {
|
|
123
|
+
return null;
|
|
124
|
+
}
|
|
125
|
+
} else {
|
|
126
|
+
return null;
|
|
127
|
+
}
|
|
128
|
+
}, {
|
|
129
|
+
...queryOptions
|
|
130
|
+
}),
|
|
131
|
+
useFetchSquareLoyalty: queryOptions => useQuery([queryKeys.LOYALTY, user?.uid, selectedBusinessId], async () => {
|
|
132
|
+
if (isLoggedIn && selectedBusinessId) {
|
|
133
|
+
return await fetchSquareLoyalty(user.uid, selectedBusinessId);
|
|
134
|
+
} else {
|
|
135
|
+
return {
|
|
136
|
+
data: null
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
}, {
|
|
140
|
+
select: res => res?.data,
|
|
141
|
+
...queryOptions
|
|
142
|
+
}),
|
|
143
|
+
useSaveCustomerCard: () => {
|
|
144
|
+
const mutation = useMutation(async data => {
|
|
145
|
+
if (isLoggedIn) {
|
|
146
|
+
console.log('here in useSaveCustomerCard');
|
|
147
|
+
const response = await saveCustomerCard({
|
|
148
|
+
uid: user?.uid,
|
|
149
|
+
props: data
|
|
150
|
+
});
|
|
151
|
+
console.log('here in useSaveCustomerCard response', response.data);
|
|
152
|
+
}
|
|
153
|
+
}, {
|
|
154
|
+
onError: err => Alert.show({
|
|
155
|
+
title: 'Code ' + err?.code,
|
|
156
|
+
description: err?.message
|
|
157
|
+
}),
|
|
158
|
+
onSuccess: () => {
|
|
159
|
+
queryClient.invalidateQueries([queryKeys.CARDS, user?.uid]);
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
return {
|
|
163
|
+
saveCard: mutation.mutate,
|
|
164
|
+
saveCardLoading: mutation.isLoading
|
|
165
|
+
};
|
|
166
|
+
},
|
|
167
|
+
useDisableCard: () => {
|
|
168
|
+
const mutation = useMutation(async documentId => {
|
|
169
|
+
if (isLoggedIn) {
|
|
170
|
+
return await firestore().collection(`customers/${user?.uid}/payments`).doc(documentId).update({
|
|
171
|
+
isActive: false
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
}, {
|
|
175
|
+
onError: err => Alert.show({
|
|
176
|
+
title: 'Code ' + err?.code,
|
|
177
|
+
description: err?.message
|
|
178
|
+
}),
|
|
179
|
+
onSuccess: () => {
|
|
180
|
+
queryClient.invalidateQueries([queryKeys.CARDS, user?.uid]);
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
return {
|
|
184
|
+
disableCard: mutation.mutate,
|
|
185
|
+
disableCardLoading: mutation.isLoading
|
|
186
|
+
};
|
|
187
|
+
},
|
|
188
|
+
useConnectSquareLoyalty: () => {
|
|
189
|
+
const mutation = useMutation(async () => {
|
|
190
|
+
if (isLoggedIn && selectedBusinessId) {
|
|
191
|
+
await connectSquareLoyalty(user?.uid, {
|
|
192
|
+
businessId: selectedBusinessId,
|
|
193
|
+
idempotentKey: uuid.v4(),
|
|
194
|
+
uid: user?.uid
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
}, {
|
|
198
|
+
onError: err => Alert.show({
|
|
199
|
+
title: 'Code ' + err?.code,
|
|
200
|
+
description: err?.message
|
|
201
|
+
}),
|
|
202
|
+
onSuccess: () => {
|
|
203
|
+
queryClient.invalidateQueries([queryKeys.LOYALTY, user?.uid]);
|
|
204
|
+
}
|
|
205
|
+
});
|
|
206
|
+
return {
|
|
207
|
+
connectSquareLoyalty: mutation.mutate,
|
|
208
|
+
connectLoyaltyLoading: mutation.isLoading
|
|
209
|
+
};
|
|
210
|
+
},
|
|
211
|
+
useConnectSquareCustomer: () => {
|
|
212
|
+
const mutation = useMutation(async () => {
|
|
213
|
+
if (isLoggedIn && selectedBusinessId) {
|
|
214
|
+
await connectSquareCustomer(user?.uid, {
|
|
215
|
+
businessId: selectedBusinessId,
|
|
216
|
+
idempotentKey: uuid.v4(),
|
|
217
|
+
uid: user?.uid
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
}, {
|
|
221
|
+
onError: err => Alert.show({
|
|
222
|
+
title: 'Code ' + err?.code,
|
|
223
|
+
description: err?.message
|
|
224
|
+
}),
|
|
225
|
+
onSuccess: () => {
|
|
226
|
+
queryClient.invalidateQueries([queryKeys.PROGRAM, user?.uid]);
|
|
227
|
+
}
|
|
228
|
+
});
|
|
229
|
+
return {
|
|
230
|
+
connectSquare: mutation.mutate,
|
|
231
|
+
connectSquareLoading: mutation.isLoading
|
|
232
|
+
};
|
|
233
|
+
},
|
|
234
|
+
useFetchLoyaltyRewards: () => useQuery([queryKeys.REWARDS, selectedBusinessId], async () => {
|
|
235
|
+
if (selectedBusinessId) return await fetchLoyaltyRewards(selectedBusinessId);else {
|
|
236
|
+
return {};
|
|
237
|
+
}
|
|
238
|
+
}, {
|
|
239
|
+
select: data => data?.data
|
|
240
|
+
})
|
|
241
|
+
};
|
|
242
|
+
};
|
|
243
|
+
//# sourceMappingURL=useCustomer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useAuthentication","Alert","useMutation","useQuery","useQueryClient","firestore","uuid","connectSquareCustomer","connectSquareLoyalty","createCustomer","fetchLoyaltyRewards","fetchSquareLoyalty","getCustomer","saveCustomerAddress","saveCustomerCard","updateCustomerProfile","useMMKVString","MMKV_KEYS","queryKeys","useCustomerQueries","queryClient","user","selectedBusinessId","BUSINESS_ID","isLoggedIn","isAnonymous","invalidateQueries","LOYALTY","uid","useFetchCustomer","CUSTOMER","select","data","customer","useCreateCustomer","mutation","response","onError","err","show","title","code","description","message","createCustomerHook","mutateAsync","createCustomerLoading","isLoading","useUpdateCustomer","props","updateCustomer","mutate","updateCustomerLoading","useSaveCustomerAddress","address","useSaveAddress","saveAddressLoading","useFetchSavedCards","CARDS","payments","collection","orderBy","where","get","docs","length","map","payment","id","enabled","Boolean","useFetchSquareProgram","queryOptions","PROGRAM","programs","program","useFetchSquareLoyalty","res","useSaveCustomerCard","console","log","onSuccess","saveCard","saveCardLoading","useDisableCard","documentId","doc","update","isActive","disableCard","disableCardLoading","useConnectSquareLoyalty","businessId","idempotentKey","v4","connectLoyaltyLoading","useConnectSquareCustomer","connectSquare","connectSquareLoading","useFetchLoyaltyRewards","REWARDS"],"sourceRoot":"../../../src","sources":["hooks/useCustomer.ts"],"mappings":"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"}
|
package/lib/module/index.js
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
export { Currency } from './utils/currency';
|
|
2
|
+
export { useCustomerQueries } from './hooks/useCustomer';
|
|
3
|
+
export { useCheckCustomer } from './hooks/useCheckCustomer';
|
|
4
|
+
export { SavedCards } from './screens/SavedCards/SavedCards';
|
|
1
5
|
export { useMultiSnapBottomSheetRef, TMultiSnapBottomSheetRef } from './utils/useMultiSnapBottomSheetRef';
|
|
2
6
|
export { useSingleSnapBottomSheetRef, TSingleSnapBottomSheetRef } from './utils/useSingleSnapBottomSheetRef';
|
|
3
7
|
export function multiply(a, b) {
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMultiSnapBottomSheetRef","TMultiSnapBottomSheetRef","useSingleSnapBottomSheetRef","TSingleSnapBottomSheetRef","multiply","a","b","Promise","resolve","analytics"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"names":["Currency","useCustomerQueries","useCheckCustomer","SavedCards","useMultiSnapBottomSheetRef","TMultiSnapBottomSheetRef","useSingleSnapBottomSheetRef","TSingleSnapBottomSheetRef","multiply","a","b","Promise","resolve","analytics"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,kBAAkB;AAE3C,SAASC,kBAAkB,QAAQ,qBAAqB;AACxD,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,SAASC,UAAU,QAAQ,iCAAiC;AAE5D,SACEC,0BAA0B,EAC1BC,wBAAwB,QACnB,oCAAoC;AAC3C,SACEC,2BAA2B,EAC3BC,yBAAyB,QACpB,qCAAqC;AAE5C,OAAO,SAASC,QAAQA,CAACC,CAAS,EAAEC,CAAS,EAAmB;EAC9D,OAAOC,OAAO,CAACC,OAAO,CAACH,CAAC,GAAGC,CAAC,CAAC;AAC/B;AACA,cAAc,cAAc;AAC5B,cAAc,QAAQ;AACtB,cAAc,kBAAkB;AAEhC,SAASG,SAAS,QAAQ,mBAAmB"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { Alert, Card, IconButton, Text, View } from '../../components';
|
|
4
|
+
import { RadioButton, useTheme } from 'react-native-paper';
|
|
5
|
+
import { useTranslation } from 'react-i18next';
|
|
6
|
+
import { getCardName } from '../../utils/checkout';
|
|
7
|
+
export const CardRow = ({
|
|
8
|
+
card,
|
|
9
|
+
onDelete,
|
|
10
|
+
onSelect,
|
|
11
|
+
isSelectable,
|
|
12
|
+
isSelected,
|
|
13
|
+
isDisabled
|
|
14
|
+
}) => {
|
|
15
|
+
const name = getCardName(card);
|
|
16
|
+
const {
|
|
17
|
+
t
|
|
18
|
+
} = useTranslation();
|
|
19
|
+
const theme = useTheme();
|
|
20
|
+
const onDeleteCard = () => {
|
|
21
|
+
Alert.show({
|
|
22
|
+
title: t('checkout.confirmCardDelete'),
|
|
23
|
+
description: t('checkout.cardDeleteDesc', {
|
|
24
|
+
card: card.cardDetails.last4
|
|
25
|
+
}),
|
|
26
|
+
buttons: [{
|
|
27
|
+
label: t('delete'),
|
|
28
|
+
textColor: theme.colors.error,
|
|
29
|
+
onPress: () => onDelete(card.id)
|
|
30
|
+
}, {
|
|
31
|
+
label: t('cancel'),
|
|
32
|
+
textColor: theme.colors.onSurface
|
|
33
|
+
}]
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
return /*#__PURE__*/React.createElement(Card, _extends({
|
|
37
|
+
disabled: isDisabled,
|
|
38
|
+
mode: "outlined",
|
|
39
|
+
borderRadius: "4",
|
|
40
|
+
mb: "8"
|
|
41
|
+
}, isSelectable ? {
|
|
42
|
+
onPress: () => {
|
|
43
|
+
onSelect(card.linkedObjectId);
|
|
44
|
+
}
|
|
45
|
+
} : {}), /*#__PURE__*/React.createElement(View, {
|
|
46
|
+
flexDirection: "row",
|
|
47
|
+
px: "8",
|
|
48
|
+
alignItems: "center",
|
|
49
|
+
justifyContent: "space-between"
|
|
50
|
+
}, isSelectable && /*#__PURE__*/React.createElement(RadioButton.Android, {
|
|
51
|
+
value: card.linkedObjectId,
|
|
52
|
+
status: isSelected ? 'checked' : 'unchecked',
|
|
53
|
+
onPress: () => {
|
|
54
|
+
onSelect(card.linkedObjectId);
|
|
55
|
+
}
|
|
56
|
+
}), /*#__PURE__*/React.createElement(View, {
|
|
57
|
+
paddingStart: "8",
|
|
58
|
+
flexDirection: "row",
|
|
59
|
+
flex: 1,
|
|
60
|
+
alignItems: "center",
|
|
61
|
+
justifyContent: "space-between"
|
|
62
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
63
|
+
variant: "bodyMedium"
|
|
64
|
+
}, name), /*#__PURE__*/React.createElement(IconButton, {
|
|
65
|
+
disabled: isDisabled,
|
|
66
|
+
icon: "trash-can-outline",
|
|
67
|
+
bg: "background",
|
|
68
|
+
onPress: onDeleteCard
|
|
69
|
+
}))));
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=CardRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Alert","Card","IconButton","Text","View","RadioButton","useTheme","useTranslation","getCardName","CardRow","card","onDelete","onSelect","isSelectable","isSelected","isDisabled","name","t","theme","onDeleteCard","show","title","description","cardDetails","last4","buttons","label","textColor","colors","error","onPress","id","onSurface","createElement","_extends","disabled","mode","borderRadius","mb","linkedObjectId","flexDirection","px","alignItems","justifyContent","Android","value","status","paddingStart","flex","variant","icon","bg"],"sourceRoot":"../../../../src","sources":["screens/SavedCards/CardRow.tsx"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,KAAK,EAAEC,IAAI,EAAEC,UAAU,EAAEC,IAAI,EAAEC,IAAI,QAAQ,kBAAkB;AACtE,SAASC,WAAW,EAAEC,QAAQ,QAAQ,oBAAoB;AAC1D,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,WAAW,QAAQ,sBAAsB;AAGlD,OAAO,MAAMC,OAAO,GAAGA,CAAC;EACtBC,IAAI;EACJC,QAAQ;EACRC,QAAQ;EACRC,YAAY;EACZC,UAAU;EACVC;AAQF,CAAC,KAAK;EACJ,MAAMC,IAAI,GAAGR,WAAW,CAACE,IAAI,CAAC;EAC9B,MAAM;IAAEO;EAAE,CAAC,GAAGV,cAAc,CAAC,CAAC;EAC9B,MAAMW,KAAK,GAAGZ,QAAQ,CAAC,CAAC;EAExB,MAAMa,YAAY,GAAGA,CAAA,KAAM;IACzBnB,KAAK,CAACoB,IAAI,CAAC;MACTC,KAAK,EAAEJ,CAAC,CAAC,4BAA4B,CAAC;MACtCK,WAAW,EAAEL,CAAC,CAAC,yBAAyB,EAAE;QACxCP,IAAI,EAAEA,IAAI,CAACa,WAAW,CAACC;MACzB,CAAC,CAAC;MACFC,OAAO,EAAE,CACP;QACEC,KAAK,EAAET,CAAC,CAAC,QAAQ,CAAC;QAClBU,SAAS,EAAET,KAAK,CAACU,MAAM,CAACC,KAAK;QAC7BC,OAAO,EAAEA,CAAA,KAAMnB,QAAQ,CAACD,IAAI,CAACqB,EAAE;MACjC,CAAC,EACD;QACEL,KAAK,EAAET,CAAC,CAAC,QAAQ,CAAC;QAClBU,SAAS,EAAET,KAAK,CAACU,MAAM,CAACI;MAC1B,CAAC;IAEL,CAAC,CAAC;EACJ,CAAC;EAED,oBACEjC,KAAA,CAAAkC,aAAA,CAAChC,IAAI,EAAAiC,QAAA;IACHC,QAAQ,EAAEpB,UAAW;IACrBqB,IAAI,EAAC,UAAU;IACfC,YAAY,EAAC,GAAG;IAChBC,EAAE,EAAC;EAAG,GACDzB,YAAY,GACb;IACEiB,OAAO,EAAEA,CAAA,KAAM;MACblB,QAAQ,CAACF,IAAI,CAAC6B,cAAc,CAAC;IAC/B;EACF,CAAC,GACD,CAAC,CAAC,gBAENxC,KAAA,CAAAkC,aAAA,CAAC7B,IAAI;IACHoC,aAAa,EAAC,KAAK;IACnBC,EAAE,EAAC,GAAG;IACNC,UAAU,EAAC,QAAQ;IACnBC,cAAc,EAAC;EAAe,GAE7B9B,YAAY,iBACXd,KAAA,CAAAkC,aAAA,CAAC5B,WAAW,CAACuC,OAAO;IAClBC,KAAK,EAAEnC,IAAI,CAAC6B,cAAe;IAC3BO,MAAM,EAAEhC,UAAU,GAAG,SAAS,GAAG,WAAY;IAC7CgB,OAAO,EAAEA,CAAA,KAAM;MACblB,QAAQ,CAACF,IAAI,CAAC6B,cAAc,CAAC;IAC/B;EAAE,CACH,CACF,eACDxC,KAAA,CAAAkC,aAAA,CAAC7B,IAAI;IACH2C,YAAY,EAAC,GAAG;IAChBP,aAAa,EAAC,KAAK;IACnBQ,IAAI,EAAE,CAAE;IACRN,UAAU,EAAC,QAAQ;IACnBC,cAAc,EAAC;EAAe,gBAE9B5C,KAAA,CAAAkC,aAAA,CAAC9B,IAAI;IAAC8C,OAAO,EAAC;EAAY,GAAEjC,IAAW,CAAC,eACxCjB,KAAA,CAAAkC,aAAA,CAAC/B,UAAU;IACTiC,QAAQ,EAAEpB,UAAW;IACrBmC,IAAI,EAAC,mBAAmB;IACxBC,EAAE,EAAC,YAAY;IACfrB,OAAO,EAAEX;EAAa,CACvB,CACG,CACF,CACF,CAAC;AAEX,CAAC"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import React, { useEffect, useState } from 'react';
|
|
2
|
+
import { Alert, Button, LineLoader, RefreshControl, Text, View } from '../../components';
|
|
3
|
+
import { ActivityIndicator, useTheme } from 'react-native-paper';
|
|
4
|
+
import uuid from 'react-native-uuid';
|
|
5
|
+
import { useTranslation } from 'react-i18next';
|
|
6
|
+
import { FlatList } from 'react-native';
|
|
7
|
+
import { onStartCardEntry } from '../../utils/square';
|
|
8
|
+
import { useCustomerQueries } from '../../hooks/useCustomer';
|
|
9
|
+
import { useCheckCustomer } from '../../hooks/useCheckCustomer';
|
|
10
|
+
import { CardRow } from './CardRow';
|
|
11
|
+
export const SavedCards = ({
|
|
12
|
+
onCheckout,
|
|
13
|
+
total
|
|
14
|
+
}) => {
|
|
15
|
+
const {
|
|
16
|
+
t
|
|
17
|
+
} = useTranslation();
|
|
18
|
+
const theme = useTheme();
|
|
19
|
+
const {
|
|
20
|
+
customer
|
|
21
|
+
} = useCheckCustomer();
|
|
22
|
+
const {
|
|
23
|
+
useSaveCustomerCard,
|
|
24
|
+
useFetchSavedCards,
|
|
25
|
+
useDisableCard,
|
|
26
|
+
useUpdateCustomer
|
|
27
|
+
} = useCustomerQueries();
|
|
28
|
+
const {
|
|
29
|
+
saveCard,
|
|
30
|
+
saveCardLoading
|
|
31
|
+
} = useSaveCustomerCard();
|
|
32
|
+
const {
|
|
33
|
+
disableCard,
|
|
34
|
+
disableCardLoading
|
|
35
|
+
} = useDisableCard();
|
|
36
|
+
const [selectedPaymentId, onSelectPaymentId] = useState('');
|
|
37
|
+
const {
|
|
38
|
+
updateCustomer,
|
|
39
|
+
updateCustomerLoading
|
|
40
|
+
} = useUpdateCustomer();
|
|
41
|
+
useEffect(() => {
|
|
42
|
+
if (customer?.paymentId) {
|
|
43
|
+
onSelectPaymentId(customer.paymentId);
|
|
44
|
+
}
|
|
45
|
+
}, [customer?.paymentId, onSelectPaymentId]);
|
|
46
|
+
const {
|
|
47
|
+
data: cards = [],
|
|
48
|
+
isFetching,
|
|
49
|
+
isLoading,
|
|
50
|
+
refetch
|
|
51
|
+
} = useFetchSavedCards();
|
|
52
|
+
const onAddPress = () => {
|
|
53
|
+
onStartCardEntry(cardDetails => {
|
|
54
|
+
saveCard({
|
|
55
|
+
sourceId: cardDetails.nonce,
|
|
56
|
+
idempotentKey: uuid.v4()
|
|
57
|
+
});
|
|
58
|
+
}, () => {});
|
|
59
|
+
};
|
|
60
|
+
const label = cards.length > 0 ? t('checkout.payAndPlaceOrder') : t('checkout.payByCard');
|
|
61
|
+
if (isLoading) {
|
|
62
|
+
return /*#__PURE__*/React.createElement(ActivityIndicator, null);
|
|
63
|
+
}
|
|
64
|
+
const onUseCard = () => {
|
|
65
|
+
if (cards.length === 0) {
|
|
66
|
+
// If no cards then initiate add card flow.
|
|
67
|
+
onStartCardEntry(cardDetails => {
|
|
68
|
+
saveCard({
|
|
69
|
+
sourceId: cardDetails.nonce,
|
|
70
|
+
idempotentKey: uuid.v4()
|
|
71
|
+
});
|
|
72
|
+
}, () => {});
|
|
73
|
+
} else if (!customer.paymentId) {
|
|
74
|
+
Alert.show({
|
|
75
|
+
title: 'Select a card'
|
|
76
|
+
});
|
|
77
|
+
} else {
|
|
78
|
+
// Make payment
|
|
79
|
+
const selectedCard = cards.find(card => card.linkedObjectId === customer.paymentId);
|
|
80
|
+
if (selectedCard) {
|
|
81
|
+
onCheckout?.(selectedCard);
|
|
82
|
+
} else {
|
|
83
|
+
Alert.show({
|
|
84
|
+
title: 'Select a card'
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
90
|
+
flex: 1
|
|
91
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
92
|
+
px: "16",
|
|
93
|
+
bg: "background",
|
|
94
|
+
flex: 1
|
|
95
|
+
}, /*#__PURE__*/React.createElement(LineLoader, {
|
|
96
|
+
isLoading: isFetching || disableCardLoading || updateCustomerLoading
|
|
97
|
+
}), /*#__PURE__*/React.createElement(FlatList, {
|
|
98
|
+
extraData: {
|
|
99
|
+
selectedPaymentId,
|
|
100
|
+
disableCardLoading
|
|
101
|
+
},
|
|
102
|
+
refreshControl: /*#__PURE__*/React.createElement(RefreshControl, {
|
|
103
|
+
refreshing: false,
|
|
104
|
+
onRefresh: refetch
|
|
105
|
+
}),
|
|
106
|
+
data: cards,
|
|
107
|
+
showsVerticalScrollIndicator: false,
|
|
108
|
+
renderItem: ({
|
|
109
|
+
item: card,
|
|
110
|
+
index
|
|
111
|
+
}) => /*#__PURE__*/React.createElement(CardRow, {
|
|
112
|
+
isDisabled: disableCardLoading,
|
|
113
|
+
isSelected: selectedPaymentId === card.linkedObjectId,
|
|
114
|
+
isSelectable: !!onCheckout,
|
|
115
|
+
key: index,
|
|
116
|
+
card: card,
|
|
117
|
+
onDelete: id => {
|
|
118
|
+
disableCard(id);
|
|
119
|
+
},
|
|
120
|
+
onSelect: linkedObjectId => {
|
|
121
|
+
onSelectPaymentId(linkedObjectId);
|
|
122
|
+
updateCustomer({
|
|
123
|
+
paymentId: linkedObjectId,
|
|
124
|
+
addressId: customer.addressId,
|
|
125
|
+
squareCustomerId: customer.squareCustomerId
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
}),
|
|
129
|
+
ListHeaderComponent: /*#__PURE__*/React.createElement(React.Fragment, null, cards.length > 0 ? /*#__PURE__*/React.createElement(Text, {
|
|
130
|
+
mb: "8",
|
|
131
|
+
variant: "titleMedium"
|
|
132
|
+
}, t('checkout.paymentMethods')) : /*#__PURE__*/React.createElement(Text, {
|
|
133
|
+
variant: "bodyLarge",
|
|
134
|
+
color: "outline"
|
|
135
|
+
}, t('checkout.noSavedCards'))),
|
|
136
|
+
ListFooterComponent: /*#__PURE__*/React.createElement(View, {
|
|
137
|
+
alignItems: "flex-start"
|
|
138
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
139
|
+
pt: '16',
|
|
140
|
+
loading: saveCardLoading,
|
|
141
|
+
onPress: onAddPress,
|
|
142
|
+
icon: "plus",
|
|
143
|
+
mode: "text"
|
|
144
|
+
}, t('checkout.addCard')))
|
|
145
|
+
})), !!onCheckout && /*#__PURE__*/React.createElement(View, {
|
|
146
|
+
bg: "secondaryContainer",
|
|
147
|
+
height: 84,
|
|
148
|
+
padding: "16",
|
|
149
|
+
justifyContent: "space-between",
|
|
150
|
+
flexDirection: "row",
|
|
151
|
+
width: "100%"
|
|
152
|
+
}, /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(Text, {
|
|
153
|
+
variant: "bodyLarge",
|
|
154
|
+
color: "onSurface"
|
|
155
|
+
}, t('order.total')), /*#__PURE__*/React.createElement(Text, {
|
|
156
|
+
variant: "titleLarge",
|
|
157
|
+
color: "onSurface"
|
|
158
|
+
}, total)), /*#__PURE__*/React.createElement(Button, {
|
|
159
|
+
mode: "contained",
|
|
160
|
+
height: 40,
|
|
161
|
+
width: 'auto',
|
|
162
|
+
alignSelf: "center",
|
|
163
|
+
bg: "primary",
|
|
164
|
+
labelStyle: [{
|
|
165
|
+
color: theme.colors.background
|
|
166
|
+
}],
|
|
167
|
+
onPress: onUseCard
|
|
168
|
+
}, label)));
|
|
169
|
+
};
|
|
170
|
+
//# sourceMappingURL=SavedCards.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useEffect","useState","Alert","Button","LineLoader","RefreshControl","Text","View","ActivityIndicator","useTheme","uuid","useTranslation","FlatList","onStartCardEntry","useCustomerQueries","useCheckCustomer","CardRow","SavedCards","onCheckout","total","t","theme","customer","useSaveCustomerCard","useFetchSavedCards","useDisableCard","useUpdateCustomer","saveCard","saveCardLoading","disableCard","disableCardLoading","selectedPaymentId","onSelectPaymentId","updateCustomer","updateCustomerLoading","paymentId","data","cards","isFetching","isLoading","refetch","onAddPress","cardDetails","sourceId","nonce","idempotentKey","v4","label","length","createElement","onUseCard","show","title","selectedCard","find","card","linkedObjectId","flex","px","bg","extraData","refreshControl","refreshing","onRefresh","showsVerticalScrollIndicator","renderItem","item","index","isDisabled","isSelected","isSelectable","key","onDelete","id","onSelect","addressId","squareCustomerId","ListHeaderComponent","Fragment","mb","variant","color","ListFooterComponent","alignItems","pt","loading","onPress","icon","mode","height","padding","justifyContent","flexDirection","width","alignSelf","labelStyle","colors","background"],"sourceRoot":"../../../../src","sources":["screens/SavedCards/SavedCards.tsx"],"mappings":"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"}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
export const queryKeys = {
|
|
2
2
|
BUSINESSES: 'BUSINESSES',
|
|
3
3
|
TERMS_AND_CONDITIONS: 'TERMS_AND_CONDITIONS',
|
|
4
|
-
TERMS_AND_CONDITIONS_URL: 'TERMS_AND_CONDITIONS_URL'
|
|
4
|
+
TERMS_AND_CONDITIONS_URL: 'TERMS_AND_CONDITIONS_URL',
|
|
5
|
+
CARDS: 'CARDS',
|
|
6
|
+
CUSTOMER: 'CUSTOMER',
|
|
7
|
+
PROGRAM: 'PROGRAM',
|
|
8
|
+
LOYALTY: 'LOYALTY',
|
|
9
|
+
REWARDS: 'REWARDS'
|
|
5
10
|
};
|
|
6
11
|
export const DEFAULT_STALE_TIME = 60 * (60 * 1000); // 60 mins
|
|
7
12
|
//# sourceMappingURL=queryKeys.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["queryKeys","BUSINESSES","TERMS_AND_CONDITIONS","TERMS_AND_CONDITIONS_URL","DEFAULT_STALE_TIME"],"sourceRoot":"../../../src","sources":["selectBusiness/queryKeys.ts"],"mappings":"AAAA,OAAO,MAAMA,SAAS,GAAG;EACvBC,UAAU,EAAE,YAAY;EACxBC,oBAAoB,EAAE,sBAAsB;EAC5CC,wBAAwB,EAAE;
|
|
1
|
+
{"version":3,"names":["queryKeys","BUSINESSES","TERMS_AND_CONDITIONS","TERMS_AND_CONDITIONS_URL","CARDS","CUSTOMER","PROGRAM","LOYALTY","REWARDS","DEFAULT_STALE_TIME"],"sourceRoot":"../../../src","sources":["selectBusiness/queryKeys.ts"],"mappings":"AAAA,OAAO,MAAMA,SAAS,GAAG;EACvBC,UAAU,EAAE,YAAY;EACxBC,oBAAoB,EAAE,sBAAsB;EAC5CC,wBAAwB,EAAE,0BAA0B;EACpDC,KAAK,EAAE,OAAO;EACdC,QAAQ,EAAE,UAAU;EACpBC,OAAO,EAAE,SAAS;EAClBC,OAAO,EAAE,SAAS;EAClBC,OAAO,EAAE;AACX,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["PaymentType"],"sourceRoot":"../../../src","sources":["types/customer.d.ts"],"mappings":"IAwCKA,WAAW,0BAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA,EAAXA,WAAW"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getCardName","card","cardDetails","cardBrand","last4"],"sourceRoot":"../../../src","sources":["utils/checkout.ts"],"mappings":"AAEA,OAAO,MAAMA,WAAW,GAAIC,IAAyB,IAAK;EACxD,OAAOA,IAAI,CAACC,WAAW,CAACC,SAAS,GAAG,QAAQ,GAAGF,IAAI,CAACC,WAAW,CAACE,KAAK;AACvE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Currency","usdFormatter","Intl","NumberFormat","style","currency","formatToUsd","amount","format"],"sourceRoot":"../../../src","sources":["utils/currency.ts"],"mappings":"AAAA,OAAO,MAAMA,QAAQ,CAAC;EACpB,OAAOC,YAAY,GAAG,IAAIC,IAAI,CAACC,YAAY,CAAC,OAAO,EAAE;IACnDC,KAAK,EAAE,UAAU;IACjBC,QAAQ,EAAE;EACZ,CAAC,CAAC;EAEF,OAAOC,WAAWA,CAACC,MAAc,EAAE;IACjC,OAAO,IAAI,CAACN,YAAY,CAACO,MAAM,CAACD,MAAM,GAAG,GAAG,CAAC;EAC/C;AACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { SQIPCardEntry
|
|
2
|
+
// @ts-ignore
|
|
3
|
+
} from 'react-native-square-in-app-payments';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Callback when successfully get the card nonce details for processig
|
|
7
|
+
* card entry is still open and waiting for processing card nonce details
|
|
8
|
+
* @param {*} cardDetails
|
|
9
|
+
* @param onCompleteCallback
|
|
10
|
+
*/
|
|
11
|
+
async function onCardNonceRequestSuccess(cardDetails, onCompleteCallback) {
|
|
12
|
+
try {
|
|
13
|
+
// take payment with the card details
|
|
14
|
+
// await chargeCard(cardDetails);
|
|
15
|
+
|
|
16
|
+
// payment finished successfully
|
|
17
|
+
// you must call this method to close card entry
|
|
18
|
+
await SQIPCardEntry.completeCardEntry(() => onCompleteCallback(cardDetails));
|
|
19
|
+
} catch (ex) {
|
|
20
|
+
// payment failed to complete due to error
|
|
21
|
+
// notify card entry to show processing error
|
|
22
|
+
// @ts-ignore
|
|
23
|
+
await SQIPCardEntry.showCardNonceProcessingError(ex.message);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* An event listener to start card entry flow
|
|
29
|
+
*/
|
|
30
|
+
export async function onStartCardEntry(onSuccessCallback, onCancelCallback) {
|
|
31
|
+
const cardEntryConfig = {
|
|
32
|
+
collectPostalCode: false
|
|
33
|
+
};
|
|
34
|
+
await SQIPCardEntry.startCardEntryFlow(cardEntryConfig, cardDetails => onCardNonceRequestSuccess(cardDetails, onSuccessCallback), onCancelCallback);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=square.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SQIPCardEntry","onCardNonceRequestSuccess","cardDetails","onCompleteCallback","completeCardEntry","ex","showCardNonceProcessingError","message","onStartCardEntry","onSuccessCallback","onCancelCallback","cardEntryConfig","collectPostalCode","startCardEntryFlow"],"sourceRoot":"../../../src","sources":["utils/square.ts"],"mappings":"AAAA,SAEEA;AACA;AAAA,OACK,qCAAqC;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA,eAAeC,yBAAyBA,CACtCC,WAAwB,EACxBC,kBAAsD,EACtD;EACA,IAAI;IACF;IACA;;IAEA;IACA;IACA,MAAMH,aAAa,CAACI,iBAAiB,CAAC,MACpCD,kBAAkB,CAACD,WAAW,CAChC,CAAC;EACH,CAAC,CAAC,OAAOG,EAAE,EAAE;IACX;IACA;IACA;IACA,MAAML,aAAa,CAACM,4BAA4B,CAACD,EAAE,CAACE,OAAO,CAAC;EAC9D;AACF;;AAEA;AACA;AACA;AACA,OAAO,eAAeC,gBAAgBA,CACpCC,iBAAqD,EACrDC,gBAA4B,EAC5B;EACA,MAAMC,eAAe,GAAG;IACtBC,iBAAiB,EAAE;EACrB,CAAC;EACD,MAAMZ,aAAa,CAACa,kBAAkB,CACpCF,eAAe,EACdT,WAAwB,IACvBD,yBAAyB,CAACC,WAAW,EAAEO,iBAAiB,CAAC,EAC3DC,gBACF,CAAC;AACH"}
|