@taiga-ui/core 2.63.0 → 2.65.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.
@@ -1,2 +1,2 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@ng-web-apis/common"),require("@taiga-ui/cdk"),require("@taiga-ui/core/animations"),require("@taiga-ui/core/directives"),require("@taiga-ui/core/directives/pointer-hint"),require("@taiga-ui/core/tokens"),require("@taiga-ui/core/utils"),require("@tinkoff/ng-polymorpheus"),require("rxjs"),require("rxjs/operators"),require("@taiga-ui/core/services"),require("@angular/common")):"function"==typeof define&&define.amd?define("@taiga-ui/core/components/hints-host",["exports","@angular/core","@ng-web-apis/common","@taiga-ui/cdk","@taiga-ui/core/animations","@taiga-ui/core/directives","@taiga-ui/core/directives/pointer-hint","@taiga-ui/core/tokens","@taiga-ui/core/utils","@tinkoff/ng-polymorpheus","rxjs","rxjs/operators","@taiga-ui/core/services","@angular/common"],e):e(((t=t||self)["taiga-ui"]=t["taiga-ui"]||{},t["taiga-ui"].core=t["taiga-ui"].core||{},t["taiga-ui"].core.components=t["taiga-ui"].core.components||{},t["taiga-ui"].core.components["hints-host"]={}),t.ng.core,t.common,t.cdk,t["taiga-ui"].core.animations,t["taiga-ui"].core.directives,t["taiga-ui"].core.directives["pointer-hint"],t["taiga-ui"].core.tokens,t["taiga-ui"].core.utils,t.ngPolymorpheus,t.rxjs,t.rxjs.operators,t["taiga-ui"].core.services,t.ng.common)}(this,(function(t,e,o,i,r,n,a,s,d,c,h,l,u,p){"use strict";var f=function(){return(f=Object.assign||function(t){for(var e,o=1,i=arguments.length;o<i;o++)for(var r in e=arguments[o])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function m(t,e,o,i){var r,n=arguments.length,a=n<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,o,i);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(a=(n<3?r(a):n>3?r(e,o,a):r(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a}function b(t,e){return function(o,i){e(o,i,t)}}Object.create;Object.create;var g=function(){function t(t,e){this.elementRef=t,this.hints$=e,this.component=new c.PolymorpheusComponent(x)}return Object.defineProperty(t.prototype,"clientRect",{get:function(){return this.elementRef.nativeElement.getBoundingClientRect()},enumerable:!0,configurable:!0}),t.ctorParameters=function(){return[{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:h.Observable,decorators:[{type:e.Inject,args:[u.TuiHintService]}]}]},t=m([e.Component({selector:"tui-hints-host",template:'<div\n *ngFor="let hint of hints$ | async"\n role="tooltip"\n polymorpheus-outlet\n @tuiParentAnimation\n [attr.id]="hint.id"\n [content]="hint.component || component"\n [context]="{$implicit: hint}"\n [tuiActiveZoneParent]="hint.activeZone"\n></div>\n',changeDetection:e.ChangeDetectionStrategy.OnPush,animations:[i.TUI_PARENT_ANIMATION],host:{"aria-live":"polite"},styles:[":host{position:fixed;bottom:0;left:0;width:100%;height:0}"]}),b(0,e.Inject(e.ElementRef)),b(1,e.Inject(u.TuiHintService))],t)}(),v=16+8*Math.sqrt(2)/2,w={"top-left":"bottom-left","top-right":"bottom-right","bottom-left":"top-left","bottom-right":"top-right",left:"right",right:"left","top-middle":"bottom-middle","bottom-middle":"top-middle"},y={"top-left":"top-right","top-right":"top-left","bottom-left":"bottom-right","bottom-right":"bottom-left",left:"right",right:"left","top-middle":"top-middle","bottom-middle":"bottom-middle"},x=function(){function t(t,e,o,r,n,a,s,d,c){var h=this;this.options=r,this.elementRef=n,this.windowRef=a,this.media=s,this.hintsHost=d,this.context=c,this.animation=f({value:""},this.options),t.pipe(i.tuiZonefree(o),l.takeUntil(e)).subscribe((function(){return h.calculatePosition()}))}return Object.defineProperty(t.prototype,"hint",{get:function(){return this.context.$implicit},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isUntouchable",{get:function(){return this.hint instanceof a.TuiPointerHintDirective},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"mode",{get:function(){return this.hint.mode},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isMobile",{get:function(){return d.tuiIsMobile(this.windowRef,this.media)},enumerable:!0,configurable:!0}),t.prototype.onHovered=function(t){this.hint instanceof n.TuiHintDirective&&this.hint.componentHovered$.next(t)},t.prototype.calculatePosition=function(){"overflow"!==this.mode?this.calculateCoordinates():this.setOverflowStyles()},t.prototype.calculateCoordinates=function(){if(this.isMobile)this.calculateMobileCoordinates();else{var t=this.hint.getElementClientRect(),e=this.hintsHost.clientRect,o=this.elementRef.nativeElement,r=o.style,n=o.getBoundingClientRect(),a=t.width>2*v,s=["left","right","bottom-left","bottom-right","bottom-middle","top-left","top-right","top-middle"],d=0,c=0,h=this.hint.direction,l=t.top+t.height/2-n.height/2-e.top,u=t.left-n.width-8-e.left,p=t.left+t.width+8-e.left,f=t.bottom+8-e.top,m=t.top-n.height-8-e.top,b=a?t.left-e.left:t.left+t.width/2-v-e.left,g=a?t.left-n.width+t.width-e.left:t.left-n.width+t.width/2+v-e.left,x=t.left-n.width/2+t.width/2-e.left;for(s.splice(s.indexOf(h),1);;){switch(h){case"left":d=l,c=u;break;case"right":d=l,c=p;break;case"top-right":d=m,c=b;break;case"top-left":d=m,c=g;break;case"bottom-right":d=f,c=b;break;case"bottom-left":d=f,c=g;break;case"bottom-middle":d=f,c=x;break;case"top-middle":d=m,c=x}var I=d+e.top>8&&d+n.height+8+e.top<this.windowRef.innerHeight,j=c>8&&c+n.width+8+e.left<e.width;if(0===s.length||I&&j)break;h=I?y[h]:w[h],h=s.splice(s.indexOf(h),1)[0]||h}r.top=i.px(d),r.left=i.px(c),o.setAttribute("data-tui-host-direction",h)}},t.prototype.calculateMobileCoordinates=function(){var t=this.hint.getElementClientRect(),e=this.hintsHost.clientRect,o=this.elementRef.nativeElement,r=o.style,n=o.getBoundingClientRect(),a=t.top-n.height-8-e.top,s=t.bottom+8-e.top,d=a+e.top>8&&t.top<this.windowRef.innerHeight,c=t.bottom>0&&t.bottom+16+n.height<this.windowRef.innerHeight,h=this.hint.direction.includes("top")&&d||!c?"top":"bottom",l=e.left+t.left+t.width/2-n.width/2,u=Math.max(l+n.width+8>e.right?e.right-8-n.width:l,16);r.left=i.px(u),r.top="top"===h?i.px(a):i.px(s),this.arrow&&(this.arrow.nativeElement.style.left=i.px(t.left<=16&&t.width>32?16:t.left+t.width/2-u-4)),o.setAttribute("data-tui-host-direction",h)},t.prototype.setOverflowStyles=function(){var t=this.hint.getElementClientRect(),e=this.elementRef.nativeElement.style;e.top=i.px(t.top-window.innerHeight-12-1),e.left=i.px(t.left-16-1),e.width=i.px(t.width+32+2)},t.ctorParameters=function(){return[{type:h.Observable,decorators:[{type:e.Inject,args:[o.ANIMATION_FRAME]}]},{type:h.Observable,decorators:[{type:e.Inject,args:[i.TuiDestroyService]}]},{type:e.NgZone,decorators:[{type:e.Inject,args:[e.NgZone]}]},{type:void 0,decorators:[{type:e.Inject,args:[s.TUI_ANIMATION_OPTIONS]}]},{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:Window,decorators:[{type:e.Inject,args:[o.WINDOW]}]},{type:void 0,decorators:[{type:e.Inject,args:[s.TUI_MEDIA]}]},{type:g,decorators:[{type:e.Inject,args:[e.forwardRef((function(){return g}))]}]},{type:void 0,decorators:[{type:e.Inject,args:[c.POLYMORPHEUS_CONTEXT]}]}]},m([e.ViewChild("arrow")],t.prototype,"arrow",void 0),m([e.HostBinding("@tuiFadeIn")],t.prototype,"animation",void 0),m([i.tuiPure,e.HostBinding("class._untouchable")],t.prototype,"isUntouchable",null),m([e.HostBinding("attr.data-mode")],t.prototype,"mode",null),t=m([e.Component({selector:"tui-hint-box[hint]",template:'\x3c!-- @bad TODO: Refactor to use this arrow in all cases --\x3e\n<div\n *ngIf="isMobile"\n #arrow\n class="t-arrow"\n></div>\n<div\n automation-id="tui-hint-box__tooltip"\n polymorpheus-outlet\n class="t-tooltip"\n [content]="hint.content"\n (tuiHoveredChange)="onHovered($event)"\n>\n <ng-template let-text>\n <span class="t-text">{{ text }}</span>\n </ng-template>\n</div>\n',changeDetection:e.ChangeDetectionStrategy.OnPush,providers:[i.TuiDestroyService],animations:[r.tuiFadeIn],styles:[":host{position:absolute;top:0;left:0;max-width:18rem;min-height:var(--tui-height-m);padding:.75rem 1rem;background:var(--tui-primary);border-radius:var(--tui-radius-l);color:var(--tui-primary-text);box-sizing:border-box}:host .t-arrow,:host:not([data-mode=overflow]):before{content:'';position:absolute;width:.5rem;height:.5rem;border-radius:.125rem;box-sizing:border-box;background-color:inherit;transform:rotate(45deg)}:host[data-tui-host-direction=top] .t-arrow{bottom:-.25rem}:host[data-tui-host-direction=bottom] .t-arrow{top:-.25rem}:host[data-tui-host-direction=bottom]:before,:host[data-tui-host-direction=top]:before{display:none}:host[data-tui-host-direction=top-left]:before,:host[data-tui-host-direction=top-middle]:before,:host[data-tui-host-direction=top-right]:before{bottom:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=bottom-middle]:before,:host[data-tui-host-direction=bottom-right]:before{top:-.25rem}:host[data-tui-host-direction=bottom-middle]:before,:host[data-tui-host-direction=top-middle]:before{left:calc(50% - .2rem)}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=top-left]:before{right:1.075rem}:host[data-tui-host-direction=bottom-right]:before,:host[data-tui-host-direction=top-right]:before{left:1.075rem}:host[data-tui-host-direction=left]:before,:host[data-tui-host-direction=right]:before{top:50%;margin-top:-.25rem}:host[data-tui-host-direction=left]:before{right:-.25rem}:host[data-tui-host-direction=right]:before{left:-.25rem}:host[data-mode=error]{background-color:var(--tui-error-fill)}:host[data-mode=onDark],:host[data-mode=overflow]{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);border:1px solid var(--tui-base-03);background-color:var(--tui-base-01);color:var(--tui-text-01)}:host[data-mode=onDark]:before,:host[data-mode=overflow]:before{border:1px solid var(--tui-base-03)}:host[data-mode=onDark][data-tui-host-direction=left]:before,:host[data-mode=overflow][data-tui-host-direction=left]:before{border-left-color:transparent;border-bottom-color:transparent}:host[data-mode=onDark][data-tui-host-direction=right]:before,:host[data-mode=overflow][data-tui-host-direction=right]:before{border-right-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=top-left]:before,:host[data-mode=onDark][data-tui-host-direction=top-middle]:before,:host[data-mode=onDark][data-tui-host-direction=top-right]:before,:host[data-mode=overflow][data-tui-host-direction=top-left]:before,:host[data-mode=overflow][data-tui-host-direction=top-middle]:before,:host[data-mode=overflow][data-tui-host-direction=top-right]:before{border-left-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=bottom-left]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-middle]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-right]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-left]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-middle]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-right]:before{border-right-color:transparent;border-bottom-color:transparent}:host[data-mode=overflow]{max-width:none}:host._untouchable{pointer-events:none}.t-tooltip{font:var(--tui-font-text-s);word-wrap:break-word}:host[data-mode=overflow] .t-tooltip{font:inherit}.t-text{white-space:pre-wrap}"]}),b(0,e.Inject(o.ANIMATION_FRAME)),b(1,e.Inject(i.TuiDestroyService)),b(2,e.Inject(e.NgZone)),b(3,e.Inject(s.TUI_ANIMATION_OPTIONS)),b(4,e.Inject(e.ElementRef)),b(5,e.Inject(o.WINDOW)),b(6,e.Inject(s.TUI_MEDIA)),b(7,e.Inject(e.forwardRef((function(){return g})))),b(8,e.Inject(c.POLYMORPHEUS_CONTEXT))],t)}(),I=function(){function t(){}return t=m([e.NgModule({imports:[p.CommonModule,c.PolymorpheusModule,i.TuiHoveredModule],declarations:[x],exports:[x],entryComponents:[x]})],t)}(),j=function(){function t(){}return t=m([e.NgModule({imports:[p.CommonModule,c.PolymorpheusModule,I,i.TuiActiveZoneModule],declarations:[g],exports:[g]})],t)}();t.TuiHintBoxComponent=x,t.TuiHintBoxModule=I,t.TuiHintsHostComponent=g,t.TuiHintsHostModule=j,Object.defineProperty(t,"__esModule",{value:!0})}));
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@ng-web-apis/common"),require("@taiga-ui/cdk"),require("@taiga-ui/core/animations"),require("@taiga-ui/core/directives"),require("@taiga-ui/core/directives/pointer-hint"),require("@taiga-ui/core/tokens"),require("@taiga-ui/core/utils"),require("@tinkoff/ng-polymorpheus"),require("rxjs"),require("rxjs/operators"),require("@taiga-ui/core/services"),require("@angular/common")):"function"==typeof define&&define.amd?define("@taiga-ui/core/components/hints-host",["exports","@angular/core","@ng-web-apis/common","@taiga-ui/cdk","@taiga-ui/core/animations","@taiga-ui/core/directives","@taiga-ui/core/directives/pointer-hint","@taiga-ui/core/tokens","@taiga-ui/core/utils","@tinkoff/ng-polymorpheus","rxjs","rxjs/operators","@taiga-ui/core/services","@angular/common"],e):e(((t=t||self)["taiga-ui"]=t["taiga-ui"]||{},t["taiga-ui"].core=t["taiga-ui"].core||{},t["taiga-ui"].core.components=t["taiga-ui"].core.components||{},t["taiga-ui"].core.components["hints-host"]={}),t.ng.core,t.common,t.cdk,t["taiga-ui"].core.animations,t["taiga-ui"].core.directives,t["taiga-ui"].core.directives["pointer-hint"],t["taiga-ui"].core.tokens,t["taiga-ui"].core.utils,t.ngPolymorpheus,t.rxjs,t.rxjs.operators,t["taiga-ui"].core.services,t.ng.common)}(this,(function(t,e,o,i,r,n,a,s,d,c,h,l,u,p){"use strict";var f=function(){return(f=Object.assign||function(t){for(var e,o=1,i=arguments.length;o<i;o++)for(var r in e=arguments[o])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function m(t,e,o,i){var r,n=arguments.length,a=n<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,o,i);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(a=(n<3?r(a):n>3?r(e,o,a):r(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a}function b(t,e){return function(o,i){e(o,i,t)}}Object.create;Object.create;var g=function(){function t(t,e){this.elementRef=t,this.hints$=e,this.component=new c.PolymorpheusComponent(x)}return Object.defineProperty(t.prototype,"clientRect",{get:function(){return this.elementRef.nativeElement.getBoundingClientRect()},enumerable:!0,configurable:!0}),t.ctorParameters=function(){return[{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:h.Observable,decorators:[{type:e.Inject,args:[u.TuiHintService]}]}]},t=m([e.Component({selector:"tui-hints-host",template:'<div\n *ngFor="let hint of hints$ | async"\n role="tooltip"\n polymorpheus-outlet\n @tuiParentAnimation\n [attr.id]="hint.id"\n [content]="hint.component || component"\n [context]="{$implicit: hint}"\n [tuiActiveZoneParent]="hint.activeZone"\n></div>\n',changeDetection:e.ChangeDetectionStrategy.OnPush,animations:[i.TUI_PARENT_ANIMATION],host:{"aria-live":"polite"},styles:[":host{position:fixed;bottom:0;left:0;width:100%;height:0}"]}),b(0,e.Inject(e.ElementRef)),b(1,e.Inject(u.TuiHintService))],t)}(),v=16+8*Math.sqrt(2)/2,w={"top-left":"bottom-left","top-right":"bottom-right","bottom-left":"top-left","bottom-right":"top-right",left:"right",right:"left","top-middle":"bottom-middle","bottom-middle":"top-middle"},y={"top-left":"top-right","top-right":"top-left","bottom-left":"bottom-right","bottom-right":"bottom-left",left:"right",right:"left","top-middle":"top-middle","bottom-middle":"bottom-middle"},x=function(){function t(t,e,o,r,n,a,s,d,c){var h=this;this.options=r,this.elementRef=n,this.windowRef=a,this.media=s,this.hintsHost=d,this.context=c,this.animation=f({value:""},this.options),t.pipe(i.tuiZonefree(o),l.takeUntil(e)).subscribe((function(){return h.calculatePosition()}))}return Object.defineProperty(t.prototype,"hint",{get:function(){return this.context.$implicit},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isUntouchable",{get:function(){return this.hint instanceof a.TuiPointerHintDirective},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"mode",{get:function(){return this.hint.mode},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isMobile",{get:function(){return d.tuiIsMobile(this.windowRef,this.media)},enumerable:!0,configurable:!0}),t.prototype.onHovered=function(t){this.hint instanceof n.TuiHintDirective&&this.hint.componentHovered$.next(t)},t.prototype.calculatePosition=function(){"overflow"!==this.mode?this.calculateCoordinates():this.setOverflowStyles()},t.prototype.calculateCoordinates=function(){if(this.isMobile)this.calculateMobileCoordinates();else{var t=this.hint.getElementClientRect(),e=this.hintsHost.clientRect,o=this.elementRef.nativeElement,r=o.style,n=o.getBoundingClientRect(),a=t.width>2*v,s=["left","right","bottom-left","bottom-right","bottom-middle","top-left","top-right","top-middle"],d=0,c=0,h=this.hint.direction,l=t.top+t.height/2-n.height/2-e.top,u=t.left-n.width-8-e.left,p=t.left+t.width+8-e.left,f=t.bottom+8-e.top,m=t.top-n.height-8-e.top,b=a?t.left-e.left:t.left+t.width/2-v-e.left,g=a?t.left-n.width+t.width-e.left:t.left-n.width+t.width/2+v-e.left,x=t.left-n.width/2+t.width/2-e.left;for(s.splice(s.indexOf(h),1);;){switch(h){case"left":d=l,c=u;break;case"right":d=l,c=p;break;case"top-right":d=m,c=b;break;case"top-left":d=m,c=g;break;case"bottom-right":d=f,c=b;break;case"bottom-left":d=f,c=g;break;case"bottom-middle":d=f,c=x;break;case"top-middle":d=m,c=x}var I=d+e.top>8&&d+n.height+8+e.top<this.windowRef.innerHeight,j=c>8&&c+n.width+8+e.left<e.width;if(0===s.length||I&&j)break;h=I?y[h]:w[h],h=s.splice(s.indexOf(h),1)[0]||h}r.top=i.px(d),r.left=i.px(c),o.setAttribute("data-tui-host-direction",h)}},t.prototype.calculateMobileCoordinates=function(){var t=this.hint.getElementClientRect(),e=this.hintsHost.clientRect,o=this.elementRef.nativeElement,r=o.style,n=o.getBoundingClientRect(),a=t.top-n.height-8-e.top,s=t.bottom+8-e.top,d=a+e.top>8&&t.top<this.windowRef.innerHeight,c=t.bottom>0&&t.bottom+16+n.height<this.windowRef.innerHeight,h=this.hint.direction.includes("top")&&d||!c?"top":"bottom",l=e.left+t.left+t.width/2-n.width/2,u=Math.max(l+n.width+8>e.right?e.right-8-n.width:l,16);r.left=i.px(u),r.top="top"===h?i.px(a):i.px(s),this.arrow&&(this.arrow.nativeElement.style.left=i.px(t.left<=16&&t.width>32?16:t.left+t.width/2-u-4)),o.setAttribute("data-tui-host-direction",h)},t.prototype.setOverflowStyles=function(){var t=this.hint.getElementClientRect(),e=this.elementRef.nativeElement.style;e.top=i.px(t.top-window.innerHeight-12-1),e.left=i.px(t.left-16-1),e.width=i.px(t.width+32+2)},t.ctorParameters=function(){return[{type:h.Observable,decorators:[{type:e.Inject,args:[o.ANIMATION_FRAME]}]},{type:h.Observable,decorators:[{type:e.Inject,args:[i.TuiDestroyService]}]},{type:e.NgZone,decorators:[{type:e.Inject,args:[e.NgZone]}]},{type:void 0,decorators:[{type:e.Inject,args:[s.TUI_ANIMATION_OPTIONS]}]},{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:Window,decorators:[{type:e.Inject,args:[o.WINDOW]}]},{type:void 0,decorators:[{type:e.Inject,args:[s.TUI_MEDIA]}]},{type:g,decorators:[{type:e.Inject,args:[e.forwardRef((function(){return g}))]}]},{type:void 0,decorators:[{type:e.Inject,args:[c.POLYMORPHEUS_CONTEXT]}]}]},m([e.ViewChild("arrow")],t.prototype,"arrow",void 0),m([e.HostBinding("@tuiFadeIn")],t.prototype,"animation",void 0),m([i.tuiPure,e.HostBinding("class._untouchable")],t.prototype,"isUntouchable",null),m([e.HostBinding("attr.data-mode")],t.prototype,"mode",null),t=m([e.Component({selector:"tui-hint-box[hint]",template:'\x3c!-- @bad TODO: Refactor to use this arrow in all cases --\x3e\n<div\n *ngIf="isMobile && mode !== \'overflow\'"\n #arrow\n class="t-arrow"\n></div>\n<div\n automation-id="tui-hint-box__tooltip"\n polymorpheus-outlet\n class="t-tooltip"\n [content]="hint.content"\n (tuiHoveredChange)="onHovered($event)"\n>\n <ng-template let-text>\n <span class="t-text">{{ text }}</span>\n </ng-template>\n</div>\n',changeDetection:e.ChangeDetectionStrategy.OnPush,providers:[i.TuiDestroyService],animations:[r.tuiFadeIn],styles:[":host{position:absolute;top:0;left:0;max-width:18rem;min-height:var(--tui-height-m);padding:.75rem 1rem;background:var(--tui-primary);border-radius:var(--tui-radius-l);color:var(--tui-primary-text);box-sizing:border-box}:host .t-arrow,:host:not([data-mode=overflow]):before{content:'';position:absolute;width:.5rem;height:.5rem;border-radius:.125rem;box-sizing:border-box;background-color:inherit;transform:rotate(45deg)}:host[data-tui-host-direction=top] .t-arrow{bottom:-.25rem}:host[data-tui-host-direction=bottom] .t-arrow{top:-.25rem}:host[data-tui-host-direction=bottom]:before,:host[data-tui-host-direction=top]:before{display:none}:host[data-tui-host-direction=top-left]:before,:host[data-tui-host-direction=top-middle]:before,:host[data-tui-host-direction=top-right]:before{bottom:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=bottom-middle]:before,:host[data-tui-host-direction=bottom-right]:before{top:-.25rem}:host[data-tui-host-direction=bottom-middle]:before,:host[data-tui-host-direction=top-middle]:before{left:calc(50% - .2rem)}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=top-left]:before{right:1.075rem}:host[data-tui-host-direction=bottom-right]:before,:host[data-tui-host-direction=top-right]:before{left:1.075rem}:host[data-tui-host-direction=left]:before,:host[data-tui-host-direction=right]:before{top:50%;margin-top:-.25rem}:host[data-tui-host-direction=left]:before{right:-.25rem}:host[data-tui-host-direction=right]:before{left:-.25rem}:host[data-mode=error]{background-color:var(--tui-error-fill)}:host[data-mode=onDark],:host[data-mode=overflow]{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);border:1px solid var(--tui-base-03);background-color:var(--tui-base-01);color:var(--tui-text-01)}:host[data-mode=onDark]:before,:host[data-mode=overflow]:before{border:1px solid var(--tui-base-03)}:host[data-mode=onDark][data-tui-host-direction=left]:before,:host[data-mode=overflow][data-tui-host-direction=left]:before{border-left-color:transparent;border-bottom-color:transparent}:host[data-mode=onDark][data-tui-host-direction=right]:before,:host[data-mode=overflow][data-tui-host-direction=right]:before{border-right-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=top-left]:before,:host[data-mode=onDark][data-tui-host-direction=top-middle]:before,:host[data-mode=onDark][data-tui-host-direction=top-right]:before,:host[data-mode=overflow][data-tui-host-direction=top-left]:before,:host[data-mode=overflow][data-tui-host-direction=top-middle]:before,:host[data-mode=overflow][data-tui-host-direction=top-right]:before{border-left-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=bottom-left]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-middle]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-right]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-left]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-middle]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-right]:before{border-right-color:transparent;border-bottom-color:transparent}:host[data-mode=overflow]{max-width:none}:host._untouchable{pointer-events:none}.t-tooltip{font:var(--tui-font-text-s);word-wrap:break-word}:host[data-mode=overflow] .t-tooltip{font:inherit}.t-text{white-space:pre-wrap}"]}),b(0,e.Inject(o.ANIMATION_FRAME)),b(1,e.Inject(i.TuiDestroyService)),b(2,e.Inject(e.NgZone)),b(3,e.Inject(s.TUI_ANIMATION_OPTIONS)),b(4,e.Inject(e.ElementRef)),b(5,e.Inject(o.WINDOW)),b(6,e.Inject(s.TUI_MEDIA)),b(7,e.Inject(e.forwardRef((function(){return g})))),b(8,e.Inject(c.POLYMORPHEUS_CONTEXT))],t)}(),I=function(){function t(){}return t=m([e.NgModule({imports:[p.CommonModule,c.PolymorpheusModule,i.TuiHoveredModule],declarations:[x],exports:[x],entryComponents:[x]})],t)}(),j=function(){function t(){}return t=m([e.NgModule({imports:[p.CommonModule,c.PolymorpheusModule,I,i.TuiActiveZoneModule],declarations:[g],exports:[g]})],t)}();t.TuiHintBoxComponent=x,t.TuiHintBoxModule=I,t.TuiHintsHostComponent=g,t.TuiHintsHostModule=j,Object.defineProperty(t,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=taiga-ui-core-components-hints-host.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/hints-host/hints-host.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.module.ts","ng://@taiga-ui/core/components/hints-host/hints-host.module.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__param","paramIndex","decorator","create","TuiHintsHostComponent","elementRef","hints$","component","PolymorpheusComponent","TuiHintBoxComponent","nativeElement","getBoundingClientRect","ElementRef","type","Inject","args","Observable","TuiHintService","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","animations","TUI_PARENT_ANIMATION","host","aria-live","ARROWHEAD_OFFSET","Math","sqrt","reverseDirectionsVertical","top-left","top-right","bottom-left","bottom-right","left","right","top-middle","bottom-middle","reverseDirectionsHorizontal","animationFrame$","destroy$","ngZone","options","windowRef","media","hintsHost","context","_this","animation","value","pipe","tuiZonefree","takeUntil","subscribe","calculatePosition","$implicit","hint","TuiPointerHintDirective","mode","tuiIsMobile","onHovered","hovered","TuiHintDirective","componentHovered$","next","calculateCoordinates","setOverflowStyles","isMobile","calculateMobileCoordinates","hostRect","getElementClientRect","portalRect","clientRect","tooltip","style","tooltipRect","isHostLong","width","directions","top","direction","horizontalTop","height","horizontalLeft","horizontalRight","verticalBottom","bottom","verticalTop","verticalRight","verticalLeft","verticalMiddle","splice","indexOf","verticalFit","innerHeight","horizontalFit","px","setAttribute","verticalTopFit","verticalBottomFit","includes","attemptedLeft","max","SPACE","arrow","ARROW_OFFSET","ARROW_SIZE","window","LEFT_PADDING","BORDER_WIDTH","ANIMATION_FRAME","TuiDestroyService","NgZone","TUI_ANIMATION_OPTIONS","Window","WINDOW","TUI_MEDIA","forwardRef","POLYMORPHEUS_CONTEXT","ViewChild","HostBinding","tuiPure","providers","tuiFadeIn","TuiHintBoxModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiHoveredModule","declarations","exports","entryComponents","TuiHintsHostModule","TuiActiveZoneModule"],"mappings":"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","sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {TUI_PARENT_ANIMATION} from '@taiga-ui/cdk';\nimport {TuiHint} from '@taiga-ui/core/interfaces';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {TuiHintBoxComponent} from './hint-box/hint-box.component';\n\n@Component({\n selector: `tui-hints-host`,\n templateUrl: `./hints-host.template.html`,\n styleUrls: [`./hints-host.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [TUI_PARENT_ANIMATION],\n host: {\n 'aria-live': `polite`,\n },\n})\nexport class TuiHintsHostComponent {\n readonly component = new PolymorpheusComponent(TuiHintBoxComponent);\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) readonly hints$: Observable<readonly TuiHint[]>,\n ) {}\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n}\n","import {AnimationOptions} from '@angular/animations';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n px,\n TuiContextWithImplicit,\n TuiDestroyService,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {TuiHintDirective} from '@taiga-ui/core/directives';\nimport {TuiPointerHintDirective} from '@taiga-ui/core/directives/pointer-hint';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATION_OPTIONS, TUI_MEDIA} from '@taiga-ui/core/tokens';\nimport {TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {tuiIsMobile} from '@taiga-ui/core/utils';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TuiHintsHostComponent} from '../hints-host.component';\n\nconst SPACE = 8;\nconst BORDER_WIDTH = 1;\nconst LEFT_PADDING = 16;\nconst TOP_PADDING = 12;\nconst ARROW_SIZE = 8;\nconst ARROW_OFFSET = 16;\nconst ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;\nconst reverseDirectionsVertical: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': `bottom-left`,\n 'top-right': `bottom-right`,\n 'bottom-left': `top-left`,\n 'bottom-right': `top-right`,\n left: `right`,\n right: `left`,\n 'top-middle': `bottom-middle`,\n 'bottom-middle': `top-middle`,\n};\nconst reverseDirectionsHorizontal: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': `top-right`,\n 'top-right': `top-left`,\n 'bottom-left': `bottom-right`,\n 'bottom-right': `bottom-left`,\n left: `right`,\n right: `left`,\n 'top-middle': `top-middle`,\n 'bottom-middle': `bottom-middle`,\n};\n\n// TODO: consider abstracting UI and move to CDK, split hint and overflow\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: `tui-hint-box[hint]`,\n templateUrl: `./hint-box.template.html`,\n styleUrls: [`./hint-box.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n animations: [tuiFadeIn],\n})\nexport class TuiHintBoxComponent {\n @ViewChild(`arrow`)\n private readonly arrow?: ElementRef<HTMLElement>;\n\n @HostBinding(`@tuiFadeIn`)\n readonly animation = {value: ``, ...this.options} as const;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_MEDIA) private readonly media: TuiMedia,\n @Inject(forwardRef(() => TuiHintsHostComponent))\n private readonly hintsHost: TuiHintsHostComponent,\n @Inject(POLYMORPHEUS_CONTEXT)\n private readonly context: TuiContextWithImplicit<AbstractTuiHint>,\n ) {\n animationFrame$\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(() => this.calculatePosition());\n }\n\n get hint(): AbstractTuiHint {\n return this.context.$implicit;\n }\n\n @tuiPure\n @HostBinding(`class._untouchable`)\n get isUntouchable(): boolean {\n return this.hint instanceof TuiPointerHintDirective;\n }\n\n @HostBinding(`attr.data-mode`)\n get mode(): TuiHintModeT | null {\n return this.hint.mode;\n }\n\n get isMobile(): boolean {\n return tuiIsMobile(this.windowRef, this.media);\n }\n\n onHovered(hovered: boolean): void {\n if (this.hint instanceof TuiHintDirective) {\n this.hint.componentHovered$.next(hovered);\n }\n }\n\n /**\n * Calculates wrapper position.\n * Styles are set directly to avoid visual shake of element\n */\n private calculatePosition(): void {\n if (this.mode !== `overflow`) {\n this.calculateCoordinates();\n } else {\n this.setOverflowStyles();\n }\n }\n\n private calculateCoordinates(): void {\n if (this.isMobile) {\n this.calculateMobileCoordinates();\n\n return;\n }\n\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;\n const directions: TuiDirection[] = [\n `left`,\n `right`,\n `bottom-left`,\n `bottom-right`,\n `bottom-middle`,\n `top-left`,\n `top-right`,\n `top-middle`,\n ];\n\n let top = 0;\n let left = 0;\n let {direction} = this.hint;\n\n const horizontalTop =\n hostRect.top + hostRect.height / 2 - tooltipRect.height / 2 - portalRect.top;\n const horizontalLeft =\n hostRect.left - tooltipRect.width - SPACE - portalRect.left;\n const horizontalRight = hostRect.left + hostRect.width + SPACE - portalRect.left;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalRight = isHostLong\n ? hostRect.left - portalRect.left\n : hostRect.left + hostRect.width / 2 - ARROWHEAD_OFFSET - portalRect.left;\n const verticalLeft = isHostLong\n ? hostRect.left - tooltipRect.width + hostRect.width - portalRect.left\n : hostRect.left -\n tooltipRect.width +\n hostRect.width / 2 +\n ARROWHEAD_OFFSET -\n portalRect.left;\n const verticalMiddle =\n hostRect.left - tooltipRect.width / 2 + hostRect.width / 2 - portalRect.left;\n\n directions.splice(directions.indexOf(direction), 1);\n\n // eslint-disable-next-line no-constant-condition\n while (true) {\n switch (direction) {\n case `left`:\n top = horizontalTop;\n left = horizontalLeft;\n break;\n case `right`:\n top = horizontalTop;\n left = horizontalRight;\n break;\n case `top-right`:\n top = verticalTop;\n left = verticalRight;\n break;\n case `top-left`:\n top = verticalTop;\n left = verticalLeft;\n break;\n case `bottom-right`:\n top = verticalBottom;\n left = verticalRight;\n break;\n case `bottom-left`:\n top = verticalBottom;\n left = verticalLeft;\n break;\n case `bottom-middle`:\n top = verticalBottom;\n left = verticalMiddle;\n break;\n case `top-middle`:\n top = verticalTop;\n left = verticalMiddle;\n break;\n }\n\n const verticalFit =\n top + portalRect.top > SPACE &&\n top + tooltipRect.height + SPACE + portalRect.top <\n this.windowRef.innerHeight;\n const horizontalFit =\n left > SPACE &&\n left + tooltipRect.width + SPACE + portalRect.left < portalRect.width;\n\n if (directions.length === 0 || (verticalFit && horizontalFit)) {\n break;\n }\n\n direction = verticalFit\n ? reverseDirectionsHorizontal[direction]\n : reverseDirectionsVertical[direction];\n direction =\n directions.splice(directions.indexOf(direction), 1)[0] || direction;\n }\n\n style.top = px(top);\n style.left = px(left);\n\n tooltip.setAttribute(`data-tui-host-direction`, direction);\n }\n\n private calculateMobileCoordinates(): void {\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTopFit =\n verticalTop + portalRect.top > SPACE &&\n hostRect.top < this.windowRef.innerHeight;\n const verticalBottomFit =\n hostRect.bottom > 0 &&\n hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;\n const direction =\n (this.hint.direction.includes(`top`) && verticalTopFit) || !verticalBottomFit\n ? `top`\n : `bottom`;\n const attemptedLeft =\n portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;\n const left = Math.max(\n attemptedLeft + tooltipRect.width + SPACE > portalRect.right\n ? portalRect.right - SPACE - tooltipRect.width\n : attemptedLeft,\n SPACE * 2,\n );\n\n style.left = px(left);\n style.top = direction === `top` ? px(verticalTop) : px(verticalBottom);\n\n if (this.arrow) {\n this.arrow.nativeElement.style.left = px(\n hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2\n ? ARROW_OFFSET\n : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2,\n );\n }\n\n tooltip.setAttribute(`data-tui-host-direction`, direction);\n }\n\n private setOverflowStyles(): void {\n const hostRect = this.hint.getElementClientRect();\n const {style} = this.elementRef.nativeElement;\n\n style.top = px(hostRect.top - window.innerHeight - TOP_PADDING - BORDER_WIDTH);\n style.left = px(hostRect.left - LEFT_PADDING - BORDER_WIDTH);\n style.width = px(hostRect.width + LEFT_PADDING * 2 + BORDER_WIDTH * 2);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiHoveredModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHintBoxComponent} from './hint-box.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiHoveredModule],\n declarations: [TuiHintBoxComponent],\n exports: [TuiHintBoxComponent],\n entryComponents: [TuiHintBoxComponent],\n})\nexport class TuiHintBoxModule {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHintBoxModule} from './hint-box/hint-box.module';\nimport {TuiHintsHostComponent} from './hints-host.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiHintBoxModule, TuiActiveZoneModule],\n declarations: [TuiHintsHostComponent],\n exports: [TuiHintsHostComponent],\n})\nexport class TuiHintsHostModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/hints-host/hints-host.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.component.ts","ng://@taiga-ui/core/components/hints-host/hint-box/hint-box.module.ts","ng://@taiga-ui/core/components/hints-host/hints-host.module.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__param","paramIndex","decorator","create","TuiHintsHostComponent","elementRef","hints$","component","PolymorpheusComponent","TuiHintBoxComponent","nativeElement","getBoundingClientRect","ElementRef","type","Inject","args","Observable","TuiHintService","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","animations","TUI_PARENT_ANIMATION","host","aria-live","ARROWHEAD_OFFSET","Math","sqrt","reverseDirectionsVertical","top-left","top-right","bottom-left","bottom-right","left","right","top-middle","bottom-middle","reverseDirectionsHorizontal","animationFrame$","destroy$","ngZone","options","windowRef","media","hintsHost","context","_this","animation","value","pipe","tuiZonefree","takeUntil","subscribe","calculatePosition","$implicit","hint","TuiPointerHintDirective","mode","tuiIsMobile","onHovered","hovered","TuiHintDirective","componentHovered$","next","calculateCoordinates","setOverflowStyles","isMobile","calculateMobileCoordinates","hostRect","getElementClientRect","portalRect","clientRect","tooltip","style","tooltipRect","isHostLong","width","directions","top","direction","horizontalTop","height","horizontalLeft","horizontalRight","verticalBottom","bottom","verticalTop","verticalRight","verticalLeft","verticalMiddle","splice","indexOf","verticalFit","innerHeight","horizontalFit","px","setAttribute","verticalTopFit","verticalBottomFit","includes","attemptedLeft","max","SPACE","arrow","ARROW_OFFSET","ARROW_SIZE","window","LEFT_PADDING","BORDER_WIDTH","ANIMATION_FRAME","TuiDestroyService","NgZone","TUI_ANIMATION_OPTIONS","Window","WINDOW","TUI_MEDIA","forwardRef","POLYMORPHEUS_CONTEXT","ViewChild","HostBinding","tuiPure","providers","tuiFadeIn","TuiHintBoxModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiHoveredModule","declarations","exports","entryComponents","TuiHintsHostModule","TuiActiveZoneModule"],"mappings":"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","sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import {ChangeDetectionStrategy, Component, ElementRef, Inject} from '@angular/core';\nimport {TUI_PARENT_ANIMATION} from '@taiga-ui/cdk';\nimport {TuiHint} from '@taiga-ui/core/interfaces';\nimport {TuiHintService} from '@taiga-ui/core/services';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {TuiHintBoxComponent} from './hint-box/hint-box.component';\n\n@Component({\n selector: `tui-hints-host`,\n templateUrl: `./hints-host.template.html`,\n styleUrls: [`./hints-host.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [TUI_PARENT_ANIMATION],\n host: {\n 'aria-live': `polite`,\n },\n})\nexport class TuiHintsHostComponent {\n readonly component = new PolymorpheusComponent(TuiHintBoxComponent);\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TuiHintService) readonly hints$: Observable<readonly TuiHint[]>,\n ) {}\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n}\n","import {AnimationOptions} from '@angular/animations';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n px,\n TuiContextWithImplicit,\n TuiDestroyService,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {AbstractTuiHint} from '@taiga-ui/core/abstract';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {TuiHintDirective} from '@taiga-ui/core/directives';\nimport {TuiPointerHintDirective} from '@taiga-ui/core/directives/pointer-hint';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATION_OPTIONS, TUI_MEDIA} from '@taiga-ui/core/tokens';\nimport {TuiDirection, TuiHintModeT} from '@taiga-ui/core/types';\nimport {tuiIsMobile} from '@taiga-ui/core/utils';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TuiHintsHostComponent} from '../hints-host.component';\n\nconst SPACE = 8;\nconst BORDER_WIDTH = 1;\nconst LEFT_PADDING = 16;\nconst TOP_PADDING = 12;\nconst ARROW_SIZE = 8;\nconst ARROW_OFFSET = 16;\nconst ARROWHEAD_OFFSET = ARROW_OFFSET + (ARROW_SIZE * Math.sqrt(2)) / 2;\nconst reverseDirectionsVertical: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': `bottom-left`,\n 'top-right': `bottom-right`,\n 'bottom-left': `top-left`,\n 'bottom-right': `top-right`,\n left: `right`,\n right: `left`,\n 'top-middle': `bottom-middle`,\n 'bottom-middle': `top-middle`,\n};\nconst reverseDirectionsHorizontal: {[key in TuiDirection]: TuiDirection} = {\n 'top-left': `top-right`,\n 'top-right': `top-left`,\n 'bottom-left': `bottom-right`,\n 'bottom-right': `bottom-left`,\n left: `right`,\n right: `left`,\n 'top-middle': `top-middle`,\n 'bottom-middle': `bottom-middle`,\n};\n\n// TODO: consider abstracting UI and move to CDK, split hint and overflow\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: `tui-hint-box[hint]`,\n templateUrl: `./hint-box.template.html`,\n styleUrls: [`./hint-box.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n animations: [tuiFadeIn],\n})\nexport class TuiHintBoxComponent {\n @ViewChild(`arrow`)\n private readonly arrow?: ElementRef<HTMLElement>;\n\n @HostBinding(`@tuiFadeIn`)\n readonly animation = {value: ``, ...this.options} as const;\n\n constructor(\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_MEDIA) private readonly media: TuiMedia,\n @Inject(forwardRef(() => TuiHintsHostComponent))\n private readonly hintsHost: TuiHintsHostComponent,\n @Inject(POLYMORPHEUS_CONTEXT)\n private readonly context: TuiContextWithImplicit<AbstractTuiHint>,\n ) {\n animationFrame$\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(() => this.calculatePosition());\n }\n\n get hint(): AbstractTuiHint {\n return this.context.$implicit;\n }\n\n @tuiPure\n @HostBinding(`class._untouchable`)\n get isUntouchable(): boolean {\n return this.hint instanceof TuiPointerHintDirective;\n }\n\n @HostBinding(`attr.data-mode`)\n get mode(): TuiHintModeT | null {\n return this.hint.mode;\n }\n\n get isMobile(): boolean {\n return tuiIsMobile(this.windowRef, this.media);\n }\n\n onHovered(hovered: boolean): void {\n if (this.hint instanceof TuiHintDirective) {\n this.hint.componentHovered$.next(hovered);\n }\n }\n\n /**\n * Calculates wrapper position.\n * Styles are set directly to avoid visual shake of element\n */\n private calculatePosition(): void {\n if (this.mode !== `overflow`) {\n this.calculateCoordinates();\n } else {\n this.setOverflowStyles();\n }\n }\n\n private calculateCoordinates(): void {\n if (this.isMobile) {\n this.calculateMobileCoordinates();\n\n return;\n }\n\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const isHostLong = hostRect.width > ARROWHEAD_OFFSET * 2;\n const directions: TuiDirection[] = [\n `left`,\n `right`,\n `bottom-left`,\n `bottom-right`,\n `bottom-middle`,\n `top-left`,\n `top-right`,\n `top-middle`,\n ];\n\n let top = 0;\n let left = 0;\n let {direction} = this.hint;\n\n const horizontalTop =\n hostRect.top + hostRect.height / 2 - tooltipRect.height / 2 - portalRect.top;\n const horizontalLeft =\n hostRect.left - tooltipRect.width - SPACE - portalRect.left;\n const horizontalRight = hostRect.left + hostRect.width + SPACE - portalRect.left;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalRight = isHostLong\n ? hostRect.left - portalRect.left\n : hostRect.left + hostRect.width / 2 - ARROWHEAD_OFFSET - portalRect.left;\n const verticalLeft = isHostLong\n ? hostRect.left - tooltipRect.width + hostRect.width - portalRect.left\n : hostRect.left -\n tooltipRect.width +\n hostRect.width / 2 +\n ARROWHEAD_OFFSET -\n portalRect.left;\n const verticalMiddle =\n hostRect.left - tooltipRect.width / 2 + hostRect.width / 2 - portalRect.left;\n\n directions.splice(directions.indexOf(direction), 1);\n\n // eslint-disable-next-line no-constant-condition\n while (true) {\n switch (direction) {\n case `left`:\n top = horizontalTop;\n left = horizontalLeft;\n break;\n case `right`:\n top = horizontalTop;\n left = horizontalRight;\n break;\n case `top-right`:\n top = verticalTop;\n left = verticalRight;\n break;\n case `top-left`:\n top = verticalTop;\n left = verticalLeft;\n break;\n case `bottom-right`:\n top = verticalBottom;\n left = verticalRight;\n break;\n case `bottom-left`:\n top = verticalBottom;\n left = verticalLeft;\n break;\n case `bottom-middle`:\n top = verticalBottom;\n left = verticalMiddle;\n break;\n case `top-middle`:\n top = verticalTop;\n left = verticalMiddle;\n break;\n }\n\n const verticalFit =\n top + portalRect.top > SPACE &&\n top + tooltipRect.height + SPACE + portalRect.top <\n this.windowRef.innerHeight;\n const horizontalFit =\n left > SPACE &&\n left + tooltipRect.width + SPACE + portalRect.left < portalRect.width;\n\n if (directions.length === 0 || (verticalFit && horizontalFit)) {\n break;\n }\n\n direction = verticalFit\n ? reverseDirectionsHorizontal[direction]\n : reverseDirectionsVertical[direction];\n direction =\n directions.splice(directions.indexOf(direction), 1)[0] || direction;\n }\n\n style.top = px(top);\n style.left = px(left);\n\n tooltip.setAttribute(`data-tui-host-direction`, direction);\n }\n\n private calculateMobileCoordinates(): void {\n const hostRect = this.hint.getElementClientRect();\n const portalRect = this.hintsHost.clientRect;\n const tooltip = this.elementRef.nativeElement;\n const {style} = tooltip;\n const tooltipRect = tooltip.getBoundingClientRect();\n const verticalTop = hostRect.top - tooltipRect.height - SPACE - portalRect.top;\n const verticalBottom = hostRect.bottom + SPACE - portalRect.top;\n const verticalTopFit =\n verticalTop + portalRect.top > SPACE &&\n hostRect.top < this.windowRef.innerHeight;\n const verticalBottomFit =\n hostRect.bottom > 0 &&\n hostRect.bottom + 2 * SPACE + tooltipRect.height < this.windowRef.innerHeight;\n const direction =\n (this.hint.direction.includes(`top`) && verticalTopFit) || !verticalBottomFit\n ? `top`\n : `bottom`;\n const attemptedLeft =\n portalRect.left + hostRect.left + hostRect.width / 2 - tooltipRect.width / 2;\n const left = Math.max(\n attemptedLeft + tooltipRect.width + SPACE > portalRect.right\n ? portalRect.right - SPACE - tooltipRect.width\n : attemptedLeft,\n SPACE * 2,\n );\n\n style.left = px(left);\n style.top = direction === `top` ? px(verticalTop) : px(verticalBottom);\n\n if (this.arrow) {\n this.arrow.nativeElement.style.left = px(\n hostRect.left <= SPACE * 2 && hostRect.width > ARROW_OFFSET * 2\n ? ARROW_OFFSET\n : hostRect.left + hostRect.width / 2 - left - ARROW_SIZE / 2,\n );\n }\n\n tooltip.setAttribute(`data-tui-host-direction`, direction);\n }\n\n private setOverflowStyles(): void {\n const hostRect = this.hint.getElementClientRect();\n const {style} = this.elementRef.nativeElement;\n\n style.top = px(hostRect.top - window.innerHeight - TOP_PADDING - BORDER_WIDTH);\n style.left = px(hostRect.left - LEFT_PADDING - BORDER_WIDTH);\n style.width = px(hostRect.width + LEFT_PADDING * 2 + BORDER_WIDTH * 2);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiHoveredModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHintBoxComponent} from './hint-box.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiHoveredModule],\n declarations: [TuiHintBoxComponent],\n exports: [TuiHintBoxComponent],\n entryComponents: [TuiHintBoxComponent],\n})\nexport class TuiHintBoxModule {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiHintBoxModule} from './hint-box/hint-box.module';\nimport {TuiHintsHostComponent} from './hints-host.component';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiHintBoxModule, TuiActiveZoneModule],\n declarations: [TuiHintsHostComponent],\n exports: [TuiHintsHostComponent],\n})\nexport class TuiHintsHostModule {}\n"]}
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"TuiDataListComponent":{"__symbolic":"class","arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":35,"character":1},"arguments":[{"selector":"tui-data-list","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":39,"character":21},"member":"OnPush"},"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":40,"character":19},"member":"None"},"providers":[{"provide":{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_DATA_LIST_ACCESSOR","line":43,"character":21},"useExisting":{"__symbolic":"reference","name":"TuiDataListComponent"}}],"template":"<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, true)\"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf=\"empty$ | async\"\n polymorpheus-outlet\n class=\"t-empty\"\n [content]=\"emptyContent || (defaultEmptyContent$ | async)\"\n></div>\n<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, false)\"\n></div>\n","styles":["tui-data-list{display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:.5rem 0;color:var(--tui-text-03)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list>.t-empty{margin:.75rem 1rem}tui-opt-group{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:flex;font:var(--tui-font-text-xs);flex-direction:column;line-height:2rem}tui-opt-group:empty:after,tui-opt-group:empty:before{display:none}tui-opt-group:before{content:attr(data-label);padding:0 1rem;color:var(--tui-text-02)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:1rem}tui-opt-group:not(:empty)~tui-opt-group:after{content:'';position:absolute;left:0;right:0;top:.5rem;height:1px;background:var(--tui-base-03)}"]}]}],"members":{"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":49,"character":5},"arguments":[{"__symbolic":"reference","name":"TuiOptionComponent"},{"descendants":true}]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":54,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":55,"character":5},"arguments":["attr.role"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":56,"character":5}}]}],"emptyContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":59,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":60,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":64,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":64,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":65,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_NOTHING_FOUND_MESSAGE","line":65,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":64,"character":68,"context":{"typeName":"HTMLElement"},"module":"./data-list.component"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"string"}]}]}],"empty$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":69,"character":5}]}],"onFocusIn":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":74,"character":5},"arguments":["focusin",["$event.relatedTarget","$event.currentTarget"]]}]}],"noop":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":81,"character":5},"arguments":["mousedown.prevent"]}]}],"onKeyDownArrow":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":84,"character":5},"arguments":["keydown.arrowDown.prevent",["$event.target","1"]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":85,"character":5},"arguments":["keydown.arrowUp.prevent",["$event.target","-1"]]}]}],"handleFocusLossIfNecessary":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":93,"character":5},"arguments":["wheel.silent.passive"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":94,"character":5},"arguments":["mouseleave",["$event.target"]]}]}],"getOptions":[{"__symbolic":"method"}],"onFocus":[{"__symbolic":"method"}]}},"TuiDataListDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"ng-template[tuiDataList]"}]}],"members":{}},"TuiDataListModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":11,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":12,"character":14},{"__symbolic":"reference","module":"@taiga-ui/core/components/svg","name":"TuiSvgModule","line":12,"character":28},{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"PolymorpheusModule","line":12,"character":42}],"declarations":[{"__symbolic":"reference","name":"TuiDataListComponent"},{"__symbolic":"reference","name":"TuiOptionComponent"},{"__symbolic":"reference","name":"TuiOptGroupDirective"},{"__symbolic":"reference","name":"TuiDataListDirective"},{"__symbolic":"reference","name":"TuiDataListDropdownManagerDirective"}],"exports":[{"__symbolic":"reference","name":"TuiDataListComponent"},{"__symbolic":"reference","name":"TuiOptionComponent"},{"__symbolic":"reference","name":"TuiOptGroupDirective"},{"__symbolic":"reference","name":"TuiDataListDirective"},{"__symbolic":"reference","name":"TuiDataListDropdownManagerDirective"}]}]}],"members":{}},"TuiDataListDropdownManagerDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":30,"character":1},"arguments":[{"selector":"tui-data-list[tuiDataListDropdownManager]"}]}],"members":{"dropdowns":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":34,"character":5},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/directives/dropdown","name":"TuiDropdownDirective","line":34,"character":21},{"descendants":true}]}]}],"elements":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":37,"character":5},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/directives/dropdown","name":"TuiDropdownDirective","line":37,"character":21},{"read":{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":37,"character":50},"descendants":true}]}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"elements$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":84,"character":5}]}],"right$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":92,"character":5}]}],"immediate$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":109,"character":5}]}],"debounce$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":122,"character":5}]}],"notInDropdown":[{"__symbolic":"method"}],"tryToFocus":[{"__symbolic":"method"}]}},"TuiOptGroupDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"tui-opt-group","host":{"role":"group"}}]}],"members":{"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":11,"character":5},"arguments":["attr.data-label"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":12,"character":5}}]}]}},"shouldFocus":{"__symbolic":"function","parameters":["currentTarget"],"value":{"__symbolic":"pre","operator":"!","operand":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"isNativeFocused","line":34,"character":12},"arguments":[{"__symbolic":"reference","name":"currentTarget"}]}}},"TuiOptionComponent":{"__symbolic":"class","arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":38,"character":1},"arguments":[{"selector":"button[tuiOption], a[tuiOption]","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":42,"character":21},"member":"OnPush"},"host":{"tabIndex":"-1","type":"button","[attr.disabled]":"disabled || null","$quoted$":["[attr.disabled]"]},"template":"<span\n *ngIf=\"content; else base\"\n polymorpheus-outlet\n class=\"t-content\"\n [content]=\"content\"\n [context]=\"{$implicit: base}\"\n></span>\n<ng-template #base>\n <ng-content></ng-content>\n <tui-svg\n *ngIf=\"dropdown\"\n src=\"tuiIconChevronRight\"\n class=\"t-arrow\"\n ></tui-svg>\n</ng-template>\n","styles":[":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:padding-box;font-size:inherit;line-height:inherit;transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;display:flex;font:var(--tui-font-text-m);width:100%;align-items:center;justify-content:space-between;text-align:left;box-sizing:border-box;color:var(--tui-text-01);outline:0;text-decoration:none;cursor:pointer}:host:disabled{opacity:var(--tui-disabled-opacity);cursor:default}:host._with-dropdown,:host:focus{background-color:var(--tui-base-02)}:host[data-size=xs]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .75rem}:host[data-size='s']{min-height:2rem;padding:.3125rem .75rem}:host[data-size='m']{min-height:2.75rem;padding:.375rem 1rem}:host[data-size='l']{min-height:3.5rem;padding:.75rem 1rem}.t-content{display:flex;flex:1;max-width:100%}.t-arrow{margin:0 -.5rem 0 .75rem}"]}]}],"members":{"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":51,"character":5},"arguments":["attr.data-size"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":52,"character":5}}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":56,"character":5},"arguments":["attr.role"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":57,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":60,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":61,"character":5}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":64,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":69,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":70,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_OPTION_CONTENT","line":70,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":74,"character":9},"arguments":[{"__symbolic":"reference","name":"TuiDataListComponent"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":76,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":76,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":77,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":78,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_DATA_LIST_HOST","line":78,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":80,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":81,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":82,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/directives/dropdown","name":"TuiDropdownDirective","line":82,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"PolymorpheusContent","module":"@tinkoff/ng-polymorpheus","arguments":[{"__symbolic":"reference","name":"TuiContextWithImplicit","module":"@taiga-ui/cdk","arguments":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":72,"character":47,"context":{"typeName":"Record"},"module":"./option/option.component"}]}]}]},{"__symbolic":"reference","name":"TuiDataListComponent"},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":76,"character":68,"context":{"typeName":"HTMLElement"},"module":"./option/option.component"}]},{"__symbolic":"reference","name":"TuiDataListHost","module":"@taiga-ui/core/interfaces","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":79,"character":47,"context":{"typeName":"T"},"module":"./option/option.component"}]},{"__symbolic":"reference","module":"@taiga-ui/core/directives/dropdown","name":"TuiDropdownDirective","line":83,"character":27}]}],"active":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":86,"character":5},"arguments":["class._with-dropdown"]}]}],"onClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":91,"character":5},"arguments":["click"]}]}],"onMouseMove":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@tinkoff/ng-event-plugins","name":"shouldCall","line":99,"character":5},"arguments":[{"__symbolic":"reference","name":"shouldFocus"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":100,"character":5},"arguments":["mousemove.init",["$event"]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":101,"character":5},"arguments":["mousemove.silent",["$event"]]}]}],"ngOnDestroy":[{"__symbolic":"method"}]}}},"origins":{"TuiDataListComponent":"./data-list.component","TuiDataListDirective":"./data-list.directive","TuiDataListModule":"./data-list.module","TuiDataListDropdownManagerDirective":"./data-list-dropdown-manager.directive","TuiOptGroupDirective":"./opt-group.directive","shouldFocus":"./option/option.component","TuiOptionComponent":"./option/option.component"},"importAs":"@taiga-ui/core/components/data-list"}
1
+ {"__symbolic":"module","version":4,"metadata":{"TuiDataListComponent":{"__symbolic":"class","arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":35,"character":1},"arguments":[{"selector":"tui-data-list","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":39,"character":21},"member":"OnPush"},"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":40,"character":19},"member":"None"},"providers":[{"provide":{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_DATA_LIST_ACCESSOR","line":43,"character":21},"useExisting":{"__symbolic":"reference","name":"TuiDataListComponent"}}],"template":"<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, true)\"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf=\"empty$ | async\"\n polymorpheus-outlet\n class=\"t-empty\"\n [content]=\"emptyContent || (defaultEmptyContent$ | async)\"\n></div>\n<div\n tabindex=\"0\"\n class=\"t-trap\"\n (focusin)=\"onFocus($event, false)\"\n></div>\n","styles":["tui-data-list{display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:.5rem 0;color:var(--tui-text-03)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list>.t-empty{margin:.75rem 1rem}tui-opt-group{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:flex;font:var(--tui-font-text-xs);flex-direction:column;line-height:2rem}tui-opt-group:empty:after,tui-opt-group:empty:before{display:none}tui-opt-group:before{content:attr(data-label);padding:0 1rem;color:var(--tui-text-02);line-height:1rem;white-space:normal}tui-opt-group:not(:empty)~tui-opt-group:before{padding:1.5rem 1rem .5rem}tui-opt-group:not(:empty)~tui-opt-group:after{content:'';position:absolute;left:0;right:0;top:.5rem;height:1px;background:var(--tui-base-03)}"]}]}],"members":{"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":49,"character":5},"arguments":[{"__symbolic":"reference","name":"TuiOptionComponent"},{"descendants":true}]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":54,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":55,"character":5},"arguments":["attr.role"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":56,"character":5}}]}],"emptyContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":59,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":60,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":64,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":64,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":65,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_NOTHING_FOUND_MESSAGE","line":65,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":64,"character":68,"context":{"typeName":"HTMLElement"},"module":"./data-list.component"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"reference","name":"string"}]}]}],"empty$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":69,"character":5}]}],"onFocusIn":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":74,"character":5},"arguments":["focusin",["$event.relatedTarget","$event.currentTarget"]]}]}],"noop":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":81,"character":5},"arguments":["mousedown.prevent"]}]}],"onKeyDownArrow":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":84,"character":5},"arguments":["keydown.arrowDown.prevent",["$event.target","1"]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":85,"character":5},"arguments":["keydown.arrowUp.prevent",["$event.target","-1"]]}]}],"handleFocusLossIfNecessary":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":93,"character":5},"arguments":["wheel.silent.passive"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":94,"character":5},"arguments":["mouseleave",["$event.target"]]}]}],"getOptions":[{"__symbolic":"method"}],"onFocus":[{"__symbolic":"method"}]}},"TuiDataListDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"ng-template[tuiDataList]"}]}],"members":{}},"TuiDataListModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":11,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":12,"character":14},{"__symbolic":"reference","module":"@taiga-ui/core/components/svg","name":"TuiSvgModule","line":12,"character":28},{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"PolymorpheusModule","line":12,"character":42}],"declarations":[{"__symbolic":"reference","name":"TuiDataListComponent"},{"__symbolic":"reference","name":"TuiOptionComponent"},{"__symbolic":"reference","name":"TuiOptGroupDirective"},{"__symbolic":"reference","name":"TuiDataListDirective"},{"__symbolic":"reference","name":"TuiDataListDropdownManagerDirective"}],"exports":[{"__symbolic":"reference","name":"TuiDataListComponent"},{"__symbolic":"reference","name":"TuiOptionComponent"},{"__symbolic":"reference","name":"TuiOptGroupDirective"},{"__symbolic":"reference","name":"TuiDataListDirective"},{"__symbolic":"reference","name":"TuiDataListDropdownManagerDirective"}]}]}],"members":{}},"TuiDataListDropdownManagerDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":30,"character":1},"arguments":[{"selector":"tui-data-list[tuiDataListDropdownManager]"}]}],"members":{"dropdowns":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":34,"character":5},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/directives/dropdown","name":"TuiDropdownDirective","line":34,"character":21},{"descendants":true}]}]}],"elements":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":37,"character":5},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/directives/dropdown","name":"TuiDropdownDirective","line":37,"character":21},{"read":{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":37,"character":50},"descendants":true}]}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"elements$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":84,"character":5}]}],"right$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":92,"character":5}]}],"immediate$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":109,"character":5}]}],"debounce$":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":122,"character":5}]}],"notInDropdown":[{"__symbolic":"method"}],"tryToFocus":[{"__symbolic":"method"}]}},"TuiOptGroupDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"tui-opt-group","host":{"role":"group"}}]}],"members":{"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":11,"character":5},"arguments":["attr.data-label"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":12,"character":5}}]}]}},"shouldFocus":{"__symbolic":"function","parameters":["currentTarget"],"value":{"__symbolic":"pre","operator":"!","operand":{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"isNativeFocused","line":34,"character":12},"arguments":[{"__symbolic":"reference","name":"currentTarget"}]}}},"TuiOptionComponent":{"__symbolic":"class","arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":38,"character":1},"arguments":[{"selector":"button[tuiOption], a[tuiOption]","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":42,"character":21},"member":"OnPush"},"host":{"tabIndex":"-1","type":"button","[attr.disabled]":"disabled || null","$quoted$":["[attr.disabled]"]},"template":"<span\n *ngIf=\"content; else base\"\n polymorpheus-outlet\n class=\"t-content\"\n [content]=\"content\"\n [context]=\"{$implicit: base}\"\n></span>\n<ng-template #base>\n <ng-content></ng-content>\n <tui-svg\n *ngIf=\"dropdown\"\n src=\"tuiIconChevronRight\"\n class=\"t-arrow\"\n ></tui-svg>\n</ng-template>\n","styles":[":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:padding-box;font-size:inherit;line-height:inherit;transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;display:flex;font:var(--tui-font-text-m);width:100%;align-items:center;justify-content:space-between;text-align:left;box-sizing:border-box;color:var(--tui-text-01);outline:0;text-decoration:none;cursor:pointer}:host:disabled{opacity:var(--tui-disabled-opacity);cursor:default}:host._with-dropdown,:host:focus{background-color:var(--tui-base-02)}:host[data-size=xs]{font:var(--tui-font-text-s);min-height:2rem;padding:.3125rem .75rem}:host[data-size='s']{min-height:2rem;padding:.3125rem .75rem}:host[data-size='m']{min-height:2.75rem;padding:.375rem 1rem}:host[data-size='l']{min-height:3.5rem;padding:.75rem 1rem}.t-content{display:flex;flex:1;max-width:100%}.t-arrow{margin:0 -.5rem 0 .75rem}"]}]}],"members":{"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":51,"character":5},"arguments":["attr.data-size"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":52,"character":5}}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":56,"character":5},"arguments":["attr.role"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":57,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":60,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiDefaultProp","line":61,"character":5}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":64,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":69,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":70,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_OPTION_CONTENT","line":70,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":74,"character":9},"arguments":[{"__symbolic":"reference","name":"TuiDataListComponent"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":76,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":76,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":77,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":78,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_DATA_LIST_HOST","line":78,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":80,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":81,"character":9}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":82,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/directives/dropdown","name":"TuiDropdownDirective","line":82,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"PolymorpheusContent","module":"@tinkoff/ng-polymorpheus","arguments":[{"__symbolic":"reference","name":"TuiContextWithImplicit","module":"@taiga-ui/cdk","arguments":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":72,"character":47,"context":{"typeName":"Record"},"module":"./option/option.component"}]}]}]},{"__symbolic":"reference","name":"TuiDataListComponent"},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":76,"character":68,"context":{"typeName":"HTMLElement"},"module":"./option/option.component"}]},{"__symbolic":"reference","name":"TuiDataListHost","module":"@taiga-ui/core/interfaces","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":79,"character":47,"context":{"typeName":"T"},"module":"./option/option.component"}]},{"__symbolic":"reference","module":"@taiga-ui/core/directives/dropdown","name":"TuiDropdownDirective","line":83,"character":27}]}],"active":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":86,"character":5},"arguments":["class._with-dropdown"]}]}],"onClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":91,"character":5},"arguments":["click"]}]}],"onMouseMove":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@tinkoff/ng-event-plugins","name":"shouldCall","line":99,"character":5},"arguments":[{"__symbolic":"reference","name":"shouldFocus"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":100,"character":5},"arguments":["mousemove.init",["$event"]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":101,"character":5},"arguments":["mousemove.silent",["$event"]]}]}],"ngOnDestroy":[{"__symbolic":"method"}]}}},"origins":{"TuiDataListComponent":"./data-list.component","TuiDataListDirective":"./data-list.directive","TuiDataListModule":"./data-list.module","TuiDataListDropdownManagerDirective":"./data-list-dropdown-manager.directive","TuiOptGroupDirective":"./opt-group.directive","shouldFocus":"./option/option.component","TuiOptionComponent":"./option/option.component"},"importAs":"@taiga-ui/core/components/data-list"}
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"TuiHintBoxComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":64,"character":1},"arguments":[{"selector":"tui-hint-box[hint]","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":68,"character":21},"member":"OnPush"},"providers":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":69,"character":16}],"animations":[{"__symbolic":"reference","module":"@taiga-ui/core/animations","name":"tuiFadeIn","line":70,"character":17}],"template":"<!-- @bad TODO: Refactor to use this arrow in all cases -->\n<div\n *ngIf=\"isMobile\"\n #arrow\n class=\"t-arrow\"\n></div>\n<div\n automation-id=\"tui-hint-box__tooltip\"\n polymorpheus-outlet\n class=\"t-tooltip\"\n [content]=\"hint.content\"\n (tuiHoveredChange)=\"onHovered($event)\"\n>\n <ng-template let-text>\n <span class=\"t-text\">{{ text }}</span>\n </ng-template>\n</div>\n","styles":[":host{position:absolute;top:0;left:0;max-width:18rem;min-height:var(--tui-height-m);padding:.75rem 1rem;background:var(--tui-primary);border-radius:var(--tui-radius-l);color:var(--tui-primary-text);box-sizing:border-box}:host .t-arrow,:host:not([data-mode=overflow]):before{content:'';position:absolute;width:.5rem;height:.5rem;border-radius:.125rem;box-sizing:border-box;background-color:inherit;transform:rotate(45deg)}:host[data-tui-host-direction=top] .t-arrow{bottom:-.25rem}:host[data-tui-host-direction=bottom] .t-arrow{top:-.25rem}:host[data-tui-host-direction=bottom]:before,:host[data-tui-host-direction=top]:before{display:none}:host[data-tui-host-direction=top-left]:before,:host[data-tui-host-direction=top-middle]:before,:host[data-tui-host-direction=top-right]:before{bottom:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=bottom-middle]:before,:host[data-tui-host-direction=bottom-right]:before{top:-.25rem}:host[data-tui-host-direction=bottom-middle]:before,:host[data-tui-host-direction=top-middle]:before{left:calc(50% - .2rem)}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=top-left]:before{right:1.075rem}:host[data-tui-host-direction=bottom-right]:before,:host[data-tui-host-direction=top-right]:before{left:1.075rem}:host[data-tui-host-direction=left]:before,:host[data-tui-host-direction=right]:before{top:50%;margin-top:-.25rem}:host[data-tui-host-direction=left]:before{right:-.25rem}:host[data-tui-host-direction=right]:before{left:-.25rem}:host[data-mode=error]{background-color:var(--tui-error-fill)}:host[data-mode=onDark],:host[data-mode=overflow]{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);border:1px solid var(--tui-base-03);background-color:var(--tui-base-01);color:var(--tui-text-01)}:host[data-mode=onDark]:before,:host[data-mode=overflow]:before{border:1px solid var(--tui-base-03)}:host[data-mode=onDark][data-tui-host-direction=left]:before,:host[data-mode=overflow][data-tui-host-direction=left]:before{border-left-color:transparent;border-bottom-color:transparent}:host[data-mode=onDark][data-tui-host-direction=right]:before,:host[data-mode=overflow][data-tui-host-direction=right]:before{border-right-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=top-left]:before,:host[data-mode=onDark][data-tui-host-direction=top-middle]:before,:host[data-mode=onDark][data-tui-host-direction=top-right]:before,:host[data-mode=overflow][data-tui-host-direction=top-left]:before,:host[data-mode=overflow][data-tui-host-direction=top-middle]:before,:host[data-mode=overflow][data-tui-host-direction=top-right]:before{border-left-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=bottom-left]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-middle]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-right]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-left]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-middle]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-right]:before{border-right-color:transparent;border-bottom-color:transparent}:host[data-mode=overflow]{max-width:none}:host._untouchable{pointer-events:none}.t-tooltip{font:var(--tui-font-text-s);word-wrap:break-word}:host[data-mode=overflow] .t-tooltip{font:inherit}.t-text{white-space:pre-wrap}"]}]}],"members":{"arrow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":73,"character":5},"arguments":["arrow"]}]}],"animation":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":76,"character":5},"arguments":["@tuiFadeIn"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":80,"character":9},"arguments":[{"__symbolic":"reference","module":"@ng-web-apis/common","name":"ANIMATION_FRAME","line":80,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":81,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":81,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":82,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":82,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":83,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_ANIMATION_OPTIONS","line":83,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":84,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":84,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":85,"character":9},"arguments":[{"__symbolic":"reference","module":"@ng-web-apis/common","name":"WINDOW","line":85,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":86,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_MEDIA","line":86,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":87,"character":9},"arguments":[{"__symbolic":"reference","name":"TuiHintsHostComponent"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":89,"character":9},"arguments":[{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"POLYMORPHEUS_CONTEXT","line":89,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"error","message":"Expression form not supported","line":81,"character":56,"module":"./hint-box/hint-box.component"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"error","message":"Expression form not supported","line":81,"character":56,"module":"./hint-box/hint-box.component"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":82,"character":32},{"__symbolic":"reference","module":"@angular/animations","name":"AnimationOptions","line":83,"character":65},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":84,"character":68,"context":{"typeName":"HTMLElement"},"module":"./hint-box/hint-box.component"}]},{"__symbolic":"error","message":"Could not resolve type","line":85,"character":52,"context":{"typeName":"Window"},"module":"./hint-box/hint-box.component"},{"__symbolic":"reference","module":"@taiga-ui/core/interfaces","name":"TuiMedia","line":86,"character":51},{"__symbolic":"reference","name":"TuiHintsHostComponent"},{"__symbolic":"reference","name":"TuiContextWithImplicit","module":"@taiga-ui/cdk","arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/abstract","name":"AbstractTuiHint","line":90,"character":57}]}]}],"isUntouchable":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":101,"character":5},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":102,"character":5},"arguments":["class._untouchable"]}]}],"mode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":107,"character":5},"arguments":["attr.data-mode"]}]}],"onHovered":[{"__symbolic":"method"}],"calculatePosition":[{"__symbolic":"method"}],"calculateCoordinates":[{"__symbolic":"method"}],"calculateMobileCoordinates":[{"__symbolic":"method"}],"setOverflowStyles":[{"__symbolic":"method"}]}},"TuiHintBoxModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":8,"character":14},{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"PolymorpheusModule","line":8,"character":28},{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiHoveredModule","line":8,"character":48}],"declarations":[{"__symbolic":"reference","name":"TuiHintBoxComponent"}],"exports":[{"__symbolic":"reference","name":"TuiHintBoxComponent"}],"entryComponents":[{"__symbolic":"reference","name":"TuiHintBoxComponent"}]}]}],"members":{}},"TuiHintsHostComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"tui-hints-host","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":13,"character":21},"member":"OnPush"},"animations":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TUI_PARENT_ANIMATION","line":14,"character":17}],"host":{"aria-live":"polite","$quoted$":["aria-live"]},"template":"<div\n *ngFor=\"let hint of hints$ | async\"\n role=\"tooltip\"\n polymorpheus-outlet\n @tuiParentAnimation\n [attr.id]=\"hint.id\"\n [content]=\"hint.component || component\"\n [context]=\"{$implicit: hint}\"\n [tuiActiveZoneParent]=\"hint.activeZone\"\n></div>\n","styles":[":host{position:fixed;bottom:0;left:0;width:100%;height:0}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":23,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":24,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/services","name":"TuiHintService","line":24,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":23,"character":68,"context":{"typeName":"HTMLElement"},"module":"./hints-host.component"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"error","message":"Expression form not supported","line":24,"character":60,"module":"./hints-host.component"}]}]}]}},"TuiHintsHostModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":8,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":9,"character":14},{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"PolymorpheusModule","line":9,"character":28},{"__symbolic":"reference","name":"TuiHintBoxModule"},{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiActiveZoneModule","line":9,"character":66}],"declarations":[{"__symbolic":"reference","name":"TuiHintsHostComponent"}],"exports":[{"__symbolic":"reference","name":"TuiHintsHostComponent"}]}]}],"members":{}}},"origins":{"TuiHintBoxComponent":"./hint-box/hint-box.component","TuiHintBoxModule":"./hint-box/hint-box.module","TuiHintsHostComponent":"./hints-host.component","TuiHintsHostModule":"./hints-host.module"},"importAs":"@taiga-ui/core/components/hints-host"}
1
+ {"__symbolic":"module","version":4,"metadata":{"TuiHintBoxComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":64,"character":1},"arguments":[{"selector":"tui-hint-box[hint]","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":68,"character":21},"member":"OnPush"},"providers":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":69,"character":16}],"animations":[{"__symbolic":"reference","module":"@taiga-ui/core/animations","name":"tuiFadeIn","line":70,"character":17}],"template":"<!-- @bad TODO: Refactor to use this arrow in all cases -->\n<div\n *ngIf=\"isMobile && mode !== 'overflow'\"\n #arrow\n class=\"t-arrow\"\n></div>\n<div\n automation-id=\"tui-hint-box__tooltip\"\n polymorpheus-outlet\n class=\"t-tooltip\"\n [content]=\"hint.content\"\n (tuiHoveredChange)=\"onHovered($event)\"\n>\n <ng-template let-text>\n <span class=\"t-text\">{{ text }}</span>\n </ng-template>\n</div>\n","styles":[":host{position:absolute;top:0;left:0;max-width:18rem;min-height:var(--tui-height-m);padding:.75rem 1rem;background:var(--tui-primary);border-radius:var(--tui-radius-l);color:var(--tui-primary-text);box-sizing:border-box}:host .t-arrow,:host:not([data-mode=overflow]):before{content:'';position:absolute;width:.5rem;height:.5rem;border-radius:.125rem;box-sizing:border-box;background-color:inherit;transform:rotate(45deg)}:host[data-tui-host-direction=top] .t-arrow{bottom:-.25rem}:host[data-tui-host-direction=bottom] .t-arrow{top:-.25rem}:host[data-tui-host-direction=bottom]:before,:host[data-tui-host-direction=top]:before{display:none}:host[data-tui-host-direction=top-left]:before,:host[data-tui-host-direction=top-middle]:before,:host[data-tui-host-direction=top-right]:before{bottom:-.25rem}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=bottom-middle]:before,:host[data-tui-host-direction=bottom-right]:before{top:-.25rem}:host[data-tui-host-direction=bottom-middle]:before,:host[data-tui-host-direction=top-middle]:before{left:calc(50% - .2rem)}:host[data-tui-host-direction=bottom-left]:before,:host[data-tui-host-direction=top-left]:before{right:1.075rem}:host[data-tui-host-direction=bottom-right]:before,:host[data-tui-host-direction=top-right]:before{left:1.075rem}:host[data-tui-host-direction=left]:before,:host[data-tui-host-direction=right]:before{top:50%;margin-top:-.25rem}:host[data-tui-host-direction=left]:before{right:-.25rem}:host[data-tui-host-direction=right]:before{left:-.25rem}:host[data-mode=error]{background-color:var(--tui-error-fill)}:host[data-mode=onDark],:host[data-mode=overflow]{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);border:1px solid var(--tui-base-03);background-color:var(--tui-base-01);color:var(--tui-text-01)}:host[data-mode=onDark]:before,:host[data-mode=overflow]:before{border:1px solid var(--tui-base-03)}:host[data-mode=onDark][data-tui-host-direction=left]:before,:host[data-mode=overflow][data-tui-host-direction=left]:before{border-left-color:transparent;border-bottom-color:transparent}:host[data-mode=onDark][data-tui-host-direction=right]:before,:host[data-mode=overflow][data-tui-host-direction=right]:before{border-right-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=top-left]:before,:host[data-mode=onDark][data-tui-host-direction=top-middle]:before,:host[data-mode=onDark][data-tui-host-direction=top-right]:before,:host[data-mode=overflow][data-tui-host-direction=top-left]:before,:host[data-mode=overflow][data-tui-host-direction=top-middle]:before,:host[data-mode=overflow][data-tui-host-direction=top-right]:before{border-left-color:transparent;border-top-color:transparent}:host[data-mode=onDark][data-tui-host-direction=bottom-left]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-middle]:before,:host[data-mode=onDark][data-tui-host-direction=bottom-right]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-left]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-middle]:before,:host[data-mode=overflow][data-tui-host-direction=bottom-right]:before{border-right-color:transparent;border-bottom-color:transparent}:host[data-mode=overflow]{max-width:none}:host._untouchable{pointer-events:none}.t-tooltip{font:var(--tui-font-text-s);word-wrap:break-word}:host[data-mode=overflow] .t-tooltip{font:inherit}.t-text{white-space:pre-wrap}"]}]}],"members":{"arrow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":73,"character":5},"arguments":["arrow"]}]}],"animation":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":76,"character":5},"arguments":["@tuiFadeIn"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":80,"character":9},"arguments":[{"__symbolic":"reference","module":"@ng-web-apis/common","name":"ANIMATION_FRAME","line":80,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":81,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":81,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":82,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":82,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":83,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_ANIMATION_OPTIONS","line":83,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":84,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":84,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":85,"character":9},"arguments":[{"__symbolic":"reference","module":"@ng-web-apis/common","name":"WINDOW","line":85,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":86,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_MEDIA","line":86,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":87,"character":9},"arguments":[{"__symbolic":"reference","name":"TuiHintsHostComponent"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":89,"character":9},"arguments":[{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"POLYMORPHEUS_CONTEXT","line":89,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"error","message":"Expression form not supported","line":81,"character":56,"module":"./hint-box/hint-box.component"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"error","message":"Expression form not supported","line":81,"character":56,"module":"./hint-box/hint-box.component"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":82,"character":32},{"__symbolic":"reference","module":"@angular/animations","name":"AnimationOptions","line":83,"character":65},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":84,"character":68,"context":{"typeName":"HTMLElement"},"module":"./hint-box/hint-box.component"}]},{"__symbolic":"error","message":"Could not resolve type","line":85,"character":52,"context":{"typeName":"Window"},"module":"./hint-box/hint-box.component"},{"__symbolic":"reference","module":"@taiga-ui/core/interfaces","name":"TuiMedia","line":86,"character":51},{"__symbolic":"reference","name":"TuiHintsHostComponent"},{"__symbolic":"reference","name":"TuiContextWithImplicit","module":"@taiga-ui/cdk","arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/abstract","name":"AbstractTuiHint","line":90,"character":57}]}]}],"isUntouchable":[{"__symbolic":"property","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":101,"character":5},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":102,"character":5},"arguments":["class._untouchable"]}]}],"mode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":107,"character":5},"arguments":["attr.data-mode"]}]}],"onHovered":[{"__symbolic":"method"}],"calculatePosition":[{"__symbolic":"method"}],"calculateCoordinates":[{"__symbolic":"method"}],"calculateMobileCoordinates":[{"__symbolic":"method"}],"setOverflowStyles":[{"__symbolic":"method"}]}},"TuiHintBoxModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":8,"character":14},{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"PolymorpheusModule","line":8,"character":28},{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiHoveredModule","line":8,"character":48}],"declarations":[{"__symbolic":"reference","name":"TuiHintBoxComponent"}],"exports":[{"__symbolic":"reference","name":"TuiHintBoxComponent"}],"entryComponents":[{"__symbolic":"reference","name":"TuiHintBoxComponent"}]}]}],"members":{}},"TuiHintsHostComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"tui-hints-host","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":13,"character":21},"member":"OnPush"},"animations":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TUI_PARENT_ANIMATION","line":14,"character":17}],"host":{"aria-live":"polite","$quoted$":["aria-live"]},"template":"<div\n *ngFor=\"let hint of hints$ | async\"\n role=\"tooltip\"\n polymorpheus-outlet\n @tuiParentAnimation\n [attr.id]=\"hint.id\"\n [content]=\"hint.component || component\"\n [context]=\"{$implicit: hint}\"\n [tuiActiveZoneParent]=\"hint.activeZone\"\n></div>\n","styles":[":host{position:fixed;bottom:0;left:0;width:100%;height:0}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":23,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":24,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/services","name":"TuiHintService","line":24,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":23,"character":68,"context":{"typeName":"HTMLElement"},"module":"./hints-host.component"}]},{"__symbolic":"reference","name":"Observable","module":"rxjs","arguments":[{"__symbolic":"error","message":"Expression form not supported","line":24,"character":60,"module":"./hints-host.component"}]}]}]}},"TuiHintsHostModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":8,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":9,"character":14},{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"PolymorpheusModule","line":9,"character":28},{"__symbolic":"reference","name":"TuiHintBoxModule"},{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiActiveZoneModule","line":9,"character":66}],"declarations":[{"__symbolic":"reference","name":"TuiHintsHostComponent"}],"exports":[{"__symbolic":"reference","name":"TuiHintsHostComponent"}]}]}],"members":{}}},"origins":{"TuiHintBoxComponent":"./hint-box/hint-box.component","TuiHintBoxModule":"./hint-box/hint-box.module","TuiHintsHostComponent":"./hints-host.component","TuiHintsHostModule":"./hints-host.module"},"importAs":"@taiga-ui/core/components/hints-host"}
@@ -1 +1 @@
1
- export declare const VERSION = "2.63.0";
1
+ export declare const VERSION = "2.65.0";
@@ -97,7 +97,7 @@ TuiDataListComponent = TuiDataListComponent_1 = __decorate([
97
97
  useExisting: forwardRef(() => TuiDataListComponent_1),
98
98
  },
99
99
  ],
100
- styles: ["tui-data-list{display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:.5rem 0;color:var(--tui-text-03)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list>.t-empty{margin:.75rem 1rem}tui-opt-group{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:flex;font:var(--tui-font-text-xs);flex-direction:column;line-height:2rem}tui-opt-group:empty:after,tui-opt-group:empty:before{display:none}tui-opt-group:before{content:attr(data-label);padding:0 1rem;color:var(--tui-text-02)}tui-opt-group:not(:empty)~tui-opt-group:before{padding-top:1rem}tui-opt-group:not(:empty)~tui-opt-group:after{content:'';position:absolute;left:0;right:0;top:.5rem;height:1px;background:var(--tui-base-03)}"]
100
+ styles: ["tui-data-list{display:flex;font:var(--tui-font-text-m);flex-direction:column;padding:.5rem 0;color:var(--tui-text-03)}tui-data-list:focus-within .t-trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list>.t-empty{margin:.75rem 1rem}tui-opt-group{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:flex;font:var(--tui-font-text-xs);flex-direction:column;line-height:2rem}tui-opt-group:empty:after,tui-opt-group:empty:before{display:none}tui-opt-group:before{content:attr(data-label);padding:0 1rem;color:var(--tui-text-02);line-height:1rem;white-space:normal}tui-opt-group:not(:empty)~tui-opt-group:before{padding:1.5rem 1rem .5rem}tui-opt-group:not(:empty)~tui-opt-group:after{content:'';position:absolute;left:0;right:0;top:.5rem;height:1px;background:var(--tui-base-03)}"]
101
101
  }),
102
102
  __param(0, Inject(ElementRef)),
103
103
  __param(1, Inject(TUI_NOTHING_FOUND_MESSAGE))