@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.
Files changed (61) hide show
  1. package/bundles/taiga-ui-core-components-alert.umd.js +3 -1
  2. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-components-alert.umd.min.js.map +1 -1
  4. package/bundles/taiga-ui-core-components-data-list.umd.js +1 -1
  5. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  6. package/bundles/taiga-ui-core-components-data-list.umd.min.js +1 -1
  7. package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
  8. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +2 -2
  9. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  10. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js +1 -1
  11. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  12. package/bundles/taiga-ui-core-constants.umd.js +1 -1
  13. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  14. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  15. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  16. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  17. package/constants/version.d.ts +1 -1
  18. package/esm2015/components/alert/alert.component.js +4 -2
  19. package/esm2015/components/data-list/data-list-dropdown-manager.directive.js +2 -2
  20. package/esm2015/components/scroll-controls/scrollbar.directive.js +3 -3
  21. package/esm2015/constants/version.js +2 -2
  22. package/esm5/components/alert/alert.component.js +4 -2
  23. package/esm5/components/data-list/data-list-dropdown-manager.directive.js +2 -2
  24. package/esm5/components/scroll-controls/scrollbar.directive.js +3 -3
  25. package/esm5/constants/version.js +2 -2
  26. package/fesm2015/taiga-ui-core-components-alert.js +3 -1
  27. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  28. package/fesm2015/taiga-ui-core-components-data-list.js +1 -1
  29. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  30. package/fesm2015/taiga-ui-core-components-scroll-controls.js +2 -2
  31. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  32. package/fesm2015/taiga-ui-core-constants.js +1 -1
  33. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  34. package/fesm5/taiga-ui-core-components-alert.js +3 -1
  35. package/fesm5/taiga-ui-core-components-alert.js.map +1 -1
  36. package/fesm5/taiga-ui-core-components-data-list.js +1 -1
  37. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  38. package/fesm5/taiga-ui-core-components-scroll-controls.js +2 -2
  39. package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
  40. package/fesm5/taiga-ui-core-constants.js +1 -1
  41. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  42. package/package.json +7 -7
  43. package/styles/markup/tui-group.less +1 -1
  44. package/styles/taiga-ui-global-old.less +18 -18
  45. package/styles/taiga-ui-global.less +18 -18
  46. package/styles/taiga-ui-local-old.less +5 -5
  47. package/styles/taiga-ui-local.less +7 -7
  48. package/styles/taiga-ui-local.scss +7 -7
  49. package/styles/taiga-ui-stackblitz.less +7 -0
  50. package/styles/taiga-ui-theme.less +4 -4
  51. package/styles/theme/dialog.less +1 -1
  52. package/styles/theme/wrapper/accent.less +1 -1
  53. package/styles/theme/wrapper/base.less +1 -1
  54. package/styles/theme/wrapper/icon.less +1 -1
  55. package/styles/theme/wrapper/outline.less +1 -1
  56. package/styles/theme/wrapper/primary.less +1 -1
  57. package/styles/theme/wrapper/secondary.less +1 -1
  58. package/styles/theme/wrapper/table.less +1 -1
  59. package/styles/theme/wrapper/textfield.less +1 -1
  60. package/styles/theme/wrapper/whiteblock.less +1 -1
  61. package/styles/theme/wrapper.less +10 -10
