@gomomento/sdk-core 1.93.0 → 1.94.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/clients/ICacheClient.d.ts +3 -1
- package/dist/src/clients/ICacheClient.js +1 -1
- package/dist/src/clients/IMomentoCache.d.ts +3 -1
- package/dist/src/clients/IMomentoCache.js +1 -1
- package/dist/src/index.d.ts +3 -1
- package/dist/src/index.js +7 -3
- package/dist/src/internal/clients/cache/AbstractCacheClient.d.ts +25 -1
- package/dist/src/internal/clients/cache/AbstractCacheClient.js +31 -1
- package/dist/src/internal/clients/cache/IDataClient.d.ts +3 -1
- package/dist/src/internal/clients/cache/IDataClient.js +1 -1
- package/dist/src/internal/clients/cache/momento-cache.d.ts +3 -1
- package/dist/src/internal/clients/cache/momento-cache.js +7 -1
- package/dist/src/internal/clients/pubsub/AbstractPubsubClient.d.ts +17 -15
- package/dist/src/internal/clients/pubsub/AbstractPubsubClient.js +47 -26
- package/dist/src/internal/clients/pubsub/IPubsubClient.d.ts +0 -1
- package/dist/src/internal/clients/pubsub/IPubsubClient.js +1 -1
- package/dist/src/internal/subscription-state.d.ts +1 -0
- package/dist/src/internal/subscription-state.js +7 -1
- package/dist/src/internal/utils/validators.d.ts +1 -0
- package/dist/src/internal/utils/validators.js +8 -2
- package/dist/src/messages/responses/cache-set-length.d.ts +46 -0
- package/dist/src/messages/responses/cache-set-length.js +60 -0
- package/dist/src/messages/responses/cache-set-pop.d.ts +83 -0
- package/dist/src/messages/responses/cache-set-pop.js +113 -0
- package/dist/src/messages/responses/enums/cache/set/index.d.ts +10 -0
- package/dist/src/messages/responses/enums/cache/set/index.js +14 -2
- package/dist/src/messages/responses/enums/index.d.ts +1 -0
- package/dist/src/messages/responses/enums/index.js +2 -1
- package/dist/src/messages/responses/enums/webhook/index.d.ts +20 -0
- package/dist/src/messages/responses/enums/webhook/index.js +29 -0
- package/dist/src/messages/responses/topic-subscribe.d.ts +3 -1
- package/dist/src/messages/responses/topic-subscribe.js +4 -2
- package/dist/src/messages/responses/webhook/delete-webhook.d.ts +10 -43
- package/dist/src/messages/responses/webhook/delete-webhook.js +13 -34
- package/dist/src/messages/responses/webhook/get-webhook-secret.d.ts +14 -46
- package/dist/src/messages/responses/webhook/get-webhook-secret.js +14 -35
- package/dist/src/messages/responses/webhook/list-webhooks.d.ts +12 -45
- package/dist/src/messages/responses/webhook/list-webhooks.js +11 -35
- package/dist/src/messages/responses/webhook/put-webhook.d.ts +12 -45
- package/dist/src/messages/responses/webhook/put-webhook.js +11 -35
- package/dist/src/messages/responses/webhook/rotate-webhook-secret.d.ts +14 -46
- package/dist/src/messages/responses/webhook/rotate-webhook-secret.js +14 -35
- package/package.json +1 -1
@@ -1,3 +1,3 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSURhdGFDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW50ZXJuYWwvY2xpZW50cy9jYWNoZS9JRGF0YUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2FjaGVEZWxldGUsXG4gIENhY2hlR2V0LFxuICBDYWNoZUluY3JlbWVudCxcbiAgQ2FjaGVTZXQsXG4gIENhY2hlU2V0SWZOb3RFeGlzdHMsXG4gIENhY2hlU2V0RmV0Y2gsXG4gIENhY2hlU2V0QWRkRWxlbWVudHMsXG4gIENhY2hlU2V0Q29udGFpbnNFbGVtZW50LFxuICBDYWNoZVNldENvbnRhaW5zRWxlbWVudHMsXG4gIENhY2hlU2V0UmVtb3ZlRWxlbWVudHMsXG4gIENhY2hlTGlzdEZldGNoLFxuICBDYWNoZUxpc3RMZW5ndGgsXG4gIENhY2hlTGlzdFB1c2hGcm9udCxcbiAgQ2FjaGVMaXN0UHVzaEJhY2ssXG4gIENhY2hlTGlzdENvbmNhdGVuYXRlQmFjayxcbiAgQ2FjaGVMaXN0Q29uY2F0ZW5hdGVGcm9udCxcbiAgQ2FjaGVMaXN0UG9wQmFjayxcbiAgQ2FjaGVMaXN0UG9wRnJvbnQsXG4gIENhY2hlTGlzdFJlbW92ZVZhbHVlLFxuICBDYWNoZUxpc3RSZXRhaW4sXG4gIENhY2hlRGljdGlvbmFyeVNldEZpZWxkLFxuICBDYWNoZURpY3Rpb25hcnlTZXRGaWVsZHMsXG4gIENhY2hlRGljdGlvbmFyeUdldEZpZWxkLFxuICBDYWNoZURpY3Rpb25hcnlGZXRjaCxcbiAgQ2FjaGVEaWN0aW9uYXJ5SW5jcmVtZW50LFxuICBDYWNoZURpY3Rpb25hcnlSZW1vdmVGaWVsZCxcbiAgQ2FjaGVEaWN0aW9uYXJ5UmVtb3ZlRmllbGRzLFxuICBDYWNoZVNvcnRlZFNldEZldGNoLFxuICBDYWNoZVNvcnRlZFNldFB1dEVsZW1lbnQsXG4gIENhY2hlU29ydGVkU2V0UHV0RWxlbWVudHMsXG4gIENhY2hlU29ydGVkU2V0R2V0UmFuayxcbiAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZSxcbiAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZXMsXG4gIENhY2hlU29ydGVkU2V0SW5jcmVtZW50U2NvcmUsXG4gIENhY2hlU29ydGVkU2V0UmVtb3ZlRWxlbWVudCxcbiAgQ2FjaGVTb3J0ZWRTZXRMZW5ndGgsXG4gIENhY2hlU29ydGVkU2V0TGVuZ3RoQnlTY29yZSxcbiAgQ29sbGVjdGlvblR0bCxcbiAgU29ydGVkU2V0T3JkZXIsXG4gIENhY2hlSXRlbUdldFR5cGUsXG4gIENhY2hlSXRlbUdldFR0bCxcbiAgQ2FjaGVLZXlFeGlzdHMsXG4gIENhY2hlS2V5c0V4aXN0LFxuICBDYWNoZVVwZGF0ZVR0bCxcbiAgQ2FjaGVJbmNyZWFzZVR0bCxcbiAgQ2FjaGVEZWNyZWFzZVR0bCxcbiAgQ2FjaGVEaWN0aW9uYXJ5TGVuZ3RoLFxuICBDYWNoZURpY3Rpb25hcnlHZXRGaWVsZHMsXG4gIENhY2hlU2V0QmF0Y2gsXG4gIENhY2hlR2V0QmF0Y2gsXG4gIENhY2hlU2V0SWZBYnNlbnQsXG4gIENhY2hlU2V0SWZQcmVzZW50LFxuICBDYWNoZVNldElmRXF1YWwsXG4gIENhY2hlU2V0SWZOb3RFcXVhbCxcbiAgQ2FjaGVTZXRJZlByZXNlbnRBbmROb3RFcXVhbCxcbiAgQ2FjaGVTZXRJZkFic2VudE9yRXF1YWwsXG4gIENhY2hlU2V0U2FtcGxlLFxuICBDYWNoZVNvcnRlZFNldFJlbW92ZUVsZW1lbnRzLFxufSBmcm9tICcuLi8uLi8uLi9pbmRleCc7XG5pbXBvcnQge1xuICBHZXRCYXRjaENhbGxPcHRpb25zLFxuICBHZXRDYWxsT3B0aW9ucyxcbiAgU2V0QmF0Y2hDYWxsT3B0aW9ucyxcbiAgU2V0QmF0Y2hJdGVtLFxuICBTZXRDYWxsT3B0aW9ucyxcbiAgU2V0SWZBYnNlbnRDYWxsT3B0aW9ucyxcbn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElEYXRhQ2xpZW50IHtcbiAgZ2V0KFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogR2V0Q2FsbE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZUdldC5SZXNwb25zZT47XG4gIHNldChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldENhbGxPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXQuUmVzcG9uc2U+O1xuICBkZWxldGUoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVEZWxldGUuUmVzcG9uc2U+O1xuICBpbmNyZW1lbnQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgYW1vdW50OiBudW1iZXIsXG4gICAgdHRsPzogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVJbmNyZW1lbnQuUmVzcG9uc2U+O1xuICBzZXRJZk5vdEV4aXN0cyhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsPzogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZk5vdEV4aXN0cy5SZXNwb25zZT47XG4gIHNldElmQWJzZW50KFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogU2V0SWZBYnNlbnRDYWxsT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU2V0SWZBYnNlbnQuUmVzcG9uc2U+O1xuICBzZXRJZlByZXNlbnQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHR0bD86IG51bWJlclxuICApOiBQcm9taXNlPENhY2hlU2V0SWZQcmVzZW50LlJlc3BvbnNlPjtcbiAgc2V0SWZFcXVhbChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZXF1YWw6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsPzogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZkVxdWFsLlJlc3BvbnNlPjtcbiAgc2V0SWZOb3RFcXVhbChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgbm90RXF1YWw6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsPzogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZk5vdEVxdWFsLlJlc3BvbnNlPjtcbiAgc2V0SWZQcmVzZW50QW5kTm90RXF1YWwoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG5vdEVxdWFsOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHR0bD86IG51bWJlclxuICApOiBQcm9taXNlPENhY2hlU2V0SWZQcmVzZW50QW5kTm90RXF1YWwuUmVzcG9uc2U+O1xuICBzZXRJZkFic2VudE9yRXF1YWwoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGVxdWFsOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHR0bD86IG51bWJlclxuICApOiBQcm9taXNlPENhY2hlU2V0SWZBYnNlbnRPckVxdWFsLlJlc3BvbnNlPjtcbiAgZ2V0QmF0Y2goXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5czogQXJyYXk8c3RyaW5nIHwgVWludDhBcnJheT4sXG4gICAgb3B0aW9ucz86IEdldEJhdGNoQ2FsbE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZUdldEJhdGNoLlJlc3BvbnNlPjtcbiAgc2V0QmF0Y2goXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgaXRlbXM6XG4gICAgICB8IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IFVpbnQ4QXJyYXk+XG4gICAgICB8IE1hcDxzdHJpbmcgfCBVaW50OEFycmF5LCBzdHJpbmcgfCBVaW50OEFycmF5PlxuICAgICAgfCBBcnJheTxTZXRCYXRjaEl0ZW0+LFxuICAgIG9wdGlvbnM/OiBTZXRCYXRjaENhbGxPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXRCYXRjaC5SZXNwb25zZT47XG4gIHNldEZldGNoKGNhY2hlTmFtZTogc3RyaW5nLCBzZXROYW1lOiBzdHJpbmcpOiBQcm9taXNlPENhY2hlU2V0RmV0Y2guUmVzcG9uc2U+O1xuICBzZXRBZGRFbGVtZW50cyhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBzZXROYW1lOiBzdHJpbmcsXG4gICAgZWxlbWVudHM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdLFxuICAgIHR0bD86IENvbGxlY3Rpb25UdGxcbiAgKTogUHJvbWlzZTxDYWNoZVNldEFkZEVsZW1lbnRzLlJlc3BvbnNlPjtcbiAgc2V0Q29udGFpbnNFbGVtZW50KFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50OiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVTZXRDb250YWluc0VsZW1lbnQuUmVzcG9uc2U+O1xuICBzZXRDb250YWluc0VsZW1lbnRzKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50czogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZVNldENvbnRhaW5zRWxlbWVudHMuUmVzcG9uc2U+O1xuICBzZXRSZW1vdmVFbGVtZW50cyhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBzZXROYW1lOiBzdHJpbmcsXG4gICAgZWxlbWVudHM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdXG4gICk6IFByb21pc2U8Q2FjaGVTZXRSZW1vdmVFbGVtZW50cy5SZXNwb25zZT47XG4gIHNldFNhbXBsZShcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBzZXROYW1lOiBzdHJpbmcsXG4gICAgbGltaXQ6IG51bWJlclxuICApOiBQcm9taXNlPENhY2hlU2V0U2FtcGxlLlJlc3BvbnNlPjtcbiAgbGlzdEZldGNoKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGxpc3ROYW1lOiBzdHJpbmcsXG4gICAgc3RhcnRJbmRleD86IG51bWJlcixcbiAgICBlbmRJbmRleD86IG51bWJlclxuICApOiBQcm9taXNlPENhY2hlTGlzdEZldGNoLlJlc3BvbnNlPjtcbiAgbGlzdExlbmd0aChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBsaXN0TmFtZTogc3RyaW5nXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0TGVuZ3RoLlJlc3BvbnNlPjtcbiAgbGlzdFB1c2hGcm9udChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHRydW5jYXRlQmFja1RvU2l6ZT86IG51bWJlcixcbiAgICB0dGw/OiBDb2xsZWN0aW9uVHRsXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0UHVzaEZyb250LlJlc3BvbnNlPjtcbiAgbGlzdFB1c2hCYWNrKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGxpc3ROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHJ1bmNhdGVGcm9udFRvU2l6ZT86IG51bWJlcixcbiAgICB0dGw/OiBDb2xsZWN0aW9uVHRsXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0UHVzaEJhY2suUmVzcG9uc2U+O1xuICBsaXN0Q29uY2F0ZW5hdGVCYWNrKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGxpc3ROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWVzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXSxcbiAgICB0cnVuY2F0ZUZyb250VG9TaXplPzogbnVtYmVyLFxuICAgIHR0bD86IENvbGxlY3Rpb25UdGxcbiAgKTogUHJvbWlzZTxDYWNoZUxpc3RDb25jYXRlbmF0ZUJhY2suUmVzcG9uc2U+O1xuICBsaXN0Q29uY2F0ZW5hdGVGcm9udChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlczogc3RyaW5nW10gfCBVaW50OEFycmF5W10sXG4gICAgdHJ1bmNhdGVCYWNrVG9TaXplPzogbnVtYmVyLFxuICAgIHR0bD86IENvbGxlY3Rpb25UdGxcbiAgKTogUHJvbWlzZTxDYWNoZUxpc3RDb25jYXRlbmF0ZUZyb250LlJlc3BvbnNlPjtcbiAgbGlzdFBvcEJhY2soXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgbGlzdE5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPENhY2hlTGlzdFBvcEJhY2suUmVzcG9uc2U+O1xuICBsaXN0UG9wRnJvbnQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgbGlzdE5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPENhY2hlTGlzdFBvcEZyb250LlJlc3BvbnNlPjtcbiAgbGlzdFJlbW92ZVZhbHVlKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGxpc3ROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZUxpc3RSZW1vdmVWYWx1ZS5SZXNwb25zZT47XG4gIGxpc3RSZXRhaW4oXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgbGlzdE5hbWU6IHN0cmluZyxcbiAgICBzdGFydEluZGV4PzogbnVtYmVyLFxuICAgIGVuZEluZGV4PzogbnVtYmVyLFxuICAgIHR0bD86IENvbGxlY3Rpb25UdGxcbiAgKTogUHJvbWlzZTxDYWNoZUxpc3RSZXRhaW4uUmVzcG9uc2U+O1xuICBkaWN0aW9uYXJ5U2V0RmllbGQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZyxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB0dGw/OiBDb2xsZWN0aW9uVHRsXG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5U2V0RmllbGQuUmVzcG9uc2U+O1xuICBkaWN0aW9uYXJ5U2V0RmllbGRzKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZWxlbWVudHM6XG4gICAgICB8IE1hcDxzdHJpbmcgfCBVaW50OEFycmF5LCBzdHJpbmcgfCBVaW50OEFycmF5PlxuICAgICAgfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBVaW50OEFycmF5PlxuICAgICAgfCBBcnJheTxbc3RyaW5nLCBzdHJpbmcgfCBVaW50OEFycmF5XT4sXG4gICAgdHRsPzogQ29sbGVjdGlvblR0bFxuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeVNldEZpZWxkcy5SZXNwb25zZT47XG4gIGRpY3Rpb25hcnlHZXRGaWVsZChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5R2V0RmllbGQuUmVzcG9uc2U+O1xuICBkaWN0aW9uYXJ5R2V0RmllbGRzKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZmllbGRzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXVxuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeUdldEZpZWxkcy5SZXNwb25zZT47XG4gIGRpY3Rpb25hcnlGZXRjaChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nXG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5RmV0Y2guUmVzcG9uc2U+O1xuICBkaWN0aW9uYXJ5SW5jcmVtZW50KFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgYW1vdW50PzogbnVtYmVyLFxuICAgIHR0bD86IENvbGxlY3Rpb25UdGxcbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlJbmNyZW1lbnQuUmVzcG9uc2U+O1xuICBkaWN0aW9uYXJ5UmVtb3ZlRmllbGQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZyxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeVJlbW92ZUZpZWxkLlJlc3BvbnNlPjtcbiAgZGljdGlvbmFyeVJlbW92ZUZpZWxkcyhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGZpZWxkczogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlSZW1vdmVGaWVsZHMuUmVzcG9uc2U+O1xuICBkaWN0aW9uYXJ5TGVuZ3RoKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlMZW5ndGguUmVzcG9uc2U+O1xuICBzb3J0ZWRTZXRGZXRjaEJ5UmFuayhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgb3JkZXI/OiBTb3J0ZWRTZXRPcmRlcixcbiAgICBzdGFydFJhbms/OiBudW1iZXIsXG4gICAgZW5kUmFuaz86IG51bWJlclxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0RmV0Y2guUmVzcG9uc2U+O1xuICBzb3J0ZWRTZXRGZXRjaEJ5U2NvcmUoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIG9yZGVyPzogU29ydGVkU2V0T3JkZXIsXG4gICAgbWluU2NvcmU/OiBudW1iZXIsXG4gICAgbWF4U2NvcmU/OiBudW1iZXIsXG4gICAgb2Zmc2V0PzogbnVtYmVyLFxuICAgIGNvdW50PzogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRGZXRjaC5SZXNwb25zZT47XG4gIHNvcnRlZFNldFB1dEVsZW1lbnQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHNjb3JlOiBudW1iZXIsXG4gICAgdHRsPzogQ29sbGVjdGlvblR0bFxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0UHV0RWxlbWVudC5SZXNwb25zZT47XG4gIHNvcnRlZFNldFB1dEVsZW1lbnRzKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50czpcbiAgICAgIHwgTWFwPHN0cmluZyB8IFVpbnQ4QXJyYXksIG51bWJlcj5cbiAgICAgIHwgUmVjb3JkPHN0cmluZywgbnVtYmVyPlxuICAgICAgfCBBcnJheTxbc3RyaW5nLCBudW1iZXJdPixcbiAgICB0dGw/OiBDb2xsZWN0aW9uVHRsXG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRQdXRFbGVtZW50cy5SZXNwb25zZT47XG4gIHNvcnRlZFNldEdldFJhbmsoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRHZXRSYW5rLlJlc3BvbnNlPjtcbiAgc29ydGVkU2V0R2V0U2NvcmUoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRHZXRTY29yZS5SZXNwb25zZT47XG4gIHNvcnRlZFNldEdldFNjb3JlcyhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWVzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXVxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0R2V0U2NvcmVzLlJlc3BvbnNlPjtcbiAgc29ydGVkU2V0SW5jcmVtZW50U2NvcmUoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGFtb3VudD86IG51bWJlcixcbiAgICB0dGw/OiBDb2xsZWN0aW9uVHRsXG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRJbmNyZW1lbnRTY29yZS5SZXNwb25zZT47XG4gIHNvcnRlZFNldFJlbW92ZUVsZW1lbnQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50LlJlc3BvbnNlPjtcbiAgc29ydGVkU2V0UmVtb3ZlRWxlbWVudHMoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlczogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldFJlbW92ZUVsZW1lbnRzLlJlc3BvbnNlPjtcbiAgc29ydGVkU2V0TGVuZ3RoKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0TGVuZ3RoLlJlc3BvbnNlPjtcbiAgc29ydGVkU2V0TGVuZ3RoQnlTY29yZShcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgbWluU2NvcmU/OiBudW1iZXIsXG4gICAgbWF4U2NvcmU/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldExlbmd0aEJ5U2NvcmUuUmVzcG9uc2U+O1xuICBpdGVtR2V0VHlwZShcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZUl0ZW1HZXRUeXBlLlJlc3BvbnNlPjtcbiAgaXRlbUdldFR0bChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZUl0ZW1HZXRUdGwuUmVzcG9uc2U+O1xuICBrZXlFeGlzdHMoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVLZXlFeGlzdHMuUmVzcG9uc2U+O1xuICBrZXlzRXhpc3QoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5czogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZUtleXNFeGlzdC5SZXNwb25zZT47XG4gIHVwZGF0ZVR0bChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsTWlsbGlzZWNvbmRzOiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZVVwZGF0ZVR0bC5SZXNwb25zZT47XG4gIGluY3JlYXNlVHRsKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB0dGxNaWxsaXNlY29uZHM6IG51bWJlclxuICApOiBQcm9taXNlPENhY2hlSW5jcmVhc2VUdGwuUmVzcG9uc2U+O1xuICBkZWNyZWFzZVR0bChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsTWlsbGlzZWNvbmRzOiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZURlY3JlYXNlVHRsLlJlc3BvbnNlPjtcbiAgY2xvc2UoKTogdm9pZDtcbn1cbiJdfQ==
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSURhdGFDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW50ZXJuYWwvY2xpZW50cy9jYWNoZS9JRGF0YUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2FjaGVEZWxldGUsXG4gIENhY2hlR2V0LFxuICBDYWNoZUluY3JlbWVudCxcbiAgQ2FjaGVTZXQsXG4gIENhY2hlU2V0SWZOb3RFeGlzdHMsXG4gIENhY2hlU2V0RmV0Y2gsXG4gIENhY2hlU2V0QWRkRWxlbWVudHMsXG4gIENhY2hlU2V0Q29udGFpbnNFbGVtZW50LFxuICBDYWNoZVNldENvbnRhaW5zRWxlbWVudHMsXG4gIENhY2hlU2V0UmVtb3ZlRWxlbWVudHMsXG4gIENhY2hlTGlzdEZldGNoLFxuICBDYWNoZUxpc3RMZW5ndGgsXG4gIENhY2hlTGlzdFB1c2hGcm9udCxcbiAgQ2FjaGVMaXN0UHVzaEJhY2ssXG4gIENhY2hlTGlzdENvbmNhdGVuYXRlQmFjayxcbiAgQ2FjaGVMaXN0Q29uY2F0ZW5hdGVGcm9udCxcbiAgQ2FjaGVMaXN0UG9wQmFjayxcbiAgQ2FjaGVMaXN0UG9wRnJvbnQsXG4gIENhY2hlTGlzdFJlbW92ZVZhbHVlLFxuICBDYWNoZUxpc3RSZXRhaW4sXG4gIENhY2hlRGljdGlvbmFyeVNldEZpZWxkLFxuICBDYWNoZURpY3Rpb25hcnlTZXRGaWVsZHMsXG4gIENhY2hlRGljdGlvbmFyeUdldEZpZWxkLFxuICBDYWNoZURpY3Rpb25hcnlGZXRjaCxcbiAgQ2FjaGVEaWN0aW9uYXJ5SW5jcmVtZW50LFxuICBDYWNoZURpY3Rpb25hcnlSZW1vdmVGaWVsZCxcbiAgQ2FjaGVEaWN0aW9uYXJ5UmVtb3ZlRmllbGRzLFxuICBDYWNoZVNvcnRlZFNldEZldGNoLFxuICBDYWNoZVNvcnRlZFNldFB1dEVsZW1lbnQsXG4gIENhY2hlU29ydGVkU2V0UHV0RWxlbWVudHMsXG4gIENhY2hlU29ydGVkU2V0R2V0UmFuayxcbiAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZSxcbiAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZXMsXG4gIENhY2hlU29ydGVkU2V0SW5jcmVtZW50U2NvcmUsXG4gIENhY2hlU29ydGVkU2V0UmVtb3ZlRWxlbWVudCxcbiAgQ2FjaGVTb3J0ZWRTZXRMZW5ndGgsXG4gIENhY2hlU29ydGVkU2V0TGVuZ3RoQnlTY29yZSxcbiAgQ29sbGVjdGlvblR0bCxcbiAgU29ydGVkU2V0T3JkZXIsXG4gIENhY2hlSXRlbUdldFR5cGUsXG4gIENhY2hlSXRlbUdldFR0bCxcbiAgQ2FjaGVLZXlFeGlzdHMsXG4gIENhY2hlS2V5c0V4aXN0LFxuICBDYWNoZVVwZGF0ZVR0bCxcbiAgQ2FjaGVJbmNyZWFzZVR0bCxcbiAgQ2FjaGVEZWNyZWFzZVR0bCxcbiAgQ2FjaGVEaWN0aW9uYXJ5TGVuZ3RoLFxuICBDYWNoZURpY3Rpb25hcnlHZXRGaWVsZHMsXG4gIENhY2hlU2V0QmF0Y2gsXG4gIENhY2hlR2V0QmF0Y2gsXG4gIENhY2hlU2V0SWZBYnNlbnQsXG4gIENhY2hlU2V0SWZQcmVzZW50LFxuICBDYWNoZVNldElmRXF1YWwsXG4gIENhY2hlU2V0SWZOb3RFcXVhbCxcbiAgQ2FjaGVTZXRJZlByZXNlbnRBbmROb3RFcXVhbCxcbiAgQ2FjaGVTZXRJZkFic2VudE9yRXF1YWwsXG4gIENhY2hlU2V0U2FtcGxlLFxuICBDYWNoZVNvcnRlZFNldFJlbW92ZUVsZW1lbnRzLFxuICBDYWNoZVNldFBvcCxcbiAgQ2FjaGVTZXRMZW5ndGgsXG59IGZyb20gJy4uLy4uLy4uL2luZGV4JztcbmltcG9ydCB7XG4gIEdldEJhdGNoQ2FsbE9wdGlvbnMsXG4gIEdldENhbGxPcHRpb25zLFxuICBTZXRCYXRjaENhbGxPcHRpb25zLFxuICBTZXRCYXRjaEl0ZW0sXG4gIFNldENhbGxPcHRpb25zLFxuICBTZXRJZkFic2VudENhbGxPcHRpb25zLFxufSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSURhdGFDbGllbnQge1xuICBnZXQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG9wdGlvbnM/OiBHZXRDYWxsT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlR2V0LlJlc3BvbnNlPjtcbiAgc2V0KFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogU2V0Q2FsbE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldC5SZXNwb25zZT47XG4gIGRlbGV0ZShcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZURlbGV0ZS5SZXNwb25zZT47XG4gIGluY3JlbWVudChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBhbW91bnQ6IG51bWJlcixcbiAgICB0dGw/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZUluY3JlbWVudC5SZXNwb25zZT47XG4gIHNldElmTm90RXhpc3RzKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB0dGw/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZVNldElmTm90RXhpc3RzLlJlc3BvbnNlPjtcbiAgc2V0SWZBYnNlbnQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG9wdGlvbnM/OiBTZXRJZkFic2VudENhbGxPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZkFic2VudC5SZXNwb25zZT47XG4gIHNldElmUHJlc2VudChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsPzogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZlByZXNlbnQuUmVzcG9uc2U+O1xuICBzZXRJZkVxdWFsKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBlcXVhbDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB0dGw/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZVNldElmRXF1YWwuUmVzcG9uc2U+O1xuICBzZXRJZk5vdEVxdWFsKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBub3RFcXVhbDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB0dGw/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZVNldElmTm90RXF1YWwuUmVzcG9uc2U+O1xuICBzZXRJZlByZXNlbnRBbmROb3RFcXVhbChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgbm90RXF1YWw6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsPzogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZlByZXNlbnRBbmROb3RFcXVhbC5SZXNwb25zZT47XG4gIHNldElmQWJzZW50T3JFcXVhbChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZXF1YWw6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsPzogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZkFic2VudE9yRXF1YWwuUmVzcG9uc2U+O1xuICBnZXRCYXRjaChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXlzOiBBcnJheTxzdHJpbmcgfCBVaW50OEFycmF5PixcbiAgICBvcHRpb25zPzogR2V0QmF0Y2hDYWxsT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlR2V0QmF0Y2guUmVzcG9uc2U+O1xuICBzZXRCYXRjaChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBpdGVtczpcbiAgICAgIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgVWludDhBcnJheT5cbiAgICAgIHwgTWFwPHN0cmluZyB8IFVpbnQ4QXJyYXksIHN0cmluZyB8IFVpbnQ4QXJyYXk+XG4gICAgICB8IEFycmF5PFNldEJhdGNoSXRlbT4sXG4gICAgb3B0aW9ucz86IFNldEJhdGNoQ2FsbE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldEJhdGNoLlJlc3BvbnNlPjtcbiAgc2V0RmV0Y2goY2FjaGVOYW1lOiBzdHJpbmcsIHNldE5hbWU6IHN0cmluZyk6IFByb21pc2U8Q2FjaGVTZXRGZXRjaC5SZXNwb25zZT47XG4gIHNldEFkZEVsZW1lbnRzKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50czogc3RyaW5nW10gfCBVaW50OEFycmF5W10sXG4gICAgdHRsPzogQ29sbGVjdGlvblR0bFxuICApOiBQcm9taXNlPENhY2hlU2V0QWRkRWxlbWVudHMuUmVzcG9uc2U+O1xuICBzZXRDb250YWluc0VsZW1lbnQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc2V0TmFtZTogc3RyaW5nLFxuICAgIGVsZW1lbnQ6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZVNldENvbnRhaW5zRWxlbWVudC5SZXNwb25zZT47XG4gIHNldENvbnRhaW5zRWxlbWVudHMoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc2V0TmFtZTogc3RyaW5nLFxuICAgIGVsZW1lbnRzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXVxuICApOiBQcm9taXNlPENhY2hlU2V0Q29udGFpbnNFbGVtZW50cy5SZXNwb25zZT47XG4gIHNldFJlbW92ZUVsZW1lbnRzKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50czogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZVNldFJlbW92ZUVsZW1lbnRzLlJlc3BvbnNlPjtcbiAgc2V0U2FtcGxlKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNldE5hbWU6IHN0cmluZyxcbiAgICBsaW1pdDogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVTZXRTYW1wbGUuUmVzcG9uc2U+O1xuICBzZXRQb3AoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc2V0TmFtZTogc3RyaW5nLFxuICAgIGNvdW50OiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZVNldFBvcC5SZXNwb25zZT47XG4gIHNldExlbmd0aChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBzZXROYW1lOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxDYWNoZVNldExlbmd0aC5SZXNwb25zZT47XG4gIGxpc3RGZXRjaChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHN0YXJ0SW5kZXg/OiBudW1iZXIsXG4gICAgZW5kSW5kZXg/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZUxpc3RGZXRjaC5SZXNwb25zZT47XG4gIGxpc3RMZW5ndGgoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgbGlzdE5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPENhY2hlTGlzdExlbmd0aC5SZXNwb25zZT47XG4gIGxpc3RQdXNoRnJvbnQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgbGlzdE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB0cnVuY2F0ZUJhY2tUb1NpemU/OiBudW1iZXIsXG4gICAgdHRsPzogQ29sbGVjdGlvblR0bFxuICApOiBQcm9taXNlPENhY2hlTGlzdFB1c2hGcm9udC5SZXNwb25zZT47XG4gIGxpc3RQdXNoQmFjayhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHRydW5jYXRlRnJvbnRUb1NpemU/OiBudW1iZXIsXG4gICAgdHRsPzogQ29sbGVjdGlvblR0bFxuICApOiBQcm9taXNlPENhY2hlTGlzdFB1c2hCYWNrLlJlc3BvbnNlPjtcbiAgbGlzdENvbmNhdGVuYXRlQmFjayhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlczogc3RyaW5nW10gfCBVaW50OEFycmF5W10sXG4gICAgdHJ1bmNhdGVGcm9udFRvU2l6ZT86IG51bWJlcixcbiAgICB0dGw/OiBDb2xsZWN0aW9uVHRsXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0Q29uY2F0ZW5hdGVCYWNrLlJlc3BvbnNlPjtcbiAgbGlzdENvbmNhdGVuYXRlRnJvbnQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgbGlzdE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZXM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdLFxuICAgIHRydW5jYXRlQmFja1RvU2l6ZT86IG51bWJlcixcbiAgICB0dGw/OiBDb2xsZWN0aW9uVHRsXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0Q29uY2F0ZW5hdGVGcm9udC5SZXNwb25zZT47XG4gIGxpc3RQb3BCYWNrKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGxpc3ROYW1lOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxDYWNoZUxpc3RQb3BCYWNrLlJlc3BvbnNlPjtcbiAgbGlzdFBvcEZyb250KFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGxpc3ROYW1lOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxDYWNoZUxpc3RQb3BGcm9udC5SZXNwb25zZT47XG4gIGxpc3RSZW1vdmVWYWx1ZShcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVMaXN0UmVtb3ZlVmFsdWUuUmVzcG9uc2U+O1xuICBsaXN0UmV0YWluKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGxpc3ROYW1lOiBzdHJpbmcsXG4gICAgc3RhcnRJbmRleD86IG51bWJlcixcbiAgICBlbmRJbmRleD86IG51bWJlcixcbiAgICB0dGw/OiBDb2xsZWN0aW9uVHRsXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0UmV0YWluLlJlc3BvbnNlPjtcbiAgZGljdGlvbmFyeVNldEZpZWxkKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsPzogQ29sbGVjdGlvblR0bFxuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeVNldEZpZWxkLlJlc3BvbnNlPjtcbiAgZGljdGlvbmFyeVNldEZpZWxkcyhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGVsZW1lbnRzOlxuICAgICAgfCBNYXA8c3RyaW5nIHwgVWludDhBcnJheSwgc3RyaW5nIHwgVWludDhBcnJheT5cbiAgICAgIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgVWludDhBcnJheT5cbiAgICAgIHwgQXJyYXk8W3N0cmluZywgc3RyaW5nIHwgVWludDhBcnJheV0+LFxuICAgIHR0bD86IENvbGxlY3Rpb25UdGxcbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlTZXRGaWVsZHMuUmVzcG9uc2U+O1xuICBkaWN0aW9uYXJ5R2V0RmllbGQoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZyxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeUdldEZpZWxkLlJlc3BvbnNlPjtcbiAgZGljdGlvbmFyeUdldEZpZWxkcyhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGZpZWxkczogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlHZXRGaWVsZHMuUmVzcG9uc2U+O1xuICBkaWN0aW9uYXJ5RmV0Y2goXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeUZldGNoLlJlc3BvbnNlPjtcbiAgZGljdGlvbmFyeUluY3JlbWVudChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGFtb3VudD86IG51bWJlcixcbiAgICB0dGw/OiBDb2xsZWN0aW9uVHRsXG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5SW5jcmVtZW50LlJlc3BvbnNlPjtcbiAgZGljdGlvbmFyeVJlbW92ZUZpZWxkKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlSZW1vdmVGaWVsZC5SZXNwb25zZT47XG4gIGRpY3Rpb25hcnlSZW1vdmVGaWVsZHMoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZyxcbiAgICBmaWVsZHM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdXG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5UmVtb3ZlRmllbGRzLlJlc3BvbnNlPjtcbiAgZGljdGlvbmFyeUxlbmd0aChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nXG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5TGVuZ3RoLlJlc3BvbnNlPjtcbiAgc29ydGVkU2V0RmV0Y2hCeVJhbmsoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIG9yZGVyPzogU29ydGVkU2V0T3JkZXIsXG4gICAgc3RhcnRSYW5rPzogbnVtYmVyLFxuICAgIGVuZFJhbms/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldEZldGNoLlJlc3BvbnNlPjtcbiAgc29ydGVkU2V0RmV0Y2hCeVNjb3JlKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICBvcmRlcj86IFNvcnRlZFNldE9yZGVyLFxuICAgIG1pblNjb3JlPzogbnVtYmVyLFxuICAgIG1heFNjb3JlPzogbnVtYmVyLFxuICAgIG9mZnNldD86IG51bWJlcixcbiAgICBjb3VudD86IG51bWJlclxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0RmV0Y2guUmVzcG9uc2U+O1xuICBzb3J0ZWRTZXRQdXRFbGVtZW50KFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBzY29yZTogbnVtYmVyLFxuICAgIHR0bD86IENvbGxlY3Rpb25UdGxcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldFB1dEVsZW1lbnQuUmVzcG9uc2U+O1xuICBzb3J0ZWRTZXRQdXRFbGVtZW50cyhcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgZWxlbWVudHM6XG4gICAgICB8IE1hcDxzdHJpbmcgfCBVaW50OEFycmF5LCBudW1iZXI+XG4gICAgICB8IFJlY29yZDxzdHJpbmcsIG51bWJlcj5cbiAgICAgIHwgQXJyYXk8W3N0cmluZywgbnVtYmVyXT4sXG4gICAgdHRsPzogQ29sbGVjdGlvblR0bFxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0UHV0RWxlbWVudHMuUmVzcG9uc2U+O1xuICBzb3J0ZWRTZXRHZXRSYW5rKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0R2V0UmFuay5SZXNwb25zZT47XG4gIHNvcnRlZFNldEdldFNjb3JlKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0R2V0U2NvcmUuUmVzcG9uc2U+O1xuICBzb3J0ZWRTZXRHZXRTY29yZXMoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlczogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldEdldFNjb3Jlcy5SZXNwb25zZT47XG4gIHNvcnRlZFNldEluY3JlbWVudFNjb3JlKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBhbW91bnQ/OiBudW1iZXIsXG4gICAgdHRsPzogQ29sbGVjdGlvblR0bFxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0SW5jcmVtZW50U2NvcmUuUmVzcG9uc2U+O1xuICBzb3J0ZWRTZXRSZW1vdmVFbGVtZW50KFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0UmVtb3ZlRWxlbWVudC5SZXNwb25zZT47XG4gIHNvcnRlZFNldFJlbW92ZUVsZW1lbnRzKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZXM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdXG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50cy5SZXNwb25zZT47XG4gIHNvcnRlZFNldExlbmd0aChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldExlbmd0aC5SZXNwb25zZT47XG4gIHNvcnRlZFNldExlbmd0aEJ5U2NvcmUoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIG1pblNjb3JlPzogbnVtYmVyLFxuICAgIG1heFNjb3JlPzogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRMZW5ndGhCeVNjb3JlLlJlc3BvbnNlPjtcbiAgaXRlbUdldFR5cGUoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVJdGVtR2V0VHlwZS5SZXNwb25zZT47XG4gIGl0ZW1HZXRUdGwoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVJdGVtR2V0VHRsLlJlc3BvbnNlPjtcbiAga2V5RXhpc3RzKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlS2V5RXhpc3RzLlJlc3BvbnNlPjtcbiAga2V5c0V4aXN0KFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIGtleXM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdXG4gICk6IFByb21pc2U8Q2FjaGVLZXlzRXhpc3QuUmVzcG9uc2U+O1xuICB1cGRhdGVUdGwoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHR0bE1pbGxpc2Vjb25kczogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVVcGRhdGVUdGwuUmVzcG9uc2U+O1xuICBpbmNyZWFzZVR0bChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsTWlsbGlzZWNvbmRzOiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZUluY3JlYXNlVHRsLlJlc3BvbnNlPjtcbiAgZGVjcmVhc2VUdGwoXG4gICAgY2FjaGVOYW1lOiBzdHJpbmcsXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHR0bE1pbGxpc2Vjb25kczogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVEZWNyZWFzZVR0bC5SZXNwb25zZT47XG4gIGNsb3NlKCk6IHZvaWQ7XG59XG4iXX0=
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { CacheDelete, CacheGet, CacheIncrement, CacheSet, CacheSetIfNotExists, CacheSetIfAbsent, CacheSetIfPresent, CacheSetIfEqual, CacheSetIfNotEqual, CacheSetIfPresentAndNotEqual, CacheSetIfAbsentOrEqual, CacheSetFetch, CacheSetAddElements, CacheSetAddElement, CacheSetContainsElement, CacheSetContainsElements, CacheSetRemoveElements, CacheSetRemoveElement, CacheListFetch, CacheListLength, CacheListPushFront, CacheListPushBack, CacheListConcatenateBack, CacheListConcatenateFront, CacheListPopBack, CacheListPopFront, CacheListRemoveValue, CacheListRetain, CacheDictionarySetField, CacheDictionarySetFields, CacheDictionaryGetField, CacheDictionaryFetch, CacheDictionaryIncrement, CacheDictionaryRemoveField, CacheDictionaryRemoveFields, CacheSortedSetFetch, CacheSortedSetPutElement, CacheSortedSetPutElements, CacheSortedSetGetRank, CacheSortedSetGetScore, CacheSortedSetGetScores, CacheSortedSetIncrementScore, CacheSortedSetRemoveElement, CacheSortedSetLength, CacheSortedSetLengthByScore, CacheItemGetType, CacheItemGetTtl, CacheKeyExists, CacheKeysExist, CacheUpdateTtl, CacheIncreaseTtl, CacheDecreaseTtl, ICacheClient, CacheSortedSetRemoveElements, CacheDictionaryGetFields, CacheDictionaryLength, CacheGetBatch, CacheSetBatch, CacheSetSample } from '../../../index';
|
1
|
+
import { CacheDelete, CacheGet, CacheIncrement, CacheSet, CacheSetIfNotExists, CacheSetIfAbsent, CacheSetIfPresent, CacheSetIfEqual, CacheSetIfNotEqual, CacheSetIfPresentAndNotEqual, CacheSetIfAbsentOrEqual, CacheSetFetch, CacheSetAddElements, CacheSetAddElement, CacheSetContainsElement, CacheSetContainsElements, CacheSetRemoveElements, CacheSetRemoveElement, CacheListFetch, CacheListLength, CacheListPushFront, CacheListPushBack, CacheListConcatenateBack, CacheListConcatenateFront, CacheListPopBack, CacheListPopFront, CacheListRemoveValue, CacheListRetain, CacheDictionarySetField, CacheDictionarySetFields, CacheDictionaryGetField, CacheDictionaryFetch, CacheDictionaryIncrement, CacheDictionaryRemoveField, CacheDictionaryRemoveFields, CacheSortedSetFetch, CacheSortedSetPutElement, CacheSortedSetPutElements, CacheSortedSetGetRank, CacheSortedSetGetScore, CacheSortedSetGetScores, CacheSortedSetIncrementScore, CacheSortedSetRemoveElement, CacheSortedSetLength, CacheSortedSetLengthByScore, CacheItemGetType, CacheItemGetTtl, CacheKeyExists, CacheKeysExist, CacheUpdateTtl, CacheIncreaseTtl, CacheDecreaseTtl, ICacheClient, CacheSortedSetRemoveElements, CacheDictionaryGetFields, CacheDictionaryLength, CacheGetBatch, CacheSetBatch, CacheSetSample, CacheSetPop, CacheSetLength } from '../../../index';
|
2
2
|
import { ScalarCallOptions, ListFetchCallOptions, ListRetainCallOptions, BackTruncatableCallOptions, FrontTruncatableCallOptions, CollectionCallOptions, SortedSetFetchByRankCallOptions, SortedSetFetchByScoreCallOptions, SortedSetLengthByScoreCallOptions, SetBatchItem } from '../../../utils';
|
3
3
|
import { IMomentoCache } from '../../../clients/IMomentoCache';
|
4
4
|
export type SetOptions = ScalarCallOptions;
|
@@ -51,6 +51,8 @@ export declare class MomentoCache implements IMomentoCache {
|
|
51
51
|
setRemoveElement(setName: string, element: string | Uint8Array): Promise<CacheSetRemoveElement.Response>;
|
52
52
|
setRemoveElements(setName: string, elements: string[] | Uint8Array[]): Promise<CacheSetRemoveElements.Response>;
|
53
53
|
setSample(setName: string, limit: number): Promise<CacheSetSample.Response>;
|
54
|
+
setPop(setName: string, count: number): Promise<CacheSetPop.Response>;
|
55
|
+
setLength(setName: string): Promise<CacheSetLength.Response>;
|
54
56
|
listFetch(listName: string, options?: ListFetchCallOptions): Promise<CacheListFetch.Response>;
|
55
57
|
listLength(listName: string): Promise<CacheListLength.Response>;
|
56
58
|
listPushFront(listName: string, value: string | Uint8Array, options?: ListPushFrontOptions): Promise<CacheListPushFront.Response>;
|
@@ -69,6 +69,12 @@ class MomentoCache {
|
|
69
69
|
setSample(setName, limit) {
|
70
70
|
return this.cacheClient.setSample(this.cacheName, setName, limit);
|
71
71
|
}
|
72
|
+
setPop(setName, count) {
|
73
|
+
return this.cacheClient.setPop(this.cacheName, setName, count);
|
74
|
+
}
|
75
|
+
setLength(setName) {
|
76
|
+
return this.cacheClient.setLength(this.cacheName, setName);
|
77
|
+
}
|
72
78
|
listFetch(listName, options) {
|
73
79
|
return this.cacheClient.listFetch(this.cacheName, listName, options);
|
74
80
|
}
|
@@ -188,4 +194,4 @@ class MomentoCache {
|
|
188
194
|
}
|
189
195
|
}
|
190
196
|
exports.MomentoCache = MomentoCache;
|
191
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9tZW50by1jYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC9jbGllbnRzL2NhY2hlL21vbWVudG8tY2FjaGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBc0dBLE1BQWEsWUFBWTtJQUd2QixZQUFZLFdBQXlCLEVBQUUsU0FBaUI7UUFDdEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUNELEdBQUcsQ0FDRCxHQUF3QixFQUN4QixLQUEwQixFQUMxQixPQUFvQjtRQUVwQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBQ0QsTUFBTSxDQUFDLEdBQXdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBQ0QsU0FBUyxDQUNQLEtBQTBCLEVBQzFCLE1BQWMsRUFDZCxPQUEwQjtRQUUxQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBQ0QsY0FBYyxDQUNaLEdBQXdCLEVBQ3hCLEtBQTBCLEVBQzFCLE9BQStCO1FBRS9CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMs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LGVBQWUsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFDRCxXQUFXLENBQ1QsR0FBd0IsRUFDeEIsZUFBdUI7UUFFdkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBQ0QsV0FBVyxDQUNULEdBQXdCLEVBQ3hCLGVBQXVCO1FBRXZCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUNELEtBQUs7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FDRjtBQTlmRCxvQ0E4ZkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDYWNoZURlbGV0ZSxcbiAgQ2FjaGVHZXQsXG4gIENhY2hlSW5jcmVtZW50LFxuICBDYWNoZVNldCxcbiAgQ2FjaGVTZXRJZk5vdEV4aXN0cyxcbiAgQ2FjaGVTZXRJZkFic2VudCxcbiAgQ2FjaGVTZXRJZlByZXNlbnQsXG4gIENhY2hlU2V0SWZFcXVhbCxcbiAgQ2FjaGVTZXRJZk5vdEVxdWFsLFxuICBDYWNoZVNldElmUHJlc2VudEFuZE5vdEVxdWFsLFxuICBDYWNoZVNldElmQWJzZW50T3JFcXVhbCxcbiAgQ2FjaGVTZXRGZXRjaCxcbiAgQ2FjaGVTZXRBZGRFbGVtZW50cyxcbiAgQ2FjaGVTZXRBZGRFbGVtZW50LFxuICBDYWNoZVNldENvbnRhaW5zRWxlbWVudCxcbiAgQ2FjaGVTZXRDb250YWluc0VsZW1lbnRzLFxuICBDYWNoZVNldFJlbW92ZUVsZW1lbnRzLFxuICBDYWNoZVNldFJlbW92ZUVsZW1lbnQsXG4gIENhY2hlTGlzdEZldGNoLFxuICBDYWNoZUxpc3RMZW5ndGgsXG4gIENhY2hlTGlzdFB1c2hGcm9udCxcbiAgQ2FjaGVMaXN0UHVzaEJhY2ssXG4gIENhY2hlTGlzdENvbmNhdGVuYXRlQmFjayxcbiAgQ2FjaGVMaXN0Q29uY2F0ZW5hdGVGcm9udCxcbiAgQ2FjaGVMaXN0UG9wQmFjayxcbiAgQ2FjaGVMaXN0UG9wRnJvbnQsXG4gIENhY2hlTGlzdFJlbW92ZVZhbHVlLFxuICBDYWNoZUxpc3RSZXRhaW4sXG4gIENhY2hlRGljdGlvbmFyeVNldEZpZWxkLFxuICBDYWNoZURpY3Rpb25hcnlTZXRGaWVsZHMsXG4gIENhY2hlRGljdGlvbmFyeUdldEZpZWxkLFxuICBDYWNoZURpY3Rpb25hcnlGZXRjaCxcbiAgQ2FjaGVEaWN0aW9uYXJ5SW5jcmVtZW50LFxuICBDYWNoZURpY3Rpb25hcnlSZW1vdmVGaWVsZCxcbiAgQ2FjaGVEaWN0aW9uYXJ5UmVtb3ZlRmllbGRzLFxuICBDYWNoZVNvcnRlZFNldEZldGNoLFxuICBDYWNoZVNvcnRlZFNldFB1dEVsZW1lbnQsXG4gIENhY2hlU29ydGVkU2V0UHV0RWxlbWVudHMsXG4gIENhY2hlU29ydGVkU2V0R2V0UmFuayxcbiAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZSxcbiAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZXMsXG4gIENhY2hlU29ydGVkU2V0SW5jcmVtZW50U2NvcmUsXG4gIENhY2hlU29ydGVkU2V0UmVtb3ZlRWxlbWVudCxcbiAgQ2FjaGVTb3J0ZWRTZXRMZW5ndGgsXG4gIENhY2hlU29ydGVkU2V0TGVuZ3RoQnlTY29yZSxcbiAgQ2FjaGVJdGVtR2V0VHlwZSxcbiAgQ2FjaGVJdGVtR2V0VHRsLFxuICBDYWNoZUtleUV4aXN0cyxcbiAgQ2FjaGVLZXlzRXhpc3QsXG4gIENhY2hlVXBkYXRlVHRsLFxuICBDYWNoZUluY3JlYXNlVHRsLFxuICBDYWNoZURlY3JlYXNlVHRsLFxuICBJQ2FjaGVDbGllbnQsXG4gIENhY2hlU29ydGVkU2V0UmVtb3ZlRWxlbWVudHMsXG4gIENhY2hlRGljdGlvbmFyeUdldEZpZWxkcyxcbiAgQ2FjaGVEaWN0aW9uYXJ5TGVuZ3RoLFxuICBDYWNoZUdldEJhdGNoLFxuICBDYWNoZVNldEJhdGNoLFxuICBDYWNoZVNldFNhbXBsZSxcbn0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHtcbiAgU2NhbGFyQ2FsbE9wdGlvbnMsXG4gIExpc3RGZXRjaENhbGxPcHRpb25zLFxuICBMaXN0UmV0YWluQ2FsbE9wdGlvbnMsXG4gIEJhY2tUcnVuY2F0YWJsZUNhbGxPcHRpb25zLFxuICBGcm9udFRydW5jYXRhYmxlQ2FsbE9wdGlvbnMsXG4gIENvbGxlY3Rpb25DYWxsT3B0aW9ucyxcbiAgU29ydGVkU2V0RmV0Y2hCeVJhbmtDYWxsT3B0aW9ucyxcbiAgU29ydGVkU2V0RmV0Y2hCeVNjb3JlQ2FsbE9wdGlvbnMsXG4gIFNvcnRlZFNldExlbmd0aEJ5U2NvcmVDYWxsT3B0aW9ucyxcbiAgU2V0QmF0Y2hJdGVtLFxufSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5pbXBvcnQge0lNb21lbnRvQ2FjaGV9IGZyb20gJy4uLy4uLy4uL2NsaWVudHMvSU1vbWVudG9DYWNoZSc7XG5cbi8vIFR5cGUgYWxpYXNlcyB0byBkaWZmZXJlbnRpYXRlIHRoZSBkaWZmZXJlbnQgbWV0aG9kcycgb3B0aW9uYWwgYXJndW1lbnRzLlxuZXhwb3J0IHR5cGUgU2V0T3B0aW9ucyA9IFNjYWxhckNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU2V0SWZOb3RFeGlzdHNPcHRpb25zID0gU2NhbGFyQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTZXRJZkFic2VudE9wdGlvbnMgPSBTY2FsYXJDYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIFNldElmUHJlc2VudE9wdGlvbnMgPSBTY2FsYXJDYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIFNldElmRXF1YWxPcHRpb25zID0gU2NhbGFyQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTZXRJZk5vdEVxdWFsT3B0aW9ucyA9IFNjYWxhckNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU2V0SWZQcmVzZW50QW5kTm90RXF1YWxPcHRpb25zID0gU2NhbGFyQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTZXRJZkFic2VudE9yRXF1YWxPcHRpb25zID0gU2NhbGFyQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTZXRCYXRjaE9wdGlvbnMgPSBTY2FsYXJDYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIExpc3RDb25jYXRlbmF0ZUJhY2tPcHRpb25zID0gRnJvbnRUcnVuY2F0YWJsZUNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgTGlzdENvbmNhdGVuYXRlRnJvbnRPcHRpb25zID0gQmFja1RydW5jYXRhYmxlQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBMaXN0UHVzaEJhY2tPcHRpb25zID0gRnJvbnRUcnVuY2F0YWJsZUNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgTGlzdFB1c2hGcm9udE9wdGlvbnMgPSBCYWNrVHJ1bmNhdGFibGVDYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIFNldEFkZEVsZW1lbnRPcHRpb25zID0gQ29sbGVjdGlvbkNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU2V0QWRkRWxlbWVudHNPcHRpb25zID0gQ29sbGVjdGlvbkNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgRGljdGlvbmFyeVNldEZpZWxkT3B0aW9ucyA9IENvbGxlY3Rpb25DYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIERpY3Rpb25hcnlTZXRGaWVsZHNPcHRpb25zID0gQ29sbGVjdGlvbkNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgRGljdGlvbmFyeUluY3JlbWVudE9wdGlvbnMgPSBDb2xsZWN0aW9uQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBJbmNyZW1lbnRPcHRpb25zID0gU2NhbGFyQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTb3J0ZWRTZXRQdXRFbGVtZW50T3B0aW9ucyA9IENvbGxlY3Rpb25DYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIFNvcnRlZFNldFB1dEVsZW1lbnRzT3B0aW9ucyA9IENvbGxlY3Rpb25DYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIFNvcnRlZFNldEZldGNoQnlSYW5rT3B0aW9ucyA9IFNvcnRlZFNldEZldGNoQnlSYW5rQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTb3J0ZWRTZXRGZXRjaEJ5U2NvcmVPcHRpb25zID0gU29ydGVkU2V0RmV0Y2hCeVNjb3JlQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTb3J0ZWRTZXRJbmNyZW1lbnRPcHRpb25zID0gQ29sbGVjdGlvbkNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU29ydGVkU2V0TGVuZ3RoQnlTY29yZU9wdGlvbnMgPSBTb3J0ZWRTZXRMZW5ndGhCeVNjb3JlQ2FsbE9wdGlvbnM7XG5cbmV4cG9ydCBjbGFzcyBNb21lbnRvQ2FjaGUgaW1wbGVtZW50cyBJTW9tZW50b0NhY2hlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBjYWNoZUNsaWVudDogSUNhY2hlQ2xpZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IGNhY2hlTmFtZTogc3RyaW5nO1xuICBjb25zdHJ1Y3RvcihjYWNoZUNsaWVudDogSUNhY2hlQ2xpZW50LCBjYWNoZU5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuY2FjaGVDbGllbnQgPSBjYWNoZUNsaWVudDtcbiAgICB0aGlzLmNhY2hlTmFtZSA9IGNhY2hlTmFtZTtcbiAgfVxuXG4gIGdldChrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXkpOiBQcm9taXNlPENhY2hlR2V0LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuZ2V0KHRoaXMuY2FjaGVOYW1lLCBrZXkpO1xuICB9XG4gIHNldChcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNldCh0aGlzLmNhY2hlTmFtZSwga2V5LCB2YWx1ZSwgb3B0aW9ucyk7XG4gIH1cbiAgZGVsZXRlKGtleTogc3RyaW5nIHwgVWludDhBcnJheSk6IFByb21pc2U8Q2FjaGVEZWxldGUuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5kZWxldGUodGhpcy5jYWNoZU5hbWUsIGtleSk7XG4gIH1cbiAgaW5jcmVtZW50KFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGFtb3VudDogbnVtYmVyLFxuICAgIG9wdGlvbnM/OiBJbmNyZW1lbnRPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVJbmNyZW1lbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5pbmNyZW1lbnQodGhpcy5jYWNoZU5hbWUsIGZpZWxkLCBhbW91bnQsIG9wdGlvbnMpO1xuICB9XG4gIHNldElmTm90RXhpc3RzKFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogU2V0SWZOb3RFeGlzdHNPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZk5vdEV4aXN0cy5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNldElmTm90RXhpc3RzKHRoaXMuY2FjaGVOYW1lLCBrZXksIGZpZWxkLCBvcHRpb25zKTtcbiAgfVxuICBzZXRJZkFic2VudChcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldElmQWJzZW50T3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU2V0SWZBYnNlbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRJZkFic2VudCh0aGlzLmNhY2hlTmFtZSwga2V5LCBmaWVsZCwgb3B0aW9ucyk7XG4gIH1cbiAgc2V0SWZQcmVzZW50KFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogU2V0SWZQcmVzZW50T3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU2V0SWZQcmVzZW50LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0SWZQcmVzZW50KHRoaXMuY2FjaGVOYW1lLCBrZXksIHZhbHVlLCBvcHRpb25zKTtcbiAgfVxuICBzZXRJZkVxdWFsKFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBlcXVhbDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogU2V0SWZFcXVhbE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldElmRXF1YWwuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRJZkVxdWFsKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBrZXksXG4gICAgICB2YWx1ZSxcbiAgICAgIGVxdWFsLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgc2V0SWZOb3RFcXVhbChcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgbm90RXF1YWw6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldElmTm90RXF1YWxPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZk5vdEVxdWFsLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0SWZOb3RFcXVhbChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAga2V5LFxuICAgICAgdmFsdWUsXG4gICAgICBub3RFcXVhbCxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIHNldElmUHJlc2VudEFuZE5vdEVxdWFsKFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBub3RFcXVhbDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogU2V0SWZQcmVzZW50QW5kTm90RXF1YWxPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZlByZXNlbnRBbmROb3RFcXVhbC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNldElmUHJlc2VudEFuZE5vdEVxdWFsKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBrZXksXG4gICAgICB2YWx1ZSxcbiAgICAgIG5vdEVxdWFsLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgc2V0SWZBYnNlbnRPckVxdWFsKFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBlcXVhbDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogU2V0SWZBYnNlbnRPckVxdWFsT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU2V0SWZBYnNlbnRPckVxdWFsLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0SWZBYnNlbnRPckVxdWFsKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBrZXksXG4gICAgICB2YWx1ZSxcbiAgICAgIGVxdWFsLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgZ2V0QmF0Y2goa2V5czogc3RyaW5nW10gfCBVaW50OEFycmF5W10pOiBQcm9taXNlPENhY2hlR2V0QmF0Y2guUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5nZXRCYXRjaCh0aGlzLmNhY2hlTmFtZSwga2V5cyk7XG4gIH1cbiAgc2V0QmF0Y2goXG4gICAgaXRlbXM6XG4gICAgICB8IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IFVpbnQ4QXJyYXk+XG4gICAgICB8IE1hcDxzdHJpbmcgfCBVaW50OEFycmF5LCBzdHJpbmcgfCBVaW50OEFycmF5PlxuICAgICAgfCBBcnJheTxTZXRCYXRjaEl0ZW0+LFxuICAgIG9wdGlvbnM/OiBTZXRCYXRjaE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldEJhdGNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0QmF0Y2godGhpcy5jYWNoZU5hbWUsIGl0ZW1zLCBvcHRpb25zKTtcbiAgfVxuICBzZXRGZXRjaChzZXROYW1lOiBzdHJpbmcpOiBQcm9taXNlPENhY2hlU2V0RmV0Y2guUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRGZXRjaCh0aGlzLmNhY2hlTmFtZSwgc2V0TmFtZSk7XG4gIH1cbiAgc2V0QWRkRWxlbWVudChcbiAgICBzZXROYW1lOiBzdHJpbmcsXG4gICAgZWxlbWVudDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogU2V0QWRkRWxlbWVudE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldEFkZEVsZW1lbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRBZGRFbGVtZW50KFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzZXROYW1lLFxuICAgICAgZWxlbWVudCxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIHNldEFkZEVsZW1lbnRzKFxuICAgIHNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50czogc3RyaW5nW10gfCBVaW50OEFycmF5W10sXG4gICAgb3B0aW9ucz86IFNldEFkZEVsZW1lbnRzT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU2V0QWRkRWxlbWVudHMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRBZGRFbGVtZW50cyhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc2V0TmFtZSxcbiAgICAgIGVsZW1lbnRzLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgc2V0Q29udGFpbnNFbGVtZW50KFxuICAgIHNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50OiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVTZXRDb250YWluc0VsZW1lbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRDb250YWluc0VsZW1lbnQoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIHNldE5hbWUsXG4gICAgICBlbGVtZW50XG4gICAgKTtcbiAgfVxuICBzZXRDb250YWluc0VsZW1lbnRzKFxuICAgIHNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50czogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZVNldENvbnRhaW5zRWxlbWVudHMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRDb250YWluc0VsZW1lbnRzKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzZXROYW1lLFxuICAgICAgZWxlbWVudHNcbiAgICApO1xuICB9XG4gIHNldFJlbW92ZUVsZW1lbnQoXG4gICAgc2V0TmFtZTogc3RyaW5nLFxuICAgIGVsZW1lbnQ6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZVNldFJlbW92ZUVsZW1lbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRSZW1vdmVFbGVtZW50KHRoaXMuY2FjaGVOYW1lLCBzZXROYW1lLCBlbGVtZW50KTtcbiAgfVxuICBzZXRSZW1vdmVFbGVtZW50cyhcbiAgICBzZXROYW1lOiBzdHJpbmcsXG4gICAgZWxlbWVudHM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdXG4gICk6IFByb21pc2U8Q2FjaGVTZXRSZW1vdmVFbGVtZW50cy5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNldFJlbW92ZUVsZW1lbnRzKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzZXROYW1lLFxuICAgICAgZWxlbWVudHNcbiAgICApO1xuICB9XG4gIHNldFNhbXBsZShzZXROYW1lOiBzdHJpbmcsIGxpbWl0OiBudW1iZXIpOiBQcm9taXNlPENhY2hlU2V0U2FtcGxlLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0U2FtcGxlKHRoaXMuY2FjaGVOYW1lLCBzZXROYW1lLCBsaW1pdCk7XG4gIH1cbiAgbGlzdEZldGNoKFxuICAgIGxpc3ROYW1lOiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IExpc3RGZXRjaENhbGxPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0RmV0Y2guUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5saXN0RmV0Y2godGhpcy5jYWNoZU5hbWUsIGxpc3ROYW1lLCBvcHRpb25zKTtcbiAgfVxuICBsaXN0TGVuZ3RoKGxpc3ROYW1lOiBzdHJpbmcpOiBQcm9taXNlPENhY2hlTGlzdExlbmd0aC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50Lmxpc3RMZW5ndGgodGhpcy5jYWNoZU5hbWUsIGxpc3ROYW1lKTtcbiAgfVxuICBsaXN0UHVzaEZyb250KFxuICAgIGxpc3ROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IExpc3RQdXNoRnJvbnRPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0UHVzaEZyb250LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQubGlzdFB1c2hGcm9udChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgbGlzdE5hbWUsXG4gICAgICB2YWx1ZSxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIGxpc3RQdXNoQmFjayhcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG9wdGlvbnM/OiBMaXN0UHVzaEJhY2tPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0UHVzaEJhY2suUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5saXN0UHVzaEJhY2soXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIGxpc3ROYW1lLFxuICAgICAgdmFsdWUsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBsaXN0Q29uY2F0ZW5hdGVCYWNrKFxuICAgIGxpc3ROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWVzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXSxcbiAgICBvcHRpb25zPzogTGlzdENvbmNhdGVuYXRlQmFja09wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZUxpc3RDb25jYXRlbmF0ZUJhY2suUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5saXN0Q29uY2F0ZW5hdGVCYWNrKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBsaXN0TmFtZSxcbiAgICAgIHZhbHVlcyxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIGxpc3RDb25jYXRlbmF0ZUZyb250KFxuICAgIGxpc3ROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWVzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXSxcbiAgICBvcHRpb25zPzogTGlzdENvbmNhdGVuYXRlRnJvbnRPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0Q29uY2F0ZW5hdGVGcm9udC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50Lmxpc3RDb25jYXRlbmF0ZUZyb250KFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBsaXN0TmFtZSxcbiAgICAgIHZhbHVlcyxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIGxpc3RQb3BCYWNrKGxpc3ROYW1lOiBzdHJpbmcpOiBQcm9taXNlPENhY2hlTGlzdFBvcEJhY2suUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5saXN0UG9wQmFjayh0aGlzLmNhY2hlTmFtZSwgbGlzdE5hbWUpO1xuICB9XG4gIGxpc3RQb3BGcm9udChsaXN0TmFtZTogc3RyaW5nKTogUHJvbWlzZTxDYWNoZUxpc3RQb3BGcm9udC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50Lmxpc3RQb3BGcm9udCh0aGlzLmNhY2hlTmFtZSwgbGlzdE5hbWUpO1xuICB9XG4gIGxpc3RSZW1vdmVWYWx1ZShcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVMaXN0UmVtb3ZlVmFsdWUuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5saXN0UmVtb3ZlVmFsdWUodGhpcy5jYWNoZU5hbWUsIGxpc3ROYW1lLCB2YWx1ZSk7XG4gIH1cbiAgbGlzdFJldGFpbihcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiBMaXN0UmV0YWluQ2FsbE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZUxpc3RSZXRhaW4uUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5saXN0UmV0YWluKHRoaXMuY2FjaGVOYW1lLCBsaXN0TmFtZSwgb3B0aW9ucyk7XG4gIH1cbiAgZGljdGlvbmFyeVNldEZpZWxkKFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IERpY3Rpb25hcnlTZXRGaWVsZE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlTZXRGaWVsZC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmRpY3Rpb25hcnlTZXRGaWVsZChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgZGljdGlvbmFyeU5hbWUsXG4gICAgICBmaWVsZCxcbiAgICAgIHZhbHVlLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgZGljdGlvbmFyeVNldEZpZWxkcyhcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGVsZW1lbnRzOlxuICAgICAgfCBNYXA8c3RyaW5nIHwgVWludDhBcnJheSwgc3RyaW5nIHwgVWludDhBcnJheT5cbiAgICAgIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgVWludDhBcnJheT4sXG4gICAgb3B0aW9ucz86IERpY3Rpb25hcnlTZXRGaWVsZHNPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5U2V0RmllbGRzLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuZGljdGlvbmFyeVNldEZpZWxkcyhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgZGljdGlvbmFyeU5hbWUsXG4gICAgICBlbGVtZW50cyxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIGRpY3Rpb25hcnlHZXRGaWVsZChcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5R2V0RmllbGQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5kaWN0aW9uYXJ5R2V0RmllbGQoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIGRpY3Rpb25hcnlOYW1lLFxuICAgICAgZmllbGRcbiAgICApO1xuICB9XG4gIGRpY3Rpb25hcnlHZXRGaWVsZHMoXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZyxcbiAgICBmaWVsZHM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdXG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5R2V0RmllbGRzLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuZGljdGlvbmFyeUdldEZpZWxkcyhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgZGljdGlvbmFyeU5hbWUsXG4gICAgICBmaWVsZHNcbiAgICApO1xuICB9XG4gIGRpY3Rpb25hcnlGZXRjaChcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nXG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5RmV0Y2guUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5kaWN0aW9uYXJ5RmV0Y2godGhpcy5jYWNoZU5hbWUsIGRpY3Rpb25hcnlOYW1lKTtcbiAgfVxuICBkaWN0aW9uYXJ5SW5jcmVtZW50KFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgYW1vdW50PzogbnVtYmVyLFxuICAgIG9wdGlvbnM/OiBEaWN0aW9uYXJ5SW5jcmVtZW50T3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeUluY3JlbWVudC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmRpY3Rpb25hcnlJbmNyZW1lbnQoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIGRpY3Rpb25hcnlOYW1lLFxuICAgICAgZmllbGQsXG4gICAgICBhbW91bnQsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBkaWN0aW9uYXJ5UmVtb3ZlRmllbGQoXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZyxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeVJlbW92ZUZpZWxkLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuZGljdGlvbmFyeVJlbW92ZUZpZWxkKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBkaWN0aW9uYXJ5TmFtZSxcbiAgICAgIGZpZWxkXG4gICAgKTtcbiAgfVxuICBkaWN0aW9uYXJ5UmVtb3ZlRmllbGRzKFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZmllbGRzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXVxuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeVJlbW92ZUZpZWxkcy5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmRpY3Rpb25hcnlSZW1vdmVGaWVsZHMoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIGRpY3Rpb25hcnlOYW1lLFxuICAgICAgZmllbGRzXG4gICAgKTtcbiAgfVxuXG4gIGRpY3Rpb25hcnlMZW5ndGgoXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeUxlbmd0aC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmRpY3Rpb25hcnlMZW5ndGgodGhpcy5jYWNoZU5hbWUsIGRpY3Rpb25hcnlOYW1lKTtcbiAgfVxuXG4gIHNvcnRlZFNldEZldGNoQnlSYW5rKFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICBvcHRpb25zPzogU29ydGVkU2V0RmV0Y2hCeVJhbmtPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRGZXRjaC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNvcnRlZFNldEZldGNoQnlSYW5rKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzb3J0ZWRTZXROYW1lLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgc29ydGVkU2V0RmV0Y2hCeVNjb3JlKFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICBvcHRpb25zPzogU29ydGVkU2V0RmV0Y2hCeVNjb3JlT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0RmV0Y2guUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRGZXRjaEJ5U2NvcmUoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIHNvcnRlZFNldE5hbWUsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBzb3J0ZWRTZXRQdXRFbGVtZW50KFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBzY29yZTogbnVtYmVyLFxuICAgIG9wdGlvbnM/OiBTb3J0ZWRTZXRQdXRFbGVtZW50T3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0UHV0RWxlbWVudC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNvcnRlZFNldFB1dEVsZW1lbnQoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIHNvcnRlZFNldE5hbWUsXG4gICAgICB2YWx1ZSxcbiAgICAgIHNjb3JlLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgc29ydGVkU2V0UHV0RWxlbWVudHMoXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIGVsZW1lbnRzOiBNYXA8c3RyaW5nIHwgVWludDhBcnJheSwgbnVtYmVyPiB8IFJlY29yZDxzdHJpbmcsIG51bWJlcj4sXG4gICAgb3B0aW9ucz86IFNvcnRlZFNldFB1dEVsZW1lbnRzT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0UHV0RWxlbWVudHMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRQdXRFbGVtZW50cyhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc29ydGVkU2V0TmFtZSxcbiAgICAgIGVsZW1lbnRzLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgc29ydGVkU2V0R2V0UmFuayhcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldEdldFJhbmsuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRHZXRSYW5rKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzb3J0ZWRTZXROYW1lLFxuICAgICAgdmFsdWVcbiAgICApO1xuICB9XG4gIHNvcnRlZFNldEdldFNjb3JlKFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0R2V0U2NvcmUuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRHZXRTY29yZShcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc29ydGVkU2V0TmFtZSxcbiAgICAgIHZhbHVlXG4gICAgKTtcbiAgfVxuICBzb3J0ZWRTZXRHZXRTY29yZXMoXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlczogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldEdldFNjb3Jlcy5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNvcnRlZFNldEdldFNjb3JlcyhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc29ydGVkU2V0TmFtZSxcbiAgICAgIHZhbHVlc1xuICAgICk7XG4gIH1cbiAgc29ydGVkU2V0SW5jcmVtZW50U2NvcmUoXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGFtb3VudD86IG51bWJlcixcbiAgICBvcHRpb25zPzogU29ydGVkU2V0SW5jcmVtZW50T3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0SW5jcmVtZW50U2NvcmUuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRJbmNyZW1lbnRTY29yZShcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc29ydGVkU2V0TmFtZSxcbiAgICAgIHZhbHVlLFxuICAgICAgYW1vdW50LFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgc29ydGVkU2V0UmVtb3ZlRWxlbWVudChcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldFJlbW92ZUVsZW1lbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRSZW1vdmVFbGVtZW50KFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzb3J0ZWRTZXROYW1lLFxuICAgICAgdmFsdWVcbiAgICApO1xuICB9XG4gIHNvcnRlZFNldFJlbW92ZUVsZW1lbnRzKFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZXM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdXG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50cy5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNvcnRlZFNldFJlbW92ZUVsZW1lbnRzKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzb3J0ZWRTZXROYW1lLFxuICAgICAgdmFsdWVzXG4gICAgKTtcbiAgfVxuICBzb3J0ZWRTZXRMZW5ndGgoXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nXG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRMZW5ndGguUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRMZW5ndGgodGhpcy5jYWNoZU5hbWUsIHNvcnRlZFNldE5hbWUpO1xuICB9XG4gIHNvcnRlZFNldExlbmd0aEJ5U2NvcmUoXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiBTb3J0ZWRTZXRMZW5ndGhCeVNjb3JlT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0TGVuZ3RoQnlTY29yZS5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNvcnRlZFNldExlbmd0aEJ5U2NvcmUoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIHNvcnRlZFNldE5hbWUsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBpdGVtR2V0VHlwZShrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXkpOiBQcm9taXNlPENhY2hlSXRlbUdldFR5cGUuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5pdGVtR2V0VHlwZSh0aGlzLmNhY2hlTmFtZSwga2V5KTtcbiAgfVxuICBpdGVtR2V0VHRsKGtleTogc3RyaW5nIHwgVWludDhBcnJheSk6IFByb21pc2U8Q2FjaGVJdGVtR2V0VHRsLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuaXRlbUdldFR0bCh0aGlzLmNhY2hlTmFtZSwga2V5KTtcbiAgfVxuICBrZXlFeGlzdHMoa2V5OiBzdHJpbmcgfCBVaW50OEFycmF5KTogUHJvbWlzZTxDYWNoZUtleUV4aXN0cy5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmtleUV4aXN0cyh0aGlzLmNhY2hlTmFtZSwga2V5KTtcbiAgfVxuICBrZXlzRXhpc3Qoa2V5czogc3RyaW5nW10gfCBVaW50OEFycmF5W10pOiBQcm9taXNlPENhY2hlS2V5c0V4aXN0LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQua2V5c0V4aXN0KHRoaXMuY2FjaGVOYW1lLCBrZXlzKTtcbiAgfVxuICB1cGRhdGVUdGwoXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHR0bE1pbGxpc2Vjb25kczogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVVcGRhdGVUdGwuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC51cGRhdGVUdGwodGhpcy5jYWNoZU5hbWUsIGtleSwgdHRsTWlsbGlzZWNvbmRzKTtcbiAgfVxuICBpbmNyZWFzZVR0bChcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsTWlsbGlzZWNvbmRzOiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZUluY3JlYXNlVHRsLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuaW5jcmVhc2VUdGwodGhpcy5jYWNoZU5hbWUsIGtleSwgdHRsTWlsbGlzZWNvbmRzKTtcbiAgfVxuICBkZWNyZWFzZVR0bChcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdHRsTWlsbGlzZWNvbmRzOiBudW1iZXJcbiAgKTogUHJvbWlzZTxDYWNoZURlY3JlYXNlVHRsLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuZGVjcmVhc2VUdGwodGhpcy5jYWNoZU5hbWUsIGtleSwgdHRsTWlsbGlzZWNvbmRzKTtcbiAgfVxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmNhY2hlQ2xpZW50LmNsb3NlKCk7XG4gIH1cbn1cbiJdfQ==
|
197
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9tZW50by1jYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC9jbGllbnRzL2NhY2hlL21vbWVudG8tY2FjaGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBd0dBLE1BQWEsWUFBWTtJQUd2QixZQUFZLFdBQXlCLEVBQUUsU0FBaUI7UUFDdEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUNELEdBQUcsQ0FDRCxHQUF3QixFQUN4QixLQUEwQixFQUMxQixPQUFvQjtRQUVwQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBQ0QsTUFBTSxDQUFDLEdBQXdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBQ0QsU0FBUyxDQUNQLEtBQTBCLEVBQzFCLE1BQWMsRUFDZCxPQUEwQjtRQUUxQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBQ0QsY0FBYyxDQUNaLEdBQXdCLEVBQ3hCLEtBQTBCLEVBQzFCLE9BQStCO1FBRS9CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMs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RyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUNELFNBQVMsQ0FBQyxJQUE2QjtRQUNyQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUNELFNBQVMsQ0FDUCxHQUF3QixFQUN4QixlQUF1QjtRQUV2QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFDRCxXQUFXLENBQ1QsR0FBd0IsRUFDeEIsZUFBdUI7UUFFdkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBQ0QsV0FBVyxDQUNULEdBQXdCLEVBQ3hCLGVBQXVCO1FBRXZCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUNELEtBQUs7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FDRjtBQXBnQkQsb0NBb2dCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENhY2hlRGVsZXRlLFxuICBDYWNoZUdldCxcbiAgQ2FjaGVJbmNyZW1lbnQsXG4gIENhY2hlU2V0LFxuICBDYWNoZVNldElmTm90RXhpc3RzLFxuICBDYWNoZVNldElmQWJzZW50LFxuICBDYWNoZVNldElmUHJlc2VudCxcbiAgQ2FjaGVTZXRJZkVxdWFsLFxuICBDYWNoZVNldElmTm90RXF1YWwsXG4gIENhY2hlU2V0SWZQcmVzZW50QW5kTm90RXF1YWwsXG4gIENhY2hlU2V0SWZBYnNlbnRPckVxdWFsLFxuICBDYWNoZVNldEZldGNoLFxuICBDYWNoZVNldEFkZEVsZW1lbnRzLFxuICBDYWNoZVNldEFkZEVsZW1lbnQsXG4gIENhY2hlU2V0Q29udGFpbnNFbGVtZW50LFxuICBDYWNoZVNldENvbnRhaW5zRWxlbWVudHMsXG4gIENhY2hlU2V0UmVtb3ZlRWxlbWVudHMsXG4gIENhY2hlU2V0UmVtb3ZlRWxlbWVudCxcbiAgQ2FjaGVMaXN0RmV0Y2gsXG4gIENhY2hlTGlzdExlbmd0aCxcbiAgQ2FjaGVMaXN0UHVzaEZyb250LFxuICBDYWNoZUxpc3RQdXNoQmFjayxcbiAgQ2FjaGVMaXN0Q29uY2F0ZW5hdGVCYWNrLFxuICBDYWNoZUxpc3RDb25jYXRlbmF0ZUZyb250LFxuICBDYWNoZUxpc3RQb3BCYWNrLFxuICBDYWNoZUxpc3RQb3BGcm9udCxcbiAgQ2FjaGVMaXN0UmVtb3ZlVmFsdWUsXG4gIENhY2hlTGlzdFJldGFpbixcbiAgQ2FjaGVEaWN0aW9uYXJ5U2V0RmllbGQsXG4gIENhY2hlRGljdGlvbmFyeVNldEZpZWxkcyxcbiAgQ2FjaGVEaWN0aW9uYXJ5R2V0RmllbGQsXG4gIENhY2hlRGljdGlvbmFyeUZldGNoLFxuICBDYWNoZURpY3Rpb25hcnlJbmNyZW1lbnQsXG4gIENhY2hlRGljdGlvbmFyeVJlbW92ZUZpZWxkLFxuICBDYWNoZURpY3Rpb25hcnlSZW1vdmVGaWVsZHMsXG4gIENhY2hlU29ydGVkU2V0RmV0Y2gsXG4gIENhY2hlU29ydGVkU2V0UHV0RWxlbWVudCxcbiAgQ2FjaGVTb3J0ZWRTZXRQdXRFbGVtZW50cyxcbiAgQ2FjaGVTb3J0ZWRTZXRHZXRSYW5rLFxuICBDYWNoZVNvcnRlZFNldEdldFNjb3JlLFxuICBDYWNoZVNvcnRlZFNldEdldFNjb3JlcyxcbiAgQ2FjaGVTb3J0ZWRTZXRJbmNyZW1lbnRTY29yZSxcbiAgQ2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50LFxuICBDYWNoZVNvcnRlZFNldExlbmd0aCxcbiAgQ2FjaGVTb3J0ZWRTZXRMZW5ndGhCeVNjb3JlLFxuICBDYWNoZUl0ZW1HZXRUeXBlLFxuICBDYWNoZUl0ZW1HZXRUdGwsXG4gIENhY2hlS2V5RXhpc3RzLFxuICBDYWNoZUtleXNFeGlzdCxcbiAgQ2FjaGVVcGRhdGVUdGwsXG4gIENhY2hlSW5jcmVhc2VUdGwsXG4gIENhY2hlRGVjcmVhc2VUdGwsXG4gIElDYWNoZUNsaWVudCxcbiAgQ2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50cyxcbiAgQ2FjaGVEaWN0aW9uYXJ5R2V0RmllbGRzLFxuICBDYWNoZURpY3Rpb25hcnlMZW5ndGgsXG4gIENhY2hlR2V0QmF0Y2gsXG4gIENhY2hlU2V0QmF0Y2gsXG4gIENhY2hlU2V0U2FtcGxlLFxuICBDYWNoZVNldFBvcCxcbiAgQ2FjaGVTZXRMZW5ndGgsXG59IGZyb20gJy4uLy4uLy4uL2luZGV4JztcbmltcG9ydCB7XG4gIFNjYWxhckNhbGxPcHRpb25zLFxuICBMaXN0RmV0Y2hDYWxsT3B0aW9ucyxcbiAgTGlzdFJldGFpbkNhbGxPcHRpb25zLFxuICBCYWNrVHJ1bmNhdGFibGVDYWxsT3B0aW9ucyxcbiAgRnJvbnRUcnVuY2F0YWJsZUNhbGxPcHRpb25zLFxuICBDb2xsZWN0aW9uQ2FsbE9wdGlvbnMsXG4gIFNvcnRlZFNldEZldGNoQnlSYW5rQ2FsbE9wdGlvbnMsXG4gIFNvcnRlZFNldEZldGNoQnlTY29yZUNhbGxPcHRpb25zLFxuICBTb3J0ZWRTZXRMZW5ndGhCeVNjb3JlQ2FsbE9wdGlvbnMsXG4gIFNldEJhdGNoSXRlbSxcbn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHtJTW9tZW50b0NhY2hlfSBmcm9tICcuLi8uLi8uLi9jbGllbnRzL0lNb21lbnRvQ2FjaGUnO1xuXG4vLyBUeXBlIGFsaWFzZXMgdG8gZGlmZmVyZW50aWF0ZSB0aGUgZGlmZmVyZW50IG1ldGhvZHMnIG9wdGlvbmFsIGFyZ3VtZW50cy5cbmV4cG9ydCB0eXBlIFNldE9wdGlvbnMgPSBTY2FsYXJDYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIFNldElmTm90RXhpc3RzT3B0aW9ucyA9IFNjYWxhckNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU2V0SWZBYnNlbnRPcHRpb25zID0gU2NhbGFyQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTZXRJZlByZXNlbnRPcHRpb25zID0gU2NhbGFyQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTZXRJZkVxdWFsT3B0aW9ucyA9IFNjYWxhckNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU2V0SWZOb3RFcXVhbE9wdGlvbnMgPSBTY2FsYXJDYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIFNldElmUHJlc2VudEFuZE5vdEVxdWFsT3B0aW9ucyA9IFNjYWxhckNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU2V0SWZBYnNlbnRPckVxdWFsT3B0aW9ucyA9IFNjYWxhckNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU2V0QmF0Y2hPcHRpb25zID0gU2NhbGFyQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBMaXN0Q29uY2F0ZW5hdGVCYWNrT3B0aW9ucyA9IEZyb250VHJ1bmNhdGFibGVDYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIExpc3RDb25jYXRlbmF0ZUZyb250T3B0aW9ucyA9IEJhY2tUcnVuY2F0YWJsZUNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgTGlzdFB1c2hCYWNrT3B0aW9ucyA9IEZyb250VHJ1bmNhdGFibGVDYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIExpc3RQdXNoRnJvbnRPcHRpb25zID0gQmFja1RydW5jYXRhYmxlQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTZXRBZGRFbGVtZW50T3B0aW9ucyA9IENvbGxlY3Rpb25DYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIFNldEFkZEVsZW1lbnRzT3B0aW9ucyA9IENvbGxlY3Rpb25DYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIERpY3Rpb25hcnlTZXRGaWVsZE9wdGlvbnMgPSBDb2xsZWN0aW9uQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBEaWN0aW9uYXJ5U2V0RmllbGRzT3B0aW9ucyA9IENvbGxlY3Rpb25DYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIERpY3Rpb25hcnlJbmNyZW1lbnRPcHRpb25zID0gQ29sbGVjdGlvbkNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgSW5jcmVtZW50T3B0aW9ucyA9IFNjYWxhckNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU29ydGVkU2V0UHV0RWxlbWVudE9wdGlvbnMgPSBDb2xsZWN0aW9uQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTb3J0ZWRTZXRQdXRFbGVtZW50c09wdGlvbnMgPSBDb2xsZWN0aW9uQ2FsbE9wdGlvbnM7XG5leHBvcnQgdHlwZSBTb3J0ZWRTZXRGZXRjaEJ5UmFua09wdGlvbnMgPSBTb3J0ZWRTZXRGZXRjaEJ5UmFua0NhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU29ydGVkU2V0RmV0Y2hCeVNjb3JlT3B0aW9ucyA9IFNvcnRlZFNldEZldGNoQnlTY29yZUNhbGxPcHRpb25zO1xuZXhwb3J0IHR5cGUgU29ydGVkU2V0SW5jcmVtZW50T3B0aW9ucyA9IENvbGxlY3Rpb25DYWxsT3B0aW9ucztcbmV4cG9ydCB0eXBlIFNvcnRlZFNldExlbmd0aEJ5U2NvcmVPcHRpb25zID0gU29ydGVkU2V0TGVuZ3RoQnlTY29yZUNhbGxPcHRpb25zO1xuXG5leHBvcnQgY2xhc3MgTW9tZW50b0NhY2hlIGltcGxlbWVudHMgSU1vbWVudG9DYWNoZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY2FjaGVDbGllbnQ6IElDYWNoZUNsaWVudDtcbiAgcHJpdmF0ZSByZWFkb25seSBjYWNoZU5hbWU6IHN0cmluZztcbiAgY29uc3RydWN0b3IoY2FjaGVDbGllbnQ6IElDYWNoZUNsaWVudCwgY2FjaGVOYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNhY2hlQ2xpZW50ID0gY2FjaGVDbGllbnQ7XG4gICAgdGhpcy5jYWNoZU5hbWUgPSBjYWNoZU5hbWU7XG4gIH1cblxuICBnZXQoa2V5OiBzdHJpbmcgfCBVaW50OEFycmF5KTogUHJvbWlzZTxDYWNoZUdldC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmdldCh0aGlzLmNhY2hlTmFtZSwga2V5KTtcbiAgfVxuICBzZXQoXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG9wdGlvbnM/OiBTZXRPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXQodGhpcy5jYWNoZU5hbWUsIGtleSwgdmFsdWUsIG9wdGlvbnMpO1xuICB9XG4gIGRlbGV0ZShrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXkpOiBQcm9taXNlPENhY2hlRGVsZXRlLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuZGVsZXRlKHRoaXMuY2FjaGVOYW1lLCBrZXkpO1xuICB9XG4gIGluY3JlbWVudChcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBhbW91bnQ6IG51bWJlcixcbiAgICBvcHRpb25zPzogSW5jcmVtZW50T3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlSW5jcmVtZW50LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuaW5jcmVtZW50KHRoaXMuY2FjaGVOYW1lLCBmaWVsZCwgYW1vdW50LCBvcHRpb25zKTtcbiAgfVxuICBzZXRJZk5vdEV4aXN0cyhcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldElmTm90RXhpc3RzT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU2V0SWZOb3RFeGlzdHMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRJZk5vdEV4aXN0cyh0aGlzLmNhY2hlTmFtZSwga2V5LCBmaWVsZCwgb3B0aW9ucyk7XG4gIH1cbiAgc2V0SWZBYnNlbnQoXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG9wdGlvbnM/OiBTZXRJZkFic2VudE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldElmQWJzZW50LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0SWZBYnNlbnQodGhpcy5jYWNoZU5hbWUsIGtleSwgZmllbGQsIG9wdGlvbnMpO1xuICB9XG4gIHNldElmUHJlc2VudChcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldElmUHJlc2VudE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldElmUHJlc2VudC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNldElmUHJlc2VudCh0aGlzLmNhY2hlTmFtZSwga2V5LCB2YWx1ZSwgb3B0aW9ucyk7XG4gIH1cbiAgc2V0SWZFcXVhbChcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZXF1YWw6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldElmRXF1YWxPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXRJZkVxdWFsLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0SWZFcXVhbChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAga2V5LFxuICAgICAgdmFsdWUsXG4gICAgICBlcXVhbCxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIHNldElmTm90RXF1YWwoXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG5vdEVxdWFsOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG9wdGlvbnM/OiBTZXRJZk5vdEVxdWFsT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU2V0SWZOb3RFcXVhbC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNldElmTm90RXF1YWwoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIGtleSxcbiAgICAgIHZhbHVlLFxuICAgICAgbm90RXF1YWwsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBzZXRJZlByZXNlbnRBbmROb3RFcXVhbChcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgbm90RXF1YWw6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldElmUHJlc2VudEFuZE5vdEVxdWFsT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU2V0SWZQcmVzZW50QW5kTm90RXF1YWwuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRJZlByZXNlbnRBbmROb3RFcXVhbChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAga2V5LFxuICAgICAgdmFsdWUsXG4gICAgICBub3RFcXVhbCxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIHNldElmQWJzZW50T3JFcXVhbChcbiAgICBrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgZXF1YWw6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldElmQWJzZW50T3JFcXVhbE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldElmQWJzZW50T3JFcXVhbC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNldElmQWJzZW50T3JFcXVhbChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAga2V5LFxuICAgICAgdmFsdWUsXG4gICAgICBlcXVhbCxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIGdldEJhdGNoKGtleXM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdKTogUHJvbWlzZTxDYWNoZUdldEJhdGNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuZ2V0QmF0Y2godGhpcy5jYWNoZU5hbWUsIGtleXMpO1xuICB9XG4gIHNldEJhdGNoKFxuICAgIGl0ZW1zOlxuICAgICAgfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBVaW50OEFycmF5PlxuICAgICAgfCBNYXA8c3RyaW5nIHwgVWludDhBcnJheSwgc3RyaW5nIHwgVWludDhBcnJheT5cbiAgICAgIHwgQXJyYXk8U2V0QmF0Y2hJdGVtPixcbiAgICBvcHRpb25zPzogU2V0QmF0Y2hPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXRCYXRjaC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNldEJhdGNoKHRoaXMuY2FjaGVOYW1lLCBpdGVtcywgb3B0aW9ucyk7XG4gIH1cbiAgc2V0RmV0Y2goc2V0TmFtZTogc3RyaW5nKTogUHJvbWlzZTxDYWNoZVNldEZldGNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0RmV0Y2godGhpcy5jYWNoZU5hbWUsIHNldE5hbWUpO1xuICB9XG4gIHNldEFkZEVsZW1lbnQoXG4gICAgc2V0TmFtZTogc3RyaW5nLFxuICAgIGVsZW1lbnQ6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgb3B0aW9ucz86IFNldEFkZEVsZW1lbnRPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVTZXRBZGRFbGVtZW50LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0QWRkRWxlbWVudChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc2V0TmFtZSxcbiAgICAgIGVsZW1lbnQsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBzZXRBZGRFbGVtZW50cyhcbiAgICBzZXROYW1lOiBzdHJpbmcsXG4gICAgZWxlbWVudHM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdLFxuICAgIG9wdGlvbnM/OiBTZXRBZGRFbGVtZW50c09wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNldEFkZEVsZW1lbnRzLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0QWRkRWxlbWVudHMoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIHNldE5hbWUsXG4gICAgICBlbGVtZW50cyxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIHNldENvbnRhaW5zRWxlbWVudChcbiAgICBzZXROYW1lOiBzdHJpbmcsXG4gICAgZWxlbWVudDogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlU2V0Q29udGFpbnNFbGVtZW50LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0Q29udGFpbnNFbGVtZW50KFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzZXROYW1lLFxuICAgICAgZWxlbWVudFxuICAgICk7XG4gIH1cbiAgc2V0Q29udGFpbnNFbGVtZW50cyhcbiAgICBzZXROYW1lOiBzdHJpbmcsXG4gICAgZWxlbWVudHM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdXG4gICk6IFByb21pc2U8Q2FjaGVTZXRDb250YWluc0VsZW1lbnRzLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0Q29udGFpbnNFbGVtZW50cyhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc2V0TmFtZSxcbiAgICAgIGVsZW1lbnRzXG4gICAgKTtcbiAgfVxuICBzZXRSZW1vdmVFbGVtZW50KFxuICAgIHNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50OiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVTZXRSZW1vdmVFbGVtZW50LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0UmVtb3ZlRWxlbWVudCh0aGlzLmNhY2hlTmFtZSwgc2V0TmFtZSwgZWxlbWVudCk7XG4gIH1cbiAgc2V0UmVtb3ZlRWxlbWVudHMoXG4gICAgc2V0TmFtZTogc3RyaW5nLFxuICAgIGVsZW1lbnRzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXVxuICApOiBQcm9taXNlPENhY2hlU2V0UmVtb3ZlRWxlbWVudHMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRSZW1vdmVFbGVtZW50cyhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc2V0TmFtZSxcbiAgICAgIGVsZW1lbnRzXG4gICAgKTtcbiAgfVxuICBzZXRTYW1wbGUoc2V0TmFtZTogc3RyaW5nLCBsaW1pdDogbnVtYmVyKTogUHJvbWlzZTxDYWNoZVNldFNhbXBsZS5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LnNldFNhbXBsZSh0aGlzLmNhY2hlTmFtZSwgc2V0TmFtZSwgbGltaXQpO1xuICB9XG4gIHNldFBvcChzZXROYW1lOiBzdHJpbmcsIGNvdW50OiBudW1iZXIpOiBQcm9taXNlPENhY2hlU2V0UG9wLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc2V0UG9wKHRoaXMuY2FjaGVOYW1lLCBzZXROYW1lLCBjb3VudCk7XG4gIH1cbiAgc2V0TGVuZ3RoKHNldE5hbWU6IHN0cmluZyk6IFByb21pc2U8Q2FjaGVTZXRMZW5ndGguUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zZXRMZW5ndGgodGhpcy5jYWNoZU5hbWUsIHNldE5hbWUpO1xuICB9XG4gIGxpc3RGZXRjaChcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiBMaXN0RmV0Y2hDYWxsT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlTGlzdEZldGNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQubGlzdEZldGNoKHRoaXMuY2FjaGVOYW1lLCBsaXN0TmFtZSwgb3B0aW9ucyk7XG4gIH1cbiAgbGlzdExlbmd0aChsaXN0TmFtZTogc3RyaW5nKTogUHJvbWlzZTxDYWNoZUxpc3RMZW5ndGguUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5saXN0TGVuZ3RoKHRoaXMuY2FjaGVOYW1lLCBsaXN0TmFtZSk7XG4gIH1cbiAgbGlzdFB1c2hGcm9udChcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG9wdGlvbnM/OiBMaXN0UHVzaEZyb250T3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlTGlzdFB1c2hGcm9udC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50Lmxpc3RQdXNoRnJvbnQoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIGxpc3ROYW1lLFxuICAgICAgdmFsdWUsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBsaXN0UHVzaEJhY2soXG4gICAgbGlzdE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBvcHRpb25zPzogTGlzdFB1c2hCYWNrT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlTGlzdFB1c2hCYWNrLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQubGlzdFB1c2hCYWNrKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBsaXN0TmFtZSxcbiAgICAgIHZhbHVlLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgbGlzdENvbmNhdGVuYXRlQmFjayhcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlczogc3RyaW5nW10gfCBVaW50OEFycmF5W10sXG4gICAgb3B0aW9ucz86IExpc3RDb25jYXRlbmF0ZUJhY2tPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0Q29uY2F0ZW5hdGVCYWNrLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQubGlzdENvbmNhdGVuYXRlQmFjayhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgbGlzdE5hbWUsXG4gICAgICB2YWx1ZXMsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBsaXN0Q29uY2F0ZW5hdGVGcm9udChcbiAgICBsaXN0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlczogc3RyaW5nW10gfCBVaW50OEFycmF5W10sXG4gICAgb3B0aW9ucz86IExpc3RDb25jYXRlbmF0ZUZyb250T3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlTGlzdENvbmNhdGVuYXRlRnJvbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5saXN0Q29uY2F0ZW5hdGVGcm9udChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgbGlzdE5hbWUsXG4gICAgICB2YWx1ZXMsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBsaXN0UG9wQmFjayhsaXN0TmFtZTogc3RyaW5nKTogUHJvbWlzZTxDYWNoZUxpc3RQb3BCYWNrLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQubGlzdFBvcEJhY2sodGhpcy5jYWNoZU5hbWUsIGxpc3ROYW1lKTtcbiAgfVxuICBsaXN0UG9wRnJvbnQobGlzdE5hbWU6IHN0cmluZyk6IFByb21pc2U8Q2FjaGVMaXN0UG9wRnJvbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5saXN0UG9wRnJvbnQodGhpcy5jYWNoZU5hbWUsIGxpc3ROYW1lKTtcbiAgfVxuICBsaXN0UmVtb3ZlVmFsdWUoXG4gICAgbGlzdE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlTGlzdFJlbW92ZVZhbHVlLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQubGlzdFJlbW92ZVZhbHVlKHRoaXMuY2FjaGVOYW1lLCBsaXN0TmFtZSwgdmFsdWUpO1xuICB9XG4gIGxpc3RSZXRhaW4oXG4gICAgbGlzdE5hbWU6IHN0cmluZyxcbiAgICBvcHRpb25zPzogTGlzdFJldGFpbkNhbGxPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVMaXN0UmV0YWluLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQubGlzdFJldGFpbih0aGlzLmNhY2hlTmFtZSwgbGlzdE5hbWUsIG9wdGlvbnMpO1xuICB9XG4gIGRpY3Rpb25hcnlTZXRGaWVsZChcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIG9wdGlvbnM/OiBEaWN0aW9uYXJ5U2V0RmllbGRPcHRpb25zXG4gICk6IFByb21pc2U8Q2FjaGVEaWN0aW9uYXJ5U2V0RmllbGQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5kaWN0aW9uYXJ5U2V0RmllbGQoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIGRpY3Rpb25hcnlOYW1lLFxuICAgICAgZmllbGQsXG4gICAgICB2YWx1ZSxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIGRpY3Rpb25hcnlTZXRGaWVsZHMoXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50czpcbiAgICAgIHwgTWFwPHN0cmluZyB8IFVpbnQ4QXJyYXksIHN0cmluZyB8IFVpbnQ4QXJyYXk+XG4gICAgICB8IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IFVpbnQ4QXJyYXk+LFxuICAgIG9wdGlvbnM/OiBEaWN0aW9uYXJ5U2V0RmllbGRzT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeVNldEZpZWxkcy5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmRpY3Rpb25hcnlTZXRGaWVsZHMoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIGRpY3Rpb25hcnlOYW1lLFxuICAgICAgZWxlbWVudHMsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuICBkaWN0aW9uYXJ5R2V0RmllbGQoXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZyxcbiAgICBmaWVsZDogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeUdldEZpZWxkLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuZGljdGlvbmFyeUdldEZpZWxkKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBkaWN0aW9uYXJ5TmFtZSxcbiAgICAgIGZpZWxkXG4gICAgKTtcbiAgfVxuICBkaWN0aW9uYXJ5R2V0RmllbGRzKFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZmllbGRzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXVxuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeUdldEZpZWxkcy5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmRpY3Rpb25hcnlHZXRGaWVsZHMoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIGRpY3Rpb25hcnlOYW1lLFxuICAgICAgZmllbGRzXG4gICAgKTtcbiAgfVxuICBkaWN0aW9uYXJ5RmV0Y2goXG4gICAgZGljdGlvbmFyeU5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPENhY2hlRGljdGlvbmFyeUZldGNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuZGljdGlvbmFyeUZldGNoKHRoaXMuY2FjaGVOYW1lLCBkaWN0aW9uYXJ5TmFtZSk7XG4gIH1cbiAgZGljdGlvbmFyeUluY3JlbWVudChcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGZpZWxkOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGFtb3VudD86IG51bWJlcixcbiAgICBvcHRpb25zPzogRGljdGlvbmFyeUluY3JlbWVudE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlJbmNyZW1lbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5kaWN0aW9uYXJ5SW5jcmVtZW50KFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBkaWN0aW9uYXJ5TmFtZSxcbiAgICAgIGZpZWxkLFxuICAgICAgYW1vdW50LFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgZGljdGlvbmFyeVJlbW92ZUZpZWxkKFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmcsXG4gICAgZmllbGQ6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlSZW1vdmVGaWVsZC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmRpY3Rpb25hcnlSZW1vdmVGaWVsZChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgZGljdGlvbmFyeU5hbWUsXG4gICAgICBmaWVsZFxuICAgICk7XG4gIH1cbiAgZGljdGlvbmFyeVJlbW92ZUZpZWxkcyhcbiAgICBkaWN0aW9uYXJ5TmFtZTogc3RyaW5nLFxuICAgIGZpZWxkczogc3RyaW5nW10gfCBVaW50OEFycmF5W11cbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlSZW1vdmVGaWVsZHMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5kaWN0aW9uYXJ5UmVtb3ZlRmllbGRzKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBkaWN0aW9uYXJ5TmFtZSxcbiAgICAgIGZpZWxkc1xuICAgICk7XG4gIH1cblxuICBkaWN0aW9uYXJ5TGVuZ3RoKFxuICAgIGRpY3Rpb25hcnlOYW1lOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxDYWNoZURpY3Rpb25hcnlMZW5ndGguUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5kaWN0aW9uYXJ5TGVuZ3RoKHRoaXMuY2FjaGVOYW1lLCBkaWN0aW9uYXJ5TmFtZSk7XG4gIH1cblxuICBzb3J0ZWRTZXRGZXRjaEJ5UmFuayhcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IFNvcnRlZFNldEZldGNoQnlSYW5rT3B0aW9uc1xuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0RmV0Y2guUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRGZXRjaEJ5UmFuayhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc29ydGVkU2V0TmFtZSxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIHNvcnRlZFNldEZldGNoQnlTY29yZShcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IFNvcnRlZFNldEZldGNoQnlTY29yZU9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldEZldGNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc29ydGVkU2V0RmV0Y2hCeVNjb3JlKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzb3J0ZWRTZXROYW1lLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgc29ydGVkU2V0UHV0RWxlbWVudChcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgc2NvcmU6IG51bWJlcixcbiAgICBvcHRpb25zPzogU29ydGVkU2V0UHV0RWxlbWVudE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldFB1dEVsZW1lbnQuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRQdXRFbGVtZW50KFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzb3J0ZWRTZXROYW1lLFxuICAgICAgdmFsdWUsXG4gICAgICBzY29yZSxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIHNvcnRlZFNldFB1dEVsZW1lbnRzKFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICBlbGVtZW50czogTWFwPHN0cmluZyB8IFVpbnQ4QXJyYXksIG51bWJlcj4gfCBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+LFxuICAgIG9wdGlvbnM/OiBTb3J0ZWRTZXRQdXRFbGVtZW50c09wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldFB1dEVsZW1lbnRzLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc29ydGVkU2V0UHV0RWxlbWVudHMoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIHNvcnRlZFNldE5hbWUsXG4gICAgICBlbGVtZW50cyxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIHNvcnRlZFNldEdldFJhbmsoXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRHZXRSYW5rLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc29ydGVkU2V0R2V0UmFuayhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc29ydGVkU2V0TmFtZSxcbiAgICAgIHZhbHVlXG4gICAgKTtcbiAgfVxuICBzb3J0ZWRTZXRHZXRTY29yZShcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWU6IHN0cmluZyB8IFVpbnQ4QXJyYXlcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldEdldFNjb3JlLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc29ydGVkU2V0R2V0U2NvcmUoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIHNvcnRlZFNldE5hbWUsXG4gICAgICB2YWx1ZVxuICAgICk7XG4gIH1cbiAgc29ydGVkU2V0R2V0U2NvcmVzKFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZXM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdXG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRHZXRTY29yZXMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRHZXRTY29yZXMoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIHNvcnRlZFNldE5hbWUsXG4gICAgICB2YWx1ZXNcbiAgICApO1xuICB9XG4gIHNvcnRlZFNldEluY3JlbWVudFNjb3JlKFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBhbW91bnQ/OiBudW1iZXIsXG4gICAgb3B0aW9ucz86IFNvcnRlZFNldEluY3JlbWVudE9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldEluY3JlbWVudFNjb3JlLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc29ydGVkU2V0SW5jcmVtZW50U2NvcmUoXG4gICAgICB0aGlzLmNhY2hlTmFtZSxcbiAgICAgIHNvcnRlZFNldE5hbWUsXG4gICAgICB2YWx1ZSxcbiAgICAgIGFtb3VudCxcbiAgICAgIG9wdGlvbnNcbiAgICApO1xuICB9XG4gIHNvcnRlZFNldFJlbW92ZUVsZW1lbnQoXG4gICAgc29ydGVkU2V0TmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8Q2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc29ydGVkU2V0UmVtb3ZlRWxlbWVudChcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc29ydGVkU2V0TmFtZSxcbiAgICAgIHZhbHVlXG4gICAgKTtcbiAgfVxuICBzb3J0ZWRTZXRSZW1vdmVFbGVtZW50cyhcbiAgICBzb3J0ZWRTZXROYW1lOiBzdHJpbmcsXG4gICAgdmFsdWVzOiBzdHJpbmdbXSB8IFVpbnQ4QXJyYXlbXVxuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0UmVtb3ZlRWxlbWVudHMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRSZW1vdmVFbGVtZW50cyhcbiAgICAgIHRoaXMuY2FjaGVOYW1lLFxuICAgICAgc29ydGVkU2V0TmFtZSxcbiAgICAgIHZhbHVlc1xuICAgICk7XG4gIH1cbiAgc29ydGVkU2V0TGVuZ3RoKFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPENhY2hlU29ydGVkU2V0TGVuZ3RoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuc29ydGVkU2V0TGVuZ3RoKHRoaXMuY2FjaGVOYW1lLCBzb3J0ZWRTZXROYW1lKTtcbiAgfVxuICBzb3J0ZWRTZXRMZW5ndGhCeVNjb3JlKFxuICAgIHNvcnRlZFNldE5hbWU6IHN0cmluZyxcbiAgICBvcHRpb25zPzogU29ydGVkU2V0TGVuZ3RoQnlTY29yZU9wdGlvbnNcbiAgKTogUHJvbWlzZTxDYWNoZVNvcnRlZFNldExlbmd0aEJ5U2NvcmUuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5zb3J0ZWRTZXRMZW5ndGhCeVNjb3JlKFxuICAgICAgdGhpcy5jYWNoZU5hbWUsXG4gICAgICBzb3J0ZWRTZXROYW1lLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cbiAgaXRlbUdldFR5cGUoa2V5OiBzdHJpbmcgfCBVaW50OEFycmF5KTogUHJvbWlzZTxDYWNoZUl0ZW1HZXRUeXBlLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQuaXRlbUdldFR5cGUodGhpcy5jYWNoZU5hbWUsIGtleSk7XG4gIH1cbiAgaXRlbUdldFR0bChrZXk6IHN0cmluZyB8IFVpbnQ4QXJyYXkpOiBQcm9taXNlPENhY2hlSXRlbUdldFR0bC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50Lml0ZW1HZXRUdGwodGhpcy5jYWNoZU5hbWUsIGtleSk7XG4gIH1cbiAga2V5RXhpc3RzKGtleTogc3RyaW5nIHwgVWludDhBcnJheSk6IFByb21pc2U8Q2FjaGVLZXlFeGlzdHMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZUNsaWVudC5rZXlFeGlzdHModGhpcy5jYWNoZU5hbWUsIGtleSk7XG4gIH1cbiAga2V5c0V4aXN0KGtleXM6IHN0cmluZ1tdIHwgVWludDhBcnJheVtdKTogUHJvbWlzZTxDYWNoZUtleXNFeGlzdC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmtleXNFeGlzdCh0aGlzLmNhY2hlTmFtZSwga2V5cyk7XG4gIH1cbiAgdXBkYXRlVHRsKFxuICAgIGtleTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICB0dGxNaWxsaXNlY29uZHM6IG51bWJlclxuICApOiBQcm9taXNlPENhY2hlVXBkYXRlVHRsLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVDbGllbnQudXBkYXRlVHRsKHRoaXMuY2FjaGVOYW1lLCBrZXksIHR0bE1pbGxpc2Vjb25kcyk7XG4gIH1cbiAgaW5jcmVhc2VUdGwoXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHR0bE1pbGxpc2Vjb25kczogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVJbmNyZWFzZVR0bC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmluY3JlYXNlVHRsKHRoaXMuY2FjaGVOYW1lLCBrZXksIHR0bE1pbGxpc2Vjb25kcyk7XG4gIH1cbiAgZGVjcmVhc2VUdGwoXG4gICAga2V5OiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIHR0bE1pbGxpc2Vjb25kczogbnVtYmVyXG4gICk6IFByb21pc2U8Q2FjaGVEZWNyZWFzZVR0bC5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlQ2xpZW50LmRlY3JlYXNlVHRsKHRoaXMuY2FjaGVOYW1lLCBrZXksIHR0bE1pbGxpc2Vjb25kcyk7XG4gIH1cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5jYWNoZUNsaWVudC5jbG9zZSgpO1xuICB9XG59XG4iXX0=
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import {
|
1
|
+
import { TopicPublish, TopicItem, MomentoLogger, TopicSubscribe, SubscribeCallOptions, MomentoLoggerFactory } from '../../../index';
|
2
2
|
import { SubscriptionState } from '../../subscription-state';
|
3
3
|
import { IPubsubClient } from './IPubsubClient';
|
4
4
|
import { ICacheServiceErrorMapper } from '../../../errors/ICacheServiceErrorMapper';
|
@@ -12,15 +12,6 @@ export interface SendSubscribeOptions {
|
|
12
12
|
onError: (error: TopicSubscribe.Error, subscription: TopicSubscribe.Subscription) => void;
|
13
13
|
subscriptionState: SubscriptionState;
|
14
14
|
subscription: TopicSubscribe.Subscription;
|
15
|
-
}
|
16
|
-
/**
|
17
|
-
* Encapsulates parameters for the subscribe callback prepare methods.
|
18
|
-
*/
|
19
|
-
export interface PrepareSubscribeCallbackOptions extends SendSubscribeOptions {
|
20
|
-
/**
|
21
|
-
* The promise resolve function.
|
22
|
-
*/
|
23
|
-
resolve: (value: TopicSubscribe.Response | PromiseLike<TopicSubscribe.Subscription>) => void;
|
24
15
|
/**
|
25
16
|
* Whether the stream was restarted due to an error. If so, we skip the end stream handler
|
26
17
|
* logic as the error handler will have restarted the stream.
|
@@ -31,15 +22,26 @@ export interface PrepareSubscribeCallbackOptions extends SendSubscribeOptions {
|
|
31
22
|
*/
|
32
23
|
firstMessage: boolean;
|
33
24
|
}
|
25
|
+
/**
|
26
|
+
* Encapsulates parameters for the subscribe callback prepare methods.
|
27
|
+
*/
|
28
|
+
export interface PrepareSubscribeCallbackOptions extends SendSubscribeOptions {
|
29
|
+
/**
|
30
|
+
* The promise resolve function.
|
31
|
+
*/
|
32
|
+
resolve: (value: TopicSubscribe.Response | PromiseLike<TopicSubscribe.Subscription>) => void;
|
33
|
+
}
|
34
34
|
export declare abstract class AbstractPubsubClient<TGrpcError> implements IPubsubClient {
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
35
|
+
private readonly loggerFactory;
|
36
|
+
private readonly logger;
|
37
|
+
private readonly cacheServiceErrorMapper;
|
38
|
+
protected constructor(loggerFactory: MomentoLoggerFactory, logger: MomentoLogger, cacheServiceErrorMapper: ICacheServiceErrorMapper<TGrpcError>);
|
39
|
+
protected getLogger(): MomentoLogger;
|
40
|
+
protected getCacheServiceErrorMapper(): ICacheServiceErrorMapper<TGrpcError>;
|
39
41
|
publish(cacheName: string, topicName: string, value: string | Uint8Array): Promise<TopicPublish.Response>;
|
40
42
|
protected abstract sendPublish(cacheName: string, topicName: string, value: string | Uint8Array): Promise<TopicPublish.Response>;
|
41
43
|
subscribe(cacheName: string, topicName: string, options: SubscribeCallOptions): Promise<TopicSubscribe.Response>;
|
42
44
|
protected abstract sendSubscribe(options: SendSubscribeOptions): Promise<TopicSubscribe.Response>;
|
43
45
|
protected prepareEndCallback(options: PrepareSubscribeCallbackOptions): () => void;
|
44
|
-
protected handleSubscribeError(options: PrepareSubscribeCallbackOptions, momentoError: TopicSubscribe.Error,
|
46
|
+
protected handleSubscribeError(options: PrepareSubscribeCallbackOptions, momentoError: TopicSubscribe.Error, shouldReconnectSubscription: boolean): void;
|
45
47
|
}
|
@@ -6,10 +6,16 @@ const errors_1 = require("../../../errors");
|
|
6
6
|
const index_1 = require("../../../index");
|
7
7
|
const subscription_state_1 = require("../../subscription-state");
|
8
8
|
class AbstractPubsubClient {
|
9
|
-
|
10
|
-
|
11
|
-
this.logger
|
12
|
-
|
9
|
+
constructor(loggerFactory, logger, cacheServiceErrorMapper) {
|
10
|
+
this.loggerFactory = loggerFactory;
|
11
|
+
this.logger = logger;
|
12
|
+
this.cacheServiceErrorMapper = cacheServiceErrorMapper;
|
13
|
+
}
|
14
|
+
getLogger() {
|
15
|
+
return this.logger;
|
16
|
+
}
|
17
|
+
getCacheServiceErrorMapper() {
|
18
|
+
return this.cacheServiceErrorMapper;
|
13
19
|
}
|
14
20
|
async publish(cacheName, topicName, value) {
|
15
21
|
try {
|
@@ -40,7 +46,7 @@ class AbstractPubsubClient {
|
|
40
46
|
return;
|
41
47
|
});
|
42
48
|
const subscriptionState = new subscription_state_1.SubscriptionState();
|
43
|
-
const subscription = new index_1.TopicSubscribe.Subscription(subscriptionState);
|
49
|
+
const subscription = new index_1.TopicSubscribe.Subscription(this.loggerFactory, subscriptionState);
|
44
50
|
return await this.sendSubscribe({
|
45
51
|
cacheName: cacheName,
|
46
52
|
topicName: topicName,
|
@@ -48,6 +54,8 @@ class AbstractPubsubClient {
|
|
48
54
|
onError: onError,
|
49
55
|
subscriptionState: subscriptionState,
|
50
56
|
subscription: subscription,
|
57
|
+
restartedDueToError: false,
|
58
|
+
firstMessage: true,
|
51
59
|
});
|
52
60
|
}
|
53
61
|
prepareEndCallback(options) {
|
@@ -75,32 +83,18 @@ class AbstractPubsubClient {
|
|
75
83
|
});
|
76
84
|
};
|
77
85
|
}
|
78
|
-
handleSubscribeError(options, momentoError,
|
86
|
+
handleSubscribeError(options, momentoError, shouldReconnectSubscription) {
|
87
|
+
this.logger.trace('Handling subscribe error');
|
79
88
|
// When the first message is an error, an irrecoverable error has happened,
|
80
89
|
// eg the cache does not exist. The user should not receive a subscription
|
81
90
|
// object but an error.
|
82
91
|
if (options.firstMessage) {
|
83
|
-
this.logger.trace('
|
92
|
+
this.logger.trace('First message on subscription was an error; topic: %s, error: %s', (0, utils_1.truncateString)(options.topicName), momentoError.toString());
|
84
93
|
options.resolve(momentoError);
|
85
94
|
options.subscription.unsubscribe();
|
86
95
|
return;
|
87
96
|
}
|
88
|
-
|
89
|
-
// Transparently restart the stream instead of propagating an error.
|
90
|
-
if (isRstStreamNoError) {
|
91
|
-
this.logger.trace('Server closed stream due to idle activity. Restarting.');
|
92
|
-
// When restarting the stream we do not do anything with the promises,
|
93
|
-
// because we should have already returned the subscription object to the user.
|
94
|
-
this.sendSubscribe(options)
|
95
|
-
.then(() => {
|
96
|
-
return;
|
97
|
-
})
|
98
|
-
.catch(() => {
|
99
|
-
return;
|
100
|
-
});
|
101
|
-
options.restartedDueToError = true;
|
102
|
-
return;
|
103
|
-
}
|
97
|
+
this.logger.trace('Subscribe error was not the first message on the stream.');
|
104
98
|
// Another special case is when the cache is not found.
|
105
99
|
// This happens here if the user deletes the cache in the middle of
|
106
100
|
// a subscription.
|
@@ -110,10 +104,37 @@ class AbstractPubsubClient {
|
|
110
104
|
options.onError(momentoError, options.subscription);
|
111
105
|
return;
|
112
106
|
}
|
113
|
-
|
114
|
-
|
107
|
+
this.logger.trace('Checking to see if we should attempt to reconnect subscription.');
|
108
|
+
// For several types of errors having to with network interruptions, we wish to
|
109
|
+
// transparently restart the stream instead of propagating an error.
|
110
|
+
if (shouldReconnectSubscription) {
|
111
|
+
options.restartedDueToError = true;
|
112
|
+
const reconnectDelayMillis = 100;
|
113
|
+
this.logger.trace('Error occurred on subscription, possibly a network interruption. Will attempt to restart stream in %s ms.', reconnectDelayMillis);
|
114
|
+
(0, utils_1.sleep)(reconnectDelayMillis)
|
115
|
+
.then(() => {
|
116
|
+
// When restarting the stream we do not do anything with the promises,
|
117
|
+
// because we should have already returned the subscription object to the user.
|
118
|
+
this.sendSubscribe(options)
|
119
|
+
.then(() => {
|
120
|
+
return;
|
121
|
+
})
|
122
|
+
.catch(e => {
|
123
|
+
this.logger.trace('Error when calling sendSubscribe to reconnect: %s', e);
|
124
|
+
return;
|
125
|
+
});
|
126
|
+
return;
|
127
|
+
})
|
128
|
+
.catch(e => {
|
129
|
+
this.logger.trace('Error when sleeping prior to sendSubscribe to reconnect: %s', e);
|
130
|
+
return;
|
131
|
+
});
|
132
|
+
return;
|
115
133
|
}
|
134
|
+
this.logger.trace('Subscribe error was not a re-connectable error.');
|
135
|
+
this.logger.trace('Subscribe error was not one of the known error types; calling error handler.');
|
136
|
+
options.onError(momentoError, options.subscription);
|
116
137
|
}
|
117
138
|
}
|
118
139
|
exports.AbstractPubsubClient = AbstractPubsubClient;
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RQdWJzdWJDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW50ZXJuYWwvY2xpZW50cy9wdWJzdWIvQWJzdHJhY3RQdWJzdWJDbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdUNBSXFCO0FBQ3JCLDRDQUFpRDtBQUNqRCwwQ0FPd0I7QUFDeEIsaUVBQTJEO0FBd0MzRCxNQUFzQixvQkFBb0I7SUFPakMsV0FBVztRQUNoQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN2RCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRU0sS0FBSyxDQUFDLE9BQU8sQ0FDbEIsU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsS0FBMEI7UUFFMUIsSUFBSTtZQUNGLElBQUEseUJBQWlCLEVBQUMsU0FBUyxDQUFDLENBQUM7WUFDN0IsSUFBQSx5QkFBaUIsRUFBQyxTQUFTLENBQUMsQ0FBQztTQUM5QjtRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1osT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsa0JBQWtCLENBQ3BELEdBQVksRUFDWixHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksb0JBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQ25DLENBQUM7WUFDRiw4REFBOEQ7U0FDL0Q7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZix3REFBd0QsRUFDeEQsSUFBQSxzQkFBYyxFQUFDLFNBQVMsQ0FBQyxFQUN6QixLQUFLLENBQUMsTUFBTSxDQUNiLENBQUM7UUFFRixPQUFPLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdELENBQUM7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QXNEO1FBQ3RELG9FQUFvRTtRQUNwRSxJQUFJLGtCQUFrQixFQUFFO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHdEQUF3RCxDQUN6RCxDQUFDO1lBQ0Ysc0VBQXNFO1lBQ3RFLCtFQUErRTtZQUMvRSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztpQkFDeEIsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVCxPQUFPO1lBQ1QsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsT0FBTztZQUNULENBQUMsQ0FBQyxDQUFDO1lBQ0wsT0FBTyxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztZQUNuQyxPQUFPO1NBQ1I7UUFFRCx1REFBdUQ7UUFDdkQsbUVBQW1FO1FBQ25FLGtCQUFrQjtRQUNsQixJQUFJLFlBQVksQ0FBQyxTQUFTLEVBQUUsS0FBSyx5QkFBZ0IsQ0FBQyxxQkFBcUIsRUFBRTtZQUN2RSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZix3REFBd0QsRUFDeEQsT0FBTyxDQUFDLFNBQVMsQ0FDbEIsQ0FBQztZQUNGLE9BQU8sQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3BELE9BQU87U0FDUjthQUFNO1lBQ0wsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQztDQUNGO0FBcExELG9EQW9MQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHRydW5jYXRlU3RyaW5nLFxuICB2YWxpZGF0ZUNhY2hlTmFtZSxcbiAgdmFsaWRhdGVUb3BpY05hbWUsXG59IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7TW9tZW50b0Vycm9yQ29kZX0gZnJvbSAnLi4vLi4vLi4vZXJyb3JzJztcbmltcG9ydCB7XG4gIENyZWRlbnRpYWxQcm92aWRlcixcbiAgVG9waWNQdWJsaXNoLFxuICBUb3BpY0l0ZW0sXG4gIE1vbWVudG9Mb2dnZXIsXG4gIFRvcGljU3Vic2NyaWJlLFxuICBTdWJzY3JpYmVDYWxsT3B0aW9ucyxcbn0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb25TdGF0ZX0gZnJvbSAnLi4vLi4vc3Vic2NyaXB0aW9uLXN0YXRlJztcbmltcG9ydCB7SVB1YnN1YkNsaWVudH0gZnJvbSAnLi9JUHVic3ViQ2xpZW50JztcbmltcG9ydCB7SUNhY2hlU2VydmljZUVycm9yTWFwcGVyfSBmcm9tICcuLi8uLi8uLi9lcnJvcnMvSUNhY2hlU2VydmljZUVycm9yTWFwcGVyJztcblxuLyoqXG4gKiBFbmNhcHN1bGF0ZXMgcGFyYW1ldGVycyBmb3IgdGhlIGBzZW5kU3Vic2NyaWJlYCBtZXRob2QuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VuZFN1YnNjcmliZU9wdGlvbnMge1xuICBjYWNoZU5hbWU6IHN0cmluZztcbiAgdG9waWNOYW1lOiBzdHJpbmc7XG4gIG9uSXRlbTogKGl0ZW06IFRvcGljSXRlbSkgPT4gdm9pZDtcbiAgb25FcnJvcjogKFxuICAgIGVycm9yOiBUb3BpY1N1YnNjcmliZS5FcnJvcixcbiAgICBzdWJzY3JpcHRpb246IFRvcGljU3Vic2NyaWJlLlN1YnNjcmlwdGlvblxuICApID0+IHZvaWQ7XG4gIHN1YnNjcmlwdGlvblN0YXRlOiBTdWJzY3JpcHRpb25TdGF0ZTtcbiAgc3Vic2NyaXB0aW9uOiBUb3BpY1N1YnNjcmliZS5TdWJzY3JpcHRpb247XG59XG5cbi8qKlxuICogRW5jYXBzdWxhdGVzIHBhcmFtZXRlcnMgZm9yIHRoZSBzdWJzY3JpYmUgY2FsbGJhY2sgcHJlcGFyZSBtZXRob2RzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFByZXBhcmVTdWJzY3JpYmVDYWxsYmFja09wdGlvbnMgZXh0ZW5kcyBTZW5kU3Vic2NyaWJlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvbWlzZSByZXNvbHZlIGZ1bmN0aW9uLlxuICAgKi9cbiAgcmVzb2x2ZTogKFxuICAgIHZhbHVlOiBUb3BpY1N1YnNjcmliZS5SZXNwb25zZSB8IFByb21pc2VMaWtlPFRvcGljU3Vic2NyaWJlLlN1YnNjcmlwdGlvbj5cbiAgKSA9PiB2b2lkO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgc3RyZWFtIHdhcyByZXN0YXJ0ZWQgZHVlIHRvIGFuIGVycm9yLiBJZiBzbywgd2Ugc2tpcCB0aGUgZW5kIHN0cmVhbSBoYW5kbGVyXG4gICAqIGxvZ2ljIGFzIHRoZSBlcnJvciBoYW5kbGVyIHdpbGwgaGF2ZSByZXN0YXJ0ZWQgdGhlIHN0cmVhbS5cbiAgICovXG4gIHJlc3RhcnRlZER1ZVRvRXJyb3I6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZiB0aGUgZmlyc3QgbWVzc2FnZSBpcyBhbiBlcnJvciwgd2UgcmV0dXJuIGFuIGVycm9yIGltbWVkaWF0ZWx5IGFuZCBkbyBub3Qgc3Vic2NyaWJlLlxuICAgKi9cbiAgZmlyc3RNZXNzYWdlOiBib29sZWFuO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RQdWJzdWJDbGllbnQ8VEdycGNFcnJvcj5cbiAgaW1wbGVtZW50cyBJUHVic3ViQ2xpZW50XG57XG4gIHByb3RlY3RlZCByZWFkb25seSBsb2dnZXI6IE1vbWVudG9Mb2dnZXI7XG4gIHByb3RlY3RlZCByZWFkb25seSBjcmVkZW50aWFsUHJvdmlkZXI6IENyZWRlbnRpYWxQcm92aWRlcjtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNhY2hlU2VydmljZUVycm9yTWFwcGVyOiBJQ2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXI8VEdycGNFcnJvcj47XG5cbiAgcHVibGljIGdldEVuZHBvaW50KCk6IHN0cmluZyB7XG4gICAgY29uc3QgZW5kcG9pbnQgPSB0aGlzLmNyZWRlbnRpYWxQcm92aWRlci5nZXRDYWNoZUVuZHBvaW50KCk7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoYFVzaW5nIGNhY2hlIGVuZHBvaW50OiAke2VuZHBvaW50fWApO1xuICAgIHJldHVybiBlbmRwb2ludDtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBwdWJsaXNoKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHRvcGljTmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8VG9waWNQdWJsaXNoLlJlc3BvbnNlPiB7XG4gICAgdHJ5IHtcbiAgICAgIHZhbGlkYXRlQ2FjaGVOYW1lKGNhY2hlTmFtZSk7XG4gICAgICB2YWxpZGF0ZVRvcGljTmFtZSh0b3BpY05hbWUpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIHRoaXMuY2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXIucmV0dXJuT3JUaHJvd0Vycm9yKFxuICAgICAgICBlcnIgYXMgRXJyb3IsXG4gICAgICAgIGVyciA9PiBuZXcgVG9waWNQdWJsaXNoLkVycm9yKGVycilcbiAgICAgICk7XG4gICAgICAvLyApICBuZXcgVG9waWNQdWJsaXNoLkVycm9yKG5vcm1hbGl6ZVNka0Vycm9yKGVyciBhcyBFcnJvcikpO1xuICAgIH1cbiAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICdJc3N1aW5nIHB1Ymxpc2ggcmVxdWVzdDsgdG9waWM6ICVzLCBtZXNzYWdlIGxlbmd0aDogJXMnLFxuICAgICAgdHJ1bmNhdGVTdHJpbmcodG9waWNOYW1lKSxcbiAgICAgIHZhbHVlLmxlbmd0aFxuICAgICk7XG5cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5zZW5kUHVibGlzaChjYWNoZU5hbWUsIHRvcGljTmFtZSwgdmFsdWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNlbmRQdWJsaXNoKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHRvcGljTmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8VG9waWNQdWJsaXNoLlJlc3BvbnNlPjtcblxuICBwdWJsaWMgYXN5bmMgc3Vic2NyaWJlKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHRvcGljTmFtZTogc3RyaW5nLFxuICAgIG9wdGlvbnM6IFN1YnNjcmliZUNhbGxPcHRpb25zXG4gICk6IFByb21pc2U8VG9waWNTdWJzY3JpYmUuUmVzcG9uc2U+IHtcbiAgICB0cnkge1xuICAgICAgdmFsaWRhdGVDYWNoZU5hbWUoY2FjaGVOYW1lKTtcbiAgICAgIHZhbGlkYXRlVG9waWNOYW1lKHRvcGljTmFtZSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZXR1cm4gdGhpcy5jYWNoZVNlcnZpY2VFcnJvck1hcHBlci5yZXR1cm5PclRocm93RXJyb3IoXG4gICAgICAgIGVyciBhcyBFcnJvcixcbiAgICAgICAgZXJyID0+IG5ldyBUb3BpY1N1YnNjcmliZS5FcnJvcihlcnIpXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICdJc3N1aW5nIHN1YnNjcmliZSByZXF1ZXN0OyB0b3BpYzogJXMnLFxuICAgICAgdHJ1bmNhdGVTdHJpbmcodG9waWNOYW1lKVxuICAgICk7XG5cbiAgICBjb25zdCBvbkl0ZW0gPVxuICAgICAgb3B0aW9ucy5vbkl0ZW0gPz9cbiAgICAgICgoKSA9PiB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH0pO1xuICAgIGNvbnN0IG9uRXJyb3IgPVxuICAgICAgb3B0aW9ucy5vbkVycm9yID8/XG4gICAgICAoKCkgPT4ge1xuICAgICAgICByZXR1cm47XG4gICAgICB9KTtcblxuICAgIGNvbnN0IHN1YnNjcmlwdGlvblN0YXRlID0gbmV3IFN1YnNjcmlwdGlvblN0YXRlKCk7XG4gICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gbmV3IFRvcGljU3Vic2NyaWJlLlN1YnNjcmlwdGlvbihzdWJzY3JpcHRpb25TdGF0ZSk7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuc2VuZFN1YnNjcmliZSh7XG4gICAgICBjYWNoZU5hbWU6IGNhY2hlTmFtZSxcbiAgICAgIHRvcGljTmFtZTogdG9waWNOYW1lLFxuICAgICAgb25JdGVtOiBvbkl0ZW0sXG4gICAgICBvbkVycm9yOiBvbkVycm9yLFxuICAgICAgc3Vic2NyaXB0aW9uU3RhdGU6IHN1YnNjcmlwdGlvblN0YXRlLFxuICAgICAgc3Vic2NyaXB0aW9uOiBzdWJzY3JpcHRpb24sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc2VuZFN1YnNjcmliZShcbiAgICBvcHRpb25zOiBTZW5kU3Vic2NyaWJlT3B0aW9uc1xuICApOiBQcm9taXNlPFRvcGljU3Vic2NyaWJlLlJlc3BvbnNlPjtcblxuICBwcm90ZWN0ZWQgcHJlcGFyZUVuZENhbGxiYWNrKFxuICAgIG9wdGlvbnM6IFByZXBhcmVTdWJzY3JpYmVDYWxsYmFja09wdGlvbnNcbiAgKTogKCkgPT4gdm9pZCB7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIC8vIFdlIHdhbnQgdG8gcmVzdGFydCBvbiBzdHJlYW0gZW5kLCBleGNlcHQgaWY6XG4gICAgICAvLyAxLiBUaGUgc3RyZWFtIHdhcyBjYW5jZWxsZWQgYnkgdGhlIGNhbGxlci5cbiAgICAgIC8vIDIuIFRoZSBzdHJlYW0gd2FzIHJlc3RhcnRlZCBmb2xsb3dpbmcgYW4gZXJyb3IuXG4gICAgICBpZiAob3B0aW9ucy5yZXN0YXJ0ZWREdWVUb0Vycm9yKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLnRyYWNlKFxuICAgICAgICAgICdTdHJlYW0gZW5kZWQgYWZ0ZXIgZXJyb3IgYnV0IHdhcyByZXN0YXJ0ZWQgb24gdG9waWM6ICVzJyxcbiAgICAgICAgICBvcHRpb25zLnRvcGljTmFtZVxuICAgICAgICApO1xuICAgICAgICByZXR1cm47XG4gICAgICB9IGVsc2UgaWYgKCFvcHRpb25zLnN1YnNjcmlwdGlvblN0YXRlLmlzU3Vic2NyaWJlZCkge1xuICAgICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgICAnU3RyZWFtIGVuZGVkIGFmdGVyIHVuc3Vic2NyaWJlIG9uIHRvcGljOiAlcycsXG4gICAgICAgICAgb3B0aW9ucy50b3BpY05hbWVcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgJ1N0cmVhbSBlbmRlZCBvbiB0b3BpYzogJXM7IHJlc3RhcnRpbmcuJyxcbiAgICAgICAgb3B0aW9ucy50b3BpY05hbWVcbiAgICAgICk7XG5cbiAgICAgIC8vIFdoZW4gcmVzdGFydGluZyB0aGUgc3RyZWFtIHdlIGRvIG5vdCBkbyBhbnl0aGluZyB3aXRoIHRoZSBwcm9taXNlcyxcbiAgICAgIC8vIGJlY2F1c2Ugd2Ugc2hvdWxkIGhhdmUgYWxyZWFkeSByZXR1cm5lZCB0aGUgc3Vic2NyaXB0aW9uIG9iamVjdCB0byB0aGUgdXNlci5cbiAgICAgIHRoaXMuc2VuZFN1YnNjcmliZShvcHRpb25zKVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSk7XG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVTdWJzY3JpYmVFcnJvcihcbiAgICBvcHRpb25zOiBQcmVwYXJlU3Vic2NyaWJlQ2FsbGJhY2tPcHRpb25zLFxuICAgIG1vbWVudG9FcnJvcjogVG9waWNTdWJzY3JpYmUuRXJyb3IsXG4gICAgaXNSc3RTdHJlYW1Ob0Vycm9yOiBib29sZWFuXG4gICk6IHZvaWQge1xuICAgIC8vIFdoZW4gdGhlIGZpcnN0IG1lc3NhZ2UgaXMgYW4gZXJyb3IsIGFuIGlycmVjb3ZlcmFibGUgZXJyb3IgaGFzIGhhcHBlbmVkLFxuICAgIC8vIGVnIHRoZSBjYWNoZSBkb2VzIG5vdCBleGlzdC4gVGhlIHVzZXIgc2hvdWxkIG5vdCByZWNlaXZlIGEgc3Vic2NyaXB0aW9uXG4gICAgLy8gb2JqZWN0IGJ1dCBhbiBlcnJvci5cbiAgICBpZiAob3B0aW9ucy5maXJzdE1lc3NhZ2UpIHtcbiAgICAgIHRoaXMubG9nZ2VyLnRyYWNlKFxuICAgICAgICAnUmVjZWl2ZWQgc3Vic2NyaXB0aW9uIHN0cmVhbSBlcnJvcjsgdG9waWM6ICVzJyxcbiAgICAgICAgdHJ1bmNhdGVTdHJpbmcob3B0aW9ucy50b3BpY05hbWUpXG4gICAgICApO1xuXG4gICAgICBvcHRpb25zLnJlc29sdmUobW9tZW50b0Vycm9yKTtcbiAgICAgIG9wdGlvbnMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gVGhlIHNlcnZpY2UgY3V0cyB0aGUgc3RyZWFtIGFmdGVyIGEgcGVyaW9kIG9mIHRpbWUuXG4gICAgLy8gVHJhbnNwYXJlbnRseSByZXN0YXJ0IHRoZSBzdHJlYW0gaW5zdGVhZCBvZiBwcm9wYWdhdGluZyBhbiBlcnJvci5cbiAgICBpZiAoaXNSc3RTdHJlYW1Ob0Vycm9yKSB7XG4gICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgJ1NlcnZlciBjbG9zZWQgc3RyZWFtIGR1ZSB0byBpZGxlIGFjdGl2aXR5LiBSZXN0YXJ0aW5nLidcbiAgICAgICk7XG4gICAgICAvLyBXaGVuIHJlc3RhcnRpbmcgdGhlIHN0cmVhbSB3ZSBkbyBub3QgZG8gYW55dGhpbmcgd2l0aCB0aGUgcHJvbWlzZXMsXG4gICAgICAvLyBiZWNhdXNlIHdlIHNob3VsZCBoYXZlIGFscmVhZHkgcmV0dXJuZWQgdGhlIHN1YnNjcmlwdGlvbiBvYmplY3QgdG8gdGhlIHVzZXIuXG4gICAgICB0aGlzLnNlbmRTdWJzY3JpYmUob3B0aW9ucylcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0pO1xuICAgICAgb3B0aW9ucy5yZXN0YXJ0ZWREdWVUb0Vycm9yID0gdHJ1ZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBBbm90aGVyIHNwZWNpYWwgY2FzZSBpcyB3aGVuIHRoZSBjYWNoZSBpcyBub3QgZm91bmQuXG4gICAgLy8gVGhpcyBoYXBwZW5zIGhlcmUgaWYgdGhlIHVzZXIgZGVsZXRlcyB0aGUgY2FjaGUgaW4gdGhlIG1pZGRsZSBvZlxuICAgIC8vIGEgc3Vic2NyaXB0aW9uLlxuICAgIGlmIChtb21lbnRvRXJyb3IuZXJyb3JDb2RlKCkgPT09IE1vbWVudG9FcnJvckNvZGUuQ0FDSEVfTk9UX0ZPVU5EX0VSUk9SKSB7XG4gICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgJ1N0cmVhbSBlbmRlZCBkdWUgdG8gY2FjaGUgbm90IGZvdW5kIGVycm9yIG9uIHRvcGljOiAlcycsXG4gICAgICAgIG9wdGlvbnMudG9waWNOYW1lXG4gICAgICApO1xuICAgICAgb3B0aW9ucy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIG9wdGlvbnMub25FcnJvcihtb21lbnRvRXJyb3IsIG9wdGlvbnMuc3Vic2NyaXB0aW9uKTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2Uge1xuICAgICAgb3B0aW9ucy5vbkVycm9yKG1vbWVudG9FcnJvciwgb3B0aW9ucy5zdWJzY3JpcHRpb24pO1xuICAgIH1cbiAgfVxufVxuIl19
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RQdWJzdWJDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW50ZXJuYWwvY2xpZW50cy9wdWJzdWIvQWJzdHJhY3RQdWJzdWJDbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdUNBS3FCO0FBQ3JCLDRDQUFpRDtBQUNqRCwwQ0FPd0I7QUFDeEIsaUVBQTJEO0FBeUMzRCxNQUFzQixvQkFBb0I7SUFPeEMsWUFDRSxhQUFtQyxFQUNuQyxNQUFxQixFQUNyQix1QkFBNkQ7UUFFN0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLHVCQUF1QixHQUFHLHVCQUF1QixDQUFDO0lBQ3pELENBQUM7SUFFUyxTQUFTO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRVMsMEJBQTBCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDO0lBQ3RDLENBQUM7SUFFTSxLQUFLLENBQUMsT0FBTyxDQUNsQixTQUFpQixFQUNqQixTQUFpQixFQUNqQixLQUEwQjtRQUUxQixJQUFJO1lBQ0YsSUFBQSx5QkFBaUIsRUFBQyxTQUFTLENBQUMsQ0FBQztZQUM3QixJQUFBLHlCQUFpQixFQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzlCO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDWixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxrQkFBa0IsQ0FDcEQsR0FBWSxFQUNaLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxvQkFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FDbkMsQ0FBQztZQUNGLDhEQUE4RDtTQUMvRDtRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHdEQUF3RCxFQUN4RCxJQUFBLHNCQUFjLEVBQUMsU0FBUyxDQUFDLEVBQ3pC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QUN0RSwrRUFBK0U7Z0JBQy9FLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO3FCQUN4QixJQUFJLENBQUMsR0FBRyxFQUFFO29CQUNULE9BQU87Z0JBQ1QsQ0FBQyxDQUFDO3FCQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZixtREFBbUQsRUFDbkQsQ0FBQyxDQUNGLENBQUM7b0JBQ0YsT0FBTztnQkFDVCxDQUFDLENBQUMsQ0FBQztnQkFDTCxPQUFPO1lBQ1QsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZiw2REFBNkQsRUFDN0QsQ0FBQyxDQUNGLENBQUM7Z0JBQ0YsT0FBTztZQUNULENBQUMsQ0FBQyxDQUFDO1lBQ0wsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztRQUVyRSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZiw4RUFBOEUsQ0FDL0UsQ0FBQztRQUNGLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0Y7QUFyT0Qsb0RBcU9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgc2xlZXAsXG4gIHRydW5jYXRlU3RyaW5nLFxuICB2YWxpZGF0ZUNhY2hlTmFtZSxcbiAgdmFsaWRhdGVUb3BpY05hbWUsXG59IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7TW9tZW50b0Vycm9yQ29kZX0gZnJvbSAnLi4vLi4vLi4vZXJyb3JzJztcbmltcG9ydCB7XG4gIFRvcGljUHVibGlzaCxcbiAgVG9waWNJdGVtLFxuICBNb21lbnRvTG9nZ2VyLFxuICBUb3BpY1N1YnNjcmliZSxcbiAgU3Vic2NyaWJlQ2FsbE9wdGlvbnMsXG4gIE1vbWVudG9Mb2dnZXJGYWN0b3J5LFxufSBmcm9tICcuLi8uLi8uLi9pbmRleCc7XG5pbXBvcnQge1N1YnNjcmlwdGlvblN0YXRlfSBmcm9tICcuLi8uLi9zdWJzY3JpcHRpb24tc3RhdGUnO1xuaW1wb3J0IHtJUHVic3ViQ2xpZW50fSBmcm9tICcuL0lQdWJzdWJDbGllbnQnO1xuaW1wb3J0IHtJQ2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXJ9IGZyb20gJy4uLy4uLy4uL2Vycm9ycy9JQ2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXInO1xuXG4vKipcbiAqIEVuY2Fwc3VsYXRlcyBwYXJhbWV0ZXJzIGZvciB0aGUgYHNlbmRTdWJzY3JpYmVgIG1ldGhvZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZW5kU3Vic2NyaWJlT3B0aW9ucyB7XG4gIGNhY2hlTmFtZTogc3RyaW5nO1xuICB0b3BpY05hbWU6IHN0cmluZztcbiAgb25JdGVtOiAoaXRlbTogVG9waWNJdGVtKSA9PiB2b2lkO1xuICBvbkVycm9yOiAoXG4gICAgZXJyb3I6IFRvcGljU3Vic2NyaWJlLkVycm9yLFxuICAgIHN1YnNjcmlwdGlvbjogVG9waWNTdWJzY3JpYmUuU3Vic2NyaXB0aW9uXG4gICkgPT4gdm9pZDtcbiAgc3Vic2NyaXB0aW9uU3RhdGU6IFN1YnNjcmlwdGlvblN0YXRlO1xuICBzdWJzY3JpcHRpb246IFRvcGljU3Vic2NyaWJlLlN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgc3RyZWFtIHdhcyByZXN0YXJ0ZWQgZHVlIHRvIGFuIGVycm9yLiBJZiBzbywgd2Ugc2tpcCB0aGUgZW5kIHN0cmVhbSBoYW5kbGVyXG4gICAqIGxvZ2ljIGFzIHRoZSBlcnJvciBoYW5kbGVyIHdpbGwgaGF2ZSByZXN0YXJ0ZWQgdGhlIHN0cmVhbS5cbiAgICovXG4gIHJlc3RhcnRlZER1ZVRvRXJyb3I6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZiB0aGUgZmlyc3QgbWVzc2FnZSBpcyBhbiBlcnJvciwgd2UgcmV0dXJuIGFuIGVycm9yIGltbWVkaWF0ZWx5IGFuZCBkbyBub3Qgc3Vic2NyaWJlLlxuICAgKi9cbiAgZmlyc3RNZXNzYWdlOiBib29sZWFuO1xufVxuXG4vKipcbiAqIEVuY2Fwc3VsYXRlcyBwYXJhbWV0ZXJzIGZvciB0aGUgc3Vic2NyaWJlIGNhbGxiYWNrIHByZXBhcmUgbWV0aG9kcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcmVwYXJlU3Vic2NyaWJlQ2FsbGJhY2tPcHRpb25zIGV4dGVuZHMgU2VuZFN1YnNjcmliZU9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIHByb21pc2UgcmVzb2x2ZSBmdW5jdGlvbi5cbiAgICovXG4gIHJlc29sdmU6IChcbiAgICB2YWx1ZTogVG9waWNTdWJzY3JpYmUuUmVzcG9uc2UgfCBQcm9taXNlTGlrZTxUb3BpY1N1YnNjcmliZS5TdWJzY3JpcHRpb24+XG4gICkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0UHVic3ViQ2xpZW50PFRHcnBjRXJyb3I+XG4gIGltcGxlbWVudHMgSVB1YnN1YkNsaWVudFxue1xuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlckZhY3Rvcnk6IE1vbWVudG9Mb2dnZXJGYWN0b3J5O1xuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlcjogTW9tZW50b0xvZ2dlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBjYWNoZVNlcnZpY2VFcnJvck1hcHBlcjogSUNhY2hlU2VydmljZUVycm9yTWFwcGVyPFRHcnBjRXJyb3I+O1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBsb2dnZXJGYWN0b3J5OiBNb21lbnRvTG9nZ2VyRmFjdG9yeSxcbiAgICBsb2dnZXI6IE1vbWVudG9Mb2dnZXIsXG4gICAgY2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXI6IElDYWNoZVNlcnZpY2VFcnJvck1hcHBlcjxUR3JwY0Vycm9yPlxuICApIHtcbiAgICB0aGlzLmxvZ2dlckZhY3RvcnkgPSBsb2dnZXJGYWN0b3J5O1xuICAgIHRoaXMubG9nZ2VyID0gbG9nZ2VyO1xuICAgIHRoaXMuY2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXIgPSBjYWNoZVNlcnZpY2VFcnJvck1hcHBlcjtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRMb2dnZXIoKTogTW9tZW50b0xvZ2dlciB7XG4gICAgcmV0dXJuIHRoaXMubG9nZ2VyO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldENhY2hlU2VydmljZUVycm9yTWFwcGVyKCk6IElDYWNoZVNlcnZpY2VFcnJvck1hcHBlcjxUR3JwY0Vycm9yPiB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXI7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgcHVibGlzaChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICB0b3BpY05hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPFRvcGljUHVibGlzaC5SZXNwb25zZT4ge1xuICAgIHRyeSB7XG4gICAgICB2YWxpZGF0ZUNhY2hlTmFtZShjYWNoZU5hbWUpO1xuICAgICAgdmFsaWRhdGVUb3BpY05hbWUodG9waWNOYW1lKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJldHVybiB0aGlzLmNhY2hlU2VydmljZUVycm9yTWFwcGVyLnJldHVybk9yVGhyb3dFcnJvcihcbiAgICAgICAgZXJyIGFzIEVycm9yLFxuICAgICAgICBlcnIgPT4gbmV3IFRvcGljUHVibGlzaC5FcnJvcihlcnIpXG4gICAgICApO1xuICAgICAgLy8gKSAgbmV3IFRvcGljUHVibGlzaC5FcnJvcihub3JtYWxpemVTZGtFcnJvcihlcnIgYXMgRXJyb3IpKTtcbiAgICB9XG4gICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAnSXNzdWluZyBwdWJsaXNoIHJlcXVlc3Q7IHRvcGljOiAlcywgbWVzc2FnZSBsZW5ndGg6ICVzJyxcbiAgICAgIHRydW5jYXRlU3RyaW5nKHRvcGljTmFtZSksXG4gICAgICB2YWx1ZS5sZW5ndGhcbiAgICApO1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuc2VuZFB1Ymxpc2goY2FjaGVOYW1lLCB0b3BpY05hbWUsIHZhbHVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzZW5kUHVibGlzaChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICB0b3BpY05hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPFRvcGljUHVibGlzaC5SZXNwb25zZT47XG5cbiAgcHVibGljIGFzeW5jIHN1YnNjcmliZShcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICB0b3BpY05hbWU6IHN0cmluZyxcbiAgICBvcHRpb25zOiBTdWJzY3JpYmVDYWxsT3B0aW9uc1xuICApOiBQcm9taXNlPFRvcGljU3Vic2NyaWJlLlJlc3BvbnNlPiB7XG4gICAgdHJ5IHtcbiAgICAgIHZhbGlkYXRlQ2FjaGVOYW1lKGNhY2hlTmFtZSk7XG4gICAgICB2YWxpZGF0ZVRvcGljTmFtZSh0b3BpY05hbWUpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIHRoaXMuY2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXIucmV0dXJuT3JUaHJvd0Vycm9yKFxuICAgICAgICBlcnIgYXMgRXJyb3IsXG4gICAgICAgIGVyciA9PiBuZXcgVG9waWNTdWJzY3JpYmUuRXJyb3IoZXJyKVxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAnSXNzdWluZyBzdWJzY3JpYmUgcmVxdWVzdDsgdG9waWM6ICVzJyxcbiAgICAgIHRydW5jYXRlU3RyaW5nKHRvcGljTmFtZSlcbiAgICApO1xuXG4gICAgY29uc3Qgb25JdGVtID1cbiAgICAgIG9wdGlvbnMub25JdGVtID8/XG4gICAgICAoKCkgPT4ge1xuICAgICAgICByZXR1cm47XG4gICAgICB9KTtcbiAgICBjb25zdCBvbkVycm9yID1cbiAgICAgIG9wdGlvbnMub25FcnJvciA/P1xuICAgICAgKCgpID0+IHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfSk7XG5cbiAgICBjb25zdCBzdWJzY3JpcHRpb25TdGF0ZSA9IG5ldyBTdWJzY3JpcHRpb25TdGF0ZSgpO1xuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IG5ldyBUb3BpY1N1YnNjcmliZS5TdWJzY3JpcHRpb24oXG4gICAgICB0aGlzLmxvZ2dlckZhY3RvcnksXG4gICAgICBzdWJzY3JpcHRpb25TdGF0ZVxuICAgICk7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuc2VuZFN1YnNjcmliZSh7XG4gICAgICBjYWNoZU5hbWU6IGNhY2hlTmFtZSxcbiAgICAgIHRvcGljTmFtZTogdG9waWNOYW1lLFxuICAgICAgb25JdGVtOiBvbkl0ZW0sXG4gICAgICBvbkVycm9yOiBvbkVycm9yLFxuICAgICAgc3Vic2NyaXB0aW9uU3RhdGU6IHN1YnNjcmlwdGlvblN0YXRlLFxuICAgICAgc3Vic2NyaXB0aW9uOiBzdWJzY3JpcHRpb24sXG4gICAgICByZXN0YXJ0ZWREdWVUb0Vycm9yOiBmYWxzZSxcbiAgICAgIGZpcnN0TWVzc2FnZTogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzZW5kU3Vic2NyaWJlKFxuICAgIG9wdGlvbnM6IFNlbmRTdWJzY3JpYmVPcHRpb25zXG4gICk6IFByb21pc2U8VG9waWNTdWJzY3JpYmUuUmVzcG9uc2U+O1xuXG4gIHByb3RlY3RlZCBwcmVwYXJlRW5kQ2FsbGJhY2soXG4gICAgb3B0aW9uczogUHJlcGFyZVN1YnNjcmliZUNhbGxiYWNrT3B0aW9uc1xuICApOiAoKSA9PiB2b2lkIHtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgLy8gV2Ugd2FudCB0byByZXN0YXJ0IG9uIHN0cmVhbSBlbmQsIGV4Y2VwdCBpZjpcbiAgICAgIC8vIDEuIFRoZSBzdHJlYW0gd2FzIGNhbmNlbGxlZCBieSB0aGUgY2FsbGVyLlxuICAgICAgLy8gMi4gVGhlIHN0cmVhbSB3YXMgcmVzdGFydGVkIGZvbGxvd2luZyBhbiBlcnJvci5cbiAgICAgIGlmIChvcHRpb25zLnJlc3RhcnRlZER1ZVRvRXJyb3IpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAgICAgJ1N0cmVhbSBlbmRlZCBhZnRlciBlcnJvciBidXQgd2FzIHJlc3RhcnRlZCBvbiB0b3BpYzogJXMnLFxuICAgICAgICAgIG9wdGlvbnMudG9waWNOYW1lXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH0gZWxzZSBpZiAoIW9wdGlvbnMuc3Vic2NyaXB0aW9uU3RhdGUuaXNTdWJzY3JpYmVkKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLnRyYWNlKFxuICAgICAgICAgICdTdHJlYW0gZW5kZWQgYWZ0ZXIgdW5zdWJzY3JpYmUgb24gdG9waWM6ICVzJyxcbiAgICAgICAgICBvcHRpb25zLnRvcGljTmFtZVxuICAgICAgICApO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMubG9nZ2VyLnRyYWNlKFxuICAgICAgICAnU3RyZWFtIGVuZGVkIG9uIHRvcGljOiAlczsgcmVzdGFydGluZy4nLFxuICAgICAgICBvcHRpb25zLnRvcGljTmFtZVxuICAgICAgKTtcblxuICAgICAgLy8gV2hlbiByZXN0YXJ0aW5nIHRoZSBzdHJlYW0gd2UgZG8gbm90IGRvIGFueXRoaW5nIHdpdGggdGhlIHByb21pc2VzLFxuICAgICAgLy8gYmVjYXVzZSB3ZSBzaG91bGQgaGF2ZSBhbHJlYWR5IHJldHVybmVkIHRoZSBzdWJzY3JpcHRpb24gb2JqZWN0IHRvIHRoZSB1c2VyLlxuICAgICAgdGhpcy5zZW5kU3Vic2NyaWJlKG9wdGlvbnMpXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9KTtcbiAgICB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVN1YnNjcmliZUVycm9yKFxuICAgIG9wdGlvbnM6IFByZXBhcmVTdWJzY3JpYmVDYWxsYmFja09wdGlvbnMsXG4gICAgbW9tZW50b0Vycm9yOiBUb3BpY1N1YnNjcmliZS5FcnJvcixcbiAgICBzaG91bGRSZWNvbm5lY3RTdWJzY3JpcHRpb246IGJvb2xlYW5cbiAgKTogdm9pZCB7XG4gICAgdGhpcy5sb2dnZXIudHJhY2UoJ0hhbmRsaW5nIHN1YnNjcmliZSBlcnJvcicpO1xuICAgIC8vIFdoZW4gdGhlIGZpcnN0IG1lc3NhZ2UgaXMgYW4gZXJyb3IsIGFuIGlycmVjb3ZlcmFibGUgZXJyb3IgaGFzIGhhcHBlbmVkLFxuICAgIC8vIGVnIHRoZSBjYWNoZSBkb2VzIG5vdCBleGlzdC4gVGhlIHVzZXIgc2hvdWxkIG5vdCByZWNlaXZlIGEgc3Vic2NyaXB0aW9uXG4gICAgLy8gb2JqZWN0IGJ1dCBhbiBlcnJvci5cbiAgICBpZiAob3B0aW9ucy5maXJzdE1lc3NhZ2UpIHtcbiAgICAgIHRoaXMubG9nZ2VyLnRyYWNlKFxuICAgICAgICAnRmlyc3QgbWVzc2FnZSBvbiBzdWJzY3JpcHRpb24gd2FzIGFuIGVycm9yOyB0b3BpYzogJXMsIGVycm9yOiAlcycsXG4gICAgICAgIHRydW5jYXRlU3RyaW5nKG9wdGlvbnMudG9waWNOYW1lKSxcbiAgICAgICAgbW9tZW50b0Vycm9yLnRvU3RyaW5nKClcbiAgICAgICk7XG5cbiAgICAgIG9wdGlvbnMucmVzb2x2ZShtb21lbnRvRXJyb3IpO1xuICAgICAgb3B0aW9ucy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICdTdWJzY3JpYmUgZXJyb3Igd2FzIG5vdCB0aGUgZmlyc3QgbWVzc2FnZSBvbiB0aGUgc3RyZWFtLidcbiAgICApO1xuXG4gICAgLy8gQW5vdGhlciBzcGVjaWFsIGNhc2UgaXMgd2hlbiB0aGUgY2FjaGUgaXMgbm90IGZvdW5kLlxuICAgIC8vIFRoaXMgaGFwcGVucyBoZXJlIGlmIHRoZSB1c2VyIGRlbGV0ZXMgdGhlIGNhY2hlIGluIHRoZSBtaWRkbGUgb2ZcbiAgICAvLyBhIHN1YnNjcmlwdGlvbi5cbiAgICBpZiAobW9tZW50b0Vycm9yLmVycm9yQ29kZSgpID09PSBNb21lbnRvRXJyb3JDb2RlLkNBQ0hFX05PVF9GT1VORF9FUlJPUikge1xuICAgICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAgICdTdHJlYW0gZW5kZWQgZHVlIHRvIGNhY2hlIG5vdCBmb3VuZCBlcnJvciBvbiB0b3BpYzogJXMnLFxuICAgICAgICBvcHRpb25zLnRvcGljTmFtZVxuICAgICAgKTtcbiAgICAgIG9wdGlvbnMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICBvcHRpb25zLm9uRXJyb3IobW9tZW50b0Vycm9yLCBvcHRpb25zLnN1YnNjcmlwdGlvbik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAnQ2hlY2tpbmcgdG8gc2VlIGlmIHdlIHNob3VsZCBhdHRlbXB0IHRvIHJlY29ubmVjdCBzdWJzY3JpcHRpb24uJ1xuICAgICk7XG5cbiAgICAvLyBGb3Igc2V2ZXJhbCB0eXBlcyBvZiBlcnJvcnMgaGF2aW5nIHRvIHdpdGggbmV0d29yayBpbnRlcnJ1cHRpb25zLCB3ZSB3aXNoIHRvXG4gICAgLy8gdHJhbnNwYXJlbnRseSByZXN0YXJ0IHRoZSBzdHJlYW0gaW5zdGVhZCBvZiBwcm9wYWdhdGluZyBhbiBlcnJvci5cbiAgICBpZiAoc2hvdWxkUmVjb25uZWN0U3Vic2NyaXB0aW9uKSB7XG4gICAgICBvcHRpb25zLnJlc3RhcnRlZER1ZVRvRXJyb3IgPSB0cnVlO1xuICAgICAgY29uc3QgcmVjb25uZWN0RGVsYXlNaWxsaXMgPSAxMDA7XG4gICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgJ0Vycm9yIG9jY3VycmVkIG9uIHN1YnNjcmlwdGlvbiwgcG9zc2libHkgYSBuZXR3b3JrIGludGVycnVwdGlvbi4gV2lsbCBhdHRlbXB0IHRvIHJlc3RhcnQgc3RyZWFtIGluICVzIG1zLicsXG4gICAgICAgIHJlY29ubmVjdERlbGF5TWlsbGlzXG4gICAgICApO1xuICAgICAgc2xlZXAocmVjb25uZWN0RGVsYXlNaWxsaXMpXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAvLyBXaGVuIHJlc3RhcnRpbmcgdGhlIHN0cmVhbSB3ZSBkbyBub3QgZG8gYW55dGhpbmcgd2l0aCB0aGUgcHJvbWlzZXMsXG4gICAgICAgICAgLy8gYmVjYXVzZSB3ZSBzaG91bGQgaGF2ZSBhbHJlYWR5IHJldHVybmVkIHRoZSBzdWJzY3JpcHRpb24gb2JqZWN0IHRvIHRoZSB1c2VyLlxuICAgICAgICAgIHRoaXMuc2VuZFN1YnNjcmliZShvcHRpb25zKVxuICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKGUgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgICAgICAgICAnRXJyb3Igd2hlbiBjYWxsaW5nIHNlbmRTdWJzY3JpYmUgdG8gcmVjb25uZWN0OiAlcycsXG4gICAgICAgICAgICAgICAgZVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaChlID0+IHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgICAgICdFcnJvciB3aGVuIHNsZWVwaW5nIHByaW9yIHRvIHNlbmRTdWJzY3JpYmUgdG8gcmVjb25uZWN0OiAlcycsXG4gICAgICAgICAgICBlXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMubG9nZ2VyLnRyYWNlKCdTdWJzY3JpYmUgZXJyb3Igd2FzIG5vdCBhIHJlLWNvbm5lY3RhYmxlIGVycm9yLicpO1xuXG4gICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAnU3Vic2NyaWJlIGVycm9yIHdhcyBub3Qgb25lIG9mIHRoZSBrbm93biBlcnJvciB0eXBlczsgY2FsbGluZyBlcnJvciBoYW5kbGVyLidcbiAgICApO1xuICAgIG9wdGlvbnMub25FcnJvcihtb21lbnRvRXJyb3IsIG9wdGlvbnMuc3Vic2NyaXB0aW9uKTtcbiAgfVxufVxuIl19
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import { TopicPublish, TopicSubscribe, SubscribeCallOptions } from '../../../index';
|
2
2
|
export interface IPubsubClient {
|
3
|
-
getEndpoint(): string;
|
4
3
|
publish(cacheName: string, topicName: string, value: string | Uint8Array): Promise<TopicPublish.Response>;
|
5
4
|
subscribe(cacheName: string, topicName: string, options: SubscribeCallOptions): Promise<TopicSubscribe.Response>;
|
6
5
|
}
|
@@ -1,3 +1,3 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVB1YnN1YkNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC9jbGllbnRzL3B1YnN1Yi9JUHVic3ViQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUb3BpY1B1Ymxpc2gsXG4gIFRvcGljU3Vic2NyaWJlLFxuICBTdWJzY3JpYmVDYWxsT3B0aW9ucyxcbn0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElQdWJzdWJDbGllbnQge1xuICBwdWJsaXNoKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHRvcGljTmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8VG9waWNQdWJsaXNoLlJlc3BvbnNlPjtcbiAgc3Vic2NyaWJlKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHRvcGljTmFtZTogc3RyaW5nLFxuICAgIG9wdGlvbnM6IFN1YnNjcmliZUNhbGxPcHRpb25zXG4gICk6IFByb21pc2U8VG9waWNTdWJzY3JpYmUuUmVzcG9uc2U+O1xufVxuIl19
|
@@ -33,6 +33,12 @@ class SubscriptionState {
|
|
33
33
|
this.setUnsubscribed();
|
34
34
|
}
|
35
35
|
}
|
36
|
+
toString() {
|
37
|
+
return JSON.stringify({
|
38
|
+
lastTopicSequenceNumber: this.lastTopicSequenceNumber,
|
39
|
+
isSubscribed: this._isSubscribed,
|
40
|
+
}, null, 2);
|
41
|
+
}
|
36
42
|
}
|
37
43
|
exports.SubscriptionState = SubscriptionState;
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLXN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ludGVybmFsL3N1YnNjcmlwdGlvbi1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILE1BQWEsaUJBQWlCO0lBSTVCO1FBQ0UsSUFBSSxDQUFDLGNBQWMsR0FBRyxHQUFHLEVBQUU7WUFDekIsT0FBTztRQUNULENBQUMsQ0FBQztRQUNGLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLDJCQUEyQjs7UUFDcEMsT0FBTyxDQUFDLE1BQUEsSUFBSSxDQUFDLHVCQUF1QixtQ0FBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRU0sYUFBYTtRQUNsQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztJQUM1QixDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBVyxhQUFhLENBQUMsYUFBeUI7UUFDaEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQUM7SUFDdEMsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FDbkI7WUFDRSx1QkFBdUIsRUFBRSxJQUFJLENBQUMsdUJBQXVCO1lBQ3JELFlBQVksRUFBRSxJQUFJLENBQUMsYUFBYTtTQUNqQyxFQUNELElBQUksRUFDSixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWhERCw4Q0FnREMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEVuY2Fwc3VsYXRlcyBhIHRvcGljIHN1YnNjcmlwdGlvbiBzdHJlYW0gc3RhdGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdWJzY3JpcHRpb25TdGF0ZSB7XG4gIHByaXZhdGUgX3Vuc3Vic2NyaWJlRm46ICgpID0+IHZvaWQ7XG4gIHB1YmxpYyBsYXN0VG9waWNTZXF1ZW5jZU51bWJlcj86IG51bWJlcjtcbiAgcHJpdmF0ZSBfaXNTdWJzY3JpYmVkOiBib29sZWFuO1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl91bnN1YnNjcmliZUZuID0gKCkgPT4ge1xuICAgICAgcmV0dXJuO1xuICAgIH07XG4gICAgdGhpcy5faXNTdWJzY3JpYmVkID0gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc3VtZUF0VG9waWNTZXF1ZW5jZU51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5sYXN0VG9waWNTZXF1ZW5jZU51bWJlciA/PyAtMSkgKyAxO1xuICB9XG5cbiAgcHVibGljIHNldFN1YnNjcmliZWQoKTogdm9pZCB7XG4gICAgdGhpcy5faXNTdWJzY3JpYmVkID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRVbnN1YnNjcmliZWQoKTogdm9pZCB7XG4gICAgdGhpcy5faXNTdWJzY3JpYmVkID0gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzU3Vic2NyaWJlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNTdWJzY3JpYmVkO1xuICB9XG5cbiAgcHVibGljIHNldCB1bnN1YnNjcmliZUZuKHVuc3Vic2NyaWJlRm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLl91bnN1YnNjcmliZUZuID0gdW5zdWJzY3JpYmVGbjtcbiAgfVxuXG4gIHB1YmxpYyB1bnN1YnNjcmliZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc1N1YnNjcmliZWQpIHtcbiAgICAgIHRoaXMuX3Vuc3Vic2NyaWJlRm4oKTtcbiAgICAgIHRoaXMuc2V0VW5zdWJzY3JpYmVkKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KFxuICAgICAge1xuICAgICAgICBsYXN0VG9waWNTZXF1ZW5jZU51bWJlcjogdGhpcy5sYXN0VG9waWNTZXF1ZW5jZU51bWJlcixcbiAgICAgICAgaXNTdWJzY3JpYmVkOiB0aGlzLl9pc1N1YnNjcmliZWQsXG4gICAgICB9LFxuICAgICAgbnVsbCxcbiAgICAgIDJcbiAgICApO1xuICB9XG59XG4iXX0=
|
@@ -4,6 +4,7 @@ export declare function validateCacheName(name: string): void;
|
|
4
4
|
export declare function validateCacheKeyOrPrefix(name: string): void;
|
5
5
|
export declare function validateSetName(name: string): void;
|
6
6
|
export declare function validateSetSampleLimit(limit: number): void;
|
7
|
+
export declare function validateSetPopCount(count: number): void;
|
7
8
|
export declare function validateSortedSetName(name: string): void;
|
8
9
|
export declare function validateSortedSetRanks(start_rank: number, end_rank?: number): void;
|
9
10
|
export declare function validateSortedSetScores(minScore?: number, maxScore?: number): void;
|