@touchpoll/tp-survey 0.0.3 → 0.0.5

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.
@@ -8,15 +8,21 @@ export class MultiLangObjectToHtmlPipe {
8
8
  this._logic = _logic;
9
9
  }
10
10
  transform(caption, language, logicCaptions) {
11
+ //сначала проверим есть ли текст у которого выполняется Expression.
11
12
  if (Array.isArray(logicCaptions)) {
12
13
  const correctLogicCaption = logicCaptions.find(logicCaption => this._logic.executeLogic(logicCaption.Expression));
13
14
  const correctLogicCaptionLangObj = correctLogicCaption?.MultiLangCaptions.find(capt => capt.lang === language);
14
15
  const text = correctLogicCaptionLangObj?._SYS_CaptionHTML ?? correctLogicCaptionLangObj?.CaptionHtml ?? '';
15
- return this._sanitizer.bypassSecurityTrustHtml(text);
16
+ //если есть хоть какой-то текст - показываем его
17
+ if ((text ?? '').trim().length > 0) {
18
+ return this._sanitizer.bypassSecurityTrustHtml(text);
19
+ }
16
20
  }
21
+ //если основой текст не указан, выходим
17
22
  if (!Array.isArray(caption)) {
18
23
  return '';
19
24
  }
25
+ //ищем основной текс с нужным языком
20
26
  const langObj = caption.find(capt => capt.lang === language);
21
27
  const text = langObj?._SYS_CaptionHTML ?? langObj?.CaptionHtml ?? '';
22
28
  return this._sanitizer.bypassSecurityTrustHtml(text);
@@ -31,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImpor
31
37
  standalone: true
32
38
  }]