@@ -1 +1 @@
1
- {"version":3,"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"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__param","paramIndex","decorator","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","TuiScrollControlsComponent","options","ngZone","documentRef","scrollRef","animationFrame$","mode$","_this","refresh$","pipe","throttleTime","map","scrollbars","startWith","distinctUntilChanged","a","b","tuiZoneOptimized","animation","_a","clientHeight","scrollHeight","clientWidth","scrollWidth","Math","ceil","Inject","args","TUI_ANIMATION_OPTIONS","NgZone","type","Document","DOCUMENT","ElementRef","Optional","TUI_SCROLL_REF","Observable","ANIMATION_FRAME","TUI_MODE","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","animations","tuiFadeIn","providers","MODE_PROVIDER","host","($.data-mode.attr)","TuiScrollbarDirective","renderer","destroy$","wrapper","container","windowRef","elementRef","viewportScroller","tuiScrollbar","nativeElement","mousedown$","typedFromEvent","mousemove$","mouseup$","mousedownWrapper$","merge","preventDefault","event","getScrolled","stopPropagation","switchMap","_b","clientY","top","height","rect","getBoundingClientRect","vertical","horizontal","clientX","left","width","getOffsetHorizontal","takeUntil","tuiZonefree","subscribe","scrollTop","scrollLeft","_c","getScrollPosition","x","y","setProperty","scrollToPosition","fromEvent","POLLING_TIME","setStyle","thumb","view","computedContainer","compensation","scrolled","scrollingElement","offsetVertical","offsetHorizontal","offsetHeight","offsetWidth","Renderer2","TuiDestroyService","TUI_ELEMENT_REF","Window","WINDOW","ViewportScroller","Input","Directive","TuiScrollbarWrapperDirective","provide","useExisting","TuiScrollControlsModule","NgModule","imports","CommonModule","TuiLetModule","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 {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"]}
1
+ {"version":3,"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"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__param","paramIndex","decorator","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","TuiScrollControlsComponent","options","ngZone","documentRef","scrollRef","animationFrame$","mode$","_this","refresh$","pipe","throttleTime","map","scrollbars","startWith","distinctUntilChanged","a","b","tuiZoneOptimized","animation","_a","clientHeight","scrollHeight","clientWidth","scrollWidth","Math","ceil","Inject","args","TUI_ANIMATION_OPTIONS","NgZone","type","Document","DOCUMENT","ElementRef","Optional","TUI_SCROLL_REF","Observable","ANIMATION_FRAME","TUI_MODE","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","animations","tuiFadeIn","providers","MODE_PROVIDER","host","($.data-mode.attr)","TuiScrollbarDirective","renderer","destroy$","wrapper","container","windowRef","elementRef","viewportScroller","tuiScrollbar","nativeElement","mousedown$","typedFromEvent","mousemove$","mouseup$","mousedownWrapper$","merge","preventDefault","event","getScrolled","stopPropagation","switchMap","_b","clientY","top","height","rect","getBoundingClientRect","vertical","horizontal","clientX","left","width","getOffsetHorizontal","takeUntil","tuiZonefree","subscribe","scrollTop","scrollLeft","_c","getScrollPosition","x","y","setProperty","scrollToPosition","fromEvent","POLLING_TIME","setStyle","thumb","view","computedContainer","compensation","scrolled","scrollingElement","offsetVertical","offsetHorizontal","offsetHeight","offsetWidth","Renderer2","TuiDestroyService","TUI_ELEMENT_REF","Window","WINDOW","ViewportScroller","Input","Directive","TuiScrollbarWrapperDirective","provide","useExisting","TuiScrollControlsModule","NgModule","imports","CommonModule","TuiLetModule","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 {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"]}
@@ -70,7 +70,7 @@
70
70
  var TUI_LATIN_REGEXP = /[A-z]/;
71
71
  var TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;
72
72
 
73
- var VERSION = '2.41.1';
73
+ var VERSION = '2.42.0';
74
74
 
75
75
  exports.DEFAULT_ICONS_PATH = DEFAULT_ICONS_PATH;
76
76
  exports.DEFAULT_MARGIN = DEFAULT_MARGIN;
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-constants.umd.js","sources":["ng://@taiga-ui/core/constants/absolute-box-sizes.ts","ng://@taiga-ui/core/constants/decimal-symbols.ts","ng://@taiga-ui/core/constants/default-icons-path.ts","ng://@taiga-ui/core/constants/default-marker-handler.ts","ng://@taiga-ui/core/constants/editing-keys.ts","ng://@taiga-ui/core/constants/events.ts","ng://@taiga-ui/core/constants/mask-caret-trap.ts","ng://@taiga-ui/core/constants/media.ts","ng://@taiga-ui/core/constants/regexp.ts","ng://@taiga-ui/core/constants/version.ts"],"sourcesContent":["export const DEFAULT_MARGIN = 4;\nexport const DEFAULT_MIN_HEIGHT = 80;\nexport const DEFAULT_MAX_HEIGHT = 400;\nexport const DEFAULT_MAX_WIDTH = 600;\n","export const TUI_DECIMAL_SYMBOLS: readonly string[] = [',', '.'];\n","import {TuiStringHandler} from '@taiga-ui/cdk';\n\nexport const DEFAULT_ICONS_PATH: TuiStringHandler<string> = name =>\n name.includes('.svg#') ? name : `#${name}`;\n","import {EMPTY_ARRAY} from '@taiga-ui/cdk';\nimport {TuiMarkerHandler} from '@taiga-ui/core/types';\n\nexport const TUI_DEFAULT_MARKER_HANDLER: TuiMarkerHandler = () => EMPTY_ARRAY;\n","export const tuiEditingKeys: readonly string[] = [\n 'Spacebar',\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Left',\n 'Right',\n 'End',\n 'Home',\n];\n","/**\n * An event indicating that async data for expand has finished loading.\n * Dispatch to finish loading states for {@link TuiExpandComponent}.\n */\nexport const TUI_EXPAND_LOADED = 'tui-expand-loaded';\n\n/**\n * An event for scrolling an element into view within {@link TuiScrollbarComponent}.\n */\nexport const TUI_SCROLL_INTO_VIEW = 'tui-scroll-into-view';\n\n/**\n * An event to notify {@link TuiScrollbarComponent} that\n * it should control a nested element.\n */\nexport const TUI_SCROLLABLE = 'tui-scrollable';\n\n/**\n * An event indicating and error during icon loading in {@link TuiSvgComponent}.\n */\nexport const TUI_ICON_ERROR = 'tui-icon-error';\n","export const MASK_CARET_TRAP = '[]';\n","/**\n * Media constants are exact the same as css media breakpoints\n * @deprecated use TUI_MEDIA token\n */\nexport const MEDIA = {\n mobile: 320,\n tablet: 600,\n desktopSmall: 1024,\n desktopLarge: 1280,\n};\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\nexport const TUI_LEADING_ZEROES_REGEXP = /^0+/;\nexport const TUI_MASK_SYMBOLS_REGEXP = /[ \\-_()]/g;\nexport const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\\\/#!$%\\\\^&\\\\*;:{}=\\\\-_`~()]$/;\nexport const TUI_LATIN_REGEXP = /[A-z]/;\nexport const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;\n","export const VERSION = '2.41.1';\n"],"names":["EMPTY_ARRAY"],"mappings":";;;;;;QAAa,cAAc,GAAG,EAAE;QACnB,kBAAkB,GAAG,GAAG;QACxB,kBAAkB,GAAG,IAAI;QACzB,iBAAiB,GAAG;;QCHpB,mBAAmB,GAAsB,CAAC,GAAG,EAAE,GAAG;;QCElD,kBAAkB,GAA6B,UAAA,IAAI;QAC5D,OAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,MAAI,IAAM;IAA1C;;QCAS,0BAA0B,GAAqB,cAAM,OAAAA,eAAW;;QCHhE,cAAc,GAAsB;QAC7C,UAAU;QACV,WAAW;QACX,QAAQ;QACR,WAAW;QACX,YAAY;QACZ,MAAM;QACN,OAAO;QACP,KAAK;QACL,MAAM;;;ICTV;;;;QAIa,iBAAiB,GAAG,oBAAoB;IAErD;;;QAGa,oBAAoB,GAAG,uBAAuB;IAE3D;;;;QAIa,cAAc,GAAG,iBAAiB;IAE/C;;;QAGa,cAAc,GAAG;;QCpBjB,eAAe,GAAG;;ICA/B;;;;QAIa,KAAK,GAAG;QACjB,MAAM,EAAE,GAAG;QACX,MAAM,EAAE,GAAG;QACX,YAAY,EAAE,IAAI;QAClB,YAAY,EAAE,IAAI;;;QCRT,gBAAgB,GAAG,KAAK;QACxB,oBAAoB,GAAG,KAAK;QAC5B,qBAAqB,GAAG,OAAO;QAC/B,yBAAyB,GAAG,MAAM;QAClC,uBAAuB,GAAG,YAAY;QACtC,gCAAgC,GAAG,mCAAmC;QACtE,gBAAgB,GAAG,QAAQ;QAC3B,4BAA4B,GAAG;;QCP/B,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-constants.umd.js","sources":["ng://@taiga-ui/core/constants/absolute-box-sizes.ts","ng://@taiga-ui/core/constants/decimal-symbols.ts","ng://@taiga-ui/core/constants/default-icons-path.ts","ng://@taiga-ui/core/constants/default-marker-handler.ts","ng://@taiga-ui/core/constants/editing-keys.ts","ng://@taiga-ui/core/constants/events.ts","ng://@taiga-ui/core/constants/mask-caret-trap.ts","ng://@taiga-ui/core/constants/media.ts","ng://@taiga-ui/core/constants/regexp.ts","ng://@taiga-ui/core/constants/version.ts"],"sourcesContent":["export const DEFAULT_MARGIN = 4;\nexport const DEFAULT_MIN_HEIGHT = 80;\nexport const DEFAULT_MAX_HEIGHT = 400;\nexport const DEFAULT_MAX_WIDTH = 600;\n","export const TUI_DECIMAL_SYMBOLS: readonly string[] = [',', '.'];\n","import {TuiStringHandler} from '@taiga-ui/cdk';\n\nexport const DEFAULT_ICONS_PATH: TuiStringHandler<string> = name =>\n name.includes('.svg#') ? name : `#${name}`;\n","import {EMPTY_ARRAY} from '@taiga-ui/cdk';\nimport {TuiMarkerHandler} from '@taiga-ui/core/types';\n\nexport const TUI_DEFAULT_MARKER_HANDLER: TuiMarkerHandler = () => EMPTY_ARRAY;\n","export const tuiEditingKeys: readonly string[] = [\n 'Spacebar',\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Left',\n 'Right',\n 'End',\n 'Home',\n];\n","/**\n * An event indicating that async data for expand has finished loading.\n * Dispatch to finish loading states for {@link TuiExpandComponent}.\n */\nexport const TUI_EXPAND_LOADED = 'tui-expand-loaded';\n\n/**\n * An event for scrolling an element into view within {@link TuiScrollbarComponent}.\n */\nexport const TUI_SCROLL_INTO_VIEW = 'tui-scroll-into-view';\n\n/**\n * An event to notify {@link TuiScrollbarComponent} that\n * it should control a nested element.\n */\nexport const TUI_SCROLLABLE = 'tui-scrollable';\n\n/**\n * An event indicating and error during icon loading in {@link TuiSvgComponent}.\n */\nexport const TUI_ICON_ERROR = 'tui-icon-error';\n","export const MASK_CARET_TRAP = '[]';\n","/**\n * Media constants are exact the same as css media breakpoints\n * @deprecated use TUI_MEDIA token\n */\nexport const MEDIA = {\n mobile: 320,\n tablet: 600,\n desktopSmall: 1024,\n desktopLarge: 1280,\n};\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\nexport const TUI_LEADING_ZEROES_REGEXP = /^0+/;\nexport const TUI_MASK_SYMBOLS_REGEXP = /[ \\-_()]/g;\nexport const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\\\/#!$%\\\\^&\\\\*;:{}=\\\\-_`~()]$/;\nexport const TUI_LATIN_REGEXP = /[A-z]/;\nexport const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;\n","export const VERSION = '2.42.0';\n"],"names":["EMPTY_ARRAY"],"mappings":";;;;;;QAAa,cAAc,GAAG,EAAE;QACnB,kBAAkB,GAAG,GAAG;QACxB,kBAAkB,GAAG,IAAI;QACzB,iBAAiB,GAAG;;QCHpB,mBAAmB,GAAsB,CAAC,GAAG,EAAE,GAAG;;QCElD,kBAAkB,GAA6B,UAAA,IAAI;QAC5D,OAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,MAAI,IAAM;IAA1C;;QCAS,0BAA0B,GAAqB,cAAM,OAAAA,eAAW;;QCHhE,cAAc,GAAsB;QAC7C,UAAU;QACV,WAAW;QACX,QAAQ;QACR,WAAW;QACX,YAAY;QACZ,MAAM;QACN,OAAO;QACP,KAAK;QACL,MAAM;;;ICTV;;;;QAIa,iBAAiB,GAAG,oBAAoB;IAErD;;;QAGa,oBAAoB,GAAG,uBAAuB;IAE3D;;;;QAIa,cAAc,GAAG,iBAAiB;IAE/C;;;QAGa,cAAc,GAAG;;QCpBjB,eAAe,GAAG;;ICA/B;;;;QAIa,KAAK,GAAG;QACjB,MAAM,EAAE,GAAG;QACX,MAAM,EAAE,GAAG;QACX,YAAY,EAAE,IAAI;QAClB,YAAY,EAAE,IAAI;;;QCRT,gBAAgB,GAAG,KAAK;QACxB,oBAAoB,GAAG,KAAK;QAC5B,qBAAqB,GAAG,OAAO;QAC/B,yBAAyB,GAAG,MAAM;QAClC,uBAAuB,GAAG,YAAY;QACtC,gCAAgC,GAAG,mCAAmC;QACtE,gBAAgB,GAAG,QAAQ;QAC3B,4BAA4B,GAAG;;QCP/B,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- !function(e,_){"object"==typeof exports&&"undefined"!=typeof module?_(exports,require("@taiga-ui/cdk")):"function"==typeof define&&define.amd?define("@taiga-ui/core/constants",["exports","@taiga-ui/cdk"],_):_(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"].core=e["taiga-ui"].core||{},e["taiga-ui"].core.constants={}),e.cdk)}(this,(function(e,_){"use strict";e.DEFAULT_ICONS_PATH=function(e){return e.includes(".svg#")?e:"#"+e},e.DEFAULT_MARGIN=4,e.DEFAULT_MAX_HEIGHT=400,e.DEFAULT_MAX_WIDTH=600,e.DEFAULT_MIN_HEIGHT=80,e.MASK_CARET_TRAP="[]",e.MEDIA={mobile:320,tablet:600,desktopSmall:1024,desktopLarge:1280},e.TUI_DECIMAL_SYMBOLS=[",","."],e.TUI_DEFAULT_MARKER_HANDLER=function(){return _.EMPTY_ARRAY},e.TUI_DIGIT_REGEXP=/\d/,e.TUI_EXPAND_LOADED="tui-expand-loaded",e.TUI_ICON_ERROR="tui-icon-error",e.TUI_LAST_PUNCTUATION_MARK_REGEXP=/[.,\\/#!$%\\^&\\*;:{}=\\-_`~()]$/,e.TUI_LATIN_AND_NUMBERS_REGEXP=/[A-z|0-9]/,e.TUI_LATIN_REGEXP=/[A-z]/,e.TUI_LEADING_ZEROES_REGEXP=/^0+/,e.TUI_MASK_SYMBOLS_REGEXP=/[ \-_()]/g,e.TUI_NON_DIGITS_REGEXP=/\D+/g,e.TUI_NON_DIGIT_REGEXP=/\D/,e.TUI_SCROLLABLE="tui-scrollable",e.TUI_SCROLL_INTO_VIEW="tui-scroll-into-view",e.VERSION="2.41.1",e.tuiEditingKeys=["Spacebar","Backspace","Delete","ArrowLeft","ArrowRight","Left","Right","End","Home"],Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,_){"object"==typeof exports&&"undefined"!=typeof module?_(exports,require("@taiga-ui/cdk")):"function"==typeof define&&define.amd?define("@taiga-ui/core/constants",["exports","@taiga-ui/cdk"],_):_(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"].core=e["taiga-ui"].core||{},e["taiga-ui"].core.constants={}),e.cdk)}(this,(function(e,_){"use strict";e.DEFAULT_ICONS_PATH=function(e){return e.includes(".svg#")?e:"#"+e},e.DEFAULT_MARGIN=4,e.DEFAULT_MAX_HEIGHT=400,e.DEFAULT_MAX_WIDTH=600,e.DEFAULT_MIN_HEIGHT=80,e.MASK_CARET_TRAP="[]",e.MEDIA={mobile:320,tablet:600,desktopSmall:1024,desktopLarge:1280},e.TUI_DECIMAL_SYMBOLS=[",","."],e.TUI_DEFAULT_MARKER_HANDLER=function(){return _.EMPTY_ARRAY},e.TUI_DIGIT_REGEXP=/\d/,e.TUI_EXPAND_LOADED="tui-expand-loaded",e.TUI_ICON_ERROR="tui-icon-error",e.TUI_LAST_PUNCTUATION_MARK_REGEXP=/[.,\\/#!$%\\^&\\*;:{}=\\-_`~()]$/,e.TUI_LATIN_AND_NUMBERS_REGEXP=/[A-z|0-9]/,e.TUI_LATIN_REGEXP=/[A-z]/,e.TUI_LEADING_ZEROES_REGEXP=/^0+/,e.TUI_MASK_SYMBOLS_REGEXP=/[ \-_()]/g,e.TUI_NON_DIGITS_REGEXP=/\D+/g,e.TUI_NON_DIGIT_REGEXP=/\D/,e.TUI_SCROLLABLE="tui-scrollable",e.TUI_SCROLL_INTO_VIEW="tui-scroll-into-view",e.VERSION="2.42.0",e.tuiEditingKeys=["Spacebar","Backspace","Delete","ArrowLeft","ArrowRight","Left","Right","End","Home"],Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=taiga-ui-core-constants.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ng://@taiga-ui/core/constants/default-icons-path.ts","ng://@taiga-ui/core/constants/absolute-box-sizes.ts","ng://@taiga-ui/core/constants/mask-caret-trap.ts","ng://@taiga-ui/core/constants/media.ts","ng://@taiga-ui/core/constants/decimal-symbols.ts","ng://@taiga-ui/core/constants/default-marker-handler.ts","ng://@taiga-ui/core/constants/regexp.ts","ng://@taiga-ui/core/constants/events.ts","ng://@taiga-ui/core/constants/version.ts","ng://@taiga-ui/core/constants/editing-keys.ts"],"names":["name","includes","mobile","tablet","desktopSmall","desktopLarge","EMPTY_ARRAY"],"mappings":"qYAE4D,SAAAA,GACxD,OAAAA,EAAKC,SAAS,SAAWD,EAAO,IAAIA,oBCHV,uBAEI,wBACD,yBAFC,qBCDH,aCIV,CACjBE,OAAQ,IACRC,OAAQ,IACRC,aAAc,KACdC,aAAc,4BCRoC,CAAC,IAAK,kCCGA,WAAM,OAAAC,EAAAA,gCCHlC,yBCIC,qCAgBH,oDDfkB,kEAEJ,+BADZ,oCAHS,gCACF,oCAFF,8BADD,sBCcN,wCANM,iCCTb,0BCA0B,CAC7C,WACA,YACA,SACA,YACA,aACA,OACA,QACA,MACA","sourcesContent":["import {TuiStringHandler} from '@taiga-ui/cdk';\n\nexport const DEFAULT_ICONS_PATH: TuiStringHandler<string> = name =>\n name.includes('.svg#') ? name : `#${name}`;\n","export const DEFAULT_MARGIN = 4;\nexport const DEFAULT_MIN_HEIGHT = 80;\nexport const DEFAULT_MAX_HEIGHT = 400;\nexport const DEFAULT_MAX_WIDTH = 600;\n","export const MASK_CARET_TRAP = '[]';\n","/**\n * Media constants are exact the same as css media breakpoints\n * @deprecated use TUI_MEDIA token\n */\nexport const MEDIA = {\n mobile: 320,\n tablet: 600,\n desktopSmall: 1024,\n desktopLarge: 1280,\n};\n","export const TUI_DECIMAL_SYMBOLS: readonly string[] = [',', '.'];\n","import {EMPTY_ARRAY} from '@taiga-ui/cdk';\nimport {TuiMarkerHandler} from '@taiga-ui/core/types';\n\nexport const TUI_DEFAULT_MARKER_HANDLER: TuiMarkerHandler = () => EMPTY_ARRAY;\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\nexport const TUI_LEADING_ZEROES_REGEXP = /^0+/;\nexport const TUI_MASK_SYMBOLS_REGEXP = /[ \\-_()]/g;\nexport const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\\\/#!$%\\\\^&\\\\*;:{}=\\\\-_`~()]$/;\nexport const TUI_LATIN_REGEXP = /[A-z]/;\nexport const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;\n","/**\n * An event indicating that async data for expand has finished loading.\n * Dispatch to finish loading states for {@link TuiExpandComponent}.\n */\nexport const TUI_EXPAND_LOADED = 'tui-expand-loaded';\n\n/**\n * An event for scrolling an element into view within {@link TuiScrollbarComponent}.\n */\nexport const TUI_SCROLL_INTO_VIEW = 'tui-scroll-into-view';\n\n/**\n * An event to notify {@link TuiScrollbarComponent} that\n * it should control a nested element.\n */\nexport const TUI_SCROLLABLE = 'tui-scrollable';\n\n/**\n * An event indicating and error during icon loading in {@link TuiSvgComponent}.\n */\nexport const TUI_ICON_ERROR = 'tui-icon-error';\n","export const VERSION = '2.41.1';\n","export const tuiEditingKeys: readonly string[] = [\n 'Spacebar',\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Left',\n 'Right',\n 'End',\n 'Home',\n];\n"]}
1
+ {"version":3,"sources":["ng://@taiga-ui/core/constants/default-icons-path.ts","ng://@taiga-ui/core/constants/absolute-box-sizes.ts","ng://@taiga-ui/core/constants/mask-caret-trap.ts","ng://@taiga-ui/core/constants/media.ts","ng://@taiga-ui/core/constants/decimal-symbols.ts","ng://@taiga-ui/core/constants/default-marker-handler.ts","ng://@taiga-ui/core/constants/regexp.ts","ng://@taiga-ui/core/constants/events.ts","ng://@taiga-ui/core/constants/version.ts","ng://@taiga-ui/core/constants/editing-keys.ts"],"names":["name","includes","mobile","tablet","desktopSmall","desktopLarge","EMPTY_ARRAY"],"mappings":"qYAE4D,SAAAA,GACxD,OAAAA,EAAKC,SAAS,SAAWD,EAAO,IAAIA,oBCHV,uBAEI,wBACD,yBAFC,qBCDH,aCIV,CACjBE,OAAQ,IACRC,OAAQ,IACRC,aAAc,KACdC,aAAc,4BCRoC,CAAC,IAAK,kCCGA,WAAM,OAAAC,EAAAA,gCCHlC,yBCIC,qCAgBH,oDDfkB,kEAEJ,+BADZ,oCAHS,gCACF,oCAFF,8BADD,sBCcN,wCANM,iCCTb,0BCA0B,CAC7C,WACA,YACA,SACA,YACA,aACA,OACA,QACA,MACA","sourcesContent":["import {TuiStringHandler} from '@taiga-ui/cdk';\n\nexport const DEFAULT_ICONS_PATH: TuiStringHandler<string> = name =>\n name.includes('.svg#') ? name : `#${name}`;\n","export const DEFAULT_MARGIN = 4;\nexport const DEFAULT_MIN_HEIGHT = 80;\nexport const DEFAULT_MAX_HEIGHT = 400;\nexport const DEFAULT_MAX_WIDTH = 600;\n","export const MASK_CARET_TRAP = '[]';\n","/**\n * Media constants are exact the same as css media breakpoints\n * @deprecated use TUI_MEDIA token\n */\nexport const MEDIA = {\n mobile: 320,\n tablet: 600,\n desktopSmall: 1024,\n desktopLarge: 1280,\n};\n","export const TUI_DECIMAL_SYMBOLS: readonly string[] = [',', '.'];\n","import {EMPTY_ARRAY} from '@taiga-ui/cdk';\nimport {TuiMarkerHandler} from '@taiga-ui/core/types';\n\nexport const TUI_DEFAULT_MARKER_HANDLER: TuiMarkerHandler = () => EMPTY_ARRAY;\n","export const TUI_DIGIT_REGEXP = /\\d/;\nexport const TUI_NON_DIGIT_REGEXP = /\\D/;\nexport const TUI_NON_DIGITS_REGEXP = /\\D+/g;\nexport const TUI_LEADING_ZEROES_REGEXP = /^0+/;\nexport const TUI_MASK_SYMBOLS_REGEXP = /[ \\-_()]/g;\nexport const TUI_LAST_PUNCTUATION_MARK_REGEXP = /[.,\\\\/#!$%\\\\^&\\\\*;:{}=\\\\-_`~()]$/;\nexport const TUI_LATIN_REGEXP = /[A-z]/;\nexport const TUI_LATIN_AND_NUMBERS_REGEXP = /[A-z|0-9]/;\n","/**\n * An event indicating that async data for expand has finished loading.\n * Dispatch to finish loading states for {@link TuiExpandComponent}.\n */\nexport const TUI_EXPAND_LOADED = 'tui-expand-loaded';\n\n/**\n * An event for scrolling an element into view within {@link TuiScrollbarComponent}.\n */\nexport const TUI_SCROLL_INTO_VIEW = 'tui-scroll-into-view';\n\n/**\n * An event to notify {@link TuiScrollbarComponent} that\n * it should control a nested element.\n */\nexport const TUI_SCROLLABLE = 'tui-scrollable';\n\n/**\n * An event indicating and error during icon loading in {@link TuiSvgComponent}.\n */\nexport const TUI_ICON_ERROR = 'tui-icon-error';\n","export const VERSION = '2.42.0';\n","export const tuiEditingKeys: readonly string[] = [\n 'Spacebar',\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Left',\n 'Right',\n 'End',\n 'Home',\n];\n"]}
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"DEFAULT_MARGIN":4,"DEFAULT_MIN_HEIGHT":80,"DEFAULT_MAX_HEIGHT":400,"DEFAULT_MAX_WIDTH":600,"TUI_DECIMAL_SYMBOLS":[",","."],"DEFAULT_ICONS_PATH":{"__symbolic":"error","message":"Lambda not supported","line":2,"character":60,"module":"./default-icons-path"},"TUI_DEFAULT_MARKER_HANDLER":{"__symbolic":"error","message":"Lambda not supported","line":3,"character":60,"module":"./default-marker-handler"},"tuiEditingKeys":["Spacebar","Backspace","Delete","ArrowLeft","ArrowRight","Left","Right","End","Home"],"TUI_EXPAND_LOADED":"tui-expand-loaded","TUI_SCROLL_INTO_VIEW":"tui-scroll-into-view","TUI_SCROLLABLE":"tui-scrollable","TUI_ICON_ERROR":"tui-icon-error","MASK_CARET_TRAP":"[]","MEDIA":{"mobile":320,"tablet":600,"desktopSmall":1024,"desktopLarge":1280},"TUI_DIGIT_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":0,"character":32,"module":"./regexp"},"TUI_NON_DIGIT_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":1,"character":36,"module":"./regexp"},"TUI_NON_DIGITS_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":2,"character":37,"module":"./regexp"},"TUI_LEADING_ZEROES_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":3,"character":41,"module":"./regexp"},"TUI_MASK_SYMBOLS_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":4,"character":39,"module":"./regexp"},"TUI_LAST_PUNCTUATION_MARK_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":5,"character":48,"module":"./regexp"},"TUI_LATIN_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":6,"character":32,"module":"./regexp"},"TUI_LATIN_AND_NUMBERS_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":7,"character":44,"module":"./regexp"},"VERSION":"2.41.1"},"origins":{"DEFAULT_MARGIN":"./absolute-box-sizes","DEFAULT_MIN_HEIGHT":"./absolute-box-sizes","DEFAULT_MAX_HEIGHT":"./absolute-box-sizes","DEFAULT_MAX_WIDTH":"./absolute-box-sizes","TUI_DECIMAL_SYMBOLS":"./decimal-symbols","DEFAULT_ICONS_PATH":"./default-icons-path","TUI_DEFAULT_MARKER_HANDLER":"./default-marker-handler","tuiEditingKeys":"./editing-keys","TUI_EXPAND_LOADED":"./events","TUI_SCROLL_INTO_VIEW":"./events","TUI_SCROLLABLE":"./events","TUI_ICON_ERROR":"./events","MASK_CARET_TRAP":"./mask-caret-trap","MEDIA":"./media","TUI_DIGIT_REGEXP":"./regexp","TUI_NON_DIGIT_REGEXP":"./regexp","TUI_NON_DIGITS_REGEXP":"./regexp","TUI_LEADING_ZEROES_REGEXP":"./regexp","TUI_MASK_SYMBOLS_REGEXP":"./regexp","TUI_LAST_PUNCTUATION_MARK_REGEXP":"./regexp","TUI_LATIN_REGEXP":"./regexp","TUI_LATIN_AND_NUMBERS_REGEXP":"./regexp","VERSION":"./version"},"importAs":"@taiga-ui/core/constants"}
1
+ {"__symbolic":"module","version":4,"metadata":{"DEFAULT_MARGIN":4,"DEFAULT_MIN_HEIGHT":80,"DEFAULT_MAX_HEIGHT":400,"DEFAULT_MAX_WIDTH":600,"TUI_DECIMAL_SYMBOLS":[",","."],"DEFAULT_ICONS_PATH":{"__symbolic":"error","message":"Lambda not supported","line":2,"character":60,"module":"./default-icons-path"},"TUI_DEFAULT_MARKER_HANDLER":{"__symbolic":"error","message":"Lambda not supported","line":3,"character":60,"module":"./default-marker-handler"},"tuiEditingKeys":["Spacebar","Backspace","Delete","ArrowLeft","ArrowRight","Left","Right","End","Home"],"TUI_EXPAND_LOADED":"tui-expand-loaded","TUI_SCROLL_INTO_VIEW":"tui-scroll-into-view","TUI_SCROLLABLE":"tui-scrollable","TUI_ICON_ERROR":"tui-icon-error","MASK_CARET_TRAP":"[]","MEDIA":{"mobile":320,"tablet":600,"desktopSmall":1024,"desktopLarge":1280},"TUI_DIGIT_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":0,"character":32,"module":"./regexp"},"TUI_NON_DIGIT_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":1,"character":36,"module":"./regexp"},"TUI_NON_DIGITS_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":2,"character":37,"module":"./regexp"},"TUI_LEADING_ZEROES_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":3,"character":41,"module":"./regexp"},"TUI_MASK_SYMBOLS_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":4,"character":39,"module":"./regexp"},"TUI_LAST_PUNCTUATION_MARK_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":5,"character":48,"module":"./regexp"},"TUI_LATIN_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":6,"character":32,"module":"./regexp"},"TUI_LATIN_AND_NUMBERS_REGEXP":{"__symbolic":"error","message":"Expression form not supported","line":7,"character":44,"module":"./regexp"},"VERSION":"2.42.0"},"origins":{"DEFAULT_MARGIN":"./absolute-box-sizes","DEFAULT_MIN_HEIGHT":"./absolute-box-sizes","DEFAULT_MAX_HEIGHT":"./absolute-box-sizes","DEFAULT_MAX_WIDTH":"./absolute-box-sizes","TUI_DECIMAL_SYMBOLS":"./decimal-symbols","DEFAULT_ICONS_PATH":"./default-icons-path","TUI_DEFAULT_MARKER_HANDLER":"./default-marker-handler","tuiEditingKeys":"./editing-keys","TUI_EXPAND_LOADED":"./events","TUI_SCROLL_INTO_VIEW":"./events","TUI_SCROLLABLE":"./events","TUI_ICON_ERROR":"./events","MASK_CARET_TRAP":"./mask-caret-trap","MEDIA":"./media","TUI_DIGIT_REGEXP":"./regexp","TUI_NON_DIGIT_REGEXP":"./regexp","TUI_NON_DIGITS_REGEXP":"./regexp","TUI_LEADING_ZEROES_REGEXP":"./regexp","TUI_MASK_SYMBOLS_REGEXP":"./regexp","TUI_LAST_PUNCTUATION_MARK_REGEXP":"./regexp","TUI_LATIN_REGEXP":"./regexp","TUI_LATIN_AND_NUMBERS_REGEXP":"./regexp","VERSION":"./version"},"importAs":"@taiga-ui/core/constants"}
@@ -1 +1 @@
1
- export declare const VERSION = "2.41.1";
1
+ export declare const VERSION = "2.42.0";
@@ -50,7 +50,9 @@ let TuiAlertComponent = class TuiAlertComponent {
50
50
  return;
51
51
  }
