@bitgo/sdk-coin-sui
Advanced tools
Comparing version 4.2.5 to 4.2.6
@@ -6,2 +6,8 @@ # Change Log | ||
## [4.2.6](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@4.2.0...@bitgo/sdk-coin-sui@4.2.6) (2023-09-01) | ||
### Bug Fixes | ||
- **root:** update @types/node ([cedc1a0](https://github.com/BitGo/BitGoJS/commit/cedc1a0035e79bb42fda57bf6ac29d606242f50b)) | ||
## [4.2.5](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@4.2.0...@bitgo/sdk-coin-sui@4.2.5) (2023-08-29) | ||
@@ -8,0 +14,0 @@ |
@@ -40,4 +40,2 @@ import { Infer } from 'superstruct'; | ||
export declare const BuilderCallArg: import("superstruct").Struct<{ | ||
Pure: number[]; | ||
} | { | ||
Object: { | ||
@@ -56,2 +54,4 @@ ImmOrOwned: { | ||
}; | ||
} | { | ||
Pure: number[]; | ||
}, null>; | ||
@@ -58,0 +58,0 @@ export declare type BuilderCallArg = Infer<typeof BuilderCallArg>; |
@@ -116,2 +116,3 @@ import { ObjectId, SuiObjectRef } from '../types'; | ||
}): { | ||
kind: "TransferObjects"; | ||
objects: ({ | ||
@@ -132,3 +133,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "TransferObjects"; | ||
address: { | ||
@@ -274,6 +274,7 @@ kind: "Input"; | ||
kind: "Publish"; | ||
modules: number[][]; | ||
dependencies: string[]; | ||
modules: number[][]; | ||
}; | ||
MakeMoveVec({ type, objects, }: Omit<{ | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -294,3 +295,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -304,2 +304,3 @@ None: null; | ||
}): { | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -320,3 +321,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -403,2 +403,3 @@ None: null; | ||
} | { | ||
kind: "TransferObjects"; | ||
objects: ({ | ||
@@ -419,3 +420,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "TransferObjects"; | ||
address: { | ||
@@ -501,2 +501,7 @@ kind: "Input"; | ||
} | { | ||
kind: "Publish"; | ||
modules: number[][]; | ||
dependencies: string[]; | ||
} | { | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -517,3 +522,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -524,6 +528,2 @@ None: null; | ||
} | undefined; | ||
} | { | ||
kind: "Publish"; | ||
dependencies: string[]; | ||
modules: number[][]; | ||
})[]; | ||
@@ -537,2 +537,3 @@ inputs: { | ||
gasConfig: { | ||
owner?: string | undefined; | ||
payment?: { | ||
@@ -543,3 +544,2 @@ objectId: string; | ||
}[] | undefined; | ||
owner?: string | undefined; | ||
price?: string | undefined; | ||
@@ -546,0 +546,0 @@ budget?: string | undefined; |
@@ -10,2 +10,3 @@ import { Infer } from 'superstruct'; | ||
declare const GasConfig: import("superstruct").Struct<{ | ||
owner?: string | undefined; | ||
payment?: { | ||
@@ -16,3 +17,2 @@ objectId: string; | ||
}[] | undefined; | ||
owner?: string | undefined; | ||
price?: string | undefined; | ||
@@ -61,2 +61,3 @@ budget?: string | undefined; | ||
} | { | ||
kind: "TransferObjects"; | ||
objects: ({ | ||
@@ -77,3 +78,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "TransferObjects"; | ||
address: { | ||
@@ -159,2 +159,7 @@ kind: "Input"; | ||
} | { | ||
kind: "Publish"; | ||
modules: number[][]; | ||
dependencies: string[]; | ||
} | { | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -175,3 +180,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -182,6 +186,2 @@ None: null; | ||
} | undefined; | ||
} | { | ||
kind: "Publish"; | ||
dependencies: string[]; | ||
modules: number[][]; | ||
})[]; | ||
@@ -195,2 +195,3 @@ inputs: { | ||
gasConfig: { | ||
owner?: string | undefined; | ||
payment?: { | ||
@@ -201,3 +202,2 @@ objectId: string; | ||
}[] | undefined; | ||
owner?: string | undefined; | ||
price?: string | undefined; | ||
@@ -221,2 +221,3 @@ budget?: string | undefined; | ||
gasConfig: import("superstruct").Struct<{ | ||
owner?: string | undefined; | ||
payment?: { | ||
@@ -227,3 +228,2 @@ objectId: string; | ||
}[] | undefined; | ||
owner?: string | undefined; | ||
price?: string | undefined; | ||
@@ -285,2 +285,3 @@ budget?: string | undefined; | ||
} | { | ||
kind: "TransferObjects"; | ||
objects: ({ | ||
@@ -301,3 +302,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "TransferObjects"; | ||
address: { | ||
@@ -383,2 +383,7 @@ kind: "Input"; | ||
} | { | ||
kind: "Publish"; | ||
modules: number[][]; | ||
dependencies: string[]; | ||
} | { | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -399,3 +404,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -406,6 +410,2 @@ None: null; | ||
} | undefined; | ||
} | { | ||
kind: "Publish"; | ||
dependencies: string[]; | ||
modules: number[][]; | ||
})[], import("superstruct").Struct<{ | ||
@@ -431,2 +431,3 @@ arguments: ({ | ||
} | { | ||
kind: "TransferObjects"; | ||
objects: ({ | ||
@@ -447,3 +448,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "TransferObjects"; | ||
address: { | ||
@@ -529,2 +529,7 @@ kind: "Input"; | ||
} | { | ||
kind: "Publish"; | ||
modules: number[][]; | ||
dependencies: string[]; | ||
} | { | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -545,3 +550,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -552,6 +556,2 @@ None: null; | ||
} | undefined; | ||
} | { | ||
kind: "Publish"; | ||
dependencies: string[]; | ||
modules: number[][]; | ||
}, null>>; | ||
@@ -558,0 +558,0 @@ }>; |
@@ -116,2 +116,3 @@ import { Infer, Struct } from 'superstruct'; | ||
export declare const TransferObjectsTransaction: Struct<{ | ||
kind: "TransferObjects"; | ||
objects: ({ | ||
@@ -132,3 +133,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "TransferObjects"; | ||
address: { | ||
@@ -358,2 +358,3 @@ kind: "Input"; | ||
export declare const MakeMoveVecTransaction: Struct<{ | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -374,3 +375,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -421,4 +421,4 @@ None: null; | ||
kind: "Publish"; | ||
modules: number[][]; | ||
dependencies: string[]; | ||
modules: number[][]; | ||
}, { | ||
@@ -450,2 +450,3 @@ kind: Struct<"Publish", "Publish">; | ||
} | { | ||
kind: "TransferObjects"; | ||
objects: ({ | ||
@@ -466,3 +467,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "TransferObjects"; | ||
address: { | ||
@@ -548,2 +548,7 @@ kind: "Input"; | ||
} | { | ||
kind: "Publish"; | ||
modules: number[][]; | ||
dependencies: string[]; | ||
} | { | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -564,3 +569,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -571,6 +575,2 @@ None: null; | ||
} | undefined; | ||
} | { | ||
kind: "Publish"; | ||
dependencies: string[]; | ||
modules: number[][]; | ||
}, null>; | ||
@@ -631,2 +631,3 @@ export declare type TransactionType = Infer<typeof TransactionType>; | ||
}> | Struct<{ | ||
kind: "TransferObjects"; | ||
objects: ({ | ||
@@ -647,3 +648,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "TransferObjects"; | ||
address: { | ||
@@ -867,2 +867,11 @@ kind: "Input"; | ||
}> | Struct<{ | ||
kind: "Publish"; | ||
modules: number[][]; | ||
dependencies: string[]; | ||
}, { | ||
kind: Struct<"Publish", "Publish">; | ||
modules: Struct<number[][], Struct<number[], Struct<number, null>>>; | ||
dependencies: Struct<string[], Struct<string, null>>; | ||
}> | Struct<{ | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -883,3 +892,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -926,10 +934,2 @@ None: null; | ||
}, null>>; | ||
}> | Struct<{ | ||
kind: "Publish"; | ||
dependencies: string[]; | ||
modules: number[][]; | ||
}, { | ||
kind: Struct<"Publish", "Publish">; | ||
modules: Struct<number[][], Struct<number[], Struct<number, null>>>; | ||
dependencies: Struct<string[], Struct<string, null>>; | ||
}>; | ||
@@ -982,2 +982,3 @@ /** | ||
MakeMoveVec({ type, objects, }: Omit<{ | ||
kind: "MakeMoveVec"; | ||
objects: ({ | ||
@@ -998,3 +999,2 @@ kind: "Input"; | ||
})[]; | ||
kind: "MakeMoveVec"; | ||
type?: { | ||
@@ -1001,0 +1001,0 @@ None: null; |
@@ -5,4 +5,4 @@ import { Infer } from 'superstruct'; | ||
digest: string; | ||
previousTransaction: string; | ||
coinType: string; | ||
previousTransaction: string; | ||
coinObjectId: string; | ||
@@ -25,4 +25,4 @@ balance: number; | ||
digest: string; | ||
previousTransaction: string; | ||
coinType: string; | ||
previousTransaction: string; | ||
coinObjectId: string; | ||
@@ -38,4 +38,4 @@ balance: number; | ||
digest: string; | ||
previousTransaction: string; | ||
coinType: string; | ||
previousTransaction: string; | ||
coinObjectId: string; | ||
@@ -47,4 +47,4 @@ balance: number; | ||
digest: string; | ||
previousTransaction: string; | ||
coinType: string; | ||
previousTransaction: string; | ||
coinObjectId: string; | ||
@@ -51,0 +51,0 @@ balance: number; |
@@ -11,2 +11,3 @@ import { Infer } from 'superstruct'; | ||
export declare const SuiEvent: import("superstruct").Struct<{ | ||
type: string; | ||
id: { | ||
@@ -16,8 +17,7 @@ txDigest: string; | ||
}; | ||
sender: string; | ||
packageId: string; | ||
transactionModule: string; | ||
sender: string; | ||
type: string; | ||
bcs?: string | undefined; | ||
parsedJson?: Record<string, any> | undefined; | ||
bcs?: string | undefined; | ||
timestampMs?: number | undefined; | ||
@@ -84,2 +84,3 @@ }, { | ||
data: { | ||
type: string; | ||
id: { | ||
@@ -89,8 +90,7 @@ txDigest: string; | ||
}; | ||
sender: string; | ||
packageId: string; | ||
transactionModule: string; | ||
sender: string; | ||
type: string; | ||
bcs?: string | undefined; | ||
parsedJson?: Record<string, any> | undefined; | ||
bcs?: string | undefined; | ||
timestampMs?: number | undefined; | ||
@@ -105,2 +105,3 @@ }[]; | ||
data: import("superstruct").Struct<{ | ||
type: string; | ||
id: { | ||
@@ -110,10 +111,10 @@ txDigest: string; | ||
}; | ||
sender: string; | ||
packageId: string; | ||
transactionModule: string; | ||
sender: string; | ||
type: string; | ||
bcs?: string | undefined; | ||
parsedJson?: Record<string, any> | undefined; | ||
bcs?: string | undefined; | ||
timestampMs?: number | undefined; | ||
}[], import("superstruct").Struct<{ | ||
type: string; | ||
id: { | ||
@@ -123,8 +124,7 @@ txDigest: string; | ||
}; | ||
sender: string; | ||
packageId: string; | ||
transactionModule: string; | ||
sender: string; | ||
type: string; | ||
bcs?: string | undefined; | ||
parsedJson?: Record<string, any> | undefined; | ||
bcs?: string | undefined; | ||
timestampMs?: number | undefined; | ||
@@ -159,2 +159,3 @@ }, { | ||
result: { | ||
type: string; | ||
id: { | ||
@@ -164,8 +165,7 @@ txDigest: string; | ||
}; | ||
sender: string; | ||
packageId: string; | ||
transactionModule: string; | ||
sender: string; | ||
type: string; | ||
bcs?: string | undefined; | ||
parsedJson?: Record<string, any> | undefined; | ||
bcs?: string | undefined; | ||
timestampMs?: number | undefined; | ||
@@ -176,2 +176,3 @@ }; | ||
result: import("superstruct").Struct<{ | ||
type: string; | ||
id: { | ||
@@ -181,8 +182,7 @@ txDigest: string; | ||
}; | ||
sender: string; | ||
packageId: string; | ||
transactionModule: string; | ||
sender: string; | ||
type: string; | ||
bcs?: string | undefined; | ||
parsedJson?: Record<string, any> | undefined; | ||
bcs?: string | undefined; | ||
timestampMs?: number | undefined; | ||
@@ -189,0 +189,0 @@ }, { |
@@ -20,2 +20,3 @@ import { Infer } from 'superstruct'; | ||
export declare const SuiGasData: import("superstruct").Struct<{ | ||
owner: string; | ||
payment: { | ||
@@ -26,3 +27,2 @@ objectId: string; | ||
}[]; | ||
owner: string; | ||
price: number; | ||
@@ -146,4 +146,4 @@ budget: number; | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -160,2 +160,11 @@ }, null>; | ||
type?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
bcs?: { | ||
@@ -167,4 +176,4 @@ type: string; | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -181,13 +190,4 @@ } | undefined; | ||
} | "Immutable" | undefined; | ||
previousTransaction?: string | undefined; | ||
storageRebate?: number | undefined; | ||
previousTransaction?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
display?: Record<string, string> | undefined; | ||
@@ -223,4 +223,4 @@ }, { | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -348,2 +348,11 @@ } | undefined, null>; | ||
type?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
bcs?: { | ||
@@ -355,4 +364,4 @@ type: string; | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -369,13 +378,4 @@ } | undefined; | ||
} | "Immutable" | undefined; | ||
previousTransaction?: string | undefined; | ||
storageRebate?: number | undefined; | ||
previousTransaction?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
display?: Record<string, string> | undefined; | ||
@@ -395,2 +395,11 @@ } | undefined; | ||
type?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
bcs?: { | ||
@@ -402,4 +411,4 @@ type: string; | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -416,13 +425,4 @@ } | undefined; | ||
} | "Immutable" | undefined; | ||
previousTransaction?: string | undefined; | ||
storageRebate?: number | undefined; | ||
previousTransaction?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
display?: Record<string, string> | undefined; | ||
@@ -458,4 +458,4 @@ } | undefined, { | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -550,2 +550,11 @@ } | undefined, null>; | ||
type?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
bcs?: { | ||
@@ -557,4 +566,4 @@ type: string; | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -571,13 +580,4 @@ } | undefined; | ||
} | "Immutable" | undefined; | ||
previousTransaction?: string | undefined; | ||
storageRebate?: number | undefined; | ||
previousTransaction?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
display?: Record<string, string> | undefined; | ||
@@ -604,2 +604,11 @@ } | undefined; | ||
type?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
bcs?: { | ||
@@ -611,4 +620,4 @@ type: string; | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -625,13 +634,4 @@ } | undefined; | ||
} | "Immutable" | undefined; | ||
previousTransaction?: string | undefined; | ||
storageRebate?: number | undefined; | ||
previousTransaction?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
display?: Record<string, string> | undefined; | ||
@@ -651,2 +651,11 @@ } | undefined; | ||
type?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
bcs?: { | ||
@@ -658,4 +667,4 @@ type: string; | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -672,13 +681,4 @@ } | undefined; | ||
} | "Immutable" | undefined; | ||
previousTransaction?: string | undefined; | ||
storageRebate?: number | undefined; | ||
previousTransaction?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
display?: Record<string, string> | undefined; | ||
@@ -698,2 +698,11 @@ } | undefined; | ||
type?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
bcs?: { | ||
@@ -705,4 +714,4 @@ type: string; | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -719,13 +728,4 @@ } | undefined; | ||
} | "Immutable" | undefined; | ||
previousTransaction?: string | undefined; | ||
storageRebate?: number | undefined; | ||
previousTransaction?: string | undefined; | ||
content?: { | ||
type: string; | ||
fields: Record<string, any>; | ||
hasPublicTransfer: boolean; | ||
dataType: "moveObject"; | ||
} | { | ||
disassembled: Record<string, string>; | ||
dataType: "package"; | ||
} | undefined; | ||
display?: Record<string, string> | undefined; | ||
@@ -761,4 +761,4 @@ } | undefined, { | ||
} | { | ||
dataType: "package"; | ||
id: string; | ||
dataType: "package"; | ||
moduleMap: Record<string, string>; | ||
@@ -765,0 +765,0 @@ } | undefined, null>; |
@@ -10,3 +10,3 @@ "use strict"; | ||
}, (reader) => { | ||
let bytes = reader.readVec((reader) => reader.read8()); | ||
const bytes = reader.readVec((reader) => reader.read8()); | ||
return new TextDecoder().decode(new Uint8Array(bytes)); | ||
@@ -108,2 +108,2 @@ }); | ||
registerUTF8String(bcs); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VpLWJjcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL3R5cGVzL3N1aS1iY3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUNBQThGO0FBSTlGLFNBQVMsa0JBQWtCLENBQUMsR0FBUTtJQUNsQyxHQUFHLENBQUMsWUFBWSxDQUNkLFlBQVksRUFDWixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUNkLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN4RCxPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUMsRUFDRCxDQUFDLE1BQU0sRUFBRSxFQUFFO1FBQ1QsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDdkQsT0FBTyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUMsQ0FDRixDQUFDO0FBQ0osQ0FBQztBQTBCRCxTQUFnQixTQUFTLENBQUMsR0FBUTtJQUNoQyxPQUFRLEdBQWUsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDO0FBQzdDLENBQUM7QUFGRCw4QkFFQztBQXdFRCxnQ0FBZ0M7QUFDaEMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDO0FBU3hCLE1BQU0saUJBQWlCLEdBQUc7SUFDeEIsSUFBSSxFQUFFLGlCQUFpQjtJQUN2QixNQUFNLEVBQUUsU0FBRyxDQUFDLE9BQU87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ZywgU3RydWN0VHlwZURlZmluaXRpb24gfSBmcm9tICdAbXlzdGVuL2Jjcyc7XG5pbXBvcnQgeyBTdWlPYmplY3RSZWYgfSBmcm9tICcuL29iamVjdHMnO1xuaW1wb3J0IHsgUHVyZUNhbGxBcmcgfSBmcm9tICcuLi9idWlsZGVyJztcblxuZnVuY3Rpb24gcmVnaXN0ZXJVVEY4U3RyaW5nKGJjczogQkNTKSB7XG4gIGJjcy5yZWdpc3RlclR5cGUoXG4gICAgJ3V0ZjhzdHJpbmcnLFxuICAgICh3cml0ZXIsIHN0cikgPT4ge1xuICAgICAgY29uc3QgYnl0ZXMgPSBBcnJheS5mcm9tKG5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShzdHIpKTtcbiAgICAgIHJldHVybiB3cml0ZXIud3JpdGVWZWMoYnl0ZXMsICh3cml0ZXIsIGVsKSA9PiB3cml0ZXIud3JpdGU4KGVsKSk7XG4gICAgfSxcbiAgICAocmVhZGVyKSA9PiB7XG4gICAgICBsZXQgYnl0ZXMgPSByZWFkZXIucmVhZFZlYygocmVhZGVyKSA9PiByZWFkZXIucmVhZDgoKSk7XG4gICAgICByZXR1cm4gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKG5ldyBVaW50OEFycmF5KGJ5dGVzKSk7XG4gICAgfVxuICApO1xufVxuXG4vKipcbiAqIEEgcmVmZXJlbmNlIHRvIGEgc2hhcmVkIG9iamVjdC5cbiAqL1xuZXhwb3J0IHR5cGUgU2hhcmVkT2JqZWN0UmVmID0ge1xuICAvKiogSGV4IGNvZGUgYXMgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgb2JqZWN0IGlkICovXG4gIG9iamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqIFRoZSB2ZXJzaW9uIHRoZSBvYmplY3Qgd2FzIHNoYXJlZCBhdCAqL1xuICBpbml0aWFsU2hhcmVkVmVyc2lvbjogbnVtYmVyIHwgc3RyaW5nO1xuXG4gIC8qKiBXaGV0aGVyIHJlZmVyZW5jZSBpcyBtdXRhYmxlICovXG4gIG11dGFibGU6IGJvb2xlYW47XG59O1xuXG4vKipcbiAqIEFuIG9iamVjdCBhcmd1bWVudC5cbiAqL1xuZXhwb3J0IHR5cGUgT2JqZWN0QXJnID0geyBJbW1Pck93bmVkOiBTdWlPYmplY3RSZWYgfSB8IHsgU2hhcmVkOiBTaGFyZWRPYmplY3RSZWYgfTtcblxuLyoqXG4gKiBBIHB1cmUgYXJndW1lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIFB1cmVBcmcgPSB7IFB1cmU6IEFycmF5TGlrZTxudW1iZXI+IH07XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1B1cmVBcmcoYXJnOiBhbnkpOiBhcmcgaXMgUHVyZUFyZyB7XG4gIHJldHVybiAoYXJnIGFzIFB1cmVBcmcpLlB1cmUgIT09IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBBbiBhcmd1bWVudCBmb3IgdGhlIHRyYW5zYWN0aW9uLiBJdCBpcyBhICdtZWFudCcgZW51bSB3aGljaCBleHBlY3RzIHRvIGhhdmVcbiAqIG9uZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcy4gSWYgbm90LCB0aGUgQkNTIGVycm9yIHdpbGwgYmUgdGhyb3duIHdoaWxlXG4gKiBhdHRlbXB0aW5nIHRvIGZvcm0gYSB0cmFuc2FjdGlvbi5cbiAqXG4gKiBFeGFtcGxlOlxuICogYGBganNcbiAqIGxldCBhcmcxOiBDYWxsQXJnID0geyBPYmplY3Q6IHsgU2hhcmVkOiB7XG4gKiAgIG9iamVjdElkOiAnNTQ2MGNmOTJiNWUzZTcwNjdhYWFjZTYwZDg4MzI0MDk1ZmQyMjk0NCcsXG4gKiAgIGluaXRpYWxTaGFyZWRWZXJzaW9uOiAxLFxuICogICBtdXRhYmxlOiB0cnVlLFxuICogfSB9IH07XG4gKiBsZXQgYXJnMjogQ2FsbEFyZyA9IHsgUHVyZTogYmNzLnNlcihCQ1MuU1RSSU5HLCAxMDAwMDApLnRvQnl0ZXMoKSB9O1xuICogbGV0IGFyZzM6IENhbGxBcmcgPSB7IE9iamVjdDogeyBJbW1Pck93bmVkOiB7XG4gKiAgIG9iamVjdElkOiAnNDA0N2QyZTI1MjExZDg3OTIyYjY2NTAyMzNiZDA1MDNhNjczNDI3OScsXG4gKiAgIHZlcnNpb246IDEsXG4gKiAgIGRpZ2VzdDogJ2JDaUFOQ2h0NE85TUVVaHVZamRSQ3FSUFpqcjJySjhNZnFOaXd5aG1SZ0E9J1xuICogfSB9IH07XG4gKiBgYGBcbiAqXG4gKiBGb3IgYFB1cmVgIGFyZ3VtZW50cyBCQ1MgaXMgcmVxdWlyZWQuIFlvdSBtdXN0IGVuY29kZSB0aGUgdmFsdWVzIHdpdGggQkNTIGFjY29yZGluZ1xuICogdG8gdGhlIHR5cGUgcmVxdWlyZWQgYnkgdGhlIGNhbGxlZCBmdW5jdGlvbi4gUHVyZSBhY2NlcHRzIG9ubHkgc2VyaWFsaXplZCB2YWx1ZXNcbiAqL1xuZXhwb3J0IHR5cGUgQ2FsbEFyZyA9IFB1cmVBcmcgfCB7IE9iamVjdDogT2JqZWN0QXJnIH07XG5cbi8qKlxuICogS2luZCBvZiBhIFR5cGVUYWcgd2hpY2ggaXMgcmVwcmVzZW50ZWQgYnkgYSBNb3ZlIHR5cGUgaWRlbnRpZmllci5cbiAqL1xuZXhwb3J0IHR5cGUgU3RydWN0VGFnID0ge1xuICBhZGRyZXNzOiBzdHJpbmc7XG4gIG1vZHVsZTogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHR5cGVQYXJhbXM6IFR5cGVUYWdbXTtcbn07XG5cbi8qKlxuICogU3VpIFR5cGVUYWcgb2JqZWN0LiBBIGRlY291cGxlZCBgMHguLi46Om1vZHVsZTo6VHlwZTw/Pz8+YCBwYXJhbWV0ZXIuXG4gKi9cbmV4cG9ydCB0eXBlIFR5cGVUYWcgPVxuICB8IHsgYm9vbDogbnVsbCB9XG4gIHwgeyB1ODogbnVsbCB9XG4gIHwgeyB1NjQ6IG51bGwgfVxuICB8IHsgdTEyODogbnVsbCB9XG4gIHwgeyBhZGRyZXNzOiBudWxsIH1cbiAgfCB7IHNpZ25lcjogbnVsbCB9XG4gIHwgeyB2ZWN0b3I6IFR5cGVUYWcgfVxuICB8IHsgc3RydWN0OiBTdHJ1Y3RUYWcgfVxuICB8IHsgdTE2OiBudWxsIH1cbiAgfCB7IHUzMjogbnVsbCB9XG4gIHwgeyB1MjU2OiBudWxsIH07XG5cbi8vID09PT09PT09PT0gVHJhbnNhY3Rpb25EYXRhID09PT09PT09PT09XG5cbi8qKlxuICogVGhlIEdhc0RhdGEgdG8gYmUgdXNlZCBpbiB0aGUgdHJhbnNhY3Rpb24uXG4gKi9cbmV4cG9ydCB0eXBlIEdhc0RhdGEgPSB7XG4gIHBheW1lbnQ6IFN1aU9iamVjdFJlZltdO1xuICBvd25lcjogc3RyaW5nOyAvLyBHYXMgT2JqZWN0J3Mgb3duZXJcbiAgcHJpY2U6IG51bWJlcjtcbiAgYnVkZ2V0OiBudW1iZXI7XG59O1xuXG4vKipcbiAqIFRyYW5zYWN0aW9uRXhwaXJhdGlvblxuICpcbiAqIEluZGljYXRpb25zIHRoZSBleHBpcmF0aW9uIHRpbWUgZm9yIGEgdHJhbnNhY3Rpb24uXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uRXhwaXJhdGlvbiA9IHsgTm9uZTogbnVsbCB9IHwgeyBFcG9jaDogbnVtYmVyIH07XG5cbi8vIE1vdmUgbmFtZSBvZiB0aGUgVmVjdG9yIHR5cGUuXG5jb25zdCBWRUNUT1IgPSAndmVjdG9yJztcblxuLy8gSW1wb3J0ZWQgdG8gZXhwbGljaXRseSB0ZWxsIHR5cGVzY3JpcHQgdGhhdCB0eXBlcyBtYXRjaFxudHlwZSBUeXBlU2NoZW1hID0ge1xuICBzdHJ1Y3RzPzogeyBba2V5OiBzdHJpbmddOiBTdHJ1Y3RUeXBlRGVmaW5pdGlvbiB9O1xuICBlbnVtcz86IHsgW2tleTogc3RyaW5nXTogRW51bVR5cGVEZWZpbml0aW9uIH07XG4gIGFsaWFzZXM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xufTtcblxuY29uc3QgVHJhbnNhY3Rpb25EYXRhVjEgPSB7XG4gIGtpbmQ6ICdUcmFuc2FjdGlvbktpbmQnLFxuICBzZW5kZXI6IEJDUy5BRERSRVNTLFxuICBnYXNEYXRhOiAnR2FzRGF0YScsXG4gIGV4cGlyYXRpb246ICdUcmFuc2FjdGlvbkV4cGlyYXRpb24nLFxufTtcblxuY29uc3QgQkNTX1NQRUM6IFR5cGVTY2hlbWEgPSB7XG4gIGVudW1zOiB7XG4gICAgJ09wdGlvbjxUPic6IHtcbiAgICAgIE5vbmU6IG51bGwsXG4gICAgICBTb21lOiAnVCcsXG4gICAgfSxcbiAgICBPYmplY3RBcmc6IHtcbiAgICAgIEltbU9yT3duZWQ6ICdTdWlPYmplY3RSZWYnLFxuICAgICAgU2hhcmVkOiAnU2hhcmVkT2JqZWN0UmVmJyxcbiAgICB9LFxuICAgIENhbGxBcmc6IHtcbiAgICAgIFB1cmU6IFtWRUNUT1IsIEJDUy5VOF0sXG4gICAgICBPYmplY3Q6ICdPYmplY3RBcmcnLFxuICAgICAgT2JqVmVjOiBbVkVDVE9SLCAnT2JqZWN0QXJnJ10sXG4gICAgfSxcbiAgICBUeXBlVGFnOiB7XG4gICAgICBib29sOiBudWxsLFxuICAgICAgdTg6IG51bGwsXG4gICAgICB1NjQ6IG51bGwsXG4gICAgICB1MTI4OiBudWxsLFxuICAgICAgYWRkcmVzczogbnVsbCxcbiAgICAgIHNpZ25lcjogbnVsbCxcbiAgICAgIHZlY3RvcjogJ1R5cGVUYWcnLFxuICAgICAgc3RydWN0OiAnU3RydWN0VGFnJyxcbiAgICAgIHUxNjogbnVsbCxcbiAgICAgIHUzMjogbnVsbCxcbiAgICAgIHUyNTY6IG51bGwsXG4gICAgfSxcbiAgICBUcmFuc2FjdGlvbktpbmQ6IHtcbiAgICAgIC8vIGNhbiBub3QgYmUgY2FsbGVkIGZyb20gc3VpLmpzOyBkdW1teSBwbGFjZW1lbnRcbiAgICAgIC8vIHRvIHNldCB0aGUgZW51bSBjb3VudGVyIHJpZ2h0IGZvciBQcm9ncmFtbWFibGVUcmFuc2FjdFxuICAgICAgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb246ICdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbicsXG4gICAgICBDaGFuZ2VFcG9jaDogbnVsbCxcbiAgICAgIEdlbmVzaXM6IG51bGwsXG4gICAgICBDb25zZW5zdXNDb21taXRQcm9sb2d1ZTogbnVsbCxcbiAgICB9LFxuICAgIFRyYW5zYWN0aW9uRXhwaXJhdGlvbjoge1xuICAgICAgTm9uZTogbnVsbCxcbiAgICAgIEVwb2NoOiBCQ1MuVTY0LFxuICAgIH0sXG4gICAgVHJhbnNhY3Rpb25EYXRhOiB7XG4gICAgICBWMTogJ1RyYW5zYWN0aW9uRGF0YVYxJyxcbiAgICB9LFxuICB9LFxuICBzdHJ1Y3RzOiB7XG4gICAgU3VpT2JqZWN0UmVmOiB7XG4gICAgICBvYmplY3RJZDogQkNTLkFERFJFU1MsXG4gICAgICB2ZXJzaW9uOiBCQ1MuVTY0LFxuICAgICAgZGlnZXN0OiAnT2JqZWN0RGlnZXN0JyxcbiAgICB9LFxuICAgIFNoYXJlZE9iamVjdFJlZjoge1xuICAgICAgb2JqZWN0SWQ6IEJDUy5BRERSRVNTLFxuICAgICAgaW5pdGlhbFNoYXJlZFZlcnNpb246IEJDUy5VNjQsXG4gICAgICBtdXRhYmxlOiBCQ1MuQk9PTCxcbiAgICB9LFxuICAgIFN0cnVjdFRhZzoge1xuICAgICAgYWRkcmVzczogQkNTLkFERFJFU1MsXG4gICAgICBtb2R1bGU6IEJDUy5TVFJJTkcsXG4gICAgICBuYW1lOiBCQ1MuU1RSSU5HLFxuICAgICAgdHlwZVBhcmFtczogW1ZFQ1RPUiwgJ1R5cGVUYWcnXSxcbiAgICB9LFxuICAgIEdhc0RhdGE6IHtcbiAgICAgIHBheW1lbnQ6IFtWRUNUT1IsICdTdWlPYmplY3RSZWYnXSxcbiAgICAgIG93bmVyOiBCQ1MuQUREUkVTUyxcbiAgICAgIHByaWNlOiBCQ1MuVTY0LFxuICAgICAgYnVkZ2V0OiBCQ1MuVTY0LFxuICAgIH0sXG4gICAgLy8gU2lnbmVkIHRyYW5zYWN0aW9uIGRhdGEgbmVlZGVkIHRvIGdlbmVyYXRlIHRyYW5zYWN0aW9uIGRpZ2VzdC5cbiAgICBTZW5kZXJTaWduZWREYXRhOiB7XG4gICAgICBkYXRhOiAnVHJhbnNhY3Rpb25EYXRhJyxcbiAgICAgIHR4U2lnbmF0dXJlczogW1ZFQ1RPUiwgW1ZFQ1RPUiwgQkNTLlU4XV0sXG4gICAgfSxcbiAgICBUcmFuc2FjdGlvbkRhdGFWMSxcbiAgfSxcbiAgYWxpYXNlczoge1xuICAgIE9iamVjdERpZ2VzdDogQkNTLkJBU0U1OCxcbiAgfSxcbn07XG5cbmNvbnN0IGJjcyA9IG5ldyBCQ1MoeyAuLi5nZXRTdWlNb3ZlQ29uZmlnKCksIHR5cGVzOiBCQ1NfU1BFQyB9KTtcbnJlZ2lzdGVyVVRGOFN0cmluZyhiY3MpO1xuXG5leHBvcnQgeyBiY3MgfTtcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VpLWJjcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL3R5cGVzL3N1aS1iY3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUNBQThGO0FBRzlGLFNBQVMsa0JBQWtCLENBQUMsR0FBUTtJQUNsQyxHQUFHLENBQUMsWUFBWSxDQUNkLFlBQVksRUFDWixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUNkLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN4RCxPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUMsRUFDRCxDQUFDLE1BQU0sRUFBRSxFQUFFO1FBQ1QsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDekQsT0FBTyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUMsQ0FDRixDQUFDO0FBQ0osQ0FBQztBQTBCRCxTQUFnQixTQUFTLENBQUMsR0FBUTtJQUNoQyxPQUFRLEdBQWUsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDO0FBQzdDLENBQUM7QUFGRCw4QkFFQztBQXdFRCxnQ0FBZ0M7QUFDaEMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDO0FBU3hCLE1BQU0saUJBQWlCLEdBQUc7SUFDeEIsSUFBSSxFQUFFLGlCQUFpQjtJQUN2QixNQUFNLEVBQUUsU0FBRyxDQUFDLE9BQU87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ZywgU3RydWN0VHlwZURlZmluaXRpb24gfSBmcm9tICdAbXlzdGVuL2Jjcyc7XG5pbXBvcnQgeyBTdWlPYmplY3RSZWYgfSBmcm9tICcuL29iamVjdHMnO1xuXG5mdW5jdGlvbiByZWdpc3RlclVURjhTdHJpbmcoYmNzOiBCQ1MpIHtcbiAgYmNzLnJlZ2lzdGVyVHlwZShcbiAgICAndXRmOHN0cmluZycsXG4gICAgKHdyaXRlciwgc3RyKSA9PiB7XG4gICAgICBjb25zdCBieXRlcyA9IEFycmF5LmZyb20obmV3IFRleHRFbmNvZGVyKCkuZW5jb2RlKHN0cikpO1xuICAgICAgcmV0dXJuIHdyaXRlci53cml0ZVZlYyhieXRlcywgKHdyaXRlciwgZWwpID0+IHdyaXRlci53cml0ZTgoZWwpKTtcbiAgICB9LFxuICAgIChyZWFkZXIpID0+IHtcbiAgICAgIGNvbnN0IGJ5dGVzID0gcmVhZGVyLnJlYWRWZWMoKHJlYWRlcikgPT4gcmVhZGVyLnJlYWQ4KCkpO1xuICAgICAgcmV0dXJuIG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShuZXcgVWludDhBcnJheShieXRlcykpO1xuICAgIH1cbiAgKTtcbn1cblxuLyoqXG4gKiBBIHJlZmVyZW5jZSB0byBhIHNoYXJlZCBvYmplY3QuXG4gKi9cbmV4cG9ydCB0eXBlIFNoYXJlZE9iamVjdFJlZiA9IHtcbiAgLyoqIEhleCBjb2RlIGFzIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIG9iamVjdCBpZCAqL1xuICBvYmplY3RJZDogc3RyaW5nO1xuXG4gIC8qKiBUaGUgdmVyc2lvbiB0aGUgb2JqZWN0IHdhcyBzaGFyZWQgYXQgKi9cbiAgaW5pdGlhbFNoYXJlZFZlcnNpb246IG51bWJlciB8IHN0cmluZztcblxuICAvKiogV2hldGhlciByZWZlcmVuY2UgaXMgbXV0YWJsZSAqL1xuICBtdXRhYmxlOiBib29sZWFuO1xufTtcblxuLyoqXG4gKiBBbiBvYmplY3QgYXJndW1lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIE9iamVjdEFyZyA9IHsgSW1tT3JPd25lZDogU3VpT2JqZWN0UmVmIH0gfCB7IFNoYXJlZDogU2hhcmVkT2JqZWN0UmVmIH07XG5cbi8qKlxuICogQSBwdXJlIGFyZ3VtZW50LlxuICovXG5leHBvcnQgdHlwZSBQdXJlQXJnID0geyBQdXJlOiBBcnJheUxpa2U8bnVtYmVyPiB9O1xuXG5leHBvcnQgZnVuY3Rpb24gaXNQdXJlQXJnKGFyZzogYW55KTogYXJnIGlzIFB1cmVBcmcge1xuICByZXR1cm4gKGFyZyBhcyBQdXJlQXJnKS5QdXJlICE9PSB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQW4gYXJndW1lbnQgZm9yIHRoZSB0cmFuc2FjdGlvbi4gSXQgaXMgYSAnbWVhbnQnIGVudW0gd2hpY2ggZXhwZWN0cyB0byBoYXZlXG4gKiBvbmUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMuIElmIG5vdCwgdGhlIEJDUyBlcnJvciB3aWxsIGJlIHRocm93biB3aGlsZVxuICogYXR0ZW1wdGluZyB0byBmb3JtIGEgdHJhbnNhY3Rpb24uXG4gKlxuICogRXhhbXBsZTpcbiAqIGBgYGpzXG4gKiBsZXQgYXJnMTogQ2FsbEFyZyA9IHsgT2JqZWN0OiB7IFNoYXJlZDoge1xuICogICBvYmplY3RJZDogJzU0NjBjZjkyYjVlM2U3MDY3YWFhY2U2MGQ4ODMyNDA5NWZkMjI5NDQnLFxuICogICBpbml0aWFsU2hhcmVkVmVyc2lvbjogMSxcbiAqICAgbXV0YWJsZTogdHJ1ZSxcbiAqIH0gfSB9O1xuICogbGV0IGFyZzI6IENhbGxBcmcgPSB7IFB1cmU6IGJjcy5zZXIoQkNTLlNUUklORywgMTAwMDAwKS50b0J5dGVzKCkgfTtcbiAqIGxldCBhcmczOiBDYWxsQXJnID0geyBPYmplY3Q6IHsgSW1tT3JPd25lZDoge1xuICogICBvYmplY3RJZDogJzQwNDdkMmUyNTIxMWQ4NzkyMmI2NjUwMjMzYmQwNTAzYTY3MzQyNzknLFxuICogICB2ZXJzaW9uOiAxLFxuICogICBkaWdlc3Q6ICdiQ2lBTkNodDRPOU1FVWh1WWpkUkNxUlBaanIycko4TWZxTml3eWhtUmdBPSdcbiAqIH0gfSB9O1xuICogYGBgXG4gKlxuICogRm9yIGBQdXJlYCBhcmd1bWVudHMgQkNTIGlzIHJlcXVpcmVkLiBZb3UgbXVzdCBlbmNvZGUgdGhlIHZhbHVlcyB3aXRoIEJDUyBhY2NvcmRpbmdcbiAqIHRvIHRoZSB0eXBlIHJlcXVpcmVkIGJ5IHRoZSBjYWxsZWQgZnVuY3Rpb24uIFB1cmUgYWNjZXB0cyBvbmx5IHNlcmlhbGl6ZWQgdmFsdWVzXG4gKi9cbmV4cG9ydCB0eXBlIENhbGxBcmcgPSBQdXJlQXJnIHwgeyBPYmplY3Q6IE9iamVjdEFyZyB9O1xuXG4vKipcbiAqIEtpbmQgb2YgYSBUeXBlVGFnIHdoaWNoIGlzIHJlcHJlc2VudGVkIGJ5IGEgTW92ZSB0eXBlIGlkZW50aWZpZXIuXG4gKi9cbmV4cG9ydCB0eXBlIFN0cnVjdFRhZyA9IHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICBtb2R1bGU6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICB0eXBlUGFyYW1zOiBUeXBlVGFnW107XG59O1xuXG4vKipcbiAqIFN1aSBUeXBlVGFnIG9iamVjdC4gQSBkZWNvdXBsZWQgYDB4Li4uOjptb2R1bGU6OlR5cGU8Pz8/PmAgcGFyYW1ldGVyLlxuICovXG5leHBvcnQgdHlwZSBUeXBlVGFnID1cbiAgfCB7IGJvb2w6IG51bGwgfVxuICB8IHsgdTg6IG51bGwgfVxuICB8IHsgdTY0OiBudWxsIH1cbiAgfCB7IHUxMjg6IG51bGwgfVxuICB8IHsgYWRkcmVzczogbnVsbCB9XG4gIHwgeyBzaWduZXI6IG51bGwgfVxuICB8IHsgdmVjdG9yOiBUeXBlVGFnIH1cbiAgfCB7IHN0cnVjdDogU3RydWN0VGFnIH1cbiAgfCB7IHUxNjogbnVsbCB9XG4gIHwgeyB1MzI6IG51bGwgfVxuICB8IHsgdTI1NjogbnVsbCB9O1xuXG4vLyA9PT09PT09PT09IFRyYW5zYWN0aW9uRGF0YSA9PT09PT09PT09PVxuXG4vKipcbiAqIFRoZSBHYXNEYXRhIHRvIGJlIHVzZWQgaW4gdGhlIHRyYW5zYWN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBHYXNEYXRhID0ge1xuICBwYXltZW50OiBTdWlPYmplY3RSZWZbXTtcbiAgb3duZXI6IHN0cmluZzsgLy8gR2FzIE9iamVjdCdzIG93bmVyXG4gIHByaWNlOiBudW1iZXI7XG4gIGJ1ZGdldDogbnVtYmVyO1xufTtcblxuLyoqXG4gKiBUcmFuc2FjdGlvbkV4cGlyYXRpb25cbiAqXG4gKiBJbmRpY2F0aW9ucyB0aGUgZXhwaXJhdGlvbiB0aW1lIGZvciBhIHRyYW5zYWN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbkV4cGlyYXRpb24gPSB7IE5vbmU6IG51bGwgfSB8IHsgRXBvY2g6IG51bWJlciB9O1xuXG4vLyBNb3ZlIG5hbWUgb2YgdGhlIFZlY3RvciB0eXBlLlxuY29uc3QgVkVDVE9SID0gJ3ZlY3Rvcic7XG5cbi8vIEltcG9ydGVkIHRvIGV4cGxpY2l0bHkgdGVsbCB0eXBlc2NyaXB0IHRoYXQgdHlwZXMgbWF0Y2hcbnR5cGUgVHlwZVNjaGVtYSA9IHtcbiAgc3RydWN0cz86IHsgW2tleTogc3RyaW5nXTogU3RydWN0VHlwZURlZmluaXRpb24gfTtcbiAgZW51bXM/OiB7IFtrZXk6IHN0cmluZ106IEVudW1UeXBlRGVmaW5pdGlvbiB9O1xuICBhbGlhc2VzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn07XG5cbmNvbnN0IFRyYW5zYWN0aW9uRGF0YVYxID0ge1xuICBraW5kOiAnVHJhbnNhY3Rpb25LaW5kJyxcbiAgc2VuZGVyOiBCQ1MuQUREUkVTUyxcbiAgZ2FzRGF0YTogJ0dhc0RhdGEnLFxuICBleHBpcmF0aW9uOiAnVHJhbnNhY3Rpb25FeHBpcmF0aW9uJyxcbn07XG5cbmNvbnN0IEJDU19TUEVDOiBUeXBlU2NoZW1hID0ge1xuICBlbnVtczoge1xuICAgICdPcHRpb248VD4nOiB7XG4gICAgICBOb25lOiBudWxsLFxuICAgICAgU29tZTogJ1QnLFxuICAgIH0sXG4gICAgT2JqZWN0QXJnOiB7XG4gICAgICBJbW1Pck93bmVkOiAnU3VpT2JqZWN0UmVmJyxcbiAgICAgIFNoYXJlZDogJ1NoYXJlZE9iamVjdFJlZicsXG4gICAgfSxcbiAgICBDYWxsQXJnOiB7XG4gICAgICBQdXJlOiBbVkVDVE9SLCBCQ1MuVThdLFxuICAgICAgT2JqZWN0OiAnT2JqZWN0QXJnJyxcbiAgICAgIE9ialZlYzogW1ZFQ1RPUiwgJ09iamVjdEFyZyddLFxuICAgIH0sXG4gICAgVHlwZVRhZzoge1xuICAgICAgYm9vbDogbnVsbCxcbiAgICAgIHU4OiBudWxsLFxuICAgICAgdTY0OiBudWxsLFxuICAgICAgdTEyODogbnVsbCxcbiAgICAgIGFkZHJlc3M6IG51bGwsXG4gICAgICBzaWduZXI6IG51bGwsXG4gICAgICB2ZWN0b3I6ICdUeXBlVGFnJyxcbiAgICAgIHN0cnVjdDogJ1N0cnVjdFRhZycsXG4gICAgICB1MTY6IG51bGwsXG4gICAgICB1MzI6IG51bGwsXG4gICAgICB1MjU2OiBudWxsLFxuICAgIH0sXG4gICAgVHJhbnNhY3Rpb25LaW5kOiB7XG4gICAgICAvLyBjYW4gbm90IGJlIGNhbGxlZCBmcm9tIHN1aS5qczsgZHVtbXkgcGxhY2VtZW50XG4gICAgICAvLyB0byBzZXQgdGhlIGVudW0gY291bnRlciByaWdodCBmb3IgUHJvZ3JhbW1hYmxlVHJhbnNhY3RcbiAgICAgIFByb2dyYW1tYWJsZVRyYW5zYWN0aW9uOiAnUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24nLFxuICAgICAgQ2hhbmdlRXBvY2g6IG51bGwsXG4gICAgICBHZW5lc2lzOiBudWxsLFxuICAgICAgQ29uc2Vuc3VzQ29tbWl0UHJvbG9ndWU6IG51bGwsXG4gICAgfSxcbiAgICBUcmFuc2FjdGlvbkV4cGlyYXRpb246IHtcbiAgICAgIE5vbmU6IG51bGwsXG4gICAgICBFcG9jaDogQkNTLlU2NCxcbiAgICB9LFxuICAgIFRyYW5zYWN0aW9uRGF0YToge1xuICAgICAgVjE6ICdUcmFuc2FjdGlvbkRhdGFWMScsXG4gICAgfSxcbiAgfSxcbiAgc3RydWN0czoge1xuICAgIFN1aU9iamVjdFJlZjoge1xuICAgICAgb2JqZWN0SWQ6IEJDUy5BRERSRVNTLFxuICAgICAgdmVyc2lvbjogQkNTLlU2NCxcbiAgICAgIGRpZ2VzdDogJ09iamVjdERpZ2VzdCcsXG4gICAgfSxcbiAgICBTaGFyZWRPYmplY3RSZWY6IHtcbiAgICAgIG9iamVjdElkOiBCQ1MuQUREUkVTUyxcbiAgICAgIGluaXRpYWxTaGFyZWRWZXJzaW9uOiBCQ1MuVTY0LFxuICAgICAgbXV0YWJsZTogQkNTLkJPT0wsXG4gICAgfSxcbiAgICBTdHJ1Y3RUYWc6IHtcbiAgICAgIGFkZHJlc3M6IEJDUy5BRERSRVNTLFxuICAgICAgbW9kdWxlOiBCQ1MuU1RSSU5HLFxuICAgICAgbmFtZTogQkNTLlNUUklORyxcbiAgICAgIHR5cGVQYXJhbXM6IFtWRUNUT1IsICdUeXBlVGFnJ10sXG4gICAgfSxcbiAgICBHYXNEYXRhOiB7XG4gICAgICBwYXltZW50OiBbVkVDVE9SLCAnU3VpT2JqZWN0UmVmJ10sXG4gICAgICBvd25lcjogQkNTLkFERFJFU1MsXG4gICAgICBwcmljZTogQkNTLlU2NCxcbiAgICAgIGJ1ZGdldDogQkNTLlU2NCxcbiAgICB9LFxuICAgIC8vIFNpZ25lZCB0cmFuc2FjdGlvbiBkYXRhIG5lZWRlZCB0byBnZW5lcmF0ZSB0cmFuc2FjdGlvbiBkaWdlc3QuXG4gICAgU2VuZGVyU2lnbmVkRGF0YToge1xuICAgICAgZGF0YTogJ1RyYW5zYWN0aW9uRGF0YScsXG4gICAgICB0eFNpZ25hdHVyZXM6IFtWRUNUT1IsIFtWRUNUT1IsIEJDUy5VOF1dLFxuICAgIH0sXG4gICAgVHJhbnNhY3Rpb25EYXRhVjEsXG4gIH0sXG4gIGFsaWFzZXM6IHtcbiAgICBPYmplY3REaWdlc3Q6IEJDUy5CQVNFNTgsXG4gIH0sXG59O1xuXG5jb25zdCBiY3MgPSBuZXcgQkNTKHsgLi4uZ2V0U3VpTW92ZUNvbmZpZygpLCB0eXBlczogQkNTX1NQRUMgfSk7XG5yZWdpc3RlclVURjhTdHJpbmcoYmNzKTtcblxuZXhwb3J0IHsgYmNzIH07XG4iXX0= |
@@ -11,3 +11,2 @@ import { Infer } from 'superstruct'; | ||
export declare const StakeObject: import("superstruct").Struct<{ | ||
status: "Active" | "Pending" | "Unstaked"; | ||
stakedSuiId: string; | ||
@@ -17,2 +16,3 @@ stakeRequestEpoch: string; | ||
principal: number; | ||
status: "Active" | "Pending" | "Unstaked"; | ||
estimatedReward?: number | undefined; | ||
@@ -31,3 +31,2 @@ }, { | ||
stakes: { | ||
status: "Active" | "Pending" | "Unstaked"; | ||
stakedSuiId: string; | ||
@@ -37,2 +36,3 @@ stakeRequestEpoch: string; | ||
principal: number; | ||
status: "Active" | "Pending" | "Unstaked"; | ||
estimatedReward?: number | undefined; | ||
@@ -44,3 +44,2 @@ }[]; | ||
stakes: import("superstruct").Struct<{ | ||
status: "Active" | "Pending" | "Unstaked"; | ||
stakedSuiId: string; | ||
@@ -50,5 +49,5 @@ stakeRequestEpoch: string; | ||
principal: number; | ||
status: "Active" | "Pending" | "Unstaked"; | ||
estimatedReward?: number | undefined; | ||
}[], import("superstruct").Struct<{ | ||
status: "Active" | "Pending" | "Unstaked"; | ||
stakedSuiId: string; | ||
@@ -58,2 +57,3 @@ stakeRequestEpoch: string; | ||
principal: number; | ||
status: "Active" | "Pending" | "Unstaked"; | ||
estimatedReward?: number | undefined; | ||
@@ -60,0 +60,0 @@ }, { |
@@ -5,2 +5,3 @@ /// <reference types="node" /> | ||
import { BaseCoin as CoinConfig } from '@bitgo/statics'; | ||
import { Buffer } from 'buffer'; | ||
import { Transaction } from './transaction'; | ||
@@ -7,0 +8,0 @@ export declare class StakingTransaction extends Transaction<StakingProgrammableTransaction> { |
@@ -6,2 +6,3 @@ /// <reference types="node" /> | ||
import { GasData } from './mystenlab/types'; | ||
import { Buffer } from 'buffer'; | ||
import { KeyPair } from './keyPair'; | ||
@@ -8,0 +9,0 @@ export declare abstract class Transaction<T> extends BaseTransaction { |
@@ -5,2 +5,3 @@ /// <reference types="node" /> | ||
import { BaseCoin as CoinConfig } from '@bitgo/statics'; | ||
import { Buffer } from 'buffer'; | ||
import { Transaction } from './transaction'; | ||
@@ -7,0 +8,0 @@ import { SuiObjectRef } from './mystenlab/types'; |
@@ -5,2 +5,3 @@ /// <reference types="node" /> | ||
import { BaseCoin as CoinConfig } from '@bitgo/statics'; | ||
import { Buffer } from 'buffer'; | ||
import { Transaction } from './transaction'; | ||
@@ -7,0 +8,0 @@ import { SuiObjectRef } from './mystenlab/types'; |
@@ -234,9 +234,10 @@ "use strict"; | ||
return sui_bcs_1.isPureArg(input) | ||
? builder_1.builder.de(bcs_1.BCS.U64, buffer_1.Buffer.from(input.Pure).toString('base64'), 'base64') | ||
? builder_1.builder.de(bcs_1.BCS.U64, buffer_1.Buffer.from(new Uint16Array(input.Pure)).toString('base64'), 'base64') | ||
: input.value; | ||
} | ||
getAddress(input) { | ||
var _a; | ||
if (input.hasOwnProperty('value')) { | ||
return sui_bcs_1.isPureArg(input.value) | ||
? types_1.normalizeSuiAddress(builder_1.builder.de(bcs_1.BCS.ADDRESS, buffer_1.Buffer.from(input === null || input === void 0 ? void 0 : input.value.Pure).toString('base64'), 'base64')) | ||
? types_1.normalizeSuiAddress(builder_1.builder.de(bcs_1.BCS.ADDRESS, buffer_1.Buffer.from(new Uint16Array((_a = input.value) === null || _a === void 0 ? void 0 : _a.Pure)).toString('base64'), 'base64')) | ||
: input.value; | ||
@@ -246,3 +247,3 @@ } | ||
return sui_bcs_1.isPureArg(input) | ||
? types_1.normalizeSuiAddress(builder_1.builder.de(bcs_1.BCS.ADDRESS, buffer_1.Buffer.from(input.Pure).toString('base64'), 'base64')) | ||
? types_1.normalizeSuiAddress(builder_1.builder.de(bcs_1.BCS.ADDRESS, buffer_1.Buffer.from(new Uint16Array(input.Pure)).toString('base64'), 'base64')) | ||
: input.value; | ||
@@ -301,2 +302,2 @@ } | ||
})(IntentScope = exports.IntentScope || (exports.IntentScope = {})); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDhDQVF5QjtBQUN6QixnRUFBcUM7QUFDckMsMkNBQWlEO0FBQ2pELHVEQUFzRDtBQUN0RCxxQ0FBMkM7QUFDM0MsbUNBT2lCO0FBQ2pCLG1DQUFnQztBQUNoQyw2Q0FNMkI7QUFDM0IsaURBTzZCO0FBQzdCLHVDQUFxRDtBQUNyRCw2REFBcUM7QUFFckMsU0FBZ0IsZUFBZSxDQUFDLEdBQTRCO0lBQzFELE9BQU8sWUFBWSxJQUFJLEdBQUcsQ0FBQztBQUM3QixDQUFDO0FBRkQsMENBRUM7QUFFRCxNQUFhLEtBQUs7SUFDaEIsa0JBQWtCO0lBQ2xCLGNBQWMsQ0FBQyxJQUFZO1FBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGlCQUFpQixDQUFDLEdBQVc7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsZ0JBQWdCLENBQUMsR0FBVztRQUMxQixPQUFPLGtDQUF1QixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsZ0JBQWdCLENBQUMsU0FBaUI7UUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsb0JBQW9CLENBQUMsSUFBWTtRQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gscUJBQXFCLENBQUMsY0FBc0I7UUFDMUMsSUFBSTtZQUNGLE1BQU0sSUFBSSxHQUFHLGFBQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNyQyxNQUFNLFlB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LDZDQUFNLENBQUE7QUFDUixDQUFDLEVBRlcsYUFBYSxHQUFiLHFCQUFhLEtBQWIscUJBQWEsUUFFeEI7QUFFRCxJQUFZLFdBS1g7QUFMRCxXQUFZLFdBQVc7SUFDckIsbUVBQW1CLENBQUE7SUFDbkIseUVBQXNCLENBQUE7SUFDdEIsdUVBQXFCLENBQUE7SUFDckIsbUVBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUxXLFdBQVcsR0FBWCxtQkFBVyxLQUFYLG1CQUFXLFFBS3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZVV0aWxzLFxuICBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsXG4gIFBhcnNlVHJhbnNhY3Rpb25FcnJvcixcbiAgaXNWYWxpZEVkMjU1MTlQdWJsaWNLZXksXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgUmVjaXBpZW50LFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbn0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IFNVSV9BRERSRVNTX0xFTkdUSCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IGlzUHVyZUFyZyB9IGZyb20gJy4vbXlzdGVubGFiL3R5cGVzL3N1aS1iY3MnO1xuaW1wb3J0IHsgQkNTLCBmcm9tQjY0IH0gZnJvbSAnQG15c3Rlbi9iY3MnO1xuaW1wb3J0IHtcbiAgTWV0aG9kTmFtZXMsXG4gIFN1aVRyYW5zYWN0aW9uLFxuICBTdWlUcmFuc2FjdGlvblR5cGUsXG4gIFRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24sXG4gIFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbiAgUmVxdWVzdEFkZFN0YWtlLFxufSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IEJ1ZmZlciB9IGZyb20gJ2J1ZmZlcic7XG5pbXBvcnQge1xuICBpc1ZhbGlkU3VpQWRkcmVzcyxcbiAgbm9ybWFsaXplU3VpQWRkcmVzcyxcbiAgbm9ybWFsaXplU3VpT2JqZWN0SWQsXG4gIFN1aUpzb25WYWx1ZSxcbiAgU3VpT2JqZWN0UmVmLFxufSBmcm9tICcuL215c3RlbmxhYi90eXBlcyc7XG5pbXBvcnQge1xuICBidWlsZGVyLFxuICBNb3ZlQ2FsbFRyYW5zYWN0aW9uLFxuICBPYmplY3RDYWxsQXJnLFxuICBTcGxpdENvaW5zVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCxcbiAgVHJhbnNhY3Rpb25UeXBlIGFzIFRyYW5zYWN0aW9uQ29tbWFuZFR5cGUsXG59IGZyb20gJy4vbXlzdGVubGFiL2J1aWxkZXInO1xuaW1wb3J0IHsgU0lHTkFUVVJFX1NDSEVNRV9UT19GTEFHIH0gZnJvbSAnLi9rZXlQYWlyJztcbmltcG9ydCBibGFrZTJiIGZyb20gJ0BiaXRnby9ibGFrZTJiJztcblxuZXhwb3J0IGZ1bmN0aW9uIGlzSW1tT3JPd25lZE9iaihvYmo6IE9iamVjdENhbGxBcmdbJ09iamVjdCddKTogb2JqIGlzIHsgSW1tT3JPd25lZDogU3VpT2JqZWN0UmVmIH0ge1xuICByZXR1cm4gJ0ltbU9yT3duZWQnIGluIG9iajtcbn1cblxuZXhwb3J0IGNsYXNzIFV0aWxzIGltcGxlbWVudHMgQmFzZVV0aWxzIHtcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRCbG9ja0lkKGhhc2g6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkUHJpdmF0ZUtleShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkUHVibGljS2V5KGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzVmFsaWRFZDI1NTE5UHVibGljS2V5KGtleSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFNpZ25hdHVyZShzaWduYXR1cmU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkVHJhbnNhY3Rpb25JZCh0eElkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHJhdyB0cmFuc2FjdGlvbiBjYW4gYmUgZGVzZXJpYWxpemVkXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSByYXdUcmFuc2FjdGlvbiAtIHRyYW5zYWN0aW9uIGluIGJhc2U2NCBzdHJpbmcgZm9ybWF0XG4gICAqIEByZXR1cm5zIHtib29sZWFufSAtIHRoZSB2YWxpZGF0aW9uIHJlc3VsdFxuICAgKi9cbiAgaXNWYWxpZFJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZGF0YSA9IGZyb21CNjQocmF3VHJhbnNhY3Rpb24pO1xuICAgICAgY29uc3QgZGVzZXJpYWxpemVkID0gYnVpbGRlci5kZSgnVHJhbnNhY3Rpb25EYXRhJywgZGF0YSk7XG4gICAgICBidWlsZGVyLnNlcignVHJhbnNhY3Rpb25EYXRhJywgZGVzZXJpYWxpemVkLCB7IG1heFNpemU6IDEwMjQgKiA2NCB9KTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIHJhdyB0cmFuc2FjdGlvbiBoYXMgYSB2YWxpZCBmb3JtYXQgaW4gdGhlIGJsb2NrY2hhaW4gY29udGV4dCwgdGhyb3cgb3RoZXJ3aXNlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcmF3VHJhbnNhY3Rpb24gLSBUcmFuc2FjdGlvbiBpbiBiYXNlNjQgc3RyaW5nICBmb3JtYXRcbiAgICovXG4gIHZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghcmF3VHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBQYXJzZVRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgcmF3IHRyYW5zYWN0aW9uOiBVbmRlZmluZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmlzVmFsaWRSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbikpIHtcbiAgICAgIHRocm93IG5ldyBQYXJzZVRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgcmF3IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyBhZGRyZXNzZXMgdG8gY2hlY2sgaWYgYWxsIGV4aXN0IGFuZCBhcmUgdmFsaWQgU3VpIHB1YmxpYyBrZXlzXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhZGRyZXNzZXMgVGhlIGFkZHJlc3MgdG8gYmUgdmFsaWRhdGVkXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBmaWVsZE5hbWUgTmFtZSBvZiB0aGUgZmllbGQgdG8gdmFsaWRhdGUsIGl0cyBuZWVkZWQgdG8gcmV0dXJuIHdoaWNoIGZpZWxkIGlzIGZhaWxpbmcgb24gY2FzZSBvZiBlcnJvci5cbiAgICovXG4gIHZhbGlkYXRlQWRkcmVzc2VzKGFkZHJlc3Nlczogc3RyaW5nW10sIGZpZWxkTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBhZGRyZXNzIG9mIGFkZHJlc3Nlcykge1xuICAgICAgdGhpcy52YWxpZGF0ZUFkZHJlc3MoYWRkcmVzcywgZmllbGROYW1lKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIGFkZHJlc3MgdG8gY2hlY2sgaWYgaXQgZXhpc3RzIGFuZCBpcyBhIHZhbGlkIFN1aSBwdWJsaWMga2V5XG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhZGRyZXNzIFRoZSBhZGRyZXNzIHRvIGJlIHZhbGlkYXRlZFxuICAgKiBAcGFyYW0ge3N0cmluZ30gZmllbGROYW1lIE5hbWUgb2YgdGhlIGZpZWxkIHRvIHZhbGlkYXRlLCBpdHMgbmVlZGVkIHRvIHJldHVybiB3aGljaCBmaWVsZCBpcyBmYWlsaW5nIG9uIGNhc2Ugb2YgZXJyb3IuXG4gICAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogc3RyaW5nLCBmaWVsZE5hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghYWRkcmVzcyB8fCAhaXNWYWxpZFN1aUFkZHJlc3Mobm9ybWFsaXplU3VpQWRkcmVzcyhhZGRyZXNzKSkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgb3IgbWlzc2luZyAke2ZpZWxkTmFtZX0sIGdvdDogJHthZGRyZXNzfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0hleChhZGRyZXNzKSAmJiB0aGlzLmdldEhleEJ5dGVMZW5ndGgoYWRkcmVzcykgPT09IFNVSV9BRERSRVNTX0xFTkdUSDtcbiAgfVxuXG4gIGlzSGV4KHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gL14oMHh8MFgpP1thLWZBLUYwLTldKyQvLnRlc3QodmFsdWUpICYmIHZhbHVlLmxlbmd0aCAlIDIgPT09IDA7XG4gIH1cblxuICBnZXRIZXhCeXRlTGVuZ3RoKHZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIC8vIHJldHVybiAvXigweHwwWCkvLnRlc3QodmFsdWUpID8gKHZhbHVlLmxlbmd0aCAtIDIpIC8gMiA6IHZhbHVlLmxlbmd0aCAvIDI7XG4gICAgcmV0dXJuIC9eKDB4fDBYKS8udGVzdCh2YWx1ZSkgPyAodmFsdWUubGVuZ3RoIC0gMikgLyAyIDogdmFsdWUubGVuZ3RoIC8gMjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHdoZXRoZXIgb3Igbm90IHRoZSBzdHJpbmcgaXMgYSB2YWxpZCBhbW91bnRcbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJbXX0gYW1vdW50cyAtIHRoZSBhbW91bnRzIHRvIHZhbGlkYXRlXG4gICAqIEByZXR1cm5zIHtib29sZWFufSAtIHRoZSB2YWxpZGF0aW9uIHJlc3VsdFxuICAgKi9cbiAgaXNWYWxpZEFtb3VudHMoYW1vdW50czogbnVtYmVyW10pOiBib29sZWFuIHtcbiAgICBmb3IgKGNvbnN0IGFtb3VudCBvZiBhbW91bnRzKSB7XG4gICAgICBpZiAoIXRoaXMuaXNWYWxpZEFtb3VudChhbW91bnQpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB3aGV0aGVyIG9yIG5vdCB0aGUgc3RyaW5nIGlzIGEgdmFsaWQgYW1vdW50XG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBhbW91bnRzIC0gdGhlIGFtb3VudCB0byB2YWxpZGF0ZVxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSB0aGUgdmFsaWRhdGlvbiByZXN1bHRcbiAgICovXG4gIGlzVmFsaWRBbW91bnQoYW1vdW50OiBzdHJpbmcgfCBudW1iZXIpOiBib29sZWFuIHtcbiAgICBjb25zdCBiaWdOdW1iZXJBbW91bnQgPSBuZXcgQmlnTnVtYmVyKE51bWJlcihhbW91bnQpKTtcbiAgICBpZiAoIWJpZ051bWJlckFtb3VudC5pc0ludGVnZXIoKSB8fCBiaWdOdW1iZXJBbW91bnQuaXNMZXNzVGhhbk9yRXF1YWxUbygwKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBOb3JtYWxpemVzIGhleCBpZHMgKGFkZHJlc3Nlcywgb2JqZWN0IGlkcykgdG8gYWx3YXlzIGNvbnRhaW4gdGhlICcweCcgcHJlZml4LlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gaWRcbiAgICogQHJldHVybiB7c3RyaW5nfVxuICAgKiovXG4gIG5vcm1hbGl6ZUhleElkKGlkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBpZC5zdGFydHNXaXRoKCcweCcpID8gaWQgOiAnMHgnLmNvbmNhdChpZCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIHR5cGUgYnkgZnVuY3Rpb24gbmFtZVxuICAgKlxuICAgKiBAcGFyYW0ge01ldGhvZE5hbWVzfSBmY3ROYW1lXG4gICAqIEByZXR1cm4ge1RyYW5zYWN0aW9uVHlwZX1cbiAgICovXG4gIGdldFRyYW5zYWN0aW9uVHlwZShzdWlUcmFuc2FjdGlvblR5cGU6IFN1aVRyYW5zYWN0aW9uVHlwZSk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgc3dpdGNoIChzdWlUcmFuc2FjdGlvblR5cGUpIHtcbiAgICAgIGNhc2UgU3VpVHJhbnNhY3Rpb25UeXBlLlRyYW5zZmVyOlxuICAgICAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlNlbmQ7XG4gICAgICBjYXNlIFN1aVRyYW5zYWN0aW9uVHlwZS5BZGRTdGFrZTpcbiAgICAgICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQWRkO1xuICAgICAgY2FzZSBTdWlUcmFuc2FjdGlvblR5cGUuV2l0aGRyYXdTdGFrZTpcbiAgICAgICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nV2l0aGRyYXc7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBTVUkgdHJhbnNhY3Rpb24gdHlwZVxuICAgKlxuICAgKiBAcGFyYW0ge01ldGhvZE5hbWVzfSBmY3ROYW1lXG4gICAqIEByZXR1cm4ge1RyYW5zYWN0aW9uVHlwZX1cbiAgICovXG4gIGdldFN1aVRyYW5zYWN0aW9uVHlwZShjb21tYW5kOiBUcmFuc2FjdGlvbkNvbW1hbmRUeXBlKTogU3VpVHJhbnNhY3Rpb25UeXBlIHtcbiAgICBzd2l0Y2ggKGNvbW1hbmQua2luZCkge1xuICAgICAgY2FzZSAnVHJhbnNmZXJPYmplY3RzJzpcbiAgICAgICAgcmV0dXJuIFN1aVRyYW5zYWN0aW9uVHlwZS5UcmFuc2ZlcjtcbiAgICAgIGNhc2UgJ01vdmVDYWxsJzpcbiAgICAgICAgaWYgKGNvbW1hbmQudGFyZ2V0LmVuZHNXaXRoKE1ldGhvZE5hbWVzLlJlcXVlc3RBZGRTdGFrZSkpIHtcbiAgICAgICAgICByZXR1cm4gU3VpVHJhbnNhY3Rpb25UeXBlLkFkZFN0YWtlO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbW1hbmQudGFyZ2V0LmVuZHNXaXRoKE1ldGhvZE5hbWVzLlJlcXVlc3RXaXRoZHJhd1N0YWtlKSkge1xuICAgICAgICAgIHJldHVybiBTdWlUcmFuc2FjdGlvblR5cGUuV2l0aGRyYXdTdGFrZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYHVuc3VwcG9ydGVkIHRhcmdldCBtZXRob2RgKTtcbiAgICAgICAgfVxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGB1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiBraW5kYCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0UmVjaXBpZW50cyh0eDogU3VpVHJhbnNhY3Rpb248VHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiB8IFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4pOiBSZWNpcGllbnRbXSB7XG4gICAgY29uc3QgYW1vdW50czogbnVtYmVyW10gPSBbXTtcbiAgICBjb25zdCBhZGRyZXNzZXM6IHN0cmluZ1tdID0gW107XG4gICAgdHgudHgudHJhbnNhY3Rpb25zLmZvckVhY2goKHRyYW5zYWN0aW9uLCBpKSA9PiB7XG4gICAgICBpZiAodHJhbnNhY3Rpb24ua2luZCA9PT0gJ1NwbGl0Q29pbnMnKSB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdHJhbnNhY3Rpb24uYW1vdW50c1swXS5pbmRleDtcbiAgICAgICAgY29uc3QgaW5wdXQgPSB0eC50eC5pbnB1dHNbaW5kZXhdIGFzIGFueTtcbiAgICAgICAgYW1vdW50cy5wdXNoKHRoaXMuZ2V0QW1vdW50KGlucHV0KSk7XG4gICAgICB9XG4gICAgICBpZiAodHJhbnNhY3Rpb24ua2luZCA9PT0gJ1RyYW5zZmVyT2JqZWN0cycpIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0cmFuc2FjdGlvbi5hZGRyZXNzLmluZGV4O1xuICAgICAgICBjb25zdCBpbnB1dCA9IHR4LnR4LmlucHV0c1tpbmRleF0gYXMgYW55O1xuICAgICAgICBhZGRyZXNzZXMucHVzaCh0aGlzLmdldEFkZHJlc3MoaW5wdXQpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gYWRkcmVzc2VzLm1hcCgoYWRkcmVzcywgaW5kZXgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFkZHJlc3M6IGFkZHJlc3MsXG4gICAgICAgIGFtb3VudDogTnVtYmVyKGFtb3VudHNbaW5kZXhdKS50b1N0cmluZygpLFxuICAgICAgfSBhcyBSZWNpcGllbnQ7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFkZCBzdGFraW5nIHJlcXVlc3RzXG4gICAqXG4gICAqIEBwYXJhbSB7U3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9ufSB0eDogc3Rha2luZyB0cmFuc2FjdGlvbiBvYmplY3RcbiAgICogQHJldHVybiB7UmVxdWVzdEFkZFN0YWtlW119ICBhZGQgc3Rha2luZyByZXF1ZXN0c1xuICAgKi9cbiAgZ2V0U3Rha2VSZXF1ZXN0cyh0eDogU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uKTogUmVxdWVzdEFkZFN0YWtlW10ge1xuICAgIGNvbnN0IGFtb3VudHM6IG51bWJlcltdID0gW107XG4gICAgY29uc3QgYWRkcmVzc2VzOiBzdHJpbmdbXSA9IFtdO1xuICAgIHR4LnRyYW5zYWN0aW9ucy5mb3JFYWNoKCh0cmFuc2FjdGlvbiwgaSkgPT4ge1xuICAgICAgaWYgKHRyYW5zYWN0aW9uLmtpbmQgPT09ICdTcGxpdENvaW5zJykge1xuICAgICAgICBjb25zdCBhbW91bnRJbnB1dElkeCA9ICgodHJhbnNhY3Rpb24gYXMgU3BsaXRDb2luc1RyYW5zYWN0aW9uKS5hbW91bnRzWzBdIGFzIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCkuaW5kZXg7XG4gICAgICAgIGFtb3VudHMucHVzaCh1dGlscy5nZXRBbW91bnQodHguaW5wdXRzW2Ftb3VudElucHV0SWR4XSBhcyBUcmFuc2FjdGlvbkJsb2NrSW5wdXQpKTtcbiAgICAgIH1cbiAgICAgIGlmICh0cmFuc2FjdGlvbi5raW5kID09PSAnTW92ZUNhbGwnKSB7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRvckFkZHJlc3NJbnB1dElkeCA9ICgodHJhbnNhY3Rpb24gYXMgTW92ZUNhbGxUcmFuc2FjdGlvbikuYXJndW1lbnRzWzJdIGFzIFRyYW5zYWN0aW9uQmxvY2tJbnB1dClcbiAgICAgICAgICAuaW5kZXg7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRvckFkZHJlc3MgPSB1dGlscy5nZXRBZGRyZXNzKHR4LmlucHV0c1t2YWxpZGF0b3JBZGRyZXNzSW5wdXRJZHhdIGFzIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCk7XG4gICAgICAgIGFkZHJlc3Nlcy5wdXNoKHZhbGlkYXRvckFkZHJlc3MpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBhZGRyZXNzZXMubWFwKChhZGRyZXNzLCBpbmRleCkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdmFsaWRhdG9yQWRkcmVzczogYWRkcmVzcyxcbiAgICAgICAgYW1vdW50OiBhbW91bnRzW2luZGV4XSxcbiAgICAgIH0gYXMgUmVxdWVzdEFkZFN0YWtlO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0QW1vdW50KGlucHV0OiBTdWlKc29uVmFsdWUgfCBUcmFuc2FjdGlvbkJsb2NrSW5wdXQpOiBudW1iZXIge1xuICAgIHJldHVybiBpc1B1cmVBcmcoaW5wdXQpXG4gICAgICA/IGJ1aWxkZXIuZGUoQkNTLlU2NCwgQnVmZmVyLmZyb20oaW5wdXQuUHVyZSkudG9TdHJpbmcoJ2Jhc2U2NCcpLCAnYmFzZTY0JylcbiAgICAgIDogKGlucHV0IGFzIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCkudmFsdWU7XG4gIH1cblxuICBnZXRBZGRyZXNzKGlucHV0OiBUcmFuc2FjdGlvbkJsb2NrSW5wdXQpOiBzdHJpbmcge1xuICAgIGlmIChpbnB1dC5oYXNPd25Qcm9wZXJ0eSgndmFsdWUnKSkge1xuICAgICAgcmV0dXJuIGlzUHVyZUFyZyhpbnB1dC52YWx1ZSlcbiAgICAgICAgPyBub3JtYWxpemVTdWlBZGRyZXNzKGJ1aWxkZXIuZGUoQkNTLkFERFJFU1MsIEJ1ZmZlci5mcm9tKGlucHV0Py52YWx1ZS5QdXJlKS50b1N0cmluZygnYmFzZTY0JyksICdiYXNlNjQnKSlcbiAgICAgICAgOiAoaW5wdXQgYXMgVHJhbnNhY3Rpb25CbG9ja0lucHV0KS52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGlzUHVyZUFyZyhpbnB1dClcbiAgICAgICAgPyBub3JtYWxpemVTdWlBZGRyZXNzKGJ1aWxkZXIuZGUoQkNTLkFERFJFU1MsIEJ1ZmZlci5mcm9tKGlucHV0LlB1cmUpLnRvU3RyaW5nKCdiYXNlNjQnKSwgJ2Jhc2U2NCcpKVxuICAgICAgICA6IChpbnB1dCBhcyBUcmFuc2FjdGlvbkJsb2NrSW5wdXQpLnZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIG5vcm1hbGl6ZUNvaW5zKGNvaW5zOiBhbnlbXSk6IFN1aU9iamVjdFJlZltdIHtcbiAgICByZXR1cm4gY29pbnMubWFwKChjb2luKSA9PiB7XG4gICAgICByZXR1cm4gdXRpbHMubm9ybWFsaXplU3VpT2JqZWN0UmVmKGNvaW4pO1xuICAgIH0pO1xuICB9XG5cbiAgbm9ybWFsaXplU3VpT2JqZWN0UmVmKG9iajogU3VpT2JqZWN0UmVmKTogU3VpT2JqZWN0UmVmIHtcbiAgICByZXR1cm4ge1xuICAgICAgb2JqZWN0SWQ6IG5vcm1hbGl6ZVN1aU9iamVjdElkKG9iai5vYmplY3RJZCksXG4gICAgICB2ZXJzaW9uOiBOdW1iZXIob2JqLnZlcnNpb24pLFxuICAgICAgZGlnZXN0OiBvYmouZGlnZXN0LFxuICAgIH07XG4gIH1cblxuICB0cmFuc2FjdGlvbklucHV0KHR5cGU6ICdvYmplY3QnIHwgJ3B1cmUnLCBpbmRleCA9IDAsIHZhbHVlPzogdW5rbm93bik6IFRyYW5zYWN0aW9uQmxvY2tJbnB1dCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGtpbmQ6ICdJbnB1dCcsXG4gICAgICB2YWx1ZTogdHlwZW9mIHZhbHVlID09PSAnYmlnaW50JyA/IFN0cmluZyh2YWx1ZSkgOiB2YWx1ZSxcbiAgICAgIGluZGV4LFxuICAgICAgdHlwZSxcbiAgICB9O1xuICB9XG5cbiAgZ2V0QWRkcmVzc0Zyb21QdWJsaWNLZXkocHVibGljS2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IFBVQkxJQ19LRVlfU0laRSA9IDMyO1xuICAgIGNvbnN0IHRtcCA9IG5ldyBVaW50OEFycmF5KFBVQkxJQ19LRVlfU0laRSArIDEpO1xuICAgIGNvbnN0IHB1YkJ1ZiA9IEJ1ZmZlci5mcm9tKHB1YmxpY0tleSwgJ2hleCcpO1xuICAgIHRtcC5zZXQoW1NJR05BVFVSRV9TQ0hFTUVfVE9fRkxBR1snRUQyNTUxOSddXSk7IC8vIEVEMjU1MTk6IDB4MDAsXG4gICAgdG1wLnNldChwdWJCdWYsIDEpO1xuICAgIHJldHVybiBub3JtYWxpemVTdWlBZGRyZXNzKFxuICAgICAgYmxha2UyYihQVUJMSUNfS0VZX1NJWkUpXG4gICAgICAgIC51cGRhdGUodG1wKVxuICAgICAgICAuZGlnZXN0KCdoZXgnKVxuICAgICAgICAuc2xpY2UoMCwgU1VJX0FERFJFU1NfTEVOR1RIICogMilcbiAgICApO1xuICB9XG59XG5cbmNvbnN0IHV0aWxzID0gbmV3IFV0aWxzKCk7XG5leHBvcnQgZGVmYXVsdCB1dGlscztcblxuZXhwb3J0IGVudW0gQXBwSWQge1xuICBTdWkgPSAwLFxufVxuXG5leHBvcnQgZW51bSBJbnRlbnRWZXJzaW9uIHtcbiAgVjAgPSAwLFxufVxuXG5leHBvcnQgZW51bSBJbnRlbnRTY29wZSB7XG4gIFRyYW5zYWN0aW9uRGF0YSA9IDAsXG4gIFRyYW5zYWN0aW9uRWZmZWN0cyA9IDEsXG4gIENoZWNrcG9pbnRTdW1tYXJ5ID0gMixcbiAgUGVyc29uYWxNZXNzYWdlID0gMyxcbn1cblxuZXhwb3J0IHR5cGUgSW50ZW50ID0gW0ludGVudFNjb3BlLCBJbnRlbnRWZXJzaW9uLCBBcHBJZF07XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDhDQVF5QjtBQUN6QixnRUFBcUM7QUFDckMsMkNBQWlEO0FBQ2pELHVEQUFzRDtBQUN0RCxxQ0FBMkM7QUFDM0MsbUNBT2lCO0FBQ2pCLG1DQUFnQztBQUNoQyw2Q0FNMkI7QUFDM0IsaURBTzZCO0FBQzdCLHVDQUFxRDtBQUNyRCw2REFBcUM7QUFFckMsU0FBZ0IsZUFBZSxDQUFDLEdBQTRCO0lBQzFELE9BQU8sWUFBWSxJQUFJLEdBQUcsQ0FBQztBQUM3QixDQUFDO0FBRkQsMENBRUM7QUFFRCxNQUFhLEtBQUs7SUFDaEIsa0JBQWtCO0lBQ2xCLGNBQWMsQ0FBQyxJQUFZO1FBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGlCQUFpQixDQUFDLEdBQVc7UUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsZ0JBQWdCLENBQUMsR0FBVztRQUMxQixPQUFPLGtDQUF1QixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsZ0JBQWdCLENBQUMsU0FBaUI7UUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsb0JBQW9CLENBQUMsSUFBWTtRQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gscUJBQXFCLENBQUMsY0FBc0I7UUFDMUMsSUFBSTtZQUNGLE1BQU0sSUFBSSxHQUFHLGFBQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNyQyxNQUFNLFlB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TCxhQUFLLFFBRWhCO0FBRUQsSUFBWSxhQUVYO0FBRkQsV0FBWSxhQUFhO0lBQ3ZCLDZDQUFNLENBQUE7QUFDUixDQUFDLEVBRlcsYUFBYSxHQUFiLHFCQUFhLEtBQWIscUJBQWEsUUFFeEI7QUFFRCxJQUFZLFdBS1g7QUFMRCxXQUFZLFdBQVc7SUFDckIsbUVBQW1CLENBQUE7SUFDbkIseUVBQXNCLENBQUE7SUFDdEIsdUVBQXFCLENBQUE7SUFDckIsbUVBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUxXLFdBQVcsR0FBWCxtQkFBVyxLQUFYLG1CQUFXLFFBS3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZVV0aWxzLFxuICBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsXG4gIFBhcnNlVHJhbnNhY3Rpb25FcnJvcixcbiAgaXNWYWxpZEVkMjU1MTlQdWJsaWNLZXksXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgUmVjaXBpZW50LFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbn0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IFNVSV9BRERSRVNTX0xFTkdUSCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IGlzUHVyZUFyZyB9IGZyb20gJy4vbXlzdGVubGFiL3R5cGVzL3N1aS1iY3MnO1xuaW1wb3J0IHsgQkNTLCBmcm9tQjY0IH0gZnJvbSAnQG15c3Rlbi9iY3MnO1xuaW1wb3J0IHtcbiAgTWV0aG9kTmFtZXMsXG4gIFN1aVRyYW5zYWN0aW9uLFxuICBTdWlUcmFuc2FjdGlvblR5cGUsXG4gIFRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24sXG4gIFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbiAgUmVxdWVzdEFkZFN0YWtlLFxufSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IEJ1ZmZlciB9IGZyb20gJ2J1ZmZlcic7XG5pbXBvcnQge1xuICBpc1ZhbGlkU3VpQWRkcmVzcyxcbiAgbm9ybWFsaXplU3VpQWRkcmVzcyxcbiAgbm9ybWFsaXplU3VpT2JqZWN0SWQsXG4gIFN1aUpzb25WYWx1ZSxcbiAgU3VpT2JqZWN0UmVmLFxufSBmcm9tICcuL215c3RlbmxhYi90eXBlcyc7XG5pbXBvcnQge1xuICBidWlsZGVyLFxuICBNb3ZlQ2FsbFRyYW5zYWN0aW9uLFxuICBPYmplY3RDYWxsQXJnLFxuICBTcGxpdENvaW5zVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCxcbiAgVHJhbnNhY3Rpb25UeXBlIGFzIFRyYW5zYWN0aW9uQ29tbWFuZFR5cGUsXG59IGZyb20gJy4vbXlzdGVubGFiL2J1aWxkZXInO1xuaW1wb3J0IHsgU0lHTkFUVVJFX1NDSEVNRV9UT19GTEFHIH0gZnJvbSAnLi9rZXlQYWlyJztcbmltcG9ydCBibGFrZTJiIGZyb20gJ0BiaXRnby9ibGFrZTJiJztcblxuZXhwb3J0IGZ1bmN0aW9uIGlzSW1tT3JPd25lZE9iaihvYmo6IE9iamVjdENhbGxBcmdbJ09iamVjdCddKTogb2JqIGlzIHsgSW1tT3JPd25lZDogU3VpT2JqZWN0UmVmIH0ge1xuICByZXR1cm4gJ0ltbU9yT3duZWQnIGluIG9iajtcbn1cblxuZXhwb3J0IGNsYXNzIFV0aWxzIGltcGxlbWVudHMgQmFzZVV0aWxzIHtcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGlzVmFsaWRCbG9ja0lkKGhhc2g6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkUHJpdmF0ZUtleShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkUHVibGljS2V5KGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzVmFsaWRFZDI1NTE5UHVibGljS2V5KGtleSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgaXNWYWxpZFNpZ25hdHVyZShzaWduYXR1cmU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkVHJhbnNhY3Rpb25JZCh0eElkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHJhdyB0cmFuc2FjdGlvbiBjYW4gYmUgZGVzZXJpYWxpemVkXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSByYXdUcmFuc2FjdGlvbiAtIHRyYW5zYWN0aW9uIGluIGJhc2U2NCBzdHJpbmcgZm9ybWF0XG4gICAqIEByZXR1cm5zIHtib29sZWFufSAtIHRoZSB2YWxpZGF0aW9uIHJlc3VsdFxuICAgKi9cbiAgaXNWYWxpZFJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZGF0YSA9IGZyb21CNjQocmF3VHJhbnNhY3Rpb24pO1xuICAgICAgY29uc3QgZGVzZXJpYWxpemVkID0gYnVpbGRlci5kZSgnVHJhbnNhY3Rpb25EYXRhJywgZGF0YSk7XG4gICAgICBidWlsZGVyLnNlcignVHJhbnNhY3Rpb25EYXRhJywgZGVzZXJpYWxpemVkLCB7IG1heFNpemU6IDEwMjQgKiA2NCB9KTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIHJhdyB0cmFuc2FjdGlvbiBoYXMgYSB2YWxpZCBmb3JtYXQgaW4gdGhlIGJsb2NrY2hhaW4gY29udGV4dCwgdGhyb3cgb3RoZXJ3aXNlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcmF3VHJhbnNhY3Rpb24gLSBUcmFuc2FjdGlvbiBpbiBiYXNlNjQgc3RyaW5nICBmb3JtYXRcbiAgICovXG4gIHZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghcmF3VHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBQYXJzZVRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgcmF3IHRyYW5zYWN0aW9uOiBVbmRlZmluZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmlzVmFsaWRSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbikpIHtcbiAgICAgIHRocm93IG5ldyBQYXJzZVRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgcmF3IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyBhZGRyZXNzZXMgdG8gY2hlY2sgaWYgYWxsIGV4aXN0IGFuZCBhcmUgdmFsaWQgU3VpIHB1YmxpYyBrZXlzXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhZGRyZXNzZXMgVGhlIGFkZHJlc3MgdG8gYmUgdmFsaWRhdGVkXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBmaWVsZE5hbWUgTmFtZSBvZiB0aGUgZmllbGQgdG8gdmFsaWRhdGUsIGl0cyBuZWVkZWQgdG8gcmV0dXJuIHdoaWNoIGZpZWxkIGlzIGZhaWxpbmcgb24gY2FzZSBvZiBlcnJvci5cbiAgICovXG4gIHZhbGlkYXRlQWRkcmVzc2VzKGFkZHJlc3Nlczogc3RyaW5nW10sIGZpZWxkTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBhZGRyZXNzIG9mIGFkZHJlc3Nlcykge1xuICAgICAgdGhpcy52YWxpZGF0ZUFkZHJlc3MoYWRkcmVzcywgZmllbGROYW1lKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIGFkZHJlc3MgdG8gY2hlY2sgaWYgaXQgZXhpc3RzIGFuZCBpcyBhIHZhbGlkIFN1aSBwdWJsaWMga2V5XG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhZGRyZXNzIFRoZSBhZGRyZXNzIHRvIGJlIHZhbGlkYXRlZFxuICAgKiBAcGFyYW0ge3N0cmluZ30gZmllbGROYW1lIE5hbWUgb2YgdGhlIGZpZWxkIHRvIHZhbGlkYXRlLCBpdHMgbmVlZGVkIHRvIHJldHVybiB3aGljaCBmaWVsZCBpcyBmYWlsaW5nIG9uIGNhc2Ugb2YgZXJyb3IuXG4gICAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogc3RyaW5nLCBmaWVsZE5hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghYWRkcmVzcyB8fCAhaXNWYWxpZFN1aUFkZHJlc3Mobm9ybWFsaXplU3VpQWRkcmVzcyhhZGRyZXNzKSkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgb3IgbWlzc2luZyAke2ZpZWxkTmFtZX0sIGdvdDogJHthZGRyZXNzfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpc1ZhbGlkQWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0hleChhZGRyZXNzKSAmJiB0aGlzLmdldEhleEJ5dGVMZW5ndGgoYWRkcmVzcykgPT09IFNVSV9BRERSRVNTX0xFTkdUSDtcbiAgfVxuXG4gIGlzSGV4KHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gL14oMHh8MFgpP1thLWZBLUYwLTldKyQvLnRlc3QodmFsdWUpICYmIHZhbHVlLmxlbmd0aCAlIDIgPT09IDA7XG4gIH1cblxuICBnZXRIZXhCeXRlTGVuZ3RoKHZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIC8vIHJldHVybiAvXigweHwwWCkvLnRlc3QodmFsdWUpID8gKHZhbHVlLmxlbmd0aCAtIDIpIC8gMiA6IHZhbHVlLmxlbmd0aCAvIDI7XG4gICAgcmV0dXJuIC9eKDB4fDBYKS8udGVzdCh2YWx1ZSkgPyAodmFsdWUubGVuZ3RoIC0gMikgLyAyIDogdmFsdWUubGVuZ3RoIC8gMjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHdoZXRoZXIgb3Igbm90IHRoZSBzdHJpbmcgaXMgYSB2YWxpZCBhbW91bnRcbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJbXX0gYW1vdW50cyAtIHRoZSBhbW91bnRzIHRvIHZhbGlkYXRlXG4gICAqIEByZXR1cm5zIHtib29sZWFufSAtIHRoZSB2YWxpZGF0aW9uIHJlc3VsdFxuICAgKi9cbiAgaXNWYWxpZEFtb3VudHMoYW1vdW50czogbnVtYmVyW10pOiBib29sZWFuIHtcbiAgICBmb3IgKGNvbnN0IGFtb3VudCBvZiBhbW91bnRzKSB7XG4gICAgICBpZiAoIXRoaXMuaXNWYWxpZEFtb3VudChhbW91bnQpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB3aGV0aGVyIG9yIG5vdCB0aGUgc3RyaW5nIGlzIGEgdmFsaWQgYW1vdW50XG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBhbW91bnRzIC0gdGhlIGFtb3VudCB0byB2YWxpZGF0ZVxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSB0aGUgdmFsaWRhdGlvbiByZXN1bHRcbiAgICovXG4gIGlzVmFsaWRBbW91bnQoYW1vdW50OiBzdHJpbmcgfCBudW1iZXIpOiBib29sZWFuIHtcbiAgICBjb25zdCBiaWdOdW1iZXJBbW91bnQgPSBuZXcgQmlnTnVtYmVyKE51bWJlcihhbW91bnQpKTtcbiAgICBpZiAoIWJpZ051bWJlckFtb3VudC5pc0ludGVnZXIoKSB8fCBiaWdOdW1iZXJBbW91bnQuaXNMZXNzVGhhbk9yRXF1YWxUbygwKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBOb3JtYWxpemVzIGhleCBpZHMgKGFkZHJlc3Nlcywgb2JqZWN0IGlkcykgdG8gYWx3YXlzIGNvbnRhaW4gdGhlICcweCcgcHJlZml4LlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gaWRcbiAgICogQHJldHVybiB7c3RyaW5nfVxuICAgKiovXG4gIG5vcm1hbGl6ZUhleElkKGlkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBpZC5zdGFydHNXaXRoKCcweCcpID8gaWQgOiAnMHgnLmNvbmNhdChpZCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIHR5cGUgYnkgZnVuY3Rpb24gbmFtZVxuICAgKlxuICAgKiBAcGFyYW0ge01ldGhvZE5hbWVzfSBmY3ROYW1lXG4gICAqIEByZXR1cm4ge1RyYW5zYWN0aW9uVHlwZX1cbiAgICovXG4gIGdldFRyYW5zYWN0aW9uVHlwZShzdWlUcmFuc2FjdGlvblR5cGU6IFN1aVRyYW5zYWN0aW9uVHlwZSk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgc3dpdGNoIChzdWlUcmFuc2FjdGlvblR5cGUpIHtcbiAgICAgIGNhc2UgU3VpVHJhbnNhY3Rpb25UeXBlLlRyYW5zZmVyOlxuICAgICAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlNlbmQ7XG4gICAgICBjYXNlIFN1aVRyYW5zYWN0aW9uVHlwZS5BZGRTdGFrZTpcbiAgICAgICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQWRkO1xuICAgICAgY2FzZSBTdWlUcmFuc2FjdGlvblR5cGUuV2l0aGRyYXdTdGFrZTpcbiAgICAgICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nV2l0aGRyYXc7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBTVUkgdHJhbnNhY3Rpb24gdHlwZVxuICAgKlxuICAgKiBAcGFyYW0ge01ldGhvZE5hbWVzfSBmY3ROYW1lXG4gICAqIEByZXR1cm4ge1RyYW5zYWN0aW9uVHlwZX1cbiAgICovXG4gIGdldFN1aVRyYW5zYWN0aW9uVHlwZShjb21tYW5kOiBUcmFuc2FjdGlvbkNvbW1hbmRUeXBlKTogU3VpVHJhbnNhY3Rpb25UeXBlIHtcbiAgICBzd2l0Y2ggKGNvbW1hbmQua2luZCkge1xuICAgICAgY2FzZSAnVHJhbnNmZXJPYmplY3RzJzpcbiAgICAgICAgcmV0dXJuIFN1aVRyYW5zYWN0aW9uVHlwZS5UcmFuc2ZlcjtcbiAgICAgIGNhc2UgJ01vdmVDYWxsJzpcbiAgICAgICAgaWYgKGNvbW1hbmQudGFyZ2V0LmVuZHNXaXRoKE1ldGhvZE5hbWVzLlJlcXVlc3RBZGRTdGFrZSkpIHtcbiAgICAgICAgICByZXR1cm4gU3VpVHJhbnNhY3Rpb25UeXBlLkFkZFN0YWtlO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbW1hbmQudGFyZ2V0LmVuZHNXaXRoKE1ldGhvZE5hbWVzLlJlcXVlc3RXaXRoZHJhd1N0YWtlKSkge1xuICAgICAgICAgIHJldHVybiBTdWlUcmFuc2FjdGlvblR5cGUuV2l0aGRyYXdTdGFrZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYHVuc3VwcG9ydGVkIHRhcmdldCBtZXRob2RgKTtcbiAgICAgICAgfVxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGB1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiBraW5kYCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0UmVjaXBpZW50cyh0eDogU3VpVHJhbnNhY3Rpb248VHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiB8IFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4pOiBSZWNpcGllbnRbXSB7XG4gICAgY29uc3QgYW1vdW50czogbnVtYmVyW10gPSBbXTtcbiAgICBjb25zdCBhZGRyZXNzZXM6IHN0cmluZ1tdID0gW107XG4gICAgdHgudHgudHJhbnNhY3Rpb25zLmZvckVhY2goKHRyYW5zYWN0aW9uLCBpKSA9PiB7XG4gICAgICBpZiAodHJhbnNhY3Rpb24ua2luZCA9PT0gJ1NwbGl0Q29pbnMnKSB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdHJhbnNhY3Rpb24uYW1vdW50c1swXS5pbmRleDtcbiAgICAgICAgY29uc3QgaW5wdXQgPSB0eC50eC5pbnB1dHNbaW5kZXhdIGFzIGFueTtcbiAgICAgICAgYW1vdW50cy5wdXNoKHRoaXMuZ2V0QW1vdW50KGlucHV0KSk7XG4gICAgICB9XG4gICAgICBpZiAodHJhbnNhY3Rpb24ua2luZCA9PT0gJ1RyYW5zZmVyT2JqZWN0cycpIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0cmFuc2FjdGlvbi5hZGRyZXNzLmluZGV4O1xuICAgICAgICBjb25zdCBpbnB1dCA9IHR4LnR4LmlucHV0c1tpbmRleF0gYXMgYW55O1xuICAgICAgICBhZGRyZXNzZXMucHVzaCh0aGlzLmdldEFkZHJlc3MoaW5wdXQpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gYWRkcmVzc2VzLm1hcCgoYWRkcmVzcywgaW5kZXgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFkZHJlc3M6IGFkZHJlc3MsXG4gICAgICAgIGFtb3VudDogTnVtYmVyKGFtb3VudHNbaW5kZXhdKS50b1N0cmluZygpLFxuICAgICAgfSBhcyBSZWNpcGllbnQ7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFkZCBzdGFraW5nIHJlcXVlc3RzXG4gICAqXG4gICAqIEBwYXJhbSB7U3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9ufSB0eDogc3Rha2luZyB0cmFuc2FjdGlvbiBvYmplY3RcbiAgICogQHJldHVybiB7UmVxdWVzdEFkZFN0YWtlW119ICBhZGQgc3Rha2luZyByZXF1ZXN0c1xuICAgKi9cbiAgZ2V0U3Rha2VSZXF1ZXN0cyh0eDogU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uKTogUmVxdWVzdEFkZFN0YWtlW10ge1xuICAgIGNvbnN0IGFtb3VudHM6IG51bWJlcltdID0gW107XG4gICAgY29uc3QgYWRkcmVzc2VzOiBzdHJpbmdbXSA9IFtdO1xuICAgIHR4LnRyYW5zYWN0aW9ucy5mb3JFYWNoKCh0cmFuc2FjdGlvbiwgaSkgPT4ge1xuICAgICAgaWYgKHRyYW5zYWN0aW9uLmtpbmQgPT09ICdTcGxpdENvaW5zJykge1xuICAgICAgICBjb25zdCBhbW91bnRJbnB1dElkeCA9ICgodHJhbnNhY3Rpb24gYXMgU3BsaXRDb2luc1RyYW5zYWN0aW9uKS5hbW91bnRzWzBdIGFzIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCkuaW5kZXg7XG4gICAgICAgIGFtb3VudHMucHVzaCh1dGlscy5nZXRBbW91bnQodHguaW5wdXRzW2Ftb3VudElucHV0SWR4XSBhcyBUcmFuc2FjdGlvbkJsb2NrSW5wdXQpKTtcbiAgICAgIH1cbiAgICAgIGlmICh0cmFuc2FjdGlvbi5raW5kID09PSAnTW92ZUNhbGwnKSB7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRvckFkZHJlc3NJbnB1dElkeCA9ICgodHJhbnNhY3Rpb24gYXMgTW92ZUNhbGxUcmFuc2FjdGlvbikuYXJndW1lbnRzWzJdIGFzIFRyYW5zYWN0aW9uQmxvY2tJbnB1dClcbiAgICAgICAgICAuaW5kZXg7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRvckFkZHJlc3MgPSB1dGlscy5nZXRBZGRyZXNzKHR4LmlucHV0c1t2YWxpZGF0b3JBZGRyZXNzSW5wdXRJZHhdIGFzIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCk7XG4gICAgICAgIGFkZHJlc3Nlcy5wdXNoKHZhbGlkYXRvckFkZHJlc3MpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBhZGRyZXNzZXMubWFwKChhZGRyZXNzLCBpbmRleCkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdmFsaWRhdG9yQWRkcmVzczogYWRkcmVzcyxcbiAgICAgICAgYW1vdW50OiBhbW91bnRzW2luZGV4XSxcbiAgICAgIH0gYXMgUmVxdWVzdEFkZFN0YWtlO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0QW1vdW50KGlucHV0OiBTdWlKc29uVmFsdWUgfCBUcmFuc2FjdGlvbkJsb2NrSW5wdXQpOiBudW1iZXIge1xuICAgIHJldHVybiBpc1B1cmVBcmcoaW5wdXQpXG4gICAgICA/IGJ1aWxkZXIuZGUoQkNTLlU2NCwgQnVmZmVyLmZyb20obmV3IFVpbnQxNkFycmF5KGlucHV0LlB1cmUpKS50b1N0cmluZygnYmFzZTY0JyksICdiYXNlNjQnKVxuICAgICAgOiAoaW5wdXQgYXMgVHJhbnNhY3Rpb25CbG9ja0lucHV0KS52YWx1ZTtcbiAgfVxuXG4gIGdldEFkZHJlc3MoaW5wdXQ6IFRyYW5zYWN0aW9uQmxvY2tJbnB1dCk6IHN0cmluZyB7XG4gICAgaWYgKGlucHV0Lmhhc093blByb3BlcnR5KCd2YWx1ZScpKSB7XG4gICAgICByZXR1cm4gaXNQdXJlQXJnKGlucHV0LnZhbHVlKVxuICAgICAgICA/IG5vcm1hbGl6ZVN1aUFkZHJlc3MoXG4gICAgICAgICAgICBidWlsZGVyLmRlKEJDUy5BRERSRVNTLCBCdWZmZXIuZnJvbShuZXcgVWludDE2QXJyYXkoaW5wdXQudmFsdWU/LlB1cmUpKS50b1N0cmluZygnYmFzZTY0JyksICdiYXNlNjQnKVxuICAgICAgICAgIClcbiAgICAgICAgOiAoaW5wdXQgYXMgVHJhbnNhY3Rpb25CbG9ja0lucHV0KS52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGlzUHVyZUFyZyhpbnB1dClcbiAgICAgICAgPyBub3JtYWxpemVTdWlBZGRyZXNzKFxuICAgICAgICAgICAgYnVpbGRlci5kZShCQ1MuQUREUkVTUywgQnVmZmVyLmZyb20obmV3IFVpbnQxNkFycmF5KGlucHV0LlB1cmUpKS50b1N0cmluZygnYmFzZTY0JyksICdiYXNlNjQnKVxuICAgICAgICAgIClcbiAgICAgICAgOiAoaW5wdXQgYXMgVHJhbnNhY3Rpb25CbG9ja0lucHV0KS52YWx1ZTtcbiAgICB9XG4gIH1cblxuICBub3JtYWxpemVDb2lucyhjb2luczogYW55W10pOiBTdWlPYmplY3RSZWZbXSB7XG4gICAgcmV0dXJuIGNvaW5zLm1hcCgoY29pbikgPT4ge1xuICAgICAgcmV0dXJuIHV0aWxzLm5vcm1hbGl6ZVN1aU9iamVjdFJlZihjb2luKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5vcm1hbGl6ZVN1aU9iamVjdFJlZihvYmo6IFN1aU9iamVjdFJlZik6IFN1aU9iamVjdFJlZiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG9iamVjdElkOiBub3JtYWxpemVTdWlPYmplY3RJZChvYmoub2JqZWN0SWQpLFxuICAgICAgdmVyc2lvbjogTnVtYmVyKG9iai52ZXJzaW9uKSxcbiAgICAgIGRpZ2VzdDogb2JqLmRpZ2VzdCxcbiAgICB9O1xuICB9XG5cbiAgdHJhbnNhY3Rpb25JbnB1dCh0eXBlOiAnb2JqZWN0JyB8ICdwdXJlJywgaW5kZXggPSAwLCB2YWx1ZT86IHVua25vd24pOiBUcmFuc2FjdGlvbkJsb2NrSW5wdXQge1xuICAgIHJldHVybiB7XG4gICAgICBraW5kOiAnSW5wdXQnLFxuICAgICAgdmFsdWU6IHR5cGVvZiB2YWx1ZSA9PT0gJ2JpZ2ludCcgPyBTdHJpbmcodmFsdWUpIDogdmFsdWUsXG4gICAgICBpbmRleCxcbiAgICAgIHR5cGUsXG4gICAgfTtcbiAgfVxuXG4gIGdldEFkZHJlc3NGcm9tUHVibGljS2V5KHB1YmxpY0tleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBQVUJMSUNfS0VZX1NJWkUgPSAzMjtcbiAgICBjb25zdCB0bXAgPSBuZXcgVWludDhBcnJheShQVUJMSUNfS0VZX1NJWkUgKyAxKTtcbiAgICBjb25zdCBwdWJCdWYgPSBCdWZmZXIuZnJvbShwdWJsaWNLZXksICdoZXgnKTtcbiAgICB0bXAuc2V0KFtTSUdOQVRVUkVfU0NIRU1FX1RPX0ZMQUdbJ0VEMjU1MTknXV0pOyAvLyBFRDI1NTE5OiAweDAwLFxuICAgIHRtcC5zZXQocHViQnVmLCAxKTtcbiAgICByZXR1cm4gbm9ybWFsaXplU3VpQWRkcmVzcyhcbiAgICAgIGJsYWtlMmIoUFVCTElDX0tFWV9TSVpFKVxuICAgICAgICAudXBkYXRlKHRtcClcbiAgICAgICAgLmRpZ2VzdCgnaGV4JylcbiAgICAgICAgLnNsaWNlKDAsIFNVSV9BRERSRVNTX0xFTkdUSCAqIDIpXG4gICAgKTtcbiAgfVxufVxuXG5jb25zdCB1dGlscyA9IG5ldyBVdGlscygpO1xuZXhwb3J0IGRlZmF1bHQgdXRpbHM7XG5cbmV4cG9ydCBlbnVtIEFwcElkIHtcbiAgU3VpID0gMCxcbn1cblxuZXhwb3J0IGVudW0gSW50ZW50VmVyc2lvbiB7XG4gIFYwID0gMCxcbn1cblxuZXhwb3J0IGVudW0gSW50ZW50U2NvcGUge1xuICBUcmFuc2FjdGlvbkRhdGEgPSAwLFxuICBUcmFuc2FjdGlvbkVmZmVjdHMgPSAxLFxuICBDaGVja3BvaW50U3VtbWFyeSA9IDIsXG4gIFBlcnNvbmFsTWVzc2FnZSA9IDMsXG59XG5cbmV4cG9ydCB0eXBlIEludGVudCA9IFtJbnRlbnRTY29wZSwgSW50ZW50VmVyc2lvbiwgQXBwSWRdO1xuIl19 |
{ | ||
"name": "@bitgo/sdk-coin-sui", | ||
"version": "4.2.5", | ||
"version": "4.2.6", | ||
"description": "BitGo SDK coin library for Sui", | ||
@@ -44,5 +44,5 @@ "main": "./dist/src/index.js", | ||
"@bitgo/blake2b": "^3.2.4", | ||
"@bitgo/sdk-core": "^8.18.0", | ||
"@bitgo/sdk-lib-mpc": "^8.7.0", | ||
"@bitgo/statics": "^21.0.0", | ||
"@bitgo/sdk-core": "^8.19.0", | ||
"@bitgo/sdk-lib-mpc": "^8.8.0", | ||
"@bitgo/statics": "^22.0.0", | ||
"@mysten/bcs": "^0.7.0", | ||
@@ -56,4 +56,4 @@ "bignumber.js": "^9.0.0", | ||
"devDependencies": { | ||
"@bitgo/sdk-api": "^1.16.0", | ||
"@bitgo/sdk-test": "^1.2.35", | ||
"@bitgo/sdk-api": "^1.17.0", | ||
"@bitgo/sdk-test": "^1.2.36", | ||
"@types/lodash": "^4.14.183", | ||
@@ -63,3 +63,3 @@ "axios": "^1.4.0", | ||
}, | ||
"gitHead": "c19939d68a2c94dc05f104fe28560748a4646aa7" | ||
"gitHead": "6415c5926c6805d203b32313f161e2836b37023e" | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
1139761
16907
+ Added@bitgo/statics@22.0.0(transitive)
- Removed@bitgo/statics@21.0.0(transitive)
Updated@bitgo/sdk-core@^8.19.0
Updated@bitgo/sdk-lib-mpc@^8.8.0
Updated@bitgo/statics@^22.0.0