@covalent/core 3.1.2 → 4.0.0-beta.2

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 (840) hide show
  1. package/breadcrumbs/breadcrumb/breadcrumb.component.d.ts +3 -0
  2. package/breadcrumbs/breadcrumb/breadcrumb.component.scss +3 -0
  3. package/breadcrumbs/breadcrumbs.component.d.ts +3 -0
  4. package/breadcrumbs/breadcrumbs.component.scss +1 -0
  5. package/breadcrumbs/breadcrumbs.module.d.ts +8 -0
  6. package/breadcrumbs/covalent-core-breadcrumbs.d.ts +1 -0
  7. package/breadcrumbs/package.json +6 -7
  8. package/common/_common-theme.scss +2 -0
  9. package/common/common.module.d.ts +15 -0
  10. package/common/covalent-core-common.d.ts +1 -2
  11. package/common/directives/fullscreen/fullscreen.directive.d.ts +3 -0
  12. package/common/forms/auto-trim/auto-trim.directive.d.ts +3 -0
  13. package/common/material-icons.css +31 -18
  14. package/common/material-icons.css.map +1 -1
  15. package/common/package.json +6 -7
  16. package/common/pipes/bytes/bytes.pipe.d.ts +3 -0
  17. package/common/pipes/decimal-bytes/decimal-bytes.pipe.d.ts +3 -0
  18. package/common/pipes/digits/digits.pipe.d.ts +3 -0
  19. package/common/pipes/time-ago/time-ago.pipe.d.ts +3 -0
  20. package/common/pipes/time-difference/time-difference.pipe.d.ts +3 -0
  21. package/common/pipes/time-until/time-until.pipe.d.ts +3 -0
  22. package/common/pipes/truncate/truncate.pipe.d.ts +3 -0
  23. package/common/platform.css +11828 -10433
  24. package/common/platform.css.map +1 -1
  25. package/common/services/icon.service.d.ts +3 -0
  26. package/common/services/router-path.service.d.ts +3 -0
  27. package/common/styles/_layout.scss +12 -10
  28. package/common/styles/_palette-dark.scss +2 -2
  29. package/common/styles/_palette-light.scss +6 -6
  30. package/common/styles/_rtl.scss +3 -0
  31. package/common/styles/_variables.scss +5 -5
  32. package/common/styles/colors/_colors-dark.scss +327 -0
  33. package/common/styles/colors/_colors-light.scss +748 -0
  34. package/common/styles/core/_button.scss +2 -1
  35. package/common/styles/core/_card.scss +27 -7
  36. package/common/styles/core/_content.scss +2 -1
  37. package/common/styles/core/_divider.scss +1 -0
  38. package/common/styles/core/_icons.scss +2 -0
  39. package/common/styles/core/_sidenav.scss +2 -0
  40. package/common/styles/core/_structure.scss +6 -7
  41. package/common/styles/core/_toolbar.scss +7 -0
  42. package/common/styles/core/_whiteframe.scss +2 -2
  43. package/common/styles/font/_font.scss +10 -4
  44. package/common/styles/utilities/_general.scss +14 -0
  45. package/common/styles/utilities/_text.scss +21 -0
  46. package/covalent-core.d.ts +1 -0
  47. package/dialogs/_dialog-theme.scss +1 -0
  48. package/dialogs/alert-dialog/alert-dialog.component.d.ts +3 -0
  49. package/dialogs/confirm-dialog/confirm-dialog.component.d.ts +3 -0
  50. package/dialogs/covalent-core-dialogs.d.ts +1 -1
  51. package/dialogs/dialog.component.d.ts +9 -0
  52. package/dialogs/dialog.component.scss +5 -0
  53. package/dialogs/dialogs.module.d.ts +17 -0
  54. package/dialogs/package.json +6 -7
  55. package/dialogs/prompt-dialog/prompt-dialog.component.d.ts +3 -0
  56. package/dialogs/prompt-dialog/prompt-dialog.component.scss +1 -0
  57. package/dialogs/public-api.d.ts +1 -0
  58. package/dialogs/services/dialog.service.d.ts +3 -0
  59. package/dialogs/window-dialog/window-dialog.component.d.ts +3 -0
  60. package/dynamic-menu/covalent-core-dynamic-menu.d.ts +1 -1
  61. package/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.d.ts +3 -0
  62. package/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.scss +1 -0
  63. package/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.d.ts +3 -0
  64. package/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.scss +3 -1
  65. package/dynamic-menu/dynamic-menu.component.d.ts +3 -0
  66. package/dynamic-menu/dynamic-menu.module.d.ts +13 -0
  67. package/dynamic-menu/package.json +6 -7
  68. package/dynamic-menu/public_api.d.ts +1 -0
  69. package/esm2020/breadcrumbs/breadcrumb/breadcrumb.component.mjs +108 -0
  70. package/esm2020/breadcrumbs/breadcrumbs.component.mjs +139 -0
  71. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +21 -0
  72. package/esm2020/breadcrumbs/covalent-core-breadcrumbs.mjs +5 -0
  73. package/esm2020/breadcrumbs/index.mjs +2 -0
  74. package/esm2020/breadcrumbs/public-api.mjs +4 -0
  75. package/esm2020/common/animations/bounce/bounce.animation.mjs +70 -0
  76. package/esm2020/common/animations/collapse/collapse.animation.mjs +51 -0
  77. package/esm2020/common/animations/common/interfaces.mjs +2 -0
  78. package/esm2020/common/animations/fade/fadeInOut.animation.mjs +37 -0
  79. package/esm2020/common/animations/flash/flash.animation.mjs +34 -0
  80. package/esm2020/common/animations/headshake/headshake.animation.mjs +35 -0
  81. package/esm2020/common/animations/jello/jello.animation.mjs +38 -0
  82. package/esm2020/common/animations/pulse/pulse.animation.mjs +32 -0
  83. package/esm2020/common/animations/rotate/rotate.animation.mjs +25 -0
  84. package/esm2020/common/behaviors/control-value-accesor.mixin.mjs +39 -0
  85. package/esm2020/common/behaviors/disable-ripple.mixin.mjs +24 -0
  86. package/esm2020/common/behaviors/disabled.mixin.mjs +24 -0
  87. package/esm2020/common/common.module.mjs +64 -0
  88. package/esm2020/common/covalent-core-common.mjs +5 -0
  89. package/esm2020/common/directives/fullscreen/fullscreen.directive.mjs +85 -0
  90. package/esm2020/common/forms/auto-trim/auto-trim.directive.mjs +36 -0
  91. package/esm2020/common/forms/validators/validators.mjs +29 -0
  92. package/{esm2015/common/functions/clipboard.js → esm2020/common/functions/clipboard.mjs} +3 -10
  93. package/esm2020/common/functions/convert.mjs +84 -0
  94. package/esm2020/common/functions/download.mjs +75 -0
  95. package/esm2020/common/functions/file.mjs +16 -0
  96. package/esm2020/common/index.mjs +2 -0
  97. package/esm2020/common/pipes/bytes/bytes.pipe.mjs +32 -0
  98. package/esm2020/common/pipes/decimal-bytes/decimal-bytes.pipe.mjs +32 -0
  99. package/esm2020/common/pipes/digits/digits.pipe.mjs +39 -0
  100. package/esm2020/common/pipes/time-ago/time-ago.pipe.mjs +72 -0
  101. package/esm2020/common/pipes/time-difference/time-difference.pipe.mjs +51 -0
  102. package/esm2020/common/pipes/time-until/time-until.pipe.mjs +72 -0
  103. package/esm2020/common/pipes/truncate/truncate.pipe.mjs +27 -0
  104. package/esm2020/common/public-api.mjs +39 -0
  105. package/esm2020/common/services/icon.service.mjs +1089 -0
  106. package/esm2020/common/services/router-path.service.mjs +29 -0
  107. package/esm2020/covalent-core.mjs +5 -0
  108. package/esm2020/dialogs/alert-dialog/alert-dialog.component.mjs +54 -0
  109. package/esm2020/dialogs/confirm-dialog/confirm-dialog.component.mjs +68 -0
  110. package/esm2020/dialogs/covalent-core-dialogs.mjs +5 -0
  111. package/esm2020/dialogs/dialog.component.mjs +97 -0
  112. package/esm2020/dialogs/dialogs.module.mjs +86 -0
  113. package/esm2020/dialogs/index.mjs +2 -0
  114. package/esm2020/dialogs/prompt-dialog/prompt-dialog.component.mjs +104 -0
  115. package/esm2020/dialogs/public-api.mjs +9 -0
  116. package/esm2020/dialogs/resizable-draggable-dialog/resizable-draggable-dialog.mjs +199 -0
  117. package/esm2020/dialogs/services/dialog.service.mjs +168 -0
  118. package/esm2020/dialogs/window-dialog/window-dialog.component.mjs +69 -0
  119. package/esm2020/dynamic-menu/covalent-core-dynamic-menu.mjs +5 -0
  120. package/esm2020/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.mjs +147 -0
  121. package/esm2020/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.mjs +113 -0
  122. package/esm2020/dynamic-menu/dynamic-menu.component.mjs +111 -0
  123. package/esm2020/dynamic-menu/dynamic-menu.module.mjs +32 -0
  124. package/esm2020/dynamic-menu/index.mjs +2 -0
  125. package/esm2020/dynamic-menu/public_api.mjs +5 -0
  126. package/esm2020/file/covalent-core-file.mjs +5 -0
  127. package/esm2020/file/directives/file-drop.directive.mjs +148 -0
  128. package/esm2020/file/directives/file-select.directive.mjs +76 -0
  129. package/esm2020/file/file-input/file-input.component.mjs +137 -0
  130. package/esm2020/file/file-upload/file-upload.component.mjs +210 -0
  131. package/esm2020/file/file.module.mjs +43 -0
  132. package/esm2020/file/index.mjs +2 -0
  133. package/esm2020/file/public-api.mjs +7 -0
  134. package/esm2020/file/services/file.service.mjs +62 -0
  135. package/esm2020/index.mjs +2 -0
  136. package/esm2020/json-formatter/covalent-core-json-formatter.mjs +5 -0
  137. package/esm2020/json-formatter/index.mjs +2 -0
  138. package/esm2020/json-formatter/json-formatter.component.mjs +302 -0
  139. package/esm2020/json-formatter/json-formatter.module.mjs +21 -0
  140. package/esm2020/json-formatter/public-api.mjs +3 -0
  141. package/esm2020/layout/covalent-core-layout.mjs +5 -0
  142. package/esm2020/layout/index.mjs +2 -0
  143. package/esm2020/layout/layout-card-over/layout-card-over.component.mjs +87 -0
  144. package/esm2020/layout/layout-footer/layout-footer.component.mjs +38 -0
  145. package/esm2020/layout/layout-manage-list/layout-manage-list.component.mjs +122 -0
  146. package/esm2020/layout/layout-manage-list/layout-manage-list.directives.mjs +90 -0
  147. package/esm2020/layout/layout-nav/layout-nav.component.mjs +112 -0
  148. package/esm2020/layout/layout-nav-list/layout-nav-list.component.mjs +215 -0
  149. package/esm2020/layout/layout-nav-list/layout-nav-list.directives.mjs +90 -0
  150. package/esm2020/layout/layout-toggle.class.mjs +95 -0
  151. package/esm2020/layout/layout.component.mjs +113 -0
  152. package/esm2020/layout/layout.directives.mjs +87 -0
  153. package/esm2020/layout/layout.module.mjs +118 -0
  154. package/esm2020/layout/navigation-drawer/navigation-drawer.component.mjs +306 -0
  155. package/esm2020/layout/public-api.mjs +13 -0
  156. package/esm2020/menu/covalent-core-menu.mjs +5 -0
  157. package/esm2020/menu/index.mjs +2 -0
  158. package/esm2020/menu/menu.component.mjs +23 -0
  159. package/esm2020/menu/menu.module.mjs +22 -0
  160. package/esm2020/menu/public-api.mjs +3 -0
  161. package/esm2020/message/covalent-core-message.mjs +5 -0
  162. package/esm2020/message/index.mjs +2 -0
  163. package/esm2020/message/message.component.mjs +261 -0
  164. package/esm2020/message/message.module.mjs +21 -0
  165. package/esm2020/message/public-api.mjs +3 -0
  166. package/esm2020/search/covalent-core-search.mjs +5 -0
  167. package/esm2020/search/index.mjs +2 -0
  168. package/esm2020/search/public-api.mjs +4 -0
  169. package/esm2020/search/search-box/search-box.component.mjs +220 -0
  170. package/esm2020/search/search-input/search-input.component.mjs +240 -0
  171. package/esm2020/search/search.module.mjs +24 -0
  172. package/esm2020/side-sheet/covalent-core-side-sheet.mjs +5 -0
  173. package/esm2020/side-sheet/index.mjs +2 -0
  174. package/esm2020/side-sheet/public-api.mjs +6 -0
  175. package/esm2020/side-sheet/side-sheet-container.mjs +242 -0
  176. package/esm2020/side-sheet/side-sheet-ref.mjs +21 -0
  177. package/esm2020/side-sheet/side-sheet.animation.mjs +12 -0
  178. package/esm2020/side-sheet/side-sheet.config.mjs +4 -0
  179. package/esm2020/side-sheet/side-sheet.content-directives.mjs +178 -0
  180. package/esm2020/side-sheet/side-sheet.mjs +208 -0
  181. package/esm2020/side-sheet/side-sheet.module.mjs +46 -0
  182. package/esm2020/user-profile/covalent-core-user-profile.mjs +5 -0
  183. package/esm2020/user-profile/index.mjs +2 -0
  184. package/esm2020/user-profile/public_api.mjs +4 -0
  185. package/esm2020/user-profile/user-profile-menu/user-profile-menu.component.mjs +75 -0
  186. package/esm2020/user-profile/user-profile.component.mjs +41 -0
  187. package/esm2020/user-profile/user-profile.module.mjs +26 -0
  188. package/fesm2015/covalent-core-breadcrumbs.mjs +287 -0
  189. package/fesm2015/covalent-core-breadcrumbs.mjs.map +1 -0
  190. package/fesm2015/covalent-core-common.mjs +2251 -0
  191. package/fesm2015/covalent-core-common.mjs.map +1 -0
  192. package/fesm2015/covalent-core-dialogs.mjs +872 -0
  193. package/fesm2015/covalent-core-dialogs.mjs.map +1 -0
  194. package/fesm2015/covalent-core-dynamic-menu.mjs +480 -0
  195. package/fesm2015/covalent-core-dynamic-menu.mjs.map +1 -0
  196. package/fesm2015/covalent-core-file.mjs +698 -0
  197. package/fesm2015/covalent-core-file.mjs.map +1 -0
  198. package/fesm2015/covalent-core-json-formatter.mjs +353 -0
  199. package/fesm2015/covalent-core-json-formatter.mjs.map +1 -0
  200. package/fesm2015/covalent-core-layout.mjs +1577 -0
  201. package/fesm2015/covalent-core-layout.mjs.map +1 -0
  202. package/fesm2015/covalent-core-menu.mjs +55 -0
  203. package/fesm2015/covalent-core-menu.mjs.map +1 -0
  204. package/fesm2015/covalent-core-message.mjs +309 -0
  205. package/fesm2015/covalent-core-message.mjs.map +1 -0
  206. package/fesm2015/covalent-core-search.mjs +508 -0
  207. package/fesm2015/covalent-core-search.mjs.map +1 -0
  208. package/fesm2015/covalent-core-side-sheet.mjs +733 -0
  209. package/fesm2015/covalent-core-side-sheet.mjs.map +1 -0
  210. package/fesm2015/covalent-core-user-profile.mjs +162 -0
  211. package/fesm2015/covalent-core-user-profile.mjs.map +1 -0
  212. package/{chips/covalent-core-chips.d.ts → fesm2015/covalent-core.mjs} +1 -1
  213. package/fesm2015/covalent-core.mjs.map +1 -0
  214. package/fesm2020/covalent-core-breadcrumbs.mjs +268 -0
  215. package/{fesm2015/covalent-core-breadcrumbs.js.map → fesm2020/covalent-core-breadcrumbs.mjs.map} +1 -1
  216. package/{fesm2015/covalent-core-common.js → fesm2020/covalent-core-common.mjs} +213 -768
  217. package/fesm2020/covalent-core-common.mjs.map +1 -0
  218. package/fesm2020/covalent-core-dialogs.mjs +812 -0
  219. package/fesm2020/covalent-core-dialogs.mjs.map +1 -0
  220. package/fesm2020/covalent-core-dynamic-menu.mjs +393 -0
  221. package/fesm2020/covalent-core-dynamic-menu.mjs.map +1 -0
  222. package/fesm2020/covalent-core-file.mjs +651 -0
  223. package/fesm2020/covalent-core-file.mjs.map +1 -0
  224. package/fesm2020/covalent-core-json-formatter.mjs +326 -0
  225. package/fesm2020/covalent-core-json-formatter.mjs.map +1 -0
  226. package/fesm2020/covalent-core-layout.mjs +1414 -0
  227. package/fesm2020/covalent-core-layout.mjs.map +1 -0
  228. package/fesm2020/covalent-core-menu.mjs +49 -0
  229. package/fesm2020/covalent-core-menu.mjs.map +1 -0
  230. package/fesm2020/covalent-core-message.mjs +286 -0
  231. package/fesm2020/covalent-core-message.mjs.map +1 -0
  232. package/fesm2020/covalent-core-search.mjs +473 -0
  233. package/fesm2020/covalent-core-search.mjs.map +1 -0
  234. package/{fesm2015/covalent-core-side-sheet.js → fesm2020/covalent-core-side-sheet.mjs} +202 -646
  235. package/fesm2020/covalent-core-side-sheet.mjs.map +1 -0
  236. package/fesm2020/covalent-core-user-profile.mjs +141 -0
  237. package/fesm2020/covalent-core-user-profile.mjs.map +1 -0
  238. package/{data-table/covalent-core-data-table.d.ts → fesm2020/covalent-core.mjs} +1 -1
  239. package/fesm2020/covalent-core.mjs.map +1 -0
  240. package/file/_file-theme.scss +1 -0
  241. package/file/covalent-core-file.d.ts +1 -0
  242. package/file/directives/file-drop.directive.d.ts +3 -0
  243. package/file/directives/file-select.directive.d.ts +3 -0
  244. package/file/file-input/file-input.component.d.ts +5 -0
  245. package/file/file-input/file-input.component.scss +2 -0
  246. package/file/file-upload/file-upload.component.d.ts +3 -0
  247. package/file/file-upload/file-upload.component.scss +4 -0
  248. package/file/file.module.d.ts +13 -0
  249. package/file/package.json +6 -7
  250. package/file/services/file.service.d.ts +3 -0
  251. package/json-formatter/_json-formatter-theme.scss +10 -0
  252. package/json-formatter/covalent-core-json-formatter.d.ts +1 -0
  253. package/json-formatter/json-formatter.component.d.ts +3 -0
  254. package/json-formatter/json-formatter.component.scss +13 -0
  255. package/json-formatter/json-formatter.module.d.ts +8 -0
  256. package/json-formatter/package.json +6 -7
  257. package/layout/_layout-theme.scss +12 -0
  258. package/layout/covalent-core-layout.d.ts +1 -0
  259. package/layout/layout-card-over/layout-card-over.component.d.ts +3 -0
  260. package/layout/layout-card-over/layout-card-over.component.scss +3 -0
  261. package/layout/layout-footer/layout-footer.component.d.ts +3 -0
  262. package/layout/layout-manage-list/layout-manage-list.component.d.ts +3 -0
  263. package/layout/layout-manage-list/layout-manage-list.component.scss +9 -5
  264. package/layout/layout-manage-list/layout-manage-list.directives.d.ts +7 -0
  265. package/layout/layout-nav/layout-nav.component.d.ts +3 -0
  266. package/layout/layout-nav/layout-nav.component.scss +4 -0
  267. package/layout/layout-nav-list/layout-nav-list.component.d.ts +3 -0
  268. package/layout/layout-nav-list/layout-nav-list.component.scss +9 -4
  269. package/layout/layout-nav-list/layout-nav-list.directives.d.ts +7 -0
  270. package/layout/layout-toggle.class.d.ts +3 -0
  271. package/layout/layout.component.d.ts +3 -0
  272. package/layout/layout.component.scss +0 -4
  273. package/layout/layout.directives.d.ts +7 -0
  274. package/layout/layout.module.d.ts +23 -0
  275. package/layout/navigation-drawer/navigation-drawer.component.d.ts +7 -0
  276. package/layout/navigation-drawer/navigation-drawer.component.scss +8 -0
  277. package/layout/package.json +6 -7
  278. package/menu/covalent-core-menu.d.ts +1 -0
  279. package/menu/menu.component.d.ts +3 -0
  280. package/menu/menu.component.scss +9 -1
  281. package/menu/menu.module.d.ts +8 -0
  282. package/menu/package.json +6 -7
  283. package/message/_message-theme.scss +3 -0
  284. package/message/covalent-core-message.d.ts +1 -0
  285. package/message/message.component.d.ts +5 -0
  286. package/message/message.component.scss +3 -0
  287. package/message/message.module.d.ts +7 -0
  288. package/message/package.json +6 -7
  289. package/package.json +126 -15
  290. package/search/covalent-core-search.d.ts +1 -0
  291. package/search/package.json +6 -7
  292. package/search/search-box/search-box.component.d.ts +3 -0
  293. package/search/search-box/search-box.component.scss +5 -0
  294. package/search/search-input/search-input.component.d.ts +3 -0
  295. package/search/search-input/search-input.component.scss +12 -0
  296. package/search/search.module.d.ts +11 -0
  297. package/side-sheet/covalent-core-side-sheet.d.ts +1 -2
  298. package/side-sheet/package.json +6 -7
  299. package/side-sheet/side-sheet-container.d.ts +5 -0
  300. package/side-sheet/side-sheet.content-directives.d.ts +11 -0
  301. package/side-sheet/side-sheet.d.ts +5 -0
  302. package/side-sheet/side-sheet.module.d.ts +9 -0
  303. package/side-sheet/side-sheet.scss +1 -2
  304. package/theming/_all-theme.scss +0 -14
  305. package/theming/prebuilt/blue-grey-deep-orange.css +1714 -1581
  306. package/theming/prebuilt/blue-grey-deep-orange.css.map +1 -1
  307. package/theming/prebuilt/blue-grey-deep-orange.scss +15 -8
  308. package/theming/prebuilt/blue-orange.css +1713 -1580
  309. package/theming/prebuilt/blue-orange.css.map +1 -1
  310. package/theming/prebuilt/blue-orange.scss +15 -8
  311. package/theming/prebuilt/indigo-pink.css +1714 -1581
  312. package/theming/prebuilt/indigo-pink.css.map +1 -1
  313. package/theming/prebuilt/indigo-pink.scss +15 -8
  314. package/theming/prebuilt/orange-light-blue.css +1713 -1580
  315. package/theming/prebuilt/orange-light-blue.css.map +1 -1
  316. package/theming/prebuilt/orange-light-blue.scss +15 -8
  317. package/theming/prebuilt/teal-orange.css +1713 -1580
  318. package/theming/prebuilt/teal-orange.css.map +1 -1
  319. package/theming/prebuilt/teal-orange.scss +15 -8
  320. package/typography/_all-typography.scss +0 -10
  321. package/user-profile/covalent-core-user-profile.d.ts +1 -0
  322. package/user-profile/package.json +6 -7
  323. package/user-profile/user-profile-menu/user-profile-menu.component.d.ts +3 -0
  324. package/user-profile/user-profile-menu/user-profile-menu.component.scss +3 -0
  325. package/user-profile/user-profile.component.d.ts +3 -0
  326. package/user-profile/user-profile.module.d.ts +12 -0
  327. package/breadcrumbs/covalent-core-breadcrumbs.metadata.json +0 -1
  328. package/bundles/covalent-core-breadcrumbs.umd.js +0 -490
  329. package/bundles/covalent-core-breadcrumbs.umd.js.map +0 -1
  330. package/bundles/covalent-core-breadcrumbs.umd.min.js +0 -2
  331. package/bundles/covalent-core-breadcrumbs.umd.min.js.map +0 -1
  332. package/bundles/covalent-core-chips.umd.js +0 -1507
  333. package/bundles/covalent-core-chips.umd.js.map +0 -1
  334. package/bundles/covalent-core-chips.umd.min.js +0 -16
  335. package/bundles/covalent-core-chips.umd.min.js.map +0 -1
  336. package/bundles/covalent-core-common.umd.js +0 -3188
  337. package/bundles/covalent-core-common.umd.js.map +0 -1
  338. package/bundles/covalent-core-common.umd.min.js +0 -17
  339. package/bundles/covalent-core-common.umd.min.js.map +0 -1
  340. package/bundles/covalent-core-data-table.umd.js +0 -2756
  341. package/bundles/covalent-core-data-table.umd.js.map +0 -1
  342. package/bundles/covalent-core-data-table.umd.min.js +0 -16
  343. package/bundles/covalent-core-data-table.umd.min.js.map +0 -1
  344. package/bundles/covalent-core-dialogs.umd.js +0 -1318
  345. package/bundles/covalent-core-dialogs.umd.js.map +0 -1
  346. package/bundles/covalent-core-dialogs.umd.min.js +0 -2
  347. package/bundles/covalent-core-dialogs.umd.min.js.map +0 -1
  348. package/bundles/covalent-core-dynamic-menu.umd.js +0 -215
  349. package/bundles/covalent-core-dynamic-menu.umd.js.map +0 -1
  350. package/bundles/covalent-core-dynamic-menu.umd.min.js +0 -2
  351. package/bundles/covalent-core-dynamic-menu.umd.min.js.map +0 -1
  352. package/bundles/covalent-core-expansion-panel.umd.js +0 -853
  353. package/bundles/covalent-core-expansion-panel.umd.js.map +0 -1
  354. package/bundles/covalent-core-expansion-panel.umd.min.js +0 -16
  355. package/bundles/covalent-core-expansion-panel.umd.min.js.map +0 -1
  356. package/bundles/covalent-core-file.umd.js +0 -1211
  357. package/bundles/covalent-core-file.umd.js.map +0 -1
  358. package/bundles/covalent-core-file.umd.min.js +0 -17
  359. package/bundles/covalent-core-file.umd.min.js.map +0 -1
  360. package/bundles/covalent-core-json-formatter.umd.js +0 -408
  361. package/bundles/covalent-core-json-formatter.umd.js.map +0 -1
  362. package/bundles/covalent-core-json-formatter.umd.min.js +0 -2
  363. package/bundles/covalent-core-json-formatter.umd.min.js.map +0 -1
  364. package/bundles/covalent-core-layout.umd.js +0 -2084
  365. package/bundles/covalent-core-layout.umd.js.map +0 -1
  366. package/bundles/covalent-core-layout.umd.min.js +0 -17
  367. package/bundles/covalent-core-layout.umd.min.js.map +0 -1
  368. package/bundles/covalent-core-loading.umd.js +0 -1534
  369. package/bundles/covalent-core-loading.umd.js.map +0 -1
  370. package/bundles/covalent-core-loading.umd.min.js +0 -16
  371. package/bundles/covalent-core-loading.umd.min.js.map +0 -1
  372. package/bundles/covalent-core-media.umd.js +0 -749
  373. package/bundles/covalent-core-media.umd.js.map +0 -1
  374. package/bundles/covalent-core-media.umd.min.js +0 -16
  375. package/bundles/covalent-core-media.umd.min.js.map +0 -1
  376. package/bundles/covalent-core-menu.umd.js +0 -69
  377. package/bundles/covalent-core-menu.umd.js.map +0 -1
  378. package/bundles/covalent-core-menu.umd.min.js +0 -2
  379. package/bundles/covalent-core-menu.umd.min.js.map +0 -1
  380. package/bundles/covalent-core-message.umd.js +0 -375
  381. package/bundles/covalent-core-message.umd.js.map +0 -1
  382. package/bundles/covalent-core-message.umd.min.js +0 -2
  383. package/bundles/covalent-core-message.umd.min.js.map +0 -1
  384. package/bundles/covalent-core-nav-links.umd.js +0 -197
  385. package/bundles/covalent-core-nav-links.umd.js.map +0 -1
  386. package/bundles/covalent-core-nav-links.umd.min.js +0 -2
  387. package/bundles/covalent-core-nav-links.umd.min.js.map +0 -1
  388. package/bundles/covalent-core-notifications.umd.js +0 -275
  389. package/bundles/covalent-core-notifications.umd.js.map +0 -1
  390. package/bundles/covalent-core-notifications.umd.min.js +0 -2
  391. package/bundles/covalent-core-notifications.umd.min.js.map +0 -1
  392. package/bundles/covalent-core-paging.umd.js +0 -491
  393. package/bundles/covalent-core-paging.umd.js.map +0 -1
  394. package/bundles/covalent-core-paging.umd.min.js +0 -2
  395. package/bundles/covalent-core-paging.umd.min.js.map +0 -1
  396. package/bundles/covalent-core-search.umd.js +0 -877
  397. package/bundles/covalent-core-search.umd.js.map +0 -1
  398. package/bundles/covalent-core-search.umd.min.js +0 -16
  399. package/bundles/covalent-core-search.umd.min.js.map +0 -1
  400. package/bundles/covalent-core-side-sheet.umd.js +0 -1458
  401. package/bundles/covalent-core-side-sheet.umd.js.map +0 -1
  402. package/bundles/covalent-core-side-sheet.umd.min.js +0 -16
  403. package/bundles/covalent-core-side-sheet.umd.min.js.map +0 -1
  404. package/bundles/covalent-core-sidesheet.umd.js +0 -145
  405. package/bundles/covalent-core-sidesheet.umd.js.map +0 -1
  406. package/bundles/covalent-core-sidesheet.umd.min.js +0 -2
  407. package/bundles/covalent-core-sidesheet.umd.min.js.map +0 -1
  408. package/bundles/covalent-core-steps.umd.js +0 -1756
  409. package/bundles/covalent-core-steps.umd.js.map +0 -1
  410. package/bundles/covalent-core-steps.umd.min.js +0 -16
  411. package/bundles/covalent-core-steps.umd.min.js.map +0 -1
  412. package/bundles/covalent-core-tab-select.umd.js +0 -732
  413. package/bundles/covalent-core-tab-select.umd.js.map +0 -1
  414. package/bundles/covalent-core-tab-select.umd.min.js +0 -16
  415. package/bundles/covalent-core-tab-select.umd.min.js.map +0 -1
  416. package/bundles/covalent-core-user-profile.umd.js +0 -124
  417. package/bundles/covalent-core-user-profile.umd.js.map +0 -1
  418. package/bundles/covalent-core-user-profile.umd.min.js +0 -2
  419. package/bundles/covalent-core-user-profile.umd.min.js.map +0 -1
  420. package/bundles/covalent-core-virtual-scroll.umd.js +0 -785
  421. package/bundles/covalent-core-virtual-scroll.umd.js.map +0 -1
  422. package/bundles/covalent-core-virtual-scroll.umd.min.js +0 -16
  423. package/bundles/covalent-core-virtual-scroll.umd.min.js.map +0 -1
  424. package/bundles/covalent-core.umd.js +0 -9
  425. package/bundles/covalent-core.umd.js.map +0 -1
  426. package/bundles/covalent-core.umd.min.js +0 -2
  427. package/bundles/covalent-core.umd.min.js.map +0 -1
  428. package/chips/README.md +0 -99
  429. package/chips/_chips-theme.scss +0 -87
  430. package/chips/chips.component.d.ts +0 -287
  431. package/chips/chips.component.scss +0 -147
  432. package/chips/chips.module.d.ts +0 -2
  433. package/chips/covalent-core-chips.metadata.json +0 -1
  434. package/chips/index.d.ts +0 -1
  435. package/chips/package.json +0 -11
  436. package/chips/public-api.d.ts +0 -2
  437. package/common/covalent-core-common.metadata.json +0 -1
  438. package/covalent-core.metadata.json +0 -1
  439. package/data-table/README.md +0 -134
  440. package/data-table/_data-table-theme.scss +0 -115
  441. package/data-table/covalent-core-data-table.metadata.json +0 -1
  442. package/data-table/data-table-cell/data-table-cell.component.d.ts +0 -22
  443. package/data-table/data-table-cell/data-table-cell.component.scss +0 -58
  444. package/data-table/data-table-column/data-table-column.component.d.ts +0 -63
  445. package/data-table/data-table-column/data-table-column.component.scss +0 -80
  446. package/data-table/data-table-row/data-table-row.component.d.ts +0 -20
  447. package/data-table/data-table-row/data-table-row.component.scss +0 -12
  448. package/data-table/data-table-table/data-table-table.component.d.ts +0 -6
  449. package/data-table/data-table-table/data-table-table.component.scss +0 -7
  450. package/data-table/data-table.component.d.ts +0 -356
  451. package/data-table/data-table.component.scss +0 -93
  452. package/data-table/data-table.module.d.ts +0 -2
  453. package/data-table/directives/data-table-template.directive.d.ts +0 -6
  454. package/data-table/index.d.ts +0 -1
  455. package/data-table/package.json +0 -11
  456. package/data-table/public-api.d.ts +0 -8
  457. package/data-table/services/data-table.service.d.ts +0 -31
  458. package/dialogs/covalent-core-dialogs.metadata.json +0 -1
  459. package/dynamic-menu/covalent-core-dynamic-menu.metadata.json +0 -1
  460. package/esm2015/breadcrumbs/breadcrumb/breadcrumb.component.js +0 -171
  461. package/esm2015/breadcrumbs/breadcrumbs.component.js +0 -241
  462. package/esm2015/breadcrumbs/breadcrumbs.module.js +0 -20
  463. package/esm2015/breadcrumbs/covalent-core-breadcrumbs.js +0 -10
  464. package/esm2015/breadcrumbs/index.js +0 -7
  465. package/esm2015/breadcrumbs/public-api.js +0 -9
  466. package/esm2015/chips/chips.component.js +0 -1115
  467. package/esm2015/chips/chips.module.js +0 -23
  468. package/esm2015/chips/covalent-core-chips.js +0 -10
  469. package/esm2015/chips/index.js +0 -7
  470. package/esm2015/chips/public-api.js +0 -8
  471. package/esm2015/common/animations/bounce/bounce.animation.js +0 -76
  472. package/esm2015/common/animations/collapse/collapse.animation.js +0 -67
  473. package/esm2015/common/animations/common/interfaces.js +0 -18
  474. package/esm2015/common/animations/fade/fadeInOut.animation.js +0 -53
  475. package/esm2015/common/animations/flash/flash.animation.js +0 -40
  476. package/esm2015/common/animations/headshake/headshake.animation.js +0 -41
  477. package/esm2015/common/animations/jello/jello.animation.js +0 -44
  478. package/esm2015/common/animations/pulse/pulse.animation.js +0 -38
  479. package/esm2015/common/animations/rotate/rotate.animation.js +0 -41
  480. package/esm2015/common/behaviors/control-value-accesor.mixin.js +0 -107
  481. package/esm2015/common/behaviors/disable-ripple.mixin.js +0 -63
  482. package/esm2015/common/behaviors/disabled.mixin.js +0 -63
  483. package/esm2015/common/common.module.js +0 -54
  484. package/esm2015/common/covalent-core-common.js +0 -12
  485. package/esm2015/common/directives/fullscreen/fullscreen.directive.js +0 -180
  486. package/esm2015/common/forms/auto-trim/auto-trim.directive.js +0 -46
  487. package/esm2015/common/forms/validators/validators.js +0 -58
  488. package/esm2015/common/functions/convert.js +0 -103
  489. package/esm2015/common/functions/download.js +0 -88
  490. package/esm2015/common/functions/file.js +0 -29
  491. package/esm2015/common/index.js +0 -7
  492. package/esm2015/common/pipes/bytes/bytes.pipe.js +0 -41
  493. package/esm2015/common/pipes/decimal-bytes/decimal-bytes.pipe.js +0 -41
  494. package/esm2015/common/pipes/digits/digits.pipe.js +0 -65
  495. package/esm2015/common/pipes/time-ago/time-ago.pipe.js +0 -81
  496. package/esm2015/common/pipes/time-difference/time-difference.pipe.js +0 -66
  497. package/esm2015/common/pipes/time-until/time-until.pipe.js +0 -81
  498. package/esm2015/common/pipes/truncate/truncate.pipe.js +0 -34
  499. package/esm2015/common/public-api.js +0 -44
  500. package/esm2015/common/services/icon.service.js +0 -1109
  501. package/esm2015/common/services/router-path.service.js +0 -60
  502. package/esm2015/covalent-core.js +0 -10
  503. package/esm2015/data-table/covalent-core-data-table.js +0 -10
  504. package/esm2015/data-table/data-table-cell/data-table-cell.component.js +0 -88
  505. package/esm2015/data-table/data-table-column/data-table-column.component.js +0 -218
  506. package/esm2015/data-table/data-table-row/data-table-row.component.js +0 -132
  507. package/esm2015/data-table/data-table-table/data-table-table.component.js +0 -43
  508. package/esm2015/data-table/data-table.component.js +0 -1640
  509. package/esm2015/data-table/data-table.module.js +0 -39
  510. package/esm2015/data-table/directives/data-table-template.directive.js +0 -32
  511. package/esm2015/data-table/index.js +0 -7
  512. package/esm2015/data-table/public-api.js +0 -14
  513. package/esm2015/data-table/services/data-table.service.js +0 -116
  514. package/esm2015/dialogs/alert-dialog/alert-dialog.component.js +0 -47
  515. package/esm2015/dialogs/confirm-dialog/confirm-dialog.component.js +0 -59
  516. package/esm2015/dialogs/covalent-core-dialogs.js +0 -11
  517. package/esm2015/dialogs/dialog.component.js +0 -58
  518. package/esm2015/dialogs/dialogs.module.js +0 -57
  519. package/esm2015/dialogs/index.js +0 -7
  520. package/esm2015/dialogs/prompt-dialog/prompt-dialog.component.js +0 -83
  521. package/esm2015/dialogs/public-api.js +0 -13
  522. package/esm2015/dialogs/resizable-draggable-dialog/resizable-draggable-dialog.js +0 -325
  523. package/esm2015/dialogs/services/dialog.service.js +0 -316
  524. package/esm2015/dialogs/window-dialog/window-dialog.component.js +0 -56
  525. package/esm2015/dynamic-menu/covalent-core-dynamic-menu.js +0 -11
  526. package/esm2015/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.js +0 -40
  527. package/esm2015/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.js +0 -35
  528. package/esm2015/dynamic-menu/dynamic-menu.component.js +0 -89
  529. package/esm2015/dynamic-menu/dynamic-menu.module.js +0 -26
  530. package/esm2015/dynamic-menu/index.js +0 -7
  531. package/esm2015/dynamic-menu/public_api.js +0 -9
  532. package/esm2015/expansion-panel/covalent-core-expansion-panel.js +0 -10
  533. package/esm2015/expansion-panel/expansion-panel-group.component.js +0 -212
  534. package/esm2015/expansion-panel/expansion-panel.component.js +0 -272
  535. package/esm2015/expansion-panel/expansion-panel.module.js +0 -31
  536. package/esm2015/expansion-panel/index.js +0 -7
  537. package/esm2015/expansion-panel/public-api.js +0 -9
  538. package/esm2015/file/covalent-core-file.js +0 -10
  539. package/esm2015/file/directives/file-drop.directive.js +0 -191
  540. package/esm2015/file/directives/file-select.directive.js +0 -98
  541. package/esm2015/file/file-input/file-input.component.js +0 -186
  542. package/esm2015/file/file-upload/file-upload.component.js +0 -237
  543. package/esm2015/file/file.module.js +0 -35
  544. package/esm2015/file/index.js +0 -7
  545. package/esm2015/file/public-api.js +0 -12
  546. package/esm2015/file/services/file.service.js +0 -109
  547. package/esm2015/index.js +0 -7
  548. package/esm2015/json-formatter/covalent-core-json-formatter.js +0 -10
  549. package/esm2015/json-formatter/index.js +0 -7
  550. package/esm2015/json-formatter/json-formatter.component.js +0 -338
  551. package/esm2015/json-formatter/json-formatter.module.js +0 -20
  552. package/esm2015/json-formatter/public-api.js +0 -8
  553. package/esm2015/layout/covalent-core-layout.js +0 -10
  554. package/esm2015/layout/index.js +0 -7
  555. package/esm2015/layout/layout-card-over/layout-card-over.component.js +0 -71
  556. package/esm2015/layout/layout-footer/layout-footer.component.js +0 -71
  557. package/esm2015/layout/layout-manage-list/layout-manage-list.component.js +0 -145
  558. package/esm2015/layout/layout-manage-list/layout-manage-list.directives.js +0 -132
  559. package/esm2015/layout/layout-nav/layout-nav.component.js +0 -100
  560. package/esm2015/layout/layout-nav-list/layout-nav-list.component.js +0 -220
  561. package/esm2015/layout/layout-nav-list/layout-nav-list.directives.js +0 -132
  562. package/esm2015/layout/layout-toggle.class.js +0 -188
  563. package/esm2015/layout/layout.component.js +0 -145
  564. package/esm2015/layout/layout.directives.js +0 -129
  565. package/esm2015/layout/layout.module.js +0 -64
  566. package/esm2015/layout/navigation-drawer/navigation-drawer.component.js +0 -280
  567. package/esm2015/layout/public-api.js +0 -18
  568. package/esm2015/loading/covalent-core-loading.js +0 -10
  569. package/esm2015/loading/directives/loading.directive.js +0 -231
  570. package/esm2015/loading/index.js +0 -7
  571. package/esm2015/loading/loading.component.js +0 -302
  572. package/esm2015/loading/loading.module.js +0 -30
  573. package/esm2015/loading/public-api.js +0 -11
  574. package/esm2015/loading/services/loading.factory.js +0 -297
  575. package/esm2015/loading/services/loading.service.js +0 -319
  576. package/esm2015/media/covalent-core-media.js +0 -10
  577. package/esm2015/media/directives/media-toggle.directive.js +0 -207
  578. package/esm2015/media/index.js +0 -7
  579. package/esm2015/media/media.module.js +0 -20
  580. package/esm2015/media/public-api.js +0 -9
  581. package/esm2015/media/services/media.service.js +0 -169
  582. package/esm2015/menu/covalent-core-menu.js +0 -10
  583. package/esm2015/menu/index.js +0 -7
  584. package/esm2015/menu/menu.component.js +0 -16
  585. package/esm2015/menu/menu.module.js +0 -22
  586. package/esm2015/menu/public-api.js +0 -8
  587. package/esm2015/message/covalent-core-message.js +0 -10
  588. package/esm2015/message/index.js +0 -7
  589. package/esm2015/message/message.component.js +0 -307
  590. package/esm2015/message/message.module.js +0 -21
  591. package/esm2015/message/public-api.js +0 -8
  592. package/esm2015/nav-links/covalent-core-nav-links.js +0 -10
  593. package/esm2015/nav-links/index.js +0 -7
  594. package/esm2015/nav-links/nav-links.component.js +0 -138
  595. package/esm2015/nav-links/nav-links.module.js +0 -37
  596. package/esm2015/nav-links/public-api.js +0 -8
  597. package/esm2015/notifications/covalent-core-notifications.js +0 -10
  598. package/esm2015/notifications/index.js +0 -7
  599. package/esm2015/notifications/notification-count.component.js +0 -191
  600. package/esm2015/notifications/notifications.module.js +0 -20
  601. package/esm2015/notifications/public-api.js +0 -8
  602. package/esm2015/paging/covalent-core-paging.js +0 -10
  603. package/esm2015/paging/index.js +0 -7
  604. package/esm2015/paging/paging-bar.component.js +0 -412
  605. package/esm2015/paging/paging.module.js +0 -20
  606. package/esm2015/paging/public-api.js +0 -8
  607. package/esm2015/search/covalent-core-search.js +0 -10
  608. package/esm2015/search/index.js +0 -7
  609. package/esm2015/search/public-api.js +0 -9
  610. package/esm2015/search/search-box/search-box.component.js +0 -270
  611. package/esm2015/search/search-input/search-input.component.js +0 -260
  612. package/esm2015/search/search.module.js +0 -23
  613. package/esm2015/side-sheet/covalent-core-side-sheet.js +0 -12
  614. package/esm2015/side-sheet/index.js +0 -7
  615. package/esm2015/side-sheet/public-api.js +0 -11
  616. package/esm2015/side-sheet/side-sheet-container.js +0 -402
  617. package/esm2015/side-sheet/side-sheet-ref.js +0 -50
  618. package/esm2015/side-sheet/side-sheet.animation.js +0 -20
  619. package/esm2015/side-sheet/side-sheet.config.js +0 -12
  620. package/esm2015/side-sheet/side-sheet.content-directives.js +0 -255
  621. package/esm2015/side-sheet/side-sheet.js +0 -360
  622. package/esm2015/side-sheet/side-sheet.module.js +0 -36
  623. package/esm2015/sidesheet/covalent-core-sidesheet.js +0 -10
  624. package/esm2015/sidesheet/index.js +0 -7
  625. package/esm2015/sidesheet/public-api.js +0 -8
  626. package/esm2015/sidesheet/sidesheet.component.js +0 -72
  627. package/esm2015/sidesheet/sidesheet.module.js +0 -27
  628. package/esm2015/steps/covalent-core-steps.js +0 -10
  629. package/esm2015/steps/index.js +0 -7
  630. package/esm2015/steps/nav/nav-step-link/nav-step-link.component.js +0 -144
  631. package/esm2015/steps/nav/nav-steps-horizontal/nav-steps-horizontal.component.js +0 -371
  632. package/esm2015/steps/nav/nav-steps-vertical/nav-steps-vertical.component.js +0 -130
  633. package/esm2015/steps/public-api.js +0 -14
  634. package/esm2015/steps/step-body/step-body.component.js +0 -83
  635. package/esm2015/steps/step-header/step-header.component.js +0 -79
  636. package/esm2015/steps/step.component.js +0 -312
  637. package/esm2015/steps/steps.component.js +0 -234
  638. package/esm2015/steps/steps.module.js +0 -44
  639. package/esm2015/tab-select/covalent-core-tab-select.js +0 -10
  640. package/esm2015/tab-select/index.js +0 -7
  641. package/esm2015/tab-select/public-api.js +0 -9
  642. package/esm2015/tab-select/tab-option.component.js +0 -82
  643. package/esm2015/tab-select/tab-select.component.js +0 -291
  644. package/esm2015/tab-select/tab-select.module.js +0 -31
  645. package/esm2015/user-profile/covalent-core-user-profile.js +0 -10
  646. package/esm2015/user-profile/index.js +0 -7
  647. package/esm2015/user-profile/public_api.js +0 -9
  648. package/esm2015/user-profile/user-profile-menu/user-profile-menu.component.js +0 -35
  649. package/esm2015/user-profile/user-profile.component.js +0 -26
  650. package/esm2015/user-profile/user-profile.module.js +0 -33
  651. package/esm2015/virtual-scroll/covalent-core-virtual-scroll.js +0 -10
  652. package/esm2015/virtual-scroll/index.js +0 -7
  653. package/esm2015/virtual-scroll/public-api.js +0 -9
  654. package/esm2015/virtual-scroll/virtual-scroll-container.component.js +0 -391
  655. package/esm2015/virtual-scroll/virtual-scroll-row.directive.js +0 -25
  656. package/esm2015/virtual-scroll/virtual-scroll.module.js +0 -21
  657. package/expansion-panel/README.md +0 -116
  658. package/expansion-panel/_expansion-panel-theme.scss +0 -80
  659. package/expansion-panel/covalent-core-expansion-panel.d.ts +0 -4
  660. package/expansion-panel/covalent-core-expansion-panel.metadata.json +0 -1
  661. package/expansion-panel/expansion-panel-group.component.d.ts +0 -31
  662. package/expansion-panel/expansion-panel-group.component.scss +0 -0
  663. package/expansion-panel/expansion-panel.component.d.ts +0 -82
  664. package/expansion-panel/expansion-panel.component.scss +0 -50
  665. package/expansion-panel/expansion-panel.module.d.ts +0 -2
  666. package/expansion-panel/index.d.ts +0 -1
  667. package/expansion-panel/package.json +0 -11
  668. package/expansion-panel/public-api.d.ts +0 -3
  669. package/fesm2015/covalent-core-breadcrumbs.js +0 -448
  670. package/fesm2015/covalent-core-chips.js +0 -1151
  671. package/fesm2015/covalent-core-chips.js.map +0 -1
  672. package/fesm2015/covalent-core-common.js.map +0 -1
  673. package/fesm2015/covalent-core-data-table.js +0 -2309
  674. package/fesm2015/covalent-core-data-table.js.map +0 -1
  675. package/fesm2015/covalent-core-dialogs.js +0 -1001
  676. package/fesm2015/covalent-core-dialogs.js.map +0 -1
  677. package/fesm2015/covalent-core-dynamic-menu.js +0 -204
  678. package/fesm2015/covalent-core-dynamic-menu.js.map +0 -1
  679. package/fesm2015/covalent-core-expansion-panel.js +0 -528
  680. package/fesm2015/covalent-core-expansion-panel.js.map +0 -1
  681. package/fesm2015/covalent-core-file.js +0 -855
  682. package/fesm2015/covalent-core-file.js.map +0 -1
  683. package/fesm2015/covalent-core-json-formatter.js +0 -377
  684. package/fesm2015/covalent-core-json-formatter.js.map +0 -1
  685. package/fesm2015/covalent-core-layout.js +0 -1663
  686. package/fesm2015/covalent-core-layout.js.map +0 -1
  687. package/fesm2015/covalent-core-loading.js +0 -1179
  688. package/fesm2015/covalent-core-loading.js.map +0 -1
  689. package/fesm2015/covalent-core-media.js +0 -411
  690. package/fesm2015/covalent-core-media.js.map +0 -1
  691. package/fesm2015/covalent-core-menu.js +0 -57
  692. package/fesm2015/covalent-core-menu.js.map +0 -1
  693. package/fesm2015/covalent-core-message.js +0 -347
  694. package/fesm2015/covalent-core-message.js.map +0 -1
  695. package/fesm2015/covalent-core-nav-links.js +0 -193
  696. package/fesm2015/covalent-core-nav-links.js.map +0 -1
  697. package/fesm2015/covalent-core-notifications.js +0 -228
  698. package/fesm2015/covalent-core-notifications.js.map +0 -1
  699. package/fesm2015/covalent-core-paging.js +0 -451
  700. package/fesm2015/covalent-core-paging.js.map +0 -1
  701. package/fesm2015/covalent-core-search.js +0 -564
  702. package/fesm2015/covalent-core-search.js.map +0 -1
  703. package/fesm2015/covalent-core-side-sheet.js.map +0 -1
  704. package/fesm2015/covalent-core-sidesheet.js +0 -118
  705. package/fesm2015/covalent-core-sidesheet.js.map +0 -1
  706. package/fesm2015/covalent-core-steps.js +0 -1384
  707. package/fesm2015/covalent-core-steps.js.map +0 -1
  708. package/fesm2015/covalent-core-tab-select.js +0 -416
  709. package/fesm2015/covalent-core-tab-select.js.map +0 -1
  710. package/fesm2015/covalent-core-user-profile.js +0 -111
  711. package/fesm2015/covalent-core-user-profile.js.map +0 -1
  712. package/fesm2015/covalent-core-virtual-scroll.js +0 -453
  713. package/fesm2015/covalent-core-virtual-scroll.js.map +0 -1
  714. package/fesm2015/covalent-core.js +0 -12
  715. package/fesm2015/covalent-core.js.map +0 -1
  716. package/file/covalent-core-file.metadata.json +0 -1
  717. package/json-formatter/covalent-core-json-formatter.metadata.json +0 -1
  718. package/layout/covalent-core-layout.metadata.json +0 -1
  719. package/loading/README.md +0 -180
  720. package/loading/_loading-theme.scss +0 -10
  721. package/loading/covalent-core-loading.d.ts +0 -4
  722. package/loading/covalent-core-loading.metadata.json +0 -1
  723. package/loading/directives/loading.directive.d.ts +0 -71
  724. package/loading/index.d.ts +0 -1
  725. package/loading/loading.component.d.ts +0 -87
  726. package/loading/loading.component.scss +0 -42
  727. package/loading/loading.module.d.ts +0 -2
  728. package/loading/package.json +0 -11
  729. package/loading/public-api.d.ts +0 -5
  730. package/loading/services/loading.factory.d.ts +0 -66
  731. package/loading/services/loading.service.d.ts +0 -118
  732. package/media/covalent-core-media.d.ts +0 -4
  733. package/media/covalent-core-media.metadata.json +0 -1
  734. package/media/directives/media-toggle.directive.d.ts +0 -42
  735. package/media/index.d.ts +0 -1
  736. package/media/media.module.d.ts +0 -2
  737. package/media/package.json +0 -11
  738. package/media/public-api.d.ts +0 -3
  739. package/media/services/media.service.d.ts +0 -31
  740. package/menu/covalent-core-menu.metadata.json +0 -1
  741. package/message/covalent-core-message.metadata.json +0 -1
  742. package/nav-links/README.md +0 -1
  743. package/nav-links/covalent-core-nav-links.d.ts +0 -4
  744. package/nav-links/covalent-core-nav-links.metadata.json +0 -1
  745. package/nav-links/index.d.ts +0 -1
  746. package/nav-links/nav-links.component.d.ts +0 -51
  747. package/nav-links/nav-links.component.scss +0 -15
  748. package/nav-links/nav-links.module.d.ts +0 -2
  749. package/nav-links/package.json +0 -11
  750. package/nav-links/public-api.d.ts +0 -2
  751. package/notifications/README.md +0 -69
  752. package/notifications/_notification-count-theme.scss +0 -27
  753. package/notifications/covalent-core-notifications.d.ts +0 -4
  754. package/notifications/covalent-core-notifications.metadata.json +0 -1
  755. package/notifications/index.d.ts +0 -1
  756. package/notifications/notification-count.component.d.ts +0 -74
  757. package/notifications/notification-count.component.scss +0 -90
  758. package/notifications/notifications.module.d.ts +0 -2
  759. package/notifications/package.json +0 -11
  760. package/notifications/public-api.d.ts +0 -2
  761. package/paging/README.md +0 -141
  762. package/paging/_paging-bar-theme.scss +0 -26
  763. package/paging/covalent-core-paging.d.ts +0 -4
  764. package/paging/covalent-core-paging.metadata.json +0 -1
  765. package/paging/index.d.ts +0 -1
  766. package/paging/package.json +0 -11
  767. package/paging/paging-bar.component.d.ts +0 -115
  768. package/paging/paging-bar.component.scss +0 -23
  769. package/paging/paging.module.d.ts +0 -2
  770. package/paging/public-api.d.ts +0 -2
  771. package/schematics/collection.json +0 -11
  772. package/schematics/components.js +0 -124
  773. package/schematics/components.js.map +0 -1
  774. package/schematics/migration.json +0 -10
  775. package/schematics/ng-add/index.js +0 -58
  776. package/schematics/ng-add/index.js.map +0 -1
  777. package/schematics/ng-add/schema.js +0 -3
  778. package/schematics/ng-add/schema.js.map +0 -1
  779. package/schematics/ng-add/schema.json +0 -81
  780. package/schematics/ng-update/index.js +0 -52
  781. package/schematics/ng-update/index.js.map +0 -1
  782. package/schematics/ng-update/target-version.js +0 -8
  783. package/schematics/ng-update/target-version.js.map +0 -1
  784. package/schematics/version-names.js +0 -6
  785. package/schematics/version-names.js.map +0 -1
  786. package/search/covalent-core-search.metadata.json +0 -1
  787. package/side-sheet/covalent-core-side-sheet.metadata.json +0 -1
  788. package/sidesheet/README.md +0 -68
  789. package/sidesheet/covalent-core-sidesheet.d.ts +0 -4
  790. package/sidesheet/covalent-core-sidesheet.metadata.json +0 -1
  791. package/sidesheet/index.d.ts +0 -1
  792. package/sidesheet/package.json +0 -11
  793. package/sidesheet/public-api.d.ts +0 -2
  794. package/sidesheet/sidesheet.component.d.ts +0 -13
  795. package/sidesheet/sidesheet.component.scss +0 -101
  796. package/sidesheet/sidesheet.module.d.ts +0 -2
  797. package/steps/README.md +0 -159
  798. package/steps/_steps-theme.scss +0 -108
  799. package/steps/covalent-core-steps.d.ts +0 -4
  800. package/steps/covalent-core-steps.metadata.json +0 -1
  801. package/steps/index.d.ts +0 -1
  802. package/steps/nav/README.md +0 -90
  803. package/steps/nav/nav-step-link/nav-step-link.component.d.ts +0 -42
  804. package/steps/nav/nav-step-link/nav-step-link.component.scss +0 -17
  805. package/steps/nav/nav-steps-horizontal/nav-steps-horizontal.component.d.ts +0 -79
  806. package/steps/nav/nav-steps-horizontal/nav-steps-horizontal.component.scss +0 -83
  807. package/steps/nav/nav-steps-vertical/nav-steps-vertical.component.d.ts +0 -18
  808. package/steps/nav/nav-steps-vertical/nav-steps-vertical.component.scss +0 -18
  809. package/steps/package.json +0 -11
  810. package/steps/public-api.d.ts +0 -8
  811. package/steps/step-body/step-body.component.d.ts +0 -25
  812. package/steps/step-body/step-body.component.scss +0 -29
  813. package/steps/step-header/step-header.component.d.ts +0 -35
  814. package/steps/step-header/step-header.component.scss +0 -90
  815. package/steps/step.component.d.ts +0 -97
  816. package/steps/steps.component.d.ts +0 -60
  817. package/steps/steps.component.scss +0 -55
  818. package/steps/steps.module.d.ts +0 -2
  819. package/tab-select/README.md +0 -93
  820. package/tab-select/covalent-core-tab-select.d.ts +0 -4
  821. package/tab-select/covalent-core-tab-select.metadata.json +0 -1
  822. package/tab-select/index.d.ts +0 -1
  823. package/tab-select/package.json +0 -11
  824. package/tab-select/public-api.d.ts +0 -3
  825. package/tab-select/tab-option.component.d.ts +0 -20
  826. package/tab-select/tab-option.component.scss +0 -0
  827. package/tab-select/tab-select.component.d.ts +0 -62
  828. package/tab-select/tab-select.component.scss +0 -3
  829. package/tab-select/tab-select.module.d.ts +0 -2
  830. package/user-profile/covalent-core-user-profile.metadata.json +0 -1
  831. package/virtual-scroll/README.md +0 -68
  832. package/virtual-scroll/covalent-core-virtual-scroll.d.ts +0 -4
  833. package/virtual-scroll/covalent-core-virtual-scroll.metadata.json +0 -1
  834. package/virtual-scroll/index.d.ts +0 -1
  835. package/virtual-scroll/package.json +0 -11
  836. package/virtual-scroll/public-api.d.ts +0 -3
  837. package/virtual-scroll/virtual-scroll-container.component.d.ts +0 -73
  838. package/virtual-scroll/virtual-scroll-container.component.scss +0 -7
  839. package/virtual-scroll/virtual-scroll-row.directive.d.ts +0 -5
  840. package/virtual-scroll/virtual-scroll.module.d.ts +0 -2
