@skyux/core 5.2.2 → 5.5.0-beta.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 (316) hide show
  1. package/README.md +6 -4
  2. package/bundles/skyux-core-testing.umd.js +6 -6
  3. package/bundles/skyux-core.umd.js +140 -129
  4. package/documentation.json +293 -24
  5. package/esm2015/index.js +60 -0
  6. package/esm2015/index.js.map +1 -0
  7. package/esm2015/lib/modules/adapter-service/adapter.module.js +16 -0
  8. package/esm2015/lib/modules/adapter-service/adapter.module.js.map +1 -0
  9. package/esm2015/lib/modules/adapter-service/adapter.service.js +218 -0
  10. package/esm2015/lib/modules/adapter-service/adapter.service.js.map +1 -0
  11. package/esm2015/lib/modules/adapter-service/focusable-children-options.js +2 -0
  12. package/esm2015/lib/modules/adapter-service/focusable-children-options.js.map +1 -0
  13. package/esm2015/lib/modules/affix/affix-auto-fit-context.js +12 -0
  14. package/esm2015/lib/modules/affix/affix-auto-fit-context.js.map +1 -0
  15. package/esm2015/lib/modules/affix/affix-config.js +2 -0
  16. package/esm2015/lib/modules/affix/affix-config.js.map +1 -0
  17. package/esm2015/lib/modules/affix/affix-horizontal-alignment.js +2 -0
  18. package/esm2015/lib/modules/affix/affix-horizontal-alignment.js.map +1 -0
  19. package/esm2015/lib/modules/affix/affix-offset-change.js +2 -0
  20. package/esm2015/lib/modules/affix/affix-offset-change.js.map +1 -0
  21. package/esm2015/lib/modules/affix/affix-offset.js +2 -0
  22. package/esm2015/lib/modules/affix/affix-offset.js.map +1 -0
  23. package/esm2015/lib/modules/affix/affix-placement-change.js +2 -0
  24. package/esm2015/lib/modules/affix/affix-placement-change.js.map +1 -0
  25. package/esm2015/lib/modules/affix/affix-placement.js +2 -0
  26. package/esm2015/lib/modules/affix/affix-placement.js.map +1 -0
  27. package/esm2015/lib/modules/affix/affix-utils.js +18 -0
  28. package/esm2015/lib/modules/affix/affix-utils.js.map +1 -0
  29. package/esm2015/lib/modules/affix/affix-vertical-alignment.js +2 -0
  30. package/esm2015/lib/modules/affix/affix-vertical-alignment.js.map +1 -0
  31. package/esm2015/lib/modules/affix/affix.directive.js +100 -0
  32. package/esm2015/lib/modules/affix/affix.directive.js.map +1 -0
  33. package/esm2015/lib/modules/affix/affix.module.js +18 -0
  34. package/esm2015/lib/modules/affix/affix.module.js.map +1 -0
  35. package/esm2015/lib/modules/affix/affix.service.js +24 -0
  36. package/esm2015/lib/modules/affix/affix.service.js.map +1 -0
  37. package/esm2015/lib/modules/affix/affixer.js +349 -0
  38. package/esm2015/lib/modules/affix/affixer.js.map +1 -0
  39. package/esm2015/lib/modules/affix/dom-utils.js +77 -0
  40. package/esm2015/lib/modules/affix/dom-utils.js.map +1 -0
  41. package/esm2015/lib/modules/dock/dock-dom-adapter.service.js +80 -0
  42. package/esm2015/lib/modules/dock/dock-dom-adapter.service.js.map +1 -0
  43. package/esm2015/lib/modules/dock/dock-insert-component-config.js +2 -0
  44. package/esm2015/lib/modules/dock/dock-insert-component-config.js.map +1 -0
  45. package/esm2015/lib/modules/dock/dock-item-config.js +2 -0
  46. package/esm2015/lib/modules/dock/dock-item-config.js.map +1 -0
  47. package/esm2015/lib/modules/dock/dock-item-reference.js +2 -0
  48. package/esm2015/lib/modules/dock/dock-item-reference.js.map +1 -0
  49. package/esm2015/lib/modules/dock/dock-item.js +29 -0
  50. package/esm2015/lib/modules/dock/dock-item.js.map +1 -0
  51. package/esm2015/lib/modules/dock/dock-location.js +19 -0
  52. package/esm2015/lib/modules/dock/dock-location.js.map +1 -0
  53. package/esm2015/lib/modules/dock/dock-options.js +2 -0
  54. package/esm2015/lib/modules/dock/dock-options.js.map +1 -0
  55. package/esm2015/lib/modules/dock/dock.component.js +95 -0
  56. package/esm2015/lib/modules/dock/dock.component.js.map +1 -0
  57. package/esm2015/lib/modules/dock/dock.module.js +20 -0
  58. package/esm2015/lib/modules/dock/dock.module.js.map +1 -0
  59. package/esm2015/lib/modules/dock/dock.service.js +92 -0
  60. package/esm2015/lib/modules/dock/dock.service.js.map +1 -0
  61. package/esm2015/lib/modules/dock/sort-by-stack-order.js +13 -0
  62. package/esm2015/lib/modules/dock/sort-by-stack-order.js.map +1 -0
  63. package/esm2015/lib/modules/dynamic-component/dynamic-component-location.js +27 -0
  64. package/esm2015/lib/modules/dynamic-component/dynamic-component-location.js.map +1 -0
  65. package/esm2015/lib/modules/dynamic-component/dynamic-component-options.js +2 -0
  66. package/esm2015/lib/modules/dynamic-component/dynamic-component-options.js.map +1 -0
  67. package/esm2015/lib/modules/dynamic-component/dynamic-component.module.js +17 -0
  68. package/esm2015/lib/modules/dynamic-component/dynamic-component.module.js.map +1 -0
  69. package/esm2015/lib/modules/dynamic-component/dynamic-component.service.js +83 -0
  70. package/esm2015/lib/modules/dynamic-component/dynamic-component.service.js.map +1 -0
  71. package/esm2015/lib/modules/format/app-format.js +18 -0
  72. package/esm2015/lib/modules/format/app-format.js.map +1 -0
  73. package/esm2015/lib/modules/id/id.directive.js +34 -0
  74. package/esm2015/lib/modules/id/id.directive.js.map +1 -0
  75. package/esm2015/lib/modules/id/id.module.js +16 -0
  76. package/esm2015/lib/modules/id/id.module.js.map +1 -0
  77. package/esm2015/lib/modules/log/log.module.js +16 -0
  78. package/esm2015/lib/modules/log/log.module.js.map +1 -0
  79. package/esm2015/lib/modules/log/log.service.js +22 -0
  80. package/esm2015/lib/modules/log/log.service.js.map +1 -0
  81. package/esm2015/lib/modules/media-query/media-breakpoints.js +20 -0
  82. package/esm2015/lib/modules/media-query/media-breakpoints.js.map +1 -0
  83. package/esm2015/lib/modules/media-query/media-query-listener.js +2 -0
  84. package/esm2015/lib/modules/media-query/media-query-listener.js.map +1 -0
  85. package/esm2015/lib/modules/media-query/media-query.module.js +16 -0
  86. package/esm2015/lib/modules/media-query/media-query.module.js.map +1 -0
  87. package/esm2015/lib/modules/media-query/media-query.service.js +121 -0
  88. package/esm2015/lib/modules/media-query/media-query.service.js.map +1 -0
  89. package/esm2015/lib/modules/mutation/mutation-observer-service.js +16 -0
  90. package/esm2015/lib/modules/mutation/mutation-observer-service.js.map +1 -0
  91. package/esm2015/lib/modules/numeric/numeric-symbol.js +2 -0
  92. package/esm2015/lib/modules/numeric/numeric-symbol.js.map +1 -0
  93. package/esm2015/lib/modules/numeric/numeric.module.js +20 -0
  94. package/esm2015/lib/modules/numeric/numeric.module.js.map +1 -0
  95. package/esm2015/lib/modules/numeric/numeric.options.js +41 -0
  96. package/esm2015/lib/modules/numeric/numeric.options.js.map +1 -0
  97. package/esm2015/lib/modules/numeric/numeric.pipe.js +83 -0
  98. package/esm2015/lib/modules/numeric/numeric.pipe.js.map +1 -0
  99. package/esm2015/lib/modules/numeric/numeric.service.js +188 -0
  100. package/esm2015/lib/modules/numeric/numeric.service.js.map +1 -0
  101. package/esm2015/lib/modules/overlay/overlay-adapter.service.js +41 -0
  102. package/esm2015/lib/modules/overlay/overlay-adapter.service.js.map +1 -0
  103. package/esm2015/lib/modules/overlay/overlay-config.js +2 -0
  104. package/esm2015/lib/modules/overlay/overlay-config.js.map +1 -0
  105. package/esm2015/lib/modules/overlay/overlay-context.js +10 -0
  106. package/esm2015/lib/modules/overlay/overlay-context.js.map +1 -0
  107. package/esm2015/lib/modules/overlay/overlay-instance.js +55 -0
  108. package/esm2015/lib/modules/overlay/overlay-instance.js.map +1 -0
  109. package/esm2015/lib/modules/overlay/overlay.component.js +154 -0
  110. package/esm2015/lib/modules/overlay/overlay.component.js.map +1 -0
  111. package/esm2015/lib/modules/overlay/overlay.module.js +18 -0
  112. package/esm2015/lib/modules/overlay/overlay.module.js.map +1 -0
  113. package/esm2015/lib/modules/overlay/overlay.service.js +120 -0
  114. package/esm2015/lib/modules/overlay/overlay.service.js.map +1 -0
  115. package/esm2015/lib/modules/percent-pipe/percent-pipe.module.js +20 -0
  116. package/esm2015/lib/modules/percent-pipe/percent-pipe.module.js.map +1 -0
  117. package/esm2015/lib/modules/percent-pipe/percent.pipe.js +48 -0
  118. package/esm2015/lib/modules/percent-pipe/percent.pipe.js.map +1 -0
  119. package/esm2015/lib/modules/scrollable-host/scrollable-host.service.js +163 -0
  120. package/esm2015/lib/modules/scrollable-host/scrollable-host.service.js.map +1 -0
  121. package/esm2015/lib/modules/shared/number-format/number-format-utility.js +74 -0
  122. package/esm2015/lib/modules/shared/number-format/number-format-utility.js.map +1 -0
  123. package/esm2015/lib/modules/shared/sky-core-resources.module.js +50 -0
  124. package/esm2015/lib/modules/shared/sky-core-resources.module.js.map +1 -0
  125. package/esm2015/lib/modules/title/set-title-args.js +2 -0
  126. package/esm2015/lib/modules/title/set-title-args.js.map +1 -0
  127. package/esm2015/lib/modules/title/title.service.js +31 -0
  128. package/esm2015/lib/modules/title/title.service.js.map +1 -0
  129. package/esm2015/lib/modules/ui-config/ui-config.service.js +21 -0
  130. package/esm2015/lib/modules/ui-config/ui-config.service.js.map +1 -0
  131. package/esm2015/lib/modules/viewkeeper/viewkeeper-boundary-info.js +2 -0
  132. package/esm2015/lib/modules/viewkeeper/viewkeeper-boundary-info.js.map +1 -0
  133. package/esm2015/lib/modules/viewkeeper/viewkeeper-fixed-styles.js +2 -0
  134. package/esm2015/lib/modules/viewkeeper/viewkeeper-fixed-styles.js.map +1 -0
  135. package/esm2015/lib/modules/viewkeeper/viewkeeper-host-options.js +10 -0
  136. package/esm2015/lib/modules/viewkeeper/viewkeeper-host-options.js.map +1 -0
  137. package/esm2015/lib/modules/viewkeeper/viewkeeper-offset.js +2 -0
  138. package/esm2015/lib/modules/viewkeeper/viewkeeper-offset.js.map +1 -0
  139. package/esm2015/lib/modules/viewkeeper/viewkeeper-options.js +2 -0
  140. package/esm2015/lib/modules/viewkeeper/viewkeeper-options.js.map +1 -0
  141. package/esm2015/lib/modules/viewkeeper/viewkeeper.directive.js +116 -0
  142. package/esm2015/lib/modules/viewkeeper/viewkeeper.directive.js.map +1 -0
  143. package/esm2015/lib/modules/viewkeeper/viewkeeper.js +254 -0
  144. package/esm2015/lib/modules/viewkeeper/viewkeeper.js.map +1 -0
  145. package/esm2015/lib/modules/viewkeeper/viewkeeper.module.js +16 -0
  146. package/esm2015/lib/modules/viewkeeper/viewkeeper.module.js.map +1 -0
  147. package/esm2015/lib/modules/viewkeeper/viewkeeper.service.js +39 -0
  148. package/esm2015/lib/modules/viewkeeper/viewkeeper.service.js.map +1 -0
  149. package/esm2015/lib/modules/window/window-ref.js +30 -0
  150. package/esm2015/lib/modules/window/window-ref.js.map +1 -0
  151. package/esm2015/skyux-core.js +2 -2
  152. package/esm2015/skyux-core.js.map +1 -0
  153. package/esm2015/testing/mock-media-query.service.js +4 -4
  154. package/esm2015/testing/mock-media-query.service.js.map +1 -0
  155. package/esm2015/testing/mock-ui-config.service.js +4 -4
  156. package/esm2015/testing/mock-ui-config.service.js.map +1 -0
  157. package/esm2015/testing/public-api.js +1 -1
  158. package/esm2015/testing/public-api.js.map +1 -0
  159. package/esm2015/testing/skyux-core-testing.js +1 -1
  160. package/esm2015/testing/skyux-core-testing.js.map +1 -0
  161. package/fesm2015/skyux-core-testing.js +6 -6
  162. package/fesm2015/skyux-core-testing.js.map +1 -1
  163. package/fesm2015/skyux-core.js +179 -168
  164. package/fesm2015/skyux-core.js.map +1 -1
  165. package/index.d.ts +57 -0
  166. package/{modules → lib/modules}/adapter-service/adapter.module.d.ts +0 -0
  167. package/{modules → lib/modules}/adapter-service/adapter.service.d.ts +0 -0
  168. package/{modules → lib/modules}/adapter-service/focusable-children-options.d.ts +0 -0
  169. package/{modules → lib/modules}/affix/affix-auto-fit-context.d.ts +0 -0
  170. package/{modules → lib/modules}/affix/affix-config.d.ts +0 -0
  171. package/{modules → lib/modules}/affix/affix-horizontal-alignment.d.ts +0 -0
  172. package/{modules → lib/modules}/affix/affix-offset-change.d.ts +0 -0
  173. package/{modules → lib/modules}/affix/affix-offset.d.ts +0 -0
  174. package/{modules → lib/modules}/affix/affix-placement-change.d.ts +0 -0
  175. package/{modules → lib/modules}/affix/affix-placement.d.ts +0 -0
  176. package/{modules → lib/modules}/affix/affix-utils.d.ts +0 -0
  177. package/{modules → lib/modules}/affix/affix-vertical-alignment.d.ts +0 -0
  178. package/{modules → lib/modules}/affix/affix.directive.d.ts +0 -0
  179. package/{modules → lib/modules}/affix/affix.module.d.ts +0 -0
  180. package/{modules → lib/modules}/affix/affix.service.d.ts +0 -0
  181. package/{modules → lib/modules}/affix/affixer.d.ts +0 -0
  182. package/{modules → lib/modules}/affix/dom-utils.d.ts +0 -0
  183. package/{modules → lib/modules}/dock/dock-dom-adapter.service.d.ts +0 -0
  184. package/{modules → lib/modules}/dock/dock-insert-component-config.d.ts +0 -0
  185. package/{modules → lib/modules}/dock/dock-item-config.d.ts +0 -0
  186. package/{modules → lib/modules}/dock/dock-item-reference.d.ts +0 -0
  187. package/{modules → lib/modules}/dock/dock-item.d.ts +0 -0
  188. package/{modules → lib/modules}/dock/dock-location.d.ts +0 -0
  189. package/{modules → lib/modules}/dock/dock-options.d.ts +0 -0
  190. package/{modules → lib/modules}/dock/dock.component.d.ts +0 -0
  191. package/{modules → lib/modules}/dock/dock.module.d.ts +0 -0
  192. package/{modules → lib/modules}/dock/dock.service.d.ts +0 -0
  193. package/{modules → lib/modules}/dock/sort-by-stack-order.d.ts +0 -0
  194. package/{modules → lib/modules}/dynamic-component/dynamic-component-location.d.ts +0 -0
  195. package/{modules → lib/modules}/dynamic-component/dynamic-component-options.d.ts +0 -0
  196. package/{modules → lib/modules}/dynamic-component/dynamic-component.module.d.ts +0 -0
  197. package/{modules → lib/modules}/dynamic-component/dynamic-component.service.d.ts +0 -0
  198. package/{modules → lib/modules}/format/app-format.d.ts +0 -0
  199. package/{modules → lib/modules}/id/id.directive.d.ts +0 -0
  200. package/{modules → lib/modules}/id/id.module.d.ts +0 -0
  201. package/{modules → lib/modules}/log/log.module.d.ts +0 -0
  202. package/{modules → lib/modules}/log/log.service.d.ts +0 -0
  203. package/{modules → lib/modules}/media-query/media-breakpoints.d.ts +0 -0
  204. package/{modules → lib/modules}/media-query/media-query-listener.d.ts +0 -0
  205. package/{modules → lib/modules}/media-query/media-query.module.d.ts +0 -0
  206. package/{modules → lib/modules}/media-query/media-query.service.d.ts +4 -0
  207. package/{modules → lib/modules}/mutation/mutation-observer-service.d.ts +0 -0
  208. package/{modules → lib/modules}/numeric/numeric-symbol.d.ts +0 -0
  209. package/{modules → lib/modules}/numeric/numeric.module.d.ts +0 -0
  210. package/{modules → lib/modules}/numeric/numeric.options.d.ts +2 -2
  211. package/{modules → lib/modules}/numeric/numeric.pipe.d.ts +2 -2
  212. package/{modules → lib/modules}/numeric/numeric.service.d.ts +0 -0
  213. package/{modules → lib/modules}/overlay/overlay-adapter.service.d.ts +0 -0
  214. package/{modules → lib/modules}/overlay/overlay-config.d.ts +0 -0
  215. package/{modules → lib/modules}/overlay/overlay-context.d.ts +0 -0
  216. package/{modules → lib/modules}/overlay/overlay-instance.d.ts +0 -0
  217. package/{modules → lib/modules}/overlay/overlay.component.d.ts +0 -0
  218. package/{modules → lib/modules}/overlay/overlay.module.d.ts +0 -0
  219. package/{modules → lib/modules}/overlay/overlay.service.d.ts +0 -0
  220. package/{modules → lib/modules}/percent-pipe/percent-pipe.module.d.ts +0 -0
  221. package/{modules → lib/modules}/percent-pipe/percent.pipe.d.ts +0 -0
  222. package/{modules → lib/modules}/scrollable-host/scrollable-host.service.d.ts +0 -0
  223. package/{modules → lib/modules}/shared/number-format/number-format-utility.d.ts +0 -0
  224. package/{modules → lib/modules}/shared/sky-core-resources.module.d.ts +0 -0
  225. package/{modules → lib/modules}/title/set-title-args.d.ts +0 -0
  226. package/{modules → lib/modules}/title/title.service.d.ts +0 -0
  227. package/{modules → lib/modules}/ui-config/ui-config.service.d.ts +0 -0
  228. package/{modules → lib/modules}/viewkeeper/viewkeeper-boundary-info.d.ts +0 -0
  229. package/{modules → lib/modules}/viewkeeper/viewkeeper-fixed-styles.d.ts +0 -0
  230. package/{modules → lib/modules}/viewkeeper/viewkeeper-host-options.d.ts +0 -0
  231. package/{modules → lib/modules}/viewkeeper/viewkeeper-offset.d.ts +0 -0
  232. package/{modules → lib/modules}/viewkeeper/viewkeeper-options.d.ts +0 -0
  233. package/{modules → lib/modules}/viewkeeper/viewkeeper.d.ts +0 -0
  234. package/{modules → lib/modules}/viewkeeper/viewkeeper.directive.d.ts +0 -0
  235. package/{modules → lib/modules}/viewkeeper/viewkeeper.module.d.ts +0 -0
  236. package/{modules → lib/modules}/viewkeeper/viewkeeper.service.d.ts +0 -0
  237. package/{modules → lib/modules}/window/window-ref.d.ts +0 -0
  238. package/package.json +19 -5
  239. package/skyux-core.d.ts +1 -1
  240. package/LICENSE +0 -21
  241. package/bundles/skyux-core-testing.umd.js.map +0 -1
  242. package/bundles/skyux-core.umd.js.map +0 -1
  243. package/esm2015/modules/adapter-service/adapter.module.js +0 -16
  244. package/esm2015/modules/adapter-service/adapter.service.js +0 -218
  245. package/esm2015/modules/adapter-service/focusable-children-options.js +0 -2
  246. package/esm2015/modules/affix/affix-auto-fit-context.js +0 -12
  247. package/esm2015/modules/affix/affix-config.js +0 -2
  248. package/esm2015/modules/affix/affix-horizontal-alignment.js +0 -2
  249. package/esm2015/modules/affix/affix-offset-change.js +0 -2
  250. package/esm2015/modules/affix/affix-offset.js +0 -2
  251. package/esm2015/modules/affix/affix-placement-change.js +0 -2
  252. package/esm2015/modules/affix/affix-placement.js +0 -2
  253. package/esm2015/modules/affix/affix-utils.js +0 -18
  254. package/esm2015/modules/affix/affix-vertical-alignment.js +0 -2
  255. package/esm2015/modules/affix/affix.directive.js +0 -98
  256. package/esm2015/modules/affix/affix.module.js +0 -18
  257. package/esm2015/modules/affix/affix.service.js +0 -24
  258. package/esm2015/modules/affix/affixer.js +0 -349
  259. package/esm2015/modules/affix/dom-utils.js +0 -77
  260. package/esm2015/modules/dock/dock-dom-adapter.service.js +0 -79
  261. package/esm2015/modules/dock/dock-insert-component-config.js +0 -2
  262. package/esm2015/modules/dock/dock-item-config.js +0 -2
  263. package/esm2015/modules/dock/dock-item-reference.js +0 -2
  264. package/esm2015/modules/dock/dock-item.js +0 -29
  265. package/esm2015/modules/dock/dock-location.js +0 -19
  266. package/esm2015/modules/dock/dock-options.js +0 -2
  267. package/esm2015/modules/dock/dock.component.js +0 -95
  268. package/esm2015/modules/dock/dock.module.js +0 -20
  269. package/esm2015/modules/dock/dock.service.js +0 -91
  270. package/esm2015/modules/dock/sort-by-stack-order.js +0 -13
  271. package/esm2015/modules/dynamic-component/dynamic-component-location.js +0 -27
  272. package/esm2015/modules/dynamic-component/dynamic-component-options.js +0 -2
  273. package/esm2015/modules/dynamic-component/dynamic-component.module.js +0 -17
  274. package/esm2015/modules/dynamic-component/dynamic-component.service.js +0 -82
  275. package/esm2015/modules/format/app-format.js +0 -18
  276. package/esm2015/modules/id/id.directive.js +0 -34
  277. package/esm2015/modules/id/id.module.js +0 -16
  278. package/esm2015/modules/log/log.module.js +0 -16
  279. package/esm2015/modules/log/log.service.js +0 -22
  280. package/esm2015/modules/media-query/media-breakpoints.js +0 -20
  281. package/esm2015/modules/media-query/media-query-listener.js +0 -2
  282. package/esm2015/modules/media-query/media-query.module.js +0 -16
  283. package/esm2015/modules/media-query/media-query.service.js +0 -117
  284. package/esm2015/modules/mutation/mutation-observer-service.js +0 -16
  285. package/esm2015/modules/numeric/numeric-symbol.js +0 -2
  286. package/esm2015/modules/numeric/numeric.module.js +0 -20
  287. package/esm2015/modules/numeric/numeric.options.js +0 -41
  288. package/esm2015/modules/numeric/numeric.pipe.js +0 -81
  289. package/esm2015/modules/numeric/numeric.service.js +0 -188
  290. package/esm2015/modules/overlay/overlay-adapter.service.js +0 -41
  291. package/esm2015/modules/overlay/overlay-config.js +0 -2
  292. package/esm2015/modules/overlay/overlay-context.js +0 -10
  293. package/esm2015/modules/overlay/overlay-instance.js +0 -55
  294. package/esm2015/modules/overlay/overlay.component.js +0 -152
  295. package/esm2015/modules/overlay/overlay.module.js +0 -18
  296. package/esm2015/modules/overlay/overlay.service.js +0 -119
  297. package/esm2015/modules/percent-pipe/percent-pipe.module.js +0 -20
  298. package/esm2015/modules/percent-pipe/percent.pipe.js +0 -48
  299. package/esm2015/modules/scrollable-host/scrollable-host.service.js +0 -154
  300. package/esm2015/modules/shared/number-format/number-format-utility.js +0 -74
  301. package/esm2015/modules/shared/sky-core-resources.module.js +0 -50
  302. package/esm2015/modules/title/set-title-args.js +0 -2
  303. package/esm2015/modules/title/title.service.js +0 -30
  304. package/esm2015/modules/ui-config/ui-config.service.js +0 -21
  305. package/esm2015/modules/viewkeeper/viewkeeper-boundary-info.js +0 -2
  306. package/esm2015/modules/viewkeeper/viewkeeper-fixed-styles.js +0 -2
  307. package/esm2015/modules/viewkeeper/viewkeeper-host-options.js +0 -10
  308. package/esm2015/modules/viewkeeper/viewkeeper-offset.js +0 -2
  309. package/esm2015/modules/viewkeeper/viewkeeper-options.js +0 -2
  310. package/esm2015/modules/viewkeeper/viewkeeper.directive.js +0 -113
  311. package/esm2015/modules/viewkeeper/viewkeeper.js +0 -254
  312. package/esm2015/modules/viewkeeper/viewkeeper.module.js +0 -16
  313. package/esm2015/modules/viewkeeper/viewkeeper.service.js +0 -38
  314. package/esm2015/modules/window/window-ref.js +0 -30
  315. package/esm2015/public-api.js +0 -60
  316. package/public-api.d.ts +0 -57
