@taiga-ui/core 2.41.1 → 2.42.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.
- package/bundles/taiga-ui-core-components-alert.umd.js +3 -1
- package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-alert.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-components-data-list.umd.js +1 -1
- package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-data-list.umd.min.js +1 -1
- package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-components-scroll-controls.umd.js +2 -2
- package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js +1 -1
- package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-constants.umd.js +1 -1
- package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
- package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
- package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
- package/constants/taiga-ui-core-constants.metadata.json +1 -1
- package/constants/version.d.ts +1 -1
- package/esm2015/components/alert/alert.component.js +4 -2
- package/esm2015/components/data-list/data-list-dropdown-manager.directive.js +2 -2
- package/esm2015/components/scroll-controls/scrollbar.directive.js +3 -3
- package/esm2015/constants/version.js +2 -2
- package/esm5/components/alert/alert.component.js +4 -2
- package/esm5/components/data-list/data-list-dropdown-manager.directive.js +2 -2
- package/esm5/components/scroll-controls/scrollbar.directive.js +3 -3
- package/esm5/constants/version.js +2 -2
- package/fesm2015/taiga-ui-core-components-alert.js +3 -1
- package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-data-list.js +1 -1
- package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-scroll-controls.js +2 -2
- package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
- package/fesm2015/taiga-ui-core-constants.js +1 -1
- package/fesm2015/taiga-ui-core-constants.js.map +1 -1
- package/fesm5/taiga-ui-core-components-alert.js +3 -1
- package/fesm5/taiga-ui-core-components-alert.js.map +1 -1
- package/fesm5/taiga-ui-core-components-data-list.js +1 -1
- package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
- package/fesm5/taiga-ui-core-components-scroll-controls.js +2 -2
- package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
- package/fesm5/taiga-ui-core-constants.js +1 -1
- package/fesm5/taiga-ui-core-constants.js.map +1 -1
- package/package.json +7 -7
- package/styles/markup/tui-group.less +1 -1
- package/styles/taiga-ui-global-old.less +18 -18
- package/styles/taiga-ui-global.less +18 -18
- package/styles/taiga-ui-local-old.less +5 -5
- package/styles/taiga-ui-local.less +7 -7
- package/styles/taiga-ui-local.scss +7 -7
- package/styles/taiga-ui-stackblitz.less +7 -0
- package/styles/taiga-ui-theme.less +4 -4
- package/styles/theme/dialog.less +1 -1
- package/styles/theme/wrapper/accent.less +1 -1
- package/styles/theme/wrapper/base.less +1 -1
- package/styles/theme/wrapper/icon.less +1 -1
- package/styles/theme/wrapper/outline.less +1 -1
- package/styles/theme/wrapper/primary.less +1 -1
- package/styles/theme/wrapper/secondary.less +1 -1
- package/styles/theme/wrapper/table.less +1 -1
- package/styles/theme/wrapper/textfield.less +1 -1
- package/styles/theme/wrapper/whiteblock.less +1 -1
- package/styles/theme/wrapper.less +10 -10
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */function l(e,t,n,o){var r,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,o);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,n,a):r(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function d(e,t){return function(n,o){t(n,o,e)}}function f(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a}function m(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(f(arguments[t]));return e}function g(e){var t=e.currentTarget;return!n.isNativeFocused(t)}var y=function(){function e(e,t,n,o,r){this.content=e,this.dataList=t,this.elementRef=n,this.host=o,this.dropdown=r,this.size="m",this.role="option",this.disabled=!1}return Object.defineProperty(e.prototype,"active",{get:function(){return!!this.dropdown&&!!this.dropdown.dropdownBoxRef},enumerable:!0,configurable:!0}),e.prototype.onClick=function(){this.host&&void 0!==this.value&&this.host.handleOption(this.value)},e.prototype.onMouseMove=function(e){var t=e.currentTarget;n.setNativeFocused(t,!0,!0)},e.prototype.ngOnDestroy=function(){this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement)},e.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[o.TUI_OPTION_CONTENT]}]},{type:void 0,decorators:[{type:t.Inject,args:[t.forwardRef((function(){return v}))]}]},{type:t.ElementRef,decorators:[{type:t.Inject,args:[t.ElementRef]}]},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[o.TUI_DATA_LIST_HOST]}]},{type:a.TuiDropdownDirective,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[a.TuiDropdownDirective]}]}]},l([t.Input(),t.HostBinding("attr.data-size"),n.tuiDefaultProp()],e.prototype,"size",void 0),l([t.Input(),t.HostBinding("attr.role"),n.tuiDefaultProp()],e.prototype,"role",void 0),l([t.Input(),n.tuiDefaultProp()],e.prototype,"disabled",void 0),l([t.Input()],e.prototype,"value",void 0),l([t.HostBinding("class._with-dropdown")],e.prototype,"active",null),l([t.HostListener("click")],e.prototype,"onClick",null),l([s.shouldCall(g),t.HostListener("mousemove.init",["$event"]),t.HostListener("mousemove.silent",["$event"])],e.prototype,"onMouseMove",null),e=l([t.Component({selector:"button[tuiOption], a[tuiOption]",template:'<span\n *ngIf="content; else base"\n polymorpheus-outlet\n class="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="arrow"\n ></tui-svg>\n</ng-template>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,host:{tabIndex:"-1",type:"button","[attr.disabled]":"disabled || null"},styles:[":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0 1rem;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;border-top:8px solid transparent;border-bottom:8px solid transparent;margin:-.5rem 0}: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:3rem}:host[data-size='s']{min-height:3rem}:host[data-size='m']{min-height:3.75rem}:host[data-size='l']{min-height:4.5rem}.content{display:flex;flex:1;max-width:100%}.arrow{margin:0 -.5rem 0 .75rem}"]}),d(0,t.Optional()),d(0,t.Inject(o.TUI_OPTION_CONTENT)),d(1,t.Inject(t.forwardRef((function(){return v})))),d(2,t.Inject(t.ElementRef)),d(3,t.Optional()),d(3,t.Inject(o.TUI_DATA_LIST_HOST)),d(4,t.Optional()),d(4,t.Self()),d(4,t.Inject(a.TuiDropdownDirective))],e)}(),v=function(){function e(e,t){this.elementRef=e,this.defaultEmptyContent$=t,this.options=n.EMPTY_QUERY,this.role="listbox",this.emptyContent=""}var a;return a=e,Object.defineProperty(e.prototype,"empty$",{get:function(){return n.itemsQueryListObservable(this.options).pipe(i.map((function(e){return!e.length})))},enumerable:!0,configurable:!0}),e.prototype.onFocusIn=function(e,t){t.contains(e)||this.origin||(this.origin=e)},e.prototype.noop=function(){},e.prototype.onKeyDownArrow=function(e,t){var o=this.elements;n.moveFocus(o.indexOf(e),o,t)},e.prototype.handleFocusLossIfNecessary=function(e){this.origin&&n.isNativeFocusedIn(e)&&n.setNativeMouseFocused(this.origin,!0,!0)},e.prototype.getOptions=function(e){return void 0===e&&(e=!1),this.options.toArray().filter((function(t){var n=t.disabled;return e||!n})).map((function(e){return e.value})).filter(n.isPresent)},e.prototype.onFocus=function(e,t){var o=this.elements;n.moveFocus(t?-1:o.length,o,t?1:-1),this.handleFocusLossIfNecessary(e)},Object.defineProperty(e.prototype,"elements",{get:function(){return Array.from(this.elementRef.nativeElement.querySelectorAll("[tuiOption]"))},enumerable:!0,configurable:!0}),e.ctorParameters=function(){return[{type:t.ElementRef,decorators:[{type:t.Inject,args:[t.ElementRef]}]},{type:r.Observable,decorators:[{type:t.Inject,args:[o.TUI_NOTHING_FOUND_MESSAGE]}]}]},l([t.ContentChildren(t.forwardRef((function(){return y})),{descendants:!0})],e.prototype,"options",void 0),l([t.Input(),t.HostBinding("attr.role"),n.tuiDefaultProp()],e.prototype,"role",void 0),l([t.Input(),n.tuiDefaultProp()],e.prototype,"emptyContent",void 0),l([n.tuiPure],e.prototype,"empty$",null),l([t.HostListener("focusin",["$event.relatedTarget","$event.currentTarget"])],e.prototype,"onFocusIn",null),l([t.HostListener("mousedown.prevent")],e.prototype,"noop",null),l([t.HostListener("keydown.arrowDown.prevent",["$event.target","1"]),t.HostListener("keydown.arrowUp.prevent",["$event.target","-1"])],e.prototype,"onKeyDownArrow",null),l([t.HostListener("wheel.silent.passive",["$event.currentTarget"]),t.HostListener("mouseleave",["$event.target"])],e.prototype,"handleFocusLossIfNecessary",null),e=a=l([t.Component({selector:"tui-data-list",template:'<div\n tabindex="0"\n class="trap"\n (focusin)="onFocus($event.target, true)"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf="empty$ | async"\n polymorpheus-outlet\n class="empty"\n [content]="emptyContent || (defaultEmptyContent$ | async)"\n></div>\n<div\n tabindex="0"\n class="trap"\n (focusin)="onFocus($event.target, false)"\n></div>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,encapsulation:t.ViewEncapsulation.None,providers:[{provide:o.TUI_DATA_LIST_ACCESSOR,useExisting:t.forwardRef((function(){return a}))}],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 .trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list>.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;padding:.5rem 0;margin:-.5rem 0}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:.4375rem;height:1px;background:var(--tui-base-03)}"]}),d(0,t.Inject(t.ElementRef)),d(1,t.Inject(o.TUI_NOTHING_FOUND_MESSAGE))],e)}(),h=function(){function e(){}return e=l([t.Directive({selector:"ng-template[tuiDataList]"})],e)}(),b=function(){function e(){this.dropdowns=n.EMPTY_QUERY,this.elements=n.EMPTY_QUERY}return e.prototype.ngAfterViewInit=function(){var e=this;this.right$.subscribe((function(t){e.tryToFocus(t)})),r.merge(this.immediate$,this.debounce$).pipe(i.switchMap((function(t){e.dropdowns.forEach((function(e,n){e.open=n===t}));var o=e.elements.toArray()[t],a=e.dropdowns.toArray()[t];if(!o||!a||!a.dropdownBoxRef)return r.EMPTY;var s=a.dropdownBoxRef.location.nativeElement,u=n.typedFromEvent(s,"mouseenter").pipe(i.take(1)),p=r.merge(n.typedFromEvent(o.nativeElement,"keydown"),n.typedFromEvent(s,"keydown")).pipe(i.filter((function(e){return 27===e.keyCode})));return r.merge(u,p).pipe(i.tap((function(e){a.dropdownBoxRef&&e.stopPropagation(),n.setNativeFocused(o.nativeElement),a.open=e instanceof MouseEvent})))}))).subscribe()},Object.defineProperty(e.prototype,"elements$",{get:function(){return n.itemsQueryListObservable(this.elements).pipe(i.map((function(e){return e.map((function(e){return e.nativeElement}))})),i.shareReplay(1))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"right$",{get:function(){return this.elements$.pipe(i.switchMap((function(e){return r.merge.apply(void 0,m(e.map((function(e,t){return n.typedFromEvent(e,"keydown").pipe(i.filter((function(e){return 39===e.keyCode})),n.preventDefault(),i.mapTo(t))}))))})))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"immediate$",{get:function(){return this.elements$.pipe(i.switchMap((function(e){return r.merge.apply(void 0,m(e.map((function(e,t){return n.typedFromEvent(e,"click").pipe(i.mapTo(t))}))))})))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"debounce$",{get:function(){var e=this;return this.elements$.pipe(i.switchMap((function(t){return r.merge.apply(void 0,m(t.map((function(t,o){return r.merge(n.typedFromEvent(t,"focus"),n.typedFromEvent(t,"blur")).pipe(i.filter((function(t){var n=t.relatedTarget;return e.notInDropdown(n,o)})),i.map((function(e){return"focus"===e.type?o:NaN})))}))))})),i.debounceTime(300))},enumerable:!0,configurable:!0}),e.prototype.notInDropdown=function(e,t){var n=this.dropdowns.toArray()[t];return!n||!n.dropdownBoxRef||!n.dropdownBoxRef.location.nativeElement.contains(e)},e.prototype.tryToFocus=function(e){var t=this.dropdowns.toArray()[e],o=t&&t.dropdownBoxRef&&t.dropdownBoxRef.instance.contentElementRef;if(o){var r=n.getClosestKeyboardFocusable(o.nativeElement,!1,o.nativeElement);r&&n.setNativeFocused(r)}},l([t.ContentChildren(a.TuiDropdownDirective,{descendants:!0})],e.prototype,"dropdowns",void 0),l([t.ContentChildren(a.TuiDropdownDirective,{read:t.ElementRef,descendants:!0})],e.prototype,"elements",void 0),l([n.tuiPure],e.prototype,"elements$",null),l([n.tuiPure],e.prototype,"right$",null),l([n.tuiPure],e.prototype,"immediate$",null),l([n.tuiPure],e.prototype,"debounce$",null),e=l([t.Directive({selector:"tui-data-list[tuiDataListDropdownManager]"})],e)}(),w=function(){function e(){this.label=""}return l([t.Input(),t.HostBinding("attr.data-label"),n.tuiDefaultProp()],e.prototype,"label",void 0),e=l([t.Directive({selector:"tui-opt-group",host:{role:"group"}})],e)}(),x=function(){function e(){}return e=l([t.NgModule({imports:[u.CommonModule,p.TuiSvgModule,c.PolymorpheusModule],declarations:[v,y,w,h,b],exports:[v,y,w,h,b]})],e)}();e.TuiDataListComponent=v,e.TuiDataListDirective=h,e.TuiDataListDropdownManagerDirective=b,e.TuiDataListModule=x,e.TuiOptGroupDirective=w,e.TuiOptionComponent=y,e.shouldFocus=g,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
15
|
+
***************************************************************************** */function l(e,t,n,o){var r,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,o);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,n,a):r(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function d(e,t){return function(n,o){t(n,o,e)}}function f(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,r,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a}function m(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(f(arguments[t]));return e}function g(e){var t=e.currentTarget;return!n.isNativeFocused(t)}var y=function(){function e(e,t,n,o,r){this.content=e,this.dataList=t,this.elementRef=n,this.host=o,this.dropdown=r,this.size="m",this.role="option",this.disabled=!1}return Object.defineProperty(e.prototype,"active",{get:function(){return!!this.dropdown&&!!this.dropdown.dropdownBoxRef},enumerable:!0,configurable:!0}),e.prototype.onClick=function(){this.host&&void 0!==this.value&&this.host.handleOption(this.value)},e.prototype.onMouseMove=function(e){var t=e.currentTarget;n.setNativeFocused(t,!0,!0)},e.prototype.ngOnDestroy=function(){this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement)},e.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[o.TUI_OPTION_CONTENT]}]},{type:void 0,decorators:[{type:t.Inject,args:[t.forwardRef((function(){return v}))]}]},{type:t.ElementRef,decorators:[{type:t.Inject,args:[t.ElementRef]}]},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[o.TUI_DATA_LIST_HOST]}]},{type:a.TuiDropdownDirective,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[a.TuiDropdownDirective]}]}]},l([t.Input(),t.HostBinding("attr.data-size"),n.tuiDefaultProp()],e.prototype,"size",void 0),l([t.Input(),t.HostBinding("attr.role"),n.tuiDefaultProp()],e.prototype,"role",void 0),l([t.Input(),n.tuiDefaultProp()],e.prototype,"disabled",void 0),l([t.Input()],e.prototype,"value",void 0),l([t.HostBinding("class._with-dropdown")],e.prototype,"active",null),l([t.HostListener("click")],e.prototype,"onClick",null),l([s.shouldCall(g),t.HostListener("mousemove.init",["$event"]),t.HostListener("mousemove.silent",["$event"])],e.prototype,"onMouseMove",null),e=l([t.Component({selector:"button[tuiOption], a[tuiOption]",template:'<span\n *ngIf="content; else base"\n polymorpheus-outlet\n class="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="arrow"\n ></tui-svg>\n</ng-template>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,host:{tabIndex:"-1",type:"button","[attr.disabled]":"disabled || null"},styles:[":host{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0 1rem;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;border-top:8px solid transparent;border-bottom:8px solid transparent;margin:-.5rem 0}: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:3rem}:host[data-size='s']{min-height:3rem}:host[data-size='m']{min-height:3.75rem}:host[data-size='l']{min-height:4.5rem}.content{display:flex;flex:1;max-width:100%}.arrow{margin:0 -.5rem 0 .75rem}"]}),d(0,t.Optional()),d(0,t.Inject(o.TUI_OPTION_CONTENT)),d(1,t.Inject(t.forwardRef((function(){return v})))),d(2,t.Inject(t.ElementRef)),d(3,t.Optional()),d(3,t.Inject(o.TUI_DATA_LIST_HOST)),d(4,t.Optional()),d(4,t.Self()),d(4,t.Inject(a.TuiDropdownDirective))],e)}(),v=function(){function e(e,t){this.elementRef=e,this.defaultEmptyContent$=t,this.options=n.EMPTY_QUERY,this.role="listbox",this.emptyContent=""}var a;return a=e,Object.defineProperty(e.prototype,"empty$",{get:function(){return n.itemsQueryListObservable(this.options).pipe(i.map((function(e){return!e.length})))},enumerable:!0,configurable:!0}),e.prototype.onFocusIn=function(e,t){t.contains(e)||this.origin||(this.origin=e)},e.prototype.noop=function(){},e.prototype.onKeyDownArrow=function(e,t){var o=this.elements;n.moveFocus(o.indexOf(e),o,t)},e.prototype.handleFocusLossIfNecessary=function(e){this.origin&&n.isNativeFocusedIn(e)&&n.setNativeMouseFocused(this.origin,!0,!0)},e.prototype.getOptions=function(e){return void 0===e&&(e=!1),this.options.toArray().filter((function(t){var n=t.disabled;return e||!n})).map((function(e){return e.value})).filter(n.isPresent)},e.prototype.onFocus=function(e,t){var o=this.elements;n.moveFocus(t?-1:o.length,o,t?1:-1),this.handleFocusLossIfNecessary(e)},Object.defineProperty(e.prototype,"elements",{get:function(){return Array.from(this.elementRef.nativeElement.querySelectorAll("[tuiOption]"))},enumerable:!0,configurable:!0}),e.ctorParameters=function(){return[{type:t.ElementRef,decorators:[{type:t.Inject,args:[t.ElementRef]}]},{type:r.Observable,decorators:[{type:t.Inject,args:[o.TUI_NOTHING_FOUND_MESSAGE]}]}]},l([t.ContentChildren(t.forwardRef((function(){return y})),{descendants:!0})],e.prototype,"options",void 0),l([t.Input(),t.HostBinding("attr.role"),n.tuiDefaultProp()],e.prototype,"role",void 0),l([t.Input(),n.tuiDefaultProp()],e.prototype,"emptyContent",void 0),l([n.tuiPure],e.prototype,"empty$",null),l([t.HostListener("focusin",["$event.relatedTarget","$event.currentTarget"])],e.prototype,"onFocusIn",null),l([t.HostListener("mousedown.prevent")],e.prototype,"noop",null),l([t.HostListener("keydown.arrowDown.prevent",["$event.target","1"]),t.HostListener("keydown.arrowUp.prevent",["$event.target","-1"])],e.prototype,"onKeyDownArrow",null),l([t.HostListener("wheel.silent.passive",["$event.currentTarget"]),t.HostListener("mouseleave",["$event.target"])],e.prototype,"handleFocusLossIfNecessary",null),e=a=l([t.Component({selector:"tui-data-list",template:'<div\n tabindex="0"\n class="trap"\n (focusin)="onFocus($event.target, true)"\n></div>\n<ng-content></ng-content>\n<div\n *ngIf="empty$ | async"\n polymorpheus-outlet\n class="empty"\n [content]="emptyContent || (defaultEmptyContent$ | async)"\n></div>\n<div\n tabindex="0"\n class="trap"\n (focusin)="onFocus($event.target, false)"\n></div>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,encapsulation:t.ViewEncapsulation.None,providers:[{provide:o.TUI_DATA_LIST_ACCESSOR,useExisting:t.forwardRef((function(){return a}))}],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 .trap{display:none}tui-data-list:focus-within [tuiOption]._with-dropdown:not(:focus){background-color:transparent}tui-data-list>.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;padding:.5rem 0;margin:-.5rem 0}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:.4375rem;height:1px;background:var(--tui-base-03)}"]}),d(0,t.Inject(t.ElementRef)),d(1,t.Inject(o.TUI_NOTHING_FOUND_MESSAGE))],e)}(),h=function(){function e(){}return e=l([t.Directive({selector:"ng-template[tuiDataList]"})],e)}(),b=function(){function e(){this.dropdowns=n.EMPTY_QUERY,this.elements=n.EMPTY_QUERY}return e.prototype.ngAfterViewInit=function(){var e=this;this.right$.subscribe((function(t){e.tryToFocus(t)})),r.merge(this.immediate$,this.debounce$).pipe(i.switchMap((function(t){e.dropdowns.forEach((function(e,n){e.open=n===t}));var o=e.elements.toArray()[t],a=e.dropdowns.toArray()[t];if(!o||!a||!a.dropdownBoxRef)return r.EMPTY;var s=a.dropdownBoxRef.location.nativeElement,u=n.typedFromEvent(s,"mouseenter").pipe(i.take(1)),p=r.merge(n.typedFromEvent(o.nativeElement,"keydown"),n.typedFromEvent(s,"keydown")).pipe(i.filter((function(e){return 27===e.keyCode})));return r.merge(u,p).pipe(i.tap((function(e){a.dropdownBoxRef&&e.stopPropagation(),n.setNativeFocused(o.nativeElement),a.open=e instanceof MouseEvent})))}))).subscribe()},Object.defineProperty(e.prototype,"elements$",{get:function(){return n.itemsQueryListObservable(this.elements).pipe(i.map((function(e){return e.map((function(e){return e.nativeElement}))})),i.shareReplay({bufferSize:1,refCount:!0}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"right$",{get:function(){return this.elements$.pipe(i.switchMap((function(e){return r.merge.apply(void 0,m(e.map((function(e,t){return n.typedFromEvent(e,"keydown").pipe(i.filter((function(e){return 39===e.keyCode})),n.preventDefault(),i.mapTo(t))}))))})))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"immediate$",{get:function(){return this.elements$.pipe(i.switchMap((function(e){return r.merge.apply(void 0,m(e.map((function(e,t){return n.typedFromEvent(e,"click").pipe(i.mapTo(t))}))))})))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"debounce$",{get:function(){var e=this;return this.elements$.pipe(i.switchMap((function(t){return r.merge.apply(void 0,m(t.map((function(t,o){return r.merge(n.typedFromEvent(t,"focus"),n.typedFromEvent(t,"blur")).pipe(i.filter((function(t){var n=t.relatedTarget;return e.notInDropdown(n,o)})),i.map((function(e){return"focus"===e.type?o:NaN})))}))))})),i.debounceTime(300))},enumerable:!0,configurable:!0}),e.prototype.notInDropdown=function(e,t){var n=this.dropdowns.toArray()[t];return!n||!n.dropdownBoxRef||!n.dropdownBoxRef.location.nativeElement.contains(e)},e.prototype.tryToFocus=function(e){var t=this.dropdowns.toArray()[e],o=t&&t.dropdownBoxRef&&t.dropdownBoxRef.instance.contentElementRef;if(o){var r=n.getClosestKeyboardFocusable(o.nativeElement,!1,o.nativeElement);r&&n.setNativeFocused(r)}},l([t.ContentChildren(a.TuiDropdownDirective,{descendants:!0})],e.prototype,"dropdowns",void 0),l([t.ContentChildren(a.TuiDropdownDirective,{read:t.ElementRef,descendants:!0})],e.prototype,"elements",void 0),l([n.tuiPure],e.prototype,"elements$",null),l([n.tuiPure],e.prototype,"right$",null),l([n.tuiPure],e.prototype,"immediate$",null),l([n.tuiPure],e.prototype,"debounce$",null),e=l([t.Directive({selector:"tui-data-list[tuiDataListDropdownManager]"})],e)}(),w=function(){function e(){this.label=""}return l([t.Input(),t.HostBinding("attr.data-label"),n.tuiDefaultProp()],e.prototype,"label",void 0),e=l([t.Directive({selector:"tui-opt-group",host:{role:"group"}})],e)}(),x=function(){function e(){}return e=l([t.NgModule({imports:[u.CommonModule,p.TuiSvgModule,c.PolymorpheusModule],declarations:[v,y,w,h,b],exports:[v,y,w,h,b]})],e)}();e.TuiDataListComponent=v,e.TuiDataListDirective=h,e.TuiDataListDropdownManagerDirective=b,e.TuiDataListModule=x,e.TuiOptGroupDirective=w,e.TuiOptionComponent=y,e.shouldFocus=g,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
16
16
|
//# sourceMappingURL=taiga-ui-core-components-data-list.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/data-list/option/option.component.ts","ng://@taiga-ui/core/components/data-list/data-list.component.ts","ng://@taiga-ui/core/components/data-list/data-list.directive.ts","ng://@taiga-ui/core/components/data-list/data-list-dropdown-manager.directive.ts","ng://@taiga-ui/core/components/data-list/opt-group.directive.ts","ng://@taiga-ui/core/components/data-list/data-list.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","shouldFocus","_a","currentTarget","isNativeFocused","TuiOptionComponent","content","dataList","elementRef","host","dropdown","this","size","role","disabled","prototype","dropdownBoxRef","onClick","undefined","handleOption","onMouseMove","setNativeFocused","ngOnDestroy","handleFocusLossIfNecessary","nativeElement","Optional","type","Inject","args","TUI_OPTION_CONTENT","forwardRef","TuiDataListComponent","ElementRef","TUI_DATA_LIST_HOST","TuiDropdownDirective","Self","Input","HostBinding","tuiDefaultProp","HostListener","shouldCall","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","tabIndex","[attr.disabled]","defaultEmptyContent$","options","EMPTY_QUERY","emptyContent","itemsQueryListObservable","pipe","map","onFocusIn","relatedTarget","contains","origin","noop","onKeyDownArrow","current","step","elements","moveFocus","indexOf","element","isNativeFocusedIn","setNativeMouseFocused","getOptions","includeDisabled","toArray","filter","isPresent","onFocus","top","Array","from","querySelectorAll","Observable","TUI_NOTHING_FOUND_MESSAGE","ContentChildren","descendants","tuiPure","TuiDataListComponent_1","encapsulation","ViewEncapsulation","None","providers","provide","TUI_DATA_LIST_ACCESSOR","useExisting","TuiDataListDirective","Directive","TuiDataListDropdownManagerDirective","dropdowns","ngAfterViewInit","_this","right$","subscribe","index","tryToFocus","merge","immediate$","debounce$","switchMap","active","forEach","open","EMPTY","location","mouseEnter$","typedFromEvent","take","esc$","keyCode","tap","event","stopPropagation","MouseEvent","array","shareReplay","elements$","apply","preventDefault","mapTo","notInDropdown","NaN","debounceTime","instance","contentElementRef","item","getClosestKeyboardFocusable","read","TuiOptGroupDirective","label","TuiDataListModule","NgModule","imports","CommonModule","TuiSvgModule","PolymorpheusModule","declarations","exports"],"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 (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\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 function __createBinding(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, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = 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\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\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 __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\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 (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = 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, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n isNativeFocused,\n setNativeFocused,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from '../data-list.component';\n\nexport function shouldFocus({\n currentTarget,\n}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !isNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: './option.template.html',\n styleUrls: ['./option.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: '-1',\n type: 'button',\n '[attr.disabled]': 'disabled || null',\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = 'm';\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiOptionRole = 'option';\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n // TODO: Fix dataList type when updated to Ivy and compilation drops metadata\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<{}>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: any,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding('class._with-dropdown')\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener('click')\n onClick() {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener('mousemove.init', ['$event'])\n @HostListener('mousemove.silent', ['$event'])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>) {\n setNativeFocused(currentTarget, true, true);\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy() {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n isNativeFocusedIn,\n isPresent,\n itemsQueryListObservable,\n moveFocus,\n setNativeMouseFocused,\n tuiDefaultProp,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_ACCESSOR, TUI_NOTHING_FOUND_MESSAGE} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n// @dynamic\n@Component({\n selector: 'tui-data-list',\n templateUrl: './data-list.template.html',\n styleUrls: ['./data-list.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListComponent),\n },\n ],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiDataListRole = 'listbox';\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = '';\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener('focusin', ['$event.relatedTarget', '$event.currentTarget'])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement) {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener('mousedown.prevent')\n noop() {}\n\n @HostListener('keydown.arrowDown.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])\n onKeyDownArrow(current: HTMLElement, step: number) {\n const {elements} = this;\n\n moveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener('wheel.silent.passive', ['$event.currentTarget'])\n @HostListener('mouseleave', ['$event.target'])\n handleFocusLossIfNecessary(element: HTMLElement) {\n if (this.origin && isNativeFocusedIn(element)) {\n setNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .toArray()\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(isPresent);\n }\n\n onFocus(element: HTMLElement, top: boolean) {\n const {elements} = this;\n\n moveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(element);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll('[tuiOption]'));\n }\n}\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[tuiDataList]',\n})\nexport class TuiDataListDirective {}\n","import {\n AfterViewInit,\n ContentChildren,\n Directive,\n ElementRef,\n QueryList,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestKeyboardFocusable,\n itemsQueryListObservable,\n preventDefault,\n setNativeFocused,\n tuiPure,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {\n debounceTime,\n filter,\n map,\n mapTo,\n shareReplay,\n switchMap,\n take,\n tap,\n} from 'rxjs/operators';\n\n// TODO: Move into separate module in 3.0\n@Directive({\n selector: 'tui-data-list[tuiDataListDropdownManager]',\n})\nexport class TuiDataListDropdownManagerDirective implements AfterViewInit {\n @ContentChildren(TuiDropdownDirective, {descendants: true})\n private readonly dropdowns: QueryList<TuiDropdownDirective> = EMPTY_QUERY;\n\n @ContentChildren(TuiDropdownDirective, {read: ElementRef, descendants: true})\n private readonly elements: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n ngAfterViewInit() {\n this.right$.subscribe(index => {\n this.tryToFocus(index);\n });\n\n merge(this.immediate$, this.debounce$)\n .pipe(\n switchMap(active => {\n this.dropdowns.forEach((dropdown, index) => {\n dropdown.open = index === active;\n });\n\n const element = this.elements.toArray()[active];\n const dropdown = this.dropdowns.toArray()[active];\n\n if (!element || !dropdown || !dropdown.dropdownBoxRef) {\n return EMPTY;\n }\n\n const {nativeElement} = dropdown.dropdownBoxRef.location;\n const mouseEnter$ = typedFromEvent(nativeElement, 'mouseenter').pipe(\n take(1),\n );\n const esc$ = merge(\n typedFromEvent(element.nativeElement, 'keydown'),\n typedFromEvent(nativeElement, 'keydown'),\n ).pipe(filter(({keyCode}) => keyCode === 27));\n\n return merge(mouseEnter$, esc$).pipe(\n tap(event => {\n if (dropdown.dropdownBoxRef) {\n event.stopPropagation();\n }\n\n setNativeFocused(element.nativeElement);\n // TODO: iframe warning\n dropdown.open = event instanceof MouseEvent;\n }),\n );\n }),\n )\n .subscribe();\n }\n\n @tuiPure\n private get elements$(): Observable<readonly HTMLElement[]> {\n return itemsQueryListObservable(this.elements).pipe(\n map(array => array.map(({nativeElement}) => nativeElement)),\n shareReplay(1),\n );\n }\n\n @tuiPure\n private get right$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'keydown').pipe(\n filter(({keyCode}) => keyCode === 39),\n preventDefault(),\n mapTo(index),\n ),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get immediate$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'click').pipe(mapTo(index)),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get debounce$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n merge(\n typedFromEvent(element, 'focus'),\n typedFromEvent(element, 'blur'),\n ).pipe(\n filter(({relatedTarget}) =>\n this.notInDropdown(relatedTarget, index),\n ),\n map(({type}) => (type === 'focus' ? index : NaN)),\n ),\n ),\n ),\n ),\n debounceTime(300),\n );\n }\n\n private notInDropdown(element: EventTarget | null, index: number): boolean {\n const dropdown = this.dropdowns.toArray()[index];\n\n return (\n !dropdown ||\n !dropdown.dropdownBoxRef ||\n !dropdown.dropdownBoxRef.location.nativeElement.contains(element)\n );\n }\n\n private tryToFocus(index: number) {\n const dropdown = this.dropdowns.toArray()[index];\n const content =\n dropdown &&\n dropdown.dropdownBoxRef &&\n dropdown.dropdownBoxRef.instance.contentElementRef;\n\n if (!content) {\n return;\n }\n\n const item = getClosestKeyboardFocusable(\n content.nativeElement,\n false,\n content.nativeElement,\n );\n\n if (item) {\n setNativeFocused(item);\n }\n }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-opt-group',\n host: {\n role: 'group',\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding('attr.data-label')\n @tuiDefaultProp()\n label = '';\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiDataListDropdownManagerDirective} from './data-list-dropdown-manager.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n})\nexport class TuiDataListModule {}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/data-list/option/option.component.ts","ng://@taiga-ui/core/components/data-list/data-list.component.ts","ng://@taiga-ui/core/components/data-list/data-list.directive.ts","ng://@taiga-ui/core/components/data-list/data-list-dropdown-manager.directive.ts","ng://@taiga-ui/core/components/data-list/opt-group.directive.ts","ng://@taiga-ui/core/components/data-list/data-list.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","shouldFocus","_a","currentTarget","isNativeFocused","TuiOptionComponent","content","dataList","elementRef","host","dropdown","this","size","role","disabled","prototype","dropdownBoxRef","onClick","undefined","handleOption","onMouseMove","setNativeFocused","ngOnDestroy","handleFocusLossIfNecessary","nativeElement","Optional","type","Inject","args","TUI_OPTION_CONTENT","forwardRef","TuiDataListComponent","ElementRef","TUI_DATA_LIST_HOST","TuiDropdownDirective","Self","Input","HostBinding","tuiDefaultProp","HostListener","shouldCall","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","tabIndex","[attr.disabled]","defaultEmptyContent$","options","EMPTY_QUERY","emptyContent","itemsQueryListObservable","pipe","map","onFocusIn","relatedTarget","contains","origin","noop","onKeyDownArrow","current","step","elements","moveFocus","indexOf","element","isNativeFocusedIn","setNativeMouseFocused","getOptions","includeDisabled","toArray","filter","isPresent","onFocus","top","Array","from","querySelectorAll","Observable","TUI_NOTHING_FOUND_MESSAGE","ContentChildren","descendants","tuiPure","TuiDataListComponent_1","encapsulation","ViewEncapsulation","None","providers","provide","TUI_DATA_LIST_ACCESSOR","useExisting","TuiDataListDirective","Directive","TuiDataListDropdownManagerDirective","dropdowns","ngAfterViewInit","_this","right$","subscribe","index","tryToFocus","merge","immediate$","debounce$","switchMap","active","forEach","open","EMPTY","location","mouseEnter$","typedFromEvent","take","esc$","keyCode","tap","event","stopPropagation","MouseEvent","array","shareReplay","bufferSize","refCount","elements$","apply","preventDefault","mapTo","notInDropdown","NaN","debounceTime","instance","contentElementRef","item","getClosestKeyboardFocusable","read","TuiOptGroupDirective","label","TuiDataListModule","NgModule","imports","CommonModule","TuiSvgModule","PolymorpheusModule","declarations","exports"],"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 (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\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 function __createBinding(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, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = 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\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\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 __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\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 (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = 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, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n isNativeFocused,\n setNativeFocused,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from '../data-list.component';\n\nexport function shouldFocus({\n currentTarget,\n}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !isNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: './option.template.html',\n styleUrls: ['./option.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: '-1',\n type: 'button',\n '[attr.disabled]': 'disabled || null',\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = 'm';\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiOptionRole = 'option';\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n // TODO: Fix dataList type when updated to Ivy and compilation drops metadata\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<{}>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: any,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding('class._with-dropdown')\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener('click')\n onClick() {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener('mousemove.init', ['$event'])\n @HostListener('mousemove.silent', ['$event'])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>) {\n setNativeFocused(currentTarget, true, true);\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy() {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n isNativeFocusedIn,\n isPresent,\n itemsQueryListObservable,\n moveFocus,\n setNativeMouseFocused,\n tuiDefaultProp,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_ACCESSOR, TUI_NOTHING_FOUND_MESSAGE} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n// @dynamic\n@Component({\n selector: 'tui-data-list',\n templateUrl: './data-list.template.html',\n styleUrls: ['./data-list.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListComponent),\n },\n ],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiDataListRole = 'listbox';\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = '';\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener('focusin', ['$event.relatedTarget', '$event.currentTarget'])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement) {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener('mousedown.prevent')\n noop() {}\n\n @HostListener('keydown.arrowDown.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])\n onKeyDownArrow(current: HTMLElement, step: number) {\n const {elements} = this;\n\n moveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener('wheel.silent.passive', ['$event.currentTarget'])\n @HostListener('mouseleave', ['$event.target'])\n handleFocusLossIfNecessary(element: HTMLElement) {\n if (this.origin && isNativeFocusedIn(element)) {\n setNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .toArray()\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(isPresent);\n }\n\n onFocus(element: HTMLElement, top: boolean) {\n const {elements} = this;\n\n moveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(element);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll('[tuiOption]'));\n }\n}\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[tuiDataList]',\n})\nexport class TuiDataListDirective {}\n","import {\n AfterViewInit,\n ContentChildren,\n Directive,\n ElementRef,\n QueryList,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestKeyboardFocusable,\n itemsQueryListObservable,\n preventDefault,\n setNativeFocused,\n tuiPure,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {\n debounceTime,\n filter,\n map,\n mapTo,\n shareReplay,\n switchMap,\n take,\n tap,\n} from 'rxjs/operators';\n\n// TODO: Move into separate module in 3.0\n@Directive({\n selector: 'tui-data-list[tuiDataListDropdownManager]',\n})\nexport class TuiDataListDropdownManagerDirective implements AfterViewInit {\n @ContentChildren(TuiDropdownDirective, {descendants: true})\n private readonly dropdowns: QueryList<TuiDropdownDirective> = EMPTY_QUERY;\n\n @ContentChildren(TuiDropdownDirective, {read: ElementRef, descendants: true})\n private readonly elements: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n ngAfterViewInit() {\n this.right$.subscribe(index => {\n this.tryToFocus(index);\n });\n\n merge(this.immediate$, this.debounce$)\n .pipe(\n switchMap(active => {\n this.dropdowns.forEach((dropdown, index) => {\n dropdown.open = index === active;\n });\n\n const element = this.elements.toArray()[active];\n const dropdown = this.dropdowns.toArray()[active];\n\n if (!element || !dropdown || !dropdown.dropdownBoxRef) {\n return EMPTY;\n }\n\n const {nativeElement} = dropdown.dropdownBoxRef.location;\n const mouseEnter$ = typedFromEvent(nativeElement, 'mouseenter').pipe(\n take(1),\n );\n const esc$ = merge(\n typedFromEvent(element.nativeElement, 'keydown'),\n typedFromEvent(nativeElement, 'keydown'),\n ).pipe(filter(({keyCode}) => keyCode === 27));\n\n return merge(mouseEnter$, esc$).pipe(\n tap(event => {\n if (dropdown.dropdownBoxRef) {\n event.stopPropagation();\n }\n\n setNativeFocused(element.nativeElement);\n // TODO: iframe warning\n dropdown.open = event instanceof MouseEvent;\n }),\n );\n }),\n )\n .subscribe();\n }\n\n @tuiPure\n private get elements$(): Observable<readonly HTMLElement[]> {\n return itemsQueryListObservable(this.elements).pipe(\n map(array => array.map(({nativeElement}) => nativeElement)),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n }\n\n @tuiPure\n private get right$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'keydown').pipe(\n filter(({keyCode}) => keyCode === 39),\n preventDefault(),\n mapTo(index),\n ),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get immediate$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'click').pipe(mapTo(index)),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get debounce$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n merge(\n typedFromEvent(element, 'focus'),\n typedFromEvent(element, 'blur'),\n ).pipe(\n filter(({relatedTarget}) =>\n this.notInDropdown(relatedTarget, index),\n ),\n map(({type}) => (type === 'focus' ? index : NaN)),\n ),\n ),\n ),\n ),\n debounceTime(300),\n );\n }\n\n private notInDropdown(element: EventTarget | null, index: number): boolean {\n const dropdown = this.dropdowns.toArray()[index];\n\n return (\n !dropdown ||\n !dropdown.dropdownBoxRef ||\n !dropdown.dropdownBoxRef.location.nativeElement.contains(element)\n );\n }\n\n private tryToFocus(index: number) {\n const dropdown = this.dropdowns.toArray()[index];\n const content =\n dropdown &&\n dropdown.dropdownBoxRef &&\n dropdown.dropdownBoxRef.instance.contentElementRef;\n\n if (!content) {\n return;\n }\n\n const item = getClosestKeyboardFocusable(\n content.nativeElement,\n false,\n content.nativeElement,\n );\n\n if (item) {\n setNativeFocused(item);\n }\n }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-opt-group',\n host: {\n role: 'group',\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding('attr.data-label')\n @tuiDefaultProp()\n label = '';\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiDataListDropdownManagerDirective} from './data-list-dropdown-manager.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n})\nexport class TuiDataListModule {}\n"]}
|
|
@@ -303,7 +303,7 @@
|
|
|
303
303
|
var horizontal = getOffsetHorizontal(event, rect);
|
|
304
304
|
return mousemove$.pipe(operators.map(function (event) { return _this.getScrolled(event, vertical, horizontal); }), operators.takeUntil(mouseup$));
|
|
305
305
|
})))
|
|
306
|
-
.pipe(
|
|
306
|
+
.pipe(cdk.tuiZonefree(ngZone), operators.takeUntil(destroy$))
|
|
307
307
|
.subscribe(function (_a) {
|
|
308
308
|
var _b = __read(_a, 2), scrollTop = _b[0], scrollLeft = _b[1];
|
|
309
309
|
var _c = __read(_this.viewportScroller.getScrollPosition(), 2), x = _c[0], y = _c[1];
|
|
@@ -322,7 +322,7 @@
|
|
|
322
322
|
}
|
|
323
323
|
});
|
|
324
324
|
rxjs.merge(rxjs.fromEvent(this.container ? this.container.nativeElement : this.windowRef, 'scroll'), animationFrame$.pipe(operators.throttleTime(cdk.POLLING_TIME)))
|
|
325
|
-
.pipe(
|
|
325
|
+
.pipe(cdk.tuiZonefree(ngZone), operators.takeUntil(destroy$))
|
|
326
326
|
.subscribe(function () {
|
|
327
327
|
if (_this.tuiScrollbar === 'vertical') {
|
|
328
328
|
renderer.setStyle(nativeElement, 'top', _this.thumb * 100 + "%");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-components-scroll-controls.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/scroll-controls/scroll-controls.component.ts","ng://@taiga-ui/core/components/scroll-controls/scrollbar.directive.ts","ng://@taiga-ui/core/components/scroll-controls/scrollbar-wrapper.directive.ts","ng://@taiga-ui/core/components/scroll-controls/scroll-controls.module.ts"],"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 (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\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 function __createBinding(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, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = 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\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\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 __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\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 (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = 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, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {AnimationOptions} from '@angular/animations';\nimport {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n NgZone,\n Optional,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_ANIMATION_OPTIONS, TUI_MODE, TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {distinctUntilChanged, map, startWith, throttleTime} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-scroll-controls',\n templateUrl: './scroll-controls.template.html',\n styleUrls: ['./scroll-controls.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiScrollControlsComponent {\n readonly refresh$ = this.animationFrame$.pipe(\n throttleTime(300),\n map(() => this.scrollbars),\n startWith([false, false]),\n distinctUntilChanged((a, b) => a[0] === b[0] && a[1] === b[1]),\n tuiZoneOptimized(this.ngZone),\n );\n\n readonly animation = {\n value: '',\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Optional()\n @Inject(TUI_SCROLL_REF)\n private readonly scrollRef: ElementRef<HTMLElement> | null,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {}\n\n private get scrollbars(): [boolean, boolean] {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} = this.scrollRef\n ? this.scrollRef.nativeElement\n : this.documentRef.documentElement;\n\n return [\n Math.ceil((clientHeight / scrollHeight) * 100) < 100,\n Math.ceil((clientWidth / scrollWidth) * 100) < 100,\n ];\n }\n}\n","import {DOCUMENT, ViewportScroller} from '@angular/common';\nimport {\n Directive,\n ElementRef,\n Inject,\n Input,\n NgZone,\n Optional,\n Renderer2,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n POLLING_TIME,\n preventDefault,\n stopPropagation,\n TuiDestroyService,\n tuiZonefree,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TUI_ELEMENT_REF, TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {TuiOrientationT} from '@taiga-ui/core/types';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {map, switchMap, takeUntil, throttleTime} from 'rxjs/operators';\n\nconst MIN_WIDTH = 24;\n\n// @dynamic\n@Directive({\n selector: '[tuiScrollbar]',\n providers: [TuiDestroyService],\n})\nexport class TuiScrollbarDirective {\n @Input()\n tuiScrollbar: TuiOrientationT = 'vertical';\n\n constructor(\n @Inject(NgZone) ngZone: NgZone,\n @Inject(Renderer2) renderer: Renderer2,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TUI_ELEMENT_REF) private readonly wrapper: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_SCROLL_REF)\n private readonly container: ElementRef<HTMLElement> | null,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(ViewportScroller) private readonly viewportScroller: ViewportScroller,\n ) {\n const {nativeElement} = this.elementRef;\n const mousedown$ = typedFromEvent(nativeElement, 'mousedown');\n const mousemove$ = typedFromEvent(this.documentRef, 'mousemove');\n const mouseup$ = typedFromEvent(this.documentRef, 'mouseup');\n const mousedownWrapper$ = typedFromEvent(wrapper.nativeElement, 'mousedown');\n\n merge(\n mousedownWrapper$.pipe(\n preventDefault(),\n map(event => this.getScrolled(event, 0.5, 0.5)),\n ),\n mousedown$.pipe(\n preventDefault(),\n stopPropagation(),\n switchMap(event => {\n const rect = nativeElement.getBoundingClientRect();\n const vertical = getOffsetVertical(event, rect);\n const horizontal = getOffsetHorizontal(event, rect);\n\n return mousemove$.pipe(\n map(event => this.getScrolled(event, vertical, horizontal)),\n takeUntil(mouseup$),\n );\n }),\n ),\n )\n .pipe(takeUntil(destroy$), tuiZonefree(ngZone))\n .subscribe(([scrollTop, scrollLeft]) => {\n const [x, y] = this.viewportScroller.getScrollPosition();\n\n if (!this.container) {\n this.viewportScroller.scrollToPosition([\n this.tuiScrollbar === 'vertical' ? x : scrollLeft,\n this.tuiScrollbar === 'vertical' ? scrollTop : y,\n ]);\n\n return;\n }\n\n if (this.tuiScrollbar === 'vertical') {\n renderer.setProperty(\n this.container.nativeElement,\n 'scrollTop',\n scrollTop,\n );\n } else {\n renderer.setProperty(\n this.container.nativeElement,\n 'scrollLeft',\n scrollLeft,\n );\n }\n });\n\n merge(\n fromEvent(\n this.container ? this.container.nativeElement : this.windowRef,\n 'scroll',\n ),\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n )\n .pipe(takeUntil(destroy$), tuiZonefree(ngZone))\n .subscribe(() => {\n if (this.tuiScrollbar === 'vertical') {\n renderer.setStyle(nativeElement, 'top', `${this.thumb * 100}%`);\n renderer.setStyle(nativeElement, 'height', `${this.view * 100}%`);\n } else {\n renderer.setStyle(nativeElement, 'left', `${this.thumb * 100}%`);\n renderer.setStyle(nativeElement, 'width', `${this.view * 100}%`);\n }\n });\n }\n\n private get scrolled(): number {\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n scrollLeft,\n scrollWidth,\n clientWidth,\n } = this.computedContainer;\n\n return this.tuiScrollbar === 'vertical'\n ? scrollTop / (scrollHeight - clientHeight)\n : scrollLeft / (scrollWidth - clientWidth);\n }\n\n private get compensation(): number {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} =\n this.computedContainer;\n\n if (\n ((clientHeight * clientHeight) / scrollHeight > MIN_WIDTH &&\n this.tuiScrollbar === 'vertical') ||\n ((clientWidth * clientWidth) / scrollWidth > MIN_WIDTH &&\n this.tuiScrollbar === 'horizontal')\n ) {\n return 0;\n }\n\n return this.tuiScrollbar === 'vertical'\n ? MIN_WIDTH / clientHeight\n : MIN_WIDTH / clientWidth;\n }\n\n private get thumb(): number {\n const compensation = this.compensation || this.view;\n\n return this.scrolled * (1 - compensation);\n }\n\n private get view(): number {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} =\n this.computedContainer;\n\n return this.tuiScrollbar === 'vertical'\n ? Math.ceil((clientHeight / scrollHeight) * 100) / 100\n : Math.ceil((clientWidth / scrollWidth) * 100) / 100;\n }\n\n private get computedContainer(): Element {\n return this.container\n ? this.container.nativeElement\n : this.documentRef.scrollingElement!;\n }\n\n private getScrolled(\n {clientY, clientX}: MouseEvent,\n offsetVertical: number,\n offsetHorizontal: number,\n ): [number, number] {\n const {offsetHeight, offsetWidth} = this.elementRef.nativeElement;\n const {top, left, width, height} =\n this.wrapper.nativeElement.getBoundingClientRect();\n\n const maxTop = this.computedContainer.scrollHeight - height;\n const maxLeft = this.computedContainer.scrollWidth - width;\n const scrolledTop =\n (clientY - top - offsetHeight * offsetVertical) / (height - offsetHeight);\n const scrolledLeft =\n (clientX - left - offsetWidth * offsetHorizontal) / (width - offsetWidth);\n\n return [maxTop * scrolledTop, maxLeft * scrolledLeft];\n }\n}\n\nfunction getOffsetVertical({clientY}: MouseEvent, {top, height}: ClientRect): number {\n return (clientY - top) / height;\n}\n\nfunction getOffsetHorizontal({clientX}: MouseEvent, {left, width}: ClientRect): number {\n return (clientX - left) / width;\n}\n","import {Directive, ElementRef} from '@angular/core';\nimport {TUI_ELEMENT_REF} from '@taiga-ui/core/tokens';\n\n@Directive({\n selector: '[tuiScrollbarWrapper]',\n providers: [\n {\n provide: TUI_ELEMENT_REF,\n useExisting: ElementRef,\n },\n ],\n})\nexport class TuiScrollbarWrapperDirective {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiScrollControlsComponent} from './scroll-controls.component';\nimport {TuiScrollbarDirective} from './scrollbar.directive';\nimport {TuiScrollbarWrapperDirective} from './scrollbar-wrapper.directive';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [\n TuiScrollbarDirective,\n TuiScrollbarWrapperDirective,\n TuiScrollControlsComponent,\n ],\n exports: [TuiScrollControlsComponent],\n})\nexport class TuiScrollControlsModule {}\n"],"names":["throttleTime","map","startWith","distinctUntilChanged","tuiZoneOptimized","Inject","TUI_ANIMATION_OPTIONS","NgZone","DOCUMENT","ElementRef","Optional","TUI_SCROLL_REF","Observable","ANIMATION_FRAME","TUI_MODE","Component","ChangeDetectionStrategy","tuiFadeIn","MODE_PROVIDER","typedFromEvent","merge","preventDefault","stopPropagation","switchMap","takeUntil","tuiZonefree","fromEvent","POLLING_TIME","Renderer2","TuiDestroyService","TUI_ELEMENT_REF","WINDOW","ViewportScroller","Input","Directive","NgModule","CommonModule","TuiLetModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-components-scroll-controls.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/scroll-controls/scroll-controls.component.ts","ng://@taiga-ui/core/components/scroll-controls/scrollbar.directive.ts","ng://@taiga-ui/core/components/scroll-controls/scrollbar-wrapper.directive.ts","ng://@taiga-ui/core/components/scroll-controls/scroll-controls.module.ts"],"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 (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\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 function __createBinding(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, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = 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\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\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 __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\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 (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = 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, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {AnimationOptions} from '@angular/animations';\nimport {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n NgZone,\n Optional,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {tuiFadeIn} from '@taiga-ui/core/animations';\nimport {MODE_PROVIDER} from '@taiga-ui/core/providers';\nimport {TUI_ANIMATION_OPTIONS, TUI_MODE, TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {distinctUntilChanged, map, startWith, throttleTime} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-scroll-controls',\n templateUrl: './scroll-controls.template.html',\n styleUrls: ['./scroll-controls.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiFadeIn],\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiScrollControlsComponent {\n readonly refresh$ = this.animationFrame$.pipe(\n throttleTime(300),\n map(() => this.scrollbars),\n startWith([false, false]),\n distinctUntilChanged((a, b) => a[0] === b[0] && a[1] === b[1]),\n tuiZoneOptimized(this.ngZone),\n );\n\n readonly animation = {\n value: '',\n ...this.options,\n } as const;\n\n constructor(\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Optional()\n @Inject(TUI_SCROLL_REF)\n private readonly scrollRef: ElementRef<HTMLElement> | null,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {}\n\n private get scrollbars(): [boolean, boolean] {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} = this.scrollRef\n ? this.scrollRef.nativeElement\n : this.documentRef.documentElement;\n\n return [\n Math.ceil((clientHeight / scrollHeight) * 100) < 100,\n Math.ceil((clientWidth / scrollWidth) * 100) < 100,\n ];\n }\n}\n","import {DOCUMENT, ViewportScroller} from '@angular/common';\nimport {\n Directive,\n ElementRef,\n Inject,\n Input,\n NgZone,\n Optional,\n Renderer2,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n POLLING_TIME,\n preventDefault,\n stopPropagation,\n TuiDestroyService,\n tuiZonefree,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TUI_ELEMENT_REF, TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {TuiOrientationT} from '@taiga-ui/core/types';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {map, switchMap, takeUntil, throttleTime} from 'rxjs/operators';\n\nconst MIN_WIDTH = 24;\n\n// @dynamic\n@Directive({\n selector: '[tuiScrollbar]',\n providers: [TuiDestroyService],\n})\nexport class TuiScrollbarDirective {\n @Input()\n tuiScrollbar: TuiOrientationT = 'vertical';\n\n constructor(\n @Inject(NgZone) ngZone: NgZone,\n @Inject(Renderer2) renderer: Renderer2,\n @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TUI_ELEMENT_REF) private readonly wrapper: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_SCROLL_REF)\n private readonly container: ElementRef<HTMLElement> | null,\n @Inject(DOCUMENT) private readonly documentRef: Document,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(ViewportScroller) private readonly viewportScroller: ViewportScroller,\n ) {\n const {nativeElement} = this.elementRef;\n const mousedown$ = typedFromEvent(nativeElement, 'mousedown');\n const mousemove$ = typedFromEvent(this.documentRef, 'mousemove');\n const mouseup$ = typedFromEvent(this.documentRef, 'mouseup');\n const mousedownWrapper$ = typedFromEvent(wrapper.nativeElement, 'mousedown');\n\n merge(\n mousedownWrapper$.pipe(\n preventDefault(),\n map(event => this.getScrolled(event, 0.5, 0.5)),\n ),\n mousedown$.pipe(\n preventDefault(),\n stopPropagation(),\n switchMap(event => {\n const rect = nativeElement.getBoundingClientRect();\n const vertical = getOffsetVertical(event, rect);\n const horizontal = getOffsetHorizontal(event, rect);\n\n return mousemove$.pipe(\n map(event => this.getScrolled(event, vertical, horizontal)),\n takeUntil(mouseup$),\n );\n }),\n ),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(([scrollTop, scrollLeft]) => {\n const [x, y] = this.viewportScroller.getScrollPosition();\n\n if (!this.container) {\n this.viewportScroller.scrollToPosition([\n this.tuiScrollbar === 'vertical' ? x : scrollLeft,\n this.tuiScrollbar === 'vertical' ? scrollTop : y,\n ]);\n\n return;\n }\n\n if (this.tuiScrollbar === 'vertical') {\n renderer.setProperty(\n this.container.nativeElement,\n 'scrollTop',\n scrollTop,\n );\n } else {\n renderer.setProperty(\n this.container.nativeElement,\n 'scrollLeft',\n scrollLeft,\n );\n }\n });\n\n merge(\n fromEvent(\n this.container ? this.container.nativeElement : this.windowRef,\n 'scroll',\n ),\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(() => {\n if (this.tuiScrollbar === 'vertical') {\n renderer.setStyle(nativeElement, 'top', `${this.thumb * 100}%`);\n renderer.setStyle(nativeElement, 'height', `${this.view * 100}%`);\n } else {\n renderer.setStyle(nativeElement, 'left', `${this.thumb * 100}%`);\n renderer.setStyle(nativeElement, 'width', `${this.view * 100}%`);\n }\n });\n }\n\n private get scrolled(): number {\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n scrollLeft,\n scrollWidth,\n clientWidth,\n } = this.computedContainer;\n\n return this.tuiScrollbar === 'vertical'\n ? scrollTop / (scrollHeight - clientHeight)\n : scrollLeft / (scrollWidth - clientWidth);\n }\n\n private get compensation(): number {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} =\n this.computedContainer;\n\n if (\n ((clientHeight * clientHeight) / scrollHeight > MIN_WIDTH &&\n this.tuiScrollbar === 'vertical') ||\n ((clientWidth * clientWidth) / scrollWidth > MIN_WIDTH &&\n this.tuiScrollbar === 'horizontal')\n ) {\n return 0;\n }\n\n return this.tuiScrollbar === 'vertical'\n ? MIN_WIDTH / clientHeight\n : MIN_WIDTH / clientWidth;\n }\n\n private get thumb(): number {\n const compensation = this.compensation || this.view;\n\n return this.scrolled * (1 - compensation);\n }\n\n private get view(): number {\n const {clientHeight, scrollHeight, clientWidth, scrollWidth} =\n this.computedContainer;\n\n return this.tuiScrollbar === 'vertical'\n ? Math.ceil((clientHeight / scrollHeight) * 100) / 100\n : Math.ceil((clientWidth / scrollWidth) * 100) / 100;\n }\n\n private get computedContainer(): Element {\n return this.container\n ? this.container.nativeElement\n : this.documentRef.scrollingElement!;\n }\n\n private getScrolled(\n {clientY, clientX}: MouseEvent,\n offsetVertical: number,\n offsetHorizontal: number,\n ): [number, number] {\n const {offsetHeight, offsetWidth} = this.elementRef.nativeElement;\n const {top, left, width, height} =\n this.wrapper.nativeElement.getBoundingClientRect();\n\n const maxTop = this.computedContainer.scrollHeight - height;\n const maxLeft = this.computedContainer.scrollWidth - width;\n const scrolledTop =\n (clientY - top - offsetHeight * offsetVertical) / (height - offsetHeight);\n const scrolledLeft =\n (clientX - left - offsetWidth * offsetHorizontal) / (width - offsetWidth);\n\n return [maxTop * scrolledTop, maxLeft * scrolledLeft];\n }\n}\n\nfunction getOffsetVertical({clientY}: MouseEvent, {top, height}: ClientRect): number {\n return (clientY - top) / height;\n}\n\nfunction getOffsetHorizontal({clientX}: MouseEvent, {left, width}: ClientRect): number {\n return (clientX - left) / width;\n}\n","import {Directive, ElementRef} from '@angular/core';\nimport {TUI_ELEMENT_REF} from '@taiga-ui/core/tokens';\n\n@Directive({\n selector: '[tuiScrollbarWrapper]',\n providers: [\n {\n provide: TUI_ELEMENT_REF,\n useExisting: ElementRef,\n },\n ],\n})\nexport class TuiScrollbarWrapperDirective {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\n\nimport {TuiScrollControlsComponent} from './scroll-controls.component';\nimport {TuiScrollbarDirective} from './scrollbar.directive';\nimport {TuiScrollbarWrapperDirective} from './scrollbar-wrapper.directive';\n\n@NgModule({\n imports: [CommonModule, TuiLetModule],\n declarations: [\n TuiScrollbarDirective,\n TuiScrollbarWrapperDirective,\n TuiScrollControlsComponent,\n ],\n exports: [TuiScrollControlsComponent],\n})\nexport class TuiScrollControlsModule {}\n"],"names":["throttleTime","map","startWith","distinctUntilChanged","tuiZoneOptimized","Inject","TUI_ANIMATION_OPTIONS","NgZone","DOCUMENT","ElementRef","Optional","TUI_SCROLL_REF","Observable","ANIMATION_FRAME","TUI_MODE","Component","ChangeDetectionStrategy","tuiFadeIn","MODE_PROVIDER","typedFromEvent","merge","preventDefault","stopPropagation","switchMap","takeUntil","tuiZonefree","fromEvent","POLLING_TIME","Renderer2","TuiDestroyService","TUI_ELEMENT_REF","WINDOW","ViewportScroller","Input","Directive","NgModule","CommonModule","TuiLetModule"],"mappings":"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"}
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */var u=function(){return(u=Object.assign||function(e){for(var t,r=1,i=arguments.length;r<i;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function p(e,t,r,i){var o,n=arguments.length,a=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,i);else for(var c=e.length-1;c>=0;c--)(o=e[c])&&(a=(n<3?o(a):n>3?o(t,r,a):o(t,r))||a);return n>3&&a&&Object.defineProperty(t,r,a),a}function h(e,t){return function(r,i){t(r,i,e)}}function m(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var i,o,n=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(i=n.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return a}var d=function(){function e(e,t,r,i,n,a){var c=this;this.options=e,this.ngZone=t,this.documentRef=r,this.scrollRef=i,this.animationFrame$=n,this.mode$=a,this.refresh$=this.animationFrame$.pipe(s.throttleTime(300),s.map((function(){return c.scrollbars})),s.startWith([!1,!1]),s.distinctUntilChanged((function(e,t){return e[0]===t[0]&&e[1]===t[1]})),o.tuiZoneOptimized(this.ngZone)),this.animation=u({value:""},this.options)}return Object.defineProperty(e.prototype,"scrollbars",{get:function(){var e=this.scrollRef?this.scrollRef.nativeElement:this.documentRef.documentElement,t=e.clientHeight,r=e.scrollHeight,i=e.clientWidth,o=e.scrollWidth;return[Math.ceil(t/r*100)<100,Math.ceil(i/o*100)<100]},enumerable:!0,configurable:!0}),e.ctorParameters=function(){return[{type:void 0,decorators:[{type:r.Inject,args:[c.TUI_ANIMATION_OPTIONS]}]},{type:r.NgZone,decorators:[{type:r.Inject,args:[r.NgZone]}]},{type:Document,decorators:[{type:r.Inject,args:[t.DOCUMENT]}]},{type:r.ElementRef,decorators:[{type:r.Optional},{type:r.Inject,args:[c.TUI_SCROLL_REF]}]},{type:l.Observable,decorators:[{type:r.Inject,args:[i.ANIMATION_FRAME]}]},{type:l.Observable,decorators:[{type:r.Inject,args:[c.TUI_MODE]}]}]},e=p([r.Component({selector:"tui-scroll-controls",template:'<ng-container *tuiLet="refresh$ | async as bars">\n <div\n *ngIf="bars[0]"\n tuiScrollbarWrapper\n class="bar bar_vertical"\n [@tuiFadeIn]="animation"\n [class.bar_has-horizontal]="bars[1]"\n >\n <div\n tuiScrollbar="vertical"\n class="thumb"\n ></div>\n </div>\n <div\n *ngIf="bars[1]"\n tuiScrollbarWrapper\n class="bar bar_horizontal"\n [@tuiFadeIn]="animation"\n [class.bar_has-vertical]="bars[0]"\n >\n <div\n tuiScrollbar="horizontal"\n class="thumb"\n ></div>\n </div>\n</ng-container>\n',changeDetection:r.ChangeDetectionStrategy.OnPush,animations:[n.tuiFadeIn],providers:[a.MODE_PROVIDER],host:{"($.data-mode.attr)":"mode$"},styles:[":host{position:-webkit-sticky;position:sticky;top:0;left:0;z-index:1;min-width:calc(100% - 1px);min-height:calc(100% - 1px);float:left;margin-right:calc(-100% + 1px);-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:calc(-100% + 1px);margin-inline-end:calc(-100% + 1px);pointer-events:none}.bar{position:absolute;right:0;bottom:0;pointer-events:auto}.bar_vertical{top:0;width:.875rem}.bar_horizontal{left:0;height:.875rem}.bar_has-horizontal{bottom:.5rem}.bar_has-vertical{right:.5rem}.thumb{transition-duration:.15s;transition-timing-function:ease-in-out;position:absolute;border-radius:6.25rem;border:.25rem solid transparent;cursor:pointer;pointer-events:auto;background:var(--tui-text-01);background-clip:content-box;box-sizing:border-box;transition-property:width,height;opacity:.2}.thumb:hover{opacity:.24}.thumb:active{opacity:.48}:host[data-mode=onDark] .thumb{background-color:var(--tui-text-01-night)}.bar_vertical .thumb{right:0;width:.75rem;min-height:1.25rem}.bar_vertical .thumb:active,.bar_vertical:hover .thumb{width:.875rem}.bar_horizontal .thumb{bottom:0;height:.75rem;min-width:1.25rem}.bar_horizontal .thumb:active,.bar_horizontal:hover .thumb{height:.875rem}"]}),h(0,r.Inject(c.TUI_ANIMATION_OPTIONS)),h(1,r.Inject(r.NgZone)),h(2,r.Inject(t.DOCUMENT)),h(3,r.Optional()),h(3,r.Inject(c.TUI_SCROLL_REF)),h(4,r.Inject(i.ANIMATION_FRAME)),h(5,r.Inject(c.TUI_MODE))],e)}(),g=function(){function e(e,t,r,i,n,a,c,u,p,h){var d=this;this.wrapper=n,this.container=a,this.documentRef=c,this.windowRef=u,this.elementRef=p,this.viewportScroller=h,this.tuiScrollbar="vertical";var g=this.elementRef.nativeElement,f=o.typedFromEvent(g,"mousedown"),b=o.typedFromEvent(this.documentRef,"mousemove"),v=o.typedFromEvent(this.documentRef,"mouseup"),y=o.typedFromEvent(n.nativeElement,"mousedown");l.merge(y.pipe(o.preventDefault(),s.map((function(e){return d.getScrolled(e,.5,.5)}))),f.pipe(o.preventDefault(),o.stopPropagation(),s.switchMap((function(e){var t,r,i,o,n=g.getBoundingClientRect(),a=(t=n,r=e.clientY,i=t.top,o=t.height,(r-i)/o),c=function(e,t){var r=e.clientX,i=t.left,o=t.width;return(r-i)/o}(e,n);return b.pipe(s.map((function(e){return d.getScrolled(e,a,c)})),s.takeUntil(v))})))).pipe(
|
|
15
|
+
***************************************************************************** */var u=function(){return(u=Object.assign||function(e){for(var t,r=1,i=arguments.length;r<i;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function p(e,t,r,i){var o,n=arguments.length,a=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,i);else for(var c=e.length-1;c>=0;c--)(o=e[c])&&(a=(n<3?o(a):n>3?o(t,r,a):o(t,r))||a);return n>3&&a&&Object.defineProperty(t,r,a),a}function h(e,t){return function(r,i){t(r,i,e)}}function m(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var i,o,n=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(i=n.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return a}var d=function(){function e(e,t,r,i,n,a){var c=this;this.options=e,this.ngZone=t,this.documentRef=r,this.scrollRef=i,this.animationFrame$=n,this.mode$=a,this.refresh$=this.animationFrame$.pipe(s.throttleTime(300),s.map((function(){return c.scrollbars})),s.startWith([!1,!1]),s.distinctUntilChanged((function(e,t){return e[0]===t[0]&&e[1]===t[1]})),o.tuiZoneOptimized(this.ngZone)),this.animation=u({value:""},this.options)}return Object.defineProperty(e.prototype,"scrollbars",{get:function(){var e=this.scrollRef?this.scrollRef.nativeElement:this.documentRef.documentElement,t=e.clientHeight,r=e.scrollHeight,i=e.clientWidth,o=e.scrollWidth;return[Math.ceil(t/r*100)<100,Math.ceil(i/o*100)<100]},enumerable:!0,configurable:!0}),e.ctorParameters=function(){return[{type:void 0,decorators:[{type:r.Inject,args:[c.TUI_ANIMATION_OPTIONS]}]},{type:r.NgZone,decorators:[{type:r.Inject,args:[r.NgZone]}]},{type:Document,decorators:[{type:r.Inject,args:[t.DOCUMENT]}]},{type:r.ElementRef,decorators:[{type:r.Optional},{type:r.Inject,args:[c.TUI_SCROLL_REF]}]},{type:l.Observable,decorators:[{type:r.Inject,args:[i.ANIMATION_FRAME]}]},{type:l.Observable,decorators:[{type:r.Inject,args:[c.TUI_MODE]}]}]},e=p([r.Component({selector:"tui-scroll-controls",template:'<ng-container *tuiLet="refresh$ | async as bars">\n <div\n *ngIf="bars[0]"\n tuiScrollbarWrapper\n class="bar bar_vertical"\n [@tuiFadeIn]="animation"\n [class.bar_has-horizontal]="bars[1]"\n >\n <div\n tuiScrollbar="vertical"\n class="thumb"\n ></div>\n </div>\n <div\n *ngIf="bars[1]"\n tuiScrollbarWrapper\n class="bar bar_horizontal"\n [@tuiFadeIn]="animation"\n [class.bar_has-vertical]="bars[0]"\n >\n <div\n tuiScrollbar="horizontal"\n class="thumb"\n ></div>\n </div>\n</ng-container>\n',changeDetection:r.ChangeDetectionStrategy.OnPush,animations:[n.tuiFadeIn],providers:[a.MODE_PROVIDER],host:{"($.data-mode.attr)":"mode$"},styles:[":host{position:-webkit-sticky;position:sticky;top:0;left:0;z-index:1;min-width:calc(100% - 1px);min-height:calc(100% - 1px);float:left;margin-right:calc(-100% + 1px);-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:calc(-100% + 1px);margin-inline-end:calc(-100% + 1px);pointer-events:none}.bar{position:absolute;right:0;bottom:0;pointer-events:auto}.bar_vertical{top:0;width:.875rem}.bar_horizontal{left:0;height:.875rem}.bar_has-horizontal{bottom:.5rem}.bar_has-vertical{right:.5rem}.thumb{transition-duration:.15s;transition-timing-function:ease-in-out;position:absolute;border-radius:6.25rem;border:.25rem solid transparent;cursor:pointer;pointer-events:auto;background:var(--tui-text-01);background-clip:content-box;box-sizing:border-box;transition-property:width,height;opacity:.2}.thumb:hover{opacity:.24}.thumb:active{opacity:.48}:host[data-mode=onDark] .thumb{background-color:var(--tui-text-01-night)}.bar_vertical .thumb{right:0;width:.75rem;min-height:1.25rem}.bar_vertical .thumb:active,.bar_vertical:hover .thumb{width:.875rem}.bar_horizontal .thumb{bottom:0;height:.75rem;min-width:1.25rem}.bar_horizontal .thumb:active,.bar_horizontal:hover .thumb{height:.875rem}"]}),h(0,r.Inject(c.TUI_ANIMATION_OPTIONS)),h(1,r.Inject(r.NgZone)),h(2,r.Inject(t.DOCUMENT)),h(3,r.Optional()),h(3,r.Inject(c.TUI_SCROLL_REF)),h(4,r.Inject(i.ANIMATION_FRAME)),h(5,r.Inject(c.TUI_MODE))],e)}(),g=function(){function e(e,t,r,i,n,a,c,u,p,h){var d=this;this.wrapper=n,this.container=a,this.documentRef=c,this.windowRef=u,this.elementRef=p,this.viewportScroller=h,this.tuiScrollbar="vertical";var g=this.elementRef.nativeElement,f=o.typedFromEvent(g,"mousedown"),b=o.typedFromEvent(this.documentRef,"mousemove"),v=o.typedFromEvent(this.documentRef,"mouseup"),y=o.typedFromEvent(n.nativeElement,"mousedown");l.merge(y.pipe(o.preventDefault(),s.map((function(e){return d.getScrolled(e,.5,.5)}))),f.pipe(o.preventDefault(),o.stopPropagation(),s.switchMap((function(e){var t,r,i,o,n=g.getBoundingClientRect(),a=(t=n,r=e.clientY,i=t.top,o=t.height,(r-i)/o),c=function(e,t){var r=e.clientX,i=t.left,o=t.width;return(r-i)/o}(e,n);return b.pipe(s.map((function(e){return d.getScrolled(e,a,c)})),s.takeUntil(v))})))).pipe(o.tuiZonefree(e),s.takeUntil(r)).subscribe((function(e){var r=m(e,2),i=r[0],o=r[1],n=m(d.viewportScroller.getScrollPosition(),2),a=n[0],c=n[1];d.container?"vertical"===d.tuiScrollbar?t.setProperty(d.container.nativeElement,"scrollTop",i):t.setProperty(d.container.nativeElement,"scrollLeft",o):d.viewportScroller.scrollToPosition(["vertical"===d.tuiScrollbar?a:o,"vertical"===d.tuiScrollbar?i:c])})),l.merge(l.fromEvent(this.container?this.container.nativeElement:this.windowRef,"scroll"),i.pipe(s.throttleTime(o.POLLING_TIME))).pipe(o.tuiZonefree(e),s.takeUntil(r)).subscribe((function(){"vertical"===d.tuiScrollbar?(t.setStyle(g,"top",100*d.thumb+"%"),t.setStyle(g,"height",100*d.view+"%")):(t.setStyle(g,"left",100*d.thumb+"%"),t.setStyle(g,"width",100*d.view+"%"))}))}return Object.defineProperty(e.prototype,"scrolled",{get:function(){var e=this.computedContainer,t=e.scrollTop,r=e.scrollHeight,i=e.clientHeight,o=e.scrollLeft,n=e.scrollWidth,a=e.clientWidth;return"vertical"===this.tuiScrollbar?t/(r-i):o/(n-a)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"compensation",{get:function(){var e=this.computedContainer,t=e.clientHeight,r=e.scrollHeight,i=e.clientWidth,o=e.scrollWidth;return t*t/r>24&&"vertical"===this.tuiScrollbar||i*i/o>24&&"horizontal"===this.tuiScrollbar?0:"vertical"===this.tuiScrollbar?24/t:24/i},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"thumb",{get:function(){var e=this.compensation||this.view;return this.scrolled*(1-e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"view",{get:function(){var e=this.computedContainer,t=e.clientHeight,r=e.scrollHeight,i=e.clientWidth,o=e.scrollWidth;return"vertical"===this.tuiScrollbar?Math.ceil(t/r*100)/100:Math.ceil(i/o*100)/100},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"computedContainer",{get:function(){return this.container?this.container.nativeElement:this.documentRef.scrollingElement},enumerable:!0,configurable:!0}),e.prototype.getScrolled=function(e,t,r){var i=e.clientY,o=e.clientX,n=this.elementRef.nativeElement,a=n.offsetHeight,c=n.offsetWidth,l=this.wrapper.nativeElement.getBoundingClientRect(),s=l.top,u=l.left,p=l.width,h=l.height;return[(this.computedContainer.scrollHeight-h)*((i-s-a*t)/(h-a)),(this.computedContainer.scrollWidth-p)*((o-u-c*r)/(p-c))]},e.ctorParameters=function(){return[{type:r.NgZone,decorators:[{type:r.Inject,args:[r.NgZone]}]},{type:r.Renderer2,decorators:[{type:r.Inject,args:[r.Renderer2]}]},{type:l.Observable,decorators:[{type:r.Inject,args:[o.TuiDestroyService]}]},{type:l.Observable,decorators:[{type:r.Inject,args:[i.ANIMATION_FRAME]}]},{type:r.ElementRef,decorators:[{type:r.Inject,args:[c.TUI_ELEMENT_REF]}]},{type:r.ElementRef,decorators:[{type:r.Optional},{type:r.Inject,args:[c.TUI_SCROLL_REF]}]},{type:Document,decorators:[{type:r.Inject,args:[t.DOCUMENT]}]},{type:Window,decorators:[{type:r.Inject,args:[i.WINDOW]}]},{type:r.ElementRef,decorators:[{type:r.Inject,args:[r.ElementRef]}]},{type:t.ViewportScroller,decorators:[{type:r.Inject,args:[t.ViewportScroller]}]}]},p([r.Input()],e.prototype,"tuiScrollbar",void 0),e=p([r.Directive({selector:"[tuiScrollbar]",providers:[o.TuiDestroyService]}),h(0,r.Inject(r.NgZone)),h(1,r.Inject(r.Renderer2)),h(2,r.Inject(o.TuiDestroyService)),h(3,r.Inject(i.ANIMATION_FRAME)),h(4,r.Inject(c.TUI_ELEMENT_REF)),h(5,r.Optional()),h(5,r.Inject(c.TUI_SCROLL_REF)),h(6,r.Inject(t.DOCUMENT)),h(7,r.Inject(i.WINDOW)),h(8,r.Inject(r.ElementRef)),h(9,r.Inject(t.ViewportScroller))],e)}();var f=function(){function e(){}return e=p([r.Directive({selector:"[tuiScrollbarWrapper]",providers:[{provide:c.TUI_ELEMENT_REF,useExisting:r.ElementRef}]})],e)}(),b=function(){function e(){}return e=p([r.NgModule({imports:[t.CommonModule,o.TuiLetModule],declarations:[g,f,d],exports:[d]})],e)}();e.TuiScrollControlsComponent=d,e.TuiScrollControlsModule=b,e.TuiScrollbarDirective=g,e.ɵa=f,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
16
16
|
//# sourceMappingURL=taiga-ui-core-components-scroll-controls.umd.min.js.map
|