52
52
  timer(isNumber(this.autoClose) ? this.autoClose : this.options.defaultAutoCloseTime)
53
- .pipe(takeUntil(fromEvent(this.elementRef.nativeElement, 'mouseenter')), repeatWhen(() => fromEvent(this.elementRef.nativeElement, 'mouseleave')), takeUntil(this.destroy$))
53
+ .pipe(takeUntil(fromEvent(this.elementRef.nativeElement, 'mouseenter')),
54
+ // eslint-disable-next-line rxjs/no-ignored-notifier
55
+ repeatWhen(() => fromEvent(this.elementRef.nativeElement, 'mouseleave')), takeUntil(this.destroy$))
54
56
  .subscribe(() => this.closeNotification());
55
57
  }
56
58
  };
@@ -86,4 +88,4 @@ TuiAlertComponent = __decorate([
86
88
  __param(4, Inject(POLYMORPHEUS_CONTEXT))
87
89
  ], TuiAlertComponent);
88
90
  export { TuiAlertComponent };
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9hbGVydC8iLCJzb3VyY2VzIjpbImFsZXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxRQUFRLEVBQ1Isc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFHeEYsT0FBTyxFQUNILHFCQUFxQixFQUNyQix3QkFBd0IsR0FFM0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUMsb0JBQW9CLEVBQXNCLE1BQU0sMEJBQTBCLENBQUM7QUFDbkYsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQVlyRCxpRkFBaUY7QUFVakYsSUFBYSxpQkFBaUIsR0FBOUIsTUFBYSxpQkFBaUI7SUFXMUIsWUFDeUMsVUFBbUMsRUFDNUIsUUFBMkIsRUFFdEQsT0FBc0MsRUFFdEMsZ0JBQWtDLEVBQ1osSUFBc0M7UUFOeEMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDNUIsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFFdEQsWUFBTyxHQUFQLE9BQU8sQ0FBK0I7UUFFdEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNaLFNBQUksR0FBSixJQUFJLENBQWtDO1FBakJoRSxjQUFTLEdBQ3RCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FB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OztLQUN4QixDQUFDO0lBYU8sV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDbEIsV0FBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUN6QixXQUFBLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO0lBRWhDLFdBQUEsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUE7SUFFN0IsV0FBQSxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtHQWxCeEIsaUJBQWlCLENBd0U3QjtTQXhFWSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgaXNOdW1iZXIsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICBUdWlEaWFsb2csXG4gICAgdHVpUHVyZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge3R1aUZhZGVJbiwgdHVpSGVpZ2h0Q29sbGFwc2UsIHR1aVNsaWRlSW5SaWdodH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1R1aU5vdGlmaWNhdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZW51bXMnO1xuaW1wb3J0IHtUdWlBbGVydE9wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgICBUVUlfQU5JTUFUSU9OX09QVElPTlMsXG4gICAgVFVJX05PVElGSUNBVElPTl9PUFRJT05TLFxuICAgIFR1aU5vdGlmaWNhdGlvbkRlZmF1bHRPcHRpb25zLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtQT0xZTU9SUEhFVVNfQ09OVEVYVCwgUG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcbmltcG9ydCB7ZnJvbUV2ZW50LCB0aW1lcn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3JlcGVhdFdoZW4sIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vLyBUT0RPOiBSZW1vdmUgYW5kIHN0YXJ0IHVzaW5nIFR1aURpYWxvZzxUdWlBbGVydE9wdGlvbnM8ST4sIE8+XG5leHBvcnQgaW50ZXJmYWNlIFR1aU5vdGlmaWNhdGlvbkNvbnRlbnRDb250ZXh0PE8gPSB2b2lkLCBJID0gdW5kZWZpbmVkPlxuICAgIGV4dGVuZHMgVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlOb3RpZmljYXRpb24+IHtcbiAgICBsYWJlbDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PFR1aU5vdGlmaWNhdGlvbj4+O1xuICAgIGRhdGE6IEk7XG4gICAgY2xvc2VIb29rOiAoKSA9PiB2b2lkO1xuICAgIGVtaXRIb29rOiAoZGF0YTogTykgPT4gdm9pZDtcbiAgICBlbWl0QW5kQ2xvc2VIb29rOiAoZGF0YTogTykgPT4gdm9pZDtcbn1cblxuLy8gVE9ETzogUmVmYWN0b3IgYWNjb3JkaW5nIHRvIG5ldyBjb250ZXh0IGJ5IDMuMCBhbmQgZ2V0IHJpZCBvZiAkYW55IGluIHRlbXBsYXRlXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1hbGVydCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2FsZXJ0LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG4gICAgYW5pbWF0aW9uczogW3R1aUZhZGVJbiwgdHVpU2xpZGVJblJpZ2h0LCB0dWlIZWlnaHRDb2xsYXBzZV0sXG4gICAgaG9zdDoge3JvbGU6ICdhbGVydCd9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlBbGVydENvbXBvbmVudDxPLCBJPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRvQ2xvc2UgPVxuICAgICAgICB0eXBlb2YgdGhpcy5pdGVtLmF1dG9DbG9zZSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyB0aGlzLml0ZW0uYXV0b0Nsb3NlKHRoaXMuaXRlbS5zdGF0dXMpXG4gICAgICAgICAgICA6IHRoaXMuaXRlbS5hdXRvQ2xvc2U7XG5cbiAgICBASG9zdEJpbmRpbmcoJ0B0dWlGYWRlSW4nKVxuICAgIEBIb3N0QmluZGluZygnQHR1aVNsaWRlSW5SaWdodCcpXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpSGVpZ2h0Q29sbGFwc2UnKVxuICAgIHJlYWRvbmx5IGFuaW1hdGlvbiA9IHt2YWx1ZTogJycsIC4uLnRoaXMuYW5pbWF0aW9uT3B0aW9uc30gYXMgY29uc3Q7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkOiBUdWlEZXN0cm95U2VydmljZSxcbiAgICAgICAgQEluamVjdChUVUlfTk9USUZJQ0FUSU9OX09QVElPTlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHVpTm90aWZpY2F0aW9uRGVmYXVsdE9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoVFVJX0FOSU1BVElPTl9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGFuaW1hdGlvbk9wdGlvbnM6IEFuaW1hdGlvbk9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoUE9MWU1PUlBIRVVTX0NPTlRFWFQpIHJlYWRvbmx5IGl0ZW06IFR1aURpYWxvZzxUdWlBbGVydE9wdGlvbnM8ST4sIE8+LFxuICAgICkge31cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmluaXRBdXRvQ2xvc2UoKTtcbiAgICB9XG5cbiAgICBnZXQgY29udGV4dCgpOiBUdWlOb3RpZmljYXRpb25Db250ZW50Q29udGV4dDxPLCBJPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhbGN1bGF0ZUNvbnRleHQodGhpcy5pdGVtKTtcbiAgICB9XG5cbiAgICBjbG9zZU5vdGlmaWNhdGlvbigpIHtcbiAgICAgICAgdGhpcy5pdGVtLiRpbXBsaWNpdC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVDb250ZXh0KHtcbiAgICAgICAgJGltcGxpY2l0LFxuICAgICAgICBzdGF0dXMsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGxhYmVsLFxuICAgIH06IFR1aURpYWxvZzxUdWlBbGVydE9wdGlvbnM8ST4sIE8+KTogVHVpTm90aWZpY2F0aW9uQ29udGVudENvbnRleHQ8TywgST4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgJGltcGxpY2l0OiBzdGF0dXMsXG4gICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICBjbG9zZUhvb2s6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQuY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBlbWl0SG9vazogKGRhdGE6IE8pID0+IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQubmV4dChkYXRhKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBlbWl0QW5kQ2xvc2VIb29rOiAoZGF0YTogTykgPT4ge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdC5uZXh0KGRhdGEpO1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdC5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRBdXRvQ2xvc2UoKSB7XG4gICAgICAgIGlmICghdGhpcy5hdXRvQ2xvc2UpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRpbWVyKFxuICAgICAgICAgICAgaXNOdW1iZXIodGhpcy5hdXRvQ2xvc2UpID8gdGhpcy5hdXRvQ2xvc2UgOiB0aGlzLm9wdGlvbnMuZGVmYXVsdEF1dG9DbG9zZVRpbWUsXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChmcm9tRXZlbnQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdtb3VzZWVudGVyJykpLFxuICAgICAgICAgICAgICAgIHJlcGVhdFdoZW4oKCkgPT4gZnJvbUV2ZW50KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnbW91c2VsZWF2ZScpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2xvc2VOb3RpZmljYXRpb24oKSk7XG4gICAgfVxufVxuIl19
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9hbGVydC8iLCJzb3VyY2VzIjpbImFsZXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxRQUFRLEVBQ1Isc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFHeEYsT0FBTyxFQUNILHFCQUFxQixFQUNyQix3QkFBd0IsR0FFM0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUMsb0JBQW9CLEVBQXNCLE1BQU0sMEJBQTBCLENBQUM7QUFDbkYsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQVlyRCxpRkFBaUY7QUFVakYsSUFBYSxpQkFBaUIsR0FBOUIsTUFBYSxpQkFBaUI7SUFXMUIsWUFDeUMsVUFBbUMsRUFDNUIsUUFBMkIsRUFFdEQsT0FBc0MsRUFFdEMsZ0JBQWtDLEVBQ1osSUFBc0M7UUFOeEMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDNUIsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFFdEQsWUFBTyxHQUFQLE9BQU8sQ0FBK0I7UUFFdEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNaLFNBQUksR0FBSixJQUFJLENBQWtDO1FBakJoRSxjQUFTLEdBQ3RCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FB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QUFFLE9BQU8sRUFBQzs7S0FDeEIsQ0FBQztJQWFPLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ2xCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDekIsV0FBQSxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtJQUVoQyxXQUFBLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0lBRTdCLFdBQUEsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7R0FsQnhCLGlCQUFpQixDQXlFN0I7U0F6RVksaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBbmltYXRpb25PcHRpb25zfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIGlzTnVtYmVyLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgVHVpRGlhbG9nLFxuICAgIHR1aVB1cmUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHt0dWlGYWRlSW4sIHR1aUhlaWdodENvbGxhcHNlLCB0dWlTbGlkZUluUmlnaHR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtUdWlOb3RpZmljYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2VudW1zJztcbmltcG9ydCB7VHVpQWxlcnRPcHRpb25zfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG4gICAgVFVJX0FOSU1BVElPTl9PUFRJT05TLFxuICAgIFRVSV9OT1RJRklDQVRJT05fT1BUSU9OUyxcbiAgICBUdWlOb3RpZmljYXRpb25EZWZhdWx0T3B0aW9ucyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7UE9MWU1PUlBIRVVTX0NPTlRFWFQsIFBvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge2Zyb21FdmVudCwgdGltZXJ9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtyZXBlYXRXaGVuLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gVE9ETzogUmVtb3ZlIGFuZCBzdGFydCB1c2luZyBUdWlEaWFsb2c8VHVpQWxlcnRPcHRpb25zPEk+LCBPPlxuZXhwb3J0IGludGVyZmFjZSBUdWlOb3RpZmljYXRpb25Db250ZW50Q29udGV4dDxPID0gdm9pZCwgSSA9IHVuZGVmaW5lZD5cbiAgICBleHRlbmRzIFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpTm90aWZpY2F0aW9uPiB7XG4gICAgbGFiZWw6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlOb3RpZmljYXRpb24+PjtcbiAgICBkYXRhOiBJO1xuICAgIGNsb3NlSG9vazogKCkgPT4gdm9pZDtcbiAgICBlbWl0SG9vazogKGRhdGE6IE8pID0+IHZvaWQ7XG4gICAgZW1pdEFuZENsb3NlSG9vazogKGRhdGE6IE8pID0+IHZvaWQ7XG59XG5cbi8vIFRPRE86IFJlZmFjdG9yIGFjY29yZGluZyB0byBuZXcgY29udGV4dCBieSAzLjAgYW5kIGdldCByaWQgb2YgJGFueSBpbiB0ZW1wbGF0ZVxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktYWxlcnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hbGVydC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9hbGVydC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlGYWRlSW4sIHR1aVNsaWRlSW5SaWdodCwgdHVpSGVpZ2h0Q29sbGFwc2VdLFxuICAgIGhvc3Q6IHtyb2xlOiAnYWxlcnQnfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQWxlcnRDb21wb25lbnQ8TywgST4gaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0Nsb3NlID1cbiAgICAgICAgdHlwZW9mIHRoaXMuaXRlbS5hdXRvQ2xvc2UgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgID8gdGhpcy5pdGVtLmF1dG9DbG9zZSh0aGlzLml0ZW0uc3RhdHVzKVxuICAgICAgICAgICAgOiB0aGlzLml0ZW0uYXV0b0Nsb3NlO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpRmFkZUluJylcbiAgICBASG9zdEJpbmRpbmcoJ0B0dWlTbGlkZUluUmlnaHQnKVxuICAgIEBIb3N0QmluZGluZygnQHR1aUhlaWdodENvbGxhcHNlJylcbiAgICByZWFkb25seSBhbmltYXRpb24gPSB7dmFsdWU6ICcnLCAuLi50aGlzLmFuaW1hdGlvbk9wdGlvbnN9IGFzIGNvbnN0O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JDogVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoVFVJX05PVElGSUNBVElPTl9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aU5vdGlmaWNhdGlvbkRlZmF1bHRPcHRpb25zLFxuICAgICAgICBASW5qZWN0KFRVSV9BTklNQVRJT05fT1BUSU9OUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBhbmltYXRpb25PcHRpb25zOiBBbmltYXRpb25PcHRpb25zLFxuICAgICAgICBASW5qZWN0KFBPTFlNT1JQSEVVU19DT05URVhUKSByZWFkb25seSBpdGVtOiBUdWlEaWFsb2c8VHVpQWxlcnRPcHRpb25zPEk+LCBPPixcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5pbml0QXV0b0Nsb3NlKCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbnRleHQoKTogVHVpTm90aWZpY2F0aW9uQ29udGVudENvbnRleHQ8TywgST4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jYWxjdWxhdGVDb250ZXh0KHRoaXMuaXRlbSk7XG4gICAgfVxuXG4gICAgY2xvc2VOb3RpZmljYXRpb24oKSB7XG4gICAgICAgIHRoaXMuaXRlbS4kaW1wbGljaXQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgY2FsY3VsYXRlQ29udGV4dCh7XG4gICAgICAgICRpbXBsaWNpdCxcbiAgICAgICAgc3RhdHVzLFxuICAgICAgICBkYXRhLFxuICAgICAgICBsYWJlbCxcbiAgICB9OiBUdWlEaWFsb2c8VHVpQWxlcnRPcHRpb25zPEk+LCBPPik6IFR1aU5vdGlmaWNhdGlvbkNvbnRlbnRDb250ZXh0PE8sIEk+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICRpbXBsaWNpdDogc3RhdHVzLFxuICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgY2xvc2VIb29rOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgJGltcGxpY2l0LmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZW1pdEhvb2s6IChkYXRhOiBPKSA9PiB7XG4gICAgICAgICAgICAgICAgJGltcGxpY2l0Lm5leHQoZGF0YSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZW1pdEFuZENsb3NlSG9vazogKGRhdGE6IE8pID0+IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQubmV4dChkYXRhKTtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQuY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0QXV0b0Nsb3NlKCkge1xuICAgICAgICBpZiAoIXRoaXMuYXV0b0Nsb3NlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aW1lcihcbiAgICAgICAgICAgIGlzTnVtYmVyKHRoaXMuYXV0b0Nsb3NlKSA/IHRoaXMuYXV0b0Nsb3NlIDogdGhpcy5vcHRpb25zLmRlZmF1bHRBdXRvQ2xvc2VUaW1lLFxuICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwoZnJvbUV2ZW50KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnbW91c2VlbnRlcicpKSxcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnhqcy9uby1pZ25vcmVkLW5vdGlmaWVyXG4gICAgICAgICAgICAgICAgcmVwZWF0V2hlbigoKSA9PiBmcm9tRXZlbnQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdtb3VzZWxlYXZlJykpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZU5vdGlmaWNhdGlvbigpKTtcbiAgICB9XG59XG4iXX0=
@@ -39,7 +39,7 @@ let TuiDataListDropdownManagerDirective = class TuiDataListDropdownManagerDirect
39
39
  .subscribe();
