n8n-nodes-memory 0.6.2 → 0.6.3
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.
|
@@ -41,12 +41,11 @@ class ApiChatHistory extends chat_history_1.BaseListChatMessageHistory {
|
|
|
41
41
|
const messages = data?.messages ?? [];
|
|
42
42
|
console.log('[ApiChatHistory] Got messages:', messages.length);
|
|
43
43
|
return messages.map((m) => {
|
|
44
|
-
if (m.type === 'human')
|
|
44
|
+
if (m.type === 'human')
|
|
45
45
|
return new messages_1.HumanMessage(m.content);
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
46
|
+
if (m.type === 'system')
|
|
47
|
+
return new messages_1.SystemMessage(m.content);
|
|
48
|
+
return new messages_1.AIMessage(m.content);
|
|
50
49
|
});
|
|
51
50
|
}
|
|
52
51
|
catch (error) {
|
|
@@ -186,4 +185,4 @@ class MemoryApi {
|
|
|
186
185
|
}
|
|
187
186
|
}
|
|
188
187
|
exports.MemoryApi = MemoryApi;
|
|
189
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5QXBpLm5vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbm9kZXMvTWVtb3J5L01lbW9yeUFwaS5ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLDZDQUFzRDtBQUN0RCwrREFBMEU7QUFDMUUsdURBSWtDO0FBRWxDLE1BQU0sY0FBZSxTQUFRLHlDQUEwQjtJQUdyRCxZQUNVLE1BQWMsRUFDZCxTQUFpQixFQUNqQixNQUFlO1FBRXZCLEtBQUssRUFBRSxDQUFDO1FBSkEsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsV0FBTSxHQUFOLE1BQU0sQ0FBUztRQUx6QixpQkFBWSxHQUFHLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFRekQsQ0FBQztJQUVPLFVBQVU7UUFDaEIsTUFBTSxPQUFPLEdBQTJCO1lBQ3RDLGNBQWMsRUFBRSxrQkFBa0I7U0FDbkMsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLE9BQU8sQ0FBQyxlQUFlLENBQUMsR0FBRyxVQUFVLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNyRCxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFXO1FBQ2YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrREFBa0QsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDO1lBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQ0FBaUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDNUQsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDeEMsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQzFCLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDO29CQUNuQixNQUFNLEVBQUUsS0FBSztvQkFDYixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7aUJBQzFCLENBQUM7YUFDSCxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLCtCQUErQixRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztnQkFDaEUsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDO1lBRUQsTUFBTSxJQUFJLEdBQUcsTUFBTSxRQUFRLENBQUMsSUFBSSxFQUE2RCxDQUFDO1lBQzlGLE1BQU0sUUFBUSxHQUFHLElBQUksRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO1lBQ3RDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0NBQWdDLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRS9ELE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQW9DLEVBQUUsRUFBRTtnQkFDM0QsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO29CQUN2QixPQUFPLElBQUksdUJBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3JDLENBQUM7cUJBQU0sQ0FBQztvQkFDTixPQUFPLElBQUksb0JBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ2xDLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUM1RCxPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFvQjtRQUNuQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlEQUFpRCxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvRSxJQUFJLENBQUM7WUFDSCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUU3RCxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUN2QixNQUFNLEVBQUUsTUFBTTtnQkFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDMUIsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7b0JBQ25CLE1BQU0sRUFBRSxLQUFLO29CQUNiLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztvQkFDekIsT0FBTyxFQUFFO3dCQUNQLElBQUk7d0JBQ0osT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO3FCQUN6QjtpQkFDRixDQUFDO2FBQ0gsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3RCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBdUI7UUFDdkMsS0FBSyxNQUFNLE9BQU8sSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSztRQUNULE9BQU8sQ0FBQyxHQUFHLENBQUMsNENBQTRDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQztZQUNILE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ3ZCLE1BQU0sRUFBRSxNQUFNO2dCQUNkLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUMxQixJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztvQkFDbkIsTUFBTSxFQUFFLE9BQU87b0JBQ2YsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO2lCQUMxQixDQUFDO2FBQ0gsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLCtCQUErQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hELENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFFRCxNQUFhLFNBQVM7SUFBdEI7UUFDRSxnQkFBVyxHQUF5QjtZQUNsQyxXQUFXLEVBQUUsWUFBWTtZQUN6QixJQUFJLEVBQUUsV0FBVztZQUNqQixJQUFJLEVBQUUsVUFBVTtZQUNoQixLQUFLLEVBQUUsQ0FBQyxXQUFXLENBQUM7WUFDcEIsT0FBTyxFQUFFLENBQUM7WUFDVixRQUFRLEVBQUUscUJBQXFCO1lBQy9CLFdBQVcsRUFBRSw0Q0FBNEM7WUFDekQsUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxZQUFZO2FBQ25CO1lBQ0QsS0FBSyxFQUFFO2dCQUNMLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQztnQkFDbEIsYUFBYSxFQUFFO29CQUNiLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQztpQkFDZjtnQkFDRCxTQUFTLEVBQUU7b0JBQ1Qsb0JBQW9CLEVBQUU7d0JBQ3BCOzRCQUNFLEdBQUcsRUFBRSwrQ0FBK0M7eUJBQ3JEO3FCQUNGO2lCQUNGO2FBQ0Y7WUFDRCxNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxDQUFDLFdBQW9CLENBQUM7WUFDL0IsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO1lBQ3ZCLFVBQVUsRUFBRTtnQkFDVjtvQkFDRSxXQUFXLEVBQUUsU0FBUztvQkFDdEIsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsUUFBUSxFQUFFLElBQUk7b0JBQ2QsV0FBVyxFQUFFLCtDQUErQztvQkFDNUQsV0FBVyxFQUFFLHFDQUFxQztpQkFDbkQ7Z0JBQ0Q7b0JBQ0UsV0FBVyxFQUFFLFlBQVk7b0JBQ3pCLElBQUksRUFBRSxXQUFXO29CQUNqQixJQUFJLEVBQUUsUUFBUTtvQkFDZCxPQUFPLEVBQUUsd0JBQXdCO29CQUNqQyxRQUFRLEVBQUUsSUFBSTtvQkFDZCxXQUFXLEVBQUUsZ0RBQWdEO2lCQUM5RDtnQkFDRDtvQkFDRSxXQUFXLEVBQUUsU0FBUztvQkFDdEIsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsV0FBVyxFQUFFO3dCQUNYLFFBQVEsRUFBRSxJQUFJO3FCQUNmO29CQUNELE9BQU8sRUFBRSxFQUFFO29CQUNYLFdBQVcsRUFBRSxxQ0FBcUM7aUJBQ25EO2dCQUNEO29CQUNFLFdBQVcsRUFBRSx1QkFBdUI7b0JBQ3BDLElBQUksRUFBRSxxQkFBcUI7b0JBQzNCLElBQUksRUFBRSxRQUFRO29CQUNkLE9BQU8sRUFBRSxFQUFFO29CQUNYLFdBQVcsRUFBRSxtREFBbUQ7aUJBQ2pFO2FBQ0Y7U0FDRixDQUFDO0lBNEJKLENBQUM7SUExQkMsS0FBSyxDQUFDLFVBQVUsQ0FFZCxTQUFpQjtRQUVqQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBVyxDQUFDO1FBQ3BFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFXLENBQUM7UUFDMUUsTUFBTSxNQUFNLEdBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUFZLElBQUksU0FBUyxDQUFDO1FBQ3ZGLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixFQUFFLFNBQVMsRUFBRSxFQUFFLENBQVcsQ0FBQztRQUVsRyxPQUFPLENBQUMsR0FBRyxDQUFDLDJDQUEyQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRXBFLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFbEUsTUFBTSxNQUFNLEdBQUcsSUFBSSwyQkFBa0IsQ0FBQztZQUNwQyxTQUFTLEVBQUUsY0FBYztZQUN6QixXQUFXO1lBQ1gsY0FBYyxFQUFFLElBQUk7WUFDcEIsUUFBUSxFQUFFLE9BQU87WUFDakIsU0FBUyxFQUFFLFFBQVE7WUFDbkIsQ0FBQyxFQUFFLG1CQUFtQjtTQUN2QixDQUFDLENBQUM7UUFFSCxPQUFPO1lBQ0wsUUFBUSxFQUFFLE1BQU07U0FDakIsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTVGRCw4QkE0RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIElOb2RlVHlwZSxcbiAgSU5vZGVUeXBlRGVzY3JpcHRpb24sXG4gIElTdXBwbHlEYXRhRnVuY3Rpb25zLFxuICBTdXBwbHlEYXRhLFxufSBmcm9tICduOG4td29ya2Zsb3cnO1xuaW1wb3J0IHsgQnVmZmVyV2luZG93TWVtb3J5IH0gZnJvbSAnbGFuZ2NoYWluL21lbW9yeSc7XG5pbXBvcnQgeyBCYXNlTGlzdENoYXRNZXNzYWdlSGlzdG9yeSB9IGZyb20gJ0BsYW5nY2hhaW4vY29yZS9jaGF0X2hpc3RvcnknO1xuaW1wb3J0IHtcbiAgQmFzZU1lc3NhZ2UsXG4gIEh1bWFuTWVzc2FnZSxcbiAgQUlNZXNzYWdlLFxufSBmcm9tICdAbGFuZ2NoYWluL2NvcmUvbWVzc2FnZXMnO1xuXG5jbGFzcyBBcGlDaGF0SGlzdG9yeSBleHRlbmRzIEJhc2VMaXN0Q2hhdE1lc3NhZ2VIaXN0b3J5IHtcbiAgbGNfbmFtZXNwYWNlID0gWydsYW5nY2hhaW4nLCAnc3RvcmVzJywgJ21lc3NhZ2UnLCAnYXBpJ107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhcGlVcmw6IHN0cmluZyxcbiAgICBwcml2YXRlIHNlc3Npb25JZDogc3RyaW5nLFxuICAgIHByaXZhdGUgYXBpS2V5Pzogc3RyaW5nLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRIZWFkZXJzKCk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICAgIGNvbnN0IGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgIH07XG4gICAgaWYgKHRoaXMuYXBpS2V5KSB7XG4gICAgICBoZWFkZXJzWydBdXRob3JpemF0aW9uJ10gPSBgQmVhcmVyICR7dGhpcy5hcGlLZXl9YDtcbiAgICB9XG4gICAgcmV0dXJuIGhlYWRlcnM7XG4gIH1cblxuICBhc3luYyBnZXRNZXNzYWdlcygpOiBQcm9taXNlPEJhc2VNZXNzYWdlW10+IHtcbiAgICBjb25zb2xlLmxvZygnW0FwaUNoYXRIaXN0b3J5XSBnZXRNZXNzYWdlcyBjYWxsZWQgZm9yIHNlc3Npb246JywgdGhpcy5zZXNzaW9uSWQpO1xuICAgIHRyeSB7XG4gICAgICBjb25zb2xlLmxvZygnW0FwaUNoYXRIaXN0b3J5XSBGZXRjaGluZyBmcm9tOicsIHRoaXMuYXBpVXJsKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godGhpcy5hcGlVcmwsIHtcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgIGhlYWRlcnM6IHRoaXMuZ2V0SGVhZGVycygpLFxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgYWN0aW9uOiAnZ2V0JyxcbiAgICAgICAgICBzZXNzaW9uSWQ6IHRoaXMuc2Vzc2lvbklkLFxuICAgICAgICB9KSxcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFtBcGlDaGF0SGlzdG9yeV0gQVBJIGVycm9yOiAke3Jlc3BvbnNlLnN0YXR1c31gKTtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpIGFzIHsgbWVzc2FnZXM/OiBBcnJheTx7IHR5cGU6IHN0cmluZzsgY29udGVudDogc3RyaW5nIH0+IH07XG4gICAgICBjb25zdCBtZXNzYWdlcyA9IGRhdGE/Lm1lc3NhZ2VzID8/IFtdO1xuICAgICAgY29uc29sZS5sb2coJ1tBcGlDaGF0SGlzdG9yeV0gR290IG1lc3NhZ2VzOicsIG1lc3NhZ2VzLmxlbmd0aCk7XG5cbiAgICAgIHJldHVybiBtZXNzYWdlcy5tYXAoKG06IHsgdHlwZTogc3RyaW5nOyBjb250ZW50OiBzdHJpbmcgfSkgPT4ge1xuICAgICAgICBpZiAobS50eXBlID09PSAnaHVtYW4nKSB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBIdW1hbk1lc3NhZ2UobS5jb250ZW50KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gbmV3IEFJTWVzc2FnZShtLmNvbnRlbnQpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignW0FwaUNoYXRIaXN0b3J5XSBnZXRNZXNzYWdlcyBlcnJvcjonLCBlcnJvcik7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgYWRkTWVzc2FnZShtZXNzYWdlOiBCYXNlTWVzc2FnZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnNvbGUubG9nKCdbQXBpQ2hhdEhpc3RvcnldIGFkZE1lc3NhZ2UgY2FsbGVkIGZvciBzZXNzaW9uOicsIHRoaXMuc2Vzc2lvbklkKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgdHlwZSA9IG1lc3NhZ2UuX2dldFR5cGUoKSA9PT0gJ2h1bWFuJyA/ICdodW1hbicgOiAnYWknO1xuXG4gICAgICBhd2FpdCBmZXRjaCh0aGlzLmFwaVVybCwge1xuICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJzKCksXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICBhY3Rpb246ICdhZGQnLFxuICAgICAgICAgIHNlc3Npb25JZDogdGhpcy5zZXNzaW9uSWQsXG4gICAgICAgICAgbWVzc2FnZToge1xuICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgIGNvbnRlbnQ6IG1lc3NhZ2UuY29udGVudCxcbiAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICAgIH0pO1xuICAgICAgY29uc29sZS5sb2coJ1tBcGlDaGF0SGlzdG9yeV0gTWVzc2FnZSBhZGRlZCBzdWNjZXNzZnVsbHknKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignW0FwaUNoYXRIaXN0b3J5XSBhZGRNZXNzYWdlIGVycm9yOicsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBhZGRNZXNzYWdlcyhtZXNzYWdlczogQmFzZU1lc3NhZ2VbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGZvciAoY29uc3QgbWVzc2FnZSBvZiBtZXNzYWdlcykge1xuICAgICAgYXdhaXQgdGhpcy5hZGRNZXNzYWdlKG1lc3NhZ2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNsZWFyKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnNvbGUubG9nKCdbQXBpQ2hhdEhpc3RvcnldIGNsZWFyIGNhbGxlZCBmb3Igc2Vzc2lvbjonLCB0aGlzLnNlc3Npb25JZCk7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGZldGNoKHRoaXMuYXBpVXJsLCB7XG4gICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICBoZWFkZXJzOiB0aGlzLmdldEhlYWRlcnMoKSxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgIGFjdGlvbjogJ2NsZWFyJyxcbiAgICAgICAgICBzZXNzaW9uSWQ6IHRoaXMuc2Vzc2lvbklkLFxuICAgICAgICB9KSxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdbQXBpQ2hhdEhpc3RvcnldIGNsZWFyIGVycm9yOicsIGVycm9yKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE1lbW9yeUFwaSBpbXBsZW1lbnRzIElOb2RlVHlwZSB7XG4gIGRlc2NyaXB0aW9uOiBJTm9kZVR5cGVEZXNjcmlwdGlvbiA9IHtcbiAgICBkaXNwbGF5TmFtZTogJ01lbW9yeSBBUEknLFxuICAgIG5hbWU6ICdtZW1vcnlBcGknLFxuICAgIGljb246ICdmYTpicmFpbicsXG4gICAgZ3JvdXA6IFsndHJhbnNmb3JtJ10sXG4gICAgdmVyc2lvbjogMSxcbiAgICBzdWJ0aXRsZTogJ0V4dGVybmFsIEFQSSBNZW1vcnknLFxuICAgIGRlc2NyaXB0aW9uOiAnVXNlIGFuIGV4dGVybmFsIEFQSSBhcyBjaGF0IG1lbW9yeSBzdG9yYWdlJyxcbiAgICBkZWZhdWx0czoge1xuICAgICAgbmFtZTogJ01lbW9yeSBBUEknLFxuICAgIH0sXG4gICAgY29kZXg6IHtcbiAgICAgIGNhdGVnb3JpZXM6IFsnQUknXSxcbiAgICAgIHN1YmNhdGVnb3JpZXM6IHtcbiAgICAgICAgQUk6IFsnTWVtb3J5J10sXG4gICAgICB9LFxuICAgICAgcmVzb3VyY2VzOiB7XG4gICAgICAgIHByaW1hcnlEb2N1bWVudGF0aW9uOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly9naXRodWIuY29tL2ZpbGlwZXh5ei9uOG4tbm9kZXMtbWVtb3J5JyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGlucHV0czogW10sXG4gICAgb3V0cHV0czogWydhaV9tZW1vcnknIGFzIGNvbnN0XSxcbiAgICBvdXRwdXROYW1lczogWydNZW1vcnknXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnQVBJIFVSTCcsXG4gICAgICAgIG5hbWU6ICdhcGlVcmwnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1VSTCBvZiB0aGUgbWVtb3J5IEFQSSAoZS5nLiwgbjhuIHdlYmhvb2sgVVJMKScsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnaHR0cHM6Ly95b3VyLW44bi5jb20vd2ViaG9vay9tZW1vcnknLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdTZXNzaW9uIElEJyxcbiAgICAgICAgbmFtZTogJ3Nlc3Npb25JZCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkZWZhdWx0OiAnPXt7ICRqc29uLnNlc3Npb25JZCB9fScsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1VuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29udmVyc2F0aW9uIHNlc3Npb24nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdBUEkgS2V5JyxcbiAgICAgICAgbmFtZTogJ2FwaUtleScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgIHBhc3N3b3JkOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdPcHRpb25hbCBBUEkga2V5IGZvciBhdXRoZW50aWNhdGlvbicsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0NvbnRleHQgV2luZG93IExlbmd0aCcsXG4gICAgICAgIG5hbWU6ICdjb250ZXh0V2luZG93TGVuZ3RoJyxcbiAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgIGRlZmF1bHQ6IDEwLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ051bWJlciBvZiBwcmV2aW91cyBtZXNzYWdlcyB0byBpbmNsdWRlIGFzIGNvbnRleHQnLFxuICAgICAgfSxcbiAgICBdLFxuICB9O1xuXG4gIGFzeW5jIHN1cHBseURhdGEoXG4gICAgdGhpczogSVN1cHBseURhdGFGdW5jdGlvbnMsXG4gICAgaXRlbUluZGV4OiBudW1iZXJcbiAgKTogUHJvbWlzZTxTdXBwbHlEYXRhPiB7XG4gICAgY29uc3QgYXBpVXJsID0gdGhpcy5nZXROb2RlUGFyYW1ldGVyKCdhcGlVcmwnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICBjb25zdCBzZXNzaW9uSWQgPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ3Nlc3Npb25JZCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGFwaUtleSA9ICh0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ2FwaUtleScsIGl0ZW1JbmRleCwgJycpIGFzIHN0cmluZykgfHwgdW5kZWZpbmVkO1xuICAgIGNvbnN0IGNvbnRleHRXaW5kb3dMZW5ndGggPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ2NvbnRleHRXaW5kb3dMZW5ndGgnLCBpdGVtSW5kZXgsIDEwKSBhcyBudW1iZXI7XG5cbiAgICBjb25zb2xlLmxvZygnW01lbW9yeSBBUEldIENyZWF0aW5nIG1lbW9yeSBmb3Igc2Vzc2lvbjonLCBzZXNzaW9uSWQpO1xuXG4gICAgY29uc3QgY2hhdEhpc3RvcnkgPSBuZXcgQXBpQ2hhdEhpc3RvcnkoYXBpVXJsLCBzZXNzaW9uSWQsIGFwaUtleSk7XG5cbiAgICBjb25zdCBtZW1vcnkgPSBuZXcgQnVmZmVyV2luZG93TWVtb3J5KHtcbiAgICAgIG1lbW9yeUtleTogJ2NoYXRfaGlzdG9yeScsXG4gICAgICBjaGF0SGlzdG9yeSxcbiAgICAgIHJldHVybk1lc3NhZ2VzOiB0cnVlLFxuICAgICAgaW5wdXRLZXk6ICdpbnB1dCcsXG4gICAgICBvdXRwdXRLZXk6ICdvdXRwdXQnLFxuICAgICAgazogY29udGV4dFdpbmRvd0xlbmd0aCxcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICByZXNwb25zZTogbWVtb3J5LFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
188
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5QXBpLm5vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbm9kZXMvTWVtb3J5L01lbW9yeUFwaS5ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLDZDQUFzRDtBQUN0RCwrREFBMEU7QUFDMUUsdURBS2tDO0FBRWxDLE1BQU0sY0FBZSxTQUFRLHlDQUEwQjtJQUdyRCxZQUNVLE1BQWMsRUFDZCxTQUFpQixFQUNqQixNQUFlO1FBRXZCLEtBQUssRUFBRSxDQUFDO1FBSkEsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsV0FBTSxHQUFOLE1BQU0sQ0FBUztRQUx6QixpQkFBWSxHQUFHLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFRekQsQ0FBQztJQUVPLFVBQVU7UUFDaEIsTUFBTSxPQUFPLEdBQTJCO1lBQ3RDLGNBQWMsRUFBRSxrQkFBa0I7U0FDbkMsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLE9BQU8sQ0FBQyxlQUFlLENBQUMsR0FBRyxVQUFVLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNyRCxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFXO1FBQ2YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrREFBa0QsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDO1lBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQ0FBaUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDNUQsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDeEMsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQzFCLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDO29CQUNuQixNQUFNLEVBQUUsS0FBSztvQkFDYixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7aUJBQzFCLENBQUM7YUFDSCxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLCtCQUErQixRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztnQkFDaEUsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDO1lBRUQsTUFBTSxJQUFJLEdBQUcsTUFBTSxRQUFRLENBQUMsSUFBSSxFQUE2RCxDQUFDO1lBQzlGLE1BQU0sUUFBUSxHQUFHLElBQUksRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO1lBQ3RDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0NBQWdDLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRS9ELE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQW9DLEVBQUUsRUFBRTtnQkFDM0QsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU87b0JBQUUsT0FBTyxJQUFJLHVCQUFZLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUMzRCxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUTtvQkFBRSxPQUFPLElBQUksd0JBQWEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzdELE9BQU8sSUFBSSxvQkFBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsQyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUM1RCxPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFvQjtRQUNuQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlEQUFpRCxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvRSxJQUFJLENBQUM7WUFDSCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUU3RCxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUN2QixNQUFNLEVBQUUsTUFBTTtnQkFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDMUIsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7b0JBQ25CLE1BQU0sRUFBRSxLQUFLO29CQUNiLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztvQkFDekIsT0FBTyxFQUFFO3dCQUNQLElBQUk7d0JBQ0osT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO3FCQUN6QjtpQkFDRixDQUFDO2FBQ0gsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3RCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBdUI7UUFDdkMsS0FBSyxNQUFNLE9BQU8sSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSztRQUNULE9BQU8sQ0FBQyxHQUFHLENBQUMsNENBQTRDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQztZQUNILE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ3ZCLE1BQU0sRUFBRSxNQUFNO2dCQUNkLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUMxQixJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztvQkFDbkIsTUFBTSxFQUFFLE9BQU87b0JBQ2YsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO2lCQUMxQixDQUFDO2FBQ0gsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLCtCQUErQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hELENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFFRCxNQUFhLFNBQVM7SUFBdEI7UUFDRSxnQkFBVyxHQUF5QjtZQUNsQyxXQUFXLEVBQUUsWUFBWTtZQUN6QixJQUFJLEVBQUUsV0FBVztZQUNqQixJQUFJLEVBQUUsVUFBVTtZQUNoQixLQUFLLEVBQUUsQ0FBQyxXQUFXLENBQUM7WUFDcEIsT0FBTyxFQUFFLENBQUM7WUFDVixRQUFRLEVBQUUscUJBQXFCO1lBQy9CLFdBQVcsRUFBRSw0Q0FBNEM7WUFDekQsUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxZQUFZO2FBQ25CO1lBQ0QsS0FBSyxFQUFFO2dCQUNMLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQztnQkFDbEIsYUFBYSxFQUFFO29CQUNiLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQztpQkFDZjtnQkFDRCxTQUFTLEVBQUU7b0JBQ1Qsb0JBQW9CLEVBQUU7d0JBQ3BCOzRCQUNFLEdBQUcsRUFBRSwrQ0FBK0M7eUJBQ3JEO3FCQUNGO2lCQUNGO2FBQ0Y7WUFDRCxNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxDQUFDLFdBQW9CLENBQUM7WUFDL0IsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO1lBQ3ZCLFVBQVUsRUFBRTtnQkFDVjtvQkFDRSxXQUFXLEVBQUUsU0FBUztvQkFDdEIsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsUUFBUSxFQUFFLElBQUk7b0JBQ2QsV0FBVyxFQUFFLCtDQUErQztvQkFDNUQsV0FBVyxFQUFFLHFDQUFxQztpQkFDbkQ7Z0JBQ0Q7b0JBQ0UsV0FBVyxFQUFFLFlBQVk7b0JBQ3pCLElBQUksRUFBRSxXQUFXO29CQUNqQixJQUFJLEVBQUUsUUFBUTtvQkFDZCxPQUFPLEVBQUUsd0JBQXdCO29CQUNqQyxRQUFRLEVBQUUsSUFBSTtvQkFDZCxXQUFXLEVBQUUsZ0RBQWdEO2lCQUM5RDtnQkFDRDtvQkFDRSxXQUFXLEVBQUUsU0FBUztvQkFDdEIsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsV0FBVyxFQUFFO3dCQUNYLFFBQVEsRUFBRSxJQUFJO3FCQUNmO29CQUNELE9BQU8sRUFBRSxFQUFFO29CQUNYLFdBQVcsRUFBRSxxQ0FBcUM7aUJBQ25EO2dCQUNEO29CQUNFLFdBQVcsRUFBRSx1QkFBdUI7b0JBQ3BDLElBQUksRUFBRSxxQkFBcUI7b0JBQzNCLElBQUksRUFBRSxRQUFRO29CQUNkLE9BQU8sRUFBRSxFQUFFO29CQUNYLFdBQVcsRUFBRSxtREFBbUQ7aUJBQ2pFO2FBQ0Y7U0FDRixDQUFDO0lBNEJKLENBQUM7SUExQkMsS0FBSyxDQUFDLFVBQVUsQ0FFZCxTQUFpQjtRQUVqQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBVyxDQUFDO1FBQ3BFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFXLENBQUM7UUFDMUUsTUFBTSxNQUFNLEdBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsRUFBRSxDQUFZLElBQUksU0FBUyxDQUFDO1FBQ3ZGLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixFQUFFLFNBQVMsRUFBRSxFQUFFLENBQVcsQ0FBQztRQUVsRyxPQUFPLENBQUMsR0FBRyxDQUFDLDJDQUEyQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRXBFLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFbEUsTUFBTSxNQUFNLEdBQUcsSUFBSSwyQkFBa0IsQ0FBQztZQUNwQyxTQUFTLEVBQUUsY0FBYztZQUN6QixXQUFXO1lBQ1gsY0FBYyxFQUFFLElBQUk7WUFDcEIsUUFBUSxFQUFFLE9BQU87WUFDakIsU0FBUyxFQUFFLFFBQVE7WUFDbkIsQ0FBQyxFQUFFLG1CQUFtQjtTQUN2QixDQUFDLENBQUM7UUFFSCxPQUFPO1lBQ0wsUUFBUSxFQUFFLE1BQU07U0FDakIsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTVGRCw4QkE0RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIElOb2RlVHlwZSxcbiAgSU5vZGVUeXBlRGVzY3JpcHRpb24sXG4gIElTdXBwbHlEYXRhRnVuY3Rpb25zLFxuICBTdXBwbHlEYXRhLFxufSBmcm9tICduOG4td29ya2Zsb3cnO1xuaW1wb3J0IHsgQnVmZmVyV2luZG93TWVtb3J5IH0gZnJvbSAnbGFuZ2NoYWluL21lbW9yeSc7XG5pbXBvcnQgeyBCYXNlTGlzdENoYXRNZXNzYWdlSGlzdG9yeSB9IGZyb20gJ0BsYW5nY2hhaW4vY29yZS9jaGF0X2hpc3RvcnknO1xuaW1wb3J0IHtcbiAgQmFzZU1lc3NhZ2UsXG4gIEh1bWFuTWVzc2FnZSxcbiAgQUlNZXNzYWdlLFxuICBTeXN0ZW1NZXNzYWdlLFxufSBmcm9tICdAbGFuZ2NoYWluL2NvcmUvbWVzc2FnZXMnO1xuXG5jbGFzcyBBcGlDaGF0SGlzdG9yeSBleHRlbmRzIEJhc2VMaXN0Q2hhdE1lc3NhZ2VIaXN0b3J5IHtcbiAgbGNfbmFtZXNwYWNlID0gWydsYW5nY2hhaW4nLCAnc3RvcmVzJywgJ21lc3NhZ2UnLCAnYXBpJ107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhcGlVcmw6IHN0cmluZyxcbiAgICBwcml2YXRlIHNlc3Npb25JZDogc3RyaW5nLFxuICAgIHByaXZhdGUgYXBpS2V5Pzogc3RyaW5nLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRIZWFkZXJzKCk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICAgIGNvbnN0IGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgIH07XG4gICAgaWYgKHRoaXMuYXBpS2V5KSB7XG4gICAgICBoZWFkZXJzWydBdXRob3JpemF0aW9uJ10gPSBgQmVhcmVyICR7dGhpcy5hcGlLZXl9YDtcbiAgICB9XG4gICAgcmV0dXJuIGhlYWRlcnM7XG4gIH1cblxuICBhc3luYyBnZXRNZXNzYWdlcygpOiBQcm9taXNlPEJhc2VNZXNzYWdlW10+IHtcbiAgICBjb25zb2xlLmxvZygnW0FwaUNoYXRIaXN0b3J5XSBnZXRNZXNzYWdlcyBjYWxsZWQgZm9yIHNlc3Npb246JywgdGhpcy5zZXNzaW9uSWQpO1xuICAgIHRyeSB7XG4gICAgICBjb25zb2xlLmxvZygnW0FwaUNoYXRIaXN0b3J5XSBGZXRjaGluZyBmcm9tOicsIHRoaXMuYXBpVXJsKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godGhpcy5hcGlVcmwsIHtcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgIGhlYWRlcnM6IHRoaXMuZ2V0SGVhZGVycygpLFxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgYWN0aW9uOiAnZ2V0JyxcbiAgICAgICAgICBzZXNzaW9uSWQ6IHRoaXMuc2Vzc2lvbklkLFxuICAgICAgICB9KSxcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFtBcGlDaGF0SGlzdG9yeV0gQVBJIGVycm9yOiAke3Jlc3BvbnNlLnN0YXR1c31gKTtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpIGFzIHsgbWVzc2FnZXM/OiBBcnJheTx7IHR5cGU6IHN0cmluZzsgY29udGVudDogc3RyaW5nIH0+IH07XG4gICAgICBjb25zdCBtZXNzYWdlcyA9IGRhdGE/Lm1lc3NhZ2VzID8/IFtdO1xuICAgICAgY29uc29sZS5sb2coJ1tBcGlDaGF0SGlzdG9yeV0gR290IG1lc3NhZ2VzOicsIG1lc3NhZ2VzLmxlbmd0aCk7XG5cbiAgICAgIHJldHVybiBtZXNzYWdlcy5tYXAoKG06IHsgdHlwZTogc3RyaW5nOyBjb250ZW50OiBzdHJpbmcgfSkgPT4ge1xuICAgICAgICBpZiAobS50eXBlID09PSAnaHVtYW4nKSByZXR1cm4gbmV3IEh1bWFuTWVzc2FnZShtLmNvbnRlbnQpO1xuICAgICAgICBpZiAobS50eXBlID09PSAnc3lzdGVtJykgcmV0dXJuIG5ldyBTeXN0ZW1NZXNzYWdlKG0uY29udGVudCk7XG4gICAgICAgIHJldHVybiBuZXcgQUlNZXNzYWdlKG0uY29udGVudCk7XG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignW0FwaUNoYXRIaXN0b3J5XSBnZXRNZXNzYWdlcyBlcnJvcjonLCBlcnJvcik7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgYWRkTWVzc2FnZShtZXNzYWdlOiBCYXNlTWVzc2FnZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnNvbGUubG9nKCdbQXBpQ2hhdEhpc3RvcnldIGFkZE1lc3NhZ2UgY2FsbGVkIGZvciBzZXNzaW9uOicsIHRoaXMuc2Vzc2lvbklkKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgdHlwZSA9IG1lc3NhZ2UuX2dldFR5cGUoKSA9PT0gJ2h1bWFuJyA/ICdodW1hbicgOiAnYWknO1xuXG4gICAgICBhd2FpdCBmZXRjaCh0aGlzLmFwaVVybCwge1xuICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJzKCksXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICBhY3Rpb246ICdhZGQnLFxuICAgICAgICAgIHNlc3Npb25JZDogdGhpcy5zZXNzaW9uSWQsXG4gICAgICAgICAgbWVzc2FnZToge1xuICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgIGNvbnRlbnQ6IG1lc3NhZ2UuY29udGVudCxcbiAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICAgIH0pO1xuICAgICAgY29uc29sZS5sb2coJ1tBcGlDaGF0SGlzdG9yeV0gTWVzc2FnZSBhZGRlZCBzdWNjZXNzZnVsbHknKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignW0FwaUNoYXRIaXN0b3J5XSBhZGRNZXNzYWdlIGVycm9yOicsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBhZGRNZXNzYWdlcyhtZXNzYWdlczogQmFzZU1lc3NhZ2VbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGZvciAoY29uc3QgbWVzc2FnZSBvZiBtZXNzYWdlcykge1xuICAgICAgYXdhaXQgdGhpcy5hZGRNZXNzYWdlKG1lc3NhZ2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNsZWFyKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnNvbGUubG9nKCdbQXBpQ2hhdEhpc3RvcnldIGNsZWFyIGNhbGxlZCBmb3Igc2Vzc2lvbjonLCB0aGlzLnNlc3Npb25JZCk7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGZldGNoKHRoaXMuYXBpVXJsLCB7XG4gICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICBoZWFkZXJzOiB0aGlzLmdldEhlYWRlcnMoKSxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgIGFjdGlvbjogJ2NsZWFyJyxcbiAgICAgICAgICBzZXNzaW9uSWQ6IHRoaXMuc2Vzc2lvbklkLFxuICAgICAgICB9KSxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdbQXBpQ2hhdEhpc3RvcnldIGNsZWFyIGVycm9yOicsIGVycm9yKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE1lbW9yeUFwaSBpbXBsZW1lbnRzIElOb2RlVHlwZSB7XG4gIGRlc2NyaXB0aW9uOiBJTm9kZVR5cGVEZXNjcmlwdGlvbiA9IHtcbiAgICBkaXNwbGF5TmFtZTogJ01lbW9yeSBBUEknLFxuICAgIG5hbWU6ICdtZW1vcnlBcGknLFxuICAgIGljb246ICdmYTpicmFpbicsXG4gICAgZ3JvdXA6IFsndHJhbnNmb3JtJ10sXG4gICAgdmVyc2lvbjogMSxcbiAgICBzdWJ0aXRsZTogJ0V4dGVybmFsIEFQSSBNZW1vcnknLFxuICAgIGRlc2NyaXB0aW9uOiAnVXNlIGFuIGV4dGVybmFsIEFQSSBhcyBjaGF0IG1lbW9yeSBzdG9yYWdlJyxcbiAgICBkZWZhdWx0czoge1xuICAgICAgbmFtZTogJ01lbW9yeSBBUEknLFxuICAgIH0sXG4gICAgY29kZXg6IHtcbiAgICAgIGNhdGVnb3JpZXM6IFsnQUknXSxcbiAgICAgIHN1YmNhdGVnb3JpZXM6IHtcbiAgICAgICAgQUk6IFsnTWVtb3J5J10sXG4gICAgICB9LFxuICAgICAgcmVzb3VyY2VzOiB7XG4gICAgICAgIHByaW1hcnlEb2N1bWVudGF0aW9uOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly9naXRodWIuY29tL2ZpbGlwZXh5ei9uOG4tbm9kZXMtbWVtb3J5JyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGlucHV0czogW10sXG4gICAgb3V0cHV0czogWydhaV9tZW1vcnknIGFzIGNvbnN0XSxcbiAgICBvdXRwdXROYW1lczogWydNZW1vcnknXSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnQVBJIFVSTCcsXG4gICAgICAgIG5hbWU6ICdhcGlVcmwnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGVmYXVsdDogJycsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1VSTCBvZiB0aGUgbWVtb3J5IEFQSSAoZS5nLiwgbjhuIHdlYmhvb2sgVVJMKScsXG4gICAgICAgIHBsYWNlaG9sZGVyOiAnaHR0cHM6Ly95b3VyLW44bi5jb20vd2ViaG9vay9tZW1vcnknLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdTZXNzaW9uIElEJyxcbiAgICAgICAgbmFtZTogJ3Nlc3Npb25JZCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkZWZhdWx0OiAnPXt7ICRqc29uLnNlc3Npb25JZCB9fScsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1VuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29udmVyc2F0aW9uIHNlc3Npb24nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdBUEkgS2V5JyxcbiAgICAgICAgbmFtZTogJ2FwaUtleScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgIHBhc3N3b3JkOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdPcHRpb25hbCBBUEkga2V5IGZvciBhdXRoZW50aWNhdGlvbicsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ0NvbnRleHQgV2luZG93IExlbmd0aCcsXG4gICAgICAgIG5hbWU6ICdjb250ZXh0V2luZG93TGVuZ3RoJyxcbiAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgIGRlZmF1bHQ6IDEwLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ051bWJlciBvZiBwcmV2aW91cyBtZXNzYWdlcyB0byBpbmNsdWRlIGFzIGNvbnRleHQnLFxuICAgICAgfSxcbiAgICBdLFxuICB9O1xuXG4gIGFzeW5jIHN1cHBseURhdGEoXG4gICAgdGhpczogSVN1cHBseURhdGFGdW5jdGlvbnMsXG4gICAgaXRlbUluZGV4OiBudW1iZXJcbiAgKTogUHJvbWlzZTxTdXBwbHlEYXRhPiB7XG4gICAgY29uc3QgYXBpVXJsID0gdGhpcy5nZXROb2RlUGFyYW1ldGVyKCdhcGlVcmwnLCBpdGVtSW5kZXgpIGFzIHN0cmluZztcbiAgICBjb25zdCBzZXNzaW9uSWQgPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ3Nlc3Npb25JZCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGFwaUtleSA9ICh0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ2FwaUtleScsIGl0ZW1JbmRleCwgJycpIGFzIHN0cmluZykgfHwgdW5kZWZpbmVkO1xuICAgIGNvbnN0IGNvbnRleHRXaW5kb3dMZW5ndGggPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ2NvbnRleHRXaW5kb3dMZW5ndGgnLCBpdGVtSW5kZXgsIDEwKSBhcyBudW1iZXI7XG5cbiAgICBjb25zb2xlLmxvZygnW01lbW9yeSBBUEldIENyZWF0aW5nIG1lbW9yeSBmb3Igc2Vzc2lvbjonLCBzZXNzaW9uSWQpO1xuXG4gICAgY29uc3QgY2hhdEhpc3RvcnkgPSBuZXcgQXBpQ2hhdEhpc3RvcnkoYXBpVXJsLCBzZXNzaW9uSWQsIGFwaUtleSk7XG5cbiAgICBjb25zdCBtZW1vcnkgPSBuZXcgQnVmZmVyV2luZG93TWVtb3J5KHtcbiAgICAgIG1lbW9yeUtleTogJ2NoYXRfaGlzdG9yeScsXG4gICAgICBjaGF0SGlzdG9yeSxcbiAgICAgIHJldHVybk1lc3NhZ2VzOiB0cnVlLFxuICAgICAgaW5wdXRLZXk6ICdpbnB1dCcsXG4gICAgICBvdXRwdXRLZXk6ICdvdXRwdXQnLFxuICAgICAgazogY29udGV4dFdpbmRvd0xlbmd0aCxcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICByZXNwb25zZTogbWVtb3J5LFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -21,12 +21,11 @@ class WorkflowChatHistory extends chat_history_1.BaseListChatMessageHistory {
|
|
|
21
21
|
const messages = result?.messages ?? [];
|
|
22
22
|
console.log('[WorkflowChatHistory] Got messages:', messages.length);
|
|
23
23
|
return messages.map((m) => {
|
|
24
|
-
if (m.type === 'human')
|
|
24
|
+
if (m.type === 'human')
|
|
25
25
|
return new messages_1.HumanMessage(m.content);
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
26
|
+
if (m.type === 'system')
|
|
27
|
+
return new messages_1.SystemMessage(m.content);
|
|
28
|
+
return new messages_1.AIMessage(m.content);
|
|
30
29
|
});
|
|
31
30
|
}
|
|
32
31
|
catch (error) {
|
|
@@ -123,6 +122,39 @@ class MemoryWorkflow {
|
|
|
123
122
|
default: 10,
|
|
124
123
|
description: 'Number of previous messages to include as context',
|
|
125
124
|
},
|
|
125
|
+
{
|
|
126
|
+
displayName: 'Additional Parameters',
|
|
127
|
+
name: 'additionalParameters',
|
|
128
|
+
placeholder: 'Add Parameter',
|
|
129
|
+
description: 'Extra parameters to pass to the workflow',
|
|
130
|
+
type: 'fixedCollection',
|
|
131
|
+
default: {},
|
|
132
|
+
typeOptions: {
|
|
133
|
+
multipleValues: true,
|
|
134
|
+
},
|
|
135
|
+
options: [
|
|
136
|
+
{
|
|
137
|
+
name: 'values',
|
|
138
|
+
displayName: 'Values',
|
|
139
|
+
values: [
|
|
140
|
+
{
|
|
141
|
+
displayName: 'Name',
|
|
142
|
+
name: 'name',
|
|
143
|
+
type: 'string',
|
|
144
|
+
default: '',
|
|
145
|
+
description: 'Parameter name',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
displayName: 'Value',
|
|
149
|
+
name: 'value',
|
|
150
|
+
type: 'string',
|
|
151
|
+
default: '',
|
|
152
|
+
description: 'Parameter value',
|
|
153
|
+
},
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
],
|
|
157
|
+
},
|
|
126
158
|
],
|
|
127
159
|
};
|
|
128
160
|
}
|
|
@@ -131,13 +163,24 @@ class MemoryWorkflow {
|
|
|
131
163
|
const workflowId = typeof workflowIdParam === 'string' ? workflowIdParam : workflowIdParam.value;
|
|
132
164
|
const sessionId = this.getNodeParameter('sessionId', itemIndex);
|
|
133
165
|
const contextWindowLength = this.getNodeParameter('contextWindowLength', itemIndex, 10);
|
|
166
|
+
const additionalParametersRaw = this.getNodeParameter('additionalParameters', itemIndex, {});
|
|
167
|
+
const additionalParams = {};
|
|
168
|
+
if (additionalParametersRaw.values) {
|
|
169
|
+
for (const param of additionalParametersRaw.values) {
|
|
170
|
+
if (param.name) {
|
|
171
|
+
additionalParams[param.name] = param.value;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
134
175
|
console.log('[Memory Workflow] Creating memory for session:', sessionId);
|
|
135
176
|
const nodeContext = this;
|
|
136
177
|
const executeWorkflow = async (data) => {
|
|
137
178
|
const workflowInfo = {
|
|
138
179
|
id: workflowId,
|
|
139
180
|
};
|
|
140
|
-
|
|
181
|
+
// Merge additional params with action data
|
|
182
|
+
const mergedData = { ...additionalParams, ...data };
|
|
183
|
+
const items = [{ json: mergedData }];
|
|
141
184
|
const result = await nodeContext.executeWorkflow(workflowInfo, items);
|
|
142
185
|
// Get the output from the last node
|
|
143
186
|
const lastNodeData = result.data?.[0]?.[0]?.json;
|
|
@@ -158,4 +201,4 @@ class MemoryWorkflow {
|
|
|
158
201
|
}
|
|
159
202
|
}
|
|
160
203
|
exports.MemoryWorkflow = MemoryWorkflow;
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5V29ya2Zsb3cubm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2Rlcy9NZW1vcnkvTWVtb3J5V29ya2Zsb3cubm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFTQSw2Q0FBc0Q7QUFDdEQsK0RBQTBFO0FBQzFFLHVEQUlrQztBQUlsQyxNQUFNLG1CQUFvQixTQUFRLHlDQUEwQjtJQUcxRCxZQUNVLGVBQWlDLEVBQ2pDLFNBQWlCO1FBRXpCLEtBQUssRUFBRSxDQUFDO1FBSEEsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQ2pDLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFKM0IsaUJBQVksR0FBRyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBTzlELENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVztRQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsdURBQXVELEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3JGLElBQUksQ0FBQztZQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQztnQkFDeEMsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO2FBQzFCLENBQUMsQ0FBQztZQUVILE1BQU0sUUFBUSxHQUFJLE1BQU0sRUFBRSxRQUFxRCxJQUFJLEVBQUUsQ0FBQztZQUN0RixPQUFPLENBQUMsR0FBRyxDQUFDLHFDQUFxQyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUVwRSxPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDeEIsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO29CQUN2QixPQUFPLElBQUksdUJBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3JDLENBQUM7cUJBQU0sQ0FBQztv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TSxLQUFLLEdBQXlCLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBbUIsRUFBRSxDQUFDLENBQUM7WUFDcEUsTUFBTSxNQUFNLEdBQUcsTUFBTSxXQUFXLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQztZQUV0RSxvQ0FBb0M7WUFDcEMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDO1lBQ2pELE9BQU8sWUFBdUMsSUFBSSxFQUFFLENBQUM7UUFDdkQsQ0FBQyxDQUFDO1FBRUYsTUFBTSxXQUFXLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQyxlQUFlLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFeEUsTUFBTSxNQUFNLEdBQUcsSUFBSSwyQkFBa0IsQ0FBQztZQUNwQyxTQUFTLEVBQUUsY0FBYztZQUN6QixXQUFXO1lBQ1gsY0FBYyxFQUFFLElBQUk7WUFDcEIsUUFBUSxFQUFFLE9BQU87WUFDakIsU0FBUyxFQUFFLFFBQVE7WUFDbkIsQ0FBQyxFQUFFLG1CQUFtQjtTQUN2QixDQUFDLENBQUM7UUFFSCxPQUFPO1lBQ0wsUUFBUSxFQUFFLE1BQU07U0FDakIsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWhHRCx3Q0FnR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIElOb2RlVHlwZSxcbiAgSU5vZGVUeXBlRGVzY3JpcHRpb24sXG4gIElTdXBwbHlEYXRhRnVuY3Rpb25zLFxuICBTdXBwbHlEYXRhLFxuICBJRXhlY3V0ZVdvcmtmbG93SW5mbyxcbiAgSU5vZGVFeGVjdXRpb25EYXRhLFxuICBJRGF0YU9iamVjdCxcbn0gZnJvbSAnbjhuLXdvcmtmbG93JztcbmltcG9ydCB7IEJ1ZmZlcldpbmRvd01lbW9yeSB9IGZyb20gJ2xhbmdjaGFpbi9tZW1vcnknO1xuaW1wb3J0IHsgQmFzZUxpc3RDaGF0TWVzc2FnZUhpc3RvcnkgfSBmcm9tICdAbGFuZ2NoYWluL2NvcmUvY2hhdF9oaXN0b3J5JztcbmltcG9ydCB7XG4gIEJhc2VNZXNzYWdlLFxuICBIdW1hbk1lc3NhZ2UsXG4gIEFJTWVzc2FnZSxcbn0gZnJvbSAnQGxhbmdjaGFpbi9jb3JlL21lc3NhZ2VzJztcblxudHlwZSBXb3JrZmxvd0V4ZWN1dG9yID0gKGRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KSA9PiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIHVua25vd24+PjtcblxuY2xhc3MgV29ya2Zsb3dDaGF0SGlzdG9yeSBleHRlbmRzIEJhc2VMaXN0Q2hhdE1lc3NhZ2VIaXN0b3J5IHtcbiAgbGNfbmFtZXNwYWNlID0gWydsYW5nY2hhaW4nLCAnc3RvcmVzJywgJ21lc3NhZ2UnLCAnd29ya2Zsb3cnXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGV4ZWN1dGVXb3JrZmxvdzogV29ya2Zsb3dFeGVjdXRvcixcbiAgICBwcml2YXRlIHNlc3Npb25JZDogc3RyaW5nLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgYXN5bmMgZ2V0TWVzc2FnZXMoKTogUHJvbWlzZTxCYXNlTWVzc2FnZVtdPiB7XG4gICAgY29uc29sZS5sb2coJ1tXb3JrZmxvd0NoYXRIaXN0b3J5XSBnZXRNZXNzYWdlcyBjYWxsZWQgZm9yIHNlc3Npb246JywgdGhpcy5zZXNzaW9uSWQpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmV4ZWN1dGVXb3JrZmxvdyh7XG4gICAgICAgIGFjdGlvbjogJ2dldCcsXG4gICAgICAgIHNlc3Npb25JZDogdGhpcy5zZXNzaW9uSWQsXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgbWVzc2FnZXMgPSAocmVzdWx0Py5tZXNzYWdlcyBhcyBBcnJheTx7IHR5cGU6IHN0cmluZzsgY29udGVudDogc3RyaW5nIH0+KSA/PyBbXTtcbiAgICAgIGNvbnNvbGUubG9nKCdbV29ya2Zsb3dDaGF0SGlzdG9yeV0gR290IG1lc3NhZ2VzOicsIG1lc3NhZ2VzLmxlbmd0aCk7XG5cbiAgICAgIHJldHVybiBtZXNzYWdlcy5tYXAoKG0pID0+IHtcbiAgICAgICAgaWYgKG0udHlwZSA9PT0gJ2h1bWFuJykge1xuICAgICAgICAgIHJldHVybiBuZXcgSHVtYW5NZXNzYWdlKG0uY29udGVudCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBBSU1lc3NhZ2UobS5jb250ZW50KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1tXb3JrZmxvd0NoYXRIaXN0b3J5XSBnZXRNZXNzYWdlcyBlcnJvcjonLCBlcnJvcik7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgYWRkTWVzc2FnZShtZXNzYWdlOiBCYXNlTWVzc2FnZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnNvbGUubG9nKCdbV29ya2Zsb3dDaGF0SGlzdG9yeV0gYWRkTWVzc2FnZSBjYWxsZWQgZm9yIHNlc3Npb246JywgdGhpcy5zZXNzaW9uSWQpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCB0eXBlID0gbWVzc2FnZS5fZ2V0VHlwZSgpID09PSAnaHVtYW4nID8gJ2h1bWFuJyA6ICdhaSc7XG5cbiAgICAgIGF3YWl0IHRoaXMuZXhlY3V0ZVdvcmtmbG93KHtcbiAgICAgICAgYWN0aW9uOiAnYWRkJyxcbiAgICAgICAgc2Vzc2lvbklkOiB0aGlzLnNlc3Npb25JZCxcbiAgICAgICAgbWVzc2FnZToge1xuICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgY29udGVudDogbWVzc2FnZS5jb250ZW50LFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBjb25zb2xlLmxvZygnW1dvcmtmbG93Q2hhdEhpc3RvcnldIE1lc3NhZ2UgYWRkZWQgc3VjY2Vzc2Z1bGx5Jyk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1tXb3JrZmxvd0NoYXRIaXN0b3J5XSBhZGRNZXNzYWdlIGVycm9yOicsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBhZGRNZXNzYWdlcyhtZXNzYWdlczogQmFzZU1lc3NhZ2VbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGZvciAoY29uc3QgbWVzc2FnZSBvZiBtZXNzYWdlcykge1xuICAgICAgYXdhaXQgdGhpcy5hZGRNZXNzYWdlKG1lc3NhZ2UpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNsZWFyKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnNvbGUubG9nKCdbV29ya2Zsb3dDaGF0SGlzdG9yeV0gY2xlYXIgY2FsbGVkIGZvciBzZXNzaW9uOicsIHRoaXMuc2Vzc2lvbklkKTtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5leGVjdXRlV29ya2Zsb3coe1xuICAgICAgICBhY3Rpb246ICdjbGVhcicsXG4gICAgICAgIHNlc3Npb25JZDogdGhpcy5zZXNzaW9uSWQsXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignW1dvcmtmbG93Q2hhdEhpc3RvcnldIGNsZWFyIGVycm9yOicsIGVycm9yKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE1lbW9yeVdvcmtmbG93IGltcGxlbWVudHMgSU5vZGVUeXBlIHtcbiAgZGVzY3JpcHRpb246IElOb2RlVHlwZURlc2NyaXB0aW9uID0ge1xuICAgIGRpc3BsYXlOYW1lOiAnTWVtb3J5IFdvcmtmbG93JyxcbiAgICBuYW1lOiAnbWVtb3J5V29ya2Zsb3cnLFxuICAgIGljb246ICdmYTpwcm9qZWN0LWRpYWdyYW0nLFxuICAgIGdyb3VwOiBbJ3RyYW5zZm9ybSddLFxuICAgIHZlcnNpb246IDEsXG4gICAgc3VidGl0bGU6ICdTdWItV29ya2Zsb3cgTWVtb3J5JyxcbiAgICBkZXNjcmlwdGlvbjogJ1VzZSBhIHN1Yi13b3JrZmxvdyBhcyBjaGF0IG1lbW9yeSBzdG9yYWdlJyxcbiAgICBkZWZhdWx0czoge1xuICAgICAgbmFtZTogJ01lbW9yeSBXb3JrZmxvdycsXG4gICAgfSxcbiAgICBjb2RleDoge1xuICAgICAgY2F0ZWdvcmllczogWydBSSddLFxuICAgICAgc3ViY2F0ZWdvcmllczoge1xuICAgICAgICBBSTogWydNZW1vcnknXSxcbiAgICAgIH0sXG4gICAgICByZXNvdXJjZXM6IHtcbiAgICAgICAgcHJpbWFyeURvY3VtZW50YXRpb246IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB1cmw6ICdodHRwczovL2dpdGh1Yi5jb20vZmlsaXBleHl6L244bi1ub2Rlcy1tZW1vcnknLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgaW5wdXRzOiBbXSxcbiAgICBvdXRwdXRzOiBbJ2FpX21lbW9yeScgYXMgY29uc3RdLFxuICAgIG91dHB1dE5hbWVzOiBbJ01lbW9yeSddLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdXb3JrZmxvdycsXG4gICAgICAgIG5hbWU6ICd3b3JrZmxvd0lkJyxcbiAgICAgICAgdHlwZTogJ3dvcmtmbG93U2VsZWN0b3InLFxuICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIHdvcmtmbG93IHRvIGV4ZWN1dGUgZm9yIG1lbW9yeSBvcGVyYXRpb25zJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnU2Vzc2lvbiBJRCcsXG4gICAgICAgIG5hbWU6ICdzZXNzaW9uSWQnLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgZGVmYXVsdDogJz17eyAkanNvbi5zZXNzaW9uSWQgfX0nLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGNvbnZlcnNhdGlvbiBzZXNzaW9uJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnQ29udGV4dCBXaW5kb3cgTGVuZ3RoJyxcbiAgICAgICAgbmFtZTogJ2NvbnRleHRXaW5kb3dMZW5ndGgnLFxuICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgZGVmYXVsdDogMTAsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTnVtYmVyIG9mIHByZXZpb3VzIG1lc3NhZ2VzIHRvIGluY2x1ZGUgYXMgY29udGV4dCcsXG4gICAgICB9LFxuICAgIF0sXG4gIH07XG5cbiAgYXN5bmMgc3VwcGx5RGF0YShcbiAgICB0aGlzOiBJU3VwcGx5RGF0YUZ1bmN0aW9ucyxcbiAgICBpdGVtSW5kZXg6IG51bWJlclxuICApOiBQcm9taXNlPFN1cHBseURhdGE+IHtcbiAgICBjb25zdCB3b3JrZmxvd0lkUGFyYW0gPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ3dvcmtmbG93SWQnLCBpdGVtSW5kZXgpIGFzIHN0cmluZyB8IHsgdmFsdWU6IHN0cmluZyB9O1xuICAgIGNvbnN0IHdvcmtmbG93SWQgPSB0eXBlb2Ygd29ya2Zsb3dJZFBhcmFtID09PSAnc3RyaW5nJyA/IHdvcmtmbG93SWRQYXJhbSA6IHdvcmtmbG93SWRQYXJhbS52YWx1ZTtcbiAgICBjb25zdCBzZXNzaW9uSWQgPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ3Nlc3Npb25JZCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGNvbnRleHRXaW5kb3dMZW5ndGggPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ2NvbnRleHRXaW5kb3dMZW5ndGgnLCBpdGVtSW5kZXgsIDEwKSBhcyBudW1iZXI7XG5cbiAgICBjb25zb2xlLmxvZygnW01lbW9yeSBXb3JrZmxvd10gQ3JlYXRpbmcgbWVtb3J5IGZvciBzZXNzaW9uOicsIHNlc3Npb25JZCk7XG5cbiAgICBjb25zdCBub2RlQ29udGV4dCA9IHRoaXM7XG5cbiAgICBjb25zdCBleGVjdXRlV29ya2Zsb3c6IFdvcmtmbG93RXhlY3V0b3IgPSBhc3luYyAoZGF0YSkgPT4ge1xuICAgICAgY29uc3Qgd29ya2Zsb3dJbmZvOiBJRXhlY3V0ZVdvcmtmbG93SW5mbyA9IHtcbiAgICAgICAgaWQ6IHdvcmtmbG93SWQsXG4gICAgICB9O1xuXG4gICAgICBjb25zdCBpdGVtczogSU5vZGVFeGVjdXRpb25EYXRhW10gPSBbeyBqc29uOiBkYXRhIGFzIElEYXRhT2JqZWN0IH1dO1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgbm9kZUNvbnRleHQuZXhlY3V0ZVdvcmtmbG93KHdvcmtmbG93SW5mbywgaXRlbXMpO1xuXG4gICAgICAvLyBHZXQgdGhlIG91dHB1dCBmcm9tIHRoZSBsYXN0IG5vZGVcbiAgICAgIGNvbnN0IGxhc3ROb2RlRGF0YSA9IHJlc3VsdC5kYXRhPy5bMF0/LlswXT8uanNvbjtcbiAgICAgIHJldHVybiBsYXN0Tm9kZURhdGEgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPz8ge307XG4gICAgfTtcblxuICAgIGNvbnN0IGNoYXRIaXN0b3J5ID0gbmV3IFdvcmtmbG93Q2hhdEhpc3RvcnkoZXhlY3V0ZVdvcmtmbG93LCBzZXNzaW9uSWQpO1xuXG4gICAgY29uc3QgbWVtb3J5ID0gbmV3IEJ1ZmZlcldpbmRvd01lbW9yeSh7XG4gICAgICBtZW1vcnlLZXk6ICdjaGF0X2hpc3RvcnknLFxuICAgICAgY2hhdEhpc3RvcnksXG4gICAgICByZXR1cm5NZXNzYWdlczogdHJ1ZSxcbiAgICAgIGlucHV0S2V5OiAnaW5wdXQnLFxuICAgICAgb3V0cHV0S2V5OiAnb3V0cHV0JyxcbiAgICAgIGs6IGNvbnRleHRXaW5kb3dMZW5ndGgsXG4gICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgcmVzcG9uc2U6IG1lbW9yeSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5V29ya2Zsb3cubm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2Rlcy9NZW1vcnkvTWVtb3J5V29ya2Zsb3cubm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFTQSw2Q0FBc0Q7QUFDdEQsK0RBQTBFO0FBQzFFLHVEQUtrQztBQUlsQyxNQUFNLG1CQUFvQixTQUFRLHlDQUEwQjtJQUcxRCxZQUNVLGVBQWlDLEVBQ2pDLFNBQWlCO1FBRXpCLEtBQUssRUFBRSxDQUFDO1FBSEEsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQ2pDLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFKM0IsaUJBQVksR0FBRyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBTzlELENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVztRQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsdURBQXVELEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3JGLElBQUksQ0FBQztZQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQztnQkFDeEMsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO2FBQzFCLENBQUMsQ0FBQztZQUVILE1BQU0sUUFBUSxHQUFJLE1BQU0sRUFBRSxRQUFxRCxJQUFJLEVBQUUsQ0FBQztZQUN0RixPQUFPLENBQUMsR0FBRyxDQUFDLHFDQUFxQyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUVwRSxPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDeEIsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU87b0JBQUUsT0FBTyxJQUFJLHVCQUFZLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUMzRCxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFB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O2FBQ2YsQ0FBQztZQUVGLDJDQUEyQztZQUMzQyxNQUFNLFVBQVUsR0FBRyxFQUFFLEdBQUcsZ0JBQWdCLEVBQUUsR0FBRyxJQUFJLEVBQUUsQ0FBQztZQUNwRCxNQUFNLEtBQUssR0FBeUIsQ0FBQyxFQUFFLElBQUksRUFBRSxVQUF5QixFQUFFLENBQUMsQ0FBQztZQUMxRSxNQUFNLE1BQU0sR0FBRyxNQUFNLFdBQVcsQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBRXRFLG9DQUFvQztZQUNwQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUM7WUFDakQsT0FBTyxZQUF1QyxJQUFJLEVBQUUsQ0FBQztRQUN2RCxDQUFDLENBQUM7UUFFRixNQUFNLFdBQVcsR0FBRyxJQUFJLG1CQUFtQixDQUFDLGVBQWUsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUV4RSxNQUFNLE1BQU0sR0FBRyxJQUFJLDJCQUFrQixDQUFDO1lBQ3BDLFNBQVMsRUFBRSxjQUFjO1lBQ3pCLFdBQVc7WUFDWCxjQUFjLEVBQUUsSUFBSTtZQUNwQixRQUFRLEVBQUUsT0FBTztZQUNqQixTQUFTLEVBQUUsUUFBUTtZQUNuQixDQUFDLEVBQUUsbUJBQW1CO1NBQ3ZCLENBQUMsQ0FBQztRQUVILE9BQU87WUFDTCxRQUFRLEVBQUUsTUFBTTtTQUNqQixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBL0lELHdDQStJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgSU5vZGVUeXBlLFxuICBJTm9kZVR5cGVEZXNjcmlwdGlvbixcbiAgSVN1cHBseURhdGFGdW5jdGlvbnMsXG4gIFN1cHBseURhdGEsXG4gIElFeGVjdXRlV29ya2Zsb3dJbmZvLFxuICBJTm9kZUV4ZWN1dGlvbkRhdGEsXG4gIElEYXRhT2JqZWN0LFxufSBmcm9tICduOG4td29ya2Zsb3cnO1xuaW1wb3J0IHsgQnVmZmVyV2luZG93TWVtb3J5IH0gZnJvbSAnbGFuZ2NoYWluL21lbW9yeSc7XG5pbXBvcnQgeyBCYXNlTGlzdENoYXRNZXNzYWdlSGlzdG9yeSB9IGZyb20gJ0BsYW5nY2hhaW4vY29yZS9jaGF0X2hpc3RvcnknO1xuaW1wb3J0IHtcbiAgQmFzZU1lc3NhZ2UsXG4gIEh1bWFuTWVzc2FnZSxcbiAgQUlNZXNzYWdlLFxuICBTeXN0ZW1NZXNzYWdlLFxufSBmcm9tICdAbGFuZ2NoYWluL2NvcmUvbWVzc2FnZXMnO1xuXG50eXBlIFdvcmtmbG93RXhlY3V0b3IgPSAoZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pID0+IFByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuXG5jbGFzcyBXb3JrZmxvd0NoYXRIaXN0b3J5IGV4dGVuZHMgQmFzZUxpc3RDaGF0TWVzc2FnZUhpc3Rvcnkge1xuICBsY19uYW1lc3BhY2UgPSBbJ2xhbmdjaGFpbicsICdzdG9yZXMnLCAnbWVzc2FnZScsICd3b3JrZmxvdyddO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZXhlY3V0ZVdvcmtmbG93OiBXb3JrZmxvd0V4ZWN1dG9yLFxuICAgIHByaXZhdGUgc2Vzc2lvbklkOiBzdHJpbmcsXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBhc3luYyBnZXRNZXNzYWdlcygpOiBQcm9taXNlPEJhc2VNZXNzYWdlW10+IHtcbiAgICBjb25zb2xlLmxvZygnW1dvcmtmbG93Q2hhdEhpc3RvcnldIGdldE1lc3NhZ2VzIGNhbGxlZCBmb3Igc2Vzc2lvbjonLCB0aGlzLnNlc3Npb25JZCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZXhlY3V0ZVdvcmtmbG93KHtcbiAgICAgICAgYWN0aW9uOiAnZ2V0JyxcbiAgICAgICAgc2Vzc2lvbklkOiB0aGlzLnNlc3Npb25JZCxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBtZXNzYWdlcyA9IChyZXN1bHQ/Lm1lc3NhZ2VzIGFzIEFycmF5PHsgdHlwZTogc3RyaW5nOyBjb250ZW50OiBzdHJpbmcgfT4pID8/IFtdO1xuICAgICAgY29uc29sZS5sb2coJ1tXb3JrZmxvd0NoYXRIaXN0b3J5XSBHb3QgbWVzc2FnZXM6JywgbWVzc2FnZXMubGVuZ3RoKTtcblxuICAgICAgcmV0dXJuIG1lc3NhZ2VzLm1hcCgobSkgPT4ge1xuICAgICAgICBpZiAobS50eXBlID09PSAnaHVtYW4nKSByZXR1cm4gbmV3IEh1bWFuTWVzc2FnZShtLmNvbnRlbnQpO1xuICAgICAgICBpZiAobS50eXBlID09PSAnc3lzdGVtJykgcmV0dXJuIG5ldyBTeXN0ZW1NZXNzYWdlKG0uY29udGVudCk7XG4gICAgICAgIHJldHVybiBuZXcgQUlNZXNzYWdlKG0uY29udGVudCk7XG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignW1dvcmtmbG93Q2hhdEhpc3RvcnldIGdldE1lc3NhZ2VzIGVycm9yOicsIGVycm9yKTtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBhZGRNZXNzYWdlKG1lc3NhZ2U6IEJhc2VNZXNzYWdlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc29sZS5sb2coJ1tXb3JrZmxvd0NoYXRIaXN0b3J5XSBhZGRNZXNzYWdlIGNhbGxlZCBmb3Igc2Vzc2lvbjonLCB0aGlzLnNlc3Npb25JZCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHR5cGUgPSBtZXNzYWdlLl9nZXRUeXBlKCkgPT09ICdodW1hbicgPyAnaHVtYW4nIDogJ2FpJztcblxuICAgICAgYXdhaXQgdGhpcy5leGVjdXRlV29ya2Zsb3coe1xuICAgICAgICBhY3Rpb246ICdhZGQnLFxuICAgICAgICBzZXNzaW9uSWQ6IHRoaXMuc2Vzc2lvbklkLFxuICAgICAgICBtZXNzYWdlOiB7XG4gICAgICAgICAgdHlwZSxcbiAgICAgICAgICBjb250ZW50OiBtZXNzYWdlLmNvbnRlbnQsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIGNvbnNvbGUubG9nKCdbV29ya2Zsb3dDaGF0SGlzdG9yeV0gTWVzc2FnZSBhZGRlZCBzdWNjZXNzZnVsbHknKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignW1dvcmtmbG93Q2hhdEhpc3RvcnldIGFkZE1lc3NhZ2UgZXJyb3I6JywgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGFkZE1lc3NhZ2VzKG1lc3NhZ2VzOiBCYXNlTWVzc2FnZVtdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgZm9yIChjb25zdCBtZXNzYWdlIG9mIG1lc3NhZ2VzKSB7XG4gICAgICBhd2FpdCB0aGlzLmFkZE1lc3NhZ2UobWVzc2FnZSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgY2xlYXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc29sZS5sb2coJ1tXb3JrZmxvd0NoYXRIaXN0b3J5XSBjbGVhciBjYWxsZWQgZm9yIHNlc3Npb246JywgdGhpcy5zZXNzaW9uSWQpO1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLmV4ZWN1dGVXb3JrZmxvdyh7XG4gICAgICAgIGFjdGlvbjogJ2NsZWFyJyxcbiAgICAgICAgc2Vzc2lvbklkOiB0aGlzLnNlc3Npb25JZCxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdbV29ya2Zsb3dDaGF0SGlzdG9yeV0gY2xlYXIgZXJyb3I6JywgZXJyb3IpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTWVtb3J5V29ya2Zsb3cgaW1wbGVtZW50cyBJTm9kZVR5cGUge1xuICBkZXNjcmlwdGlvbjogSU5vZGVUeXBlRGVzY3JpcHRpb24gPSB7XG4gICAgZGlzcGxheU5hbWU6ICdNZW1vcnkgV29ya2Zsb3cnLFxuICAgIG5hbWU6ICdtZW1vcnlXb3JrZmxvdycsXG4gICAgaWNvbjogJ2ZhOnByb2plY3QtZGlhZ3JhbScsXG4gICAgZ3JvdXA6IFsndHJhbnNmb3JtJ10sXG4gICAgdmVyc2lvbjogMSxcbiAgICBzdWJ0aXRsZTogJ1N1Yi1Xb3JrZmxvdyBNZW1vcnknLFxuICAgIGRlc2NyaXB0aW9uOiAnVXNlIGEgc3ViLXdvcmtmbG93IGFzIGNoYXQgbWVtb3J5IHN0b3JhZ2UnLFxuICAgIGRlZmF1bHRzOiB7XG4gICAgICBuYW1lOiAnTWVtb3J5IFdvcmtmbG93JyxcbiAgICB9LFxuICAgIGNvZGV4OiB7XG4gICAgICBjYXRlZ29yaWVzOiBbJ0FJJ10sXG4gICAgICBzdWJjYXRlZ29yaWVzOiB7XG4gICAgICAgIEFJOiBbJ01lbW9yeSddLFxuICAgICAgfSxcbiAgICAgIHJlc291cmNlczoge1xuICAgICAgICBwcmltYXJ5RG9jdW1lbnRhdGlvbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHVybDogJ2h0dHBzOi8vZ2l0aHViLmNvbS9maWxpcGV4eXovbjhuLW5vZGVzLW1lbW9yeScsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBpbnB1dHM6IFtdLFxuICAgIG91dHB1dHM6IFsnYWlfbWVtb3J5JyBhcyBjb25zdF0sXG4gICAgb3V0cHV0TmFtZXM6IFsnTWVtb3J5J10sXG4gICAgcHJvcGVydGllczogW1xuICAgICAge1xuICAgICAgICBkaXNwbGF5TmFtZTogJ1dvcmtmbG93JyxcbiAgICAgICAgbmFtZTogJ3dvcmtmbG93SWQnLFxuICAgICAgICB0eXBlOiAnd29ya2Zsb3dTZWxlY3RvcicsXG4gICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgd29ya2Zsb3cgdG8gZXhlY3V0ZSBmb3IgbWVtb3J5IG9wZXJhdGlvbnMnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdTZXNzaW9uIElEJyxcbiAgICAgICAgbmFtZTogJ3Nlc3Npb25JZCcsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkZWZhdWx0OiAnPXt7ICRqc29uLnNlc3Npb25JZCB9fScsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1VuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29udmVyc2F0aW9uIHNlc3Npb24nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgZGlzcGxheU5hbWU6ICdDb250ZXh0IFdpbmRvdyBMZW5ndGgnLFxuICAgICAgICBuYW1lOiAnY29udGV4dFdpbmRvd0xlbmd0aCcsXG4gICAgICAgIHR5cGU6ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0OiAxMCxcbiAgICAgICAgZGVzY3JpcHRpb246ICdOdW1iZXIgb2YgcHJldmlvdXMgbWVzc2FnZXMgdG8gaW5jbHVkZSBhcyBjb250ZXh0JyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGRpc3BsYXlOYW1lOiAnQWRkaXRpb25hbCBQYXJhbWV0ZXJzJyxcbiAgICAgICAgbmFtZTogJ2FkZGl0aW9uYWxQYXJhbWV0ZXJzJyxcbiAgICAgICAgcGxhY2Vob2xkZXI6ICdBZGQgUGFyYW1ldGVyJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdFeHRyYSBwYXJhbWV0ZXJzIHRvIHBhc3MgdG8gdGhlIHdvcmtmbG93JyxcbiAgICAgICAgdHlwZTogJ2ZpeGVkQ29sbGVjdGlvbicsXG4gICAgICAgIGRlZmF1bHQ6IHt9LFxuICAgICAgICB0eXBlT3B0aW9uczoge1xuICAgICAgICAgIG11bHRpcGxlVmFsdWVzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3ZhbHVlcycsXG4gICAgICAgICAgICBkaXNwbGF5TmFtZTogJ1ZhbHVlcycsXG4gICAgICAgICAgICB2YWx1ZXM6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXlOYW1lOiAnTmFtZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICcnLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnUGFyYW1ldGVyIG5hbWUnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICdWYWx1ZScsXG4gICAgICAgICAgICAgICAgbmFtZTogJ3ZhbHVlJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiAnJyxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1BhcmFtZXRlciB2YWx1ZScsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIF0sXG4gIH07XG5cbiAgYXN5bmMgc3VwcGx5RGF0YShcbiAgICB0aGlzOiBJU3VwcGx5RGF0YUZ1bmN0aW9ucyxcbiAgICBpdGVtSW5kZXg6IG51bWJlclxuICApOiBQcm9taXNlPFN1cHBseURhdGE+IHtcbiAgICBjb25zdCB3b3JrZmxvd0lkUGFyYW0gPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ3dvcmtmbG93SWQnLCBpdGVtSW5kZXgpIGFzIHN0cmluZyB8IHsgdmFsdWU6IHN0cmluZyB9O1xuICAgIGNvbnN0IHdvcmtmbG93SWQgPSB0eXBlb2Ygd29ya2Zsb3dJZFBhcmFtID09PSAnc3RyaW5nJyA/IHdvcmtmbG93SWRQYXJhbSA6IHdvcmtmbG93SWRQYXJhbS52YWx1ZTtcbiAgICBjb25zdCBzZXNzaW9uSWQgPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ3Nlc3Npb25JZCcsIGl0ZW1JbmRleCkgYXMgc3RyaW5nO1xuICAgIGNvbnN0IGNvbnRleHRXaW5kb3dMZW5ndGggPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ2NvbnRleHRXaW5kb3dMZW5ndGgnLCBpdGVtSW5kZXgsIDEwKSBhcyBudW1iZXI7XG4gICAgY29uc3QgYWRkaXRpb25hbFBhcmFtZXRlcnNSYXcgPSB0aGlzLmdldE5vZGVQYXJhbWV0ZXIoJ2FkZGl0aW9uYWxQYXJhbWV0ZXJzJywgaXRlbUluZGV4LCB7fSkgYXMge1xuICAgICAgdmFsdWVzPzogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfT47XG4gICAgfTtcblxuICAgIGNvbnN0IGFkZGl0aW9uYWxQYXJhbXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge307XG4gICAgaWYgKGFkZGl0aW9uYWxQYXJhbWV0ZXJzUmF3LnZhbHVlcykge1xuICAgICAgZm9yIChjb25zdCBwYXJhbSBvZiBhZGRpdGlvbmFsUGFyYW1ldGVyc1Jhdy52YWx1ZXMpIHtcbiAgICAgICAgaWYgKHBhcmFtLm5hbWUpIHtcbiAgICAgICAgICBhZGRpdGlvbmFsUGFyYW1zW3BhcmFtLm5hbWVdID0gcGFyYW0udmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zb2xlLmxvZygnW01lbW9yeSBXb3JrZmxvd10gQ3JlYXRpbmcgbWVtb3J5IGZvciBzZXNzaW9uOicsIHNlc3Npb25JZCk7XG5cbiAgICBjb25zdCBub2RlQ29udGV4dCA9IHRoaXM7XG5cbiAgICBjb25zdCBleGVjdXRlV29ya2Zsb3c6IFdvcmtmbG93RXhlY3V0b3IgPSBhc3luYyAoZGF0YSkgPT4ge1xuICAgICAgY29uc3Qgd29ya2Zsb3dJbmZvOiBJRXhlY3V0ZVdvcmtmbG93SW5mbyA9IHtcbiAgICAgICAgaWQ6IHdvcmtmbG93SWQsXG4gICAgICB9O1xuXG4gICAgICAvLyBNZXJnZSBhZGRpdGlvbmFsIHBhcmFtcyB3aXRoIGFjdGlvbiBkYXRhXG4gICAgICBjb25zdCBtZXJnZWREYXRhID0geyAuLi5hZGRpdGlvbmFsUGFyYW1zLCAuLi5kYXRhIH07XG4gICAgICBjb25zdCBpdGVtczogSU5vZGVFeGVjdXRpb25EYXRhW10gPSBbeyBqc29uOiBtZXJnZWREYXRhIGFzIElEYXRhT2JqZWN0IH1dO1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgbm9kZUNvbnRleHQuZXhlY3V0ZVdvcmtmbG93KHdvcmtmbG93SW5mbywgaXRlbXMpO1xuXG4gICAgICAvLyBHZXQgdGhlIG91dHB1dCBmcm9tIHRoZSBsYXN0IG5vZGVcbiAgICAgIGNvbnN0IGxhc3ROb2RlRGF0YSA9IHJlc3VsdC5kYXRhPy5bMF0/LlswXT8uanNvbjtcbiAgICAgIHJldHVybiBsYXN0Tm9kZURhdGEgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPz8ge307XG4gICAgfTtcblxuICAgIGNvbnN0IGNoYXRIaXN0b3J5ID0gbmV3IFdvcmtmbG93Q2hhdEhpc3RvcnkoZXhlY3V0ZVdvcmtmbG93LCBzZXNzaW9uSWQpO1xuXG4gICAgY29uc3QgbWVtb3J5ID0gbmV3IEJ1ZmZlcldpbmRvd01lbW9yeSh7XG4gICAgICBtZW1vcnlLZXk6ICdjaGF0X2hpc3RvcnknLFxuICAgICAgY2hhdEhpc3RvcnksXG4gICAgICByZXR1cm5NZXNzYWdlczogdHJ1ZSxcbiAgICAgIGlucHV0S2V5OiAnaW5wdXQnLFxuICAgICAgb3V0cHV0S2V5OiAnb3V0cHV0JyxcbiAgICAgIGs6IGNvbnRleHRXaW5kb3dMZW5ndGgsXG4gICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgcmVzcG9uc2U6IG1lbW9yeSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|