@nova-design-system/nova-angular 3.21.1-beta.0 → 3.23.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/nova-components/esm2022/lib/providers/notification-service.component.mjs +3 -1
- package/dist/nova-components/esm2022/lib/providers/notification.service.mjs +3 -4
- package/dist/nova-components/esm2022/lib/stencil-generated/components.mjs +271 -127
- package/dist/nova-components/fesm2022/nova-components.mjs +273 -128
- package/dist/nova-components/fesm2022/nova-components.mjs.map +1 -1
- package/dist/nova-components/lib/stencil-generated/components.d.ts +127 -36
- package/package.json +1 -1
|
@@ -82,6 +82,7 @@ export class NotificationServiceComponent {
|
|
|
82
82
|
"
|
|
83
83
|
#notificationEl
|
|
84
84
|
[attr.data-id]="notification.id"
|
|
85
|
+
[uid]="notification.id"
|
|
85
86
|
[heading]="notification.heading"
|
|
86
87
|
[message]="notification.message"
|
|
87
88
|
[dismissible]="notification.dismissible"
|
|
@@ -137,6 +138,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
|
|
|
137
138
|
"
|
|
138
139
|
#notificationEl
|
|
139
140
|
[attr.data-id]="notification.id"
|
|
141
|
+
[uid]="notification.id"
|
|
140
142
|
[heading]="notification.heading"
|
|
141
143
|
[message]="notification.message"
|
|
142
144
|
[dismissible]="notification.dismissible"
|
|
@@ -180,4 +182,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
|
|
|
180
182
|
type: ViewChildren,
|
|
181
183
|
args: ['notificationEl', { read: ElementRef }]
|
|
182
184
|
}] } });
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
185
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXNlcnZpY2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbm92YS1jb21wb25lbnRzL3NyYy9saWIvcHJvdmlkZXJzL25vdGlmaWNhdGlvbi1zZXJ2aWNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxZQUFZLEVBQ1osVUFBVSxFQUVWLHNCQUFzQixHQUN2QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFLL0M7O0dBRUc7QUF1REgsTUFBTSxPQUFPLDRCQUE0QjtJQXdCdkMsWUFBb0IsbUJBQXdDO1FBQXhDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFiNUQ7O1dBRUc7UUFDSCxrQkFBYSxHQUFtQixFQUFFLENBQUM7SUFVNEIsQ0FBQztJQUVoRTs7T0FFRztJQUNILFFBQVE7UUFDTiwwQ0FBMEM7UUFDMUMsSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUMzRCxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBRTdELG9DQUFvQztRQUNwQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUNuRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxDQUN0QyxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZTtRQUNiLE1BQU0sSUFBSSxHQUFHLEdBQUcsRUFBRTtZQUNoQixJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDckMsS0FBSyxNQUFNLEtBQUssSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7Z0JBQ25ELE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7Z0JBQy9CLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ3RDLElBQUksRUFBRTtvQkFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN2RCxDQUFDO1FBQ0gsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxFQUFFLENBQUM7UUFDUCxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxxQkFBcUIsQ0FBQyxLQUFhLEVBQUUsWUFBMEI7UUFDN0QsT0FBTyxZQUFZLENBQUMsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILG1CQUFtQixDQUFDLEtBQTJCLEVBQUUsRUFBVztRQUMxRCxJQUFJLEtBQUssQ0FBQyxNQUFNLElBQUksRUFBRSxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0QyxDQUFDO0lBQ0gsQ0FBQzs4R0FyRlUsNEJBQTRCO2tHQUE1Qiw0QkFBNEIsOE5BbUJDLFVBQVUsNkJBcEV4Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0ErQ1QsMkRBakRTLFlBQVk7OzJGQW1EWCw0QkFBNEI7a0JBdER4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0NUO2lCQUNGO3dGQUtVLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS0csU0FBUztzQkFBakIsS0FBSztnQkFXRSxlQUFlO3NCQUR0QixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIFF1ZXJ5TGlzdCxcbiAgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG4vLyBpbXBvcnQgeyBOb3ZhQ29tcG9uZW50c01vZHVsZSB9IGZyb20gJy4uL25vdmEtY29tcG9uZW50cy5tb2R1bGUnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSwgdHlwZSBOb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBBbmd1bGFyIGNvbXBvbmVudCB0aGF0IHJlbmRlcnMgdGhlIG5vdGlmaWNhdGlvbiBjb250YWluZXIgd2l0aCBhY3RpdmUgbm90aWZpY2F0aW9ucy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbnYtbm90aWZpY2F0aW9uLXNlcnZpY2UnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxudi1ub3RpZmljYXRpb25jb250YWluZXJcbiAgICAgIFtwb3NpdGlvbl09XCJwb3NpdGlvblwiXG4gICAgICBbY2xhc3NdPVwiY2xhc3NOYW1lXCJcbiAgICAgIGRhdGEtdGVzdGlkPVwibm90aWZpY2F0aW9uLWNvbnRhaW5lclwiXG4gICAgPlxuICAgICAgPG52LW5vdGlmaWNhdGlvblxuICAgICAgICAqbmdGb3I9XCJcbiAgICAgICAgICBsZXQgbm90aWZpY2F0aW9uIG9mIG5vdGlmaWNhdGlvbnM7XG4gICAgICAgICAgdHJhY2tCeTogdHJhY2tCeU5vdGlmaWNhdGlvbklkXG4gICAgICAgIFwiXG4gICAgICAgICNub3RpZmljYXRpb25FbFxuICAgICAgICBbYXR0ci5kYXRhLWlkXT1cIm5vdGlmaWNhdGlvbi5pZFwiXG4gICAgICAgIFt1aWRdPVwibm90aWZpY2F0aW9uLmlkXCJcbiAgICAgICAgW2hlYWRpbmddPVwibm90aWZpY2F0aW9uLmhlYWRpbmdcIlxuICAgICAgICBbbWVzc2FnZV09XCJub3RpZmljYXRpb24ubWVzc2FnZVwiXG4gICAgICAgIFtkaXNtaXNzaWJsZV09XCJub3RpZmljYXRpb24uZGlzbWlzc2libGVcIlxuICAgICAgICBbZW1waGFzaXNdPVwibm90aWZpY2F0aW9uLmVtcGhhc2lzXCJcbiAgICAgICAgW2ZlZWRiYWNrXT1cIm5vdGlmaWNhdGlvbi5mZWVkYmFja1wiXG4gICAgICAgIFtpY29uXT1cIm5vdGlmaWNhdGlvbi5pY29uXCJcbiAgICAgICAgW2luaXRpYWxseUhpZGRlbl09XCJ0cnVlXCJcbiAgICAgICAgKGhpZGRlbkNoYW5nZWQpPVwiaGFuZGxlSGlkZGVuQ2hhbmdlZCgkZXZlbnQsIG5vdGlmaWNhdGlvbi5pZClcIlxuICAgICAgPlxuICAgICAgICA8IS0tIEFjdGlvbnMgc2xvdCBjb250ZW50IGZvciB0aGUgY3VzdG9tIGVsZW1lbnQgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBzbG90PVwiYWN0aW9uc1wiXG4gICAgICAgICAgY2xhc3M9XCJmbGV4IGdhcC0yXCJcbiAgICAgICAgICAqbmdJZj1cIm5vdGlmaWNhdGlvbi5hY3Rpb25zPy5sZW5ndGggfHwgbm90aWZpY2F0aW9uLmFjdGlvblNsb3RcIlxuICAgICAgICA+XG4gICAgICAgICAgPCEtLSBDb25maWctZHJpdmVuIGFjdGlvbnMgLS0+XG4gICAgICAgICAgPG52LWJ1dHRvblxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBub3RpZmljYXRpb24uYWN0aW9uc1wiXG4gICAgICAgICAgICBlbXBoYXNpcz1cImxvd1wiXG4gICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgICAgKGNsaWNrKT1cImFjdGlvbi5vbkNsaWNrKClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IGFjdGlvbi5sYWJlbCB9fVxuICAgICAgICAgIDwvbnYtYnV0dG9uPlxuXG4gICAgICAgICAgPCEtLSBDb21wb25lbnQtZHJpdmVuIGFjdGlvbnMgLS0+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nSWY9XCJub3RpZmljYXRpb24uYWN0aW9uU2xvdFwiXG4gICAgICAgICAgICBbbmdDb21wb25lbnRPdXRsZXRdPVwibm90aWZpY2F0aW9uLmFjdGlvblNsb3RcIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L252LW5vdGlmaWNhdGlvbj5cbiAgICA8L252LW5vdGlmaWNhdGlvbmNvbnRhaW5lcj5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uU2VydmljZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIFBvc2l0aW9uIG9mIHRoZSBub3RpZmljYXRpb24gY29udGFpbmVyIG9uIHRoZSBzY3JlZW4uXG4gICAqL1xuICBASW5wdXQoKSBwb3NpdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBDU1MgY2xhc3MgbmFtZSBmb3IgdGhlIG5vdGlmaWNhdGlvbiBjb250YWluZXIuXG4gICAqL1xuICBASW5wdXQoKSBjbGFzc05hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFycmF5IG9mIGFjdGl2ZSBub3RpZmljYXRpb25zLlxuICAgKi9cbiAgbm90aWZpY2F0aW9uczogTm90aWZpY2F0aW9uW10gPSBbXTtcblxuICAvKipcbiAgICogUmVmZXJlbmNlcyB0byB0aGUgbm90aWZpY2F0aW9uIGVsZW1lbnRzLlxuICAgKi9cbiAgQFZpZXdDaGlsZHJlbignbm90aWZpY2F0aW9uRWwnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgcHJpdmF0ZSBub3RpZmljYXRpb25FbHMhOiBRdWVyeUxpc3Q8RWxlbWVudFJlZjxIVE1MTnZOb3RpZmljYXRpb25FbGVtZW50Pj47XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBub3RpZmljYXRpb25TZXJ2aWNlOiBOb3RpZmljYXRpb25TZXJ2aWNlKSB7fVxuXG4gIC8qKlxuICAgKiBDb21wb25lbnQgaW5pdGlhbGl6YXRpb24uXG4gICAqL1xuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBVc2Ugc2VydmljZSBjb25maWcgaWYgbm8gaW5wdXQgcHJvdmlkZWRcbiAgICB0aGlzLnBvc2l0aW9uID8/PSB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuY29uZmlnLnBvc2l0aW9uO1xuICAgIHRoaXMuY2xhc3NOYW1lID8/PSB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuY29uZmlnLmNsYXNzTmFtZTtcblxuICAgIC8vIFN1YnNjcmliZSB0byBub3RpZmljYXRpb24gY2hhbmdlc1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLm5vdGlmaWNhdGlvbnMkLnN1YnNjcmliZShcbiAgICAgIChsaXN0KSA9PiAodGhpcy5ub3RpZmljYXRpb25zID0gbGlzdCksXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTeW5jaHJvbml6ZSBub3RpZmljYXRpb24gZWxlbWVudHMvcmVmcyB3aXRoIHRoZSBzZXJ2aWNlLlxuICAgKi9cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHN5bmMgPSAoKSA9PiB7XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuY2xlYXJSZWZzKCk7XG4gICAgICBmb3IgKGNvbnN0IGVsUmVmIG9mIHRoaXMubm90aWZpY2F0aW9uRWxzLnRvQXJyYXkoKSkge1xuICAgICAgICBjb25zdCBlbCA9IGVsUmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGlkID0gZWwuZ2V0QXR0cmlidXRlKCdkYXRhLWlkJyk7XG4gICAgICAgIGlmIChpZCkgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnJlZ2lzdGVyUmVmKGlkLCBlbCk7XG4gICAgICB9XG4gICAgfTtcbiAgICBzeW5jKCk7XG4gICAgdGhpcy5ub3RpZmljYXRpb25FbHMuY2hhbmdlcy5zdWJzY3JpYmUoc3luYyk7XG4gIH1cblxuICAvKipcbiAgICogQ29tcG9uZW50IGNsZWFudXAuXG4gICAqL1xuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuY2xlYXJSZWZzKCk7XG4gIH1cblxuICAvKipcbiAgICogVHJhY2sgZnVuY3Rpb24gZm9yIG5nRm9yIHRvIG9wdGltaXplIHJlbmRlcmluZy5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IFRoZSBpbmRleCBvZiB0aGUgaXRlbVxuICAgKiBAcGFyYW0ge05vdGlmaWNhdGlvbn0gbm90aWZpY2F0aW9uIFRoZSBub3RpZmljYXRpb24gaXRlbVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgbm90aWZpY2F0aW9uIElEXG4gICAqL1xuICB0cmFja0J5Tm90aWZpY2F0aW9uSWQoaW5kZXg6IG51bWJlciwgbm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb24pIHtcbiAgICByZXR1cm4gbm90aWZpY2F0aW9uLmlkO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSBub3RpZmljYXRpb24gaGlkZGVuIHN0YXRlIGNoYW5nZS5cbiAgICpcbiAgICogQHBhcmFtIHtDdXN0b21FdmVudDxib29sZWFuPn0gZXZlbnQgVGhlIGhpZGRlbiBjaGFuZ2VkIGV2ZW50XG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpZCBUaGUgbm90aWZpY2F0aW9uIElEXG4gICAqL1xuICBoYW5kbGVIaWRkZW5DaGFuZ2VkKGV2ZW50OiBDdXN0b21FdmVudDxib29sZWFuPiwgaWQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQuZGV0YWlsICYmIGlkKSB7XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UucmVtb3ZlKGlkKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
/**
|
|
5
6
|
* Utility function to generate unique IDs.
|
|
@@ -7,9 +8,7 @@ import * as i0 from "@angular/core";
|
|
|
7
8
|
* @returns {string} A unique identifier string
|
|
8
9
|
*/
|
|
9
10
|
const generateId = () => {
|
|
10
|
-
return `notification-${
|
|
11
|
-
.toString(36)
|
|
12
|
-
.substr(2, 9)}`;
|
|
11
|
+
return `notification-${uuidv4()}`;
|
|
13
12
|
};
|
|
14
13
|
/**
|
|
15
14
|
* Angular service for managing notifications.
|
|
@@ -163,4 +162,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
|
|
|
163
162
|
providedIn: 'root',
|
|
164
163
|
}]
|
|
165
164
|
}], ctorParameters: () => [] });
|
|
166
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ub3ZhLWNvbXBvbmVudHMvc3JjL2xpYi9wcm92aWRlcnMvbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQWdFbkQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxHQUFHLEdBQVcsRUFBRTtJQUM5QixPQUFPLGdCQUFnQixJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtTQUMvQyxRQUFRLENBQUMsRUFBRSxDQUFDO1NBQ1osTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQ3BCLENBQUMsQ0FBQztBQUVGOztHQUVHO0FBSUgsTUFBTSxPQUFPLG1CQUFtQjtJQVc5Qjs7OztPQUlHO0lBQ0gsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVEO1FBbkJpQixtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFpQixFQUFFLENBQUMsQ0FBQztRQUV6RCxXQUFNLEdBQUcsSUFBSSxHQUFHLEVBQXlDLENBQUM7UUFFM0U7O1dBRUc7UUFDYSxtQkFBYyxHQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBcUNyQyxzQ0FBc0M7UUFDOUIsV0FBTSxHQUFHLElBQUksR0FBRyxFQUFxQyxDQUFDO1FBMUI1RCxJQUFJLENBQUMsT0FBTyxHQUFHO1lBQ2IsUUFBUSxFQUFFLFdBQVc7WUFDckIsZ0JBQWdCLEVBQUUsRUFBRTtZQUNwQixTQUFTLEVBQUUsRUFBRTtTQUNkLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFNBQVMsQ0FBQyxNQUFpQztRQUN6QyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUFJLE1BQU07UUFDUixPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUlELFdBQVcsQ0FBQyxFQUFVLEVBQUUsRUFBNkI7UUFDbkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFDRCxhQUFhLENBQUMsRUFBVTtRQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBQ0QsU0FBUztRQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxJQUFJLENBQUMsT0FBNEI7UUFDL0IsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUV0QyxNQUFNLFlBQVksR0FBaUI7WUFDakMsRUFBRTtZQUNGLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztZQUN4QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87WUFDeEIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxXQUFXLElBQUksSUFBSTtZQUN4QyxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVEsSUFBSSxRQUFRO1lBQ3RDLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLGFBQWE7WUFDM0MsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUU7WUFDOUIsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVO1lBQzlCLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLENBQUM7WUFDL0IsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUU7U0FDdEIsQ0FBQztRQUVGLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUM7UUFFdkQsK0NBQStDO1FBQy9DLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxZQUFZLEVBQUUsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ2pFLElBQUksZ0JBQWdCLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1RCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FDdEIsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQ3pELENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDN0MsQ0FBQztRQUVELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQTBDLENBQUM7WUFDekUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDO1lBRVosNENBQTRDO1lBQzVDLElBQUksWUFBWSxDQUFDLFFBQVEsSUFBSSxZQUFZLENBQUMsUUFBUSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN2RCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO29CQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNuQixDQUFDLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDN0IsQ0FBQztRQUNILENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVOLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLEVBQVU7UUFDaEIsd0JBQXdCO1FBQ3hCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekIsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsRUFBVTtRQUNmLHdCQUF3QjtRQUN4QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsQyxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLENBQUM7UUFFRCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDO1FBQ3ZELE1BQU0scUJBQXFCLEdBQUcsb0JBQW9CLENBQUMsTUFBTSxDQUN2RCxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQ3pDLENBQUM7UUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDUCxtQkFBbUI7UUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0IsQ0FBQzs4R0FwS1UsbUJBQW1CO2tIQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs7MkZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIHR5cGUgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBOb3RpZmljYXRpb25FbXBoYXNpcyxcbiAgRmVlZGJhY2tDb2xvcnMsXG59IGZyb20gJ0Bub3ZhLWRlc2lnbi1zeXN0ZW0vbm92YS13ZWJjb21wb25lbnRzJztcblxuLyoqXG4gKiBBY3Rpb24gY2FsbGJhY2tzIGZvciBub3RpZmljYXRpb25zLiBXaWxsIHJlbmRlciBidXR0b25zIGF1dG9tYXRpY2FsbHkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTm90aWZpY2F0aW9uQWN0aW9uIHtcbiAgLyoqIFRoZSBsYWJlbCBvZiB0aGUgYWN0aW9uLiAqL1xuICBsYWJlbDogc3RyaW5nO1xuICAvKiogVGhlIGNhbGxiYWNrIHRvIGV4ZWN1dGUgd2hlbiB0aGUgYWN0aW9uIGlzIGNsaWNrZWQuICovXG4gIG9uQ2xpY2s6ICgpID0+IHZvaWQ7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY3JlYXRpbmcgYSBub3RpZmljYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTm90aWZpY2F0aW9uT3B0aW9ucyB7XG4gIC8qKiBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIG5vdGlmaWNhdGlvbi4gSWYgbm90IHByb3ZpZGVkLCBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuICovXG4gIGlkPzogc3RyaW5nO1xuICAvKiogU2hvcnQgYW5kIGNvbmNpc2UgdGV4dCBmb3IgdGhlIG5vdGlmaWNhdGlvbiBoZWFkaW5nLiAqL1xuICBoZWFkaW5nPzogc3RyaW5nO1xuICAvKiogTWFpbiBjb250ZW50IG9mIHRoZSBub3RpZmljYXRpb24uICovXG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIC8qKiBXaGV0aGVyIHRoZSBub3RpZmljYXRpb24gY2FuIGJlIG1hbnVhbGx5IGRpc21pc3NlZCB2aWEgY2xvc2UgYnV0dG9uLiAqL1xuICBkaXNtaXNzaWJsZT86IGJvb2xlYW47XG4gIC8qKiBBZGp1c3RzIHRoZSBlbXBoYXNpcyB0byBtYWtlIHRoZSBub3RpZmljYXRpb24gbW9yZSBvciBsZXNzIHZpc3VhbGx5XG4gICAqIHByb21pbmVudCB0byB1c2Vycy4gVXNlIHRoaXMgdG8gZHJhdyBhdHRlbnRpb24gdG8gaW1wb3J0YW50IGFjdGlvbnMgb3JcbiAgICogcmVkdWNlIGZvY3VzIG9uIGxlc3MgY3JpdGljYWwgb25lcyAqL1xuICBlbXBoYXNpcz86IGAke05vdGlmaWNhdGlvbkVtcGhhc2lzfWA7XG4gIC8qKiBUeXBlIG9mIHRoZSBub3RpZmljYXRpb24sIHVzZWQgdG8gZGV0ZXJtaW5lIHRoZSBjb2xvciBhbmQgZGVmYXVsdCBpY29uLiAqL1xuICBmZWVkYmFjaz86IGAke0ZlZWRiYWNrQ29sb3JzfWA7XG4gIC8qKiBDdXN0b20gaWNvbiBuYW1lIHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IGljb24uICovXG4gIGljb24/OiBzdHJpbmc7XG4gIC8qKiBOb3RpZmljYXRpb24gYWN0aW9ucyAqL1xuICBhY3Rpb25zPzogTm90aWZpY2F0aW9uQWN0aW9uW107XG4gIC8qKiBDdXN0b20gY29tcG9uZW50cyBmb3IgdGhlIG5vdGlmaWNhdGlvbiBhY3Rpb25zLiAqL1xuICBhY3Rpb25TbG90PzogVHlwZTx1bmtub3duPjtcbiAgLyoqIER1cmF0aW9uIGluIG1pbGxpc2Vjb25kcyBiZWZvcmUgYXV0by1kaXNtaXNzaW5nLiAwID0gc3RpY2t5IChubyBhdXRvLWRpc21pc3MpLiBEZWZhdWx0OiAwICovXG4gIGR1cmF0aW9uPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEEgbm90aWZpY2F0aW9uIHdpdGggYWxsIHJlcXVpcmVkIGZpZWxkcyBwb3B1bGF0ZWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTm90aWZpY2F0aW9uIGV4dGVuZHMgTm90aWZpY2F0aW9uT3B0aW9ucyB7XG4gIC8qKiBUaW1lc3RhbXAgd2hlbiB0aGUgbm90aWZpY2F0aW9uIHdhcyBjcmVhdGVkLiAqL1xuICBjcmVhdGVkQXQ6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSBOb3RpZmljYXRpb25TZXJ2aWNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5vdGlmaWNhdGlvblNlcnZpY2VDb25maWcge1xuICAvKiogUG9zaXRpb24gb2YgdGhlIG5vdGlmaWNhdGlvbiBjb250YWluZXIgb24gdGhlIHNjcmVlbi4gKi9cbiAgcG9zaXRpb24/OiBzdHJpbmc7XG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiBub3RpZmljYXRpb25zIHRvIGRpc3BsYXkgYXQgb25jZS4gKi9cbiAgbWF4Tm90aWZpY2F0aW9ucz86IG51bWJlcjtcbiAgLyoqIEFkZGl0aW9uYWwgQ1NTIGNsYXNzIG5hbWUgZm9yIHRoZSBub3RpZmljYXRpb24gY29udGFpbmVyLiAqL1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogVXRpbGl0eSBmdW5jdGlvbiB0byBnZW5lcmF0ZSB1bmlxdWUgSURzLlxuICpcbiAqIEByZXR1cm5zIHtzdHJpbmd9IEEgdW5pcXVlIGlkZW50aWZpZXIgc3RyaW5nXG4gKi9cbmNvbnN0IGdlbmVyYXRlSWQgPSAoKTogc3RyaW5nID0+IHtcbiAgcmV0dXJuIGBub3RpZmljYXRpb24tJHtEYXRlLm5vdygpfS0ke01hdGgucmFuZG9tKClcbiAgICAudG9TdHJpbmcoMzYpXG4gICAgLnN1YnN0cigyLCA5KX1gO1xufTtcblxuLyoqXG4gKiBBbmd1bGFyIHNlcnZpY2UgZm9yIG1hbmFnaW5nIG5vdGlmaWNhdGlvbnMuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25TZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfbm90aWZpY2F0aW9ucyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Tm90aWZpY2F0aW9uW10+KFtdKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29uZmlnOiBSZXF1aXJlZDxOb3RpZmljYXRpb25TZXJ2aWNlQ29uZmlnPjtcbiAgcHJpdmF0ZSByZWFkb25seSB0aW1lcnMgPSBuZXcgTWFwPHN0cmluZywgUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgc3RyZWFtIG9mIGFjdGl2ZSBub3RpZmljYXRpb25zLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5vdGlmaWNhdGlvbnMkOiBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvbltdPiA9XG4gICAgdGhpcy5fbm90aWZpY2F0aW9ucy5hc09ic2VydmFibGUoKTtcblxuICAvKipcbiAgICogQ3VycmVudCBhcnJheSBvZiBub3RpZmljYXRpb25zLlxuICAgKlxuICAgKiBAcmV0dXJucyB7Tm90aWZpY2F0aW9uW119IEFycmF5IG9mIGFjdGl2ZSBub3RpZmljYXRpb25zXG4gICAqL1xuICBwdWJsaWMgZ2V0IG5vdGlmaWNhdGlvbnMoKTogTm90aWZpY2F0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLl9ub3RpZmljYXRpb25zLnZhbHVlO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5fY29uZmlnID0ge1xuICAgICAgcG9zaXRpb246ICd0b3AtcmlnaHQnLFxuICAgICAgbWF4Tm90aWZpY2F0aW9uczogNTAsXG4gICAgICBjbGFzc05hbWU6ICcnLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ29uZmlndXJlIHRoZSBub3RpZmljYXRpb24gc2VydmljZS5cbiAgICpcbiAgICogQHBhcmFtIHtOb3RpZmljYXRpb25TZXJ2aWNlQ29uZmlnfSBjb25maWcgQ29uZmlndXJhdGlvbiBvcHRpb25zXG4gICAqL1xuICBjb25maWd1cmUoY29uZmlnOiBOb3RpZmljYXRpb25TZXJ2aWNlQ29uZmlnKTogdm9pZCB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLl9jb25maWcsIGNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBjdXJyZW50IGNvbmZpZ3VyYXRpb24uXG4gICAqXG4gICAqIEByZXR1cm5zIHtSZXF1aXJlZDxOb3RpZmljYXRpb25TZXJ2aWNlQ29uZmlnPn0gQ3VycmVudCBjb25maWd1cmF0aW9uXG4gICAqL1xuICBnZXQgY29uZmlnKCk6IFJlcXVpcmVkPE5vdGlmaWNhdGlvblNlcnZpY2VDb25maWc+IHtcbiAgICByZXR1cm4geyAuLi50aGlzLl9jb25maWcgfTtcbiAgfVxuXG4gIC8vIGtlZXAgdHJhY2sgb2YgYWxsIG5vdGlmaWNhdGlvbiByZWZzXG4gIHByaXZhdGUgZWxSZWZzID0gbmV3IE1hcDxzdHJpbmcsIEhUTUxOdk5vdGlmaWNhdGlvbkVsZW1lbnQ+KCk7XG4gIHJlZ2lzdGVyUmVmKGlkOiBzdHJpbmcsIGVsOiBIVE1MTnZOb3RpZmljYXRpb25FbGVtZW50KTogdm9pZCB7XG4gICAgdGhpcy5lbFJlZnMuc2V0KGlkLCBlbCk7XG4gIH1cbiAgdW5yZWdpc3RlclJlZihpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5lbFJlZnMuZGVsZXRlKGlkKTtcbiAgfVxuICBjbGVhclJlZnMoKSB7XG4gICAgdGhpcy5lbFJlZnMuY2xlYXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGVhbiB1cCBhbGwgdGltZXJzIGFuZCByZWZlcmVuY2VzLlxuICAgKi9cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy50aW1lcnMuZm9yRWFjaCgodGltZXIpID0+IGNsZWFyVGltZW91dCh0aW1lcikpO1xuICAgIHRoaXMudGltZXJzLmNsZWFyKCk7XG4gICAgdGhpcy5jbGVhclJlZnMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaG93IGEgbmV3IG5vdGlmaWNhdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHtOb3RpZmljYXRpb25PcHRpb25zfSBvcHRpb25zIFRoZSBub3RpZmljYXRpb24gb3B0aW9uc1xuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgbm90aWZpY2F0aW9uIElEXG4gICAqL1xuICBzaG93KG9wdGlvbnM6IE5vdGlmaWNhdGlvbk9wdGlvbnMpOiBzdHJpbmcge1xuICAgIGNvbnN0IGlkID0gb3B0aW9ucy5pZCB8fCBnZW5lcmF0ZUlkKCk7XG5cbiAgICBjb25zdCBub3RpZmljYXRpb246IE5vdGlmaWNhdGlvbiA9IHtcbiAgICAgIGlkLFxuICAgICAgaGVhZGluZzogb3B0aW9ucy5oZWFkaW5nLFxuICAgICAgbWVzc2FnZTogb3B0aW9ucy5tZXNzYWdlLFxuICAgICAgZGlzbWlzc2libGU6IG9wdGlvbnMuZGlzbWlzc2libGUgPz8gdHJ1ZSxcbiAgICAgIGVtcGhhc2lzOiBvcHRpb25zLmVtcGhhc2lzID8/ICdtZWRpdW0nLFxuICAgICAgZmVlZGJhY2s6IG9wdGlvbnMuZmVlZGJhY2sgPz8gJ2luZm9ybWF0aW9uJyxcbiAgICAgIGljb246IG9wdGlvbnMuaWNvbixcbiAgICAgIGFjdGlvbnM6IG9wdGlvbnMuYWN0aW9ucyA/PyBbXSxcbiAgICAgIGFjdGlvblNsb3Q6IG9wdGlvbnMuYWN0aW9uU2xvdCxcbiAgICAgIGR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uID8/IDAsXG4gICAgICBjcmVhdGVkQXQ6IERhdGUubm93KCksXG4gICAgfTtcblxuICAgIGNvbnN0IGN1cnJlbnROb3RpZmljYXRpb25zID0gdGhpcy5fbm90aWZpY2F0aW9ucy52YWx1ZTtcblxuICAgIC8vIFJlbW92ZSBvbGRlc3Qgbm90aWZpY2F0aW9ucyBpZiB3ZSBleGNlZWQgbWF4XG4gICAgY29uc3QgbmV3Tm90aWZpY2F0aW9ucyA9IFtub3RpZmljYXRpb24sIC4uLmN1cnJlbnROb3RpZmljYXRpb25zXTtcbiAgICBpZiAobmV3Tm90aWZpY2F0aW9ucy5sZW5ndGggPiB0aGlzLl9jb25maWcubWF4Tm90aWZpY2F0aW9ucykge1xuICAgICAgdGhpcy5fbm90aWZpY2F0aW9ucy5uZXh0KFxuICAgICAgICBuZXdOb3RpZmljYXRpb25zLnNsaWNlKDAsIHRoaXMuX2NvbmZpZy5tYXhOb3RpZmljYXRpb25zKSxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX25vdGlmaWNhdGlvbnMubmV4dChuZXdOb3RpZmljYXRpb25zKTtcbiAgICB9XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IHJlZiA9IHRoaXMuZWxSZWZzLmdldChpZCkgYXMgSFRNTE52Tm90aWZpY2F0aW9uRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgICAgIHJlZj8uc2hvdygpO1xuXG4gICAgICAvLyBTZXQgdXAgYXV0by1kaXNtaXNzIHRpbWVyIGlmIGR1cmF0aW9uID4gMFxuICAgICAgaWYgKG5vdGlmaWNhdGlvbi5kdXJhdGlvbiAmJiBub3RpZmljYXRpb24uZHVyYXRpb24gPiAwKSB7XG4gICAgICAgIGNvbnN0IHRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5kaXNtaXNzKGlkKTtcbiAgICAgICAgfSwgbm90aWZpY2F0aW9uLmR1cmF0aW9uKTtcbiAgICAgICAgdGhpcy50aW1lcnMuc2V0KGlkLCB0aW1lcik7XG4gICAgICB9XG4gICAgfSwgMCk7XG5cbiAgICByZXR1cm4gaWQ7XG4gIH1cblxuICAvKipcbiAgICogRGlzbWlzcyBhIHNwZWNpZmljIG5vdGlmaWNhdGlvbiBieSBJRC4gVGhpcyB3aWxsIHJlbW92ZSB0aGUgbm90aWZpY2F0aW9uXG4gICAqIGFmdGVyIHRoZSBhbmltYXRpb24gY29tcGxldGVzLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gaWQgVGhlIG5vdGlmaWNhdGlvbiBJRCB0byBkaXNtaXNzXG4gICAqL1xuICBkaXNtaXNzKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAvLyBDbGVhciB0aW1lciBpZiBleGlzdHNcbiAgICBjb25zdCB0aW1lciA9IHRoaXMudGltZXJzLmdldChpZCk7XG4gICAgaWYgKHRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGltZXIpO1xuICAgICAgdGhpcy50aW1lcnMuZGVsZXRlKGlkKTtcbiAgICB9XG5cbiAgICB0aGlzLmVsUmVmcy5nZXQoaWQpPy5kaXNtaXNzPy4oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbW1lZGlhdGVseSByZW1vdmUgYSBzcGVjaWZpYyBub3RpZmljYXRpb24gYnkgSUQuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpZCBUaGUgbm90aWZpY2F0aW9uIElEIHRvIGRpc21pc3NcbiAgICovXG4gIHJlbW92ZShpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gQ2xlYXIgdGltZXIgaWYgZXhpc3RzXG4gICAgY29uc3QgdGltZXIgPSB0aGlzLnRpbWVycy5nZXQoaWQpO1xuICAgIGlmICh0aW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcbiAgICAgIHRoaXMudGltZXJzLmRlbGV0ZShpZCk7XG4gICAgfVxuXG4gICAgY29uc3QgY3VycmVudE5vdGlmaWNhdGlvbnMgPSB0aGlzLl9ub3RpZmljYXRpb25zLnZhbHVlO1xuICAgIGNvbnN0IGZpbHRlcmVkTm90aWZpY2F0aW9ucyA9IGN1cnJlbnROb3RpZmljYXRpb25zLmZpbHRlcihcbiAgICAgIChub3RpZmljYXRpb24pID0+IG5vdGlmaWNhdGlvbi5pZCAhPT0gaWQsXG4gICAgKTtcbiAgICB0aGlzLl9ub3RpZmljYXRpb25zLm5leHQoZmlsdGVyZWROb3RpZmljYXRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbW1lZGlhdGVseSByZW1vdmUgYWxsIGFjdGl2ZSBub3RpZmljYXRpb25zLlxuICAgKi9cbiAgcmVtb3ZlQWxsKCk6IHZvaWQge1xuICAgIC8vIENsZWFyIGFsbCB0aW1lcnNcbiAgICB0aGlzLnRpbWVycy5mb3JFYWNoKCh0aW1lcikgPT4gY2xlYXJUaW1lb3V0KHRpbWVyKSk7XG4gICAgdGhpcy50aW1lcnMuY2xlYXIoKTtcblxuICAgIHRoaXMuX25vdGlmaWNhdGlvbnMubmV4dChbXSk7XG4gIH1cbn1cbiJdfQ==
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ub3ZhLWNvbXBvbmVudHMvc3JjL2xpYi9wcm92aWRlcnMvbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBS25ELE9BQU8sRUFBRSxFQUFFLElBQUksTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQTREcEM7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxHQUFHLEdBQVcsRUFBRTtJQUM5QixPQUFPLGdCQUFnQixNQUFNLEVBQUUsRUFBRSxDQUFDO0FBQ3BDLENBQUMsQ0FBQztBQUVGOztHQUVHO0FBSUgsTUFBTSxPQUFPLG1CQUFtQjtJQVc5Qjs7OztPQUlHO0lBQ0gsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVEO1FBbkJpQixtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFpQixFQUFFLENBQUMsQ0FBQztRQUV6RCxXQUFNLEdBQUcsSUFBSSxHQUFHLEVBQXlDLENBQUM7UUFFM0U7O1dBRUc7UUFDYSxtQkFBYyxHQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBcUNyQyxzQ0FBc0M7UUFDOUIsV0FBTSxHQUFHLElBQUksR0FBRyxFQUFxQyxDQUFDO1FBMUI1RCxJQUFJLENBQUMsT0FBTyxHQUFHO1lBQ2IsUUFBUSxFQUFFLFdBQVc7WUFDckIsZ0JBQWdCLEVBQUUsRUFBRTtZQUNwQixTQUFTLEVBQUUsRUFBRTtTQUNkLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFNBQVMsQ0FBQyxNQUFpQztRQUN6QyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUFJLE1BQU07UUFDUixPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUlELFdBQVcsQ0FBQyxFQUFVLEVBQUUsRUFBNkI7UUFDbkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFDRCxhQUFhLENBQUMsRUFBVTtRQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBQ0QsU0FBUztRQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxJQUFJLENBQUMsT0FBNEI7UUFDL0IsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUV0QyxNQUFNLFlBQVksR0FBaUI7WUFDakMsRUFBRTtZQUNGLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztZQUN4QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87WUFDeEIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxXQUFXLElBQUksSUFBSTtZQUN4QyxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVEsSUFBSSxRQUFRO1lBQ3RDLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLGFBQWE7WUFDM0MsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUU7WUFDOUIsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVO1lBQzlCLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLENBQUM7WUFDL0IsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUU7U0FDdEIsQ0FBQztRQUVGLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUM7UUFFdkQsK0NBQStDO1FBQy9DLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxZQUFZLEVBQUUsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ2pFLElBQUksZ0JBQWdCLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1RCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FDdEIsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQ3pELENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDN0MsQ0FBQztRQUVELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQTBDLENBQUM7WUFDekUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDO1lBRVosNENBQTRDO1lBQzVDLElBQUksWUFBWSxDQUFDLFFBQVEsSUFBSSxZQUFZLENBQUMsUUFBUSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN2RCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO29CQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNuQixDQUFDLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDN0IsQ0FBQztRQUNILENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVOLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLEVBQVU7UUFDaEIsd0JBQXdCO1FBQ3hCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekIsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsRUFBVTtRQUNmLHdCQUF3QjtRQUN4QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsQyxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLENBQUM7UUFFRCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDO1FBQ3ZELE1BQU0scUJBQXFCLEdBQUcsb0JBQW9CLENBQUMsTUFBTSxDQUN2RCxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQ3pDLENBQUM7UUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDUCxtQkFBbUI7UUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0IsQ0FBQzs4R0FwS1UsbUJBQW1CO2tIQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs7MkZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIHR5cGUgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBOb3RpZmljYXRpb25FbXBoYXNpcyxcbiAgRmVlZGJhY2tDb2xvcnMsXG59IGZyb20gJ0Bub3ZhLWRlc2lnbi1zeXN0ZW0vbm92YS13ZWJjb21wb25lbnRzJztcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xuXG4vKipcbiAqIEFjdGlvbiBjYWxsYmFja3MgZm9yIG5vdGlmaWNhdGlvbnMuIFdpbGwgcmVuZGVyIGJ1dHRvbnMgYXV0b21hdGljYWxseS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOb3RpZmljYXRpb25BY3Rpb24ge1xuICAvKiogVGhlIGxhYmVsIG9mIHRoZSBhY3Rpb24uICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8qKiBUaGUgY2FsbGJhY2sgdG8gZXhlY3V0ZSB3aGVuIHRoZSBhY3Rpb24gaXMgY2xpY2tlZC4gKi9cbiAgb25DbGljazogKCkgPT4gdm9pZDtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBjcmVhdGluZyBhIG5vdGlmaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOb3RpZmljYXRpb25PcHRpb25zIHtcbiAgLyoqIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgbm90aWZpY2F0aW9uLiBJZiBub3QgcHJvdmlkZWQsIG9uZSB3aWxsIGJlIGdlbmVyYXRlZC4gKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBTaG9ydCBhbmQgY29uY2lzZSB0ZXh0IGZvciB0aGUgbm90aWZpY2F0aW9uIGhlYWRpbmcuICovXG4gIGhlYWRpbmc/OiBzdHJpbmc7XG4gIC8qKiBNYWluIGNvbnRlbnQgb2YgdGhlIG5vdGlmaWNhdGlvbi4gKi9cbiAgbWVzc2FnZT86IHN0cmluZztcbiAgLyoqIFdoZXRoZXIgdGhlIG5vdGlmaWNhdGlvbiBjYW4gYmUgbWFudWFsbHkgZGlzbWlzc2VkIHZpYSBjbG9zZSBidXR0b24uICovXG4gIGRpc21pc3NpYmxlPzogYm9vbGVhbjtcbiAgLyoqIEFkanVzdHMgdGhlIGVtcGhhc2lzIHRvIG1ha2UgdGhlIG5vdGlmaWNhdGlvbiBtb3JlIG9yIGxlc3MgdmlzdWFsbHlcbiAgICogcHJvbWluZW50IHRvIHVzZXJzLiBVc2UgdGhpcyB0byBkcmF3IGF0dGVudGlvbiB0byBpbXBvcnRhbnQgYWN0aW9ucyBvclxuICAgKiByZWR1Y2UgZm9jdXMgb24gbGVzcyBjcml0aWNhbCBvbmVzICovXG4gIGVtcGhhc2lzPzogYCR7Tm90aWZpY2F0aW9uRW1waGFzaXN9YDtcbiAgLyoqIFR5cGUgb2YgdGhlIG5vdGlmaWNhdGlvbiwgdXNlZCB0byBkZXRlcm1pbmUgdGhlIGNvbG9yIGFuZCBkZWZhdWx0IGljb24uICovXG4gIGZlZWRiYWNrPzogYCR7RmVlZGJhY2tDb2xvcnN9YDtcbiAgLyoqIEN1c3RvbSBpY29uIG5hbWUgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgaWNvbi4gKi9cbiAgaWNvbj86IHN0cmluZztcbiAgLyoqIE5vdGlmaWNhdGlvbiBhY3Rpb25zICovXG4gIGFjdGlvbnM/OiBOb3RpZmljYXRpb25BY3Rpb25bXTtcbiAgLyoqIEN1c3RvbSBjb21wb25lbnRzIGZvciB0aGUgbm90aWZpY2F0aW9uIGFjdGlvbnMuICovXG4gIGFjdGlvblNsb3Q/OiBUeXBlPHVua25vd24+O1xuICAvKiogRHVyYXRpb24gaW4gbWlsbGlzZWNvbmRzIGJlZm9yZSBhdXRvLWRpc21pc3NpbmcuIDAgPSBzdGlja3kgKG5vIGF1dG8tZGlzbWlzcykuIERlZmF1bHQ6IDAgKi9cbiAgZHVyYXRpb24/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQSBub3RpZmljYXRpb24gd2l0aCBhbGwgcmVxdWlyZWQgZmllbGRzIHBvcHVsYXRlZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOb3RpZmljYXRpb24gZXh0ZW5kcyBOb3RpZmljYXRpb25PcHRpb25zIHtcbiAgLyoqIFRpbWVzdGFtcCB3aGVuIHRoZSBub3RpZmljYXRpb24gd2FzIGNyZWF0ZWQuICovXG4gIGNyZWF0ZWRBdDogbnVtYmVyO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIE5vdGlmaWNhdGlvblNlcnZpY2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTm90aWZpY2F0aW9uU2VydmljZUNvbmZpZyB7XG4gIC8qKiBQb3NpdGlvbiBvZiB0aGUgbm90aWZpY2F0aW9uIGNvbnRhaW5lciBvbiB0aGUgc2NyZWVuLiAqL1xuICBwb3NpdGlvbj86IHN0cmluZztcbiAgLyoqIE1heGltdW0gbnVtYmVyIG9mIG5vdGlmaWNhdGlvbnMgdG8gZGlzcGxheSBhdCBvbmNlLiAqL1xuICBtYXhOb3RpZmljYXRpb25zPzogbnVtYmVyO1xuICAvKiogQWRkaXRpb25hbCBDU1MgY2xhc3MgbmFtZSBmb3IgdGhlIG5vdGlmaWNhdGlvbiBjb250YWluZXIuICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBVdGlsaXR5IGZ1bmN0aW9uIHRvIGdlbmVyYXRlIHVuaXF1ZSBJRHMuXG4gKlxuICogQHJldHVybnMge3N0cmluZ30gQSB1bmlxdWUgaWRlbnRpZmllciBzdHJpbmdcbiAqL1xuY29uc3QgZ2VuZXJhdGVJZCA9ICgpOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gYG5vdGlmaWNhdGlvbi0ke3V1aWR2NCgpfWA7XG59O1xuXG4vKipcbiAqIEFuZ3VsYXIgc2VydmljZSBmb3IgbWFuYWdpbmcgbm90aWZpY2F0aW9ucy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF9ub3RpZmljYXRpb25zID0gbmV3IEJlaGF2aW9yU3ViamVjdDxOb3RpZmljYXRpb25bXT4oW10pO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWc6IFJlcXVpcmVkPE5vdGlmaWNhdGlvblNlcnZpY2VDb25maWc+O1xuICBwcml2YXRlIHJlYWRvbmx5IHRpbWVycyA9IG5ldyBNYXA8c3RyaW5nLCBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4oKTtcblxuICAvKipcbiAgICogT2JzZXJ2YWJsZSBzdHJlYW0gb2YgYWN0aXZlIG5vdGlmaWNhdGlvbnMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbm90aWZpY2F0aW9ucyQ6IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uW10+ID1cbiAgICB0aGlzLl9ub3RpZmljYXRpb25zLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIC8qKlxuICAgKiBDdXJyZW50IGFycmF5IG9mIG5vdGlmaWNhdGlvbnMuXG4gICAqXG4gICAqIEByZXR1cm5zIHtOb3RpZmljYXRpb25bXX0gQXJyYXkgb2YgYWN0aXZlIG5vdGlmaWNhdGlvbnNcbiAgICovXG4gIHB1YmxpYyBnZXQgbm90aWZpY2F0aW9ucygpOiBOb3RpZmljYXRpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuX25vdGlmaWNhdGlvbnMudmFsdWU7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9jb25maWcgPSB7XG4gICAgICBwb3NpdGlvbjogJ3RvcC1yaWdodCcsXG4gICAgICBtYXhOb3RpZmljYXRpb25zOiA1MCxcbiAgICAgIGNsYXNzTmFtZTogJycsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWd1cmUgdGhlIG5vdGlmaWNhdGlvbiBzZXJ2aWNlLlxuICAgKlxuICAgKiBAcGFyYW0ge05vdGlmaWNhdGlvblNlcnZpY2VDb25maWd9IGNvbmZpZyBDb25maWd1cmF0aW9uIG9wdGlvbnNcbiAgICovXG4gIGNvbmZpZ3VyZShjb25maWc6IE5vdGlmaWNhdGlvblNlcnZpY2VDb25maWcpOiB2b2lkIHtcbiAgICBPYmplY3QuYXNzaWduKHRoaXMuX2NvbmZpZywgY29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogQHJldHVybnMge1JlcXVpcmVkPE5vdGlmaWNhdGlvblNlcnZpY2VDb25maWc+fSBDdXJyZW50IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIGdldCBjb25maWcoKTogUmVxdWlyZWQ8Tm90aWZpY2F0aW9uU2VydmljZUNvbmZpZz4ge1xuICAgIHJldHVybiB7IC4uLnRoaXMuX2NvbmZpZyB9O1xuICB9XG5cbiAgLy8ga2VlcCB0cmFjayBvZiBhbGwgbm90aWZpY2F0aW9uIHJlZnNcbiAgcHJpdmF0ZSBlbFJlZnMgPSBuZXcgTWFwPHN0cmluZywgSFRNTE52Tm90aWZpY2F0aW9uRWxlbWVudD4oKTtcbiAgcmVnaXN0ZXJSZWYoaWQ6IHN0cmluZywgZWw6IEhUTUxOdk5vdGlmaWNhdGlvbkVsZW1lbnQpOiB2b2lkIHtcbiAgICB0aGlzLmVsUmVmcy5zZXQoaWQsIGVsKTtcbiAgfVxuICB1bnJlZ2lzdGVyUmVmKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmVsUmVmcy5kZWxldGUoaWQpO1xuICB9XG4gIGNsZWFyUmVmcygpIHtcbiAgICB0aGlzLmVsUmVmcy5jbGVhcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFuIHVwIGFsbCB0aW1lcnMgYW5kIHJlZmVyZW5jZXMuXG4gICAqL1xuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnRpbWVycy5mb3JFYWNoKCh0aW1lcikgPT4gY2xlYXJUaW1lb3V0KHRpbWVyKSk7XG4gICAgdGhpcy50aW1lcnMuY2xlYXIoKTtcbiAgICB0aGlzLmNsZWFyUmVmcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3cgYSBuZXcgbm90aWZpY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge05vdGlmaWNhdGlvbk9wdGlvbnN9IG9wdGlvbnMgVGhlIG5vdGlmaWNhdGlvbiBvcHRpb25zXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBub3RpZmljYXRpb24gSURcbiAgICovXG4gIHNob3cob3B0aW9uczogTm90aWZpY2F0aW9uT3B0aW9ucyk6IHN0cmluZyB7XG4gICAgY29uc3QgaWQgPSBvcHRpb25zLmlkIHx8IGdlbmVyYXRlSWQoKTtcblxuICAgIGNvbnN0IG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uID0ge1xuICAgICAgaWQsXG4gICAgICBoZWFkaW5nOiBvcHRpb25zLmhlYWRpbmcsXG4gICAgICBtZXNzYWdlOiBvcHRpb25zLm1lc3NhZ2UsXG4gICAgICBkaXNtaXNzaWJsZTogb3B0aW9ucy5kaXNtaXNzaWJsZSA/PyB0cnVlLFxuICAgICAgZW1waGFzaXM6IG9wdGlvbnMuZW1waGFzaXMgPz8gJ21lZGl1bScsXG4gICAgICBmZWVkYmFjazogb3B0aW9ucy5mZWVkYmFjayA/PyAnaW5mb3JtYXRpb24nLFxuICAgICAgaWNvbjogb3B0aW9ucy5pY29uLFxuICAgICAgYWN0aW9uczogb3B0aW9ucy5hY3Rpb25zID8/IFtdLFxuICAgICAgYWN0aW9uU2xvdDogb3B0aW9ucy5hY3Rpb25TbG90LFxuICAgICAgZHVyYXRpb246IG9wdGlvbnMuZHVyYXRpb24gPz8gMCxcbiAgICAgIGNyZWF0ZWRBdDogRGF0ZS5ub3coKSxcbiAgICB9O1xuXG4gICAgY29uc3QgY3VycmVudE5vdGlmaWNhdGlvbnMgPSB0aGlzLl9ub3RpZmljYXRpb25zLnZhbHVlO1xuXG4gICAgLy8gUmVtb3ZlIG9sZGVzdCBub3RpZmljYXRpb25zIGlmIHdlIGV4Y2VlZCBtYXhcbiAgICBjb25zdCBuZXdOb3RpZmljYXRpb25zID0gW25vdGlmaWNhdGlvbiwgLi4uY3VycmVudE5vdGlmaWNhdGlvbnNdO1xuICAgIGlmIChuZXdOb3RpZmljYXRpb25zLmxlbmd0aCA+IHRoaXMuX2NvbmZpZy5tYXhOb3RpZmljYXRpb25zKSB7XG4gICAgICB0aGlzLl9ub3RpZmljYXRpb25zLm5leHQoXG4gICAgICAgIG5ld05vdGlmaWNhdGlvbnMuc2xpY2UoMCwgdGhpcy5fY29uZmlnLm1heE5vdGlmaWNhdGlvbnMpLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fbm90aWZpY2F0aW9ucy5uZXh0KG5ld05vdGlmaWNhdGlvbnMpO1xuICAgIH1cblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgcmVmID0gdGhpcy5lbFJlZnMuZ2V0KGlkKSBhcyBIVE1MTnZOb3RpZmljYXRpb25FbGVtZW50IHwgdW5kZWZpbmVkO1xuICAgICAgcmVmPy5zaG93KCk7XG5cbiAgICAgIC8vIFNldCB1cCBhdXRvLWRpc21pc3MgdGltZXIgaWYgZHVyYXRpb24gPiAwXG4gICAgICBpZiAobm90aWZpY2F0aW9uLmR1cmF0aW9uICYmIG5vdGlmaWNhdGlvbi5kdXJhdGlvbiA+IDApIHtcbiAgICAgICAgY29uc3QgdGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLmRpc21pc3MoaWQpO1xuICAgICAgICB9LCBub3RpZmljYXRpb24uZHVyYXRpb24pO1xuICAgICAgICB0aGlzLnRpbWVycy5zZXQoaWQsIHRpbWVyKTtcbiAgICAgIH1cbiAgICB9LCAwKTtcblxuICAgIHJldHVybiBpZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEaXNtaXNzIGEgc3BlY2lmaWMgbm90aWZpY2F0aW9uIGJ5IElELiBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBub3RpZmljYXRpb25cbiAgICogYWZ0ZXIgdGhlIGFuaW1hdGlvbiBjb21wbGV0ZXMuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpZCBUaGUgbm90aWZpY2F0aW9uIElEIHRvIGRpc21pc3NcbiAgICovXG4gIGRpc21pc3MoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIC8vIENsZWFyIHRpbWVyIGlmIGV4aXN0c1xuICAgIGNvbnN0IHRpbWVyID0gdGhpcy50aW1lcnMuZ2V0KGlkKTtcbiAgICBpZiAodGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aW1lcik7XG4gICAgICB0aGlzLnRpbWVycy5kZWxldGUoaWQpO1xuICAgIH1cblxuICAgIHRoaXMuZWxSZWZzLmdldChpZCk/LmRpc21pc3M/LigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEltbWVkaWF0ZWx5IHJlbW92ZSBhIHNwZWNpZmljIG5vdGlmaWNhdGlvbiBieSBJRC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGlkIFRoZSBub3RpZmljYXRpb24gSUQgdG8gZGlzbWlzc1xuICAgKi9cbiAgcmVtb3ZlKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAvLyBDbGVhciB0aW1lciBpZiBleGlzdHNcbiAgICBjb25zdCB0aW1lciA9IHRoaXMudGltZXJzLmdldChpZCk7XG4gICAgaWYgKHRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGltZXIpO1xuICAgICAgdGhpcy50aW1lcnMuZGVsZXRlKGlkKTtcbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50Tm90aWZpY2F0aW9ucyA9IHRoaXMuX25vdGlmaWNhdGlvbnMudmFsdWU7XG4gICAgY29uc3QgZmlsdGVyZWROb3RpZmljYXRpb25zID0gY3VycmVudE5vdGlmaWNhdGlvbnMuZmlsdGVyKFxuICAgICAgKG5vdGlmaWNhdGlvbikgPT4gbm90aWZpY2F0aW9uLmlkICE9PSBpZCxcbiAgICApO1xuICAgIHRoaXMuX25vdGlmaWNhdGlvbnMubmV4dChmaWx0ZXJlZE5vdGlmaWNhdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEltbWVkaWF0ZWx5IHJlbW92ZSBhbGwgYWN0aXZlIG5vdGlmaWNhdGlvbnMuXG4gICAqL1xuICByZW1vdmVBbGwoKTogdm9pZCB7XG4gICAgLy8gQ2xlYXIgYWxsIHRpbWVyc1xuICAgIHRoaXMudGltZXJzLmZvckVhY2goKHRpbWVyKSA9PiBjbGVhclRpbWVvdXQodGltZXIpKTtcbiAgICB0aGlzLnRpbWVycy5jbGVhcigpO1xuXG4gICAgdGhpcy5fbm90aWZpY2F0aW9ucy5uZXh0KFtdKTtcbiAgfVxufVxuIl19
|