@ngneat/helipopper
Advanced tools
Comparing version 3.1.0 to 3.1.1
@@ -458,2 +458,4 @@ (function (global, factory) { | ||
instance.popper.style.width = _this.hostWidth; | ||
instance.popper.style.maxWidth = _this.hostWidth; | ||
instance.popper.firstElementChild.style.maxWidth = _this.hostWidth; | ||
} | ||
@@ -460,0 +462,0 @@ (_b = (_a = _this.globalConfig).onShow) === null || _b === void 0 ? void 0 : _b.call(_a, instance); |
@@ -1,2 +0,2 @@ | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("tippy.js"),require("rxjs"),require("rxjs/operators"),require("@ngneat/overview"),require("@angular/common")):"function"==typeof define&&define.amd?define("@ngneat/helipopper",["exports","@angular/core","tippy.js","rxjs","rxjs/operators","@ngneat/overview","@angular/common"],e):e(((t=t||self).ngneat=t.ngneat||{},t.ngneat.helipopper={}),t.ng.core,t.tippy,t.rxjs,t.rxjs.operators,t.ngneatOverview,t.ng.common)}(this,(function(t,e,n,i,o,r,s){"use strict";n=n&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n;var a=function(){return(a=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};function p(t,e,n,i){var o,r=arguments.length,s=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;a>=0;a--)(o=t[a])&&(s=(r<3?o(s):r>3?o(e,n,s):o(e,n))||s);return r>3&&s&&Object.defineProperty(e,n,s),s}function c(t,e){return function(n,i){e(n,i,t)}}var l=new e.InjectionToken("Tippy config",{providedIn:"root",factory:function(){return{}}}),u=new e.InjectionToken("TIPPY_REF");function d(t){return t instanceof e.ElementRef?t.nativeElement:t}var v=!1,h=!1;function f(t,e){void 0===e&&(e={root:null,threshold:.3});var n=d(t);return new i.Observable((function(t){if(!v)return t.next(),void t.complete();var i=new IntersectionObserver((function(e){e[e.length-1].isIntersecting&&(t.next(),t.complete())}),e);return i.observe(n),function(){return i.disconnect()}}))}function y(t){var e=d(t);return g(e).pipe(o.auditTime(150),o.map((function(){return function(t){var e=t.parentElement,n=t.offsetWidth>e.offsetWidth,i=t.offsetWidth<t.scrollWidth;return n||i}(e)})))}function g(t){return function(t){return new i.Observable((function(e){if(!h)return e.next(),void e.complete();var n=new ResizeObserver((function(){return e.next(!0)}));return n.observe(t),function(){return n.disconnect()}}))}(t)}function w(t){var e={},n=["variations","useHostWidth","defaultVariation","beforeRender","lazy","variation","isEnabled","className","onlyTextOverflow","data","content"];return Object.keys(t).forEach((function(i){n.includes(i)||(e[i]=t[i])})),e}"undefined"!=typeof window&&(v="IntersectionObserver"in window,h="ResizeObserver"in window);var b=function(){function t(t,n,o,r,s,a,p){this.platformId=t,this.globalConfig=n,this.injector=o,this.viewService=r,this.vcr=s,this.zone=a,this.host=p,this.onlyTextOverflow=!1,this.useHostWidth=!1,this.visible=new e.EventEmitter,this.isVisible=!1,this.destroyed=new i.Subject,this.enabled=!0,this.variationDefined=!1}return t.prototype.ngOnChanges=function(t){if(!s.isPlatformServer(this.platformId)){t.content&&(this.view=t.content.currentValue);var e,n=Object.keys(t).reduce((function(e,n){return e[n]=t[n].currentValue,e}),{});I("variation",t)?(e=t.variation.currentValue,this.variationDefined=!0):this.variationDefined||(e=this.globalConfig.defaultVariation,this.variationDefined=!0),e&&(n=a(a({},this.globalConfig.variations[e]),n)),I("isEnabled",t)&&(this.enabled=t.isEnabled.currentValue,this.setStatus()),this.setProps(n)}},t.prototype.ngOnInit=function(){this.useHostWidth&&(this.props.maxWidth=this.hostWidth)},t.prototype.ngAfterViewInit=function(){var t=this;this.lazy?this.onlyTextOverflow?f(this.host).pipe(o.switchMap((function(){return y(t.host)})),o.takeUntil(this.destroyed)).subscribe((function(e){t.checkOverflow(e)})):f(this.host).pipe(o.takeUntil(this.destroyed)).subscribe((function(){t.createInstance()})):this.onlyTextOverflow?y(this.host).pipe(o.takeUntil(this.destroyed)).subscribe((function(e){t.checkOverflow(e)})):this.createInstance()},t.prototype.ngOnDestroy=function(){var t;this.destroyed.next(),null===(t=this.instance)||void 0===t||t.destroy(),this.destroyView()},t.prototype.destroyView=function(){var t;null===(t=this.viewRef)||void 0===t||t.destroy(),this.viewRef=null},t.prototype.show=function(){var t;null===(t=this.instance)||void 0===t||t.show()},t.prototype.hide=function(){var t;null===(t=this.instance)||void 0===t||t.hide()},t.prototype.enable=function(){var t;null===(t=this.instance)||void 0===t||t.enable()},t.prototype.disable=function(){var t;null===(t=this.instance)||void 0===t||t.disable()},t.prototype.setProps=function(t){var e;this.props=t,null===(e=this.instance)||void 0===e||e.setProps(w(t))},t.prototype.setStatus=function(){var t,e;this.enabled?null===(t=this.instance)||void 0===t||t.enable():null===(e=this.instance)||void 0===e||e.disable()},Object.defineProperty(t.prototype,"hostWidth",{get:function(){return this.host.nativeElement.getBoundingClientRect().width+"px"},enumerable:!0,configurable:!0}),t.prototype.createInstance=function(){var t=this;this.instance=n(this.host.nativeElement,a(a(a({allowHTML:!0,appendTo:document.body},w(this.globalConfig)),w(this.props)),{onMount:function(e){var n,i;t.isVisible=!0,t.visible.next(!0),t.useHostWidth&&t.listenToHostResize(),null===(i=(n=t.globalConfig).onMount)||void 0===i||i.call(n,e)},onCreate:function(e){var n,i;t.className&&e.popper.classList.add(t.className),null===(i=(n=t.globalConfig).onCreate)||void 0===i||i.call(n,e)},onShow:function(e){var n,i;t.zone.run((function(){return t.instance.setContent(t.resolveContent())})),t.useHostWidth&&(e.popper.style.width=t.hostWidth),null===(i=(n=t.globalConfig).onShow)||void 0===i||i.call(n,e)},onHidden:function(e){var n,i;t.destroyView(),t.isVisible=!1,t.visible.next(!1),null===(i=(n=t.globalConfig).onHidden)||void 0===i||i.call(n,e)}})),this.setStatus(),this.setProps(this.props),"contextMenu"===this.variation&&this.handleContextMenu()},t.prototype.resolveContent=function(){this.viewOptions$||r.isString(this.content)||(r.isComponent(this.content)?this.viewOptions$={injector:e.Injector.create({providers:[{provide:u,useValue:this.instance}],parent:this.injector})}:r.isTemplateRef(this.content)&&(this.viewOptions$={context:{$implicit:this.hide.bind(this),data:this.data}})),this.viewRef=this.viewService.createView(this.content,a({vcr:this.vcr},this.viewOptions$));var t=this.viewRef.getElement();return r.isString(t)&&this.globalConfig.beforeRender&&(t=this.globalConfig.beforeRender(t)),t},t.prototype.handleContextMenu=function(){var t=this;i.fromEvent(this.host.nativeElement,"contextmenu").pipe(o.takeUntil(this.destroyed)).subscribe((function(e){e.preventDefault(),t.instance.setProps({getReferenceClientRect:function(){return{width:0,height:0,top:e.clientY,bottom:e.clientY,left:e.clientX,right:e.clientX}}}),t.instance.show()}))},t.prototype.checkOverflow=function(t){var e;t?this.instance?this.instance.enable():this.createInstance():null===(e=this.instance)||void 0===e||e.disable()},t.prototype.listenToHostResize=function(){var t=this;g(this.host.nativeElement).pipe(o.takeUntil(i.merge(this.destroyed,this.visible))).subscribe((function(){t.instance.popper.style.width=t.hostWidth}))},t.ctorParameters=function(){return[{type:String,decorators:[{type:e.Inject,args:[e.PLATFORM_ID]}]},{type:void 0,decorators:[{type:e.Inject,args:[l]}]},{type:e.Injector},{type:r.ViewService},{type:e.ViewContainerRef},{type:e.NgZone},{type:e.ElementRef}]},p([e.Input()],t.prototype,"appendTo",void 0),p([e.Input()],t.prototype,"delay",void 0),p([e.Input()],t.prototype,"duration",void 0),p([e.Input()],t.prototype,"hideOnClick",void 0),p([e.Input()],t.prototype,"interactive",void 0),p([e.Input()],t.prototype,"interactiveBorder",void 0),p([e.Input()],t.prototype,"maxWidth",void 0),p([e.Input()],t.prototype,"offset",void 0),p([e.Input()],t.prototype,"placement",void 0),p([e.Input()],t.prototype,"popperOptions",void 0),p([e.Input()],t.prototype,"showOnCreate",void 0),p([e.Input()],t.prototype,"trigger",void 0),p([e.Input()],t.prototype,"triggerTarget",void 0),p([e.Input()],t.prototype,"zIndex",void 0),p([e.Input()],t.prototype,"lazy",void 0),p([e.Input()],t.prototype,"variation",void 0),p([e.Input()],t.prototype,"isEnabled",void 0),p([e.Input()],t.prototype,"className",void 0),p([e.Input()],t.prototype,"onlyTextOverflow",void 0),p([e.Input()],t.prototype,"data",void 0),p([e.Input()],t.prototype,"useHostWidth",void 0),p([e.Input("tippy")],t.prototype,"content",void 0),p([e.Output()],t.prototype,"visible",void 0),t=p([e.Directive({selector:"[tippy]",exportAs:"tippy"}),c(0,e.Inject(e.PLATFORM_ID)),c(1,e.Inject(l))],t)}();function I(t,e){return t in e}var m=function(){function t(){}var n;return n=t,t.forRoot=function(t){return void 0===t&&(t={}),{ngModule:n,providers:[{provide:l,useValue:t}]}},t=n=p([e.NgModule({declarations:[b],exports:[b]})],t)}();var O=function(){function t(t,e,n){this.globalConfig=t,this.view=e,this.injector=n}return t.prototype.create=function(t,i,o){var s=this;void 0===o&&(o={});var p=a(a(a({onShow:function(t){var n;t.$viewOptions||(t.$viewOptions={},r.isTemplateRef(i)?t.$viewOptions.context={$implicit:t.hide.bind(t)}:r.isComponent(i)&&(t.$viewOptions.injector=e.Injector.create({providers:[{provide:u,useValue:t}],parent:o.injector||s.injector}))),t.view=s.view.createView(i,a(a({},o),t.$viewOptions)),t.setContent(t.view.getElement()),null===(n=null==o?void 0:o.onShow)||void 0===n||n.call(o,t)},onHidden:function(t){var e;t.view.destroy(),null===(e=null==o?void 0:o.onHidden)||void 0===e||e.call(o,t),t.view=null}},w(this.globalConfig)),this.globalConfig.variations[o.variation||this.globalConfig.defaultVariation]),w(o));return n(t,p)},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[l]}]},{type:r.ViewService},{type:e.Injector}]},t.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(l),e.ɵɵinject(r.ViewService),e.ɵɵinject(e.INJECTOR))},token:t,providedIn:"root"}),t=p([e.Injectable({providedIn:"root"}),c(0,e.Inject(l))],t)}();t.TIPPY_CONFIG=l,t.TIPPY_REF=u,t.TippyDirective=b,t.TippyModule=m,t.TippyService=O,t.inView=f,t.overflowChanges=y,t.popperVariation={theme:"light",arrow:!0,offset:[0,10],animation:null,trigger:"click",interactive:!0},t.tooltipVariation={theme:null,arrow:!1,animation:"scale",trigger:"mouseenter",offset:[0,5]},t.withContextMenuVariation=function(t){return a(a({},t),{placement:"right-start",trigger:"manual",arrow:!1,offset:[0,0]})},Object.defineProperty(t,"__esModule",{value:!0})})); | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("tippy.js"),require("rxjs"),require("rxjs/operators"),require("@ngneat/overview"),require("@angular/common")):"function"==typeof define&&define.amd?define("@ngneat/helipopper",["exports","@angular/core","tippy.js","rxjs","rxjs/operators","@ngneat/overview","@angular/common"],e):e(((t=t||self).ngneat=t.ngneat||{},t.ngneat.helipopper={}),t.ng.core,t.tippy,t.rxjs,t.rxjs.operators,t.ngneatOverview,t.ng.common)}(this,(function(t,e,n,i,o,r,s){"use strict";n=n&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n;var a=function(){return(a=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};function p(t,e,n,i){var o,r=arguments.length,s=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;a>=0;a--)(o=t[a])&&(s=(r<3?o(s):r>3?o(e,n,s):o(e,n))||s);return r>3&&s&&Object.defineProperty(e,n,s),s}function c(t,e){return function(n,i){e(n,i,t)}}var l=new e.InjectionToken("Tippy config",{providedIn:"root",factory:function(){return{}}}),u=new e.InjectionToken("TIPPY_REF");function d(t){return t instanceof e.ElementRef?t.nativeElement:t}var v=!1,h=!1;function f(t,e){void 0===e&&(e={root:null,threshold:.3});var n=d(t);return new i.Observable((function(t){if(!v)return t.next(),void t.complete();var i=new IntersectionObserver((function(e){e[e.length-1].isIntersecting&&(t.next(),t.complete())}),e);return i.observe(n),function(){return i.disconnect()}}))}function y(t){var e=d(t);return g(e).pipe(o.auditTime(150),o.map((function(){return function(t){var e=t.parentElement,n=t.offsetWidth>e.offsetWidth,i=t.offsetWidth<t.scrollWidth;return n||i}(e)})))}function g(t){return function(t){return new i.Observable((function(e){if(!h)return e.next(),void e.complete();var n=new ResizeObserver((function(){return e.next(!0)}));return n.observe(t),function(){return n.disconnect()}}))}(t)}function w(t){var e={},n=["variations","useHostWidth","defaultVariation","beforeRender","lazy","variation","isEnabled","className","onlyTextOverflow","data","content"];return Object.keys(t).forEach((function(i){n.includes(i)||(e[i]=t[i])})),e}"undefined"!=typeof window&&(v="IntersectionObserver"in window,h="ResizeObserver"in window);var b=function(){function t(t,n,o,r,s,a,p){this.platformId=t,this.globalConfig=n,this.injector=o,this.viewService=r,this.vcr=s,this.zone=a,this.host=p,this.onlyTextOverflow=!1,this.useHostWidth=!1,this.visible=new e.EventEmitter,this.isVisible=!1,this.destroyed=new i.Subject,this.enabled=!0,this.variationDefined=!1}return t.prototype.ngOnChanges=function(t){if(!s.isPlatformServer(this.platformId)){t.content&&(this.view=t.content.currentValue);var e,n=Object.keys(t).reduce((function(e,n){return e[n]=t[n].currentValue,e}),{});m("variation",t)?(e=t.variation.currentValue,this.variationDefined=!0):this.variationDefined||(e=this.globalConfig.defaultVariation,this.variationDefined=!0),e&&(n=a(a({},this.globalConfig.variations[e]),n)),m("isEnabled",t)&&(this.enabled=t.isEnabled.currentValue,this.setStatus()),this.setProps(n)}},t.prototype.ngOnInit=function(){this.useHostWidth&&(this.props.maxWidth=this.hostWidth)},t.prototype.ngAfterViewInit=function(){var t=this;this.lazy?this.onlyTextOverflow?f(this.host).pipe(o.switchMap((function(){return y(t.host)})),o.takeUntil(this.destroyed)).subscribe((function(e){t.checkOverflow(e)})):f(this.host).pipe(o.takeUntil(this.destroyed)).subscribe((function(){t.createInstance()})):this.onlyTextOverflow?y(this.host).pipe(o.takeUntil(this.destroyed)).subscribe((function(e){t.checkOverflow(e)})):this.createInstance()},t.prototype.ngOnDestroy=function(){var t;this.destroyed.next(),null===(t=this.instance)||void 0===t||t.destroy(),this.destroyView()},t.prototype.destroyView=function(){var t;null===(t=this.viewRef)||void 0===t||t.destroy(),this.viewRef=null},t.prototype.show=function(){var t;null===(t=this.instance)||void 0===t||t.show()},t.prototype.hide=function(){var t;null===(t=this.instance)||void 0===t||t.hide()},t.prototype.enable=function(){var t;null===(t=this.instance)||void 0===t||t.enable()},t.prototype.disable=function(){var t;null===(t=this.instance)||void 0===t||t.disable()},t.prototype.setProps=function(t){var e;this.props=t,null===(e=this.instance)||void 0===e||e.setProps(w(t))},t.prototype.setStatus=function(){var t,e;this.enabled?null===(t=this.instance)||void 0===t||t.enable():null===(e=this.instance)||void 0===e||e.disable()},Object.defineProperty(t.prototype,"hostWidth",{get:function(){return this.host.nativeElement.getBoundingClientRect().width+"px"},enumerable:!0,configurable:!0}),t.prototype.createInstance=function(){var t=this;this.instance=n(this.host.nativeElement,a(a(a({allowHTML:!0,appendTo:document.body},w(this.globalConfig)),w(this.props)),{onMount:function(e){var n,i;t.isVisible=!0,t.visible.next(!0),t.useHostWidth&&t.listenToHostResize(),null===(i=(n=t.globalConfig).onMount)||void 0===i||i.call(n,e)},onCreate:function(e){var n,i;t.className&&e.popper.classList.add(t.className),null===(i=(n=t.globalConfig).onCreate)||void 0===i||i.call(n,e)},onShow:function(e){var n,i;t.zone.run((function(){return t.instance.setContent(t.resolveContent())})),t.useHostWidth&&(e.popper.style.width=t.hostWidth,e.popper.style.maxWidth=t.hostWidth,e.popper.firstElementChild.style.maxWidth=t.hostWidth),null===(i=(n=t.globalConfig).onShow)||void 0===i||i.call(n,e)},onHidden:function(e){var n,i;t.destroyView(),t.isVisible=!1,t.visible.next(!1),null===(i=(n=t.globalConfig).onHidden)||void 0===i||i.call(n,e)}})),this.setStatus(),this.setProps(this.props),"contextMenu"===this.variation&&this.handleContextMenu()},t.prototype.resolveContent=function(){this.viewOptions$||r.isString(this.content)||(r.isComponent(this.content)?this.viewOptions$={injector:e.Injector.create({providers:[{provide:u,useValue:this.instance}],parent:this.injector})}:r.isTemplateRef(this.content)&&(this.viewOptions$={context:{$implicit:this.hide.bind(this),data:this.data}})),this.viewRef=this.viewService.createView(this.content,a({vcr:this.vcr},this.viewOptions$));var t=this.viewRef.getElement();return r.isString(t)&&this.globalConfig.beforeRender&&(t=this.globalConfig.beforeRender(t)),t},t.prototype.handleContextMenu=function(){var t=this;i.fromEvent(this.host.nativeElement,"contextmenu").pipe(o.takeUntil(this.destroyed)).subscribe((function(e){e.preventDefault(),t.instance.setProps({getReferenceClientRect:function(){return{width:0,height:0,top:e.clientY,bottom:e.clientY,left:e.clientX,right:e.clientX}}}),t.instance.show()}))},t.prototype.checkOverflow=function(t){var e;t?this.instance?this.instance.enable():this.createInstance():null===(e=this.instance)||void 0===e||e.disable()},t.prototype.listenToHostResize=function(){var t=this;g(this.host.nativeElement).pipe(o.takeUntil(i.merge(this.destroyed,this.visible))).subscribe((function(){t.instance.popper.style.width=t.hostWidth}))},t.ctorParameters=function(){return[{type:String,decorators:[{type:e.Inject,args:[e.PLATFORM_ID]}]},{type:void 0,decorators:[{type:e.Inject,args:[l]}]},{type:e.Injector},{type:r.ViewService},{type:e.ViewContainerRef},{type:e.NgZone},{type:e.ElementRef}]},p([e.Input()],t.prototype,"appendTo",void 0),p([e.Input()],t.prototype,"delay",void 0),p([e.Input()],t.prototype,"duration",void 0),p([e.Input()],t.prototype,"hideOnClick",void 0),p([e.Input()],t.prototype,"interactive",void 0),p([e.Input()],t.prototype,"interactiveBorder",void 0),p([e.Input()],t.prototype,"maxWidth",void 0),p([e.Input()],t.prototype,"offset",void 0),p([e.Input()],t.prototype,"placement",void 0),p([e.Input()],t.prototype,"popperOptions",void 0),p([e.Input()],t.prototype,"showOnCreate",void 0),p([e.Input()],t.prototype,"trigger",void 0),p([e.Input()],t.prototype,"triggerTarget",void 0),p([e.Input()],t.prototype,"zIndex",void 0),p([e.Input()],t.prototype,"lazy",void 0),p([e.Input()],t.prototype,"variation",void 0),p([e.Input()],t.prototype,"isEnabled",void 0),p([e.Input()],t.prototype,"className",void 0),p([e.Input()],t.prototype,"onlyTextOverflow",void 0),p([e.Input()],t.prototype,"data",void 0),p([e.Input()],t.prototype,"useHostWidth",void 0),p([e.Input("tippy")],t.prototype,"content",void 0),p([e.Output()],t.prototype,"visible",void 0),t=p([e.Directive({selector:"[tippy]",exportAs:"tippy"}),c(0,e.Inject(e.PLATFORM_ID)),c(1,e.Inject(l))],t)}();function m(t,e){return t in e}var I=function(){function t(){}var n;return n=t,t.forRoot=function(t){return void 0===t&&(t={}),{ngModule:n,providers:[{provide:l,useValue:t}]}},t=n=p([e.NgModule({declarations:[b],exports:[b]})],t)}();var O=function(){function t(t,e,n){this.globalConfig=t,this.view=e,this.injector=n}return t.prototype.create=function(t,i,o){var s=this;void 0===o&&(o={});var p=a(a(a({onShow:function(t){var n;t.$viewOptions||(t.$viewOptions={},r.isTemplateRef(i)?t.$viewOptions.context={$implicit:t.hide.bind(t)}:r.isComponent(i)&&(t.$viewOptions.injector=e.Injector.create({providers:[{provide:u,useValue:t}],parent:o.injector||s.injector}))),t.view=s.view.createView(i,a(a({},o),t.$viewOptions)),t.setContent(t.view.getElement()),null===(n=null==o?void 0:o.onShow)||void 0===n||n.call(o,t)},onHidden:function(t){var e;t.view.destroy(),null===(e=null==o?void 0:o.onHidden)||void 0===e||e.call(o,t),t.view=null}},w(this.globalConfig)),this.globalConfig.variations[o.variation||this.globalConfig.defaultVariation]),w(o));return n(t,p)},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[l]}]},{type:r.ViewService},{type:e.Injector}]},t.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(l),e.ɵɵinject(r.ViewService),e.ɵɵinject(e.INJECTOR))},token:t,providedIn:"root"}),t=p([e.Injectable({providedIn:"root"}),c(0,e.Inject(l))],t)}();t.TIPPY_CONFIG=l,t.TIPPY_REF=u,t.TippyDirective=b,t.TippyModule=I,t.TippyService=O,t.inView=f,t.overflowChanges=y,t.popperVariation={theme:"light",arrow:!0,offset:[0,10],animation:null,trigger:"click",interactive:!0},t.tooltipVariation={theme:null,arrow:!1,animation:"scale",trigger:"mouseenter",offset:[0,5]},t.withContextMenuVariation=function(t){return a(a({},t),{placement:"right-start",trigger:"manual",arrow:!1,offset:[0,0]})},Object.defineProperty(t,"__esModule",{value:!0})})); | ||
//# sourceMappingURL=ngneat-helipopper.umd.min.js.map |
@@ -143,2 +143,4 @@ import { __decorate, __param } from "tslib"; | ||
instance.popper.style.width = this.hostWidth; | ||
instance.popper.style.maxWidth = this.hostWidth; | ||
instance.popper.firstElementChild.style.maxWidth = this.hostWidth; | ||
} | ||
@@ -313,2 +315,2 @@ (_b = (_a = this.globalConfig).onShow) === null || _b === void 0 ? void 0 : _b.call(_a, instance); | ||
} | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwcHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5nbmVhdC9oZWxpcG9wcGVyLyIsInNvdXJjZXMiOlsibGliL3RpcHB5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixRQUFRLEVBQ1IsS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sV0FBVyxFQUNYLGdCQUFnQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQUssTUFBTSxVQUFVLENBQUM7QUFDN0IsT0FBTyxFQUFhLFlBQVksRUFBRSxTQUFTLEVBQTBDLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyRixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHckYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFNbkQsSUFBYSxjQUFjLEdBQTNCLE1BQWEsY0FBYztJQXFDekIsWUFDK0IsVUFBa0IsRUFDakIsWUFBeUIsRUFDL0MsUUFBa0IsRUFDbEIsV0FBd0IsRUFDeEIsR0FBcUIsRUFDckIsSUFBWSxFQUNaLElBQWdCO1FBTkssZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUNqQixpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUMvQyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFFBQUcs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R0F2Q1osY0FBYyxDQThRMUI7U0E5UVksY0FBYztBQWdSM0IsU0FBUyxTQUFTLENBQUksR0FBWSxFQUFFLE9BQVU7SUFDNUMsT0FBTyxHQUFHLElBQUksT0FBTyxDQUFDO0FBQ3hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0LFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT3V0cHV0LFxuICBQTEFURk9STV9JRCxcbiAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgdGlwcHkgZnJvbSBcInRpcHB5LmpzXCI7XG5pbXBvcnQgeyBOZ0NoYW5nZXMsIFRJUFBZX0NPTkZJRywgVElQUFlfUkVGLCBUaXBweUNvbmZpZywgVGlwcHlJbnN0YW5jZSwgVGlwcHlQcm9wcyB9IGZyb20gXCIuL3RpcHB5LnR5cGVzXCI7XG5pbXBvcnQgeyBkaW1lbnNpb25zQ2hhbmdlcywgaW5WaWV3LCBvbmx5VGlwcHlQcm9wcywgb3ZlcmZsb3dDaGFuZ2VzIH0gZnJvbSBcIi4vdXRpbHNcIjtcbmltcG9ydCB7IGZyb21FdmVudCwgbWVyZ2UsIFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IGlzQ29tcG9uZW50LCBpc1N0cmluZywgaXNUZW1wbGF0ZVJlZiwgVmlld1NlcnZpY2UgfSBmcm9tIFwiQG5nbmVhdC9vdmVydmlld1wiO1xuaW1wb3J0IHsgVmlld09wdGlvbnMsIFZpZXdSZWYgfSBmcm9tIFwiQG5nbmVhdC9vdmVydmlld1wiO1xuaW1wb3J0IHsgQ29udGVudCB9IGZyb20gXCJAbmduZWF0L292ZXJ2aWV3XCI7XG5pbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW3RpcHB5XVwiLFxuICBleHBvcnRBczogXCJ0aXBweVwiXG59KVxuZXhwb3J0IGNsYXNzIFRpcHB5RGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGFwcGVuZFRvOiBUaXBweVByb3BzW1wiYXBwZW5kVG9cIl07XG4gIEBJbnB1dCgpIGRlbGF5OiBUaXBweVByb3BzW1wiZGVsYXlcIl07XG4gIEBJbnB1dCgpIGR1cmF0aW9uOiBUaXBweVByb3BzW1wiZHVyYXRpb25cIl07XG4gIEBJbnB1dCgpIGhpZGVPbkNsaWNrOiBUaXBweVByb3BzW1wiaGlkZU9uQ2xpY2tcIl07XG4gIEBJbnB1dCgpIGludGVyYWN0aXZlOiBUaXBweVByb3BzW1wiaW50ZXJhY3RpdmVcIl07XG4gIEBJbnB1dCgpIGludGVyYWN0aXZlQm9yZGVyOiBUaXBweVByb3BzW1wiaW50ZXJhY3RpdmVCb3JkZXJcIl07XG4gIEBJbnB1dCgpIG1heFdpZHRoOiBUaXBweVByb3BzW1wibWF4V2lkdGhcIl07XG4gIEBJbnB1dCgpIG9mZnNldDogVGlwcHlQcm9wc1tcIm9mZnNldFwiXTtcbiAgQElucHV0KCkgcGxhY2VtZW50OiBUaXBweVByb3BzW1wicGxhY2VtZW50XCJdO1xuICBASW5wdXQoKSBwb3BwZXJPcHRpb25zOiBUaXBweVByb3BzW1wicG9wcGVyT3B0aW9uc1wiXTtcbiAgQElucHV0KCkgc2hvd09uQ3JlYXRlOiBUaXBweVByb3BzW1wic2hvd09uQ3JlYXRlXCJdO1xuICBASW5wdXQoKSB0cmlnZ2VyOiBUaXBweVByb3BzW1widHJpZ2dlclwiXTtcbiAgQElucHV0KCkgdHJpZ2dlclRhcmdldDogVGlwcHlQcm9wc1tcInRyaWdnZXJUYXJnZXRcIl07XG4gIEBJbnB1dCgpIHpJbmRleDogVGlwcHlQcm9wc1tcInpJbmRleFwiXTtcblxuICBASW5wdXQoKSBsYXp5OiBib29sZWFuO1xuICBASW5wdXQoKSB2YXJpYXRpb246IHN0cmluZztcbiAgQElucHV0KCkgaXNFbmFibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBjbGFzc05hbWU6IHN0cmluZztcbiAgQElucHV0KCkgb25seVRleHRPdmVyZmxvdyA9IGZhbHNlO1xuICBASW5wdXQoKSBkYXRhOiBhbnk7XG4gIEBJbnB1dCgpIHVzZUhvc3RXaWR0aCA9IGZhbHNlO1xuICBASW5wdXQoXCJ0aXBweVwiKSBjb250ZW50OiBDb250ZW50O1xuXG4gIEBPdXRwdXQoKSB2aXNpYmxlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBwdWJsaWMgaXNWaXNpYmxlID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBpbnN0YW5jZTogVGlwcHlJbnN0YW5jZTtcbiAgcHJpdmF0ZSB2aWV3OiBDb250ZW50O1xuICBwcml2YXRlIHZpZXdSZWY6IFZpZXdSZWY7XG4gIHByaXZhdGUgZGVzdHJveWVkID0gbmV3IFN1YmplY3QoKTtcbiAgcHJpdmF0ZSBwcm9wczogUGFydGlhbDxUaXBweUNvbmZpZz47XG4gIHByaXZhdGUgZW5hYmxlZCA9IHRydWU7XG4gIHByaXZhdGUgdmFyaWF0aW9uRGVmaW5lZCA9IGZhbHNlO1xuICBwcml2YXRlIHZpZXdPcHRpb25zJDogVmlld09wdGlvbnM7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBzdHJpbmcsXG4gICAgQEluamVjdChUSVBQWV9DT05GSUcpIHByaXZhdGUgZ2xvYmFsQ29uZmlnOiBUaXBweUNvbmZpZyxcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIHZpZXdTZXJ2aWNlOiBWaWV3U2VydmljZSxcbiAgICBwcml2YXRlIHZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIHpvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIGhvc3Q6IEVsZW1lbnRSZWZcbiAgKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IE5nQ2hhbmdlczxUaXBweURpcmVjdGl2ZT4pIHtcbiAgICBpZiAoaXNQbGF0Zm9ybVNlcnZlcih0aGlzLnBsYXRmb3JtSWQpKSByZXR1cm47XG5cbiAgICBpZiAoY2hhbmdlcy5jb250ZW50KSB7XG4gICAgICB0aGlzLnZpZXcgPSBjaGFuZ2VzLmNvbnRlbnQuY3VycmVudFZhbHVlO1xuICAgIH1cblxuICAgIGxldCBwcm9wczogUGFydGlhbDxUaXBweUNvbmZpZz4gPSBPYmplY3Qua2V5cyhjaGFuZ2VzKS5yZWR1Y2UoKGFjYywgY2hhbmdlKSA9PiB7XG4gICAgICBhY2NbY2hhbmdlXSA9IGNoYW5nZXNbY2hhbmdlXS5jdXJyZW50VmFsdWU7XG5cbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30pO1xuXG4gICAgbGV0IHZhcmlhdGlvbjogc3RyaW5nO1xuXG4gICAgaWYgKGlzQ2hhbmdlZDxOZ0NoYW5nZXM8VGlwcHlEaXJlY3RpdmU+PihcInZhcmlhdGlvblwiLCBjaGFuZ2VzKSkge1xuICAgICAgdmFyaWF0aW9uID0gY2hhbmdlcy52YXJpYXRpb24uY3VycmVudFZhbHVlO1xuICAgICAgdGhpcy52YXJpYXRpb25EZWZpbmVkID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKCF0aGlzLnZhcmlhdGlvbkRlZmluZWQpIHtcbiAgICAgIHZhcmlhdGlvbiA9IHRoaXMuZ2xvYmFsQ29uZmlnLmRlZmF1bHRWYXJpYXRpb247XG4gICAgICB0aGlzLnZhcmlhdGlvbkRlZmluZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICh2YXJpYXRpb24pIHtcbiAgICAgIHByb3BzID0ge1xuICAgICAgICAuLi50aGlzLmdsb2JhbENvbmZpZy52YXJpYXRpb25zW3ZhcmlhdGlvbl0sXG4gICAgICAgIC4uLnByb3BzXG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChpc0NoYW5nZWQ8TmdDaGFuZ2VzPFRpcHB5RGlyZWN0aXZlPj4oXCJpc0VuYWJsZWRcIiwgY2hhbmdlcykpIHtcbiAgICAgIHRoaXMuZW5hYmxlZCA9IGNoYW5nZXMuaXNFbmFibGVkLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMuc2V0U3RhdHVzKCk7XG4gICAgfVxuXG4gICAgdGhpcy5zZXRQcm9wcyhwcm9wcyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy51c2VIb3N0V2lkdGgpIHtcbiAgICAgIHRoaXMucHJvcHMubWF4V2lkdGggPSB0aGlzLmhvc3RXaWR0aDtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMubGF6eSkge1xuICAgICAgaWYgKHRoaXMub25seVRleHRPdmVyZmxvdykge1xuICAgICAgICBpblZpZXcodGhpcy5ob3N0KVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IG92ZXJmbG93Q2hhbmdlcyh0aGlzLmhvc3QpKSxcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZClcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZShpc0VsZW1lbnRPdmVyZmxvdyA9PiB7XG4gICAgICAgICAgICB0aGlzLmNoZWNrT3ZlcmZsb3coaXNFbGVtZW50T3ZlcmZsb3cpO1xuICAgICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaW5WaWV3KHRoaXMuaG9zdClcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVJbnN0YW5jZSgpO1xuICAgICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy5vbmx5VGV4dE92ZXJmbG93KSB7XG4gICAgICBvdmVyZmxvd0NoYW5nZXModGhpcy5ob3N0KVxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAuc3Vic2NyaWJlKGlzRWxlbWVudE92ZXJmbG93ID0+IHtcbiAgICAgICAgICB0aGlzLmNoZWNrT3ZlcmZsb3coaXNFbGVtZW50T3ZlcmZsb3cpO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jcmVhdGVJbnN0YW5jZSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICB0aGlzLmluc3RhbmNlPy5kZXN0cm95KCk7XG4gICAgdGhpcy5kZXN0cm95VmlldygpO1xuICB9XG5cbiAgZGVzdHJveVZpZXcoKSB7XG4gICAgdGhpcy52aWV3UmVmPy5kZXN0cm95KCk7XG4gICAgdGhpcy52aWV3UmVmID0gbnVsbDtcbiAgfVxuXG4gIHNob3coKSB7XG4gICAgdGhpcy5pbnN0YW5jZT8uc2hvdygpO1xuICB9XG5cbiAgaGlkZSgpIHtcbiAgICB0aGlzLmluc3RhbmNlPy5oaWRlKCk7XG4gIH1cblxuICBlbmFibGUoKSB7XG4gICAgdGhpcy5pbnN0YW5jZT8uZW5hYmxlKCk7XG4gIH1cblxuICBkaXNhYmxlKCkge1xuICAgIHRoaXMuaW5zdGFuY2U/LmRpc2FibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UHJvcHMocHJvcHM6IFBhcnRpYWw8VGlwcHlDb25maWc+KSB7XG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICAgIHRoaXMuaW5zdGFuY2U/LnNldFByb3BzKG9ubHlUaXBweVByb3BzKHByb3BzKSk7XG4gIH1cblxuICBwcml2YXRlIHNldFN0YXR1cygpIHtcbiAgICB0aGlzLmVuYWJsZWQgPyB0aGlzLmluc3RhbmNlPy5lbmFibGUoKSA6IHRoaXMuaW5zdGFuY2U/LmRpc2FibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGhvc3RXaWR0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmhvc3QubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aH1weGA7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUluc3RhbmNlKCkge1xuICAgIHRoaXMuaW5zdGFuY2UgPSB0aXBweSh0aGlzLmhvc3QubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCwge1xuICAgICAgYWxsb3dIVE1MOiB0cnVlLFxuICAgICAgYXBwZW5kVG86IGRvY3VtZW50LmJvZHksXG4gICAgICAuLi5vbmx5VGlwcHlQcm9wcyh0aGlzLmdsb2JhbENvbmZpZyksXG4gICAgICAuLi5vbmx5VGlwcHlQcm9wcyh0aGlzLnByb3BzKSxcbiAgICAgIG9uTW91bnQ6IGluc3RhbmNlID0+IHtcbiAgICAgICAgdGhpcy5pc1Zpc2libGUgPSB0cnVlO1xuICAgICAgICB0aGlzLnZpc2libGUubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy51c2VIb3N0V2lkdGggJiYgdGhpcy5saXN0ZW5Ub0hvc3RSZXNpemUoKTtcbiAgICAgICAgdGhpcy5nbG9iYWxDb25maWcub25Nb3VudD8uKGluc3RhbmNlKTtcbiAgICAgIH0sXG4gICAgICBvbkNyZWF0ZTogaW5zdGFuY2UgPT4ge1xuICAgICAgICB0aGlzLmNsYXNzTmFtZSAmJiBpbnN0YW5jZS5wb3BwZXIuY2xhc3NMaXN0LmFkZCh0aGlzLmNsYXNzTmFtZSk7XG4gICAgICAgIHRoaXMuZ2xvYmFsQ29uZmlnLm9uQ3JlYXRlPy4oaW5zdGFuY2UpO1xuICAgICAgfSxcbiAgICAgIG9uU2hvdzogaW5zdGFuY2UgPT4ge1xuICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHRoaXMuaW5zdGFuY2Uuc2V0Q29udGVudCh0aGlzLnJlc29sdmVDb250ZW50KCkpKTtcbiAgICAgICAgaWYgKHRoaXMudXNlSG9zdFdpZHRoKSB7XG4gICAgICAgICAgaW5zdGFuY2UucG9wcGVyLnN0eWxlLndpZHRoID0gdGhpcy5ob3N0V2lkdGg7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5nbG9iYWxDb25maWcub25TaG93Py4oaW5zdGFuY2UpO1xuICAgICAgfSxcbiAgICAgIG9uSGlkZGVuOiBpbnN0YW5jZSA9PiB7XG4gICAgICAgIHRoaXMuZGVzdHJveVZpZXcoKTtcbiAgICAgICAgdGhpcy5pc1Zpc2libGUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy52aXNpYmxlLm5leHQoZmFsc2UpO1xuICAgICAgICB0aGlzLmdsb2JhbENvbmZpZy5vbkhpZGRlbj8uKGluc3RhbmNlKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuc2V0U3RhdHVzKCk7XG4gICAgdGhpcy5zZXRQcm9wcyh0aGlzLnByb3BzKTtcblxuICAgIHRoaXMudmFyaWF0aW9uID09PSBcImNvbnRleHRNZW51XCIgJiYgdGhpcy5oYW5kbGVDb250ZXh0TWVudSgpO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlQ29udGVudCgpIHtcbiAgICBpZiAoIXRoaXMudmlld09wdGlvbnMkICYmICFpc1N0cmluZyh0aGlzLmNvbnRlbnQpKSB7XG4gICAgICBpZiAoaXNDb21wb25lbnQodGhpcy5jb250ZW50KSkge1xuICAgICAgICB0aGlzLnZpZXdPcHRpb25zJCA9IHtcbiAgICAgICAgICBpbmplY3RvcjogSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgICAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogVElQUFlfUkVGLCB1c2VWYWx1ZTogdGhpcy5pbnN0YW5jZSB9XSxcbiAgICAgICAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvclxuICAgICAgICAgIH0pXG4gICAgICAgIH07XG4gICAgICB9IGVsc2UgaWYgKGlzVGVtcGxhdGVSZWYodGhpcy5jb250ZW50KSkge1xuICAgICAgICB0aGlzLnZpZXdPcHRpb25zJCA9IHtcbiAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IHRoaXMuaGlkZS5iaW5kKHRoaXMpLFxuICAgICAgICAgICAgZGF0YTogdGhpcy5kYXRhXG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMudmlld1JlZiA9IHRoaXMudmlld1NlcnZpY2UuY3JlYXRlVmlldyh0aGlzLmNvbnRlbnQsIHtcbiAgICAgIHZjcjogdGhpcy52Y3IsXG4gICAgICAuLi50aGlzLnZpZXdPcHRpb25zJFxuICAgIH0pO1xuXG4gICAgbGV0IGNvbnRlbnQgPSB0aGlzLnZpZXdSZWYuZ2V0RWxlbWVudCgpO1xuXG4gICAgaWYgKGlzU3RyaW5nKGNvbnRlbnQpICYmIHRoaXMuZ2xvYmFsQ29uZmlnLmJlZm9yZVJlbmRlcikge1xuICAgICAgY29udGVudCA9IHRoaXMuZ2xvYmFsQ29uZmlnLmJlZm9yZVJlbmRlcihjb250ZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm4gY29udGVudDtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlQ29udGV4dE1lbnUoKSB7XG4gICAgZnJvbUV2ZW50KHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LCBcImNvbnRleHRtZW51XCIpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICB0aGlzLmluc3RhbmNlLnNldFByb3BzKHtcbiAgICAgICAgICBnZXRSZWZlcmVuY2VDbGllbnRSZWN0OiAoKSA9PiAoe1xuICAgICAgICAgICAgd2lkdGg6IDAsXG4gICAgICAgICAgICBoZWlnaHQ6IDAsXG4gICAgICAgICAgICB0b3A6IGV2ZW50LmNsaWVudFksXG4gICAgICAgICAgICBib3R0b206IGV2ZW50LmNsaWVudFksXG4gICAgICAgICAgICBsZWZ0OiBldmVudC5jbGllbnRYLFxuICAgICAgICAgICAgcmlnaHQ6IGV2ZW50LmNsaWVudFhcbiAgICAgICAgICB9KVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmluc3RhbmNlLnNob3coKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja092ZXJmbG93KGlzRWxlbWVudE92ZXJmbG93OiBib29sZWFuKSB7XG4gICAgaWYgKGlzRWxlbWVudE92ZXJmbG93KSB7XG4gICAgICBpZiAoIXRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgdGhpcy5jcmVhdGVJbnN0YW5jZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5lbmFibGUoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnN0YW5jZT8uZGlzYWJsZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVG9Ib3N0UmVzaXplKCkge1xuICAgIGRpbWVuc2lvbnNDaGFuZ2VzKHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50KVxuICAgICAgLnBpcGUodGFrZVVudGlsKG1lcmdlKHRoaXMuZGVzdHJveWVkLCB0aGlzLnZpc2libGUpKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmluc3RhbmNlLnBvcHBlci5zdHlsZS53aWR0aCA9IHRoaXMuaG9zdFdpZHRoO1xuICAgICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNDaGFuZ2VkPFQ+KGtleToga2V5b2YgVCwgY2hhbmdlczogVCkge1xuICByZXR1cm4ga2V5IGluIGNoYW5nZXM7XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwcHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5nbmVhdC9oZWxpcG9wcGVyLyIsInNvdXJjZXMiOlsibGliL3RpcHB5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixRQUFRLEVBQ1IsS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sV0FBVyxFQUNYLGdCQUFnQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQUssTUFBTSxVQUFVLENBQUM7QUFDN0IsT0FBTyxFQUFhLFlBQVksRUFBRSxTQUFTLEVBQTBDLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyRixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHckYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFNbkQsSUFBYSxjQUFjLEdBQTNCLE1BQWEsY0FBYztJQXFDekIsWUFDK0IsVUFBa0IsRUFDakIsWUFBeUIsRUFDL0MsUUFBa0IsRUFDbEIsV0FBd0IsRUFDeEIsR0FBcUIsRUFDckIsSUFBWSxFQUNaLElBQWdCO1FBTkssZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUNqQixpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUMvQyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFFBQUcs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LGNBQWM7SUFKMUIsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLFNBQVM7UUFDbkIsUUFBUSxFQUFFLE9BQU87S0FDbEIsQ0FBQztJQXVDRyxXQUFBLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUNuQixXQUFBLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtHQXZDWixjQUFjLENBZ1IxQjtTQWhSWSxjQUFjO0FBa1IzQixTQUFTLFNBQVMsQ0FBSSxHQUFZLEVBQUUsT0FBVTtJQUM1QyxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUM7QUFDeEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPdXRwdXQsXG4gIFBMQVRGT1JNX0lELFxuICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB0aXBweSBmcm9tIFwidGlwcHkuanNcIjtcbmltcG9ydCB7IE5nQ2hhbmdlcywgVElQUFlfQ09ORklHLCBUSVBQWV9SRUYsIFRpcHB5Q29uZmlnLCBUaXBweUluc3RhbmNlLCBUaXBweVByb3BzIH0gZnJvbSBcIi4vdGlwcHkudHlwZXNcIjtcbmltcG9ydCB7IGRpbWVuc2lvbnNDaGFuZ2VzLCBpblZpZXcsIG9ubHlUaXBweVByb3BzLCBvdmVyZmxvd0NoYW5nZXMgfSBmcm9tIFwiLi91dGlsc1wiO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBtZXJnZSwgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgaXNDb21wb25lbnQsIGlzU3RyaW5nLCBpc1RlbXBsYXRlUmVmLCBWaWV3U2VydmljZSB9IGZyb20gXCJAbmduZWF0L292ZXJ2aWV3XCI7XG5pbXBvcnQgeyBWaWV3T3B0aW9ucywgVmlld1JlZiB9IGZyb20gXCJAbmduZWF0L292ZXJ2aWV3XCI7XG5pbXBvcnQgeyBDb250ZW50IH0gZnJvbSBcIkBuZ25lYXQvb3ZlcnZpZXdcIjtcbmltcG9ydCB7IGlzUGxhdGZvcm1TZXJ2ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbdGlwcHldXCIsXG4gIGV4cG9ydEFzOiBcInRpcHB5XCJcbn0pXG5leHBvcnQgY2xhc3MgVGlwcHlEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgT25Jbml0IHtcbiAgQElucHV0KCkgYXBwZW5kVG86IFRpcHB5UHJvcHNbXCJhcHBlbmRUb1wiXTtcbiAgQElucHV0KCkgZGVsYXk6IFRpcHB5UHJvcHNbXCJkZWxheVwiXTtcbiAgQElucHV0KCkgZHVyYXRpb246IFRpcHB5UHJvcHNbXCJkdXJhdGlvblwiXTtcbiAgQElucHV0KCkgaGlkZU9uQ2xpY2s6IFRpcHB5UHJvcHNbXCJoaWRlT25DbGlja1wiXTtcbiAgQElucHV0KCkgaW50ZXJhY3RpdmU6IFRpcHB5UHJvcHNbXCJpbnRlcmFjdGl2ZVwiXTtcbiAgQElucHV0KCkgaW50ZXJhY3RpdmVCb3JkZXI6IFRpcHB5UHJvcHNbXCJpbnRlcmFjdGl2ZUJvcmRlclwiXTtcbiAgQElucHV0KCkgbWF4V2lkdGg6IFRpcHB5UHJvcHNbXCJtYXhXaWR0aFwiXTtcbiAgQElucHV0KCkgb2Zmc2V0OiBUaXBweVByb3BzW1wib2Zmc2V0XCJdO1xuICBASW5wdXQoKSBwbGFjZW1lbnQ6IFRpcHB5UHJvcHNbXCJwbGFjZW1lbnRcIl07XG4gIEBJbnB1dCgpIHBvcHBlck9wdGlvbnM6IFRpcHB5UHJvcHNbXCJwb3BwZXJPcHRpb25zXCJdO1xuICBASW5wdXQoKSBzaG93T25DcmVhdGU6IFRpcHB5UHJvcHNbXCJzaG93T25DcmVhdGVcIl07XG4gIEBJbnB1dCgpIHRyaWdnZXI6IFRpcHB5UHJvcHNbXCJ0cmlnZ2VyXCJdO1xuICBASW5wdXQoKSB0cmlnZ2VyVGFyZ2V0OiBUaXBweVByb3BzW1widHJpZ2dlclRhcmdldFwiXTtcbiAgQElucHV0KCkgekluZGV4OiBUaXBweVByb3BzW1wiekluZGV4XCJdO1xuXG4gIEBJbnB1dCgpIGxhenk6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHZhcmlhdGlvbjogc3RyaW5nO1xuICBASW5wdXQoKSBpc0VuYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGNsYXNzTmFtZTogc3RyaW5nO1xuICBASW5wdXQoKSBvbmx5VGV4dE92ZXJmbG93ID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRhdGE6IGFueTtcbiAgQElucHV0KCkgdXNlSG9zdFdpZHRoID0gZmFsc2U7XG4gIEBJbnB1dChcInRpcHB5XCIpIGNvbnRlbnQ6IENvbnRlbnQ7XG5cbiAgQE91dHB1dCgpIHZpc2libGUgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIHB1YmxpYyBpc1Zpc2libGUgPSBmYWxzZTtcblxuICBwcml2YXRlIGluc3RhbmNlOiBUaXBweUluc3RhbmNlO1xuICBwcml2YXRlIHZpZXc6IENvbnRlbnQ7XG4gIHByaXZhdGUgdmlld1JlZjogVmlld1JlZjtcbiAgcHJpdmF0ZSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIHByb3BzOiBQYXJ0aWFsPFRpcHB5Q29uZmlnPjtcbiAgcHJpdmF0ZSBlbmFibGVkID0gdHJ1ZTtcbiAgcHJpdmF0ZSB2YXJpYXRpb25EZWZpbmVkID0gZmFsc2U7XG4gIHByaXZhdGUgdmlld09wdGlvbnMkOiBWaWV3T3B0aW9ucztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IHN0cmluZyxcbiAgICBASW5qZWN0KFRJUFBZX0NPTkZJRykgcHJpdmF0ZSBnbG9iYWxDb25maWc6IFRpcHB5Q29uZmlnLFxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgdmlld1NlcnZpY2U6IFZpZXdTZXJ2aWNlLFxuICAgIHByaXZhdGUgdmNyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgIHByaXZhdGUgaG9zdDogRWxlbWVudFJlZlxuICApIHt9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogTmdDaGFuZ2VzPFRpcHB5RGlyZWN0aXZlPikge1xuICAgIGlmIChpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCkpIHJldHVybjtcblxuICAgIGlmIChjaGFuZ2VzLmNvbnRlbnQpIHtcbiAgICAgIHRoaXMudmlldyA9IGNoYW5nZXMuY29udGVudC5jdXJyZW50VmFsdWU7XG4gICAgfVxuXG4gICAgbGV0IHByb3BzOiBQYXJ0aWFsPFRpcHB5Q29uZmlnPiA9IE9iamVjdC5rZXlzKGNoYW5nZXMpLnJlZHVjZSgoYWNjLCBjaGFuZ2UpID0+IHtcbiAgICAgIGFjY1tjaGFuZ2VdID0gY2hhbmdlc1tjaGFuZ2VdLmN1cnJlbnRWYWx1ZTtcblxuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LCB7fSk7XG5cbiAgICBsZXQgdmFyaWF0aW9uOiBzdHJpbmc7XG5cbiAgICBpZiAoaXNDaGFuZ2VkPE5nQ2hhbmdlczxUaXBweURpcmVjdGl2ZT4+KFwidmFyaWF0aW9uXCIsIGNoYW5nZXMpKSB7XG4gICAgICB2YXJpYXRpb24gPSBjaGFuZ2VzLnZhcmlhdGlvbi5jdXJyZW50VmFsdWU7XG4gICAgICB0aGlzLnZhcmlhdGlvbkRlZmluZWQgPSB0cnVlO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMudmFyaWF0aW9uRGVmaW5lZCkge1xuICAgICAgdmFyaWF0aW9uID0gdGhpcy5nbG9iYWxDb25maWcuZGVmYXVsdFZhcmlhdGlvbjtcbiAgICAgIHRoaXMudmFyaWF0aW9uRGVmaW5lZCA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHZhcmlhdGlvbikge1xuICAgICAgcHJvcHMgPSB7XG4gICAgICAgIC4uLnRoaXMuZ2xvYmFsQ29uZmlnLnZhcmlhdGlvbnNbdmFyaWF0aW9uXSxcbiAgICAgICAgLi4ucHJvcHNcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKGlzQ2hhbmdlZDxOZ0NoYW5nZXM8VGlwcHlEaXJlY3RpdmU+PihcImlzRW5hYmxlZFwiLCBjaGFuZ2VzKSkge1xuICAgICAgdGhpcy5lbmFibGVkID0gY2hhbmdlcy5pc0VuYWJsZWQuY3VycmVudFZhbHVlO1xuICAgICAgdGhpcy5zZXRTdGF0dXMoKTtcbiAgICB9XG5cbiAgICB0aGlzLnNldFByb3BzKHByb3BzKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLnVzZUhvc3RXaWR0aCkge1xuICAgICAgdGhpcy5wcm9wcy5tYXhXaWR0aCA9IHRoaXMuaG9zdFdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5sYXp5KSB7XG4gICAgICBpZiAodGhpcy5vbmx5VGV4dE92ZXJmbG93KSB7XG4gICAgICAgIGluVmlldyh0aGlzLmhvc3QpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gb3ZlcmZsb3dDaGFuZ2VzKHRoaXMuaG9zdCkpLFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKVxuICAgICAgICAgIClcbiAgICAgICAgICAuc3Vic2NyaWJlKGlzRWxlbWVudE92ZXJmbG93ID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tPdmVyZmxvdyhpc0VsZW1lbnRPdmVyZmxvdyk7XG4gICAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpblZpZXcodGhpcy5ob3N0KVxuICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpXG4gICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUluc3RhbmNlKCk7XG4gICAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0aGlzLm9ubHlUZXh0T3ZlcmZsb3cpIHtcbiAgICAgIG92ZXJmbG93Q2hhbmdlcyh0aGlzLmhvc3QpXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpXG4gICAgICAgIC5zdWJzY3JpYmUoaXNFbGVtZW50T3ZlcmZsb3cgPT4ge1xuICAgICAgICAgIHRoaXMuY2hlY2tPdmVyZmxvdyhpc0VsZW1lbnRPdmVyZmxvdyk7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNyZWF0ZUluc3RhbmNlKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95ZWQubmV4dCgpO1xuICAgIHRoaXMuaW5zdGFuY2U/LmRlc3Ryb3koKTtcbiAgICB0aGlzLmRlc3Ryb3lWaWV3KCk7XG4gIH1cblxuICBkZXN0cm95VmlldygpIHtcbiAgICB0aGlzLnZpZXdSZWY/LmRlc3Ryb3koKTtcbiAgICB0aGlzLnZpZXdSZWYgPSBudWxsO1xuICB9XG5cbiAgc2hvdygpIHtcbiAgICB0aGlzLmluc3RhbmNlPy5zaG93KCk7XG4gIH1cblxuICBoaWRlKCkge1xuICAgIHRoaXMuaW5zdGFuY2U/LmhpZGUoKTtcbiAgfVxuXG4gIGVuYWJsZSgpIHtcbiAgICB0aGlzLmluc3RhbmNlPy5lbmFibGUoKTtcbiAgfVxuXG4gIGRpc2FibGUoKSB7XG4gICAgdGhpcy5pbnN0YW5jZT8uZGlzYWJsZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRQcm9wcyhwcm9wczogUGFydGlhbDxUaXBweUNvbmZpZz4pIHtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgdGhpcy5pbnN0YW5jZT8uc2V0UHJvcHMob25seVRpcHB5UHJvcHMocHJvcHMpKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U3RhdHVzKCkge1xuICAgIHRoaXMuZW5hYmxlZCA/IHRoaXMuaW5zdGFuY2U/LmVuYWJsZSgpIDogdGhpcy5pbnN0YW5jZT8uZGlzYWJsZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgaG9zdFdpZHRoKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMuaG9zdC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRofXB4YDtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlSW5zdGFuY2UoKSB7XG4gICAgdGhpcy5pbnN0YW5jZSA9IHRpcHB5KHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50LCB7XG4gICAgICBhbGxvd0hUTUw6IHRydWUsXG4gICAgICBhcHBlbmRUbzogZG9jdW1lbnQuYm9keSxcbiAgICAgIC4uLm9ubHlUaXBweVByb3BzKHRoaXMuZ2xvYmFsQ29uZmlnKSxcbiAgICAgIC4uLm9ubHlUaXBweVByb3BzKHRoaXMucHJvcHMpLFxuICAgICAgb25Nb3VudDogaW5zdGFuY2UgPT4ge1xuICAgICAgICB0aGlzLmlzVmlzaWJsZSA9IHRydWU7XG4gICAgICAgIHRoaXMudmlzaWJsZS5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLnVzZUhvc3RXaWR0aCAmJiB0aGlzLmxpc3RlblRvSG9zdFJlc2l6ZSgpO1xuICAgICAgICB0aGlzLmdsb2JhbENvbmZpZy5vbk1vdW50Py4oaW5zdGFuY2UpO1xuICAgICAgfSxcbiAgICAgIG9uQ3JlYXRlOiBpbnN0YW5jZSA9PiB7XG4gICAgICAgIHRoaXMuY2xhc3NOYW1lICYmIGluc3RhbmNlLnBvcHBlci5jbGFzc0xpc3QuYWRkKHRoaXMuY2xhc3NOYW1lKTtcbiAgICAgICAgdGhpcy5nbG9iYWxDb25maWcub25DcmVhdGU/LihpbnN0YW5jZSk7XG4gICAgICB9LFxuICAgICAgb25TaG93OiBpbnN0YW5jZSA9PiB7XG4gICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4gdGhpcy5pbnN0YW5jZS5zZXRDb250ZW50KHRoaXMucmVzb2x2ZUNvbnRlbnQoKSkpO1xuICAgICAgICBpZiAodGhpcy51c2VIb3N0V2lkdGgpIHtcbiAgICAgICAgICBpbnN0YW5jZS5wb3BwZXIuc3R5bGUud2lkdGggPSB0aGlzLmhvc3RXaWR0aDtcbiAgICAgICAgICBpbnN0YW5jZS5wb3BwZXIuc3R5bGUubWF4V2lkdGggPSB0aGlzLmhvc3RXaWR0aDtcbiAgICAgICAgICAoaW5zdGFuY2UucG9wcGVyLmZpcnN0RWxlbWVudENoaWxkIGFzIEhUTUxFbGVtZW50KS5zdHlsZS5tYXhXaWR0aCA9IHRoaXMuaG9zdFdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZ2xvYmFsQ29uZmlnLm9uU2hvdz8uKGluc3RhbmNlKTtcbiAgICAgIH0sXG4gICAgICBvbkhpZGRlbjogaW5zdGFuY2UgPT4ge1xuICAgICAgICB0aGlzLmRlc3Ryb3lWaWV3KCk7XG4gICAgICAgIHRoaXMuaXNWaXNpYmxlID0gZmFsc2U7XG4gICAgICAgIHRoaXMudmlzaWJsZS5uZXh0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5nbG9iYWxDb25maWcub25IaWRkZW4/LihpbnN0YW5jZSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnNldFN0YXR1cygpO1xuICAgIHRoaXMuc2V0UHJvcHModGhpcy5wcm9wcyk7XG5cbiAgICB0aGlzLnZhcmlhdGlvbiA9PT0gXCJjb250ZXh0TWVudVwiICYmIHRoaXMuaGFuZGxlQ29udGV4dE1lbnUoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZUNvbnRlbnQoKSB7XG4gICAgaWYgKCF0aGlzLnZpZXdPcHRpb25zJCAmJiAhaXNTdHJpbmcodGhpcy5jb250ZW50KSkge1xuICAgICAgaWYgKGlzQ29tcG9uZW50KHRoaXMuY29udGVudCkpIHtcbiAgICAgICAgdGhpcy52aWV3T3B0aW9ucyQgPSB7XG4gICAgICAgICAgaW5qZWN0b3I6IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFRJUFBZX1JFRiwgdXNlVmFsdWU6IHRoaXMuaW5zdGFuY2UgfV0sXG4gICAgICAgICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3JcbiAgICAgICAgICB9KVxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIGlmIChpc1RlbXBsYXRlUmVmKHRoaXMuY29udGVudCkpIHtcbiAgICAgICAgdGhpcy52aWV3T3B0aW9ucyQgPSB7XG4gICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgJGltcGxpY2l0OiB0aGlzLmhpZGUuYmluZCh0aGlzKSxcbiAgICAgICAgICAgIGRhdGE6IHRoaXMuZGF0YVxuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnZpZXdSZWYgPSB0aGlzLnZpZXdTZXJ2aWNlLmNyZWF0ZVZpZXcodGhpcy5jb250ZW50LCB7XG4gICAgICB2Y3I6IHRoaXMudmNyLFxuICAgICAgLi4udGhpcy52aWV3T3B0aW9ucyRcbiAgICB9KTtcblxuICAgIGxldCBjb250ZW50ID0gdGhpcy52aWV3UmVmLmdldEVsZW1lbnQoKTtcblxuICAgIGlmIChpc1N0cmluZyhjb250ZW50KSAmJiB0aGlzLmdsb2JhbENvbmZpZy5iZWZvcmVSZW5kZXIpIHtcbiAgICAgIGNvbnRlbnQgPSB0aGlzLmdsb2JhbENvbmZpZy5iZWZvcmVSZW5kZXIoY29udGVudCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbnRlbnQ7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUNvbnRleHRNZW51KCkge1xuICAgIGZyb21FdmVudCh0aGlzLmhvc3QubmF0aXZlRWxlbWVudCwgXCJjb250ZXh0bWVudVwiKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgdGhpcy5pbnN0YW5jZS5zZXRQcm9wcyh7XG4gICAgICAgICAgZ2V0UmVmZXJlbmNlQ2xpZW50UmVjdDogKCkgPT4gKHtcbiAgICAgICAgICAgIHdpZHRoOiAwLFxuICAgICAgICAgICAgaGVpZ2h0OiAwLFxuICAgICAgICAgICAgdG9wOiBldmVudC5jbGllbnRZLFxuICAgICAgICAgICAgYm90dG9tOiBldmVudC5jbGllbnRZLFxuICAgICAgICAgICAgbGVmdDogZXZlbnQuY2xpZW50WCxcbiAgICAgICAgICAgIHJpZ2h0OiBldmVudC5jbGllbnRYXG4gICAgICAgICAgfSlcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5pbnN0YW5jZS5zaG93KCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tPdmVyZmxvdyhpc0VsZW1lbnRPdmVyZmxvdzogYm9vbGVhbikge1xuICAgIGlmIChpc0VsZW1lbnRPdmVyZmxvdykge1xuICAgICAgaWYgKCF0aGlzLmluc3RhbmNlKSB7XG4gICAgICAgIHRoaXMuY3JlYXRlSW5zdGFuY2UoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaW5zdGFuY2UuZW5hYmxlKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5zdGFuY2U/LmRpc2FibGUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblRvSG9zdFJlc2l6ZSgpIHtcbiAgICBkaW1lbnNpb25zQ2hhbmdlcyh0aGlzLmhvc3QubmF0aXZlRWxlbWVudClcbiAgICAgIC5waXBlKHRha2VVbnRpbChtZXJnZSh0aGlzLmRlc3Ryb3llZCwgdGhpcy52aXNpYmxlKSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5wb3BwZXIuc3R5bGUud2lkdGggPSB0aGlzLmhvc3RXaWR0aDtcbiAgICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzQ2hhbmdlZDxUPihrZXk6IGtleW9mIFQsIGNoYW5nZXM6IFQpIHtcbiAgcmV0dXJuIGtleSBpbiBjaGFuZ2VzO1xufVxuIl19 |
@@ -149,2 +149,4 @@ import { __assign, __decorate, __param } from "tslib"; | ||
instance.popper.style.width = _this.hostWidth; | ||
instance.popper.style.maxWidth = _this.hostWidth; | ||
instance.popper.firstElementChild.style.maxWidth = _this.hostWidth; | ||
} | ||
@@ -322,2 +324,2 @@ (_b = (_a = _this.globalConfig).onShow) === null || _b === void 0 ? void 0 : _b.call(_a, instance); | ||
} | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwcHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5nbmVhdC9oZWxpcG9wcGVyLyIsInNvdXJjZXMiOlsibGliL3RpcHB5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixRQUFRLEVBQ1IsS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sV0FBVyxFQUNYLGdCQUFnQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQUssTUFBTSxVQUFVLENBQUM7QUFDN0IsT0FBTyxFQUFhLFlBQVksRUFBRSxTQUFTLEVBQTBDLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyRixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHckYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFNbkQ7SUFxQ0Usd0JBQytCLFVBQWtCLEVBQ2pCLFlBQXlCLEVBQy9DLFFBQWtCLEVBQ2xCLFdBQXdCLEVBQ3hCLEdBQXFCLEVBQ3JCLElBQVksRUFDWixJQUFnQjtRQU5LLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDakIsaUJBQVksR0FBWixZQUFZLENBQWE7UUFDL0MsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixRQUFHLEdBQUgsR0FBRyxDQUFrQjtRQUNyQixTQUFJ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QUM7UUF1Q0csV0FBQSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDbkIsV0FBQSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7T0F2Q1osY0FBYyxDQThRMUI7SUFBRCxxQkFBQztDQUFBLEFBOVFELElBOFFDO1NBOVFZLGNBQWM7QUFnUjNCLFNBQVMsU0FBUyxDQUFJLEdBQVksRUFBRSxPQUFVO0lBQzVDLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQztBQUN4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdCxcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE91dHB1dCxcbiAgUExBVEZPUk1fSUQsXG4gIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHRpcHB5IGZyb20gXCJ0aXBweS5qc1wiO1xuaW1wb3J0IHsgTmdDaGFuZ2VzLCBUSVBQWV9DT05GSUcsIFRJUFBZX1JFRiwgVGlwcHlDb25maWcsIFRpcHB5SW5zdGFuY2UsIFRpcHB5UHJvcHMgfSBmcm9tIFwiLi90aXBweS50eXBlc1wiO1xuaW1wb3J0IHsgZGltZW5zaW9uc0NoYW5nZXMsIGluVmlldywgb25seVRpcHB5UHJvcHMsIG92ZXJmbG93Q2hhbmdlcyB9IGZyb20gXCIuL3V0aWxzXCI7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBpc0NvbXBvbmVudCwgaXNTdHJpbmcsIGlzVGVtcGxhdGVSZWYsIFZpZXdTZXJ2aWNlIH0gZnJvbSBcIkBuZ25lYXQvb3ZlcnZpZXdcIjtcbmltcG9ydCB7IFZpZXdPcHRpb25zLCBWaWV3UmVmIH0gZnJvbSBcIkBuZ25lYXQvb3ZlcnZpZXdcIjtcbmltcG9ydCB7IENvbnRlbnQgfSBmcm9tIFwiQG5nbmVhdC9vdmVydmlld1wiO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBcIlt0aXBweV1cIixcbiAgZXhwb3J0QXM6IFwidGlwcHlcIlxufSlcbmV4cG9ydCBjbGFzcyBUaXBweURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkluaXQge1xuICBASW5wdXQoKSBhcHBlbmRUbzogVGlwcHlQcm9wc1tcImFwcGVuZFRvXCJdO1xuICBASW5wdXQoKSBkZWxheTogVGlwcHlQcm9wc1tcImRlbGF5XCJdO1xuICBASW5wdXQoKSBkdXJhdGlvbjogVGlwcHlQcm9wc1tcImR1cmF0aW9uXCJdO1xuICBASW5wdXQoKSBoaWRlT25DbGljazogVGlwcHlQcm9wc1tcImhpZGVPbkNsaWNrXCJdO1xuICBASW5wdXQoKSBpbnRlcmFjdGl2ZTogVGlwcHlQcm9wc1tcImludGVyYWN0aXZlXCJdO1xuICBASW5wdXQoKSBpbnRlcmFjdGl2ZUJvcmRlcjogVGlwcHlQcm9wc1tcImludGVyYWN0aXZlQm9yZGVyXCJdO1xuICBASW5wdXQoKSBtYXhXaWR0aDogVGlwcHlQcm9wc1tcIm1heFdpZHRoXCJdO1xuICBASW5wdXQoKSBvZmZzZXQ6IFRpcHB5UHJvcHNbXCJvZmZzZXRcIl07XG4gIEBJbnB1dCgpIHBsYWNlbWVudDogVGlwcHlQcm9wc1tcInBsYWNlbWVudFwiXTtcbiAgQElucHV0KCkgcG9wcGVyT3B0aW9uczogVGlwcHlQcm9wc1tcInBvcHBlck9wdGlvbnNcIl07XG4gIEBJbnB1dCgpIHNob3dPbkNyZWF0ZTogVGlwcHlQcm9wc1tcInNob3dPbkNyZWF0ZVwiXTtcbiAgQElucHV0KCkgdHJpZ2dlcjogVGlwcHlQcm9wc1tcInRyaWdnZXJcIl07XG4gIEBJbnB1dCgpIHRyaWdnZXJUYXJnZXQ6IFRpcHB5UHJvcHNbXCJ0cmlnZ2VyVGFyZ2V0XCJdO1xuICBASW5wdXQoKSB6SW5kZXg6IFRpcHB5UHJvcHNbXCJ6SW5kZXhcIl07XG5cbiAgQElucHV0KCkgbGF6eTogYm9vbGVhbjtcbiAgQElucHV0KCkgdmFyaWF0aW9uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlzRW5hYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgY2xhc3NOYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIG9ubHlUZXh0T3ZlcmZsb3cgPSBmYWxzZTtcbiAgQElucHV0KCkgZGF0YTogYW55O1xuICBASW5wdXQoKSB1c2VIb3N0V2lkdGggPSBmYWxzZTtcbiAgQElucHV0KFwidGlwcHlcIikgY29udGVudDogQ29udGVudDtcblxuICBAT3V0cHV0KCkgdmlzaWJsZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgcHVibGljIGlzVmlzaWJsZSA9IGZhbHNlO1xuXG4gIHByaXZhdGUgaW5zdGFuY2U6IFRpcHB5SW5zdGFuY2U7XG4gIHByaXZhdGUgdmlldzogQ29udGVudDtcbiAgcHJpdmF0ZSB2aWV3UmVmOiBWaWV3UmVmO1xuICBwcml2YXRlIGRlc3Ryb3llZCA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgcHJvcHM6IFBhcnRpYWw8VGlwcHlDb25maWc+O1xuICBwcml2YXRlIGVuYWJsZWQgPSB0cnVlO1xuICBwcml2YXRlIHZhcmlhdGlvbkRlZmluZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSB2aWV3T3B0aW9ucyQ6IFZpZXdPcHRpb25zO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogc3RyaW5nLFxuICAgIEBJbmplY3QoVElQUFlfQ09ORklHKSBwcml2YXRlIGdsb2JhbENvbmZpZzogVGlwcHlDb25maWcsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSB2aWV3U2VydmljZTogVmlld1NlcnZpY2UsXG4gICAgcHJpdmF0ZSB2Y3I6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSB6b25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSBob3N0OiBFbGVtZW50UmVmXG4gICkge31cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBOZ0NoYW5nZXM8VGlwcHlEaXJlY3RpdmU+KSB7XG4gICAgaWYgKGlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSkgcmV0dXJuO1xuXG4gICAgaWYgKGNoYW5nZXMuY29udGVudCkge1xuICAgICAgdGhpcy52aWV3ID0gY2hhbmdlcy5jb250ZW50LmN1cnJlbnRWYWx1ZTtcbiAgICB9XG5cbiAgICBsZXQgcHJvcHM6IFBhcnRpYWw8VGlwcHlDb25maWc+ID0gT2JqZWN0LmtleXMoY2hhbmdlcykucmVkdWNlKChhY2MsIGNoYW5nZSkgPT4ge1xuICAgICAgYWNjW2NoYW5nZV0gPSBjaGFuZ2VzW2NoYW5nZV0uY3VycmVudFZhbHVlO1xuXG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sIHt9KTtcblxuICAgIGxldCB2YXJpYXRpb246IHN0cmluZztcblxuICAgIGlmIChpc0NoYW5nZWQ8TmdDaGFuZ2VzPFRpcHB5RGlyZWN0aXZlPj4oXCJ2YXJpYXRpb25cIiwgY2hhbmdlcykpIHtcbiAgICAgIHZhcmlhdGlvbiA9IGNoYW5nZXMudmFyaWF0aW9uLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMudmFyaWF0aW9uRGVmaW5lZCA9IHRydWU7XG4gICAgfSBlbHNlIGlmICghdGhpcy52YXJpYXRpb25EZWZpbmVkKSB7XG4gICAgICB2YXJpYXRpb24gPSB0aGlzLmdsb2JhbENvbmZpZy5kZWZhdWx0VmFyaWF0aW9uO1xuICAgICAgdGhpcy52YXJpYXRpb25EZWZpbmVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodmFyaWF0aW9uKSB7XG4gICAgICBwcm9wcyA9IHtcbiAgICAgICAgLi4udGhpcy5nbG9iYWxDb25maWcudmFyaWF0aW9uc1t2YXJpYXRpb25dLFxuICAgICAgICAuLi5wcm9wc1xuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoaXNDaGFuZ2VkPE5nQ2hhbmdlczxUaXBweURpcmVjdGl2ZT4+KFwiaXNFbmFibGVkXCIsIGNoYW5nZXMpKSB7XG4gICAgICB0aGlzLmVuYWJsZWQgPSBjaGFuZ2VzLmlzRW5hYmxlZC5jdXJyZW50VmFsdWU7XG4gICAgICB0aGlzLnNldFN0YXR1cygpO1xuICAgIH1cblxuICAgIHRoaXMuc2V0UHJvcHMocHJvcHMpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMudXNlSG9zdFdpZHRoKSB7XG4gICAgICB0aGlzLnByb3BzLm1heFdpZHRoID0gdGhpcy5ob3N0V2lkdGg7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICh0aGlzLmxhenkpIHtcbiAgICAgIGlmICh0aGlzLm9ubHlUZXh0T3ZlcmZsb3cpIHtcbiAgICAgICAgaW5WaWV3KHRoaXMuaG9zdClcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PiBvdmVyZmxvd0NoYW5nZXModGhpcy5ob3N0KSksXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpXG4gICAgICAgICAgKVxuICAgICAgICAgIC5zdWJzY3JpYmUoaXNFbGVtZW50T3ZlcmZsb3cgPT4ge1xuICAgICAgICAgICAgdGhpcy5jaGVja092ZXJmbG93KGlzRWxlbWVudE92ZXJmbG93KTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGluVmlldyh0aGlzLmhvc3QpXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlSW5zdGFuY2UoKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMub25seVRleHRPdmVyZmxvdykge1xuICAgICAgb3ZlcmZsb3dDaGFuZ2VzKHRoaXMuaG9zdClcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgICAgLnN1YnNjcmliZShpc0VsZW1lbnRPdmVyZmxvdyA9PiB7XG4gICAgICAgICAgdGhpcy5jaGVja092ZXJmbG93KGlzRWxlbWVudE92ZXJmbG93KTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY3JlYXRlSW5zdGFuY2UoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3llZC5uZXh0KCk7XG4gICAgdGhpcy5pbnN0YW5jZT8uZGVzdHJveSgpO1xuICAgIHRoaXMuZGVzdHJveVZpZXcoKTtcbiAgfVxuXG4gIGRlc3Ryb3lWaWV3KCkge1xuICAgIHRoaXMudmlld1JlZj8uZGVzdHJveSgpO1xuICAgIHRoaXMudmlld1JlZiA9IG51bGw7XG4gIH1cblxuICBzaG93KCkge1xuICAgIHRoaXMuaW5zdGFuY2U/LnNob3coKTtcbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgdGhpcy5pbnN0YW5jZT8uaGlkZSgpO1xuICB9XG5cbiAgZW5hYmxlKCkge1xuICAgIHRoaXMuaW5zdGFuY2U/LmVuYWJsZSgpO1xuICB9XG5cbiAgZGlzYWJsZSgpIHtcbiAgICB0aGlzLmluc3RhbmNlPy5kaXNhYmxlKCk7XG4gIH1cblxuICBwcml2YXRlIHNldFByb3BzKHByb3BzOiBQYXJ0aWFsPFRpcHB5Q29uZmlnPikge1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgICB0aGlzLmluc3RhbmNlPy5zZXRQcm9wcyhvbmx5VGlwcHlQcm9wcyhwcm9wcykpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRTdGF0dXMoKSB7XG4gICAgdGhpcy5lbmFibGVkID8gdGhpcy5pbnN0YW5jZT8uZW5hYmxlKCkgOiB0aGlzLmluc3RhbmNlPy5kaXNhYmxlKCk7XG4gIH1cblxuICBwcml2YXRlIGdldCBob3N0V2lkdGgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5ob3N0Lm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGh9cHhgO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVJbnN0YW5jZSgpIHtcbiAgICB0aGlzLmluc3RhbmNlID0gdGlwcHkodGhpcy5ob3N0Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQsIHtcbiAgICAgIGFsbG93SFRNTDogdHJ1ZSxcbiAgICAgIGFwcGVuZFRvOiBkb2N1bWVudC5ib2R5LFxuICAgICAgLi4ub25seVRpcHB5UHJvcHModGhpcy5nbG9iYWxDb25maWcpLFxuICAgICAgLi4ub25seVRpcHB5UHJvcHModGhpcy5wcm9wcyksXG4gICAgICBvbk1vdW50OiBpbnN0YW5jZSA9PiB7XG4gICAgICAgIHRoaXMuaXNWaXNpYmxlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy52aXNpYmxlLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMudXNlSG9zdFdpZHRoICYmIHRoaXMubGlzdGVuVG9Ib3N0UmVzaXplKCk7XG4gICAgICAgIHRoaXMuZ2xvYmFsQ29uZmlnLm9uTW91bnQ/LihpbnN0YW5jZSk7XG4gICAgICB9LFxuICAgICAgb25DcmVhdGU6IGluc3RhbmNlID0+IHtcbiAgICAgICAgdGhpcy5jbGFzc05hbWUgJiYgaW5zdGFuY2UucG9wcGVyLmNsYXNzTGlzdC5hZGQodGhpcy5jbGFzc05hbWUpO1xuICAgICAgICB0aGlzLmdsb2JhbENvbmZpZy5vbkNyZWF0ZT8uKGluc3RhbmNlKTtcbiAgICAgIH0sXG4gICAgICBvblNob3c6IGluc3RhbmNlID0+IHtcbiAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB0aGlzLmluc3RhbmNlLnNldENvbnRlbnQodGhpcy5yZXNvbHZlQ29udGVudCgpKSk7XG4gICAgICAgIGlmICh0aGlzLnVzZUhvc3RXaWR0aCkge1xuICAgICAgICAgIGluc3RhbmNlLnBvcHBlci5zdHlsZS53aWR0aCA9IHRoaXMuaG9zdFdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZ2xvYmFsQ29uZmlnLm9uU2hvdz8uKGluc3RhbmNlKTtcbiAgICAgIH0sXG4gICAgICBvbkhpZGRlbjogaW5zdGFuY2UgPT4ge1xuICAgICAgICB0aGlzLmRlc3Ryb3lWaWV3KCk7XG4gICAgICAgIHRoaXMuaXNWaXNpYmxlID0gZmFsc2U7XG4gICAgICAgIHRoaXMudmlzaWJsZS5uZXh0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5nbG9iYWxDb25maWcub25IaWRkZW4/LihpbnN0YW5jZSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnNldFN0YXR1cygpO1xuICAgIHRoaXMuc2V0UHJvcHModGhpcy5wcm9wcyk7XG5cbiAgICB0aGlzLnZhcmlhdGlvbiA9PT0gXCJjb250ZXh0TWVudVwiICYmIHRoaXMuaGFuZGxlQ29udGV4dE1lbnUoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZUNvbnRlbnQoKSB7XG4gICAgaWYgKCF0aGlzLnZpZXdPcHRpb25zJCAmJiAhaXNTdHJpbmcodGhpcy5jb250ZW50KSkge1xuICAgICAgaWYgKGlzQ29tcG9uZW50KHRoaXMuY29udGVudCkpIHtcbiAgICAgICAgdGhpcy52aWV3T3B0aW9ucyQgPSB7XG4gICAgICAgICAgaW5qZWN0b3I6IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFRJUFBZX1JFRiwgdXNlVmFsdWU6IHRoaXMuaW5zdGFuY2UgfV0sXG4gICAgICAgICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3JcbiAgICAgICAgICB9KVxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIGlmIChpc1RlbXBsYXRlUmVmKHRoaXMuY29udGVudCkpIHtcbiAgICAgICAgdGhpcy52aWV3T3B0aW9ucyQgPSB7XG4gICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgJGltcGxpY2l0OiB0aGlzLmhpZGUuYmluZCh0aGlzKSxcbiAgICAgICAgICAgIGRhdGE6IHRoaXMuZGF0YVxuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnZpZXdSZWYgPSB0aGlzLnZpZXdTZXJ2aWNlLmNyZWF0ZVZpZXcodGhpcy5jb250ZW50LCB7XG4gICAgICB2Y3I6IHRoaXMudmNyLFxuICAgICAgLi4udGhpcy52aWV3T3B0aW9ucyRcbiAgICB9KTtcblxuICAgIGxldCBjb250ZW50ID0gdGhpcy52aWV3UmVmLmdldEVsZW1lbnQoKTtcblxuICAgIGlmIChpc1N0cmluZyhjb250ZW50KSAmJiB0aGlzLmdsb2JhbENvbmZpZy5iZWZvcmVSZW5kZXIpIHtcbiAgICAgIGNvbnRlbnQgPSB0aGlzLmdsb2JhbENvbmZpZy5iZWZvcmVSZW5kZXIoY29udGVudCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbnRlbnQ7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUNvbnRleHRNZW51KCkge1xuICAgIGZyb21FdmVudCh0aGlzLmhvc3QubmF0aXZlRWxlbWVudCwgXCJjb250ZXh0bWVudVwiKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgdGhpcy5pbnN0YW5jZS5zZXRQcm9wcyh7XG4gICAgICAgICAgZ2V0UmVmZXJlbmNlQ2xpZW50UmVjdDogKCkgPT4gKHtcbiAgICAgICAgICAgIHdpZHRoOiAwLFxuICAgICAgICAgICAgaGVpZ2h0OiAwLFxuICAgICAgICAgICAgdG9wOiBldmVudC5jbGllbnRZLFxuICAgICAgICAgICAgYm90dG9tOiBldmVudC5jbGllbnRZLFxuICAgICAgICAgICAgbGVmdDogZXZlbnQuY2xpZW50WCxcbiAgICAgICAgICAgIHJpZ2h0OiBldmVudC5jbGllbnRYXG4gICAgICAgICAgfSlcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5pbnN0YW5jZS5zaG93KCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tPdmVyZmxvdyhpc0VsZW1lbnRPdmVyZmxvdzogYm9vbGVhbikge1xuICAgIGlmIChpc0VsZW1lbnRPdmVyZmxvdykge1xuICAgICAgaWYgKCF0aGlzLmluc3RhbmNlKSB7XG4gICAgICAgIHRoaXMuY3JlYXRlSW5zdGFuY2UoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaW5zdGFuY2UuZW5hYmxlKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5zdGFuY2U/LmRpc2FibGUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblRvSG9zdFJlc2l6ZSgpIHtcbiAgICBkaW1lbnNpb25zQ2hhbmdlcyh0aGlzLmhvc3QubmF0aXZlRWxlbWVudClcbiAgICAgIC5waXBlKHRha2VVbnRpbChtZXJnZSh0aGlzLmRlc3Ryb3llZCwgdGhpcy52aXNpYmxlKSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5wb3BwZXIuc3R5bGUud2lkdGggPSB0aGlzLmhvc3RXaWR0aDtcbiAgICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzQ2hhbmdlZDxUPihrZXk6IGtleW9mIFQsIGNoYW5nZXM6IFQpIHtcbiAgcmV0dXJuIGtleSBpbiBjaGFuZ2VzO1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwcHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5nbmVhdC9oZWxpcG9wcGVyLyIsInNvdXJjZXMiOlsibGliL3RpcHB5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixRQUFRLEVBQ1IsS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sV0FBVyxFQUNYLGdCQUFnQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQUssTUFBTSxVQUFVLENBQUM7QUFDN0IsT0FBTyxFQUFhLFlBQVksRUFBRSxTQUFTLEVBQTBDLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyRixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHckYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFNbkQ7SUFxQ0Usd0JBQytCLFVBQWtCLEVBQ2pCLFlBQXlCLEVBQy9DLFFBQWtCLEVBQ2xCLFdBQXdCLEVBQ3hCLEdBQXFCLEVBQ3JCLElBQVksRUFDWixJQUFnQjtRQU5LLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDakIsaUJBQVksR0FBWixZQUFZLENBQWE7UUFDL0MsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixRQUFHLEdBQUgsR0FBRyxDQUFrQjtRQUNyQixTQUFJ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QXNCO0lBQ2Q7UUFBZixLQUFLLENBQUMsT0FBTyxDQUFDO21EQUFrQjtJQUV2QjtRQUFULE1BQU0sRUFBRTttREFBdUM7SUF6QnJDLGNBQWM7UUFKMUIsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLFNBQVM7WUFDbkIsUUFBUSxFQUFFLE9BQU87U0FDbEIsQ0FBQztRQXVDRyxXQUFBLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUNuQixXQUFBLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtPQXZDWixjQUFjLENBZ1IxQjtJQUFELHFCQUFDO0NBQUEsQUFoUkQsSUFnUkM7U0FoUlksY0FBYztBQWtSM0IsU0FBUyxTQUFTLENBQUksR0FBWSxFQUFFLE9BQVU7SUFDNUMsT0FBTyxHQUFHLElBQUksT0FBTyxDQUFDO0FBQ3hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0LFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT3V0cHV0LFxuICBQTEFURk9STV9JRCxcbiAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgdGlwcHkgZnJvbSBcInRpcHB5LmpzXCI7XG5pbXBvcnQgeyBOZ0NoYW5nZXMsIFRJUFBZX0NPTkZJRywgVElQUFlfUkVGLCBUaXBweUNvbmZpZywgVGlwcHlJbnN0YW5jZSwgVGlwcHlQcm9wcyB9IGZyb20gXCIuL3RpcHB5LnR5cGVzXCI7XG5pbXBvcnQgeyBkaW1lbnNpb25zQ2hhbmdlcywgaW5WaWV3LCBvbmx5VGlwcHlQcm9wcywgb3ZlcmZsb3dDaGFuZ2VzIH0gZnJvbSBcIi4vdXRpbHNcIjtcbmltcG9ydCB7IGZyb21FdmVudCwgbWVyZ2UsIFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IGlzQ29tcG9uZW50LCBpc1N0cmluZywgaXNUZW1wbGF0ZVJlZiwgVmlld1NlcnZpY2UgfSBmcm9tIFwiQG5nbmVhdC9vdmVydmlld1wiO1xuaW1wb3J0IHsgVmlld09wdGlvbnMsIFZpZXdSZWYgfSBmcm9tIFwiQG5nbmVhdC9vdmVydmlld1wiO1xuaW1wb3J0IHsgQ29udGVudCB9IGZyb20gXCJAbmduZWF0L292ZXJ2aWV3XCI7XG5pbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW3RpcHB5XVwiLFxuICBleHBvcnRBczogXCJ0aXBweVwiXG59KVxuZXhwb3J0IGNsYXNzIFRpcHB5RGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGFwcGVuZFRvOiBUaXBweVByb3BzW1wiYXBwZW5kVG9cIl07XG4gIEBJbnB1dCgpIGRlbGF5OiBUaXBweVByb3BzW1wiZGVsYXlcIl07XG4gIEBJbnB1dCgpIGR1cmF0aW9uOiBUaXBweVByb3BzW1wiZHVyYXRpb25cIl07XG4gIEBJbnB1dCgpIGhpZGVPbkNsaWNrOiBUaXBweVByb3BzW1wiaGlkZU9uQ2xpY2tcIl07XG4gIEBJbnB1dCgpIGludGVyYWN0aXZlOiBUaXBweVByb3BzW1wiaW50ZXJhY3RpdmVcIl07XG4gIEBJbnB1dCgpIGludGVyYWN0aXZlQm9yZGVyOiBUaXBweVByb3BzW1wiaW50ZXJhY3RpdmVCb3JkZXJcIl07XG4gIEBJbnB1dCgpIG1heFdpZHRoOiBUaXBweVByb3BzW1wibWF4V2lkdGhcIl07XG4gIEBJbnB1dCgpIG9mZnNldDogVGlwcHlQcm9wc1tcIm9mZnNldFwiXTtcbiAgQElucHV0KCkgcGxhY2VtZW50OiBUaXBweVByb3BzW1wicGxhY2VtZW50XCJdO1xuICBASW5wdXQoKSBwb3BwZXJPcHRpb25zOiBUaXBweVByb3BzW1wicG9wcGVyT3B0aW9uc1wiXTtcbiAgQElucHV0KCkgc2hvd09uQ3JlYXRlOiBUaXBweVByb3BzW1wic2hvd09uQ3JlYXRlXCJdO1xuICBASW5wdXQoKSB0cmlnZ2VyOiBUaXBweVByb3BzW1widHJpZ2dlclwiXTtcbiAgQElucHV0KCkgdHJpZ2dlclRhcmdldDogVGlwcHlQcm9wc1tcInRyaWdnZXJUYXJnZXRcIl07XG4gIEBJbnB1dCgpIHpJbmRleDogVGlwcHlQcm9wc1tcInpJbmRleFwiXTtcblxuICBASW5wdXQoKSBsYXp5OiBib29sZWFuO1xuICBASW5wdXQoKSB2YXJpYXRpb246IHN0cmluZztcbiAgQElucHV0KCkgaXNFbmFibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBjbGFzc05hbWU6IHN0cmluZztcbiAgQElucHV0KCkgb25seVRleHRPdmVyZmxvdyA9IGZhbHNlO1xuICBASW5wdXQoKSBkYXRhOiBhbnk7XG4gIEBJbnB1dCgpIHVzZUhvc3RXaWR0aCA9IGZhbHNlO1xuICBASW5wdXQoXCJ0aXBweVwiKSBjb250ZW50OiBDb250ZW50O1xuXG4gIEBPdXRwdXQoKSB2aXNpYmxlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBwdWJsaWMgaXNWaXNpYmxlID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBpbnN0YW5jZTogVGlwcHlJbnN0YW5jZTtcbiAgcHJpdmF0ZSB2aWV3OiBDb250ZW50O1xuICBwcml2YXRlIHZpZXdSZWY6IFZpZXdSZWY7XG4gIHByaXZhdGUgZGVzdHJveWVkID0gbmV3IFN1YmplY3QoKTtcbiAgcHJpdmF0ZSBwcm9wczogUGFydGlhbDxUaXBweUNvbmZpZz47XG4gIHByaXZhdGUgZW5hYmxlZCA9IHRydWU7XG4gIHByaXZhdGUgdmFyaWF0aW9uRGVmaW5lZCA9IGZhbHNlO1xuICBwcml2YXRlIHZpZXdPcHRpb25zJDogVmlld09wdGlvbnM7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBzdHJpbmcsXG4gICAgQEluamVjdChUSVBQWV9DT05GSUcpIHByaXZhdGUgZ2xvYmFsQ29uZmlnOiBUaXBweUNvbmZpZyxcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIHZpZXdTZXJ2aWNlOiBWaWV3U2VydmljZSxcbiAgICBwcml2YXRlIHZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIHpvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIGhvc3Q6IEVsZW1lbnRSZWZcbiAgKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IE5nQ2hhbmdlczxUaXBweURpcmVjdGl2ZT4pIHtcbiAgICBpZiAoaXNQbGF0Zm9ybVNlcnZlcih0aGlzLnBsYXRmb3JtSWQpKSByZXR1cm47XG5cbiAgICBpZiAoY2hhbmdlcy5jb250ZW50KSB7XG4gICAgICB0aGlzLnZpZXcgPSBjaGFuZ2VzLmNvbnRlbnQuY3VycmVudFZhbHVlO1xuICAgIH1cblxuICAgIGxldCBwcm9wczogUGFydGlhbDxUaXBweUNvbmZpZz4gPSBPYmplY3Qua2V5cyhjaGFuZ2VzKS5yZWR1Y2UoKGFjYywgY2hhbmdlKSA9PiB7XG4gICAgICBhY2NbY2hhbmdlXSA9IGNoYW5nZXNbY2hhbmdlXS5jdXJyZW50VmFsdWU7XG5cbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30pO1xuXG4gICAgbGV0IHZhcmlhdGlvbjogc3RyaW5nO1xuXG4gICAgaWYgKGlzQ2hhbmdlZDxOZ0NoYW5nZXM8VGlwcHlEaXJlY3RpdmU+PihcInZhcmlhdGlvblwiLCBjaGFuZ2VzKSkge1xuICAgICAgdmFyaWF0aW9uID0gY2hhbmdlcy52YXJpYXRpb24uY3VycmVudFZhbHVlO1xuICAgICAgdGhpcy52YXJpYXRpb25EZWZpbmVkID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKCF0aGlzLnZhcmlhdGlvbkRlZmluZWQpIHtcbiAgICAgIHZhcmlhdGlvbiA9IHRoaXMuZ2xvYmFsQ29uZmlnLmRlZmF1bHRWYXJpYXRpb247XG4gICAgICB0aGlzLnZhcmlhdGlvbkRlZmluZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICh2YXJpYXRpb24pIHtcbiAgICAgIHByb3BzID0ge1xuICAgICAgICAuLi50aGlzLmdsb2JhbENvbmZpZy52YXJpYXRpb25zW3ZhcmlhdGlvbl0sXG4gICAgICAgIC4uLnByb3BzXG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChpc0NoYW5nZWQ8TmdDaGFuZ2VzPFRpcHB5RGlyZWN0aXZlPj4oXCJpc0VuYWJsZWRcIiwgY2hhbmdlcykpIHtcbiAgICAgIHRoaXMuZW5hYmxlZCA9IGNoYW5nZXMuaXNFbmFibGVkLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMuc2V0U3RhdHVzKCk7XG4gICAgfVxuXG4gICAgdGhpcy5zZXRQcm9wcyhwcm9wcyk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy51c2VIb3N0V2lkdGgpIHtcbiAgICAgIHRoaXMucHJvcHMubWF4V2lkdGggPSB0aGlzLmhvc3RXaWR0aDtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMubGF6eSkge1xuICAgICAgaWYgKHRoaXMub25seVRleHRPdmVyZmxvdykge1xuICAgICAgICBpblZpZXcodGhpcy5ob3N0KVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IG92ZXJmbG93Q2hhbmdlcyh0aGlzLmhvc3QpKSxcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZClcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZShpc0VsZW1lbnRPdmVyZmxvdyA9PiB7XG4gICAgICAgICAgICB0aGlzLmNoZWNrT3ZlcmZsb3coaXNFbGVtZW50T3ZlcmZsb3cpO1xuICAgICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaW5WaWV3KHRoaXMuaG9zdClcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVJbnN0YW5jZSgpO1xuICAgICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy5vbmx5VGV4dE92ZXJmbG93KSB7XG4gICAgICBvdmVyZmxvd0NoYW5nZXModGhpcy5ob3N0KVxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAuc3Vic2NyaWJlKGlzRWxlbWVudE92ZXJmbG93ID0+IHtcbiAgICAgICAgICB0aGlzLmNoZWNrT3ZlcmZsb3coaXNFbGVtZW50T3ZlcmZsb3cpO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jcmVhdGVJbnN0YW5jZSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICB0aGlzLmluc3RhbmNlPy5kZXN0cm95KCk7XG4gICAgdGhpcy5kZXN0cm95VmlldygpO1xuICB9XG5cbiAgZGVzdHJveVZpZXcoKSB7XG4gICAgdGhpcy52aWV3UmVmPy5kZXN0cm95KCk7XG4gICAgdGhpcy52aWV3UmVmID0gbnVsbDtcbiAgfVxuXG4gIHNob3coKSB7XG4gICAgdGhpcy5pbnN0YW5jZT8uc2hvdygpO1xuICB9XG5cbiAgaGlkZSgpIHtcbiAgICB0aGlzLmluc3RhbmNlPy5oaWRlKCk7XG4gIH1cblxuICBlbmFibGUoKSB7XG4gICAgdGhpcy5pbnN0YW5jZT8uZW5hYmxlKCk7XG4gIH1cblxuICBkaXNhYmxlKCkge1xuICAgIHRoaXMuaW5zdGFuY2U/LmRpc2FibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UHJvcHMocHJvcHM6IFBhcnRpYWw8VGlwcHlDb25maWc+KSB7XG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICAgIHRoaXMuaW5zdGFuY2U/LnNldFByb3BzKG9ubHlUaXBweVByb3BzKHByb3BzKSk7XG4gIH1cblxuICBwcml2YXRlIHNldFN0YXR1cygpIHtcbiAgICB0aGlzLmVuYWJsZWQgPyB0aGlzLmluc3RhbmNlPy5lbmFibGUoKSA6IHRoaXMuaW5zdGFuY2U/LmRpc2FibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGhvc3RXaWR0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmhvc3QubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aH1weGA7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUluc3RhbmNlKCkge1xuICAgIHRoaXMuaW5zdGFuY2UgPSB0aXBweSh0aGlzLmhvc3QubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCwge1xuICAgICAgYWxsb3dIVE1MOiB0cnVlLFxuICAgICAgYXBwZW5kVG86IGRvY3VtZW50LmJvZHksXG4gICAgICAuLi5vbmx5VGlwcHlQcm9wcyh0aGlzLmdsb2JhbENvbmZpZyksXG4gICAgICAuLi5vbmx5VGlwcHlQcm9wcyh0aGlzLnByb3BzKSxcbiAgICAgIG9uTW91bnQ6IGluc3RhbmNlID0+IHtcbiAgICAgICAgdGhpcy5pc1Zpc2libGUgPSB0cnVlO1xuICAgICAgICB0aGlzLnZpc2libGUubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy51c2VIb3N0V2lkdGggJiYgdGhpcy5saXN0ZW5Ub0hvc3RSZXNpemUoKTtcbiAgICAgICAgdGhpcy5nbG9iYWxDb25maWcub25Nb3VudD8uKGluc3RhbmNlKTtcbiAgICAgIH0sXG4gICAgICBvbkNyZWF0ZTogaW5zdGFuY2UgPT4ge1xuICAgICAgICB0aGlzLmNsYXNzTmFtZSAmJiBpbnN0YW5jZS5wb3BwZXIuY2xhc3NMaXN0LmFkZCh0aGlzLmNsYXNzTmFtZSk7XG4gICAgICAgIHRoaXMuZ2xvYmFsQ29uZmlnLm9uQ3JlYXRlPy4oaW5zdGFuY2UpO1xuICAgICAgfSxcbiAgICAgIG9uU2hvdzogaW5zdGFuY2UgPT4ge1xuICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHRoaXMuaW5zdGFuY2Uuc2V0Q29udGVudCh0aGlzLnJlc29sdmVDb250ZW50KCkpKTtcbiAgICAgICAgaWYgKHRoaXMudXNlSG9zdFdpZHRoKSB7XG4gICAgICAgICAgaW5zdGFuY2UucG9wcGVyLnN0eWxlLndpZHRoID0gdGhpcy5ob3N0V2lkdGg7XG4gICAgICAgICAgaW5zdGFuY2UucG9wcGVyLnN0eWxlLm1heFdpZHRoID0gdGhpcy5ob3N0V2lkdGg7XG4gICAgICAgICAgKGluc3RhbmNlLnBvcHBlci5maXJzdEVsZW1lbnRDaGlsZCBhcyBIVE1MRWxlbWVudCkuc3R5bGUubWF4V2lkdGggPSB0aGlzLmhvc3RXaWR0aDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmdsb2JhbENvbmZpZy5vblNob3c/LihpbnN0YW5jZSk7XG4gICAgICB9LFxuICAgICAgb25IaWRkZW46IGluc3RhbmNlID0+IHtcbiAgICAgICAgdGhpcy5kZXN0cm95VmlldygpO1xuICAgICAgICB0aGlzLmlzVmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnZpc2libGUubmV4dChmYWxzZSk7XG4gICAgICAgIHRoaXMuZ2xvYmFsQ29uZmlnLm9uSGlkZGVuPy4oaW5zdGFuY2UpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5zZXRTdGF0dXMoKTtcbiAgICB0aGlzLnNldFByb3BzKHRoaXMucHJvcHMpO1xuXG4gICAgdGhpcy52YXJpYXRpb24gPT09IFwiY29udGV4dE1lbnVcIiAmJiB0aGlzLmhhbmRsZUNvbnRleHRNZW51KCk7XG4gIH1cblxuICBwcml2YXRlIHJlc29sdmVDb250ZW50KCkge1xuICAgIGlmICghdGhpcy52aWV3T3B0aW9ucyQgJiYgIWlzU3RyaW5nKHRoaXMuY29udGVudCkpIHtcbiAgICAgIGlmIChpc0NvbXBvbmVudCh0aGlzLmNvbnRlbnQpKSB7XG4gICAgICAgIHRoaXMudmlld09wdGlvbnMkID0ge1xuICAgICAgICAgIGluamVjdG9yOiBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBUSVBQWV9SRUYsIHVzZVZhbHVlOiB0aGlzLmluc3RhbmNlIH1dLFxuICAgICAgICAgICAgcGFyZW50OiB0aGlzLmluamVjdG9yXG4gICAgICAgICAgfSlcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSBpZiAoaXNUZW1wbGF0ZVJlZih0aGlzLmNvbnRlbnQpKSB7XG4gICAgICAgIHRoaXMudmlld09wdGlvbnMkID0ge1xuICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICRpbXBsaWNpdDogdGhpcy5oaWRlLmJpbmQodGhpcyksXG4gICAgICAgICAgICBkYXRhOiB0aGlzLmRhdGFcbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy52aWV3UmVmID0gdGhpcy52aWV3U2VydmljZS5jcmVhdGVWaWV3KHRoaXMuY29udGVudCwge1xuICAgICAgdmNyOiB0aGlzLnZjcixcbiAgICAgIC4uLnRoaXMudmlld09wdGlvbnMkXG4gICAgfSk7XG5cbiAgICBsZXQgY29udGVudCA9IHRoaXMudmlld1JlZi5nZXRFbGVtZW50KCk7XG5cbiAgICBpZiAoaXNTdHJpbmcoY29udGVudCkgJiYgdGhpcy5nbG9iYWxDb25maWcuYmVmb3JlUmVuZGVyKSB7XG4gICAgICBjb250ZW50ID0gdGhpcy5nbG9iYWxDb25maWcuYmVmb3JlUmVuZGVyKGNvbnRlbnQpO1xuICAgIH1cblxuICAgIHJldHVybiBjb250ZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVDb250ZXh0TWVudSgpIHtcbiAgICBmcm9tRXZlbnQodGhpcy5ob3N0Lm5hdGl2ZUVsZW1lbnQsIFwiY29udGV4dG1lbnVcIilcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpXG4gICAgICAuc3Vic2NyaWJlKChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIHRoaXMuaW5zdGFuY2Uuc2V0UHJvcHMoe1xuICAgICAgICAgIGdldFJlZmVyZW5jZUNsaWVudFJlY3Q6ICgpID0+ICh7XG4gICAgICAgICAgICB3aWR0aDogMCxcbiAgICAgICAgICAgIGhlaWdodDogMCxcbiAgICAgICAgICAgIHRvcDogZXZlbnQuY2xpZW50WSxcbiAgICAgICAgICAgIGJvdHRvbTogZXZlbnQuY2xpZW50WSxcbiAgICAgICAgICAgIGxlZnQ6IGV2ZW50LmNsaWVudFgsXG4gICAgICAgICAgICByaWdodDogZXZlbnQuY2xpZW50WFxuICAgICAgICAgIH0pXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaW5zdGFuY2Uuc2hvdygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrT3ZlcmZsb3coaXNFbGVtZW50T3ZlcmZsb3c6IGJvb2xlYW4pIHtcbiAgICBpZiAoaXNFbGVtZW50T3ZlcmZsb3cpIHtcbiAgICAgIGlmICghdGhpcy5pbnN0YW5jZSkge1xuICAgICAgICB0aGlzLmNyZWF0ZUluc3RhbmNlKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmluc3RhbmNlLmVuYWJsZSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmluc3RhbmNlPy5kaXNhYmxlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Ub0hvc3RSZXNpemUoKSB7XG4gICAgZGltZW5zaW9uc0NoYW5nZXModGhpcy5ob3N0Lm5hdGl2ZUVsZW1lbnQpXG4gICAgICAucGlwZSh0YWtlVW50aWwobWVyZ2UodGhpcy5kZXN0cm95ZWQsIHRoaXMudmlzaWJsZSkpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuaW5zdGFuY2UucG9wcGVyLnN0eWxlLndpZHRoID0gdGhpcy5ob3N0V2lkdGg7XG4gICAgICB9KTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpc0NoYW5nZWQ8VD4oa2V5OiBrZXlvZiBULCBjaGFuZ2VzOiBUKSB7XG4gIHJldHVybiBrZXkgaW4gY2hhbmdlcztcbn1cbiJdfQ== |
@@ -232,2 +232,4 @@ import { __decorate, __param } from 'tslib'; | ||
instance.popper.style.width = this.hostWidth; | ||
instance.popper.style.maxWidth = this.hostWidth; | ||
instance.popper.firstElementChild.style.maxWidth = this.hostWidth; | ||
} | ||
@@ -234,0 +236,0 @@ (_b = (_a = this.globalConfig).onShow) === null || _b === void 0 ? void 0 : _b.call(_a, instance); |
@@ -239,2 +239,4 @@ import { __assign, __decorate, __param } from 'tslib'; | ||
instance.popper.style.width = _this.hostWidth; | ||
instance.popper.style.maxWidth = _this.hostWidth; | ||
instance.popper.firstElementChild.style.maxWidth = _this.hostWidth; | ||
} | ||
@@ -241,0 +243,0 @@ (_b = (_a = _this.globalConfig).onShow) === null || _b === void 0 ? void 0 : _b.call(_a, instance); |
{ | ||
"name": "@ngneat/helipopper", | ||
"version": "3.1.0", | ||
"version": "3.1.1", | ||
"description": "A Powerful Tooltip and Popover for Angular Applications", | ||
@@ -5,0 +5,0 @@ "schematics": "./schematics/collection.json", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
475441
4693