@pax2pay/model-banking 0.1.508 → 0.1.509
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/Card/Creatable.ts +10 -8
- package/Card/Restriction/Merchant.ts +108 -0
- package/Card/Restriction/index.ts +28 -0
- package/Card/index.ts +17 -8
- package/dist/cjs/Card/Creatable.d.ts +4 -0
- package/dist/cjs/Card/Creatable.js +9 -8
- package/dist/cjs/Card/Creatable.js.map +1 -1
- package/dist/cjs/Card/Restriction/Merchant.d.ts +16 -0
- package/dist/cjs/Card/Restriction/Merchant.js +101 -0
- package/dist/cjs/Card/Restriction/Merchant.js.map +1 -0
- package/dist/cjs/Card/Restriction/index.d.ts +12 -0
- package/dist/cjs/Card/Restriction/index.js +26 -0
- package/dist/cjs/Card/Restriction/index.js.map +1 -0
- package/dist/cjs/Card/index.d.ts +7 -2
- package/dist/cjs/Card/index.js +16 -8
- package/dist/cjs/Card/index.js.map +1 -1
- package/dist/mjs/Card/Creatable.d.ts +4 -0
- package/dist/mjs/Card/Creatable.js +9 -8
- package/dist/mjs/Card/Creatable.js.map +1 -1
- package/dist/mjs/Card/Restriction/Merchant.d.ts +16 -0
- package/dist/mjs/Card/Restriction/Merchant.js +98 -0
- package/dist/mjs/Card/Restriction/Merchant.js.map +1 -0
- package/dist/mjs/Card/Restriction/index.d.ts +12 -0
- package/dist/mjs/Card/Restriction/index.js +23 -0
- package/dist/mjs/Card/Restriction/index.js.map +1 -0
- package/dist/mjs/Card/index.d.ts +7 -2
- package/dist/mjs/Card/index.js +16 -8
- package/dist/mjs/Card/index.js.map +1 -1
- package/package.json +1 -1
package/Card/Creatable.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { type as ruleType } from "../Rule/type"
|
|
|
8
8
|
import { Expiry } from "./Expiry"
|
|
9
9
|
import { Meta } from "./Meta"
|
|
10
10
|
import { Preset } from "./Preset"
|
|
11
|
+
import { Restriction } from "./Restriction"
|
|
11
12
|
|
|
12
13
|
export interface Creatable {
|
|
13
14
|
account: string
|
|
@@ -21,6 +22,7 @@ export interface Creatable {
|
|
|
21
22
|
rules?: Rule[]
|
|
22
23
|
meta?: Meta
|
|
23
24
|
key?: isoly.Date | string
|
|
25
|
+
restricted?: { to?: Restriction }
|
|
24
26
|
}
|
|
25
27
|
|
|
26
28
|
export namespace Creatable {
|
|
@@ -28,24 +30,19 @@ export namespace Creatable {
|
|
|
28
30
|
account: isly.string(),
|
|
29
31
|
number: isly.string().optional(),
|
|
30
32
|
preset: Preset.type,
|
|
31
|
-
details: isly.object({
|
|
32
|
-
expiry: Expiry.type,
|
|
33
|
-
holder: isly.string(),
|
|
34
|
-
}),
|
|
33
|
+
details: isly.object({ expiry: Expiry.type, holder: isly.string() }),
|
|
35
34
|
limit: isly.tuple(isly.fromIs("isoly.Currency", isoly.Currency.is), isly.number()),
|
|
36
35
|
rules: ruleType.array().optional(),
|
|
37
36
|
meta: isly.fromIs("Card.Meta", Meta.is).optional(),
|
|
38
37
|
key: isly.string().optional(),
|
|
38
|
+
restricted: isly.object<Required<Creatable>["restricted"]>({ to: Restriction.type.optional() }).optional(),
|
|
39
39
|
})
|
|
40
40
|
export const type2 = isly2.object<Creatable>({
|
|
41
41
|
account: isly2.string().rename("Account").describe("The account id the card was created on."),
|
|
42
42
|
number: isly2.string().optional().rename("Number").describe("The card identifier of the user of the api."),
|
|
43
43
|
preset: Preset.type2,
|
|
44
44
|
details: isly2
|
|
45
|
-
.object({
|
|
46
|
-
expiry: Expiry.type2,
|
|
47
|
-
holder: isly2.string(),
|
|
48
|
-
})
|
|
45
|
+
.object({ expiry: Expiry.type2, holder: isly2.string() })
|
|
49
46
|
.rename("Details")
|
|
50
47
|
.describe("The card details, the information that will be displayed on the card."),
|
|
51
48
|
limit: isly2
|
|
@@ -60,5 +57,10 @@ export namespace Creatable {
|
|
|
60
57
|
.describe("Card rules that applies to authorizations made with the card."),
|
|
61
58
|
meta: isly2.from("Meta", Meta.is).optional(),
|
|
62
59
|
key: isly2.string().optional(),
|
|
60
|
+
restricted: isly2
|
|
61
|
+
.object<Required<Creatable>["restricted"]>({ to: Restriction.type2.optional() })
|
|
62
|
+
.optional()
|
|
63
|
+
.rename("Restrictions")
|
|
64
|
+
.describe("Set of restrictions that apply to the card."),
|
|
63
65
|
})
|
|
64
66
|
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { isly } from "isly"
|
|
2
|
+
import { isly as isly2 } from "isly2"
|
|
3
|
+
import type { Transaction } from "../../Transaction"
|
|
4
|
+
|
|
5
|
+
export type Merchant = typeof Merchant.values[number]
|
|
6
|
+
export namespace Merchant {
|
|
7
|
+
export const values = [
|
|
8
|
+
"united airlines",
|
|
9
|
+
"american air",
|
|
10
|
+
"british airways",
|
|
11
|
+
"air france",
|
|
12
|
+
"lufthansa",
|
|
13
|
+
"qantas",
|
|
14
|
+
"alitalia",
|
|
15
|
+
"saudi air",
|
|
16
|
+
"sas",
|
|
17
|
+
"air india",
|
|
18
|
+
"air algerie",
|
|
19
|
+
"emirates",
|
|
20
|
+
"air malta",
|
|
21
|
+
"etihad air",
|
|
22
|
+
"tap",
|
|
23
|
+
"avianca",
|
|
24
|
+
"gulf air",
|
|
25
|
+
"aer lingus",
|
|
26
|
+
"turkish air",
|
|
27
|
+
"royal air maroc",
|
|
28
|
+
"tunis air",
|
|
29
|
+
"austrian air",
|
|
30
|
+
"flydubai",
|
|
31
|
+
"cebu air",
|
|
32
|
+
"thai airways",
|
|
33
|
+
"china airlines",
|
|
34
|
+
"malaysia airlines",
|
|
35
|
+
"iberia",
|
|
36
|
+
"qatar air",
|
|
37
|
+
"ana air",
|
|
38
|
+
"jet blue",
|
|
39
|
+
"middle east airlines",
|
|
40
|
+
"lot polish airlines",
|
|
41
|
+
"norwegian air",
|
|
42
|
+
"air arabia",
|
|
43
|
+
"easyjet",
|
|
44
|
+
"ryanair",
|
|
45
|
+
"air china",
|
|
46
|
+
"ethiopian airlines",
|
|
47
|
+
"wizz air",
|
|
48
|
+
] as const
|
|
49
|
+
export const type = isly.string<Merchant>(values)
|
|
50
|
+
export const type2 = isly2.string<Merchant>("value", ...values)
|
|
51
|
+
export type Checker = (
|
|
52
|
+
merchant: Merchant,
|
|
53
|
+
transaction: Transaction.Creatable.CardTransaction | Transaction.PreTransaction.Authorization
|
|
54
|
+
) => boolean
|
|
55
|
+
export type Attribute = { mccs: string[]; checkers?: Checker[] }
|
|
56
|
+
export const attributes: Record<Merchant, Attribute> = {
|
|
57
|
+
"united airlines": { mccs: ["3000"] },
|
|
58
|
+
"american air": { mccs: ["3001"] },
|
|
59
|
+
"british airways": { mccs: ["3005"] },
|
|
60
|
+
"air france": { mccs: ["3007"] },
|
|
61
|
+
lufthansa: { mccs: ["3008"] },
|
|
62
|
+
qantas: { mccs: ["3012"] },
|
|
63
|
+
alitalia: { mccs: ["3013"] },
|
|
64
|
+
"saudi air": { mccs: ["3014"] },
|
|
65
|
+
sas: { mccs: ["3016"] },
|
|
66
|
+
"air india": { mccs: ["3020"] },
|
|
67
|
+
"air algerie": { mccs: ["3021"] },
|
|
68
|
+
emirates: { mccs: ["3026"] },
|
|
69
|
+
"air malta": { mccs: ["3028"] },
|
|
70
|
+
"etihad air": { mccs: ["3034"] },
|
|
71
|
+
tap: { mccs: ["3035"] },
|
|
72
|
+
avianca: { mccs: ["3039"] },
|
|
73
|
+
"gulf air": { mccs: ["3040"] },
|
|
74
|
+
"aer lingus": { mccs: ["3043"] },
|
|
75
|
+
"turkish air": { mccs: ["3047"] },
|
|
76
|
+
"royal air maroc": { mccs: ["3048"] },
|
|
77
|
+
"tunis air": { mccs: ["3049"] },
|
|
78
|
+
"austrian air": { mccs: ["3051"] },
|
|
79
|
+
flydubai: { mccs: ["3070"] },
|
|
80
|
+
"cebu air": { mccs: ["3072"] },
|
|
81
|
+
"thai airways": { mccs: ["3077"] },
|
|
82
|
+
"china airlines": { mccs: ["3078"] },
|
|
83
|
+
"malaysia airlines": { mccs: ["3100"] },
|
|
84
|
+
iberia: { mccs: ["3102"] },
|
|
85
|
+
"qatar air": { mccs: ["3136"] },
|
|
86
|
+
"ana air": { mccs: ["3161"] },
|
|
87
|
+
"jet blue": { mccs: ["3174"] },
|
|
88
|
+
"middle east airlines": { mccs: ["3175"] },
|
|
89
|
+
"lot polish airlines": { mccs: ["3182"] },
|
|
90
|
+
"norwegian air": { mccs: ["3211"] },
|
|
91
|
+
"air arabia": { mccs: ["3236"] },
|
|
92
|
+
easyjet: { mccs: ["3245"] },
|
|
93
|
+
ryanair: { mccs: ["3246"] },
|
|
94
|
+
"air china": { mccs: ["3261"] },
|
|
95
|
+
"ethiopian airlines": { mccs: ["3294"] },
|
|
96
|
+
"wizz air": { mccs: ["3301"] },
|
|
97
|
+
}
|
|
98
|
+
export function check(
|
|
99
|
+
merchant: Merchant,
|
|
100
|
+
transaction: Transaction.Creatable.CardTransaction | Transaction.PreTransaction.Authorization
|
|
101
|
+
): boolean {
|
|
102
|
+
const attribute = Merchant.attributes[merchant]
|
|
103
|
+
return (
|
|
104
|
+
attribute.mccs.some(mcc => transaction.counterpart.merchant.category == mcc) ||
|
|
105
|
+
(attribute.checkers ?? []).some(checker => checker(merchant, transaction))
|
|
106
|
+
)
|
|
107
|
+
}
|
|
108
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { isly } from "isly"
|
|
2
|
+
import { isly as isly2 } from "isly2"
|
|
3
|
+
import type { Transaction } from "../../Transaction"
|
|
4
|
+
import { Merchant as RestrictionsMerchant } from "./Merchant"
|
|
5
|
+
|
|
6
|
+
export interface Restriction {
|
|
7
|
+
merchants?: Restriction.Merchant[]
|
|
8
|
+
}
|
|
9
|
+
export namespace Restriction {
|
|
10
|
+
export import Merchant = RestrictionsMerchant
|
|
11
|
+
export const type = isly.object<Restriction>({ merchants: Merchant.type.array().optional() })
|
|
12
|
+
export const type2 = isly2.object<Restriction>({
|
|
13
|
+
merchants: Merchant.type2
|
|
14
|
+
.array()
|
|
15
|
+
.optional()
|
|
16
|
+
.rename("Merchants")
|
|
17
|
+
.describe("List of merchants that the card can be used with."),
|
|
18
|
+
})
|
|
19
|
+
export function check(
|
|
20
|
+
restrictions: Restriction,
|
|
21
|
+
transaction: Transaction.Creatable.CardTransaction | Transaction.PreTransaction.Authorization
|
|
22
|
+
): boolean {
|
|
23
|
+
let result: boolean = true
|
|
24
|
+
if (restrictions.merchants?.length)
|
|
25
|
+
result = restrictions.merchants.some(merchant => Merchant.check(merchant, transaction))
|
|
26
|
+
return result
|
|
27
|
+
}
|
|
28
|
+
}
|
package/Card/index.ts
CHANGED
|
@@ -12,6 +12,7 @@ import { Expiry as CardExpiry } from "./Expiry"
|
|
|
12
12
|
import { Meta as CardMeta } from "./Meta"
|
|
13
13
|
import { Operation as CardOperation } from "./Operation"
|
|
14
14
|
import { Preset as CardPreset } from "./Preset"
|
|
15
|
+
import { Restriction as CardRestriction } from "./Restriction"
|
|
15
16
|
import { Scheme as CardScheme } from "./Scheme"
|
|
16
17
|
import { Stack as CardStack } from "./Stack"
|
|
17
18
|
|
|
@@ -38,8 +39,18 @@ export interface Card {
|
|
|
38
39
|
history: CardOperation[]
|
|
39
40
|
rules: Rule[]
|
|
40
41
|
meta?: CardMeta
|
|
42
|
+
restricted?: { to?: CardRestriction }
|
|
41
43
|
}
|
|
42
44
|
export namespace Card {
|
|
45
|
+
export import Creatable = CardCreatable
|
|
46
|
+
export import Preset = CardPreset
|
|
47
|
+
export import Meta = CardMeta
|
|
48
|
+
export import Expiry = CardExpiry
|
|
49
|
+
export import Changeable = CardChangeable
|
|
50
|
+
export import Operation = CardOperation
|
|
51
|
+
export import Scheme = CardScheme
|
|
52
|
+
export import Stack = CardStack
|
|
53
|
+
export import Restriction = CardRestriction
|
|
43
54
|
export const type = isly.object<Card>({
|
|
44
55
|
id: isly.string(),
|
|
45
56
|
number: isly.string().optional(),
|
|
@@ -63,6 +74,7 @@ export namespace Card {
|
|
|
63
74
|
history: isly.array(CardOperation.type),
|
|
64
75
|
rules: ruleType.array(),
|
|
65
76
|
meta: isly.fromIs("Card.Meta", CardMeta.is).optional(),
|
|
77
|
+
restricted: isly.object<Required<Card>["restricted"]>({ to: CardRestriction.type.optional() }).optional(),
|
|
66
78
|
})
|
|
67
79
|
export const type2: isly2.Object<Card> = isly2
|
|
68
80
|
.object<Card>({
|
|
@@ -92,17 +104,14 @@ export namespace Card {
|
|
|
92
104
|
.rename("Rules")
|
|
93
105
|
.describe("Card rules that applies to authorizations made with the card."),
|
|
94
106
|
meta: isly2.from("Card.Meta", CardMeta.is).optional().rename("Meta").describe("Additional card information."),
|
|
107
|
+
restricted: isly2
|
|
108
|
+
.object<Required<Card>["restricted"]>({ to: CardRestriction.type2.optional() })
|
|
109
|
+
.optional()
|
|
110
|
+
.rename("Restrictions")
|
|
111
|
+
.describe("Set of restrictions that apply to the card."),
|
|
95
112
|
})
|
|
96
113
|
.rename("Card")
|
|
97
114
|
.describe("Card information.")
|
|
98
|
-
export import Creatable = CardCreatable
|
|
99
|
-
export import Preset = CardPreset
|
|
100
|
-
export import Meta = CardMeta
|
|
101
|
-
export import Expiry = CardExpiry
|
|
102
|
-
export import Changeable = CardChangeable
|
|
103
|
-
export import Operation = CardOperation
|
|
104
|
-
export import Scheme = CardScheme
|
|
105
|
-
export import Stack = CardStack
|
|
106
115
|
const csvMap: Record<string, (card: Card) => string | number | undefined> = {
|
|
107
116
|
id: card => card.id,
|
|
108
117
|
created: card => readableDate(card.created),
|
|
@@ -5,6 +5,7 @@ import type { Rule } from "../Rule";
|
|
|
5
5
|
import { Expiry } from "./Expiry";
|
|
6
6
|
import { Meta } from "./Meta";
|
|
7
7
|
import { Preset } from "./Preset";
|
|
8
|
+
import { Restriction } from "./Restriction";
|
|
8
9
|
export interface Creatable {
|
|
9
10
|
account: string;
|
|
10
11
|
number?: string;
|
|
@@ -17,6 +18,9 @@ export interface Creatable {
|
|
|
17
18
|
rules?: Rule[];
|
|
18
19
|
meta?: Meta;
|
|
19
20
|
key?: isoly.Date | string;
|
|
21
|
+
restricted?: {
|
|
22
|
+
to?: Restriction;
|
|
23
|
+
};
|
|
20
24
|
}
|
|
21
25
|
export declare namespace Creatable {
|
|
22
26
|
const type: import("isly/dist/cjs/object").IslyObject<Creatable, object>;
|
|
@@ -9,30 +9,26 @@ const type_1 = require("../Rule/type");
|
|
|
9
9
|
const Expiry_1 = require("./Expiry");
|
|
10
10
|
const Meta_1 = require("./Meta");
|
|
11
11
|
const Preset_1 = require("./Preset");
|
|
12
|
+
const Restriction_1 = require("./Restriction");
|
|
12
13
|
var Creatable;
|
|
13
14
|
(function (Creatable) {
|
|
14
15
|
Creatable.type = isly_1.isly.object({
|
|
15
16
|
account: isly_1.isly.string(),
|
|
16
17
|
number: isly_1.isly.string().optional(),
|
|
17
18
|
preset: Preset_1.Preset.type,
|
|
18
|
-
details: isly_1.isly.object({
|
|
19
|
-
expiry: Expiry_1.Expiry.type,
|
|
20
|
-
holder: isly_1.isly.string(),
|
|
21
|
-
}),
|
|
19
|
+
details: isly_1.isly.object({ expiry: Expiry_1.Expiry.type, holder: isly_1.isly.string() }),
|
|
22
20
|
limit: isly_1.isly.tuple(isly_1.isly.fromIs("isoly.Currency", isoly_1.isoly.Currency.is), isly_1.isly.number()),
|
|
23
21
|
rules: type_1.type.array().optional(),
|
|
24
22
|
meta: isly_1.isly.fromIs("Card.Meta", Meta_1.Meta.is).optional(),
|
|
25
23
|
key: isly_1.isly.string().optional(),
|
|
24
|
+
restricted: isly_1.isly.object({ to: Restriction_1.Restriction.type.optional() }).optional(),
|
|
26
25
|
});
|
|
27
26
|
Creatable.type2 = isly2_1.isly.object({
|
|
28
27
|
account: isly2_1.isly.string().rename("Account").describe("The account id the card was created on."),
|
|
29
28
|
number: isly2_1.isly.string().optional().rename("Number").describe("The card identifier of the user of the api."),
|
|
30
29
|
preset: Preset_1.Preset.type2,
|
|
31
30
|
details: isly2_1.isly
|
|
32
|
-
.object({
|
|
33
|
-
expiry: Expiry_1.Expiry.type2,
|
|
34
|
-
holder: isly2_1.isly.string(),
|
|
35
|
-
})
|
|
31
|
+
.object({ expiry: Expiry_1.Expiry.type2, holder: isly2_1.isly.string() })
|
|
36
32
|
.rename("Details")
|
|
37
33
|
.describe("The card details, the information that will be displayed on the card."),
|
|
38
34
|
limit: isly2_1.isly
|
|
@@ -47,6 +43,11 @@ var Creatable;
|
|
|
47
43
|
.describe("Card rules that applies to authorizations made with the card."),
|
|
48
44
|
meta: isly2_1.isly.from("Meta", Meta_1.Meta.is).optional(),
|
|
49
45
|
key: isly2_1.isly.string().optional(),
|
|
46
|
+
restricted: isly2_1.isly
|
|
47
|
+
.object({ to: Restriction_1.Restriction.type2.optional() })
|
|
48
|
+
.optional()
|
|
49
|
+
.rename("Restrictions")
|
|
50
|
+
.describe("Set of restrictions that apply to the card."),
|
|
50
51
|
});
|
|
51
52
|
})(Creatable || (exports.Creatable = Creatable = {}));
|
|
52
53
|
//# sourceMappingURL=Creatable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Creatable.js","sourceRoot":"","sources":["../../../Card/Creatable.ts"],"names":[],"mappings":";;;AAAA,iCAA6B;AAC7B,mCAAwC;AACxC,+BAA2B;AAC3B,iCAAqC;AAGrC,uCAA+C;AAC/C,qCAAiC;AACjC,iCAA6B;AAC7B,qCAAiC;
|
|
1
|
+
{"version":3,"file":"Creatable.js","sourceRoot":"","sources":["../../../Card/Creatable.ts"],"names":[],"mappings":";;;AAAA,iCAA6B;AAC7B,mCAAwC;AACxC,+BAA2B;AAC3B,iCAAqC;AAGrC,uCAA+C;AAC/C,qCAAiC;AACjC,iCAA6B;AAC7B,qCAAiC;AACjC,+CAA2C;AAiB3C,IAAiB,SAAS,CAsCzB;AAtCD,WAAiB,SAAS;IACZ,cAAI,GAAG,WAAI,CAAC,MAAM,CAAY;QAC1C,OAAO,EAAE,WAAI,CAAC,MAAM,EAAE;QACtB,MAAM,EAAE,WAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAChC,MAAM,EAAE,eAAM,CAAC,IAAI;QACnB,OAAO,EAAE,WAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,eAAM,CAAC,IAAI,EAAE,MAAM,EAAE,WAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QACpE,KAAK,EAAE,WAAI,CAAC,KAAK,CAAC,WAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,aAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,WAAI,CAAC,MAAM,EAAE,CAAC;QAClF,KAAK,EAAE,WAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;QAClC,IAAI,EAAE,WAAI,CAAC,MAAM,CAAC,WAAW,EAAE,WAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;QAClD,GAAG,EAAE,WAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC7B,UAAU,EAAE,WAAI,CAAC,MAAM,CAAoC,EAAE,EAAE,EAAE,yBAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE;KAC1G,CAAC,CAAA;IACW,eAAK,GAAG,YAAK,CAAC,MAAM,CAAY;QAC5C,OAAO,EAAE,YAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,yCAAyC,CAAC;QAC7F,MAAM,EAAE,YAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QAC1G,MAAM,EAAE,eAAM,CAAC,KAAK;QACpB,OAAO,EAAE,YAAK;aACZ,MAAM,CAAC,EAAE,MAAM,EAAE,eAAM,CAAC,KAAK,EAAE,MAAM,EAAE,YAAK,CAAC,MAAM,EAAE,EAAE,CAAC;aACxD,MAAM,CAAC,SAAS,CAAC;aACjB,QAAQ,CAAC,uEAAuE,CAAC;QACnF,KAAK,EAAE,YAAK;aACV,KAAK,CAAC,cAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC;aACxG,MAAM,CAAC,OAAO,CAAC;aACf,QAAQ,CAAC,+CAA+C,CAAC;QAC3D,KAAK,EAAE,YAAK;aACV,IAAI,CAAC,MAAM,EAAE,WAAQ,CAAC,EAAE,CAAC;aACzB,KAAK,EAAE;aACP,QAAQ,EAAE;aACV,MAAM,CAAC,OAAO,CAAC;aACf,QAAQ,CAAC,+DAA+D,CAAC;QAC3E,IAAI,EAAE,YAAK,CAAC,IAAI,CAAC,MAAM,EAAE,WAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;QAC5C,GAAG,EAAE,YAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,UAAU,EAAE,YAAK;aACf,MAAM,CAAoC,EAAE,EAAE,EAAE,yBAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;aAC/E,QAAQ,EAAE;aACV,MAAM,CAAC,cAAc,CAAC;aACtB,QAAQ,CAAC,6CAA6C,CAAC;KACzD,CAAC,CAAA;AACH,CAAC,EAtCgB,SAAS,yBAAT,SAAS,QAsCzB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { isly } from "isly";
|
|
2
|
+
import { isly as isly2 } from "isly2";
|
|
3
|
+
import type { Transaction } from "../../Transaction";
|
|
4
|
+
export type Merchant = typeof Merchant.values[number];
|
|
5
|
+
export declare namespace Merchant {
|
|
6
|
+
const values: readonly ["united airlines", "american air", "british airways", "air france", "lufthansa", "qantas", "alitalia", "saudi air", "sas", "air india", "air algerie", "emirates", "air malta", "etihad air", "tap", "avianca", "gulf air", "aer lingus", "turkish air", "royal air maroc", "tunis air", "austrian air", "flydubai", "cebu air", "thai airways", "china airlines", "malaysia airlines", "iberia", "qatar air", "ana air", "jet blue", "middle east airlines", "lot polish airlines", "norwegian air", "air arabia", "easyjet", "ryanair", "air china", "ethiopian airlines", "wizz air"];
|
|
7
|
+
const type: isly.Type<"united airlines" | "american air" | "british airways" | "air france" | "lufthansa" | "qantas" | "alitalia" | "saudi air" | "sas" | "air india" | "air algerie" | "emirates" | "air malta" | "etihad air" | "tap" | "avianca" | "gulf air" | "aer lingus" | "turkish air" | "royal air maroc" | "tunis air" | "austrian air" | "flydubai" | "cebu air" | "thai airways" | "china airlines" | "malaysia airlines" | "iberia" | "qatar air" | "ana air" | "jet blue" | "middle east airlines" | "lot polish airlines" | "norwegian air" | "air arabia" | "easyjet" | "ryanair" | "air china" | "ethiopian airlines" | "wizz air">;
|
|
8
|
+
const type2: isly2.String<"united airlines" | "american air" | "british airways" | "air france" | "lufthansa" | "qantas" | "alitalia" | "saudi air" | "sas" | "air india" | "air algerie" | "emirates" | "air malta" | "etihad air" | "tap" | "avianca" | "gulf air" | "aer lingus" | "turkish air" | "royal air maroc" | "tunis air" | "austrian air" | "flydubai" | "cebu air" | "thai airways" | "china airlines" | "malaysia airlines" | "iberia" | "qatar air" | "ana air" | "jet blue" | "middle east airlines" | "lot polish airlines" | "norwegian air" | "air arabia" | "easyjet" | "ryanair" | "air china" | "ethiopian airlines" | "wizz air">;
|
|
9
|
+
type Checker = (merchant: Merchant, transaction: Transaction.Creatable.CardTransaction | Transaction.PreTransaction.Authorization) => boolean;
|
|
10
|
+
type Attribute = {
|
|
11
|
+
mccs: string[];
|
|
12
|
+
checkers?: Checker[];
|
|
13
|
+
};
|
|
14
|
+
const attributes: Record<Merchant, Attribute>;
|
|
15
|
+
function check(merchant: Merchant, transaction: Transaction.Creatable.CardTransaction | Transaction.PreTransaction.Authorization): boolean;
|
|
16
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Merchant = void 0;
|
|
4
|
+
const isly_1 = require("isly");
|
|
5
|
+
const isly2_1 = require("isly2");
|
|
6
|
+
var Merchant;
|
|
7
|
+
(function (Merchant) {
|
|
8
|
+
Merchant.values = [
|
|
9
|
+
"united airlines",
|
|
10
|
+
"american air",
|
|
11
|
+
"british airways",
|
|
12
|
+
"air france",
|
|
13
|
+
"lufthansa",
|
|
14
|
+
"qantas",
|
|
15
|
+
"alitalia",
|
|
16
|
+
"saudi air",
|
|
17
|
+
"sas",
|
|
18
|
+
"air india",
|
|
19
|
+
"air algerie",
|
|
20
|
+
"emirates",
|
|
21
|
+
"air malta",
|
|
22
|
+
"etihad air",
|
|
23
|
+
"tap",
|
|
24
|
+
"avianca",
|
|
25
|
+
"gulf air",
|
|
26
|
+
"aer lingus",
|
|
27
|
+
"turkish air",
|
|
28
|
+
"royal air maroc",
|
|
29
|
+
"tunis air",
|
|
30
|
+
"austrian air",
|
|
31
|
+
"flydubai",
|
|
32
|
+
"cebu air",
|
|
33
|
+
"thai airways",
|
|
34
|
+
"china airlines",
|
|
35
|
+
"malaysia airlines",
|
|
36
|
+
"iberia",
|
|
37
|
+
"qatar air",
|
|
38
|
+
"ana air",
|
|
39
|
+
"jet blue",
|
|
40
|
+
"middle east airlines",
|
|
41
|
+
"lot polish airlines",
|
|
42
|
+
"norwegian air",
|
|
43
|
+
"air arabia",
|
|
44
|
+
"easyjet",
|
|
45
|
+
"ryanair",
|
|
46
|
+
"air china",
|
|
47
|
+
"ethiopian airlines",
|
|
48
|
+
"wizz air",
|
|
49
|
+
];
|
|
50
|
+
Merchant.type = isly_1.isly.string(Merchant.values);
|
|
51
|
+
Merchant.type2 = isly2_1.isly.string("value", ...Merchant.values);
|
|
52
|
+
Merchant.attributes = {
|
|
53
|
+
"united airlines": { mccs: ["3000"] },
|
|
54
|
+
"american air": { mccs: ["3001"] },
|
|
55
|
+
"british airways": { mccs: ["3005"] },
|
|
56
|
+
"air france": { mccs: ["3007"] },
|
|
57
|
+
lufthansa: { mccs: ["3008"] },
|
|
58
|
+
qantas: { mccs: ["3012"] },
|
|
59
|
+
alitalia: { mccs: ["3013"] },
|
|
60
|
+
"saudi air": { mccs: ["3014"] },
|
|
61
|
+
sas: { mccs: ["3016"] },
|
|
62
|
+
"air india": { mccs: ["3020"] },
|
|
63
|
+
"air algerie": { mccs: ["3021"] },
|
|
64
|
+
emirates: { mccs: ["3026"] },
|
|
65
|
+
"air malta": { mccs: ["3028"] },
|
|
66
|
+
"etihad air": { mccs: ["3034"] },
|
|
67
|
+
tap: { mccs: ["3035"] },
|
|
68
|
+
avianca: { mccs: ["3039"] },
|
|
69
|
+
"gulf air": { mccs: ["3040"] },
|
|
70
|
+
"aer lingus": { mccs: ["3043"] },
|
|
71
|
+
"turkish air": { mccs: ["3047"] },
|
|
72
|
+
"royal air maroc": { mccs: ["3048"] },
|
|
73
|
+
"tunis air": { mccs: ["3049"] },
|
|
74
|
+
"austrian air": { mccs: ["3051"] },
|
|
75
|
+
flydubai: { mccs: ["3070"] },
|
|
76
|
+
"cebu air": { mccs: ["3072"] },
|
|
77
|
+
"thai airways": { mccs: ["3077"] },
|
|
78
|
+
"china airlines": { mccs: ["3078"] },
|
|
79
|
+
"malaysia airlines": { mccs: ["3100"] },
|
|
80
|
+
iberia: { mccs: ["3102"] },
|
|
81
|
+
"qatar air": { mccs: ["3136"] },
|
|
82
|
+
"ana air": { mccs: ["3161"] },
|
|
83
|
+
"jet blue": { mccs: ["3174"] },
|
|
84
|
+
"middle east airlines": { mccs: ["3175"] },
|
|
85
|
+
"lot polish airlines": { mccs: ["3182"] },
|
|
86
|
+
"norwegian air": { mccs: ["3211"] },
|
|
87
|
+
"air arabia": { mccs: ["3236"] },
|
|
88
|
+
easyjet: { mccs: ["3245"] },
|
|
89
|
+
ryanair: { mccs: ["3246"] },
|
|
90
|
+
"air china": { mccs: ["3261"] },
|
|
91
|
+
"ethiopian airlines": { mccs: ["3294"] },
|
|
92
|
+
"wizz air": { mccs: ["3301"] },
|
|
93
|
+
};
|
|
94
|
+
function check(merchant, transaction) {
|
|
95
|
+
const attribute = Merchant.attributes[merchant];
|
|
96
|
+
return (attribute.mccs.some(mcc => transaction.counterpart.merchant.category == mcc) ||
|
|
97
|
+
(attribute.checkers ?? []).some(checker => checker(merchant, transaction)));
|
|
98
|
+
}
|
|
99
|
+
Merchant.check = check;
|
|
100
|
+
})(Merchant || (exports.Merchant = Merchant = {}));
|
|
101
|
+
//# sourceMappingURL=Merchant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Merchant.js","sourceRoot":"","sources":["../../../../Card/Restriction/Merchant.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { isly as isly2 } from "isly2";
|
|
2
|
+
import type { Transaction } from "../../Transaction";
|
|
3
|
+
import { Merchant as RestrictionsMerchant } from "./Merchant";
|
|
4
|
+
export interface Restriction {
|
|
5
|
+
merchants?: Restriction.Merchant[];
|
|
6
|
+
}
|
|
7
|
+
export declare namespace Restriction {
|
|
8
|
+
export import Merchant = RestrictionsMerchant;
|
|
9
|
+
const type: import("isly/dist/cjs/object").IslyObject<Restriction, object>;
|
|
10
|
+
const type2: isly2.Object<Restriction>;
|
|
11
|
+
function check(restrictions: Restriction, transaction: Transaction.Creatable.CardTransaction | Transaction.PreTransaction.Authorization): boolean;
|
|
12
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Restriction = void 0;
|
|
4
|
+
const isly_1 = require("isly");
|
|
5
|
+
const isly2_1 = require("isly2");
|
|
6
|
+
const Merchant_1 = require("./Merchant");
|
|
7
|
+
var Restriction;
|
|
8
|
+
(function (Restriction) {
|
|
9
|
+
Restriction.Merchant = Merchant_1.Merchant;
|
|
10
|
+
Restriction.type = isly_1.isly.object({ merchants: Restriction.Merchant.type.array().optional() });
|
|
11
|
+
Restriction.type2 = isly2_1.isly.object({
|
|
12
|
+
merchants: Restriction.Merchant.type2
|
|
13
|
+
.array()
|
|
14
|
+
.optional()
|
|
15
|
+
.rename("Merchants")
|
|
16
|
+
.describe("List of merchants that the card can be used with."),
|
|
17
|
+
});
|
|
18
|
+
function check(restrictions, transaction) {
|
|
19
|
+
let result = true;
|
|
20
|
+
if (restrictions.merchants?.length)
|
|
21
|
+
result = restrictions.merchants.some(merchant => Restriction.Merchant.check(merchant, transaction));
|
|
22
|
+
return result;
|
|
23
|
+
}
|
|
24
|
+
Restriction.check = check;
|
|
25
|
+
})(Restriction || (exports.Restriction = Restriction = {}));
|
|
26
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../Card/Restriction/index.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAC3B,iCAAqC;AAErC,yCAA6D;AAK7D,IAAiB,WAAW,CAmB3B;AAnBD,WAAiB,WAAW;IACb,oBAAQ,GAAG,mBAAoB,CAAA;IAChC,gBAAI,GAAG,WAAI,CAAC,MAAM,CAAc,EAAE,SAAS,EAAE,YAAA,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAChF,iBAAK,GAAG,YAAK,CAAC,MAAM,CAAc;QAC9C,SAAS,EAAE,YAAA,QAAQ,CAAC,KAAK;aACvB,KAAK,EAAE;aACP,QAAQ,EAAE;aACV,MAAM,CAAC,WAAW,CAAC;aACnB,QAAQ,CAAC,mDAAmD,CAAC;KAC/D,CAAC,CAAA;IACF,SAAgB,KAAK,CACpB,YAAyB,EACzB,WAA6F;QAE7F,IAAI,MAAM,GAAY,IAAI,CAAA;QAC1B,IAAI,YAAY,CAAC,SAAS,EAAE,MAAM;YACjC,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,YAAA,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAA;QACxF,OAAO,MAAM,CAAA;IACd,CAAC;IARe,iBAAK,QAQpB,CAAA;AACF,CAAC,EAnBgB,WAAW,2BAAX,WAAW,QAmB3B"}
|
package/dist/cjs/Card/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { Expiry as CardExpiry } from "./Expiry";
|
|
|
9
9
|
import { Meta as CardMeta } from "./Meta";
|
|
10
10
|
import { Operation as CardOperation } from "./Operation";
|
|
11
11
|
import { Preset as CardPreset } from "./Preset";
|
|
12
|
+
import { Restriction as CardRestriction } from "./Restriction";
|
|
12
13
|
import { Scheme as CardScheme } from "./Scheme";
|
|
13
14
|
import { Stack as CardStack } from "./Stack";
|
|
14
15
|
export interface Card {
|
|
@@ -34,10 +35,11 @@ export interface Card {
|
|
|
34
35
|
history: CardOperation[];
|
|
35
36
|
rules: Rule[];
|
|
36
37
|
meta?: CardMeta;
|
|
38
|
+
restricted?: {
|
|
39
|
+
to?: CardRestriction;
|
|
40
|
+
};
|
|
37
41
|
}
|
|
38
42
|
export declare namespace Card {
|
|
39
|
-
const type: import("isly/dist/cjs/object").IslyObject<Card, object>;
|
|
40
|
-
const type2: isly2.Object<Card>;
|
|
41
43
|
export import Creatable = CardCreatable;
|
|
42
44
|
export import Preset = CardPreset;
|
|
43
45
|
export import Meta = CardMeta;
|
|
@@ -46,5 +48,8 @@ export declare namespace Card {
|
|
|
46
48
|
export import Operation = CardOperation;
|
|
47
49
|
export import Scheme = CardScheme;
|
|
48
50
|
export import Stack = CardStack;
|
|
51
|
+
export import Restriction = CardRestriction;
|
|
52
|
+
const type: import("isly/dist/cjs/object").IslyObject<Card, object>;
|
|
53
|
+
const type2: isly2.Object<Card>;
|
|
49
54
|
function toCsv(cards: Card[]): string;
|
|
50
55
|
}
|
package/dist/cjs/Card/index.js
CHANGED
|
@@ -14,10 +14,20 @@ const Expiry_1 = require("./Expiry");
|
|
|
14
14
|
const Meta_1 = require("./Meta");
|
|
15
15
|
const Operation_1 = require("./Operation");
|
|
16
16
|
const Preset_1 = require("./Preset");
|
|
17
|
+
const Restriction_1 = require("./Restriction");
|
|
17
18
|
const Scheme_1 = require("./Scheme");
|
|
18
19
|
const Stack_1 = require("./Stack");
|
|
19
20
|
var Card;
|
|
20
21
|
(function (Card) {
|
|
22
|
+
Card.Creatable = Creatable_1.Creatable;
|
|
23
|
+
Card.Preset = Preset_1.Preset;
|
|
24
|
+
Card.Meta = Meta_1.Meta;
|
|
25
|
+
Card.Expiry = Expiry_1.Expiry;
|
|
26
|
+
Card.Changeable = Changeable_1.Changeable;
|
|
27
|
+
Card.Operation = Operation_1.Operation;
|
|
28
|
+
Card.Scheme = Scheme_1.Scheme;
|
|
29
|
+
Card.Stack = Stack_1.Stack;
|
|
30
|
+
Card.Restriction = Restriction_1.Restriction;
|
|
21
31
|
Card.type = isly_1.isly.object({
|
|
22
32
|
id: isly_1.isly.string(),
|
|
23
33
|
number: isly_1.isly.string().optional(),
|
|
@@ -41,6 +51,7 @@ var Card;
|
|
|
41
51
|
history: isly_1.isly.array(Operation_1.Operation.type),
|
|
42
52
|
rules: type_1.type.array(),
|
|
43
53
|
meta: isly_1.isly.fromIs("Card.Meta", Meta_1.Meta.is).optional(),
|
|
54
|
+
restricted: isly_1.isly.object({ to: Restriction_1.Restriction.type.optional() }).optional(),
|
|
44
55
|
});
|
|
45
56
|
Card.type2 = isly2_1.isly
|
|
46
57
|
.object({
|
|
@@ -70,17 +81,14 @@ var Card;
|
|
|
70
81
|
.rename("Rules")
|
|
71
82
|
.describe("Card rules that applies to authorizations made with the card."),
|
|
72
83
|
meta: isly2_1.isly.from("Card.Meta", Meta_1.Meta.is).optional().rename("Meta").describe("Additional card information."),
|
|
84
|
+
restricted: isly2_1.isly
|
|
85
|
+
.object({ to: Restriction_1.Restriction.type2.optional() })
|
|
86
|
+
.optional()
|
|
87
|
+
.rename("Restrictions")
|
|
88
|
+
.describe("Set of restrictions that apply to the card."),
|
|
73
89
|
})
|
|
74
90
|
.rename("Card")
|
|
75
91
|
.describe("Card information.");
|
|
76
|
-
Card.Creatable = Creatable_1.Creatable;
|
|
77
|
-
Card.Preset = Preset_1.Preset;
|
|
78
|
-
Card.Meta = Meta_1.Meta;
|
|
79
|
-
Card.Expiry = Expiry_1.Expiry;
|
|
80
|
-
Card.Changeable = Changeable_1.Changeable;
|
|
81
|
-
Card.Operation = Operation_1.Operation;
|
|
82
|
-
Card.Scheme = Scheme_1.Scheme;
|
|
83
|
-
Card.Stack = Stack_1.Stack;
|
|
84
92
|
const csvMap = {
|
|
85
93
|
id: card => card.id,
|
|
86
94
|
created: card => readableDate(card.created),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../Card/index.ts"],"names":[],"mappings":";;;AAAA,iCAA6B;AAC7B,+BAA2B;AAC3B,iCAAqC;AACrC,sCAAkC;AAClC,oCAAgC;AAChC,sCAAkC;AAElC,uCAA+C;AAC/C,6CAA2D;AAC3D,2CAAwD;AACxD,qCAA+C;AAC/C,iCAAyC;AACzC,2CAAwD;AACxD,qCAA+C;AAC/C,qCAA+C;AAC/C,mCAA4C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../Card/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import type { Rule } from "../Rule";
|
|
|
5
5
|
import { Expiry } from "./Expiry";
|
|
6
6
|
import { Meta } from "./Meta";
|
|
7
7
|
import { Preset } from "./Preset";
|
|
8
|
+
import { Restriction } from "./Restriction";
|
|
8
9
|
export interface Creatable {
|
|
9
10
|
account: string;
|
|
10
11
|
number?: string;
|
|
@@ -17,6 +18,9 @@ export interface Creatable {
|
|
|
17
18
|
rules?: Rule[];
|
|
18
19
|
meta?: Meta;
|
|
19
20
|
key?: isoly.Date | string;
|
|
21
|
+
restricted?: {
|
|
22
|
+
to?: Restriction;
|
|
23
|
+
};
|
|
20
24
|
}
|
|
21
25
|
export declare namespace Creatable {
|
|
22
26
|
const type: import("isly/dist/cjs/object").IslyObject<Creatable, object>;
|
|
@@ -6,30 +6,26 @@ import { type as ruleType } from "../Rule/type";
|
|
|
6
6
|
import { Expiry } from "./Expiry";
|
|
7
7
|
import { Meta } from "./Meta";
|
|
8
8
|
import { Preset } from "./Preset";
|
|
9
|
+
import { Restriction } from "./Restriction";
|
|
9
10
|
export var Creatable;
|
|
10
11
|
(function (Creatable) {
|
|
11
12
|
Creatable.type = isly.object({
|
|
12
13
|
account: isly.string(),
|
|
13
14
|
number: isly.string().optional(),
|
|
14
15
|
preset: Preset.type,
|
|
15
|
-
details: isly.object({
|
|
16
|
-
expiry: Expiry.type,
|
|
17
|
-
holder: isly.string(),
|
|
18
|
-
}),
|
|
16
|
+
details: isly.object({ expiry: Expiry.type, holder: isly.string() }),
|
|
19
17
|
limit: isly.tuple(isly.fromIs("isoly.Currency", isoly.Currency.is), isly.number()),
|
|
20
18
|
rules: ruleType.array().optional(),
|
|
21
19
|
meta: isly.fromIs("Card.Meta", Meta.is).optional(),
|
|
22
20
|
key: isly.string().optional(),
|
|
21
|
+
restricted: isly.object({ to: Restriction.type.optional() }).optional(),
|
|
23
22
|
});
|
|
24
23
|
Creatable.type2 = isly2.object({
|
|
25
24
|
account: isly2.string().rename("Account").describe("The account id the card was created on."),
|
|
26
25
|
number: isly2.string().optional().rename("Number").describe("The card identifier of the user of the api."),
|
|
27
26
|
preset: Preset.type2,
|
|
28
27
|
details: isly2
|
|
29
|
-
.object({
|
|
30
|
-
expiry: Expiry.type2,
|
|
31
|
-
holder: isly2.string(),
|
|
32
|
-
})
|
|
28
|
+
.object({ expiry: Expiry.type2, holder: isly2.string() })
|
|
33
29
|
.rename("Details")
|
|
34
30
|
.describe("The card details, the information that will be displayed on the card."),
|
|
35
31
|
limit: isly2
|
|
@@ -44,6 +40,11 @@ export var Creatable;
|
|
|
44
40
|
.describe("Card rules that applies to authorizations made with the card."),
|
|
45
41
|
meta: isly2.from("Meta", Meta.is).optional(),
|
|
46
42
|
key: isly2.string().optional(),
|
|
43
|
+
restricted: isly2
|
|
44
|
+
.object({ to: Restriction.type2.optional() })
|
|
45
|
+
.optional()
|
|
46
|
+
.rename("Restrictions")
|
|
47
|
+
.describe("Set of restrictions that apply to the card."),
|
|
47
48
|
});
|
|
48
49
|
})(Creatable || (Creatable = {}));
|
|
49
50
|
//# sourceMappingURL=Creatable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Creatable.js","sourceRoot":"","sources":["../../../Card/Creatable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,MAAM,OAAO,CAAA;AAGrC,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"Creatable.js","sourceRoot":"","sources":["../../../Card/Creatable.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { isly } from "isly";
|
|
2
|
+
import { isly as isly2 } from "isly2";
|
|
3
|
+
import type { Transaction } from "../../Transaction";
|
|
4
|
+
export type Merchant = typeof Merchant.values[number];
|
|
5
|
+
export declare namespace Merchant {
|
|
6
|
+
const values: readonly ["united airlines", "american air", "british airways", "air france", "lufthansa", "qantas", "alitalia", "saudi air", "sas", "air india", "air algerie", "emirates", "air malta", "etihad air", "tap", "avianca", "gulf air", "aer lingus", "turkish air", "royal air maroc", "tunis air", "austrian air", "flydubai", "cebu air", "thai airways", "china airlines", "malaysia airlines", "iberia", "qatar air", "ana air", "jet blue", "middle east airlines", "lot polish airlines", "norwegian air", "air arabia", "easyjet", "ryanair", "air china", "ethiopian airlines", "wizz air"];
|
|
7
|
+
const type: isly.Type<"united airlines" | "american air" | "british airways" | "air france" | "lufthansa" | "qantas" | "alitalia" | "saudi air" | "sas" | "air india" | "air algerie" | "emirates" | "air malta" | "etihad air" | "tap" | "avianca" | "gulf air" | "aer lingus" | "turkish air" | "royal air maroc" | "tunis air" | "austrian air" | "flydubai" | "cebu air" | "thai airways" | "china airlines" | "malaysia airlines" | "iberia" | "qatar air" | "ana air" | "jet blue" | "middle east airlines" | "lot polish airlines" | "norwegian air" | "air arabia" | "easyjet" | "ryanair" | "air china" | "ethiopian airlines" | "wizz air">;
|
|
8
|
+
const type2: isly2.String<"united airlines" | "american air" | "british airways" | "air france" | "lufthansa" | "qantas" | "alitalia" | "saudi air" | "sas" | "air india" | "air algerie" | "emirates" | "air malta" | "etihad air" | "tap" | "avianca" | "gulf air" | "aer lingus" | "turkish air" | "royal air maroc" | "tunis air" | "austrian air" | "flydubai" | "cebu air" | "thai airways" | "china airlines" | "malaysia airlines" | "iberia" | "qatar air" | "ana air" | "jet blue" | "middle east airlines" | "lot polish airlines" | "norwegian air" | "air arabia" | "easyjet" | "ryanair" | "air china" | "ethiopian airlines" | "wizz air">;
|
|
9
|
+
type Checker = (merchant: Merchant, transaction: Transaction.Creatable.CardTransaction | Transaction.PreTransaction.Authorization) => boolean;
|
|
10
|
+
type Attribute = {
|
|
11
|
+
mccs: string[];
|
|
12
|
+
checkers?: Checker[];
|
|
13
|
+
};
|
|
14
|
+
const attributes: Record<Merchant, Attribute>;
|
|
15
|
+
function check(merchant: Merchant, transaction: Transaction.Creatable.CardTransaction | Transaction.PreTransaction.Authorization): boolean;
|
|
16
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { isly } from "isly";
|
|
2
|
+
import { isly as isly2 } from "isly2";
|
|
3
|
+
export var Merchant;
|
|
4
|
+
(function (Merchant) {
|
|
5
|
+
Merchant.values = [
|
|
6
|
+
"united airlines",
|
|
7
|
+
"american air",
|
|
8
|
+
"british airways",
|
|
9
|
+
"air france",
|
|
10
|
+
"lufthansa",
|
|
11
|
+
"qantas",
|
|
12
|
+
"alitalia",
|
|
13
|
+
"saudi air",
|
|
14
|
+
"sas",
|
|
15
|
+
"air india",
|
|
16
|
+
"air algerie",
|
|
17
|
+
"emirates",
|
|
18
|
+
"air malta",
|
|
19
|
+
"etihad air",
|
|
20
|
+
"tap",
|
|
21
|
+
"avianca",
|
|
22
|
+
"gulf air",
|
|
23
|
+
"aer lingus",
|
|
24
|
+
"turkish air",
|
|
25
|
+
"royal air maroc",
|
|
26
|
+
"tunis air",
|
|
27
|
+
"austrian air",
|
|
28
|
+
"flydubai",
|
|
29
|
+
"cebu air",
|
|
30
|
+
"thai airways",
|
|
31
|
+
"china airlines",
|
|
32
|
+
"malaysia airlines",
|
|
33
|
+
"iberia",
|
|
34
|
+
"qatar air",
|
|
35
|
+
"ana air",
|
|
36
|
+
"jet blue",
|
|
37
|
+
"middle east airlines",
|
|
38
|
+
"lot polish airlines",
|
|
39
|
+
"norwegian air",
|
|
40
|
+
"air arabia",
|
|
41
|
+
"easyjet",
|
|
42
|
+
"ryanair",
|
|
43
|
+
"air china",
|
|
44
|
+
"ethiopian airlines",
|
|
45
|
+
"wizz air",
|
|
46
|
+
];
|
|
47
|
+
Merchant.type = isly.string(Merchant.values);
|
|
48
|
+
Merchant.type2 = isly2.string("value", ...Merchant.values);
|
|
49
|
+
Merchant.attributes = {
|
|
50
|
+
"united airlines": { mccs: ["3000"] },
|
|
51
|
+
"american air": { mccs: ["3001"] },
|
|
52
|
+
"british airways": { mccs: ["3005"] },
|
|
53
|
+
"air france": { mccs: ["3007"] },
|
|
54
|
+
lufthansa: { mccs: ["3008"] },
|
|
55
|
+
qantas: { mccs: ["3012"] },
|
|
56
|
+
alitalia: { mccs: ["3013"] },
|
|
57
|
+
"saudi air": { mccs: ["3014"] },
|
|
58
|
+
sas: { mccs: ["3016"] },
|
|
59
|
+
"air india": { mccs: ["3020"] },
|
|
60
|
+
"air algerie": { mccs: ["3021"] },
|
|
61
|
+
emirates: { mccs: ["3026"] },
|
|
62
|
+
"air malta": { mccs: ["3028"] },
|
|
63
|
+
"etihad air": { mccs: ["3034"] },
|
|
64
|
+
tap: { mccs: ["3035"] },
|
|
65
|
+
avianca: { mccs: ["3039"] },
|
|
66
|
+
"gulf air": { mccs: ["3040"] },
|
|
67
|
+
"aer lingus": { mccs: ["3043"] },
|
|
68
|
+
"turkish air": { mccs: ["3047"] },
|
|
69
|
+
"royal air maroc": { mccs: ["3048"] },
|
|
70
|
+
"tunis air": { mccs: ["3049"] },
|
|
71
|
+
"austrian air": { mccs: ["3051"] },
|
|
72
|
+
flydubai: { mccs: ["3070"] },
|
|
73
|
+
"cebu air": { mccs: ["3072"] },
|
|
74
|
+
"thai airways": { mccs: ["3077"] },
|
|
75
|
+
"china airlines": { mccs: ["3078"] },
|
|
76
|
+
"malaysia airlines": { mccs: ["3100"] },
|
|
77
|
+
iberia: { mccs: ["3102"] },
|
|
78
|
+
"qatar air": { mccs: ["3136"] },
|
|
79
|
+
"ana air": { mccs: ["3161"] },
|
|
80
|
+
"jet blue": { mccs: ["3174"] },
|
|
81
|
+
"middle east airlines": { mccs: ["3175"] },
|
|
82
|
+
"lot polish airlines": { mccs: ["3182"] },
|
|
83
|
+
"norwegian air": { mccs: ["3211"] },
|
|
84
|
+
"air arabia": { mccs: ["3236"] },
|
|
85
|
+
easyjet: { mccs: ["3245"] },
|
|
86
|
+
ryanair: { mccs: ["3246"] },
|
|
87
|
+
"air china": { mccs: ["3261"] },
|
|
88
|
+
"ethiopian airlines": { mccs: ["3294"] },
|
|
89
|
+
"wizz air": { mccs: ["3301"] },
|
|
90
|
+
};
|
|
91
|
+
function check(merchant, transaction) {
|
|
92
|
+
const attribute = Merchant.attributes[merchant];
|
|
93
|
+
return (attribute.mccs.some(mcc => transaction.counterpart.merchant.category == mcc) ||
|
|
94
|
+
(attribute.checkers ?? []).some(checker => checker(merchant, transaction)));
|
|
95
|
+
}
|
|
96
|
+
Merchant.check = check;
|
|
97
|
+
})(Merchant || (Merchant = {}));
|
|
98
|
+
//# sourceMappingURL=Merchant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Merchant.js","sourceRoot":"","sources":["../../../../Card/Restriction/Merchant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,MAAM,OAAO,CAAA;AAIrC,MAAM,KAAW,QAAQ,CAsGxB;AAtGD,WAAiB,QAAQ;IACX,eAAM,GAAG;QACrB,iBAAiB;QACjB,cAAc;QACd,iBAAiB;QACjB,YAAY;QACZ,WAAW;QACX,QAAQ;QACR,UAAU;QACV,WAAW;QACX,KAAK;QACL,WAAW;QACX,aAAa;QACb,UAAU;QACV,WAAW;QACX,YAAY;QACZ,KAAK;QACL,SAAS;QACT,UAAU;QACV,YAAY;QACZ,aAAa;QACb,iBAAiB;QACjB,WAAW;QACX,cAAc;QACd,UAAU;QACV,UAAU;QACV,cAAc;QACd,gBAAgB;QAChB,mBAAmB;QACnB,QAAQ;QACR,WAAW;QACX,SAAS;QACT,UAAU;QACV,sBAAsB;QACtB,qBAAqB;QACrB,eAAe;QACf,YAAY;QACZ,SAAS;QACT,SAAS;QACT,WAAW;QACX,oBAAoB;QACpB,UAAU;KACD,CAAA;IACG,aAAI,GAAG,IAAI,CAAC,MAAM,CAAW,SAAA,MAAM,CAAC,CAAA;IACpC,cAAK,GAAG,KAAK,CAAC,MAAM,CAAW,OAAO,EAAE,GAAG,SAAA,MAAM,CAAC,CAAA;IAMlD,mBAAU,GAAgC;QACtD,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACrC,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAClC,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACrC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAChC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC5B,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC/B,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACvB,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC/B,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC5B,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC/B,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAChC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACvB,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC3B,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC9B,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAChC,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACjC,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACrC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC/B,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAClC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC9B,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAClC,gBAAgB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACpC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACvC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC1B,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC/B,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC7B,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC9B,sBAAsB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC1C,qBAAqB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACzC,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACnC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAChC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC3B,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC3B,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QAC/B,oBAAoB,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;QACxC,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;KAC9B,CAAA;IACD,SAAgB,KAAK,CACpB,QAAkB,EAClB,WAA6F;QAE7F,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;QAC/C,OAAO,CACN,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,IAAI,GAAG,CAAC;YAC5E,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAC1E,CAAA;IACF,CAAC;IATe,cAAK,QASpB,CAAA;AACF,CAAC,EAtGgB,QAAQ,KAAR,QAAQ,QAsGxB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { isly as isly2 } from "isly2";
|
|
2
|
+
import type { Transaction } from "../../Transaction";
|
|
3
|
+
import { Merchant as RestrictionsMerchant } from "./Merchant";
|
|
4
|
+
export interface Restriction {
|
|
5
|
+
merchants?: Restriction.Merchant[];
|
|
6
|
+
}
|
|
7
|
+
export declare namespace Restriction {
|
|
8
|
+
export import Merchant = RestrictionsMerchant;
|
|
9
|
+
const type: import("isly/dist/cjs/object").IslyObject<Restriction, object>;
|
|
10
|
+
const type2: isly2.Object<Restriction>;
|
|
11
|
+
function check(restrictions: Restriction, transaction: Transaction.Creatable.CardTransaction | Transaction.PreTransaction.Authorization): boolean;
|
|
12
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { isly } from "isly";
|
|
2
|
+
import { isly as isly2 } from "isly2";
|
|
3
|
+
import { Merchant as RestrictionsMerchant } from "./Merchant";
|
|
4
|
+
export var Restriction;
|
|
5
|
+
(function (Restriction) {
|
|
6
|
+
Restriction.Merchant = RestrictionsMerchant;
|
|
7
|
+
Restriction.type = isly.object({ merchants: Restriction.Merchant.type.array().optional() });
|
|
8
|
+
Restriction.type2 = isly2.object({
|
|
9
|
+
merchants: Restriction.Merchant.type2
|
|
10
|
+
.array()
|
|
11
|
+
.optional()
|
|
12
|
+
.rename("Merchants")
|
|
13
|
+
.describe("List of merchants that the card can be used with."),
|
|
14
|
+
});
|
|
15
|
+
function check(restrictions, transaction) {
|
|
16
|
+
let result = true;
|
|
17
|
+
if (restrictions.merchants?.length)
|
|
18
|
+
result = restrictions.merchants.some(merchant => Restriction.Merchant.check(merchant, transaction));
|
|
19
|
+
return result;
|
|
20
|
+
}
|
|
21
|
+
Restriction.check = check;
|
|
22
|
+
})(Restriction || (Restriction = {}));
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../Card/Restriction/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,MAAM,OAAO,CAAA;AAErC,OAAO,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAK7D,MAAM,KAAW,WAAW,CAmB3B;AAnBD,WAAiB,WAAW;IACb,oBAAQ,GAAG,oBAAoB,CAAA;IAChC,gBAAI,GAAG,IAAI,CAAC,MAAM,CAAc,EAAE,SAAS,EAAE,YAAA,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAChF,iBAAK,GAAG,KAAK,CAAC,MAAM,CAAc;QAC9C,SAAS,EAAE,YAAA,QAAQ,CAAC,KAAK;aACvB,KAAK,EAAE;aACP,QAAQ,EAAE;aACV,MAAM,CAAC,WAAW,CAAC;aACnB,QAAQ,CAAC,mDAAmD,CAAC;KAC/D,CAAC,CAAA;IACF,SAAgB,KAAK,CACpB,YAAyB,EACzB,WAA6F;QAE7F,IAAI,MAAM,GAAY,IAAI,CAAA;QAC1B,IAAI,YAAY,CAAC,SAAS,EAAE,MAAM;YACjC,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,YAAA,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAA;QACxF,OAAO,MAAM,CAAA;IACd,CAAC;IARe,iBAAK,QAQpB,CAAA;AACF,CAAC,EAnBgB,WAAW,KAAX,WAAW,QAmB3B"}
|
package/dist/mjs/Card/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { Expiry as CardExpiry } from "./Expiry";
|
|
|
9
9
|
import { Meta as CardMeta } from "./Meta";
|
|
10
10
|
import { Operation as CardOperation } from "./Operation";
|
|
11
11
|
import { Preset as CardPreset } from "./Preset";
|
|
12
|
+
import { Restriction as CardRestriction } from "./Restriction";
|
|
12
13
|
import { Scheme as CardScheme } from "./Scheme";
|
|
13
14
|
import { Stack as CardStack } from "./Stack";
|
|
14
15
|
export interface Card {
|
|
@@ -34,10 +35,11 @@ export interface Card {
|
|
|
34
35
|
history: CardOperation[];
|
|
35
36
|
rules: Rule[];
|
|
36
37
|
meta?: CardMeta;
|
|
38
|
+
restricted?: {
|
|
39
|
+
to?: CardRestriction;
|
|
40
|
+
};
|
|
37
41
|
}
|
|
38
42
|
export declare namespace Card {
|
|
39
|
-
const type: import("isly/dist/cjs/object").IslyObject<Card, object>;
|
|
40
|
-
const type2: isly2.Object<Card>;
|
|
41
43
|
export import Creatable = CardCreatable;
|
|
42
44
|
export import Preset = CardPreset;
|
|
43
45
|
export import Meta = CardMeta;
|
|
@@ -46,5 +48,8 @@ export declare namespace Card {
|
|
|
46
48
|
export import Operation = CardOperation;
|
|
47
49
|
export import Scheme = CardScheme;
|
|
48
50
|
export import Stack = CardStack;
|
|
51
|
+
export import Restriction = CardRestriction;
|
|
52
|
+
const type: import("isly/dist/cjs/object").IslyObject<Card, object>;
|
|
53
|
+
const type2: isly2.Object<Card>;
|
|
49
54
|
function toCsv(cards: Card[]): string;
|
|
50
55
|
}
|
package/dist/mjs/Card/index.js
CHANGED
|
@@ -11,10 +11,20 @@ import { Expiry as CardExpiry } from "./Expiry";
|
|
|
11
11
|
import { Meta as CardMeta } from "./Meta";
|
|
12
12
|
import { Operation as CardOperation } from "./Operation";
|
|
13
13
|
import { Preset as CardPreset } from "./Preset";
|
|
14
|
+
import { Restriction as CardRestriction } from "./Restriction";
|
|
14
15
|
import { Scheme as CardScheme } from "./Scheme";
|
|
15
16
|
import { Stack as CardStack } from "./Stack";
|
|
16
17
|
export var Card;
|
|
17
18
|
(function (Card) {
|
|
19
|
+
Card.Creatable = CardCreatable;
|
|
20
|
+
Card.Preset = CardPreset;
|
|
21
|
+
Card.Meta = CardMeta;
|
|
22
|
+
Card.Expiry = CardExpiry;
|
|
23
|
+
Card.Changeable = CardChangeable;
|
|
24
|
+
Card.Operation = CardOperation;
|
|
25
|
+
Card.Scheme = CardScheme;
|
|
26
|
+
Card.Stack = CardStack;
|
|
27
|
+
Card.Restriction = CardRestriction;
|
|
18
28
|
Card.type = isly.object({
|
|
19
29
|
id: isly.string(),
|
|
20
30
|
number: isly.string().optional(),
|
|
@@ -38,6 +48,7 @@ export var Card;
|
|
|
38
48
|
history: isly.array(CardOperation.type),
|
|
39
49
|
rules: ruleType.array(),
|
|
40
50
|
meta: isly.fromIs("Card.Meta", CardMeta.is).optional(),
|
|
51
|
+
restricted: isly.object({ to: CardRestriction.type.optional() }).optional(),
|
|
41
52
|
});
|
|
42
53
|
Card.type2 = isly2
|
|
43
54
|
.object({
|
|
@@ -67,17 +78,14 @@ export var Card;
|
|
|
67
78
|
.rename("Rules")
|
|
68
79
|
.describe("Card rules that applies to authorizations made with the card."),
|
|
69
80
|
meta: isly2.from("Card.Meta", CardMeta.is).optional().rename("Meta").describe("Additional card information."),
|
|
81
|
+
restricted: isly2
|
|
82
|
+
.object({ to: CardRestriction.type2.optional() })
|
|
83
|
+
.optional()
|
|
84
|
+
.rename("Restrictions")
|
|
85
|
+
.describe("Set of restrictions that apply to the card."),
|
|
70
86
|
})
|
|
71
87
|
.rename("Card")
|
|
72
88
|
.describe("Card information.");
|
|
73
|
-
Card.Creatable = CardCreatable;
|
|
74
|
-
Card.Preset = CardPreset;
|
|
75
|
-
Card.Meta = CardMeta;
|
|
76
|
-
Card.Expiry = CardExpiry;
|
|
77
|
-
Card.Changeable = CardChangeable;
|
|
78
|
-
Card.Operation = CardOperation;
|
|
79
|
-
Card.Scheme = CardScheme;
|
|
80
|
-
Card.Stack = CardStack;
|
|
81
89
|
const csvMap = {
|
|
82
90
|
id: card => card.id,
|
|
83
91
|
created: card => readableDate(card.created),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../Card/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,MAAM,OAAO,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAElC,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,cAAc,CAAA;AAC3D,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACzC,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../Card/index.ts"],"names":[],"mappings":"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"}
|