ngx-bootstrap 3.1.2 → 3.3.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 (441) hide show
  1. package/CHANGELOG.md +236 -0
  2. package/CONTRIBUTING.md +1 -1
  3. package/README.md +8 -5
  4. package/accordion/package.json +1 -1
  5. package/alert/package.json +1 -1
  6. package/bundles/ngx-bootstrap.es2015.js +13985 -11505
  7. package/bundles/ngx-bootstrap.es2015.js.map +1 -1
  8. package/bundles/ngx-bootstrap.umd.js +2 -1
  9. package/bundles/ngx-bootstrap.umd.js.map +1 -1
  10. package/bundles/ngx-bootstrap.umd.min.js +1 -1
  11. package/buttons/package.json +1 -1
  12. package/carousel/package.json +1 -1
  13. package/chronos/bundles/ngx-bootstrap-chronos.umd.js +217 -63
  14. package/chronos/bundles/ngx-bootstrap-chronos.umd.js.map +1 -1
  15. package/chronos/bundles/ngx-bootstrap-chronos.umd.min.js +1 -1
  16. package/chronos/bundles/ngx-bootstrap-chronos.umd.min.js.map +1 -1
  17. package/chronos/esm2015/i18n/ca.js +128 -0
  18. package/chronos/esm2015/i18n/lt.js +1 -1
  19. package/chronos/esm2015/i18n/pl.js +7 -1
  20. package/chronos/esm2015/index.js +2 -2
  21. package/chronos/esm2015/ngx-bootstrap-chronos.js +2 -2
  22. package/chronos/esm2015/public_api.js +3 -2
  23. package/chronos/esm2015/utils/date-compare.js +20 -1
  24. package/chronos/esm5/i18n/ca.js +128 -0
  25. package/chronos/esm5/i18n/lt.js +1 -1
  26. package/chronos/esm5/i18n/pl.js +7 -1
  27. package/chronos/esm5/index.js +2 -2
  28. package/chronos/esm5/ngx-bootstrap-chronos.js +2 -2
  29. package/chronos/esm5/public_api.js +3 -2
  30. package/chronos/esm5/utils/date-compare.js +20 -1
  31. package/chronos/fesm2015/ngx-bootstrap-chronos.js +223 -67
  32. package/chronos/fesm2015/ngx-bootstrap-chronos.js.map +1 -1
  33. package/chronos/fesm5/ngx-bootstrap-chronos.js +224 -67
  34. package/chronos/fesm5/ngx-bootstrap-chronos.js.map +1 -1
  35. package/chronos/i18n/ca.d.ts +2 -0
  36. package/chronos/ngx-bootstrap-chronos.metadata.json +1 -1
  37. package/chronos/package.json +1 -1
  38. package/chronos/public_api.d.ts +2 -1
  39. package/chronos/utils/date-compare.d.ts +2 -0
  40. package/collapse/package.json +1 -1
  41. package/component-loader/bundles/ngx-bootstrap-component-loader.umd.js +11 -1
  42. package/component-loader/bundles/ngx-bootstrap-component-loader.umd.js.map +1 -1
  43. package/component-loader/bundles/ngx-bootstrap-component-loader.umd.min.js +1 -1
  44. package/component-loader/bundles/ngx-bootstrap-component-loader.umd.min.js.map +1 -1
  45. package/component-loader/component-loader.class.d.ts +1 -1
  46. package/component-loader/esm2015/component-loader.class.js +12 -2
  47. package/component-loader/esm2015/listen-options.model.js +3 -1
  48. package/component-loader/esm5/component-loader.class.js +12 -2
  49. package/component-loader/esm5/listen-options.model.js +3 -1
  50. package/component-loader/fesm2015/ngx-bootstrap-component-loader.js +12 -2
  51. package/component-loader/fesm2015/ngx-bootstrap-component-loader.js.map +1 -1
  52. package/component-loader/fesm5/ngx-bootstrap-component-loader.js +12 -2
  53. package/component-loader/fesm5/ngx-bootstrap-component-loader.js.map +1 -1
  54. package/component-loader/listen-options.model.d.ts +1 -0
  55. package/component-loader/ngx-bootstrap-component-loader.metadata.json +1 -1
  56. package/component-loader/package.json +1 -1
  57. package/datepicker/base/bs-datepicker-container.d.ts +5 -1
  58. package/datepicker/bs-datepicker-inline.component.d.ts +48 -0
  59. package/datepicker/bs-datepicker-inline.config.d.ts +3 -0
  60. package/datepicker/bs-datepicker.component.d.ts +14 -0
  61. package/datepicker/bs-datepicker.config.d.ts +22 -1
  62. package/datepicker/bs-datepicker.css +56 -5
  63. package/datepicker/bs-datepicker.css.map +3 -3
  64. package/datepicker/bs-datepicker.module.d.ts +0 -1
  65. package/datepicker/bs-datepicker.scss +21 -8
  66. package/datepicker/bs-daterangepicker.component.d.ts +5 -0
  67. package/datepicker/bundles/ngx-bootstrap-datepicker.umd.js +2967 -2546
  68. package/datepicker/bundles/ngx-bootstrap-datepicker.umd.js.map +1 -1
  69. package/datepicker/bundles/ngx-bootstrap-datepicker.umd.min.js +1 -1
  70. package/datepicker/bundles/ngx-bootstrap-datepicker.umd.min.js.map +1 -1
  71. package/datepicker/engine/flag-days-calendar.d.ts +2 -0
  72. package/datepicker/engine/view-mode.d.ts +1 -1
  73. package/datepicker/esm2015/base/bs-datepicker-container.js +22 -1
  74. package/datepicker/esm2015/bs-datepicker-inline.component.js +179 -0
  75. package/datepicker/esm2015/bs-datepicker-inline.config.js +22 -0
  76. package/datepicker/esm2015/bs-datepicker-input.directive.js +2 -1
  77. package/datepicker/esm2015/bs-datepicker.component.js +34 -2
  78. package/datepicker/esm2015/bs-datepicker.config.js +28 -1
  79. package/datepicker/esm2015/bs-datepicker.module.js +10 -11
  80. package/datepicker/esm2015/bs-daterangepicker-input.directive.js +9 -4
  81. package/datepicker/esm2015/bs-daterangepicker.component.js +17 -2
  82. package/datepicker/esm2015/engine/flag-days-calendar.js +16 -6
  83. package/datepicker/esm2015/engine/view-mode.js +4 -3
  84. package/datepicker/esm2015/models/index.js +7 -1
  85. package/datepicker/esm2015/ngx-bootstrap-datepicker.js +19 -18
  86. package/datepicker/esm2015/public_api.js +11 -9
  87. package/datepicker/esm2015/reducer/bs-datepicker.actions.js +27 -1
  88. package/datepicker/esm2015/reducer/bs-datepicker.effects.js +25 -11
  89. package/datepicker/esm2015/reducer/bs-datepicker.reducer.js +15 -5
  90. package/datepicker/esm2015/reducer/bs-datepicker.state.js +9 -1
  91. package/datepicker/esm2015/themes/bs/bs-datepicker-container.component.js +5 -3
  92. package/datepicker/esm2015/themes/bs/bs-datepicker-day-decorator.directive.js +33 -2
  93. package/datepicker/esm2015/themes/bs/bs-datepicker-inline-container.component.js +50 -0
  94. package/datepicker/esm2015/themes/bs/bs-daterangepicker-container.component.js +5 -3
  95. package/datepicker/esm2015/themes/bs/bs-days-calendar-view.component.js +71 -4
  96. package/datepicker/esm2015/utils/bs-calendar-utils.js +13 -2
  97. package/datepicker/esm5/base/bs-datepicker-container.js +34 -1
  98. package/datepicker/esm5/bs-datepicker-inline.component.js +196 -0
  99. package/datepicker/esm5/bs-datepicker-inline.config.js +29 -0
  100. package/datepicker/esm5/bs-datepicker-input.directive.js +2 -1
  101. package/datepicker/esm5/bs-datepicker.component.js +34 -2
  102. package/datepicker/esm5/bs-datepicker.config.js +28 -1
  103. package/datepicker/esm5/bs-datepicker.module.js +10 -7
  104. package/datepicker/esm5/bs-daterangepicker-input.directive.js +9 -4
  105. package/datepicker/esm5/bs-daterangepicker.component.js +17 -2
  106. package/datepicker/esm5/engine/flag-days-calendar.js +16 -6
  107. package/datepicker/esm5/engine/view-mode.js +4 -3
  108. package/datepicker/esm5/models/index.js +7 -1
  109. package/datepicker/esm5/ngx-bootstrap-datepicker.js +19 -18
  110. package/datepicker/esm5/public_api.js +11 -9
  111. package/datepicker/esm5/reducer/bs-datepicker.actions.js +35 -1
  112. package/datepicker/esm5/reducer/bs-datepicker.effects.js +33 -11
  113. package/datepicker/esm5/reducer/bs-datepicker.reducer.js +15 -5
  114. package/datepicker/esm5/reducer/bs-datepicker.state.js +9 -1
  115. package/datepicker/esm5/themes/bs/bs-datepicker-container.component.js +5 -3
  116. package/datepicker/esm5/themes/bs/bs-datepicker-day-decorator.directive.js +30 -3
  117. package/datepicker/esm5/themes/bs/bs-datepicker-inline-container.component.js +48 -0
  118. package/datepicker/esm5/themes/bs/bs-daterangepicker-container.component.js +5 -3
  119. package/datepicker/esm5/themes/bs/bs-days-calendar-view.component.js +75 -3
  120. package/datepicker/esm5/utils/bs-calendar-utils.js +13 -2
  121. package/datepicker/fesm2015/ngx-bootstrap-datepicker.js +3192 -2829
  122. package/datepicker/fesm2015/ngx-bootstrap-datepicker.js.map +1 -1
  123. package/datepicker/fesm5/ngx-bootstrap-datepicker.js +3407 -2994
  124. package/datepicker/fesm5/ngx-bootstrap-datepicker.js.map +1 -1
  125. package/datepicker/models/index.d.ts +3 -0
  126. package/datepicker/ngx-bootstrap-datepicker.d.ts +17 -16
  127. package/datepicker/ngx-bootstrap-datepicker.metadata.json +1 -1
  128. package/datepicker/package.json +1 -1
  129. package/datepicker/public_api.d.ts +11 -8
  130. package/datepicker/reducer/bs-datepicker.actions.d.ts +4 -0
  131. package/datepicker/reducer/bs-datepicker.effects.d.ts +4 -2
  132. package/datepicker/reducer/bs-datepicker.state.d.ts +4 -0
  133. package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +8 -1
  134. package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +9 -0
  135. package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +8 -1
  136. package/datepicker/utils/bs-calendar-utils.d.ts +1 -0
  137. package/datepicker/utils/scss/mixins.css.map +4 -2
  138. package/datepicker/utils/scss/mixins.scss +10 -0
  139. package/dropdown/bs-dropdown-container.component.d.ts +3 -0
  140. package/dropdown/bs-dropdown-toggle.directive.d.ts +3 -1
  141. package/dropdown/bs-dropdown.config.d.ts +2 -0
  142. package/dropdown/bs-dropdown.directive.d.ts +8 -2
  143. package/dropdown/bs-dropdown.state.d.ts +1 -0
  144. package/dropdown/bundles/ngx-bootstrap-dropdown.umd.js +62 -5
  145. package/dropdown/bundles/ngx-bootstrap-dropdown.umd.js.map +1 -1
  146. package/dropdown/bundles/ngx-bootstrap-dropdown.umd.min.js +1 -1
  147. package/dropdown/bundles/ngx-bootstrap-dropdown.umd.min.js.map +1 -1
  148. package/dropdown/esm2015/bs-dropdown-container.component.js +13 -2
  149. package/dropdown/esm2015/bs-dropdown-toggle.directive.js +10 -3
  150. package/dropdown/esm2015/bs-dropdown.config.js +10 -1
  151. package/dropdown/esm2015/bs-dropdown.directive.js +30 -3
  152. package/dropdown/esm2015/bs-dropdown.module.js +2 -2
  153. package/dropdown/esm2015/bs-dropdown.state.js +3 -1
  154. package/dropdown/esm5/bs-dropdown-container.component.js +19 -2
  155. package/dropdown/esm5/bs-dropdown-toggle.directive.js +9 -3
  156. package/dropdown/esm5/bs-dropdown.config.js +10 -1
  157. package/dropdown/esm5/bs-dropdown.directive.js +40 -3
  158. package/dropdown/esm5/bs-dropdown.module.js +2 -2
  159. package/dropdown/esm5/bs-dropdown.state.js +3 -1
  160. package/dropdown/fesm2015/ngx-bootstrap-dropdown.js +49 -5
  161. package/dropdown/fesm2015/ngx-bootstrap-dropdown.js.map +1 -1
  162. package/dropdown/fesm5/ngx-bootstrap-dropdown.js +64 -5
  163. package/dropdown/fesm5/ngx-bootstrap-dropdown.js.map +1 -1
  164. package/dropdown/ngx-bootstrap-dropdown.metadata.json +1 -1
  165. package/dropdown/package.json +1 -1
  166. package/esm2015/ngx-bootstrap.js +2 -2
  167. package/esm2015/public_api.js +2 -2
  168. package/esm5/ngx-bootstrap.js +2 -2
  169. package/esm5/public_api.js +2 -2
  170. package/fesm2015/ngx-bootstrap.js +1 -1
  171. package/fesm5/ngx-bootstrap.js +1 -1
  172. package/locale/bundles/ngx-bootstrap-locale.umd.js +2 -1
  173. package/locale/bundles/ngx-bootstrap-locale.umd.js.map +1 -1
  174. package/locale/bundles/ngx-bootstrap-locale.umd.min.js +1 -1
  175. package/locale/esm2015/ngx-bootstrap-locale.js +2 -2
  176. package/locale/esm2015/public_api.js +2 -1
  177. package/locale/esm5/ngx-bootstrap-locale.js +2 -2
  178. package/locale/esm5/public_api.js +2 -1
  179. package/locale/fesm2015/ngx-bootstrap-locale.js +1 -1
  180. package/locale/fesm5/ngx-bootstrap-locale.js +1 -1
  181. package/locale/ngx-bootstrap-locale.metadata.json +1 -1
  182. package/locale/package.json +1 -1
  183. package/locale/public_api.d.ts +1 -0
  184. package/mini-ngrx/package.json +1 -1
  185. package/modal/bs-modal-ref.service.d.ts +4 -0
  186. package/modal/bundles/ngx-bootstrap-modal.umd.js +8 -1
  187. package/modal/bundles/ngx-bootstrap-modal.umd.js.map +1 -1
  188. package/modal/bundles/ngx-bootstrap-modal.umd.min.js +1 -1
  189. package/modal/bundles/ngx-bootstrap-modal.umd.min.js.map +1 -1
  190. package/modal/esm2015/bs-modal-ref.service.js +10 -1
  191. package/modal/esm2015/bs-modal.service.js +4 -1
  192. package/modal/esm5/bs-modal-ref.service.js +10 -1
  193. package/modal/esm5/bs-modal.service.js +4 -1
  194. package/modal/fesm2015/ngx-bootstrap-modal.js +8 -1
  195. package/modal/fesm2015/ngx-bootstrap-modal.js.map +1 -1
  196. package/modal/fesm5/ngx-bootstrap-modal.js +8 -1
  197. package/modal/fesm5/ngx-bootstrap-modal.js.map +1 -1
  198. package/modal/package.json +1 -1
  199. package/package.json +2 -2
  200. package/pagination/esm2015/models/index.js +1 -4
  201. package/pagination/esm5/models/index.js +1 -4
  202. package/pagination/models/index.d.ts +0 -1
  203. package/pagination/package.json +1 -1
  204. package/popover/bundles/ngx-bootstrap-popover.umd.js +3 -2
  205. package/popover/bundles/ngx-bootstrap-popover.umd.js.map +1 -1
  206. package/popover/bundles/ngx-bootstrap-popover.umd.min.js +1 -1
  207. package/popover/bundles/ngx-bootstrap-popover.umd.min.js.map +1 -1
  208. package/popover/esm2015/popover-container.component.js +19 -8
  209. package/popover/esm5/popover-container.component.js +3 -2
  210. package/popover/fesm2015/ngx-bootstrap-popover.js +19 -8
  211. package/popover/fesm2015/ngx-bootstrap-popover.js.map +1 -1
  212. package/popover/fesm5/ngx-bootstrap-popover.js +3 -2
  213. package/popover/fesm5/ngx-bootstrap-popover.js.map +1 -1
  214. package/popover/ngx-bootstrap-popover.metadata.json +1 -1
  215. package/popover/package.json +1 -1
  216. package/positioning/bundles/ngx-bootstrap-positioning.umd.js +1192 -252
  217. package/positioning/bundles/ngx-bootstrap-positioning.umd.js.map +1 -1
  218. package/positioning/bundles/ngx-bootstrap-positioning.umd.min.js +1 -1
  219. package/positioning/bundles/ngx-bootstrap-positioning.umd.min.js.map +1 -1
  220. package/positioning/esm2015/models/index.js +44 -0
  221. package/positioning/esm2015/modifiers/arrow.js +54 -0
  222. package/positioning/esm2015/modifiers/flip.js +65 -0
  223. package/positioning/esm2015/modifiers/index.js +11 -0
  224. package/positioning/esm2015/modifiers/initData.js +34 -0
  225. package/positioning/esm2015/modifiers/preventOverflow.js +70 -0
  226. package/positioning/esm2015/modifiers/shift.js +29 -0
  227. package/positioning/esm2015/ng-positioning.js +19 -220
  228. package/positioning/esm2015/positioning.service.js +44 -4
  229. package/positioning/esm2015/utils/computeAutoPlacement.js +64 -0
  230. package/positioning/esm2015/utils/findCommonOffsetParent.js +47 -0
  231. package/positioning/esm2015/utils/getBordersSize.js +20 -0
  232. package/positioning/esm2015/utils/getBoundaries.js +66 -0
  233. package/positioning/esm2015/utils/getBoundingClientRect.js +61 -0
  234. package/positioning/esm2015/utils/getClientRect.js +13 -0
  235. package/positioning/esm2015/utils/getFixedPositionOffsetParent.js +26 -0
  236. package/positioning/esm2015/utils/getOffsetParent.js +37 -0
  237. package/positioning/esm2015/utils/getOffsetRectRelativeToArbitraryNode.js +62 -0
  238. package/positioning/esm2015/utils/getOffsets.js +20 -0
  239. package/positioning/esm2015/utils/getOppositePlacement.js +15 -0
  240. package/positioning/esm2015/utils/getOppositeVariation.js +20 -0
  241. package/positioning/esm2015/utils/getOuterSizes.js +21 -0
  242. package/positioning/esm2015/utils/getParentNode.js +17 -0
  243. package/positioning/esm2015/utils/getReferenceOffsets.js +21 -0
  244. package/positioning/esm2015/utils/getRoot.js +17 -0
  245. package/positioning/esm2015/utils/getScroll.js +22 -0
  246. package/positioning/esm2015/utils/getScrollParent.js +32 -0
  247. package/positioning/esm2015/utils/getStyleComputedProperty.js +21 -0
  248. package/positioning/esm2015/utils/getTargetOffsets.js +38 -0
  249. package/positioning/esm2015/utils/getViewportOffsetRectRelativeToArtbitraryNode.js +29 -0
  250. package/positioning/esm2015/utils/getWindowSizes.js +34 -0
  251. package/positioning/esm2015/utils/includeScroll.js +23 -0
  252. package/positioning/esm2015/utils/index.js +28 -0
  253. package/positioning/esm2015/utils/isBrowser.js +7 -0
  254. package/positioning/esm2015/utils/isFixed.js +22 -0
  255. package/positioning/esm2015/utils/isIE.js +22 -0
  256. package/positioning/esm2015/utils/isNumeric.js +14 -0
  257. package/positioning/esm2015/utils/isOffsetContainer.js +18 -0
  258. package/positioning/esm2015/utils/setAllStyles.js +55 -0
  259. package/positioning/esm2015/utils/setStyles.js +28 -0
  260. package/positioning/esm5/models/index.js +44 -0
  261. package/positioning/esm5/modifiers/arrow.js +56 -0
  262. package/positioning/esm5/modifiers/flip.js +66 -0
  263. package/positioning/esm5/modifiers/index.js +11 -0
  264. package/positioning/esm5/modifiers/initData.js +34 -0
  265. package/positioning/esm5/modifiers/preventOverflow.js +73 -0
  266. package/positioning/esm5/modifiers/shift.js +31 -0
  267. package/positioning/esm5/ng-positioning.js +24 -247
  268. package/positioning/esm5/positioning.service.js +49 -5
  269. package/positioning/esm5/utils/computeAutoPlacement.js +72 -0
  270. package/positioning/esm5/utils/findCommonOffsetParent.js +47 -0
  271. package/positioning/esm5/utils/getBordersSize.js +20 -0
  272. package/positioning/esm5/utils/getBoundaries.js +68 -0
  273. package/positioning/esm5/utils/getBoundingClientRect.js +61 -0
  274. package/positioning/esm5/utils/getClientRect.js +14 -0
  275. package/positioning/esm5/utils/getFixedPositionOffsetParent.js +26 -0
  276. package/positioning/esm5/utils/getOffsetParent.js +37 -0
  277. package/positioning/esm5/utils/getOffsetRectRelativeToArbitraryNode.js +63 -0
  278. package/positioning/esm5/utils/getOffsets.js +20 -0
  279. package/positioning/esm5/utils/getOppositePlacement.js +15 -0
  280. package/positioning/esm5/utils/getOppositeVariation.js +20 -0
  281. package/positioning/esm5/utils/getOuterSizes.js +21 -0
  282. package/positioning/esm5/utils/getParentNode.js +17 -0
  283. package/positioning/esm5/utils/getReferenceOffsets.js +22 -0
  284. package/positioning/esm5/utils/getRoot.js +17 -0
  285. package/positioning/esm5/utils/getScroll.js +23 -0
  286. package/positioning/esm5/utils/getScrollParent.js +32 -0
  287. package/positioning/esm5/utils/getStyleComputedProperty.js +21 -0
  288. package/positioning/esm5/utils/getTargetOffsets.js +38 -0
  289. package/positioning/esm5/utils/getViewportOffsetRectRelativeToArtbitraryNode.js +30 -0
  290. package/positioning/esm5/utils/getWindowSizes.js +34 -0
  291. package/positioning/esm5/utils/includeScroll.js +24 -0
  292. package/positioning/esm5/utils/index.js +28 -0
  293. package/positioning/esm5/utils/isBrowser.js +7 -0
  294. package/positioning/esm5/utils/isFixed.js +22 -0
  295. package/positioning/esm5/utils/isIE.js +22 -0
  296. package/positioning/esm5/utils/isNumeric.js +14 -0
  297. package/positioning/esm5/utils/isOffsetContainer.js +18 -0
  298. package/positioning/esm5/utils/setAllStyles.js +55 -0
  299. package/positioning/esm5/utils/setStyles.js +28 -0
  300. package/positioning/fesm2015/ngx-bootstrap-positioning.js +1108 -211
  301. package/positioning/fesm2015/ngx-bootstrap-positioning.js.map +1 -1
  302. package/positioning/fesm5/ngx-bootstrap-positioning.js +1148 -249
  303. package/positioning/fesm5/ngx-bootstrap-positioning.js.map +1 -1
  304. package/positioning/models/index.d.ts +27 -0
  305. package/positioning/modifiers/arrow.d.ts +2 -0
  306. package/positioning/modifiers/flip.d.ts +2 -0
  307. package/positioning/modifiers/index.d.ts +5 -0
  308. package/positioning/modifiers/initData.d.ts +2 -0
  309. package/positioning/modifiers/preventOverflow.d.ts +2 -0
  310. package/positioning/modifiers/shift.d.ts +2 -0
  311. package/positioning/ng-positioning.d.ts +7 -10
  312. package/positioning/ngx-bootstrap-positioning.metadata.json +1 -1
  313. package/positioning/package.json +1 -1
  314. package/positioning/positioning.service.d.ts +7 -1
  315. package/positioning/utils/computeAutoPlacement.d.ts +2 -0
  316. package/positioning/utils/findCommonOffsetParent.d.ts +1 -0
  317. package/positioning/utils/getBordersSize.d.ts +4 -0
  318. package/positioning/utils/getBoundaries.d.ts +1 -0
  319. package/positioning/utils/getBoundingClientRect.d.ts +2 -0
  320. package/positioning/utils/getClientRect.d.ts +5 -0
  321. package/positioning/utils/getFixedPositionOffsetParent.d.ts +1 -0
  322. package/positioning/utils/getOffsetParent.d.ts +1 -0
  323. package/positioning/utils/getOffsetRectRelativeToArbitraryNode.d.ts +2 -0
  324. package/positioning/utils/getOffsets.d.ts +2 -0
  325. package/positioning/utils/getOppositePlacement.d.ts +4 -0
  326. package/positioning/utils/getOppositeVariation.d.ts +4 -0
  327. package/positioning/utils/getOuterSizes.d.ts +7 -0
  328. package/positioning/utils/getParentNode.d.ts +4 -0
  329. package/positioning/utils/getReferenceOffsets.d.ts +2 -0
  330. package/positioning/utils/getRoot.d.ts +4 -0
  331. package/positioning/utils/getScroll.d.ts +4 -0
  332. package/positioning/utils/getScrollParent.d.ts +1 -0
  333. package/positioning/utils/getStyleComputedProperty.d.ts +4 -0
  334. package/positioning/utils/getTargetOffsets.d.ts +2 -0
  335. package/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.d.ts +2 -0
  336. package/positioning/utils/getWindowSizes.d.ts +4 -0
  337. package/positioning/utils/includeScroll.d.ts +2 -0
  338. package/positioning/utils/index.d.ts +22 -0
  339. package/positioning/utils/isBrowser.d.ts +1 -0
  340. package/positioning/utils/isFixed.d.ts +1 -0
  341. package/positioning/utils/isIE.d.ts +1 -0
  342. package/positioning/utils/isNumeric.d.ts +4 -0
  343. package/positioning/utils/isOffsetContainer.d.ts +1 -0
  344. package/positioning/utils/setAllStyles.d.ts +6 -0
  345. package/positioning/utils/setStyles.d.ts +5 -0
  346. package/progressbar/package.json +1 -1
  347. package/rating/bundles/ngx-bootstrap-rating.umd.js +3 -1
  348. package/rating/bundles/ngx-bootstrap-rating.umd.js.map +1 -1
  349. package/rating/bundles/ngx-bootstrap-rating.umd.min.js.map +1 -1
  350. package/rating/esm2015/rating.component.js +3 -1
  351. package/rating/esm5/rating.component.js +3 -1
  352. package/rating/fesm2015/ngx-bootstrap-rating.js +3 -1
  353. package/rating/fesm2015/ngx-bootstrap-rating.js.map +1 -1
  354. package/rating/fesm5/ngx-bootstrap-rating.js +3 -1
  355. package/rating/fesm5/ngx-bootstrap-rating.js.map +1 -1
  356. package/rating/package.json +1 -1
  357. package/schematics/ng-add/index.js +17 -9
  358. package/schematics/ng-add/index.js.map +1 -1
  359. package/schematics/ng-add/index.spec.js +2 -3
  360. package/schematics/ng-add/index.spec.js.map +1 -1
  361. package/sortable/package.json +1 -1
  362. package/tabs/package.json +1 -1
  363. package/timepicker/bundles/ngx-bootstrap-timepicker.umd.js +3 -1
  364. package/timepicker/bundles/ngx-bootstrap-timepicker.umd.js.map +1 -1
  365. package/timepicker/bundles/ngx-bootstrap-timepicker.umd.min.js +1 -1
  366. package/timepicker/bundles/ngx-bootstrap-timepicker.umd.min.js.map +1 -1
  367. package/timepicker/esm2015/timepicker.component.js +5 -1
  368. package/timepicker/esm5/timepicker.component.js +5 -1
  369. package/timepicker/fesm2015/ngx-bootstrap-timepicker.js +3 -1
  370. package/timepicker/fesm2015/ngx-bootstrap-timepicker.js.map +1 -1
  371. package/timepicker/fesm5/ngx-bootstrap-timepicker.js +3 -1
  372. package/timepicker/fesm5/ngx-bootstrap-timepicker.js.map +1 -1
  373. package/timepicker/ngx-bootstrap-timepicker.metadata.json +1 -1
  374. package/timepicker/package.json +1 -1
  375. package/timepicker/timepicker.component.d.ts +1 -0
  376. package/tooltip/bundles/ngx-bootstrap-tooltip.umd.js +15 -4
  377. package/tooltip/bundles/ngx-bootstrap-tooltip.umd.js.map +1 -1
  378. package/tooltip/bundles/ngx-bootstrap-tooltip.umd.min.js +1 -1
  379. package/tooltip/bundles/ngx-bootstrap-tooltip.umd.min.js.map +1 -1
  380. package/tooltip/esm2015/tooltip-container.component.js +15 -7
  381. package/tooltip/esm2015/tooltip.config.js +10 -1
  382. package/tooltip/esm2015/tooltip.directive.js +13 -4
  383. package/tooltip/esm5/tooltip-container.component.js +6 -2
  384. package/tooltip/esm5/tooltip.config.js +10 -1
  385. package/tooltip/esm5/tooltip.directive.js +13 -4
  386. package/tooltip/fesm2015/ngx-bootstrap-tooltip.js +25 -10
  387. package/tooltip/fesm2015/ngx-bootstrap-tooltip.js.map +1 -1
  388. package/tooltip/fesm5/ngx-bootstrap-tooltip.js +16 -5
  389. package/tooltip/fesm5/ngx-bootstrap-tooltip.js.map +1 -1
  390. package/tooltip/ngx-bootstrap-tooltip.metadata.json +1 -1
  391. package/tooltip/package.json +1 -1
  392. package/tooltip/tooltip-container.component.d.ts +1 -0
  393. package/tooltip/tooltip.config.d.ts +2 -0
  394. package/tooltip/tooltip.directive.d.ts +2 -0
  395. package/typeahead/bundles/ngx-bootstrap-typeahead.umd.js +93 -35
  396. package/typeahead/bundles/ngx-bootstrap-typeahead.umd.js.map +1 -1
  397. package/typeahead/bundles/ngx-bootstrap-typeahead.umd.min.js +1 -1
  398. package/typeahead/bundles/ngx-bootstrap-typeahead.umd.min.js.map +1 -1
  399. package/typeahead/esm2015/ngx-bootstrap-typeahead.js +2 -2
  400. package/typeahead/esm2015/public_api.js +2 -1
  401. package/typeahead/esm2015/typeahead-container.component.js +15 -4
  402. package/typeahead/esm2015/typeahead.config.js +55 -0
  403. package/typeahead/esm2015/typeahead.directive.js +68 -32
  404. package/typeahead/esm2015/typeahead.module.js +3 -2
  405. package/typeahead/esm5/ngx-bootstrap-typeahead.js +2 -2
  406. package/typeahead/esm5/public_api.js +2 -1
  407. package/typeahead/esm5/typeahead-container.component.js +12 -4
  408. package/typeahead/esm5/typeahead.config.js +57 -0
  409. package/typeahead/esm5/typeahead.directive.js +69 -34
  410. package/typeahead/esm5/typeahead.module.js +3 -2
  411. package/typeahead/fesm2015/ngx-bootstrap-typeahead.js +96 -36
  412. package/typeahead/fesm2015/ngx-bootstrap-typeahead.js.map +1 -1
  413. package/typeahead/fesm5/ngx-bootstrap-typeahead.js +95 -38
  414. package/typeahead/fesm5/ngx-bootstrap-typeahead.js.map +1 -1
  415. package/typeahead/ngx-bootstrap-typeahead.metadata.json +1 -1
  416. package/typeahead/package.json +1 -1
  417. package/typeahead/public_api.d.ts +1 -0
  418. package/typeahead/typeahead-container.component.d.ts +1 -1
  419. package/typeahead/typeahead.config.d.ts +11 -0
  420. package/typeahead/typeahead.directive.d.ts +14 -5
  421. package/utils/bundles/ngx-bootstrap-utils.umd.js +31 -11
  422. package/utils/bundles/ngx-bootstrap-utils.umd.js.map +1 -1
  423. package/utils/bundles/ngx-bootstrap-utils.umd.min.js +1 -1
  424. package/utils/bundles/ngx-bootstrap-utils.umd.min.js.map +1 -1
  425. package/utils/esm2015/facade/browser.js +13 -14
  426. package/utils/esm2015/ngx-bootstrap-utils.js +2 -2
  427. package/utils/esm2015/public_api.js +2 -2
  428. package/utils/esm2015/triggers.js +23 -1
  429. package/utils/esm5/facade/browser.js +10 -11
  430. package/utils/esm5/ngx-bootstrap-utils.js +2 -2
  431. package/utils/esm5/public_api.js +2 -2
  432. package/utils/esm5/triggers.js +23 -1
  433. package/utils/facade/browser.d.ts +5 -5
  434. package/utils/fesm2015/ngx-bootstrap-utils.js +34 -15
  435. package/utils/fesm2015/ngx-bootstrap-utils.js.map +1 -1
  436. package/utils/fesm5/ngx-bootstrap-utils.js +31 -12
  437. package/utils/fesm5/ngx-bootstrap-utils.js.map +1 -1
  438. package/utils/ngx-bootstrap-utils.metadata.json +1 -1
  439. package/utils/package.json +1 -1
  440. package/utils/public_api.d.ts +1 -1
  441. package/utils/triggers.d.ts +2 -0
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ import { getClientRect } from './getClientRect';
6
+ import { getOffsetRectRelativeToArbitraryNode } from './getOffsetRectRelativeToArbitraryNode';
7
+ import { getScroll } from './getScroll';
8
+ /**
9
+ * @param {?} element
10
+ * @param {?=} excludeScroll
11
+ * @return {?}
12
+ */
13
+ export function getViewportOffsetRectRelativeToArtbitraryNode(element, excludeScroll) {
14
+ if (excludeScroll === void 0) { excludeScroll = false; }
15
+ var /** @type {?} */ html = element.ownerDocument.documentElement;
16
+ var /** @type {?} */ relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);
17
+ var /** @type {?} */ width = Math.max(html.clientWidth, window.innerWidth || 0);
18
+ var /** @type {?} */ height = Math.max(html.clientHeight, window.innerHeight || 0);
19
+ var /** @type {?} */ scrollTop = !excludeScroll ? getScroll(html) : 0;
20
+ var /** @type {?} */ scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;
21
+ var /** @type {?} */ offset = {
22
+ top: scrollTop - Number(relativeOffset.top) + Number(relativeOffset.marginTop),
23
+ left: scrollLeft - Number(relativeOffset.left) + Number(relativeOffset.marginLeft),
24
+ width: width,
25
+ height: height
26
+ };
27
+ return getClientRect(offset);
28
+ }
29
+
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Vmlld3BvcnRPZmZzZXRSZWN0UmVsYXRpdmVUb0FydGJpdHJhcnlOb2RlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWJvb3RzdHJhcC9wb3NpdGlvbmluZy8iLCJzb3VyY2VzIjpbInV0aWxzL2dldFZpZXdwb3J0T2Zmc2V0UmVjdFJlbGF0aXZlVG9BcnRiaXRyYXJ5Tm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztBQUd4QyxNQUFNLHdEQUF3RCxPQUFvQixFQUFFLGFBQXFCO0lBQXJCLDhCQUFBLEVBQUEscUJBQXFCO0lBQ3ZHLHFCQUFNLElBQUksR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQztJQUNuRCxxQkFBTSxjQUFjLEdBQUcsb0NBQW9DLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNFLHFCQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRSxxQkFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLENBQUM7SUFFcEUscUJBQU0sU0FBUyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2RCxxQkFBTSxVQUFVLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVoRSxxQkFBTSxNQUFNLEdBQUc7UUFDYixHQUFHLEVBQUUsU0FBUyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUM7UUFDOUUsSUFBSSxFQUFFLFVBQVUsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDO1FBQ2xGLEtBQUssT0FBQTtRQUNMLE1BQU0sUUFBQTtLQUNQLENBQUM7SUFFRixNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0NBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0Q2xpZW50UmVjdCB9IGZyb20gJy4vZ2V0Q2xpZW50UmVjdCc7XG5pbXBvcnQgeyBnZXRPZmZzZXRSZWN0UmVsYXRpdmVUb0FyYml0cmFyeU5vZGUgfSBmcm9tICcuL2dldE9mZnNldFJlY3RSZWxhdGl2ZVRvQXJiaXRyYXJ5Tm9kZSc7XG5pbXBvcnQgeyBnZXRTY3JvbGwgfSBmcm9tICcuL2dldFNjcm9sbCc7XG5pbXBvcnQgeyBPZmZzZXRzIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFZpZXdwb3J0T2Zmc2V0UmVjdFJlbGF0aXZlVG9BcnRiaXRyYXJ5Tm9kZShlbGVtZW50OiBIVE1MRWxlbWVudCwgZXhjbHVkZVNjcm9sbCA9IGZhbHNlKTogT2Zmc2V0cyB7XG4gIGNvbnN0IGh0bWwgPSBlbGVtZW50Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICBjb25zdCByZWxhdGl2ZU9mZnNldCA9IGdldE9mZnNldFJlY3RSZWxhdGl2ZVRvQXJiaXRyYXJ5Tm9kZShlbGVtZW50LCBodG1sKTtcbiAgY29uc3Qgd2lkdGggPSBNYXRoLm1heChodG1sLmNsaWVudFdpZHRoLCB3aW5kb3cuaW5uZXJXaWR0aCB8fCAwKTtcbiAgY29uc3QgaGVpZ2h0ID0gTWF0aC5tYXgoaHRtbC5jbGllbnRIZWlnaHQsIHdpbmRvdy5pbm5lckhlaWdodCB8fCAwKTtcblxuICBjb25zdCBzY3JvbGxUb3AgPSAhZXhjbHVkZVNjcm9sbCA/IGdldFNjcm9sbChodG1sKSA6IDA7XG4gIGNvbnN0IHNjcm9sbExlZnQgPSAhZXhjbHVkZVNjcm9sbCA/IGdldFNjcm9sbChodG1sLCAnbGVmdCcpIDogMDtcblxuICBjb25zdCBvZmZzZXQgPSB7XG4gICAgdG9wOiBzY3JvbGxUb3AgLSBOdW1iZXIocmVsYXRpdmVPZmZzZXQudG9wKSArIE51bWJlcihyZWxhdGl2ZU9mZnNldC5tYXJnaW5Ub3ApLFxuICAgIGxlZnQ6IHNjcm9sbExlZnQgLSBOdW1iZXIocmVsYXRpdmVPZmZzZXQubGVmdCkgKyBOdW1iZXIocmVsYXRpdmVPZmZzZXQubWFyZ2luTGVmdCksXG4gICAgd2lkdGgsXG4gICAgaGVpZ2h0XG4gIH07XG5cbiAgcmV0dXJuIGdldENsaWVudFJlY3Qob2Zmc2V0KTtcbn1cbiJdfQ==
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ import { isIE } from './isIE';
6
+ /**
7
+ * @param {?} axis
8
+ * @param {?} body
9
+ * @param {?} html
10
+ * @param {?} computedStyle
11
+ * @return {?}
12
+ */
13
+ function getSize(axis, body, html, computedStyle) {
14
+ return Math.max(body["offset" + axis], body["scroll" + axis], html["client" + axis], html["offset" + axis], html["scroll" + axis], isIE(10)
15
+ ? (parseInt(html["offset" + axis], 10) +
16
+ parseInt(computedStyle["margin" + (axis === 'Height' ? 'Top' : 'Left')], 10) +
17
+ parseInt(computedStyle["margin" + (axis === 'Height' ? 'Bottom' : 'Right')], 10))
18
+ : 0);
19
+ }
20
+ /**
21
+ * @param {?} document
22
+ * @return {?}
23
+ */
24
+ export function getWindowSizes(document) {
25
+ var /** @type {?} */ body = document.body;
26
+ var /** @type {?} */ html = document.documentElement;
27
+ var /** @type {?} */ computedStyle = isIE(10) && getComputedStyle(html);
28
+ return {
29
+ height: getSize('Height', body, html, computedStyle),
30
+ width: getSize('Width', body, html, computedStyle)
31
+ };
32
+ }
33
+
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0V2luZG93U2l6ZXMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3Bvc2l0aW9uaW5nLyIsInNvdXJjZXMiOlsidXRpbHMvZ2V0V2luZG93U2l6ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7Ozs7Ozs7O0FBRTlCLGlCQUFpQixJQUFZLEVBQUUsSUFBaUIsRUFBRSxJQUFpQixFQUFFLGFBQWtDO0lBQ3JHLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNiLElBQUksQ0FBQyxXQUFTLElBQU0sQ0FBQyxFQUNyQixJQUFJLENBQUMsV0FBUyxJQUFNLENBQUMsRUFDckIsSUFBSSxDQUFDLFdBQVMsSUFBTSxDQUFDLEVBQ3JCLElBQUksQ0FBQyxXQUFTLElBQU0sQ0FBQyxFQUNyQixJQUFJLENBQUMsV0FBUyxJQUFNLENBQUMsRUFDckIsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBUyxJQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDdEMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxZQUFTLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDMUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyxZQUFTLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqRixDQUFDLENBQUMsQ0FBQyxDQUNKLENBQUM7Q0FDSDs7Ozs7QUFFRCxNQUFNLHlCQUF5QixRQUFrQjtJQUMvQyxxQkFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztJQUMzQixxQkFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQztJQUN0QyxxQkFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXpELE1BQU0sQ0FBQztRQUNMLE1BQU0sRUFBRSxPQUFPLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDO1FBQ3BELEtBQUssRUFBRSxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDO0tBQ25ELENBQUM7Q0FDSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzSUUgfSBmcm9tICcuL2lzSUUnO1xuXG5mdW5jdGlvbiBnZXRTaXplKGF4aXM6IHN0cmluZywgYm9keTogSFRNTEVsZW1lbnQsIGh0bWw6IEhUTUxFbGVtZW50LCBjb21wdXRlZFN0eWxlOiBDU1NTdHlsZURlY2xhcmF0aW9uKSB7XG4gIHJldHVybiBNYXRoLm1heChcbiAgICBib2R5W2BvZmZzZXQke2F4aXN9YF0sXG4gICAgYm9keVtgc2Nyb2xsJHtheGlzfWBdLFxuICAgIGh0bWxbYGNsaWVudCR7YXhpc31gXSxcbiAgICBodG1sW2BvZmZzZXQke2F4aXN9YF0sXG4gICAgaHRtbFtgc2Nyb2xsJHtheGlzfWBdLFxuICAgIGlzSUUoMTApXG4gICAgICA/IChwYXJzZUludChodG1sW2BvZmZzZXQke2F4aXN9YF0sIDEwKSArXG4gICAgICBwYXJzZUludChjb21wdXRlZFN0eWxlW2BtYXJnaW4ke2F4aXMgPT09ICdIZWlnaHQnID8gJ1RvcCcgOiAnTGVmdCd9YF0sIDEwKSArXG4gICAgICBwYXJzZUludChjb21wdXRlZFN0eWxlW2BtYXJnaW4ke2F4aXMgPT09ICdIZWlnaHQnID8gJ0JvdHRvbScgOiAnUmlnaHQnfWBdLCAxMCkpXG4gICAgOiAwXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRXaW5kb3dTaXplcyhkb2N1bWVudDogRG9jdW1lbnQpIHtcbiAgY29uc3QgYm9keSA9IGRvY3VtZW50LmJvZHk7XG4gIGNvbnN0IGh0bWwgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG4gIGNvbnN0IGNvbXB1dGVkU3R5bGUgPSBpc0lFKDEwKSAmJiBnZXRDb21wdXRlZFN0eWxlKGh0bWwpO1xuXG4gIHJldHVybiB7XG4gICAgaGVpZ2h0OiBnZXRTaXplKCdIZWlnaHQnLCBib2R5LCBodG1sLCBjb21wdXRlZFN0eWxlKSxcbiAgICB3aWR0aDogZ2V0U2l6ZSgnV2lkdGgnLCBib2R5LCBodG1sLCBjb21wdXRlZFN0eWxlKVxuICB9O1xufVxuIl19
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ import { getScroll } from './getScroll';
6
+ /**
7
+ * @param {?} rect
8
+ * @param {?} element
9
+ * @param {?=} subtract
10
+ * @return {?}
11
+ */
12
+ export function includeScroll(rect, element, subtract) {
13
+ if (subtract === void 0) { subtract = false; }
14
+ var /** @type {?} */ scrollTop = getScroll(element, 'top');
15
+ var /** @type {?} */ scrollLeft = getScroll(element, 'left');
16
+ var /** @type {?} */ modifier = subtract ? -1 : 1;
17
+ rect.top += scrollTop * modifier;
18
+ rect.bottom += scrollTop * modifier;
19
+ rect.left += scrollLeft * modifier;
20
+ rect.right += scrollLeft * modifier;
21
+ return rect;
22
+ }
23
+
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jbHVkZVNjcm9sbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1ib290c3RyYXAvcG9zaXRpb25pbmcvIiwic291cmNlcyI6WyJ1dGlscy9pbmNsdWRlU2Nyb2xsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFHQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7O0FBR3hDLE1BQU0sd0JBQXdCLElBQWEsRUFBRSxPQUFvQixFQUFFLFFBQWdCO0lBQWhCLHlCQUFBLEVBQUEsZ0JBQWdCO0lBQ2pGLHFCQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzVDLHFCQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLHFCQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkMsSUFBSSxDQUFDLEdBQUcsSUFBSSxTQUFTLEdBQUcsUUFBUSxDQUFDO0lBQ2pDLElBQUksQ0FBQyxNQUFNLElBQUksU0FBUyxHQUFHLFFBQVEsQ0FBQztJQUNwQyxJQUFJLENBQUMsSUFBSSxJQUFJLFVBQVUsR0FBRyxRQUFRLENBQUM7SUFDbkMsSUFBSSxDQUFDLEtBQUssSUFBSSxVQUFVLEdBQUcsUUFBUSxDQUFDO0lBRXBDLE1BQU0sQ0FBQyxJQUFJLENBQUM7Q0FDYiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU3VtIG9yIHN1YnRyYWN0IHRoZSBlbGVtZW50IHNjcm9sbCB2YWx1ZXMgKGxlZnQgYW5kIHRvcCkgZnJvbSBhIGdpdmVuIHJlY3Qgb2JqZWN0XG4gKi9cbmltcG9ydCB7IGdldFNjcm9sbCB9IGZyb20gJy4vZ2V0U2Nyb2xsJztcbmltcG9ydCB7IE9mZnNldHMgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5jbHVkZVNjcm9sbChyZWN0OiBPZmZzZXRzLCBlbGVtZW50OiBIVE1MRWxlbWVudCwgc3VidHJhY3QgPSBmYWxzZSkge1xuICBjb25zdCBzY3JvbGxUb3AgPSBnZXRTY3JvbGwoZWxlbWVudCwgJ3RvcCcpO1xuICBjb25zdCBzY3JvbGxMZWZ0ID0gZ2V0U2Nyb2xsKGVsZW1lbnQsICdsZWZ0Jyk7XG4gIGNvbnN0IG1vZGlmaWVyID0gc3VidHJhY3QgPyAtMSA6IDE7XG4gIHJlY3QudG9wICs9IHNjcm9sbFRvcCAqIG1vZGlmaWVyO1xuICByZWN0LmJvdHRvbSArPSBzY3JvbGxUb3AgKiBtb2RpZmllcjtcbiAgcmVjdC5sZWZ0ICs9IHNjcm9sbExlZnQgKiBtb2RpZmllcjtcbiAgcmVjdC5yaWdodCArPSBzY3JvbGxMZWZ0ICogbW9kaWZpZXI7XG5cbiAgcmV0dXJuIHJlY3Q7XG59XG4iXX0=
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ export { computeAutoPlacement } from './computeAutoPlacement';
6
+ export { getBordersSize } from './getBordersSize';
7
+ export { getBoundaries } from './getBoundaries';
8
+ export { getBoundingClientRect } from './getBoundingClientRect';
9
+ export { getClientRect } from './getClientRect';
10
+ export { getOffsetParent } from './getOffsetParent';
11
+ export { getOffsetRectRelativeToArbitraryNode } from './getOffsetRectRelativeToArbitraryNode';
12
+ export { getOffsets } from './getOffsets';
13
+ export { getOppositePlacement } from './getOppositePlacement';
14
+ export { getOppositeVariation } from './getOppositeVariation';
15
+ export { getOuterSizes } from './getOuterSizes';
16
+ export { getParentNode } from './getParentNode';
17
+ export { getReferenceOffsets } from './getReferenceOffsets';
18
+ export { getScroll } from './getScroll';
19
+ export { getScrollParent } from './getScrollParent';
20
+ export { getStyleComputedProperty } from './getStyleComputedProperty';
21
+ export { getTargetOffsets } from './getTargetOffsets';
22
+ export { getWindowSizes } from './getWindowSizes';
23
+ export { isFixed } from './isFixed';
24
+ export { isNumeric } from './isNumeric';
25
+ export { setAllStyles } from './setAllStyles';
26
+ export { setStyles } from './setStyles';
27
+
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3Bvc2l0aW9uaW5nLyIsInNvdXJjZXMiOlsidXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGNvbXB1dGVBdXRvUGxhY2VtZW50IH0gZnJvbSAnLi9jb21wdXRlQXV0b1BsYWNlbWVudCc7XG5leHBvcnQgeyBnZXRCb3JkZXJzU2l6ZSB9IGZyb20gJy4vZ2V0Qm9yZGVyc1NpemUnO1xuZXhwb3J0IHsgZ2V0Qm91bmRhcmllcyB9IGZyb20gJy4vZ2V0Qm91bmRhcmllcyc7XG5leHBvcnQgeyBnZXRCb3VuZGluZ0NsaWVudFJlY3QgfSBmcm9tICcuL2dldEJvdW5kaW5nQ2xpZW50UmVjdCc7XG5leHBvcnQgeyBnZXRDbGllbnRSZWN0IH0gZnJvbSAnLi9nZXRDbGllbnRSZWN0JztcbmV4cG9ydCB7IGdldE9mZnNldFBhcmVudCB9IGZyb20gJy4vZ2V0T2Zmc2V0UGFyZW50JztcbmV4cG9ydCB7IGdldE9mZnNldFJlY3RSZWxhdGl2ZVRvQXJiaXRyYXJ5Tm9kZSB9IGZyb20gJy4vZ2V0T2Zmc2V0UmVjdFJlbGF0aXZlVG9BcmJpdHJhcnlOb2RlJztcbmV4cG9ydCB7IGdldE9mZnNldHMgfSBmcm9tICcuL2dldE9mZnNldHMnO1xuZXhwb3J0IHsgZ2V0T3Bwb3NpdGVQbGFjZW1lbnQgfSBmcm9tICcuL2dldE9wcG9zaXRlUGxhY2VtZW50JztcbmV4cG9ydCB7IGdldE9wcG9zaXRlVmFyaWF0aW9uIH0gZnJvbSAnLi9nZXRPcHBvc2l0ZVZhcmlhdGlvbic7XG5leHBvcnQgeyBnZXRPdXRlclNpemVzIH0gZnJvbSAnLi9nZXRPdXRlclNpemVzJztcbmV4cG9ydCB7IGdldFBhcmVudE5vZGUgfSBmcm9tICcuL2dldFBhcmVudE5vZGUnO1xuZXhwb3J0IHsgZ2V0UmVmZXJlbmNlT2Zmc2V0cyB9IGZyb20gJy4vZ2V0UmVmZXJlbmNlT2Zmc2V0cyc7XG5leHBvcnQgeyBnZXRTY3JvbGwgfSBmcm9tICcuL2dldFNjcm9sbCc7XG5leHBvcnQgeyBnZXRTY3JvbGxQYXJlbnQgfSBmcm9tICcuL2dldFNjcm9sbFBhcmVudCc7XG5leHBvcnQgeyBnZXRTdHlsZUNvbXB1dGVkUHJvcGVydHkgfSBmcm9tICcuL2dldFN0eWxlQ29tcHV0ZWRQcm9wZXJ0eSc7XG5leHBvcnQgeyBnZXRUYXJnZXRPZmZzZXRzIH0gZnJvbSAnLi9nZXRUYXJnZXRPZmZzZXRzJztcbmV4cG9ydCB7IGdldFdpbmRvd1NpemVzIH0gZnJvbSAnLi9nZXRXaW5kb3dTaXplcyc7XG5leHBvcnQgeyBpc0ZpeGVkIH0gZnJvbSAnLi9pc0ZpeGVkJztcbmV4cG9ydCB7IGlzTnVtZXJpYyB9IGZyb20gJy4vaXNOdW1lcmljJztcbmV4cG9ydCB7IHNldEFsbFN0eWxlcyB9IGZyb20gJy4vc2V0QWxsU3R5bGVzJztcbmV4cG9ydCB7IHNldFN0eWxlcyB9IGZyb20gJy4vc2V0U3R5bGVzJztcbiJdfQ==
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ export var /** @type {?} */ isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';
6
+
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNCcm93c2VyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWJvb3RzdHJhcC9wb3NpdGlvbmluZy8iLCJzb3VyY2VzIjpbInV0aWxzL2lzQnJvd3Nlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsTUFBTSxDQUFDLHFCQUFNLFNBQVMsR0FBRyxPQUFPLE1BQU0sS0FBSyxXQUFXLElBQUksT0FBTyxRQUFRLEtBQUssV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGlzQnJvd3NlciA9IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHR5cGVvZiBkb2N1bWVudCAhPT0gJ3VuZGVmaW5lZCc7XG4iXX0=
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ import { getStyleComputedProperty } from './getStyleComputedProperty';
6
+ import { getParentNode } from './getParentNode';
7
+ /**
8
+ * @param {?} element
9
+ * @return {?}
10
+ */
11
+ export function isFixed(element) {
12
+ var /** @type {?} */ nodeName = element.nodeName;
13
+ if (nodeName === 'BODY' || nodeName === 'HTML') {
14
+ return false;
15
+ }
16
+ if (getStyleComputedProperty(element, 'position') === 'fixed') {
17
+ return true;
18
+ }
19
+ return isFixed(getParentNode(element));
20
+ }
21
+
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNGaXhlZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1ib290c3RyYXAvcG9zaXRpb25pbmcvIiwic291cmNlcyI6WyJ1dGlscy9pc0ZpeGVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFHQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBRWhELE1BQU0sa0JBQWtCLE9BQW9CO0lBQzFDLHFCQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQ2xDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsS0FBSyxNQUFNLElBQUksUUFBUSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDL0MsTUFBTSxDQUFDLEtBQUssQ0FBQztLQUNkO0lBQ0QsRUFBRSxDQUFDLENBQUMsd0JBQXdCLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDOUQsTUFBTSxDQUFDLElBQUksQ0FBQztLQUNiO0lBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztDQUN4QyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ2hlY2sgaWYgdGhlIGdpdmVuIGVsZW1lbnQgaXMgZml4ZWQgb3IgaXMgaW5zaWRlIGEgZml4ZWQgcGFyZW50XG4gKi9cbmltcG9ydCB7IGdldFN0eWxlQ29tcHV0ZWRQcm9wZXJ0eSB9IGZyb20gJy4vZ2V0U3R5bGVDb21wdXRlZFByb3BlcnR5JztcbmltcG9ydCB7IGdldFBhcmVudE5vZGUgfSBmcm9tICcuL2dldFBhcmVudE5vZGUnO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNGaXhlZChlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICBjb25zdCBub2RlTmFtZSA9IGVsZW1lbnQubm9kZU5hbWU7XG4gIGlmIChub2RlTmFtZSA9PT0gJ0JPRFknIHx8IG5vZGVOYW1lID09PSAnSFRNTCcpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgaWYgKGdldFN0eWxlQ29tcHV0ZWRQcm9wZXJ0eShlbGVtZW50LCAncG9zaXRpb24nKSA9PT0gJ2ZpeGVkJykge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIGlzRml4ZWQoZ2V0UGFyZW50Tm9kZShlbGVtZW50KSk7XG59XG4iXX0=
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ import { isBrowser } from './isBrowser';
6
+ var /** @type {?} */ isIE11 = isBrowser && !!((/** @type {?} */ (window)).MSInputMethodContext && (/** @type {?} */ (document)).documentMode);
7
+ var /** @type {?} */ isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);
8
+ /**
9
+ * @param {?=} version
10
+ * @return {?}
11
+ */
12
+ export function isIE(version) {
13
+ if (version === 11) {
14
+ return isIE11;
15
+ }
16
+ if (version === 10) {
17
+ return isIE10;
18
+ }
19
+ return isIE11 || isIE10;
20
+ }
21
+
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNJRS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1ib290c3RyYXAvcG9zaXRpb25pbmcvIiwic291cmNlcyI6WyJ1dGlscy9pc0lFLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFHQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXhDLHFCQUFNLE1BQU0sR0FBRyxTQUFTLElBQUksQ0FBQyxDQUFDLENBQUMsbUJBQUMsTUFBYSxFQUFDLENBQUMsb0JBQW9CLElBQUksbUJBQUMsUUFBZSxFQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDdkcscUJBQU0sTUFBTSxHQUFHLFNBQVMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQzs7Ozs7QUFFaEUsTUFBTSxlQUFlLE9BQWdCO0lBQ25DLEVBQUUsQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ25CLE1BQU0sQ0FBQyxNQUFNLENBQUM7S0FDZjtJQUNELEVBQUUsQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ25CLE1BQU0sQ0FBQyxNQUFNLENBQUM7S0FDZjtJQUVELE1BQU0sQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDO0NBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBEZXRlcm1pbmVzIGlmIHRoZSBicm93c2VyIGlzIEludGVybmV0IEV4cGxvcmVyXG4gKi9cbmltcG9ydCB7IGlzQnJvd3NlciB9IGZyb20gJy4vaXNCcm93c2VyJztcblxuY29uc3QgaXNJRTExID0gaXNCcm93c2VyICYmICEhKCh3aW5kb3cgYXMgYW55KS5NU0lucHV0TWV0aG9kQ29udGV4dCAmJiAoZG9jdW1lbnQgYXMgYW55KS5kb2N1bWVudE1vZGUpO1xuY29uc3QgaXNJRTEwID0gaXNCcm93c2VyICYmIC9NU0lFIDEwLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNJRSh2ZXJzaW9uPzogbnVtYmVyKSB7XG4gIGlmICh2ZXJzaW9uID09PSAxMSkge1xuICAgIHJldHVybiBpc0lFMTE7XG4gIH1cbiAgaWYgKHZlcnNpb24gPT09IDEwKSB7XG4gICAgcmV0dXJuIGlzSUUxMDtcbiAgfVxuXG4gIHJldHVybiBpc0lFMTEgfHwgaXNJRTEwO1xufVxuIl19
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ /**
6
+ * Tells if a given input is a number
7
+ * @param {?} n
8
+ * @return {?}
9
+ */
10
+ export function isNumeric(n) {
11
+ return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);
12
+ }
13
+
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNOdW1lcmljLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWJvb3RzdHJhcC9wb3NpdGlvbmluZy8iLCJzb3VyY2VzIjpbInV0aWxzL2lzTnVtZXJpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFHQSxNQUFNLG9CQUFvQixDQUFNO0lBQzlCLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUN6RCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGVsbHMgaWYgYSBnaXZlbiBpbnB1dCBpcyBhIG51bWJlclxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNOdW1lcmljKG46IGFueSkge1xuICByZXR1cm4gbiAhPT0gJycgJiYgIWlzTmFOKHBhcnNlRmxvYXQobikpICYmIGlzRmluaXRlKG4pO1xufVxuIl19
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ import { getOffsetParent } from './getOffsetParent';
6
+ /**
7
+ * @param {?} element
8
+ * @return {?}
9
+ */
10
+ export function isOffsetContainer(element) {
11
+ var nodeName = element.nodeName;
12
+ if (nodeName === 'BODY') {
13
+ return false;
14
+ }
15
+ return (nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element);
16
+ }
17
+
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNPZmZzZXRDb250YWluZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3Bvc2l0aW9uaW5nLyIsInNvdXJjZXMiOlsidXRpbHMvaXNPZmZzZXRDb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFFcEQsTUFBTSw0QkFBNEIsT0FBWTtJQUNwQyxJQUFBLDJCQUFRLENBQWE7SUFDN0IsRUFBRSxDQUFDLENBQUMsUUFBUSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDeEIsTUFBTSxDQUFDLEtBQUssQ0FBQztLQUNkO0lBRUQsTUFBTSxDQUFDLENBQ0wsUUFBUSxLQUFLLE1BQU0sSUFBSSxlQUFlLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEtBQUssT0FBTyxDQUM5RSxDQUFDO0NBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRPZmZzZXRQYXJlbnQgfSBmcm9tICcuL2dldE9mZnNldFBhcmVudCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc09mZnNldENvbnRhaW5lcihlbGVtZW50OiBhbnkpIHtcbiAgY29uc3QgeyBub2RlTmFtZSB9ID0gZWxlbWVudDtcbiAgaWYgKG5vZGVOYW1lID09PSAnQk9EWScpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIG5vZGVOYW1lID09PSAnSFRNTCcgfHwgZ2V0T2Zmc2V0UGFyZW50KGVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQpID09PSBlbGVtZW50XG4gICk7XG59XG4iXX0=
@@ -0,0 +1,55 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ import { getOffsets, setStyles } from './index';
6
+ /**
7
+ * @param {?} data
8
+ * @param {?=} renderer
9
+ * @return {?}
10
+ */
11
+ export function setAllStyles(data, renderer) {
12
+ var /** @type {?} */ target = data.instance.target;
13
+ var /** @type {?} */ offsets = getOffsets(data);
14
+ setStyles(target, {
15
+ 'will-change': 'transform',
16
+ top: '0px',
17
+ left: '0px',
18
+ transform: "translate3d(" + offsets.left + "px, " + offsets.top + "px, 0px)"
19
+ }, renderer);
20
+ if (data.instance.arrow) {
21
+ setStyles(data.instance.arrow, data.offsets.arrow, renderer);
22
+ }
23
+ if (data.placementAuto) {
24
+ if (renderer) {
25
+ renderer.setAttribute(target, 'class', target.className.replace(/bs-popover-auto/g, "bs-popover-" + data.placement));
26
+ renderer.setAttribute(target, 'class', target.className.replace(/bs-tooltip-auto/g, "bs-tooltip-" + data.placement));
27
+ renderer.setAttribute(target, 'class', target.className.replace(/\sauto/g, "s" + data.placement));
28
+ if (target.className.match(/popover/g)) {
29
+ renderer.addClass(target, 'popover-auto');
30
+ }
31
+ if (target.className.match(/tooltip/g)) {
32
+ renderer.addClass(target, 'tooltip-auto');
33
+ }
34
+ }
35
+ else {
36
+ target.className = target.className.replace(/bs-popover-auto/g, "bs-popover-" + data.placement);
37
+ target.className = target.className.replace(/bs-tooltip-auto/g, "bs-tooltip-" + data.placement);
38
+ target.className = target.className.replace(/\sauto/g, "s" + data.placement);
39
+ if (target.className.match(/popover/g)) {
40
+ target.classList.add('popover-auto');
41
+ }
42
+ if (target.className.match(/tooltip/g)) {
43
+ target.classList.add('tooltip-auto');
44
+ }
45
+ }
46
+ }
47
+ if (renderer) {
48
+ renderer.setAttribute(target, 'class', target.className.replace(/left|right|top|bottom/g, "" + data.placement));
49
+ }
50
+ else {
51
+ target.className = target.className.replace(/left|right|top|bottom/g, "" + data.placement);
52
+ }
53
+ }
54
+
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0QWxsU3R5bGVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWJvb3RzdHJhcC9wb3NpdGlvbmluZy8iLCJzb3VyY2VzIjpbInV0aWxzL3NldEFsbFN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBTUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxTQUFTLENBQUM7Ozs7OztBQUVoRCxNQUFNLHVCQUF1QixJQUFVLEVBQUUsUUFBb0I7SUFDM0QscUJBQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO0lBRXBDLHFCQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFakMsU0FBUyxDQUFDLE1BQU0sRUFBRTtRQUNoQixhQUFhLEVBQUUsV0FBVztRQUMxQixHQUFHLEVBQUUsS0FBSztRQUNWLElBQUksRUFBRSxLQUFLO1FBQ1gsU0FBUyxFQUFFLGlCQUFlLE9BQU8sQ0FBQyxJQUFJLFlBQU8sT0FBTyxDQUFDLEdBQUcsYUFBVTtLQUNuRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBRWIsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3hCLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztLQUM5RDtJQUVELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQ3ZCLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDYixRQUFRLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQ25DLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLGdCQUFjLElBQUksQ0FBQyxTQUFXLENBQUMsQ0FDN0UsQ0FBQztZQUNGLFFBQVEsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFDbkMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUUsZ0JBQWMsSUFBSSxDQUFDLFNBQVcsQ0FBQyxDQUM3RSxDQUFDO1lBRUYsUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUNuQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsTUFBSyxJQUFJLENBQUMsU0FBVyxDQUFDLENBQzNELENBQUM7WUFFRixFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZDLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDO2FBQzNDO1lBRUQsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2QyxRQUFRLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxjQUFjLENBQUMsQ0FBQzthQUMzQztTQUdGO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixNQUFNLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLGdCQUFjLElBQUksQ0FBQyxTQUFXLENBQUMsQ0FBQztZQUNoRyxNQUFNLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLGdCQUFjLElBQUksQ0FBQyxTQUFXLENBQUMsQ0FBQztZQUNoRyxNQUFNLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxNQUFLLElBQUksQ0FBQyxTQUFXLENBQUMsQ0FBQztZQUU5RSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ3RDO1lBRUQsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2QyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUN0QztTQUNGO0tBQ0Y7SUFFRCxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ2IsUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHdCQUF3QixFQUFFLEtBQUcsSUFBSSxDQUFDLFNBQVcsQ0FBQyxDQUFDLENBQUM7S0FDakg7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNOLE1BQU0sQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLEVBQUUsS0FBRyxJQUFJLENBQUMsU0FBVyxDQUFDLENBQUM7S0FDNUY7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2V0IHRoZSBzdHlsZSB0byB0aGUgZ2l2ZW4gcG9wcGVyXG4gKi9cbmltcG9ydCB7IFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBEYXRhIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IGdldE9mZnNldHMsIHNldFN0eWxlcyB9IGZyb20gJy4vaW5kZXgnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0QWxsU3R5bGVzKGRhdGE6IERhdGEsIHJlbmRlcmVyPzogUmVuZGVyZXIyKTogdm9pZCB7XG4gIGNvbnN0IHRhcmdldCA9IGRhdGEuaW5zdGFuY2UudGFyZ2V0O1xuXG4gIGNvbnN0IG9mZnNldHMgPSBnZXRPZmZzZXRzKGRhdGEpO1xuXG4gIHNldFN0eWxlcyh0YXJnZXQsIHtcbiAgICAnd2lsbC1jaGFuZ2UnOiAndHJhbnNmb3JtJyxcbiAgICB0b3A6ICcwcHgnLFxuICAgIGxlZnQ6ICcwcHgnLFxuICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZTNkKCR7b2Zmc2V0cy5sZWZ0fXB4LCAke29mZnNldHMudG9wfXB4LCAwcHgpYFxuICB9LCByZW5kZXJlcik7XG5cbiAgaWYgKGRhdGEuaW5zdGFuY2UuYXJyb3cpIHtcbiAgICBzZXRTdHlsZXMoZGF0YS5pbnN0YW5jZS5hcnJvdywgZGF0YS5vZmZzZXRzLmFycm93LCByZW5kZXJlcik7XG4gIH1cblxuICBpZiAoZGF0YS5wbGFjZW1lbnRBdXRvKSB7XG4gICAgaWYgKHJlbmRlcmVyKSB7XG4gICAgICByZW5kZXJlci5zZXRBdHRyaWJ1dGUodGFyZ2V0LCAnY2xhc3MnLFxuICAgICAgICB0YXJnZXQuY2xhc3NOYW1lLnJlcGxhY2UoL2JzLXBvcG92ZXItYXV0by9nLCBgYnMtcG9wb3Zlci0ke2RhdGEucGxhY2VtZW50fWApXG4gICAgICApO1xuICAgICAgcmVuZGVyZXIuc2V0QXR0cmlidXRlKHRhcmdldCwgJ2NsYXNzJyxcbiAgICAgICAgdGFyZ2V0LmNsYXNzTmFtZS5yZXBsYWNlKC9icy10b29sdGlwLWF1dG8vZywgYGJzLXRvb2x0aXAtJHtkYXRhLnBsYWNlbWVudH1gKVxuICAgICAgKTtcblxuICAgICAgcmVuZGVyZXIuc2V0QXR0cmlidXRlKHRhcmdldCwgJ2NsYXNzJyxcbiAgICAgICAgdGFyZ2V0LmNsYXNzTmFtZS5yZXBsYWNlKC9cXHNhdXRvL2csIGBcXHMke2RhdGEucGxhY2VtZW50fWApXG4gICAgICApO1xuXG4gICAgICBpZiAodGFyZ2V0LmNsYXNzTmFtZS5tYXRjaCgvcG9wb3Zlci9nKSkge1xuICAgICAgICByZW5kZXJlci5hZGRDbGFzcyh0YXJnZXQsICdwb3BvdmVyLWF1dG8nKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRhcmdldC5jbGFzc05hbWUubWF0Y2goL3Rvb2x0aXAvZykpIHtcbiAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3ModGFyZ2V0LCAndG9vbHRpcC1hdXRvJyk7XG4gICAgICB9XG5cblxuICAgIH0gZWxzZSB7XG4gICAgICB0YXJnZXQuY2xhc3NOYW1lID0gdGFyZ2V0LmNsYXNzTmFtZS5yZXBsYWNlKC9icy1wb3BvdmVyLWF1dG8vZywgYGJzLXBvcG92ZXItJHtkYXRhLnBsYWNlbWVudH1gKTtcbiAgICAgIHRhcmdldC5jbGFzc05hbWUgPSB0YXJnZXQuY2xhc3NOYW1lLnJlcGxhY2UoL2JzLXRvb2x0aXAtYXV0by9nLCBgYnMtdG9vbHRpcC0ke2RhdGEucGxhY2VtZW50fWApO1xuICAgICAgdGFyZ2V0LmNsYXNzTmFtZSA9IHRhcmdldC5jbGFzc05hbWUucmVwbGFjZSgvXFxzYXV0by9nLCBgXFxzJHtkYXRhLnBsYWNlbWVudH1gKTtcblxuICAgICAgaWYgKHRhcmdldC5jbGFzc05hbWUubWF0Y2goL3BvcG92ZXIvZykpIHtcbiAgICAgICAgdGFyZ2V0LmNsYXNzTGlzdC5hZGQoJ3BvcG92ZXItYXV0bycpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGFyZ2V0LmNsYXNzTmFtZS5tYXRjaCgvdG9vbHRpcC9nKSkge1xuICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZCgndG9vbHRpcC1hdXRvJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKHJlbmRlcmVyKSB7XG4gICAgcmVuZGVyZXIuc2V0QXR0cmlidXRlKHRhcmdldCwgJ2NsYXNzJywgdGFyZ2V0LmNsYXNzTmFtZS5yZXBsYWNlKC9sZWZ0fHJpZ2h0fHRvcHxib3R0b20vZywgYCR7ZGF0YS5wbGFjZW1lbnR9YCkpO1xuICB9IGVsc2Uge1xuICAgIHRhcmdldC5jbGFzc05hbWUgPSB0YXJnZXQuY2xhc3NOYW1lLnJlcGxhY2UoL2xlZnR8cmlnaHR8dG9wfGJvdHRvbS9nLCBgJHtkYXRhLnBsYWNlbWVudH1gKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes} checked by tsc
4
+ */
5
+ import { isNumeric } from './isNumeric';
6
+ /**
7
+ * @param {?} element
8
+ * @param {?} styles
9
+ * @param {?=} renderer
10
+ * @return {?}
11
+ */
12
+ export function setStyles(element, styles, renderer) {
13
+ Object.keys(styles).forEach(function (prop) {
14
+ var /** @type {?} */ unit = '';
15
+ // add unit if the value is numeric and is one of the following
16
+ if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 &&
17
+ isNumeric(styles[prop])) {
18
+ unit = 'px';
19
+ }
20
+ if (renderer) {
21
+ renderer.setStyle(element, prop, "" + String(styles[prop]) + unit);
22
+ return;
23
+ }
24
+ element.style[prop] = String(styles[prop]) + unit;
25
+ });
26
+ }
27
+
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0U3R5bGVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWJvb3RzdHJhcC9wb3NpdGlvbmluZy8iLCJzb3VyY2VzIjpbInV0aWxzL3NldFN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBS0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7OztBQUV4QyxNQUFNLG9CQUFvQixPQUFvQixFQUFFLE1BQVcsRUFBRSxRQUFvQjtJQUMvRSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFDLElBQVM7UUFDcEMscUJBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQzs7UUFFZCxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1RSxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFCLElBQUksR0FBRyxJQUFJLENBQUM7U0FDYjtRQUVELEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDYixRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBTSxDQUFDLENBQUM7WUFFbkUsTUFBTSxDQUFDO1NBQ1I7UUFFRCxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7S0FDbkQsQ0FBQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNldCB0aGUgc3R5bGUgdG8gdGhlIGdpdmVuIHBvcHBlclxuICovXG5pbXBvcnQgeyBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgaXNOdW1lcmljIH0gZnJvbSAnLi9pc051bWVyaWMnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0U3R5bGVzKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBzdHlsZXM6IGFueSwgcmVuZGVyZXI/OiBSZW5kZXJlcjIpIHtcbiAgT2JqZWN0LmtleXMoc3R5bGVzKS5mb3JFYWNoKChwcm9wOiBhbnkpID0+IHtcbiAgICBsZXQgdW5pdCA9ICcnO1xuICAgIC8vIGFkZCB1bml0IGlmIHRoZSB2YWx1ZSBpcyBudW1lcmljIGFuZCBpcyBvbmUgb2YgdGhlIGZvbGxvd2luZ1xuICAgIGlmIChbJ3dpZHRoJywgJ2hlaWdodCcsICd0b3AnLCAncmlnaHQnLCAnYm90dG9tJywgJ2xlZnQnXS5pbmRleE9mKHByb3ApICE9PSAtMSAmJlxuICAgICAgaXNOdW1lcmljKHN0eWxlc1twcm9wXSkpIHtcbiAgICAgIHVuaXQgPSAncHgnO1xuICAgIH1cblxuICAgIGlmIChyZW5kZXJlcikge1xuICAgICAgcmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudCwgcHJvcCwgYCR7U3RyaW5nKHN0eWxlc1twcm9wXSl9JHt1bml0fWApO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZWxlbWVudC5zdHlsZVtwcm9wXSA9IFN0cmluZyhzdHlsZXNbcHJvcF0pICsgdW5pdDtcbiAgfSk7XG59XG4iXX0=