@bitgo/sdk-coin-xrp 3.15.2 → 3.16.0
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/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/register.d.ts.map +1 -1
- package/dist/src/register.js +5 -1
- package/dist/src/xrpMptToken.d.ts +20 -0
- package/dist/src/xrpMptToken.d.ts.map +1 -0
- package/dist/src/xrpMptToken.js +53 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
package/dist/src/index.d.ts
CHANGED
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -19,4 +19,5 @@ __exportStar(require("./register"), exports);
|
|
|
19
19
|
__exportStar(require("./txrp"), exports);
|
|
20
20
|
__exportStar(require("./xrp"), exports);
|
|
21
21
|
__exportStar(require("./xrpToken"), exports);
|
|
22
|
-
|
|
22
|
+
__exportStar(require("./xrpMptToken"), exports);
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQjtBQUN0Qiw2Q0FBMkI7QUFDM0IseUNBQXVCO0FBQ3ZCLHdDQUFzQjtBQUN0Qiw2Q0FBMkI7QUFDM0IsZ0RBQThCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWInO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlcic7XG5leHBvcnQgKiBmcm9tICcuL3R4cnAnO1xuZXhwb3J0ICogZnJvbSAnLi94cnAnO1xuZXhwb3J0ICogZnJvbSAnLi94cnBUb2tlbic7XG5leHBvcnQgKiBmcm9tICcuL3hycE1wdFRva2VuJztcbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAM5C,eAAO,MAAM,QAAQ,QAAS,SAAS,KAAG,IASzC,CAAC"}
|
package/dist/src/register.js
CHANGED
|
@@ -4,12 +4,16 @@ exports.register = void 0;
|
|
|
4
4
|
const txrp_1 = require("./txrp");
|
|
5
5
|
const xrp_1 = require("./xrp");
|
|
6
6
|
const xrpToken_1 = require("./xrpToken");
|
|
7
|
+
const xrpMptToken_1 = require("./xrpMptToken");
|
|
7
8
|
const register = (sdk) => {
|
|
8
9
|
sdk.register('xrp', xrp_1.Xrp.createInstance);
|
|
9
10
|
sdk.register('txrp', txrp_1.Txrp.createInstance);
|
|
10
11
|
xrpToken_1.XrpToken.createTokenConstructors().forEach(({ name, coinConstructor }) => {
|
|
11
12
|
sdk.register(name, coinConstructor);
|
|
12
13
|
});
|
|
14
|
+
xrpMptToken_1.XrpMptToken.createTokenConstructors().forEach(({ name, coinConstructor }) => {
|
|
15
|
+
sdk.register(name, coinConstructor);
|
|
16
|
+
});
|
|
13
17
|
};
|
|
14
18
|
exports.register = register;
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVnaXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsaUNBQThCO0FBQzlCLCtCQUE0QjtBQUM1Qix5Q0FBc0M7QUFDdEMsK0NBQTRDO0FBRXJDLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBYyxFQUFRLEVBQUU7SUFDL0MsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsU0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3hDLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLFdBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUMxQyxtQkFBUSxDQUFDLHVCQUF1QixFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEVBQUUsRUFBRTtRQUN2RSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsQ0FBQztJQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNILHlCQUFXLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFO1FBQzFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ3RDLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBVFcsUUFBQSxRQUFRLFlBU25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IFR4cnAgfSBmcm9tICcuL3R4cnAnO1xuaW1wb3J0IHsgWHJwIH0gZnJvbSAnLi94cnAnO1xuaW1wb3J0IHsgWHJwVG9rZW4gfSBmcm9tICcuL3hycFRva2VuJztcbmltcG9ydCB7IFhycE1wdFRva2VuIH0gZnJvbSAnLi94cnBNcHRUb2tlbic7XG5cbmV4cG9ydCBjb25zdCByZWdpc3RlciA9IChzZGs6IEJpdEdvQmFzZSk6IHZvaWQgPT4ge1xuICBzZGsucmVnaXN0ZXIoJ3hycCcsIFhycC5jcmVhdGVJbnN0YW5jZSk7XG4gIHNkay5yZWdpc3RlcigndHhycCcsIFR4cnAuY3JlYXRlSW5zdGFuY2UpO1xuICBYcnBUb2tlbi5jcmVhdGVUb2tlbkNvbnN0cnVjdG9ycygpLmZvckVhY2goKHsgbmFtZSwgY29pbkNvbnN0cnVjdG9yIH0pID0+IHtcbiAgICBzZGsucmVnaXN0ZXIobmFtZSwgY29pbkNvbnN0cnVjdG9yKTtcbiAgfSk7XG4gIFhycE1wdFRva2VuLmNyZWF0ZVRva2VuQ29uc3RydWN0b3JzKCkuZm9yRWFjaCgoeyBuYW1lLCBjb2luQ29uc3RydWN0b3IgfSkgPT4ge1xuICAgIHNkay5yZWdpc3RlcihuYW1lLCBjb2luQ29uc3RydWN0b3IpO1xuICB9KTtcbn07XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { XrpMptTokenConfig } from '@bitgo/statics';
|
|
2
|
+
import { Xrp } from './xrp';
|
|
3
|
+
import { BitGoBase, CoinConstructor, NamedCoinConstructor } from '@bitgo/sdk-core';
|
|
4
|
+
export declare class XrpMptToken extends Xrp {
|
|
5
|
+
readonly tokenConfig: XrpMptTokenConfig;
|
|
6
|
+
constructor(bitgo: BitGoBase, tokenConfig: XrpMptTokenConfig);
|
|
7
|
+
static createTokenConstructor(config: XrpMptTokenConfig): CoinConstructor;
|
|
8
|
+
static createTokenConstructors(tokenConfigs?: XrpMptTokenConfig[]): NamedCoinConstructor[];
|
|
9
|
+
get name(): string;
|
|
10
|
+
get coin(): string;
|
|
11
|
+
get network(): string;
|
|
12
|
+
get contractAddress(): string;
|
|
13
|
+
get canTransfer(): boolean;
|
|
14
|
+
get decimalPlaces(): number;
|
|
15
|
+
getChain(): string;
|
|
16
|
+
getBaseChain(): string;
|
|
17
|
+
getFullName(): string;
|
|
18
|
+
getBaseFactor(): number;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=xrpMptToken.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xrpMptToken.d.ts","sourceRoot":"","sources":["../../src/xrpMptToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,iBAAiB,EAAU,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEnF,qBAAa,WAAY,SAAQ,GAAG;IAClC,SAAgB,WAAW,EAAE,iBAAiB,CAAC;gBAEnC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB;IAM5D,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,iBAAiB,GAAG,eAAe;IAIzE,MAAM,CAAC,uBAAuB,CAC5B,YAAY,GAAE,iBAAiB,EAAuE,GACrG,oBAAoB,EAAE;IAOzB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM;IAItB,WAAW,IAAI,MAAM;IAIrB,aAAa,IAAI,MAAM;CAGxB"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.XrpMptToken = void 0;
|
|
4
|
+
const statics_1 = require("@bitgo/statics");
|
|
5
|
+
const xrp_1 = require("./xrp");
|
|
6
|
+
class XrpMptToken extends xrp_1.Xrp {
|
|
7
|
+
constructor(bitgo, tokenConfig) {
|
|
8
|
+
const staticsCoin = tokenConfig.network === 'Mainnet' ? statics_1.coins.get('xrp') : statics_1.coins.get('txrp');
|
|
9
|
+
super(bitgo, staticsCoin);
|
|
10
|
+
this.tokenConfig = tokenConfig;
|
|
11
|
+
}
|
|
12
|
+
static createTokenConstructor(config) {
|
|
13
|
+
return (bitgo) => new XrpMptToken(bitgo, config);
|
|
14
|
+
}
|
|
15
|
+
static createTokenConstructors(tokenConfigs = [...statics_1.tokens.bitcoin.xrp.mptTokens, ...statics_1.tokens.testnet.xrp.mptTokens]) {
|
|
16
|
+
return tokenConfigs.map((config) => ({
|
|
17
|
+
name: config.type,
|
|
18
|
+
coinConstructor: XrpMptToken.createTokenConstructor(config),
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
21
|
+
get name() {
|
|
22
|
+
return this.tokenConfig.name;
|
|
23
|
+
}
|
|
24
|
+
get coin() {
|
|
25
|
+
return this.tokenConfig.coin;
|
|
26
|
+
}
|
|
27
|
+
get network() {
|
|
28
|
+
return this.tokenConfig.network;
|
|
29
|
+
}
|
|
30
|
+
get contractAddress() {
|
|
31
|
+
return this.tokenConfig.contractAddress;
|
|
32
|
+
}
|
|
33
|
+
get canTransfer() {
|
|
34
|
+
return this.tokenConfig.canTransfer;
|
|
35
|
+
}
|
|
36
|
+
get decimalPlaces() {
|
|
37
|
+
return this.tokenConfig.decimalPlaces;
|
|
38
|
+
}
|
|
39
|
+
getChain() {
|
|
40
|
+
return this.tokenConfig.type;
|
|
41
|
+
}
|
|
42
|
+
getBaseChain() {
|
|
43
|
+
return this.coin;
|
|
44
|
+
}
|
|
45
|
+
getFullName() {
|
|
46
|
+
return 'XRP MPT Token';
|
|
47
|
+
}
|
|
48
|
+
getBaseFactor() {
|
|
49
|
+
return Math.pow(10, this.tokenConfig.decimalPlaces);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
exports.XrpMptToken = XrpMptToken;
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHJwTXB0VG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMveHJwTXB0VG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNENBQWtFO0FBQ2xFLCtCQUE0QjtBQUc1QixNQUFhLFdBQVksU0FBUSxTQUFHO0lBR2xDLFlBQVksS0FBZ0IsRUFBRSxXQUE4QjtRQUMxRCxNQUFNLFdBQVcsR0FBRyxXQUFXLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RixLQUFLLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsTUFBeUI7UUFDckQsT0FBTyxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksV0FBVyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsTUFBTSxDQUFDLHVCQUF1QixDQUM1QixlQUFvQyxDQUFDLEdBQUcsZ0JBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLGdCQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUM7UUFFdEcsT0FBTyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ25DLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtZQUNqQixlQUFlLEVBQUUsV0FBVyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQztTQUM1RCxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUN4QyxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLGVBQWUsQ0FBQztJQUN6QixDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0Y7QUE3REQsa0NBNkRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29pbnMsIFhycE1wdFRva2VuQ29uZmlnLCB0b2tlbnMgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBYcnAgfSBmcm9tICcuL3hycCc7XG5pbXBvcnQgeyBCaXRHb0Jhc2UsIENvaW5Db25zdHJ1Y3RvciwgTmFtZWRDb2luQ29uc3RydWN0b3IgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuXG5leHBvcnQgY2xhc3MgWHJwTXB0VG9rZW4gZXh0ZW5kcyBYcnAge1xuICBwdWJsaWMgcmVhZG9ubHkgdG9rZW5Db25maWc6IFhycE1wdFRva2VuQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIHRva2VuQ29uZmlnOiBYcnBNcHRUb2tlbkNvbmZpZykge1xuICAgIGNvbnN0IHN0YXRpY3NDb2luID0gdG9rZW5Db25maWcubmV0d29yayA9PT0gJ01haW5uZXQnID8gY29pbnMuZ2V0KCd4cnAnKSA6IGNvaW5zLmdldCgndHhycCcpO1xuICAgIHN1cGVyKGJpdGdvLCBzdGF0aWNzQ29pbik7XG4gICAgdGhpcy50b2tlbkNvbmZpZyA9IHRva2VuQ29uZmlnO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZVRva2VuQ29uc3RydWN0b3IoY29uZmlnOiBYcnBNcHRUb2tlbkNvbmZpZyk6IENvaW5Db25zdHJ1Y3RvciB7XG4gICAgcmV0dXJuIChiaXRnbzogQml0R29CYXNlKSA9PiBuZXcgWHJwTXB0VG9rZW4oYml0Z28sIGNvbmZpZyk7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlVG9rZW5Db25zdHJ1Y3RvcnMoXG4gICAgdG9rZW5Db25maWdzOiBYcnBNcHRUb2tlbkNvbmZpZ1tdID0gWy4uLnRva2Vucy5iaXRjb2luLnhycC5tcHRUb2tlbnMsIC4uLnRva2Vucy50ZXN0bmV0LnhycC5tcHRUb2tlbnNdXG4gICk6IE5hbWVkQ29pbkNvbnN0cnVjdG9yW10ge1xuICAgIHJldHVybiB0b2tlbkNvbmZpZ3MubWFwKChjb25maWcpID0+ICh7XG4gICAgICBuYW1lOiBjb25maWcudHlwZSxcbiAgICAgIGNvaW5Db25zdHJ1Y3RvcjogWHJwTXB0VG9rZW4uY3JlYXRlVG9rZW5Db25zdHJ1Y3Rvcihjb25maWcpLFxuICAgIH0pKTtcbiAgfVxuXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcubmFtZTtcbiAgfVxuXG4gIGdldCBjb2luKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuY29pbjtcbiAgfVxuXG4gIGdldCBuZXR3b3JrKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcubmV0d29yaztcbiAgfVxuXG4gIGdldCBjb250cmFjdEFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5jb250cmFjdEFkZHJlc3M7XG4gIH1cblxuICBnZXQgY2FuVHJhbnNmZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuY2FuVHJhbnNmZXI7XG4gIH1cblxuICBnZXQgZGVjaW1hbFBsYWNlcygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmRlY2ltYWxQbGFjZXM7XG4gIH1cblxuICBnZXRDaGFpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLnR5cGU7XG4gIH1cblxuICBnZXRCYXNlQ2hhaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb2luO1xuICB9XG5cbiAgZ2V0RnVsbE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ1hSUCBNUFQgVG9rZW4nO1xuICB9XG5cbiAgZ2V0QmFzZUZhY3RvcigpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLnBvdygxMCwgdGhpcy50b2tlbkNvbmZpZy5kZWNpbWFsUGxhY2VzKTtcbiAgfVxufVxuIl19
|