40
40
  }
41
41
  get elements$() {
42
- return itemsQueryListObservable(this.elements).pipe(map(array => array.map(({ nativeElement }) => nativeElement)), shareReplay(1));
42
+ return itemsQueryListObservable(this.elements).pipe(map(array => array.map(({ nativeElement }) => nativeElement)), shareReplay({ bufferSize: 1, refCount: true }));
43
43
  }
44
44
  get right$() {
45
45
  return this.elements$.pipe(switchMap(elements => merge(...elements.map((element, index) => typedFromEvent(element, 'keydown').pipe(filter(({ keyCode }) => keyCode === 39), preventDefault(), mapTo(index))))));
@@ -94,4 +94,4 @@ TuiDataListDropdownManagerDirective = __decorate([
94
94
  })
95
95
  ], TuiDataListDropdownManagerDirective);
96
96
  export { TuiDataListDropdownManagerDirective };
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LWRyb3Bkb3duLW1hbmFnZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QvIiwic291cmNlcyI6WyJkYXRhLWxpc3QtZHJvcGRvd24tbWFuYWdlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFSCxlQUFlLEVBQ2YsU0FBUyxFQUNULFVBQVUsR0FFYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsV0FBVyxFQUNYLDJCQUEyQixFQUMzQix3QkFBd0IsRUFDeEIsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixPQUFPLEVBQ1AsY0FBYyxHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQ0gsWUFBWSxFQUNaLE1BQU0sRUFDTixHQUFHLEVBQ0gsS0FBSyxFQUNMLFdBQVcsRUFDWCxTQUFTLEVBQ1QsSUFBSSxFQUNKLEdBQUcsR0FDTixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLHlDQUF5QztBQUl6QyxJQUFhLG1DQUFtQyxHQUFoRCxNQUFhLG1DQUFtQztJQUFoRDtRQUVxQixjQUFTLEdBQW9DLFdBQVcsQ0FBQztRQUd6RCxhQUFRLEdBQXVDLFdBQVcsQ0FBQztJQXlJaEYsQ0FBQztJQXZJRyxlQUFlO1FBQ1gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztRQUVILEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDakMsSUFBSSxDQUNELFNBQVMsQ0FB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QUFVLENBQUMsS0FBYTtRQUM1QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELE1BQU0sT0FBTyxHQUNULFFBQVE7WUFDUixRQUFRLENBQUMsY0FBYztZQUN2QixRQUFRLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQztRQUV2RCxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1YsT0FBTztTQUNWO1FBRUQsTUFBTSxJQUFJLEdBQUcsMkJBQTJCLENBQ3BDLE9BQU8sQ0FBQyxhQUFhLEVBQ3JCLEtBQUssRUFDTCxPQUFPLENBQUMsYUFBYSxDQUN4QixDQUFDO1FBRUYsSUFBSSxJQUFJLEVBQUU7WUFDTixnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMxQjtJQUNMLENBQUM7Q0FDSixDQUFBO0FBNUlHO0lBREMsZUFBZSxDQUFDLG9CQUFvQixFQUFFLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDO3NFQUNlO0FBRzFFO0lBREMsZUFBZSxDQUFDLG9CQUFvQixFQUFFLEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFDLENBQUM7cUVBQ0Q7QUErQzVFO0lBREMsT0FBTztvRUFNUDtBQUdEO0lBREMsT0FBTztpRUFlUDtBQUdEO0lBREMsT0FBTztxRUFXUDtBQUdEO0lBREMsT0FBTztvRUFvQlA7QUE3R1EsbUNBQW1DO0lBSC9DLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSwyQ0FBMkM7S0FDeEQsQ0FBQztHQUNXLG1DQUFtQyxDQThJL0M7U0E5SVksbUNBQW1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBFTVBUWV9RVUVSWSxcbiAgICBnZXRDbG9zZXN0S2V5Ym9hcmRGb2N1c2FibGUsXG4gICAgaXRlbXNRdWVyeUxpc3RPYnNlcnZhYmxlLFxuICAgIHByZXZlbnREZWZhdWx0LFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgdHVpUHVyZSxcbiAgICB0eXBlZEZyb21FdmVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aURyb3Bkb3duRGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duJztcbmltcG9ydCB7RU1QVFksIG1lcmdlLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgZGVib3VuY2VUaW1lLFxuICAgIGZpbHRlcixcbiAgICBtYXAsXG4gICAgbWFwVG8sXG4gICAgc2hhcmVSZXBsYXksXG4gICAgc3dpdGNoTWFwLFxuICAgIHRha2UsXG4gICAgdGFwLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8vIFRPRE86IE1vdmUgaW50byBzZXBhcmF0ZSBtb2R1bGUgaW4gMy4wXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ3R1aS1kYXRhLWxpc3RbdHVpRGF0YUxpc3REcm9wZG93bk1hbmFnZXJdJyxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRGF0YUxpc3REcm9wZG93bk1hbmFnZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBAQ29udGVudENoaWxkcmVuKFR1aURyb3Bkb3duRGlyZWN0aXZlLCB7ZGVzY2VuZGFudHM6IHRydWV9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25zOiBRdWVyeUxpc3Q8VHVpRHJvcGRvd25EaXJlY3RpdmU+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKFR1aURyb3Bkb3duRGlyZWN0aXZlLCB7cmVhZDogRWxlbWVudFJlZiwgZGVzY2VuZGFudHM6IHRydWV9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudHM6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4gPSBFTVBUWV9RVUVSWTtcblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5yaWdodCQuc3Vic2NyaWJlKGluZGV4ID0+IHtcbiAgICAgICAgICAgIHRoaXMudHJ5VG9Gb2N1cyhpbmRleCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIG1lcmdlKHRoaXMuaW1tZWRpYXRlJCwgdGhpcy5kZWJvdW5jZSQpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoYWN0aXZlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kcm9wZG93bnMuZm9yRWFjaCgoZHJvcGRvd24sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkcm9wZG93bi5vcGVuID0gaW5kZXggPT09IGFjdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWxlbWVudHMudG9BcnJheSgpW2FjdGl2ZV07XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRyb3Bkb3duID0gdGhpcy5kcm9wZG93bnMudG9BcnJheSgpW2FjdGl2ZV07XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFlbGVtZW50IHx8ICFkcm9wZG93biB8fCAhZHJvcGRvd24uZHJvcGRvd25Cb3hSZWYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IGRyb3Bkb3duLmRyb3Bkb3duQm94UmVmLmxvY2F0aW9uO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtb3VzZUVudGVyJCA9IHR5cGVkRnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsICdtb3VzZWVudGVyJykucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVzYyQgPSBtZXJnZShcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KGVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2tleWRvd24nKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsICdrZXlkb3duJyksXG4gICAgICAgICAgICAgICAgICAgICkucGlwZShmaWx0ZXIoKHtrZXlDb2RlfSkgPT4ga2V5Q29kZSA9PT0gMjcpKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbWVyZ2UobW91c2VFbnRlciQsIGVzYyQpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICB0YXAoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkcm9wZG93bi5kcm9wZG93bkJveFJlZikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXROYXRpdmVGb2N1c2VkKGVsZW1lbnQubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkcm9wZG93bi5vcGVuID0gZXZlbnQgaW5zdGFuY2VvZiBNb3VzZUV2ZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldCBlbGVtZW50cyQoKTogT2JzZXJ2YWJsZTxyZWFkb25seSBIVE1MRWxlbWVudFtdPiB7XG4gICAgICAgIHJldHVybiBpdGVtc1F1ZXJ5TGlzdE9ic2VydmFibGUodGhpcy5lbGVtZW50cykucGlwZShcbiAgICAgICAgICAgIG1hcChhcnJheSA9PiBhcnJheS5tYXAoKHtuYXRpdmVFbGVtZW50fSkgPT4gbmF0aXZlRWxlbWVudCkpLFxuICAgICAgICAgICAgc2hhcmVSZXBsYXkoMSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldCByaWdodCQoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudHMkLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoZWxlbWVudHMgPT5cbiAgICAgICAgICAgICAgICBtZXJnZShcbiAgICAgICAgICAgICAgICAgICAgLi4uZWxlbWVudHMubWFwKChlbGVtZW50LCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KGVsZW1lbnQsICdrZXlkb3duJykucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoKHtrZXlDb2RlfSkgPT4ga2V5Q29kZSA9PT0gMzkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZlbnREZWZhdWx0KCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwVG8oaW5kZXgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0IGltbWVkaWF0ZSQoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudHMkLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoZWxlbWVudHMgPT5cbiAgICAgICAgICAgICAgICBtZXJnZShcbiAgICAgICAgICAgICAgICAgICAgLi4uZWxlbWVudHMubWFwKChlbGVtZW50LCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KGVsZW1lbnQsICdjbGljaycpLnBpcGUobWFwVG8oaW5kZXgpKSxcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0IGRlYm91bmNlJCgpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50cyQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcChlbGVtZW50cyA9PlxuICAgICAgICAgICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAuLi5lbGVtZW50cy5tYXAoKGVsZW1lbnQsIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZWRGcm9tRXZlbnQoZWxlbWVudCwgJ2ZvY3VzJyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZWRGcm9tRXZlbnQoZWxlbWVudCwgJ2JsdXInKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoKHtyZWxhdGVkVGFyZ2V0fSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3RJbkRyb3Bkb3duKHJlbGF0ZWRUYXJnZXQsIGluZGV4KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoe3R5cGV9KSA9PiAodHlwZSA9PT0gJ2ZvY3VzJyA/IGluZGV4IDogTmFOKSksXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBub3RJbkRyb3Bkb3duKGVsZW1lbnQ6IEV2ZW50VGFyZ2V0IHwgbnVsbCwgaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBkcm9wZG93biA9IHRoaXMuZHJvcGRvd25zLnRvQXJyYXkoKVtpbmRleF07XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICFkcm9wZG93biB8fFxuICAgICAgICAgICAgIWRyb3Bkb3duLmRyb3Bkb3duQm94UmVmIHx8XG4gICAgICAgICAgICAhZHJvcGRvd24uZHJvcGRvd25Cb3hSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5jb250YWlucyhlbGVtZW50KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgdHJ5VG9Gb2N1cyhpbmRleDogbnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IGRyb3Bkb3duID0gdGhpcy5kcm9wZG93bnMudG9BcnJheSgpW2luZGV4XTtcbiAgICAgICAgY29uc3QgY29udGVudCA9XG4gICAgICAgICAgICBkcm9wZG93biAmJlxuICAgICAgICAgICAgZHJvcGRvd24uZHJvcGRvd25Cb3hSZWYgJiZcbiAgICAgICAgICAgIGRyb3Bkb3duLmRyb3Bkb3duQm94UmVmLmluc3RhbmNlLmNvbnRlbnRFbGVtZW50UmVmO1xuXG4gICAgICAgIGlmICghY29udGVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaXRlbSA9IGdldENsb3Nlc3RLZXlib2FyZEZvY3VzYWJsZShcbiAgICAgICAgICAgIGNvbnRlbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIGZhbHNlLFxuICAgICAgICAgICAgY29udGVudC5uYXRpdmVFbGVtZW50LFxuICAgICAgICApO1xuXG4gICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgICBzZXROYXRpdmVGb2N1c2VkKGl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LWRyb3Bkb3duLW1hbmFnZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9kYXRhLWxpc3QvIiwic291cmNlcyI6WyJkYXRhLWxpc3QtZHJvcGRvd24tbWFuYWdlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFSCxlQUFlLEVBQ2YsU0FBUyxFQUNULFVBQVUsR0FFYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsV0FBVyxFQUNYLDJCQUEyQixFQUMzQix3QkFBd0IsRUFDeEIsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixPQUFPLEVBQ1AsY0FBYyxHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQ0gsWUFBWSxFQUNaLE1BQU0sRUFDTixHQUFHLEVBQ0gsS0FBSyxFQUNMLFdBQVcsRUFDWCxTQUFTLEVBQ1QsSUFBSSxFQUNKLEdBQUcsR0FDTixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLHlDQUF5QztBQUl6QyxJQUFhLG1DQUFtQyxHQUFoRCxNQUFhLG1DQUFtQztJQUFoRDtRQUVxQixjQUFTLEdBQW9DLFdBQVcsQ0FBQztRQUd6RCxhQUFRLEdBQXVDLFdBQVcsQ0FBQztJQXlJaEYsQ0FBQztJQXZJRyxlQUFlO1FBQ1gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztRQUVILEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDakMsSUFBSSxDQUNELFNBQVMsQ0FB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QUMsT0FBTyxDQUFDLENBQ3BFLENBQUM7SUFDTixDQUFDO0lBRU8sVUFBVSxDQUFDLEtBQWE7UUFDNUIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxNQUFNLE9BQU8sR0FDVCxRQUFRO1lBQ1IsUUFBUSxDQUFDLGNBQWM7WUFDdkIsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUM7UUFFdkQsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNWLE9BQU87U0FDVjtRQUVELE1BQU0sSUFBSSxHQUFHLDJCQUEyQixDQUNwQyxPQUFPLENBQUMsYUFBYSxFQUNyQixLQUFLLEVBQ0wsT0FBTyxDQUFDLGFBQWEsQ0FDeEIsQ0FBQztRQUVGLElBQUksSUFBSSxFQUFFO1lBQ04sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDMUI7SUFDTCxDQUFDO0NBQ0osQ0FBQTtBQTVJRztJQURDLGVBQWUsQ0FBQyxvQkFBb0IsRUFBRSxFQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUMsQ0FBQztzRUFDZTtBQUcxRTtJQURDLGVBQWUsQ0FBQyxvQkFBb0IsRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDO3FFQUNEO0FBK0M1RTtJQURDLE9BQU87b0VBTVA7QUFHRDtJQURDLE9BQU87aUVBZVA7QUFHRDtJQURDLE9BQU87cUVBV1A7QUFHRDtJQURDLE9BQU87b0VBb0JQO0FBN0dRLG1DQUFtQztJQUgvQyxTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsMkNBQTJDO0tBQ3hELENBQUM7R0FDVyxtQ0FBbUMsQ0E4SS9DO1NBOUlZLG1DQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRU1QVFlfUVVFUlksXG4gICAgZ2V0Q2xvc2VzdEtleWJvYXJkRm9jdXNhYmxlLFxuICAgIGl0ZW1zUXVlcnlMaXN0T2JzZXJ2YWJsZSxcbiAgICBwcmV2ZW50RGVmYXVsdCxcbiAgICBzZXROYXRpdmVGb2N1c2VkLFxuICAgIHR1aVB1cmUsXG4gICAgdHlwZWRGcm9tRXZlbnQsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlEcm9wZG93bkRpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQge0VNUFRZLCBtZXJnZSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIGRlYm91bmNlVGltZSxcbiAgICBmaWx0ZXIsXG4gICAgbWFwLFxuICAgIG1hcFRvLFxuICAgIHNoYXJlUmVwbGF5LFxuICAgIHN3aXRjaE1hcCxcbiAgICB0YWtlLFxuICAgIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vLyBUT0RPOiBNb3ZlIGludG8gc2VwYXJhdGUgbW9kdWxlIGluIDMuMFxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICd0dWktZGF0YS1saXN0W3R1aURhdGFMaXN0RHJvcGRvd25NYW5hZ2VyXScsXG59KVxuZXhwb3J0IGNsYXNzIFR1aURhdGFMaXN0RHJvcGRvd25NYW5hZ2VyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgQENvbnRlbnRDaGlsZHJlbihUdWlEcm9wZG93bkRpcmVjdGl2ZSwge2Rlc2NlbmRhbnRzOiB0cnVlfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyb3Bkb3duczogUXVlcnlMaXN0PFR1aURyb3Bkb3duRGlyZWN0aXZlPiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihUdWlEcm9wZG93bkRpcmVjdGl2ZSwge3JlYWQ6IEVsZW1lbnRSZWYsIGRlc2NlbmRhbnRzOiB0cnVlfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRzOiBRdWVyeUxpc3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHRoaXMucmlnaHQkLnN1YnNjcmliZShpbmRleCA9PiB7XG4gICAgICAgICAgICB0aGlzLnRyeVRvRm9jdXMoaW5kZXgpO1xuICAgICAgICB9KTtcblxuICAgICAgICBtZXJnZSh0aGlzLmltbWVkaWF0ZSQsIHRoaXMuZGVib3VuY2UkKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGFjdGl2ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZHJvcGRvd25zLmZvckVhY2goKGRyb3Bkb3duLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZHJvcGRvd24ub3BlbiA9IGluZGV4ID09PSBhY3RpdmU7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmVsZW1lbnRzLnRvQXJyYXkoKVthY3RpdmVdO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkcm9wZG93biA9IHRoaXMuZHJvcGRvd25zLnRvQXJyYXkoKVthY3RpdmVdO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICghZWxlbWVudCB8fCAhZHJvcGRvd24gfHwgIWRyb3Bkb3duLmRyb3Bkb3duQm94UmVmKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7bmF0aXZlRWxlbWVudH0gPSBkcm9wZG93bi5kcm9wZG93bkJveFJlZi5sb2NhdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbW91c2VFbnRlciQgPSB0eXBlZEZyb21FdmVudChuYXRpdmVFbGVtZW50LCAnbW91c2VlbnRlcicpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlc2MkID0gbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlZEZyb21FdmVudChlbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdrZXlkb3duJyksXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlZEZyb21FdmVudChuYXRpdmVFbGVtZW50LCAna2V5ZG93bicpLFxuICAgICAgICAgICAgICAgICAgICApLnBpcGUoZmlsdGVyKCh7a2V5Q29kZX0pID0+IGtleUNvZGUgPT09IDI3KSk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG1lcmdlKG1vdXNlRW50ZXIkLCBlc2MkKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFwKGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZHJvcGRvd24uZHJvcGRvd25Cb3hSZWYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0TmF0aXZlRm9jdXNlZChlbGVtZW50Lm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRPRE86IGlmcmFtZSB3YXJuaW5nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJvcGRvd24ub3BlbiA9IGV2ZW50IGluc3RhbmNlb2YgTW91c2VFdmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXQgZWxlbWVudHMkKCk6IE9ic2VydmFibGU8cmVhZG9ubHkgSFRNTEVsZW1lbnRbXT4ge1xuICAgICAgICByZXR1cm4gaXRlbXNRdWVyeUxpc3RPYnNlcnZhYmxlKHRoaXMuZWxlbWVudHMpLnBpcGUoXG4gICAgICAgICAgICBtYXAoYXJyYXkgPT4gYXJyYXkubWFwKCh7bmF0aXZlRWxlbWVudH0pID0+IG5hdGl2ZUVsZW1lbnQpKSxcbiAgICAgICAgICAgIHNoYXJlUmVwbGF5KHtidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZX0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXQgcmlnaHQkKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRzJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKGVsZW1lbnRzID0+XG4gICAgICAgICAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgIC4uLmVsZW1lbnRzLm1hcCgoZWxlbWVudCwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlZEZyb21FdmVudChlbGVtZW50LCAna2V5ZG93bicpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKCh7a2V5Q29kZX0pID0+IGtleUNvZGUgPT09IDM5KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmV2ZW50RGVmYXVsdCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcFRvKGluZGV4KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldCBpbW1lZGlhdGUkKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRzJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKGVsZW1lbnRzID0+XG4gICAgICAgICAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgIC4uLmVsZW1lbnRzLm1hcCgoZWxlbWVudCwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlZEZyb21FdmVudChlbGVtZW50LCAnY2xpY2snKS5waXBlKG1hcFRvKGluZGV4KSksXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldCBkZWJvdW5jZSQoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudHMkLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoZWxlbWVudHMgPT5cbiAgICAgICAgICAgICAgICBtZXJnZShcbiAgICAgICAgICAgICAgICAgICAgLi4uZWxlbWVudHMubWFwKChlbGVtZW50LCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KGVsZW1lbnQsICdmb2N1cycpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KGVsZW1lbnQsICdibHVyJyksXG4gICAgICAgICAgICAgICAgICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKCh7cmVsYXRlZFRhcmdldH0pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm90SW5Ecm9wZG93bihyZWxhdGVkVGFyZ2V0LCBpbmRleCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAoKHt0eXBlfSkgPT4gKHR5cGUgPT09ICdmb2N1cycgPyBpbmRleCA6IE5hTikpLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGRlYm91bmNlVGltZSgzMDApLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgbm90SW5Ecm9wZG93bihlbGVtZW50OiBFdmVudFRhcmdldCB8IG51bGwsIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgZHJvcGRvd24gPSB0aGlzLmRyb3Bkb3ducy50b0FycmF5KClbaW5kZXhdO1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhZHJvcGRvd24gfHxcbiAgICAgICAgICAgICFkcm9wZG93bi5kcm9wZG93bkJveFJlZiB8fFxuICAgICAgICAgICAgIWRyb3Bkb3duLmRyb3Bkb3duQm94UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZWxlbWVudClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHRyeVRvRm9jdXMoaW5kZXg6IG51bWJlcikge1xuICAgICAgICBjb25zdCBkcm9wZG93biA9IHRoaXMuZHJvcGRvd25zLnRvQXJyYXkoKVtpbmRleF07XG4gICAgICAgIGNvbnN0IGNvbnRlbnQgPVxuICAgICAgICAgICAgZHJvcGRvd24gJiZcbiAgICAgICAgICAgIGRyb3Bkb3duLmRyb3Bkb3duQm94UmVmICYmXG4gICAgICAgICAgICBkcm9wZG93bi5kcm9wZG93bkJveFJlZi5pbnN0YW5jZS5jb250ZW50RWxlbWVudFJlZjtcblxuICAgICAgICBpZiAoIWNvbnRlbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGl0ZW0gPSBnZXRDbG9zZXN0S2V5Ym9hcmRGb2N1c2FibGUoXG4gICAgICAgICAgICBjb250ZW50Lm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICAgIGNvbnRlbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgc2V0TmF0aXZlRm9jdXNlZChpdGVtKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -28,7 +28,7 @@ let TuiScrollbarDirective = class TuiScrollbarDirective {
28
28
  const horizontal = getOffsetHorizontal(event, rect);
29
29
  return mousemove$.pipe(map(event => this.getScrolled(event, vertical, horizontal)), takeUntil(mouseup$));
30
30
  })))
