UNPKG

@taiga-ui/kit

Version:
77 lines 9.16 kB
import { __decorate } from "tslib"; import { ChangeDetectionStrategy, Component, forwardRef, Input, ViewChildren, } from '@angular/core'; import { ALWAYS_FALSE_HANDLER, EMPTY_QUERY, isNativeFocused, isPresent, TUI_DEFAULT_STRINGIFY, tuiDefaultProp, } from '@taiga-ui/cdk'; import { TUI_DATA_LIST_ACCESSOR, TuiOptionComponent, } from '@taiga-ui/core'; var TuiDataListWrapperComponent = /** @class */ (function () { function TuiDataListWrapperComponent() { this.items = []; this.disabledItemHandler = ALWAYS_FALSE_HANDLER; this.emptyContent = ''; this.itemContent = function (_a) { var $implicit = _a.$implicit; return TUI_DEFAULT_STRINGIFY($implicit); }; this.size = 'm'; this.options = EMPTY_QUERY; } TuiDataListWrapperComponent_1 = TuiDataListWrapperComponent; TuiDataListWrapperComponent.prototype.getContext = function ($implicit, _a) { var nativeElement = _a.nativeElement; return { $implicit: $implicit, active: isNativeFocused(nativeElement) }; }; TuiDataListWrapperComponent.prototype.getOptions = function (includeDisabled) { if (includeDisabled === void 0) { includeDisabled = false; } return this.options .toArray() .filter(function (_a) { var disabled = _a.disabled; return includeDisabled || !disabled; }) .map(function (_a) { var value = _a.value; return value; }) .filter(isPresent); }; var TuiDataListWrapperComponent_1; __decorate([ Input(), tuiDefaultProp() ], TuiDataListWrapperComponent.prototype, "items", void 0); __decorate([ Input(), tuiDefaultProp() ], TuiDataListWrapperComponent.prototype, "disabledItemHandler", void 0); __decorate([ Input(), tuiDefaultProp() ], TuiDataListWrapperComponent.prototype, "emptyContent", void 0); __decorate([ Input(), tuiDefaultProp() ], TuiDataListWrapperComponent.prototype, "itemContent", void 0); __decorate([ Input(), tuiDefaultProp() ], TuiDataListWrapperComponent.prototype, "size", void 0); __decorate([ ViewChildren(forwardRef(function () { return TuiOptionComponent; })) ], TuiDataListWrapperComponent.prototype, "options", void 0); TuiDataListWrapperComponent = TuiDataListWrapperComponent_1 = __decorate([ Component({ selector: 'tui-data-list-wrapper:not([labels])', template: "<tui-data-list *ngIf=\"items else loading\" [emptyContent]=\"emptyContent\">\n <button\n *ngFor=\"let item of items\"\n #elementRef=\"elementRef\"\n tuiElement\n tuiOption\n automation-id=\"tui-data-list-wrapper__option\"\n [size]=\"size\"\n [value]=\"item\"\n [disabled]=\"disabledItemHandler(item)\"\n >\n <span\n polymorpheus-outlet\n class=\"content\"\n [content]=\"itemContent\"\n [context]=\"getContext(item, elementRef)\"\n ></span>\n </button>\n</tui-data-list>\n<ng-template #loading>\n <tui-loader\n class=\"tui-space_vertical-3\"\n automation-id=\"tui-data-list-wrapper__loader\"\n ></tui-loader>\n</ng-template>\n", changeDetection: ChangeDetectionStrategy.OnPush, providers: [ { provide: TUI_DATA_LIST_ACCESSOR, useExisting: forwardRef(function () { return TuiDataListWrapperComponent_1; }), }, ], styles: [":host{display:block}.content{flex:1}"] }) ], TuiDataListWrapperComponent); return TuiDataListWrapperComponent; }()); export { TuiDataListWrapperComponent }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2RhdGEtbGlzdC13cmFwcGVyLyIsInNvdXJjZXMiOlsiZGF0YS1saXN0LXdyYXBwZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxVQUFVLEVBQ1YsS0FBSyxFQUVMLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLFdBQVcsRUFDWCxlQUFlLEVBQ2YsU0FBUyxFQUNULHFCQUFxQixFQUVyQixjQUFjLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxzQkFBc0IsRUFFdEIsa0JBQWtCLEdBSXJCLE1BQU0sZ0JBQWdCLENBQUM7QUFleEI7SUFBQTtRQUdJLFVBQUssR0FBOEQsRUFBRSxDQUFDO1FBSXRFLHdCQUFtQixHQUF5QixvQkFBb0IsQ0FBQztRQUlqRSxpQkFBWSxHQUF3QixFQUFFLENBQUM7UUFJdkMsZ0JBQVcsR0FBbUQsVUFBQyxFQUFXO2dCQUFWLHdCQUFTO1lBQ3JFLE9BQUEscUJBQXFCLENBQUMsU0FBUyxDQUFDO1FBQWhDLENBQWdDLENBQUM7UUFJckMsU0FBSSxHQUF5QixHQUFHLENBQUM7UUFHaEIsWUFBTyxHQUFxQyxXQUFXLENBQUM7SUFnQjdFLENBQUM7b0NBdkNZLDJCQUEyQjtJQXlCcEMsZ0RBQVUsR0FBVixVQUNJLFNBQVksRUFDWixFQUF3QztZQUF2QyxnQ0FBYTtRQUVkLE9BQU8sRUFBQyxTQUFTLFdBQUEsRUFBRSxNQUFNLEVBQUUsZUFBZSxDQUFDLGFBQWEsQ0FBQyxFQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELGdEQUFVLEdBQVYsVUFBVyxlQUFnQztRQUFoQyxnQ0FBQSxFQUFBLHVCQUFnQztRQUN2QyxPQUFPLElBQUksQ0FBQyxPQUFPO2FBQ2QsT0FBTyxFQUFFO2FBQ1QsTUFBTSxDQUFDLFVBQUMsRUFBVTtnQkFBVCxzQkFBUTtZQUFNLE9BQUEsZUFBZSxJQUFJLENBQUMsUUFBUTtRQUE1QixDQUE0QixDQUFDO2FBQ3BELEdBQUcsQ0FBQyxVQUFDLEVBQU87Z0JBQU4sZ0JBQUs7WUFBTSxPQUFBLEtBQUs7UUFBTCxDQUFLLENBQUM7YUFDdkIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzNCLENBQUM7O0lBbkNEO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFOzhEQUNxRDtJQUl0RTtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTs0RUFDZ0Q7SUFJakU7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7cUVBQ3NCO0lBSXZDO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFO29FQUVvQjtJQUlyQztRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTs2REFDZ0I7SUFHakM7UUFEQyxZQUFZLENBQUMsVUFBVSxDQUFDLGNBQU0sT0FBQSxrQkFBa0IsRUFBbEIsQ0FBa0IsQ0FBQyxDQUFDO2dFQUNzQjtJQXZCaEUsMkJBQTJCO1FBWnZDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxxQ0FBcUM7WUFDL0MsNHdCQUFnRDtZQUVoRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtZQUMvQyxTQUFTLEVBQUU7Z0JBQ1A7b0JBQ0ksT0FBTyxFQUFFLHNCQUFzQjtvQkFDL0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxjQUFNLE9BQUEsNkJBQTJCLEVBQTNCLENBQTJCLENBQUM7aUJBQzdEO2FBQ0o7O1NBQ0osQ0FBQztPQUNXLDJCQUEyQixDQXVDdkM7SUFBRCxrQ0FBQztDQUFBLEFBdkNELElBdUNDO1NBdkNZLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbnB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQUxXQVlTX0ZBTFNFX0hBTkRMRVIsXG4gICAgRU1QVFlfUVVFUlksXG4gICAgaXNOYXRpdmVGb2N1c2VkLFxuICAgIGlzUHJlc2VudCxcbiAgICBUVUlfREVGQVVMVF9TVFJJTkdJRlksXG4gICAgVHVpQm9vbGVhbkhhbmRsZXIsXG4gICAgdHVpRGVmYXVsdFByb3AsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBUVUlfREFUQV9MSVNUX0FDQ0VTU09SLFxuICAgIFR1aURhdGFMaXN0QWNjZXNzb3IsXG4gICAgVHVpT3B0aW9uQ29tcG9uZW50LFxuICAgIFR1aVNpemVMLFxuICAgIFR1aVNpemVYUyxcbiAgICBUdWlWYWx1ZUNvbnRlbnRDb250ZXh0LFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWRhdGEtbGlzdC13cmFwcGVyOm5vdChbbGFiZWxzXSknLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kYXRhLWxpc3Qtd3JhcHBlci50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kYXRhLWxpc3Qtd3JhcHBlci5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9EQVRBX0xJU1RfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlEYXRhTGlzdFdyYXBwZXJDb21wb25lbnQpLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURhdGFMaXN0V3JhcHBlckNvbXBvbmVudDxUPiBpbXBsZW1lbnRzIFR1aURhdGFMaXN0QWNjZXNzb3I8VD4ge1xuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpdGVtczogUmVhZG9ubHlBcnJheTxSZWFkb25seUFycmF5PFQ+PiB8IFJlYWRvbmx5QXJyYXk8VD4gfCBudWxsID0gW107XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXI8VD4gPSBBTFdBWVNfRkFMU0VfSEFORExFUjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBlbXB0eUNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBpdGVtQ29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlWYWx1ZUNvbnRlbnRDb250ZXh0PFQ+PiA9ICh7JGltcGxpY2l0fSkgPT5cbiAgICAgICAgVFVJX0RFRkFVTFRfU1RSSU5HSUZZKCRpbXBsaWNpdCk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2l6ZTogVHVpU2l6ZVhTIHwgVHVpU2l6ZUwgPSAnbSc7XG5cbiAgICBAVmlld0NoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gVHVpT3B0aW9uQ29tcG9uZW50KSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFF1ZXJ5TGlzdDxUdWlPcHRpb25Db21wb25lbnQ8VD4+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICBnZXRDb250ZXh0KFxuICAgICAgICAkaW1wbGljaXQ6IFQsXG4gICAgICAgIHtuYXRpdmVFbGVtZW50fTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgKTogVHVpVmFsdWVDb250ZW50Q29udGV4dDxUPiB7XG4gICAgICAgIHJldHVybiB7JGltcGxpY2l0LCBhY3RpdmU6IGlzTmF0aXZlRm9jdXNlZChuYXRpdmVFbGVtZW50KX07XG4gICAgfVxuXG4gICAgZ2V0T3B0aW9ucyhpbmNsdWRlRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZSk6IFJlYWRvbmx5QXJyYXk8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zXG4gICAgICAgICAgICAudG9BcnJheSgpXG4gICAgICAgICAgICAuZmlsdGVyKCh7ZGlzYWJsZWR9KSA9PiBpbmNsdWRlRGlzYWJsZWQgfHwgIWRpc2FibGVkKVxuICAgICAgICAgICAgLm1hcCgoe3ZhbHVlfSkgPT4gdmFsdWUpXG4gICAgICAgICAgICAuZmlsdGVyKGlzUHJlc2VudCk7XG4gICAgfVxufVxuIl19