@pax2pay/model-banking 0.1.508 → 0.1.510
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/User/Access/Permission.ts +47 -0
- package/User/Access/index.ts +19 -0
- package/User/Identity.ts +32 -0
- package/User/JWT/Payload.ts +56 -0
- package/User/JWT/Signer.ts +39 -0
- package/User/JWT/index.ts +57 -0
- package/User/Me.ts +15 -0
- package/User/Password.ts +43 -0
- package/User/index.ts +68 -0
- 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/cjs/User/Access/Permission.d.ts +20 -0
- package/dist/cjs/User/Access/Permission.js +47 -0
- package/dist/cjs/User/Access/Permission.js.map +1 -0
- package/dist/cjs/User/Access/index.d.ts +11 -0
- package/dist/cjs/User/Access/index.js +16 -0
- package/dist/cjs/User/Access/index.js.map +1 -0
- package/dist/cjs/User/Identity.d.ts +16 -0
- package/dist/cjs/User/Identity.js +32 -0
- package/dist/cjs/User/Identity.js.map +1 -0
- package/dist/cjs/User/JWT/Payload.d.ts +43 -0
- package/dist/cjs/User/JWT/Payload.js +42 -0
- package/dist/cjs/User/JWT/Payload.js.map +1 -0
- package/dist/cjs/User/JWT/Signer.d.ts +23 -0
- package/dist/cjs/User/JWT/Signer.js +39 -0
- package/dist/cjs/User/JWT/Signer.js.map +1 -0
- package/dist/cjs/User/JWT/index.d.ts +25 -0
- package/dist/cjs/User/JWT/index.js +59 -0
- package/dist/cjs/User/JWT/index.js.map +1 -0
- package/dist/cjs/User/Me.d.ts +9 -0
- package/dist/cjs/User/Me.js +14 -0
- package/dist/cjs/User/Me.js.map +1 -0
- package/dist/cjs/User/Password.d.ts +20 -0
- package/dist/cjs/User/Password.js +44 -0
- package/dist/cjs/User/Password.js.map +1 -0
- package/dist/cjs/User/index.d.ts +46 -0
- package/dist/cjs/User/index.js +54 -0
- package/dist/cjs/User/index.js.map +1 -0
- package/dist/cjs/pax2pay.d.ts +2 -1
- package/dist/cjs/pax2pay.js +5 -3
- package/dist/cjs/pax2pay.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/dist/mjs/User/Access/Permission.d.ts +20 -0
- package/dist/mjs/User/Access/Permission.js +44 -0
- package/dist/mjs/User/Access/Permission.js.map +1 -0
- package/dist/mjs/User/Access/index.d.ts +11 -0
- package/dist/mjs/User/Access/index.js +13 -0
- package/dist/mjs/User/Access/index.js.map +1 -0
- package/dist/mjs/User/Identity.d.ts +16 -0
- package/dist/mjs/User/Identity.js +28 -0
- package/dist/mjs/User/Identity.js.map +1 -0
- package/dist/mjs/User/JWT/Payload.d.ts +43 -0
- package/dist/mjs/User/JWT/Payload.js +39 -0
- package/dist/mjs/User/JWT/Payload.js.map +1 -0
- package/dist/mjs/User/JWT/Signer.d.ts +23 -0
- package/dist/mjs/User/JWT/Signer.js +35 -0
- package/dist/mjs/User/JWT/Signer.js.map +1 -0
- package/dist/mjs/User/JWT/index.d.ts +25 -0
- package/dist/mjs/User/JWT/index.js +55 -0
- package/dist/mjs/User/JWT/index.js.map +1 -0
- package/dist/mjs/User/Me.d.ts +9 -0
- package/dist/mjs/User/Me.js +11 -0
- package/dist/mjs/User/Me.js.map +1 -0
- package/dist/mjs/User/Password.d.ts +20 -0
- package/dist/mjs/User/Password.js +41 -0
- package/dist/mjs/User/Password.js.map +1 -0
- package/dist/mjs/User/index.d.ts +46 -0
- package/dist/mjs/User/index.js +51 -0
- package/dist/mjs/User/index.js.map +1 -0
- package/dist/mjs/pax2pay.d.ts +2 -1
- package/dist/mjs/pax2pay.js +2 -1
- package/dist/mjs/pax2pay.js.map +1 -1
- package/package.json +1 -1
- package/pax2pay.ts +2 -1
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Signer = void 0;
|
|
4
|
+
const authly_1 = require("authly");
|
|
5
|
+
const Payload_1 = require("./Payload");
|
|
6
|
+
class Signer {
|
|
7
|
+
key;
|
|
8
|
+
constructor(key) {
|
|
9
|
+
this.key = key;
|
|
10
|
+
}
|
|
11
|
+
async sign(data, duration = 60 * 60 * 12) {
|
|
12
|
+
let result;
|
|
13
|
+
if (duration === "infinite") {
|
|
14
|
+
const signer = Signer.create({ key: this.key });
|
|
15
|
+
result = await signer?.sign({ id: authly_1.authly.Identifier.generate(16), ...data });
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
const signer = Signer.create({ key: this.key, duration });
|
|
19
|
+
result = await signer?.sign({ ...data });
|
|
20
|
+
}
|
|
21
|
+
return result;
|
|
22
|
+
}
|
|
23
|
+
static open(key) {
|
|
24
|
+
return new this(key);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.Signer = Signer;
|
|
28
|
+
(function (Signer) {
|
|
29
|
+
function create(options) {
|
|
30
|
+
const signer = authly_1.authly.Issuer.create(Payload_1.Payload.configuration.iss, authly_1.authly.Algorithm.RS256(options.key?.public, options.key?.private));
|
|
31
|
+
if (signer) {
|
|
32
|
+
signer.duration = options.duration;
|
|
33
|
+
signer.audience = Payload_1.Payload.configuration.aud;
|
|
34
|
+
}
|
|
35
|
+
return signer;
|
|
36
|
+
}
|
|
37
|
+
Signer.create = create;
|
|
38
|
+
})(Signer || (exports.Signer = Signer = {}));
|
|
39
|
+
//# sourceMappingURL=Signer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Signer.js","sourceRoot":"","sources":["../../../../User/JWT/Signer.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAC/B,uCAAmC;AAEnC,MAAa,MAAM;IACW;IAA7B,YAA6B,GAA2C;QAA3C,QAAG,GAAH,GAAG,CAAwC;IAAG,CAAC;IAG5E,KAAK,CAAC,IAAI,CAAC,IAAuB,EAAE,WAAgC,EAAE,GAAG,EAAE,GAAG,EAAE;QAC/E,IAAI,MAA0B,CAAA;QAC9B,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;YAC/C,MAAM,GAAG,MAAM,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,eAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;QAC7E,CAAC;aAAM,CAAC;YACP,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAA;YACzD,MAAM,GAAG,MAAM,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;QACzC,CAAC;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,GAA2C;QACtD,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAA;IACrB,CAAC;CACD;AAnBD,wBAmBC;AACD,WAAiB,MAAM;IACtB,SAAgB,MAAM,CAA2B,OAGhD;QACA,MAAM,MAAM,GAAG,eAAM,CAAC,MAAM,CAAC,MAAM,CAClC,iBAAO,CAAC,aAAa,CAAC,GAAG,EACzB,eAAM,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CACjE,CAAA;QACD,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;YAClC,MAAM,CAAC,QAAQ,GAAG,iBAAO,CAAC,aAAa,CAAC,GAAG,CAAA;QAC5C,CAAC;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IAbe,aAAM,SAarB,CAAA;AACF,CAAC,EAfgB,MAAM,sBAAN,MAAM,QAetB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Realm } from "../../Realm";
|
|
2
|
+
import { Payload as JWTPayload } from "./Payload";
|
|
3
|
+
import { Signer as JWTSigner } from "./Signer";
|
|
4
|
+
export declare class JWT {
|
|
5
|
+
#private;
|
|
6
|
+
private readonly key?;
|
|
7
|
+
readonly whitelist?: JWT.Whitelist | undefined;
|
|
8
|
+
private get verifier();
|
|
9
|
+
private get signer();
|
|
10
|
+
get sign(): ((data: JWTPayload.Creatable, duration?: number | "infinite") => Promise<string | undefined>) | undefined;
|
|
11
|
+
private constructor();
|
|
12
|
+
verify(token: string): Promise<JWT.Payload | undefined>;
|
|
13
|
+
unpack(token: string): Promise<JWT.Payload | undefined>;
|
|
14
|
+
static open(key?: {
|
|
15
|
+
private?: string;
|
|
16
|
+
public?: string;
|
|
17
|
+
}, whitelist?: JWT.Whitelist): JWT;
|
|
18
|
+
}
|
|
19
|
+
export declare namespace JWT {
|
|
20
|
+
export import Signer = JWTSigner;
|
|
21
|
+
type Whitelist = Partial<Record<Realm, Payload.LongTerm[]>>;
|
|
22
|
+
function unpack(token: string): Promise<JWT.Payload | undefined>;
|
|
23
|
+
export import Payload = JWTPayload;
|
|
24
|
+
const key = "MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA2W8CD2kpfS4QIRV2/rgm4NVvsvJsYNMHtnIl9ADvO3A81hAmRKvOAPVoXICe6+EuZ47jGjGL7f48GEoQuITfBPv/MosCDj1YhJ56ILDynCSd8FlxDrhv8pl5IquST7tcL6Hc6m+vuvoTLrFQ5QqNxv0a5eDd/YTrWv7SUuRfBEhYd/wMysGynN3QauHqy5ceBCt1nv1MJLGlSzczMRK7wjy1zi2g9NCHZBOoo1HXOpi727Xh+YXHc9EP2TN0oOXyxykv45nkGIDI0Qek3/pfkavClBffc1sEqA+rUx7YqRN9KGYxwLMLug+NOOh3ptqjfobXbR5fx/sUWhvcjUMTE1JreTrWYbGmVnjd/SeYSClfmGhdTBUfqnZbaABv0ruTXva18qRhP4y143vHMk/k8HzbuROTKAzrtEeLIjgwUgDcnE+JwDqcb8tKSGV6i++TiTldlSBCRTT4dK2hpHJje80b2abqtrbCkxbJlT98UsAAoiq2eW1X6lYmCfiGCJPkfswibQ2tPAKKNe/2xuHPsjx4FuXGmV0dbzmCwSIQoApXqOvKzoNFi6AaKIjxfNmiEigLwKpNrw08H0lVZbq/9MMxI3TzMTZjY9QmBKVLSGy3Z6IJqZpyK22lv7whJcllG0Qw8tv8+7wmC8SR3+4jpuxuFGZ+69CW+otx+CPMJjcCAwEAAQ==";
|
|
25
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.JWT = void 0;
|
|
4
|
+
const authly_1 = require("authly");
|
|
5
|
+
const Payload_1 = require("./Payload");
|
|
6
|
+
const Signer_1 = require("./Signer");
|
|
7
|
+
class JWT {
|
|
8
|
+
key;
|
|
9
|
+
whitelist;
|
|
10
|
+
#verifier;
|
|
11
|
+
get verifier() {
|
|
12
|
+
if (!this.#verifier && this.key?.public) {
|
|
13
|
+
const algorithm = authly_1.authly.Algorithm.RS256(this.key.public);
|
|
14
|
+
this.#verifier = algorithm ? authly_1.authly.Verifier.create(algorithm) : undefined;
|
|
15
|
+
}
|
|
16
|
+
return this.#verifier;
|
|
17
|
+
}
|
|
18
|
+
#signer;
|
|
19
|
+
get signer() {
|
|
20
|
+
return this.key?.private ? (this.#signer ??= Signer_1.Signer.open(this.key)) : undefined;
|
|
21
|
+
}
|
|
22
|
+
get sign() {
|
|
23
|
+
return this.signer?.sign;
|
|
24
|
+
}
|
|
25
|
+
constructor(key, whitelist) {
|
|
26
|
+
this.key = key;
|
|
27
|
+
this.whitelist = whitelist;
|
|
28
|
+
}
|
|
29
|
+
async verify(token) {
|
|
30
|
+
const verified = await this.verifier?.verify(token, JWT.Payload.configuration.aud);
|
|
31
|
+
delete verified?.token;
|
|
32
|
+
return JWT.Payload.type.is(verified) &&
|
|
33
|
+
verified?.iss == JWT.Payload.configuration.iss &&
|
|
34
|
+
(verified.exp || (verified.id && this.whitelist?.[verified.realm]?.some(e => e.id === verified.id)))
|
|
35
|
+
? verified
|
|
36
|
+
: undefined;
|
|
37
|
+
}
|
|
38
|
+
async unpack(token) {
|
|
39
|
+
const unpacked = await JWT.unpack(token);
|
|
40
|
+
delete unpacked?.token;
|
|
41
|
+
return unpacked;
|
|
42
|
+
}
|
|
43
|
+
static open(key, whitelist) {
|
|
44
|
+
return new this({ private: key?.private, public: key?.public ?? JWT.key }, whitelist);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.JWT = JWT;
|
|
48
|
+
(function (JWT) {
|
|
49
|
+
JWT.Signer = Signer_1.Signer;
|
|
50
|
+
async function unpack(token) {
|
|
51
|
+
const algorithm = authly_1.authly.Algorithm.RS256(undefined);
|
|
52
|
+
const verifier = algorithm ? authly_1.authly.Verifier.create(algorithm) : undefined;
|
|
53
|
+
return verifier?.unpack(token);
|
|
54
|
+
}
|
|
55
|
+
JWT.unpack = unpack;
|
|
56
|
+
JWT.Payload = Payload_1.Payload;
|
|
57
|
+
JWT.key = "MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA2W8CD2kpfS4QIRV2/rgm4NVvsvJsYNMHtnIl9ADvO3A81hAmRKvOAPVoXICe6+EuZ47jGjGL7f48GEoQuITfBPv/MosCDj1YhJ56ILDynCSd8FlxDrhv8pl5IquST7tcL6Hc6m+vuvoTLrFQ5QqNxv0a5eDd/YTrWv7SUuRfBEhYd/wMysGynN3QauHqy5ceBCt1nv1MJLGlSzczMRK7wjy1zi2g9NCHZBOoo1HXOpi727Xh+YXHc9EP2TN0oOXyxykv45nkGIDI0Qek3/pfkavClBffc1sEqA+rUx7YqRN9KGYxwLMLug+NOOh3ptqjfobXbR5fx/sUWhvcjUMTE1JreTrWYbGmVnjd/SeYSClfmGhdTBUfqnZbaABv0ruTXva18qRhP4y143vHMk/k8HzbuROTKAzrtEeLIjgwUgDcnE+JwDqcb8tKSGV6i++TiTldlSBCRTT4dK2hpHJje80b2abqtrbCkxbJlT98UsAAoiq2eW1X6lYmCfiGCJPkfswibQ2tPAKKNe/2xuHPsjx4FuXGmV0dbzmCwSIQoApXqOvKzoNFi6AaKIjxfNmiEigLwKpNrw08H0lVZbq/9MMxI3TzMTZjY9QmBKVLSGy3Z6IJqZpyK22lv7whJcllG0Qw8tv8+7wmC8SR3+4jpuxuFGZ+69CW+otx+CPMJjcCAwEAAQ==";
|
|
58
|
+
})(JWT || (exports.JWT = JWT = {}));
|
|
59
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../User/JWT/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Me = void 0;
|
|
4
|
+
const isly_1 = require("isly");
|
|
5
|
+
const Realm_1 = require("../Realm");
|
|
6
|
+
var Me;
|
|
7
|
+
(function (Me) {
|
|
8
|
+
Me.type = isly_1.isly.object({
|
|
9
|
+
email: isly_1.isly.string(),
|
|
10
|
+
password: isly_1.isly.string(),
|
|
11
|
+
realm: Realm_1.Realm.type,
|
|
12
|
+
});
|
|
13
|
+
})(Me || (exports.Me = Me = {}));
|
|
14
|
+
//# sourceMappingURL=Me.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Me.js","sourceRoot":"","sources":["../../../User/Me.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAC3B,oCAAgC;AAOhC,IAAiB,EAAE,CAMlB;AAND,WAAiB,EAAE;IACL,OAAI,GAAG,WAAI,CAAC,MAAM,CAAK;QACnC,KAAK,EAAE,WAAI,CAAC,MAAM,EAAE;QACpB,QAAQ,EAAE,WAAI,CAAC,MAAM,EAAE;QACvB,KAAK,EAAE,aAAK,CAAC,IAAI;KACjB,CAAC,CAAA;AACH,CAAC,EANgB,EAAE,kBAAF,EAAE,QAMlB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { cryptly } from "cryptly";
|
|
2
|
+
import { gracely } from "gracely";
|
|
3
|
+
import { isoly } from "isoly";
|
|
4
|
+
export interface Password {
|
|
5
|
+
hash: cryptly.Password.Hash;
|
|
6
|
+
changed: isoly.DateTime;
|
|
7
|
+
}
|
|
8
|
+
export declare namespace Password {
|
|
9
|
+
interface Creatable {
|
|
10
|
+
new: string;
|
|
11
|
+
repeat: string;
|
|
12
|
+
}
|
|
13
|
+
namespace Creatable {
|
|
14
|
+
const type: import("isly/dist/cjs/object").IslyObject<Creatable, object>;
|
|
15
|
+
}
|
|
16
|
+
function create(creatable: Creatable, pepper: string | undefined): Promise<Password | gracely.Error>;
|
|
17
|
+
function salt(): string;
|
|
18
|
+
function hash(password: string, pepper: string): Promise<cryptly.Password.Hash>;
|
|
19
|
+
function verify(password: string, hash: cryptly.Password.Hash, pepper: string): Promise<boolean>;
|
|
20
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Password = void 0;
|
|
4
|
+
const cryptly_1 = require("cryptly");
|
|
5
|
+
const gracely_1 = require("gracely");
|
|
6
|
+
const isoly_1 = require("isoly");
|
|
7
|
+
const isly_1 = require("isly");
|
|
8
|
+
var Password;
|
|
9
|
+
(function (Password) {
|
|
10
|
+
let Creatable;
|
|
11
|
+
(function (Creatable) {
|
|
12
|
+
Creatable.type = isly_1.isly.object({
|
|
13
|
+
new: isly_1.isly.string(),
|
|
14
|
+
repeat: isly_1.isly.string(),
|
|
15
|
+
});
|
|
16
|
+
})(Creatable = Password.Creatable || (Password.Creatable = {}));
|
|
17
|
+
async function create(creatable, pepper) {
|
|
18
|
+
let result;
|
|
19
|
+
if (creatable.new !== creatable.repeat)
|
|
20
|
+
result = gracely_1.gracely.client.forbidden("The new password and the repeated password do not match.");
|
|
21
|
+
else if (!pepper)
|
|
22
|
+
result = gracely_1.gracely.server.backendFailure("The password cannot be created without a pepper.");
|
|
23
|
+
else
|
|
24
|
+
result = { hash: await hash(creatable.new, pepper), changed: isoly_1.isoly.DateTime.now() };
|
|
25
|
+
return result;
|
|
26
|
+
}
|
|
27
|
+
Password.create = create;
|
|
28
|
+
function salt() {
|
|
29
|
+
return cryptly_1.cryptly.Base64.encode(cryptly_1.cryptly.RandomValue.generate(new Uint8Array(64)).toString());
|
|
30
|
+
}
|
|
31
|
+
Password.salt = salt;
|
|
32
|
+
async function hash(password, pepper) {
|
|
33
|
+
return cryptly_1.cryptly.Password.hash(signer(pepper), password, salt());
|
|
34
|
+
}
|
|
35
|
+
Password.hash = hash;
|
|
36
|
+
async function verify(password, hash, pepper) {
|
|
37
|
+
return cryptly_1.cryptly.Password.verify(signer(pepper), hash, password);
|
|
38
|
+
}
|
|
39
|
+
Password.verify = verify;
|
|
40
|
+
function signer(pepper) {
|
|
41
|
+
return cryptly_1.cryptly.Signer.create("HMAC", "SHA-512", pepper);
|
|
42
|
+
}
|
|
43
|
+
})(Password || (exports.Password = Password = {}));
|
|
44
|
+
//# sourceMappingURL=Password.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Password.js","sourceRoot":"","sources":["../../../User/Password.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AACjC,qCAAiC;AACjC,iCAA6B;AAC7B,+BAA2B;AAM3B,IAAiB,QAAQ,CAiCxB;AAjCD,WAAiB,QAAQ;IAKxB,IAAiB,SAAS,CAKzB;IALD,WAAiB,SAAS;QACZ,cAAI,GAAG,WAAI,CAAC,MAAM,CAAY;YAC1C,GAAG,EAAE,WAAI,CAAC,MAAM,EAAE;YAClB,MAAM,EAAE,WAAI,CAAC,MAAM,EAAE;SACrB,CAAC,CAAA;IACH,CAAC,EALgB,SAAS,GAAT,kBAAS,KAAT,kBAAS,QAKzB;IACM,KAAK,UAAU,MAAM,CAAC,SAAoB,EAAE,MAA0B;QAC5E,IAAI,MAA0C,CAAA;QAC9C,IAAI,SAAS,CAAC,GAAG,KAAK,SAAS,CAAC,MAAM;YACrC,MAAM,GAAG,iBAAO,CAAC,MAAM,CAAC,SAAS,CAAC,0DAA0D,CAAC,CAAA;aACzF,IAAI,CAAC,MAAM;YACf,MAAM,GAAG,iBAAO,CAAC,MAAM,CAAC,cAAc,CAAC,kDAAkD,CAAC,CAAA;;YAE1F,MAAM,GAAG,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,aAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAA;QACpF,OAAO,MAAM,CAAA;IACd,CAAC;IATqB,eAAM,SAS3B,CAAA;IACD,SAAgB,IAAI;QACnB,OAAO,iBAAO,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC1F,CAAC;IAFe,aAAI,OAEnB,CAAA;IACM,KAAK,UAAU,IAAI,CAAC,QAAgB,EAAE,MAAc;QAC1D,OAAO,iBAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IAC/D,CAAC;IAFqB,aAAI,OAEzB,CAAA;IACM,KAAK,UAAU,MAAM,CAAC,QAAgB,EAAE,IAA2B,EAAE,MAAc;QACzF,OAAO,iBAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC/D,CAAC;IAFqB,eAAM,SAE3B,CAAA;IACD,SAAS,MAAM,CAAC,MAAc;QAC7B,OAAO,iBAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;IACxD,CAAC;AACF,CAAC,EAjCgB,QAAQ,wBAAR,QAAQ,QAiCxB"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { isoly } from "isoly";
|
|
2
|
+
import { Realm } from "../Realm";
|
|
3
|
+
import { Access as UserAccess } from "./Access";
|
|
4
|
+
import { Identity as UserIdentity } from "./Identity";
|
|
5
|
+
import { JWT as UserJWT } from "./JWT";
|
|
6
|
+
import { Me as UserMe } from "./Me";
|
|
7
|
+
import { Password as UserPassword } from "./Password";
|
|
8
|
+
export interface User {
|
|
9
|
+
email: string;
|
|
10
|
+
access: User.Access;
|
|
11
|
+
changed: isoly.DateTime;
|
|
12
|
+
created: isoly.DateTime;
|
|
13
|
+
password: {
|
|
14
|
+
changed: isoly.DateTime;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export declare namespace User {
|
|
18
|
+
export import Access = UserAccess;
|
|
19
|
+
export import Identity = UserIdentity;
|
|
20
|
+
export import JWT = UserJWT;
|
|
21
|
+
export import Me = UserMe;
|
|
22
|
+
export import Password = UserPassword;
|
|
23
|
+
function fromInvite(invite: Invite): User;
|
|
24
|
+
function toJWTPayloadCreatable(user: User, realm: Realm): User.JWT.Payload.Creatable;
|
|
25
|
+
interface Creatable {
|
|
26
|
+
invite: string;
|
|
27
|
+
password: Password.Creatable;
|
|
28
|
+
}
|
|
29
|
+
namespace Creatable {
|
|
30
|
+
const type: import("isly/dist/cjs/object").IslyObject<Creatable, object>;
|
|
31
|
+
}
|
|
32
|
+
interface Invite {
|
|
33
|
+
id: string;
|
|
34
|
+
email: string;
|
|
35
|
+
access: Access;
|
|
36
|
+
}
|
|
37
|
+
namespace Invite {
|
|
38
|
+
interface Creatable {
|
|
39
|
+
email: string;
|
|
40
|
+
access: Access;
|
|
41
|
+
}
|
|
42
|
+
namespace Creatable {
|
|
43
|
+
const type: import("isly/dist/cjs/object").IslyObject<Creatable, object>;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.User = void 0;
|
|
4
|
+
const isoly_1 = require("isoly");
|
|
5
|
+
const isly_1 = require("isly");
|
|
6
|
+
const Access_1 = require("./Access");
|
|
7
|
+
const Identity_1 = require("./Identity");
|
|
8
|
+
const JWT_1 = require("./JWT");
|
|
9
|
+
const Me_1 = require("./Me");
|
|
10
|
+
const Password_1 = require("./Password");
|
|
11
|
+
var User;
|
|
12
|
+
(function (User) {
|
|
13
|
+
User.Access = Access_1.Access;
|
|
14
|
+
User.Identity = Identity_1.Identity;
|
|
15
|
+
User.JWT = JWT_1.JWT;
|
|
16
|
+
User.Me = Me_1.Me;
|
|
17
|
+
User.Password = Password_1.Password;
|
|
18
|
+
function fromInvite(invite) {
|
|
19
|
+
const now = isoly_1.isoly.DateTime.now();
|
|
20
|
+
return {
|
|
21
|
+
email: invite.email,
|
|
22
|
+
access: invite.access,
|
|
23
|
+
changed: now,
|
|
24
|
+
created: now,
|
|
25
|
+
password: {
|
|
26
|
+
changed: now,
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
User.fromInvite = fromInvite;
|
|
31
|
+
function toJWTPayloadCreatable(user, realm) {
|
|
32
|
+
return {
|
|
33
|
+
sub: user.email,
|
|
34
|
+
permission: { ...(user.access[realm] ?? {}), ...(user.access["*"] ?? {}) },
|
|
35
|
+
realm,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
User.toJWTPayloadCreatable = toJWTPayloadCreatable;
|
|
39
|
+
let Creatable;
|
|
40
|
+
(function (Creatable) {
|
|
41
|
+
Creatable.type = isly_1.isly.object({
|
|
42
|
+
invite: isly_1.isly.string(),
|
|
43
|
+
password: isly_1.isly.object({ new: isly_1.isly.string(), repeat: isly_1.isly.string() }),
|
|
44
|
+
});
|
|
45
|
+
})(Creatable = User.Creatable || (User.Creatable = {}));
|
|
46
|
+
let Invite;
|
|
47
|
+
(function (Invite) {
|
|
48
|
+
let Creatable;
|
|
49
|
+
(function (Creatable) {
|
|
50
|
+
Creatable.type = isly_1.isly.object({ email: isly_1.isly.string(), access: User.Access.type });
|
|
51
|
+
})(Creatable = Invite.Creatable || (Invite.Creatable = {}));
|
|
52
|
+
})(Invite = User.Invite || (User.Invite = {}));
|
|
53
|
+
})(User || (exports.User = User = {}));
|
|
54
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../User/index.ts"],"names":[],"mappings":";;;AAAA,iCAA6B;AAC7B,+BAA2B;AAE3B,qCAA+C;AAC/C,yCAAqD;AACrD,+BAAsC;AACtC,6BAAmC;AACnC,yCAAqD;AAWrD,IAAiB,IAAI,CAiDpB;AAjDD,WAAiB,IAAI;IACN,WAAM,GAAG,eAAU,CAAA;IACnB,aAAQ,GAAG,mBAAY,CAAA;IACvB,QAAG,GAAG,SAAO,CAAA;IACb,OAAE,GAAG,OAAM,CAAA;IACX,aAAQ,GAAG,mBAAY,CAAA;IACrC,SAAgB,UAAU,CAAC,MAAc;QACxC,MAAM,GAAG,GAAG,aAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;QAChC,OAAO;YACN,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,GAAG;YACZ,OAAO,EAAE,GAAG;YACZ,QAAQ,EAAE;gBACT,OAAO,EAAE,GAAG;aACZ;SACD,CAAA;IACF,CAAC;IAXe,eAAU,aAWzB,CAAA;IACD,SAAgB,qBAAqB,CAAC,IAAU,EAAE,KAAY;QAC7D,OAAO;YACN,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,UAAU,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE;YAC1E,KAAK;SACL,CAAA;IACF,CAAC;IANe,0BAAqB,wBAMpC,CAAA;IAKD,IAAiB,SAAS,CAKzB;IALD,WAAiB,SAAS;QACZ,cAAI,GAAG,WAAI,CAAC,MAAM,CAAY;YAC1C,MAAM,EAAE,WAAI,CAAC,MAAM,EAAE;YACrB,QAAQ,EAAE,WAAI,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,WAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,WAAI,CAAC,MAAM,EAAE,EAAE,CAAC;SACpE,CAAC,CAAA;IACH,CAAC,EALgB,SAAS,GAAT,cAAS,KAAT,cAAS,QAKzB;IAMD,IAAiB,MAAM,CAQtB;IARD,WAAiB,MAAM;QAKtB,IAAiB,SAAS,CAEzB;QAFD,WAAiB,SAAS;YACZ,cAAI,GAAG,WAAI,CAAC,MAAM,CAAY,EAAE,KAAK,EAAE,WAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,KAAA,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1F,CAAC,EAFgB,SAAS,GAAT,gBAAS,KAAT,gBAAS,QAEzB;IACF,CAAC,EARgB,MAAM,GAAN,WAAM,KAAN,WAAM,QAQtB;AACF,CAAC,EAjDgB,IAAI,oBAAJ,IAAI,QAiDpB"}
|
package/dist/cjs/pax2pay.d.ts
CHANGED
|
@@ -25,11 +25,12 @@ export { Organization } from "./Organization";
|
|
|
25
25
|
export { Rail } from "./Rail";
|
|
26
26
|
export { Realm } from "./Realm";
|
|
27
27
|
export { Report } from "./Report";
|
|
28
|
+
export { reports } from "./reports";
|
|
28
29
|
export { Rule } from "./Rule";
|
|
29
30
|
export { Settlement } from "./Settlement";
|
|
30
31
|
export { Supplier } from "./Supplier";
|
|
31
32
|
export { Transaction } from "./Transaction";
|
|
32
33
|
export { Treasury } from "./Treasury";
|
|
34
|
+
export { User } from "./User";
|
|
33
35
|
export { Warning } from "./Warning";
|
|
34
|
-
export { reports } from "./reports";
|
|
35
36
|
export { Quarter } from "./Quarter";
|
package/dist/cjs/pax2pay.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Quarter = exports.
|
|
3
|
+
exports.Quarter = exports.Warning = exports.User = exports.Treasury = exports.Transaction = exports.Supplier = exports.Settlement = exports.Rule = exports.reports = exports.Report = exports.Realm = exports.Rail = exports.Organization = exports.Operation = exports.Merchant = exports.Log = exports.Label = exports.Key = exports.Identity = exports.Identifier = exports.Holidays = exports.Exchange = exports.Counterbalances = exports.Counterbalance = exports.Client = exports.Card = exports.Balances = exports.Balance = exports.Backup = exports.Authorization = exports.Audit = exports.Analytics = exports.Amounts = exports.Amount = exports.Acquirer = exports.Account = void 0;
|
|
4
4
|
var Account_1 = require("./Account");
|
|
5
5
|
Object.defineProperty(exports, "Account", { enumerable: true, get: function () { return Account_1.Account; } });
|
|
6
6
|
var Acquirer_1 = require("./Acquirer");
|
|
@@ -55,6 +55,8 @@ var Realm_1 = require("./Realm");
|
|
|
55
55
|
Object.defineProperty(exports, "Realm", { enumerable: true, get: function () { return Realm_1.Realm; } });
|
|
56
56
|
var Report_1 = require("./Report");
|
|
57
57
|
Object.defineProperty(exports, "Report", { enumerable: true, get: function () { return Report_1.Report; } });
|
|
58
|
+
var reports_1 = require("./reports");
|
|
59
|
+
Object.defineProperty(exports, "reports", { enumerable: true, get: function () { return reports_1.reports; } });
|
|
58
60
|
var Rule_1 = require("./Rule");
|
|
59
61
|
Object.defineProperty(exports, "Rule", { enumerable: true, get: function () { return Rule_1.Rule; } });
|
|
60
62
|
var Settlement_1 = require("./Settlement");
|
|
@@ -65,10 +67,10 @@ var Transaction_1 = require("./Transaction");
|
|
|
65
67
|
Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return Transaction_1.Transaction; } });
|
|
66
68
|
var Treasury_1 = require("./Treasury");
|
|
67
69
|
Object.defineProperty(exports, "Treasury", { enumerable: true, get: function () { return Treasury_1.Treasury; } });
|
|
70
|
+
var User_1 = require("./User");
|
|
71
|
+
Object.defineProperty(exports, "User", { enumerable: true, get: function () { return User_1.User; } });
|
|
68
72
|
var Warning_1 = require("./Warning");
|
|
69
73
|
Object.defineProperty(exports, "Warning", { enumerable: true, get: function () { return Warning_1.Warning; } });
|
|
70
|
-
var reports_1 = require("./reports");
|
|
71
|
-
Object.defineProperty(exports, "reports", { enumerable: true, get: function () { return reports_1.reports; } });
|
|
72
74
|
var Quarter_1 = require("./Quarter");
|
|
73
75
|
Object.defineProperty(exports, "Quarter", { enumerable: true, get: function () { return Quarter_1.Quarter; } });
|
|
74
76
|
//# sourceMappingURL=pax2pay.js.map
|
package/dist/cjs/pax2pay.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pax2pay.js","sourceRoot":"","sources":["../../pax2pay.ts"],"names":[],"mappings":";;;AAAA,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,yCAAuC;AAA9B,sGAAA,SAAS,OAAA;AAClB,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,iDAA+C;AAAtC,8GAAA,aAAa,OAAA;AACtB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,mDAAiD;AAAxC,gHAAA,cAAc,OAAA;AACvB,qDAAmD;AAA1C,kHAAA,eAAe,OAAA;AACxB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,yCAAuC;AAA9B,sGAAA,SAAS,OAAA;AAClB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,6CAA2C;AAAlC,0GAAA,WAAW,OAAA;AACpB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB
|
|
1
|
+
{"version":3,"file":"pax2pay.js","sourceRoot":"","sources":["../../pax2pay.ts"],"names":[],"mappings":";;;AAAA,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,yCAAuC;AAA9B,sGAAA,SAAS,OAAA;AAClB,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,iDAA+C;AAAtC,8GAAA,aAAa,OAAA;AACtB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,mDAAiD;AAAxC,gHAAA,cAAc,OAAA;AACvB,qDAAmD;AAA1C,kHAAA,eAAe,OAAA;AACxB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,yCAAuC;AAA9B,sGAAA,SAAS,OAAA;AAClB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,6CAA2C;AAAlC,0GAAA,WAAW,OAAA;AACpB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA"}
|
|
@@ -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":"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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
|
+
}
|