31
- .pipe(takeUntil(destroy$), tuiZonefree(ngZone))
31
+ .pipe(tuiZonefree(ngZone), takeUntil(destroy$))
32
32
  .subscribe(([scrollTop, scrollLeft]) => {
33
33
  const [x, y] = this.viewportScroller.getScrollPosition();
34
34
  if (!this.container) {
@@ -46,7 +46,7 @@ let TuiScrollbarDirective = class TuiScrollbarDirective {
46
46
  }
47
47
  });
48
48
  merge(fromEvent(this.container ? this.container.nativeElement : this.windowRef, 'scroll'), animationFrame$.pipe(throttleTime(POLLING_TIME)))
49
- .pipe(takeUntil(destroy$), tuiZonefree(ngZone))
49
+ .pipe(tuiZonefree(ngZone), takeUntil(destroy$))
50
50
  .subscribe(() => {
51
51
  if (this.tuiScrollbar === 'vertical') {
52
52
  renderer.setStyle(nativeElement, 'top', `${this.thumb * 100}%`);
@@ -140,4 +140,4 @@ function getOffsetVertical({ clientY }, { top, height }) {
140
140
  function getOffsetHorizontal({ clientX }, { left, width }) {
141
141
  return (clientX - left) / width;
142
142
  }
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvc2Nyb2xsLWNvbnRyb2xzLyIsInNvdXJjZXMiOlsic2Nyb2xsYmFyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFFBQVEsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzNELE9BQU8sRUFDSCxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFFBQVEsRUFDUixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsWUFBWSxFQUNaLGNBQWMsRUFDZCxlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLFdBQVcsRUFDWCxjQUFjLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxlQUFlLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFdEUsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUM7QUFFckIsV0FBVztBQUtYLElBQWEscUJBQXFCLEdBQWxDLE1BQWEscUJBQXFCO0lBSTlCLFlBQ29CLE1BQWMsRUFDWCxRQUFtQixFQUNYLFFBQTBCLEVBQzVCLGVBQW1DLEVBQ2xCLE9BQWdDLEVBR3pELFNBQXlDLEVBQ3ZCLFdBQXFCLEVBQ3ZCLFNBQWlCLEVBQ2IsVUFBbUMsRUFDN0IsZ0JBQWtDO1FBUG5DLFlBQU8sR0FBUCxPQUFPLENBQXlCO1FBR3pELGNBQVMsR0FB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Q0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDO0FBQ3BDLENBQUM7QUFFRCxTQUFTLG1CQUFtQixDQUFDLEVBQUMsT0FBTyxFQUFhLEVBQUUsRUFBQyxJQUFJLEVBQUUsS0FBSyxFQUFhO0lBQ3pFLE9BQU8sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDO0FBQ3BDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RPQ1VNRU5ULCBWaWV3cG9ydFNjcm9sbGVyfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9wdGlvbmFsLFxuICAgIFJlbmRlcmVyMixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FOSU1BVElPTl9GUkFNRSwgV0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgUE9MTElOR19USU1FLFxuICAgIHByZXZlbnREZWZhdWx0LFxuICAgIHN0b3BQcm9wYWdhdGlvbixcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB0dWlab25lZnJlZSxcbiAgICB0eXBlZEZyb21FdmVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1RVSV9FTEVNRU5UX1JFRiwgVFVJX1NDUk9MTF9SRUZ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aU9yaWVudGF0aW9uVH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHtmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGhyb3R0bGVUaW1lfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmNvbnN0IE1JTl9XSURUSCA9IDI0O1xuXG4vLyBAZHluYW1pY1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpU2Nyb2xsYmFyXScsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTY3JvbGxiYXJEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpXG4gICAgdHVpU2Nyb2xsYmFyOiBUdWlPcmllbnRhdGlvblQgPSAndmVydGljYWwnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChSZW5kZXJlcjIpIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+LFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgICAgIEBJbmplY3QoVFVJX0VMRU1FTlRfUkVGKSBwcml2YXRlIHJlYWRvbmx5IHdyYXBwZXI6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFRVSV9TQ1JPTExfUkVGKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCBudWxsLFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50UmVmOiBEb2N1bWVudCxcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luZG93UmVmOiBXaW5kb3csXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChWaWV3cG9ydFNjcm9sbGVyKSBwcml2YXRlIHJlYWRvbmx5IHZpZXdwb3J0U2Nyb2xsZXI6IFZpZXdwb3J0U2Nyb2xsZXIsXG4gICAgKSB7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuZWxlbWVudFJlZjtcbiAgICAgICAgY29uc3QgbW91c2Vkb3duJCA9IHR5cGVkRnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsICdtb3VzZWRvd24nKTtcbiAgICAgICAgY29uc3QgbW91c2Vtb3ZlJCA9IHR5cGVkRnJvbUV2ZW50KHRoaXMuZG9jdW1lbnRSZWYsICdtb3VzZW1vdmUnKTtcbiAgICAgICAgY29uc3QgbW91c2V1cCQgPSB0eXBlZEZyb21FdmVudCh0aGlzLmRvY3VtZW50UmVmLCAnbW91c2V1cCcpO1xuICAgICAgICBjb25zdCBtb3VzZWRvd25XcmFwcGVyJCA9IHR5cGVkRnJvbUV2ZW50KHdyYXBwZXIubmF0aXZlRWxlbWVudCwgJ21vdXNlZG93bicpO1xuXG4gICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgbW91c2Vkb3duV3JhcHBlciQucGlwZShcbiAgICAgICAgICAgICAgICBwcmV2ZW50RGVmYXVsdCgpLFxuICAgICAgICAgICAgICAgIG1hcChldmVudCA9PiB0aGlzLmdldFNjcm9sbGVkKGV2ZW50LCAwLjUsIDAuNSkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIG1vdXNlZG93biQucGlwZShcbiAgICAgICAgICAgICAgICBwcmV2ZW50RGVmYXVsdCgpLFxuICAgICAgICAgICAgICAgIHN0b3BQcm9wYWdhdGlvbigpLFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChldmVudCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlY3QgPSBuYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB2ZXJ0aWNhbCA9IGdldE9mZnNldFZlcnRpY2FsKGV2ZW50LCByZWN0KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaG9yaXpvbnRhbCA9IGdldE9mZnNldEhvcml6b250YWwoZXZlbnQsIHJlY3QpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBtb3VzZW1vdmUkLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAoZXZlbnQgPT4gdGhpcy5nZXRTY3JvbGxlZChldmVudCwgdmVydGljYWwsIGhvcml6b250YWwpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbChtb3VzZXVwJCksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICApXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwoZGVzdHJveSQpLCB0dWlab25lZnJlZShuZ1pvbmUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoW3Njcm9sbFRvcCwgc2Nyb2xsTGVmdF0pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBbeCwgeV0gPSB0aGlzLnZpZXdwb3J0U2Nyb2xsZXIuZ2V0U2Nyb2xsUG9zaXRpb24oKTtcblxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5jb250YWluZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52aWV3cG9ydFNjcm9sbGVyLnNjcm9sbFRvUG9zaXRpb24oW1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCcgPyB4IDogc2Nyb2xsTGVmdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnID8gc2Nyb2xsVG9wIDogeSxcbiAgICAgICAgICAgICAgICAgICAgXSk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRQcm9wZXJ0eShcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2Nyb2xsVG9wJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbFRvcCxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRQcm9wZXJ0eShcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2Nyb2xsTGVmdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxMZWZ0LFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgZnJvbUV2ZW50KFxuICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyID8gdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudCA6IHRoaXMud2luZG93UmVmLFxuICAgICAgICAgICAgICAgICdzY3JvbGwnLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGFuaW1hdGlvbkZyYW1lJC5waXBlKHRocm90dGxlVGltZShQT0xMSU5HX1RJTUUpKSxcbiAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKGRlc3Ryb3kkKSwgdHVpWm9uZWZyZWUobmdab25lKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRTdHlsZShuYXRpdmVFbGVtZW50LCAndG9wJywgYCR7dGhpcy50aHVtYiAqIDEwMH0lYCk7XG4gICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldFN0eWxlKG5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCBgJHt0aGlzLnZpZXcgKiAxMDB9JWApO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldFN0eWxlKG5hdGl2ZUVsZW1lbnQsICdsZWZ0JywgYCR7dGhpcy50aHVtYiAqIDEwMH0lYCk7XG4gICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldFN0eWxlKG5hdGl2ZUVsZW1lbnQsICd3aWR0aCcsIGAke3RoaXMudmlldyAqIDEwMH0lYCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgc2Nyb2xsZWQoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgc2Nyb2xsVG9wLFxuICAgICAgICAgICAgc2Nyb2xsSGVpZ2h0LFxuICAgICAgICAgICAgY2xpZW50SGVpZ2h0LFxuICAgICAgICAgICAgc2Nyb2xsTGVmdCxcbiAgICAgICAgICAgIHNjcm9sbFdpZHRoLFxuICAgICAgICAgICAgY2xpZW50V2lkdGgsXG4gICAgICAgIH0gPSB0aGlzLmNvbXB1dGVkQ29udGFpbmVyO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBzY3JvbGxUb3AgLyAoc2Nyb2xsSGVpZ2h0IC0gY2xpZW50SGVpZ2h0KVxuICAgICAgICAgICAgOiBzY3JvbGxMZWZ0IC8gKHNjcm9sbFdpZHRoIC0gY2xpZW50V2lkdGgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXBlbnNhdGlvbigpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7Y2xpZW50SGVpZ2h0LCBzY3JvbGxIZWlnaHQsIGNsaWVudFdpZHRoLCBzY3JvbGxXaWR0aH0gPVxuICAgICAgICAgICAgdGhpcy5jb21wdXRlZENvbnRhaW5lcjtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAoKGNsaWVudEhlaWdodCAqIGNsaWVudEhlaWdodCkgLyBzY3JvbGxIZWlnaHQgPiBNSU5fV0lEVEggJiZcbiAgICAgICAgICAgICAgICB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJykgfHxcbiAgICAgICAgICAgICgoY2xpZW50V2lkdGggKiBjbGllbnRXaWR0aCkgLyBzY3JvbGxXaWR0aCA+IE1JTl9XSURUSCAmJlxuICAgICAgICAgICAgICAgIHRoaXMudHVpU2Nyb2xsYmFyID09PSAnaG9yaXpvbnRhbCcpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCdcbiAgICAgICAgICAgID8gTUlOX1dJRFRIIC8gY2xpZW50SGVpZ2h0XG4gICAgICAgICAgICA6IE1JTl9XSURUSCAvIGNsaWVudFdpZHRoO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHRodW1iKCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGNvbXBlbnNhdGlvbiA9IHRoaXMuY29tcGVuc2F0aW9uIHx8IHRoaXMudmlldztcblxuICAgICAgICByZXR1cm4gdGhpcy5zY3JvbGxlZCAqICgxIC0gY29tcGVuc2F0aW9uKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCB2aWV3KCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHtjbGllbnRIZWlnaHQsIHNjcm9sbEhlaWdodCwgY2xpZW50V2lkdGgsIHNjcm9sbFdpZHRofSA9XG4gICAgICAgICAgICB0aGlzLmNvbXB1dGVkQ29udGFpbmVyO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBNYXRoLmNlaWwoKGNsaWVudEhlaWdodCAvIHNjcm9sbEhlaWdodCkgKiAxMDApIC8gMTAwXG4gICAgICAgICAgICA6IE1hdGguY2VpbCgoY2xpZW50V2lkdGggLyBzY3JvbGxXaWR0aCkgKiAxMDApIC8gMTAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXB1dGVkQ29udGFpbmVyKCk6IEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250YWluZXJcbiAgICAgICAgICAgID8gdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgOiB0aGlzLmRvY3VtZW50UmVmLnNjcm9sbGluZ0VsZW1lbnQhO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U2Nyb2xsZWQoXG4gICAgICAgIHtjbGllbnRZLCBjbGllbnRYfTogTW91c2VFdmVudCxcbiAgICAgICAgb2Zmc2V0VmVydGljYWw6IG51bWJlcixcbiAgICAgICAgb2Zmc2V0SG9yaXpvbnRhbDogbnVtYmVyLFxuICAgICk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgICAgICBjb25zdCB7b2Zmc2V0SGVpZ2h0LCBvZmZzZXRXaWR0aH0gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3RvcCwgbGVmdCwgd2lkdGgsIGhlaWdodH0gPVxuICAgICAgICAgICAgdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgY29uc3QgbWF4VG9wID0gdGhpcy5jb21wdXRlZENvbnRhaW5lci5zY3JvbGxIZWlnaHQgLSBoZWlnaHQ7XG4gICAgICAgIGNvbnN0IG1heExlZnQgPSB0aGlzLmNvbXB1dGVkQ29udGFpbmVyLnNjcm9sbFdpZHRoIC0gd2lkdGg7XG4gICAgICAgIGNvbnN0IHNjcm9sbGVkVG9wID1cbiAgICAgICAgICAgIChjbGllbnRZIC0gdG9wIC0gb2Zmc2V0SGVpZ2h0ICogb2Zmc2V0VmVydGljYWwpIC8gKGhlaWdodCAtIG9mZnNldEhlaWdodCk7XG4gICAgICAgIGNvbnN0IHNjcm9sbGVkTGVmdCA9XG4gICAgICAgICAgICAoY2xpZW50WCAtIGxlZnQgLSBvZmZzZXRXaWR0aCAqIG9mZnNldEhvcml6b250YWwpIC8gKHdpZHRoIC0gb2Zmc2V0V2lkdGgpO1xuXG4gICAgICAgIHJldHVybiBbbWF4VG9wICogc2Nyb2xsZWRUb3AsIG1heExlZnQgKiBzY3JvbGxlZExlZnRdO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gZ2V0T2Zmc2V0VmVydGljYWwoe2NsaWVudFl9OiBNb3VzZUV2ZW50LCB7dG9wLCBoZWlnaHR9OiBDbGllbnRSZWN0KTogbnVtYmVyIHtcbiAgICByZXR1cm4gKGNsaWVudFkgLSB0b3ApIC8gaGVpZ2h0O1xufVxuXG5mdW5jdGlvbiBnZXRPZmZzZXRIb3Jpem9udGFsKHtjbGllbnRYfTogTW91c2VFdmVudCwge2xlZnQsIHdpZHRofTogQ2xpZW50UmVjdCk6IG51bWJlciB7XG4gICAgcmV0dXJuIChjbGllbnRYIC0gbGVmdCkgLyB3aWR0aDtcbn1cbiJdfQ==
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvc2Nyb2xsLWNvbnRyb2xzLyIsInNvdXJjZXMiOlsic2Nyb2xsYmFyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFFBQVEsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzNELE9BQU8sRUFDSCxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFFBQVEsRUFDUixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsWUFBWSxFQUNaLGNBQWMsRUFDZCxlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLFdBQVcsRUFDWCxjQUFjLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxlQUFlLEVBQUUsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFdEUsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUM7QUFFckIsV0FBVztBQUtYLElBQWEscUJBQXFCLEdBQWxDLE1BQWEscUJBQXFCO0lBSTlCLFlBQ29CLE1BQWMsRUFDWCxRQUFtQixFQUNYLFFBQTBCLEVBQzVCLGVBQW1DLEVBQ2xCLE9BQWdDLEVBR3pELFNBQXlDLEVBQ3ZCLFdBQXFCLEVBQ3ZCLFNBQWlCLEVBQ2IsVUFBbUMsRUFDN0IsZ0JBQWtDO1FBUG5DLFlBQU8sR0FBUCxPQUFPLENBQXlCO1FBR3pELGNBQVMsR0FB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Q0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDO0FBQ3BDLENBQUM7QUFFRCxTQUFTLG1CQUFtQixDQUFDLEVBQUMsT0FBTyxFQUFhLEVBQUUsRUFBQyxJQUFJLEVBQUUsS0FBSyxFQUFhO0lBQ3pFLE9BQU8sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDO0FBQ3BDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RPQ1VNRU5ULCBWaWV3cG9ydFNjcm9sbGVyfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9wdGlvbmFsLFxuICAgIFJlbmRlcmVyMixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FOSU1BVElPTl9GUkFNRSwgV0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgUE9MTElOR19USU1FLFxuICAgIHByZXZlbnREZWZhdWx0LFxuICAgIHN0b3BQcm9wYWdhdGlvbixcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB0dWlab25lZnJlZSxcbiAgICB0eXBlZEZyb21FdmVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1RVSV9FTEVNRU5UX1JFRiwgVFVJX1NDUk9MTF9SRUZ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aU9yaWVudGF0aW9uVH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHtmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGhyb3R0bGVUaW1lfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmNvbnN0IE1JTl9XSURUSCA9IDI0O1xuXG4vLyBAZHluYW1pY1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpU2Nyb2xsYmFyXScsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTY3JvbGxiYXJEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpXG4gICAgdHVpU2Nyb2xsYmFyOiBUdWlPcmllbnRhdGlvblQgPSAndmVydGljYWwnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChSZW5kZXJlcjIpIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+LFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgICAgIEBJbmplY3QoVFVJX0VMRU1FTlRfUkVGKSBwcml2YXRlIHJlYWRvbmx5IHdyYXBwZXI6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFRVSV9TQ1JPTExfUkVGKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCBudWxsLFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50UmVmOiBEb2N1bWVudCxcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luZG93UmVmOiBXaW5kb3csXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChWaWV3cG9ydFNjcm9sbGVyKSBwcml2YXRlIHJlYWRvbmx5IHZpZXdwb3J0U2Nyb2xsZXI6IFZpZXdwb3J0U2Nyb2xsZXIsXG4gICAgKSB7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuZWxlbWVudFJlZjtcbiAgICAgICAgY29uc3QgbW91c2Vkb3duJCA9IHR5cGVkRnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsICdtb3VzZWRvd24nKTtcbiAgICAgICAgY29uc3QgbW91c2Vtb3ZlJCA9IHR5cGVkRnJvbUV2ZW50KHRoaXMuZG9jdW1lbnRSZWYsICdtb3VzZW1vdmUnKTtcbiAgICAgICAgY29uc3QgbW91c2V1cCQgPSB0eXBlZEZyb21FdmVudCh0aGlzLmRvY3VtZW50UmVmLCAnbW91c2V1cCcpO1xuICAgICAgICBjb25zdCBtb3VzZWRvd25XcmFwcGVyJCA9IHR5cGVkRnJvbUV2ZW50KHdyYXBwZXIubmF0aXZlRWxlbWVudCwgJ21vdXNlZG93bicpO1xuXG4gICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgbW91c2Vkb3duV3JhcHBlciQucGlwZShcbiAgICAgICAgICAgICAgICBwcmV2ZW50RGVmYXVsdCgpLFxuICAgICAgICAgICAgICAgIG1hcChldmVudCA9PiB0aGlzLmdldFNjcm9sbGVkKGV2ZW50LCAwLjUsIDAuNSkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIG1vdXNlZG93biQucGlwZShcbiAgICAgICAgICAgICAgICBwcmV2ZW50RGVmYXVsdCgpLFxuICAgICAgICAgICAgICAgIHN0b3BQcm9wYWdhdGlvbigpLFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChldmVudCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlY3QgPSBuYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB2ZXJ0aWNhbCA9IGdldE9mZnNldFZlcnRpY2FsKGV2ZW50LCByZWN0KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaG9yaXpvbnRhbCA9IGdldE9mZnNldEhvcml6b250YWwoZXZlbnQsIHJlY3QpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBtb3VzZW1vdmUkLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAoZXZlbnQgPT4gdGhpcy5nZXRTY3JvbGxlZChldmVudCwgdmVydGljYWwsIGhvcml6b250YWwpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbChtb3VzZXVwJCksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICApXG4gICAgICAgICAgICAucGlwZSh0dWlab25lZnJlZShuZ1pvbmUpLCB0YWtlVW50aWwoZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoW3Njcm9sbFRvcCwgc2Nyb2xsTGVmdF0pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBbeCwgeV0gPSB0aGlzLnZpZXdwb3J0U2Nyb2xsZXIuZ2V0U2Nyb2xsUG9zaXRpb24oKTtcblxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5jb250YWluZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52aWV3cG9ydFNjcm9sbGVyLnNjcm9sbFRvUG9zaXRpb24oW1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCcgPyB4IDogc2Nyb2xsTGVmdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnID8gc2Nyb2xsVG9wIDogeSxcbiAgICAgICAgICAgICAgICAgICAgXSk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRQcm9wZXJ0eShcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2Nyb2xsVG9wJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbFRvcCxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRQcm9wZXJ0eShcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2Nyb2xsTGVmdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxMZWZ0LFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgZnJvbUV2ZW50KFxuICAgICAgICAgICAgICAgIHRoaXMuY29udGFpbmVyID8gdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudCA6IHRoaXMud2luZG93UmVmLFxuICAgICAgICAgICAgICAgICdzY3JvbGwnLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGFuaW1hdGlvbkZyYW1lJC5waXBlKHRocm90dGxlVGltZShQT0xMSU5HX1RJTUUpKSxcbiAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUodHVpWm9uZWZyZWUobmdab25lKSwgdGFrZVVudGlsKGRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRTdHlsZShuYXRpdmVFbGVtZW50LCAndG9wJywgYCR7dGhpcy50aHVtYiAqIDEwMH0lYCk7XG4gICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldFN0eWxlKG5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCBgJHt0aGlzLnZpZXcgKiAxMDB9JWApO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldFN0eWxlKG5hdGl2ZUVsZW1lbnQsICdsZWZ0JywgYCR7dGhpcy50aHVtYiAqIDEwMH0lYCk7XG4gICAgICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldFN0eWxlKG5hdGl2ZUVsZW1lbnQsICd3aWR0aCcsIGAke3RoaXMudmlldyAqIDEwMH0lYCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgc2Nyb2xsZWQoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgc2Nyb2xsVG9wLFxuICAgICAgICAgICAgc2Nyb2xsSGVpZ2h0LFxuICAgICAgICAgICAgY2xpZW50SGVpZ2h0LFxuICAgICAgICAgICAgc2Nyb2xsTGVmdCxcbiAgICAgICAgICAgIHNjcm9sbFdpZHRoLFxuICAgICAgICAgICAgY2xpZW50V2lkdGgsXG4gICAgICAgIH0gPSB0aGlzLmNvbXB1dGVkQ29udGFpbmVyO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBzY3JvbGxUb3AgLyAoc2Nyb2xsSGVpZ2h0IC0gY2xpZW50SGVpZ2h0KVxuICAgICAgICAgICAgOiBzY3JvbGxMZWZ0IC8gKHNjcm9sbFdpZHRoIC0gY2xpZW50V2lkdGgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXBlbnNhdGlvbigpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7Y2xpZW50SGVpZ2h0LCBzY3JvbGxIZWlnaHQsIGNsaWVudFdpZHRoLCBzY3JvbGxXaWR0aH0gPVxuICAgICAgICAgICAgdGhpcy5jb21wdXRlZENvbnRhaW5lcjtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAoKGNsaWVudEhlaWdodCAqIGNsaWVudEhlaWdodCkgLyBzY3JvbGxIZWlnaHQgPiBNSU5fV0lEVEggJiZcbiAgICAgICAgICAgICAgICB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJykgfHxcbiAgICAgICAgICAgICgoY2xpZW50V2lkdGggKiBjbGllbnRXaWR0aCkgLyBzY3JvbGxXaWR0aCA+IE1JTl9XSURUSCAmJlxuICAgICAgICAgICAgICAgIHRoaXMudHVpU2Nyb2xsYmFyID09PSAnaG9yaXpvbnRhbCcpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCdcbiAgICAgICAgICAgID8gTUlOX1dJRFRIIC8gY2xpZW50SGVpZ2h0XG4gICAgICAgICAgICA6IE1JTl9XSURUSCAvIGNsaWVudFdpZHRoO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHRodW1iKCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGNvbXBlbnNhdGlvbiA9IHRoaXMuY29tcGVuc2F0aW9uIHx8IHRoaXMudmlldztcblxuICAgICAgICByZXR1cm4gdGhpcy5zY3JvbGxlZCAqICgxIC0gY29tcGVuc2F0aW9uKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCB2aWV3KCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHtjbGllbnRIZWlnaHQsIHNjcm9sbEhlaWdodCwgY2xpZW50V2lkdGgsIHNjcm9sbFdpZHRofSA9XG4gICAgICAgICAgICB0aGlzLmNvbXB1dGVkQ29udGFpbmVyO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBNYXRoLmNlaWwoKGNsaWVudEhlaWdodCAvIHNjcm9sbEhlaWdodCkgKiAxMDApIC8gMTAwXG4gICAgICAgICAgICA6IE1hdGguY2VpbCgoY2xpZW50V2lkdGggLyBzY3JvbGxXaWR0aCkgKiAxMDApIC8gMTAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXB1dGVkQ29udGFpbmVyKCk6IEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250YWluZXJcbiAgICAgICAgICAgID8gdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgOiB0aGlzLmRvY3VtZW50UmVmLnNjcm9sbGluZ0VsZW1lbnQhO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U2Nyb2xsZWQoXG4gICAgICAgIHtjbGllbnRZLCBjbGllbnRYfTogTW91c2VFdmVudCxcbiAgICAgICAgb2Zmc2V0VmVydGljYWw6IG51bWJlcixcbiAgICAgICAgb2Zmc2V0SG9yaXpvbnRhbDogbnVtYmVyLFxuICAgICk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgICAgICBjb25zdCB7b2Zmc2V0SGVpZ2h0LCBvZmZzZXRXaWR0aH0gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3RvcCwgbGVmdCwgd2lkdGgsIGhlaWdodH0gPVxuICAgICAgICAgICAgdGhpcy53cmFwcGVyLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgY29uc3QgbWF4VG9wID0gdGhpcy5jb21wdXRlZENvbnRhaW5lci5zY3JvbGxIZWlnaHQgLSBoZWlnaHQ7XG4gICAgICAgIGNvbnN0IG1heExlZnQgPSB0aGlzLmNvbXB1dGVkQ29udGFpbmVyLnNjcm9sbFdpZHRoIC0gd2lkdGg7XG4gICAgICAgIGNvbnN0IHNjcm9sbGVkVG9wID1cbiAgICAgICAgICAgIChjbGllbnRZIC0gdG9wIC0gb2Zmc2V0SGVpZ2h0ICogb2Zmc2V0VmVydGljYWwpIC8gKGhlaWdodCAtIG9mZnNldEhlaWdodCk7XG4gICAgICAgIGNvbnN0IHNjcm9sbGVkTGVmdCA9XG4gICAgICAgICAgICAoY2xpZW50WCAtIGxlZnQgLSBvZmZzZXRXaWR0aCAqIG9mZnNldEhvcml6b250YWwpIC8gKHdpZHRoIC0gb2Zmc2V0V2lkdGgpO1xuXG4gICAgICAgIHJldHVybiBbbWF4VG9wICogc2Nyb2xsZWRUb3AsIG1heExlZnQgKiBzY3JvbGxlZExlZnRdO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gZ2V0T2Zmc2V0VmVydGljYWwoe2NsaWVudFl9OiBNb3VzZUV2ZW50LCB7dG9wLCBoZWlnaHR9OiBDbGllbnRSZWN0KTogbnVtYmVyIHtcbiAgICByZXR1cm4gKGNsaWVudFkgLSB0b3ApIC8gaGVpZ2h0O1xufVxuXG5mdW5jdGlvbiBnZXRPZmZzZXRIb3Jpem9udGFsKHtjbGllbnRYfTogTW91c2VFdmVudCwge2xlZnQsIHdpZHRofTogQ2xpZW50UmVjdCk6IG51bWJlciB7XG4gICAgcmV0dXJuIChjbGllbnRYIC0gbGVmdCkgLyB3aWR0aDtcbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
- export const VERSION = '2.41.1';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cy8iLCJzb3VyY2VzIjpbInZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuNDEuMSc7XG4iXX0=
1
+ export const VERSION = '2.42.0';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cy8iLCJzb3VyY2VzIjpbInZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuNDIuMCc7XG4iXX0=
@@ -56,7 +56,9 @@ var TuiAlertComponent = /** @class */ (function () {
56
56
  return;
57
57
  }
58
58
  timer(isNumber(this.autoClose) ? this.autoClose : this.options.defaultAutoCloseTime)
59
- .pipe(takeUntil(fromEvent(this.elementRef.nativeElement, 'mouseenter')), repeatWhen(function () { return fromEvent(_this.elementRef.nativeElement, 'mouseleave'); }), takeUntil(this.destroy$))
59
+ .pipe(takeUntil(fromEvent(this.elementRef.nativeElement, 'mouseenter')),
60
+ // eslint-disable-next-line rxjs/no-ignored-notifier
61
+ repeatWhen(function () { return fromEvent(_this.elementRef.nativeElement, 'mouseleave'); }), takeUntil(this.destroy$))
60
62
  .subscribe(function () { return _this.closeNotification(); });
61
63
  };
62
64
  TuiAlertComponent.ctorParameters = function () { return [
@@ -93,4 +95,4 @@ var TuiAlertComponent = /** @class */ (function () {
93
95
  return TuiAlertComponent;
94
96
  }());
95
97
  export { TuiAlertComponent };
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9hbGVydC8iLCJzb3VyY2VzIjpbImFsZXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxRQUFRLEVBQ1Isc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFHeEYsT0FBTyxFQUNILHFCQUFxQixFQUNyQix3QkFBd0IsR0FFM0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUMsb0JBQW9CLEVBQXNCLE1BQU0sMEJBQTBCLENBQUM7QUFDbkYsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQVlyRCxpRkFBaUY7QUFVakY7SUFXSSwyQkFDeUMsVUFBbUMsRUFDNUIsUUFBMkIsRUFFdEQsT0FBc0MsRUFFdEMsZ0JBQWtDLEVBQ1osSUFBc0M7UUFOeEMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDNUIsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFFdEQsWUFBTyxHQUFQLE9BQU8sQ0FBK0I7UUFFdEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNaLFNBQUksR0FBSixJQUFJLENBQWtDO1FBakJoRSxjQUFTLEdBQ3RCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEtBQUssVUFBVTtZQUNyQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDdkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBS3JCLGNBQVMsR0FBRyxXQUFDLEtBQUssRUFBRSxFQUFFLElBQUssSUFBSSxDQUFDLGdCQUFnQixDQUFVLENBQUM7SUFVakUsQ0FBQztJQUVKLG9DQUFRLEdBQVI7UUFDSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELHNCQUFJLHNDQUFPO2FBQVg7WUFDSSxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsQ0FBQzs7O09BQUE7SUFFRCw2Q0FBaUIsR0FBakI7UUFDSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBR08sNENBQWdCLEdBQXhCLFVBQXlCLEVBS1U7WUFKL0Isd0JBQVMsRUFDVCxrQkFBTSxFQUNOLGNBQUksRUFDSixnQkFBSztRQUVMLE9BQU87WUFDSCxTQUFTLEVBQUUsTUFBTTtZQUNqQixJQUFJLE1BQUE7WUFDSixLQUFLLE9BQUE7WUFDTCxTQUFTLEVBQUU7Z0JBQ1AsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLENBQUM7WUFDRCxRQUFRLEVBQUUsVUFBQyxJQUFPO2dCQUNkLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDekIsQ0FBQztZQUNELGdCQUFnQixFQUFFLFVBQUMsSUFBTztnQkFDdEIsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDckIsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLENBQUM7U0FDSixDQUFDO0lBQ04sQ0FBQztJQUVPLHlDQUFhLEdBQXJCO1FBQUEsaUJBY0M7UUFiRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNqQixPQUFPO1NBQ1Y7UUFFRCxLQUFLLENBQ0QsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FDaEY7YUFDSSxJQUFJLENBQ0QsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQyxFQUNqRSxVQUFVLENBQUMsY0FBTSxPQUFBLFNBQVMsQ0FBQyxLQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsRUFBdEQsQ0FBc0QsQ0FBQyxFQUN4RSxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUMzQjthQUNBLFNBQVMsQ0FBQyxjQUFNLE9BQUEsS0FBSSxDQUFDLGlCQUFpQixFQUFFLEVBQXhCLENBQXdCLENBQUMsQ0FBQztJQUNuRCxDQUFDOztnQkEzRG9ELFVBQVUsdUJBQTFELE1BQU0sU0FBQyxVQUFVO2dCQUNvQyxpQkFBaUIsdUJBQXRFLE1BQU0sU0FBQyxpQkFBaUI7Z0RBQ3hCLE1BQU0sU0FBQyx3QkFBd0I7Z0RBRS9CLE1BQU0sU0FBQyxxQkFBcUI7Z0RBRTVCLE1BQU0sU0FBQyxvQkFBb0I7O0lBVGhDO1FBSEMsV0FBVyxDQUFDLFlBQVksQ0FBQztRQUN6QixXQUFXLENBQUMsa0JBQWtCLENBQUM7UUFDL0IsV0FBVyxDQUFDLG9CQUFvQixDQUFDO3dEQUNrQztJQXlCcEU7UUFEQyxPQUFPOzZEQXNCUDtJQXZEUSxpQkFBaUI7UUFUN0IsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLFdBQVc7WUFDckIsd3pDQUFvQztZQUVwQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtZQUMvQyxTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztZQUM5QixVQUFVLEVBQUUsQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixDQUFDO1lBQzNELElBQUksRUFBRSxFQUFDLElBQUksRUFBRSxPQUFPLEVBQUM7O1NBQ3hCLENBQUM7UUFhTyxXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNsQixXQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQ3pCLFdBQUEsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUE7UUFFaEMsV0FBQSxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQTtRQUU3QixXQUFBLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO09BbEJ4QixpQkFBaUIsQ0F3RTdCO0lBQUQsd0JBQUM7Q0FBQSxBQXhFRCxJQXdFQztTQXhFWSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgaXNOdW1iZXIsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICBUdWlEaWFsb2csXG4gICAgdHVpUHVyZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge3R1aUZhZGVJbiwgdHVpSGVpZ2h0Q29sbGFwc2UsIHR1aVNsaWRlSW5SaWdodH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1R1aU5vdGlmaWNhdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZW51bXMnO1xuaW1wb3J0IHtUdWlBbGVydE9wdGlvbnN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgICBUVUlfQU5JTUFUSU9OX09QVElPTlMsXG4gICAgVFVJX05PVElGSUNBVElPTl9PUFRJT05TLFxuICAgIFR1aU5vdGlmaWNhdGlvbkRlZmF1bHRPcHRpb25zLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtQT0xZTU9SUEhFVVNfQ09OVEVYVCwgUG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcbmltcG9ydCB7ZnJvbUV2ZW50LCB0aW1lcn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3JlcGVhdFdoZW4sIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vLyBUT0RPOiBSZW1vdmUgYW5kIHN0YXJ0IHVzaW5nIFR1aURpYWxvZzxUdWlBbGVydE9wdGlvbnM8ST4sIE8+XG5leHBvcnQgaW50ZXJmYWNlIFR1aU5vdGlmaWNhdGlvbkNvbnRlbnRDb250ZXh0PE8gPSB2b2lkLCBJID0gdW5kZWZpbmVkPlxuICAgIGV4dGVuZHMgVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlOb3RpZmljYXRpb24+IHtcbiAgICBsYWJlbDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PFR1aU5vdGlmaWNhdGlvbj4+O1xuICAgIGRhdGE6IEk7XG4gICAgY2xvc2VIb29rOiAoKSA9PiB2b2lkO1xuICAgIGVtaXRIb29rOiAoZGF0YTogTykgPT4gdm9pZDtcbiAgICBlbWl0QW5kQ2xvc2VIb29rOiAoZGF0YTogTykgPT4gdm9pZDtcbn1cblxuLy8gVE9ETzogUmVmYWN0b3IgYWNjb3JkaW5nIHRvIG5ldyBjb250ZXh0IGJ5IDMuMCBhbmQgZ2V0IHJpZCBvZiAkYW55IGluIHRlbXBsYXRlXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1hbGVydCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2FsZXJ0LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG4gICAgYW5pbWF0aW9uczogW3R1aUZhZGVJbiwgdHVpU2xpZGVJblJpZ2h0LCB0dWlIZWlnaHRDb2xsYXBzZV0sXG4gICAgaG9zdDoge3JvbGU6ICdhbGVydCd9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlBbGVydENvbXBvbmVudDxPLCBJPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRvQ2xvc2UgPVxuICAgICAgICB0eXBlb2YgdGhpcy5pdGVtLmF1dG9DbG9zZSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyB0aGlzLml0ZW0uYXV0b0Nsb3NlKHRoaXMuaXRlbS5zdGF0dXMpXG4gICAgICAgICAgICA6IHRoaXMuaXRlbS5hdXRvQ2xvc2U7XG5cbiAgICBASG9zdEJpbmRpbmcoJ0B0dWlGYWRlSW4nKVxuICAgIEBIb3N0QmluZGluZygnQHR1aVNsaWRlSW5SaWdodCcpXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpSGVpZ2h0Q29sbGFwc2UnKVxuICAgIHJlYWRvbmx5IGFuaW1hdGlvbiA9IHt2YWx1ZTogJycsIC4uLnRoaXMuYW5pbWF0aW9uT3B0aW9uc30gYXMgY29uc3Q7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkOiBUdWlEZXN0cm95U2VydmljZSxcbiAgICAgICAgQEluamVjdChUVUlfTk9USUZJQ0FUSU9OX09QVElPTlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHVpTm90aWZpY2F0aW9uRGVmYXVsdE9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoVFVJX0FOSU1BVElPTl9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGFuaW1hdGlvbk9wdGlvbnM6IEFuaW1hdGlvbk9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoUE9MWU1PUlBIRVVTX0NPTlRFWFQpIHJlYWRvbmx5IGl0ZW06IFR1aURpYWxvZzxUdWlBbGVydE9wdGlvbnM8ST4sIE8+LFxuICAgICkge31cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmluaXRBdXRvQ2xvc2UoKTtcbiAgICB9XG5cbiAgICBnZXQgY29udGV4dCgpOiBUdWlOb3RpZmljYXRpb25Db250ZW50Q29udGV4dDxPLCBJPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhbGN1bGF0ZUNvbnRleHQodGhpcy5pdGVtKTtcbiAgICB9XG5cbiAgICBjbG9zZU5vdGlmaWNhdGlvbigpIHtcbiAgICAgICAgdGhpcy5pdGVtLiRpbXBsaWNpdC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVDb250ZXh0KHtcbiAgICAgICAgJGltcGxpY2l0LFxuICAgICAgICBzdGF0dXMsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGxhYmVsLFxuICAgIH06IFR1aURpYWxvZzxUdWlBbGVydE9wdGlvbnM8ST4sIE8+KTogVHVpTm90aWZpY2F0aW9uQ29udGVudENvbnRleHQ8TywgST4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgJGltcGxpY2l0OiBzdGF0dXMsXG4gICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICBjbG9zZUhvb2s6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQuY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBlbWl0SG9vazogKGRhdGE6IE8pID0+IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQubmV4dChkYXRhKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBlbWl0QW5kQ2xvc2VIb29rOiAoZGF0YTogTykgPT4ge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdC5uZXh0KGRhdGEpO1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdC5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRBdXRvQ2xvc2UoKSB7XG4gICAgICAgIGlmICghdGhpcy5hdXRvQ2xvc2UpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRpbWVyKFxuICAgICAgICAgICAgaXNOdW1iZXIodGhpcy5hdXRvQ2xvc2UpID8gdGhpcy5hdXRvQ2xvc2UgOiB0aGlzLm9wdGlvbnMuZGVmYXVsdEF1dG9DbG9zZVRpbWUsXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChmcm9tRXZlbnQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdtb3VzZWVudGVyJykpLFxuICAgICAgICAgICAgICAgIHJlcGVhdFdoZW4oKCkgPT4gZnJvbUV2ZW50KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnbW91c2VsZWF2ZScpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2xvc2VOb3RpZmljYXRpb24oKSk7XG4gICAgfVxufVxuIl19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9hbGVydC8iLCJzb3VyY2VzIjpbImFsZXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxRQUFRLEVBQ1Isc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFHeEYsT0FBTyxFQUNILHFCQUFxQixFQUNyQix3QkFBd0IsR0FFM0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUMsb0JBQW9CLEVBQXNCLE1BQU0sMEJBQTBCLENBQUM7QUFDbkYsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQVlyRCxpRkFBaUY7QUFVakY7SUFXSSwyQkFDeUMsVUFBbUMsRUFDNUIsUUFBMkIsRUFFdEQsT0FBc0MsRUFFdEMsZ0JBQWtDLEVBQ1osSUFBc0M7UUFOeEMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDNUIsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFFdEQsWUFBTyxHQUFQLE9BQU8sQ0FBK0I7UUFFdEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNaLFNBQUksR0FBSixJQUFJLENBQWtDO1FBakJoRSxjQUFTLEdBQ3RCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEtBQUssVUFBVTtZQUNyQyxDQUFDLENB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QUFJLEVBQUUsT0FBTyxFQUFDOztTQUN4QixDQUFDO1FBYU8sV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQUN6QixXQUFBLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFBO1FBRWhDLFdBQUEsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUE7UUFFN0IsV0FBQSxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtPQWxCeEIsaUJBQWlCLENBeUU3QjtJQUFELHdCQUFDO0NBQUEsQUF6RUQsSUF5RUM7U0F6RVksaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBbmltYXRpb25PcHRpb25zfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIGlzTnVtYmVyLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgVHVpRGlhbG9nLFxuICAgIHR1aVB1cmUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHt0dWlGYWRlSW4sIHR1aUhlaWdodENvbGxhcHNlLCB0dWlTbGlkZUluUmlnaHR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtUdWlOb3RpZmljYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2VudW1zJztcbmltcG9ydCB7VHVpQWxlcnRPcHRpb25zfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG4gICAgVFVJX0FOSU1BVElPTl9PUFRJT05TLFxuICAgIFRVSV9OT1RJRklDQVRJT05fT1BUSU9OUyxcbiAgICBUdWlOb3RpZmljYXRpb25EZWZhdWx0T3B0aW9ucyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7UE9MWU1PUlBIRVVTX0NPTlRFWFQsIFBvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge2Zyb21FdmVudCwgdGltZXJ9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtyZXBlYXRXaGVuLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gVE9ETzogUmVtb3ZlIGFuZCBzdGFydCB1c2luZyBUdWlEaWFsb2c8VHVpQWxlcnRPcHRpb25zPEk+LCBPPlxuZXhwb3J0IGludGVyZmFjZSBUdWlOb3RpZmljYXRpb25Db250ZW50Q29udGV4dDxPID0gdm9pZCwgSSA9IHVuZGVmaW5lZD5cbiAgICBleHRlbmRzIFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpTm90aWZpY2F0aW9uPiB7XG4gICAgbGFiZWw6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlOb3RpZmljYXRpb24+PjtcbiAgICBkYXRhOiBJO1xuICAgIGNsb3NlSG9vazogKCkgPT4gdm9pZDtcbiAgICBlbWl0SG9vazogKGRhdGE6IE8pID0+IHZvaWQ7XG4gICAgZW1pdEFuZENsb3NlSG9vazogKGRhdGE6IE8pID0+IHZvaWQ7XG59XG5cbi8vIFRPRE86IFJlZmFjdG9yIGFjY29yZGluZyB0byBuZXcgY29udGV4dCBieSAzLjAgYW5kIGdldCByaWQgb2YgJGFueSBpbiB0ZW1wbGF0ZVxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktYWxlcnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hbGVydC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9hbGVydC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlGYWRlSW4sIHR1aVNsaWRlSW5SaWdodCwgdHVpSGVpZ2h0Q29sbGFwc2VdLFxuICAgIGhvc3Q6IHtyb2xlOiAnYWxlcnQnfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQWxlcnRDb21wb25lbnQ8TywgST4gaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0b0Nsb3NlID1cbiAgICAgICAgdHlwZW9mIHRoaXMuaXRlbS5hdXRvQ2xvc2UgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgID8gdGhpcy5pdGVtLmF1dG9DbG9zZSh0aGlzLml0ZW0uc3RhdHVzKVxuICAgICAgICAgICAgOiB0aGlzLml0ZW0uYXV0b0Nsb3NlO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpRmFkZUluJylcbiAgICBASG9zdEJpbmRpbmcoJ0B0dWlTbGlkZUluUmlnaHQnKVxuICAgIEBIb3N0QmluZGluZygnQHR1aUhlaWdodENvbGxhcHNlJylcbiAgICByZWFkb25seSBhbmltYXRpb24gPSB7dmFsdWU6ICcnLCAuLi50aGlzLmFuaW1hdGlvbk9wdGlvbnN9IGFzIGNvbnN0O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JDogVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoVFVJX05PVElGSUNBVElPTl9PUFRJT05TKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFR1aU5vdGlmaWNhdGlvbkRlZmF1bHRPcHRpb25zLFxuICAgICAgICBASW5qZWN0KFRVSV9BTklNQVRJT05fT1BUSU9OUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBhbmltYXRpb25PcHRpb25zOiBBbmltYXRpb25PcHRpb25zLFxuICAgICAgICBASW5qZWN0KFBPTFlNT1JQSEVVU19DT05URVhUKSByZWFkb25seSBpdGVtOiBUdWlEaWFsb2c8VHVpQWxlcnRPcHRpb25zPEk+LCBPPixcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5pbml0QXV0b0Nsb3NlKCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbnRleHQoKTogVHVpTm90aWZpY2F0aW9uQ29udGVudENvbnRleHQ8TywgST4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jYWxjdWxhdGVDb250ZXh0KHRoaXMuaXRlbSk7XG4gICAgfVxuXG4gICAgY2xvc2VOb3RpZmljYXRpb24oKSB7XG4gICAgICAgIHRoaXMuaXRlbS4kaW1wbGljaXQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgY2FsY3VsYXRlQ29udGV4dCh7XG4gICAgICAgICRpbXBsaWNpdCxcbiAgICAgICAgc3RhdHVzLFxuICAgICAgICBkYXRhLFxuICAgICAgICBsYWJlbCxcbiAgICB9OiBUdWlEaWFsb2c8VHVpQWxlcnRPcHRpb25zPEk+LCBPPik6IFR1aU5vdGlmaWNhdGlvbkNvbnRlbnRDb250ZXh0PE8sIEk+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICRpbXBsaWNpdDogc3RhdHVzLFxuICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgY2xvc2VIb29rOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgJGltcGxpY2l0LmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZW1pdEhvb2s6IChkYXRhOiBPKSA9PiB7XG4gICAgICAgICAgICAgICAgJGltcGxpY2l0Lm5leHQoZGF0YSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZW1pdEFuZENsb3NlSG9vazogKGRhdGE6IE8pID0+IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQubmV4dChkYXRhKTtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQuY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0QXV0b0Nsb3NlKCkge1xuICAgICAgICBpZiAoIXRoaXMuYXV0b0Nsb3NlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aW1lcihcbiAgICAgICAgICAgIGlzTnVtYmVyKHRoaXMuYXV0b0Nsb3NlKSA/IHRoaXMuYXV0b0Nsb3NlIDogdGhpcy5vcHRpb25zLmRlZmF1bHRBdXRvQ2xvc2VUaW1lLFxuICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwoZnJvbUV2ZW50KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnbW91c2VlbnRlcicpKSxcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnhqcy9uby1pZ25vcmVkLW5vdGlmaWVyXG4gICAgICAgICAgICAgICAgcmVwZWF0V2hlbigoKSA9PiBmcm9tRXZlbnQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdtb3VzZWxlYXZlJykpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZU5vdGlmaWNhdGlvbigpKTtcbiAgICB9XG59XG4iXX0=