33
39
  }], ctorParameters: () => [{ type: i1.DomSanitizer }, { type: i2.TpSurveyLogicService }] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGkubGFuZy5vYmplY3QudG8uaHRtbC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHAuc3VydmV5L3NyYy9saWIvcGlwZS9tdWx0aS5sYW5nLm9iamVjdC50by5odG1sL211bHRpLmxhbmcub2JqZWN0LnRvLmh0bWwucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQzs7OztBQVNsRCxNQUFNLE9BQU8seUJBQXlCO0lBRXBDLFlBQTZCLFVBQXdCLEVBQW1CLE1BQTRCO1FBQXZFLGVBQVUsR0FBVixVQUFVLENBQWM7UUFBbUIsV0FBTSxHQUFOLE1BQU0sQ0FBc0I7SUFDcEcsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUFrQyxFQUFFLFFBQWdCLEVBQUUsYUFBNEM7UUFDMUcsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFDLENBQUM7WUFDaEMsTUFBTSxtQkFBbUIsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7WUFDbEgsTUFBTSwwQkFBMEIsR0FBRyxtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDO1lBQy9HLE1BQU0sSUFBSSxHQUFJLDBCQUEwQixFQUFFLGdCQUFnQixJQUFJLDBCQUEwQixFQUFFLFdBQVcsSUFBSSxFQUFFLENBQUM7WUFDNUcsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZELENBQUM7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQzVCLE9BQU8sRUFBRSxDQUFBO1FBQ1gsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDO1FBQzdELE1BQU0sSUFBSSxHQUFJLE9BQU8sRUFBRSxnQkFBZ0IsSUFBSSxPQUFPLEVBQUUsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUN0RSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkQsQ0FBQzs4R0FwQlUseUJBQXlCOzRHQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBSnJDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLHVCQUF1QjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtEb21TYW5pdGl6ZXIsIFNhZmVIdG1sfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHtJZGJMb2dpY0NhcHRpb25PYmplY3QsIElkYk11bHRpbGFuZ09iamVjdH0gZnJvbSAnLi4vLi4vdHAuc3VydmV5LmludGVyZmFjZSc7XHJcbmltcG9ydCB7VHBTdXJ2ZXlMb2dpY1NlcnZpY2V9IGZyb20gJy4uLy4uL2NvcmUvdHAuc3VydmV5LmxvZ2ljL3RwLnN1cnZleS5sb2dpYy5zZXJ2aWNlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnbXVsdGlMYW5nT2JqZWN0VG9IdG1sJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNdWx0aUxhbmdPYmplY3RUb0h0bWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX3Nhbml0aXplcjogRG9tU2FuaXRpemVyLCBwcml2YXRlIHJlYWRvbmx5IF9sb2dpYzogVHBTdXJ2ZXlMb2dpY1NlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIHRyYW5zZm9ybShjYXB0aW9uOiBBcnJheTxJZGJNdWx0aWxhbmdPYmplY3Q+LCBsYW5ndWFnZTogbnVtYmVyLCBsb2dpY0NhcHRpb25zPzogQXJyYXk8SWRiTG9naWNDYXB0aW9uT2JqZWN0Pik6IFNhZmVIdG1sIHtcclxuICAgIGlmIChBcnJheS5pc0FycmF5KGxvZ2ljQ2FwdGlvbnMpKXtcclxuICAgICAgY29uc3QgY29ycmVjdExvZ2ljQ2FwdGlvbiA9IGxvZ2ljQ2FwdGlvbnMuZmluZChsb2dpY0NhcHRpb24gPT4gdGhpcy5fbG9naWMuZXhlY3V0ZUxvZ2ljKGxvZ2ljQ2FwdGlvbi5FeHByZXNzaW9uKSk7XHJcbiAgICAgIGNvbnN0IGNvcnJlY3RMb2dpY0NhcHRpb25MYW5nT2JqID0gY29ycmVjdExvZ2ljQ2FwdGlvbj8uTXVsdGlMYW5nQ2FwdGlvbnMuZmluZChjYXB0ID0+IGNhcHQubGFuZyA9PT0gbGFuZ3VhZ2UpO1xyXG4gICAgICBjb25zdCB0ZXh0ICA9IGNvcnJlY3RMb2dpY0NhcHRpb25MYW5nT2JqPy5fU1lTX0NhcHRpb25IVE1MID8/IGNvcnJlY3RMb2dpY0NhcHRpb25MYW5nT2JqPy5DYXB0aW9uSHRtbCA/PyAnJztcclxuICAgICAgcmV0dXJuIHRoaXMuX3Nhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh0ZXh0KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoY2FwdGlvbikpIHtcclxuICAgICAgcmV0dXJuICcnXHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbGFuZ09iaiA9IGNhcHRpb24uZmluZChjYXB0ID0+IGNhcHQubGFuZyA9PT0gbGFuZ3VhZ2UpO1xyXG4gICAgY29uc3QgdGV4dCAgPSBsYW5nT2JqPy5fU1lTX0NhcHRpb25IVE1MID8/IGxhbmdPYmo/LkNhcHRpb25IdG1sID8/ICcnO1xyXG4gICAgcmV0dXJuIHRoaXMuX3Nhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh0ZXh0KTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGkubGFuZy5vYmplY3QudG8uaHRtbC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHAuc3VydmV5L3NyYy9saWIvcGlwZS9tdWx0aS5sYW5nLm9iamVjdC50by5odG1sL211bHRpLmxhbmcub2JqZWN0LnRvLmh0bWwucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQzs7OztBQVNsRCxNQUFNLE9BQU8seUJBQXlCO0lBRXBDLFlBQTZCLFVBQXdCLEVBQW1CLE1BQTRCO1FBQXZFLGVBQVUsR0FBVixVQUFVLENBQWM7UUFBbUIsV0FBTSxHQUFOLE1BQU0sQ0FBc0I7SUFDcEcsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUFrQyxFQUFFLFFBQWdCLEVBQUUsYUFBNEM7UUFDMUcsbUVBQW1FO1FBQ25FLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBQyxDQUFDO1lBQ2hDLE1BQU0sbUJBQW1CLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1lBQ2xILE1BQU0sMEJBQTBCLEdBQUcsbUJBQW1CLEVBQUUsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQztZQUMvRyxNQUFNLElBQUksR0FBSSwwQkFBMEIsRUFBRSxnQkFBZ0IsSUFBSSwwQkFBMEIsRUFBRSxXQUFXLElBQUksRUFBRSxDQUFDO1lBRTVHLGdEQUFnRDtZQUNoRCxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUMsQ0FBQztnQkFDbEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3ZELENBQUM7UUFDSCxDQUFDO1FBRUQsdUNBQXVDO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDNUIsT0FBTyxFQUFFLENBQUE7UUFDWCxDQUFDO1FBRUQsb0NBQW9DO1FBQ3BDLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDO1FBQzdELE1BQU0sSUFBSSxHQUFJLE9BQU8sRUFBRSxnQkFBZ0IsSUFBSSxPQUFPLEVBQUUsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUN0RSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkQsQ0FBQzs4R0EzQlUseUJBQXlCOzRHQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBSnJDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLHVCQUF1QjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtEb21TYW5pdGl6ZXIsIFNhZmVIdG1sfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHtJZGJMb2dpY0NhcHRpb25PYmplY3QsIElkYk11bHRpbGFuZ09iamVjdH0gZnJvbSAnLi4vLi4vdHAuc3VydmV5LmludGVyZmFjZSc7XHJcbmltcG9ydCB7VHBTdXJ2ZXlMb2dpY1NlcnZpY2V9IGZyb20gJy4uLy4uL2NvcmUvdHAuc3VydmV5LmxvZ2ljL3RwLnN1cnZleS5sb2dpYy5zZXJ2aWNlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnbXVsdGlMYW5nT2JqZWN0VG9IdG1sJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNdWx0aUxhbmdPYmplY3RUb0h0bWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX3Nhbml0aXplcjogRG9tU2FuaXRpemVyLCBwcml2YXRlIHJlYWRvbmx5IF9sb2dpYzogVHBTdXJ2ZXlMb2dpY1NlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIHRyYW5zZm9ybShjYXB0aW9uOiBBcnJheTxJZGJNdWx0aWxhbmdPYmplY3Q+LCBsYW5ndWFnZTogbnVtYmVyLCBsb2dpY0NhcHRpb25zPzogQXJyYXk8SWRiTG9naWNDYXB0aW9uT2JqZWN0Pik6IFNhZmVIdG1sIHtcclxuICAgIC8v0YHQvdCw0YfQsNC70LAg0L/RgNC+0LLQtdGA0LjQvCDQtdGB0YLRjCDQu9C4INGC0LXQutGB0YIg0YMg0LrQvtGC0L7RgNC+0LPQviDQstGL0L/QvtC70L3Rj9C10YLRgdGPIEV4cHJlc3Npb24uXHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShsb2dpY0NhcHRpb25zKSl7XHJcbiAgICAgIGNvbnN0IGNvcnJlY3RMb2dpY0NhcHRpb24gPSBsb2dpY0NhcHRpb25zLmZpbmQobG9naWNDYXB0aW9uID0+IHRoaXMuX2xvZ2ljLmV4ZWN1dGVMb2dpYyhsb2dpY0NhcHRpb24uRXhwcmVzc2lvbikpO1xyXG4gICAgICBjb25zdCBjb3JyZWN0TG9naWNDYXB0aW9uTGFuZ09iaiA9IGNvcnJlY3RMb2dpY0NhcHRpb24/Lk11bHRpTGFuZ0NhcHRpb25zLmZpbmQoY2FwdCA9PiBjYXB0LmxhbmcgPT09IGxhbmd1YWdlKTtcclxuICAgICAgY29uc3QgdGV4dCAgPSBjb3JyZWN0TG9naWNDYXB0aW9uTGFuZ09iaj8uX1NZU19DYXB0aW9uSFRNTCA/PyBjb3JyZWN0TG9naWNDYXB0aW9uTGFuZ09iaj8uQ2FwdGlvbkh0bWwgPz8gJyc7XHJcblxyXG4gICAgICAvL9C10YHQu9C4INC10YHRgtGMINGF0L7RgtGMINC60LDQutC+0Lkt0YLQviDRgtC10LrRgdGCIC0g0L/QvtC60LDQt9GL0LLQsNC10Lwg0LXQs9C+XHJcbiAgICAgIGlmICgodGV4dCA/PyAnJykudHJpbSgpLmxlbmd0aCA+IDApe1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwodGV4dCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvL9C10YHQu9C4INC+0YHQvdC+0LLQvtC5INGC0LXQutGB0YIg0L3QtSDRg9C60LDQt9Cw0L0sINCy0YvRhdC+0LTQuNC8XHJcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoY2FwdGlvbikpIHtcclxuICAgICAgcmV0dXJuICcnXHJcbiAgICB9XHJcblxyXG4gICAgLy/QuNGJ0LXQvCDQvtGB0L3QvtCy0L3QvtC5INGC0LXQutGBINGBINC90YPQttC90YvQvCDRj9C30YvQutC+0LxcclxuICAgIGNvbnN0IGxhbmdPYmogPSBjYXB0aW9uLmZpbmQoY2FwdCA9PiBjYXB0LmxhbmcgPT09IGxhbmd1YWdlKTtcclxuICAgIGNvbnN0IHRleHQgID0gbGFuZ09iaj8uX1NZU19DYXB0aW9uSFRNTCA/PyBsYW5nT2JqPy5DYXB0aW9uSHRtbCA/PyAnJztcclxuICAgIHJldHVybiB0aGlzLl9zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwodGV4dCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHAuc3VydmV5LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RwLnN1cnZleS9zcmMvbGliL3RwLnN1cnZleS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWRkaXRpb25hbEFuc3dlciwgQWRkaXRpb25hbEFuc3dlckNhcHRpb25Qb3NpdGlvbiwgQW5zd2VyVCwgTG9naWNPYmplY3QsIFN1cnZleVR5cGV9IGZyb20gJy4vdHAuc3VydmV5LnR5cGUnO1xyXG5pbXBvcnQge0FkZGl0aW9uYWxBbnN3ZXJUeXBlLCBSZXN1bHRhdGl2ZVN0YXR1cywgVmFsaWRTdGF0dXN9IGZyb20gJy4vdHAuc3VydmV5LmVudW0nO1xyXG5pbXBvcnQge0Fuc3dlcn0gZnJvbSAnLi9jb3JlL3RwLnN1cnZleS5hbnN3ZXIvdHAuc3VydmV5LmFuc3dlcic7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFuc3dlckNoYW5nZXtcclxuICBndWlkOiBudW1iZXI7XHJcbiAgaXNDb21wbGV0ZTogYm9vbGVhbjtcclxuICBhbnN3ZXI6IEFuc3dlclQ7XHJcbiAgYWRkaXRpb25hbEFuc3dlcnM6IFJlY29yZDxudW1iZXIsIEFkZGl0aW9uYWxBbnN3ZXI+O1xyXG4gIGxvZ2ljVmFyczogTG9naWNPYmplY3Q7XHJcbiAgdmlld2VkQWx0ZXJuYXRpdmVWYWx1ZXM6IEFycmF5PG51bWJlcj47XHJcbiAgdmlld2VkU2VjdGlvbkd1aWRzOiBBcnJheTxudW1iZXI+O1xyXG4gIGFsdGVybmF0aXZlU2VxdWVuY2VDbGlja3M6IEFycmF5PFtudW1iZXIsIG51bWJlcl0+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElkYkJhc2VQYXJhbXNMYW5ndWFnZSB7XHJcbiAgVmFsdWU6IG51bWJlcjtcclxuICBDYXB0aW9uOiBzdHJpbmc7XHJcbiAgaXNBY3RpdmU6IGJvb2xlYW47XHJcbiAgaWNvbl9zdmdfbmFtZTogc3RyaW5nO1xyXG4gIGJhY2tfYnV0dG9uX2NhcHRpb246IHN0cmluZztcclxuICBuZXh0X2J1dHRvbl9jYXB0aW9uOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiQmFzZVBhcmFtc1JlcG9zaXRvcnlPYmplY3Qge1xyXG4gIE9yaWdpbmFsTmFtZTogc3RyaW5nO1xyXG4gIFF1ZXN0aW9uYXJ5TmFtZTogc3RyaW5nO1xyXG59XHJcblxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnlCYXNlUGFyYW1zIHtcclxuICBSZXN1bHRhdGl2ZVNjcmlwdDogc3RyaW5nO1xyXG4gIFJlc3VsdGF0aXZlU2NyaXB0VXNlcjogc3RyaW5nO1xyXG4gIFF1b3RhTGltaXREZXN0aW5hdGlvblF1ZXN0aW9uR3VpZDogbnVtYmVyO1xyXG4gIExhbmd1YWdlTGlzdDogQXJyYXk8SWRiQmFzZVBhcmFtc0xhbmd1YWdlPjtcclxuICBSZXBvc2l0b3J5TGlzdDogQXJyYXk8SWRiQmFzZVBhcmFtc1JlcG9zaXRvcnlPYmplY3Q+O1xyXG4gIEJhc2VIZWlnaHQ6IG51bWJlcjtcclxuICBCYXNlV2lkdGg6IG51bWJlcjtcclxuICBBbHRlcm5hdGl2ZU1heEFuc3dlcnNDb3VudDogbnVtYmVyO1xyXG4gIEFsdGVybmF0aXZlTWluQW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgTWluSW50ZXJ2aWV3VGltZTogbnVtYmVyO1xyXG4gIE1pblRpbWVCZXR3ZWVuSW50ZXJ2aWV3OiBudW1iZXI7XHJcbiAgQWx0ZXJuYXRpdmVDb2x1bW5Db3VudDogbnVtYmVyO1xyXG4gIEZvcmNlRGVza3RvcFZpZXc6IGJvb2xlYW47XHJcbiAgU3VydmV5VGhlbWU6IHN0cmluZztcclxuICBCbG9ja1Njcm9sbFRvTmF2aWdhdGlvbjogYm9vbGVhbjtcclxuICBMb2dvOiBBcnJheTxzdHJpbmc+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElkYlF1ZXN0aW9uYXJ5SW5mbyB7XHJcbiAgdXBkYXRldGltZXN0YW1wOiBEYXRlO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBxdWVzdGlvbmFyeV9ndWlkOiBudW1iZXI7XHJcbiAgY3VycmVudF93YXZlOiBudW1iZXI7XHJcbiAgc3VydmV5X29wdGlvbnM6IElkYlN1cnZleU9wdGlvbnM7XHJcbiAgbGFzdF91cGRhdGVfdGltZXN0YW1wPzogRGF0ZTtcclxuICByZXBvc2l0b3J5X3BhdGg/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiU3VydmV5T3B0aW9ucyB7XHJcbiAgYXR0ZW1wdF9saW1pdDogbnVtYmVyO1xyXG4gIHJlbG9hZF9hZnRlcl9lbmQ6IGJvb2xlYW47XHJcbiAgc2F2ZV9ub3RfcmVzdWx0OiBib29sZWFuO1xyXG4gIHN0b3BfYWZ0ZXJfcXVvdGFzX2Z1bGw6IGJvb2xlYW47XHJcbiAgYXV0aG9yaXphdGlvbl9mYWNlYm9vazogYm9vbGVhbjtcclxuICBhdXRob3JpemF0aW9uX2luc3RhZ3JhbTogYm9vbGVhbjtcclxuICBhdXRob3JpemF0aW9uX3Bhc3N3b3JkOiBib29sZWFuO1xyXG4gIGF2YWlsYWJsZV9vbl90YWJsZXQ6IGJvb2xlYW47XHJcbiAgYXZhaWxhYmxlX29uX3dlYjogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJZGJNdWx0aWxhbmdPYmplY3Qge1xyXG4gIENhcHRpb25IdG1sOiBzdHJpbmc7XHJcbiAgbGFuZzogbnVtYmVyO1xyXG4gIF9TWVNfQ2FwdGlvbkhUTUw6IHN0cmluZztcclxuICBfU1lTX0NhcHRpb25SVEY6IHN0cmluZztcclxuICBfU1lTX2h0bWxQbGFuVGV4dD86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJZGJMb2dpY0NhcHRpb25PYmplY3Qge1xyXG4gIE11bHRpTGFuZ0NhcHRpb25zOiBBcnJheTxJZGJNdWx0aWxhbmdPYmplY3Q+O1xyXG4gIEV4cHJlc3Npb246IHN0cmluZztcclxuICBFeHByZXNzaW9uVXNlcjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElkYlRwQmFja0dyb3VuZCB7XHJcbiAgQ1NTc3R5bGU6IHN0cmluZztcclxuICBDb2xvcjogc3RyaW5nO1xyXG4gIEltYWdlOiBzdHJpbmc7XHJcbiAgUG9zSDogc3RyaW5nO1xyXG4gIFBvc1Y6IHN0cmluZztcclxuICBTY2FsZTogc3RyaW5nO1xyXG4gIFBlcmNlbnRTaXplOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiQWx0ZXJuYXRpdmUge1xyXG4gIEVuYWJsZUV4cHJlc3Npb246IHN0cmluZztcclxuICBFbmFibGVFeHByZXNzaW9uVXNlcjogc3RyaW5nO1xyXG4gIE11bHRpTGFuZ0NhcHRpb25zOiBBcnJheTxJZGJNdWx0aWxhbmdPYmplY3Q+O1xyXG4gIFJvdGF0aW9uOiBib29sZWFuO1xyXG4gIFN5c05hbWU6IHN0cmluZztcclxuICBhbGlhczogc3RyaW5nO1xyXG4gIFZhbHVlOiBudW1iZXI7XHJcbiAgR3JvdXBObzogbnVtYmVyO1xyXG4gIEJhY2tHcm91bmQ6IElkYlRwQmFja0dyb3VuZDtcclxuICBQdXNoQmFja2dyb3VuZDogSWRiVHBCYWNrR3JvdW5kIHwgdW5kZWZpbmVkO1xyXG4gIElzTXV0ZTogYm9vbGVhbjtcclxuICBoZWlnaHQ6IG51bWJlcjtcclxuICB3aWR0aDogbnVtYmVyO1xyXG4gIHg6IG51bWJlcjtcclxuICB5OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiTVFTZWN0aW9uSXRlbSB7XHJcbiAgQ2FwdGlvblBvc2l0aW9uOiBzdHJpbmc7XHJcbiAgQWxpYXM6IHN0cmluZztcclxuICBFbmFibGVFeHByZXNzaW9uOiBzdHJpbmc7XHJcbiAgSXNSZXF1aXJlZDogYm9vbGVhbjtcclxuICBJdGVtVHlwZTogbnVtYmVyO1xyXG4gIEl0ZW1WYWx1ZTogbnVtYmVyO1xyXG4gIE11bHRpTGFuZ0NhcHRpb25zOiBBcnJheTxJZGJNdWx0aWxhbmdPYmplY3Q+O1xyXG4gIEFkZGl0aW9uYWxBbnN3ZXJsaXN0OiBBcnJheTxhbnk+O1xyXG4gIE51bWJlck1heFZhbHVlOiBudW1iZXI7XHJcbiAgTnVtYmVyTWluVmFsdWU6IG51bWJlcjtcclxuICBOdW1iZXJPZkRlY2ltYWxQbGFjZXM6IG51bWJlcjtcclxuICBTeXNOYW1lOiBzdHJpbmc7XHJcbiAgV2VpZ2h0OiBudW1iZXI7XHJcbiAgU2VsZWN0Q29tcGFjdFZpZXc6IGJvb2xlYW47XHJcbiAgU2VsZWN0QWx0ZXJuYXRpdmVMaXN0OiBBcnJheTxhbnk+O1xyXG4gIFNlbGVjdENvbENvdW50OiBudW1iZXI7XHJcbiAgU2VsZWN0TWF4QW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgU2VsZWN0TWluQW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgVGV4dFJvd3NDb3VudDogbnVtYmVyO1xyXG4gIFRleHRSZWd1bGFyRXhwcmVzc2lvbjogc3RyaW5nO1xyXG4gIFBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgU2VsZWN0QW5zd2VyVmFsdWVzPzogQXJyYXk8YW55PjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJZGJTZWN0aW9uIHtcclxuICBBbGlhczogc3RyaW5nO1xyXG4gIFN5c05hbWU6IHN0cmluZztcclxuICBSb3RhdGlvbjogYm9vbGVhbjtcclxuICBCYWNrR3JvdW5kOiBJZGJUcEJhY2tHcm91bmQ7XHJcbiAgU2VjdGlvbk51bTogbnVtYmVyO1xyXG4gIFNlY3Rpb25HdWlkOiBudW1iZXI7XHJcbiAgUmVxdWlyZUFuc3dlcjogYm9vbGVhbjtcclxuICBNUVNlY3Rpb25JdGVtczogQXJyYXk8SWRiTVFTZWN0aW9uSXRlbT47XHJcbiAgQ2FwdGlvblBvc2l0aW9uOiBzdHJpbmc7XHJcbiAgUmlnaHRCYWNrZ3JvdW5kOiBJZGJUcEJhY2tHcm91bmQ7XHJcbiAgRW5hYmxlRXhwcmVzc2lvbjogc3RyaW5nO1xyXG4gIEVuYWJsZUV4cHJlc3Npb25Vc2VyOiBzdHJpbmc7XHJcbiAgTXVsdGlMYW5nQ2FwdGlvbnM6IEFycmF5PElkYk11bHRpbGFuZ09iamVjdD47XHJcbiAgUmVxdWlyZUFsbEFuc3dlcnM6IGJvb2xlYW47XHJcbiAgTXVsdGlMYW5nUmlnaHRDYXB0aW9uczogQXJyYXk8SWRiTXVsdGlsYW5nT2JqZWN0PjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJZGJMb2dpYyB7XHJcbiAgRGVzdGluYXRpb25RdWVzdGlvbkd1aWQ6IG51bWJlcjtcclxuICBMb2dpY1RleHQ6IHN0cmluZztcclxuICBMb2dpY1RleHRVc2VyOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUmVnaW9uIHtcclxuICBWYWx1ZTogbnVtYmVyO1xyXG4gIFRleHQ6IHN0cmluZztcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiQWRkaXRpb25hbEFuc3dlciB7XHJcbiAgcmVhZG9ubHkgVmFsdWU6IG51bWJlcjtcclxuICByZWFkb25seSBTeXNOYW1lOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgQW5zd2VyVHlwZTogQWRkaXRpb25hbEFuc3dlclR5cGU7XHJcbiAgTXVsdGlMYW5nQ2FwdGlvbnM6IEFycmF5PElkYk11bHRpbGFuZ09iamVjdD47XHJcbiAgSXNSZXF1aXJlZDogYm9vbGVhbjtcclxuICBDYXB0aW9uUG9zaXRpb246IEFkZGl0aW9uYWxBbnN3ZXJDYXB0aW9uUG9zaXRpb247XHJcbiAgRW5hYmxlRXhwcmVzc2lvbjogc3RyaW5nO1xyXG4gIEVuYWJsZUV4cHJlc3Npb25Vc2VyOiBzdHJpbmc7XHJcbiAgVmlzaWJsZUV4cHJlc3Npb246IHN0cmluZztcclxuICBWaXNpYmxlRXhwcmVzc2lvblVzZXI6IHN0cmluZztcclxuICBUZXh0TXVsdGlsaW5lOiBib29sZWFuOyAvLyDQtNC70Y8g0YLQtdC60YHRgtC+0LLQvtCz0L4g0L/QvtC70Y8g0LzQvdC+0LPQvtGB0YLRgNC+0YfQvdGL0Lkg0LrQvtC90YLRgNC+0LtcclxuICBOdW1iZXJNaW5WYWx1ZTogbnVtYmVyIHwgbnVsbDsgIC8vINC00LvRjyDRh9C40YHQu9C+0LLQvtCz0L4g0L/QvtC70Y8g0LzQuNC90LjQvNCw0LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1XHJcbiAgTnVtYmVyTWF4VmFsdWU6IG51bWJlciB8IG51bGw7ICAvLyDQtNC70Y8g0YfQuNGB0LvQvtCy0L7Qs9C+INC/0L7Qu9GPINC80LDQutGB0LjQvNCw0LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb24ge1xyXG4gIFF1ZXN0aW9uTnVtOiBudW1iZXI7XHJcbiAgUXVlc3Rpb25HdWlkOiBudW1iZXI7XHJcbiAgTXVsdGlMYW5nQ2FwdGlvbnM6IEFycmF5PElkYk11bHRpbGFuZ09iamVjdD47XHJcbiAgTXVsdGlMYW5nQ2FwdGlvbnNIZWxwZXI6IEFycmF5PElkYk11bHRpbGFuZ09iamVjdD47XHJcbiAgTG9naWNDYXB0aW9uc0xpc3Q6IEFycmF5PElkYkxvZ2ljQ2FwdGlvbk9iamVjdD47XHJcbiAgUXVlc3Rpb25UeXBlOiBzdHJpbmc7XHJcbiAgQWx0ZXJuYXRpdmVsaXN0OiBBcnJheTxJZGJBbHRlcm5hdGl2ZT47XHJcbiAgU2VjdGlvbmxpc3Q6IEFycmF5PElkYlNlY3Rpb24+O1xyXG4gIGxvZ2ljbGlzdDogQXJyYXk8SWRiTG9naWM+O1xyXG4gIFJlZ2lvbkxpc3Q6IEFycmF5PElkYlJlZ2lvbj47XHJcbiAgQWRkaXRpb25hbEFuc3dlcmxpc3Q6IEFycmF5PElkYkFkZGl0aW9uYWxBbnN3ZXI+O1xyXG4gIFF1ZXN0aW9uQmFja2dyb3VuZDogSWRiVHBCYWNrR3JvdW5kO1xyXG4gIFZlcnNpb246IG51bWJlcjtcclxuICBTeXNOYW1lOiBzdHJpbmc7XHJcbiAgU3lzTmFtZUFsaWFzOiBzdHJpbmc7XHJcbiAgQmVmb3JlRXhwcmVzc2lvbjogc3RyaW5nO1xyXG4gIEJlZm9yZUV4cHJlc3Npb25Vc2VyOiBzdHJpbmc7XHJcbiAgUG9zdFNjcmlwdDogc3RyaW5nO1xyXG4gIFBvc3RTY3JpcHRVc2VyOiBzdHJpbmc7XHJcbiAgU2hvd0J0bkJhY2s6IGJvb2xlYW47XHJcbiAgU2hvd0J0bk5leHQ6IGJvb2xlYW47XHJcbiAgQnRuTmV4dEV4cHJlc3Npb246IHN0cmluZztcclxuICBCdG5OZXh0RXhwcmVzc2lvblVzZXI6IHN0cmluZztcclxuICBDYXB0aW9uQWxpYXM6IHN0cmluZztcclxuICBBdWRpb0NvbnRyb2xTZWM6IG51bWJlcjtcclxuICBNaW5BbnN3ZXJUaW1lOiBudW1iZXI7XHJcbiAgVGltZURpc3BsYXk6IG51bWJlcjtcclxuXHJcbiAgLy8gb2wgcXVlc3Rpb25cclxuICBPTE1heENvdW50OiBudW1iZXI7XHJcbiAgT0xNaW5Db3VudDogbnVtYmVyO1xyXG4gIE9MUmVnZXhwOiBzdHJpbmc7XHJcbiAgT0xUeXBlVGVsOiBib29sZWFuO1xyXG5cclxuICAvLyBvZCBxdWVzdGlvblxyXG4gIE9ETWF4VmFsdWU6IG51bWJlcjtcclxuICBPRE1pblZhbHVlOiBudW1iZXI7XHJcblxyXG4gIC8vIHNzIG1zXHJcbiAgQWx0ZXJuYXRpdmVBdXRvU2l6ZTogYm9vbGVhbjtcclxuICBBbHRlcm5hdGl2ZUF1dG9BcnJhbmdlOiBib29sZWFuO1xyXG4gIEFsdGVybmF0aXZlTWluQW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgQWx0ZXJuYXRpdmVNYXhBbnN3ZXJzQ291bnQ6IG51bWJlcjtcclxuICBBbHRlcm5hdGl2ZUNvbHVtbkNvdW50OiBudW1iZXI7XHJcbiAgQWx0ZXJuYXRpdmVIb3Jpem9udGFsRGlzdGFuY2U6IG51bWJlcjtcclxuICBBbHRlcm5hdGl2ZVZlcnRpY2FsRGlzdGFuY2U6IG51bWJlcjtcclxuICBBbHRlcm5hdGl2ZU1hcmdpblRvcDogbnVtYmVyO1xyXG4gIEFsdGVybmF0aXZlTWFyZ2luTGVmdDogbnVtYmVyO1xyXG4gIEFsdGVybmF0aXZlSGVpZ2h0OiBudW1iZXI7XHJcbiAgQWx0ZXJuYXRpdmVXaWR0aDogbnVtYmVyO1xyXG4gIEFsdGVybmF0aXZlVGFibGV0Rm9udFNpemU6IG51bWJlcjtcclxuICBUYWJsZXRWaWV3QWx0ZXJuYXRpdmVDb2x1bW5Db3VudDogbnVtYmVyO1xyXG4gIE1vYmlsZVZpZXdBbHRlcm5hdGl2ZUNvbHVtbkNvdW50OiBudW1iZXI7XHJcblxyXG4gIC8vIHNsXHJcbiAgTXVsdGlTZWxlY3Q6IGJvb2xlYW47XHJcbiAgUmVxdWlyZUFsbEFuc3dlcnM6IGJvb2xlYW47XHJcbiAgU0xTZWN0aW9uTWluQW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgU0xTZWN0aW9uTWF4QW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnlRdW90YSB7XHJcbiAgcXVvdGFfZ3VpZDogbnVtYmVyO1xyXG4gIG92ZXJfbGltaXQ6IG51bWJlcjtcclxuICBjb3VudF9yZXN1bHRfaW50ZXJ2aWV3X2Zvcl90aGlzX3FvdXRhOiBudW1iZXI7XHJcbiAgbGltaXQ6IG51bWJlcjtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgZXhwcmVzc2lvbjogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnlRdW90YTJkT2JqZWN0IHtcclxuICBxczogQXJyYXk8e2d1aWQ6IG51bWJlcjsgdmFsdWU6IG51bWJlcn0+O1xyXG4gIHF2ZzogbnVtYmVyO1xyXG4gIGV4cDogc3RyaW5nIHwgbnVsbDtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnlRdW90YTJkIHtcclxuICB2bHM6IEFycmF5PElkYlF1ZXN0aW9uYXJ5UXVvdGEyZE9iamVjdD47XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGJhc2VfZ3VpZDogbnVtYmVyO1xyXG59XHJcblxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnkge1xyXG4gIEJhc2VQYXJhbXM6IElkYlF1ZXN0aW9uYXJ5QmFzZVBhcmFtcztcclxuICBJbmZvOiBJZGJRdWVzdGlvbmFyeUluZm87XHJcbiAgUXVlc3Rpb25zOiBBcnJheTxJZGJRdWVzdGlvbj47XHJcbiAgUXVvdGFzOiBBcnJheTxJZGJRdWVzdGlvbmFyeVF1b3RhPjtcclxuICBRdW90YXMyZDogQXJyYXk8SWRiUXVlc3Rpb25hcnlRdW90YTJkT2JqZWN0PjtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVF1ZXN0aW9uQW5zd2VyIHtcclxuICBTdGFydGVkQXQ6IG51bWJlcjtcclxuICBGaW5pc2hlZEF0OiBudW1iZXI7XHJcbiAgUXVlc3Rpb25HVUlEOiBudW1iZXI7XHJcbiAgUXVlc3Rpb25WZXJzaW9uOiBudW1iZXI7XHJcbiAgQW5zd2VyVmFsdWU6IGFueTtcclxuICBBbnN3ZXJBZGRpdGlvbmFsOiBSZWNvcmQ8bnVtYmVyLCBBZGRpdGlvbmFsQW5zd2VyPjtcclxuICBWaWV3ZWRBbHRlcm5hdGl2ZVZhbHVlczogQXJyYXk8bnVtYmVyPjtcclxuICBWaWV3ZWRTZWN0aW9uR3VpZHM6IEFycmF5PG51bWJlcj47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUludGVydmlld0F1dG9TYXZlRGF0YXtcclxuICBpbnRlcnZpZXdfYXV0b19zYXZlX2lkOiBzdHJpbmc7XHJcbiAgYW5zd2VyX2xpc3Q/OiBBcnJheTxJUXVlc3Rpb25BbnN3ZXI+O1xyXG4gIGxvZ2ljX3ZhcnM/OiBBcnJheTxJSW50ZXJ2aWV3TG9naWNWYXI+O1xyXG4gIHF1ZXN0aW9uX2d1aWQ/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUN1cnJlbnRRdWVzdGlvbkFuc3dlciB7XHJcbiAgcXVlc3Rpb24/OiBBbnN3ZXI7XHJcbiAgc2VjdGlvbnM/OiBBcnJheTxBbnN3ZXIgfCB1bmRlZmluZWQ+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElJbnRlcnZpZXdMb2dpY1ZhciB7XHJcbiAgbm06IHN0cmluZzsgICAvL25hbWVcclxuICB2bDogYW55OyAgICAgIC8vdmxcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJSW50ZXJ2aWV3QWRkaXRpb25hbEluZm97XHJcbiAgUXVlc3Rpb25hcnlVcGRhdGVUaW1lc3RhbXA6IG51bWJlciB8IG51bGw7XHJcbiAgc3VydmV5VHlwZT86IFN1cnZleVR5cGU7XHJcbiAgcGhvbmVOdW1iZXI/OiBzdHJpbmc7XHJcbiAgY2F0aUludGVydmlld2VySWQ/OiBzdHJpbmc7XHJcbiAgcmVmZXJyZXI/OiBzdHJpbmc7XHJcbiAgdHJhY2tJZD86IHN0cmluZztcclxuICBpbnRlcnZpZXdBdXRvU2F2ZUlkPzogc3RyaW5nO1xyXG4gIGxhc3RfYXV0b3NhdmVfcXVlc3Rpb25fZ3VpZD86IG51bWJlcjtcclxuICBjbGllbnRJcD86IHN0cmluZztcclxuICBjbGllbnRIZWFkZXJzPzoge1xyXG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xyXG4gIH07XHJcbiAgW2tleTogc3RyaW5nXTogYW55O1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJSW50ZXJ2aWV3RGF0YSB7XHJcbiAgTGFuZ3VhZ2U6IG51bWJlcjtcclxuICBTcG90SWQ6IG51bWJlcjtcclxuICBEZXZpY2VJZDogbnVtYmVyO1xyXG4gIERldmljZVR5cGU6IG51bWJlcjtcclxuICBSZXN1bHRhdGl2ZTogUmVzdWx0YXRpdmVTdGF0dXM7XHJcbiAgVmFsaWQ6IFZhbGlkU3RhdHVzO1xyXG4gIFdhdmU6IG51bWJlcjtcclxuICBRdWVzdGlvbmFyeU5hbWU6IHN0cmluZztcclxuICBRdWVzdGlvbmFyeUd1aWQ6IG51bWJlcjtcclxuICBTdGFydGVkQXQ6IG51bWJlcjtcclxuICBGaW5pc2hlZEF0OiBudW1iZXI7XHJcbiAgVGluZVpvbmVCaWFzOiBudW1iZXI7XHJcbiAgUmVzdWx0YXREaXJ0eTogYm9vbGVhbjtcclxuICBBbnN3ZXJzOiB7QW5zdmVyc0xpc3Q6IEFycmF5PGFueT59O1xyXG4gIGFkZGl0aW9uYWxfaW5mbzogSUludGVydmlld0FkZGl0aW9uYWxJbmZvO1xyXG4gIFJlc3VsdFF1b3RhR3VpZHM/OiBBcnJheTx7IGJhc2VfZ3VpZDogbnVtYmVyOyByZXN1bHQ6IGJvb2xlYW4gfT47XHJcbiAgUmVzdWx0UXVvdGEyZEd1aWRzPzogQXJyYXk8YW55PjtcclxuICBMb2dpY1ZhcnM6IEFycmF5PElJbnRlcnZpZXdMb2dpY1Zhcj47XHJcbiAgVW5pcXVlRGV2aWNlVGV4dD86IHN0cmluZztcclxuICBTcG90R3VpZD86IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJSW50ZXJ2aWV3UHJvZ3Jlc3NFdmVudERhdGF7XHJcbiAgbG9naWNWYXJzOiBMb2dpY09iamVjdDtcclxuICBhbnN3ZXJMaXN0OiBBcnJheTxBbnN3ZXI+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElJbnRlcnZpZXdQcm9ncmVzc0V2ZW50IHtcclxuICBjdXJyZW50TnVtOiBudW1iZXI7XHJcbiAgcXVlc3Rpb25zQ291bnQ6IG51bWJlcjtcclxuICBxdWVzdGlvbkd1aWQ6IG51bWJlcjtcclxuICBpbnRlcnZpZXdEYXRhOiBJSW50ZXJ2aWV3UHJvZ3Jlc3NFdmVudERhdGFcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIElJbnRlcnZpZXdTdGFydGVkRXZlbnQge1xyXG4gIHF1ZXN0aW9uYXJ5OiBJZGJRdWVzdGlvbmFyeTtcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHAuc3VydmV5LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RwLnN1cnZleS9zcmMvbGliL3RwLnN1cnZleS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWRkaXRpb25hbEFuc3dlciwgQWRkaXRpb25hbEFuc3dlckNhcHRpb25Qb3NpdGlvbiwgQW5zd2VyVCwgTG9naWNPYmplY3QsIFN1cnZleVR5cGV9IGZyb20gJy4vdHAuc3VydmV5LnR5cGUnO1xyXG5pbXBvcnQge0FkZGl0aW9uYWxBbnN3ZXJUeXBlLCBSZXN1bHRhdGl2ZVN0YXR1cywgVmFsaWRTdGF0dXN9IGZyb20gJy4vdHAuc3VydmV5LmVudW0nO1xyXG5pbXBvcnQge0Fuc3dlcn0gZnJvbSAnLi9jb3JlL3RwLnN1cnZleS5hbnN3ZXIvdHAuc3VydmV5LmFuc3dlcic7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFuc3dlckNoYW5nZXtcclxuICBndWlkOiBudW1iZXI7XHJcbiAgaXNDb21wbGV0ZTogYm9vbGVhbjtcclxuICBhbnN3ZXI6IEFuc3dlclQ7XHJcbiAgYWRkaXRpb25hbEFuc3dlcnM6IFJlY29yZDxudW1iZXIsIEFkZGl0aW9uYWxBbnN3ZXI+O1xyXG4gIGxvZ2ljVmFyczogTG9naWNPYmplY3Q7XHJcbiAgdmlld2VkQWx0ZXJuYXRpdmVWYWx1ZXM6IEFycmF5PG51bWJlcj47XHJcbiAgdmlld2VkU2VjdGlvbkd1aWRzOiBBcnJheTxudW1iZXI+O1xyXG4gIGFsdGVybmF0aXZlU2VxdWVuY2VDbGlja3M6IEFycmF5PFtudW1iZXIsIG51bWJlcl0+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElkYkJhc2VQYXJhbXNMYW5ndWFnZSB7XHJcbiAgVmFsdWU6IG51bWJlcjtcclxuICBDYXB0aW9uOiBzdHJpbmc7XHJcbiAgaXNBY3RpdmU6IGJvb2xlYW47XHJcbiAgaWNvbl9zdmdfbmFtZTogc3RyaW5nO1xyXG4gIGJhY2tfYnV0dG9uX2NhcHRpb246IHN0cmluZztcclxuICBuZXh0X2J1dHRvbl9jYXB0aW9uOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiQmFzZVBhcmFtc1JlcG9zaXRvcnlPYmplY3Qge1xyXG4gIE9yaWdpbmFsTmFtZTogc3RyaW5nO1xyXG4gIFF1ZXN0aW9uYXJ5TmFtZTogc3RyaW5nO1xyXG59XHJcblxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnlCYXNlUGFyYW1zIHtcclxuICBSZXN1bHRhdGl2ZVNjcmlwdDogc3RyaW5nO1xyXG4gIFJlc3VsdGF0aXZlU2NyaXB0VXNlcjogc3RyaW5nO1xyXG4gIFF1b3RhTGltaXREZXN0aW5hdGlvblF1ZXN0aW9uR3VpZDogbnVtYmVyO1xyXG4gIExhbmd1YWdlTGlzdDogQXJyYXk8SWRiQmFzZVBhcmFtc0xhbmd1YWdlPjtcclxuICBSZXBvc2l0b3J5TGlzdDogQXJyYXk8SWRiQmFzZVBhcmFtc1JlcG9zaXRvcnlPYmplY3Q+O1xyXG4gIEJhc2VIZWlnaHQ6IG51bWJlcjtcclxuICBCYXNlV2lkdGg6IG51bWJlcjtcclxuICBBbHRlcm5hdGl2ZU1heEFuc3dlcnNDb3VudDogbnVtYmVyO1xyXG4gIEFsdGVybmF0aXZlTWluQW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgTWluSW50ZXJ2aWV3VGltZTogbnVtYmVyO1xyXG4gIE1pblRpbWVCZXR3ZWVuSW50ZXJ2aWV3OiBudW1iZXI7XHJcbiAgQWx0ZXJuYXRpdmVDb2x1bW5Db3VudDogbnVtYmVyO1xyXG4gIEZvcmNlRGVza3RvcFZpZXc6IGJvb2xlYW47XHJcbiAgU3VydmV5VGhlbWU6IHN0cmluZztcclxuICBCbG9ja1Njcm9sbFRvTmF2aWdhdGlvbjogYm9vbGVhbjtcclxuICBMb2dvOiBBcnJheTxzdHJpbmc+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElkYlF1ZXN0aW9uYXJ5SW5mbyB7XHJcbiAgdXBkYXRldGltZXN0YW1wOiBEYXRlO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBxdWVzdGlvbmFyeV9ndWlkOiBudW1iZXI7XHJcbiAgY3VycmVudF93YXZlOiBudW1iZXI7XHJcbiAgc3VydmV5X29wdGlvbnM6IElkYlN1cnZleU9wdGlvbnM7XHJcbiAgbGFzdF91cGRhdGVfdGltZXN0YW1wPzogRGF0ZTtcclxuICByZXBvc2l0b3J5X3BhdGg/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiU3VydmV5T3B0aW9ucyB7XHJcbiAgYXR0ZW1wdF9saW1pdDogbnVtYmVyO1xyXG4gIHJlbG9hZF9hZnRlcl9lbmQ6IGJvb2xlYW47XHJcbiAgc2F2ZV9ub3RfcmVzdWx0OiBib29sZWFuO1xyXG4gIHN0b3BfYWZ0ZXJfcXVvdGFzX2Z1bGw6IGJvb2xlYW47XHJcbiAgYXV0aG9yaXphdGlvbl9mYWNlYm9vazogYm9vbGVhbjtcclxuICBhdXRob3JpemF0aW9uX2luc3RhZ3JhbTogYm9vbGVhbjtcclxuICBhdXRob3JpemF0aW9uX3Bhc3N3b3JkOiBib29sZWFuO1xyXG4gIGF2YWlsYWJsZV9vbl90YWJsZXQ6IGJvb2xlYW47XHJcbiAgYXZhaWxhYmxlX29uX3dlYjogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJZGJNdWx0aWxhbmdPYmplY3Qge1xyXG4gIENhcHRpb25IdG1sOiBzdHJpbmc7XHJcbiAgbGFuZzogbnVtYmVyO1xyXG4gIF9TWVNfQ2FwdGlvbkhUTUw6IHN0cmluZztcclxuICBfU1lTX0NhcHRpb25SVEY6IHN0cmluZztcclxuICBfU1lTX2h0bWxQbGFuVGV4dD86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJZGJMb2dpY0NhcHRpb25PYmplY3Qge1xyXG4gIE11bHRpTGFuZ0NhcHRpb25zOiBBcnJheTxJZGJNdWx0aWxhbmdPYmplY3Q+O1xyXG4gIEV4cHJlc3Npb246IHN0cmluZztcclxuICBFeHByZXNzaW9uVXNlcjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElkYlRwQmFja0dyb3VuZCB7XHJcbiAgQ1NTc3R5bGU6IHN0cmluZztcclxuICBDb2xvcjogc3RyaW5nO1xyXG4gIEltYWdlOiBzdHJpbmc7XHJcbiAgUG9zSDogc3RyaW5nO1xyXG4gIFBvc1Y6IHN0cmluZztcclxuICBTY2FsZTogc3RyaW5nO1xyXG4gIFBlcmNlbnRTaXplOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiQWx0ZXJuYXRpdmUge1xyXG4gIEVuYWJsZUV4cHJlc3Npb246IHN0cmluZztcclxuICBFbmFibGVFeHByZXNzaW9uVXNlcjogc3RyaW5nO1xyXG4gIE11bHRpTGFuZ0NhcHRpb25zOiBBcnJheTxJZGJNdWx0aWxhbmdPYmplY3Q+O1xyXG4gIFJvdGF0aW9uOiBib29sZWFuO1xyXG4gIFN5c05hbWU6IHN0cmluZztcclxuICBhbGlhczogc3RyaW5nO1xyXG4gIFZhbHVlOiBudW1iZXI7XHJcbiAgR3JvdXBObzogbnVtYmVyO1xyXG4gIEJhY2tHcm91bmQ6IElkYlRwQmFja0dyb3VuZDtcclxuICBQdXNoQmFja2dyb3VuZDogSWRiVHBCYWNrR3JvdW5kIHwgdW5kZWZpbmVkO1xyXG4gIElzTXV0ZTogYm9vbGVhbjtcclxuICBoZWlnaHQ6IG51bWJlcjtcclxuICB3aWR0aDogbnVtYmVyO1xyXG4gIHg6IG51bWJlcjtcclxuICB5OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiTVFTZWN0aW9uSXRlbSB7XHJcbiAgQ2FwdGlvblBvc2l0aW9uOiBzdHJpbmc7XHJcbiAgQWxpYXM6IHN0cmluZztcclxuICBFbmFibGVFeHByZXNzaW9uOiBzdHJpbmc7XHJcbiAgSXNSZXF1aXJlZDogYm9vbGVhbjtcclxuICBJdGVtVHlwZTogbnVtYmVyO1xyXG4gIEl0ZW1WYWx1ZTogbnVtYmVyO1xyXG4gIE11bHRpTGFuZ0NhcHRpb25zOiBBcnJheTxJZGJNdWx0aWxhbmdPYmplY3Q+O1xyXG4gIEFkZGl0aW9uYWxBbnN3ZXJsaXN0OiBBcnJheTxhbnk+O1xyXG4gIE51bWJlck1heFZhbHVlOiBudW1iZXI7XHJcbiAgTnVtYmVyTWluVmFsdWU6IG51bWJlcjtcclxuICBOdW1iZXJPZkRlY2ltYWxQbGFjZXM6IG51bWJlcjtcclxuICBTeXNOYW1lOiBzdHJpbmc7XHJcbiAgV2VpZ2h0OiBudW1iZXI7XHJcbiAgU2VsZWN0Q29tcGFjdFZpZXc6IGJvb2xlYW47XHJcbiAgU2VsZWN0QWx0ZXJuYXRpdmVMaXN0OiBBcnJheTxhbnk+O1xyXG4gIFNlbGVjdENvbENvdW50OiBudW1iZXI7XHJcbiAgU2VsZWN0TWF4QW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgU2VsZWN0TWluQW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgVGV4dFJvd3NDb3VudDogbnVtYmVyO1xyXG4gIFRleHRSZWd1bGFyRXhwcmVzc2lvbjogc3RyaW5nO1xyXG4gIFBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgU2VsZWN0QW5zd2VyVmFsdWVzPzogQXJyYXk8YW55PjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJZGJTZWN0aW9uIHtcclxuICBBbGlhczogc3RyaW5nO1xyXG4gIFN5c05hbWU6IHN0cmluZztcclxuICBSb3RhdGlvbjogYm9vbGVhbjtcclxuICBCYWNrR3JvdW5kOiBJZGJUcEJhY2tHcm91bmQ7XHJcbiAgU2VjdGlvbk51bTogbnVtYmVyO1xyXG4gIFNlY3Rpb25HdWlkOiBudW1iZXI7XHJcbiAgUmVxdWlyZUFuc3dlcjogYm9vbGVhbjtcclxuICBNUVNlY3Rpb25JdGVtczogQXJyYXk8SWRiTVFTZWN0aW9uSXRlbT47XHJcbiAgQ2FwdGlvblBvc2l0aW9uOiBzdHJpbmc7XHJcbiAgUmlnaHRCYWNrZ3JvdW5kOiBJZGJUcEJhY2tHcm91bmQ7XHJcbiAgRW5hYmxlRXhwcmVzc2lvbjogc3RyaW5nO1xyXG4gIEVuYWJsZUV4cHJlc3Npb25Vc2VyOiBzdHJpbmc7XHJcbiAgTXVsdGlMYW5nQ2FwdGlvbnM6IEFycmF5PElkYk11bHRpbGFuZ09iamVjdD47XHJcbiAgUmVxdWlyZUFsbEFuc3dlcnM6IGJvb2xlYW47XHJcbiAgTXVsdGlMYW5nUmlnaHRDYXB0aW9uczogQXJyYXk8SWRiTXVsdGlsYW5nT2JqZWN0PjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJZGJMb2dpYyB7XHJcbiAgRGVzdGluYXRpb25RdWVzdGlvbkd1aWQ6IG51bWJlcjtcclxuICBMb2dpY1RleHQ6IHN0cmluZztcclxuICBMb2dpY1RleHRVc2VyOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUmVnaW9uIHtcclxuICBWYWx1ZTogbnVtYmVyO1xyXG4gIFRleHQ6IHN0cmluZztcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiQWRkaXRpb25hbEFuc3dlciB7XHJcbiAgcmVhZG9ubHkgVmFsdWU6IG51bWJlcjtcclxuICByZWFkb25seSBTeXNOYW1lOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgQW5zd2VyVHlwZTogQWRkaXRpb25hbEFuc3dlclR5cGU7XHJcbiAgTXVsdGlMYW5nQ2FwdGlvbnM6IEFycmF5PElkYk11bHRpbGFuZ09iamVjdD47XHJcbiAgSXNSZXF1aXJlZDogYm9vbGVhbjtcclxuICBDYXB0aW9uUG9zaXRpb246IEFkZGl0aW9uYWxBbnN3ZXJDYXB0aW9uUG9zaXRpb247XHJcbiAgRW5hYmxlRXhwcmVzc2lvbjogc3RyaW5nO1xyXG4gIEVuYWJsZUV4cHJlc3Npb25Vc2VyOiBzdHJpbmc7XHJcbiAgVmlzaWJsZUV4cHJlc3Npb246IHN0cmluZztcclxuICBWaXNpYmxlRXhwcmVzc2lvblVzZXI6IHN0cmluZztcclxuICBUZXh0TXVsdGlsaW5lOiBib29sZWFuOyAvLyDQtNC70Y8g0YLQtdC60YHRgtC+0LLQvtCz0L4g0L/QvtC70Y8g0LzQvdC+0LPQvtGB0YLRgNC+0YfQvdGL0Lkg0LrQvtC90YLRgNC+0LtcclxuICBOdW1iZXJNaW5WYWx1ZTogbnVtYmVyIHwgbnVsbDsgIC8vINC00LvRjyDRh9C40YHQu9C+0LLQvtCz0L4g0L/QvtC70Y8g0LzQuNC90LjQvNCw0LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1XHJcbiAgTnVtYmVyTWF4VmFsdWU6IG51bWJlciB8IG51bGw7ICAvLyDQtNC70Y8g0YfQuNGB0LvQvtCy0L7Qs9C+INC/0L7Qu9GPINC80LDQutGB0LjQvNCw0LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb24ge1xyXG4gIFF1ZXN0aW9uTnVtOiBudW1iZXI7XHJcbiAgUXVlc3Rpb25HdWlkOiBudW1iZXI7XHJcbiAgTXVsdGlMYW5nQ2FwdGlvbnM6IEFycmF5PElkYk11bHRpbGFuZ09iamVjdD47XHJcbiAgTXVsdGlMYW5nQ2FwdGlvbnNIZWxwZXI6IEFycmF5PElkYk11bHRpbGFuZ09iamVjdD47XHJcbiAgTG9naWNDYXB0aW9uc0xpc3Q6IEFycmF5PElkYkxvZ2ljQ2FwdGlvbk9iamVjdD47XHJcbiAgUXVlc3Rpb25UeXBlOiBzdHJpbmc7XHJcbiAgQWx0ZXJuYXRpdmVsaXN0OiBBcnJheTxJZGJBbHRlcm5hdGl2ZT47XHJcbiAgU2VjdGlvbmxpc3Q6IEFycmF5PElkYlNlY3Rpb24+O1xyXG4gIGxvZ2ljbGlzdDogQXJyYXk8SWRiTG9naWM+O1xyXG4gIFJlZ2lvbkxpc3Q6IEFycmF5PElkYlJlZ2lvbj47XHJcbiAgQWRkaXRpb25hbEFuc3dlcmxpc3Q6IEFycmF5PElkYkFkZGl0aW9uYWxBbnN3ZXI+O1xyXG4gIFF1ZXN0aW9uQmFja2dyb3VuZDogSWRiVHBCYWNrR3JvdW5kO1xyXG4gIFZlcnNpb246IG51bWJlcjtcclxuICBTeXNOYW1lOiBzdHJpbmc7XHJcbiAgU3lzTmFtZUFsaWFzOiBzdHJpbmc7XHJcbiAgQmVmb3JlRXhwcmVzc2lvbjogc3RyaW5nO1xyXG4gIEJlZm9yZUV4cHJlc3Npb25Vc2VyOiBzdHJpbmc7XHJcbiAgUG9zdFNjcmlwdDogc3RyaW5nO1xyXG4gIFBvc3RTY3JpcHRVc2VyOiBzdHJpbmc7XHJcbiAgU2hvd0J0bkJhY2s6IGJvb2xlYW47XHJcbiAgU2hvd0J0bk5leHQ6IGJvb2xlYW47XHJcbiAgQnRuTmV4dEV4cHJlc3Npb246IHN0cmluZztcclxuICBCdG5OZXh0RXhwcmVzc2lvblVzZXI6IHN0cmluZztcclxuICBDYXB0aW9uQWxpYXM6IHN0cmluZztcclxuICBBdWRpb0NvbnRyb2xTZWM6IG51bWJlcjtcclxuICBNaW5BbnN3ZXJUaW1lOiBudW1iZXI7XHJcbiAgVGltZURpc3BsYXk6IG51bWJlcjtcclxuXHJcbiAgLy8gb2wgcXVlc3Rpb25cclxuICBPTE1heENvdW50OiBudW1iZXI7XHJcbiAgT0xNaW5Db3VudDogbnVtYmVyO1xyXG4gIE9MUmVnZXhwOiBzdHJpbmc7XHJcbiAgT0xUeXBlVGVsOiBib29sZWFuO1xyXG5cclxuICAvLyBvZCBxdWVzdGlvblxyXG4gIE9ETWF4VmFsdWU6IG51bWJlcjtcclxuICBPRE1pblZhbHVlOiBudW1iZXI7XHJcblxyXG4gIC8vIHNzIG1zXHJcbiAgQWx0ZXJuYXRpdmVBdXRvU2l6ZTogYm9vbGVhbjtcclxuICBBbHRlcm5hdGl2ZUF1dG9BcnJhbmdlOiBib29sZWFuO1xyXG4gIEFsdGVybmF0aXZlTWluQW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgQWx0ZXJuYXRpdmVNYXhBbnN3ZXJzQ291bnQ6IG51bWJlcjtcclxuICBBbHRlcm5hdGl2ZUNvbHVtbkNvdW50OiBudW1iZXI7XHJcbiAgQWx0ZXJuYXRpdmVIb3Jpem9udGFsRGlzdGFuY2U6IG51bWJlcjtcclxuICBBbHRlcm5hdGl2ZVZlcnRpY2FsRGlzdGFuY2U6IG51bWJlcjtcclxuICBBbHRlcm5hdGl2ZU1hcmdpblRvcDogbnVtYmVyO1xyXG4gIEFsdGVybmF0aXZlTWFyZ2luTGVmdDogbnVtYmVyO1xyXG4gIEFsdGVybmF0aXZlSGVpZ2h0OiBudW1iZXI7XHJcbiAgQWx0ZXJuYXRpdmVXaWR0aDogbnVtYmVyO1xyXG4gIEFsdGVybmF0aXZlVGFibGV0Rm9udFNpemU6IG51bWJlcjtcclxuICBUYWJsZXRWaWV3QWx0ZXJuYXRpdmVDb2x1bW5Db3VudDogbnVtYmVyO1xyXG4gIE1vYmlsZVZpZXdBbHRlcm5hdGl2ZUNvbHVtbkNvdW50OiBudW1iZXI7XHJcblxyXG4gIC8vIHNsXHJcbiAgTXVsdGlTZWxlY3Q6IGJvb2xlYW47XHJcbiAgUmVxdWlyZUFsbEFuc3dlcnM6IGJvb2xlYW47XHJcbiAgU0xTZWN0aW9uTWluQW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgU0xTZWN0aW9uTWF4QW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnlRdW90YSB7XHJcbiAgcXVvdGFfZ3VpZDogbnVtYmVyO1xyXG4gIG92ZXJfbGltaXQ6IG51bWJlcjtcclxuICBjb3VudF9yZXN1bHRfaW50ZXJ2aWV3X2Zvcl90aGlzX3FvdXRhOiBudW1iZXI7XHJcbiAgbGltaXQ6IG51bWJlcjtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgZXhwcmVzc2lvbjogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnlRdW90YTJkT2JqZWN0IHtcclxuICBxczogQXJyYXk8e2d1aWQ6IG51bWJlcjsgdmFsdWU6IG51bWJlcn0+O1xyXG4gIHF2ZzogbnVtYmVyO1xyXG4gIGV4cDogc3RyaW5nIHwgbnVsbDtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnlRdW90YTJkIHtcclxuICB2bHM6IEFycmF5PElkYlF1ZXN0aW9uYXJ5UXVvdGEyZE9iamVjdD47XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGJhc2VfZ3VpZDogbnVtYmVyO1xyXG59XHJcblxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSWRiUXVlc3Rpb25hcnkge1xyXG4gIEJhc2VQYXJhbXM6IElkYlF1ZXN0aW9uYXJ5QmFzZVBhcmFtcztcclxuICBJbmZvOiBJZGJRdWVzdGlvbmFyeUluZm87XHJcbiAgUXVlc3Rpb25zOiBBcnJheTxJZGJRdWVzdGlvbj47XHJcbiAgUXVvdGFzOiBBcnJheTxJZGJRdWVzdGlvbmFyeVF1b3RhPjtcclxuICBRdW90YXMyZDogQXJyYXk8SWRiUXVlc3Rpb25hcnlRdW90YTJkT2JqZWN0PjtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVF1ZXN0aW9uQW5zd2VyIHtcclxuICBTdGFydGVkQXQ6IG51bWJlcjtcclxuICBGaW5pc2hlZEF0OiBudW1iZXI7XHJcbiAgUXVlc3Rpb25HVUlEOiBudW1iZXI7XHJcbiAgUXVlc3Rpb25WZXJzaW9uOiBudW1iZXI7XHJcbiAgQW5zd2VyVmFsdWU6IGFueTtcclxuICBBbnN3ZXJBZGRpdGlvbmFsOiBSZWNvcmQ8bnVtYmVyLCBBZGRpdGlvbmFsQW5zd2VyPjtcclxuICBWaWV3ZWRBbHRlcm5hdGl2ZVZhbHVlczogQXJyYXk8bnVtYmVyPjtcclxuICBWaWV3ZWRTZWN0aW9uR3VpZHM6IEFycmF5PG51bWJlcj47XHJcbiAgQWx0ZXJuYXRpdmVTZXF1ZW5jZUNsaWNrczogQXJyYXk8W251bWJlciwgbnVtYmVyXT5cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJSW50ZXJ2aWV3QXV0b1NhdmVEYXRhe1xyXG4gIGludGVydmlld19hdXRvX3NhdmVfaWQ6IHN0cmluZztcclxuICBhbnN3ZXJfbGlzdD86IEFycmF5PElRdWVzdGlvbkFuc3dlcj47XHJcbiAgbG9naWNfdmFycz86IEFycmF5PElJbnRlcnZpZXdMb2dpY1Zhcj47XHJcbiAgcXVlc3Rpb25fZ3VpZD86IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ3VycmVudFF1ZXN0aW9uQW5zd2VyIHtcclxuICBxdWVzdGlvbj86IEFuc3dlcjtcclxuICBzZWN0aW9ucz86IEFycmF5PEFuc3dlciB8IHVuZGVmaW5lZD47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUludGVydmlld0xvZ2ljVmFyIHtcclxuICBubTogc3RyaW5nOyAgIC8vbmFtZVxyXG4gIHZsOiBhbnk7ICAgICAgLy92bFxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElJbnRlcnZpZXdBZGRpdGlvbmFsSW5mb3tcclxuICBRdWVzdGlvbmFyeVVwZGF0ZVRpbWVzdGFtcDogbnVtYmVyIHwgbnVsbDtcclxuICBzdXJ2ZXlUeXBlPzogU3VydmV5VHlwZTtcclxuICBwaG9uZU51bWJlcj86IHN0cmluZztcclxuICBjYXRpSW50ZXJ2aWV3ZXJJZD86IHN0cmluZztcclxuICByZWZlcnJlcj86IHN0cmluZztcclxuICB0cmFja0lkPzogc3RyaW5nO1xyXG4gIGludGVydmlld0F1dG9TYXZlSWQ/OiBzdHJpbmc7XHJcbiAgbGFzdF9hdXRvc2F2ZV9xdWVzdGlvbl9ndWlkPzogbnVtYmVyO1xyXG4gIGNsaWVudElwPzogc3RyaW5nO1xyXG4gIGNsaWVudEhlYWRlcnM/OiB7XHJcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmc7XHJcbiAgfTtcclxuICBba2V5OiBzdHJpbmddOiBhbnk7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElJbnRlcnZpZXdEYXRhIHtcclxuICBMYW5ndWFnZTogbnVtYmVyO1xyXG4gIFNwb3RJZDogbnVtYmVyO1xyXG4gIERldmljZUlkOiBudW1iZXI7XHJcbiAgRGV2aWNlVHlwZTogbnVtYmVyO1xyXG4gIFJlc3VsdGF0aXZlOiBSZXN1bHRhdGl2ZVN0YXR1cztcclxuICBWYWxpZDogVmFsaWRTdGF0dXM7XHJcbiAgV2F2ZTogbnVtYmVyO1xyXG4gIFF1ZXN0aW9uYXJ5TmFtZTogc3RyaW5nO1xyXG4gIFF1ZXN0aW9uYXJ5R3VpZDogbnVtYmVyO1xyXG4gIFN0YXJ0ZWRBdDogbnVtYmVyO1xyXG4gIEZpbmlzaGVkQXQ6IG51bWJlcjtcclxuICBUaW5lWm9uZUJpYXM6IG51bWJlcjtcclxuICBSZXN1bHRhdERpcnR5OiBib29sZWFuO1xyXG4gIEFuc3dlcnM6IHtBbnN2ZXJzTGlzdDogQXJyYXk8YW55Pn07XHJcbiAgYWRkaXRpb25hbF9pbmZvOiBJSW50ZXJ2aWV3QWRkaXRpb25hbEluZm87XHJcbiAgUmVzdWx0UXVvdGFHdWlkcz86IEFycmF5PHsgYmFzZV9ndWlkOiBudW1iZXI7IHJlc3VsdDogYm9vbGVhbiB9PjtcclxuICBSZXN1bHRRdW90YTJkR3VpZHM/OiBBcnJheTxhbnk+O1xyXG4gIExvZ2ljVmFyczogQXJyYXk8SUludGVydmlld0xvZ2ljVmFyPjtcclxuICBVbmlxdWVEZXZpY2VUZXh0Pzogc3RyaW5nO1xyXG4gIFNwb3RHdWlkPzogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElJbnRlcnZpZXdQcm9ncmVzc0V2ZW50RGF0YXtcclxuICBsb2dpY1ZhcnM6IExvZ2ljT2JqZWN0O1xyXG4gIGFuc3dlckxpc3Q6IEFycmF5PEFuc3dlcj47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUludGVydmlld1Byb2dyZXNzRXZlbnQge1xyXG4gIGN1cnJlbnROdW06IG51bWJlcjtcclxuICBxdWVzdGlvbnNDb3VudDogbnVtYmVyO1xyXG4gIHF1ZXN0aW9uR3VpZDogbnVtYmVyO1xyXG4gIGludGVydmlld0RhdGE6IElJbnRlcnZpZXdQcm9ncmVzc0V2ZW50RGF0YVxyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgSUludGVydmlld1N0YXJ0ZWRFdmVudCB7XHJcbiAgcXVlc3Rpb25hcnk6IElkYlF1ZXN0aW9uYXJ5O1xyXG59XHJcbiJdfQ==
