@taiga-ui/addon-doc 3.5.0 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,7 +22,7 @@ export class TuiDocCopyComponent {
22
22
  }
23
23
  }
24
24
  TuiDocCopyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocCopyComponent, deps: [{ token: TUI_COPY_TEXTS }], target: i0.ɵɵFactoryTarget.Component });
25
- TuiDocCopyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDocCopyComponent, selector: "tui-doc-copy", providers: [TuiDestroyService], ngImport: i0, template: "<button\n *ngIf=\"texts$ | async as texts\"\n tuiButton\n type=\"button\"\n appearance=\"\"\n size=\"s\"\n class=\"t-copy\"\n [title]=\"texts[0]\"\n (click)=\"onClick()\"\n>\n <span\n class=\"t-content\"\n [class.t-content_moved]=\"copied$ | async\"\n >\n <span\n class=\"t-initial\"\n [attr.data-text]=\"texts[0]\"\n >\n <ng-content></ng-content>\n </span>\n {{ texts[1] }}\n </span>\n</button>\n", styles: [":host{position:relative;display:inline-block;vertical-align:middle}.t-copy{transition-property:background;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;width:100%;color:var(--tui-text-01);background:var(--tui-base-01);overflow:hidden}.t-copy:hover{background:var(--tui-base-02)}.t-initial{white-space:nowrap}.t-initial:empty:before{content:attr(data-text)}.t-content{transition-property:transform;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;flex-direction:column;transform:translateY(1rem);text-align:center;line-height:2rem}.t-content_moved{transform:translateY(-1rem)}\n"], components: [{ type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
25
+ TuiDocCopyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDocCopyComponent, selector: "tui-doc-copy", providers: [TuiDestroyService], ngImport: i0, template: "<button\n *ngIf=\"texts$ | async as texts\"\n tuiButton\n type=\"button\"\n appearance=\"\"\n size=\"s\"\n class=\"t-copy\"\n [title]=\"texts[0]\"\n (click)=\"onClick()\"\n>\n <span\n class=\"t-content\"\n [class.t-content_moved]=\"copied$ | async\"\n >\n <span\n class=\"t-initial\"\n [attr.data-text]=\"texts[0]\"\n >\n <ng-content></ng-content>\n </span>\n {{ texts[1] }}\n </span>\n</button>\n", styles: [":host{position:relative;display:inline-block;vertical-align:middle}.t-copy{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;width:100%;color:var(--tui-text-01);background:var(--tui-base-01);overflow:hidden}.t-copy:hover{background:var(--tui-base-02)}.t-initial{white-space:nowrap}.t-initial:empty:before{content:attr(data-text)}.t-content{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;flex-direction:column;transform:translateY(1rem);text-align:center;line-height:2rem}.t-content_moved{transform:translateY(-1rem)}\n"], components: [{ type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
26
26
  __decorate([
27
27
  tuiPure
28
28
  ], TuiDocCopyComponent.prototype, "copied$", null);
@@ -108,7 +108,7 @@ TuiDocDemoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
108
108
  provide: TuiModeDirective,
109
109
  useExisting: forwardRef(() => TuiDocDemoComponent),
110
110
  },
111
- ], queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "resizerText", first: true, predicate: ["resizerText"], descendants: true }], ngImport: i0, template: "<div\n class=\"t-bg-toggle\"\n [tuiMode]=\"null\"\n>\n <ng-template #tooltip>\n {{ texts[0] }}\n <a\n tuiLink\n tuiMode=\"onDark\"\n routerLink=\"/directives/mode\"\n >\n <code>tuiMode</code>\n </a>\n </ng-template>\n <ng-container *ngIf=\"isMobile; else desktop\">\n <tui-select\n tuiTextfieldSize=\"s\"\n class=\"t-mode\"\n [tuiTextfieldCleaner]=\"true\"\n [tuiHintContent]=\"tooltip\"\n [formControl]=\"modeControl\"\n >\n tuiMode\n <tui-data-list-wrapper\n *tuiDataList\n [items]=\"items\"\n ></tui-data-list-wrapper>\n </tui-select>\n </ng-container>\n <ng-template #desktop>\n tuiMode:\n <tui-tooltip\n describeId=\"form\"\n [content]=\"tooltip\"\n ></tui-tooltip>\n <div\n tuiGroup\n class=\"t-group\"\n [collapsed]=\"true\"\n >\n <tui-radio-block\n size=\"s\"\n nativeId=\"form\"\n class=\"tui-group__auto-width-item\"\n [item]=\"null\"\n [hideRadio]=\"true\"\n [formControl]=\"modeControl\"\n >\n null\n </tui-radio-block>\n <tui-radio-block\n item=\"onDark\"\n size=\"s\"\n nativeId=\"form\"\n class=\"tui-group__auto-width-item\"\n [hideRadio]=\"true\"\n [formControl]=\"modeControl\"\n >\n onDark\n </tui-radio-block>\n <tui-radio-block\n item=\"onLight\"\n size=\"s\"\n nativeId=\"form\"\n class=\"tui-group__auto-width-item\"\n [hideRadio]=\"true\"\n [formControl]=\"modeControl\"\n >\n onLight\n </tui-radio-block>\n </div>\n </ng-template>\n <tui-checkbox-labeled\n size=\"m\"\n class=\"t-checkbox\"\n [(ngModel)]=\"opaque\"\n >\n {{ texts[1] }}\n </tui-checkbox-labeled>\n</div>\n<div\n #wrapper\n class=\"t-wrapper\"\n [class.t-wrapper_dark]=\"modeControl.value === 'onDark'\"\n [class.t-wrapper_gray]=\"modeControl.value === 'onLight'\"\n [class.t-wrapper_transparent]=\"!opaque\"\n>\n <div\n #content\n id=\"demoContent\"\n class=\"t-content\"\n >\n <form\n *ngIf=\"testForm\"\n class=\"t-form\"\n [formGroup]=\"testForm\"\n >\n <div class=\"t-input-wrapper\">\n <ng-container [ngTemplateOutlet]=\"template\"></ng-container>\n </div>\n <button\n tuiButton\n type=\"button\"\n size=\"s\"\n class=\"t-button\"\n [iconRight]=\"icon\"\n (click)=\"toggleDetails()\"\n >\n {{ texts[2] }}\n </button>\n <ng-template #icon>\n <tui-svg\n src=\"tuiIconChevronDown\"\n class=\"t-icon\"\n [class.t-icon_rotated]=\"expanded\"\n ></tui-svg>\n </ng-template>\n <tui-expand\n class=\"t-expand\"\n [expanded]=\"expanded\"\n >\n <ng-template tuiExpandContent>\n <pre class=\"t-value\">Form data: {{ testForm.value | json }}</pre>\n <div\n tuiGroup\n class=\"t-form-controls\"\n >\n <tui-select\n tuiTextfieldSize=\"s\"\n class=\"t-select\"\n [ngModel]=\"updateOn\"\n [ngModelOptions]=\"{standalone: true}\"\n (ngModelChange)=\"updateOnChange($event)\"\n >\n updateOn\n <tui-data-list-wrapper\n *tuiDataList\n [items]=\"updateOnVariants\"\n ></tui-data-list-wrapper>\n </tui-select>\n <button\n tuiButton\n type=\"reset\"\n size=\"s\"\n class=\"tui-group__auto-width-item\"\n >\n Reset\n </button>\n <button\n tuiButton\n type=\"submit\"\n size=\"s\"\n class=\"tui-group__auto-width-item\"\n >\n Submit\n </button>\n </div>\n </ng-template>\n </tui-expand>\n </form>\n <ng-content></ng-content>\n </div>\n <button\n tabindex=\"-1\"\n class=\"t-resizer\"\n (tuiDragStart)=\"onDragStart($event)\"\n (tuiDragContinues)=\"onDragContinues($event)\"\n (tuiDragEnd)=\"onDragEnd()\"\n >\n <span\n #resizerText\n class=\"t-resizer-text\"\n ></span>\n </button>\n</div>\n", styles: [":host{position:relative;display:block;min-width:100%;margin:1.5rem 0}.t-bg-toggle{position:absolute;bottom:calc(100% + .75rem);display:flex;align-items:center;justify-content:flex-end;pointer-events:none;width:100%}.t-bg-toggle>*{pointer-events:auto}.t-wrapper{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);display:flex;border:1px solid var(--tui-base-03);border-radius:var(--tui-radius-m);max-width:100%;min-height:6rem;width:100%;background-color:var(--tui-base-01);overflow:hidden}.t-wrapper.t-wrapper_transparent{background-image:linear-gradient(45deg,var(--tui-base-02) 25%,transparent 25%),linear-gradient(-45deg,var(--tui-base-02) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tui-base-02) 75%),linear-gradient(-45deg,transparent 75%,var(--tui-base-02) 75%);background-size:1.25rem 1.25rem;background-position:0 0,0 .625rem,.625rem -.625rem,-.625rem 0}.t-wrapper.t-wrapper_dark{background-color:#454e58;color:var(--tui-base-01)}.t-wrapper.t-wrapper_gray{background-color:#e5e7ea}.t-wrapper.t-wrapper_dark.t-wrapper_transparent{background-image:linear-gradient(45deg,var(--tui-focus) 25%,transparent 25%),linear-gradient(-45deg,var(--tui-focus) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tui-focus) 75%),linear-gradient(-45deg,transparent 75%,var(--tui-focus) 75%)}.t-wrapper.t-wrapper_gray.t-wrapper_transparent{background-image:linear-gradient(45deg,var(--tui-base-05) 25%,transparent 25%),linear-gradient(-45deg,var(--tui-base-05) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tui-base-05) 75%),linear-gradient(-45deg,transparent 75%,var(--tui-base-05) 75%)}:host-context(tui-root._mobile) .t-wrapper{min-height:auto}.t-content{flex:1 1 0;min-width:0;padding:1.5rem;box-sizing:border-box;overflow:hidden}:host-context(tui-root._mobile) .t-content{padding:1rem}.t-form{display:flex;flex-wrap:wrap;align-items:flex-start}.t-input-wrapper{width:100%;margin-bottom:.5rem}.t-expand{width:100%}.t-icon{transition-property:transform;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}.t-icon_rotated{transform:rotate(180deg)}.t-value{flex:1;background:var(--tui-clear-inverse);padding:.75rem;border-radius:.25rem}.t-mode{width:12.5rem}.t-select{max-width:15rem}.t-resizer{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;box-shadow:0 .5rem 1rem rgba(0,0,0,.16);position:relative;width:3.5rem;min-height:inherit;flex-shrink:0;border-left:1px solid var(--tui-base-03);cursor:col-resize;outline:none;background:var(--tui-base-01);color:var(--tui-text-01)}.t-resizer:before,.t-resizer:after{content:\"\";position:absolute;top:.75rem;left:50%;bottom:.75rem;width:1px;background:var(--tui-base-05)}.t-resizer:before{transform:translate(.125rem)}.t-resizer:after{transform:translate(-.1875rem)}:host-context(tui-root._mobile) .t-resizer{display:none}.t-resizer-text{font:var(--tui-font-text-s);position:relative;z-index:1;padding:.75rem;background:var(--tui-base-01)}.wrapper_light .t-resizer-text{background:#3e464e}.t-group,.t-checkbox{margin-left:.75rem}.t-button,.t-form-controls{margin-top:.75rem}@supports ((position: -webkit-sticky) or (position: sticky)){@media screen and (min-height: 37.5rem){:host{position:-webkit-sticky;position:sticky;top:4.625rem;z-index:2}}}\n"], components: [{ type: i1.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { type: i2.TuiSelectComponent, selector: "tui-select", inputs: ["stringify", "identityMatcher", "valueContent"] }, { type: i2.TuiDataListWrapperComponent, selector: "tui-data-list-wrapper:not([labels])", inputs: ["items"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }, { type: i2.TuiRadioBlockComponent, selector: "tui-radio-block", inputs: ["item", "identityMatcher", "contentAlign", "size", "hideRadio", "pseudoDisabled"] }, { type: i2.TuiCheckboxLabeledComponent, selector: "tui-checkbox-labeled", inputs: ["size"] }, { type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiExpandComponent, selector: "tui-expand", inputs: ["async", "expanded"] }], directives: [{ type: i1.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { type: i3.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.TuiSelectDirective, selector: "tui-select" }, { type: i1.TuiTextfieldSizeDirective, selector: "[tuiTextfieldSize]", inputs: ["tuiTextfieldSize"] }, { type: i1.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }, { type: i1.TuiHintOptionsDirective, selector: "[tuiHintContent]", inputs: ["tuiHintContent", "tuiHintDirection", "tuiHintAppearance", "tuiHintShowDelay", "tuiHintHideDelay"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i1.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { type: i1.TuiGroupDirective, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "adaptive", "collapsed", "rounded", "size"] }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1.TuiExpandContentDirective, selector: "[tuiExpandContent]" }, { type: i6.TuiDragDirective, selector: "[tuiDragStart], [tuiDragContinues], [tuiDragEnd]", outputs: ["tuiDragStart", "tuiDragContinues", "tuiDragEnd"] }], pipes: { "json": i4.JsonPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
111
+ ], queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "resizerText", first: true, predicate: ["resizerText"], descendants: true }], ngImport: i0, template: "<div\n class=\"t-bg-toggle\"\n [tuiMode]=\"null\"\n>\n <ng-template #tooltip>\n {{ texts[0] }}\n <a\n tuiLink\n tuiMode=\"onDark\"\n routerLink=\"/directives/mode\"\n >\n <code>tuiMode</code>\n </a>\n </ng-template>\n <ng-container *ngIf=\"isMobile; else desktop\">\n <tui-select\n tuiTextfieldSize=\"s\"\n class=\"t-mode\"\n [tuiTextfieldCleaner]=\"true\"\n [tuiHintContent]=\"tooltip\"\n [formControl]=\"modeControl\"\n >\n tuiMode\n <tui-data-list-wrapper\n *tuiDataList\n [items]=\"items\"\n ></tui-data-list-wrapper>\n </tui-select>\n </ng-container>\n <ng-template #desktop>\n tuiMode:\n <tui-tooltip\n describeId=\"form\"\n [content]=\"tooltip\"\n ></tui-tooltip>\n <div\n tuiGroup\n class=\"t-group\"\n [collapsed]=\"true\"\n >\n <tui-radio-block\n size=\"s\"\n nativeId=\"form\"\n class=\"tui-group__auto-width-item\"\n [item]=\"null\"\n [hideRadio]=\"true\"\n [formControl]=\"modeControl\"\n >\n null\n </tui-radio-block>\n <tui-radio-block\n item=\"onDark\"\n size=\"s\"\n nativeId=\"form\"\n class=\"tui-group__auto-width-item\"\n [hideRadio]=\"true\"\n [formControl]=\"modeControl\"\n >\n onDark\n </tui-radio-block>\n <tui-radio-block\n item=\"onLight\"\n size=\"s\"\n nativeId=\"form\"\n class=\"tui-group__auto-width-item\"\n [hideRadio]=\"true\"\n [formControl]=\"modeControl\"\n >\n onLight\n </tui-radio-block>\n </div>\n </ng-template>\n <tui-checkbox-labeled\n size=\"m\"\n class=\"t-checkbox\"\n [(ngModel)]=\"opaque\"\n >\n {{ texts[1] }}\n </tui-checkbox-labeled>\n</div>\n<div\n #wrapper\n class=\"t-wrapper\"\n [class.t-wrapper_dark]=\"modeControl.value === 'onDark'\"\n [class.t-wrapper_gray]=\"modeControl.value === 'onLight'\"\n [class.t-wrapper_transparent]=\"!opaque\"\n>\n <div\n #content\n id=\"demoContent\"\n class=\"t-content\"\n >\n <form\n *ngIf=\"testForm\"\n class=\"t-form\"\n [formGroup]=\"testForm\"\n >\n <div class=\"t-input-wrapper\">\n <ng-container [ngTemplateOutlet]=\"template\"></ng-container>\n </div>\n <button\n tuiButton\n type=\"button\"\n size=\"s\"\n class=\"t-button\"\n [iconRight]=\"icon\"\n (click)=\"toggleDetails()\"\n >\n {{ texts[2] }}\n </button>\n <ng-template #icon>\n <tui-svg\n src=\"tuiIconChevronDown\"\n class=\"t-icon\"\n [class.t-icon_rotated]=\"expanded\"\n ></tui-svg>\n </ng-template>\n <tui-expand\n class=\"t-expand\"\n [expanded]=\"expanded\"\n >\n <ng-template tuiExpandContent>\n <pre class=\"t-value\">Form data: {{ testForm.value | json }}</pre>\n <div\n tuiGroup\n class=\"t-form-controls\"\n >\n <tui-select\n tuiTextfieldSize=\"s\"\n class=\"t-select\"\n [ngModel]=\"updateOn\"\n [ngModelOptions]=\"{standalone: true}\"\n (ngModelChange)=\"updateOnChange($event)\"\n >\n updateOn\n <tui-data-list-wrapper\n *tuiDataList\n [items]=\"updateOnVariants\"\n ></tui-data-list-wrapper>\n </tui-select>\n <button\n tuiButton\n type=\"reset\"\n size=\"s\"\n class=\"tui-group__auto-width-item\"\n >\n Reset\n </button>\n <button\n tuiButton\n type=\"submit\"\n size=\"s\"\n class=\"tui-group__auto-width-item\"\n >\n Submit\n </button>\n </div>\n </ng-template>\n </tui-expand>\n </form>\n <ng-content></ng-content>\n </div>\n <button\n tabindex=\"-1\"\n class=\"t-resizer\"\n (tuiDragStart)=\"onDragStart($event)\"\n (tuiDragContinues)=\"onDragContinues($event)\"\n (tuiDragEnd)=\"onDragEnd()\"\n >\n <span\n #resizerText\n class=\"t-resizer-text\"\n ></span>\n </button>\n</div>\n", styles: [":host{position:relative;display:block;min-width:100%;margin:1.5rem 0}.t-bg-toggle{position:absolute;bottom:calc(100% + .75rem);display:flex;align-items:center;justify-content:flex-end;pointer-events:none;width:100%}.t-bg-toggle>*{pointer-events:auto}.t-wrapper{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);display:flex;border:1px solid var(--tui-base-03);border-radius:var(--tui-radius-m);max-width:100%;min-height:6rem;width:100%;background-color:var(--tui-base-01);overflow:hidden}.t-wrapper.t-wrapper_transparent{background-image:linear-gradient(45deg,var(--tui-base-02) 25%,transparent 25%),linear-gradient(-45deg,var(--tui-base-02) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tui-base-02) 75%),linear-gradient(-45deg,transparent 75%,var(--tui-base-02) 75%);background-size:1.25rem 1.25rem;background-position:0 0,0 .625rem,.625rem -.625rem,-.625rem 0}.t-wrapper.t-wrapper_dark{background-color:#454e58;color:var(--tui-base-01)}.t-wrapper.t-wrapper_gray{background-color:#e5e7ea}.t-wrapper.t-wrapper_dark.t-wrapper_transparent{background-image:linear-gradient(45deg,var(--tui-focus) 25%,transparent 25%),linear-gradient(-45deg,var(--tui-focus) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tui-focus) 75%),linear-gradient(-45deg,transparent 75%,var(--tui-focus) 75%)}.t-wrapper.t-wrapper_gray.t-wrapper_transparent{background-image:linear-gradient(45deg,var(--tui-base-05) 25%,transparent 25%),linear-gradient(-45deg,var(--tui-base-05) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tui-base-05) 75%),linear-gradient(-45deg,transparent 75%,var(--tui-base-05) 75%)}:host-context(tui-root._mobile) .t-wrapper{min-height:auto}.t-content{flex:1 1 0;min-width:0;padding:1.5rem;box-sizing:border-box;overflow:hidden}:host-context(tui-root._mobile) .t-content{padding:1rem}.t-form{display:flex;flex-wrap:wrap;align-items:flex-start}.t-input-wrapper{width:100%;margin-bottom:.5rem}.t-expand{width:100%}.t-icon{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}.t-icon_rotated{transform:rotate(180deg)}.t-value{flex:1;background:var(--tui-clear-inverse);padding:.75rem;border-radius:.25rem}.t-mode{width:12.5rem}.t-select{max-width:15rem}.t-resizer{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:none;font-size:inherit;line-height:inherit;box-shadow:0 .5rem 1rem rgba(0,0,0,.16);position:relative;width:3.5rem;min-height:inherit;flex-shrink:0;border-left:1px solid var(--tui-base-03);cursor:col-resize;outline:none;background:var(--tui-base-01);color:var(--tui-text-01)}.t-resizer:before,.t-resizer:after{content:\"\";position:absolute;top:.75rem;left:50%;bottom:.75rem;width:1px;background:var(--tui-base-05)}.t-resizer:before{transform:translate(.125rem)}.t-resizer:after{transform:translate(-.1875rem)}:host-context(tui-root._mobile) .t-resizer{display:none}.t-resizer-text{font:var(--tui-font-text-s);position:relative;z-index:1;padding:.75rem;background:var(--tui-base-01)}.wrapper_light .t-resizer-text{background:#3e464e}.t-group,.t-checkbox{margin-left:.75rem}.t-button,.t-form-controls{margin-top:.75rem}@supports ((position: -webkit-sticky) or (position: sticky)){@media screen and (min-height: 37.5rem){:host{position:-webkit-sticky;position:sticky;top:4.625rem;z-index:2}}}\n"], components: [{ type: i1.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { type: i2.TuiSelectComponent, selector: "tui-select", inputs: ["stringify", "identityMatcher", "valueContent"] }, { type: i2.TuiDataListWrapperComponent, selector: "tui-data-list-wrapper:not([labels])", inputs: ["items"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }, { type: i2.TuiRadioBlockComponent, selector: "tui-radio-block", inputs: ["item", "identityMatcher", "contentAlign", "size", "hideRadio", "pseudoDisabled"] }, { type: i2.TuiCheckboxLabeledComponent, selector: "tui-checkbox-labeled", inputs: ["size"] }, { type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiExpandComponent, selector: "tui-expand", inputs: ["async", "expanded"] }], directives: [{ type: i1.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { type: i3.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.TuiSelectDirective, selector: "tui-select" }, { type: i1.TuiTextfieldSizeDirective, selector: "[tuiTextfieldSize]", inputs: ["tuiTextfieldSize"] }, { type: i1.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }, { type: i1.TuiHintOptionsDirective, selector: "[tuiHintContent]", inputs: ["tuiHintContent", "tuiHintDirection", "tuiHintAppearance", "tuiHintShowDelay", "tuiHintHideDelay"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i1.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { type: i1.TuiGroupDirective, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "adaptive", "collapsed", "rounded", "size"] }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1.TuiExpandContentDirective, selector: "[tuiExpandContent]" }, { type: i6.TuiDragDirective, selector: "[tuiDragStart], [tuiDragContinues], [tuiDragEnd]", outputs: ["tuiDragStart", "tuiDragContinues", "tuiDragEnd"] }], pipes: { "json": i4.JsonPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
112
112
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocDemoComponent, decorators: [{
113
113
  type: Component,
114
114
  args: [{
@@ -106,7 +106,7 @@ export class TuiDocDocumentationComponent {
106
106
  }
107
107
  }
108
108
  TuiDocDocumentationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocDocumentationComponent, deps: [{ token: ChangeDetectorRef }, { token: TUI_DOC_DOCUMENTATION_TEXTS }], target: i0.ɵɵFactoryTarget.Component });
109
- TuiDocDocumentationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDocDocumentationComponent, selector: "tui-doc-documentation", inputs: { heading: "heading", showValues: "showValues", isAPI: "isAPI" }, queries: [{ propertyName: "propertiesConnectors", predicate: TuiDocDocumentationPropertyConnectorDirective }], ngImport: i0, template: "<h1\n *ngIf=\"heading\"\n class=\"t-heading\"\n>\n {{ heading }}\n</h1>\n<ng-content></ng-content>\n<table class=\"t-table\">\n <tr class=\"t-row t-row_header\">\n <th class=\"t-th t-cell t-cell_prop\">{{ texts[2] }}</th>\n <th class=\"t-th\">{{ type }}</th>\n <th\n *ngIf=\"showValues && !isAPI\"\n class=\"t-th t-cell t-cell_value\"\n >\n {{ texts[3] }}\n </th>\n </tr>\n <tr\n *ngFor=\"let propertyConnector of propertiesConnectors\"\n class=\"t-row\"\n [class.t-deprecated]=\"propertyConnector.documentationPropertyDeprecated\"\n >\n <td class=\"t-cell\">\n <div\n automation-id=\"tui-documentation__property-name\"\n class=\"t-property\"\n >\n {{ stripOptional(propertyConnector.attrName) }}\n <tui-badge\n *ngIf=\"isOptional(propertyConnector.attrName)\"\n size=\"s\"\n value=\"Optional\"\n ></tui-badge>\n </div>\n <span\n *ngIf=\"propertyConnector.documentationPropertyDeprecated\"\n class=\"t-deprecated-label\"\n >\n deprecated\n </span>\n <ng-container [ngTemplateOutlet]=\"propertyConnector.template\"></ng-container>\n </td>\n <td class=\"t-cell\">\n <span class=\"type\">\n {{ propertyConnector.documentationPropertyType }}\n <tui-tooltip\n *ngIf=\"showContentTooltip(propertyConnector.documentationPropertyType)\"\n [describeId]=\"propertyConnector.attrName\"\n [content]=\"content\"\n >\n <ng-template #content>\n {{ texts[4] }}\n <a\n tuiLink\n tuiMode=\"onDark\"\n target=\"_blank\"\n href=\"https://github.com/tinkoff/ng-polymorpheus\"\n >\n <code>ng-polymorpheus</code>\n </a>\n </ng-template>\n </tui-tooltip>\n </span>\n </td>\n <td\n *ngIf=\"showValues\"\n class=\"t-cell\"\n >\n <ng-container *ngIf=\"propertyConnector.shouldShowValues; else elseEmitter\">\n <tui-select\n *ngIf=\"propertyConnector.hasItems; else noItems\"\n tuiTextfieldSize=\"m\"\n tuiDropdownLimitWidth=\"min\"\n [tuiTextfieldCleaner]=\"showCleaner(propertyConnector.documentationPropertyType)\"\n [tuiTextfieldLabelOutside]=\"true\"\n [nativeId]=\"propertyConnector.attrName\"\n [valueContent]=\"selectContent\"\n [ngModel]=\"propertyConnector.documentationPropertyValue\"\n (ngModelChange)=\"propertyConnector.onValueChange($event)\"\n >\n <code class=\"t-exception\">null</code>\n <tui-data-list-wrapper\n *tuiDataList\n [items]=\"propertyConnector.documentationPropertyValues\"\n [itemContent]=\"selectContent\"\n ></tui-data-list-wrapper>\n </tui-select>\n <ng-template\n #selectContent\n let-data\n >\n <code>{{ inspectAny(data) }}</code>\n </ng-template>\n\n <ng-template #noItems>\n <ng-container [ngSwitch]=\"propertyConnector.documentationPropertyType\">\n <tui-toggle\n *ngSwitchCase=\"'boolean'\"\n size=\"l\"\n [nativeId]=\"propertyConnector.attrName\"\n [showIcons]=\"true\"\n [ngModel]=\"propertyConnector.documentationPropertyValue\"\n (ngModelChange)=\"propertyConnector.onValueChange($event)\"\n ></tui-toggle>\n\n <tui-primitive-textfield\n *ngSwitchCase=\"'string'\"\n tuiTextfieldSize=\"m\"\n [nativeId]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldCleaner]=\"true\"\n [value]=\"propertyConnector.documentationPropertyValue || ''\"\n (valueChange)=\"propertyConnector.onValueChange($event)\"\n ></tui-primitive-textfield>\n\n <div\n *ngSwitchCase=\"'color'\"\n tuiGroup\n >\n <tui-primitive-textfield\n tuiTextfieldSize=\"m\"\n [attr.id]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiInputOpacity]=\"getOpacity(propertyConnector.documentationPropertyValue)\"\n [value]=\"getColor(propertyConnector.documentationPropertyValue)\"\n (valueChange)=\"onColorChange(propertyConnector, $event)\"\n >\n <input\n tuiTextfield\n type=\"text\"\n />\n </tui-primitive-textfield>\n <tui-input-count\n tuiTextfieldSize=\"m\"\n [max]=\"100\"\n [ngModel]=\"getOpacity(propertyConnector.documentationPropertyValue)\"\n (ngModelChange)=\"onOpacityChange(propertyConnector, $event)\"\n >\n Opacity\n </tui-input-count>\n </div>\n\n <tui-input-count\n *ngSwitchCase=\"'number'\"\n tuiTextfieldSize=\"m\"\n [nativeId]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [ngModel]=\"propertyConnector.documentationPropertyValue\"\n (ngModelChange)=\"propertyConnector.onValueChange($event)\"\n ></tui-input-count>\n\n <ng-container *ngSwitchCase=\"'PolymorpheusContent'\">\n <tui-primitive-textfield\n *ngIf=\"isPrimitivePolymorpheusContent(propertyConnector.documentationPropertyValue)\"\n tuiTextfieldSize=\"m\"\n [nativeId]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldCleaner]=\"true\"\n [value]=\"propertyConnector.documentationPropertyValue.toString()\"\n (valueChange)=\"propertyConnector.onValueChange($event)\"\n >\n Default content\n </tui-primitive-textfield>\n </ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n\n <ng-template #elseEmitter>\n <tui-notification\n class=\"t-output\"\n [@emitEvent]=\"propertyConnector.emits$ | async\"\n >\n Emit!\n </tui-notification>\n </ng-template>\n </td>\n </tr>\n</table>\n", styles: [":host{display:block;min-width:100%}.t-table{width:100%;table-layout:fixed}.t-row:not(:last-child){border-bottom:1px solid var(--tui-base-03)}:host-context(tui-root._mobile) .t-row{display:flex;flex-wrap:wrap}:host-context(tui-root._mobile) .t-row_header{display:none}.t-cell{padding:1rem 1rem .875rem}.t-cell:first-child{padding-left:0}.t-cell:last-child{padding-right:0;text-align:right}.t-cell_prop{width:40%}.t-cell_value{max-width:20rem}:host-context(tui-root._mobile) .t-cell_value{width:9.375rem}:host-context(tui-root._mobile) .t-cell{width:100%;height:auto;padding:.5rem 0;text-align:left}.t-th{padding:.5rem 1rem;color:var(--tui-text-02);font-weight:normal;text-align:left}.t-property{font:var(--tui-font-text-m);margin-bottom:.25rem;font-family:monospace;color:#8f75d1}:host-context(tui-root._mobile) .t-property{padding:.5rem 0}.t-type{font-family:monospace}.t-deprecated{background-color:var(--tui-error-bg);box-shadow:-1rem 0 var(--tui-error-bg),1rem 0 var(--tui-error-bg)}.t-deprecated-label{margin-right:.125rem;color:var(--tui-error-fill)}.t-exception{display:block;width:-webkit-max-content;width:-moz-max-content;width:max-content}.t-output{text-align:left;opacity:0}.t-heading{font:var(--tui-font-heading-4)}\n"], components: [{ type: i1.TuiBadgeComponent, selector: "tui-badge", inputs: ["value", "size", "status", "hoverable"] }, { type: i2.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }, { type: i2.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { type: i1.TuiSelectComponent, selector: "tui-select", inputs: ["stringify", "identityMatcher", "valueContent"] }, { type: i1.TuiDataListWrapperComponent, selector: "tui-data-list-wrapper:not([labels])", inputs: ["items"] }, { type: i1.TuiToggleComponent, selector: "tui-toggle", inputs: ["singleColor", "showIcons", "showLoader", "size"] }, { type: i2.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }, { type: i2.TuiTextfieldComponent, selector: "input[tuiTextfield], textarea[tuiTextfield]" }, { type: i1.TuiInputCountComponent, selector: "tui-input-count", inputs: ["step", "min", "max", "hideButtons", "prefix", "postfix"] }, { type: i2.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "status"], outputs: ["close"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { type: i1.TuiSelectDirective, selector: "tui-select" }, { type: i2.TuiTextfieldSizeDirective, selector: "[tuiTextfieldSize]", inputs: ["tuiTextfieldSize"] }, { type: i2.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight]", inputs: ["tuiDropdownAlign", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight"] }, { type: i2.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }, { type: i2.TuiTextfieldLabelOutsideDirective, selector: "[tuiTextfieldLabelOutside]", inputs: ["tuiTextfieldLabelOutside"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i2.TuiGroupDirective, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "adaptive", "collapsed", "rounded", "size"] }, { type: i5.TuiInputOpacityDirective, selector: "[tuiInputOpacity]", inputs: ["tuiInputOpacity"] }, { type: i1.TuiInputCountDirective, selector: "tui-input-count" }], pipes: { "async": i3.AsyncPipe }, animations: [
109
+ TuiDocDocumentationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDocDocumentationComponent, selector: "tui-doc-documentation", inputs: { heading: "heading", showValues: "showValues", isAPI: "isAPI" }, queries: [{ propertyName: "propertiesConnectors", predicate: TuiDocDocumentationPropertyConnectorDirective }], ngImport: i0, template: "<h1\n *ngIf=\"heading\"\n class=\"t-heading\"\n>\n {{ heading }}\n</h1>\n<ng-content></ng-content>\n<table class=\"t-table\">\n <tr class=\"t-row t-row_header\">\n <th class=\"t-th t-cell t-cell_prop\">{{ texts[2] }}</th>\n <th class=\"t-th\">{{ type }}</th>\n <th\n *ngIf=\"showValues && !isAPI\"\n class=\"t-th t-cell t-th_value\"\n >\n {{ texts[3] }}\n </th>\n </tr>\n <tr\n *ngFor=\"let propertyConnector of propertiesConnectors\"\n class=\"t-row\"\n [class.t-deprecated]=\"propertyConnector.documentationPropertyDeprecated\"\n >\n <td class=\"t-cell\">\n <div\n automation-id=\"tui-documentation__property-name\"\n class=\"t-property\"\n >\n {{ stripOptional(propertyConnector.attrName) }}\n <tui-badge\n *ngIf=\"isOptional(propertyConnector.attrName)\"\n size=\"s\"\n value=\"Optional\"\n ></tui-badge>\n </div>\n <span\n *ngIf=\"propertyConnector.documentationPropertyDeprecated\"\n class=\"t-deprecated-label\"\n >\n deprecated\n </span>\n <ng-container [ngTemplateOutlet]=\"propertyConnector.template\"></ng-container>\n </td>\n <td class=\"t-cell\">\n <span class=\"type\">\n {{ propertyConnector.documentationPropertyType }}\n <tui-tooltip\n *ngIf=\"showContentTooltip(propertyConnector.documentationPropertyType)\"\n [describeId]=\"propertyConnector.attrName\"\n [content]=\"content\"\n >\n <ng-template #content>\n {{ texts[4] }}\n <a\n tuiLink\n tuiMode=\"onDark\"\n target=\"_blank\"\n href=\"https://github.com/tinkoff/ng-polymorpheus\"\n >\n <code>ng-polymorpheus</code>\n </a>\n </ng-template>\n </tui-tooltip>\n </span>\n </td>\n <td\n *ngIf=\"showValues\"\n class=\"t-cell t-cell_value\"\n >\n <ng-container *ngIf=\"propertyConnector.shouldShowValues; else elseEmitter\">\n <tui-select\n *ngIf=\"propertyConnector.hasItems; else noItems\"\n tuiTextfieldSize=\"m\"\n tuiDropdownLimitWidth=\"min\"\n [tuiTextfieldCleaner]=\"showCleaner(propertyConnector.documentationPropertyType)\"\n [tuiTextfieldLabelOutside]=\"true\"\n [nativeId]=\"propertyConnector.attrName\"\n [valueContent]=\"selectContent\"\n [ngModel]=\"propertyConnector.documentationPropertyValue\"\n (ngModelChange)=\"propertyConnector.onValueChange($event)\"\n >\n <code class=\"t-exception\">null</code>\n <tui-data-list-wrapper\n *tuiDataList\n [items]=\"propertyConnector.documentationPropertyValues\"\n [itemContent]=\"selectContent\"\n ></tui-data-list-wrapper>\n </tui-select>\n <ng-template\n #selectContent\n let-data\n >\n <code>{{ inspectAny(data) }}</code>\n </ng-template>\n\n <ng-template #noItems>\n <ng-container [ngSwitch]=\"propertyConnector.documentationPropertyType\">\n <tui-toggle\n *ngSwitchCase=\"'boolean'\"\n size=\"l\"\n [nativeId]=\"propertyConnector.attrName\"\n [showIcons]=\"true\"\n [ngModel]=\"propertyConnector.documentationPropertyValue\"\n (ngModelChange)=\"propertyConnector.onValueChange($event)\"\n ></tui-toggle>\n\n <tui-primitive-textfield\n *ngSwitchCase=\"'string'\"\n tuiTextfieldSize=\"m\"\n [nativeId]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldCleaner]=\"true\"\n [value]=\"propertyConnector.documentationPropertyValue || ''\"\n (valueChange)=\"propertyConnector.onValueChange($event)\"\n ></tui-primitive-textfield>\n\n <div\n *ngSwitchCase=\"'color'\"\n tuiGroup\n >\n <tui-primitive-textfield\n tuiTextfieldSize=\"m\"\n [attr.id]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiInputOpacity]=\"getOpacity(propertyConnector.documentationPropertyValue)\"\n [value]=\"getColor(propertyConnector.documentationPropertyValue)\"\n (valueChange)=\"onColorChange(propertyConnector, $event)\"\n >\n <input\n tuiTextfield\n type=\"text\"\n />\n </tui-primitive-textfield>\n <tui-input-count\n tuiTextfieldSize=\"m\"\n [max]=\"100\"\n [ngModel]=\"getOpacity(propertyConnector.documentationPropertyValue)\"\n (ngModelChange)=\"onOpacityChange(propertyConnector, $event)\"\n >\n Opacity\n </tui-input-count>\n </div>\n\n <tui-input-count\n *ngSwitchCase=\"'number'\"\n tuiTextfieldSize=\"m\"\n [nativeId]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [ngModel]=\"propertyConnector.documentationPropertyValue\"\n (ngModelChange)=\"propertyConnector.onValueChange($event)\"\n ></tui-input-count>\n\n <ng-container *ngSwitchCase=\"'PolymorpheusContent'\">\n <tui-primitive-textfield\n *ngIf=\"isPrimitivePolymorpheusContent(propertyConnector.documentationPropertyValue)\"\n tuiTextfieldSize=\"m\"\n [nativeId]=\"propertyConnector.attrName\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldCleaner]=\"true\"\n [value]=\"propertyConnector.documentationPropertyValue.toString()\"\n (valueChange)=\"propertyConnector.onValueChange($event)\"\n >\n Default content\n </tui-primitive-textfield>\n </ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n\n <ng-template #elseEmitter>\n <tui-notification\n class=\"t-output\"\n [@emitEvent]=\"propertyConnector.emits$ | async\"\n >\n Emit!\n </tui-notification>\n </ng-template>\n </td>\n </tr>\n</table>\n", styles: [":host{display:block;min-width:100%}.t-table{width:100%;table-layout:fixed}.t-row:not(:last-child){border-bottom:1px solid var(--tui-base-03)}:host-context(tui-root._mobile) .t-row{display:flex;flex-wrap:wrap}:host-context(tui-root._mobile) .t-row_header{display:none}.t-cell{padding:1rem 1rem .875rem}.t-cell:first-child{padding-left:0}.t-cell:last-child{padding-right:0}.t-cell_prop{width:40%}.t-cell_value{text-align:right}:host-context(tui-root._mobile) .t-cell{width:100%;height:auto;padding:.5rem 0;text-align:left}.t-th{padding:.5rem 1rem;color:var(--tui-text-02);font-weight:normal;text-align:left}.t-th_value{max-width:20rem;text-align:right}:host-context(tui-root._mobile) .t-th_value{width:9.375rem}.t-property{font:var(--tui-font-text-m);margin-bottom:.25rem;font-family:monospace;color:#8f75d1}:host-context(tui-root._mobile) .t-property{padding:.5rem 0}.t-type{font-family:monospace}.t-deprecated{background-color:var(--tui-error-bg);box-shadow:-1rem 0 var(--tui-error-bg),1rem 0 var(--tui-error-bg)}.t-deprecated-label{margin-right:.125rem;color:var(--tui-error-fill)}.t-exception{display:block;width:-webkit-max-content;width:-moz-max-content;width:max-content}.t-output{text-align:left;opacity:0}.t-heading{font:var(--tui-font-heading-4)}\n"], components: [{ type: i1.TuiBadgeComponent, selector: "tui-badge", inputs: ["value", "size", "status", "hoverable"] }, { type: i2.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }, { type: i2.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { type: i1.TuiSelectComponent, selector: "tui-select", inputs: ["stringify", "identityMatcher", "valueContent"] }, { type: i1.TuiDataListWrapperComponent, selector: "tui-data-list-wrapper:not([labels])", inputs: ["items"] }, { type: i1.TuiToggleComponent, selector: "tui-toggle", inputs: ["singleColor", "showIcons", "showLoader", "size"] }, { type: i2.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }, { type: i2.TuiTextfieldComponent, selector: "input[tuiTextfield], textarea[tuiTextfield]" }, { type: i1.TuiInputCountComponent, selector: "tui-input-count", inputs: ["step", "min", "max", "hideButtons", "prefix", "postfix"] }, { type: i2.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "status"], outputs: ["close"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { type: i1.TuiSelectDirective, selector: "tui-select" }, { type: i2.TuiTextfieldSizeDirective, selector: "[tuiTextfieldSize]", inputs: ["tuiTextfieldSize"] }, { type: i2.TuiDropdownOptionsDirective, selector: "[tuiDropdownAlign], [tuiDropdownDirection], [tuiDropdownLimitWidth], [tuiDropdownMinHeight], [tuiDropdownMaxHeight]", inputs: ["tuiDropdownAlign", "tuiDropdownDirection", "tuiDropdownLimitWidth", "tuiDropdownMinHeight", "tuiDropdownMaxHeight"] }, { type: i2.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }, { type: i2.TuiTextfieldLabelOutsideDirective, selector: "[tuiTextfieldLabelOutside]", inputs: ["tuiTextfieldLabelOutside"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i2.TuiGroupDirective, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "adaptive", "collapsed", "rounded", "size"] }, { type: i5.TuiInputOpacityDirective, selector: "[tuiInputOpacity]", inputs: ["tuiInputOpacity"] }, { type: i1.TuiInputCountDirective, selector: "tui-input-count" }], pipes: { "async": i3.AsyncPipe }, animations: [
110
110
  trigger(`emitEvent`, [
111
111
  transition(`:increment`, [style({ opacity: 1 }), animate(`500ms ease-in`)]),
112
112
  ]),
@@ -140,4 +140,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
140
140
  type: ContentChildren,
141
141
  args: [TuiDocDocumentationPropertyConnectorDirective]
142
142
  }] } });
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1kb2Mvc3JjL2NvbXBvbmVudHMvZG9jdW1lbnRhdGlvbi9kb2N1bWVudGF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWRvYy9zcmMvY29tcG9uZW50cy9kb2N1bWVudGF0aW9uL2RvY3VtZW50YXRpb24udGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixNQUFNLEVBQ04sS0FBSyxHQUVSLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxXQUFXLEVBQ1gsV0FBVyxFQUNYLFdBQVcsRUFDWCxXQUFXLEVBQ1gsMkJBQTJCLEVBQzNCLFdBQVcsRUFDWCxRQUFRLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBQyw2Q0FBNkMsRUFBQyxNQUFNLDhDQUE4QyxDQUFDOzs7Ozs7O0FBRTNHLG1EQUFtRDtBQUNuRCwyQ0FBMkM7QUFZM0MsTUFBTSxPQUFPLDRCQUE0QjtJQWdCckMsWUFDZ0QsaUJBQW9DLEVBRXZFLEtBQStDO1FBRlosc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUV2RSxV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VTtzQkFEVCxLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixvQkFBb0I7c0JBRG5CLGVBQWU7dUJBQUMsNkNBQTZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHthbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRU1QVFlfUVVFUlksXG4gICAgdHVpSGV4VG9SZ2IsXG4gICAgdHVpSXNOdW1iZXIsXG4gICAgdHVpSXNTdHJpbmcsXG4gICAgdHVpSXRlbXNRdWVyeUxpc3RPYnNlcnZhYmxlLFxuICAgIHR1aVJnYlRvSGV4LFxuICAgIHR1aVdhdGNoLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7bWVyZ2V9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUVUlfRE9DX0RPQ1VNRU5UQVRJT05fVEVYVFN9IGZyb20gJy4uLy4uL3Rva2Vucy9pMThuJztcbmltcG9ydCB7dHVpSW5zcGVjdEFueX0gZnJvbSAnLi4vLi4vdXRpbHMvaW5zcGVjdCc7XG5pbXBvcnQge1R1aURvY0RvY3VtZW50YXRpb25Qcm9wZXJ0eUNvbm5lY3RvckRpcmVjdGl2ZX0gZnJvbSAnLi9kb2N1bWVudGF0aW9uLXByb3BlcnR5LWNvbm5lY3Rvci5kaXJlY3RpdmUnO1xuXG4vLyBAYmFkIFRPRE8gc3Vic2NyaWJlIHByb3BlcnRpZXNDb25uZWN0b3JzIGNoYW5nZXNcbi8vIEBiYWQgVE9ETyByZWZhY3RvciB0byBtYWtlIG1vcmUgZmxleGlibGVcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWRvYy1kb2N1bWVudGF0aW9uYCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vZG9jdW1lbnRhdGlvbi50ZW1wbGF0ZS5odG1sYCxcbiAgICBzdHlsZVVybHM6IFtgLi9kb2N1bWVudGF0aW9uLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoYGVtaXRFdmVudGAsIFtcbiAgICAgICAgICAgIHRyYW5zaXRpb24oYDppbmNyZW1lbnRgLCBbc3R5bGUoe29wYWNpdHk6IDF9KSwgYW5pbWF0ZShgNTAwbXMgZWFzZS1pbmApXSksXG4gICAgICAgIF0pLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURvY0RvY3VtZW50YXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBASW5wdXQoKVxuICAgIGhlYWRpbmcgPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgc2hvd1ZhbHVlcyA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIGlzQVBJID0gZmFsc2U7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKFR1aURvY0RvY3VtZW50YXRpb25Qcm9wZXJ0eUNvbm5lY3RvckRpcmVjdGl2ZSlcbiAgICBwcm9wZXJ0aWVzQ29ubmVjdG9yczogUXVlcnlMaXN0PFR1aURvY0RvY3VtZW50YXRpb25Qcm9wZXJ0eUNvbm5lY3RvckRpcmVjdGl2ZTxhbnk+PiA9XG4gICAgICAgIEVNUFRZX1FVRVJZO1xuXG4gICAgYWN0aXZlSXRlbUluZGV4ID0gMDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQEluamVjdChUVUlfRE9DX0RPQ1VNRU5UQVRJT05fVEVYVFMpXG4gICAgICAgIHJlYWRvbmx5IHRleHRzOiBbc3RyaW5nLCBzdHJpbmcsIHN0cmluZywgc3RyaW5nLCBzdHJpbmddLFxuICAgICkge31cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdHVpSXRlbXNRdWVyeUxpc3RPYnNlcnZhYmxlKHRoaXMucHJvcGVydGllc0Nvbm5lY3RvcnMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoaXRlbXMgPT4gbWVyZ2UoLi4uaXRlbXMubWFwKCh7Y2hhbmdlZCR9KSA9PiBjaGFuZ2VkJCkpKSxcbiAgICAgICAgICAgICAgICB0dWlXYXRjaCh0aGlzLmNoYW5nZURldGVjdG9yUmVmKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0FQSSA/IHRoaXMudGV4dHNbMF0gOiB0aGlzLnRleHRzWzFdO1xuICAgIH1cblxuICAgIGdldENvbG9yKGNvbG9yOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBpZiAoY29sb3IubGVuZ3RoID09PSA0KSB7XG4gICAgICAgICAgICByZXR1cm4gY29sb3JcbiAgICAgICAgICAgICAgICAuc3BsaXQoYGApXG4gICAgICAgICAgICAgICAgLnJlZHVjZTxzdHJpbmdbXT4oKHJlc3VsdCwgY3VycmVudCkgPT4gWy4uLnJlc3VsdCwgY3VycmVudCwgY3VycmVudF0sIFtdKVxuICAgICAgICAgICAgICAgIC5qb2luKGBgKVxuICAgICAgICAgICAgICAgIC5yZXBsYWNlKGAjYCwgYGApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbG9yLnN0YXJ0c1dpdGgoYCNgKSkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbG9yID09PSBgdHJhbnNwYXJlbnRgKSB7XG4gICAgICAgICAgICByZXR1cm4gYCMwMDAwMDBgO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyc2VkID0gY29sb3JcbiAgICAgICAgICAgIC5yZXBsYWNlKGByZ2IoYCwgYGApXG4gICAgICAgICAgICAucmVwbGFjZShgcmdiYShgLCBgYClcbiAgICAgICAgICAgIC5yZXBsYWNlKGApYCwgYGApXG4gICAgICAgICAgICAucmVwbGFjZShgIGAsIGBgKVxuICAgICAgICAgICAgLnNwbGl0KGAsYClcbiAgICAgICAgICAgIC5tYXAodiA9PiBOdW1iZXIucGFyc2VJbnQodiwgMTApKSBhcyBbbnVtYmVyLCBudW1iZXIsIG51bWJlcl07XG5cbiAgICAgICAgcmV0dXJuIHR1aVJnYlRvSGV4KC4uLnBhcnNlZCk7XG4gICAgfVxuXG4gICAgZ2V0T3BhY2l0eShjb2xvcjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKGNvbG9yLnN0YXJ0c1dpdGgoYCNgKSB8fCBjb2xvci5zdGFydHNXaXRoKGByZ2IoYCkpIHtcbiAgICAgICAgICAgIHJldHVybiAxMDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29sb3IgPT09IGB0cmFuc3BhcmVudGApIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbGFzdENvbW1hID0gY29sb3IubGFzdEluZGV4T2YoYCxgKTtcbiAgICAgICAgY29uc3QgcGFyc2VkID0gY29sb3JcbiAgICAgICAgICAgIC5zbGljZShsYXN0Q29tbWEpXG4gICAgICAgICAgICAucmVwbGFjZShgKWAsIGBgKVxuICAgICAgICAgICAgLnJlcGxhY2UoYCBgLCBgYClcbiAgICAgICAgICAgIC5yZXBsYWNlKGAsYCwgYGApO1xuXG4gICAgICAgIHJldHVybiBNYXRoLnJvdW5kKE51bWJlci5wYXJzZUZsb2F0KHBhcnNlZCkgKiAxMDApO1xuICAgIH1cblxuICAgIG9uQ29sb3JDaGFuZ2UoXG4gICAgICAgIGNvbm5lY3RvcjogVHVpRG9jRG9jdW1lbnRhdGlvblByb3BlcnR5Q29ubmVjdG9yRGlyZWN0aXZlPHN0cmluZz4sXG4gICAgICAgIGNvbG9yOiBzdHJpbmcsXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG9wYWNpdHkgPSB0aGlzLmdldE9wYWNpdHkoY29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlIHx8IGBgKTtcblxuICAgICAgICBpZiAob3BhY2l0eSA9PT0gMTAwKSB7XG4gICAgICAgICAgICBjb25uZWN0b3Iub25WYWx1ZUNoYW5nZShjb2xvcik7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJnYiA9IHR1aUhleFRvUmdiKGNvbG9yKS5qb2luKGAsIGApO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBgcmdiYSgke3JnYn0sICR7b3BhY2l0eSAvIDEwMH0pYDtcblxuICAgICAgICBjb25uZWN0b3Iub25WYWx1ZUNoYW5nZShyZXN1bHQpO1xuICAgIH1cblxuICAgIG9uT3BhY2l0eUNoYW5nZShcbiAgICAgICAgY29ubmVjdG9yOiBUdWlEb2NEb2N1bWVudGF0aW9uUHJvcGVydHlDb25uZWN0b3JEaXJlY3RpdmU8c3RyaW5nPixcbiAgICAgICAgb3BhY2l0eTogbnVtYmVyLFxuICAgICk6IHZvaWQge1xuICAgICAgICBjb25zdCBoZXggPSB0aGlzLmdldENvbG9yKGNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZSB8fCBgYCk7XG4gICAgICAgIGNvbnN0IHJnYiA9IHR1aUhleFRvUmdiKGhleCk7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGByZ2JhKCR7cmdifSwgJHtvcGFjaXR5IC8gMTAwfSlgO1xuXG4gICAgICAgIGNvbm5lY3Rvci5vblZhbHVlQ2hhbmdlKHJlc3VsdCk7XG4gICAgfVxuXG4gICAgc3RyaXBPcHRpb25hbChuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gbmFtZS5yZXBsYWNlKGA/YCwgYGApO1xuICAgIH1cblxuICAgIGlzT3B0aW9uYWwobmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBuYW1lLmluY2x1ZGVzKGA/YCk7XG4gICAgfVxuXG4gICAgaXNQcmltaXRpdmVQb2x5bW9ycGhldXNDb250ZW50KHZhbHVlOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc1N0cmluZyh2YWx1ZSkgfHwgdHVpSXNOdW1iZXIodmFsdWUpO1xuICAgIH1cblxuICAgIHNob3dDbGVhbmVyKHR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHlwZS5pbmNsdWRlcyhgbnVsbGApO1xuICAgIH1cblxuICAgIHNob3dDb250ZW50VG9vbHRpcCh0eXBlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR5cGUuaW5jbHVkZXMoYFBvbHltb3JwaGV1c0NvbnRlbnRgKTtcbiAgICB9XG5cbiAgICBpbnNwZWN0QW55KGRhdGE6IHVua25vd24pOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdHVpSW5zcGVjdEFueShkYXRhLCAyKTtcbiAgICB9XG59XG4iLCI8aDFcbiAgICAqbmdJZj1cImhlYWRpbmdcIlxuICAgIGNsYXNzPVwidC1oZWFkaW5nXCJcbj5cbiAgICB7eyBoZWFkaW5nIH19XG48L2gxPlxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPHRhYmxlIGNsYXNzPVwidC10YWJsZVwiPlxuICAgIDx0ciBjbGFzcz1cInQtcm93IHQtcm93X2hlYWRlclwiPlxuICAgICAgICA8dGggY2xhc3M9XCJ0LXRoIHQtY2VsbCB0LWNlbGxfcHJvcFwiPnt7IHRleHRzWzJdIH19PC90aD5cbiAgICAgICAgPHRoIGNsYXNzPVwidC10aFwiPnt7IHR5cGUgfX08L3RoPlxuICAgICAgICA8dGhcbiAgICAgICAgICAgICpuZ0lmPVwic2hvd1ZhbHVlcyAmJiAhaXNBUElcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LXRoIHQtY2VsbCB0LWNlbGxfdmFsdWVcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyB0ZXh0c1szXSB9fVxuICAgICAgICA8L3RoPlxuICAgIDwvdHI+XG4gICAgPHRyXG4gICAgICAgICpuZ0Zvcj1cImxldCBwcm9wZXJ0eUNvbm5lY3RvciBvZiBwcm9wZXJ0aWVzQ29ubmVjdG9yc1wiXG4gICAgICAgIGNsYXNzPVwidC1yb3dcIlxuICAgICAgICBbY2xhc3MudC1kZXByZWNhdGVkXT1cInByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eURlcHJlY2F0ZWRcIlxuICAgID5cbiAgICAgICAgPHRkIGNsYXNzPVwidC1jZWxsXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1kb2N1bWVudGF0aW9uX19wcm9wZXJ0eS1uYW1lXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtcHJvcGVydHlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IHN0cmlwT3B0aW9uYWwocHJvcGVydHlDb25uZWN0b3IuYXR0ck5hbWUpIH19XG4gICAgICAgICAgICAgICAgPHR1aS1iYWRnZVxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImlzT3B0aW9uYWwocHJvcGVydHlDb25uZWN0b3IuYXR0ck5hbWUpXCJcbiAgICAgICAgICAgICAgICAgICAgc2l6ZT1cInNcIlxuICAgICAgICAgICAgICAgICAgICB2YWx1ZT1cIk9wdGlvbmFsXCJcbiAgICAgICAgICAgICAgICA+PC90dWktYmFkZ2U+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlEZXByZWNhdGVkXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtZGVwcmVjYXRlZC1sYWJlbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgZGVwcmVjYXRlZFxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJwcm9wZXJ0eUNvbm5lY3Rvci50ZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgY2xhc3M9XCJ0LWNlbGxcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHlwZVwiPlxuICAgICAgICAgICAgICAgIHt7IHByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVR5cGUgfX1cbiAgICAgICAgICAgICAgICA8dHVpLXRvb2x0aXBcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzaG93Q29udGVudFRvb2x0aXAocHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VHlwZSlcIlxuICAgICAgICAgICAgICAgICAgICBbZGVzY3JpYmVJZF09XCJwcm9wZXJ0eUNvbm5lY3Rvci5hdHRyTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjb250ZW50XT1cImNvbnRlbnRcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgdGV4dHNbNF0gfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpTGlua1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR1aU1vZGU9XCJvbkRhcmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj1cImh0dHBzOi8vZ2l0aHViLmNvbS90aW5rb2ZmL25nLXBvbHltb3JwaGV1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvZGU+bmctcG9seW1vcnBoZXVzPC9jb2RlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvdHVpLXRvb2x0aXA+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDx0ZFxuICAgICAgICAgICAgKm5nSWY9XCJzaG93VmFsdWVzXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1jZWxsXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInByb3BlcnR5Q29ubmVjdG9yLnNob3VsZFNob3dWYWx1ZXM7IGVsc2UgZWxzZUVtaXR0ZXJcIj5cbiAgICAgICAgICAgICAgICA8dHVpLXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInByb3BlcnR5Q29ubmVjdG9yLmhhc0l0ZW1zOyBlbHNlIG5vSXRlbXNcIlxuICAgICAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICAgIHR1aURyb3Bkb3duTGltaXRXaWR0aD1cIm1pblwiXG4gICAgICAgICAgICAgICAgICAgIFt0dWlUZXh0ZmllbGRDbGVhbmVyXT1cInNob3dDbGVhbmVyKHByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVR5cGUpXCJcbiAgICAgICAgICAgICAgICAgICAgW3R1aVRleHRmaWVsZExhYmVsT3V0c2lkZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgW25hdGl2ZUlkXT1cInByb3BlcnR5Q29ubmVjdG9yLmF0dHJOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlQ29udGVudF09XCJzZWxlY3RDb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwicHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwcm9wZXJ0eUNvbm5lY3Rvci5vblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGNvZGUgY2xhc3M9XCJ0LWV4Y2VwdGlvblwiPm51bGw8L2NvZGU+XG4gICAgICAgICAgICAgICAgICAgIDx0dWktZGF0YS1saXN0LXdyYXBwZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICp0dWlEYXRhTGlzdFxuICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cInByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXRlbUNvbnRlbnRdPVwic2VsZWN0Q29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgID48L3R1aS1kYXRhLWxpc3Qtd3JhcHBlcj5cbiAgICAgICAgICAgICAgICA8L3R1aS1zZWxlY3Q+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgICAgICAgICNzZWxlY3RDb250ZW50XG4gICAgICAgICAgICAgICAgICAgIGxldC1kYXRhXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8Y29kZT57eyBpbnNwZWN0QW55KGRhdGEpIH19PC9jb2RlPlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI25vSXRlbXM+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVR5cGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0dWktdG9nZ2xlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidib29sZWFuJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cImxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYXRpdmVJZF09XCJwcm9wZXJ0eUNvbm5lY3Rvci5hdHRyTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dJY29uc109XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicHJvcGVydHlDb25uZWN0b3Iub25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L3R1aS10b2dnbGU+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0dWktcHJpbWl0aXZlLXRleHRmaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInc3RyaW5nJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpVGV4dGZpZWxkU2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYXRpdmVJZF09XCJwcm9wZXJ0eUNvbm5lY3Rvci5hdHRyTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R1aVRleHRmaWVsZExhYmVsT3V0c2lkZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHVpVGV4dGZpZWxkQ2xlYW5lcl09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwicHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWUgfHwgJydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJwcm9wZXJ0eUNvbm5lY3Rvci5vblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvdHVpLXByaW1pdGl2ZS10ZXh0ZmllbGQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ2NvbG9yJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpVGV4dGZpZWxkU2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJwcm9wZXJ0eUNvbm5lY3Rvci5hdHRyTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0dWlUZXh0ZmllbGRMYWJlbE91dHNpZGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0dWlJbnB1dE9wYWNpdHldPVwiZ2V0T3BhY2l0eShwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiZ2V0Q29sb3IocHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uQ29sb3JDaGFuZ2UocHJvcGVydHlDb25uZWN0b3IsICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3R1aS1wcmltaXRpdmUtdGV4dGZpZWxkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0dWktaW5wdXQtY291bnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpVGV4dGZpZWxkU2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF4XT1cIjEwMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImdldE9wYWNpdHkocHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25PcGFjaXR5Q2hhbmdlKHByb3BlcnR5Q29ubmVjdG9yLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9wYWNpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3R1aS1pbnB1dC1jb3VudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHVpLWlucHV0LWNvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidudW1iZXInXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25hdGl2ZUlkXT1cInByb3BlcnR5Q29ubmVjdG9yLmF0dHJOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHVpVGV4dGZpZWxkTGFiZWxPdXRzaWRlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwcm9wZXJ0eUNvbm5lY3Rvci5vblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvdHVpLWlucHV0LWNvdW50PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInUG9seW1vcnBoZXVzQ29udGVudCdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpc1ByaW1pdGl2ZVBvbHltb3JwaGV1c0NvbnRlbnQocHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpVGV4dGZpZWxkU2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmF0aXZlSWRdPVwicHJvcGVydHlDb25uZWN0b3IuYXR0ck5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHVpVGV4dGZpZWxkTGFiZWxPdXRzaWRlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHVpVGV4dGZpZWxkQ2xlYW5lcl09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlLnRvU3RyaW5nKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwicHJvcGVydHlDb25uZWN0b3Iub25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHQgY29udGVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHVpLXByaW1pdGl2ZS10ZXh0ZmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Vsc2VFbWl0dGVyPlxuICAgICAgICAgICAgICAgIDx0dWktbm90aWZpY2F0aW9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1vdXRwdXRcIlxuICAgICAgICAgICAgICAgICAgICBbQGVtaXRFdmVudF09XCJwcm9wZXJ0eUNvbm5lY3Rvci5lbWl0cyQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICBFbWl0IVxuICAgICAgICAgICAgICAgIDwvdHVpLW5vdGlmaWNhdGlvbj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvdGQ+XG4gICAgPC90cj5cbjwvdGFibGU+XG4iXX0=
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1kb2Mvc3JjL2NvbXBvbmVudHMvZG9jdW1lbnRhdGlvbi9kb2N1bWVudGF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWRvYy9zcmMvY29tcG9uZW50cy9kb2N1bWVudGF0aW9uL2RvY3VtZW50YXRpb24udGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixNQUFNLEVBQ04sS0FBSyxHQUVSLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxXQUFXLEVBQ1gsV0FBVyxFQUNYLFdBQVcsRUFDWCxXQUFXLEVBQ1gsMkJBQTJCLEVBQzNCLFdBQVcsRUFDWCxRQUFRLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBQyw2Q0FBNkMsRUFBQyxNQUFNLDhDQUE4QyxDQUFDOzs7Ozs7O0FBRTNHLG1EQUFtRDtBQUNuRCwyQ0FBMkM7QUFZM0MsTUFBTSxPQUFPLDRCQUE0QjtJQWdCckMsWUFDZ0QsaUJBQW9DLEVBRXZFLEtBQStDO1FBRlosc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUV2RSxVQUFLLEdBQUwsS0FBSyxDQUEwQztRQWpCNUQsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUdiLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFHbEIsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUdkLHlCQUFvQixHQUNoQixXQUFXLENBQUM7UUFFaEIsb0JBQWUsR0FBRyxDQUFDLENBQUM7SUFNakIsQ0FBQztJQUVKLGtCQUFrQjtRQUNkLDJCQUEyQixDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQzthQUNqRCxJQUFJLENBQ0QsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUMsUUFBUSxFQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFDakUsUUFBUSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUNuQzthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFhO1FBQ2xCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDcEIsT0FBTyxLQUFLO2lCQUNQLEtBQUssQ0FBQyxFQUFFLENBQUM7aUJBQ1QsTUFBTSxDQUFXLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDO2lCQUN4RSxJQUFJLENBQUMsRUFBRSxDQUFDO2lCQUNSLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDekI7UUFFRCxJQUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdkIsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxJQUFJLEtBQUssS0FBSyxhQUFhLEVBQUU7WUFDekIsT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFFRCxNQUFNLE1BQU0sR0FBRyxLQUFLO2FBQ2YsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7YUFDbkIsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7YUFDcEIsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUM7YUFDaEIsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUM7YUFDaEIsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUE2QixDQUFDO1FBRWxFLE9BQU8sV0FBVyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFhO1FBQ3BCLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ25ELE9BQU8sR0FBRyxDQUFDO1NBQ2Q7UUFFRCxJQUFJLEtBQUssS0FBSyxhQUFhLEVBQUU7WUFDekIsT0FBTyxDQUFDLENBQUM7U0FDWjtRQUVELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekMsTUFBTSxNQUFNLEdBQUcsS0FBSzthQUNmLEtBQUssQ0FBQyxTQUFTLENBQUM7YUFDaEIsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUM7YUFDaEIsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUM7YUFDaEIsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsYUFBYSxDQUNULFNBQWdFLEVBQ2hFLEtBQWE7UUFFYixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQywwQkFBMEIsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUU1RSxJQUFJLE9BQU8sS0FBSyxHQUFHLEVBQUU7WUFDakIsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUUvQixPQUFPO1NBQ1Y7UUFFRCxNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFDLE1BQU0sTUFBTSxHQUFHLFFBQVEsR0FBRyxLQUFLLE9BQU8sR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUVoRCxTQUFTLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxlQUFlLENBQ1gsU0FBZ0UsRUFDaEUsT0FBZTtRQUVmLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLDBCQUEwQixJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sR0FBRyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QixNQUFNLE1BQU0sR0FBRyxRQUFRLEdBQUcsS0FBSyxPQUFPLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFFaEQsU0FBUyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVk7UUFDdEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVk7UUFDbkIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCw4QkFBOEIsQ0FBQyxLQUFjO1FBQ3pDLE9BQU8sV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsV0FBVyxDQUFDLElBQVk7UUFDcEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxJQUFZO1FBQzNCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxVQUFVLENBQUMsSUFBYTtRQUNwQixPQUFPLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbEMsQ0FBQzs7MEhBcklRLDRCQUE0QixrQkFpQnpCLGlCQUFpQixhQUNqQiwyQkFBMkI7OEdBbEI5Qiw0QkFBNEIsNEtBVXBCLDZDQUE2Qyw2QkNsRGxFLG9rUUFvTEEsNmhKRGxKZ0I7UUFDUixPQUFPLENBQUMsV0FBVyxFQUFFO1lBQ2pCLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBQyxPQUFPLEVBQUUsQ0FBQyxFQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztTQUM1RSxDQUFDO0tBQ0w7NEZBRVEsNEJBQTRCO2tCQVh4QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFdBQVcsRUFBRSwrQkFBK0I7b0JBQzVDLFNBQVMsRUFBRSxDQUFDLDRCQUE0QixDQUFDO29CQUN6QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsVUFBVSxFQUFFO3dCQUNSLE9BQU8sQ0FBQyxXQUFXLEVBQUU7NEJBQ2pCLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBQyxPQUFPLEVBQUUsQ0FBQyxFQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQzt5QkFDNUUsQ0FBQztxQkFDTDtpQkFDSjs7MEJBa0JRLE1BQU07MkJBQUMsaUJBQWlCOzswQkFDeEIsTUFBTTsyQkFBQywyQkFBMkI7NENBaEJ2QyxPQUFPO3NCQUROLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixvQkFBb0I7c0JBRG5CLGVBQWU7dUJBQUMsNkNBQTZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHthbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRU1QVFlfUVVFUlksXG4gICAgdHVpSGV4VG9SZ2IsXG4gICAgdHVpSXNOdW1iZXIsXG4gICAgdHVpSXNTdHJpbmcsXG4gICAgdHVpSXRlbXNRdWVyeUxpc3RPYnNlcnZhYmxlLFxuICAgIHR1aVJnYlRvSGV4LFxuICAgIHR1aVdhdGNoLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7bWVyZ2V9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUVUlfRE9DX0RPQ1VNRU5UQVRJT05fVEVYVFN9IGZyb20gJy4uLy4uL3Rva2Vucy9pMThuJztcbmltcG9ydCB7dHVpSW5zcGVjdEFueX0gZnJvbSAnLi4vLi4vdXRpbHMvaW5zcGVjdCc7XG5pbXBvcnQge1R1aURvY0RvY3VtZW50YXRpb25Qcm9wZXJ0eUNvbm5lY3RvckRpcmVjdGl2ZX0gZnJvbSAnLi9kb2N1bWVudGF0aW9uLXByb3BlcnR5LWNvbm5lY3Rvci5kaXJlY3RpdmUnO1xuXG4vLyBAYmFkIFRPRE8gc3Vic2NyaWJlIHByb3BlcnRpZXNDb25uZWN0b3JzIGNoYW5nZXNcbi8vIEBiYWQgVE9ETyByZWZhY3RvciB0byBtYWtlIG1vcmUgZmxleGlibGVcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWRvYy1kb2N1bWVudGF0aW9uYCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vZG9jdW1lbnRhdGlvbi50ZW1wbGF0ZS5odG1sYCxcbiAgICBzdHlsZVVybHM6IFtgLi9kb2N1bWVudGF0aW9uLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoYGVtaXRFdmVudGAsIFtcbiAgICAgICAgICAgIHRyYW5zaXRpb24oYDppbmNyZW1lbnRgLCBbc3R5bGUoe29wYWNpdHk6IDF9KSwgYW5pbWF0ZShgNTAwbXMgZWFzZS1pbmApXSksXG4gICAgICAgIF0pLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURvY0RvY3VtZW50YXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBASW5wdXQoKVxuICAgIGhlYWRpbmcgPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgc2hvd1ZhbHVlcyA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIGlzQVBJID0gZmFsc2U7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKFR1aURvY0RvY3VtZW50YXRpb25Qcm9wZXJ0eUNvbm5lY3RvckRpcmVjdGl2ZSlcbiAgICBwcm9wZXJ0aWVzQ29ubmVjdG9yczogUXVlcnlMaXN0PFR1aURvY0RvY3VtZW50YXRpb25Qcm9wZXJ0eUNvbm5lY3RvckRpcmVjdGl2ZTxhbnk+PiA9XG4gICAgICAgIEVNUFRZX1FVRVJZO1xuXG4gICAgYWN0aXZlSXRlbUluZGV4ID0gMDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQEluamVjdChUVUlfRE9DX0RPQ1VNRU5UQVRJT05fVEVYVFMpXG4gICAgICAgIHJlYWRvbmx5IHRleHRzOiBbc3RyaW5nLCBzdHJpbmcsIHN0cmluZywgc3RyaW5nLCBzdHJpbmddLFxuICAgICkge31cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdHVpSXRlbXNRdWVyeUxpc3RPYnNlcnZhYmxlKHRoaXMucHJvcGVydGllc0Nvbm5lY3RvcnMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoaXRlbXMgPT4gbWVyZ2UoLi4uaXRlbXMubWFwKCh7Y2hhbmdlZCR9KSA9PiBjaGFuZ2VkJCkpKSxcbiAgICAgICAgICAgICAgICB0dWlXYXRjaCh0aGlzLmNoYW5nZURldGVjdG9yUmVmKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0FQSSA/IHRoaXMudGV4dHNbMF0gOiB0aGlzLnRleHRzWzFdO1xuICAgIH1cblxuICAgIGdldENvbG9yKGNvbG9yOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBpZiAoY29sb3IubGVuZ3RoID09PSA0KSB7XG4gICAgICAgICAgICByZXR1cm4gY29sb3JcbiAgICAgICAgICAgICAgICAuc3BsaXQoYGApXG4gICAgICAgICAgICAgICAgLnJlZHVjZTxzdHJpbmdbXT4oKHJlc3VsdCwgY3VycmVudCkgPT4gWy4uLnJlc3VsdCwgY3VycmVudCwgY3VycmVudF0sIFtdKVxuICAgICAgICAgICAgICAgIC5qb2luKGBgKVxuICAgICAgICAgICAgICAgIC5yZXBsYWNlKGAjYCwgYGApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbG9yLnN0YXJ0c1dpdGgoYCNgKSkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbG9yID09PSBgdHJhbnNwYXJlbnRgKSB7XG4gICAgICAgICAgICByZXR1cm4gYCMwMDAwMDBgO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyc2VkID0gY29sb3JcbiAgICAgICAgICAgIC5yZXBsYWNlKGByZ2IoYCwgYGApXG4gICAgICAgICAgICAucmVwbGFjZShgcmdiYShgLCBgYClcbiAgICAgICAgICAgIC5yZXBsYWNlKGApYCwgYGApXG4gICAgICAgICAgICAucmVwbGFjZShgIGAsIGBgKVxuICAgICAgICAgICAgLnNwbGl0KGAsYClcbiAgICAgICAgICAgIC5tYXAodiA9PiBOdW1iZXIucGFyc2VJbnQodiwgMTApKSBhcyBbbnVtYmVyLCBudW1iZXIsIG51bWJlcl07XG5cbiAgICAgICAgcmV0dXJuIHR1aVJnYlRvSGV4KC4uLnBhcnNlZCk7XG4gICAgfVxuXG4gICAgZ2V0T3BhY2l0eShjb2xvcjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKGNvbG9yLnN0YXJ0c1dpdGgoYCNgKSB8fCBjb2xvci5zdGFydHNXaXRoKGByZ2IoYCkpIHtcbiAgICAgICAgICAgIHJldHVybiAxMDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29sb3IgPT09IGB0cmFuc3BhcmVudGApIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbGFzdENvbW1hID0gY29sb3IubGFzdEluZGV4T2YoYCxgKTtcbiAgICAgICAgY29uc3QgcGFyc2VkID0gY29sb3JcbiAgICAgICAgICAgIC5zbGljZShsYXN0Q29tbWEpXG4gICAgICAgICAgICAucmVwbGFjZShgKWAsIGBgKVxuICAgICAgICAgICAgLnJlcGxhY2UoYCBgLCBgYClcbiAgICAgICAgICAgIC5yZXBsYWNlKGAsYCwgYGApO1xuXG4gICAgICAgIHJldHVybiBNYXRoLnJvdW5kKE51bWJlci5wYXJzZUZsb2F0KHBhcnNlZCkgKiAxMDApO1xuICAgIH1cblxuICAgIG9uQ29sb3JDaGFuZ2UoXG4gICAgICAgIGNvbm5lY3RvcjogVHVpRG9jRG9jdW1lbnRhdGlvblByb3BlcnR5Q29ubmVjdG9yRGlyZWN0aXZlPHN0cmluZz4sXG4gICAgICAgIGNvbG9yOiBzdHJpbmcsXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG9wYWNpdHkgPSB0aGlzLmdldE9wYWNpdHkoY29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlIHx8IGBgKTtcblxuICAgICAgICBpZiAob3BhY2l0eSA9PT0gMTAwKSB7XG4gICAgICAgICAgICBjb25uZWN0b3Iub25WYWx1ZUNoYW5nZShjb2xvcik7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJnYiA9IHR1aUhleFRvUmdiKGNvbG9yKS5qb2luKGAsIGApO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBgcmdiYSgke3JnYn0sICR7b3BhY2l0eSAvIDEwMH0pYDtcblxuICAgICAgICBjb25uZWN0b3Iub25WYWx1ZUNoYW5nZShyZXN1bHQpO1xuICAgIH1cblxuICAgIG9uT3BhY2l0eUNoYW5nZShcbiAgICAgICAgY29ubmVjdG9yOiBUdWlEb2NEb2N1bWVudGF0aW9uUHJvcGVydHlDb25uZWN0b3JEaXJlY3RpdmU8c3RyaW5nPixcbiAgICAgICAgb3BhY2l0eTogbnVtYmVyLFxuICAgICk6IHZvaWQge1xuICAgICAgICBjb25zdCBoZXggPSB0aGlzLmdldENvbG9yKGNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZSB8fCBgYCk7XG4gICAgICAgIGNvbnN0IHJnYiA9IHR1aUhleFRvUmdiKGhleCk7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGByZ2JhKCR7cmdifSwgJHtvcGFjaXR5IC8gMTAwfSlgO1xuXG4gICAgICAgIGNvbm5lY3Rvci5vblZhbHVlQ2hhbmdlKHJlc3VsdCk7XG4gICAgfVxuXG4gICAgc3RyaXBPcHRpb25hbChuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gbmFtZS5yZXBsYWNlKGA/YCwgYGApO1xuICAgIH1cblxuICAgIGlzT3B0aW9uYWwobmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBuYW1lLmluY2x1ZGVzKGA/YCk7XG4gICAgfVxuXG4gICAgaXNQcmltaXRpdmVQb2x5bW9ycGhldXNDb250ZW50KHZhbHVlOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc1N0cmluZyh2YWx1ZSkgfHwgdHVpSXNOdW1iZXIodmFsdWUpO1xuICAgIH1cblxuICAgIHNob3dDbGVhbmVyKHR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHlwZS5pbmNsdWRlcyhgbnVsbGApO1xuICAgIH1cblxuICAgIHNob3dDb250ZW50VG9vbHRpcCh0eXBlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHR5cGUuaW5jbHVkZXMoYFBvbHltb3JwaGV1c0NvbnRlbnRgKTtcbiAgICB9XG5cbiAgICBpbnNwZWN0QW55KGRhdGE6IHVua25vd24pOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdHVpSW5zcGVjdEFueShkYXRhLCAyKTtcbiAgICB9XG59XG4iLCI8aDFcbiAgICAqbmdJZj1cImhlYWRpbmdcIlxuICAgIGNsYXNzPVwidC1oZWFkaW5nXCJcbj5cbiAgICB7eyBoZWFkaW5nIH19XG48L2gxPlxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPHRhYmxlIGNsYXNzPVwidC10YWJsZVwiPlxuICAgIDx0ciBjbGFzcz1cInQtcm93IHQtcm93X2hlYWRlclwiPlxuICAgICAgICA8dGggY2xhc3M9XCJ0LXRoIHQtY2VsbCB0LWNlbGxfcHJvcFwiPnt7IHRleHRzWzJdIH19PC90aD5cbiAgICAgICAgPHRoIGNsYXNzPVwidC10aFwiPnt7IHR5cGUgfX08L3RoPlxuICAgICAgICA8dGhcbiAgICAgICAgICAgICpuZ0lmPVwic2hvd1ZhbHVlcyAmJiAhaXNBUElcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LXRoIHQtY2VsbCB0LXRoX3ZhbHVlXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgdGV4dHNbM10gfX1cbiAgICAgICAgPC90aD5cbiAgICA8L3RyPlxuICAgIDx0clxuICAgICAgICAqbmdGb3I9XCJsZXQgcHJvcGVydHlDb25uZWN0b3Igb2YgcHJvcGVydGllc0Nvbm5lY3RvcnNcIlxuICAgICAgICBjbGFzcz1cInQtcm93XCJcbiAgICAgICAgW2NsYXNzLnQtZGVwcmVjYXRlZF09XCJwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlEZXByZWNhdGVkXCJcbiAgICA+XG4gICAgICAgIDx0ZCBjbGFzcz1cInQtY2VsbFwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktZG9jdW1lbnRhdGlvbl9fcHJvcGVydHktbmFtZVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXByb3BlcnR5XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBzdHJpcE9wdGlvbmFsKHByb3BlcnR5Q29ubmVjdG9yLmF0dHJOYW1lKSB9fVxuICAgICAgICAgICAgICAgIDx0dWktYmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpc09wdGlvbmFsKHByb3BlcnR5Q29ubmVjdG9yLmF0dHJOYW1lKVwiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9XCJPcHRpb25hbFwiXG4gICAgICAgICAgICAgICAgPjwvdHVpLWJhZGdlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICpuZ0lmPVwicHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5RGVwcmVjYXRlZFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWRlcHJlY2F0ZWQtbGFiZWxcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIGRlcHJlY2F0ZWRcbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwicHJvcGVydHlDb25uZWN0b3IudGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkIGNsYXNzPVwidC1jZWxsXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInR5cGVcIj5cbiAgICAgICAgICAgICAgICB7eyBwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlUeXBlIH19XG4gICAgICAgICAgICAgICAgPHR1aS10b29sdGlwXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic2hvd0NvbnRlbnRUb29sdGlwKHByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVR5cGUpXCJcbiAgICAgICAgICAgICAgICAgICAgW2Rlc2NyaWJlSWRdPVwicHJvcGVydHlDb25uZWN0b3IuYXR0ck5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBbY29udGVudF09XCJjb250ZW50XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IHRleHRzWzRdIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR1aUxpbmtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlNb2RlPVwib25EYXJrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9XCJodHRwczovL2dpdGh1Yi5jb20vdGlua29mZi9uZy1wb2x5bW9ycGhldXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb2RlPm5nLXBvbHltb3JwaGV1czwvY29kZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8L3R1aS10b29sdGlwPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGRcbiAgICAgICAgICAgICpuZ0lmPVwic2hvd1ZhbHVlc1wiXG4gICAgICAgICAgICBjbGFzcz1cInQtY2VsbCB0LWNlbGxfdmFsdWVcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicHJvcGVydHlDb25uZWN0b3Iuc2hvdWxkU2hvd1ZhbHVlczsgZWxzZSBlbHNlRW1pdHRlclwiPlxuICAgICAgICAgICAgICAgIDx0dWktc2VsZWN0XG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwicHJvcGVydHlDb25uZWN0b3IuaGFzSXRlbXM7IGVsc2Ugbm9JdGVtc1wiXG4gICAgICAgICAgICAgICAgICAgIHR1aVRleHRmaWVsZFNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgICAgdHVpRHJvcGRvd25MaW1pdFdpZHRoPVwibWluXCJcbiAgICAgICAgICAgICAgICAgICAgW3R1aVRleHRmaWVsZENsZWFuZXJdPVwic2hvd0NsZWFuZXIocHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VHlwZSlcIlxuICAgICAgICAgICAgICAgICAgICBbdHVpVGV4dGZpZWxkTGFiZWxPdXRzaWRlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICBbbmF0aXZlSWRdPVwicHJvcGVydHlDb25uZWN0b3IuYXR0ck5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVDb250ZW50XT1cInNlbGVjdENvbnRlbnRcIlxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInByb3BlcnR5Q29ubmVjdG9yLm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8Y29kZSBjbGFzcz1cInQtZXhjZXB0aW9uXCI+bnVsbDwvY29kZT5cbiAgICAgICAgICAgICAgICAgICAgPHR1aS1kYXRhLWxpc3Qtd3JhcHBlclxuICAgICAgICAgICAgICAgICAgICAgICAgKnR1aURhdGFMaXN0XG4gICAgICAgICAgICAgICAgICAgICAgICBbaXRlbXNdPVwicHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWVzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpdGVtQ29udGVudF09XCJzZWxlY3RDb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvdHVpLWRhdGEtbGlzdC13cmFwcGVyPlxuICAgICAgICAgICAgICAgIDwvdHVpLXNlbGVjdD5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgI3NlbGVjdENvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgbGV0LWRhdGFcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxjb2RlPnt7IGluc3BlY3RBbnkoZGF0YSkgfX08L2NvZGU+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9JdGVtcz5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwicHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VHlwZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHR1aS10b2dnbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ2Jvb2xlYW4nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwibFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25hdGl2ZUlkXT1cInByb3BlcnR5Q29ubmVjdG9yLmF0dHJOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0ljb25zXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJwcm9wZXJ0eUNvbm5lY3Rvci5vblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvdHVpLXRvZ2dsZT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPHR1aS1wcmltaXRpdmUtdGV4dGZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidzdHJpbmcnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25hdGl2ZUlkXT1cInByb3BlcnR5Q29ubmVjdG9yLmF0dHJOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHVpVGV4dGZpZWxkTGFiZWxPdXRzaWRlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0dWlUZXh0ZmllbGRDbGVhbmVyXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZSB8fCAnJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cInByb3BlcnR5Q29ubmVjdG9yLm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC90dWktcHJpbWl0aXZlLXRleHRmaWVsZD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInY29sb3InXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlHcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0dWktcHJpbWl0aXZlLXRleHRmaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cInByb3BlcnR5Q29ubmVjdG9yLmF0dHJOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R1aVRleHRmaWVsZExhYmVsT3V0c2lkZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R1aUlucHV0T3BhY2l0eV09XCJnZXRPcGFjaXR5KHByb3BlcnR5Q29ubmVjdG9yLmRvY3VtZW50YXRpb25Qcm9wZXJ0eVZhbHVlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJnZXRDb2xvcihwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25Db2xvckNoYW5nZShwcm9wZXJ0eUNvbm5lY3RvciwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR1aVRleHRmaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHVpLXByaW1pdGl2ZS10ZXh0ZmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHR1aS1pbnB1dC1jb3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXhdPVwiMTAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiZ2V0T3BhY2l0eShwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbk9wYWNpdHlDaGFuZ2UocHJvcGVydHlDb25uZWN0b3IsICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3BhY2l0eVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHVpLWlucHV0LWNvdW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0dWktaW5wdXQtY291bnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ251bWJlcidcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR1aVRleHRmaWVsZFNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmF0aXZlSWRdPVwicHJvcGVydHlDb25uZWN0b3IuYXR0ck5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0dWlUZXh0ZmllbGRMYWJlbE91dHNpZGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwicHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInByb3BlcnR5Q29ubmVjdG9yLm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC90dWktaW5wdXQtY291bnQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidQb2x5bW9ycGhldXNDb250ZW50J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0dWktcHJpbWl0aXZlLXRleHRmaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImlzUHJpbWl0aXZlUG9seW1vcnBoZXVzQ29udGVudChwcm9wZXJ0eUNvbm5lY3Rvci5kb2N1bWVudGF0aW9uUHJvcGVydHlWYWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYXRpdmVJZF09XCJwcm9wZXJ0eUNvbm5lY3Rvci5hdHRyTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0dWlUZXh0ZmllbGRMYWJlbE91dHNpZGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0dWlUZXh0ZmllbGRDbGVhbmVyXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwicHJvcGVydHlDb25uZWN0b3IuZG9jdW1lbnRhdGlvblByb3BlcnR5VmFsdWUudG9TdHJpbmcoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJwcm9wZXJ0eUNvbm5lY3Rvci5vblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdCBjb250ZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90dWktcHJpbWl0aXZlLXRleHRmaWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUVtaXR0ZXI+XG4gICAgICAgICAgICAgICAgPHR1aS1ub3RpZmljYXRpb25cbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LW91dHB1dFwiXG4gICAgICAgICAgICAgICAgICAgIFtAZW1pdEV2ZW50XT1cInByb3BlcnR5Q29ubmVjdG9yLmVtaXRzJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIEVtaXQhXG4gICAgICAgICAgICAgICAgPC90dWktbm90aWZpY2F0aW9uPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC90ZD5cbiAgICA8L3RyPlxuPC90YWJsZT5cbiJdfQ==
@@ -36,7 +36,7 @@ TuiDocMainComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
36
36
  useExisting: forwardRef(() => TuiDocMainComponent),
37
37
  },
38
38
  TuiSwipeService,
39
- ], ngImport: i0, template: "<tui-theme-night *ngIf=\"night\"></tui-theme-night>\n<tui-root>\n <div class=\"tui-doc-page\">\n <tui-doc-navigation class=\"tui-doc-navigation\">\n <ng-content select=\"tuiDocNavigation\"></ng-content>\n </tui-doc-navigation>\n <div class=\"tui-doc-content\">\n <router-outlet class=\"tui-doc-outlet\"></router-outlet>\n </div>\n </div>\n <header tuiDocHeader>\n <label class=\"night-mode\">\n Night mode\n <tui-toggle\n class=\"tui-toggle\"\n [ngModel]=\"night\"\n (ngModelChange)=\"onMode($event)\"\n ></tui-toggle>\n </label>\n <ng-content select=\"tuiDocHeader\"></ng-content>\n </header>\n <ng-container ngProjectAs=\"tuiOverContent\">\n <ng-content select=\"tuiOverContent\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"tuiOverDialogs\">\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"tuiOverAlerts\">\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"tuiOverPortals\">\n <ng-content select=\"tuiOverPortals\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"tuiOverHints\">\n <ng-content select=\"tuiOverHints\"></ng-content>\n </ng-container>\n</tui-root>\n", styles: ["html{scroll-padding-top:4rem;height:auto}tui-root>tui-scroll-controls>.t-bar_vertical{top:4rem!important}@-webkit-keyframes tuiShaking{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-.3125rem)}20%,40%,60%,80%{transform:translate(.3125rem)}}@keyframes tuiShaking{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-.3125rem)}20%,40%,60%,80%{transform:translate(.3125rem)}}body{background:var(--tui-base-01);height:auto}tui-doc-main{display:block}code:not(.hljs):not([class*=\"language-\"]):not(.exception){transition-property:background;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-base-02);color:var(--tui-text-02);vertical-align:middle;box-shadow:inset 0 -2px var(--tui-secondary);padding:.375rem .5rem;font-size:.875rem;border-radius:.5rem}button:focus code,a:focus code{background:var(--tui-base-01)}.tui-doc-page{position:relative;z-index:0;padding-top:4rem}tui-doc-navigation.tui-doc-navigation{position:fixed;top:4rem;bottom:0;width:16.25rem;border-right:1px solid var(--tui-base-03)}@media screen and (max-width: 47.9625em){tui-doc-navigation.tui-doc-navigation{display:none}}.tui-doc-content{margin-left:16.25rem}@media screen and (max-width: 47.9625em){.tui-doc-content{margin-left:0}}.tui-doc-outlet+*{display:block}.tui-doc-animated-example{-webkit-animation:1s .3s tuiShaking;animation:1s .3s tuiShaking}label.night-mode{cursor:pointer}label.night-mode .tui-toggle{margin-left:.5rem}.hljs-tag{background:none}.hljs{display:block;overflow-x:auto;padding:.5em;color:var(--tui-text-01);background-color:var(--tui-clear-disabled)}.hljs.hljs-line-numbers{background:transparent}.hljs-subst,.hljs-title{font-weight:normal;color:var(--tui-text-01)}.hljs-comment,.hljs-quote{color:var(--tui-text-03);font-style:italic}.hljs-meta{color:#e38162}.hljs-section,.hljs-name,.hljs-literal,.hljs-keyword,.hljs-selector-tag,.hljs-type,.hljs-selector-id,.hljs-selector-class{font-weight:bold;color:var(--tui-link)}.hljs-attribute,.hljs-number,.hljs-regexp,.hljs-link{font-weight:bold;color:var(--tui-support-06)}.hljs-number,.hljs-regexp,.hljs-link{font-weight:normal}.hljs-string{color:var(--tui-positive);font-weight:bold}.hljs-symbol,.hljs-bullet,.hljs-formula{color:var(--tui-text-01);background:var(--tui-base-02);font-style:italic}.hljs-doctag{text-decoration:underline}.hljs-variable,.hljs-template-variable{color:var(--tui-link-hover)}[data-mode=onDark] .hljs-variable,[data-mode=onDark] .hljs-template-variable{color:var(--tui-warning-fill)}.hljs-addition{background:var(--tui-success-bg)}.hljs-deletion{background:var(--tui-error-bg)}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:bold}.hljs .hljs-line-numbers{padding:0}.hljs-ln-numbers{vertical-align:top;opacity:.3;text-align:right;padding-right:1em!important}\n"], components: [{ type: i1.TuiThemeNightComponent, selector: "tui-theme-night" }, { type: i1.TuiRootComponent, selector: "tui-root" }, { type: i2.TuiDocNavigationComponent, selector: "tui-doc-navigation" }, { type: i3.TuiDocHeaderComponent, selector: "header[tuiDocHeader]" }, { type: i4.TuiToggleComponent, selector: "tui-toggle", inputs: ["singleColor", "showIcons", "showLoader", "size"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
39
+ ], ngImport: i0, template: "<tui-theme-night *ngIf=\"night\"></tui-theme-night>\n<tui-root>\n <div class=\"tui-doc-page\">\n <tui-doc-navigation class=\"tui-doc-navigation\">\n <ng-content select=\"tuiDocNavigation\"></ng-content>\n </tui-doc-navigation>\n <div class=\"tui-doc-content\">\n <router-outlet class=\"tui-doc-outlet\"></router-outlet>\n </div>\n </div>\n <header tuiDocHeader>\n <label class=\"night-mode\">\n Night mode\n <tui-toggle\n class=\"tui-toggle\"\n [ngModel]=\"night\"\n (ngModelChange)=\"onMode($event)\"\n ></tui-toggle>\n </label>\n <ng-content select=\"tuiDocHeader\"></ng-content>\n </header>\n <ng-container ngProjectAs=\"tuiOverContent\">\n <ng-content select=\"tuiOverContent\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"tuiOverDialogs\">\n <ng-content select=\"tuiOverDialogs\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"tuiOverAlerts\">\n <ng-content select=\"tuiOverAlerts\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"tuiOverPortals\">\n <ng-content select=\"tuiOverPortals\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"tuiOverHints\">\n <ng-content select=\"tuiOverHints\"></ng-content>\n </ng-container>\n</tui-root>\n", styles: ["html{scroll-padding-top:4rem;height:auto}tui-root>tui-scroll-controls>.t-bar_vertical{top:4rem!important}@keyframes tuiShaking{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-.3125rem)}20%,40%,60%,80%{transform:translate(.3125rem)}}body{background:var(--tui-base-01);height:auto}tui-doc-main{display:block}code:not(.hljs):not([class*=\"language-\"]):not(.exception){transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;background:var(--tui-base-02);color:var(--tui-text-02);vertical-align:middle;box-shadow:inset 0 -2px var(--tui-secondary);padding:.375rem .5rem;font-size:.875rem;border-radius:.5rem}button:focus code,a:focus code{background:var(--tui-base-01)}.tui-doc-page{position:relative;z-index:0;padding-top:4rem}tui-doc-navigation.tui-doc-navigation{position:fixed;top:4rem;bottom:0;width:16.25rem;border-right:1px solid var(--tui-base-03)}@media screen and (max-width: 47.9625em){tui-doc-navigation.tui-doc-navigation{display:none}}.tui-doc-content{margin-left:16.25rem}@media screen and (max-width: 47.9625em){.tui-doc-content{margin-left:0}}.tui-doc-outlet+*{display:block}.tui-doc-animated-example{animation:1s .3s tuiShaking}label.night-mode{cursor:pointer}label.night-mode .tui-toggle{margin-left:.5rem}.hljs-tag{background:none}.hljs{display:block;overflow-x:auto;padding:.5em;color:var(--tui-text-01);background-color:var(--tui-clear-disabled)}.hljs.hljs-line-numbers{background:transparent}.hljs-subst,.hljs-title{font-weight:normal;color:var(--tui-text-01)}.hljs-comment,.hljs-quote{color:var(--tui-text-03);font-style:italic}.hljs-meta{color:#e38162}.hljs-section,.hljs-name,.hljs-literal,.hljs-keyword,.hljs-selector-tag,.hljs-type,.hljs-selector-id,.hljs-selector-class{font-weight:bold;color:var(--tui-link)}.hljs-attribute,.hljs-number,.hljs-regexp,.hljs-link{font-weight:bold;color:var(--tui-support-06)}.hljs-number,.hljs-regexp,.hljs-link{font-weight:normal}.hljs-string{color:var(--tui-positive);font-weight:bold}.hljs-symbol,.hljs-bullet,.hljs-formula{color:var(--tui-text-01);background:var(--tui-base-02);font-style:italic}.hljs-doctag{text-decoration:underline}.hljs-variable,.hljs-template-variable{color:var(--tui-link-hover)}[data-mode=onDark] .hljs-variable,[data-mode=onDark] .hljs-template-variable{color:var(--tui-warning-fill)}.hljs-addition{background:var(--tui-success-bg)}.hljs-deletion{background:var(--tui-error-bg)}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:bold}.hljs .hljs-line-numbers{padding:0}.hljs-ln-numbers{vertical-align:top;opacity:.3;text-align:right;padding-right:1em!important}\n"], components: [{ type: i1.TuiThemeNightComponent, selector: "tui-theme-night" }, { type: i1.TuiRootComponent, selector: "tui-root" }, { type: i2.TuiDocNavigationComponent, selector: "tui-doc-navigation" }, { type: i3.TuiDocHeaderComponent, selector: "header[tuiDocHeader]" }, { type: i4.TuiToggleComponent, selector: "tui-toggle", inputs: ["singleColor", "showIcons", "showLoader", "size"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
40
40
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocMainComponent, decorators: [{
41
41
  type: Component,
42
42
  args: [{
@@ -135,7 +135,7 @@ export class TuiDocNavigationComponent {
135
135
  }
136
136
  }
137
137
  TuiDocNavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDocNavigationComponent, deps: [{ token: ChangeDetectorRef }, { token: Title }, { token: NAVIGATION_TITLE }, { token: DOCUMENT }, { token: TuiModeDirective }, { token: TuiSidebarDirective, optional: true }, { token: NAVIGATION_LABELS }, { token: NAVIGATION_ITEMS }, { token: TUI_DOC_SEARCH_TEXT }, { token: Router }, { token: ActivatedRoute }, { token: TuiDestroyService }, { token: TUI_DOC_PAGE_LOADED }, { token: TUI_DOC_SCROLL_BEHAVIOR }], target: i0.ɵɵFactoryTarget.Component });
138
- TuiDocNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDocNavigationComponent, selector: "tui-doc-navigation", host: { properties: { "class._open": "this.menuOpen" } }, providers: NAVIGATION_PROVIDERS, ngImport: i0, template: "<tui-input\n #input\n tuiTextfieldSize=\"m\"\n tuiTextfieldIconLeft=\"tuiIconSearch\"\n class=\"t-input\"\n [formControl]=\"search\"\n [tuiAutoFocus]=\"!!sidebar\"\n [tuiTextfieldCleaner]=\"true\"\n [tuiTextfieldLabelOutside]=\"true\"\n>\n {{ searchText }}\n <ng-container *ngIf=\"canOpen\">\n <tui-data-list *tuiDataList>\n <tui-opt-group\n *ngFor=\"let group of filtered$ | async; let index = index\"\n [label]=\"labels[index] || ''\"\n >\n <a\n *ngFor=\"let item of group\"\n tuiOption\n [routerLink]=\"item.route\"\n (click)=\"onClick(input)\"\n >\n {{ item.title }}\n </a>\n </tui-opt-group>\n </tui-data-list>\n </ng-container>\n</tui-input>\n\n<nav class=\"t-navigation\">\n <tui-scrollbar\n class=\"t-scrollbar\"\n [tuiMode]=\"mode$ | async\"\n >\n <tui-accordion\n [closeOthers]=\"false\"\n [rounded]=\"false\"\n >\n <tui-accordion-item\n *ngFor=\"let label of labels; index as index\"\n size=\"s\"\n [borders]=\"null\"\n [(open)]=\"!!openPagesArr[index]\"\n >\n <span class=\"t-label\">\n <strong>{{ label }}</strong>\n </span>\n <ng-template tuiAccordionItemContent>\n <div class=\"t-section\">\n <ng-container\n *ngFor=\"let item of items[index]; index as subIndex\"\n [ngTemplateOutlet]=\"pages\"\n [ngTemplateOutletContext]=\"{item: item, index: index * 100 + subIndex}\"\n ></ng-container>\n </div>\n </ng-template>\n </tui-accordion-item>\n </tui-accordion>\n <div class=\"t-items-container\">\n <ng-container\n *ngFor=\"let item of itemsWithoutSections; let index = index\"\n [ngTemplateOutlet]=\"pages\"\n [ngTemplateOutletContext]=\"{item: item, index: items.length - 1 + index}\"\n ></ng-container>\n </div>\n\n <ng-template\n #pages\n let-item=\"item\"\n let-index=\"index\"\n >\n <a\n *ngIf=\"!item.subPages; else subPages\"\n tuiLink\n routerLinkActive=\"t-sublink_active\"\n class=\"t-sublink\"\n [routerLink]=\"item.route\"\n [tuiScrollIntoViewLink]=\"isActive(item.route)\"\n (click)=\"closeMenu()\"\n >\n {{ item.title }}\n </a>\n <ng-template #subPages>\n <div\n routerLinkActive\n class=\"t-subsection\"\n [routerLinkActiveOptions]=\"{exact: false}\"\n >\n <button\n *ngIf=\"item.subPages\"\n tuiLink\n type=\"button\"\n class=\"t-sublink t-sublink_subsection\"\n (click)=\"onGroupClick(index)\"\n >\n <tui-svg\n src=\"tuiIconChevronRight\"\n class=\"t-chevron\"\n [class.t-chevron_active]=\"!!openPagesGroupsArr[index]\"\n ></tui-svg>\n {{ item.title }}\n </button>\n <tui-expand\n class=\"t-expand\"\n [expanded]=\"!!openPagesGroupsArr[index]\"\n >\n <div class=\"t-section t-section_bordered\">\n <a\n *ngFor=\"let subPage of item.subPages\"\n tuiLink\n routerLinkActive=\"t-sublink_active\"\n class=\"t-sublink t-sublink_small\"\n [routerLink]=\"subPage.route\"\n [tuiScrollIntoViewLink]=\"isActive(subPage.route)\"\n (click)=\"closeMenu()\"\n >\n {{ subPage.title }}\n </a>\n </div>\n </tui-expand>\n </div>\n </ng-template>\n </ng-template>\n </tui-scrollbar>\n</nav>\n\n<ng-content></ng-content>\n", styles: [":host{z-index:1;display:flex;flex-direction:column;text-align:center;background:var(--tui-base-01)}.t-input{margin:1.25rem}.t-navigation{display:flex;max-height:100%;min-height:0;flex:1 1 0;text-align:left}.t-scrollbar{width:100%;scroll-behavior:smooth}.t-items-container{display:flex;flex-direction:column;padding:0 1rem}.t-label{margin-left:.5rem}.t-expand{margin-left:.25rem}.t-section{display:flex;flex-direction:column;align-items:flex-start;margin:-1rem 0 -.5rem}.t-section_bordered{margin:.5rem 0;border-left:1px solid var(--tui-base-03)}.t-subsection{margin-left:.5rem}.t-sublink{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:1rem 0 0;border:0;background:none;font-size:inherit;line-height:inherit;font:var(--tui-font-text-m);margin-left:.5rem}.t-sublink_small{margin-left:1rem;line-height:1.5rem;padding-top:.5rem}.t-sublink_subsection{margin-left:0;line-height:1.6rem}.t-sublink_active{color:var(--tui-text-01)}.t-chevron{transition-property:transform;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;width:1rem;height:1rem;margin:-.25rem .25rem 0 -.1875rem}.t-chevron_active{transform:rotate(90deg)}\n"], components: [{ type: i1.TuiInputComponent, selector: "tui-input" }, { type: i2.TuiDataListComponent, selector: "tui-data-list", inputs: ["role", "emptyContent"] }, { type: i2.TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: ["size", "role", "disabled", "value"] }, { type: i2.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiAccordionComponent, selector: "tui-accordion", inputs: ["closeOthers", "rounded"] }, { type: i1.TuiAccordionItemComponent, selector: "tui-accordion-item", inputs: ["noPadding", "showArrow", "borders", "size", "disabled", "disableHover", "open", "async"], outputs: ["openChange"] }, { type: i2.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { type: i2.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i2.TuiExpandComponent, selector: "tui-expand", inputs: ["async", "expanded"] }], directives: [{ type: i1.TuiInputDirective, selector: "tui-input" }, { type: i2.TuiTextfieldSizeDirective, selector: "[tuiTextfieldSize]", inputs: ["tuiTextfieldSize"] }, { type: i2.TuiTextfieldIconLeftDirective, selector: "[tuiTextfieldIconLeft]", inputs: ["tuiTextfieldIconLeft"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i4.TuiAutoFocusDirective, selector: "[tuiAutoFocus]", inputs: ["tuiAutoFocus"] }, { type: i2.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }, { type: i2.TuiTextfieldLabelOutsideDirective, selector: "[tuiTextfieldLabelOutside]", inputs: ["tuiTextfieldLabelOutside"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.TuiOptGroupDirective, selector: "tui-opt-group", inputs: ["label"] }, { type: i6.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i2.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { type: i1.TuiAccordionItemContentDirective, selector: "ng-template[tuiAccordionItemContent]" }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], exportAs: ["routerLinkActive"] }, { type: i7.TuiScrollIntoViewLinkDirective, selector: "[tuiScrollIntoViewLink]", inputs: ["tuiScrollIntoViewLink"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
138
+ TuiDocNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiDocNavigationComponent, selector: "tui-doc-navigation", host: { properties: { "class._open": "this.menuOpen" } }, providers: NAVIGATION_PROVIDERS, ngImport: i0, template: "<tui-input\n #input\n tuiTextfieldSize=\"m\"\n tuiTextfieldIconLeft=\"tuiIconSearch\"\n class=\"t-input\"\n [formControl]=\"search\"\n [tuiAutoFocus]=\"!!sidebar\"\n [tuiTextfieldCleaner]=\"true\"\n [tuiTextfieldLabelOutside]=\"true\"\n>\n {{ searchText }}\n <ng-container *ngIf=\"canOpen\">\n <tui-data-list *tuiDataList>\n <tui-opt-group\n *ngFor=\"let group of filtered$ | async; let index = index\"\n [label]=\"labels[index] || ''\"\n >\n <a\n *ngFor=\"let item of group\"\n tuiOption\n [routerLink]=\"item.route\"\n (click)=\"onClick(input)\"\n >\n {{ item.title }}\n </a>\n </tui-opt-group>\n </tui-data-list>\n </ng-container>\n</tui-input>\n\n<nav class=\"t-navigation\">\n <tui-scrollbar\n class=\"t-scrollbar\"\n [tuiMode]=\"mode$ | async\"\n >\n <tui-accordion\n [closeOthers]=\"false\"\n [rounded]=\"false\"\n >\n <tui-accordion-item\n *ngFor=\"let label of labels; index as index\"\n size=\"s\"\n [borders]=\"null\"\n [(open)]=\"!!openPagesArr[index]\"\n >\n <span class=\"t-label\">\n <strong>{{ label }}</strong>\n </span>\n <ng-template tuiAccordionItemContent>\n <div class=\"t-section\">\n <ng-container\n *ngFor=\"let item of items[index]; index as subIndex\"\n [ngTemplateOutlet]=\"pages\"\n [ngTemplateOutletContext]=\"{item: item, index: index * 100 + subIndex}\"\n ></ng-container>\n </div>\n </ng-template>\n </tui-accordion-item>\n </tui-accordion>\n <div class=\"t-items-container\">\n <ng-container\n *ngFor=\"let item of itemsWithoutSections; let index = index\"\n [ngTemplateOutlet]=\"pages\"\n [ngTemplateOutletContext]=\"{item: item, index: items.length - 1 + index}\"\n ></ng-container>\n </div>\n\n <ng-template\n #pages\n let-item=\"item\"\n let-index=\"index\"\n >\n <a\n *ngIf=\"!item.subPages; else subPages\"\n tuiLink\n routerLinkActive=\"t-sublink_active\"\n class=\"t-sublink\"\n [routerLink]=\"item.route\"\n [tuiScrollIntoViewLink]=\"isActive(item.route)\"\n (click)=\"closeMenu()\"\n >\n {{ item.title }}\n </a>\n <ng-template #subPages>\n <div\n routerLinkActive\n class=\"t-subsection\"\n [routerLinkActiveOptions]=\"{exact: false}\"\n >\n <button\n *ngIf=\"item.subPages\"\n tuiLink\n type=\"button\"\n class=\"t-sublink t-sublink_subsection\"\n (click)=\"onGroupClick(index)\"\n >\n <tui-svg\n src=\"tuiIconChevronRight\"\n class=\"t-chevron\"\n [class.t-chevron_active]=\"!!openPagesGroupsArr[index]\"\n ></tui-svg>\n {{ item.title }}\n </button>\n <tui-expand\n class=\"t-expand\"\n [expanded]=\"!!openPagesGroupsArr[index]\"\n >\n <div class=\"t-section t-section_bordered\">\n <a\n *ngFor=\"let subPage of item.subPages\"\n tuiLink\n routerLinkActive=\"t-sublink_active\"\n class=\"t-sublink t-sublink_small\"\n [routerLink]=\"subPage.route\"\n [tuiScrollIntoViewLink]=\"isActive(subPage.route)\"\n (click)=\"closeMenu()\"\n >\n {{ subPage.title }}\n </a>\n </div>\n </tui-expand>\n </div>\n </ng-template>\n </ng-template>\n </tui-scrollbar>\n</nav>\n\n<ng-content></ng-content>\n", styles: [":host{z-index:1;display:flex;flex-direction:column;text-align:center;background:var(--tui-base-01)}.t-input{margin:1.25rem}.t-navigation{display:flex;max-height:100%;min-height:0;flex:1 1 0;text-align:left}.t-scrollbar{width:100%;scroll-behavior:smooth}.t-items-container{display:flex;flex-direction:column;padding:0 1rem}.t-label{margin-left:.5rem}.t-expand{margin-left:.25rem}.t-section{display:flex;flex-direction:column;align-items:flex-start;margin:-1rem 0 -.5rem}.t-section_bordered{margin:.5rem 0;border-left:1px solid var(--tui-base-03)}.t-subsection{margin-left:.5rem}.t-sublink{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:1rem 0 0;border:0;background:none;font-size:inherit;line-height:inherit;font:var(--tui-font-text-m);margin-left:.5rem}.t-sublink_small{margin-left:1rem;line-height:1.5rem;padding-top:.5rem}.t-sublink_subsection{margin-left:0;line-height:1.6rem}.t-sublink_active{color:var(--tui-text-01)}.t-chevron{transition-property:transform;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;width:1rem;height:1rem;margin:-.25rem .25rem 0 -.1875rem}.t-chevron_active{transform:rotate(90deg)}\n"], components: [{ type: i1.TuiInputComponent, selector: "tui-input" }, { type: i2.TuiDataListComponent, selector: "tui-data-list", inputs: ["role", "emptyContent"] }, { type: i2.TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: ["size", "role", "disabled", "value"] }, { type: i2.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i1.TuiAccordionComponent, selector: "tui-accordion", inputs: ["closeOthers", "rounded"] }, { type: i1.TuiAccordionItemComponent, selector: "tui-accordion-item", inputs: ["noPadding", "showArrow", "borders", "size", "disabled", "disableHover", "open", "async"], outputs: ["openChange"] }, { type: i2.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { type: i2.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i2.TuiExpandComponent, selector: "tui-expand", inputs: ["async", "expanded"] }], directives: [{ type: i1.TuiInputDirective, selector: "tui-input" }, { type: i2.TuiTextfieldSizeDirective, selector: "[tuiTextfieldSize]", inputs: ["tuiTextfieldSize"] }, { type: i2.TuiTextfieldIconLeftDirective, selector: "[tuiTextfieldIconLeft]", inputs: ["tuiTextfieldIconLeft"] }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i4.TuiAutoFocusDirective, selector: "[tuiAutoFocus]", inputs: ["tuiAutoFocus"] }, { type: i2.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }, { type: i2.TuiTextfieldLabelOutsideDirective, selector: "[tuiTextfieldLabelOutside]", inputs: ["tuiTextfieldLabelOutside"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.TuiDataListDirective, selector: "ng-template[tuiDataList]" }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.TuiOptGroupDirective, selector: "tui-opt-group", inputs: ["label"] }, { type: i6.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i2.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { type: i1.TuiAccordionItemContentDirective, selector: "ng-template[tuiAccordionItemContent]" }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i6.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], exportAs: ["routerLinkActive"] }, { type: i7.TuiScrollIntoViewLinkDirective, selector: "[tuiScrollIntoViewLink]", inputs: ["tuiScrollIntoViewLink"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
139
139
  __decorate([
140
140
  tuiPure
141
141
  ], TuiDocNavigationComponent.prototype, "filterItems", null);