@taiga-ui/core 2.41.0 → 2.43.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 (164) hide show
  1. package/bundles/taiga-ui-core-components-alert.umd.js +11 -2
  2. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-components-alert.umd.min.js +2 -2
  4. package/bundles/taiga-ui-core-components-alert.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-core-components-button.umd.js +1 -1
  6. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-button.umd.min.js +1 -1
  8. package/bundles/taiga-ui-core-components-button.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-data-list.umd.js +6 -4
  10. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-data-list.umd.min.js +1 -1
  12. package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-dropdown-box.umd.js +2 -1
  14. package/bundles/taiga-ui-core-components-dropdown-box.umd.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js +2 -2
  16. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-expand.umd.js +2 -1
  18. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-expand.umd.min.js +1 -1
  20. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  22. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  23. package/bundles/taiga-ui-core-components-link.umd.js +2 -1
  24. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  25. package/bundles/taiga-ui-core-components-link.umd.min.js +1 -1
  26. package/bundles/taiga-ui-core-components-link.umd.min.js.map +1 -1
  27. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +1 -1
  28. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  29. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js +1 -1
  30. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  31. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +1 -1
  32. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  33. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js +1 -1
  34. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  35. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  36. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +2 -2
  38. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  39. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js +1 -1
  40. package/bundles/taiga-ui-core-components-scroll-controls.umd.min.js.map +1 -1
  41. package/bundles/taiga-ui-core-constants.umd.js +1 -1
  42. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  43. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  44. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  45. package/bundles/taiga-ui-core-providers.umd.js +1 -1
  46. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  47. package/bundles/taiga-ui-core-providers.umd.min.js +1 -1
  48. package/bundles/taiga-ui-core-providers.umd.min.js.map +1 -1
  49. package/components/alert/alert.module.d.ts +2 -1
  50. package/components/alert/taiga-ui-core-components-alert.metadata.json +1 -1
  51. package/components/button/button-options.d.ts +1 -1
  52. package/components/button/taiga-ui-core-components-button.metadata.json +1 -1
  53. package/components/data-list/data-list.component.d.ts +1 -1
  54. package/components/data-list/taiga-ui-core-components-data-list.metadata.json +1 -1
  55. package/components/dropdown-box/taiga-ui-core-components-dropdown-box.metadata.json +1 -1
  56. package/components/expand/expand.component.d.ts +2 -2
  57. package/components/expand/taiga-ui-core-components-expand.metadata.json +1 -1
  58. package/components/hosted-dropdown/hosted-dropdown.component.d.ts +1 -1
  59. package/components/link/taiga-ui-core-components-link.metadata.json +1 -1
  60. package/components/primitive-calendar/taiga-ui-core-components-primitive-calendar.metadata.json +1 -1
  61. package/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.metadata.json +1 -1
  62. package/components/primitive-year-picker/primitive-year-picker.component.d.ts +1 -1
  63. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  64. package/constants/version.d.ts +1 -1
  65. package/esm2015/components/alert/alert.component.js +4 -2
  66. package/esm2015/components/alert/alert.module.js +7 -2
  67. package/esm2015/components/button/button-options.js +1 -1
  68. package/esm2015/components/button/button.component.js +2 -2
  69. package/esm2015/components/data-list/data-list-dropdown-manager.directive.js +2 -2
  70. package/esm2015/components/data-list/data-list.component.js +6 -5
  71. package/esm2015/components/dropdown-box/dropdown-box.component.js +4 -3
  72. package/esm2015/components/expand/expand.component.js +3 -2
  73. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +1 -1
  74. package/esm2015/components/link/link.component.js +3 -2
  75. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +2 -2
  76. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +2 -2
  77. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +1 -1
  78. package/esm2015/components/scroll-controls/scrollbar.directive.js +3 -3
  79. package/esm2015/constants/version.js +2 -2
  80. package/esm2015/providers/mode.provider.js +3 -3
  81. package/esm5/components/alert/alert.component.js +4 -2
  82. package/esm5/components/alert/alert.module.js +10 -2
  83. package/esm5/components/button/button-options.js +1 -1
  84. package/esm5/components/button/button.component.js +2 -2
  85. package/esm5/components/data-list/data-list-dropdown-manager.directive.js +2 -2
  86. package/esm5/components/data-list/data-list.component.js +7 -5
  87. package/esm5/components/dropdown-box/dropdown-box.component.js +4 -3
  88. package/esm5/components/expand/expand.component.js +3 -2
  89. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +1 -1
  90. package/esm5/components/link/link.component.js +3 -2
  91. package/esm5/components/primitive-calendar/primitive-calendar.component.js +2 -2
  92. package/esm5/components/primitive-textfield/primitive-textfield.component.js +2 -2
  93. package/esm5/components/primitive-year-picker/primitive-year-picker.component.js +1 -1
  94. package/esm5/components/scroll-controls/scrollbar.directive.js +3 -3
  95. package/esm5/constants/version.js +2 -2
  96. package/esm5/providers/mode.provider.js +3 -3
  97. package/fesm2015/taiga-ui-core-components-alert.js +8 -2
  98. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  99. package/fesm2015/taiga-ui-core-components-button.js +1 -1
  100. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  101. package/fesm2015/taiga-ui-core-components-data-list.js +6 -5
  102. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  103. package/fesm2015/taiga-ui-core-components-dropdown-box.js +3 -2
  104. package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
  105. package/fesm2015/taiga-ui-core-components-expand.js +2 -1
  106. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  107. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  108. package/fesm2015/taiga-ui-core-components-link.js +2 -1
  109. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  110. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +1 -1
  111. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  112. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +1 -1
  113. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  114. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  115. package/fesm2015/taiga-ui-core-components-scroll-controls.js +2 -2
  116. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  117. package/fesm2015/taiga-ui-core-constants.js +1 -1
  118. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  119. package/fesm2015/taiga-ui-core-providers.js +2 -2
  120. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  121. package/fesm5/taiga-ui-core-components-alert.js +11 -2
  122. package/fesm5/taiga-ui-core-components-alert.js.map +1 -1
  123. package/fesm5/taiga-ui-core-components-button.js +1 -1
  124. package/fesm5/taiga-ui-core-components-button.js.map +1 -1
  125. package/fesm5/taiga-ui-core-components-data-list.js +7 -5
  126. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  127. package/fesm5/taiga-ui-core-components-dropdown-box.js +3 -2
  128. package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
  129. package/fesm5/taiga-ui-core-components-expand.js +2 -1
  130. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  131. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  132. package/fesm5/taiga-ui-core-components-link.js +2 -1
  133. package/fesm5/taiga-ui-core-components-link.js.map +1 -1
  134. package/fesm5/taiga-ui-core-components-primitive-calendar.js +1 -1
  135. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  136. package/fesm5/taiga-ui-core-components-primitive-textfield.js +1 -1
  137. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  138. package/fesm5/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  139. package/fesm5/taiga-ui-core-components-scroll-controls.js +2 -2
  140. package/fesm5/taiga-ui-core-components-scroll-controls.js.map +1 -1
  141. package/fesm5/taiga-ui-core-constants.js +1 -1
  142. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  143. package/fesm5/taiga-ui-core-providers.js +2 -2
  144. package/fesm5/taiga-ui-core-providers.js.map +1 -1
  145. package/package.json +7 -7
  146. package/styles/markup/tui-group.less +1 -1
  147. package/styles/taiga-ui-global-old.less +18 -18
  148. package/styles/taiga-ui-global.less +18 -18
  149. package/styles/taiga-ui-local-old.less +5 -5
  150. package/styles/taiga-ui-local.less +7 -7
  151. package/styles/taiga-ui-local.scss +7 -7
  152. package/styles/taiga-ui-stackblitz.less +7 -0
  153. package/styles/taiga-ui-theme.less +4 -4
  154. package/styles/theme/dialog.less +1 -1
  155. package/styles/theme/wrapper/accent.less +1 -1
  156. package/styles/theme/wrapper/base.less +1 -1
  157. package/styles/theme/wrapper/icon.less +1 -1
  158. package/styles/theme/wrapper/outline.less +1 -1
  159. package/styles/theme/wrapper/primary.less +1 -1
  160. package/styles/theme/wrapper/secondary.less +1 -1
  161. package/styles/theme/wrapper/table.less +30 -12
  162. package/styles/theme/wrapper/textfield.less +1 -1
  163. package/styles/theme/wrapper/whiteblock.less +1 -1
  164. package/styles/theme/wrapper.less +10 -10
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/data-list/option/option.component.ts","ng://@taiga-ui/core/components/data-list/data-list.component.ts","ng://@taiga-ui/core/components/data-list/data-list.directive.ts","ng://@taiga-ui/core/components/data-list/data-list-dropdown-manager.directive.ts","ng://@taiga-ui/core/components/data-list/opt-group.directive.ts","ng://@taiga-ui/core/components/data-list/data-list.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","shouldFocus","_a","currentTarget","isNativeFocused","TuiOptionComponent","content","dataList","elementRef","host","dropdown","this","size","role","disabled","prototype","dropdownBoxRef","onClick","undefined","handleOption","onMouseMove","setNativeFocused","ngOnDestroy","handleFocusLossIfNecessary","nativeElement","Optional","type","Inject","args","TUI_OPTION_CONTENT","forwardRef","TuiDataListComponent","ElementRef","TUI_DATA_LIST_HOST","TuiDropdownDirective","Self","Input","HostBinding","tuiDefaultProp","HostListener","shouldCall","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","tabIndex","[attr.disabled]","defaultEmptyContent$","options","EMPTY_QUERY","emptyContent","itemsQueryListObservable","pipe","map","onFocusIn","relatedTarget","contains","origin","noop","onKeyDownArrow","current","step","elements","moveFocus","indexOf","element","isNativeFocusedIn","setNativeMouseFocused","getOptions","includeDisabled","toArray","filter","isPresent","onFocus","top","Array","from","querySelectorAll","Observable","TUI_NOTHING_FOUND_MESSAGE","ContentChildren","descendants","tuiPure","TuiDataListComponent_1","encapsulation","ViewEncapsulation","None","providers","provide","TUI_DATA_LIST_ACCESSOR","useExisting","TuiDataListDirective","Directive","TuiDataListDropdownManagerDirective","dropdowns","ngAfterViewInit","_this","right$","subscribe","index","tryToFocus","merge","immediate$","debounce$","switchMap","active","forEach","open","EMPTY","location","mouseEnter$","typedFromEvent","take","esc$","keyCode","tap","event","stopPropagation","MouseEvent","array","shareReplay","elements$","apply","preventDefault","mapTo","notInDropdown","NaN","debounceTime","instance","contentElementRef","item","getClosestKeyboardFocusable","read","TuiOptGroupDirective","label","TuiDataListModule","NgModule","imports","CommonModule","TuiSvgModule","PolymorpheusModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n isNativeFocused,\n setNativeFocused,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from '../data-list.component';\n\nexport function shouldFocus({\n currentTarget,\n}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !isNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: './option.template.html',\n styleUrls: ['./option.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: '-1',\n type: 'button',\n '[attr.disabled]': 'disabled || null',\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = 'm';\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiOptionRole = 'option';\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n // TODO: Fix dataList type when updated to Ivy and compilation drops metadata\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<{}>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: any,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding('class._with-dropdown')\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener('click')\n onClick() {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener('mousemove.init', ['$event'])\n @HostListener('mousemove.silent', ['$event'])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>) {\n setNativeFocused(currentTarget, true, true);\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy() {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n isNativeFocusedIn,\n isPresent,\n itemsQueryListObservable,\n moveFocus,\n setNativeMouseFocused,\n tuiDefaultProp,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_ACCESSOR, TUI_NOTHING_FOUND_MESSAGE} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n// @dynamic\n@Component({\n selector: 'tui-data-list',\n templateUrl: './data-list.template.html',\n styleUrls: ['./data-list.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListComponent),\n },\n ],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiDataListRole = 'listbox';\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = '';\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener('focusin', ['$event.relatedTarget', '$event.currentTarget'])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement) {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener('mousedown.prevent')\n noop() {}\n\n @HostListener('keydown.arrowDown.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])\n onKeyDownArrow(current: HTMLElement, step: number) {\n const {elements} = this;\n\n moveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener('wheel.silent.passive', ['$event.currentTarget'])\n @HostListener('mouseleave', ['$event.target'])\n handleFocusLossIfNecessary(element: HTMLElement) {\n if (this.origin && isNativeFocusedIn(element)) {\n setNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .toArray()\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(isPresent);\n }\n\n onFocus(element: HTMLElement, top: boolean) {\n const {elements} = this;\n\n moveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(element);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll('[tuiOption]'));\n }\n}\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[tuiDataList]',\n})\nexport class TuiDataListDirective {}\n","import {\n AfterViewInit,\n ContentChildren,\n Directive,\n ElementRef,\n QueryList,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestKeyboardFocusable,\n itemsQueryListObservable,\n preventDefault,\n setNativeFocused,\n tuiPure,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {\n debounceTime,\n filter,\n map,\n mapTo,\n shareReplay,\n switchMap,\n take,\n tap,\n} from 'rxjs/operators';\n\n// TODO: Move into separate module in 3.0\n@Directive({\n selector: 'tui-data-list[tuiDataListDropdownManager]',\n})\nexport class TuiDataListDropdownManagerDirective implements AfterViewInit {\n @ContentChildren(TuiDropdownDirective, {descendants: true})\n private readonly dropdowns: QueryList<TuiDropdownDirective> = EMPTY_QUERY;\n\n @ContentChildren(TuiDropdownDirective, {read: ElementRef, descendants: true})\n private readonly elements: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n ngAfterViewInit() {\n this.right$.subscribe(index => {\n this.tryToFocus(index);\n });\n\n merge(this.immediate$, this.debounce$)\n .pipe(\n switchMap(active => {\n this.dropdowns.forEach((dropdown, index) => {\n dropdown.open = index === active;\n });\n\n const element = this.elements.toArray()[active];\n const dropdown = this.dropdowns.toArray()[active];\n\n if (!element || !dropdown || !dropdown.dropdownBoxRef) {\n return EMPTY;\n }\n\n const {nativeElement} = dropdown.dropdownBoxRef.location;\n const mouseEnter$ = typedFromEvent(nativeElement, 'mouseenter').pipe(\n take(1),\n );\n const esc$ = merge(\n typedFromEvent(element.nativeElement, 'keydown'),\n typedFromEvent(nativeElement, 'keydown'),\n ).pipe(filter(({keyCode}) => keyCode === 27));\n\n return merge(mouseEnter$, esc$).pipe(\n tap(event => {\n if (dropdown.dropdownBoxRef) {\n event.stopPropagation();\n }\n\n setNativeFocused(element.nativeElement);\n // TODO: iframe warning\n dropdown.open = event instanceof MouseEvent;\n }),\n );\n }),\n )\n .subscribe();\n }\n\n @tuiPure\n private get elements$(): Observable<readonly HTMLElement[]> {\n return itemsQueryListObservable(this.elements).pipe(\n map(array => array.map(({nativeElement}) => nativeElement)),\n shareReplay(1),\n );\n }\n\n @tuiPure\n private get right$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'keydown').pipe(\n filter(({keyCode}) => keyCode === 39),\n preventDefault(),\n mapTo(index),\n ),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get immediate$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'click').pipe(mapTo(index)),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get debounce$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n merge(\n typedFromEvent(element, 'focus'),\n typedFromEvent(element, 'blur'),\n ).pipe(\n filter(({relatedTarget}) =>\n this.notInDropdown(relatedTarget, index),\n ),\n map(({type}) => (type === 'focus' ? index : NaN)),\n ),\n ),\n ),\n ),\n debounceTime(300),\n );\n }\n\n private notInDropdown(element: EventTarget | null, index: number): boolean {\n const dropdown = this.dropdowns.toArray()[index];\n\n return (\n !dropdown ||\n !dropdown.dropdownBoxRef ||\n !dropdown.dropdownBoxRef.location.nativeElement.contains(element)\n );\n }\n\n private tryToFocus(index: number) {\n const dropdown = this.dropdowns.toArray()[index];\n const content =\n dropdown &&\n dropdown.dropdownBoxRef &&\n dropdown.dropdownBoxRef.instance.contentElementRef;\n\n if (!content) {\n return;\n }\n\n const item = getClosestKeyboardFocusable(\n content.nativeElement,\n false,\n content.nativeElement,\n );\n\n if (item) {\n setNativeFocused(item);\n }\n }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-opt-group',\n host: {\n role: 'group',\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding('attr.data-label')\n @tuiDefaultProp()\n label = '';\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiDataListDropdownManagerDirective} from './data-list-dropdown-manager.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n})\nexport class TuiDataListModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/data-list/option/option.component.ts","ng://@taiga-ui/core/components/data-list/data-list.component.ts","ng://@taiga-ui/core/components/data-list/data-list.directive.ts","ng://@taiga-ui/core/components/data-list/data-list-dropdown-manager.directive.ts","ng://@taiga-ui/core/components/data-list/opt-group.directive.ts","ng://@taiga-ui/core/components/data-list/data-list.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","shouldFocus","_a","currentTarget","isNativeFocused","TuiOptionComponent","content","dataList","elementRef","host","dropdown","this","size","role","disabled","prototype","dropdownBoxRef","onClick","undefined","handleOption","onMouseMove","setNativeFocused","ngOnDestroy","handleFocusLossIfNecessary","nativeElement","Optional","type","Inject","args","TUI_OPTION_CONTENT","forwardRef","TuiDataListComponent","ElementRef","TUI_DATA_LIST_HOST","TuiDropdownDirective","Self","Input","HostBinding","tuiDefaultProp","HostListener","shouldCall","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","tabIndex","[attr.disabled]","defaultEmptyContent$","options","EMPTY_QUERY","emptyContent","itemsQueryListObservable","pipe","map","onFocusIn","relatedTarget","contains","origin","noop","onKeyDownArrow","current","step","elements","moveFocus","indexOf","element","isNativeFocusedIn","setNativeMouseFocused","getOptions","includeDisabled","toArray","filter","isPresent","onFocus","top","tuiAssertIsHTMLElement","Array","from","querySelectorAll","Observable","TUI_NOTHING_FOUND_MESSAGE","ContentChildren","descendants","tuiPure","TuiDataListComponent_1","encapsulation","ViewEncapsulation","None","providers","provide","TUI_DATA_LIST_ACCESSOR","useExisting","TuiDataListDirective","Directive","TuiDataListDropdownManagerDirective","dropdowns","ngAfterViewInit","_this","right$","subscribe","index","tryToFocus","merge","immediate$","debounce$","switchMap","active","forEach","open","EMPTY","location","mouseEnter$","typedFromEvent","take","esc$","keyCode","tap","event","stopPropagation","MouseEvent","array","shareReplay","bufferSize","refCount","elements$","apply","preventDefault","mapTo","notInDropdown","NaN","debounceTime","instance","contentElementRef","item","getClosestKeyboardFocusable","read","TuiOptGroupDirective","label","TuiDataListModule","NgModule","imports","CommonModule","TuiSvgModule","PolymorpheusModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n Optional,\n Self,\n TemplateRef,\n} from '@angular/core';\nimport {\n isNativeFocused,\n setNativeFocused,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiEventWith,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT} from '@taiga-ui/core/tokens';\nimport {TuiOptionRole, TuiSizeL, TuiSizeXS} from '@taiga-ui/core/types';\nimport {shouldCall} from '@tinkoff/ng-event-plugins';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from '../data-list.component';\n\nexport function shouldFocus({\n currentTarget,\n}: TuiEventWith<MouseEvent, HTMLElement>): boolean {\n return !isNativeFocused(currentTarget);\n}\n\n// TODO: Consider all use cases for aria roles\n@Component({\n selector: `button[tuiOption], a[tuiOption]`,\n templateUrl: './option.template.html',\n styleUrls: ['./option.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n tabIndex: '-1',\n type: 'button',\n '[attr.disabled]': 'disabled || null',\n },\n})\nexport class TuiOptionComponent<T = unknown> implements OnDestroy {\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = 'm';\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiOptionRole = 'option';\n\n @Input()\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n value?: T;\n\n // TODO: Fix dataList type when updated to Ivy and compilation drops metadata\n constructor(\n @Optional()\n @Inject(TUI_OPTION_CONTENT)\n readonly content: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<{}>>\n > | null,\n @Inject(forwardRef(() => TuiDataListComponent))\n private readonly dataList: any,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Optional()\n @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<T> | null,\n @Optional()\n @Self()\n @Inject(TuiDropdownDirective)\n readonly dropdown: TuiDropdownDirective | null,\n ) {}\n\n @HostBinding('class._with-dropdown')\n get active(): boolean {\n return !!this.dropdown && !!this.dropdown.dropdownBoxRef;\n }\n\n @HostListener('click')\n onClick() {\n if (this.host && this.value !== undefined) {\n this.host.handleOption(this.value);\n }\n }\n\n // @bad TODO: Consider aria-activedescendant for proper accessibility implementation\n @shouldCall(shouldFocus)\n @HostListener('mousemove.init', ['$event'])\n @HostListener('mousemove.silent', ['$event'])\n onMouseMove({currentTarget}: TuiEventWith<MouseEvent, HTMLElement>) {\n setNativeFocused(currentTarget, true, true);\n }\n\n // Preventing focus loss upon focused option removal\n ngOnDestroy() {\n this.dataList.handleFocusLossIfNecessary(this.elementRef.nativeElement);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n QueryList,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n isNativeFocusedIn,\n isPresent,\n itemsQueryListObservable,\n moveFocus,\n setNativeMouseFocused,\n tuiAssertIsHTMLElement,\n tuiDefaultProp,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\nimport {TUI_DATA_LIST_ACCESSOR, TUI_NOTHING_FOUND_MESSAGE} from '@taiga-ui/core/tokens';\nimport {TuiDataListRole} from '@taiga-ui/core/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TuiOptionComponent} from './option/option.component';\n\n// TODO: Consider aria-activedescendant for proper accessibility implementation\n// @dynamic\n@Component({\n selector: 'tui-data-list',\n templateUrl: './data-list.template.html',\n styleUrls: ['./data-list.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListComponent),\n },\n ],\n})\nexport class TuiDataListComponent<T> implements TuiDataListAccessor<T> {\n @ContentChildren(forwardRef(() => TuiOptionComponent), {descendants: true})\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n private origin?: HTMLElement;\n\n @Input()\n @HostBinding('attr.role')\n @tuiDefaultProp()\n role: TuiDataListRole = 'listbox';\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = '';\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_NOTHING_FOUND_MESSAGE)\n readonly defaultEmptyContent$: Observable<string>,\n ) {}\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @HostListener('focusin', ['$event.relatedTarget', '$event.currentTarget'])\n onFocusIn(relatedTarget: HTMLElement, currentTarget: HTMLElement) {\n if (!currentTarget.contains(relatedTarget) && !this.origin) {\n this.origin = relatedTarget;\n }\n }\n\n @HostListener('mousedown.prevent')\n noop() {}\n\n @HostListener('keydown.arrowDown.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])\n onKeyDownArrow(current: HTMLElement, step: number) {\n const {elements} = this;\n\n moveFocus(elements.indexOf(current), elements, step);\n }\n\n // TODO: Consider aria-activedescendant for proper accessibility implementation\n @HostListener('wheel.silent.passive', ['$event.currentTarget'])\n @HostListener('mouseleave', ['$event.target'])\n handleFocusLossIfNecessary(element: HTMLElement) {\n if (this.origin && isNativeFocusedIn(element)) {\n setNativeMouseFocused(this.origin, true, true);\n }\n }\n\n getOptions(includeDisabled: boolean = false): readonly T[] {\n return this.options\n .toArray()\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(isPresent);\n }\n\n onFocus({target}: Event, top: boolean) {\n tuiAssertIsHTMLElement(target);\n\n const {elements} = this;\n\n moveFocus(top ? -1 : elements.length, elements, top ? 1 : -1);\n this.handleFocusLossIfNecessary(target);\n }\n\n private get elements(): readonly HTMLElement[] {\n return Array.from(this.elementRef.nativeElement.querySelectorAll('[tuiOption]'));\n }\n}\n","import {Directive} from '@angular/core';\n\n@Directive({\n selector: 'ng-template[tuiDataList]',\n})\nexport class TuiDataListDirective {}\n","import {\n AfterViewInit,\n ContentChildren,\n Directive,\n ElementRef,\n QueryList,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestKeyboardFocusable,\n itemsQueryListObservable,\n preventDefault,\n setNativeFocused,\n tuiPure,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {TuiDropdownDirective} from '@taiga-ui/core/directives/dropdown';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {\n debounceTime,\n filter,\n map,\n mapTo,\n shareReplay,\n switchMap,\n take,\n tap,\n} from 'rxjs/operators';\n\n// TODO: Move into separate module in 3.0\n@Directive({\n selector: 'tui-data-list[tuiDataListDropdownManager]',\n})\nexport class TuiDataListDropdownManagerDirective implements AfterViewInit {\n @ContentChildren(TuiDropdownDirective, {descendants: true})\n private readonly dropdowns: QueryList<TuiDropdownDirective> = EMPTY_QUERY;\n\n @ContentChildren(TuiDropdownDirective, {read: ElementRef, descendants: true})\n private readonly elements: QueryList<ElementRef<HTMLElement>> = EMPTY_QUERY;\n\n ngAfterViewInit() {\n this.right$.subscribe(index => {\n this.tryToFocus(index);\n });\n\n merge(this.immediate$, this.debounce$)\n .pipe(\n switchMap(active => {\n this.dropdowns.forEach((dropdown, index) => {\n dropdown.open = index === active;\n });\n\n const element = this.elements.toArray()[active];\n const dropdown = this.dropdowns.toArray()[active];\n\n if (!element || !dropdown || !dropdown.dropdownBoxRef) {\n return EMPTY;\n }\n\n const {nativeElement} = dropdown.dropdownBoxRef.location;\n const mouseEnter$ = typedFromEvent(nativeElement, 'mouseenter').pipe(\n take(1),\n );\n const esc$ = merge(\n typedFromEvent(element.nativeElement, 'keydown'),\n typedFromEvent(nativeElement, 'keydown'),\n ).pipe(filter(({keyCode}) => keyCode === 27));\n\n return merge(mouseEnter$, esc$).pipe(\n tap(event => {\n if (dropdown.dropdownBoxRef) {\n event.stopPropagation();\n }\n\n setNativeFocused(element.nativeElement);\n // TODO: iframe warning\n dropdown.open = event instanceof MouseEvent;\n }),\n );\n }),\n )\n .subscribe();\n }\n\n @tuiPure\n private get elements$(): Observable<readonly HTMLElement[]> {\n return itemsQueryListObservable(this.elements).pipe(\n map(array => array.map(({nativeElement}) => nativeElement)),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n }\n\n @tuiPure\n private get right$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'keydown').pipe(\n filter(({keyCode}) => keyCode === 39),\n preventDefault(),\n mapTo(index),\n ),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get immediate$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n typedFromEvent(element, 'click').pipe(mapTo(index)),\n ),\n ),\n ),\n );\n }\n\n @tuiPure\n private get debounce$(): Observable<number> {\n return this.elements$.pipe(\n switchMap(elements =>\n merge(\n ...elements.map((element, index) =>\n merge(\n typedFromEvent(element, 'focus'),\n typedFromEvent(element, 'blur'),\n ).pipe(\n filter(({relatedTarget}) =>\n this.notInDropdown(relatedTarget, index),\n ),\n map(({type}) => (type === 'focus' ? index : NaN)),\n ),\n ),\n ),\n ),\n debounceTime(300),\n );\n }\n\n private notInDropdown(element: EventTarget | null, index: number): boolean {\n const dropdown = this.dropdowns.toArray()[index];\n\n return (\n !dropdown ||\n !dropdown.dropdownBoxRef ||\n !dropdown.dropdownBoxRef.location.nativeElement.contains(element)\n );\n }\n\n private tryToFocus(index: number) {\n const dropdown = this.dropdowns.toArray()[index];\n const content =\n dropdown &&\n dropdown.dropdownBoxRef &&\n dropdown.dropdownBoxRef.instance.contentElementRef;\n\n if (!content) {\n return;\n }\n\n const item = getClosestKeyboardFocusable(\n content.nativeElement,\n false,\n content.nativeElement,\n );\n\n if (item) {\n setNativeFocused(item);\n }\n }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-opt-group',\n host: {\n role: 'group',\n },\n})\nexport class TuiOptGroupDirective {\n @Input()\n @HostBinding('attr.data-label')\n @tuiDefaultProp()\n label = '';\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiSvgModule} from '@taiga-ui/core/components/svg';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDataListComponent} from './data-list.component';\nimport {TuiDataListDirective} from './data-list.directive';\nimport {TuiDataListDropdownManagerDirective} from './data-list-dropdown-manager.directive';\nimport {TuiOptGroupDirective} from './opt-group.directive';\nimport {TuiOptionComponent} from './option/option.component';\n\n@NgModule({\n imports: [CommonModule, TuiSvgModule, PolymorpheusModule],\n declarations: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n exports: [\n TuiDataListComponent,\n TuiOptionComponent,\n TuiOptGroupDirective,\n TuiDataListDirective,\n TuiDataListDropdownManagerDirective,\n ],\n})\nexport class TuiDataListModule {}\n"]}
@@ -454,6 +454,7 @@
454
454
  var host = this.directive.host;
