@tilde-nlp/ngx-common 6.1.72 → 6.1.74
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/esm2022/lib/llm/components/llm-textarea-with-actions/llm-textarea-with-actions.component.mjs
CHANGED
|
@@ -185,9 +185,11 @@ export class LLMTextareaWithActionsComponent {
|
|
|
185
185
|
this.setInitialText();
|
|
186
186
|
if (this.llmActionType === LLMActions.REPHRASE) {
|
|
187
187
|
this.useCases = Object.values(LLMRephraseUseCase);
|
|
188
|
+
this.selectedUseCase = LLMRephraseUseCase.General;
|
|
188
189
|
}
|
|
189
190
|
else if (this.llmActionType === LLMActions.SUMMARY) {
|
|
190
191
|
this.useCases = Object.values(LLMSummaryUseCase);
|
|
192
|
+
this.selectedUseCase = LLMSummaryUseCase.General;
|
|
191
193
|
}
|
|
192
194
|
this.showUseCase = (this.llmActionType === LLMActions.REPHRASE && this.data.showUseCaseRephrase) || (this.llmActionType === LLMActions.SUMMARY && this.data.showUseCaseSummary);
|
|
193
195
|
if (this.data.defaultUseCase) {
|
|
@@ -387,4 +389,4 @@ export class LLMTextareaWithActionsComponent {
|
|
|
387
389
|
args: [MAT_DIALOG_DATA]
|
|
388
390
|
}] }], null); })();
|
|
389
391
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LLMTextareaWithActionsComponent, { className: "LLMTextareaWithActionsComponent", filePath: "lib\\llm\\components\\llm-textarea-with-actions\\llm-textarea-with-actions.component.ts", lineNumber: 20 }); })();
|
|
390
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGxtLXRleHRhcmVhLXdpdGgtYWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tbW9uL3NyYy9saWIvbGxtL2NvbXBvbmVudHMvbGxtLXRleHRhcmVhLXdpdGgtYWN0aW9ucy9sbG0tdGV4dGFyZWEtd2l0aC1hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi9sbG0vY29tcG9uZW50cy9sbG0tdGV4dGFyZWEtd2l0aC1hY3Rpb25zL2xsbS10ZXh0YXJlYS13aXRoLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVGLE9BQU8sRUFBZ0IsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNQcEUsd0RBQTBIO0lBQXZDLHFSQUFnQiwrQkFBcUIsS0FBQztJQUFDLGlCQUErQjs7O0lBQTFGLG9DQUFtQjs7O0lBTzVFLHNDQUE4QjtJQUM1QixZQUNGOzs7SUFBQSxpQkFBYTs7O0lBRkQsa0NBQWlCO0lBQzNCLGNBQ0Y7SUFERSx5R0FDRjs7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L0Q7WUFNMUIsbUNBS0M7WUFGQyxtSkFBUyxtQkFBZSxLQUFDO1lBZXpCLEFBSEEsQUFUQSxxRkFBd0Usc0hBUzNDLHNGQUdnRDtZQUduRixBQURFLEFBREUsaUJBQVMsRUFDTCxFQUNGOzs7O1lBakZlLGNBQTJDO1lBQTNDLDBFQUEyQztZQUUzRCxlQUFpRDtZQUFqRCxnRkFBaUQ7WUFFRixlQUFXO1lBQVgsc0NBQVc7WUFFNUMsY0FBaUI7WUFBakIsc0NBQWlCO1lBWW5CLGNBQTJDO1lBQTNDLG9FQUEyQztZQTBCeEMsY0FBd0Q7WUFBeEQseUVBQXdEO1lBQTRGLEFBQXJDLEFBQXRELCtFQUFxRCw2Q0FBcUMsd0NBQW9DO1lBR25NLGVBQWtDO1lBQWxDLHVEQUFrQztZQUVuQyxjQUE4QztZQUE5QywyREFBOEM7WUFDeEMsY0FBaUI7WUFBQSxBQUFqQixvQ0FBaUIsNkJBQWdCO1lBY3hDLGVBQXVCO1lBQXZCLHlDQUF1QjtZQUVoQixjQUE0QztZQUFBLEFBQTVDLG1FQUE0QyxnQ0FBbUI7WUFZeEQsZUFBZTtZQUFmLG9DQUFlOzs7aUZEM0R0QiwrQkFBK0I7Y0FMM0MsU0FBUzsyQkFDRSwrQkFBK0I7O3NCQStDdEMsTUFBTTt1QkFBQyxlQUFlOztrRkEzQ2QsK0JBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgTWF0U2VsZWN0Q2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgTExNUmVwaHJhc2VVc2VDYXNlLCBMTE1TZXJ2aWNlLCBMTE1TdW1tYXJ5VXNlQ2FzZSB9IGZyb20gJ0B0aWxkZS1ubHAvbmd4LXNlcnZpY2VzJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBmaW5hbGl6ZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBFUlJPUl9DT0RFUyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbk1lc3NhZ2UgfSBmcm9tICcuLi8uLi8uLi9ub3RpZmljYXRpb24tbWVzc2FnZSc7XHJcbmltcG9ydCB7IFBsYXVzaWJsZUhlbHBlciB9IGZyb20gJy4uLy4uLy4uL3BsYXVzaWJsZSc7XHJcbmltcG9ydCB7IExMTUFjdGlvbnMgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGxtLWFjdGlvbnMuZW51bSc7XHJcbmltcG9ydCB7IExMTURhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGxtLWRhdGEubW9kZWwnO1xyXG5pbXBvcnQgeyBMTE1Xcml0aW5nU3R5bGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGxtLXdyaXRpbmctc3R5bGUuZW51bSc7XHJcbmltcG9ydCB7IExMTUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sbG0taGVscGVyLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbGxtLXRleHRhcmVhLXdpdGgtYWN0aW9ucycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xsbS10ZXh0YXJlYS13aXRoLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xsbS10ZXh0YXJlYS13aXRoLWFjdGlvbnMuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTExNVGV4dGFyZWFXaXRoQWN0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgaXNMb2FkaW5nITogYm9vbGVhbjtcclxuICBpc1N1bW1hcml6ZWQhOiBib29sZWFuO1xyXG4gIGlzRWRpdGVkITogYm9vbGVhbjtcclxuICByZW1haW5pbmdRdW90YU1lc3NhZ2VWaXNpYmxlITogYm9vbGVhbjtcclxuICBxdW90YUxlZnQhOiBudW1iZXI7XHJcbiAgbWF4Q2hhckxlbmd0aCE6IG51bWJlcjtcclxuICBzdWJzY3JpcHRpb25VcmwhOiBzdHJpbmc7XHJcbiAgcHJldmlvdXNXcml0aW5nU3R5bGUhOiBMTE1Xcml0aW5nU3R5bGU7XHJcbiAgc2VsZWN0ZWRXcml0aW5nU3R5bGUgPSBMTE1Xcml0aW5nU3R5bGUuR0VORVJBTDtcclxuXHJcbiAgcmVhY2hlZFF1b3RhTWVzc2FnZSE6IE5vdGlmaWNhdGlvbk1lc3NhZ2U7XHJcbiAgZXhjZWVkZWRMaW1pdE1lc3NhZ2UhOiBOb3RpZmljYXRpb25NZXNzYWdlO1xyXG4gIHJlcXVlc3RUaW1lb3V0TWVzc2FnZSE6IE5vdGlmaWNhdGlvbk1lc3NhZ2U7XHJcbiAgZGVmYXVsdEVycm9yTWVzc2FnZSE6IE5vdGlmaWNhdGlvbk1lc3NhZ2U7XHJcblxyXG4gIHN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgaW5pdGlhbFRleHQhOiBzdHJpbmc7XHJcbiAgZWRpdGVkVGV4dCA9ICcnO1xyXG4gIG1hbnVhbGx5RWRpdGVkVGV4dCA9ICcnO1xyXG5cclxuICBsb2NhbGl6YXRpb25LZXkhOiBzdHJpbmc7XHJcbiAgbGxtQWN0aW9uVHlwZSE6IExMTUFjdGlvbnM7XHJcbiAgc2VsZWN0ZWRVc2VDYXNlITogTExNU3VtbWFyeVVzZUNhc2UgfCBMTE1SZXBocmFzZVVzZUNhc2U7XHJcblxyXG4gIHByaXZhdGUgc2F2ZWRSZXBocmFzaW5nczogeyBzdHlsZTogTExNV3JpdGluZ1N0eWxlLCB0ZXh0OiBzdHJpbmcgfVtdID0gW107XHJcblxyXG4gIHJlYWRvbmx5IGxsbUFjdGlvbnMgPSBMTE1BY3Rpb25zO1xyXG4gIHJlYWRvbmx5IHdyaXRpbmdTdHlsZXMgPSBPYmplY3QudmFsdWVzKExMTVdyaXRpbmdTdHlsZSk7XHJcbiAgdXNlQ2FzZXM6IExMTVN1bW1hcnlVc2VDYXNlW10gfCBMTE1SZXBocmFzZVVzZUNhc2VbXSA9IFtdO1xyXG5cclxuICByZWFkb25seSBtZXNzYWdlczogTm90aWZpY2F0aW9uTWVzc2FnZVtdID0gW107XHJcblxyXG4gIHNob3dVc2VDYXNlID0gZmFsc2U7XHJcblxyXG4gIGdldCBpc0Rpc2FibGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNMb2FkaW5nIHx8ICF0aGlzLmluaXRpYWxUZXh0IHx8IHRoaXMucXVvdGFMZWZ0IDwgMTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBsbG1TZXJ2aWNlOiBMTE1TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBsbG1IZWxwZXJTZXJ2aWNlOiBMTE1IZWxwZXJTZXJ2aWNlLFxyXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHByaXZhdGUgcmVhZG9ubHkgZGF0YTogTExNRGF0YVxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zZXRJbml0aWFsVGV4dCgpO1xyXG4gICAgaWYodGhpcy5sbG1BY3Rpb25UeXBlID09PSBMTE1BY3Rpb25zLlJFUEhSQVNFKSB7XHJcbiAgICAgIHRoaXMudXNlQ2FzZXMgID0gT2JqZWN0LnZhbHVlcyhMTE1SZXBocmFzZVVzZUNhc2UpIGFzIExMTVJlcGhyYXNlVXNlQ2FzZVtdO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZih0aGlzLmxsbUFjdGlvblR5cGUgPT09IExMTUFjdGlvbnMuU1VNTUFSWSkge1xyXG4gICAgICB0aGlzLnVzZUNhc2VzICA9IE9iamVjdC52YWx1ZXMoTExNU3VtbWFyeVVzZUNhc2UpIGFzIExMTVN1bW1hcnlVc2VDYXNlW107XHJcbiAgICB9XHJcbiAgICB0aGlzLnNob3dVc2VDYXNlID0gKHRoaXMubGxtQWN0aW9uVHlwZT09PSAgTExNQWN0aW9ucy5SRVBIUkFTRSAmJiB0aGlzLmRhdGEuc2hvd1VzZUNhc2VSZXBocmFzZSkgfHwgKHRoaXMubGxtQWN0aW9uVHlwZSA9PT0gTExNQWN0aW9ucy5TVU1NQVJZICYmIHRoaXMuZGF0YS5zaG93VXNlQ2FzZVN1bW1hcnkpO1xyXG4gICAgaWYodGhpcy5kYXRhLmRlZmF1bHRVc2VDYXNlKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRVc2VDYXNlID0gdGhpcy5kYXRhLmRlZmF1bHRVc2VDYXNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xvc2VNZXNzYWdlKG1zZzogTm90aWZpY2F0aW9uTWVzc2FnZSk6IHZvaWQge1xyXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLm1lc3NhZ2VzPy5maW5kSW5kZXgoKG1lc3NhZ2UpID0+IEpTT04uc3RyaW5naWZ5KG1lc3NhZ2UpID09PSBKU09OLnN0cmluZ2lmeShtc2cpKTtcclxuXHJcbiAgICBpZiAoaW5kZXggfHwgaW5kZXggPT09IDApIHtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hlY2tSZXBocmFzZWRUZXh0U2F2ZXMoZXZlbnQ6IE1hdFNlbGVjdENoYW5nZSk6IHZvaWQge1xyXG4gICAgaWYgKGV2ZW50LnZhbHVlICE9PSB0aGlzLnNlbGVjdGVkV3JpdGluZ1N0eWxlKSB7XHJcbiAgICAgIHRoaXMucHJldmlvdXNXcml0aW5nU3R5bGUgPSB0aGlzLnNlbGVjdGVkV3JpdGluZ1N0eWxlO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkV3JpdGluZ1N0eWxlID0gZXZlbnQudmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc2VsZWN0ZWRXcml0aW5nU3R5bGVTYXZlID0gdGhpcy5zYXZlZFJlcGhyYXNpbmdzLmZpbmQoKHJlcGhyYXNpbmcpID0+IHJlcGhyYXNpbmcuc3R5bGUgPT09IHRoaXMuc2VsZWN0ZWRXcml0aW5nU3R5bGUpO1xyXG4gICAgY29uc3QgcHJldmlvdXNXcml0aW5nU3R5bGVTYXZlID0gdGhpcy5zYXZlZFJlcGhyYXNpbmdzLmZpbmQoKHNhdmUpID0+IHNhdmUuc3R5bGUgPT09IHRoaXMucHJldmlvdXNXcml0aW5nU3R5bGUpO1xyXG5cclxuICAgIGlmIChwcmV2aW91c1dyaXRpbmdTdHlsZVNhdmUpIHtcclxuICAgICAgcHJldmlvdXNXcml0aW5nU3R5bGVTYXZlLnRleHQgPSB0aGlzLmVkaXRlZFRleHQgIT09ICcnID8gdGhpcy5lZGl0ZWRUZXh0IDogdGhpcy5pbml0aWFsVGV4dDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2F2ZWRSZXBocmFzaW5ncy5wdXNoKHsgc3R5bGU6IHRoaXMucHJldmlvdXNXcml0aW5nU3R5bGUsIHRleHQ6IHRoaXMuZWRpdGVkVGV4dCAhPT0gJycgPyB0aGlzLmVkaXRlZFRleHQgOiB0aGlzLmluaXRpYWxUZXh0IH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZWRpdGVkVGV4dCA9IHNlbGVjdGVkV3JpdGluZ1N0eWxlU2F2ZT8udGV4dCA/PyB0aGlzLmluaXRpYWxUZXh0O1xyXG4gICAgdGhpcy5tYW51YWxseUVkaXRlZFRleHQgPSAnJztcclxuXHJcbiAgICB0aGlzLmNoZWNrVGV4dExpbWl0KCk7XHJcbiAgfVxyXG5cclxuICBnZXRFZGl0ZWRUZXh0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgIGlmICh0aGlzLmxsbUFjdGlvblR5cGUgPT09IExMTUFjdGlvbnMuUkVQSFJBU0UpIHtcclxuICAgICAgdGhpcy53cml0aW5nU3R5bGVQbGF1c2libGVFdmVudCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zdW1tYXJ5UGxhdXNpYmxlRXZlbnQoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuZ2V0UmVxdWVzdCgpO1xyXG4gIH1cclxuXHJcbiAgY2FuY2VsKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHRleHRFZGl0RXZlbnQodGV4dDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLm1hbnVhbGx5RWRpdGVkVGV4dCA9IHRleHQ7XHJcbiAgICB0aGlzLmluaXRpYWxUZXh0ID0gdGV4dDtcclxuICAgIHRoaXMuZWRpdGVkVGV4dCA9ICcnO1xyXG5cclxuICAgIHRoaXMuY2hlY2tUZXh0TGltaXQoKTtcclxuICB9XHJcblxyXG4gIGNvcHlQbGF1c2libGVFdmVudCgpOiB2b2lkIHtcclxuICAgIFBsYXVzaWJsZUhlbHBlci5jdXN0b21FdmVudCh0aGlzLmxsbUFjdGlvblR5cGUudG9Mb3dlckNhc2UoKSwgeyBhY3Rpb246ICdjb3B5JyB9KTtcclxuICB9XHJcblxyXG4gIGRpc2xpa2VQbGF1c2libGVFdmVudCgpOiB2b2lkIHtcclxuICAgIFBsYXVzaWJsZUhlbHBlci5jdXN0b21FdmVudCh0aGlzLmxsbUFjdGlvblR5cGUudG9Mb3dlckNhc2UoKSwgeyBhY3Rpb246ICdkaXNsaWtlJyB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0SW5pdGlhbFRleHQoKSB7XHJcbiAgICB0aGlzLmRhdGEudGV4dC5zdWJzY3JpYmUoKHRleHQpID0+IHtcclxuICAgICAgdGhpcy5pbml0aWFsVGV4dCA9IHRleHQ7XHJcbiAgICAgIHRoaXMubGxtQWN0aW9uVHlwZSA9IHRoaXMuZGF0YS5hY3Rpb247XHJcbiAgICAgIHRoaXMubG9jYWxpemF0aW9uS2V5ID0gYExMTS4ke3RoaXMubGxtQWN0aW9uVHlwZX1fTU9EQUwuYFxyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvblVybCA9IHRoaXMubGxtSGVscGVyU2VydmljZS5sbG1Db25maWd1cmF0aW9uLnN1YnNjcmlwdGlvblVybDtcclxuICAgICAgdGhpcy5tYXhDaGFyTGVuZ3RoID0gdGhpcy5sbG1IZWxwZXJTZXJ2aWNlLmxsbUNvbmZpZ3VyYXRpb24ubWF4Q2hhckxlbmd0aDtcclxuXHJcbiAgICAgIHRoaXMucmVmcmVzaFF1b3RhKCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjaGVja1RleHRMaW1pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGxpbWl0ID0gdGhpcy5tYXhDaGFyTGVuZ3RoO1xyXG4gICAgY29uc3QgdGV4dHMgPSBbdGhpcy5pbml0aWFsVGV4dCwgdGhpcy5tYW51YWxseUVkaXRlZFRleHQsIHRoaXMuZWRpdGVkVGV4dF07XHJcbiAgICBjb25zdCBsb25nZXN0VGV4dCA9IHRoaXMuZWRpdGVkVGV4dCAmJiAhdGhpcy5tYW51YWxseUVkaXRlZFRleHQgPyB0aGlzLmVkaXRlZFRleHQgOiB0ZXh0cy5yZWR1Y2UoKGEsIGIpID0+IGEubGVuZ3RoID4gYi5sZW5ndGggPyBhIDogYik7XHJcblxyXG4gICAgaWYgKGxvbmdlc3RUZXh0Lmxlbmd0aCA+IGxpbWl0KSB7XHJcbiAgICAgIGlmICh0aGlzLmV4Y2VlZGVkTGltaXRNZXNzYWdlKSB7XHJcbiAgICAgICAgdGhpcy5jbG9zZU1lc3NhZ2UodGhpcy5leGNlZWRlZExpbWl0TWVzc2FnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZXhjZWVkZWRMaW1pdE1lc3NhZ2UgPSB0aGlzLmxsbUhlbHBlclNlcnZpY2UuZ2V0RXhjZWVkZWRMaW1pdE1lc3NhZ2UobG9uZ2VzdFRleHQubGVuZ3RoKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHRoaXMuZXhjZWVkZWRMaW1pdE1lc3NhZ2UpXHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNsb3NlTWVzc2FnZSh0aGlzLmV4Y2VlZGVkTGltaXRNZXNzYWdlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgd3JpdGluZ1N0eWxlUGxhdXNpYmxlRXZlbnQoKTogdm9pZCB7XHJcbiAgICBQbGF1c2libGVIZWxwZXIuY3VzdG9tRXZlbnQodGhpcy5sbG1BY3Rpb25UeXBlLnRvTG93ZXJDYXNlKCksIHsgd3JpdGluZ1N0eWxlOiB0aGlzLnNlbGVjdGVkV3JpdGluZ1N0eWxlIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdW1tYXJ5UGxhdXNpYmxlRXZlbnQoKTogdm9pZCB7XHJcbiAgICBQbGF1c2libGVIZWxwZXIuY3VzdG9tRXZlbnQodGhpcy5sbG1BY3Rpb25UeXBlLnRvTG93ZXJDYXNlKCksIHsgYWN0aW9uOiAnc3VtbWFyeScgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlZnJlc2hRdW90YShkZWNyZWFzZT86IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMubGxtSGVscGVyU2VydmljZS5nZXRSZW1haW5pbmdRdW90YShkZWNyZWFzZSkuc3Vic2NyaWJlKChyZW1haW5pbmdRdW90YSkgPT4ge1xyXG4gICAgICB0aGlzLnF1b3RhTGVmdCA9IHJlbWFpbmluZ1F1b3RhO1xyXG4gICAgICB0aGlzLnNldFF1b3RhTWVzc2FnZSgpO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0UXVvdGFNZXNzYWdlKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMucXVvdGFMZWZ0IDw9IHRoaXMubGxtSGVscGVyU2VydmljZS50cmlhbFJlcXVlc3RDb3VudCkge1xyXG4gICAgICB0aGlzLnJlbWFpbmluZ1F1b3RhTWVzc2FnZVZpc2libGUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnF1b3RhTGVmdCA8IDEpIHtcclxuICAgICAgdGhpcy5yZWFjaGVkUXVvdGFNZXNzYWdlID0gdGhpcy5sbG1IZWxwZXJTZXJ2aWNlLmdldFJlYWNoZWRRdW90YU1lc3NhZ2UoKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHRoaXMucmVhY2hlZFF1b3RhTWVzc2FnZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFJlcXVlc3QoKTogU3Vic2NyaXB0aW9uIHtcclxuICAgIGxldCB0ZXh0ID1cclxuICAgICAgdGhpcy5tYW51YWxseUVkaXRlZFRleHQgIT09ICcnXHJcbiAgICAgICAgPyB0aGlzLm1hbnVhbGx5RWRpdGVkVGV4dFxyXG4gICAgICAgIDogdGhpcy5pbml0aWFsVGV4dDtcclxuXHJcbiAgICBpZiAodGV4dC5sZW5ndGggPiB0aGlzLm1heENoYXJMZW5ndGgpIHtcclxuICAgICAgdGV4dCA9IHRleHQuc3Vic3RyaW5nKDAsIHRoaXMubWF4Q2hhckxlbmd0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbWV0aG9kID1cclxuICAgICAgdGhpcy5sbG1BY3Rpb25UeXBlID09PSBMTE1BY3Rpb25zLlJFUEhSQVNFXHJcbiAgICAgICAgPyB0aGlzLmxsbVNlcnZpY2UucmVwaHJhc2UoeyB0ZXh0OiB0ZXh0LCBsYW5ndWFnZTogdGhpcy5kYXRhLmxhbmd1YWdlLCBzdHlsZTogdGhpcy5zZWxlY3RlZFdyaXRpbmdTdHlsZSwgdXNlQ2FzZTogdGhpcy5zZWxlY3RlZFVzZUNhc2UgYXMgTExNUmVwaHJhc2VVc2VDYXNlIH0pXHJcbiAgICAgICAgOiB0aGlzLmxsbVNlcnZpY2Uuc3VtbWFyaXplKHsgdGV4dDogdGV4dCwgbGFuZ3VhZ2U6IHRoaXMuZGF0YS5sYW5ndWFnZSwgdXNlQ2FzZTogdGhpcy5zZWxlY3RlZFVzZUNhc2UgYXMgTExNU3VtbWFyeVVzZUNhc2UgfSk7XHJcblxyXG4gICAgcmV0dXJuIG1ldGhvZFxyXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5pc0xvYWRpbmcgPSBmYWxzZSkpKVxyXG4gICAgICAuc3Vic2NyaWJlKHRoaXMuZ2V0UmVxdWVzdENhbGxiYWNrKCkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRSZXF1ZXN0Q2FsbGJhY2soKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZXh0OiAocmVzcG9uc2U6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmxsbUFjdGlvblR5cGUgPT09IHRoaXMubGxtQWN0aW9ucy5TVU1NQVJZKSB7XHJcbiAgICAgICAgICB0aGlzLmlzU3VtbWFyaXplZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmVkaXRlZFRleHQgPSByZXNwb25zZTtcclxuICAgICAgICB0aGlzLm1hbnVhbGx5RWRpdGVkVGV4dCA9ICcnO1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdEVycm9yTWVzc2FnZSA9IHRoaXMubGxtSGVscGVyU2VydmljZS5nZXREZWZhdWx0RXJyb3JNZXNzYWdlKCk7XHJcbiAgICAgICAgdGhpcy5jbG9zZU1lc3NhZ2UodGhpcy5kZWZhdWx0RXJyb3JNZXNzYWdlKTtcclxuICAgICAgICB0aGlzLmNsb3NlTWVzc2FnZSh0aGlzLnJlcXVlc3RUaW1lb3V0TWVzc2FnZSk7XHJcbiAgICAgICAgdGhpcy5pc0VkaXRlZCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5yZWZyZXNoUXVvdGEodHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5jaGVja1RleHRMaW1pdCgpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChlcnJvci5zdGF0dXMgPT09IEVSUk9SX0NPREVTLlRJTUVPVVQpIHtcclxuICAgICAgICAgIHRoaXMucmVxdWVzdFRpbWVvdXRNZXNzYWdlID0gdGhpcy5sbG1IZWxwZXJTZXJ2aWNlLmdldFJlcXVlc3RUaW1lb3V0TWVzc2FnZSh0aGlzLmxsbUFjdGlvblR5cGUpO1xyXG4gICAgICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHRoaXMucmVxdWVzdFRpbWVvdXRNZXNzYWdlKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMubWVzc2FnZXMucHVzaCh0aGlzLmRlZmF1bHRFcnJvck1lc3NhZ2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlPnt7IGxvY2FsaXphdGlvbktleSArIFwiVElUTEVcIiB8IHRyYW5zbGF0ZSB9fTwvaDE+XHJcbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxyXG4gIDxwPnt7IGxvY2FsaXphdGlvbktleSArIFwiREVTQ1JJUFRJT05cIiB8IHRyYW5zbGF0ZSB9fTwvcD5cclxuXHJcbiAgPGxpYi10bGQtbm90aWZpY2F0aW9uLW1lc3NhZ2UgKm5nRm9yPVwibGV0IG1lc3NhZ2Ugb2YgbWVzc2FnZXNcIiBbbWVzc2FnZV09XCJtZXNzYWdlXCIgKGNsb3NlQ2xpY2tlZCk9XCJjbG9zZU1lc3NhZ2UobWVzc2FnZSlcIj48L2xpYi10bGQtbm90aWZpY2F0aW9uLW1lc3NhZ2U+XHJcblxyXG4gIDxtYXQtZm9ybS1maWVsZCAqbmdJZj1cInNob3dVc2VDYXNlXCIgY29sb3I9XCJhY2NlbnRcIiBjbGFzcz1cInctZnVsbCBsbG0td3JpdGluZy1zdHlsZS1zZWxlY3RcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgPG1hdC1sYWJlbD57eyAnTExNLlVTRV9DQVNFU19MQUJFTCcgfCB0cmFuc2xhdGUgfX08L21hdC1sYWJlbD5cclxuICAgIDxtYXQtc2VsZWN0IFtkaXNhYmxlZF09XCJpc0xvYWRpbmdcIiBbKG5nTW9kZWwpXT1cInNlbGVjdGVkVXNlQ2FzZVwiPlxyXG4gICAgICBAZm9yICh1c2VDYXNlIG9mIHVzZUNhc2VzOyB0cmFjayAkaW5kZXgpIHtcclxuXHJcbiAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cInVzZUNhc2VcIj5cclxuICAgICAgICAgIHt7ICdMTE0uVVNFX0NBU0UuJyArICh1c2VDYXNlIHwgdXBwZXJjYXNlKSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgfVxyXG4gICAgPC9tYXQtc2VsZWN0PlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJsbG1BY3Rpb25UeXBlID09PSBsbG1BY3Rpb25zLlJFUEhSQVNFXCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJ3LWZ1bGwgbGxtLXdyaXRpbmctc3R5bGUtc2VsZWN0XCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgPG1hdC1sYWJlbD57eyAnTExNLlJFUEhSQVNFX01PREFMLldSSVRJTkdfU1RZTEVTLlRJVExFJyB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICA8bWF0LXNlbGVjdCBbZGlzYWJsZWRdPVwiaXNMb2FkaW5nXCIgKHNlbGVjdGlvbkNoYW5nZSk9XCJjaGVja1JlcGhyYXNlZFRleHRTYXZlcygkZXZlbnQpXCIgW3ZhbHVlXT1cInNlbGVjdGVkV3JpdGluZ1N0eWxlXCI+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHN0eWxlIG9mIHdyaXRpbmdTdHlsZXNcIiBbdmFsdWVdPVwic3R5bGVcIj5cclxuICAgICAgICAgIHt7ICdMTE0uUkVQSFJBU0VfTU9EQUwuV1JJVElOR19TVFlMRVMuJyArIChzdHlsZSB8IHVwcGVyY2FzZSkgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG5cclxuICAgIDxwIGNsYXNzPVwibGxtLXdyaXRpbmctc3R5bGUgdGV4dC1tLXNlbWktYm9sZFwiPnt7XHJcbiAgICAgICAgXCJMTE0uUkVQSFJBU0VfTU9EQUwuV1JJVElOR19TVFlMRVMuU1BFQ0lGSUNfU1RZTEVcIiB8IHRyYW5zbGF0ZSA6XHJcbiAgICAgICAgeyBzdHlsZTogJ0xMTS5SRVBIUkFTRV9NT0RBTC5XUklUSU5HX1NUWUxFUy4nICsgKHNlbGVjdGVkV3JpdGluZ1N0eWxlIHwgdXBwZXJjYXNlKSB8IHRyYW5zbGF0ZSB9XHJcbiAgICAgIH19XHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1pY29ucy1vdXRsaW5lZCBpbmZvLWljb25cIlxyXG4gICAgICAgIG1hdFRvb2x0aXBDbGFzcz1cIm11bHRpbGluZS10b29sdGlwXCJcclxuICAgICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXHJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiJ0xMTS5SRVBIUkFTRV9NT0RBTC5XUklUSU5HX1NUWUxFUy5UT09MVElQXycgKyAoc2VsZWN0ZWRXcml0aW5nU3R5bGUgfCB1cHBlcmNhc2UpIHwgdHJhbnNsYXRlXCJcclxuICAgICAgPlxyXG4gICAgICAgIGluZm9cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9wPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8bGliLWxsbS10ZXh0YXJlYSBbY2xhc3MucmVwaHJhc2VdPVwibGxtQWN0aW9uVHlwZSA9PT0gbGxtQWN0aW9ucy5SRVBIUkFTRVwiIFt0ZXh0XT1cImVkaXRlZFRleHQgIT09ICcnID8gZWRpdGVkVGV4dCA6IGluaXRpYWxUZXh0XCIgW2Rpc2FibGVkXT1cImlzTG9hZGluZyB8fCAhcXVvdGFMZWZ0XCIgW2FjdGlvbkJ1dHRvbnNEaXNhYmxlZF09XCIhaXNFZGl0ZWRcIiAodGV4dEVkaXRFdmVudCk9XCJ0ZXh0RWRpdEV2ZW50KCRldmVudClcIiAoY29weUV2ZW50KT1cImNvcHlQbGF1c2libGVFdmVudCgpXCIgKGRpc2xpa2VFdmVudCk9XCJkaXNsaWtlUGxhdXNpYmxlRXZlbnQoKVwiPjwvbGliLWxsbS10ZXh0YXJlYT5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJsbG0tYWN0aW9ucy13cmFwcGVyXCIgbWF0LWRpYWxvZy1hY3Rpb25zPlxyXG4gIDxkaXYgKm5nSWY9XCJyZW1haW5pbmdRdW90YU1lc3NhZ2VWaXNpYmxlXCIgY2xhc3M9XCJxdW90YS1sZWZ0LW1lc3NhZ2VcIiBbaW5uZXJIVE1MXT1cImxvY2FsaXphdGlvbktleSArICdMSU1JVCcgfCB0cmFuc2xhdGU6IHsgbGltaXQ6IHF1b3RhTGVmdCwgc3Vic2NyaXB0aW9uVXJsOiBzdWJzY3JpcHRpb25VcmwgfVwiPjwvZGl2PlxyXG5cclxuICA8ZGl2IFtjbGFzcy53LWZ1bGxdPVwiIXJlbWFpbmluZ1F1b3RhTWVzc2FnZVZpc2libGVcIiBjbGFzcz1cImxsbS1hY3Rpb25zXCI+XHJcbiAgICA8YnV0dG9uICpuZ0lmPVwiaXNMb2FkaW5nOyBlbHNlIGNsb3NlQnV0dG9uXCIgbWF0LWJ1dHRvbiBjb2xvcj1cImFjY2VudFwiIChjbGljayk9XCJjYW5jZWwoKVwiPlxyXG4gICAgICB7eyBsb2NhbGl6YXRpb25LZXkgKyBcIkNBTkNFTFwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICA8L2J1dHRvbj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2Nsb3NlQnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIG1hdC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiBbbWF0LWRpYWxvZy1jbG9zZV09XCJudWxsXCI+XHJcbiAgICAgICAge3sgbG9jYWxpemF0aW9uS2V5ICsgXCJDTE9TRVwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIG1hdC1mbGF0LWJ1dHRvblxyXG4gICAgICBjb2xvcj1cImFjY2VudFwiXHJcbiAgICAgIChjbGljayk9XCJnZXRFZGl0ZWRUZXh0KClcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXHJcbiAgICA+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwibGxtQWN0aW9uVHlwZSA9PT0gbGxtQWN0aW9ucy5TVU1NQVJZOyBlbHNlIHJlcGhyYXNlQWN0aW9uXCI+XHJcbiAgICAgICAge3tcclxuICAgICAgICAgICghaXNTdW1tYXJpemVkXHJcbiAgICAgICAgICAgID8gXCJMTE0uU1VNTUFSWV9NT0RBTC5BQ1RJT05cIlxyXG4gICAgICAgICAgICA6IFwiTExNLlNVTU1BUllfTU9EQUwuUkVHRU5FUkFURVwiXHJcbiAgICAgICAgICApIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgfX1cclxuICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgPG5nLXRlbXBsYXRlICNyZXBocmFzZUFjdGlvbj5cclxuICAgICAgICB7eyBsb2NhbGl6YXRpb25LZXkgKyBcIkFDVElPTlwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDxtYXQtc3Bpbm5lciAqbmdJZj1cImlzTG9hZGluZ1wiIFtkaWFtZXRlcl09XCIyMFwiIGNvbG9yPVwicHJpbWFyeS1hY2NlbnQtZGFya2VyXCI+PC9tYXQtc3Bpbm5lcj5cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
392
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGxtLXRleHRhcmVhLXdpdGgtYWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tbW9uL3NyYy9saWIvbGxtL2NvbXBvbmVudHMvbGxtLXRleHRhcmVhLXdpdGgtYWN0aW9ucy9sbG0tdGV4dGFyZWEtd2l0aC1hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi9sbG0vY29tcG9uZW50cy9sbG0tdGV4dGFyZWEtd2l0aC1hY3Rpb25zL2xsbS10ZXh0YXJlYS13aXRoLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVGLE9BQU8sRUFBZ0IsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNQcEUsd0RBQTBIO0lBQXZDLHFSQUFnQiwrQkFBcUIsS0FBQztJQUFDLGlCQUErQjs7O0lBQTFGLG9DQUFtQjs7O0lBTzVFLHNDQUE4QjtJQUM1QixZQUNGOzs7SUFBQSxpQkFBYTs7O0lBRkQsa0NBQWlCO0lBQzNCLGNBQ0Y7SUFERSx5R0FDRjs7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QkFBdUIsS0FBQztZQUMvVCxBQURnVSxpQkFBbUIsRUFDN1U7WUFDTiwrQkFBb0Q7WUFDbEQsa0ZBQWlMO1lBRWpMLGdDQUF3RTtZQUt0RSxBQUpBLHlGQUF5RixzSEFJL0Q7WUFNMUIsbUNBS0M7WUFGQyxtSkFBUyxtQkFBZSxLQUFDO1lBZXpCLEFBSEEsQUFUQSxxRkFBd0Usc0hBUzNDLHNGQUdnRDtZQUduRixBQURFLEFBREUsaUJBQVMsRUFDTCxFQUNGOzs7O1lBakZlLGNBQTJDO1lBQTNDLDBFQUEyQztZQUUzRCxlQUFpRDtZQUFqRCxnRkFBaUQ7WUFFRixlQUFXO1lBQVgsc0NBQVc7WUFFNUMsY0FBaUI7WUFBakIsc0NBQWlCO1lBWW5CLGNBQTJDO1lBQTNDLG9FQUEyQztZQTBCeEMsY0FBd0Q7WUFBeEQseUVBQXdEO1lBQTRGLEFBQXJDLEFBQXRELCtFQUFxRCw2Q0FBcUMsd0NBQW9DO1lBR25NLGVBQWtDO1lBQWxDLHVEQUFrQztZQUVuQyxjQUE4QztZQUE5QywyREFBOEM7WUFDeEMsY0FBaUI7WUFBQSxBQUFqQixvQ0FBaUIsNkJBQWdCO1lBY3hDLGVBQXVCO1lBQXZCLHlDQUF1QjtZQUVoQixjQUE0QztZQUFBLEFBQTVDLG1FQUE0QyxnQ0FBbUI7WUFZeEQsZUFBZTtZQUFmLG9DQUFlOzs7aUZEM0R0QiwrQkFBK0I7Y0FMM0MsU0FBUzsyQkFDRSwrQkFBK0I7O3NCQStDdEMsTUFBTTt1QkFBQyxlQUFlOztrRkEzQ2QsK0JBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgTWF0U2VsZWN0Q2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgTExNUmVwaHJhc2VVc2VDYXNlLCBMTE1TZXJ2aWNlLCBMTE1TdW1tYXJ5VXNlQ2FzZSB9IGZyb20gJ0B0aWxkZS1ubHAvbmd4LXNlcnZpY2VzJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBmaW5hbGl6ZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBFUlJPUl9DT0RFUyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbk1lc3NhZ2UgfSBmcm9tICcuLi8uLi8uLi9ub3RpZmljYXRpb24tbWVzc2FnZSc7XHJcbmltcG9ydCB7IFBsYXVzaWJsZUhlbHBlciB9IGZyb20gJy4uLy4uLy4uL3BsYXVzaWJsZSc7XHJcbmltcG9ydCB7IExMTUFjdGlvbnMgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGxtLWFjdGlvbnMuZW51bSc7XHJcbmltcG9ydCB7IExMTURhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGxtLWRhdGEubW9kZWwnO1xyXG5pbXBvcnQgeyBMTE1Xcml0aW5nU3R5bGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGxtLXdyaXRpbmctc3R5bGUuZW51bSc7XHJcbmltcG9ydCB7IExMTUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sbG0taGVscGVyLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbGxtLXRleHRhcmVhLXdpdGgtYWN0aW9ucycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xsbS10ZXh0YXJlYS13aXRoLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xsbS10ZXh0YXJlYS13aXRoLWFjdGlvbnMuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTExNVGV4dGFyZWFXaXRoQWN0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgaXNMb2FkaW5nITogYm9vbGVhbjtcclxuICBpc1N1bW1hcml6ZWQhOiBib29sZWFuO1xyXG4gIGlzRWRpdGVkITogYm9vbGVhbjtcclxuICByZW1haW5pbmdRdW90YU1lc3NhZ2VWaXNpYmxlITogYm9vbGVhbjtcclxuICBxdW90YUxlZnQhOiBudW1iZXI7XHJcbiAgbWF4Q2hhckxlbmd0aCE6IG51bWJlcjtcclxuICBzdWJzY3JpcHRpb25VcmwhOiBzdHJpbmc7XHJcbiAgcHJldmlvdXNXcml0aW5nU3R5bGUhOiBMTE1Xcml0aW5nU3R5bGU7XHJcbiAgc2VsZWN0ZWRXcml0aW5nU3R5bGUgPSBMTE1Xcml0aW5nU3R5bGUuR0VORVJBTDtcclxuXHJcbiAgcmVhY2hlZFF1b3RhTWVzc2FnZSE6IE5vdGlmaWNhdGlvbk1lc3NhZ2U7XHJcbiAgZXhjZWVkZWRMaW1pdE1lc3NhZ2UhOiBOb3RpZmljYXRpb25NZXNzYWdlO1xyXG4gIHJlcXVlc3RUaW1lb3V0TWVzc2FnZSE6IE5vdGlmaWNhdGlvbk1lc3NhZ2U7XHJcbiAgZGVmYXVsdEVycm9yTWVzc2FnZSE6IE5vdGlmaWNhdGlvbk1lc3NhZ2U7XHJcblxyXG4gIHN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgaW5pdGlhbFRleHQhOiBzdHJpbmc7XHJcbiAgZWRpdGVkVGV4dCA9ICcnO1xyXG4gIG1hbnVhbGx5RWRpdGVkVGV4dCA9ICcnO1xyXG5cclxuICBsb2NhbGl6YXRpb25LZXkhOiBzdHJpbmc7XHJcbiAgbGxtQWN0aW9uVHlwZSE6IExMTUFjdGlvbnM7XHJcbiAgc2VsZWN0ZWRVc2VDYXNlITogTExNU3VtbWFyeVVzZUNhc2UgfCBMTE1SZXBocmFzZVVzZUNhc2U7XHJcblxyXG4gIHByaXZhdGUgc2F2ZWRSZXBocmFzaW5nczogeyBzdHlsZTogTExNV3JpdGluZ1N0eWxlLCB0ZXh0OiBzdHJpbmcgfVtdID0gW107XHJcblxyXG4gIHJlYWRvbmx5IGxsbUFjdGlvbnMgPSBMTE1BY3Rpb25zO1xyXG4gIHJlYWRvbmx5IHdyaXRpbmdTdHlsZXMgPSBPYmplY3QudmFsdWVzKExMTVdyaXRpbmdTdHlsZSk7XHJcbiAgdXNlQ2FzZXM6IExMTVN1bW1hcnlVc2VDYXNlW10gfCBMTE1SZXBocmFzZVVzZUNhc2VbXSA9IFtdO1xyXG5cclxuICByZWFkb25seSBtZXNzYWdlczogTm90aWZpY2F0aW9uTWVzc2FnZVtdID0gW107XHJcblxyXG4gIHNob3dVc2VDYXNlID0gZmFsc2U7XHJcblxyXG4gIGdldCBpc0Rpc2FibGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNMb2FkaW5nIHx8ICF0aGlzLmluaXRpYWxUZXh0IHx8IHRoaXMucXVvdGFMZWZ0IDwgMTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBsbG1TZXJ2aWNlOiBMTE1TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBsbG1IZWxwZXJTZXJ2aWNlOiBMTE1IZWxwZXJTZXJ2aWNlLFxyXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHByaXZhdGUgcmVhZG9ubHkgZGF0YTogTExNRGF0YVxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zZXRJbml0aWFsVGV4dCgpO1xyXG4gICAgaWYodGhpcy5sbG1BY3Rpb25UeXBlID09PSBMTE1BY3Rpb25zLlJFUEhSQVNFKSB7XHJcbiAgICAgIHRoaXMudXNlQ2FzZXMgID0gT2JqZWN0LnZhbHVlcyhMTE1SZXBocmFzZVVzZUNhc2UpIGFzIExMTVJlcGhyYXNlVXNlQ2FzZVtdO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVXNlQ2FzZSA9IExMTVJlcGhyYXNlVXNlQ2FzZS5HZW5lcmFsO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZih0aGlzLmxsbUFjdGlvblR5cGUgPT09IExMTUFjdGlvbnMuU1VNTUFSWSkge1xyXG4gICAgICB0aGlzLnVzZUNhc2VzICA9IE9iamVjdC52YWx1ZXMoTExNU3VtbWFyeVVzZUNhc2UpIGFzIExMTVN1bW1hcnlVc2VDYXNlW107XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRVc2VDYXNlID0gTExNU3VtbWFyeVVzZUNhc2UuR2VuZXJhbDtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNob3dVc2VDYXNlID0gKHRoaXMubGxtQWN0aW9uVHlwZT09PSAgTExNQWN0aW9ucy5SRVBIUkFTRSAmJiB0aGlzLmRhdGEuc2hvd1VzZUNhc2VSZXBocmFzZSkgfHwgKHRoaXMubGxtQWN0aW9uVHlwZSA9PT0gTExNQWN0aW9ucy5TVU1NQVJZICYmIHRoaXMuZGF0YS5zaG93VXNlQ2FzZVN1bW1hcnkpO1xyXG4gICAgaWYodGhpcy5kYXRhLmRlZmF1bHRVc2VDYXNlKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRVc2VDYXNlID0gdGhpcy5kYXRhLmRlZmF1bHRVc2VDYXNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xvc2VNZXNzYWdlKG1zZzogTm90aWZpY2F0aW9uTWVzc2FnZSk6IHZvaWQge1xyXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLm1lc3NhZ2VzPy5maW5kSW5kZXgoKG1lc3NhZ2UpID0+IEpTT04uc3RyaW5naWZ5KG1lc3NhZ2UpID09PSBKU09OLnN0cmluZ2lmeShtc2cpKTtcclxuXHJcbiAgICBpZiAoaW5kZXggfHwgaW5kZXggPT09IDApIHtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hlY2tSZXBocmFzZWRUZXh0U2F2ZXMoZXZlbnQ6IE1hdFNlbGVjdENoYW5nZSk6IHZvaWQge1xyXG4gICAgaWYgKGV2ZW50LnZhbHVlICE9PSB0aGlzLnNlbGVjdGVkV3JpdGluZ1N0eWxlKSB7XHJcbiAgICAgIHRoaXMucHJldmlvdXNXcml0aW5nU3R5bGUgPSB0aGlzLnNlbGVjdGVkV3JpdGluZ1N0eWxlO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkV3JpdGluZ1N0eWxlID0gZXZlbnQudmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc2VsZWN0ZWRXcml0aW5nU3R5bGVTYXZlID0gdGhpcy5zYXZlZFJlcGhyYXNpbmdzLmZpbmQoKHJlcGhyYXNpbmcpID0+IHJlcGhyYXNpbmcuc3R5bGUgPT09IHRoaXMuc2VsZWN0ZWRXcml0aW5nU3R5bGUpO1xyXG4gICAgY29uc3QgcHJldmlvdXNXcml0aW5nU3R5bGVTYXZlID0gdGhpcy5zYXZlZFJlcGhyYXNpbmdzLmZpbmQoKHNhdmUpID0+IHNhdmUuc3R5bGUgPT09IHRoaXMucHJldmlvdXNXcml0aW5nU3R5bGUpO1xyXG5cclxuICAgIGlmIChwcmV2aW91c1dyaXRpbmdTdHlsZVNhdmUpIHtcclxuICAgICAgcHJldmlvdXNXcml0aW5nU3R5bGVTYXZlLnRleHQgPSB0aGlzLmVkaXRlZFRleHQgIT09ICcnID8gdGhpcy5lZGl0ZWRUZXh0IDogdGhpcy5pbml0aWFsVGV4dDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2F2ZWRSZXBocmFzaW5ncy5wdXNoKHsgc3R5bGU6IHRoaXMucHJldmlvdXNXcml0aW5nU3R5bGUsIHRleHQ6IHRoaXMuZWRpdGVkVGV4dCAhPT0gJycgPyB0aGlzLmVkaXRlZFRleHQgOiB0aGlzLmluaXRpYWxUZXh0IH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZWRpdGVkVGV4dCA9IHNlbGVjdGVkV3JpdGluZ1N0eWxlU2F2ZT8udGV4dCA/PyB0aGlzLmluaXRpYWxUZXh0O1xyXG4gICAgdGhpcy5tYW51YWxseUVkaXRlZFRleHQgPSAnJztcclxuXHJcbiAgICB0aGlzLmNoZWNrVGV4dExpbWl0KCk7XHJcbiAgfVxyXG5cclxuICBnZXRFZGl0ZWRUZXh0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgIGlmICh0aGlzLmxsbUFjdGlvblR5cGUgPT09IExMTUFjdGlvbnMuUkVQSFJBU0UpIHtcclxuICAgICAgdGhpcy53cml0aW5nU3R5bGVQbGF1c2libGVFdmVudCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zdW1tYXJ5UGxhdXNpYmxlRXZlbnQoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuZ2V0UmVxdWVzdCgpO1xyXG4gIH1cclxuXHJcbiAgY2FuY2VsKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHRleHRFZGl0RXZlbnQodGV4dDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLm1hbnVhbGx5RWRpdGVkVGV4dCA9IHRleHQ7XHJcbiAgICB0aGlzLmluaXRpYWxUZXh0ID0gdGV4dDtcclxuICAgIHRoaXMuZWRpdGVkVGV4dCA9ICcnO1xyXG5cclxuICAgIHRoaXMuY2hlY2tUZXh0TGltaXQoKTtcclxuICB9XHJcblxyXG4gIGNvcHlQbGF1c2libGVFdmVudCgpOiB2b2lkIHtcclxuICAgIFBsYXVzaWJsZUhlbHBlci5jdXN0b21FdmVudCh0aGlzLmxsbUFjdGlvblR5cGUudG9Mb3dlckNhc2UoKSwgeyBhY3Rpb246ICdjb3B5JyB9KTtcclxuICB9XHJcblxyXG4gIGRpc2xpa2VQbGF1c2libGVFdmVudCgpOiB2b2lkIHtcclxuICAgIFBsYXVzaWJsZUhlbHBlci5jdXN0b21FdmVudCh0aGlzLmxsbUFjdGlvblR5cGUudG9Mb3dlckNhc2UoKSwgeyBhY3Rpb246ICdkaXNsaWtlJyB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0SW5pdGlhbFRleHQoKSB7XHJcbiAgICB0aGlzLmRhdGEudGV4dC5zdWJzY3JpYmUoKHRleHQpID0+IHtcclxuICAgICAgdGhpcy5pbml0aWFsVGV4dCA9IHRleHQ7XHJcbiAgICAgIHRoaXMubGxtQWN0aW9uVHlwZSA9IHRoaXMuZGF0YS5hY3Rpb247XHJcbiAgICAgIHRoaXMubG9jYWxpemF0aW9uS2V5ID0gYExMTS4ke3RoaXMubGxtQWN0aW9uVHlwZX1fTU9EQUwuYFxyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvblVybCA9IHRoaXMubGxtSGVscGVyU2VydmljZS5sbG1Db25maWd1cmF0aW9uLnN1YnNjcmlwdGlvblVybDtcclxuICAgICAgdGhpcy5tYXhDaGFyTGVuZ3RoID0gdGhpcy5sbG1IZWxwZXJTZXJ2aWNlLmxsbUNvbmZpZ3VyYXRpb24ubWF4Q2hhckxlbmd0aDtcclxuXHJcbiAgICAgIHRoaXMucmVmcmVzaFF1b3RhKCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjaGVja1RleHRMaW1pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGxpbWl0ID0gdGhpcy5tYXhDaGFyTGVuZ3RoO1xyXG4gICAgY29uc3QgdGV4dHMgPSBbdGhpcy5pbml0aWFsVGV4dCwgdGhpcy5tYW51YWxseUVkaXRlZFRleHQsIHRoaXMuZWRpdGVkVGV4dF07XHJcbiAgICBjb25zdCBsb25nZXN0VGV4dCA9IHRoaXMuZWRpdGVkVGV4dCAmJiAhdGhpcy5tYW51YWxseUVkaXRlZFRleHQgPyB0aGlzLmVkaXRlZFRleHQgOiB0ZXh0cy5yZWR1Y2UoKGEsIGIpID0+IGEubGVuZ3RoID4gYi5sZW5ndGggPyBhIDogYik7XHJcblxyXG4gICAgaWYgKGxvbmdlc3RUZXh0Lmxlbmd0aCA+IGxpbWl0KSB7XHJcbiAgICAgIGlmICh0aGlzLmV4Y2VlZGVkTGltaXRNZXNzYWdlKSB7XHJcbiAgICAgICAgdGhpcy5jbG9zZU1lc3NhZ2UodGhpcy5leGNlZWRlZExpbWl0TWVzc2FnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZXhjZWVkZWRMaW1pdE1lc3NhZ2UgPSB0aGlzLmxsbUhlbHBlclNlcnZpY2UuZ2V0RXhjZWVkZWRMaW1pdE1lc3NhZ2UobG9uZ2VzdFRleHQubGVuZ3RoKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHRoaXMuZXhjZWVkZWRMaW1pdE1lc3NhZ2UpXHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNsb3NlTWVzc2FnZSh0aGlzLmV4Y2VlZGVkTGltaXRNZXNzYWdlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgd3JpdGluZ1N0eWxlUGxhdXNpYmxlRXZlbnQoKTogdm9pZCB7XHJcbiAgICBQbGF1c2libGVIZWxwZXIuY3VzdG9tRXZlbnQodGhpcy5sbG1BY3Rpb25UeXBlLnRvTG93ZXJDYXNlKCksIHsgd3JpdGluZ1N0eWxlOiB0aGlzLnNlbGVjdGVkV3JpdGluZ1N0eWxlIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdW1tYXJ5UGxhdXNpYmxlRXZlbnQoKTogdm9pZCB7XHJcbiAgICBQbGF1c2libGVIZWxwZXIuY3VzdG9tRXZlbnQodGhpcy5sbG1BY3Rpb25UeXBlLnRvTG93ZXJDYXNlKCksIHsgYWN0aW9uOiAnc3VtbWFyeScgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlZnJlc2hRdW90YShkZWNyZWFzZT86IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMubGxtSGVscGVyU2VydmljZS5nZXRSZW1haW5pbmdRdW90YShkZWNyZWFzZSkuc3Vic2NyaWJlKChyZW1haW5pbmdRdW90YSkgPT4ge1xyXG4gICAgICB0aGlzLnF1b3RhTGVmdCA9IHJlbWFpbmluZ1F1b3RhO1xyXG4gICAgICB0aGlzLnNldFF1b3RhTWVzc2FnZSgpO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0UXVvdGFNZXNzYWdlKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMucXVvdGFMZWZ0IDw9IHRoaXMubGxtSGVscGVyU2VydmljZS50cmlhbFJlcXVlc3RDb3VudCkge1xyXG4gICAgICB0aGlzLnJlbWFpbmluZ1F1b3RhTWVzc2FnZVZpc2libGUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnF1b3RhTGVmdCA8IDEpIHtcclxuICAgICAgdGhpcy5yZWFjaGVkUXVvdGFNZXNzYWdlID0gdGhpcy5sbG1IZWxwZXJTZXJ2aWNlLmdldFJlYWNoZWRRdW90YU1lc3NhZ2UoKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHRoaXMucmVhY2hlZFF1b3RhTWVzc2FnZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFJlcXVlc3QoKTogU3Vic2NyaXB0aW9uIHtcclxuICAgIGxldCB0ZXh0ID1cclxuICAgICAgdGhpcy5tYW51YWxseUVkaXRlZFRleHQgIT09ICcnXHJcbiAgICAgICAgPyB0aGlzLm1hbnVhbGx5RWRpdGVkVGV4dFxyXG4gICAgICAgIDogdGhpcy5pbml0aWFsVGV4dDtcclxuXHJcbiAgICBpZiAodGV4dC5sZW5ndGggPiB0aGlzLm1heENoYXJMZW5ndGgpIHtcclxuICAgICAgdGV4dCA9IHRleHQuc3Vic3RyaW5nKDAsIHRoaXMubWF4Q2hhckxlbmd0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbWV0aG9kID1cclxuICAgICAgdGhpcy5sbG1BY3Rpb25UeXBlID09PSBMTE1BY3Rpb25zLlJFUEhSQVNFXHJcbiAgICAgICAgPyB0aGlzLmxsbVNlcnZpY2UucmVwaHJhc2UoeyB0ZXh0OiB0ZXh0LCBsYW5ndWFnZTogdGhpcy5kYXRhLmxhbmd1YWdlLCBzdHlsZTogdGhpcy5zZWxlY3RlZFdyaXRpbmdTdHlsZSwgdXNlQ2FzZTogdGhpcy5zZWxlY3RlZFVzZUNhc2UgYXMgTExNUmVwaHJhc2VVc2VDYXNlIH0pXHJcbiAgICAgICAgOiB0aGlzLmxsbVNlcnZpY2Uuc3VtbWFyaXplKHsgdGV4dDogdGV4dCwgbGFuZ3VhZ2U6IHRoaXMuZGF0YS5sYW5ndWFnZSwgdXNlQ2FzZTogdGhpcy5zZWxlY3RlZFVzZUNhc2UgYXMgTExNU3VtbWFyeVVzZUNhc2UgfSk7XHJcblxyXG4gICAgcmV0dXJuIG1ldGhvZFxyXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5pc0xvYWRpbmcgPSBmYWxzZSkpKVxyXG4gICAgICAuc3Vic2NyaWJlKHRoaXMuZ2V0UmVxdWVzdENhbGxiYWNrKCkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRSZXF1ZXN0Q2FsbGJhY2soKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZXh0OiAocmVzcG9uc2U6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmxsbUFjdGlvblR5cGUgPT09IHRoaXMubGxtQWN0aW9ucy5TVU1NQVJZKSB7XHJcbiAgICAgICAgICB0aGlzLmlzU3VtbWFyaXplZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmVkaXRlZFRleHQgPSByZXNwb25zZTtcclxuICAgICAgICB0aGlzLm1hbnVhbGx5RWRpdGVkVGV4dCA9ICcnO1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdEVycm9yTWVzc2FnZSA9IHRoaXMubGxtSGVscGVyU2VydmljZS5nZXREZWZhdWx0RXJyb3JNZXNzYWdlKCk7XHJcbiAgICAgICAgdGhpcy5jbG9zZU1lc3NhZ2UodGhpcy5kZWZhdWx0RXJyb3JNZXNzYWdlKTtcclxuICAgICAgICB0aGlzLmNsb3NlTWVzc2FnZSh0aGlzLnJlcXVlc3RUaW1lb3V0TWVzc2FnZSk7XHJcbiAgICAgICAgdGhpcy5pc0VkaXRlZCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5yZWZyZXNoUXVvdGEodHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5jaGVja1RleHRMaW1pdCgpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChlcnJvci5zdGF0dXMgPT09IEVSUk9SX0NPREVTLlRJTUVPVVQpIHtcclxuICAgICAgICAgIHRoaXMucmVxdWVzdFRpbWVvdXRNZXNzYWdlID0gdGhpcy5sbG1IZWxwZXJTZXJ2aWNlLmdldFJlcXVlc3RUaW1lb3V0TWVzc2FnZSh0aGlzLmxsbUFjdGlvblR5cGUpO1xyXG4gICAgICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHRoaXMucmVxdWVzdFRpbWVvdXRNZXNzYWdlKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMubWVzc2FnZXMucHVzaCh0aGlzLmRlZmF1bHRFcnJvck1lc3NhZ2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlPnt7IGxvY2FsaXphdGlvbktleSArIFwiVElUTEVcIiB8IHRyYW5zbGF0ZSB9fTwvaDE+XHJcbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxyXG4gIDxwPnt7IGxvY2FsaXphdGlvbktleSArIFwiREVTQ1JJUFRJT05cIiB8IHRyYW5zbGF0ZSB9fTwvcD5cclxuXHJcbiAgPGxpYi10bGQtbm90aWZpY2F0aW9uLW1lc3NhZ2UgKm5nRm9yPVwibGV0IG1lc3NhZ2Ugb2YgbWVzc2FnZXNcIiBbbWVzc2FnZV09XCJtZXNzYWdlXCIgKGNsb3NlQ2xpY2tlZCk9XCJjbG9zZU1lc3NhZ2UobWVzc2FnZSlcIj48L2xpYi10bGQtbm90aWZpY2F0aW9uLW1lc3NhZ2U+XHJcblxyXG4gIDxtYXQtZm9ybS1maWVsZCAqbmdJZj1cInNob3dVc2VDYXNlXCIgY29sb3I9XCJhY2NlbnRcIiBjbGFzcz1cInctZnVsbCBsbG0td3JpdGluZy1zdHlsZS1zZWxlY3RcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgPG1hdC1sYWJlbD57eyAnTExNLlVTRV9DQVNFU19MQUJFTCcgfCB0cmFuc2xhdGUgfX08L21hdC1sYWJlbD5cclxuICAgIDxtYXQtc2VsZWN0IFtkaXNhYmxlZF09XCJpc0xvYWRpbmdcIiBbKG5nTW9kZWwpXT1cInNlbGVjdGVkVXNlQ2FzZVwiPlxyXG4gICAgICBAZm9yICh1c2VDYXNlIG9mIHVzZUNhc2VzOyB0cmFjayAkaW5kZXgpIHtcclxuXHJcbiAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cInVzZUNhc2VcIj5cclxuICAgICAgICAgIHt7ICdMTE0uVVNFX0NBU0UuJyArICh1c2VDYXNlIHwgdXBwZXJjYXNlKSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgfVxyXG4gICAgPC9tYXQtc2VsZWN0PlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJsbG1BY3Rpb25UeXBlID09PSBsbG1BY3Rpb25zLlJFUEhSQVNFXCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJ3LWZ1bGwgbGxtLXdyaXRpbmctc3R5bGUtc2VsZWN0XCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgPG1hdC1sYWJlbD57eyAnTExNLlJFUEhSQVNFX01PREFMLldSSVRJTkdfU1RZTEVTLlRJVExFJyB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICA8bWF0LXNlbGVjdCBbZGlzYWJsZWRdPVwiaXNMb2FkaW5nXCIgKHNlbGVjdGlvbkNoYW5nZSk9XCJjaGVja1JlcGhyYXNlZFRleHRTYXZlcygkZXZlbnQpXCIgW3ZhbHVlXT1cInNlbGVjdGVkV3JpdGluZ1N0eWxlXCI+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHN0eWxlIG9mIHdyaXRpbmdTdHlsZXNcIiBbdmFsdWVdPVwic3R5bGVcIj5cclxuICAgICAgICAgIHt7ICdMTE0uUkVQSFJBU0VfTU9EQUwuV1JJVElOR19TVFlMRVMuJyArIChzdHlsZSB8IHVwcGVyY2FzZSkgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG5cclxuICAgIDxwIGNsYXNzPVwibGxtLXdyaXRpbmctc3R5bGUgdGV4dC1tLXNlbWktYm9sZFwiPnt7XHJcbiAgICAgICAgXCJMTE0uUkVQSFJBU0VfTU9EQUwuV1JJVElOR19TVFlMRVMuU1BFQ0lGSUNfU1RZTEVcIiB8IHRyYW5zbGF0ZSA6XHJcbiAgICAgICAgeyBzdHlsZTogJ0xMTS5SRVBIUkFTRV9NT0RBTC5XUklUSU5HX1NUWUxFUy4nICsgKHNlbGVjdGVkV3JpdGluZ1N0eWxlIHwgdXBwZXJjYXNlKSB8IHRyYW5zbGF0ZSB9XHJcbiAgICAgIH19XHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1pY29ucy1vdXRsaW5lZCBpbmZvLWljb25cIlxyXG4gICAgICAgIG1hdFRvb2x0aXBDbGFzcz1cIm11bHRpbGluZS10b29sdGlwXCJcclxuICAgICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXHJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiJ0xMTS5SRVBIUkFTRV9NT0RBTC5XUklUSU5HX1NUWUxFUy5UT09MVElQXycgKyAoc2VsZWN0ZWRXcml0aW5nU3R5bGUgfCB1cHBlcmNhc2UpIHwgdHJhbnNsYXRlXCJcclxuICAgICAgPlxyXG4gICAgICAgIGluZm9cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9wPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8bGliLWxsbS10ZXh0YXJlYSBbY2xhc3MucmVwaHJhc2VdPVwibGxtQWN0aW9uVHlwZSA9PT0gbGxtQWN0aW9ucy5SRVBIUkFTRVwiIFt0ZXh0XT1cImVkaXRlZFRleHQgIT09ICcnID8gZWRpdGVkVGV4dCA6IGluaXRpYWxUZXh0XCIgW2Rpc2FibGVkXT1cImlzTG9hZGluZyB8fCAhcXVvdGFMZWZ0XCIgW2FjdGlvbkJ1dHRvbnNEaXNhYmxlZF09XCIhaXNFZGl0ZWRcIiAodGV4dEVkaXRFdmVudCk9XCJ0ZXh0RWRpdEV2ZW50KCRldmVudClcIiAoY29weUV2ZW50KT1cImNvcHlQbGF1c2libGVFdmVudCgpXCIgKGRpc2xpa2VFdmVudCk9XCJkaXNsaWtlUGxhdXNpYmxlRXZlbnQoKVwiPjwvbGliLWxsbS10ZXh0YXJlYT5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJsbG0tYWN0aW9ucy13cmFwcGVyXCIgbWF0LWRpYWxvZy1hY3Rpb25zPlxyXG4gIDxkaXYgKm5nSWY9XCJyZW1haW5pbmdRdW90YU1lc3NhZ2VWaXNpYmxlXCIgY2xhc3M9XCJxdW90YS1sZWZ0LW1lc3NhZ2VcIiBbaW5uZXJIVE1MXT1cImxvY2FsaXphdGlvbktleSArICdMSU1JVCcgfCB0cmFuc2xhdGU6IHsgbGltaXQ6IHF1b3RhTGVmdCwgc3Vic2NyaXB0aW9uVXJsOiBzdWJzY3JpcHRpb25VcmwgfVwiPjwvZGl2PlxyXG5cclxuICA8ZGl2IFtjbGFzcy53LWZ1bGxdPVwiIXJlbWFpbmluZ1F1b3RhTWVzc2FnZVZpc2libGVcIiBjbGFzcz1cImxsbS1hY3Rpb25zXCI+XHJcbiAgICA8YnV0dG9uICpuZ0lmPVwiaXNMb2FkaW5nOyBlbHNlIGNsb3NlQnV0dG9uXCIgbWF0LWJ1dHRvbiBjb2xvcj1cImFjY2VudFwiIChjbGljayk9XCJjYW5jZWwoKVwiPlxyXG4gICAgICB7eyBsb2NhbGl6YXRpb25LZXkgKyBcIkNBTkNFTFwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICA8L2J1dHRvbj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2Nsb3NlQnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIG1hdC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiBbbWF0LWRpYWxvZy1jbG9zZV09XCJudWxsXCI+XHJcbiAgICAgICAge3sgbG9jYWxpemF0aW9uS2V5ICsgXCJDTE9TRVwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIG1hdC1mbGF0LWJ1dHRvblxyXG4gICAgICBjb2xvcj1cImFjY2VudFwiXHJcbiAgICAgIChjbGljayk9XCJnZXRFZGl0ZWRUZXh0KClcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXHJcbiAgICA+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwibGxtQWN0aW9uVHlwZSA9PT0gbGxtQWN0aW9ucy5TVU1NQVJZOyBlbHNlIHJlcGhyYXNlQWN0aW9uXCI+XHJcbiAgICAgICAge3tcclxuICAgICAgICAgICghaXNTdW1tYXJpemVkXHJcbiAgICAgICAgICAgID8gXCJMTE0uU1VNTUFSWV9NT0RBTC5BQ1RJT05cIlxyXG4gICAgICAgICAgICA6IFwiTExNLlNVTU1BUllfTU9EQUwuUkVHRU5FUkFURVwiXHJcbiAgICAgICAgICApIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgfX1cclxuICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgPG5nLXRlbXBsYXRlICNyZXBocmFzZUFjdGlvbj5cclxuICAgICAgICB7eyBsb2NhbGl6YXRpb25LZXkgKyBcIkFDVElPTlwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDxtYXQtc3Bpbm5lciAqbmdJZj1cImlzTG9hZGluZ1wiIFtkaWFtZXRlcl09XCIyMFwiIGNvbG9yPVwicHJpbWFyeS1hY2NlbnQtZGFya2VyXCI+PC9tYXQtc3Bpbm5lcj5cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -7060,9 +7060,11 @@ class LLMTextareaWithActionsComponent {
|
|
|
7060
7060
|
this.setInitialText();
|
|
7061
7061
|
if (this.llmActionType === LLMActions.REPHRASE) {
|
|
7062
7062
|
this.useCases = Object.values(LLMRephraseUseCase);
|
|
7063
|
+
this.selectedUseCase = LLMRephraseUseCase.General;
|
|
7063
7064
|
}
|
|
7064
7065
|
else if (this.llmActionType === LLMActions.SUMMARY) {
|
|
7065
7066
|
this.useCases = Object.values(LLMSummaryUseCase);
|
|
7067
|
+
this.selectedUseCase = LLMSummaryUseCase.General;
|
|
7066
7068
|
}
|
|
7067
7069
|
this.showUseCase = (this.llmActionType === LLMActions.REPHRASE && this.data.showUseCaseRephrase) || (this.llmActionType === LLMActions.SUMMARY && this.data.showUseCaseSummary);
|
|
7068
7070
|
if (this.data.defaultUseCase) {
|