@@ -11,7 +11,7 @@ import { MatButton } from '@angular/material/button';
11
11
  import { MatRadioGroup, MatRadioButton } from '@angular/material/radio';
12
12
  import * as i1$2 from '@angular/forms';
13
13
  import { FormControl, NG_VALUE_ACCESSOR, ReactiveFormsModule, FormGroup, FormArray, FormsModule } from '@angular/forms';
14
- import { MatFormField } from '@angular/material/form-field';
14
+ import { MatFormField, MatPrefix } from '@angular/material/form-field';
15
15
  import { MatInput } from '@angular/material/input';
16
16
  import { MatCheckbox } from '@angular/material/checkbox';
17
17
  import * as i1$1 from '@angular/cdk/layout';
@@ -170,12 +170,18 @@ const answerODValidator = (minValue, maxValue) => (control) => {
170
170
  //ошибок нет, всё корректно
171
171
  return null;
172
172
  };
173
- const answerOLValidator = () => (control) => {
173
+ const answerOLValidator = (isPhoneNumber) => (control) => {
174
174
  const text = typeof control.value !== 'string' ? '' : control.value.trim();
175
175
  //Нужно чтобы в поле ввели хоть что-то.
176
176
  if (text.length === 0) {
177
177
  return { answerOlAnswerError: true };
178
178
  }
179
+ if (isPhoneNumber) {
180
+ const res = text.length === 9 && !isNaN(Number(text));
181
+ if (!res) {
182
+ return { answerOlTelephoneFormatError: true };
183
+ }
184
+ }
179
185
  //ошибок нет, всё корректно
180
186
  return null;
181
187
  };
@@ -314,15 +320,21 @@ class MultiLangObjectToHtmlPipe {
314
320
  this._logic = _logic;
315
321
  }
316
322
  transform(caption, language, logicCaptions) {
323
+ //сначала проверим есть ли текст у которого выполняется Expression.
317
324
  if (Array.isArray(logicCaptions)) {
318
325
  const correctLogicCaption = logicCaptions.find(logicCaption => this._logic.executeLogic(logicCaption.Expression));
319
326
  const correctLogicCaptionLangObj = correctLogicCaption?.MultiLangCaptions.find(capt => capt.lang === language);
320
327
  const text = correctLogicCaptionLangObj?._SYS_CaptionHTML ?? correctLogicCaptionLangObj?.CaptionHtml ?? '';
321
- return this._sanitizer.bypassSecurityTrustHtml(text);
328
+ //если есть хоть какой-то текст - показываем его
329
+ if ((text ?? '').trim().length > 0) {
330
+ return this._sanitizer.bypassSecurityTrustHtml(text);
331
+ }
322
332
  }
333
+ //если основой текст не указан, выходим
323
334
  if (!Array.isArray(caption)) {
324
335
  return '';
325
336
  }
337
+ //ищем основной текс с нужным языком
326
338
  const langObj = caption.find(capt => capt.lang === language);
327
339
  const text = langObj?._SYS_CaptionHTML ?? langObj?.CaptionHtml ?? '';
328
340
  return this._sanitizer.bypassSecurityTrustHtml(text);
@@ -887,7 +899,7 @@ class AnswerOLComponent extends AnswerMasterComponent {
887
899
  useExisting: forwardRef(() => AnswerOLComponent),
888
900
  multi: true
889
901
  },
890
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"container-main\">\r\n @if (telephoneInput()) {\r\n <mat-form-field appearance=\"outline\">\r\n <span matPrefix>+380&nbsp;</span>\r\n <input matInput [formControl]=\"control\" tpSurveyFocusAndSelect>\r\n </mat-form-field>\r\n } @else {\r\n <mat-form-field appearance=\"outline\" class=\"input-text\">\r\n <textarea rows=\"10\" matInput [formControl]=\"control\" tpSurveyFocusAndSelect></textarea>\r\n </mat-form-field>\r\n\r\n<!-- <mat-form-field class=\"container-controls\" appearance=\"outline\">-->\r\n<!-- <textarea rows=\"10\" autofocus matInput [(ngModel)]=\"answer.AnswerValue\" (ngModelChange)=\"answerChange()\" appFocusAndSelect></textarea>-->\r\n<!-- </mat-form-field>-->\r\n }\r\n\r\n<!-- <mat-form-field appearance=\"outline\" class=\"input-od-number\">-->\r\n<!-- <input [formControl]=\"control\" tpSurveyFocusAndSelect matInput type=\"number\">-->\r\n<!-- </mat-form-field>-->\r\n</div>\r\n", styles: [":host{width:100%}.container-main{display:flex;width:100%;justify-content:center;align-items:center;flex-flow:column;gap:2em;padding:0 2em;box-sizing:border-box}.input-text{width:100%}\n"], dependencies: [{ kind: "directive", type: FocusAndSelectDirective, selector: "[tpSurveyFocusAndSelect]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
902
+ ], usesInheritance: true, ngImport: i0, template: "<div class=\"container-main\">\r\n @if (telephoneInput()) {\r\n <mat-form-field appearance=\"outline\">\r\n <input\r\n type=\"text\"\r\n inputmode=\"numeric\"\r\n matInput\r\n [formControl]=\"control\" tpSurveyFocusAndSelect>\r\n <span matTextPrefix>+380 &nbsp;</span>\r\n </mat-form-field>\r\n } @else {\r\n <mat-form-field appearance=\"outline\" class=\"input-text\">\r\n <textarea rows=\"10\" matInput [formControl]=\"control\" tpSurveyFocusAndSelect></textarea>\r\n </mat-form-field>\r\n\r\n<!-- <mat-form-field class=\"container-controls\" appearance=\"outline\">-->\r\n<!-- <textarea rows=\"10\" autofocus matInput [(ngModel)]=\"answer.AnswerValue\" (ngModelChange)=\"answerChange()\" appFocusAndSelect></textarea>-->\r\n<!-- </mat-form-field>-->\r\n }\r\n\r\n<!-- <mat-form-field appearance=\"outline\" class=\"input-od-number\">-->\r\n<!-- <input [formControl]=\"control\" tpSurveyFocusAndSelect matInput type=\"number\">-->\r\n<!-- </mat-form-field>-->\r\n</div>\r\n", styles: [":host{width:100%}.container-main{display:flex;width:100%;justify-content:center;align-items:center;flex-flow:column;gap:2em;padding:0 2em;box-sizing:border-box}.input-text{width:100%}\n"], dependencies: [{ kind: "directive", type: FocusAndSelectDirective, selector: "[tpSurveyFocusAndSelect]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }] }); }
891
903
  }
892
904
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: AnswerOLComponent, decorators: [{
893
905
  type: Component,
@@ -896,14 +908,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImpor
896
908
  FormsModule,
897
909
  MatFormField,
898
910
  MatInput,
899
- ReactiveFormsModule
911
+ ReactiveFormsModule,
912
+ MatPrefix
900
913
  ], providers: [
901
914
  {
902
915
  provide: NG_VALUE_ACCESSOR,
903
916
  useExisting: forwardRef(() => AnswerOLComponent),
904
917
  multi: true
905
918
  },
906
- ], template: "<div class=\"container-main\">\r\n @if (telephoneInput()) {\r\n <mat-form-field appearance=\"outline\">\r\n <span matPrefix>+380&nbsp;</span>\r\n <input matInput [formControl]=\"control\" tpSurveyFocusAndSelect>\r\n </mat-form-field>\r\n } @else {\r\n <mat-form-field appearance=\"outline\" class=\"input-text\">\r\n <textarea rows=\"10\" matInput [formControl]=\"control\" tpSurveyFocusAndSelect></textarea>\r\n </mat-form-field>\r\n\r\n<!-- <mat-form-field class=\"container-controls\" appearance=\"outline\">-->\r\n<!-- <textarea rows=\"10\" autofocus matInput [(ngModel)]=\"answer.AnswerValue\" (ngModelChange)=\"answerChange()\" appFocusAndSelect></textarea>-->\r\n<!-- </mat-form-field>-->\r\n }\r\n\r\n<!-- <mat-form-field appearance=\"outline\" class=\"input-od-number\">-->\r\n<!-- <input [formControl]=\"control\" tpSurveyFocusAndSelect matInput type=\"number\">-->\r\n<!-- </mat-form-field>-->\r\n</div>\r\n", styles: [":host{width:100%}.container-main{display:flex;width:100%;justify-content:center;align-items:center;flex-flow:column;gap:2em;padding:0 2em;box-sizing:border-box}.input-text{width:100%}\n"] }]
919
+ ], template: "<div class=\"container-main\">\r\n @if (telephoneInput()) {\r\n <mat-form-field appearance=\"outline\">\r\n <input\r\n type=\"text\"\r\n inputmode=\"numeric\"\r\n matInput\r\n [formControl]=\"control\" tpSurveyFocusAndSelect>\r\n <span matTextPrefix>+380 &nbsp;</span>\r\n </mat-form-field>\r\n } @else {\r\n <mat-form-field appearance=\"outline\" class=\"input-text\">\r\n <textarea rows=\"10\" matInput [formControl]=\"control\" tpSurveyFocusAndSelect></textarea>\r\n </mat-form-field>\r\n\r\n<!-- <mat-form-field class=\"container-controls\" appearance=\"outline\">-->\r\n<!-- <textarea rows=\"10\" autofocus matInput [(ngModel)]=\"answer.AnswerValue\" (ngModelChange)=\"answerChange()\" appFocusAndSelect></textarea>-->\r\n<!-- </mat-form-field>-->\r\n }\r\n\r\n<!-- <mat-form-field appearance=\"outline\" class=\"input-od-number\">-->\r\n<!-- <input [formControl]=\"control\" tpSurveyFocusAndSelect matInput type=\"number\">-->\r\n<!-- </mat-form-field>-->\r\n</div>\r\n", styles: [":host{width:100%}.container-main{display:flex;width:100%;justify-content:center;align-items:center;flex-flow:column;gap:2em;padding:0 2em;box-sizing:border-box}.input-text{width:100%}\n"] }]
907
920
  }] });