455
455
  var ownerDocument = host.ownerDocument;
456
456
  var root = ownerDocument ? ownerDocument.body : host;
457
+ cdk.tuiAssertIsHTMLElement(host);
457
458
  var focusable = cdk.getClosestFocusable(host, previous, root);
458
459
  while (focusable !== null && host.contains(focusable)) {
459
460
  focusable = cdk.getClosestFocusable(focusable, previous, root);
@@ -488,7 +489,7 @@
488
489
  TuiDropdownBoxComponent = __decorate([
489
490
  core.Component({
490
491
  selector: 'tui-dropdown-box',
491
- template: "<div\n #activeZone=\"tuiActiveZone\"\n class=\"wrapper\"\n [tuiOverscroll]=\"overscroll\"\n [tuiMode]=\"null\"\n [tuiActiveZoneParent]=\"directive.activeZone\"\n>\n <tui-scrollbar class=\"scroll\">\n <div\n tabindex=\"0\"\n (focus)=\"onTopFocus()\"\n ></div>\n <div\n #content\n polymorpheus-outlet\n class=\"content\"\n [content]=\"directive.content\"\n [context]=\"getContext(directive.context, activeZone)\"\n ></div>\n <div\n tabindex=\"0\"\n (focus)=\"onBottomFocus()\"\n ></div>\n </tui-scrollbar>\n</div>\n",
492
+ template: "<div\n #activeZone=\"tuiActiveZone\"\n class=\"wrapper\"\n [tuiOverscroll]=\"overscroll\"\n [tuiMode]=\"null\"\n [tuiActiveZoneParent]=\"directive.activeZone || null\"\n>\n <tui-scrollbar class=\"scroll\">\n <div\n tabindex=\"0\"\n (focus)=\"onTopFocus()\"\n ></div>\n <div\n #content\n polymorpheus-outlet\n class=\"content\"\n [content]=\"directive.content\"\n [context]=\"getContext(directive.context, activeZone)\"\n ></div>\n <div\n tabindex=\"0\"\n (focus)=\"onBottomFocus()\"\n ></div>\n </tui-scrollbar>\n</div>\n",
492
493
  changeDetection: core.ChangeDetectionStrategy.Default,
493
494
  providers: [cdk.TuiDestroyService],
494
495
  animations: [animations.tuiDropdownAnimation],
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-components-dropdown-box.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/dropdown-box/dropdown-box.component.ts","ng://@taiga-ui/core/components/dropdown-box/dropdown-box.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {AnimationOptions} from '@angular/animations';\nimport {\n AfterViewChecked,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n AbstractTuiPortalHostComponent,\n getClosestElement,\n getClosestFocusable,\n inRange,\n POLLING_TIME,\n px,\n setNativeFocused,\n TuiActiveZoneDirective,\n TuiDestroyService,\n TuiDropdownHostComponent,\n TuiOverscrollModeT,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {tuiDropdownAnimation} from '@taiga-ui/core/animations';\nimport {DEFAULT_MARGIN, DEFAULT_MAX_WIDTH} from '@taiga-ui/core/constants';\nimport {TuiDropdownAnimation} from '@taiga-ui/core/enums';\nimport {TuiAnimationOptions, TuiDropdown} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATION_OPTIONS, TUI_DROPDOWN_DIRECTIVE} from '@taiga-ui/core/tokens';\nimport {TuiHorizontalDirection, TuiVerticalDirection} from '@taiga-ui/core/types';\nimport {getScreenWidth} from '@taiga-ui/core/utils/dom';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {takeUntil, throttleTime} from 'rxjs/operators';\n\n/**\n * This component is used to show template in a portal using default style of white rounded box with a shadow\n */\n// @bad TODO: OnPush\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: 'tui-dropdown-box',\n templateUrl: './dropdown-box.template.html',\n styleUrls: ['./dropdown-box.style.less'],\n changeDetection: ChangeDetectionStrategy.Default,\n providers: [TuiDestroyService],\n animations: [tuiDropdownAnimation],\n})\nexport class TuiDropdownBoxComponent implements AfterViewChecked {\n private readonly animationTop = {\n value: TuiDropdownAnimation.FadeInTop,\n ...this.options,\n };\n\n private readonly animationBottom = {\n value: TuiDropdownAnimation.FadeInBottom,\n ...this.options,\n };\n\n /**\n * Is previous position on top (to prevent jumping up and down on scroll)\n */\n private prevDirectionIsTop = false;\n\n @HostBinding('@tuiDropdownAnimation')\n dropdownAnimation!: TuiAnimationOptions;\n\n @ViewChild('content', {read: ElementRef})\n readonly contentElementRef?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(TuiDestroyService)\n destroy$: TuiDestroyService,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TUI_DROPDOWN_DIRECTIVE) readonly directive: TuiDropdown,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(AbstractTuiPortalHostComponent)\n private readonly portalHost: TuiDropdownHostComponent,\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n merge(\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n this.directive.refresh$,\n fromEvent(this.windowRef, 'resize'),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(() => {\n this.calculatePositionAndSize();\n });\n }\n\n get overscroll(): TuiOverscrollModeT {\n return this.inModal ? 'all' : 'scroll';\n }\n\n @tuiPure\n getContext<T extends object>(\n context?: T,\n activeZone?: TuiActiveZoneDirective,\n ):\n | (T & {activeZone?: TuiActiveZoneDirective})\n | {activeZone?: TuiActiveZoneDirective} {\n return {...context, activeZone};\n }\n\n ngAfterViewChecked() {\n this.calculatePositionAndSize();\n }\n\n onTopFocus() {\n this.moveFocusOutside(true);\n }\n\n onBottomFocus() {\n this.moveFocusOutside(false);\n }\n\n @tuiPure\n private get inModal(): boolean {\n // @awful TODO: get rid of component tag name dependency\n return !!getClosestElement(this.directive.host, 'tui-dialog-host');\n }\n\n private calculatePositionAndSize() {\n const {clientRect} = this.directive;\n const {style} = this.elementRef.nativeElement;\n const hostRect = this.directive.fixed\n ? this.portalHost.fixedPositionOffset()\n : this.portalHost.clientRect;\n\n style.position = this.directive.fixed ? 'fixed' : 'absolute';\n\n this.calculateVerticalPosition(style, clientRect, hostRect);\n this.calculateHorizontalPosition(style, clientRect, hostRect);\n this.calculateWidth(style, clientRect);\n }\n\n private getFinalAlign(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n ): TuiHorizontalDirection {\n const dropdownRect = this.elementRef.nativeElement.getBoundingClientRect();\n const dropdownWidth = this.elementRef.nativeElement.offsetWidth;\n const screenWidth = getScreenWidth(this.windowRef.document);\n const isDropdownSizeHypotheticallyFitsViewport =\n directiveRect.left + dropdownWidth < screenWidth ||\n directiveRect.right - dropdownWidth > 0;\n const isDropdownSizeActuallyFitsViewport =\n dropdownRect.right <= screenWidth && dropdownRect.left >= 0;\n let finalAlign: TuiHorizontalDirection = this.directive.align;\n\n switch (this.directive.align) {\n case 'left':\n if (\n isDropdownSizeHypotheticallyFitsViewport &&\n dropdownRect.right > screenWidth\n ) {\n finalAlign = 'right';\n }\n\n break;\n case 'right':\n if (isDropdownSizeHypotheticallyFitsViewport && dropdownRect.left < 0) {\n finalAlign = 'left';\n }\n\n break;\n }\n\n if (style.right === 'auto' && isDropdownSizeActuallyFitsViewport) {\n finalAlign = 'left';\n }\n\n if (style.left === 'auto' && isDropdownSizeActuallyFitsViewport) {\n finalAlign = 'right';\n }\n\n return finalAlign;\n }\n\n /**\n * Calculates horizontal position\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n * @param hostRect ClientRect of portal host\n */\n private calculateHorizontalPosition(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n hostRect: ClientRect,\n ) {\n const offset = this.directive.sided\n ? this.elementRef.nativeElement.getBoundingClientRect().width + DEFAULT_MARGIN\n : 0;\n const left = Math.ceil(directiveRect.left - hostRect.left - offset);\n const right = Math.floor(hostRect.right - directiveRect.right - offset);\n\n switch (this.getFinalAlign(style, directiveRect)) {\n case 'left':\n if (\n right + DEFAULT_MARGIN > this.windowRef.innerWidth ||\n inRange(left + DEFAULT_MARGIN, 0, this.windowRef.innerWidth)\n ) {\n style.left = px(left);\n style.right = 'auto';\n } else {\n style.left = 'auto';\n style.right = px(right);\n }\n\n break;\n case 'right':\n if (\n inRange(right + DEFAULT_MARGIN, 0, this.windowRef.innerWidth) ||\n left + DEFAULT_MARGIN > this.windowRef.innerWidth\n ) {\n style.left = 'auto';\n style.right = px(right);\n } else {\n style.left = px(left);\n style.right = 'auto';\n }\n\n break;\n }\n }\n\n /**\n * Calculates vertical position and height\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n * @param hostRect ClientRect of portal host\n */\n private calculateVerticalPosition(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n hostRect: ClientRect,\n ) {\n const windowHeight = this.windowRef.innerHeight;\n // Maximum height of the box\n const boxHeightLimit = Math.min(\n this.directive.maxHeight,\n windowHeight - DEFAULT_MARGIN * 2,\n );\n const offset = this.directive.sided\n ? DEFAULT_MARGIN - directiveRect.height\n : DEFAULT_MARGIN * 2;\n const topAvailableHeight = directiveRect.top - offset;\n const bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;\n const finalDirection = this.getFinalDirection(directiveRect);\n\n this.prevDirectionIsTop = finalDirection === 'top';\n\n if (finalDirection === 'top') {\n this.dropdownAnimation = this.animationBottom;\n\n style.maxHeight = px(Math.min(boxHeightLimit, topAvailableHeight));\n style.top = 'auto';\n style.bottom = px(\n hostRect.bottom - directiveRect.top - DEFAULT_MARGIN + offset,\n );\n } else {\n this.dropdownAnimation = this.animationTop;\n\n style.maxHeight = px(Math.min(boxHeightLimit, bottomAvailableHeight));\n style.top = px(directiveRect.bottom - hostRect.top - DEFAULT_MARGIN + offset);\n style.bottom = 'auto';\n }\n }\n\n private getFinalDirection(directiveRect: ClientRect): TuiVerticalDirection | null {\n const windowHeight = this.windowRef.innerHeight;\n const offset = this.directive.sided\n ? DEFAULT_MARGIN - directiveRect.height\n : DEFAULT_MARGIN * 2;\n\n // Maximum space available on top and on the bottom in the viewport\n const topAvailableHeight = directiveRect.top - offset;\n const bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;\n\n let finalDirection: TuiVerticalDirection | null = null;\n\n // Given direction is applied if we can fit the box in the limits that way\n switch (this.directive.direction) {\n case 'top':\n if (topAvailableHeight >= this.directive.minHeight) {\n finalDirection = 'top';\n }\n\n break;\n case 'bottom':\n if (bottomAvailableHeight >= this.directive.minHeight) {\n finalDirection = 'bottom';\n }\n\n break;\n }\n\n // Maximum height of the box\n const boxHeightLimit = Math.min(\n this.directive.maxHeight,\n windowHeight - DEFAULT_MARGIN * 2,\n );\n\n // Choose direction if given direction did not fit\n if (finalDirection === null && this.contentElementRef) {\n // Box height if it fits without scroll\n const visualHeight = Math.min(\n this.contentElementRef.nativeElement.getBoundingClientRect().height +\n (this.elementRef.nativeElement.offsetHeight -\n this.elementRef.nativeElement.clientHeight),\n boxHeightLimit,\n );\n\n // If there is enough space to fit below without scroll,\n // choose 'bottom', unless it was previously on the top\n if (this.prevDirectionIsTop && topAvailableHeight >= visualHeight) {\n finalDirection = 'top';\n } else if (bottomAvailableHeight >= visualHeight) {\n finalDirection = 'bottom';\n } else {\n // Corner case — select direction with more space\n finalDirection =\n bottomAvailableHeight >= topAvailableHeight ? 'bottom' : 'top';\n }\n }\n\n return finalDirection;\n }\n\n /**\n * Calculates width\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n */\n private calculateWidth(style: CSSStyleDeclaration, directiveRect: ClientRect) {\n style.width =\n this.directive.limitMinWidth === 'fixed' && !this.directive.sided\n ? px(directiveRect.width)\n : '';\n\n if (this.directive.limitMinWidth === 'min' && !this.directive.sided) {\n style.minWidth = px(directiveRect.width);\n style.maxWidth = px(DEFAULT_MAX_WIDTH);\n\n return;\n }\n\n style.minWidth = '';\n style.maxWidth = '';\n }\n\n private moveFocusOutside(previous: boolean) {\n const {host} = this.directive;\n const {ownerDocument} = host;\n const root = ownerDocument ? ownerDocument.body : host;\n\n let focusable = getClosestFocusable(host as HTMLElement, previous, root);\n\n while (focusable !== null && host.contains(focusable)) {\n focusable = getClosestFocusable(focusable, previous, root);\n }\n\n if (focusable === null) {\n return;\n }\n\n setNativeFocused(focusable);\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiOverscrollModule} from '@taiga-ui/cdk';\nimport {TuiScrollbarModule} from '@taiga-ui/core/components/scrollbar';\nimport {TuiModeModule} from '@taiga-ui/core/directives/mode';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDropdownBoxComponent} from './dropdown-box.component';\n\n@NgModule({\n imports: [\n TuiActiveZoneModule,\n PolymorpheusModule,\n TuiOverscrollModule,\n TuiScrollbarModule,\n TuiModeModule,\n ],\n entryComponents: [TuiDropdownBoxComponent],\n declarations: [TuiDropdownBoxComponent],\n exports: [TuiDropdownBoxComponent],\n})\nexport class TuiDropdownBoxModule {}\n"],"names":["merge","throttleTime","POLLING_TIME","fromEvent","tuiZonefree","takeUntil","getClosestElement","getScreenWidth","DEFAULT_MARGIN","inRange","px","DEFAULT_MAX_WIDTH","getClosestFocusable","setNativeFocused","TuiDestroyService","Inject","NgZone","TUI_DROPDOWN_DIRECTIVE","WINDOW","ElementRef","TuiDropdownHostComponent","AbstractTuiPortalHostComponent","TUI_ANIMATION_OPTIONS","Observable","ANIMATION_FRAME","HostBinding","ViewChild","tuiPure","Component","ChangeDetectionStrategy","tuiDropdownAnimation","NgModule","TuiActiveZoneModule","PolymorpheusModule","TuiOverscrollModule","TuiScrollbarModule","TuiModeModule"],"mappings":";;;;;;IAAA;IACA;AACA;IACA;IACA;AACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;AACA;IACA,IAAI,aAAa,GAAG,SAAS,CAAC,EAAE,CAAC,EAAE;IACnC,IAAI,aAAa,GAAG,MAAM,CAAC,cAAc;IACzC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;IACpF,QAAQ,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,IAAI,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;AACF;IACO,SAAS,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE;IAChC,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,IAAI,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;IAC3C,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;AACD;IACO,IAAI,QAAQ,GAAG,WAAW;IACjC,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC,EAAE;IACrD,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;IAC7D,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC7B,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,SAAS;IACT,QAAQ,OAAO,CAAC,CAAC;IACjB,MAAK;IACL,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,EAAC;AACD;IACO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;IAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACf,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACvF,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;IACvE,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;IAChF,YAAY,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,SAAS;IACT,IAAI,OAAO,CAAC,CAAC;IACb,CAAC;AACD;IACO,SAAS,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE;IAC1D,IAAI,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACjI,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACnI,SAAS,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IACtJ,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;AACD;IACO,SAAS,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE;IAC/C,IAAI,OAAO,UAAU,MAAM,EAAE,GAAG,EAAE,EAAE,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE;IACzE,CAAC;AACD;IACO,SAAS,UAAU,CAAC,WAAW,EAAE,aAAa,EAAE;IACvD,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;AACD;IACO,SAAS,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE;IAC7D,IAAI,SAAS,KAAK,CAAC,KAAK,EAAE,EAAE,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;IAChH,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM,EAAE;IAC/D,QAAQ,SAAS,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;IACnG,QAAQ,SAAS,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;IACtG,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;IACtH,QAAQ,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9E,KAAK,CAAC,CAAC;IACP,CAAC;AACD;IACO,SAAS,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE;IAC3C,IAAI,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACrH,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7J,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACtE,IAAI,SAAS,IAAI,CAAC,EAAE,EAAE;IACtB,QAAQ,IAAI,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;IACtE,QAAQ,OAAO,CAAC,EAAE,IAAI;IACtB,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzK,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IACpD,YAAY,QAAQ,EAAE,CAAC,CAAC,CAAC;IACzB,gBAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM;IAC9C,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACxE,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;IACjE,gBAAgB,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;IACjE,gBAAgB;IAChB,oBAAoB,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;IAChI,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;IAC1G,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACzF,oBAAoB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;IACvF,oBAAoB,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAC1C,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;IAC3C,aAAa;IACb,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACvC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;IAClE,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACzF,KAAK;IACL,CAAC;AACD;IACO,SAAS,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE;IAC7C,IAAI,IAAI,EAAE,KAAK,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC;IACjC,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;AACD;IACO,SAAS,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE;IACzC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F,CAAC;AACD;IACO,SAAS,QAAQ,CAAC,CAAC,EAAE;IAC5B,IAAI,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAClF,IAAI,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5B,IAAI,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,EAAE,OAAO;IAClD,QAAQ,IAAI,EAAE,YAAY;IAC1B,YAAY,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;IAC/C,YAAY,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;IACpD,SAAS;IACT,KAAK,CAAC;IACN,IAAI,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;AACD;IACO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;IAC7B,IAAI,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC/D,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACrB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACrC,IAAI,IAAI;IACR,QAAQ,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACnF,KAAK;IACL,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;IAC3C,YAAY;IACZ,QAAQ,IAAI;IACZ,YAAY,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7D,SAAS;IACT,gBAAgB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE;IACzC,KAAK;IACL,IAAI,OAAO,EAAE,CAAC;IACd,CAAC;AACD;IACO,SAAS,QAAQ,GAAG;IAC3B,IAAI,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;IACtD,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,OAAO,EAAE,CAAC;IACd,CAAC;AACD;IACO,SAAS,cAAc,GAAG;IACjC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACxF,IAAI,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;IACpD,QAAQ,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;IACzE,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,OAAO,CAAC,CAAC;IACb,CAAC,CAAC;AACF;IACO,SAAS,OAAO,CAAC,CAAC,EAAE;IAC3B,IAAI,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;AACD;IACO,SAAS,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE;IACjE,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;IAC3F,IAAI,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;IAClE,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,YAAY,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1H,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;IAC9I,IAAI,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;IACtF,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;IAC5H,IAAI,SAAS,OAAO,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;IACtD,IAAI,SAAS,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;IACtD,IAAI,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;AACD;IACO,SAAS,gBAAgB,CAAC,CAAC,EAAE;IACpC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAY,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChJ,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;AACD;IACO,SAAS,aAAa,CAAC,CAAC,EAAE;IACjC,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;IAC3F,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACvC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,YAAY,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACrN,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;IACpK,IAAI,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;AACD;IACO,SAAS,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE;IAClD,IAAI,IAAI,MAAM,CAAC,cAAc,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE;IACnH,IAAI,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;AACF;IACO,SAAS,YAAY,CAAC,GAAG,EAAE;IAClC,IAAI,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,OAAO,GAAG,CAAC;IAC1C,IAAI,IAAI,MAAM,GAAG,EAAE,CAAC;IACpB,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,KAAK,IAAI,CAAC,IAAI,GAAG,EAAE,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACnG,IAAI,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC;IACzB,IAAI,OAAO,MAAM,CAAC;IAClB,CAAC;AACD;IACO,SAAS,eAAe,CAAC,GAAG,EAAE;IACrC,IAAI,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;AACD;IACO,SAAS,sBAAsB,CAAC,QAAQ,EAAE,UAAU,EAAE;IAC7D,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;IACnC,QAAQ,MAAM,IAAI,SAAS,CAAC,gDAAgD,CAAC,CAAC;IAC9E,KAAK;IACL,IAAI,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;AACD;IACO,SAAS,sBAAsB,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE;IACpE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;IACnC,QAAQ,MAAM,IAAI,SAAS,CAAC,gDAAgD,CAAC,CAAC;IAC9E,KAAK;IACL,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACpC,IAAI,OAAO,KAAK,CAAC;IACjB;;ICpLA;;;IAGA;IACA;IACA;;QA+BI,iCAEI,QAA2B,EACX,MAAc,EACW,SAAsB,EAC9B,SAAiB,EACb,UAAmC,EAEvD,UAAoC,EACL,OAAyB,EAChD,eAAmC;YAVhE,iBAqBC;YAjB4C,cAAS,GAAT,SAAS,CAAa;YAC9B,cAAS,GAAT,SAAS,CAAQ;YACb,eAAU,GAAV,UAAU,CAAyB;YAEvD,eAAU,GAAV,UAAU,CAA0B;YACL,YAAO,GAAP,OAAO,CAAkB;YA9B5D,iBAAY,cACzB,KAAK,iCACF,IAAI,CAAC,OAAO,EACjB;YAEe,oBAAe,cAC5B,KAAK,uCACF,IAAI,CAAC,OAAO,EACjB;;;;YAKM,uBAAkB,GAAG,KAAK,CAAC;YAoB/BA,UAAK,CACD,eAAe,CAAC,IAAI,CAACC,sBAAY,CAACC,gBAAY,CAAC,CAAC,EAChD,IAAI,CAAC,SAAS,CAAC,QAAQ,EACvBC,cAAS,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CACtC;iBACI,IAAI,CAACC,eAAW,CAAC,MAAM,CAAC,EAAEC,mBAAS,CAAC,QAAQ,CAAC,CAAC;iBAC9C,SAAS,CAAC;gBACP,KAAI,CAAC,wBAAwB,EAAE,CAAC;aACnC,CAAC,CAAC;SACV;QAED,sBAAI,+CAAU;iBAAd;gBACI,OAAO,IAAI,CAAC,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;aAC1C;;;WAAA;QAGD,4CAAU,GAAV,UACI,OAAW,EACX,UAAmC;YAInC,6BAAW,OAAO,KAAE,UAAU,YAAA,IAAE;SACnC;QAED,oDAAkB,GAAlB;YACI,IAAI,CAAC,wBAAwB,EAAE,CAAC;SACnC;QAED,4CAAU,GAAV;YACI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;SAC/B;QAED,+CAAa,GAAb;YACI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SAChC;QAGD,sBAAY,4CAAO;iBAAnB;;gBAEI,OAAO,CAAC,CAACC,qBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;aACtE;;;WAAA;QAEO,0DAAwB,GAAhC;YACW,IAAA,sCAAU,CAAmB;YAC7B,IAAA,2CAAK,CAAkC;YAC9C,IAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK;kBAC/B,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE;kBACrC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YAEjC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,OAAO,GAAG,UAAU,CAAC;YAE7D,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC5D,IAAI,CAAC,2BAA2B,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC9D,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;SAC1C;QAEO,+CAAa,GAArB,UACI,KAA0B,EAC1B,aAAyB;YAEzB,IAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;YAC3E,IAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC;YAChE,IAAM,WAAW,GAAGC,kBAAc,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC5D,IAAM,wCAAwC,GAC1C,aAAa,CAAC,IAAI,GAAG,aAAa,GAAG,WAAW;gBAChD,aAAa,CAAC,KAAK,GAAG,aAAa,GAAG,CAAC,CAAC;YAC5C,IAAM,kCAAkC,GACpC,YAAY,CAAC,KAAK,IAAI,WAAW,IAAI,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC;YAChE,IAAI,UAAU,GAA2B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAE9D,QAAQ,IAAI,CAAC,SAAS,CAAC,KAAK;gBACxB,KAAK,MAAM;oBACP,IACI,wCAAwC;wBACxC,YAAY,CAAC,KAAK,GAAG,WAAW,EAClC;wBACE,UAAU,GAAG,OAAO,CAAC;qBACxB;oBAED,MAAM;gBACV,KAAK,OAAO;oBACR,IAAI,wCAAwC,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE;wBACnE,UAAU,GAAG,MAAM,CAAC;qBACvB;oBAED,MAAM;aACb;YAED,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM,IAAI,kCAAkC,EAAE;gBAC9D,UAAU,GAAG,MAAM,CAAC;aACvB;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,kCAAkC,EAAE;gBAC7D,UAAU,GAAG,OAAO,CAAC;aACxB;YAED,OAAO,UAAU,CAAC;SACrB;;;;;;;;QASO,6DAA2B,GAAnC,UACI,KAA0B,EAC1B,aAAyB,EACzB,QAAoB;YAEpB,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK;kBAC7B,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,KAAK,GAAGC,wBAAc;kBAC5E,CAAC,CAAC;YACR,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;YACpE,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC;YAExE,QAAQ,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC;gBAC5C,KAAK,MAAM;oBACP,IACI,KAAK,GAAGA,wBAAc,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU;wBAClDC,WAAO,CAAC,IAAI,GAAGD,wBAAc,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAC9D;wBACE,KAAK,CAAC,IAAI,GAAGE,MAAE,CAAC,IAAI,CAAC,CAAC;wBACtB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;qBACxB;yBAAM;wBACH,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;wBACpB,KAAK,CAAC,KAAK,GAAGA,MAAE,CAAC,KAAK,CAAC,CAAC;qBAC3B;oBAED,MAAM;gBACV,KAAK,OAAO;oBACR,IACID,WAAO,CAAC,KAAK,GAAGD,wBAAc,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;wBAC7D,IAAI,GAAGA,wBAAc,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EACnD;wBACE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;wBACpB,KAAK,CAAC,KAAK,GAAGE,MAAE,CAAC,KAAK,CAAC,CAAC;qBAC3B;yBAAM;wBACH,KAAK,CAAC,IAAI,GAAGA,MAAE,CAAC,IAAI,CAAC,CAAC;wBACtB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;qBACxB;oBAED,MAAM;aACb;SACJ;;;;;;;;QASO,2DAAyB,GAAjC,UACI,KAA0B,EAC1B,aAAyB,EACzB,QAAoB;YAEpB,IAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;;YAEhD,IAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,YAAY,GAAGF,wBAAc,GAAG,CAAC,CACpC,CAAC;YACF,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK;kBAC7BA,wBAAc,GAAG,aAAa,CAAC,MAAM;kBACrCA,wBAAc,GAAG,CAAC,CAAC;YACzB,IAAM,kBAAkB,GAAG,aAAa,CAAC,GAAG,GAAG,MAAM,CAAC;YACtD,IAAM,qBAAqB,GAAG,YAAY,GAAG,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC;YAC3E,IAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;YAE7D,IAAI,CAAC,kBAAkB,GAAG,cAAc,KAAK,KAAK,CAAC;YAEnD,IAAI,cAAc,KAAK,KAAK,EAAE;gBAC1B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC;gBAE9C,KAAK,CAAC,SAAS,GAAGE,MAAE,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC,CAAC;gBACnE,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC;gBACnB,KAAK,CAAC,MAAM,GAAGA,MAAE,CACb,QAAQ,CAAC,MAAM,GAAG,aAAa,CAAC,GAAG,GAAGF,wBAAc,GAAG,MAAM,CAChE,CAAC;aACL;iBAAM;gBACH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC;gBAE3C,KAAK,CAAC,SAAS,GAAGE,MAAE,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAC,CAAC;gBACtE,KAAK,CAAC,GAAG,GAAGA,MAAE,CAAC,aAAa,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,GAAGF,wBAAc,GAAG,MAAM,CAAC,CAAC;gBAC9E,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;aACzB;SACJ;QAEO,mDAAiB,GAAzB,UAA0B,aAAyB;YAC/C,IAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;YAChD,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK;kBAC7BA,wBAAc,GAAG,aAAa,CAAC,MAAM;kBACrCA,wBAAc,GAAG,CAAC,CAAC;;YAGzB,IAAM,kBAAkB,GAAG,aAAa,CAAC,GAAG,GAAG,MAAM,CAAC;YACtD,IAAM,qBAAqB,GAAG,YAAY,GAAG,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC;YAE3E,IAAI,cAAc,GAAgC,IAAI,CAAC;;YAGvD,QAAQ,IAAI,CAAC,SAAS,CAAC,SAAS;gBAC5B,KAAK,KAAK;oBACN,IAAI,kBAAkB,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;wBAChD,cAAc,GAAG,KAAK,CAAC;qBAC1B;oBAED,MAAM;gBACV,KAAK,QAAQ;oBACT,IAAI,qBAAqB,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;wBACnD,cAAc,GAAG,QAAQ,CAAC;qBAC7B;oBAED,MAAM;aACb;;YAGD,IAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAC3B,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,YAAY,GAAGA,wBAAc,GAAG,CAAC,CACpC,CAAC;;YAGF,IAAI,cAAc,KAAK,IAAI,IAAI,IAAI,CAAC,iBAAiB,EAAE;;gBAEnD,IAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CACzB,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,MAAM;qBAC9D,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY;wBACvC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,EACnD,cAAc,CACjB,CAAC;;;gBAIF,IAAI,IAAI,CAAC,kBAAkB,IAAI,kBAAkB,IAAI,YAAY,EAAE;oBAC/D,cAAc,GAAG,KAAK,CAAC;iBAC1B;qBAAM,IAAI,qBAAqB,IAAI,YAAY,EAAE;oBAC9C,cAAc,GAAG,QAAQ,CAAC;iBAC7B;qBAAM;;oBAEH,cAAc;wBACV,qBAAqB,IAAI,kBAAkB,GAAG,QAAQ,GAAG,KAAK,CAAC;iBACtE;aACJ;YAED,OAAO,cAAc,CAAC;SACzB;;;;;;;QAQO,gDAAc,GAAtB,UAAuB,KAA0B,EAAE,aAAyB;YACxE,KAAK,CAAC,KAAK;gBACP,IAAI,CAAC,SAAS,CAAC,aAAa,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK;sBAC3DE,MAAE,CAAC,aAAa,CAAC,KAAK,CAAC;sBACvB,EAAE,CAAC;YAEb,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;gBACjE,KAAK,CAAC,QAAQ,GAAGA,MAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBACzC,KAAK,CAAC,QAAQ,GAAGA,MAAE,CAACC,2BAAiB,CAAC,CAAC;gBAEvC,OAAO;aACV;YAED,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;YACpB,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;SACvB;QAEO,kDAAgB,GAAxB,UAAyB,QAAiB;YAC/B,IAAA,0BAAI,CAAmB;YACvB,IAAA,kCAAa,CAAS;YAC7B,IAAM,IAAI,GAAG,aAAa,GAAG,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC;YAEvD,IAAI,SAAS,GAAGC,uBAAmB,CAAC,IAAmB,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAEzE,OAAO,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gBACnD,SAAS,GAAGA,uBAAmB,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;aAC9D;YAED,IAAI,SAAS,KAAK,IAAI,EAAE;gBACpB,OAAO;aACV;YAEDC,oBAAgB,CAAC,SAAS,CAAC,CAAC;SAC/B;;oBA7SaC,qBAAiB,uBAD1BC,WAAM,SAACD,qBAAiB;oBAEDE,WAAM,uBAA7BD,WAAM,SAACC,WAAM;oDACbD,WAAM,SAACE,6BAAsB;oBACc,MAAM,uBAAjDF,WAAM,SAACG,aAAM;oBACmCC,eAAU,uBAA1DJ,WAAM,SAACI,eAAU;oBAEWC,4BAAwB,uBADpDL,WAAM,SAACM,kCAA8B;oDAErCN,WAAM,SAACO,4BAAqB;oBACaC,eAAU,uBAAnDR,WAAM,SAACS,sBAAe;;QAf3B;YADCC,gBAAW,CAAC,uBAAuB,CAAC;0EACG;QAGxC;YADCC,cAAS,CAAC,SAAS,EAAE,EAAC,IAAI,EAAEP,eAAU,EAAC,CAAC;0EACY;QA8BrD;YADCQ,WAAO;iEAQP;QAeD;YADCA,WAAO;8DAIP;QA3EQ,uBAAuB;YARnCC,cAAS,CAAC;gBACP,QAAQ,EAAE,kBAAkB;gBAC5B,+qBAA2C;gBAE3C,eAAe,EAAEC,4BAAuB,CAAC,OAAO;gBAChD,SAAS,EAAE,CAACf,qBAAiB,CAAC;gBAC9B,UAAU,EAAE,CAACgB,+BAAoB,CAAC;;aACrC,CAAC;YAwBO,WAAAf,WAAM,CAACD,qBAAiB,CAAC,CAAA;YAEzB,WAAAC,WAAM,CAACC,WAAM,CAAC,CAAA;YACd,WAAAD,WAAM,CAACE,6BAAsB,CAAC,CAAA;YAC9B,WAAAF,WAAM,CAACG,aAAM,CAAC,CAAA;YACd,WAAAH,WAAM,CAACI,eAAU,CAAC,CAAA;YAClB,WAAAJ,WAAM,CAACM,kCAA8B,CAAC,CAAA;YAEtC,WAAAN,WAAM,CAACO,4BAAqB,CAAC,CAAA;YAC7B,WAAAP,WAAM,CAACS,sBAAe,CAAC,CAAA;WAhCnB,uBAAuB,CAsUnC;QAAD,8BAAC;KAtUD;;;QC/BA;SAAoC;QAAvB,oBAAoB;YAZhCO,aAAQ,CAAC;gBACN,OAAO,EAAE;oBACLC,uBAAmB;oBACnBC,iCAAkB;oBAClBC,uBAAmB;oBACnBC,4BAAkB;oBAClBC,kBAAa;iBAChB;gBACD,eAAe,EAAE,CAAC,uBAAuB,CAAC;gBAC1C,YAAY,EAAE,CAAC,uBAAuB,CAAC;gBACvC,OAAO,EAAE,CAAC,uBAAuB,CAAC;aACrC,CAAC;WACW,oBAAoB,CAAG;QAAD,2BAAC;KAApC;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-core-components-dropdown-box.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/core/components/dropdown-box/dropdown-box.component.ts","ng://@taiga-ui/core/components/dropdown-box/dropdown-box.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {AnimationOptions} from '@angular/animations';\nimport {\n AfterViewChecked,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n NgZone,\n ViewChild,\n} from '@angular/core';\nimport {ANIMATION_FRAME, WINDOW} from '@ng-web-apis/common';\nimport {\n AbstractTuiPortalHostComponent,\n getClosestElement,\n getClosestFocusable,\n inRange,\n POLLING_TIME,\n px,\n setNativeFocused,\n TuiActiveZoneDirective,\n tuiAssertIsHTMLElement,\n TuiDestroyService,\n TuiDropdownHostComponent,\n TuiOverscrollModeT,\n tuiPure,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {tuiDropdownAnimation} from '@taiga-ui/core/animations';\nimport {DEFAULT_MARGIN, DEFAULT_MAX_WIDTH} from '@taiga-ui/core/constants';\nimport {TuiDropdownAnimation} from '@taiga-ui/core/enums';\nimport {TuiAnimationOptions, TuiDropdown} from '@taiga-ui/core/interfaces';\nimport {TUI_ANIMATION_OPTIONS, TUI_DROPDOWN_DIRECTIVE} from '@taiga-ui/core/tokens';\nimport {TuiHorizontalDirection, TuiVerticalDirection} from '@taiga-ui/core/types';\nimport {getScreenWidth} from '@taiga-ui/core/utils/dom';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {takeUntil, throttleTime} from 'rxjs/operators';\n\n/**\n * This component is used to show template in a portal using default style of white rounded box with a shadow\n */\n// @bad TODO: OnPush\n// Ambient type cannot be used without dynamic https://github.com/angular/angular/issues/23395\n// @dynamic\n@Component({\n selector: 'tui-dropdown-box',\n templateUrl: './dropdown-box.template.html',\n styleUrls: ['./dropdown-box.style.less'],\n changeDetection: ChangeDetectionStrategy.Default,\n providers: [TuiDestroyService],\n animations: [tuiDropdownAnimation],\n})\nexport class TuiDropdownBoxComponent implements AfterViewChecked {\n private readonly animationTop = {\n value: TuiDropdownAnimation.FadeInTop,\n ...this.options,\n };\n\n private readonly animationBottom = {\n value: TuiDropdownAnimation.FadeInBottom,\n ...this.options,\n };\n\n /**\n * Is previous position on top (to prevent jumping up and down on scroll)\n */\n private prevDirectionIsTop = false;\n\n @HostBinding('@tuiDropdownAnimation')\n dropdownAnimation!: TuiAnimationOptions;\n\n @ViewChild('content', {read: ElementRef})\n readonly contentElementRef?: ElementRef<HTMLElement>;\n\n constructor(\n @Inject(TuiDestroyService)\n destroy$: TuiDestroyService,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TUI_DROPDOWN_DIRECTIVE) readonly directive: TuiDropdown,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(AbstractTuiPortalHostComponent)\n private readonly portalHost: TuiDropdownHostComponent,\n @Inject(TUI_ANIMATION_OPTIONS) private readonly options: AnimationOptions,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n ) {\n merge(\n animationFrame$.pipe(throttleTime(POLLING_TIME)),\n this.directive.refresh$,\n fromEvent(this.windowRef, 'resize'),\n )\n .pipe(tuiZonefree(ngZone), takeUntil(destroy$))\n .subscribe(() => {\n this.calculatePositionAndSize();\n });\n }\n\n get overscroll(): TuiOverscrollModeT {\n return this.inModal ? 'all' : 'scroll';\n }\n\n @tuiPure\n getContext<T extends object>(\n context?: T,\n activeZone?: TuiActiveZoneDirective,\n ):\n | (T & {activeZone?: TuiActiveZoneDirective})\n | {activeZone?: TuiActiveZoneDirective} {\n return {...context, activeZone};\n }\n\n ngAfterViewChecked() {\n this.calculatePositionAndSize();\n }\n\n onTopFocus() {\n this.moveFocusOutside(true);\n }\n\n onBottomFocus() {\n this.moveFocusOutside(false);\n }\n\n @tuiPure\n private get inModal(): boolean {\n // @awful TODO: get rid of component tag name dependency\n return !!getClosestElement(this.directive.host, 'tui-dialog-host');\n }\n\n private calculatePositionAndSize() {\n const {clientRect} = this.directive;\n const {style} = this.elementRef.nativeElement;\n const hostRect = this.directive.fixed\n ? this.portalHost.fixedPositionOffset()\n : this.portalHost.clientRect;\n\n style.position = this.directive.fixed ? 'fixed' : 'absolute';\n\n this.calculateVerticalPosition(style, clientRect, hostRect);\n this.calculateHorizontalPosition(style, clientRect, hostRect);\n this.calculateWidth(style, clientRect);\n }\n\n private getFinalAlign(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n ): TuiHorizontalDirection {\n const dropdownRect = this.elementRef.nativeElement.getBoundingClientRect();\n const dropdownWidth = this.elementRef.nativeElement.offsetWidth;\n const screenWidth = getScreenWidth(this.windowRef.document);\n const isDropdownSizeHypotheticallyFitsViewport =\n directiveRect.left + dropdownWidth < screenWidth ||\n directiveRect.right - dropdownWidth > 0;\n const isDropdownSizeActuallyFitsViewport =\n dropdownRect.right <= screenWidth && dropdownRect.left >= 0;\n let finalAlign: TuiHorizontalDirection = this.directive.align;\n\n switch (this.directive.align) {\n case 'left':\n if (\n isDropdownSizeHypotheticallyFitsViewport &&\n dropdownRect.right > screenWidth\n ) {\n finalAlign = 'right';\n }\n\n break;\n case 'right':\n if (isDropdownSizeHypotheticallyFitsViewport && dropdownRect.left < 0) {\n finalAlign = 'left';\n }\n\n break;\n }\n\n if (style.right === 'auto' && isDropdownSizeActuallyFitsViewport) {\n finalAlign = 'left';\n }\n\n if (style.left === 'auto' && isDropdownSizeActuallyFitsViewport) {\n finalAlign = 'right';\n }\n\n return finalAlign;\n }\n\n /**\n * Calculates horizontal position\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n * @param hostRect ClientRect of portal host\n */\n private calculateHorizontalPosition(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n hostRect: ClientRect,\n ) {\n const offset = this.directive.sided\n ? this.elementRef.nativeElement.getBoundingClientRect().width + DEFAULT_MARGIN\n : 0;\n const left = Math.ceil(directiveRect.left - hostRect.left - offset);\n const right = Math.floor(hostRect.right - directiveRect.right - offset);\n\n switch (this.getFinalAlign(style, directiveRect)) {\n case 'left':\n if (\n right + DEFAULT_MARGIN > this.windowRef.innerWidth ||\n inRange(left + DEFAULT_MARGIN, 0, this.windowRef.innerWidth)\n ) {\n style.left = px(left);\n style.right = 'auto';\n } else {\n style.left = 'auto';\n style.right = px(right);\n }\n\n break;\n case 'right':\n if (\n inRange(right + DEFAULT_MARGIN, 0, this.windowRef.innerWidth) ||\n left + DEFAULT_MARGIN > this.windowRef.innerWidth\n ) {\n style.left = 'auto';\n style.right = px(right);\n } else {\n style.left = px(left);\n style.right = 'auto';\n }\n\n break;\n }\n }\n\n /**\n * Calculates vertical position and height\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n * @param hostRect ClientRect of portal host\n */\n private calculateVerticalPosition(\n style: CSSStyleDeclaration,\n directiveRect: ClientRect,\n hostRect: ClientRect,\n ) {\n const windowHeight = this.windowRef.innerHeight;\n // Maximum height of the box\n const boxHeightLimit = Math.min(\n this.directive.maxHeight,\n windowHeight - DEFAULT_MARGIN * 2,\n );\n const offset = this.directive.sided\n ? DEFAULT_MARGIN - directiveRect.height\n : DEFAULT_MARGIN * 2;\n const topAvailableHeight = directiveRect.top - offset;\n const bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;\n const finalDirection = this.getFinalDirection(directiveRect);\n\n this.prevDirectionIsTop = finalDirection === 'top';\n\n if (finalDirection === 'top') {\n this.dropdownAnimation = this.animationBottom;\n\n style.maxHeight = px(Math.min(boxHeightLimit, topAvailableHeight));\n style.top = 'auto';\n style.bottom = px(\n hostRect.bottom - directiveRect.top - DEFAULT_MARGIN + offset,\n );\n } else {\n this.dropdownAnimation = this.animationTop;\n\n style.maxHeight = px(Math.min(boxHeightLimit, bottomAvailableHeight));\n style.top = px(directiveRect.bottom - hostRect.top - DEFAULT_MARGIN + offset);\n style.bottom = 'auto';\n }\n }\n\n private getFinalDirection(directiveRect: ClientRect): TuiVerticalDirection | null {\n const windowHeight = this.windowRef.innerHeight;\n const offset = this.directive.sided\n ? DEFAULT_MARGIN - directiveRect.height\n : DEFAULT_MARGIN * 2;\n\n // Maximum space available on top and on the bottom in the viewport\n const topAvailableHeight = directiveRect.top - offset;\n const bottomAvailableHeight = windowHeight - directiveRect.bottom - offset;\n\n let finalDirection: TuiVerticalDirection | null = null;\n\n // Given direction is applied if we can fit the box in the limits that way\n switch (this.directive.direction) {\n case 'top':\n if (topAvailableHeight >= this.directive.minHeight) {\n finalDirection = 'top';\n }\n\n break;\n case 'bottom':\n if (bottomAvailableHeight >= this.directive.minHeight) {\n finalDirection = 'bottom';\n }\n\n break;\n }\n\n // Maximum height of the box\n const boxHeightLimit = Math.min(\n this.directive.maxHeight,\n windowHeight - DEFAULT_MARGIN * 2,\n );\n\n // Choose direction if given direction did not fit\n if (finalDirection === null && this.contentElementRef) {\n // Box height if it fits without scroll\n const visualHeight = Math.min(\n this.contentElementRef.nativeElement.getBoundingClientRect().height +\n (this.elementRef.nativeElement.offsetHeight -\n this.elementRef.nativeElement.clientHeight),\n boxHeightLimit,\n );\n\n // If there is enough space to fit below without scroll,\n // choose 'bottom', unless it was previously on the top\n if (this.prevDirectionIsTop && topAvailableHeight >= visualHeight) {\n finalDirection = 'top';\n } else if (bottomAvailableHeight >= visualHeight) {\n finalDirection = 'bottom';\n } else {\n // Corner case — select direction with more space\n finalDirection =\n bottomAvailableHeight >= topAvailableHeight ? 'bottom' : 'top';\n }\n }\n\n return finalDirection;\n }\n\n /**\n * Calculates width\n *\n * @param style dropdownBox elementRef styles object\n * @param directiveRect ClientRect of hosting directive\n */\n private calculateWidth(style: CSSStyleDeclaration, directiveRect: ClientRect) {\n style.width =\n this.directive.limitMinWidth === 'fixed' && !this.directive.sided\n ? px(directiveRect.width)\n : '';\n\n if (this.directive.limitMinWidth === 'min' && !this.directive.sided) {\n style.minWidth = px(directiveRect.width);\n style.maxWidth = px(DEFAULT_MAX_WIDTH);\n\n return;\n }\n\n style.minWidth = '';\n style.maxWidth = '';\n }\n\n private moveFocusOutside(previous: boolean) {\n const {host} = this.directive;\n const {ownerDocument} = host;\n const root = ownerDocument ? ownerDocument.body : host;\n\n tuiAssertIsHTMLElement(host);\n\n let focusable = getClosestFocusable(host, previous, root);\n\n while (focusable !== null && host.contains(focusable)) {\n focusable = getClosestFocusable(focusable, previous, root);\n }\n\n if (focusable === null) {\n return;\n }\n\n setNativeFocused(focusable);\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiOverscrollModule} from '@taiga-ui/cdk';\nimport {TuiScrollbarModule} from '@taiga-ui/core/components/scrollbar';\nimport {TuiModeModule} from '@taiga-ui/core/directives/mode';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDropdownBoxComponent} from './dropdown-box.component';\n\n@NgModule({\n imports: [\n TuiActiveZoneModule,\n PolymorpheusModule,\n TuiOverscrollModule,\n TuiScrollbarModule,\n TuiModeModule,\n ],\n entryComponents: [TuiDropdownBoxComponent],\n declarations: [TuiDropdownBoxComponent],\n exports: [TuiDropdownBoxComponent],\n})\nexport class TuiDropdownBoxModule {}\n"],"names":["merge","throttleTime","POLLING_TIME","fromEvent","tuiZonefree","takeUntil","getClosestElement","getScreenWidth","DEFAULT_MARGIN","inRange","px","DEFAULT_MAX_WIDTH","tuiAssertIsHTMLElement","getClosestFocusable","setNativeFocused","TuiDestroyService","Inject","NgZone","TUI_DROPDOWN_DIRECTIVE","WINDOW","ElementRef","TuiDropdownHostComponent","AbstractTuiPortalHostComponent","TUI_ANIMATION_OPTIONS","Observable","ANIMATION_FRAME","HostBinding","ViewChild","tuiPure","Component","ChangeDetectionStrategy","tuiDropdownAnimation","NgModule","TuiActiveZoneModule","PolymorpheusModule","TuiOverscrollModule","TuiScrollbarModule","TuiModeModule"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@ng-web-apis/common"),require("@taiga-ui/cdk"),require("@taiga-ui/core/animations"),require("@taiga-ui/core/constants"),require("@taiga-ui/core/tokens"),require("@taiga-ui/core/utils/dom"),require("rxjs"),require("rxjs/operators"),require("@taiga-ui/core/components/scrollbar"),require("@taiga-ui/core/directives/mode"),require("@tinkoff/ng-polymorpheus")):"function"==typeof define&&define.amd?define("@taiga-ui/core/components/dropdown-box",["exports","@angular/core","@ng-web-apis/common","@taiga-ui/cdk","@taiga-ui/core/animations","@taiga-ui/core/constants","@taiga-ui/core/tokens","@taiga-ui/core/utils/dom","rxjs","rxjs/operators","@taiga-ui/core/components/scrollbar","@taiga-ui/core/directives/mode","@tinkoff/ng-polymorpheus"],e):e(((t=t||self)["taiga-ui"]=t["taiga-ui"]||{},t["taiga-ui"].core=t["taiga-ui"].core||{},t["taiga-ui"].core.components=t["taiga-ui"].core.components||{},t["taiga-ui"].core.components["dropdown-box"]={}),t.ng.core,t.common,t.cdk,t["taiga-ui"].core.animations,t["taiga-ui"].core.constants,t["taiga-ui"].core.tokens,t["taiga-ui"].core.utils.dom,t.rxjs,t.rxjs.operators,t["taiga-ui"].core.components.scrollbar,t["taiga-ui"].core.directives.mode,t.ngPolymorpheus)}(this,(function(t,e,i,o,n,r,a,c,s,l,u,d,p){"use strict";
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@ng-web-apis/common"),require("@taiga-ui/cdk"),require("@taiga-ui/core/animations"),require("@taiga-ui/core/constants"),require("@taiga-ui/core/tokens"),require("@taiga-ui/core/utils/dom"),require("rxjs"),require("rxjs/operators"),require("@taiga-ui/core/components/scrollbar"),require("@taiga-ui/core/directives/mode"),require("@tinkoff/ng-polymorpheus")):"function"==typeof define&&define.amd?define("@taiga-ui/core/components/dropdown-box",["exports","@angular/core","@ng-web-apis/common","@taiga-ui/cdk","@taiga-ui/core/animations","@taiga-ui/core/constants","@taiga-ui/core/tokens","@taiga-ui/core/utils/dom","rxjs","rxjs/operators","@taiga-ui/core/components/scrollbar","@taiga-ui/core/directives/mode","@tinkoff/ng-polymorpheus"],e):e(((t=t||self)["taiga-ui"]=t["taiga-ui"]||{},t["taiga-ui"].core=t["taiga-ui"].core||{},t["taiga-ui"].core.components=t["taiga-ui"].core.components||{},t["taiga-ui"].core.components["dropdown-box"]={}),t.ng.core,t.common,t.cdk,t["taiga-ui"].core.animations,t["taiga-ui"].core.constants,t["taiga-ui"].core.tokens,t["taiga-ui"].core.utils.dom,t.rxjs,t.rxjs.operators,t["taiga-ui"].core.components.scrollbar,t["taiga-ui"].core.directives.mode,t.ngPolymorpheus)}(this,(function(t,e,i,o,n,r,a,s,c,l,u,d,p){"use strict";
2
2
  /*! *****************************************************************************
3
3
  Copyright (c) Microsoft Corporation.
4
4
 
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */var h=function(){return(h=Object.assign||function(t){for(var e,i=1,o=arguments.length;i<o;i++)for(var n in e=arguments[i])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)};function f(t,e,i,o){var n,r=arguments.length,a=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,o);else for(var c=t.length-1;c>=0;c--)(n=t[c])&&(a=(r<3?n(a):r>3?n(e,i,a):n(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a}function g(t,e){return function(i,o){e(i,o,t)}}var m=function(){function t(t,e,i,n,r,a,c,u){var d=this;this.directive=i,this.windowRef=n,this.elementRef=r,this.portalHost=a,this.options=c,this.animationTop=h({value:"fadeInTop"},this.options),this.animationBottom=h({value:"fadeInBottom"},this.options),this.prevDirectionIsTop=!1,s.merge(u.pipe(l.throttleTime(o.POLLING_TIME)),this.directive.refresh$,s.fromEvent(this.windowRef,"resize")).pipe(o.tuiZonefree(e),l.takeUntil(t)).subscribe((function(){d.calculatePositionAndSize()}))}return Object.defineProperty(t.prototype,"overscroll",{get:function(){return this.inModal?"all":"scroll"},enumerable:!0,configurable:!0}),t.prototype.getContext=function(t,e){return h(h({},t),{activeZone:e})},t.prototype.ngAfterViewChecked=function(){this.calculatePositionAndSize()},t.prototype.onTopFocus=function(){this.moveFocusOutside(!0)},t.prototype.onBottomFocus=function(){this.moveFocusOutside(!1)},Object.defineProperty(t.prototype,"inModal",{get:function(){return!!o.getClosestElement(this.directive.host,"tui-dialog-host")},enumerable:!0,configurable:!0}),t.prototype.calculatePositionAndSize=function(){var t=this.directive.clientRect,e=this.elementRef.nativeElement.style,i=this.directive.fixed?this.portalHost.fixedPositionOffset():this.portalHost.clientRect;e.position=this.directive.fixed?"fixed":"absolute",this.calculateVerticalPosition(e,t,i),this.calculateHorizontalPosition(e,t,i),this.calculateWidth(e,t)},t.prototype.getFinalAlign=function(t,e){var i=this.elementRef.nativeElement.getBoundingClientRect(),o=this.elementRef.nativeElement.offsetWidth,n=c.getScreenWidth(this.windowRef.document),r=e.left+o<n||e.right-o>0,a=i.right<=n&&i.left>=0,s=this.directive.align;switch(this.directive.align){case"left":r&&i.right>n&&(s="right");break;case"right":r&&i.left<0&&(s="left")}return"auto"===t.right&&a&&(s="left"),"auto"===t.left&&a&&(s="right"),s},t.prototype.calculateHorizontalPosition=function(t,e,i){var n=this.directive.sided?this.elementRef.nativeElement.getBoundingClientRect().width+r.DEFAULT_MARGIN:0,a=Math.ceil(e.left-i.left-n),c=Math.floor(i.right-e.right-n);switch(this.getFinalAlign(t,e)){case"left":c+r.DEFAULT_MARGIN>this.windowRef.innerWidth||o.inRange(a+r.DEFAULT_MARGIN,0,this.windowRef.innerWidth)?(t.left=o.px(a),t.right="auto"):(t.left="auto",t.right=o.px(c));break;case"right":o.inRange(c+r.DEFAULT_MARGIN,0,this.windowRef.innerWidth)||a+r.DEFAULT_MARGIN>this.windowRef.innerWidth?(t.left="auto",t.right=o.px(c)):(t.left=o.px(a),t.right="auto")}},t.prototype.calculateVerticalPosition=function(t,e,i){var n=this.windowRef.innerHeight,a=Math.min(this.directive.maxHeight,n-2*r.DEFAULT_MARGIN),c=this.directive.sided?r.DEFAULT_MARGIN-e.height:2*r.DEFAULT_MARGIN,s=e.top-c,l=n-e.bottom-c,u=this.getFinalDirection(e);this.prevDirectionIsTop="top"===u,"top"===u?(this.dropdownAnimation=this.animationBottom,t.maxHeight=o.px(Math.min(a,s)),t.top="auto",t.bottom=o.px(i.bottom-e.top-r.DEFAULT_MARGIN+c)):(this.dropdownAnimation=this.animationTop,t.maxHeight=o.px(Math.min(a,l)),t.top=o.px(e.bottom-i.top-r.DEFAULT_MARGIN+c),t.bottom="auto")},t.prototype.getFinalDirection=function(t){var e=this.windowRef.innerHeight,i=this.directive.sided?r.DEFAULT_MARGIN-t.height:2*r.DEFAULT_MARGIN,o=t.top-i,n=e-t.bottom-i,a=null;switch(this.directive.direction){case"top":o>=this.directive.minHeight&&(a="top");break;case"bottom":n>=this.directive.minHeight&&(a="bottom")}var c=Math.min(this.directive.maxHeight,e-2*r.DEFAULT_MARGIN);if(null===a&&this.contentElementRef){var s=Math.min(this.contentElementRef.nativeElement.getBoundingClientRect().height+(this.elementRef.nativeElement.offsetHeight-this.elementRef.nativeElement.clientHeight),c);a=this.prevDirectionIsTop&&o>=s?"top":n>=s||n>=o?"bottom":"top"}return a},t.prototype.calculateWidth=function(t,e){if(t.width="fixed"!==this.directive.limitMinWidth||this.directive.sided?"":o.px(e.width),"min"===this.directive.limitMinWidth&&!this.directive.sided)return t.minWidth=o.px(e.width),void(t.maxWidth=o.px(r.DEFAULT_MAX_WIDTH));t.minWidth="",t.maxWidth=""},t.prototype.moveFocusOutside=function(t){for(var e=this.directive.host,i=e.ownerDocument,n=i?i.body:e,r=o.getClosestFocusable(e,t,n);null!==r&&e.contains(r);)r=o.getClosestFocusable(r,t,n);null!==r&&o.setNativeFocused(r)},t.ctorParameters=function(){return[{type:o.TuiDestroyService,decorators:[{type:e.Inject,args:[o.TuiDestroyService]}]},{type:e.NgZone,decorators:[{type:e.Inject,args:[e.NgZone]}]},{type:void 0,decorators:[{type:e.Inject,args:[a.TUI_DROPDOWN_DIRECTIVE]}]},{type:Window,decorators:[{type:e.Inject,args:[i.WINDOW]}]},{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:o.TuiDropdownHostComponent,decorators:[{type:e.Inject,args:[o.AbstractTuiPortalHostComponent]}]},{type:void 0,decorators:[{type:e.Inject,args:[a.TUI_ANIMATION_OPTIONS]}]},{type:s.Observable,decorators:[{type:e.Inject,args:[i.ANIMATION_FRAME]}]}]},f([e.HostBinding("@tuiDropdownAnimation")],t.prototype,"dropdownAnimation",void 0),f([e.ViewChild("content",{read:e.ElementRef})],t.prototype,"contentElementRef",void 0),f([o.tuiPure],t.prototype,"getContext",null),f([o.tuiPure],t.prototype,"inModal",null),t=f([e.Component({selector:"tui-dropdown-box",template:'<div\n #activeZone="tuiActiveZone"\n class="wrapper"\n [tuiOverscroll]="overscroll"\n [tuiMode]="null"\n [tuiActiveZoneParent]="directive.activeZone"\n>\n <tui-scrollbar class="scroll">\n <div\n tabindex="0"\n (focus)="onTopFocus()"\n ></div>\n <div\n #content\n polymorpheus-outlet\n class="content"\n [content]="directive.content"\n [context]="getContext(directive.context, activeZone)"\n ></div>\n <div\n tabindex="0"\n (focus)="onBottomFocus()"\n ></div>\n </tui-scrollbar>\n</div>\n',changeDetection:e.ChangeDetectionStrategy.Default,providers:[o.TuiDestroyService],animations:[n.tuiDropdownAnimation],styles:[":host{z-index:0;box-shadow:0 .5rem 1rem rgba(0,0,0,.16);position:absolute;top:0;left:0;display:flex;background-color:#fff;background-color:var(--tui-elevation-01);border-radius:var(--tui-radius-m);overflow:hidden;border:1px solid var(--tui-base-03);box-sizing:border-box}:host.ng-animating{pointer-events:none}.content{display:flex;flex-direction:column;max-height:100%}.wrapper{flex-grow:1;max-width:100%;max-height:inherit;overflow:visible}.scroll{height:100%}"]}),g(0,e.Inject(o.TuiDestroyService)),g(1,e.Inject(e.NgZone)),g(2,e.Inject(a.TUI_DROPDOWN_DIRECTIVE)),g(3,e.Inject(i.WINDOW)),g(4,e.Inject(e.ElementRef)),g(5,e.Inject(o.AbstractTuiPortalHostComponent)),g(6,e.Inject(a.TUI_ANIMATION_OPTIONS)),g(7,e.Inject(i.ANIMATION_FRAME))],t)}(),v=function(){function t(){}return t=f([e.NgModule({imports:[o.TuiActiveZoneModule,p.PolymorpheusModule,o.TuiOverscrollModule,u.TuiScrollbarModule,d.TuiModeModule],entryComponents:[m],declarations:[m],exports:[m]})],t)}();t.TuiDropdownBoxComponent=m,t.TuiDropdownBoxModule=v,Object.defineProperty(t,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var h=function(){return(h=Object.assign||function(t){for(var e,i=1,o=arguments.length;i<o;i++)for(var n in e=arguments[i])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}).apply(this,arguments)};function f(t,e,i,o){var n,r=arguments.length,a=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,o);else for(var s=t.length-1;s>=0;s--)(n=t[s])&&(a=(r<3?n(a):r>3?n(e,i,a):n(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a}function g(t,e){return function(i,o){e(i,o,t)}}var m=function(){function t(t,e,i,n,r,a,s,u){var d=this;this.directive=i,this.windowRef=n,this.elementRef=r,this.portalHost=a,this.options=s,this.animationTop=h({value:"fadeInTop"},this.options),this.animationBottom=h({value:"fadeInBottom"},this.options),this.prevDirectionIsTop=!1,c.merge(u.pipe(l.throttleTime(o.POLLING_TIME)),this.directive.refresh$,c.fromEvent(this.windowRef,"resize")).pipe(o.tuiZonefree(e),l.takeUntil(t)).subscribe((function(){d.calculatePositionAndSize()}))}return Object.defineProperty(t.prototype,"overscroll",{get:function(){return this.inModal?"all":"scroll"},enumerable:!0,configurable:!0}),t.prototype.getContext=function(t,e){return h(h({},t),{activeZone:e})},t.prototype.ngAfterViewChecked=function(){this.calculatePositionAndSize()},t.prototype.onTopFocus=function(){this.moveFocusOutside(!0)},t.prototype.onBottomFocus=function(){this.moveFocusOutside(!1)},Object.defineProperty(t.prototype,"inModal",{get:function(){return!!o.getClosestElement(this.directive.host,"tui-dialog-host")},enumerable:!0,configurable:!0}),t.prototype.calculatePositionAndSize=function(){var t=this.directive.clientRect,e=this.elementRef.nativeElement.style,i=this.directive.fixed?this.portalHost.fixedPositionOffset():this.portalHost.clientRect;e.position=this.directive.fixed?"fixed":"absolute",this.calculateVerticalPosition(e,t,i),this.calculateHorizontalPosition(e,t,i),this.calculateWidth(e,t)},t.prototype.getFinalAlign=function(t,e){var i=this.elementRef.nativeElement.getBoundingClientRect(),o=this.elementRef.nativeElement.offsetWidth,n=s.getScreenWidth(this.windowRef.document),r=e.left+o<n||e.right-o>0,a=i.right<=n&&i.left>=0,c=this.directive.align;switch(this.directive.align){case"left":r&&i.right>n&&(c="right");break;case"right":r&&i.left<0&&(c="left")}return"auto"===t.right&&a&&(c="left"),"auto"===t.left&&a&&(c="right"),c},t.prototype.calculateHorizontalPosition=function(t,e,i){var n=this.directive.sided?this.elementRef.nativeElement.getBoundingClientRect().width+r.DEFAULT_MARGIN:0,a=Math.ceil(e.left-i.left-n),s=Math.floor(i.right-e.right-n);switch(this.getFinalAlign(t,e)){case"left":s+r.DEFAULT_MARGIN>this.windowRef.innerWidth||o.inRange(a+r.DEFAULT_MARGIN,0,this.windowRef.innerWidth)?(t.left=o.px(a),t.right="auto"):(t.left="auto",t.right=o.px(s));break;case"right":o.inRange(s+r.DEFAULT_MARGIN,0,this.windowRef.innerWidth)||a+r.DEFAULT_MARGIN>this.windowRef.innerWidth?(t.left="auto",t.right=o.px(s)):(t.left=o.px(a),t.right="auto")}},t.prototype.calculateVerticalPosition=function(t,e,i){var n=this.windowRef.innerHeight,a=Math.min(this.directive.maxHeight,n-2*r.DEFAULT_MARGIN),s=this.directive.sided?r.DEFAULT_MARGIN-e.height:2*r.DEFAULT_MARGIN,c=e.top-s,l=n-e.bottom-s,u=this.getFinalDirection(e);this.prevDirectionIsTop="top"===u,"top"===u?(this.dropdownAnimation=this.animationBottom,t.maxHeight=o.px(Math.min(a,c)),t.top="auto",t.bottom=o.px(i.bottom-e.top-r.DEFAULT_MARGIN+s)):(this.dropdownAnimation=this.animationTop,t.maxHeight=o.px(Math.min(a,l)),t.top=o.px(e.bottom-i.top-r.DEFAULT_MARGIN+s),t.bottom="auto")},t.prototype.getFinalDirection=function(t){var e=this.windowRef.innerHeight,i=this.directive.sided?r.DEFAULT_MARGIN-t.height:2*r.DEFAULT_MARGIN,o=t.top-i,n=e-t.bottom-i,a=null;switch(this.directive.direction){case"top":o>=this.directive.minHeight&&(a="top");break;case"bottom":n>=this.directive.minHeight&&(a="bottom")}var s=Math.min(this.directive.maxHeight,e-2*r.DEFAULT_MARGIN);if(null===a&&this.contentElementRef){var c=Math.min(this.contentElementRef.nativeElement.getBoundingClientRect().height+(this.elementRef.nativeElement.offsetHeight-this.elementRef.nativeElement.clientHeight),s);a=this.prevDirectionIsTop&&o>=c?"top":n>=c||n>=o?"bottom":"top"}return a},t.prototype.calculateWidth=function(t,e){if(t.width="fixed"!==this.directive.limitMinWidth||this.directive.sided?"":o.px(e.width),"min"===this.directive.limitMinWidth&&!this.directive.sided)return t.minWidth=o.px(e.width),void(t.maxWidth=o.px(r.DEFAULT_MAX_WIDTH));t.minWidth="",t.maxWidth=""},t.prototype.moveFocusOutside=function(t){var e=this.directive.host,i=e.ownerDocument,n=i?i.body:e;o.tuiAssertIsHTMLElement(e);for(var r=o.getClosestFocusable(e,t,n);null!==r&&e.contains(r);)r=o.getClosestFocusable(r,t,n);null!==r&&o.setNativeFocused(r)},t.ctorParameters=function(){return[{type:o.TuiDestroyService,decorators:[{type:e.Inject,args:[o.TuiDestroyService]}]},{type:e.NgZone,decorators:[{type:e.Inject,args:[e.NgZone]}]},{type:void 0,decorators:[{type:e.Inject,args:[a.TUI_DROPDOWN_DIRECTIVE]}]},{type:Window,decorators:[{type:e.Inject,args:[i.WINDOW]}]},{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:o.TuiDropdownHostComponent,decorators:[{type:e.Inject,args:[o.AbstractTuiPortalHostComponent]}]},{type:void 0,decorators:[{type:e.Inject,args:[a.TUI_ANIMATION_OPTIONS]}]},{type:c.Observable,decorators:[{type:e.Inject,args:[i.ANIMATION_FRAME]}]}]},f([e.HostBinding("@tuiDropdownAnimation")],t.prototype,"dropdownAnimation",void 0),f([e.ViewChild("content",{read:e.ElementRef})],t.prototype,"contentElementRef",void 0),f([o.tuiPure],t.prototype,"getContext",null),f([o.tuiPure],t.prototype,"inModal",null),t=f([e.Component({selector:"tui-dropdown-box",template:'<div\n #activeZone="tuiActiveZone"\n class="wrapper"\n [tuiOverscroll]="overscroll"\n [tuiMode]="null"\n [tuiActiveZoneParent]="directive.activeZone || null"\n>\n <tui-scrollbar class="scroll">\n <div\n tabindex="0"\n (focus)="onTopFocus()"\n ></div>\n <div\n #content\n polymorpheus-outlet\n class="content"\n [content]="directive.content"\n [context]="getContext(directive.context, activeZone)"\n ></div>\n <div\n tabindex="0"\n (focus)="onBottomFocus()"\n ></div>\n </tui-scrollbar>\n</div>\n',changeDetection:e.ChangeDetectionStrategy.Default,providers:[o.TuiDestroyService],animations:[n.tuiDropdownAnimation],styles:[":host{z-index:0;box-shadow:0 .5rem 1rem rgba(0,0,0,.16);position:absolute;top:0;left:0;display:flex;background-color:#fff;background-color:var(--tui-elevation-01);border-radius:var(--tui-radius-m);overflow:hidden;border:1px solid var(--tui-base-03);box-sizing:border-box}:host.ng-animating{pointer-events:none}.content{display:flex;flex-direction:column;max-height:100%}.wrapper{flex-grow:1;max-width:100%;max-height:inherit;overflow:visible}.scroll{height:100%}"]}),g(0,e.Inject(o.TuiDestroyService)),g(1,e.Inject(e.NgZone)),g(2,e.Inject(a.TUI_DROPDOWN_DIRECTIVE)),g(3,e.Inject(i.WINDOW)),g(4,e.Inject(e.ElementRef)),g(5,e.Inject(o.AbstractTuiPortalHostComponent)),g(6,e.Inject(a.TUI_ANIMATION_OPTIONS)),g(7,e.Inject(i.ANIMATION_FRAME))],t)}(),v=function(){function t(){}return t=f([e.NgModule({imports:[o.TuiActiveZoneModule,p.PolymorpheusModule,o.TuiOverscrollModule,u.TuiScrollbarModule,d.TuiModeModule],entryComponents:[m],declarations:[m],exports:[m]})],t)}();t.TuiDropdownBoxComponent=m,t.TuiDropdownBoxModule=v,Object.defineProperty(t,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-core-components-dropdown-box.umd.min.js.map