@@ -1,218 +0,0 @@
1
- import { Injectable, } from '@angular/core';
2
- import { SkyMediaBreakpoints } from '../media-query/media-breakpoints';
3
- import * as i0 from "@angular/core";
4
- const SKY_TABBABLE_SELECTOR = [
5
- 'a[href]',
6
- 'area[href]',
7
- 'input:not([disabled])',
8
- 'button:not([disabled])',
9
- 'select:not([disabled])',
10
- 'textarea:not([disabled])',
11
- 'iframe',
12
- 'object',
13
- 'embed',
14
- '*[contenteditable=true]:not([disabled])',
15
- '*[tabindex]:not([disabled])',
16
- ].join(', ');
17
- export class SkyCoreAdapterService {
18
- constructor(rendererFactory) {
19
- this.rendererFactory = rendererFactory;
20
- this.renderer = this.rendererFactory.createRenderer(undefined, undefined);
21
- }
22
- /**
23
- * Set the responsive container CSS class for a given element.
24
- *
25
- * @param elementRef - The element that will recieve the new CSS class.
26
- * @param breakpoint - The SkyMediaBreakpoint will determine which class
27
- * gets set. For example a SkyMediaBreakpoint of `xs` will set a CSS class of `sky-responsive-container-xs`.
28
- */
29
- setResponsiveContainerClass(elementRef, breakpoint) {
30
- const nativeEl = elementRef.nativeElement;
31
- this.renderer.removeClass(nativeEl, 'sky-responsive-container-xs');
32
- this.renderer.removeClass(nativeEl, 'sky-responsive-container-sm');
33
- this.renderer.removeClass(nativeEl, 'sky-responsive-container-md');
34
- this.renderer.removeClass(nativeEl, 'sky-responsive-container-lg');
35
- let newClass;
36
- switch (breakpoint) {
37
- case SkyMediaBreakpoints.xs: {
38
- newClass = 'sky-responsive-container-xs';
39
- break;
40
- }
41
- case SkyMediaBreakpoints.sm: {
42
- newClass = 'sky-responsive-container-sm';
43
- break;
44
- }
45
- case SkyMediaBreakpoints.md: {
46
- newClass = 'sky-responsive-container-md';
47
- break;
48
- }
49
- default: {
50
- newClass = 'sky-responsive-container-lg';
51
- break;
52
- }
53
- }
54
- this.renderer.addClass(nativeEl, newClass);
55
- }
56
- /**
57
- * This method temporarily enables/disables pointer events.
58
- * This is helpful to prevent iFrames from interfering with drag events.
59
- *
60
- * @param enable - Set to `true` to enable pointer events. Set to `false` to disable.
61
- */
62
- toggleIframePointerEvents(enable) {
63
- const iframes = document.querySelectorAll('iframe');
64
- for (let i = 0; i < iframes.length; i++) {
65
- // Setting to empty string will allow iframe to fall back to its prior CSS assignment.
66
- iframes[i].style.pointerEvents = enable ? '' : 'none';
67
- }
68
- }
69
- /**
70
- * Focuses on the first element found with an `autofocus` attribute inside the supplied `elementRef`.
71
- *
72
- * @param elementRef - The element to search within.
73
- * @return Returns `true` if a child element with autofocus is found.
74
- */
75
- applyAutoFocus(elementRef) {
76
- const elementWithAutoFocus = elementRef.nativeElement.querySelector('[autofocus]');
77
- // Child was found with the autofocus property. Set focus and return true.
78
- if (elementWithAutoFocus) {
79
- elementWithAutoFocus.focus();
80
- return true;
81
- }
82
- // No children were found with autofocus property. Return false.
83
- return false;
84
- }
85
- /**
86
- * Sets focus on the first focusable child of the `elementRef` parameter.
87
- * If no focusable children are found, and `focusOnContainerIfNoChildrenFound` is `true`,
88
- * focus will be set on the container element.
89
- *
90
- * @param elementRef - The element to search within.
91
- * @param containerSelector - A CSS selector indicating the container that should
92
- * recieve focus if no focusable children are found.
93
- * @param focusOnContainerIfNoChildrenFound - It set to `true`, the container will
94
- * recieve focus if no focusable children are found.
95
- */
96
- getFocusableChildrenAndApplyFocus(elementRef, containerSelector, focusOnContainerIfNoChildrenFound = false) {
97
- const containerElement = elementRef.nativeElement.querySelector(containerSelector);
98
- const focusableChildren = this.getFocusableChildren(containerElement);
99
- // Focus first focusable child if available. Otherwise, set focus on container.
100
- if (!this.focusFirstElement(focusableChildren) &&
101
- focusOnContainerIfNoChildrenFound) {
102
- containerElement.focus();
103
- }
104
- }
105
- /**
106
- * Returns an array of all focusable children of provided `element`.
107
- *
108
- * @param element - The HTMLElement to search within.
109
- * @param options - Options for getting focusable children.
110
- */
111
- getFocusableChildren(element, options) {
112
- let elements = Array.prototype.slice.call(element.querySelectorAll(SKY_TABBABLE_SELECTOR));
113
- // Unless ignoreTabIndex = true, filter out elements with tabindex = -1.
114
- if (!options || !options.ignoreTabIndex) {
115
- elements = elements.filter((el) => {
116
- return el.tabIndex !== -1;
117
- });
118
- }
119
- // Unless ignoreVisibility = true, filter out elements that are not visible.
120
- if (!options || !options.ignoreVisibility) {
121
- elements = elements.filter((el) => {
122
- return this.isVisible(el);
123
- });
124
- }
125
- return elements;
126
- }
127
- /**
128
- * Returns the clientWidth of the provided elementRef.
129
- * @param elementRef - The element to calculate width from.
130
- */
131
- getWidth(elementRef) {
132
- return elementRef.nativeElement.clientWidth;
133
- }
134
- /**
135
- * Checks if an event target has a higher z-index than a given element.
136
- * @param target The event target element.
137
- * @param element The element to test against. A z-index must be explicitly set for this element.
138
- */
139
- isTargetAboveElement(target, element) {
140
- const zIndex = getComputedStyle(element).zIndex;
141
- let el = target;
142
- while (el) {
143
- // Getting the computed style only works for elements that exist in the DOM.
144
- // In certain scenarios, an element is removed after a click event; by the time the event
145
- // bubbles up to other elements, however, the element has been removed and the computed style returns empty.
146
- // In this case, we'll need to check the z-index directly, via the style property.
147
- let targetZIndex = getComputedStyle(el).zIndex || el.style.zIndex;
148
- if (targetZIndex !== '' &&
149
- targetZIndex !== 'auto' &&
150
- +targetZIndex > +zIndex) {
151
- return true;
152
- }
153
- el = el.parentElement;
154
- }
155
- return false;
156
- }
157
- /**
158
- * Remove inline height styles from the provided elements.
159
- * @param elementRef - The element to search within.
160
- * @param selector - The CSS selector to use when finding elements for removing height.
161
- */
162
- resetHeight(elementRef, selector) {
163
- const children = elementRef.nativeElement.querySelectorAll(selector);
164
- /* istanbul ignore else */
165
- if (children.length > 0) {
166
- for (let i = 0; i < children.length; i++) {
167
- // Setting style attributes with Web API requires null instead of undefined.
168
- // tslint:disable-next-line: no-null-keyword
169
- children[i].style.height = null;
170
- }
171
- }
172
- }
173
- /**
174
- * Sets all element heights to match the height of the tallest element.
175
- * @param elementRef - The element to search within.
176
- * @param selector - The CSS selector to use when finding elements for syncing height.
177
- */
178
- syncMaxHeight(elementRef, selector) {
179
- const children = elementRef.nativeElement.querySelectorAll(selector);
180
- /* istanbul ignore else */
181
- if (children.length > 0) {
182
- let maxHeight = 0;
183
- for (let i = 0; i < children.length; i++) {
184
- maxHeight = Math.max(maxHeight, children[i].offsetHeight);
185
- }
186
- for (let i = 0; i < children.length; i++) {
187
- children[i].style.height = maxHeight + 'px';
188
- }
189
- }
190
- }
191
- focusFirstElement(list) {
192
- if (list.length > 0) {
193
- list[0].focus();
194
- return true;
195
- }
196
- return false;
197
- }
198
- isVisible(element) {
199
- const style = window.getComputedStyle(element);
200
- const isHidden = style.display === 'none' || style.visibility === 'hidden';
201
- if (isHidden) {
202
- return false;
203
- }
204
- const hasBounds = !!(element.offsetWidth ||
205
- element.offsetHeight ||
206
- element.getClientRects().length);
207
- return hasBounds;
208
- }
209
- }
210
- SkyCoreAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyCoreAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
211
- SkyCoreAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyCoreAdapterService, providedIn: 'root' });
212
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyCoreAdapterService, decorators: [{
213
- type: Injectable,
214
- args: [{
215
- providedIn: 'root',
216
- }]
217
- }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } });
218
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kdWxlcy9hZGFwdGVyLXNlcnZpY2UvYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxVQUFVLEdBR1gsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7O0FBSXZFLE1BQU0scUJBQXFCLEdBQUc7SUFDNUIsU0FBUztJQUNULFlBQVk7SUFDWix1QkFBdUI7SUFDdkIsd0JBQXdCO0lBQ3hCLHdCQUF3QjtJQUN4QiwwQkFBMEI7SUFDMUIsUUFBUTtJQUNSLFFBQVE7SUFDUixPQUFPO0lBQ1AseUNBQXlDO0lBQ3pDLDZCQUE2QjtDQUM5QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUtiLE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsWUFBb0IsZUFBaUM7UUFBakMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQ25ELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSwyQkFBMkIsQ0FDaEMsVUFBc0IsRUFDdEIsVUFBK0I7UUFFL0IsTUFBTSxRQUFRLEdBQWdCLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFFdkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFD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UUFDcEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9DLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxPQUFPLEtBQUssTUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLEtBQUssUUFBUSxDQUFDO1FBQzNFLElBQUksUUFBUSxFQUFFO1lBQ1osT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE1BQU0sU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUNsQixPQUFPLENBQUMsV0FBVztZQUNuQixPQUFPLENBQUMsWUFBWTtZQUNwQixPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMsTUFBTSxDQUNoQyxDQUFDO1FBQ0YsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs7bUhBalBVLHFCQUFxQjt1SEFBckIscUJBQXFCLGNBRnBCLE1BQU07NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdGFibGUsXG4gIFJlbmRlcmVyMixcbiAgUmVuZGVyZXJGYWN0b3J5Mixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreU1lZGlhQnJlYWtwb2ludHMgfSBmcm9tICcuLi9tZWRpYS1xdWVyeS9tZWRpYS1icmVha3BvaW50cyc7XG5cbmltcG9ydCB7IFNreUZvY3VzYWJsZUNoaWxkcmVuT3B0aW9ucyB9IGZyb20gJy4vZm9jdXNhYmxlLWNoaWxkcmVuLW9wdGlvbnMnO1xuXG5jb25zdCBTS1lfVEFCQkFCTEVfU0VMRUNUT1IgPSBbXG4gICdhW2hyZWZdJyxcbiAgJ2FyZWFbaHJlZl0nLFxuICAnaW5wdXQ6bm90KFtkaXNhYmxlZF0pJyxcbiAgJ2J1dHRvbjpub3QoW2Rpc2FibGVkXSknLFxuICAnc2VsZWN0Om5vdChbZGlzYWJsZWRdKScsXG4gICd0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSknLFxuICAnaWZyYW1lJyxcbiAgJ29iamVjdCcsXG4gICdlbWJlZCcsXG4gICcqW2NvbnRlbnRlZGl0YWJsZT10cnVlXTpub3QoW2Rpc2FibGVkXSknLFxuICAnKlt0YWJpbmRleF06bm90KFtkaXNhYmxlZF0pJyxcbl0uam9pbignLCAnKTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreUNvcmVBZGFwdGVyU2VydmljZSB7XG4gIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5Mikge1xuICAgIHRoaXMucmVuZGVyZXIgPSB0aGlzLnJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcih1bmRlZmluZWQsIHVuZGVmaW5lZCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSByZXNwb25zaXZlIGNvbnRhaW5lciBDU1MgY2xhc3MgZm9yIGEgZ2l2ZW4gZWxlbWVudC5cbiAgICpcbiAgICogQHBhcmFtIGVsZW1lbnRSZWYgLSBUaGUgZWxlbWVudCB0aGF0IHdpbGwgcmVjaWV2ZSB0aGUgbmV3IENTUyBjbGFzcy5cbiAgICogQHBhcmFtIGJyZWFrcG9pbnQgLSBUaGUgU2t5TWVkaWFCcmVha3BvaW50IHdpbGwgZGV0ZXJtaW5lIHdoaWNoIGNsYXNzXG4gICAqIGdldHMgc2V0LiBGb3IgZXhhbXBsZSBhIFNreU1lZGlhQnJlYWtwb2ludCBvZiBgeHNgIHdpbGwgc2V0IGEgQ1NTIGNsYXNzIG9mIGBza3ktcmVzcG9uc2l2ZS1jb250YWluZXIteHNgLlxuICAgKi9cbiAgcHVibGljIHNldFJlc3BvbnNpdmVDb250YWluZXJDbGFzcyhcbiAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIGJyZWFrcG9pbnQ6IFNreU1lZGlhQnJlYWtwb2ludHNcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgbmF0aXZlRWw6IEhUTUxFbGVtZW50ID0gZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhuYXRpdmVFbCwgJ3NreS1yZXNwb25zaXZlLWNvbnRhaW5lci14cycpO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MobmF0aXZlRWwsICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXItc20nKTtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKG5hdGl2ZUVsLCAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLW1kJyk7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhuYXRpdmVFbCwgJ3NreS1yZXNwb25zaXZlLWNvbnRhaW5lci1sZycpO1xuXG4gICAgbGV0IG5ld0NsYXNzOiBzdHJpbmc7XG5cbiAgICBzd2l0Y2ggKGJyZWFrcG9pbnQpIHtcbiAgICAgIGNhc2UgU2t5TWVkaWFCcmVha3BvaW50cy54czoge1xuICAgICAgICBuZXdDbGFzcyA9ICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXIteHMnO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgU2t5TWVkaWFCcmVha3BvaW50cy5zbToge1xuICAgICAgICBuZXdDbGFzcyA9ICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXItc20nO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgU2t5TWVkaWFCcmVha3BvaW50cy5tZDoge1xuICAgICAgICBuZXdDbGFzcyA9ICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXItbWQnO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgbmV3Q2xhc3MgPSAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLWxnJztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhuYXRpdmVFbCwgbmV3Q2xhc3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIHRlbXBvcmFyaWx5IGVuYWJsZXMvZGlzYWJsZXMgcG9pbnRlciBldmVudHMuXG4gICAqIFRoaXMgaXMgaGVscGZ1bCB0byBwcmV2ZW50IGlGcmFtZXMgZnJvbSBpbnRlcmZlcmluZyB3aXRoIGRyYWcgZXZlbnRzLlxuICAgKlxuICAgKiBAcGFyYW0gZW5hYmxlIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgcG9pbnRlciBldmVudHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUuXG4gICAqL1xuICBwdWJsaWMgdG9nZ2xlSWZyYW1lUG9pbnRlckV2ZW50cyhlbmFibGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBpZnJhbWVzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnaWZyYW1lJyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpZnJhbWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAvLyBTZXR0aW5nIHRvIGVtcHR5IHN0cmluZyB3aWxsIGFsbG93IGlmcmFtZSB0byBmYWxsIGJhY2sgdG8gaXRzIHByaW9yIENTUyBhc3NpZ25tZW50LlxuICAgICAgaWZyYW1lc1tpXS5zdHlsZS5wb2ludGVyRXZlbnRzID0gZW5hYmxlID8gJycgOiAnbm9uZSc7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEZvY3VzZXMgb24gdGhlIGZpcnN0IGVsZW1lbnQgZm91bmQgd2l0aCBhbiBgYXV0b2ZvY3VzYCBhdHRyaWJ1dGUgaW5zaWRlIHRoZSBzdXBwbGllZCBgZWxlbWVudFJlZmAuXG4gICAqXG4gICAqIEBwYXJhbSBlbGVtZW50UmVmIC0gVGhlIGVsZW1lbnQgdG8gc2VhcmNoIHdpdGhpbi5cbiAgICogQHJldHVybiBSZXR1cm5zIGB0cnVlYCBpZiBhIGNoaWxkIGVsZW1lbnQgd2l0aCBhdXRvZm9jdXMgaXMgZm91bmQuXG4gICAqL1xuICBwdWJsaWMgYXBwbHlBdXRvRm9jdXMoZWxlbWVudFJlZjogRWxlbWVudFJlZik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGVsZW1lbnRXaXRoQXV0b0ZvY3VzID1cbiAgICAgIGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdbYXV0b2ZvY3VzXScpO1xuXG4gICAgLy8gQ2hpbGQgd2FzIGZvdW5kIHdpdGggdGhlIGF1dG9mb2N1cyBwcm9wZXJ0eS4gU2V0IGZvY3VzIGFuZCByZXR1cm4gdHJ1ZS5cbiAgICBpZiAoZWxlbWVudFdpdGhBdXRvRm9jdXMpIHtcbiAgICAgIGVsZW1lbnRXaXRoQXV0b0ZvY3VzLmZvY3VzKCk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBObyBjaGlsZHJlbiB3ZXJlIGZvdW5kIHdpdGggYXV0b2ZvY3VzIHByb3BlcnR5LiBSZXR1cm4gZmFsc2UuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgZm9jdXMgb24gdGhlIGZpcnN0IGZvY3VzYWJsZSBjaGlsZCBvZiB0aGUgYGVsZW1lbnRSZWZgIHBhcmFtZXRlci5cbiAgICogSWYgbm8gZm9jdXNhYmxlIGNoaWxkcmVuIGFyZSBmb3VuZCwgYW5kIGBmb2N1c09uQ29udGFpbmVySWZOb0NoaWxkcmVuRm91bmRgIGlzIGB0cnVlYCxcbiAgICogZm9jdXMgd2lsbCBiZSBzZXQgb24gdGhlIGNvbnRhaW5lciBlbGVtZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZWxlbWVudFJlZiAtIFRoZSBlbGVtZW50IHRvIHNlYXJjaCB3aXRoaW4uXG4gICAqIEBwYXJhbSBjb250YWluZXJTZWxlY3RvciAtIEEgQ1NTIHNlbGVjdG9yIGluZGljYXRpbmcgdGhlIGNvbnRhaW5lciB0aGF0IHNob3VsZFxuICAgKiByZWNpZXZlIGZvY3VzIGlmIG5vIGZvY3VzYWJsZSBjaGlsZHJlbiBhcmUgZm91bmQuXG4gICAqIEBwYXJhbSBmb2N1c09uQ29udGFpbmVySWZOb0NoaWxkcmVuRm91bmQgLSBJdCBzZXQgdG8gYHRydWVgLCB0aGUgY29udGFpbmVyIHdpbGxcbiAgICogcmVjaWV2ZSBmb2N1cyBpZiBubyBmb2N1c2FibGUgY2hpbGRyZW4gYXJlIGZvdW5kLlxuICAgKi9cbiAgcHVibGljIGdldEZvY3VzYWJsZUNoaWxkcmVuQW5kQXBwbHlGb2N1cyhcbiAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIGNvbnRhaW5lclNlbGVjdG9yOiBzdHJpbmcsXG4gICAgZm9jdXNPbkNvbnRhaW5lcklmTm9DaGlsZHJlbkZvdW5kOiBib29sZWFuID0gZmFsc2VcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgY29udGFpbmVyRWxlbWVudCA9XG4gICAgICBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3Rvcihjb250YWluZXJTZWxlY3Rvcik7XG4gICAgY29uc3QgZm9jdXNhYmxlQ2hpbGRyZW4gPSB0aGlzLmdldEZvY3VzYWJsZUNoaWxkcmVuKGNvbnRhaW5lckVsZW1lbnQpO1xuXG4gICAgLy8gRm9jdXMgZmlyc3QgZm9jdXNhYmxlIGNoaWxkIGlmIGF2YWlsYWJsZS4gT3RoZXJ3aXNlLCBzZXQgZm9jdXMgb24gY29udGFpbmVyLlxuICAgIGlmIChcbiAgICAgICF0aGlzLmZvY3VzRmlyc3RFbGVtZW50KGZvY3VzYWJsZUNoaWxkcmVuKSAmJlxuICAgICAgZm9jdXNPbkNvbnRhaW5lcklmTm9DaGlsZHJlbkZvdW5kXG4gICAgKSB7XG4gICAgICBjb250YWluZXJFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gYXJyYXkgb2YgYWxsIGZvY3VzYWJsZSBjaGlsZHJlbiBvZiBwcm92aWRlZCBgZWxlbWVudGAuXG4gICAqXG4gICAqIEBwYXJhbSBlbGVtZW50IC0gVGhlIEhUTUxFbGVtZW50IHRvIHNlYXJjaCB3aXRoaW4uXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9ucyBmb3IgZ2V0dGluZyBmb2N1c2FibGUgY2hpbGRyZW4uXG4gICAqL1xuICBwdWJsaWMgZ2V0Rm9jdXNhYmxlQ2hpbGRyZW4oXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnQsXG4gICAgb3B0aW9ucz86IFNreUZvY3VzYWJsZUNoaWxkcmVuT3B0aW9uc1xuICApOiBIVE1MRWxlbWVudFtdIHtcbiAgICBsZXQgZWxlbWVudHMgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChcbiAgICAgIGVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChTS1lfVEFCQkFCTEVfU0VMRUNUT1IpXG4gICAgKTtcblxuICAgIC8vIFVubGVzcyBpZ25vcmVUYWJJbmRleCA9IHRydWUsIGZpbHRlciBvdXQgZWxlbWVudHMgd2l0aCB0YWJpbmRleCA9IC0xLlxuICAgIGlmICghb3B0aW9ucyB8fCAhb3B0aW9ucy5pZ25vcmVUYWJJbmRleCkge1xuICAgICAgZWxlbWVudHMgPSBlbGVtZW50cy5maWx0ZXIoKGVsOiBIVE1MRWxlbWVudCkgPT4ge1xuICAgICAgICByZXR1cm4gZWwudGFiSW5kZXggIT09IC0xO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gVW5sZXNzIGlnbm9yZVZpc2liaWxpdHkgPSB0cnVlLCBmaWx0ZXIgb3V0IGVsZW1lbnRzIHRoYXQgYXJlIG5vdCB2aXNpYmxlLlxuICAgIGlmICghb3B0aW9ucyB8fCAhb3B0aW9ucy5pZ25vcmVWaXNpYmlsaXR5KSB7XG4gICAgICBlbGVtZW50cyA9IGVsZW1lbnRzLmZpbHRlcigoZWw6IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzVmlzaWJsZShlbCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZWxlbWVudHM7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY2xpZW50V2lkdGggb2YgdGhlIHByb3ZpZGVkIGVsZW1lbnRSZWYuXG4gICAqIEBwYXJhbSBlbGVtZW50UmVmIC0gVGhlIGVsZW1lbnQgdG8gY2FsY3VsYXRlIHdpZHRoIGZyb20uXG4gICAqL1xuICBwdWJsaWMgZ2V0V2lkdGgoZWxlbWVudFJlZjogRWxlbWVudFJlZik6IG51bWJlciB7XG4gICAgcmV0dXJuIGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgYW4gZXZlbnQgdGFyZ2V0IGhhcyBhIGhpZ2hlciB6LWluZGV4IHRoYW4gYSBnaXZlbiBlbGVtZW50LlxuICAgKiBAcGFyYW0gdGFyZ2V0IFRoZSBldmVudCB0YXJnZXQgZWxlbWVudC5cbiAgICogQHBhcmFtIGVsZW1lbnQgVGhlIGVsZW1lbnQgdG8gdGVzdCBhZ2FpbnN0LiBBIHotaW5kZXggbXVzdCBiZSBleHBsaWNpdGx5IHNldCBmb3IgdGhpcyBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGlzVGFyZ2V0QWJvdmVFbGVtZW50KFxuICAgIHRhcmdldDogRXZlbnRUYXJnZXQsXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnRcbiAgKTogYm9vbGVhbiB7XG4gICAgY29uc3QgekluZGV4OiBzdHJpbmcgPSBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLnpJbmRleDtcblxuICAgIGxldCBlbDogSFRNTEVsZW1lbnQgPSB0YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICB3aGlsZSAoZWwpIHtcbiAgICAgIC8vIEdldHRpbmcgdGhlIGNvbXB1dGVkIHN0eWxlIG9ubHkgd29ya3MgZm9yIGVsZW1lbnRzIHRoYXQgZXhpc3QgaW4gdGhlIERPTS5cbiAgICAgIC8vIEluIGNlcnRhaW4gc2NlbmFyaW9zLCBhbiBlbGVtZW50IGlzIHJlbW92ZWQgYWZ0ZXIgYSBjbGljayBldmVudDsgYnkgdGhlIHRpbWUgdGhlIGV2ZW50XG4gICAgICAvLyBidWJibGVzIHVwIHRvIG90aGVyIGVsZW1lbnRzLCBob3dldmVyLCB0aGUgZWxlbWVudCBoYXMgYmVlbiByZW1vdmVkIGFuZCB0aGUgY29tcHV0ZWQgc3R5bGUgcmV0dXJucyBlbXB0eS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSwgd2UnbGwgbmVlZCB0byBjaGVjayB0aGUgei1pbmRleCBkaXJlY3RseSwgdmlhIHRoZSBzdHlsZSBwcm9wZXJ0eS5cbiAgICAgIGxldCB0YXJnZXRaSW5kZXg6IHN0cmluZyA9IGdldENvbXB1dGVkU3R5bGUoZWwpLnpJbmRleCB8fCBlbC5zdHlsZS56SW5kZXg7XG4gICAgICBpZiAoXG4gICAgICAgIHRhcmdldFpJbmRleCAhPT0gJycgJiZcbiAgICAgICAgdGFyZ2V0WkluZGV4ICE9PSAnYXV0bycgJiZcbiAgICAgICAgK3RhcmdldFpJbmRleCA+ICt6SW5kZXhcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgZWwgPSBlbC5wYXJlbnRFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgaW5saW5lIGhlaWdodCBzdHlsZXMgZnJvbSB0aGUgcHJvdmlkZWQgZWxlbWVudHMuXG4gICAqIEBwYXJhbSBlbGVtZW50UmVmIC0gVGhlIGVsZW1lbnQgdG8gc2VhcmNoIHdpdGhpbi5cbiAgICogQHBhcmFtIHNlbGVjdG9yIC0gVGhlIENTUyBzZWxlY3RvciB0byB1c2Ugd2hlbiBmaW5kaW5nIGVsZW1lbnRzIGZvciByZW1vdmluZyBoZWlnaHQuXG4gICAqL1xuICBwdWJsaWMgcmVzZXRIZWlnaHQoZWxlbWVudFJlZjogRWxlbWVudFJlZiwgc2VsZWN0b3I6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpO1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgLy8gU2V0dGluZyBzdHlsZSBhdHRyaWJ1dGVzIHdpdGggV2ViIEFQSSByZXF1aXJlcyBudWxsIGluc3RlYWQgb2YgdW5kZWZpbmVkLlxuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLW51bGwta2V5d29yZFxuICAgICAgICBjaGlsZHJlbltpXS5zdHlsZS5oZWlnaHQgPSBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIGFsbCBlbGVtZW50IGhlaWdodHMgdG8gbWF0Y2ggdGhlIGhlaWdodCBvZiB0aGUgdGFsbGVzdCBlbGVtZW50LlxuICAgKiBAcGFyYW0gZWxlbWVudFJlZiAtIFRoZSBlbGVtZW50IHRvIHNlYXJjaCB3aXRoaW4uXG4gICAqIEBwYXJhbSBzZWxlY3RvciAtIFRoZSBDU1Mgc2VsZWN0b3IgdG8gdXNlIHdoZW4gZmluZGluZyBlbGVtZW50cyBmb3Igc3luY2luZyBoZWlnaHQuXG4gICAqL1xuICBwdWJsaWMgc3luY01heEhlaWdodChlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBzZWxlY3Rvcjogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzZWxlY3Rvcik7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgbGV0IG1heEhlaWdodCA9IDA7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIG1heEhlaWdodCA9IE1hdGgubWF4KG1heEhlaWdodCwgY2hpbGRyZW5baV0ub2Zmc2V0SGVpZ2h0KTtcbiAgICAgIH1cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY2hpbGRyZW5baV0uc3R5bGUuaGVpZ2h0ID0gbWF4SGVpZ2h0ICsgJ3B4JztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZvY3VzRmlyc3RFbGVtZW50KGxpc3Q6IEFycmF5PEhUTUxFbGVtZW50Pik6IGJvb2xlYW4ge1xuICAgIGlmIChsaXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgIGxpc3RbMF0uZm9jdXMoKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGlzVmlzaWJsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgY29uc3QgaXNIaWRkZW4gPSBzdHlsZS5kaXNwbGF5ID09PSAnbm9uZScgfHwgc3R5bGUudmlzaWJpbGl0eSA9PT0gJ2hpZGRlbic7XG4gICAgaWYgKGlzSGlkZGVuKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3QgaGFzQm91bmRzID0gISEoXG4gICAgICBlbGVtZW50Lm9mZnNldFdpZHRoIHx8XG4gICAgICBlbGVtZW50Lm9mZnNldEhlaWdodCB8fFxuICAgICAgZWxlbWVudC5nZXRDbGllbnRSZWN0cygpLmxlbmd0aFxuICAgICk7XG4gICAgcmV0dXJuIGhhc0JvdW5kcztcbiAgfVxufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXNhYmxlLWNoaWxkcmVuLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9tb2R1bGVzL2FkYXB0ZXItc2VydmljZS9mb2N1c2FibGUtY2hpbGRyZW4tb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBPcHRpb25zIGZvciBnZXR0aW5nIGZvY3VzYWJsZSBjaGlsZHJlbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTa3lGb2N1c2FibGVDaGlsZHJlbk9wdGlvbnMge1xuICAvKipcbiAgICogQnkgZGVmYXVsdCwgdGhlIGBnZXRGb2N1c2FibGVDaGlsZHJlbigpYCBmdW5jdGlvbiB3aWxsIGZpbHRlciBvdXQgZWxlbWVudHMgd2l0aFxuICAgKiBhIGB0YWJJbmRleGAgb2YgYC0xYC4gU2V0dGluZyBgaWdub3JlVGFiSW5kZXggPSB0cnVlYCB3aWxsIGlnbm9yZSB0aGlzIGZpbHRlci5cbiAgICovXG4gIGlnbm9yZVRhYkluZGV4PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQnkgZGVmYXVsdCwgdGhlIGBnZXRGb2N1c2FibGVDaGlsZHJlbigpYCBmdW5jdGlvbiB3aWxsIG9ubHkgcmV0dXJuIHZpc2libGUgZWxlbWVudHMuXG4gICAqIFNldHRpbmcgYGlnbm9yZVZpc2liaWxpdHkgPSB0cnVlYCB3aWxsIGlnbm9yZSB0aGlzIGZpbHRlci5cbiAgICovXG4gIGlnbm9yZVZpc2liaWxpdHk/OiBib29sZWFuO1xufVxuIl19
@@ -1,12 +0,0 @@
1
- export var SkyAffixAutoFitContext;
2
- (function (SkyAffixAutoFitContext) {
3
- /**
4
- * Auto-fit functionality will respect the nearest overflow parent element's dimensions.
5
- */
6
- SkyAffixAutoFitContext[SkyAffixAutoFitContext["OverflowParent"] = 0] = "OverflowParent";
7
- /**
8
- * Auto-fit functionality will respect the browser viewport dimensions.
9
- */
10
- SkyAffixAutoFitContext[SkyAffixAutoFitContext["Viewport"] = 1] = "Viewport";
11
- })(SkyAffixAutoFitContext || (SkyAffixAutoFitContext = {}));
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtYXV0by1maXQtY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL21vZHVsZXMvYWZmaXgvYWZmaXgtYXV0by1maXQtY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxzQkFVWDtBQVZELFdBQVksc0JBQXNCO0lBQ2hDOztPQUVHO0lBQ0gsdUZBQWtCLENBQUE7SUFFbEI7O09BRUc7SUFDSCwyRUFBWSxDQUFBO0FBQ2QsQ0FBQyxFQVZXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFVakMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTa3lBZmZpeEF1dG9GaXRDb250ZXh0IHtcbiAgLyoqXG4gICAqIEF1dG8tZml0IGZ1bmN0aW9uYWxpdHkgd2lsbCByZXNwZWN0IHRoZSBuZWFyZXN0IG92ZXJmbG93IHBhcmVudCBlbGVtZW50J3MgZGltZW5zaW9ucy5cbiAgICovXG4gIE92ZXJmbG93UGFyZW50ID0gMCxcblxuICAvKipcbiAgICogQXV0by1maXQgZnVuY3Rpb25hbGl0eSB3aWxsIHJlc3BlY3QgdGhlIGJyb3dzZXIgdmlld3BvcnQgZGltZW5zaW9ucy5cbiAgICovXG4gIFZpZXdwb3J0ID0gMSxcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kdWxlcy9hZmZpeC9hZmZpeC1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNreUFmZml4QXV0b0ZpdENvbnRleHQgfSBmcm9tICcuL2FmZml4LWF1dG8tZml0LWNvbnRleHQnO1xuXG5pbXBvcnQgeyBTa3lBZmZpeEhvcml6b250YWxBbGlnbm1lbnQgfSBmcm9tICcuL2FmZml4LWhvcml6b250YWwtYWxpZ25tZW50JztcblxuaW1wb3J0IHsgU2t5QWZmaXhPZmZzZXQgfSBmcm9tICcuL2FmZml4LW9mZnNldCc7XG5cbmltcG9ydCB7IFNreUFmZml4UGxhY2VtZW50IH0gZnJvbSAnLi9hZmZpeC1wbGFjZW1lbnQnO1xuXG5pbXBvcnQgeyBTa3lBZmZpeFZlcnRpY2FsQWxpZ25tZW50IH0gZnJvbSAnLi9hZmZpeC12ZXJ0aWNhbC1hbGlnbm1lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNreUFmZml4Q29uZmlnIHtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGljaCBwYXJlbnQgZWxlbWVudCBpcyB1c2VkIGJ5IHRoZSBhdXRvLWZpdCBmdW5jdGlvbmFsaXR5LlxuICAgKi9cbiAgYXV0b0ZpdENvbnRleHQ/OiBTa3lBZmZpeEF1dG9GaXRDb250ZXh0O1xuXG4gIC8qKlxuICAgKiBUaGlzIG9wdGlvbmFsIG9mZnNldCBpcyBhZGRlZCB0byAob3Igc3VidHJhY3RlZCBmcm9tKSB0aGUgW1tTa3lBZmZpeEF1dG9GaXRDb250ZXh0XV0gZWxlbWVudCdzXG4gICAqIG9mZnNldCBkdXJpbmcgYW4gYXV0by1maXQgcGxhY2VtZW50IGNhbGN1bGF0aW9uLiBUaGlzIHZhbHVlIGlzIHVzZWZ1bCBpZiB5b3UgbmVlZCB0byBjb25zaWRlclxuICAgKiBhbm90aGVyIGBwb3NpdGlvbjogZml4ZWRgIGVsZW1lbnQgb24gdGhlIHBhZ2UgKHN1Y2ggYXMgYSBuYXZiYXIpIHdoZW4gdGhlIGF1dG8tZml0XG4gICAqIGZ1bmN0aW9uYWxpdHkgYXR0ZW1wdHMgdG8gZmluZCB0aGUgYmVzdCBwb3NzaWJsZSBwbGFjZW1lbnQuXG4gICAqIChJbiB0aGUgY2FzZSBvZiBhIG5hdmJhciwgeW91IHdvdWxkIGFkZCBhIGB0b3BgIHZhbHVlIGVxdWFsIHRvIHRoZSBuYXZiYXIncyBoZWlnaHQgaW4gcGl4ZWxzLilcbiAgICovXG4gIGF1dG9GaXRPdmVyZmxvd09mZnNldD86IFNreUFmZml4T2Zmc2V0O1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGFmZml4IHNlcnZpY2Ugc2hvdWxkIHRyeSBhbmQgZmluZCB0aGUgYmVzdCBwbGFjZW1lbnQgZm9yIHRoZSBhZmZpeGVkIGVsZW1lbnRcbiAgICogaWYgdGhlIGVsZW1lbnQgd291bGQgYmUgaGlkZGVuIG90aGVyd2lzZS4gSWYgdGhpcyBzZXR0aW5nIGlzIGRpc2FibGVkLCB0aGUgYWZmaXggc2VydmljZSB3aWxsXG4gICAqIGZvcmNlIHRoZSBwbGFjZW1lbnQgb2YgdGhlIGFmZml4ZWQgZWxlbWVudC5cbiAgICovXG4gIGVuYWJsZUF1dG9GaXQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgaG9yaXpvbnRhbCBhbGlnbm1lbnQgb2YgdGhlIGFmZml4ZWQgZWxlbWVudCB0byB0aGUgYmFzZSBlbGVtZW50LlxuICAgKi9cbiAgaG9yaXpvbnRhbEFsaWdubWVudD86IFNreUFmZml4SG9yaXpvbnRhbEFsaWdubWVudDtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBhZmZpeGVkIGVsZW1lbnQgc2hvdWxkIHJlbWFpbiBhZmZpeGVkIHRvIHRoZSBiYXNlIGVsZW1lbnQgd2hlbiB0aGUgd2luZG93IGlzIHNjcm9sbGVkIG9yIHJlc2l6ZWQuXG4gICAqL1xuICBpc1N0aWNreT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZW1lbnQgb2YgdGhlIGFmZml4ZWQgZWxlbWVudCBhcm91bmQgdGhlIGJhc2UgZWxlbWVudC5cbiAgICovXG4gIHBsYWNlbWVudD86IFNreUFmZml4UGxhY2VtZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgdmVydGljYWwgYWxpZ25tZW50IG9mIHRoZSBhZmZpeGVkIGVsZW1lbnQgdG8gdGhlIGJhc2UgZWxlbWVudC5cbiAgICovXG4gIHZlcnRpY2FsQWxpZ25tZW50PzogU2t5QWZmaXhWZXJ0aWNhbEFsaWdubWVudDtcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtaG9yaXpvbnRhbC1hbGlnbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9tb2R1bGVzL2FmZml4L2FmZml4LWhvcml6b250YWwtYWxpZ25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSBob3Jpem9udGFsIGFsaWdubWVudCBvZiB0aGUgYWZmaXhlZCBlbGVtZW50IHRvIHRoZSBiYXNlIGVsZW1lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIFNreUFmZml4SG9yaXpvbnRhbEFsaWdubWVudCA9ICdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0JztcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtb2Zmc2V0LWNoYW5nZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL21vZHVsZXMvYWZmaXgvYWZmaXgtb2Zmc2V0LWNoYW5nZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5QWZmaXhPZmZzZXQgfSBmcm9tICcuL2FmZml4LW9mZnNldCc7XG5cbi8qKlxuICogVGhlIGFyZ3VtZW50cyBzdXBwbGllZCB0byB0aGUgYWZmaXggb2Zmc2V0IGNoYW5nZSBldmVudCBsaXN0ZW5lci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTa3lBZmZpeE9mZnNldENoYW5nZSB7XG4gIG9mZnNldD86IFNreUFmZml4T2Zmc2V0O1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtb2Zmc2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kdWxlcy9hZmZpeC9hZmZpeC1vZmZzZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2t5QWZmaXhPZmZzZXQge1xuICBib3R0b20/OiBudW1iZXI7XG5cbiAgbGVmdD86IG51bWJlcjtcblxuICByaWdodD86IG51bWJlcjtcblxuICB0b3A/OiBudW1iZXI7XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtcGxhY2VtZW50LWNoYW5nZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL21vZHVsZXMvYWZmaXgvYWZmaXgtcGxhY2VtZW50LWNoYW5nZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5QWZmaXhQbGFjZW1lbnQgfSBmcm9tICcuL2FmZml4LXBsYWNlbWVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2t5QWZmaXhQbGFjZW1lbnRDaGFuZ2Uge1xuICAvKipcbiAgICogVGhlIGNoYW5nZWQgcGxhY2VtZW50IHZhbHVlLlxuICAgKi9cbiAgcGxhY2VtZW50OiBTa3lBZmZpeFBsYWNlbWVudCB8IG51bGw7XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtcGxhY2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kdWxlcy9hZmZpeC9hZmZpeC1wbGFjZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhlIHBsYWNlbWVudCBvZiB0aGUgYWZmaXhlZCBlbGVtZW50IGFyb3VuZCB0aGUgYmFzZSBlbGVtZW50LlxuICovXG5leHBvcnQgdHlwZSBTa3lBZmZpeFBsYWNlbWVudCA9ICdhYm92ZScgfCAnYmVsb3cnIHwgJ2xlZnQnIHwgJ3JpZ2h0JztcbiJdfQ==
@@ -1,18 +0,0 @@
1
- export function getNextPlacement(placement) {
2
- const placements = ['above', 'right', 'below', 'left'];
3
- let index = placements.indexOf(placement) + 1;
4
- if (index >= placements.length) {
5
- index = 0;
6
- }
7
- return placements[index];
8
- }
9
- export function getInversePlacement(placement) {
10
- const pairings = {
11
- above: 'below',
12
- below: 'above',
13
- right: 'left',
14
- left: 'right',
15
- };
16
- return pairings[placement];
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9tb2R1bGVzL2FmZml4L2FmZml4LXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsU0FBNEI7SUFFNUIsTUFBTSxVQUFVLEdBQXdCLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFFNUUsSUFBSSxLQUFLLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUMsSUFBSSxLQUFLLElBQUksVUFBVSxDQUFDLE1BQU0sRUFBRTtRQUM5QixLQUFLLEdBQUcsQ0FBQyxDQUFDO0tBQ1g7SUFFRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUMzQixDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyxTQUE0QjtJQUU1QixNQUFNLFFBQVEsR0FBdUM7UUFDbkQsS0FBSyxFQUFFLE9BQU87UUFDZCxLQUFLLEVBQUUsT0FBTztRQUNkLEtBQUssRUFBRSxNQUFNO1FBQ2IsSUFBSSxFQUFFLE9BQU87S0FDZCxDQUFDO0lBRUYsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNreUFmZml4UGxhY2VtZW50IH0gZnJvbSAnLi9hZmZpeC1wbGFjZW1lbnQnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmV4dFBsYWNlbWVudChcbiAgcGxhY2VtZW50OiBTa3lBZmZpeFBsYWNlbWVudFxuKTogU2t5QWZmaXhQbGFjZW1lbnQge1xuICBjb25zdCBwbGFjZW1lbnRzOiBTa3lBZmZpeFBsYWNlbWVudFtdID0gWydhYm92ZScsICdyaWdodCcsICdiZWxvdycsICdsZWZ0J107XG5cbiAgbGV0IGluZGV4ID0gcGxhY2VtZW50cy5pbmRleE9mKHBsYWNlbWVudCkgKyAxO1xuICBpZiAoaW5kZXggPj0gcGxhY2VtZW50cy5sZW5ndGgpIHtcbiAgICBpbmRleCA9IDA7XG4gIH1cblxuICByZXR1cm4gcGxhY2VtZW50c1tpbmRleF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRJbnZlcnNlUGxhY2VtZW50KFxuICBwbGFjZW1lbnQ6IFNreUFmZml4UGxhY2VtZW50XG4pOiBTa3lBZmZpeFBsYWNlbWVudCB7XG4gIGNvbnN0IHBhaXJpbmdzOiB7IFtfOiBzdHJpbmddOiBTa3lBZmZpeFBsYWNlbWVudCB9ID0ge1xuICAgIGFib3ZlOiAnYmVsb3cnLFxuICAgIGJlbG93OiAnYWJvdmUnLFxuICAgIHJpZ2h0OiAnbGVmdCcsXG4gICAgbGVmdDogJ3JpZ2h0JyxcbiAgfTtcblxuICByZXR1cm4gcGFpcmluZ3NbcGxhY2VtZW50XTtcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgtdmVydGljYWwtYWxpZ25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kdWxlcy9hZmZpeC9hZmZpeC12ZXJ0aWNhbC1hbGlnbm1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhlIHZlcnRpY2FsIGFsaWdubWVudCBvZiB0aGUgYWZmaXhlZCBlbGVtZW50IHRvIHRoZSBiYXNlIGVsZW1lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIFNreUFmZml4VmVydGljYWxBbGlnbm1lbnQgPSAndG9wJyB8ICdtaWRkbGUnIHwgJ2JvdHRvbSc7XG4iXX0=
@@ -1,98 +0,0 @@
1
- import { Directive, EventEmitter, Input, Output, } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import { takeUntil } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "./affix.service";
6
- /**
7
- * Affixes the host element to a base element.
8
- */
9
- export class SkyAffixDirective {
10
- constructor(elementRef, affixService) {
11
- this.affixService = affixService;
12
- /**
13
- * Fires when the affixed element's offset changes.
14
- */
15
- this.affixOffsetChange = new EventEmitter();
16
- /**
17
- * Fires when the affixed element's overflow container is scrolled.
18
- */
19
- this.affixOverflowScroll = new EventEmitter();
20
- /**
21
- * Fires when the placement value changes.
22
- */
23
- this.affixPlacementChange = new EventEmitter();
24
- this.ngUnsubscribe = new Subject();
25
- this.affixer = this.affixService.createAffixer(elementRef);
26
- this.affixer.offsetChange
27
- .pipe(takeUntil(this.ngUnsubscribe))
28
- .subscribe((change) => this.affixOffsetChange.emit(change));
29
- this.affixer.overflowScroll
30
- .pipe(takeUntil(this.ngUnsubscribe))
31
- .subscribe((change) => this.affixOverflowScroll.emit(change));
32
- this.affixer.placementChange
33
- .pipe(takeUntil(this.ngUnsubscribe))
34
- .subscribe((change) => this.affixPlacementChange.emit(change));
35
- }
36
- ngOnChanges(changes) {
37
- /* istanbul ignore else */
38
- if (changes.affixAutoFitContext ||
39
- changes.affixAutoFitOverflowOffset ||
40
- changes.affixEnableAutoFit ||
41
- changes.affixHorizontalAlignment ||
42
- changes.affixIsSticky ||
43
- changes.affixPlacement ||
44
- changes.affixVerticalAlignment) {
45
- this.updateAlignment();
46
- }
47
- }
48
- ngOnDestroy() {
49
- this.affixOffsetChange.complete();
50
- this.affixOverflowScroll.complete();
51
- this.affixPlacementChange.complete();
52
- this.ngUnsubscribe.next();
53
- this.ngUnsubscribe.complete();
54
- this.affixer.destroy();
55
- }
56
- updateAlignment() {
57
- this.affixer.affixTo(this.skyAffixTo, {
58
- autoFitContext: this.affixAutoFitContext,
59
- autoFitOverflowOffset: this.affixAutoFitOverflowOffset,
60
- enableAutoFit: this.affixEnableAutoFit,
61
- horizontalAlignment: this.affixHorizontalAlignment,
62
- isSticky: this.affixIsSticky,
63
- placement: this.affixPlacement,
64
- verticalAlignment: this.affixVerticalAlignment,
65
- });
66
- }
67
- }
68
- SkyAffixDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyAffixDirective, deps: [{ token: i0.ElementRef }, { token: i1.SkyAffixService }], target: i0.ɵɵFactoryTarget.Directive });
69
- SkyAffixDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.14", type: SkyAffixDirective, selector: "[skyAffixTo]", inputs: { skyAffixTo: "skyAffixTo", affixAutoFitContext: "affixAutoFitContext", affixAutoFitOverflowOffset: "affixAutoFitOverflowOffset", affixEnableAutoFit: "affixEnableAutoFit", affixHorizontalAlignment: "affixHorizontalAlignment", affixIsSticky: "affixIsSticky", affixPlacement: "affixPlacement", affixVerticalAlignment: "affixVerticalAlignment" }, outputs: { affixOffsetChange: "affixOffsetChange", affixOverflowScroll: "affixOverflowScroll", affixPlacementChange: "affixPlacementChange" }, usesOnChanges: true, ngImport: i0 });
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyAffixDirective, decorators: [{
71
- type: Directive,
72
- args: [{
73
- selector: '[skyAffixTo]',
74
- }]
75
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.SkyAffixService }]; }, propDecorators: { skyAffixTo: [{
76
- type: Input
77
- }], affixAutoFitContext: [{
78
- type: Input
79
- }], affixAutoFitOverflowOffset: [{
80
- type: Input
81
- }], affixEnableAutoFit: [{
82
- type: Input
83
- }], affixHorizontalAlignment: [{
84
- type: Input
85
- }], affixIsSticky: [{
86
- type: Input
87
- }], affixPlacement: [{
88
- type: Input
89
- }], affixVerticalAlignment: [{
90
- type: Input
91
- }], affixOffsetChange: [{
92
- type: Output
93
- }], affixOverflowScroll: [{
94
- type: Output
95
- }], affixPlacementChange: [{
96
- type: Output
97
- }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXguZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kdWxlcy9hZmZpeC9hZmZpeC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRS9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBb0IzQzs7R0FFRztBQUlILE1BQU0sT0FBTyxpQkFBaUI7SUF1RTVCLFlBQVksVUFBc0IsRUFBVSxZQUE2QjtRQUE3QixpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUF0QnpFOztXQUVHO1FBRUksc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQXdCLENBQUM7UUFFcEU7O1dBRUc7UUFFSSx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXREOztXQUVHO1FBRUkseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQTJCLENBQUM7UUFJbEUsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFM0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZO2FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBRTlELElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYzthQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUVoRSxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWU7YUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDbkMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVNLFdBQVcsQ0FBQyxPQUFzQjtRQUN2QywwQkFBMEI7UUFDMUIsSUFDRSxPQUFPLENBQUMsbUJBQW1CO1lBQzNCLE9BQU8sQ0FBQywwQkFBMEI7WUFDbEMsT0FBTyxDQUFDLGtCQUFrQjtZQUMxQixPQUFPLENBQUMsd0JBQXdCO1lBQ2hDLE9BQU8sQ0FBQyxhQUFhO1lBQ3JCLE9BQU8sQ0FBQyxjQUFjO1lBQ3RCLE9BQU8sQ0FBQyxzQkFBc0IsRUFDOUI7WUFDQSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU8sZUFBZTtRQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3BDLGNBQWMsRUFBRSxJQUFJLENBQUMsbUJBQW1CO1lBQ3hDLHFCQUFxQixFQUFFLElBQUksQ0FBQywwQkFBMEI7WUFDdEQsYUFBYSxFQUFFLElBQUksQ0FBQyxrQkFBa0I7WUFDdEMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLHdCQUF3QjtZQUNsRCxRQUFRLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDNUIsU0FBUyxFQUFFLElBQUksQ0FBQyxjQUFjO1lBQzlCLGlCQUFpQixFQUFFLElBQUksQ0FBQyxzQkFBc0I7U0FDL0MsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7K0dBekhVLGlCQUFpQjttR0FBakIsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBSDdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7aUJBQ3pCOytIQU1RLFVBQVU7c0JBRGhCLEtBQUs7Z0JBT0MsbUJBQW1CO3NCQUR6QixLQUFLO2dCQU9DLDBCQUEwQjtzQkFEaEMsS0FBSztnQkFPQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBT0Msd0JBQXdCO3NCQUQ5QixLQUFLO2dCQU9DLGFBQWE7c0JBRG5CLEtBQUs7Z0JBT0MsY0FBYztzQkFEcEIsS0FBSztnQkFPQyxzQkFBc0I7c0JBRDVCLEtBQUs7Z0JBT0MsaUJBQWlCO3NCQUR2QixNQUFNO2dCQU9BLG1CQUFtQjtzQkFEekIsTUFBTTtnQkFPQSxvQkFBb0I7c0JBRDFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5QWZmaXhBdXRvRml0Q29udGV4dCB9IGZyb20gJy4vYWZmaXgtYXV0by1maXQtY29udGV4dCc7XG5cbmltcG9ydCB7IFNreUFmZml4SG9yaXpvbnRhbEFsaWdubWVudCB9IGZyb20gJy4vYWZmaXgtaG9yaXpvbnRhbC1hbGlnbm1lbnQnO1xuXG5pbXBvcnQgeyBTa3lBZmZpeFBsYWNlbWVudCB9IGZyb20gJy4vYWZmaXgtcGxhY2VtZW50JztcblxuaW1wb3J0IHsgU2t5QWZmaXhQbGFjZW1lbnRDaGFuZ2UgfSBmcm9tICcuL2FmZml4LXBsYWNlbWVudC1jaGFuZ2UnO1xuXG5pbXBvcnQgeyBTa3lBZmZpeFZlcnRpY2FsQWxpZ25tZW50IH0gZnJvbSAnLi9hZmZpeC12ZXJ0aWNhbC1hbGlnbm1lbnQnO1xuXG5pbXBvcnQgeyBTa3lBZmZpeFNlcnZpY2UgfSBmcm9tICcuL2FmZml4LnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBTa3lBZmZpeE9mZnNldENoYW5nZSB9IGZyb20gJy4vYWZmaXgtb2Zmc2V0LWNoYW5nZSc7XG5cbmltcG9ydCB7IFNreUFmZml4T2Zmc2V0IH0gZnJvbSAnLi9hZmZpeC1vZmZzZXQnO1xuXG5pbXBvcnQgeyBTa3lBZmZpeGVyIH0gZnJvbSAnLi9hZmZpeGVyJztcblxuLyoqXG4gKiBBZmZpeGVzIHRoZSBob3N0IGVsZW1lbnQgdG8gYSBiYXNlIGVsZW1lbnQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tza3lBZmZpeFRvXScsXG59KVxuZXhwb3J0IGNsYXNzIFNreUFmZml4RGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogVGhlIGJhc2UgZWxlbWVudCB0byBhZmZpeCB0aGUgaG9zdCBlbGVtZW50LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNreUFmZml4VG86IEhUTUxFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBgYXV0b0ZpdENvbnRleHRgIHByb3BlcnR5IG9mIFtbU2t5QWZmaXhDb25maWddXS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhZmZpeEF1dG9GaXRDb250ZXh0OiBTa3lBZmZpeEF1dG9GaXRDb250ZXh0O1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBgYXV0b0ZpdE92ZXJmbG93T2Zmc2V0YCBwcm9wZXJ0eSBvZiBbW1NreUFmZml4Q29uZmlnXV0uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWZmaXhBdXRvRml0T3ZlcmZsb3dPZmZzZXQ6IFNreUFmZml4T2Zmc2V0O1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBgZW5hYmxlQXV0b0ZpdGAgcHJvcGVydHkgb2YgW1tTa3lBZmZpeENvbmZpZ11dLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGFmZml4RW5hYmxlQXV0b0ZpdDogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2V0cyB0aGUgYGhvcml6b250YWxBbGlnbm1lbnRgIHByb3BlcnR5IG9mIFtbU2t5QWZmaXhDb25maWddXS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhZmZpeEhvcml6b250YWxBbGlnbm1lbnQ6IFNreUFmZml4SG9yaXpvbnRhbEFsaWdubWVudDtcblxuICAvKipcbiAgICogU2V0cyB0aGUgYGlzU3RpY2t5YCBwcm9wZXJ0eSBvZiBbW1NreUFmZml4Q29uZmlnXV0uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWZmaXhJc1N0aWNreTogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2V0cyB0aGUgYHBsYWNlbWVudGAgcHJvcGVydHkgb2YgW1tTa3lBZmZpeENvbmZpZ11dLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGFmZml4UGxhY2VtZW50OiBTa3lBZmZpeFBsYWNlbWVudDtcblxuICAvKipcbiAgICogU2V0cyB0aGUgYHZlcnRpY2FsQWxpZ25tZW50YCBwcm9wZXJ0eSBvZiBbW1NreUFmZml4Q29uZmlnXV0uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWZmaXhWZXJ0aWNhbEFsaWdubWVudDogU2t5QWZmaXhWZXJ0aWNhbEFsaWdubWVudDtcblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB0aGUgYWZmaXhlZCBlbGVtZW50J3Mgb2Zmc2V0IGNoYW5nZXMuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGFmZml4T2Zmc2V0Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxTa3lBZmZpeE9mZnNldENoYW5nZT4oKTtcblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB0aGUgYWZmaXhlZCBlbGVtZW50J3Mgb3ZlcmZsb3cgY29udGFpbmVyIGlzIHNjcm9sbGVkLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBhZmZpeE92ZXJmbG93U2Nyb2xsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8qKlxuICAgKiBGaXJlcyB3aGVuIHRoZSBwbGFjZW1lbnQgdmFsdWUgY2hhbmdlcy5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgYWZmaXhQbGFjZW1lbnRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNreUFmZml4UGxhY2VtZW50Q2hhbmdlPigpO1xuXG4gIHByaXZhdGUgYWZmaXhlcjogU2t5QWZmaXhlcjtcblxuICBwcml2YXRlIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgYWZmaXhTZXJ2aWNlOiBTa3lBZmZpeFNlcnZpY2UpIHtcbiAgICB0aGlzLmFmZml4ZXIgPSB0aGlzLmFmZml4U2VydmljZS5jcmVhdGVBZmZpeGVyKGVsZW1lbnRSZWYpO1xuXG4gICAgdGhpcy5hZmZpeGVyLm9mZnNldENoYW5nZVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChjaGFuZ2UpID0+IHRoaXMuYWZmaXhPZmZzZXRDaGFuZ2UuZW1pdChjaGFuZ2UpKTtcblxuICAgIHRoaXMuYWZmaXhlci5vdmVyZmxvd1Njcm9sbFxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChjaGFuZ2UpID0+IHRoaXMuYWZmaXhPdmVyZmxvd1Njcm9sbC5lbWl0KGNoYW5nZSkpO1xuXG4gICAgdGhpcy5hZmZpeGVyLnBsYWNlbWVudENoYW5nZVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChjaGFuZ2UpID0+IHRoaXMuYWZmaXhQbGFjZW1lbnRDaGFuZ2UuZW1pdChjaGFuZ2UpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoXG4gICAgICBjaGFuZ2VzLmFmZml4QXV0b0ZpdENvbnRleHQgfHxcbiAgICAgIGNoYW5nZXMuYWZmaXhBdXRvRml0T3ZlcmZsb3dPZmZzZXQgfHxcbiAgICAgIGNoYW5nZXMuYWZmaXhFbmFibGVBdXRvRml0IHx8XG4gICAgICBjaGFuZ2VzLmFmZml4SG9yaXpvbnRhbEFsaWdubWVudCB8fFxuICAgICAgY2hhbmdlcy5hZmZpeElzU3RpY2t5IHx8XG4gICAgICBjaGFuZ2VzLmFmZml4UGxhY2VtZW50IHx8XG4gICAgICBjaGFuZ2VzLmFmZml4VmVydGljYWxBbGlnbm1lbnRcbiAgICApIHtcbiAgICAgIHRoaXMudXBkYXRlQWxpZ25tZW50KCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYWZmaXhPZmZzZXRDaGFuZ2UuY29tcGxldGUoKTtcbiAgICB0aGlzLmFmZml4T3ZlcmZsb3dTY3JvbGwuY29tcGxldGUoKTtcbiAgICB0aGlzLmFmZml4UGxhY2VtZW50Q2hhbmdlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgICB0aGlzLmFmZml4ZXIuZGVzdHJveSgpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVBbGlnbm1lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5hZmZpeGVyLmFmZml4VG8odGhpcy5za3lBZmZpeFRvLCB7XG4gICAgICBhdXRvRml0Q29udGV4dDogdGhpcy5hZmZpeEF1dG9GaXRDb250ZXh0LFxuICAgICAgYXV0b0ZpdE92ZXJmbG93T2Zmc2V0OiB0aGlzLmFmZml4QXV0b0ZpdE92ZXJmbG93T2Zmc2V0LFxuICAgICAgZW5hYmxlQXV0b0ZpdDogdGhpcy5hZmZpeEVuYWJsZUF1dG9GaXQsXG4gICAgICBob3Jpem9udGFsQWxpZ25tZW50OiB0aGlzLmFmZml4SG9yaXpvbnRhbEFsaWdubWVudCxcbiAgICAgIGlzU3RpY2t5OiB0aGlzLmFmZml4SXNTdGlja3ksXG4gICAgICBwbGFjZW1lbnQ6IHRoaXMuYWZmaXhQbGFjZW1lbnQsXG4gICAgICB2ZXJ0aWNhbEFsaWdubWVudDogdGhpcy5hZmZpeFZlcnRpY2FsQWxpZ25tZW50LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,18 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { NgModule } from '@angular/core';
3
- import { SkyAffixDirective } from './affix.directive';
4
- import * as i0 from "@angular/core";
5
- export class SkyAffixModule {
6
- }
7
- SkyAffixModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyAffixModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- SkyAffixModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyAffixModule, declarations: [SkyAffixDirective], imports: [CommonModule], exports: [SkyAffixDirective] });
9
- SkyAffixModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyAffixModule, imports: [[CommonModule]] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyAffixModule, decorators: [{
11
- type: NgModule,
12
- args: [{
13
- imports: [CommonModule],
14
- exports: [SkyAffixDirective],
15
- declarations: [SkyAffixDirective],
16
- }]
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXgubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kdWxlcy9hZmZpeC9hZmZpeC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBT3RELE1BQU0sT0FBTyxjQUFjOzs0R0FBZCxjQUFjOzZHQUFkLGNBQWMsaUJBRlYsaUJBQWlCLGFBRnRCLFlBQVksYUFDWixpQkFBaUI7NkdBR2hCLGNBQWMsWUFKaEIsQ0FBQyxZQUFZLENBQUM7NEZBSVosY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUM1QixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTa3lBZmZpeERpcmVjdGl2ZSB9IGZyb20gJy4vYWZmaXguZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtTa3lBZmZpeERpcmVjdGl2ZV0sXG4gIGRlY2xhcmF0aW9uczogW1NreUFmZml4RGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5QWZmaXhNb2R1bGUge31cbiJdfQ==
@@ -1,24 +0,0 @@
1
- import { Injectable, } from '@angular/core';
2
- import { SkyAffixer } from './affixer';
3
- import * as i0 from "@angular/core";
4
- export class SkyAffixService {
5
- constructor(rendererFactory) {
6
- this.renderer = rendererFactory.createRenderer(undefined, undefined);
7
- }
8
- /**
9
- * Creates an instance of [[SkyAffixer]].
10
- * @param affixed The element to be affixed.
11
- */
12
- createAffixer(affixed) {
13
- return new SkyAffixer(affixed.nativeElement, this.renderer);
14
- }
15
- }
16
- SkyAffixService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyAffixService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
17
- SkyAffixService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyAffixService, providedIn: 'root' });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyAffixService, decorators: [{
19
- type: Injectable,
20
- args: [{
21
- providedIn: 'root',
22
- }]
23
- }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZmaXguc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL21vZHVsZXMvYWZmaXgvYWZmaXguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsVUFBVSxHQUdYLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBS3ZDLE1BQU0sT0FBTyxlQUFlO0lBRzFCLFlBQVksZUFBaUM7UUFDM0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksYUFBYSxDQUFDLE9BQW1CO1FBQ3RDLE9BQU8sSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7NkdBYlUsZUFBZTtpSEFBZixlQUFlLGNBRmQsTUFBTTs0RkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdGFibGUsXG4gIFJlbmRlcmVyMixcbiAgUmVuZGVyZXJGYWN0b3J5Mixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUFmZml4ZXIgfSBmcm9tICcuL2FmZml4ZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5QWZmaXhTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyO1xuXG4gIGNvbnN0cnVjdG9yKHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5Mikge1xuICAgIHRoaXMucmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIodW5kZWZpbmVkLCB1bmRlZmluZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgW1tTa3lBZmZpeGVyXV0uXG4gICAqIEBwYXJhbSBhZmZpeGVkIFRoZSBlbGVtZW50IHRvIGJlIGFmZml4ZWQuXG4gICAqL1xuICBwdWJsaWMgY3JlYXRlQWZmaXhlcihhZmZpeGVkOiBFbGVtZW50UmVmKTogU2t5QWZmaXhlciB7XG4gICAgcmV0dXJuIG5ldyBTa3lBZmZpeGVyKGFmZml4ZWQubmF0aXZlRWxlbWVudCwgdGhpcy5yZW5kZXJlcik7XG4gIH1cbn1cbiJdfQ==