[{"__symbolic":"module","version":4,"metadata":{"IOption":{"__symbolic":"interface"},"CuiSelectControlComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../cui-control.component","name":"CuiControlComponent","line":19,"character":47},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":13,"character":1},"arguments":[{"selector":"cui-select-control","template":"<div [class]=\"groupClass\">\n  <label *ngIf=\"label\" [for]=\"key\" [class]=\"labelClass\">{{label}}</label>\n  <div [class]=\"controlClass\">\n    <ng-select [clearable]=\"false\"\n               [closeOnSelect]=\"!isMultiple\"\n               [id]=\"key\"\n               [items]=\"options | async\"\n               bindLabel=\"label\"\n               bindValue=\"value\"\n               [ngModel]=\"value\"\n               (ngModelChange)=\"EmitValueChanged($event)\"\n               [ngClass]=\"inputClass\"\n               [disabled]=\"isDisabled\"\n               [multiple]=\"isMultiple\"\n               [hideSelected]=\"isHideSelectedOptions\"\n    >\n      <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\" let-search=\"searchTerm\">\n        <div *ngIf=\"!componentForOptions\">\n          {{item.label}}\n        </div>\n        <dynamic-container *ngIf=\"componentForOptions\"\n                     [data]=\"{item: item, index: index, searchTerm: search}\"\n                     [componentClass]=\"componentForOptions\"\n        >\n        </dynamic-container>\n      </ng-template>\n\n      <ng-template ng-label-tmp let-item=\"item\" *ngIf=\"!isMultiple\">\n        <div *ngIf=\"!componentForLabel\">\n          {{item.label}}\n        </div>\n        <dynamic-container *ngIf=\"componentForLabel\"\n                     [data]=\"{item: item}\"\n                     [componentClass]=\"componentForLabel\"\n        >\n        </dynamic-container>\n      </ng-template>\n\n      <ng-template ng-optgroup-tmp let-item=\"item\">\n        <div *ngIf=\"!componentForOptionGroups\">\n          {{item.label}}\n        </div>\n        <dynamic-container *ngIf=\"componentForOptionGroups\"\n                     [data]=\"{item: item}\"\n                     [componentClass]=\"componentForOptionGroups\"\n        >\n        </dynamic-container>\n      </ng-template>\n\n      <ng-template ng-multi-label-tmp let-items=\"items\" let-clear=\"clear\" *ngIf=\"isMultiple && !isShowAll\">\n        <div class=\"ng-value\" *ngFor=\"let item of (items ? items.slice(0, isClosedMore ? 4 : undefined): [])\">\n          <span class=\"ng-value-label\">{{item.label}}</span>\n          <span class=\"ng-value-icon right\" (click)=\"clear(item)\" aria-hidden=\"true\">×</span>\n        </div>\n        <div class=\"ng-value\" *ngIf=\"items.length > 4 && isClosedMore\" (click)=\"isClosedMore = false\">\n          <span class=\"ng-value-label\">{{items.length - 4}} еще...</span>\n        </div>\n        <div class=\"ng-value\" *ngIf=\"items.length > 4 && !isClosedMore\" (click)=\"isClosedMore = true\">\n          <span class=\"ng-value-label\">свернуть ...</span>\n        </div>\n      </ng-template>\n\n      <ng-template ng-multi-label-tmp let-items=\"items\" let-clear=\"clear\" *ngIf=\"isMultiple && isShowAll\">\n        <div class=\"ng-value\" *ngFor=\"let item of items.slice(0, undefined)\">\n          <span class=\"ng-value-label\">{{item.label}}</span>\n          <span class=\"ng-value-icon right\" (click)=\"clear(item)\" aria-hidden=\"true\">×</span>\n        </div>\n      </ng-template>\n    </ng-select>\n  </div>\n  <div class=\"invalid-feedback text-left\" *ngIf=\"!errorMessageInTooltip\">\n    {{GetErrorMessage()}}\n  </div>\n</div>\n","styles":["ng-select {\n  padding: 0; }\n\n:host /deep/ .ng-select-container {\n  border: none !important;\n  border-radius: 0; }\n\n.vertical-center {\n  display: flex;\n  align-items: center; }\n"]}]}],"members":{"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"isMultiple":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"isHideSelectedOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"isShowAll":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"componentForOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"componentForOptionGroups":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"componentForLabel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"../../services/cui/cui.helper","name":"CuiModelHelper","line":33,"character":37}]}],"ngOnInit":[{"__symbolic":"method"}]}}}}]