@@ -1,325 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: resizable-draggable-dialog/resizable-draggable-dialog.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { merge, fromEvent } from 'rxjs';
7
- /** @enum {string} */
8
- const corners = {
9
- topRight: "topRight",
10
- bottomRight: "bottomRight",
11
- bottomLeft: "bottomLeft",
12
- topLeft: "topLeft",
13
- };
14
- /** @enum {string} */
15
- const cursors = {
16
- nesw: "nesw-resize",
17
- nwse: "nwse-resize",
18
- };
19
- /** @enum {string} */
20
- const verticalAlignment = {
21
- top: "top",
22
- bottom: "bottom",
23
- };
24
- /** @enum {string} */
25
- const horizontalAlignment = {
26
- right: "right",
27
- left: "left",
28
- };
29
- /** @type {?} */
30
- const cornerWidth = '16px';
31
- /** @type {?} */
32
- const offset = '0px';
33
- /** @type {?} */
34
- const minWidth = 200;
35
- /** @type {?} */
36
- const minHeight = 200;
37
- /**
38
- * @param {?} sizeString
39
- * @return {?}
40
- */
41
- function getPixels(sizeString) {
42
- return parseFloat((sizeString || '').replace('px', ''));
43
- }
44
- /**
45
- * @param {?} min
46
- * @param {?} num
47
- * @param {?} max
48
- * @return {?}
49
- */
50
- function clamp(min, num, max) {
51
- return Math.min(Math.max(num, min), max);
52
- }
53
- export class ResizableDraggableDialog {
54
- /**
55
- * @param {?} _document
56
- * @param {?} _renderer2
57
- * @param {?} _dialogRef
58
- * @param {?} _dragRef
59
- */
60
- constructor(_document, _renderer2, _dialogRef, _dragRef) {
61
- this._document = _document;
62
- this._renderer2 = _renderer2;
63
- this._dialogRef = _dialogRef;
64
- this._dragRef = _dragRef;
65
- this.cornerElements = [];
66
- this.pointerDownSubs = [];
67
- this._initialPositionReset();
68
- this._attachCorners();
69
- }
70
- /**
71
- * @return {?}
72
- */
73
- attach() {
74
- this.detach();
75
- this._attachCorners();
76
- }
77
- /**
78
- * @return {?}
79
- */
80
- detach() {
81
- this.pointerDownSubs.forEach((/**
82
- * @param {?} sub
83
- * @return {?}
84
- */
85
- (sub) => sub.unsubscribe()));
86
- this.pointerDownSubs = [];
87
- this.cornerElements.forEach((/**
88
- * @param {?} elem
89
- * @return {?}
90
- */
91
- (elem) => this._renderer2.removeChild(this._getDialogWrapper(), elem)));
92
- this.cornerElements = [];
93
- }
94
- /**
95
- * @private
96
- * @return {?}
97
- */
98
- _getDialogWrapper() {
99
- return ((/** @type {?} */ (this._document.getElementById(this._dialogRef.id))) || {}).parentElement;
100
- }
101
- /**
102
- * @private
103
- * @return {?}
104
- */
105
- _getViewportDimensions() {
106
- return this._getDialogWrapper().parentElement.getBoundingClientRect();
107
- }
108
- /**
109
- * @private
110
- * @return {?}
111
- */
112
- _getDialogWrapperDimensions() {
113
- /** @type {?} */
114
- const dimensions = getComputedStyle(this._getDialogWrapper());
115
- return {
116
- width: getPixels(dimensions.width),
117
- height: getPixels(dimensions.height),
118
- };
119
- }
120
- /**
121
- * @private
122
- * @return {?}
123
- */
124
- _initialPositionReset() {
125
- const { right: viewportWidth, bottom: viewportHeight } = this._getViewportDimensions();
126
- const { width, height } = this._getDialogWrapperDimensions();
127
- const { marginRight: originalDialogRight, marginLeft: originalDialogLeft, marginBottom: originalDialogBottom, marginTop: originalDialogTop, } = this._getDialogWrapper().style;
128
- /** @type {?} */
129
- let x;
130
- if (originalDialogLeft) {
131
- x = getPixels(originalDialogLeft);
132
- }
133
- else if (originalDialogRight) {
134
- x = viewportWidth - getPixels(originalDialogRight) - width;
135
- }
136
- else {
137
- x = (viewportWidth - width) / 2;
138
- }
139
- /** @type {?} */
140
- let y;
141
- if (originalDialogTop) {
142
- y = getPixels(originalDialogTop);
143
- }
144
- else if (originalDialogBottom) {
145
- y = viewportHeight - getPixels(originalDialogBottom) - height;
146
- }
147
- else {
148
- y = (viewportHeight - height) / 2;
149
- }
150
- // use drag ref's mechanisms for positioning instead of the dialog's
151
- this._dialogRef.updatePosition({ top: '0px', right: '0px', bottom: '0px', left: '0px' });
152
- this._dragRef.setFreeDragPosition({ x, y });
153
- }
154
- /**
155
- * @private
156
- * @return {?}
157
- */
158
- _attachCorners() {
159
- Object.values(corners).forEach((/**
160
- * @param {?} corner
161
- * @return {?}
162
- */
163
- (corner) => {
164
- /** @type {?} */
165
- const element = this._renderer2.createElement('div');
166
- this.cornerElements = [...this.cornerElements, element];
167
- this._renderer2.setStyle(element, 'position', 'absolute');
168
- this._renderer2.setStyle(element, 'width', cornerWidth);
169
- this._renderer2.setStyle(element, 'height', cornerWidth);
170
- this._renderer2.appendChild(this._getDialogWrapper(), element);
171
- /** @type {?} */
172
- let cursor;
173
- /** @type {?} */
174
- let topBottom;
175
- /** @type {?} */
176
- let rightLeft;
177
- if (corner === corners.topRight) {
178
- cursor = cursors.nesw;
179
- topBottom = verticalAlignment.top;
180
- rightLeft = horizontalAlignment.right;
181
- }
182
- else if (corner === corners.bottomRight) {
183
- cursor = cursors.nwse;
184
- topBottom = verticalAlignment.bottom;
185
- rightLeft = horizontalAlignment.right;
186
- /** @type {?} */
187
- const icon = this._renderer2.createElement('i');
188
- this._renderer2.addClass(icon, 'material-icons');
189
- this._renderer2.appendChild(icon, this._renderer2.createText('filter_list'));
190
- this._renderer2.appendChild(element, icon);
191
- this._renderer2.setStyle(icon, 'transform', `rotate(${315}deg) translate(0px, ${offset})`);
192
- this._renderer2.setStyle(icon, 'font-size', cornerWidth);
193
- }
194
- else if (corner === corners.bottomLeft) {
195
- cursor = cursors.nesw;
196
- topBottom = verticalAlignment.bottom;
197
- rightLeft = horizontalAlignment.left;
198
- }
199
- else if (corner === corners.topLeft) {
200
- cursor = cursors.nwse;
201
- topBottom = verticalAlignment.top;
202
- rightLeft = horizontalAlignment.left;
203
- }
204
- this._renderer2.setStyle(element, topBottom, offset);
205
- this._renderer2.setStyle(element, rightLeft, offset);
206
- this._renderer2.setStyle(element, 'cursor', cursor);
207
- /** @type {?} */
208
- const pointerDownSub = fromEvent(element, 'pointerdown').subscribe((/**
209
- * @param {?} event
210
- * @return {?}
211
- */
212
- (event) => {
213
- this._handleMouseDown(event, corner);
214
- }));
215
- this.pointerDownSubs = [...this.pointerDownSubs, pointerDownSub];
216
- }));
217
- }
218
- /**
219
- * @private
220
- * @param {?} event
221
- * @param {?} corner
222
- * @return {?}
223
- */
224
- _handleMouseDown(event, corner) {
225
- this._renderer2.setStyle((/** @type {?} */ (this._document.body)), 'user-select', 'none');
226
- const { width: originalWidth, height: originalHeight } = this._getDialogWrapperDimensions();
227
- /** @type {?} */
228
- const originalMouseX = event.pageX;
229
- /** @type {?} */
230
- const originalMouseY = event.pageY;
231
- const { x: currentTransformX, y: currentTransformY } = this._dragRef.getFreeDragPosition();
232
- const { bottom: distanceFromBottom, right: distanceFromRight } = this._getDialogWrapper().getBoundingClientRect();
233
- const { right: viewportWidth, bottom: viewportHeight } = this._getViewportDimensions();
234
- /** @type {?} */
235
- const mouseMoveSub = fromEvent(window, 'pointermove').subscribe((/**
236
- * @param {?} e
237
- * @return {?}
238
- */
239
- (e) => {
240
- e.preventDefault(); // prevent highlighting of text when dragging
241
- // prevent highlighting of text when dragging
242
- /** @type {?} */
243
- const yDelta = clamp(0, e.pageY, viewportHeight) - originalMouseY;
244
- /** @type {?} */
245
- const xDelta = clamp(0, e.pageX, viewportWidth) - originalMouseX;
246
- /** @type {?} */
247
- let newHeight;
248
- /** @type {?} */
249
- let newWidth;
250
- /** @type {?} */
251
- let newTransformY = 0;
252
- /** @type {?} */
253
- let newTransformX = 0;
254
- // top right
255
- if (corner === corners.topRight) {
256
- newHeight = clamp(minHeight, originalHeight - yDelta, viewportHeight);
257
- newWidth = clamp(minWidth, originalWidth + xDelta, viewportWidth);
258
- newTransformY = clamp(0, currentTransformY + yDelta, distanceFromBottom - newHeight);
259
- newTransformX = currentTransformX;
260
- }
261
- // bottom right
262
- else if (corner === corners.bottomRight) {
263
- newHeight = clamp(minHeight, originalHeight + yDelta, viewportHeight);
264
- newWidth = clamp(minWidth, originalWidth + xDelta, viewportWidth);
265
- newTransformY = currentTransformY;
266
- newTransformX = currentTransformX;
267
- }
268
- // bottom left
269
- else if (corner === corners.bottomLeft) {
270
- newHeight = clamp(minHeight, originalHeight + yDelta, viewportHeight);
271
- newWidth = clamp(minWidth, originalWidth - xDelta, viewportWidth);
272
- newTransformY = currentTransformY;
273
- newTransformX = clamp(0, currentTransformX + xDelta, distanceFromRight - newWidth);
274
- }
275
- // top left
276
- else if (corner === corners.topLeft) {
277
- newHeight = clamp(minHeight, originalHeight - yDelta, viewportHeight);
278
- newWidth = clamp(minWidth, originalWidth - xDelta, viewportWidth);
279
- newTransformX = clamp(0, currentTransformX + xDelta, distanceFromRight - newWidth);
280
- newTransformY = clamp(0, currentTransformY + yDelta, distanceFromBottom - newHeight);
281
- }
282
- this._dialogRef.updateSize(`${newWidth}px`, `${newHeight}px`);
283
- this._dragRef.setFreeDragPosition({
284
- x: newTransformX,
285
- y: newTransformY,
286
- });
287
- }));
288
- /** @type {?} */
289
- const mouseUpSub = merge(fromEvent(window, 'pointerup'), fromEvent(window, 'pointercancel')).subscribe((/**
290
- * @return {?}
291
- */
292
- () => {
293
- this._renderer2.removeStyle((/** @type {?} */ (this._document.body)), 'user-select');
294
- mouseMoveSub.unsubscribe();
295
- mouseUpSub.unsubscribe();
296
- }));
297
- }
298
- }
299
- if (false) {
300
- /** @type {?} */
301
- ResizableDraggableDialog.prototype.cornerElements;
302
- /** @type {?} */
303
- ResizableDraggableDialog.prototype.pointerDownSubs;
304
- /**
305
- * @type {?}
306
- * @private
307
- */
308
- ResizableDraggableDialog.prototype._document;
309
- /**
310
- * @type {?}
311
- * @private
312
- */
313
- ResizableDraggableDialog.prototype._renderer2;
314
- /**
315
- * @type {?}
316
- * @private
317
- */
318
- ResizableDraggableDialog.prototype._dialogRef;
319
- /**
320
- * @type {?}
321
- * @private
322
- */
323
- ResizableDraggableDialog.prototype._dragRef;
324
- }
325
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXphYmxlLWRyYWdnYWJsZS1kaWFsb2cuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vc3JjL3BsYXRmb3JtL2NvcmUvZGlhbG9ncy8iLCJzb3VyY2VzIjpbInJlc2l6YWJsZS1kcmFnZ2FibGUtZGlhbG9nL3Jlc2l6YWJsZS1kcmFnZ2FibGUtZGlhbG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0EsT0FBTyxFQUFFLEtBQUssRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUd0RCxNQUFLLE9BQU87SUFDVixRQUFRLFlBQWE7SUFDckIsV0FBVyxlQUFnQjtJQUMzQixVQUFVLGNBQWU7SUFDekIsT0FBTyxXQUFZO0VBQ3BCOztBQUNELE1BQUssT0FBTztJQUNWLElBQUksZUFBZ0I7SUFDcEIsSUFBSSxlQUFnQjtFQUNyQjs7QUFDRCxNQUFLLGlCQUFpQjtJQUNwQixHQUFHLE9BQVE7SUFDWCxNQUFNLFVBQVc7RUFDbEI7O0FBQ0QsTUFBSyxtQkFBbUI7SUFDdEIsS0FBSyxTQUFVO0lBQ2YsSUFBSSxRQUFTO0VBQ2Q7O01BRUssV0FBVyxHQUFXLE1BQU07O01BQzVCLE1BQU0sR0FBVyxLQUFLOztNQUN0QixRQUFRLEdBQVcsR0FBRzs7TUFDdEIsU0FBUyxHQUFXLEdBQUc7Ozs7O0FBRTdCLFNBQVMsU0FBUyxDQUFDLFVBQWtCO0lBQ25DLE9BQU8sVUFBVSxDQUFDLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUMxRCxDQUFDOzs7Ozs7O0FBRUQsU0FBUyxLQUFLLENBQUMsR0FBVyxFQUFFLEdBQVcsRUFBRSxHQUFXO0lBQ2xELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBRUQsTUFBTSxPQUFPLHdC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QixHQUFHLE1BQU0sRUFBRSxpQkFBaUIsR0FBRyxRQUFRLENBQUMsQ0FBQztnQkFDbkYsYUFBYSxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUUsaUJBQWlCLEdBQUcsTUFBTSxFQUFFLGtCQUFrQixHQUFHLFNBQVMsQ0FBQyxDQUFDO2FBQ3RGO1lBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsR0FBRyxRQUFRLElBQUksRUFBRSxHQUFHLFNBQVMsSUFBSSxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQztnQkFDaEMsQ0FBQyxFQUFFLGFBQWE7Z0JBQ2hCLENBQUMsRUFBRSxhQUFhO2FBQ2pCLENBQUMsQ0FBQztRQUNMLENBQUMsRUFBQzs7Y0FFSSxVQUFVLEdBQWlCLEtBQUssQ0FDcEMsU0FBUyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsRUFDOUIsU0FBUyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FDbkMsQ0FBQyxTQUFTOzs7UUFBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxtQkFBYSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBQSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBQzdFLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMzQixVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDM0IsQ0FBQyxFQUFDO0lBQ0osQ0FBQztDQUNGOzs7SUF4TEMsa0RBQW1DOztJQUNuQyxtREFBcUM7Ozs7O0lBR25DLDZDQUFzQjs7Ozs7SUFDdEIsOENBQTZCOzs7OztJQUM3Qiw4Q0FBcUM7Ozs7O0lBQ3JDLDRDQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IERyYWdSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IG1lcmdlLCBTdWJzY3JpcHRpb24sIGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUG9pbnQgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wL2RyYWctcmVmJztcblxuZW51bSBjb3JuZXJzIHtcbiAgdG9wUmlnaHQgPSAndG9wUmlnaHQnLFxuICBib3R0b21SaWdodCA9ICdib3R0b21SaWdodCcsXG4gIGJvdHRvbUxlZnQgPSAnYm90dG9tTGVmdCcsXG4gIHRvcExlZnQgPSAndG9wTGVmdCcsXG59XG5lbnVtIGN1cnNvcnMge1xuICBuZXN3ID0gJ25lc3ctcmVzaXplJyxcbiAgbndzZSA9ICdud3NlLXJlc2l6ZScsXG59XG5lbnVtIHZlcnRpY2FsQWxpZ25tZW50IHtcbiAgdG9wID0gJ3RvcCcsXG4gIGJvdHRvbSA9ICdib3R0b20nLFxufVxuZW51bSBob3Jpem9udGFsQWxpZ25tZW50IHtcbiAgcmlnaHQgPSAncmlnaHQnLFxuICBsZWZ0ID0gJ2xlZnQnLFxufVxuXG5jb25zdCBjb3JuZXJXaWR0aDogc3RyaW5nID0gJzE2cHgnO1xuY29uc3Qgb2Zmc2V0OiBzdHJpbmcgPSAnMHB4JztcbmNvbnN0IG1pbldpZHRoOiBudW1iZXIgPSAyMDA7XG5jb25zdCBtaW5IZWlnaHQ6IG51bWJlciA9IDIwMDtcblxuZnVuY3Rpb24gZ2V0UGl4ZWxzKHNpemVTdHJpbmc6IHN0cmluZyk6IG51bWJlciB7XG4gIHJldHVybiBwYXJzZUZsb2F0KChzaXplU3RyaW5nIHx8ICcnKS5yZXBsYWNlKCdweCcsICcnKSk7XG59XG5cbmZ1bmN0aW9uIGNsYW1wKG1pbjogbnVtYmVyLCBudW06IG51bWJlciwgbWF4OiBudW1iZXIpOiBudW1iZXIge1xuICByZXR1cm4gTWF0aC5taW4oTWF0aC5tYXgobnVtLCBtaW4pLCBtYXgpO1xufVxuXG5leHBvcnQgY2xhc3MgUmVzaXphYmxlRHJhZ2dhYmxlRGlhbG9nIHtcbiAgY29ybmVyRWxlbWVudHM6IEhUTUxFbGVtZW50W10gPSBbXTtcbiAgcG9pbnRlckRvd25TdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2RvY3VtZW50OiBhbnksXG4gICAgcHJpdmF0ZSBfcmVuZGVyZXIyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBfZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8YW55PixcbiAgICBwcml2YXRlIF9kcmFnUmVmOiBEcmFnUmVmLFxuICApIHtcbiAgICB0aGlzLl9pbml0aWFsUG9zaXRpb25SZXNldCgpO1xuICAgIHRoaXMuX2F0dGFjaENvcm5lcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBhdHRhY2goKTogdm9pZCB7XG4gICAgdGhpcy5kZXRhY2goKTtcbiAgICB0aGlzLl9hdHRhY2hDb3JuZXJzKCk7XG4gIH1cblxuICBwdWJsaWMgZGV0YWNoKCk6IHZvaWQge1xuICAgIHRoaXMucG9pbnRlckRvd25TdWJzLmZvckVhY2goKHN1YjogU3Vic2NyaXB0aW9uKSA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XG4gICAgdGhpcy5wb2ludGVyRG93blN1YnMgPSBbXTtcbiAgICB0aGlzLmNvcm5lckVsZW1lbnRzLmZvckVhY2goKGVsZW06IEhUTUxFbGVtZW50KSA9PiB0aGlzLl9yZW5kZXJlcjIucmVtb3ZlQ2hpbGQodGhpcy5fZ2V0RGlhbG9nV3JhcHBlcigpLCBlbGVtKSk7XG4gICAgdGhpcy5jb3JuZXJFbGVtZW50cyA9IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RGlhbG9nV3JhcHBlcigpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuICg8SFRNTEVsZW1lbnQ+dGhpcy5fZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5fZGlhbG9nUmVmLmlkKSB8fCB7fSkucGFyZW50RWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFZpZXdwb3J0RGltZW5zaW9ucygpOiBDbGllbnRSZWN0IHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0RGlhbG9nV3JhcHBlcigpLnBhcmVudEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXREaWFsb2dXcmFwcGVyRGltZW5zaW9ucygpOiB7IHdpZHRoOiBudW1iZXI7IGhlaWdodDogbnVtYmVyIH0ge1xuICAgIGNvbnN0IGRpbWVuc2lvbnM6IENTU1N0eWxlRGVjbGFyYXRpb24gPSBnZXRDb21wdXRlZFN0eWxlKHRoaXMuX2dldERpYWxvZ1dyYXBwZXIoKSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHdpZHRoOiBnZXRQaXhlbHMoZGltZW5zaW9ucy53aWR0aCksXG4gICAgICBoZWlnaHQ6IGdldFBpeGVscyhkaW1lbnNpb25zLmhlaWdodCksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRpYWxQb3NpdGlvblJlc2V0KCk6IHZvaWQge1xuICAgIGNvbnN0IHsgcmlnaHQ6IHZpZXdwb3J0V2lkdGgsIGJvdHRvbTogdmlld3BvcnRIZWlnaHQgfTogQ2xpZW50UmVjdCA9IHRoaXMuX2dldFZpZXdwb3J0RGltZW5zaW9ucygpO1xuICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gdGhpcy5fZ2V0RGlhbG9nV3JhcHBlckRpbWVuc2lvbnMoKTtcbiAgICBjb25zdCB7XG4gICAgICBtYXJnaW5SaWdodDogb3JpZ2luYWxEaWFsb2dSaWdodCxcbiAgICAgIG1hcmdpbkxlZnQ6IG9yaWdpbmFsRGlhbG9nTGVmdCxcbiAgICAgIG1hcmdpbkJvdHRvbTogb3JpZ2luYWxEaWFsb2dCb3R0b20sXG4gICAgICBtYXJnaW5Ub3A6IG9yaWdpbmFsRGlhbG9nVG9wLFxuICAgIH0gPSB0aGlzLl9nZXREaWFsb2dXcmFwcGVyKCkuc3R5bGU7XG4gICAgbGV0IHg6IG51bWJlcjtcbiAgICBpZiAob3JpZ2luYWxEaWFsb2dMZWZ0KSB7XG4gICAgICB4ID0gZ2V0UGl4ZWxzKG9yaWdpbmFsRGlhbG9nTGVmdCk7XG4gICAgfSBlbHNlIGlmIChvcmlnaW5hbERpYWxvZ1JpZ2h0KSB7XG4gICAgICB4ID0gdmlld3BvcnRXaWR0aCAtIGdldFBpeGVscyhvcmlnaW5hbERpYWxvZ1JpZ2h0KSAtIHdpZHRoO1xuICAgIH0gZWxzZSB7XG4gICAgICB4ID0gKHZpZXdwb3J0V2lkdGggLSB3aWR0aCkgLyAyO1xuICAgIH1cbiAgICBsZXQgeTogbnVtYmVyO1xuICAgIGlmIChvcmlnaW5hbERpYWxvZ1RvcCkge1xuICAgICAgeSA9IGdldFBpeGVscyhvcmlnaW5hbERpYWxvZ1RvcCk7XG4gICAgfSBlbHNlIGlmIChvcmlnaW5hbERpYWxvZ0JvdHRvbSkge1xuICAgICAgeSA9IHZpZXdwb3J0SGVpZ2h0IC0gZ2V0UGl4ZWxzKG9yaWdpbmFsRGlhbG9nQm90dG9tKSAtIGhlaWdodDtcbiAgICB9IGVsc2Uge1xuICAgICAgeSA9ICh2aWV3cG9ydEhlaWdodCAtIGhlaWdodCkgLyAyO1xuICAgIH1cbiAgICAvLyB1c2UgZHJhZyByZWYncyBtZWNoYW5pc21zIGZvciBwb3NpdGlvbmluZyBpbnN0ZWFkIG9mIHRoZSBkaWFsb2cnc1xuICAgIHRoaXMuX2RpYWxvZ1JlZi51cGRhdGVQb3NpdGlvbih7IHRvcDogJzBweCcsIHJpZ2h0OiAnMHB4JywgYm90dG9tOiAnMHB4JywgbGVmdDogJzBweCcgfSk7XG4gICAgdGhpcy5fZHJhZ1JlZi5zZXRGcmVlRHJhZ1Bvc2l0aW9uKHsgeCwgeSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2F0dGFjaENvcm5lcnMoKTogdm9pZCB7XG4gICAgT2JqZWN0LnZhbHVlcyhjb3JuZXJzKS5mb3JFYWNoKChjb3JuZXI6IGNvcm5lcnMpID0+IHtcbiAgICAgIGNvbnN0IGVsZW1lbnQ6IEhUTUxFbGVtZW50ID0gdGhpcy5fcmVuZGVyZXIyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgdGhpcy5jb3JuZXJFbGVtZW50cyA9IFsuLi50aGlzLmNvcm5lckVsZW1lbnRzLCBlbGVtZW50XTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyMi5zZXRTdHlsZShlbGVtZW50LCAncG9zaXRpb24nLCAnYWJzb2x1dGUnKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyMi5zZXRTdHlsZShlbGVtZW50LCAnd2lkdGgnLCBjb3JuZXJXaWR0aCk7XG4gICAgICB0aGlzLl9yZW5kZXJlcjIuc2V0U3R5bGUoZWxlbWVudCwgJ2hlaWdodCcsIGNvcm5lcldpZHRoKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyMi5hcHBlbmRDaGlsZCh0aGlzLl9nZXREaWFsb2dXcmFwcGVyKCksIGVsZW1lbnQpO1xuXG4gICAgICBsZXQgY3Vyc29yOiBjdXJzb3JzO1xuICAgICAgbGV0IHRvcEJvdHRvbTogdmVydGljYWxBbGlnbm1lbnQ7XG4gICAgICBsZXQgcmlnaHRMZWZ0OiBob3Jpem9udGFsQWxpZ25tZW50O1xuXG4gICAgICBpZiAoY29ybmVyID09PSBjb3JuZXJzLnRvcFJpZ2h0KSB7XG4gICAgICAgIGN1cnNvciA9IGN1cnNvcnMubmVzdztcbiAgICAgICAgdG9wQm90dG9tID0gdmVydGljYWxBbGlnbm1lbnQudG9wO1xuICAgICAgICByaWdodExlZnQgPSBob3Jpem9udGFsQWxpZ25tZW50LnJpZ2h0O1xuICAgICAgfSBlbHNlIGlmIChjb3JuZXIgPT09IGNvcm5lcnMuYm90dG9tUmlnaHQpIHtcbiAgICAgICAgY3Vyc29yID0gY3Vyc29ycy5ud3NlO1xuICAgICAgICB0b3BCb3R0b20gPSB2ZXJ0aWNhbEFsaWdubWVudC5ib3R0b207XG4gICAgICAgIHJpZ2h0TGVmdCA9IGhvcml6b250YWxBbGlnbm1lbnQucmlnaHQ7XG5cbiAgICAgICAgY29uc3QgaWNvbjogSFRNTEVsZW1lbnQgPSB0aGlzLl9yZW5kZXJlcjIuY3JlYXRlRWxlbWVudCgnaScpO1xuICAgICAgICB0aGlzLl9yZW5kZXJlcjIuYWRkQ2xhc3MoaWNvbiwgJ21hdGVyaWFsLWljb25zJyk7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyMi5hcHBlbmRDaGlsZChpY29uLCB0aGlzLl9yZW5kZXJlcjIuY3JlYXRlVGV4dCgnZmlsdGVyX2xpc3QnKSk7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyMi5hcHBlbmRDaGlsZChlbGVtZW50LCBpY29uKTtcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIyLnNldFN0eWxlKGljb24sICd0cmFuc2Zvcm0nLCBgcm90YXRlKCR7MzE1fWRlZykgdHJhbnNsYXRlKDBweCwgJHtvZmZzZXR9KWApO1xuICAgICAgICB0aGlzLl9yZW5kZXJlcjIuc2V0U3R5bGUoaWNvbiwgJ2ZvbnQtc2l6ZScsIGNvcm5lcldpZHRoKTtcbiAgICAgIH0gZWxzZSBpZiAoY29ybmVyID09PSBjb3JuZXJzLmJvdHRvbUxlZnQpIHtcbiAgICAgICAgY3Vyc29yID0gY3Vyc29ycy5uZXN3O1xuICAgICAgICB0b3BCb3R0b20gPSB2ZXJ0aWNhbEFsaWdubWVudC5ib3R0b207XG4gICAgICAgIHJpZ2h0TGVmdCA9IGhvcml6b250YWxBbGlnbm1lbnQubGVmdDtcbiAgICAgIH0gZWxzZSBpZiAoY29ybmVyID09PSBjb3JuZXJzLnRvcExlZnQpIHtcbiAgICAgICAgY3Vyc29yID0gY3Vyc29ycy5ud3NlO1xuICAgICAgICB0b3BCb3R0b20gPSB2ZXJ0aWNhbEFsaWdubWVudC50b3A7XG4gICAgICAgIHJpZ2h0TGVmdCA9IGhvcml6b250YWxBbGlnbm1lbnQubGVmdDtcbiAgICAgIH1cbiAgICAgIHRoaXMuX3JlbmRlcmVyMi5zZXRTdHlsZShlbGVtZW50LCB0b3BCb3R0b20sIG9mZnNldCk7XG4gICAgICB0aGlzLl9yZW5kZXJlcjIuc2V0U3R5bGUoZWxlbWVudCwgcmlnaHRMZWZ0LCBvZmZzZXQpO1xuICAgICAgdGhpcy5fcmVuZGVyZXIyLnNldFN0eWxlKGVsZW1lbnQsICdjdXJzb3InLCBjdXJzb3IpO1xuXG4gICAgICBjb25zdCBwb2ludGVyRG93blN1YjogU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KGVsZW1lbnQsICdwb2ludGVyZG93bicpLnN1YnNjcmliZSgoZXZlbnQ6IFBvaW50ZXJFdmVudCkgPT4ge1xuICAgICAgICB0aGlzLl9oYW5kbGVNb3VzZURvd24oZXZlbnQsIGNvcm5lcik7XG4gICAgICB9KTtcbiAgICAgIHRoaXMucG9pbnRlckRvd25TdWJzID0gWy4uLnRoaXMucG9pbnRlckRvd25TdWJzLCBwb2ludGVyRG93blN1Yl07XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVNb3VzZURvd24oZXZlbnQ6IFBvaW50ZXJFdmVudCwgY29ybmVyOiBjb3JuZXJzKTogdm9pZCB7XG4gICAgdGhpcy5fcmVuZGVyZXIyLnNldFN0eWxlKDxIVE1MRWxlbWVudD50aGlzLl9kb2N1bWVudC5ib2R5LCAndXNlci1zZWxlY3QnLCAnbm9uZScpO1xuICAgIGNvbnN0IHsgd2lkdGg6IG9yaWdpbmFsV2lkdGgsIGhlaWdodDogb3JpZ2luYWxIZWlnaHQgfSA9IHRoaXMuX2dldERpYWxvZ1dyYXBwZXJEaW1lbnNpb25zKCk7XG4gICAgY29uc3Qgb3JpZ2luYWxNb3VzZVg6IG51bWJlciA9IGV2ZW50LnBhZ2VYO1xuICAgIGNvbnN0IG9yaWdpbmFsTW91c2VZOiBudW1iZXIgPSBldmVudC5wYWdlWTtcbiAgICBjb25zdCB7IHg6IGN1cnJlbnRUcmFuc2Zvcm1YLCB5OiBjdXJyZW50VHJhbnNmb3JtWSB9OiBQb2ludCA9IHRoaXMuX2RyYWdSZWYuZ2V0RnJlZURyYWdQb3NpdGlvbigpO1xuICAgIGNvbnN0IHsgYm90dG9tOiBkaXN0YW5jZUZyb21Cb3R0b20sIHJpZ2h0OiBkaXN0YW5jZUZyb21SaWdodCB9OiBDbGllbnRSZWN0ID1cbiAgICAgIHRoaXMuX2dldERpYWxvZ1dyYXBwZXIoKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCB7IHJpZ2h0OiB2aWV3cG9ydFdpZHRoLCBib3R0b206IHZpZXdwb3J0SGVpZ2h0IH06IENsaWVudFJlY3QgPSB0aGlzLl9nZXRWaWV3cG9ydERpbWVuc2lvbnMoKTtcblxuICAgIGNvbnN0IG1vdXNlTW92ZVN1YjogU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KHdpbmRvdywgJ3BvaW50ZXJtb3ZlJykuc3Vic2NyaWJlKChlOiBQb2ludGVyRXZlbnQpID0+IHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTsgLy8gcHJldmVudCBoaWdobGlnaHRpbmcgb2YgdGV4dCB3aGVuIGRyYWdnaW5nXG5cbiAgICAgIGNvbnN0IHlEZWx0YTogbnVtYmVyID0gY2xhbXAoMCwgZS5wYWdlWSwgdmlld3BvcnRIZWlnaHQpIC0gb3JpZ2luYWxNb3VzZVk7XG4gICAgICBjb25zdCB4RGVsdGE6IG51bWJlciA9IGNsYW1wKDAsIGUucGFnZVgsIHZpZXdwb3J0V2lkdGgpIC0gb3JpZ2luYWxNb3VzZVg7XG4gICAgICBsZXQgbmV3SGVpZ2h0OiBudW1iZXI7XG4gICAgICBsZXQgbmV3V2lkdGg6IG51bWJlcjtcbiAgICAgIGxldCBuZXdUcmFuc2Zvcm1ZOiBudW1iZXIgPSAwO1xuICAgICAgbGV0IG5ld1RyYW5zZm9ybVg6IG51bWJlciA9IDA7XG5cbiAgICAgIC8vIHRvcCByaWdodFxuICAgICAgaWYgKGNvcm5lciA9PT0gY29ybmVycy50b3BSaWdodCkge1xuICAgICAgICBuZXdIZWlnaHQgPSBjbGFtcChtaW5IZWlnaHQsIG9yaWdpbmFsSGVpZ2h0IC0geURlbHRhLCB2aWV3cG9ydEhlaWdodCk7XG4gICAgICAgIG5ld1dpZHRoID0gY2xhbXAobWluV2lkdGgsIG9yaWdpbmFsV2lkdGggKyB4RGVsdGEsIHZpZXdwb3J0V2lkdGgpO1xuICAgICAgICBuZXdUcmFuc2Zvcm1ZID0gY2xhbXAoMCwgY3VycmVudFRyYW5zZm9ybVkgKyB5RGVsdGEsIGRpc3RhbmNlRnJvbUJvdHRvbSAtIG5ld0hlaWdodCk7XG4gICAgICAgIG5ld1RyYW5zZm9ybVggPSBjdXJyZW50VHJhbnNmb3JtWDtcbiAgICAgIH1cbiAgICAgIC8vIGJvdHRvbSByaWdodFxuICAgICAgZWxzZSBpZiAoY29ybmVyID09PSBjb3JuZXJzLmJvdHRvbVJpZ2h0KSB7XG4gICAgICAgIG5ld0hlaWdodCA9IGNsYW1wKG1pbkhlaWdodCwgb3JpZ2luYWxIZWlnaHQgKyB5RGVsdGEsIHZpZXdwb3J0SGVpZ2h0KTtcbiAgICAgICAgbmV3V2lkdGggPSBjbGFtcChtaW5XaWR0aCwgb3JpZ2luYWxXaWR0aCArIHhEZWx0YSwgdmlld3BvcnRXaWR0aCk7XG4gICAgICAgIG5ld1RyYW5zZm9ybVkgPSBjdXJyZW50VHJhbnNmb3JtWTtcbiAgICAgICAgbmV3VHJhbnNmb3JtWCA9IGN1cnJlbnRUcmFuc2Zvcm1YO1xuICAgICAgfVxuICAgICAgLy8gYm90dG9tIGxlZnRcbiAgICAgIGVsc2UgaWYgKGNvcm5lciA9PT0gY29ybmVycy5ib3R0b21MZWZ0KSB7XG4gICAgICAgIG5ld0hlaWdodCA9IGNsYW1wKG1pbkhlaWdodCwgb3JpZ2luYWxIZWlnaHQgKyB5RGVsdGEsIHZpZXdwb3J0SGVpZ2h0KTtcbiAgICAgICAgbmV3V2lkdGggPSBjbGFtcChtaW5XaWR0aCwgb3JpZ2luYWxXaWR0aCAtIHhEZWx0YSwgdmlld3BvcnRXaWR0aCk7XG4gICAgICAgIG5ld1RyYW5zZm9ybVkgPSBjdXJyZW50VHJhbnNmb3JtWTtcbiAgICAgICAgbmV3VHJhbnNmb3JtWCA9IGNsYW1wKDAsIGN1cnJlbnRUcmFuc2Zvcm1YICsgeERlbHRhLCBkaXN0YW5jZUZyb21SaWdodCAtIG5ld1dpZHRoKTtcbiAgICAgIH1cbiAgICAgIC8vIHRvcCBsZWZ0XG4gICAgICBlbHNlIGlmIChjb3JuZXIgPT09IGNvcm5lcnMudG9wTGVmdCkge1xuICAgICAgICBuZXdIZWlnaHQgPSBjbGFtcChtaW5IZWlnaHQsIG9yaWdpbmFsSGVpZ2h0IC0geURlbHRhLCB2aWV3cG9ydEhlaWdodCk7XG4gICAgICAgIG5ld1dpZHRoID0gY2xhbXAobWluV2lkdGgsIG9yaWdpbmFsV2lkdGggLSB4RGVsdGEsIHZpZXdwb3J0V2lkdGgpO1xuXG4gICAgICAgIG5ld1RyYW5zZm9ybVggPSBjbGFtcCgwLCBjdXJyZW50VHJhbnNmb3JtWCArIHhEZWx0YSwgZGlzdGFuY2VGcm9tUmlnaHQgLSBuZXdXaWR0aCk7XG4gICAgICAgIG5ld1RyYW5zZm9ybVkgPSBjbGFtcCgwLCBjdXJyZW50VHJhbnNmb3JtWSArIHlEZWx0YSwgZGlzdGFuY2VGcm9tQm90dG9tIC0gbmV3SGVpZ2h0KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2RpYWxvZ1JlZi51cGRhdGVTaXplKGAke25ld1dpZHRofXB4YCwgYCR7bmV3SGVpZ2h0fXB4YCk7XG4gICAgICB0aGlzLl9kcmFnUmVmLnNldEZyZWVEcmFnUG9zaXRpb24oe1xuICAgICAgICB4OiBuZXdUcmFuc2Zvcm1YLFxuICAgICAgICB5OiBuZXdUcmFuc2Zvcm1ZLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBtb3VzZVVwU3ViOiBTdWJzY3JpcHRpb24gPSBtZXJnZShcbiAgICAgIGZyb21FdmVudCh3aW5kb3csICdwb2ludGVydXAnKSxcbiAgICAgIGZyb21FdmVudCh3aW5kb3csICdwb2ludGVyY2FuY2VsJyksXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5fcmVuZGVyZXIyLnJlbW92ZVN0eWxlKDxIVE1MRWxlbWVudD50aGlzLl9kb2N1bWVudC5ib2R5LCAndXNlci1zZWxlY3QnKTtcbiAgICAgIG1vdXNlTW92ZVN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgbW91c2VVcFN1Yi51bnN1YnNjcmliZSgpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=