UNPKG

@taiga-ui/kit

Version:

Taiga UI Angular main components kit

26 lines 5.99 kB
import { ChangeDetectionStrategy, Component, signal } from '@angular/core'; import { tuiPx } from '@taiga-ui/cdk/utils/miscellaneous'; import { TuiElasticContainerDirective } from './elastic-container.directive'; import * as i0 from "@angular/core"; class TuiElasticContainer { constructor() { this.height = signal(''); this.transitions = signal(0); } onAnimation(name, count) { if (name === 'height') { this.transitions.update((value) => value + count); } } updateHeight(height) { this.height.set(tuiPx(height)); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiElasticContainer, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiElasticContainer, isStandalone: true, selector: "tui-elastic-container", host: { properties: { "style.block-size": "transitions() ? \"auto\" : height()" } }, ngImport: i0, template: "<div\n class=\"t-wrapper\"\n (transitioncancel)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionend)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionstart)=\"onAnimation($any($event).propertyName, 1)\"\n (tuiElasticContainer)=\"updateHeight($event)\"\n>\n <ng-content />\n</div>\n", styles: [":host{transition-property:height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:block;overflow:hidden}.t-wrapper{padding-block-start:1px;margin-block-start:-1px}\n"], dependencies: [{ kind: "directive", type: TuiElasticContainerDirective, selector: "[tuiElasticContainer]", outputs: ["tuiElasticContainer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } export { TuiElasticContainer }; i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiElasticContainer, decorators: [{ type: Component, args: [{ standalone: true, selector: 'tui-elastic-container', imports: [TuiElasticContainerDirective], changeDetection: ChangeDetectionStrategy.OnPush, host: { '[style.block-size]': 'transitions() ? "auto" : height()' }, template: "<div\n class=\"t-wrapper\"\n (transitioncancel)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionend)=\"onAnimation($any($event).propertyName, -1)\"\n (transitionstart)=\"onAnimation($any($event).propertyName, 1)\"\n (tuiElasticContainer)=\"updateHeight($event)\"\n>\n <ng-content />\n</div>\n", styles: [":host{transition-property:height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:block;overflow:hidden}.t-wrapper{padding-block-start:1px;margin-block-start:-1px}\n"] }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxhc3RpYy1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZWxhc3RpYy1jb250YWluZXIvZWxhc3RpYy1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvZWxhc3RpYy1jb250YWluZXIvZWxhc3RpYy1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRXhELE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLCtCQUErQixDQUFDOztBQUUzRSxNQVNhLG1CQUFtQjtJQVRoQztRQVVjLFdBQU0sR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FXckM7SUFUYSxXQUFXLENBQUMsSUFBWSxFQUFFLEtBQWE7UUFDN0MsSUFBSSxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7U0FDckQ7SUFDTCxDQUFDO0lBRVMsWUFBWSxDQUFDLE1BQWM7UUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDbkMsQ0FBQzsrR0FaUSxtQkFBbUI7bUdBQW5CLG1CQUFtQixzS0NkaEMsb1VBU0EsMFFERGMsNEJBQTRCOztTQU03QixtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkFUL0IsU0FBUztpQ0FDTSxJQUFJLFlBQ04sdUJBQXVCLFdBQ3hCLENBQUMsNEJBQTRCLENBQUMsbUJBR3RCLHVCQUF1QixDQUFDLE1BQU0sUUFDekMsRUFBQyxvQkFBb0IsRUFBRSxtQ0FBbUMsRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgc2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHVpUHh9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5cbmltcG9ydCB7VHVpRWxhc3RpY0NvbnRhaW5lckRpcmVjdGl2ZX0gZnJvbSAnLi9lbGFzdGljLWNvbnRhaW5lci5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWVsYXN0aWMtY29udGFpbmVyJyxcbiAgICBpbXBvcnRzOiBbVHVpRWxhc3RpY0NvbnRhaW5lckRpcmVjdGl2ZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VsYXN0aWMtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9lbGFzdGljLWNvbnRhaW5lci5jb21wb25lbnQubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHsnW3N0eWxlLmJsb2NrLXNpemVdJzogJ3RyYW5zaXRpb25zKCkgPyBcImF1dG9cIiA6IGhlaWdodCgpJ30sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUVsYXN0aWNDb250YWluZXIge1xuICAgIHByb3RlY3RlZCBoZWlnaHQgPSBzaWduYWwoJycpO1xuICAgIHByb3RlY3RlZCB0cmFuc2l0aW9ucyA9IHNpZ25hbCgwKTtcblxuICAgIHByb3RlY3RlZCBvbkFuaW1hdGlvbihuYW1lOiBzdHJpbmcsIGNvdW50OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKG5hbWUgPT09ICdoZWlnaHQnKSB7XG4gICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25zLnVwZGF0ZSgodmFsdWUpID0+IHZhbHVlICsgY291bnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHVwZGF0ZUhlaWdodChoZWlnaHQ6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLmhlaWdodC5zZXQodHVpUHgoaGVpZ2h0KSk7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwidC13cmFwcGVyXCJcbiAgICAodHJhbnNpdGlvbmNhbmNlbCk9XCJvbkFuaW1hdGlvbigkYW55KCRldmVudCkucHJvcGVydHlOYW1lLCAtMSlcIlxuICAgICh0cmFuc2l0aW9uZW5kKT1cIm9uQW5pbWF0aW9uKCRhbnkoJGV2ZW50KS5wcm9wZXJ0eU5hbWUsIC0xKVwiXG4gICAgKHRyYW5zaXRpb25zdGFydCk9XCJvbkFuaW1hdGlvbigkYW55KCRldmVudCkucHJvcGVydHlOYW1lLCAxKVwiXG4gICAgKHR1aUVsYXN0aWNDb250YWluZXIpPVwidXBkYXRlSGVpZ2h0KCRldmVudClcIlxuPlxuICAgIDxuZy1jb250ZW50IC8+XG48L2Rpdj5cbiJdfQ==