@covalent/core 4.0.0 → 4.1.0-develop.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 (613) hide show
  1. package/README.md +5 -4
  2. package/breadcrumbs/README.md +21 -17
  3. package/breadcrumbs/breadcrumb/breadcrumb.component.d.ts +6 -1
  4. package/breadcrumbs/breadcrumbs.component.d.ts +4 -0
  5. package/breadcrumbs/breadcrumbs.module.d.ts +8 -0
  6. package/breadcrumbs/covalent-core-breadcrumbs.d.ts +2 -1
  7. package/breadcrumbs/package.json +6 -7
  8. package/breadcrumbs/{public-api.d.ts → public_api.d.ts} +0 -0
  9. package/common/README.md +3 -0
  10. package/common/_common-theme.scss +3 -1
  11. package/common/behaviors/disable-ripple.mixin.d.ts +1 -1
  12. package/common/behaviors/disabled.mixin.d.ts +1 -1
  13. package/common/common.module.d.ts +15 -0
  14. package/common/covalent-core-common.d.ts +2 -3
  15. package/common/directives/fullscreen/fullscreen.directive.d.ts +3 -0
  16. package/common/forms/auto-trim/auto-trim.directive.d.ts +3 -0
  17. package/common/package.json +6 -7
  18. package/common/pipes/bytes/bytes.pipe.d.ts +3 -0
  19. package/common/pipes/decimal-bytes/decimal-bytes.pipe.d.ts +3 -0
  20. package/common/pipes/digits/digits.pipe.d.ts +3 -0
  21. package/common/pipes/time-ago/time-ago.pipe.d.ts +3 -0
  22. package/common/pipes/time-difference/time-difference.pipe.d.ts +3 -0
  23. package/common/pipes/time-until/time-until.pipe.d.ts +3 -0
  24. package/common/pipes/truncate/truncate.pipe.d.ts +4 -1
  25. package/common/{public-api.d.ts → public_api.d.ts} +0 -0
  26. package/common/services/icon.service.d.ts +3 -0
  27. package/common/services/router-path.service.d.ts +3 -0
  28. package/common/styles/font/README.md +4 -2
  29. package/covalent-core.d.ts +2 -1
  30. package/dialogs/README.md +38 -30
  31. package/dialogs/_dialog-theme.scss +1 -0
  32. package/dialogs/alert-dialog/alert-dialog.component.d.ts +6 -3
  33. package/dialogs/confirm-dialog/confirm-dialog.component.d.ts +5 -2
  34. package/dialogs/covalent-core-dialogs.d.ts +2 -2
  35. package/dialogs/dialog.component.d.ts +9 -0
  36. package/dialogs/dialogs.module.d.ts +17 -0
  37. package/dialogs/package.json +6 -7
  38. package/dialogs/prompt-dialog/prompt-dialog.component.d.ts +6 -3
  39. package/dialogs/{public-api.d.ts → public_api.d.ts} +1 -0
  40. package/dialogs/services/dialog.service.d.ts +3 -0
  41. package/dialogs/src/README.md +223 -0
  42. package/dialogs/window-dialog/window-dialog.component.d.ts +8 -5
  43. package/dynamic-menu/README.md +6 -6
  44. package/dynamic-menu/covalent-core-dynamic-menu.d.ts +2 -2
  45. package/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.d.ts +4 -1
  46. package/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.d.ts +4 -1
  47. package/dynamic-menu/dynamic-menu.component.d.ts +4 -22
  48. package/dynamic-menu/dynamic-menu.menu.d.ts +22 -0
  49. package/dynamic-menu/dynamic-menu.module.d.ts +13 -0
  50. package/dynamic-menu/package.json +6 -7
  51. package/dynamic-menu/public_api.d.ts +2 -0
  52. package/esm2020/breadcrumbs/breadcrumb/breadcrumb.component.mjs +92 -0
  53. package/esm2020/breadcrumbs/breadcrumbs.component.mjs +134 -0
  54. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +20 -0
  55. package/esm2020/breadcrumbs/covalent-core-breadcrumbs.mjs +5 -0
  56. package/esm2020/breadcrumbs/public_api.mjs +4 -0
  57. package/esm2020/common/animations/bounce/bounce.animation.mjs +70 -0
  58. package/esm2020/common/animations/collapse/collapse.animation.mjs +51 -0
  59. package/esm2020/common/animations/common/interfaces.mjs +2 -0
  60. package/esm2020/common/animations/fade/fadeInOut.animation.mjs +37 -0
  61. package/esm2020/common/animations/flash/flash.animation.mjs +34 -0
  62. package/esm2020/common/animations/headshake/headshake.animation.mjs +47 -0
  63. package/esm2020/common/animations/jello/jello.animation.mjs +59 -0
  64. package/esm2020/common/animations/pulse/pulse.animation.mjs +32 -0
  65. package/esm2020/common/animations/rotate/rotate.animation.mjs +30 -0
  66. package/esm2020/common/behaviors/control-value-accesor.mixin.mjs +41 -0
  67. package/esm2020/common/behaviors/disable-ripple.mixin.mjs +24 -0
  68. package/esm2020/common/behaviors/disabled.mixin.mjs +24 -0
  69. package/esm2020/common/common.module.mjs +63 -0
  70. package/esm2020/common/covalent-core-common.mjs +5 -0
  71. package/esm2020/common/directives/fullscreen/fullscreen.directive.mjs +85 -0
  72. package/esm2020/common/forms/auto-trim/auto-trim.directive.mjs +36 -0
  73. package/esm2020/common/forms/validators/validators.mjs +29 -0
  74. package/esm2020/common/functions/clipboard.mjs +23 -0
  75. package/esm2020/common/functions/convert.mjs +84 -0
  76. package/esm2020/common/functions/download.mjs +75 -0
  77. package/esm2020/common/functions/file.mjs +16 -0
  78. package/esm2020/common/pipes/bytes/bytes.pipe.mjs +42 -0
  79. package/esm2020/common/pipes/decimal-bytes/decimal-bytes.pipe.mjs +42 -0
  80. package/esm2020/common/pipes/digits/digits.pipe.mjs +39 -0
  81. package/esm2020/common/pipes/time-ago/time-ago.pipe.mjs +72 -0
  82. package/esm2020/common/pipes/time-difference/time-difference.pipe.mjs +51 -0
  83. package/esm2020/common/pipes/time-until/time-until.pipe.mjs +72 -0
  84. package/esm2020/common/pipes/truncate/truncate.pipe.mjs +27 -0
  85. package/esm2020/common/public_api.mjs +39 -0
  86. package/esm2020/common/services/icon.service.mjs +1089 -0
  87. package/esm2020/common/services/router-path.service.mjs +29 -0
  88. package/esm2020/covalent-core.mjs +5 -0
  89. package/esm2020/dialogs/alert-dialog/alert-dialog.component.mjs +23 -0
  90. package/esm2020/dialogs/confirm-dialog/confirm-dialog.component.mjs +28 -0
  91. package/esm2020/dialogs/covalent-core-dialogs.mjs +5 -0
  92. package/esm2020/dialogs/dialog.component.mjs +56 -0
  93. package/esm2020/dialogs/dialogs.module.mjs +89 -0
  94. package/esm2020/dialogs/prompt-dialog/prompt-dialog.component.mjs +46 -0
  95. package/esm2020/dialogs/public_api.mjs +9 -0
  96. package/esm2020/dialogs/resizable-draggable-dialog/resizable-draggable-dialog.mjs +216 -0
  97. package/esm2020/dialogs/services/dialog.service.mjs +171 -0
  98. package/esm2020/dialogs/window-dialog/window-dialog.component.mjs +38 -0
  99. package/esm2020/dynamic-menu/covalent-core-dynamic-menu.mjs +5 -0
  100. package/esm2020/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.mjs +30 -0
  101. package/esm2020/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.mjs +24 -0
  102. package/esm2020/dynamic-menu/dynamic-menu.component.mjs +28 -0
  103. package/esm2020/dynamic-menu/dynamic-menu.menu.mjs +2 -0
  104. package/esm2020/dynamic-menu/dynamic-menu.module.mjs +57 -0
  105. package/esm2020/dynamic-menu/public_api.mjs +6 -0
  106. package/esm2020/file/covalent-core-file.mjs +5 -0
  107. package/esm2020/file/directives/file-drop.directive.mjs +147 -0
  108. package/esm2020/file/directives/file-select.directive.mjs +77 -0
  109. package/esm2020/file/file-input/file-input.component.mjs +110 -0
  110. package/esm2020/file/file-upload/file-upload.component.mjs +174 -0
  111. package/esm2020/file/file.module.mjs +58 -0
  112. package/esm2020/file/public_api.mjs +7 -0
  113. package/esm2020/file/services/file.service.mjs +64 -0
  114. package/esm2020/json-formatter/collapse.animation.mjs +51 -0
  115. package/esm2020/json-formatter/covalent-core-json-formatter.mjs +5 -0
  116. package/esm2020/json-formatter/json-formatter.component.mjs +217 -0
  117. package/esm2020/json-formatter/json-formatter.module.mjs +20 -0
  118. package/esm2020/json-formatter/public_api.mjs +3 -0
  119. package/esm2020/layout/covalent-core-layout.mjs +5 -0
  120. package/esm2020/layout/layout-card-over/layout-card-over.component.mjs +40 -0
  121. package/esm2020/layout/layout-footer/layout-footer.component.mjs +33 -0
  122. package/esm2020/layout/layout-manage-list/layout-manage-list.component.mjs +93 -0
  123. package/esm2020/layout/layout-manage-list/layout-manage-list.directives.mjs +84 -0
  124. package/esm2020/layout/layout-nav/layout-nav.component.mjs +50 -0
  125. package/esm2020/layout/layout-nav-list/layout-nav-list.component.mjs +128 -0
  126. package/esm2020/layout/layout-nav-list/layout-nav-list.directives.mjs +84 -0
  127. package/esm2020/layout/layout-toggle.class.mjs +92 -0
  128. package/esm2020/layout/layout.component.mjs +92 -0
  129. package/esm2020/layout/layout.directives.mjs +85 -0
  130. package/esm2020/layout/layout.module.mjs +117 -0
  131. package/esm2020/layout/navigation-drawer/navigation-drawer.component.mjs +161 -0
  132. package/esm2020/layout/public_api.mjs +13 -0
  133. package/esm2020/menu/covalent-core-menu.mjs +5 -0
  134. package/esm2020/menu/menu.component.mjs +12 -0
  135. package/esm2020/menu/menu.module.mjs +21 -0
  136. package/esm2020/menu/public_api.mjs +3 -0
  137. package/esm2020/message/collapse.animation.mjs +51 -0
  138. package/esm2020/message/covalent-core-message.mjs +5 -0
  139. package/esm2020/message/message.component.mjs +203 -0
  140. package/esm2020/message/message.module.mjs +25 -0
  141. package/esm2020/message/public_api.mjs +3 -0
  142. package/esm2020/public_api.mjs +2 -0
  143. package/esm2020/search/covalent-core-search.mjs +5 -0
  144. package/esm2020/search/public_api.mjs +4 -0
  145. package/esm2020/search/search-box/search-box.component.mjs +194 -0
  146. package/esm2020/search/search-input/search-input.component.mjs +203 -0
  147. package/esm2020/search/search.module.mjs +39 -0
  148. package/esm2020/side-sheet/covalent-core-side-sheet.mjs +5 -0
  149. package/esm2020/side-sheet/public_api.mjs +6 -0
  150. package/esm2020/side-sheet/side-sheet-container.mjs +274 -0
  151. package/esm2020/side-sheet/side-sheet-ref.mjs +21 -0
  152. package/esm2020/side-sheet/side-sheet.animation.mjs +12 -0
  153. package/esm2020/side-sheet/side-sheet.config.mjs +4 -0
  154. package/esm2020/side-sheet/side-sheet.content-directives.mjs +201 -0
  155. package/esm2020/side-sheet/side-sheet.mjs +221 -0
  156. package/esm2020/side-sheet/side-sheet.module.mjs +45 -0
  157. package/esm2020/user-profile/covalent-core-user-profile.mjs +5 -0
  158. package/esm2020/user-profile/public_api.mjs +4 -0
  159. package/esm2020/user-profile/user-profile-menu/user-profile-menu.component.mjs +24 -0
  160. package/esm2020/user-profile/user-profile.component.mjs +19 -0
  161. package/esm2020/user-profile/user-profile.module.mjs +44 -0
  162. package/fesm2015/covalent-core-breadcrumbs.mjs +246 -0
  163. package/fesm2015/covalent-core-breadcrumbs.mjs.map +1 -0
  164. package/fesm2015/covalent-core-common.mjs +2281 -0
  165. package/fesm2015/covalent-core-common.mjs.map +1 -0
  166. package/fesm2015/covalent-core-dialogs.mjs +639 -0
  167. package/fesm2015/covalent-core-dialogs.mjs.map +1 -0
  168. package/fesm2015/covalent-core-dynamic-menu.mjs +128 -0
  169. package/fesm2015/covalent-core-dynamic-menu.mjs.map +1 -0
  170. package/fesm2015/covalent-core-file.mjs +613 -0
  171. package/fesm2015/covalent-core-file.mjs.map +1 -0
  172. package/fesm2015/covalent-core-json-formatter.mjs +298 -0
  173. package/fesm2015/covalent-core-json-formatter.mjs.map +1 -0
  174. package/fesm2015/covalent-core-layout.mjs +1024 -0
  175. package/fesm2015/covalent-core-layout.mjs.map +1 -0
  176. package/fesm2015/covalent-core-menu.mjs +37 -0
  177. package/fesm2015/covalent-core-menu.mjs.map +1 -0
  178. package/fesm2015/covalent-core-message.mjs +284 -0
  179. package/fesm2015/covalent-core-message.mjs.map +1 -0
  180. package/fesm2015/covalent-core-search.mjs +428 -0
  181. package/fesm2015/covalent-core-search.mjs.map +1 -0
  182. package/fesm2015/covalent-core-side-sheet.mjs +762 -0
  183. package/fesm2015/covalent-core-side-sheet.mjs.map +1 -0
  184. package/fesm2015/covalent-core-user-profile.mjs +86 -0
  185. package/fesm2015/covalent-core-user-profile.mjs.map +1 -0
  186. package/fesm2015/covalent-core.mjs +4 -0
  187. package/fesm2015/covalent-core.mjs.map +1 -0
  188. package/fesm2020/covalent-core-breadcrumbs.mjs +246 -0
  189. package/fesm2020/covalent-core-breadcrumbs.mjs.map +1 -0
  190. package/{fesm2015/covalent-core-common.js → fesm2020/covalent-core-common.mjs} +317 -813
  191. package/fesm2020/covalent-core-common.mjs.map +1 -0
  192. package/fesm2020/covalent-core-dialogs.mjs +634 -0
  193. package/fesm2020/covalent-core-dialogs.mjs.map +1 -0
  194. package/fesm2020/covalent-core-dynamic-menu.mjs +128 -0
  195. package/fesm2020/covalent-core-dynamic-menu.mjs.map +1 -0
  196. package/fesm2020/covalent-core-file.mjs +607 -0
  197. package/fesm2020/covalent-core-file.mjs.map +1 -0
  198. package/fesm2020/covalent-core-json-formatter.mjs +290 -0
  199. package/fesm2020/covalent-core-json-formatter.mjs.map +1 -0
  200. package/fesm2020/covalent-core-layout.mjs +1000 -0
  201. package/fesm2020/covalent-core-layout.mjs.map +1 -0
  202. package/fesm2020/covalent-core-menu.mjs +37 -0
  203. package/fesm2020/covalent-core-menu.mjs.map +1 -0
  204. package/fesm2020/covalent-core-message.mjs +282 -0
  205. package/fesm2020/covalent-core-message.mjs.map +1 -0
  206. package/fesm2020/covalent-core-search.mjs +425 -0
  207. package/fesm2020/covalent-core-search.mjs.map +1 -0
  208. package/fesm2020/covalent-core-side-sheet.mjs +757 -0
  209. package/fesm2020/covalent-core-side-sheet.mjs.map +1 -0
  210. package/fesm2020/covalent-core-user-profile.mjs +86 -0
  211. package/fesm2020/covalent-core-user-profile.mjs.map +1 -0
  212. package/fesm2020/covalent-core.mjs +4 -0
  213. package/fesm2020/covalent-core.mjs.map +1 -0
  214. package/file/_file-theme.scss +3 -1
  215. package/file/covalent-core-file.d.ts +2 -1
  216. package/file/directives/file-drop.directive.d.ts +8 -6
  217. package/file/directives/file-select.directive.d.ts +5 -2
  218. package/file/file-input/file-input.component.d.ts +10 -5
  219. package/file/file-upload/file-upload.component.d.ts +18 -8
  220. package/file/file.module.d.ts +13 -0
  221. package/file/package.json +6 -7
  222. package/file/{public-api.d.ts → public_api.d.ts} +0 -0
  223. package/file/services/file.service.d.ts +3 -0
  224. package/file/{file-input → src/file-input}/README.md +46 -37
  225. package/file/{file-upload → src/file-upload}/README.md +36 -27
  226. package/json-formatter/README.md +8 -8
  227. package/json-formatter/_json-formatter-theme.scss +10 -0
  228. package/json-formatter/collapse.animation.d.ts +24 -0
  229. package/json-formatter/covalent-core-json-formatter.d.ts +2 -1
  230. package/json-formatter/json-formatter.component.d.ts +7 -4
  231. package/json-formatter/json-formatter.module.d.ts +8 -0
  232. package/json-formatter/package.json +6 -7
  233. package/json-formatter/{public-api.d.ts → public_api.d.ts} +0 -0
  234. package/layout/README.md +48 -50
  235. package/layout/_layout-theme.scss +12 -0
  236. package/layout/covalent-core-layout.d.ts +2 -1
  237. package/layout/layout-card-over/layout-card-over.component.d.ts +6 -3
  238. package/layout/layout-footer/layout-footer.component.d.ts +6 -3
  239. package/layout/layout-manage-list/layout-manage-list.component.d.ts +7 -4
  240. package/layout/layout-manage-list/layout-manage-list.directives.d.ts +9 -2
  241. package/layout/layout-nav/layout-nav.component.d.ts +8 -5
  242. package/layout/layout-nav-list/layout-nav-list.component.d.ts +12 -9
  243. package/layout/layout-nav-list/layout-nav-list.directives.d.ts +9 -2
  244. package/layout/layout-toggle.class.d.ts +4 -1
  245. package/layout/layout.component.d.ts +7 -4
  246. package/layout/layout.directives.d.ts +9 -2
  247. package/layout/layout.module.d.ts +23 -0
  248. package/layout/navigation-drawer/navigation-drawer.component.d.ts +17 -10
  249. package/layout/package.json +6 -7
  250. package/layout/{public-api.d.ts → public_api.d.ts} +0 -0
  251. package/layout/{layout-card-over → src/layout-card-over}/README.md +19 -17
  252. package/layout/{layout-manage-list → src/layout-manage-list}/README.md +24 -28
  253. package/layout/src/layout-nav/README.md +50 -0
  254. package/layout/{layout-nav-list → src/layout-nav-list}/README.md +44 -40
  255. package/menu/covalent-core-menu.d.ts +2 -1
  256. package/menu/menu.component.d.ts +3 -0
  257. package/menu/menu.module.d.ts +8 -0
  258. package/menu/package.json +6 -7
  259. package/menu/{public-api.d.ts → public_api.d.ts} +0 -0
  260. package/message/README.md +26 -18
  261. package/message/_message-theme.scss +3 -0
  262. package/message/collapse.animation.d.ts +24 -0
  263. package/message/covalent-core-message.d.ts +2 -1
  264. package/message/message.component.d.ts +9 -4
  265. package/message/message.module.d.ts +7 -0
  266. package/message/package.json +6 -7
  267. package/message/{public-api.d.ts → public_api.d.ts} +0 -0
  268. package/package.json +129 -37
  269. package/{index.d.ts → public_api.d.ts} +0 -0
  270. package/search/README.md +74 -73
  271. package/search/covalent-core-search.d.ts +2 -1
  272. package/search/package.json +6 -7
  273. package/search/{public-api.d.ts → public_api.d.ts} +0 -0
  274. package/search/search-box/search-box.component.d.ts +12 -5
  275. package/search/search-input/search-input.component.d.ts +12 -5
  276. package/search/search.module.d.ts +11 -0
  277. package/search/src/search-box/README.md +73 -0
  278. package/search/src/search-input/README.md +74 -0
  279. package/side-sheet/README.md +3 -5
  280. package/side-sheet/{side-sheet.theme.scss → _side-sheet.theme.scss} +0 -0
  281. package/side-sheet/covalent-core-side-sheet.d.ts +2 -3
  282. package/side-sheet/package.json +6 -7
  283. package/side-sheet/{public-api.d.ts → public_api.d.ts} +0 -0
  284. package/side-sheet/side-sheet-container.d.ts +21 -5
  285. package/side-sheet/side-sheet.content-directives.d.ts +23 -6
  286. package/side-sheet/side-sheet.d.ts +7 -2
  287. package/side-sheet/side-sheet.module.d.ts +9 -0
  288. package/user-profile/README.md +5 -5
  289. package/user-profile/covalent-core-user-profile.d.ts +2 -1
  290. package/user-profile/package.json +6 -7
  291. package/user-profile/user-profile-menu/user-profile-menu.component.d.ts +5 -2
  292. package/user-profile/user-profile.component.d.ts +5 -2
  293. package/user-profile/user-profile.module.d.ts +12 -0
  294. package/breadcrumbs/breadcrumb/breadcrumb.component.scss +0 -22
  295. package/breadcrumbs/breadcrumbs.component.scss +0 -7
  296. package/breadcrumbs/covalent-core-breadcrumbs.metadata.json +0 -1
  297. package/breadcrumbs/index.d.ts +0 -1
  298. package/bundles/covalent-core-breadcrumbs.umd.js +0 -490
  299. package/bundles/covalent-core-breadcrumbs.umd.js.map +0 -1
  300. package/bundles/covalent-core-breadcrumbs.umd.min.js +0 -2
  301. package/bundles/covalent-core-breadcrumbs.umd.min.js.map +0 -1
  302. package/bundles/covalent-core-common.umd.js +0 -3188
  303. package/bundles/covalent-core-common.umd.js.map +0 -1
  304. package/bundles/covalent-core-common.umd.min.js +0 -17
  305. package/bundles/covalent-core-common.umd.min.js.map +0 -1
  306. package/bundles/covalent-core-dialogs.umd.js +0 -1318
  307. package/bundles/covalent-core-dialogs.umd.js.map +0 -1
  308. package/bundles/covalent-core-dialogs.umd.min.js +0 -2
  309. package/bundles/covalent-core-dialogs.umd.min.js.map +0 -1
  310. package/bundles/covalent-core-dynamic-menu.umd.js +0 -215
  311. package/bundles/covalent-core-dynamic-menu.umd.js.map +0 -1
  312. package/bundles/covalent-core-dynamic-menu.umd.min.js +0 -2
  313. package/bundles/covalent-core-dynamic-menu.umd.min.js.map +0 -1
  314. package/bundles/covalent-core-file.umd.js +0 -1211
  315. package/bundles/covalent-core-file.umd.js.map +0 -1
  316. package/bundles/covalent-core-file.umd.min.js +0 -17
  317. package/bundles/covalent-core-file.umd.min.js.map +0 -1
  318. package/bundles/covalent-core-json-formatter.umd.js +0 -408
  319. package/bundles/covalent-core-json-formatter.umd.js.map +0 -1
  320. package/bundles/covalent-core-json-formatter.umd.min.js +0 -2
  321. package/bundles/covalent-core-json-formatter.umd.min.js.map +0 -1
  322. package/bundles/covalent-core-layout.umd.js +0 -2084
  323. package/bundles/covalent-core-layout.umd.js.map +0 -1
  324. package/bundles/covalent-core-layout.umd.min.js +0 -17
  325. package/bundles/covalent-core-layout.umd.min.js.map +0 -1
  326. package/bundles/covalent-core-menu.umd.js +0 -69
  327. package/bundles/covalent-core-menu.umd.js.map +0 -1
  328. package/bundles/covalent-core-menu.umd.min.js +0 -2
  329. package/bundles/covalent-core-menu.umd.min.js.map +0 -1
  330. package/bundles/covalent-core-message.umd.js +0 -375
  331. package/bundles/covalent-core-message.umd.js.map +0 -1
  332. package/bundles/covalent-core-message.umd.min.js +0 -2
  333. package/bundles/covalent-core-message.umd.min.js.map +0 -1
  334. package/bundles/covalent-core-search.umd.js +0 -877
  335. package/bundles/covalent-core-search.umd.js.map +0 -1
  336. package/bundles/covalent-core-search.umd.min.js +0 -16
  337. package/bundles/covalent-core-search.umd.min.js.map +0 -1
  338. package/bundles/covalent-core-side-sheet.umd.js +0 -1458
  339. package/bundles/covalent-core-side-sheet.umd.js.map +0 -1
  340. package/bundles/covalent-core-side-sheet.umd.min.js +0 -16
  341. package/bundles/covalent-core-side-sheet.umd.min.js.map +0 -1
  342. package/bundles/covalent-core-user-profile.umd.js +0 -116
  343. package/bundles/covalent-core-user-profile.umd.js.map +0 -1
  344. package/bundles/covalent-core-user-profile.umd.min.js +0 -2
  345. package/bundles/covalent-core-user-profile.umd.min.js.map +0 -1
  346. package/bundles/covalent-core.umd.js +0 -9
  347. package/bundles/covalent-core.umd.js.map +0 -1
  348. package/bundles/covalent-core.umd.min.js +0 -2
  349. package/bundles/covalent-core.umd.min.js.map +0 -1
  350. package/common/covalent-core-common.metadata.json +0 -1
  351. package/common/index.d.ts +0 -1
  352. package/common/material-icons.css +0 -98
  353. package/common/material-icons.css.map +0 -1
  354. package/common/material-icons.scss +0 -3
  355. package/common/platform.css +0 -15424
  356. package/common/platform.css.map +0 -1
  357. package/common/platform.scss +0 -7
  358. package/common/styles/_elevation.scss +0 -280
  359. package/common/styles/_layout.scss +0 -603
  360. package/common/styles/_palette-dark.scss +0 -326
  361. package/common/styles/_palette-light.scss +0 -637
  362. package/common/styles/_rtl.scss +0 -28
  363. package/common/styles/_styles.scss +0 -10
  364. package/common/styles/_theme-functions.scss +0 -25
  365. package/common/styles/_typography-functions.scss +0 -35
  366. package/common/styles/_variables.scss +0 -98
  367. package/common/styles/colors/_colors-dark.scss +0 -1072
  368. package/common/styles/colors/_colors-light.scss +0 -2487
  369. package/common/styles/colors/_colors.scss +0 -7
  370. package/common/styles/core/_button.scss +0 -59
  371. package/common/styles/core/_card.scss +0 -164
  372. package/common/styles/core/_content.scss +0 -42
  373. package/common/styles/core/_core.scss +0 -23
  374. package/common/styles/core/_divider.scss +0 -15
  375. package/common/styles/core/_icons.scss +0 -20
  376. package/common/styles/core/_list.scss +0 -8
  377. package/common/styles/core/_sidenav.scss +0 -20
  378. package/common/styles/core/_structure.scss +0 -128
  379. package/common/styles/core/_toolbar.scss +0 -46
  380. package/common/styles/core/_whiteframe.scss +0 -130
  381. package/common/styles/font/MaterialIcons-Regular-v48.woff2 +0 -0
  382. package/common/styles/font/_font.scss +0 -93
  383. package/common/styles/utilities/_general.scss +0 -51
  384. package/common/styles/utilities/_pad.scss +0 -36
  385. package/common/styles/utilities/_pull.scss +0 -36
  386. package/common/styles/utilities/_push.scss +0 -36
  387. package/common/styles/utilities/_size.scss +0 -24
  388. package/common/styles/utilities/_text.scss +0 -84
  389. package/common/styles/utilities/_utilities.scss +0 -15
  390. package/covalent-core.metadata.json +0 -1
  391. package/dialogs/alert-dialog/alert-dialog.component.scss +0 -3
  392. package/dialogs/confirm-dialog/confirm-dialog.component.scss +0 -3
  393. package/dialogs/covalent-core-dialogs.metadata.json +0 -1
  394. package/dialogs/dialog.component.scss +0 -44
  395. package/dialogs/index.d.ts +0 -1
  396. package/dialogs/prompt-dialog/prompt-dialog.component.scss +0 -15
  397. package/dialogs/window-dialog/window-dialog.component.scss +0 -31
  398. package/dynamic-menu/covalent-core-dynamic-menu.metadata.json +0 -1
  399. package/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.scss +0 -6
  400. package/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.scss +0 -11
  401. package/dynamic-menu/dynamic-menu.component.scss +0 -0
  402. package/dynamic-menu/index.d.ts +0 -1
  403. package/esm2015/breadcrumbs/breadcrumb/breadcrumb.component.js +0 -171
  404. package/esm2015/breadcrumbs/breadcrumbs.component.js +0 -241
  405. package/esm2015/breadcrumbs/breadcrumbs.module.js +0 -20
  406. package/esm2015/breadcrumbs/covalent-core-breadcrumbs.js +0 -10
  407. package/esm2015/breadcrumbs/index.js +0 -7
  408. package/esm2015/breadcrumbs/public-api.js +0 -9
  409. package/esm2015/common/animations/bounce/bounce.animation.js +0 -76
  410. package/esm2015/common/animations/collapse/collapse.animation.js +0 -67
  411. package/esm2015/common/animations/common/interfaces.js +0 -18
  412. package/esm2015/common/animations/fade/fadeInOut.animation.js +0 -53
  413. package/esm2015/common/animations/flash/flash.animation.js +0 -40
  414. package/esm2015/common/animations/headshake/headshake.animation.js +0 -41
  415. package/esm2015/common/animations/jello/jello.animation.js +0 -44
  416. package/esm2015/common/animations/pulse/pulse.animation.js +0 -38
  417. package/esm2015/common/animations/rotate/rotate.animation.js +0 -41
  418. package/esm2015/common/behaviors/control-value-accesor.mixin.js +0 -107
  419. package/esm2015/common/behaviors/disable-ripple.mixin.js +0 -63
  420. package/esm2015/common/behaviors/disabled.mixin.js +0 -63
  421. package/esm2015/common/common.module.js +0 -54
  422. package/esm2015/common/covalent-core-common.js +0 -12
  423. package/esm2015/common/directives/fullscreen/fullscreen.directive.js +0 -180
  424. package/esm2015/common/forms/auto-trim/auto-trim.directive.js +0 -46
  425. package/esm2015/common/forms/validators/validators.js +0 -58
  426. package/esm2015/common/functions/clipboard.js +0 -30
  427. package/esm2015/common/functions/convert.js +0 -103
  428. package/esm2015/common/functions/download.js +0 -88
  429. package/esm2015/common/functions/file.js +0 -29
  430. package/esm2015/common/index.js +0 -7
  431. package/esm2015/common/pipes/bytes/bytes.pipe.js +0 -41
  432. package/esm2015/common/pipes/decimal-bytes/decimal-bytes.pipe.js +0 -41
  433. package/esm2015/common/pipes/digits/digits.pipe.js +0 -65
  434. package/esm2015/common/pipes/time-ago/time-ago.pipe.js +0 -81
  435. package/esm2015/common/pipes/time-difference/time-difference.pipe.js +0 -66
  436. package/esm2015/common/pipes/time-until/time-until.pipe.js +0 -81
  437. package/esm2015/common/pipes/truncate/truncate.pipe.js +0 -34
  438. package/esm2015/common/public-api.js +0 -44
  439. package/esm2015/common/services/icon.service.js +0 -1109
  440. package/esm2015/common/services/router-path.service.js +0 -60
  441. package/esm2015/covalent-core.js +0 -10
  442. package/esm2015/dialogs/alert-dialog/alert-dialog.component.js +0 -47
  443. package/esm2015/dialogs/confirm-dialog/confirm-dialog.component.js +0 -59
  444. package/esm2015/dialogs/covalent-core-dialogs.js +0 -11
  445. package/esm2015/dialogs/dialog.component.js +0 -58
  446. package/esm2015/dialogs/dialogs.module.js +0 -57
  447. package/esm2015/dialogs/index.js +0 -7
  448. package/esm2015/dialogs/prompt-dialog/prompt-dialog.component.js +0 -83
  449. package/esm2015/dialogs/public-api.js +0 -13
  450. package/esm2015/dialogs/resizable-draggable-dialog/resizable-draggable-dialog.js +0 -325
  451. package/esm2015/dialogs/services/dialog.service.js +0 -316
  452. package/esm2015/dialogs/window-dialog/window-dialog.component.js +0 -56
  453. package/esm2015/dynamic-menu/covalent-core-dynamic-menu.js +0 -11
  454. package/esm2015/dynamic-menu/dynamic-menu-item/dynamic-menu-item.component.js +0 -40
  455. package/esm2015/dynamic-menu/dynamic-menu-item/dynamic-menu-link/dynamic-menu-link.component.js +0 -35
  456. package/esm2015/dynamic-menu/dynamic-menu.component.js +0 -89
  457. package/esm2015/dynamic-menu/dynamic-menu.module.js +0 -26
  458. package/esm2015/dynamic-menu/index.js +0 -7
  459. package/esm2015/dynamic-menu/public_api.js +0 -9
  460. package/esm2015/file/covalent-core-file.js +0 -10
  461. package/esm2015/file/directives/file-drop.directive.js +0 -191
  462. package/esm2015/file/directives/file-select.directive.js +0 -98
  463. package/esm2015/file/file-input/file-input.component.js +0 -186
  464. package/esm2015/file/file-upload/file-upload.component.js +0 -237
  465. package/esm2015/file/file.module.js +0 -35
  466. package/esm2015/file/index.js +0 -7
  467. package/esm2015/file/public-api.js +0 -12
  468. package/esm2015/file/services/file.service.js +0 -109
  469. package/esm2015/index.js +0 -7
  470. package/esm2015/json-formatter/covalent-core-json-formatter.js +0 -10
  471. package/esm2015/json-formatter/index.js +0 -7
  472. package/esm2015/json-formatter/json-formatter.component.js +0 -338
  473. package/esm2015/json-formatter/json-formatter.module.js +0 -20
  474. package/esm2015/json-formatter/public-api.js +0 -8
  475. package/esm2015/layout/covalent-core-layout.js +0 -10
  476. package/esm2015/layout/index.js +0 -7
  477. package/esm2015/layout/layout-card-over/layout-card-over.component.js +0 -71
  478. package/esm2015/layout/layout-footer/layout-footer.component.js +0 -71
  479. package/esm2015/layout/layout-manage-list/layout-manage-list.component.js +0 -145
  480. package/esm2015/layout/layout-manage-list/layout-manage-list.directives.js +0 -132
  481. package/esm2015/layout/layout-nav/layout-nav.component.js +0 -100
  482. package/esm2015/layout/layout-nav-list/layout-nav-list.component.js +0 -220
  483. package/esm2015/layout/layout-nav-list/layout-nav-list.directives.js +0 -132
  484. package/esm2015/layout/layout-toggle.class.js +0 -188
  485. package/esm2015/layout/layout.component.js +0 -145
  486. package/esm2015/layout/layout.directives.js +0 -129
  487. package/esm2015/layout/layout.module.js +0 -64
  488. package/esm2015/layout/navigation-drawer/navigation-drawer.component.js +0 -280
  489. package/esm2015/layout/public-api.js +0 -18
  490. package/esm2015/menu/covalent-core-menu.js +0 -10
  491. package/esm2015/menu/index.js +0 -7
  492. package/esm2015/menu/menu.component.js +0 -16
  493. package/esm2015/menu/menu.module.js +0 -22
  494. package/esm2015/menu/public-api.js +0 -8
  495. package/esm2015/message/covalent-core-message.js +0 -10
  496. package/esm2015/message/index.js +0 -7
  497. package/esm2015/message/message.component.js +0 -307
  498. package/esm2015/message/message.module.js +0 -21
  499. package/esm2015/message/public-api.js +0 -8
  500. package/esm2015/search/covalent-core-search.js +0 -10
  501. package/esm2015/search/index.js +0 -7
  502. package/esm2015/search/public-api.js +0 -9
  503. package/esm2015/search/search-box/search-box.component.js +0 -270
  504. package/esm2015/search/search-input/search-input.component.js +0 -260
  505. package/esm2015/search/search.module.js +0 -23
  506. package/esm2015/side-sheet/covalent-core-side-sheet.js +0 -12
  507. package/esm2015/side-sheet/index.js +0 -7
  508. package/esm2015/side-sheet/public-api.js +0 -11
  509. package/esm2015/side-sheet/side-sheet-container.js +0 -402
  510. package/esm2015/side-sheet/side-sheet-ref.js +0 -50
  511. package/esm2015/side-sheet/side-sheet.animation.js +0 -20
  512. package/esm2015/side-sheet/side-sheet.config.js +0 -12
  513. package/esm2015/side-sheet/side-sheet.content-directives.js +0 -255
  514. package/esm2015/side-sheet/side-sheet.js +0 -360
  515. package/esm2015/side-sheet/side-sheet.module.js +0 -36
  516. package/esm2015/user-profile/covalent-core-user-profile.js +0 -10
  517. package/esm2015/user-profile/index.js +0 -7
  518. package/esm2015/user-profile/public_api.js +0 -9
  519. package/esm2015/user-profile/user-profile-menu/user-profile-menu.component.js +0 -35
  520. package/esm2015/user-profile/user-profile.component.js +0 -26
  521. package/esm2015/user-profile/user-profile.module.js +0 -25
  522. package/fesm2015/covalent-core-breadcrumbs.js +0 -448
  523. package/fesm2015/covalent-core-breadcrumbs.js.map +0 -1
  524. package/fesm2015/covalent-core-common.js.map +0 -1
  525. package/fesm2015/covalent-core-dialogs.js +0 -1001
  526. package/fesm2015/covalent-core-dialogs.js.map +0 -1
  527. package/fesm2015/covalent-core-dynamic-menu.js +0 -204
  528. package/fesm2015/covalent-core-dynamic-menu.js.map +0 -1
  529. package/fesm2015/covalent-core-file.js +0 -855
  530. package/fesm2015/covalent-core-file.js.map +0 -1
  531. package/fesm2015/covalent-core-json-formatter.js +0 -377
  532. package/fesm2015/covalent-core-json-formatter.js.map +0 -1
  533. package/fesm2015/covalent-core-layout.js +0 -1663
  534. package/fesm2015/covalent-core-layout.js.map +0 -1
  535. package/fesm2015/covalent-core-menu.js +0 -57
  536. package/fesm2015/covalent-core-menu.js.map +0 -1
  537. package/fesm2015/covalent-core-message.js +0 -347
  538. package/fesm2015/covalent-core-message.js.map +0 -1
  539. package/fesm2015/covalent-core-search.js +0 -564
  540. package/fesm2015/covalent-core-search.js.map +0 -1
  541. package/fesm2015/covalent-core-side-sheet.js +0 -1134
  542. package/fesm2015/covalent-core-side-sheet.js.map +0 -1
  543. package/fesm2015/covalent-core-user-profile.js +0 -103
  544. package/fesm2015/covalent-core-user-profile.js.map +0 -1
  545. package/fesm2015/covalent-core.js +0 -12
  546. package/fesm2015/covalent-core.js.map +0 -1
  547. package/file/covalent-core-file.metadata.json +0 -1
  548. package/file/file-input/file-input.component.scss +0 -20
  549. package/file/file-upload/file-upload.component.scss +0 -30
  550. package/file/index.d.ts +0 -1
  551. package/json-formatter/covalent-core-json-formatter.metadata.json +0 -1
  552. package/json-formatter/index.d.ts +0 -1
  553. package/json-formatter/json-formatter.component.scss +0 -61
  554. package/layout/covalent-core-layout.metadata.json +0 -1
  555. package/layout/index.d.ts +0 -1
  556. package/layout/layout-card-over/layout-card-over.component.scss +0 -42
  557. package/layout/layout-footer/layout-footer.component.scss +0 -4
  558. package/layout/layout-manage-list/layout-manage-list.component.scss +0 -78
  559. package/layout/layout-nav/README.md +0 -46
  560. package/layout/layout-nav/layout-nav.component.scss +0 -50
  561. package/layout/layout-nav-list/layout-nav-list.component.scss +0 -110
  562. package/layout/layout.component.scss +0 -20
  563. package/layout/navigation-drawer/navigation-drawer.component.scss +0 -73
  564. package/menu/covalent-core-menu.metadata.json +0 -1
  565. package/menu/index.d.ts +0 -1
  566. package/menu/menu.component.scss +0 -43
  567. package/message/covalent-core-message.metadata.json +0 -1
  568. package/message/index.d.ts +0 -1
  569. package/message/message.component.scss +0 -29
  570. package/schematics/README.md +0 -66
  571. package/schematics/collection.json +0 -11
  572. package/schematics/components.js +0 -111
  573. package/schematics/components.js.map +0 -1
  574. package/schematics/migration.json +0 -10
  575. package/schematics/ng-add/files/theme.scss +0 -64
  576. package/schematics/ng-add/index.js +0 -58
  577. package/schematics/ng-add/index.js.map +0 -1
  578. package/schematics/ng-add/schema.js +0 -3
  579. package/schematics/ng-add/schema.js.map +0 -1
  580. package/schematics/ng-add/schema.json +0 -81
  581. package/schematics/ng-update/index.js +0 -52
  582. package/schematics/ng-update/index.js.map +0 -1
  583. package/schematics/ng-update/target-version.js +0 -8
  584. package/schematics/ng-update/target-version.js.map +0 -1
  585. package/schematics/version-names.js +0 -6
  586. package/schematics/version-names.js.map +0 -1
  587. package/search/covalent-core-search.metadata.json +0 -1
  588. package/search/index.d.ts +0 -1
  589. package/search/search-box/README.md +0 -62
  590. package/search/search-box/search-box.component.scss +0 -32
  591. package/search/search-input/README.md +0 -65
  592. package/search/search-input/search-input.component.scss +0 -63
  593. package/side-sheet/covalent-core-side-sheet.metadata.json +0 -1
  594. package/side-sheet/index.d.ts +0 -1
  595. package/side-sheet/side-sheet.scss +0 -69
  596. package/theming/prebuilt/blue-grey-deep-orange.css +0 -2434
  597. package/theming/prebuilt/blue-grey-deep-orange.css.map +0 -1
  598. package/theming/prebuilt/blue-grey-deep-orange.scss +0 -13
  599. package/theming/prebuilt/blue-orange.css +0 -2434
  600. package/theming/prebuilt/blue-orange.css.map +0 -1
  601. package/theming/prebuilt/blue-orange.scss +0 -13
  602. package/theming/prebuilt/indigo-pink.css +0 -2434
  603. package/theming/prebuilt/indigo-pink.css.map +0 -1
  604. package/theming/prebuilt/indigo-pink.scss +0 -13
  605. package/theming/prebuilt/orange-light-blue.css +0 -2434
  606. package/theming/prebuilt/orange-light-blue.css.map +0 -1
  607. package/theming/prebuilt/orange-light-blue.scss +0 -13
  608. package/theming/prebuilt/teal-orange.css +0 -2434
  609. package/theming/prebuilt/teal-orange.css.map +0 -1
  610. package/theming/prebuilt/teal-orange.scss +0 -13
  611. package/user-profile/covalent-core-user-profile.metadata.json +0 -1
  612. package/user-profile/index.d.ts +0 -1
  613. package/user-profile/user-profile-menu/user-profile-menu.component.scss +0 -38
