1
1
import { toStartCase } from './internal/toStartCase' ;
2
2
3
+ export type PaymentMethod =
4
+ | 'superpay'
5
+ | 'cash'
6
+ | 'check'
7
+ | 'cashiers_check'
8
+ | 'money_order'
9
+ | 'comchek'
10
+ | 'credit_card'
11
+ | 'ach'
12
+ | 'direct_deposit'
13
+ | 'venmo'
14
+ | 'cashapp'
15
+ | 'uship'
16
+ | 'zelle'
17
+ | 'other' ;
18
+
19
+ export const SUPERPAY_PAYMENT_METHODS : PaymentMethod [ ] = [ 'superpay' ] ;
20
+
21
+ export const CASH_PAYMENT_METHODS : PaymentMethod [ ] = [ 'cash' ] ;
22
+
23
+ export const CHECK_PAYMENT_METHODS : PaymentMethod [ ] = [
24
+ 'check' ,
25
+ 'cashiers_check' ,
26
+ 'money_order' ,
27
+ 'comchek' ,
28
+ ] ;
29
+
30
+ export const ACH_PAYMENT_METHODS : PaymentMethod [ ] = [ 'ach' , 'direct_deposit' ] ;
31
+
32
+ export const CREDIT_CARD_PAYMENT_METHODS : PaymentMethod [ ] = [ 'credit_card' ] ;
33
+
34
+ export const ELECTRONIC_PAYMENT_METHODS : PaymentMethod [ ] = [
35
+ 'venmo' ,
36
+ 'cashapp' ,
37
+ 'uship' ,
38
+ 'zelle' ,
39
+ ] ;
40
+
41
+ export const OTHER_PAYMENT_METHODS : PaymentMethod [ ] = [ 'other' ] ;
42
+
43
+ const ALL_PAYMENT_METHODS_SET = new Set ( [
44
+ ...SUPERPAY_PAYMENT_METHODS ,
45
+ ...CASH_PAYMENT_METHODS ,
46
+ ...CHECK_PAYMENT_METHODS ,
47
+ ...ACH_PAYMENT_METHODS ,
48
+ ...CREDIT_CARD_PAYMENT_METHODS ,
49
+ ...ELECTRONIC_PAYMENT_METHODS ,
50
+ ...OTHER_PAYMENT_METHODS ,
51
+ ] ) ;
52
+
53
+ export const ALL_PAYMENT_METHODS : PaymentMethod [ ] = Array . from (
54
+ ALL_PAYMENT_METHODS_SET ,
55
+ ) ;
56
+
57
+ // @deprecated – use `ALL_PAYMENT_METHODS`
3
58
export const PAYMENT_METHODS = [
4
59
'superpay' ,
5
60
'cash' ,
@@ -17,13 +72,11 @@ export const PAYMENT_METHODS = [
17
72
'other' ,
18
73
] as const ;
19
74
20
- export type PaymentMethod = typeof PAYMENT_METHODS [ number ] ;
21
-
22
75
export function isValidPaymentMethod ( input : unknown ) : input is PaymentMethod {
23
- return PAYMENT_METHODS . includes ( input as PaymentMethod ) ;
76
+ return ALL_PAYMENT_METHODS_SET . has ( input as PaymentMethod ) ;
24
77
}
25
78
26
- /** @deprecated – use `PAYMENT_METHODS ` */
79
+ /** @deprecated – use `ALL_PAYMENT_METHODS ` */
27
80
export function listPaymentMethods ( ) : readonly PaymentMethod [ ] {
28
81
return PAYMENT_METHODS ;
29
82
}
0 commit comments