@covalent/core 4.0.0 → 4.1.1-beta.3

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 +4 -38
  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 +132 -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 +93 -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 +636 -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 +1025 -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 +629 -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 +1001 -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 +22 -10
  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 +3 -0
  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 +8 -5
  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 +3 -0
  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 -47
  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,636 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, Directive, Optional, Host, Input, Output, HostBinding, HostListener, forwardRef, Component, ChangeDetectionStrategy, ViewChild, ContentChild, Injectable, NgModule } from '@angular/core';
3
+ import * as i4 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i1 from '@angular/forms';
6
+ import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
7
+ import * as i6 from '@angular/cdk/portal';
8
+ import { TemplatePortalDirective, PortalModule } from '@angular/cdk/portal';
9
+ import * as i3 from '@angular/material/icon';
10
+ import { MatIconModule } from '@angular/material/icon';
11
+ import * as i1$1 from '@angular/material/button';
12
+ import { MatButtonModule } from '@angular/material/button';
13
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
14
+ import * as i1$2 from '@angular/common/http';
15
+ import { HttpRequest, HttpHeaders, HttpParams, HttpEventType } from '@angular/common/http';
16
+ import { Subject } from 'rxjs';
17
+ import { tap } from 'rxjs/operators';
18
+
19
+ class TdFileSelectDirective {
20
+ constructor(model) {
21
+ this.model = model;
22
+ this._multiple = false;
23
+ /**
24
+ * fileSelect?: function
25
+ * Event emitted when a file or files are selected in host [HTMLInputElement].
26
+ * Emits a [FileList | File] object.
27
+ * Alternative to not use [(ngModel)].
28
+ */
29
+ this.fileSelect = new EventEmitter();
30
+ }
31
+ /**
32
+ * multiple?: boolean
33
+ * Sets whether multiple files can be selected at once in host element, or just a single file.
34
+ * Can also be 'multiple' native attribute.
35
+ */
36
+ set multiple(multiple) {
37
+ this._multiple = coerceBooleanProperty(multiple);
38
+ }
39
+ /**
40
+ * Binds native 'multiple' attribute if [multiple] property is 'true'.
41
+ */
42
+ get multipleBinding() {
43
+ return this._multiple ? '' : undefined;
44
+ }
45
+ /**
46
+ * Listens to 'change' host event to get [HTMLInputElement] files.
47
+ * Emits the 'fileSelect' event with a [FileList] or [File] depending if 'multiple' attr exists in host.
48
+ * Uses [(ngModel)] if declared, instead of emitting 'fileSelect' event.
49
+ */
50
+ onChange(event) {
51
+ if (event.target instanceof HTMLInputElement) {
52
+ const fileInputEl = event.target;
53
+ const files = fileInputEl.files || new FileList();
54
+ if (files.length) {
55
+ const value = this._multiple
56
+ ? files.length > 1
57
+ ? files
58
+ : files[0]
59
+ : files[0];
60
+ this.model
61
+ ? this.model.update.emit(value)
62
+ : this.fileSelect.emit(value);
63
+ }
64
+ }
65
+ }
66
+ }
67
+ TdFileSelectDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileSelectDirective, deps: [{ token: i1.NgModel, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
68
+ TdFileSelectDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.2", type: TdFileSelectDirective, selector: "[tdFileSelect]", inputs: { multiple: "multiple" }, outputs: { fileSelect: "fileSelect" }, host: { listeners: { "change": "onChange($event)" }, properties: { "attr.multiple": "this.multipleBinding" } }, ngImport: i0 });
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileSelectDirective, decorators: [{
70
+ type: Directive,
71
+ args: [{
72
+ selector: '[tdFileSelect]',
73
+ }]
74
+ }], ctorParameters: function () {
75
+ return [{ type: i1.NgModel, decorators: [{
76
+ type: Optional
77
+ }, {
78
+ type: Host
79
+ }] }];
80
+ }, propDecorators: { multiple: [{
81
+ type: Input
82
+ }], fileSelect: [{
83
+ type: Output
84
+ }], multipleBinding: [{
85
+ type: HostBinding,
86
+ args: ['attr.multiple']
87
+ }], onChange: [{
88
+ type: HostListener,
89
+ args: ['change', ['$event']]
90
+ }] } });
91
+
92
+ class TdFileDropBase {
93
+ }
94
+ class TdFileDropDirective {
95
+ constructor(_renderer, _element) {
96
+ this._renderer = _renderer;
97
+ this._element = _element;
98
+ this._multiple = false;
99
+ this.disabled = false;
100
+ /**
101
+ * fileDrop?: function
102
+ * Event emitted when a file or files are dropped in host element after being validated.
103
+ * Emits a [FileList | File] object.
104
+ */
105
+ this.fileDrop = new EventEmitter();
106
+ }
107
+ /**
108
+ * multiple?: boolean
109
+ * Sets whether multiple files can be dropped at once in host element, or just a single file.
110
+ * Can also be 'multiple' native attribute.
111
+ */
112
+ set multiple(multiple) {
113
+ this._multiple = coerceBooleanProperty(multiple);
114
+ }
115
+ /**
116
+ * Binds native 'multiple' attribute if [multiple] property is 'true'.
117
+ */
118
+ get multipleBinding() {
119
+ return this._multiple ? '' : undefined;
120
+ }
121
+ /**
122
+ * Binds native 'disabled' attribute if [disabled] property is 'true'.
123
+ */
124
+ get disabledBinding() {
125
+ return this.disabled ? '' : undefined;
126
+ }
127
+ /**
128
+ * Listens to 'drop' host event to get validated transfer items.
129
+ * Emits the 'fileDrop' event with a [FileList] or [File] depending if 'multiple' attr exists in host.
130
+ * Stops event propagation and default action from browser for 'drop' event.
131
+ */
132
+ onDrop(event) {
133
+ var _a;
134
+ if (!this.disabled) {
135
+ const transfer = (_a = event.dataTransfer) !== null && _a !== void 0 ? _a : new DataTransfer();
136
+ const files = transfer.files;
137
+ if (files.length) {
138
+ const value = this._multiple
139
+ ? files.length > 1
140
+ ? files
141
+ : files[0]
142
+ : files[0];
143
+ this.fileDrop.emit(value);
144
+ }
145
+ }
146
+ this._renderer.removeClass(this._element.nativeElement, 'drop-zone');
147
+ this._stopEvent(event);
148
+ }
149
+ /**
150
+ * Listens to 'dragover' host event to validate transfer items.
151
+ * Checks if 'multiple' attr exists in host to allow multiple file drops.
152
+ * Stops event propagation and default action from browser for 'dragover' event.
153
+ */
154
+ onDragOver(event) {
155
+ const transfer = event.dataTransfer || new DataTransfer();
156
+ transfer.dropEffect = this._typeCheck(transfer.types);
157
+ if (this.disabled ||
158
+ (!this._multiple &&
159
+ ((transfer.items && transfer.items.length > 1) ||
160
+ transfer.mozItemCount > 1))) {
161
+ transfer.dropEffect = 'none';
162
+ }
163
+ else {
164
+ transfer.dropEffect = 'copy';
165
+ }
166
+ this._stopEvent(event);
167
+ }
168
+ /**
169
+ * Listens to 'dragenter' host event to add animation class 'drop-zone' which can be overriden in host.
170
+ * Stops event propagation and default action from browser for 'dragenter' event.
171
+ */
172
+ onDragEnter(event) {
173
+ if (!this.disabled) {
174
+ this._renderer.addClass(this._element.nativeElement, 'drop-zone');
175
+ }
176
+ this._stopEvent(event);
177
+ }
178
+ /**
179
+ * Listens to 'dragleave' host event to remove animation class 'drop-zone'.
180
+ * Stops event propagation and default action from browser for 'dragleave' event.
181
+ */
182
+ onDragLeave(event) {
183
+ this._renderer.removeClass(this._element.nativeElement, 'drop-zone');
184
+ this._stopEvent(event);
185
+ }
186
+ /**
187
+ * Validates if the transfer item types are 'Files'.
188
+ */
189
+ _typeCheck(types) {
190
+ let dropEffect = 'none';
191
+ if (types &&
192
+ ((types.contains && types.contains('Files')) ||
193
+ (types.indexOf && types.indexOf('Files') !== -1))) {
194
+ dropEffect = 'copy';
195
+ }
196
+ return dropEffect;
197
+ }
198
+ _stopEvent(event) {
199
+ event.preventDefault();
200
+ event.stopPropagation();
201
+ }
202
+ }
203
+ TdFileDropDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileDropDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
204
+ TdFileDropDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.2", type: TdFileDropDirective, selector: "[tdFileDrop]", inputs: { multiple: "multiple", disabled: "disabled" }, outputs: { fileDrop: "fileDrop" }, host: { listeners: { "drop": "onDrop($event)", "dragover": "onDragOver($event)", "dragenter": "onDragEnter($event)", "dragleave": "onDragLeave($event)" }, properties: { "attr.multiple": "this.multipleBinding", "attr.disabled": "this.disabledBinding" } }, ngImport: i0 });
205
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileDropDirective, decorators: [{
206
+ type: Directive,
207
+ args: [{
208
+ selector: '[tdFileDrop]',
209
+ }]
210
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { multiple: [{
211
+ type: Input
212
+ }], disabled: [{
213
+ type: Input
214
+ }], fileDrop: [{
215
+ type: Output
216
+ }], multipleBinding: [{
217
+ type: HostBinding,
218
+ args: ['attr.multiple']
219
+ }], disabledBinding: [{
220
+ type: HostBinding,
221
+ args: ['attr.disabled']
222
+ }], onDrop: [{
223
+ type: HostListener,
224
+ args: ['drop', ['$event']]
225
+ }], onDragOver: [{
226
+ type: HostListener,
227
+ args: ['dragover', ['$event']]
228
+ }], onDragEnter: [{
229
+ type: HostListener,
230
+ args: ['dragenter', ['$event']]
231
+ }], onDragLeave: [{
232
+ type: HostListener,
233
+ args: ['dragleave', ['$event']]
234
+ }] } });
235
+
236
+ class TdFileInputLabelDirective extends TemplatePortalDirective {
237
+ constructor(templateRef, viewContainerRef) {
238
+ super(templateRef, viewContainerRef);
239
+ }
240
+ }
241
+ TdFileInputLabelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileInputLabelDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
242
+ TdFileInputLabelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.2", type: TdFileInputLabelDirective, selector: "[tdFileInputLabel]ng-template", usesInheritance: true, ngImport: i0 });
243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileInputLabelDirective, decorators: [{
244
+ type: Directive,
245
+ args: [{
246
+ selector: '[tdFileInputLabel]ng-template',
247
+ }]
248
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
249
+ class TdFileInputBase {
250
+ constructor(_changeDetectorRef) {
251
+ this._changeDetectorRef = _changeDetectorRef;
252
+ }
253
+ }
254
+ class TdFileInputComponent {
255
+ constructor(_renderer, _changeDetectorRef) {
256
+ this._renderer = _renderer;
257
+ this._changeDetectorRef = _changeDetectorRef;
258
+ this._multiple = false;
259
+ this._disabled = false;
260
+ /**
261
+ * select?: function
262
+ * Event emitted a file is selected
263
+ * Emits a [File | FileList] object.
264
+ */
265
+ this.selectFile = new EventEmitter();
266
+ }
267
+ get inputElement() {
268
+ var _a;
269
+ return (_a = this._inputElement) === null || _a === void 0 ? void 0 : _a.nativeElement;
270
+ }
271
+ /**
272
+ * multiple?: boolean
273
+ * Sets if multiple files can be dropped/selected at once in [TdFileInputComponent].
274
+ */
275
+ set multiple(multiple) {
276
+ this._multiple = coerceBooleanProperty(multiple);
277
+ }
278
+ get multiple() {
279
+ return this._multiple;
280
+ }
281
+ set disabled(disabled) {
282
+ this._disabled = disabled;
283
+ this.onDisabledChange(disabled);
284
+ }
285
+ get disabled() {
286
+ return this._disabled;
287
+ }
288
+ writeValue(value) {
289
+ this.value = value;
290
+ this._changeDetectorRef.markForCheck();
291
+ this._renderer.setProperty(this.inputElement, 'value', '');
292
+ }
293
+ registerOnChange(newValue) {
294
+ //
295
+ this.writeValue(newValue);
296
+ }
297
+ registerOnTouched() {
298
+ //
299
+ }
300
+ /**
301
+ * Method executed when a file is selected.
302
+ */
303
+ handleSelect(files) {
304
+ this.writeValue(files);
305
+ this.selectFile.emit(files);
306
+ }
307
+ /**
308
+ * Used to clear the selected files from the [TdFileInputComponent].
309
+ */
310
+ clear() {
311
+ this.writeValue(undefined);
312
+ this._renderer.setProperty(this.inputElement, 'value', '');
313
+ }
314
+ /** Method executed when the disabled value changes */
315
+ onDisabledChange(v) {
316
+ if (v) {
317
+ this.clear();
318
+ }
319
+ }
320
+ /**
321
+ * Sets disable to the component. Implemented as part of ControlValueAccessor.
322
+ */
323
+ setDisabledState(isDisabled) {
324
+ this.disabled = isDisabled;
325
+ }
326
+ }
327
+ TdFileInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileInputComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
328
+ TdFileInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: TdFileInputComponent, selector: "td-file-input", inputs: { color: "color", multiple: "multiple", accept: "accept", disabled: "disabled", value: "value" }, outputs: { selectFile: "selectFile" }, providers: [
329
+ {
330
+ provide: NG_VALUE_ACCESSOR,
331
+ useExisting: forwardRef(() => TdFileInputComponent),
332
+ multi: true,
333
+ },
334
+ ], viewQueries: [{ propertyName: "_inputElement", first: true, predicate: ["fileInput"], descendants: true, static: true }], ngImport: i0, template: "<button\n mat-raised-button\n class=\"td-file-input\"\n type=\"button\"\n [color]=\"color\"\n [multiple]=\"multiple\"\n [disabled]=\"disabled\"\n (keyup.enter)=\"fileInput.click()\"\n (click)=\"fileInput.click()\"\n (fileDrop)=\"handleSelect($event)\"\n tdFileDrop\n>\n <ng-content></ng-content>\n</button>\n<input\n #fileInput\n class=\"td-file-input-hidden\"\n type=\"file\"\n [attr.accept]=\"accept\"\n (fileSelect)=\"handleSelect($event)\"\n [multiple]=\"multiple\"\n [disabled]=\"disabled\"\n tdFileSelect\n/>\n", styles: [":host .td-file-input{padding-left:8px;padding-right:8px}:host input.td-file-input-hidden{display:none}:host .drop-zone{border-radius:3px}:host .drop-zone *{pointer-events:none}\n"], components: [{ type: i1$1.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"] }], directives: [{ type: TdFileDropDirective, selector: "[tdFileDrop]", inputs: ["multiple", "disabled"], outputs: ["fileDrop"] }, { type: TdFileSelectDirective, selector: "[tdFileSelect]", inputs: ["multiple"], outputs: ["fileSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
335
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileInputComponent, decorators: [{
336
+ type: Component,
337
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, providers: [
338
+ {
339
+ provide: NG_VALUE_ACCESSOR,
340
+ useExisting: forwardRef(() => TdFileInputComponent),
341
+ multi: true,
342
+ },
343
+ ], selector: 'td-file-input', template: "<button\n mat-raised-button\n class=\"td-file-input\"\n type=\"button\"\n [color]=\"color\"\n [multiple]=\"multiple\"\n [disabled]=\"disabled\"\n (keyup.enter)=\"fileInput.click()\"\n (click)=\"fileInput.click()\"\n (fileDrop)=\"handleSelect($event)\"\n tdFileDrop\n>\n <ng-content></ng-content>\n</button>\n<input\n #fileInput\n class=\"td-file-input-hidden\"\n type=\"file\"\n [attr.accept]=\"accept\"\n (fileSelect)=\"handleSelect($event)\"\n [multiple]=\"multiple\"\n [disabled]=\"disabled\"\n tdFileSelect\n/>\n", styles: [":host .td-file-input{padding-left:8px;padding-right:8px}:host input.td-file-input-hidden{display:none}:host .drop-zone{border-radius:3px}:host .drop-zone *{pointer-events:none}\n"] }]
344
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { _inputElement: [{
345
+ type: ViewChild,
346
+ args: ['fileInput', { static: true }]
347
+ }], color: [{
348
+ type: Input
349
+ }], multiple: [{
350
+ type: Input
351
+ }], accept: [{
352
+ type: Input
353
+ }], disabled: [{
354
+ type: Input
355
+ }], value: [{
356
+ type: Input
357
+ }], selectFile: [{
358
+ type: Output
359
+ }] } });
360
+
361
+ class TdFileUploadBase {
362
+ constructor(_changeDetectorRef) {
363
+ this._changeDetectorRef = _changeDetectorRef;
364
+ }
365
+ }
366
+ class TdFileUploadComponent {
367
+ constructor(_changeDetectorRef) {
368
+ this._changeDetectorRef = _changeDetectorRef;
369
+ this._multiple = false;
370
+ this._required = false;
371
+ this._disabled = false;
372
+ /**
373
+ * defaultColor?: 'accent' | 'primary' | 'warn'
374
+ * Sets browse button color. Uses same color palette accepted as [MatButton] and defaults to 'primary'.
375
+ */
376
+ this.defaultColor = 'primary';
377
+ /**
378
+ * activeColor?: 'accent' | 'primary' | 'warn'
379
+ * Sets upload button color. Uses same color palette accepted as [MatButton] and defaults to 'accent'.
380
+ */
381
+ this.activeColor = 'accent';
382
+ /**
383
+ * cancelColor?: 'accent' | 'primary' | 'warn'
384
+ * Sets cancel button color. Uses same color palette accepted as [MatButton] and defaults to 'warn'.
385
+ */
386
+ this.cancelColor = 'warn';
387
+ /**
388
+ * select?: function
389
+ * Event emitted when a file is selected.
390
+ * Emits a [File | FileList] object.
391
+ */
392
+ this.selectFile = new EventEmitter();
393
+ /**
394
+ * upload?: function
395
+ * Event emitted when upload button is clicked.
396
+ * Emits a [File | FileList] object.
397
+ */
398
+ this.upload = new EventEmitter();
399
+ /**
400
+ * cancel?: function
401
+ * Event emitted when cancel button is clicked.
402
+ */
403
+ this.cancel = new EventEmitter();
404
+ }
405
+ /**
406
+ * multiple?: boolean
407
+ * Sets if multiple files can be dropped/selected at once in [TdFileUploadComponent].
408
+ */
409
+ set multiple(multiple) {
410
+ this._multiple = coerceBooleanProperty(multiple);
411
+ }
412
+ get multiple() {
413
+ return this._multiple;
414
+ }
415
+ /**
416
+ * required?: boolean
417
+ * Forces at least one file upload.
418
+ * Defaults to 'false'
419
+ */
420
+ set required(required) {
421
+ this._required = coerceBooleanProperty(required);
422
+ }
423
+ get required() {
424
+ return this._required;
425
+ }
426
+ set disabled(disabled) {
427
+ this._disabled = disabled;
428
+ this.onDisabledChange(disabled);
429
+ }
430
+ get disabled() {
431
+ return this._disabled;
432
+ }
433
+ writeValue(value) {
434
+ this.value = value;
435
+ this._changeDetectorRef.markForCheck();
436
+ }
437
+ registerOnChange() {
438
+ //
439
+ }
440
+ registerOnTouched() {
441
+ //
442
+ }
443
+ /**
444
+ * Method executed when upload button is clicked.
445
+ */
446
+ uploadPressed() {
447
+ if (this.value) {
448
+ this.upload.emit(this.value);
449
+ }
450
+ }
451
+ /**
452
+ * Method executed when a file is selected.
453
+ */
454
+ handleSelect(value) {
455
+ this.value = value;
456
+ this.selectFile.emit(value);
457
+ }
458
+ /**
459
+ * Methods executed when cancel button is clicked.
460
+ * Clears files.
461
+ */
462
+ _cancel() {
463
+ this.value = undefined;
464
+ this.cancel.emit();
465
+ // check if the file input is rendered before clearing it
466
+ if (this.fileInput) {
467
+ this.fileInput.clear();
468
+ }
469
+ }
470
+ /** Method executed when the disabled value changes */
471
+ onDisabledChange(v) {
472
+ if (v) {
473
+ this._cancel();
474
+ }
475
+ }
476
+ }
477
+ TdFileUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileUploadComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
478
+ TdFileUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: TdFileUploadComponent, selector: "td-file-upload", inputs: { defaultColor: "defaultColor", activeColor: "activeColor", cancelColor: "cancelColor", multiple: "multiple", required: "required", accept: "accept", disabled: "disabled", value: "value" }, outputs: { selectFile: "selectFile", upload: "upload", cancel: "cancel" }, providers: [
479
+ {
480
+ provide: NG_VALUE_ACCESSOR,
481
+ useExisting: forwardRef(() => TdFileUploadComponent),
482
+ multi: true,
483
+ },
484
+ ], queries: [{ propertyName: "inputLabel", first: true, predicate: TdFileInputLabelDirective, descendants: true }], viewQueries: [{ propertyName: "fileInput", first: true, predicate: TdFileInputComponent, descendants: true }], ngImport: i0, template: "<td-file-input\n *ngIf=\"!value\"\n [(ngModel)]=\"value\"\n [multiple]=\"multiple\"\n [disabled]=\"disabled\"\n [accept]=\"accept\"\n [color]=\"defaultColor\"\n (selectFile)=\"(handleSelect)\"\n>\n <ng-template [cdkPortalOutlet]=\"inputLabel\" [ngIf]=\"true\"></ng-template>\n</td-file-input>\n<div *ngIf=\"value\">\n <button\n #fileUpload\n class=\"td-file-upload\"\n mat-raised-button\n type=\"button\"\n [color]=\"activeColor\"\n (keyup.delete)=\"_cancel()\"\n (keyup.backspace)=\"_cancel()\"\n (keyup.escape)=\"_cancel()\"\n (click)=\"uploadPressed()\"\n >\n <ng-content></ng-content>\n </button>\n <button\n mat-icon-button\n type=\"button\"\n class=\"td-file-upload-cancel\"\n [color]=\"cancelColor\"\n (click)=\"_cancel()\"\n >\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n", styles: [".td-file-upload{padding-left:8px;padding-right:8px}.td-file-upload-cancel{height:24px;width:24px;position:relative;top:24px;left:-12px}::ng-deep [dir=rtl] .td-file-upload-cancel{right:-12px;left:0}.td-file-upload-cancel mat-icon{border-radius:12px;vertical-align:baseline}.drop-zone{border-radius:3px}.drop-zone *{pointer-events:none}\n"], components: [{ type: TdFileInputComponent, selector: "td-file-input", inputs: ["color", "multiple", "accept", "disabled", "value"], outputs: ["selectFile"] }, { type: i1$1.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: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
485
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileUploadComponent, decorators: [{
486
+ type: Component,
487
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, providers: [
488
+ {
489
+ provide: NG_VALUE_ACCESSOR,
490
+ useExisting: forwardRef(() => TdFileUploadComponent),
491
+ multi: true,
492
+ },
493
+ ], selector: 'td-file-upload', template: "<td-file-input\n *ngIf=\"!value\"\n [(ngModel)]=\"value\"\n [multiple]=\"multiple\"\n [disabled]=\"disabled\"\n [accept]=\"accept\"\n [color]=\"defaultColor\"\n (selectFile)=\"(handleSelect)\"\n>\n <ng-template [cdkPortalOutlet]=\"inputLabel\" [ngIf]=\"true\"></ng-template>\n</td-file-input>\n<div *ngIf=\"value\">\n <button\n #fileUpload\n class=\"td-file-upload\"\n mat-raised-button\n type=\"button\"\n [color]=\"activeColor\"\n (keyup.delete)=\"_cancel()\"\n (keyup.backspace)=\"_cancel()\"\n (keyup.escape)=\"_cancel()\"\n (click)=\"uploadPressed()\"\n >\n <ng-content></ng-content>\n </button>\n <button\n mat-icon-button\n type=\"button\"\n class=\"td-file-upload-cancel\"\n [color]=\"cancelColor\"\n (click)=\"_cancel()\"\n >\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n", styles: [".td-file-upload{padding-left:8px;padding-right:8px}.td-file-upload-cancel{height:24px;width:24px;position:relative;top:24px;left:-12px}::ng-deep [dir=rtl] .td-file-upload-cancel{right:-12px;left:0}.td-file-upload-cancel mat-icon{border-radius:12px;vertical-align:baseline}.drop-zone{border-radius:3px}.drop-zone *{pointer-events:none}\n"] }]
494
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { fileInput: [{
495
+ type: ViewChild,
496
+ args: [TdFileInputComponent]
497
+ }], inputLabel: [{
498
+ type: ContentChild,
499
+ args: [TdFileInputLabelDirective]
500
+ }], defaultColor: [{
501
+ type: Input
502
+ }], activeColor: [{
503
+ type: Input
504
+ }], cancelColor: [{
505
+ type: Input
506
+ }], multiple: [{
507
+ type: Input
508
+ }], required: [{
509
+ type: Input
510
+ }], accept: [{
511
+ type: Input
512
+ }], disabled: [{
513
+ type: Input
514
+ }], value: [{
515
+ type: Input
516
+ }], selectFile: [{
517
+ type: Output
518
+ }], upload: [{
519
+ type: Output
520
+ }], cancel: [{
521
+ type: Output
522
+ }] } });
523
+
524
+ class TdFileService {
525
+ /**
526
+ * Creates a new instance
527
+ * @param _http the http client instance
528
+ * @breaking-change 3.0.0 remove 'Optional' decorator once the legay upload method is removed
529
+ */
530
+ constructor(_http) {
531
+ this._http = _http;
532
+ this._progressSubject = new Subject();
533
+ this._progressObservable = this._progressSubject.asObservable();
534
+ }
535
+ /**
536
+ * Gets progress observable to keep track of the files being uploaded.
537
+ * Needs to be supported by backend.
538
+ */
539
+ get progress() {
540
+ return this._progressObservable;
541
+ }
542
+ /**
543
+ * Uploads a file to a URL.
544
+ */
545
+ send(url, method, body, { headers, params } = {}) {
546
+ if (!this._http) {
547
+ throw new Error('The HttpClient module needs to be imported at root module level');
548
+ }
549
+ const req = new HttpRequest(method.toUpperCase(), url, body, {
550
+ reportProgress: true,
551
+ headers: new HttpHeaders(headers || {}),
552
+ params: new HttpParams({ fromObject: params || {} }),
553
+ });
554
+ return this._http
555
+ .request(req)
556
+ .pipe(tap((event) => this.handleEvent(event)));
557
+ }
558
+ handleEvent(event) {
559
+ var _a;
560
+ switch (event.type) {
561
+ case HttpEventType.Sent:
562
+ this._progressSubject.next(0);
563
+ break;
564
+ case HttpEventType.UploadProgress:
565
+ this._progressSubject.next(Math.round((100 * event.loaded) / ((_a = event.total) !== null && _a !== void 0 ? _a : 0)));
566
+ break;
567
+ case HttpEventType.Response:
568
+ this._progressSubject.next(100);
569
+ break;
570
+ default:
571
+ break;
572
+ }
573
+ }
574
+ }
575
+ TdFileService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileService, deps: [{ token: i1$2.HttpClient, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
576
+ TdFileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileService });
577
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TdFileService, decorators: [{
578
+ type: Injectable
579
+ }], ctorParameters: function () {
580
+ return [{ type: i1$2.HttpClient, decorators: [{
581
+ type: Optional
582
+ }] }];
583
+ } });
584
+
585
+ const TD_FILE = [
586
+ TdFileSelectDirective,
587
+ TdFileDropDirective,
588
+ TdFileUploadComponent,
589
+ TdFileInputComponent,
590
+ TdFileInputLabelDirective,
591
+ ];
592
+ class CovalentFileModule {
593
+ }
594
+ CovalentFileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
595
+ CovalentFileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentFileModule, declarations: [TdFileSelectDirective,
596
+ TdFileDropDirective,
597
+ TdFileUploadComponent,
598
+ TdFileInputComponent,
599
+ TdFileInputLabelDirective], imports: [FormsModule,
600
+ CommonModule,
601
+ MatIconModule,
602
+ MatButtonModule,
603
+ PortalModule], exports: [TdFileSelectDirective,
604
+ TdFileDropDirective,
605
+ TdFileUploadComponent,
606
+ TdFileInputComponent,
607
+ TdFileInputLabelDirective] });
608
+ CovalentFileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentFileModule, providers: [TdFileService], imports: [[
609
+ FormsModule,
610
+ CommonModule,
611
+ MatIconModule,
612
+ MatButtonModule,
613
+ PortalModule,
614
+ ]] });
615
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: CovalentFileModule, decorators: [{
616
+ type: NgModule,
617
+ args: [{
618
+ imports: [
619
+ FormsModule,
620
+ CommonModule,
621
+ MatIconModule,
622
+ MatButtonModule,
623
+ PortalModule,
624
+ ],
625
+ declarations: [TD_FILE],
626
+ exports: [TD_FILE],
627
+ providers: [TdFileService],
628
+ }]
629
+ }] });
630
+
631
+ /**
632
+ * Generated bundle index. Do not edit.
633
+ */
634
+
635
+ export { CovalentFileModule, TdFileDropBase, TdFileDropDirective, TdFileInputBase, TdFileInputComponent, TdFileInputLabelDirective, TdFileSelectDirective, TdFileService, TdFileUploadBase, TdFileUploadComponent };
636
+ //# sourceMappingURL=covalent-core-file.mjs.map