908
921
 
909
922
  class AsFormArrayPipe {
@@ -1223,7 +1236,7 @@ class ContainerAnswerComponent {
1223
1236
  break;
1224
1237
  }
1225
1238
  case QuestionsType.eqOL: {
1226
- this.answerForm.controls.answer.addValidators(answerOLValidator());
1239
+ this.answerForm.controls.answer.addValidators(answerOLValidator(question.OLTypeTel));
1227
1240
  break;
1228
1241
  }
1229
1242
  case QuestionsType.eqSL: {
@@ -1405,7 +1418,7 @@ class ContainerAnswerComponent {
1405
1418
  return resArray;
1406
1419
  }
1407
1420
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ContainerAnswerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1408
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.6", type: ContainerAnswerComponent, isStandalone: true, selector: "tp-survey-container-answer", inputs: { question: { classPropertyName: "question", publicName: "question", isSignal: true, isRequired: true, transformFunction: null }, language: { classPropertyName: "language", publicName: "language", isSignal: true, isRequired: true, transformFunction: null }, viewModel: { classPropertyName: "viewModel", publicName: "viewModel", isSignal: true, isRequired: true, transformFunction: null }, answers: { classPropertyName: "answers", publicName: "answers", isSignal: true, isRequired: false, transformFunction: null }, developerMode: { classPropertyName: "developerMode", publicName: "developerMode", isSignal: true, isRequired: false, transformFunction: null }, languageList: { classPropertyName: "languageList", publicName: "languageList", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { logicChanged: "logicChanged", answerChanged: "answerChanged", onLanguageChange: "onLanguageChange" }, ngImport: i0, template: "<div class=\"container-main\" [formGroup]=\"answerForm\">\r\n @switch (question().QuestionType) {\r\n <!-- @case ('LANG') {-->\r\n <!-- <app-answer-lang [question]=\"question\" [langArray]=\"sc.questionary.BaseParams.LanguageList\"/>-->\r\n <!-- }-->\r\n\r\n @case (questionsType.eqLANG) {\r\n <tp-survey-answer-lang\r\n [languageList]=\"languageList()\"\r\n [language]=\"2\"\r\n [viewModel]=\"viewModel()\"\r\n (onLanguageChange)=\"onLanguageChange.emit($event)\"/>\r\n }\r\n\r\n @case (questionsType.eqINFO) {\r\n <tp-survey-answer-info\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"/>\r\n }\r\n\r\n @case (questionsType.eqSS) {\r\n <tp-survey-answer-ss\r\n formControlName=\"answer\"\r\n [question]=\"question()\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n (onAlternativeClick)=\"onAlternativeClick($event)\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqMS) {\r\n <tp-survey-answer-ms\r\n formControlName=\"answer\"\r\n [question]=\"question()\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [alternativeMaxAnswersCount]=\"question().AlternativeMaxAnswersCount\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n (onAlternativeClick)=\"onAlternativeClick($event)\"/>\r\n }\r\n\r\n @case (questionsType.eqOD) {\r\n <tp-survey-answer-od\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [minValue]=\"question().ODMinValue\"\r\n [maxValue]=\"question().ODMaxValue\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqOL) {\r\n <tp-survey-answer-ol\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [telephoneInput]=\"question().OLTypeTel\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqSL) {\r\n <tp-survey-answer-sl\r\n formControlName=\"answer\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n [sectionList]=\"visibleSectionList()\"\r\n [multiSelect]=\"question().MultiSelect\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [maxCount]=\"this.question().SLSectionMaxAnswersCount\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqEND) {\r\n <tp-survey-answer-end\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n />\r\n }\r\n }\r\n\r\n <div class=\"container-additional-answer\">\r\n @for (addAnswer of answerForm.controls.additionalAnswers.controls | keyValues; track addAnswer) {\r\n @if (addAnswer.name | getAdditionalValueByValue:visibleAdditionalAnswerList(); as additionalAnswerObject ) {\r\n <tp-survey-answer-additional\r\n [control]=\"addAnswer.control\"\r\n [class.full-width]=\"additionalAnswerObject.AnswerType===AdditionalAnswerType.aatText\"\r\n [answerType]=\"additionalAnswerObject.AnswerType\"\r\n [caption]=\"additionalAnswerObject.MultiLangCaptions | multiLangObjectToHtml:language()\"\r\n [numberMinValue]=\"additionalAnswerObject.NumberMinValue\"\r\n [numberMaxValue]=\"additionalAnswerObject.NumberMaxValue\"\r\n [textMultiline]=\"additionalAnswerObject.TextMultiline\"\r\n [captionPosition]=\"additionalAnswerObject.CaptionPosition\"/>\r\n }\r\n }\r\n </div>\r\n</div>\r\n\r\n", styles: [".container-main{display:flex;flex-flow:column;align-items:center}tp-survey-answer-sl{width:100%}.full-width{width:100%}:host-context(.tp-view-desktop) .container-main{max-width:896px;margin:0 auto;padding:0 1em}:host-context(.tp-view-desktop) .container-additional-answer{padding:1em;display:flex;flex-flow:column;align-items:baseline;gap:2em}:host-context(.tp-view-tablet) .container-main{width:100%;height:100%;overflow:hidden;display:block}:host-context(.tp-view-tablet) .container-additional-answer{position:absolute;width:80%;left:10%;bottom:0}@media (max-width: 480px){:host-context(.tp-view-desktop) .container-additional-answer{width:100%}}\n"], dependencies: [{ kind: "component", type: AnswerODComponent, selector: "tp-survey-answer-od", inputs: ["minValue", "maxValue"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: AnswerSSComponent, selector: "tp-survey-answer-ss", inputs: ["question", "alternativeList"], outputs: ["onAlternativeClick"] }, { kind: "component", type: AnswerInfoComponent, selector: "tp-survey-answer-info" }, { kind: "component", type: AnswerMSComponent, selector: "tp-survey-answer-ms", inputs: ["question", "alternativeList", "alternativeMaxAnswersCount"], outputs: ["onAlternativeClick"] }, { kind: "component", type: AnswerAdditionalComponent, selector: "tp-survey-answer-additional", inputs: ["control", "answerType", "caption", "numberMinValue", "numberMaxValue", "textMultiline", "captionPosition"] }, { kind: "pipe", type: MultiLangObjectToHtmlPipe, name: "multiLangObjectToHtml" }, { kind: "component", type: AnswerEndComponent, selector: "tp-survey-answer-end" }, { kind: "component", type: AnswerOLComponent, selector: "tp-survey-answer-ol", inputs: ["telephoneInput"] }, { kind: "component", type: AnswerSLComponent, selector: "tp-survey-answer-sl", inputs: ["alternativeList", "sectionList", "multiSelect", "maxCount"] }, { kind: "pipe", type: GetAdditionalValueByValuePipe, name: "getAdditionalValueByValue" }, { kind: "pipe", type: KeyValuesPipe, name: "keyValues" }, { kind: "component", type: AnswerLangComponent, selector: "tp-survey-answer-lang", inputs: ["languageList"], outputs: ["onLanguageChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1421
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.6", type: ContainerAnswerComponent, isStandalone: true, selector: "tp-survey-container-answer", inputs: { question: { classPropertyName: "question", publicName: "question", isSignal: true, isRequired: true, transformFunction: null }, language: { classPropertyName: "language", publicName: "language", isSignal: true, isRequired: true, transformFunction: null }, viewModel: { classPropertyName: "viewModel", publicName: "viewModel", isSignal: true, isRequired: true, transformFunction: null }, answers: { classPropertyName: "answers", publicName: "answers", isSignal: true, isRequired: false, transformFunction: null }, developerMode: { classPropertyName: "developerMode", publicName: "developerMode", isSignal: true, isRequired: false, transformFunction: null }, languageList: { classPropertyName: "languageList", publicName: "languageList", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { logicChanged: "logicChanged", answerChanged: "answerChanged", onLanguageChange: "onLanguageChange" }, ngImport: i0, template: "<div class=\"container-main\" [formGroup]=\"answerForm\">\r\n @switch (question().QuestionType) {\r\n\r\n @case (questionsType.eqLANG) {\r\n <tp-survey-answer-lang\r\n [languageList]=\"languageList()\"\r\n [language]=\"2\"\r\n [viewModel]=\"viewModel()\"\r\n (onLanguageChange)=\"onLanguageChange.emit($event)\"/>\r\n }\r\n\r\n @case (questionsType.eqINFO) {\r\n <tp-survey-answer-info\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"/>\r\n }\r\n\r\n @case (questionsType.eqSS) {\r\n <tp-survey-answer-ss\r\n formControlName=\"answer\"\r\n [question]=\"question()\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n (onAlternativeClick)=\"onAlternativeClick($event)\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqMS) {\r\n <tp-survey-answer-ms\r\n formControlName=\"answer\"\r\n [question]=\"question()\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [alternativeMaxAnswersCount]=\"question().AlternativeMaxAnswersCount\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n (onAlternativeClick)=\"onAlternativeClick($event)\"/>\r\n }\r\n\r\n @case (questionsType.eqOD) {\r\n <tp-survey-answer-od\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [minValue]=\"question().ODMinValue\"\r\n [maxValue]=\"question().ODMaxValue\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqOL) {\r\n <tp-survey-answer-ol\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [telephoneInput]=\"question().OLTypeTel\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqSL) {\r\n <tp-survey-answer-sl\r\n formControlName=\"answer\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n [sectionList]=\"visibleSectionList()\"\r\n [multiSelect]=\"question().MultiSelect\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [maxCount]=\"this.question().SLSectionMaxAnswersCount\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqEND) {\r\n <tp-survey-answer-end\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n />\r\n }\r\n }\r\n\r\n <div class=\"container-additional-answer\">\r\n @for (addAnswer of answerForm.controls.additionalAnswers.controls | keyValues; track addAnswer) {\r\n @if (addAnswer.name | getAdditionalValueByValue:visibleAdditionalAnswerList(); as additionalAnswerObject ) {\r\n <tp-survey-answer-additional\r\n [control]=\"addAnswer.control\"\r\n [class.full-width]=\"additionalAnswerObject.AnswerType===AdditionalAnswerType.aatText\"\r\n [answerType]=\"additionalAnswerObject.AnswerType\"\r\n [caption]=\"additionalAnswerObject.MultiLangCaptions | multiLangObjectToHtml:language()\"\r\n [numberMinValue]=\"additionalAnswerObject.NumberMinValue\"\r\n [numberMaxValue]=\"additionalAnswerObject.NumberMaxValue\"\r\n [textMultiline]=\"additionalAnswerObject.TextMultiline\"\r\n [captionPosition]=\"additionalAnswerObject.CaptionPosition\"/>\r\n }\r\n }\r\n </div>\r\n</div>\r\n\r\n", styles: [".container-main{display:flex;flex-flow:column;align-items:center}tp-survey-answer-sl{width:100%}.full-width{width:100%}:host-context(.tp-view-desktop) .container-main{max-width:896px;margin:0 auto;padding:0 1em}:host-context(.tp-view-desktop) .container-additional-answer{padding:1em;display:flex;flex-flow:column;align-items:baseline;gap:2em}:host-context(.tp-view-tablet) .container-main{width:100%;height:100%;overflow:hidden;display:block}:host-context(.tp-view-tablet) .container-additional-answer{position:absolute;width:80%;left:10%;bottom:0}@media (max-width: 480px){:host-context(.tp-view-desktop) .container-additional-answer{width:100%}}\n"], dependencies: [{ kind: "component", type: AnswerODComponent, selector: "tp-survey-answer-od", inputs: ["minValue", "maxValue"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: AnswerSSComponent, selector: "tp-survey-answer-ss", inputs: ["question", "alternativeList"], outputs: ["onAlternativeClick"] }, { kind: "component", type: AnswerInfoComponent, selector: "tp-survey-answer-info" }, { kind: "component", type: AnswerMSComponent, selector: "tp-survey-answer-ms", inputs: ["question", "alternativeList", "alternativeMaxAnswersCount"], outputs: ["onAlternativeClick"] }, { kind: "component", type: AnswerAdditionalComponent, selector: "tp-survey-answer-additional", inputs: ["control", "answerType", "caption", "numberMinValue", "numberMaxValue", "textMultiline", "captionPosition"] }, { kind: "pipe", type: MultiLangObjectToHtmlPipe, name: "multiLangObjectToHtml" }, { kind: "component", type: AnswerEndComponent, selector: "tp-survey-answer-end" }, { kind: "component", type: AnswerOLComponent, selector: "tp-survey-answer-ol", inputs: ["telephoneInput"] }, { kind: "component", type: AnswerSLComponent, selector: "tp-survey-answer-sl", inputs: ["alternativeList", "sectionList", "multiSelect", "maxCount"] }, { kind: "pipe", type: GetAdditionalValueByValuePipe, name: "getAdditionalValueByValue" }, { kind: "pipe", type: KeyValuesPipe, name: "keyValues" }, { kind: "component", type: AnswerLangComponent, selector: "tp-survey-answer-lang", inputs: ["languageList"], outputs: ["onLanguageChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1409
1422
  }
1410
1423
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ContainerAnswerComponent, decorators: [{
1411
1424
  type: Component,
@@ -1424,7 +1437,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImpor
1424
1437
  GetAdditionalValueByValuePipe,
1425
1438
  KeyValuesPipe,
1426
1439
  AnswerLangComponent
1427
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"container-main\" [formGroup]=\"answerForm\">\r\n @switch (question().QuestionType) {\r\n <!-- @case ('LANG') {-->\r\n <!-- <app-answer-lang [question]=\"question\" [langArray]=\"sc.questionary.BaseParams.LanguageList\"/>-->\r\n <!-- }-->\r\n\r\n @case (questionsType.eqLANG) {\r\n <tp-survey-answer-lang\r\n [languageList]=\"languageList()\"\r\n [language]=\"2\"\r\n [viewModel]=\"viewModel()\"\r\n (onLanguageChange)=\"onLanguageChange.emit($event)\"/>\r\n }\r\n\r\n @case (questionsType.eqINFO) {\r\n <tp-survey-answer-info\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"/>\r\n }\r\n\r\n @case (questionsType.eqSS) {\r\n <tp-survey-answer-ss\r\n formControlName=\"answer\"\r\n [question]=\"question()\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n (onAlternativeClick)=\"onAlternativeClick($event)\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqMS) {\r\n <tp-survey-answer-ms\r\n formControlName=\"answer\"\r\n [question]=\"question()\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [alternativeMaxAnswersCount]=\"question().AlternativeMaxAnswersCount\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n (onAlternativeClick)=\"onAlternativeClick($event)\"/>\r\n }\r\n\r\n @case (questionsType.eqOD) {\r\n <tp-survey-answer-od\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [minValue]=\"question().ODMinValue\"\r\n [maxValue]=\"question().ODMaxValue\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqOL) {\r\n <tp-survey-answer-ol\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [telephoneInput]=\"question().OLTypeTel\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqSL) {\r\n <tp-survey-answer-sl\r\n formControlName=\"answer\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n [sectionList]=\"visibleSectionList()\"\r\n [multiSelect]=\"question().MultiSelect\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [maxCount]=\"this.question().SLSectionMaxAnswersCount\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqEND) {\r\n <tp-survey-answer-end\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n />\r\n }\r\n }\r\n\r\n <div class=\"container-additional-answer\">\r\n @for (addAnswer of answerForm.controls.additionalAnswers.controls | keyValues; track addAnswer) {\r\n @if (addAnswer.name | getAdditionalValueByValue:visibleAdditionalAnswerList(); as additionalAnswerObject ) {\r\n <tp-survey-answer-additional\r\n [control]=\"addAnswer.control\"\r\n [class.full-width]=\"additionalAnswerObject.AnswerType===AdditionalAnswerType.aatText\"\r\n [answerType]=\"additionalAnswerObject.AnswerType\"\r\n [caption]=\"additionalAnswerObject.MultiLangCaptions | multiLangObjectToHtml:language()\"\r\n [numberMinValue]=\"additionalAnswerObject.NumberMinValue\"\r\n [numberMaxValue]=\"additionalAnswerObject.NumberMaxValue\"\r\n [textMultiline]=\"additionalAnswerObject.TextMultiline\"\r\n [captionPosition]=\"additionalAnswerObject.CaptionPosition\"/>\r\n }\r\n }\r\n </div>\r\n</div>\r\n\r\n", styles: [".container-main{display:flex;flex-flow:column;align-items:center}tp-survey-answer-sl{width:100%}.full-width{width:100%}:host-context(.tp-view-desktop) .container-main{max-width:896px;margin:0 auto;padding:0 1em}:host-context(.tp-view-desktop) .container-additional-answer{padding:1em;display:flex;flex-flow:column;align-items:baseline;gap:2em}:host-context(.tp-view-tablet) .container-main{width:100%;height:100%;overflow:hidden;display:block}:host-context(.tp-view-tablet) .container-additional-answer{position:absolute;width:80%;left:10%;bottom:0}@media (max-width: 480px){:host-context(.tp-view-desktop) .container-additional-answer{width:100%}}\n"] }]
1440
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"container-main\" [formGroup]=\"answerForm\">\r\n @switch (question().QuestionType) {\r\n\r\n @case (questionsType.eqLANG) {\r\n <tp-survey-answer-lang\r\n [languageList]=\"languageList()\"\r\n [language]=\"2\"\r\n [viewModel]=\"viewModel()\"\r\n (onLanguageChange)=\"onLanguageChange.emit($event)\"/>\r\n }\r\n\r\n @case (questionsType.eqINFO) {\r\n <tp-survey-answer-info\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"/>\r\n }\r\n\r\n @case (questionsType.eqSS) {\r\n <tp-survey-answer-ss\r\n formControlName=\"answer\"\r\n [question]=\"question()\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n (onAlternativeClick)=\"onAlternativeClick($event)\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqMS) {\r\n <tp-survey-answer-ms\r\n formControlName=\"answer\"\r\n [question]=\"question()\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [alternativeMaxAnswersCount]=\"question().AlternativeMaxAnswersCount\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n (onAlternativeClick)=\"onAlternativeClick($event)\"/>\r\n }\r\n\r\n @case (questionsType.eqOD) {\r\n <tp-survey-answer-od\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [minValue]=\"question().ODMinValue\"\r\n [maxValue]=\"question().ODMaxValue\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqOL) {\r\n <tp-survey-answer-ol\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [telephoneInput]=\"question().OLTypeTel\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqSL) {\r\n <tp-survey-answer-sl\r\n formControlName=\"answer\"\r\n [alternativeList]=\"visibleAlternativeList()\"\r\n [sectionList]=\"visibleSectionList()\"\r\n [multiSelect]=\"question().MultiSelect\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n [maxCount]=\"this.question().SLSectionMaxAnswersCount\"\r\n />\r\n }\r\n\r\n @case (questionsType.eqEND) {\r\n <tp-survey-answer-end\r\n formControlName=\"answer\"\r\n [language]=\"language()\"\r\n [viewModel]=\"viewModel()\"\r\n />\r\n }\r\n }\r\n\r\n <div class=\"container-additional-answer\">\r\n @for (addAnswer of answerForm.controls.additionalAnswers.controls | keyValues; track addAnswer) {\r\n @if (addAnswer.name | getAdditionalValueByValue:visibleAdditionalAnswerList(); as additionalAnswerObject ) {\r\n <tp-survey-answer-additional\r\n [control]=\"addAnswer.control\"\r\n [class.full-width]=\"additionalAnswerObject.AnswerType===AdditionalAnswerType.aatText\"\r\n [answerType]=\"additionalAnswerObject.AnswerType\"\r\n [caption]=\"additionalAnswerObject.MultiLangCaptions | multiLangObjectToHtml:language()\"\r\n [numberMinValue]=\"additionalAnswerObject.NumberMinValue\"\r\n [numberMaxValue]=\"additionalAnswerObject.NumberMaxValue\"\r\n [textMultiline]=\"additionalAnswerObject.TextMultiline\"\r\n [captionPosition]=\"additionalAnswerObject.CaptionPosition\"/>\r\n }\r\n }\r\n </div>\r\n</div>\r\n\r\n", styles: [".container-main{display:flex;flex-flow:column;align-items:center}tp-survey-answer-sl{width:100%}.full-width{width:100%}:host-context(.tp-view-desktop) .container-main{max-width:896px;margin:0 auto;padding:0 1em}:host-context(.tp-view-desktop) .container-additional-answer{padding:1em;display:flex;flex-flow:column;align-items:baseline;gap:2em}:host-context(.tp-view-tablet) .container-main{width:100%;height:100%;overflow:hidden;display:block}:host-context(.tp-view-tablet) .container-additional-answer{position:absolute;width:80%;left:10%;bottom:0}@media (max-width: 480px){:host-context(.tp-view-desktop) .container-additional-answer{width:100%}}\n"] }]
1428
1441
  }], ctorParameters: () => [] });
1429
1442
 
1430
1443
  class GetActiveLanguagePipe {
@@ -1618,21 +1631,19 @@ class TpSurveyInterviewService {
1618
1631
  newAnswer.FinishedAt = oldAnswer.FinishedAt;
1619
1632
  //С дополнительными ответами сложнее, они помечены readonly. Поэтому сначала удалим, потом добавим
1620
1633
  for (const prop of Object.getOwnPropertyNames(newAnswer.AnswerAdditional)) {
1621
- // delete newAnswer.AnswerAdditional[prop];
1634
+ delete newAnswer.AnswerAdditional[prop];
1622
1635
  }
1623
1636
  //добавляем старые значения
1624
- // for (const [key, value] of Object.entries(oldAnswer.AnswerAdditional)) {
1625
- // newAnswer.AnswerAdditional[key] = value;
1626
- // }
1627
- //
1628
- // if (Array.isArray(oldAnswer['AlternativeSequenceClicks'])) {
1629
- // newAnswer['AlternativeSequenceClicks'] = Array.from(oldAnswer['AlternativeSequenceClicks']);
1630
- // }
1631
- //То же самое с ViewedAlternativeValues и ViewedSectionGuids. Т.к. они readonly сначала удалим, потом добавим
1637
+ for (const [key, value] of Object.entries(oldAnswer.AnswerAdditional)) {
1638
+ newAnswer.AnswerAdditional[key] = value;
1639
+ }
1640
+ //То же самое с ViewedAlternativeValues и ViewedSectionGuids и AlternativeSequenceClicks. Т.к. они readonly сначала удалим, потом добавим
1632
1641
  newAnswer.ViewedAlternativeValues.length = 0;
1633
1642
  oldAnswer.ViewedAlternativeValues.forEach(oa => newAnswer.ViewedAlternativeValues.push(oa));
1634
1643
  newAnswer.ViewedSectionGuids.length = 0;
1635
1644
  oldAnswer.ViewedSectionGuids.forEach(oa => newAnswer.ViewedSectionGuids.push(oa));
1645
+ newAnswer.AlternativeSequenceClicks.length = 0;
1646
+ oldAnswer.AlternativeSequenceClicks.forEach(oa => newAnswer.AlternativeSequenceClicks.push(oa));
1636
1647
  }
1637
1648
  });
1638
1649
  }