@@ -0,0 +1,203 @@
1
+ import { Component, ViewChild, Input, Output, EventEmitter, Optional, ChangeDetectionStrategy, ChangeDetectorRef, forwardRef, } from '@angular/core';
2
+ import { trigger, state, style, transition, animate, } from '@angular/animations';
3
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
+ import { Dir } from '@angular/cdk/bidi';
5
+ import { MatInput } from '@angular/material/input';
6
+ import { debounceTime, skip } from 'rxjs/operators';
7
+ import { noop } from 'rxjs';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/cdk/bidi";
10
+ import * as i2 from "@angular/material/form-field";
11
+ import * as i3 from "@angular/material/button";
12
+ import * as i4 from "@angular/material/icon";
13
+ import * as i5 from "@angular/material/input";
14
+ import * as i6 from "@angular/forms";
15
+ import * as i7 from "@angular/common";
16
+ export class TdSearchInputBase {
17
+ constructor(_changeDetectorRef) {
18
+ this._changeDetectorRef = _changeDetectorRef;
19
+ }
20
+ }
21
+ export class TdSearchInputComponent {
22
+ constructor(_dir, _changeDetectorRef) {
23
+ this._dir = _dir;
24
+ this._changeDetectorRef = _changeDetectorRef;
25
+ /**
26
+ * appearance?: MatFormFieldAppearance
27
+ * Appearance style for the underlying input component.
28
+ */
29
+ this.appearance = 'legacy';
30
+ /**
31
+ * showUnderline?: boolean
32
+ * Sets if the input underline should be visible. Defaults to 'false'.
33
+ */
34
+ this.showUnderline = false;
35
+ /**
36
+ * debounce?: number
37
+ * Debounce timeout between keypresses. Defaults to 400.
38
+ */
39
+ this.debounce = 400;
40
+ /**
41
+ * placeholder?: string
42
+ * Placeholder for the underlying input component.
43
+ */
44
+ this.placeholder = '';
45
+ /**
46
+ * clearIcon?: string
47
+ * The icon used to clear the search input.
48
+ * Defaults to 'cancel' icon.
49
+ */
50
+ this.clearIcon = 'cancel';
51
+ /**
52
+ * searchDebounce: function($event)
53
+ * Event emitted after the [debounce] timeout.
54
+ */
55
+ this.searchDebounce = new EventEmitter();
56
+ /**
57
+ * search: function($event)
58
+ * Event emitted after the key enter has been pressed.
59
+ */
60
+ this.search = new EventEmitter();
61
+ /**
62
+ * clear: function()
63
+ * Event emitted after the clear icon has been clicked.
64
+ */
65
+ this.clear = new EventEmitter();
66
+ /**
67
+ * blur: function()
68
+ * Event emitted after the blur event has been called in underlying input.
69
+ */
70
+ this.blurSearch = new EventEmitter();
71
+ }
72
+ get isRTL() {
73
+ if (this._dir) {
74
+ return this._dir.dir === 'rtl';
75
+ }
76
+ return false;
77
+ }
78
+ ngOnInit() {
79
+ this._input?.ngControl?.valueChanges
80
+ ?.pipe(debounceTime(this.debounce), skip(1) // skip first change when value is set to undefined
81
+ )
82
+ .subscribe((value) => {
83
+ this._searchTermChanged(value);
84
+ });
85
+ }
86
+ writeValue(value) {
87
+ this.value = value;
88
+ this._changeDetectorRef.markForCheck();
89
+ }
90
+ registerOnChange() {
91
+ noop;
92
+ }
93
+ registerOnTouched() {
94
+ noop;
95
+ }
96
+ /**
97
+ * Method to focus to underlying input.
98
+ */
99
+ focus() {
100
+ this._input?.focus();
101
+ }
102
+ handleBlur() {
103
+ this.blurSearch.emit();
104
+ }
105
+ stopPropagation(event) {
106
+ event.stopPropagation();
107
+ }
108
+ handleSearch(event) {
109
+ this.stopPropagation(event);
110
+ if (typeof this.value == 'string') {
111
+ this.search.emit(this.value);
112
+ }
113
+ }
114
+ /**
115
+ * Method to clear the underlying input.
116
+ */
117
+ clearSearch() {
118
+ this.value = '';
119
+ this._changeDetectorRef.markForCheck();
120
+ this.clear.emit();
121
+ }
122
+ _searchTermChanged(value) {
123
+ this.searchDebounce.emit(value);
124
+ }
125
+ }
126
+ TdSearchInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdSearchInputComponent, deps: [{ token: i1.Dir, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
127
+ TdSearchInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: TdSearchInputComponent, selector: "td-search-input", inputs: { appearance: "appearance", showUnderline: "showUnderline", debounce: "debounce", placeholder: "placeholder", clearIcon: "clearIcon", value: "value" }, outputs: { searchDebounce: "searchDebounce", search: "search", clear: "clear", blurSearch: "blurSearch" }, providers: [
128
+ {
129
+ provide: NG_VALUE_ACCESSOR,
130
+ useExisting: forwardRef(() => TdSearchInputComponent),
131
+ multi: true,
132
+ },
133
+ ], viewQueries: [{ propertyName: "_input", first: true, predicate: MatInput, descendants: true, static: true }], ngImport: i0, template: "<div class=\"td-search-input\">\n <mat-form-field\n class=\"td-search-input-field\"\n [class.mat-hide-underline]=\"!showUnderline\"\n [appearance]=\"appearance\"\n floatLabel=\"never\"\n >\n <input\n matInput\n #searchElement\n type=\"search\"\n [(ngModel)]=\"value\"\n [placeholder]=\"placeholder\"\n (blur)=\"handleBlur()\"\n (search)=\"stopPropagation($event)\"\n (keyup.enter)=\"handleSearch($event)\"\n />\n <span\n matSuffix\n *ngIf=\"\n appearance === 'fill' ||\n appearance === 'outline' ||\n appearance === 'standard'\n \"\n >\n <ng-template [ngTemplateOutlet]=\"clearButton\"></ng-template>\n </span>\n </mat-form-field>\n <ng-template\n *ngIf=\"!appearance || appearance === 'legacy'\"\n [ngTemplateOutlet]=\"clearButton\"\n ></ng-template>\n</div>\n<ng-template #clearButton>\n <button\n mat-icon-button\n class=\"td-search-input-clear\"\n type=\"button\"\n [@searchState]=\"\n searchElement.value ? 'show' : isRTL ? 'hide-left' : 'hide-right'\n \"\n (click)=\"clearSearch()\"\n >\n <mat-icon>{{ clearIcon }}</mat-icon>\n </button>\n</ng-template>\n", styles: [":host .td-search-input{overflow-x:hidden;box-sizing:border-box;display:flex;flex-direction:row;align-items:baseline;align-content:center;max-width:100%;justify-content:flex-end}:host .td-search-input .td-search-input-field{flex:1}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper{padding-bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-fill .mat-form-field-wrapper{padding-bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-fill .mat-form-field-wrapper .mat-form-field-flex{height:52px}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-fill .mat-form-field-wrapper .mat-form-field-underline{bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-standard .mat-form-field-wrapper{padding-bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-standard .mat-form-field-wrapper .mat-form-field-infix{bottom:.4em}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-standard .mat-form-field-wrapper .mat-form-field-underline{bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-legacy .mat-form-field-infix{align-self:center}:host .td-search-input ::ng-deep mat-form-field .mat-input-element{caret-color:currentColor}:host .td-search-input ::ng-deep mat-form-field.mat-hide-underline .mat-form-field-underline{display:none}:host .td-search-input .td-search-input-clear{flex:0 0 auto;align-self:center}\n"], components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.MatSuffix, selector: "[matSuffix]" }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], animations: [
134
+ trigger('searchState', [
135
+ state('hide-left', style({
136
+ transform: 'translateX(-150%)',
137
+ display: 'none',
138
+ })),
139
+ state('hide-right', style({
140
+ transform: 'translateX(150%)',
141
+ display: 'none',
142
+ })),
143
+ state('show', style({
144
+ transform: 'translateX(0%)',
145
+ display: 'block',
146
+ })),
147
+ transition('* => show', animate('200ms ease-in')),
148
+ transition('show => *', animate('200ms ease-out')),
149
+ ]),
150
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
151
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdSearchInputComponent, decorators: [{
152
+ type: Component,
153
+ args: [{ providers: [
154
+ {
155
+ provide: NG_VALUE_ACCESSOR,
156
+ useExisting: forwardRef(() => TdSearchInputComponent),
157
+ multi: true,
158
+ },
159
+ ], selector: 'td-search-input', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
160
+ trigger('searchState', [
161
+ state('hide-left', style({
162
+ transform: 'translateX(-150%)',
163
+ display: 'none',
164
+ })),
165
+ state('hide-right', style({
166
+ transform: 'translateX(150%)',
167
+ display: 'none',
168
+ })),
169
+ state('show', style({
170
+ transform: 'translateX(0%)',
171
+ display: 'block',
172
+ })),
173
+ transition('* => show', animate('200ms ease-in')),
174
+ transition('show => *', animate('200ms ease-out')),
175
+ ]),
176
+ ], template: "<div class=\"td-search-input\">\n <mat-form-field\n class=\"td-search-input-field\"\n [class.mat-hide-underline]=\"!showUnderline\"\n [appearance]=\"appearance\"\n floatLabel=\"never\"\n >\n <input\n matInput\n #searchElement\n type=\"search\"\n [(ngModel)]=\"value\"\n [placeholder]=\"placeholder\"\n (blur)=\"handleBlur()\"\n (search)=\"stopPropagation($event)\"\n (keyup.enter)=\"handleSearch($event)\"\n />\n <span\n matSuffix\n *ngIf=\"\n appearance === 'fill' ||\n appearance === 'outline' ||\n appearance === 'standard'\n \"\n >\n <ng-template [ngTemplateOutlet]=\"clearButton\"></ng-template>\n </span>\n </mat-form-field>\n <ng-template\n *ngIf=\"!appearance || appearance === 'legacy'\"\n [ngTemplateOutlet]=\"clearButton\"\n ></ng-template>\n</div>\n<ng-template #clearButton>\n <button\n mat-icon-button\n class=\"td-search-input-clear\"\n type=\"button\"\n [@searchState]=\"\n searchElement.value ? 'show' : isRTL ? 'hide-left' : 'hide-right'\n \"\n (click)=\"clearSearch()\"\n >\n <mat-icon>{{ clearIcon }}</mat-icon>\n </button>\n</ng-template>\n", styles: [":host .td-search-input{overflow-x:hidden;box-sizing:border-box;display:flex;flex-direction:row;align-items:baseline;align-content:center;max-width:100%;justify-content:flex-end}:host .td-search-input .td-search-input-field{flex:1}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper{padding-bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-fill .mat-form-field-wrapper{padding-bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-fill .mat-form-field-wrapper .mat-form-field-flex{height:52px}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-fill .mat-form-field-wrapper .mat-form-field-underline{bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-standard .mat-form-field-wrapper{padding-bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-standard .mat-form-field-wrapper .mat-form-field-infix{bottom:.4em}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-standard .mat-form-field-wrapper .mat-form-field-underline{bottom:0}:host .td-search-input ::ng-deep mat-form-field.mat-form-field-appearance-legacy .mat-form-field-infix{align-self:center}:host .td-search-input ::ng-deep mat-form-field .mat-input-element{caret-color:currentColor}:host .td-search-input ::ng-deep mat-form-field.mat-hide-underline .mat-form-field-underline{display:none}:host .td-search-input .td-search-input-clear{flex:0 0 auto;align-self:center}\n"] }]
177
+ }], ctorParameters: function () { return [{ type: i1.Dir, decorators: [{
178
+ type: Optional
179
+ }] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { _input: [{
180
+ type: ViewChild,
181
+ args: [MatInput, { static: true }]
182
+ }], appearance: [{
183
+ type: Input
184
+ }], showUnderline: [{
185
+ type: Input
186
+ }], debounce: [{
187
+ type: Input
188
+ }], placeholder: [{
189
+ type: Input
190
+ }], clearIcon: [{
191
+ type: Input
192
+ }], value: [{
193
+ type: Input
194
+ }], searchDebounce: [{
195
+ type: Output
196
+ }], search: [{
197
+ type: Output
198
+ }], clear: [{
199
+ type: Output
200
+ }], blurSearch: [{
201
+ type: Output
202
+ }] } });
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zZWFyY2gvc3JjL3NlYXJjaC1pbnB1dC9zZWFyY2gtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NlYXJjaC9zcmMvc2VhcmNoLWlucHV0L3NlYXJjaC1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixRQUFRLEVBQ1IsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixVQUFVLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLE9BQU8sRUFDUCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEdBQ1IsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUduRCxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7OztBQUU1QixNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQW1CLGtCQUFxQztRQUFyQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO0lBQUcsQ0FBQztDQUM3RDtBQTBDRCxNQUFNLE9BQU8sc0JBQXNCO0lBbUVqQyxZQUNzQixJQUFTLEVBQ3JCLGtCQUFxQztRQUR6QixTQUFJLEdBQUosSUFBSSxDQUFLO1FBQ3JCLHVCQUFrQixHQUFsQixr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QU87NkJBQ2pCLENBQUMsQ0FDSDs0QkFDRCxVQUFVLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQzs0QkFDakQsVUFBVSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzt5QkFDbkQsQ0FBQztxQkFDSDs7MEJBc0VFLFFBQVE7NEVBbkU0QixNQUFNO3NCQUE1QyxTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBTTVCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTUcsYUFBYTtzQkFBckIsS0FBSztnQkFNRyxRQUFRO3NCQUFoQixLQUFLO2dCQU1HLFdBQVc7c0JBQW5CLEtBQUs7Z0JBT0csU0FBUztzQkFBakIsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBTUksY0FBYztzQkFBdkIsTUFBTTtnQkFNRyxNQUFNO3NCQUFmLE1BQU07Z0JBTUcsS0FBSztzQkFBZCxNQUFNO2dCQU1HLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIFZpZXdDaGlsZCxcbiAgT25Jbml0LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIE9wdGlvbmFsLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIGZvcndhcmRSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgdHJpZ2dlcixcbiAgc3RhdGUsXG4gIHN0eWxlLFxuICB0cmFuc2l0aW9uLFxuICBhbmltYXRlLFxufSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IERpciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkQXBwZWFyYW5jZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHNraXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBub29wIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBUZFNlYXJjaElucHV0QmFzZSB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxufVxuXG5AQ29tcG9uZW50KHtcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUZFNlYXJjaElucHV0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIHNlbGVjdG9yOiAndGQtc2VhcmNoLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaC1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3NlYXJjaFN0YXRlJywgW1xuICAgICAgc3RhdGUoXG4gICAgICAgICdoaWRlLWxlZnQnLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgtMTUwJSknLFxuICAgICAgICAgIGRpc3BsYXk6ICdub25lJyxcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICBzdGF0ZShcbiAgICAgICAgJ2hpZGUtcmlnaHQnLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxNTAlKScsXG4gICAgICAgICAgZGlzcGxheTogJ25vbmUnLFxuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHN0YXRlKFxuICAgICAgICAnc2hvdycsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDAlKScsXG4gICAgICAgICAgZGlzcGxheTogJ2Jsb2NrJyxcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICB0cmFuc2l0aW9uKCcqID0+IHNob3cnLCBhbmltYXRlKCcyMDBtcyBlYXNlLWluJykpLFxuICAgICAgdHJhbnNpdGlvbignc2hvdyA9PiAqJywgYW5pbWF0ZSgnMjAwbXMgZWFzZS1vdXQnKSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRkU2VhcmNoSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0IHtcbiAgQFZpZXdDaGlsZChNYXRJbnB1dCwgeyBzdGF0aWM6IHRydWUgfSkgX2lucHV0PzogTWF0SW5wdXQ7XG5cbiAgLyoqXG4gICAqIGFwcGVhcmFuY2U/OiBNYXRGb3JtRmllbGRBcHBlYXJhbmNlXG4gICAqIEFwcGVhcmFuY2Ugc3R5bGUgZm9yIHRoZSB1bmRlcmx5aW5nIGlucHV0IGNvbXBvbmVudC5cbiAgICovXG4gIEBJbnB1dCgpIGFwcGVhcmFuY2U6IE1hdEZvcm1GaWVsZEFwcGVhcmFuY2UgPSAnbGVnYWN5JztcblxuICAvKipcbiAgICogc2hvd1VuZGVybGluZT86IGJvb2xlYW5cbiAgICogU2V0cyBpZiB0aGUgaW5wdXQgdW5kZXJsaW5lIHNob3VsZCBiZSB2aXNpYmxlLiBEZWZhdWx0cyB0byAnZmFsc2UnLlxuICAgKi9cbiAgQElucHV0KCkgc2hvd1VuZGVybGluZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBkZWJvdW5jZT86IG51bWJlclxuICAgKiBEZWJvdW5jZSB0aW1lb3V0IGJldHdlZW4ga2V5cHJlc3Nlcy4gRGVmYXVsdHMgdG8gNDAwLlxuICAgKi9cbiAgQElucHV0KCkgZGVib3VuY2UgPSA0MDA7XG5cbiAgLyoqXG4gICAqIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gICAqIFBsYWNlaG9sZGVyIGZvciB0aGUgdW5kZXJseWluZyBpbnB1dCBjb21wb25lbnQuXG4gICAqL1xuICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICcnO1xuXG4gIC8qKlxuICAgKiBjbGVhckljb24/OiBzdHJpbmdcbiAgICogVGhlIGljb24gdXNlZCB0byBjbGVhciB0aGUgc2VhcmNoIGlucHV0LlxuICAgKiBEZWZhdWx0cyB0byAnY2FuY2VsJyBpY29uLlxuICAgKi9cbiAgQElucHV0KCkgY2xlYXJJY29uID0gJ2NhbmNlbCc7XG5cbiAgQElucHV0KCkgdmFsdWU/OiB1bmtub3duO1xuXG4gIC8qKlxuICAgKiBzZWFyY2hEZWJvdW5jZTogZnVuY3Rpb24oJGV2ZW50KVxuICAgKiBFdmVudCBlbWl0dGVkIGFmdGVyIHRoZSBbZGVib3VuY2VdIHRpbWVvdXQuXG4gICAqL1xuICBAT3V0cHV0KCkgc2VhcmNoRGVib3VuY2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgLyoqXG4gICAqIHNlYXJjaDogZnVuY3Rpb24oJGV2ZW50KVxuICAgKiBFdmVudCBlbWl0dGVkIGFmdGVyIHRoZSBrZXkgZW50ZXIgaGFzIGJlZW4gcHJlc3NlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBzZWFyY2g6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgLyoqXG4gICAqIGNsZWFyOiBmdW5jdGlvbigpXG4gICAqIEV2ZW50IGVtaXR0ZWQgYWZ0ZXIgdGhlIGNsZWFyIGljb24gaGFzIGJlZW4gY2xpY2tlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBjbGVhcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8qKlxuICAgKiBibHVyOiBmdW5jdGlvbigpXG4gICAqIEV2ZW50IGVtaXR0ZWQgYWZ0ZXIgdGhlIGJsdXIgZXZlbnQgaGFzIGJlZW4gY2FsbGVkIGluIHVuZGVybHlpbmcgaW5wdXQuXG4gICAqL1xuICBAT3V0cHV0KCkgYmx1clNlYXJjaDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIGdldCBpc1JUTCgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5fZGlyKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZGlyLmRpciA9PT0gJ3J0bCc7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RpcjogRGlyLFxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5faW5wdXQ/Lm5nQ29udHJvbD8udmFsdWVDaGFuZ2VzXG4gICAgICA/LnBpcGUoXG4gICAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlKSxcbiAgICAgICAgc2tpcCgxKSAvLyBza2lwIGZpcnN0IGNoYW5nZSB3aGVuIHZhbHVlIGlzIHNldCB0byB1bmRlZmluZWRcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgdGhpcy5fc2VhcmNoVGVybUNoYW5nZWQodmFsdWUpO1xuICAgICAgfSk7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiB1bmtub3duKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZSgpOiB2b2lkIHtcbiAgICBub29wO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoKTogdm9pZCB7XG4gICAgbm9vcDtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgdG8gZm9jdXMgdG8gdW5kZXJseWluZyBpbnB1dC5cbiAgICovXG4gIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2lucHV0Py5mb2N1cygpO1xuICB9XG5cbiAgaGFuZGxlQmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLmJsdXJTZWFyY2guZW1pdCgpO1xuICB9XG5cbiAgc3RvcFByb3BhZ2F0aW9uKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICB9XG5cbiAgaGFuZGxlU2VhcmNoKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuc3RvcFByb3BhZ2F0aW9uKGV2ZW50KTtcbiAgICBpZiAodHlwZW9mIHRoaXMudmFsdWUgPT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMuc2VhcmNoLmVtaXQodGhpcy52YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0byBjbGVhciB0aGUgdW5kZXJseWluZyBpbnB1dC5cbiAgICovXG4gIGNsZWFyU2VhcmNoKCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSAnJztcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLmNsZWFyLmVtaXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NlYXJjaFRlcm1DaGFuZ2VkKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaERlYm91bmNlLmVtaXQodmFsdWUpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidGQtc2VhcmNoLWlucHV0XCI+XG4gIDxtYXQtZm9ybS1maWVsZFxuICAgIGNsYXNzPVwidGQtc2VhcmNoLWlucHV0LWZpZWxkXCJcbiAgICBbY2xhc3MubWF0LWhpZGUtdW5kZXJsaW5lXT1cIiFzaG93VW5kZXJsaW5lXCJcbiAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICBmbG9hdExhYmVsPVwibmV2ZXJcIlxuICA+XG4gICAgPGlucHV0XG4gICAgICBtYXRJbnB1dFxuICAgICAgI3NlYXJjaEVsZW1lbnRcbiAgICAgIHR5cGU9XCJzZWFyY2hcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgKGJsdXIpPVwiaGFuZGxlQmx1cigpXCJcbiAgICAgIChzZWFyY2gpPVwic3RvcFByb3BhZ2F0aW9uKCRldmVudClcIlxuICAgICAgKGtleXVwLmVudGVyKT1cImhhbmRsZVNlYXJjaCgkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxzcGFuXG4gICAgICBtYXRTdWZmaXhcbiAgICAgICpuZ0lmPVwiXG4gICAgICAgIGFwcGVhcmFuY2UgPT09ICdmaWxsJyB8fFxuICAgICAgICBhcHBlYXJhbmNlID09PSAnb3V0bGluZScgfHxcbiAgICAgICAgYXBwZWFyYW5jZSA9PT0gJ3N0YW5kYXJkJ1xuICAgICAgXCJcbiAgICA+XG4gICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2xlYXJCdXR0b25cIj48L25nLXRlbXBsYXRlPlxuICAgIDwvc3Bhbj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPG5nLXRlbXBsYXRlXG4gICAgKm5nSWY9XCIhYXBwZWFyYW5jZSB8fCBhcHBlYXJhbmNlID09PSAnbGVnYWN5J1wiXG4gICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2xlYXJCdXR0b25cIlxuICA+PC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuPG5nLXRlbXBsYXRlICNjbGVhckJ1dHRvbj5cbiAgPGJ1dHRvblxuICAgIG1hdC1pY29uLWJ1dHRvblxuICAgIGNsYXNzPVwidGQtc2VhcmNoLWlucHV0LWNsZWFyXCJcbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBbQHNlYXJjaFN0YXRlXT1cIlxuICAgICAgc2VhcmNoRWxlbWVudC52YWx1ZSA/ICdzaG93JyA6IGlzUlRMID8gJ2hpZGUtbGVmdCcgOiAnaGlkZS1yaWdodCdcbiAgICBcIlxuICAgIChjbGljayk9XCJjbGVhclNlYXJjaCgpXCJcbiAgPlxuICAgIDxtYXQtaWNvbj57eyBjbGVhckljb24gfX08L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -0,0 +1,39 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { MatInputModule } from '@angular/material/input';
5
+ import { MatIconModule } from '@angular/material/icon';
6
+ import { MatButtonModule } from '@angular/material/button';
7
+ import { TdSearchInputComponent } from './search-input/search-input.component';
8
+ import { TdSearchBoxComponent } from './search-box/search-box.component';
9
+ import * as i0 from "@angular/core";
10
+ export class CovalentSearchModule {
11
+ }
12
+ CovalentSearchModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
+ CovalentSearchModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentSearchModule, declarations: [TdSearchInputComponent, TdSearchBoxComponent], imports: [FormsModule,
14
+ CommonModule,
15
+ MatInputModule,
16
+ MatIconModule,
17
+ MatButtonModule], exports: [TdSearchInputComponent, TdSearchBoxComponent] });
18
+ CovalentSearchModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentSearchModule, imports: [[
19
+ FormsModule,
20
+ CommonModule,
21
+ MatInputModule,
22
+ MatIconModule,
23
+ MatButtonModule,
24
+ ]] });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentSearchModule, decorators: [{
26
+ type: NgModule,
27
+ args: [{
28
+ imports: [
29
+ FormsModule,
30
+ CommonModule,
31
+ MatInputModule,
32
+ MatIconModule,
33
+ MatButtonModule,
34
+ ],
35
+ declarations: [TdSearchInputComponent, TdSearchBoxComponent],
36
+ exports: [TdSearchInputComponent, TdSearchBoxComponent],
37
+ }]
38
+ }] });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zZWFyY2gvc3JjL3NlYXJjaC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQWF6RSxNQUFNLE9BQU8sb0JBQW9COztpSEFBcEIsb0JBQW9CO2tIQUFwQixvQkFBb0IsaUJBSGhCLHNCQUFzQixFQUFFLG9CQUFvQixhQU56RCxXQUFXO1FBQ1gsWUFBWTtRQUNaLGNBQWM7UUFDZCxhQUFhO1FBQ2IsZUFBZSxhQUdQLHNCQUFzQixFQUFFLG9CQUFvQjtrSEFFM0Msb0JBQW9CLFlBVnRCO1lBQ1AsV0FBVztZQUNYLFlBQVk7WUFDWixjQUFjO1lBQ2QsYUFBYTtZQUNiLGVBQWU7U0FDaEI7MkZBSVUsb0JBQW9CO2tCQVhoQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxXQUFXO3dCQUNYLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGVBQWU7cUJBQ2hCO29CQUNELFlBQVksRUFBRSxDQUFDLHNCQUFzQixFQUFFLG9CQUFvQixDQUFDO29CQUM1RCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxvQkFBb0IsQ0FBQztpQkFDeEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcblxuaW1wb3J0IHsgVGRTZWFyY2hJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vc2VhcmNoLWlucHV0L3NlYXJjaC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGRTZWFyY2hCb3hDb21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1ib3gvc2VhcmNoLWJveC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtUZFNlYXJjaElucHV0Q29tcG9uZW50LCBUZFNlYXJjaEJveENvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtUZFNlYXJjaElucHV0Q29tcG9uZW50LCBUZFNlYXJjaEJveENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2VhcmNoTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY292YWxlbnQtY29yZS1zaWRlLXNoZWV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NpZGUtc2hlZXQvc3JjL2NvdmFsZW50LWNvcmUtc2lkZS1zaGVldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
@@ -0,0 +1,6 @@
1
+ export * from './side-sheet.module';
2
+ export * from './side-sheet.config';
3
+ export * from './side-sheet.content-directives';
4
+ export * from './side-sheet-ref';
5
+ export * from './side-sheet';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zaWRlLXNoZWV0L3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NpZGUtc2hlZXQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc2lkZS1zaGVldC5jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9zaWRlLXNoZWV0LmNvbnRlbnQtZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL3NpZGUtc2hlZXQtcmVmJztcbmV4cG9ydCAqIGZyb20gJy4vc2lkZS1zaGVldCc7XG4iXX0=
@@ -0,0 +1,274 @@
1
+ import { ConfigurableFocusTrapFactory, FocusMonitor, } from '@angular/cdk/a11y';
2
+ import { BasePortalOutlet, CdkPortalOutlet, } from '@angular/cdk/portal';
3
+ import { DOCUMENT } from '@angular/common';
4
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Directive, ElementRef, EventEmitter, HostBinding, HostListener, Inject, Optional, ViewChild, ViewEncapsulation, } from '@angular/core';
5
+ import { tdSideSheetAnimations } from './side-sheet.animation';
6
+ import { CovalentSideSheetConfig } from './side-sheet.config';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/cdk/a11y";
9
+ import * as i2 from "./side-sheet.config";
10
+ import * as i3 from "@angular/cdk/portal";
11
+ export function _getFocusedElementPierceShadowDom() {
12
+ let activeElement = typeof document !== 'undefined' && document
13
+ ? document.activeElement
14
+ : null;
15
+ while (activeElement && activeElement.shadowRoot) {
16
+ const newActiveElement = activeElement.shadowRoot
17
+ .activeElement;
18
+ if (newActiveElement === activeElement) {
19
+ break;
20
+ }
21
+ else {
22
+ activeElement = newActiveElement;
23
+ }
24
+ }
25
+ return activeElement;
26
+ }
27
+ /**
28
+ * Base class for the `CovalentSideSheetContainer`. The base class does not implement
29
+ * animations as these are left to implementers of the side-sheet container.
30
+ */
31
+ export class _CovalentSideSheetContainerBase extends BasePortalOutlet {
32
+ constructor(_elementRef, _focusTrapFactory, _changeDetectorRef, _document,
33
+ /** The side-sheet configuration. */
34
+ _config, _focusMonitor) {
35
+ super();
36
+ this._elementRef = _elementRef;
37
+ this._focusTrapFactory = _focusTrapFactory;
38
+ this._changeDetectorRef = _changeDetectorRef;
39
+ this._config = _config;
40
+ this._focusMonitor = _focusMonitor;
41
+ /** Emits when an animation state changes. */
42
+ this._animationStateChanged = new EventEmitter();
43
+ /** Element that was focused before the side-sheet was opened. Save this to restore upon close. */
44
+ this._elementFocusedBeforeSideSheetWasOpened = null;
45
+ /**
46
+ * Type of interaction that led to the side-sheet being closed. This is used to determine
47
+ * whether the focus style will be applied when returning focus to its original location
48
+ * after the side-sheet is closed.
49
+ */
50
+ this._closeInteractionType = null;
51
+ /**
52
+ * Attaches a DOM portal to the side-sheet container.
53
+ * @param portal Portal to be attached.
54
+ * @deprecated To be turned into a method.
55
+ */
56
+ this.attachDomPortal = (portal) => {
57
+ return this._portalOutlet.attachDomPortal(portal);
58
+ };
59
+ this._ariaLabelledBy = _config.ariaLabelledBy || null;
60
+ this._document = _document;
61
+ }
62
+ /** Initializes the side-sheet container with the attached content. */
63
+ _initializeWithAttachedContent() {
64
+ this._setupFocusTrap();
65
+ // Save the previously focused element. This element will be re-focused
66
+ // when the side-sheet closes.
67
+ this._capturePreviouslyFocusedElement();
68
+ }
69
+ /**
70
+ * Attach a ComponentPortal as content to this side-sheet container.
71
+ * @param portal Portal to be attached as the side-sheet content.
72
+ */
73
+ attachComponentPortal(portal) {
74
+ return this._portalOutlet.attachComponentPortal(portal);
75
+ }
76
+ /**
77
+ * Attach a TemplatePortal as content to this side-sheet container.
78
+ * @param portal Portal to be attached as the side-sheet content.
79
+ */
80
+ attachTemplatePortal(portal) {
81
+ return this._portalOutlet.attachTemplatePortal(portal);
82
+ }
83
+ /** Moves focus back into the side-sheet if it was moved out. */
84
+ _recaptureFocus() {
85
+ if (!this._containsFocus()) {
86
+ this._trapFocus();
87
+ }
88
+ }
89
+ /**
90
+ * Moves the focus inside the focus trap. When autoFocus is not set to 'side-sheet', if focus
91
+ * cannot be moved then focus will go to the side-sheet container.
92
+ */
93
+ _trapFocus() {
94
+ const element = this._elementRef.nativeElement;
95
+ if (!this._config.autoFocus) {
96
+ if (!this._containsFocus()) {
97
+ element.focus();
98
+ }
99
+ }
100
+ else {
101
+ this._focusTrap
102
+ .focusInitialElementWhenReady()
103
+ .then((focusedSuccessfully) => {
104
+ // If we weren't able to find a focusable element in the side-sheet, then focus the side-sheet
105
+ // container instead.
106
+ if (!focusedSuccessfully) {
107
+ this._focusSideSheetContainer();
108
+ }
109
+ });
110
+ }
111
+ }
112
+ /** Restores focus to the element that was focused before the side-sheet opened. */
113
+ _restoreFocus() {
114
+ const previousElement = this._elementFocusedBeforeSideSheetWasOpened;
115
+ // We need the extra check, because IE can set the `activeElement` to null in some cases.
116
+ if (this._config.restoreFocus &&
117
+ previousElement &&
118
+ typeof previousElement.focus === 'function') {
119
+ const activeElement = _getFocusedElementPierceShadowDom();
120
+ const element = this._elementRef.nativeElement;
121
+ // Make sure that focus is still inside the side-sheet or is on the body (usually because a
122
+ // non-focusable element like the backdrop was clicked) before moving it. It's possible that
123
+ // the consumer moved it themselves before the animation was done, in which case we shouldn't
124
+ // do anything.
125
+ if (!activeElement ||
126
+ activeElement === this._document.body ||
127
+ activeElement === element ||
128
+ element.contains(activeElement)) {
129
+ if (this._focusMonitor) {
130
+ this._focusMonitor.focusVia(previousElement, this._closeInteractionType);
131
+ this._closeInteractionType = null;
132
+ }
133
+ else {
134
+ previousElement.focus();
135
+ }
136
+ }
137
+ }
138
+ if (this._focusTrap) {
139
+ this._focusTrap.destroy();
140
+ }
141
+ }
142
+ /** Sets up the focus trap. */
143
+ _setupFocusTrap() {
144
+ this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);
145
+ }
146
+ /** Captures the element that was focused before the side-sheet was opened. */
147
+ _capturePreviouslyFocusedElement() {
148
+ if (this._document) {
149
+ this._elementFocusedBeforeSideSheetWasOpened =
150
+ _getFocusedElementPierceShadowDom();
151
+ }
152
+ }
153
+ /** Focuses the side-sheet container. */
154
+ _focusSideSheetContainer() {
155
+ // Note that there is no focus method when rendering on the server.
156
+ if (this._elementRef.nativeElement.focus) {
157
+ this._elementRef.nativeElement.focus();
158
+ }
159
+ }
160
+ /** Returns whether focus is inside the side-sheet. */
161
+ _containsFocus() {
162
+ const element = this._elementRef.nativeElement;
163
+ const activeElement = _getFocusedElementPierceShadowDom();
164
+ return element === activeElement || element.contains(activeElement);
165
+ }
166
+ }
167
+ _CovalentSideSheetContainerBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: _CovalentSideSheetContainerBase, deps: [{ token: i0.ElementRef }, { token: i1.ConfigurableFocusTrapFactory }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT, optional: true }, { token: i2.CovalentSideSheetConfig }, { token: i1.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive });
168
+ _CovalentSideSheetContainerBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.2", type: _CovalentSideSheetContainerBase, viewQueries: [{ propertyName: "_portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], usesInheritance: true, ngImport: i0 });
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: _CovalentSideSheetContainerBase, decorators: [{
170
+ type: Directive
171
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.ConfigurableFocusTrapFactory }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
172
+ type: Optional
173
+ }, {
174
+ type: Inject,
175
+ args: [DOCUMENT]
176
+ }] }, { type: i2.CovalentSideSheetConfig }, { type: i1.FocusMonitor }]; }, propDecorators: { _portalOutlet: [{
177
+ type: ViewChild,
178
+ args: [CdkPortalOutlet, { static: true }]
179
+ }] } });
180
+ /**
181
+ * Internal component that wraps the generated side-sheet content.
182
+ * This animation below is the only reason for duplicating most of the Material dialog code
183
+ */
184
+ export class CovalentSideSheetContainerComponent extends _CovalentSideSheetContainerBase {
185
+ constructor() {
186
+ super(...arguments);
187
+ /** State of the side-sheet animation. */
188
+ this._state = 'enter';
189
+ this.tdSideSheetContainerClass = true;
190
+ this.tabIndex = -1;
191
+ this.arialModal = true;
192
+ this.idAttr = this._id;
193
+ this.roleAttr = this._config.role;
194
+ this.arialLabelByAttr = this._config.ariaLabel
195
+ ? null
196
+ : this._ariaLabelledBy;
197
+ this.arialDescribeByAttr = this._config.ariaDescribedBy || null;
198
+ this.arialLabelAttr = this._config.ariaLabel;
199
+ }
200
+ get sideSheetAnimationState() {
201
+ return this._state;
202
+ }
203
+ onAnimateStart($event) {
204
+ this._onAnimationStart($event);
205
+ }
206
+ onAnimateDone($event) {
207
+ this._onAnimationDone($event);
208
+ }
209
+ /** Callback, invoked whenever an animation on the host completes. */
210
+ _onAnimationDone({ toState, totalTime }) {
211
+ if (toState === 'enter') {
212
+ this._trapFocus();
213
+ this._animationStateChanged.next({ state: 'opened', totalTime });
214
+ }
215
+ else if (toState === 'exit') {
216
+ this._restoreFocus();
217
+ this._animationStateChanged.next({ state: 'closed', totalTime });
218
+ }
219
+ }
220
+ /** Callback, invoked when an animation on the host starts. */
221
+ _onAnimationStart({ toState, totalTime }) {
222
+ if (toState === 'enter') {
223
+ this._animationStateChanged.next({ state: 'opening', totalTime });
224
+ }
225
+ else if (toState === 'exit' || toState === 'void') {
226
+ this._animationStateChanged.next({ state: 'closing', totalTime });
227
+ }
228
+ }
229
+ /** Starts the side-sheet exit animation. */
230
+ _startExitAnimation() {
231
+ this._state = 'exit';
232
+ this._changeDetectorRef.markForCheck();
233
+ }
234
+ }
235
+ CovalentSideSheetContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentSideSheetContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
236
+ CovalentSideSheetContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: CovalentSideSheetContainerComponent, selector: "td-side-sheet-container", host: { listeners: { "@sideSheetContainer.start": "onAnimateStart($event)", "@sideSheetContainer.done": "onAnimateDone($event)" }, properties: { "class.td-side-sheet-container": "this.tdSideSheetContainerClass", "tabindex": "this.tabIndex", "aria-modal": "this.arialModal", "id": "this.idAttr", "attr.role": "this.roleAttr", "attr.aria-labelledby": "this.arialLabelByAttr", "attr.aria-describedby": "this.arialDescribeByAttr", "attr.aria-label": "this.arialLabelAttr", "@sideSheetContainer": "this.sideSheetAnimationState" } }, usesInheritance: true, ngImport: i0, template: ` <ng-template cdkPortalOutlet></ng-template> `, isInline: true, styles: [".td-side-sheet-container{background-color:#fff;box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f;display:block;padding:24px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.td-side-sheet-wrapper{display:flex;flex-direction:column;height:100%}.td-side-sheet-content{margin:0 -24px;padding:0 24px;overflow:auto;flex:1;-webkit-overflow-scrolling:touch}.td-side-sheet-title{margin:-16px 0 20px;display:flex;align-items:center}.td-side-sheet-actions{padding:8px 0;margin:0 -16px -24px;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;box-sizing:content-box}.td-side-sheet-actions[align=end]{justify-content:flex-end}.td-side-sheet-actions[align=center]{justify-content:center}.td-side-sheet-actions .mat-button-base+.mat-button-base,.td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .td-side-sheet-actions .mat-button-base+.mat-button-base,[dir=rtl] .td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"], directives: [{ type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [tdSideSheetAnimations.sideSheetContainer], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
237
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentSideSheetContainerComponent, decorators: [{
238
+ type: Component,
239
+ args: [{ selector: 'td-side-sheet-container', template: ` <ng-template cdkPortalOutlet></ng-template> `, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, animations: [tdSideSheetAnimations.sideSheetContainer], styles: [".td-side-sheet-container{background-color:#fff;box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f;display:block;padding:24px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.td-side-sheet-wrapper{display:flex;flex-direction:column;height:100%}.td-side-sheet-content{margin:0 -24px;padding:0 24px;overflow:auto;flex:1;-webkit-overflow-scrolling:touch}.td-side-sheet-title{margin:-16px 0 20px;display:flex;align-items:center}.td-side-sheet-actions{padding:8px 0;margin:0 -16px -24px;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;box-sizing:content-box}.td-side-sheet-actions[align=end]{justify-content:flex-end}.td-side-sheet-actions[align=center]{justify-content:center}.td-side-sheet-actions .mat-button-base+.mat-button-base,.td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .td-side-sheet-actions .mat-button-base+.mat-button-base,[dir=rtl] .td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"] }]
240
+ }], propDecorators: { tdSideSheetContainerClass: [{
241
+ type: HostBinding,
242
+ args: ['class.td-side-sheet-container']
243
+ }], tabIndex: [{
244
+ type: HostBinding,
245
+ args: ['tabindex']
246
+ }], arialModal: [{
247
+ type: HostBinding,
248
+ args: ['aria-modal']
249
+ }], idAttr: [{
250
+ type: HostBinding,
251
+ args: ['id']
252
+ }], roleAttr: [{
253
+ type: HostBinding,
254
+ args: ['attr.role']
255
+ }], arialLabelByAttr: [{
256
+ type: HostBinding,
257
+ args: ['attr.aria-labelledby']
258
+ }], arialDescribeByAttr: [{
259
+ type: HostBinding,
260
+ args: ['attr.aria-describedby']
261
+ }], arialLabelAttr: [{
262
+ type: HostBinding,
263
+ args: ['attr.aria-label']
264
+ }], sideSheetAnimationState: [{
265
+ type: HostBinding,
266
+ args: ['@sideSheetContainer']
267
+ }], onAnimateStart: [{
268
+ type: HostListener,
269
+ args: ['@sideSheetContainer.start', ['$event']]
270
+ }], onAnimateDone: [{
271
+ type: HostListener,
272
+ args: ['@sideSheetContainer.done', ['$event']]
273
+ }] } });
274
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC1jb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUVMLDRCQUE0QixFQUM1QixZQUFZLEdBRWIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGVBQWUsR0FJaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUVULFNBQVMsRUFDVCxVQUFVLEVBRVYsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLFFBQVEsRUFDUixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQUU5RCxNQUFNLFVBQVUsaUNBQWlDO0lBQy9DLElBQUksYUFBYSxHQUNmLE9BQU8sUUFBUSxLQUFLLFdBQVcsSUFBSSxRQUFRO1FBQ3pDLENBQUMsQ0FBRSxRQUFRLENBQUMsYUFBb0M7UUFDaEQsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUVYLE9BQU8sYUFBYSxJQUFJLGFBQWEsQ0FBQyxVQUFVLEVBQUU7UUFDaEQsTUFBTSxnQkFBZ0IsR0FBRyxhQUFhLENBQUMsVUFBVTthQUM5QyxhQUFtQyxDQUFDO1FBQ3ZDLElBQUksZ0JBQWdCLEtBQUssYUFBYSxFQUFFO1lBQ3RDLE1BQU07U0FDUDthQUFNO1lBQ0wsYUFBYSxHQUFHLGdCQUFnQixDQUFDO1NBQ2xDO0tBQ0Y7SUFFRCxP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LENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDekMsQ0FBQzs7Z0lBdkRVLG1DQUFtQztvSEFBbkMsbUNBQW1DLHNtQkFOcEMsK0NBQStDLDJ4Q0FJN0MsQ0FBQyxxQkFBcUIsQ0FBQyxrQkFBa0IsQ0FBQzsyRkFFM0MsbUNBQW1DO2tCQVIvQyxTQUFTOytCQUNFLHlCQUF5QixZQUN6QiwrQ0FBK0MsaUJBRTFDLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE9BQU8sY0FDcEMsQ0FBQyxxQkFBcUIsQ0FBQyxrQkFBa0IsQ0FBQzs4QkFNUix5QkFBeUI7c0JBQXRFLFdBQVc7dUJBQUMsK0JBQStCO2dCQUVuQixRQUFRO3NCQUFoQyxXQUFXO3VCQUFDLFVBQVU7Z0JBQ0ksVUFBVTtzQkFBcEMsV0FBVzt1QkFBQyxZQUFZO2dCQUNOLE1BQU07c0JBQXhCLFdBQVc7dUJBQUMsSUFBSTtnQkFDUyxRQUFRO3NCQUFqQyxXQUFXO3VCQUFDLFdBQVc7Z0JBQ2EsZ0JBQWdCO3NCQUFwRCxXQUFXO3VCQUFDLHNCQUFzQjtnQkFHRyxtQkFBbUI7c0JBQXhELFdBQVc7dUJBQUMsdUJBQXVCO2dCQUVKLGNBQWM7c0JBQTdDLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUNVLHVCQUF1QjtzQkFBOUQsV0FBVzt1QkFBQyxxQkFBcUI7Z0JBR3FCLGNBQWM7c0JBQXBFLFlBQVk7dUJBQUMsMkJBQTJCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBTUMsYUFBYTtzQkFBbEUsWUFBWTt1QkFBQywwQkFBMEIsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlICovXG5pbXBvcnQgeyBBbmltYXRpb25FdmVudCB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgQ29uZmlndXJhYmxlRm9jdXNUcmFwLFxuICBDb25maWd1cmFibGVGb2N1c1RyYXBGYWN0b3J5LFxuICBGb2N1c01vbml0b3IsXG4gIEZvY3VzT3JpZ2luLFxufSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge1xuICBCYXNlUG9ydGFsT3V0bGV0LFxuICBDZGtQb3J0YWxPdXRsZXQsXG4gIENvbXBvbmVudFBvcnRhbCxcbiAgRG9tUG9ydGFsLFxuICBUZW1wbGF0ZVBvcnRhbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50UmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEVtYmVkZGVkVmlld1JlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3QsXG4gIE9wdGlvbmFsLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRkU2lkZVNoZWV0QW5pbWF0aW9ucyB9IGZyb20gJy4vc2lkZS1zaGVldC5hbmltYXRpb24nO1xuaW1wb3J0IHsgQ292YWxlbnRTaWRlU2hlZXRDb25maWcgfSBmcm9tICcuL3NpZGUtc2hlZXQuY29uZmlnJztcblxuZXhwb3J0IGZ1bmN0aW9uIF9nZXRGb2N1c2VkRWxlbWVudFBpZXJjZVNoYWRvd0RvbSgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICBsZXQgYWN0aXZlRWxlbWVudCA9XG4gICAgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJyAmJiBkb2N1bWVudFxuICAgICAgPyAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCB8IG51bGwpXG4gICAgICA6IG51bGw7XG5cbiAgd2hpbGUgKGFjdGl2ZUVsZW1lbnQgJiYgYWN0aXZlRWxlbWVudC5zaGFkb3dSb290KSB7XG4gICAgY29uc3QgbmV3QWN0aXZlRWxlbWVudCA9IGFjdGl2ZUVsZW1lbnQuc2hhZG93Um9vdFxuICAgICAgLmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQgfCBudWxsO1xuICAgIGlmIChuZXdBY3RpdmVFbGVtZW50ID09PSBhY3RpdmVFbGVtZW50KSB7XG4gICAgICBicmVhaztcbiAgICB9IGVsc2Uge1xuICAgICAgYWN0aXZlRWxlbWVudCA9IG5ld0FjdGl2ZUVsZW1lbnQ7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGFjdGl2ZUVsZW1lbnQ7XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgdGhlIGBDb3ZhbGVudFNpZGVTaGVldENvbnRhaW5lcmAuIFRoZSBiYXNlIGNsYXNzIGRvZXMgbm90IGltcGxlbWVudFxuICogYW5pbWF0aW9ucyBhcyB0aGVzZSBhcmUgbGVmdCB0byBpbXBsZW1lbnRlcnMgb2YgdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBfQ292YWxlbnRTaWRlU2hlZXRDb250YWluZXJCYXNlIGV4dGVuZHMgQmFzZVBvcnRhbE91dGxldCB7XG4gIHByb3RlY3RlZCBfZG9jdW1lbnQ6IERvY3VtZW50O1xuXG4gIC8qKiBUaGUgcG9ydGFsIG91dGxldCBpbnNpZGUgb2YgdGhpcyBjb250YWluZXIgaW50byB3aGljaCB0aGUgc2lkZS1zaGVldCBjb250ZW50IHdpbGwgYmUgbG9hZGVkLiAqL1xuICBAVmlld0NoaWxkKENka1BvcnRhbE91dGxldCwgeyBzdGF0aWM6IHRydWUgfSkgX3BvcnRhbE91dGxldCE6IENka1BvcnRhbE91dGxldDtcblxuICAvKiogVGhlIGNsYXNzIHRoYXQgdHJhcHMgYW5kIG1hbmFnZXMgZm9jdXMgd2l0aGluIHRoZSBzaWRlLXNoZWV0LiAqL1xuICBwcml2YXRlIF9mb2N1c1RyYXAhOiBDb25maWd1cmFibGVGb2N1c1RyYXA7XG5cbiAgLyoqIEVtaXRzIHdoZW4gYW4gYW5pbWF0aW9uIHN0YXRlIGNoYW5nZXMuICovXG4gIF9hbmltYXRpb25TdGF0ZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHtcbiAgICBzdGF0ZTogJ29wZW5lZCcgfCAnb3BlbmluZycgfCAnY2xvc2luZycgfCAnY2xvc2VkJztcbiAgICB0b3RhbFRpbWU6IG51bWJlcjtcbiAgfT4oKTtcblxuICAvKiogRWxlbWVudCB0aGF0IHdhcyBmb2N1c2VkIGJlZm9yZSB0aGUgc2lkZS1zaGVldCB3YXMgb3BlbmVkLiBTYXZlIHRoaXMgdG8gcmVzdG9yZSB1cG9uIGNsb3NlLiAqL1xuICBwcml2YXRlIF9lbGVtZW50Rm9jdXNlZEJlZm9yZVNpZGVTaGVldFdhc09wZW5lZDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVHlwZSBvZiBpbnRlcmFjdGlvbiB0aGF0IGxlZCB0byB0aGUgc2lkZS1zaGVldCBiZWluZyBjbG9zZWQuIFRoaXMgaXMgdXNlZCB0byBkZXRlcm1pbmVcbiAgICogd2hldGhlciB0aGUgZm9jdXMgc3R5bGUgd2lsbCBiZSBhcHBsaWVkIHdoZW4gcmV0dXJuaW5nIGZvY3VzIHRvIGl0cyBvcmlnaW5hbCBsb2NhdGlvblxuICAgKiBhZnRlciB0aGUgc2lkZS1zaGVldCBpcyBjbG9zZWQuXG4gICAqL1xuICBfY2xvc2VJbnRlcmFjdGlvblR5cGU6IEZvY3VzT3JpZ2luIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIElEIG9mIHRoZSBlbGVtZW50IHRoYXQgc2hvdWxkIGJlIGNvbnNpZGVyZWQgYXMgdGhlIHNpZGUtc2hlZXQncyBsYWJlbC4gKi9cbiAgX2FyaWFMYWJlbGxlZEJ5OiBzdHJpbmcgfCBudWxsO1xuXG4gIC8qKiBJRCBmb3IgdGhlIGNvbnRhaW5lciBET00gZWxlbWVudC4gKi9cbiAgX2lkITogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcm90ZWN0ZWQgX2ZvY3VzVHJhcEZhY3Rvcnk6IENvbmZpZ3VyYWJsZUZvY3VzVHJhcEZhY3RvcnksXG4gICAgcHJvdGVjdGVkIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChET0NVTUVOVCkgX2RvY3VtZW50OiBhbnksXG4gICAgLyoqIFRoZSBzaWRlLXNoZWV0IGNvbmZpZ3VyYXRpb24uICovXG4gICAgcHVibGljIF9jb25maWc6IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnLFxuICAgIHByaXZhdGUgX2ZvY3VzTW9uaXRvcj86IEZvY3VzTW9uaXRvclxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX2FyaWFMYWJlbGxlZEJ5ID0gX2NvbmZpZy5hcmlhTGFiZWxsZWRCeSB8fCBudWxsO1xuICAgIHRoaXMuX2RvY3VtZW50ID0gX2RvY3VtZW50O1xuICB9XG5cbiAgLyoqIFN0YXJ0cyB0aGUgc2lkZS1zaGVldCBleGl0IGFuaW1hdGlvbi4gKi9cbiAgYWJzdHJhY3QgX3N0YXJ0RXhpdEFuaW1hdGlvbigpOiB2b2lkO1xuXG4gIC8qKiBJbml0aWFsaXplcyB0aGUgc2lkZS1zaGVldCBjb250YWluZXIgd2l0aCB0aGUgYXR0YWNoZWQgY29udGVudC4gKi9cbiAgX2luaXRpYWxpemVXaXRoQXR0YWNoZWRDb250ZW50KCkge1xuICAgIHRoaXMuX3NldHVwRm9jdXNUcmFwKCk7XG4gICAgLy8gU2F2ZSB0aGUgcHJldmlvdXNseSBmb2N1c2VkIGVsZW1lbnQuIFRoaXMgZWxlbWVudCB3aWxsIGJlIHJlLWZvY3VzZWRcbiAgICAvLyB3aGVuIHRoZSBzaWRlLXNoZWV0IGNsb3Nlcy5cbiAgICB0aGlzLl9jYXB0dXJlUHJldmlvdXNseUZvY3VzZWRFbGVtZW50KCk7XG4gIH1cblxuICAvKipcbiAgICogQXR0YWNoIGEgQ29tcG9uZW50UG9ydGFsIGFzIGNvbnRlbnQgdG8gdGhpcyBzaWRlLXNoZWV0IGNvbnRhaW5lci5cbiAgICogQHBhcmFtIHBvcnRhbCBQb3J0YWwgdG8gYmUgYXR0YWNoZWQgYXMgdGhlIHNpZGUtc2hlZXQgY29udGVudC5cbiAgICovXG4gIGF0dGFjaENvbXBvbmVudFBvcnRhbDxUPihwb3J0YWw6IENvbXBvbmVudFBvcnRhbDxUPik6IENvbXBvbmVudFJlZjxUPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BvcnRhbE91dGxldC5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2ggYSBUZW1wbGF0ZVBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMgc2lkZS1zaGVldCBjb250YWluZXIuXG4gICAqIEBwYXJhbSBwb3J0YWwgUG9ydGFsIHRvIGJlIGF0dGFjaGVkIGFzIHRoZSBzaWRlLXNoZWV0IGNvbnRlbnQuXG4gICAqL1xuICBhdHRhY2hUZW1wbGF0ZVBvcnRhbDxDPihwb3J0YWw6IFRlbXBsYXRlUG9ydGFsPEM+KTogRW1iZWRkZWRWaWV3UmVmPEM+IHtcbiAgICByZXR1cm4gdGhpcy5fcG9ydGFsT3V0bGV0LmF0dGFjaFRlbXBsYXRlUG9ydGFsKHBvcnRhbCk7XG4gIH1cblxuICAvKipcbiAgICogQXR0YWNoZXMgYSBET00gcG9ydGFsIHRvIHRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lci5cbiAgICogQHBhcmFtIHBvcnRhbCBQb3J0YWwgdG8gYmUgYXR0YWNoZWQuXG4gICAqIEBkZXByZWNhdGVkIFRvIGJlIHR1cm5lZCBpbnRvIGEgbWV0aG9kLlxuICAgKi9cbiAgb3ZlcnJpZGUgYXR0YWNoRG9tUG9ydGFsID0gKHBvcnRhbDogRG9tUG9ydGFsKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuX3BvcnRhbE91dGxldC5hdHRhY2hEb21Qb3J0YWwocG9ydGFsKTtcbiAgfTtcblxuICAvKiogTW92ZXMgZm9jdXMgYmFjayBpbnRvIHRoZSBzaWRlLXNoZWV0IGlmIGl0IHdhcyBtb3ZlZCBvdXQuICovXG4gIF9yZWNhcHR1cmVGb2N1cygpIHtcbiAgICBpZiAoIXRoaXMuX2NvbnRhaW5zRm9jdXMoKSkge1xuICAgICAgdGhpcy5fdHJhcEZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1vdmVzIHRoZSBmb2N1cyBpbnNpZGUgdGhlIGZvY3VzIHRyYXAuIFdoZW4gYXV0b0ZvY3VzIGlzIG5vdCBzZXQgdG8gJ3NpZGUtc2hlZXQnLCBpZiBmb2N1c1xuICAgKiBjYW5ub3QgYmUgbW92ZWQgdGhlbiBmb2N1cyB3aWxsIGdvIHRvIHRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lci5cbiAgICovXG4gIHByb3RlY3RlZCBfdHJhcEZvY3VzKCkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKCF0aGlzLl9jb25maWcuYXV0b0ZvY3VzKSB7XG4gICAgICBpZiAoIXRoaXMuX2NvbnRhaW5zRm9jdXMoKSkge1xuICAgICAgICBlbGVtZW50LmZvY3VzKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2ZvY3VzVHJhcFxuICAgICAgICAuZm9jdXNJbml0aWFsRWxlbWVudFdoZW5SZWFkeSgpXG4gICAgICAgIC50aGVuKChmb2N1c2VkU3VjY2Vzc2Z1bGx5KSA9PiB7XG4gICAgICAgICAgLy8gSWYgd2Ugd2VyZW4ndCBhYmxlIHRvIGZpbmQgYSBmb2N1c2FibGUgZWxlbWVudCBpbiB0aGUgc2lkZS1zaGVldCwgdGhlbiBmb2N1cyB0aGUgc2lkZS1zaGVldFxuICAgICAgICAgIC8vIGNvbnRhaW5lciBpbnN0ZWFkLlxuICAgICAgICAgIGlmICghZm9jdXNlZFN1Y2Nlc3NmdWxseSkge1xuICAgICAgICAgICAgdGhpcy5fZm9jdXNTaWRlU2hlZXRDb250YWluZXIoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBSZXN0b3JlcyBmb2N1cyB0byB0aGUgZWxlbWVudCB0aGF0IHdhcyBmb2N1c2VkIGJlZm9yZSB0aGUgc2lkZS1zaGVldCBvcGVuZWQuICovXG4gIHByb3RlY3RlZCBfcmVzdG9yZUZvY3VzKCkge1xuICAgIGNvbnN0IHByZXZpb3VzRWxlbWVudCA9IHRoaXMuX2VsZW1lbnRGb2N1c2VkQmVmb3JlU2lkZVNoZWV0V2FzT3BlbmVkO1xuXG4gICAgLy8gV2UgbmVlZCB0aGUgZXh0cmEgY2hlY2ssIGJlY2F1c2UgSUUgY2FuIHNldCB0aGUgYGFjdGl2ZUVsZW1lbnRgIHRvIG51bGwgaW4gc29tZSBjYXNlcy5cbiAgICBpZiAoXG4gICAgICB0aGlzLl9jb25maWcucmVzdG9yZUZvY3VzICYmXG4gICAgICBwcmV2aW91c0VsZW1lbnQgJiZcbiAgICAgIHR5cGVvZiBwcmV2aW91c0VsZW1lbnQuZm9jdXMgPT09ICdmdW5jdGlvbidcbiAgICApIHtcbiAgICAgIGNvbnN0IGFjdGl2ZUVsZW1lbnQgPSBfZ2V0Rm9jdXNlZEVsZW1lbnRQaWVyY2VTaGFkb3dEb20oKTtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IGZvY3VzIGlzIHN0aWxsIGluc2lkZSB0aGUgc2lkZS1zaGVldCBvciBpcyBvbiB0aGUgYm9keSAodXN1YWxseSBiZWNhdXNlIGFcbiAgICAgIC8vIG5vbi1mb2N1c2FibGUgZWxlbWVudCBsaWtlIHRoZSBiYWNrZHJvcCB3YXMgY2xpY2tlZCkgYmVmb3JlIG1vdmluZyBpdC4gSXQncyBwb3NzaWJsZSB0aGF0XG4gICAgICAvLyB0aGUgY29uc3VtZXIgbW92ZWQgaXQgdGhlbXNlbHZlcyBiZWZvcmUgdGhlIGFuaW1hdGlvbiB3YXMgZG9uZSwgaW4gd2hpY2ggY2FzZSB3ZSBzaG91bGRuJ3RcbiAgICAgIC8vIGRvIGFueXRoaW5nLlxuICAgICAgaWYgKFxuICAgICAgICAhYWN0aXZlRWxlbWVudCB8fFxuICAgICAgICBhY3RpdmVFbGVtZW50ID09PSB0aGlzLl9kb2N1bWVudC5ib2R5IHx8XG4gICAgICAgIGFjdGl2ZUVsZW1lbnQgPT09IGVsZW1lbnQgfHxcbiAgICAgICAgZWxlbWVudC5jb250YWlucyhhY3RpdmVFbGVtZW50KVxuICAgICAgKSB7XG4gICAgICAgIGlmICh0aGlzLl9mb2N1c01vbml0b3IpIHtcbiAgICAgICAgICB0aGlzLl9mb2N1c01vbml0b3IuZm9jdXNWaWEoXG4gICAgICAgICAgICBwcmV2aW91c0VsZW1lbnQsXG4gICAgICAgICAgICB0aGlzLl9jbG9zZUludGVyYWN0aW9uVHlwZVxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhpcy5fY2xvc2VJbnRlcmFjdGlvblR5cGUgPSBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHByZXZpb3VzRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2ZvY3VzVHJhcCkge1xuICAgICAgdGhpcy5fZm9jdXNUcmFwLmRlc3Ryb3koKTtcbiAgICB9XG4gIH1cblxuICAvKiogU2V0cyB1cCB0aGUgZm9jdXMgdHJhcC4gKi9cbiAgcHJpdmF0ZSBfc2V0dXBGb2N1c1RyYXAoKSB7XG4gICAgdGhpcy5fZm9jdXNUcmFwID0gdGhpcy5fZm9jdXNUcmFwRmFjdG9yeS5jcmVhdGUoXG4gICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcbiAgICApO1xuICB9XG5cbiAgLyoqIENhcHR1cmVzIHRoZSBlbGVtZW50IHRoYXQgd2FzIGZvY3VzZWQgYmVmb3JlIHRoZSBzaWRlLXNoZWV0IHdhcyBvcGVuZWQuICovXG4gIHByaXZhdGUgX2NhcHR1cmVQcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQoKSB7XG4gICAgaWYgKHRoaXMuX2RvY3VtZW50KSB7XG4gICAgICB0aGlzLl9lbGVtZW50Rm9jdXNlZEJlZm9yZVNpZGVTaGVldFdhc09wZW5lZCA9XG4gICAgICAgIF9nZXRGb2N1c2VkRWxlbWVudFBpZXJjZVNoYWRvd0RvbSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBGb2N1c2VzIHRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lci4gKi9cbiAgcHJpdmF0ZSBfZm9jdXNTaWRlU2hlZXRDb250YWluZXIoKSB7XG4gICAgLy8gTm90ZSB0aGF0IHRoZXJlIGlzIG5vIGZvY3VzIG1ldGhvZCB3aGVuIHJlbmRlcmluZyBvbiB0aGUgc2VydmVyLlxuICAgIGlmICh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBSZXR1cm5zIHdoZXRoZXIgZm9jdXMgaXMgaW5zaWRlIHRoZSBzaWRlLXNoZWV0LiAqL1xuICBwcml2YXRlIF9jb250YWluc0ZvY3VzKCkge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IF9nZXRGb2N1c2VkRWxlbWVudFBpZXJjZVNoYWRvd0RvbSgpO1xuICAgIHJldHVybiBlbGVtZW50ID09PSBhY3RpdmVFbGVtZW50IHx8IGVsZW1lbnQuY29udGFpbnMoYWN0aXZlRWxlbWVudCk7XG4gIH1cbn1cblxuLyoqXG4gKiBJbnRlcm5hbCBjb21wb25lbnQgdGhhdCB3cmFwcyB0aGUgZ2VuZXJhdGVkIHNpZGUtc2hlZXQgY29udGVudC5cbiAqIFRoaXMgYW5pbWF0aW9uIGJlbG93IGlzIHRoZSBvbmx5IHJlYXNvbiBmb3IgZHVwbGljYXRpbmcgbW9zdCBvZiB0aGUgTWF0ZXJpYWwgZGlhbG9nIGNvZGVcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtc2lkZS1zaGVldC1jb250YWluZXInLFxuICB0ZW1wbGF0ZTogYCA8bmctdGVtcGxhdGUgY2RrUG9ydGFsT3V0bGV0PjwvbmctdGVtcGxhdGU+IGAsXG4gIHN0eWxlVXJsczogWydzaWRlLXNoZWV0LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICBhbmltYXRpb25zOiBbdGRTaWRlU2hlZXRBbmltYXRpb25zLnNpZGVTaGVldENvbnRhaW5lcl0sXG59KVxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgX0NvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQmFzZSB7XG4gIC8qKiBTdGF0ZSBvZiB0aGUgc2lkZS1zaGVldCBhbmltYXRpb24uICovXG4gIF9zdGF0ZTogJ3ZvaWQnIHwgJ2VudGVyJyB8ICdleGl0JyA9ICdlbnRlcic7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50ZC1zaWRlLXNoZWV0LWNvbnRhaW5lcicpIHRkU2lkZVNoZWV0Q29udGFpbmVyQ2xhc3MgPVxuICAgIHRydWU7XG4gIEBIb3N0QmluZGluZygndGFiaW5kZXgnKSB0YWJJbmRleCA9IC0xO1xuICBASG9zdEJpbmRpbmcoJ2FyaWEtbW9kYWwnKSBhcmlhbE1vZGFsID0gdHJ1ZTtcbiAgQEhvc3RCaW5kaW5nKCdpZCcpIGlkQXR0ciA9IHRoaXMuX2lkO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIHJvbGVBdHRyID0gdGhpcy5fY29uZmlnLnJvbGU7XG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxhYmVsbGVkYnknKSBhcmlhbExhYmVsQnlBdHRyID0gdGhpcy5fY29uZmlnLmFyaWFMYWJlbFxuICAgID8gbnVsbFxuICAgIDogdGhpcy5fYXJpYUxhYmVsbGVkQnk7XG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWRlc2NyaWJlZGJ5JykgYXJpYWxEZXNjcmliZUJ5QXR0ciA9XG4gICAgdGhpcy5fY29uZmlnLmFyaWFEZXNjcmliZWRCeSB8fCBudWxsO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1sYWJlbCcpIGFyaWFsTGFiZWxBdHRyID0gdGhpcy5fY29uZmlnLmFyaWFMYWJlbDtcbiAgQEhvc3RCaW5kaW5nKCdAc2lkZVNoZWV0Q29udGFpbmVyJykgZ2V0IHNpZGVTaGVldEFuaW1hdGlvblN0YXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuICBASG9zdExpc3RlbmVyKCdAc2lkZVNoZWV0Q29udGFpbmVyLnN0YXJ0JywgWyckZXZlbnQnXSkgb25BbmltYXRlU3RhcnQoXG4gICAgJGV2ZW50OiBBbmltYXRpb25FdmVudFxuICApIHtcbiAgICB0aGlzLl9vbkFuaW1hdGlvblN0YXJ0KCRldmVudCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdAc2lkZVNoZWV0Q29udGFpbmVyLmRvbmUnLCBbJyRldmVudCddKSBvbkFuaW1hdGVEb25lKFxuICAgICRldmVudDogQW5pbWF0aW9uRXZlbnRcbiAgKSB7XG4gICAgdGhpcy5fb25BbmltYXRpb25Eb25lKCRldmVudCk7XG4gIH1cblxuICAvKiogQ2FsbGJhY2ssIGludm9rZWQgd2hlbmV2ZXIgYW4gYW5pbWF0aW9uIG9uIHRoZSBob3N0IGNvbXBsZXRlcy4gKi9cbiAgX29uQW5pbWF0aW9uRG9uZSh7IHRvU3RhdGUsIHRvdGFsVGltZSB9OiBBbmltYXRpb25FdmVudCkge1xuICAgIGlmICh0b1N0YXRlID09PSAnZW50ZXInKSB7XG4gICAgICB0aGlzLl90cmFwRm9jdXMoKTtcbiAgICAgIHRoaXMuX2FuaW1hdGlvblN0YXRlQ2hhbmdlZC5uZXh0KHsgc3RhdGU6ICdvcGVuZWQnLCB0b3RhbFRpbWUgfSk7XG4gICAgfSBlbHNlIGlmICh0b1N0YXRlID09PSAnZXhpdCcpIHtcbiAgICAgIHRoaXMuX3Jlc3RvcmVGb2N1cygpO1xuICAgICAgdGhpcy5fYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLm5leHQoeyBzdGF0ZTogJ2Nsb3NlZCcsIHRvdGFsVGltZSB9KTtcbiAgICB9XG4gIH1cblxuICAvKiogQ2FsbGJhY2ssIGludm9rZWQgd2hlbiBhbiBhbmltYXRpb24gb24gdGhlIGhvc3Qgc3RhcnRzLiAqL1xuICBfb25BbmltYXRpb25TdGFydCh7IHRvU3RhdGUsIHRvdGFsVGltZSB9OiBBbmltYXRpb25FdmVudCkge1xuICAgIGlmICh0b1N0YXRlID09PSAnZW50ZXInKSB7XG4gICAgICB0aGlzLl9hbmltYXRpb25TdGF0ZUNoYW5nZWQubmV4dCh7IHN0YXRlOiAnb3BlbmluZycsIHRvdGFsVGltZSB9KTtcbiAgICB9IGVsc2UgaWYgKHRvU3RhdGUgPT09ICdleGl0JyB8fCB0b1N0YXRlID09PSAndm9pZCcpIHtcbiAgICAgIHRoaXMuX2FuaW1hdGlvblN0YXRlQ2hhbmdlZC5uZXh0KHsgc3RhdGU6ICdjbG9zaW5nJywgdG90YWxUaW1lIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBTdGFydHMgdGhlIHNpZGUtc2hlZXQgZXhpdCBhbmltYXRpb24uICovXG4gIF9zdGFydEV4aXRBbmltYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fc3RhdGUgPSAnZXhpdCc7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiJdfQ==