@ng-nest/ui 12.0.7 → 12.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (810) hide show
  1. package/auto-complete/auto-complete-portal.component.d.ts +3 -3
  2. package/auto-complete/auto-complete.component.d.ts +5 -1
  3. package/auto-complete/auto-complete.property.d.ts +6 -1
  4. package/back-top/back-top.component.d.ts +1 -2
  5. package/base-form/base-form.component.d.ts +1 -1
  6. package/base-form/base-form.property.d.ts +22 -2
  7. package/bundles/ng-nest-ui-affix.umd.js +25 -21
  8. package/bundles/ng-nest-ui-affix.umd.js.map +1 -1
  9. package/bundles/ng-nest-ui-alert.umd.js +25 -21
  10. package/bundles/ng-nest-ui-alert.umd.js.map +1 -1
  11. package/bundles/ng-nest-ui-anchor.umd.js +26 -22
  12. package/bundles/ng-nest-ui-anchor.umd.js.map +1 -1
  13. package/bundles/ng-nest-ui-api.umd.js +12 -14
  14. package/bundles/ng-nest-ui-api.umd.js.map +1 -1
  15. package/bundles/ng-nest-ui-auto-complete.umd.js +52 -29
  16. package/bundles/ng-nest-ui-auto-complete.umd.js.map +1 -1
  17. package/bundles/ng-nest-ui-avatar.umd.js +25 -21
  18. package/bundles/ng-nest-ui-avatar.umd.js.map +1 -1
  19. package/bundles/ng-nest-ui-back-top.umd.js +27 -23
  20. package/bundles/ng-nest-ui-back-top.umd.js.map +1 -1
  21. package/bundles/ng-nest-ui-badge.umd.js +27 -22
  22. package/bundles/ng-nest-ui-badge.umd.js.map +1 -1
  23. package/bundles/ng-nest-ui-base-form.umd.js +50 -22
  24. package/bundles/ng-nest-ui-base-form.umd.js.map +1 -1
  25. package/bundles/ng-nest-ui-border.umd.js +12 -14
  26. package/bundles/ng-nest-ui-border.umd.js.map +1 -1
  27. package/bundles/ng-nest-ui-button.umd.js +35 -30
  28. package/bundles/ng-nest-ui-button.umd.js.map +1 -1
  29. package/bundles/ng-nest-ui-calendar.umd.js +29 -24
  30. package/bundles/ng-nest-ui-calendar.umd.js.map +1 -1
  31. package/bundles/ng-nest-ui-card.umd.js +25 -21
  32. package/bundles/ng-nest-ui-card.umd.js.map +1 -1
  33. package/bundles/ng-nest-ui-carousel.umd.js +44 -39
  34. package/bundles/ng-nest-ui-carousel.umd.js.map +1 -1
  35. package/bundles/ng-nest-ui-cascade.umd.js +78 -31
  36. package/bundles/ng-nest-ui-cascade.umd.js.map +1 -1
  37. package/bundles/ng-nest-ui-checkbox.umd.js +28 -23
  38. package/bundles/ng-nest-ui-checkbox.umd.js.map +1 -1
  39. package/bundles/ng-nest-ui-collapse.umd.js +31 -27
  40. package/bundles/ng-nest-ui-collapse.umd.js.map +1 -1
  41. package/bundles/ng-nest-ui-color-picker.umd.js +39 -32
  42. package/bundles/ng-nest-ui-color-picker.umd.js.map +1 -1
  43. package/bundles/ng-nest-ui-color.umd.js +26 -22
  44. package/bundles/ng-nest-ui-color.umd.js.map +1 -1
  45. package/bundles/ng-nest-ui-comment.umd.js +34 -29
  46. package/bundles/ng-nest-ui-comment.umd.js.map +1 -1
  47. package/bundles/ng-nest-ui-container.umd.js +46 -42
  48. package/bundles/ng-nest-ui-container.umd.js.map +1 -1
  49. package/bundles/ng-nest-ui-core.umd.js +136 -35
  50. package/bundles/ng-nest-ui-core.umd.js.map +1 -1
  51. package/bundles/ng-nest-ui-crumb.umd.js +28 -23
  52. package/bundles/ng-nest-ui-crumb.umd.js.map +1 -1
  53. package/bundles/ng-nest-ui-date-picker.umd.js +387 -242
  54. package/bundles/ng-nest-ui-date-picker.umd.js.map +1 -1
  55. package/bundles/ng-nest-ui-description.umd.js +35 -32
  56. package/bundles/ng-nest-ui-description.umd.js.map +1 -1
  57. package/bundles/ng-nest-ui-dialog.umd.js +305 -48
  58. package/bundles/ng-nest-ui-dialog.umd.js.map +1 -1
  59. package/bundles/ng-nest-ui-doc.umd.js +12 -14
  60. package/bundles/ng-nest-ui-doc.umd.js.map +1 -1
  61. package/bundles/ng-nest-ui-drawer.umd.js +266 -30
  62. package/bundles/ng-nest-ui-drawer.umd.js.map +1 -1
  63. package/bundles/ng-nest-ui-dropdown.umd.js +32 -27
  64. package/bundles/ng-nest-ui-dropdown.umd.js.map +1 -1
  65. package/bundles/ng-nest-ui-empty.umd.js +25 -21
  66. package/bundles/ng-nest-ui-empty.umd.js.map +1 -1
  67. package/bundles/ng-nest-ui-examples.umd.js +12 -14
  68. package/bundles/ng-nest-ui-examples.umd.js.map +1 -1
  69. package/bundles/ng-nest-ui-find.umd.js +31 -26
  70. package/bundles/ng-nest-ui-find.umd.js.map +1 -1
  71. package/bundles/ng-nest-ui-form.umd.js +36 -36
  72. package/bundles/ng-nest-ui-form.umd.js.map +1 -1
  73. package/bundles/ng-nest-ui-highlight.umd.js +27 -22
  74. package/bundles/ng-nest-ui-highlight.umd.js.map +1 -1
  75. package/bundles/ng-nest-ui-i18n.umd.js +537 -138
  76. package/bundles/ng-nest-ui-i18n.umd.js.map +1 -1
  77. package/bundles/ng-nest-ui-icon.umd.js +34 -29
  78. package/bundles/ng-nest-ui-icon.umd.js.map +1 -1
  79. package/bundles/ng-nest-ui-inner.umd.js +26 -22
  80. package/bundles/ng-nest-ui-inner.umd.js.map +1 -1
  81. package/bundles/ng-nest-ui-input-number.umd.js +25 -21
  82. package/bundles/ng-nest-ui-input-number.umd.js.map +1 -1
  83. package/bundles/ng-nest-ui-input.umd.js +64 -32
  84. package/bundles/ng-nest-ui-input.umd.js.map +1 -1
  85. package/bundles/ng-nest-ui-layout.umd.js +31 -27
  86. package/bundles/ng-nest-ui-layout.umd.js.map +1 -1
  87. package/bundles/ng-nest-ui-link.umd.js +25 -21
  88. package/bundles/ng-nest-ui-link.umd.js.map +1 -1
  89. package/bundles/ng-nest-ui-list.umd.js +35 -30
  90. package/bundles/ng-nest-ui-list.umd.js.map +1 -1
  91. package/bundles/ng-nest-ui-loading.umd.js +27 -22
  92. package/bundles/ng-nest-ui-loading.umd.js.map +1 -1
  93. package/bundles/ng-nest-ui-menu.umd.js +37 -33
  94. package/bundles/ng-nest-ui-menu.umd.js.map +1 -1
  95. package/bundles/ng-nest-ui-message-box.umd.js +53 -47
  96. package/bundles/ng-nest-ui-message-box.umd.js.map +1 -1
  97. package/bundles/ng-nest-ui-message.umd.js +29 -25
  98. package/bundles/ng-nest-ui-message.umd.js.map +1 -1
  99. package/bundles/ng-nest-ui-notification.umd.js +26 -22
  100. package/bundles/ng-nest-ui-notification.umd.js.map +1 -1
  101. package/bundles/ng-nest-ui-outlet.umd.js +22 -18
  102. package/bundles/ng-nest-ui-outlet.umd.js.map +1 -1
  103. package/bundles/ng-nest-ui-page-header.umd.js +25 -21
  104. package/bundles/ng-nest-ui-page-header.umd.js.map +1 -1
  105. package/bundles/ng-nest-ui-pagination.umd.js +115 -26
  106. package/bundles/ng-nest-ui-pagination.umd.js.map +1 -1
  107. package/bundles/ng-nest-ui-pattern.umd.js +12 -14
  108. package/bundles/ng-nest-ui-pattern.umd.js.map +1 -1
  109. package/bundles/ng-nest-ui-popconfirm.umd.js +25 -21
  110. package/bundles/ng-nest-ui-popconfirm.umd.js.map +1 -1
  111. package/bundles/ng-nest-ui-popover.umd.js +31 -26
  112. package/bundles/ng-nest-ui-popover.umd.js.map +1 -1
  113. package/bundles/ng-nest-ui-portal.umd.js +28 -24
  114. package/bundles/ng-nest-ui-portal.umd.js.map +1 -1
  115. package/bundles/ng-nest-ui-progress.umd.js +259 -39
  116. package/bundles/ng-nest-ui-progress.umd.js.map +1 -1
  117. package/bundles/ng-nest-ui-radio.umd.js +28 -23
  118. package/bundles/ng-nest-ui-radio.umd.js.map +1 -1
  119. package/bundles/ng-nest-ui-rate.umd.js +30 -26
  120. package/bundles/ng-nest-ui-rate.umd.js.map +1 -1
  121. package/bundles/ng-nest-ui-result.umd.js +25 -21
  122. package/bundles/ng-nest-ui-result.umd.js.map +1 -1
  123. package/bundles/ng-nest-ui-ripple.umd.js +25 -21
  124. package/bundles/ng-nest-ui-ripple.umd.js.map +1 -1
  125. package/bundles/ng-nest-ui-select.umd.js +53 -34
  126. package/bundles/ng-nest-ui-select.umd.js.map +1 -1
  127. package/bundles/ng-nest-ui-skeleton.umd.js +27 -22
  128. package/bundles/ng-nest-ui-skeleton.umd.js.map +1 -1
  129. package/bundles/ng-nest-ui-slider-select.umd.js +25 -21
  130. package/bundles/ng-nest-ui-slider-select.umd.js.map +1 -1
  131. package/bundles/ng-nest-ui-slider.umd.js +32 -29
  132. package/bundles/ng-nest-ui-slider.umd.js.map +1 -1
  133. package/bundles/ng-nest-ui-statistic.umd.js +37 -31
  134. package/bundles/ng-nest-ui-statistic.umd.js.map +1 -1
  135. package/bundles/ng-nest-ui-steps.umd.js +53 -33
  136. package/bundles/ng-nest-ui-steps.umd.js.map +1 -1
  137. package/bundles/ng-nest-ui-switch.umd.js +25 -21
  138. package/bundles/ng-nest-ui-switch.umd.js.map +1 -1
  139. package/bundles/ng-nest-ui-table.umd.js +58 -51
  140. package/bundles/ng-nest-ui-table.umd.js.map +1 -1
  141. package/bundles/ng-nest-ui-tabs.umd.js +39 -34
  142. package/bundles/ng-nest-ui-tabs.umd.js.map +1 -1
  143. package/bundles/ng-nest-ui-tag.umd.js +27 -22
  144. package/bundles/ng-nest-ui-tag.umd.js.map +1 -1
  145. package/bundles/ng-nest-ui-text-retract.umd.js +27 -22
  146. package/bundles/ng-nest-ui-text-retract.umd.js.map +1 -1
  147. package/bundles/ng-nest-ui-textarea.umd.js +27 -32
  148. package/bundles/ng-nest-ui-textarea.umd.js.map +1 -1
  149. package/bundles/ng-nest-ui-theme.umd.js +26 -22
  150. package/bundles/ng-nest-ui-theme.umd.js.map +1 -1
  151. package/bundles/ng-nest-ui-time-ago.umd.js +12 -14
  152. package/bundles/ng-nest-ui-time-ago.umd.js.map +1 -1
  153. package/bundles/ng-nest-ui-time-picker.umd.js +87 -46
  154. package/bundles/ng-nest-ui-time-picker.umd.js.map +1 -1
  155. package/bundles/ng-nest-ui-time-range.umd.js +22 -18
  156. package/bundles/ng-nest-ui-time-range.umd.js.map +1 -1
  157. package/bundles/ng-nest-ui-timeline.umd.js +28 -23
  158. package/bundles/ng-nest-ui-timeline.umd.js.map +1 -1
  159. package/bundles/ng-nest-ui-tooltip.umd.js +31 -26
  160. package/bundles/ng-nest-ui-tooltip.umd.js.map +1 -1
  161. package/bundles/ng-nest-ui-transfer.umd.js +28 -23
  162. package/bundles/ng-nest-ui-transfer.umd.js.map +1 -1
  163. package/bundles/ng-nest-ui-tree-file.umd.js +25 -21
  164. package/bundles/ng-nest-ui-tree-file.umd.js.map +1 -1
  165. package/bundles/ng-nest-ui-tree.umd.js +39 -34
  166. package/bundles/ng-nest-ui-tree.umd.js.map +1 -1
  167. package/bundles/ng-nest-ui-typography.umd.js +25 -21
  168. package/bundles/ng-nest-ui-typography.umd.js.map +1 -1
  169. package/bundles/ng-nest-ui-upload.umd.js +32 -27
  170. package/bundles/ng-nest-ui-upload.umd.js.map +1 -1
  171. package/bundles/ng-nest-ui.umd.js +83 -243
  172. package/bundles/ng-nest-ui.umd.js.map +1 -1
  173. package/button/buttons.component.d.ts +1 -1
  174. package/calendar/calendar.component.d.ts +2 -2
  175. package/carousel/carousel-panel.component.d.ts +2 -3
  176. package/carousel/carousel.component.d.ts +1 -1
  177. package/cascade/cascade-portal.component.d.ts +13 -7
  178. package/cascade/cascade.component.d.ts +7 -1
  179. package/cascade/cascade.property.d.ts +23 -3
  180. package/checkbox/checkbox.component.d.ts +1 -1
  181. package/color/color.component.d.ts +2 -2
  182. package/color-picker/color-picker-portal.component.d.ts +3 -3
  183. package/color-picker/color-picker.component.d.ts +2 -3
  184. package/comment/comment.component.d.ts +1 -1
  185. package/core/config/config.d.ts +18 -0
  186. package/core/functions/clone-deep.d.ts +1 -0
  187. package/core/functions/drop.d.ts +1 -0
  188. package/core/functions/flex.d.ts +1 -1
  189. package/core/functions/has-in.d.ts +1 -0
  190. package/core/functions/order-by.d.ts +1 -0
  191. package/core/functions/public-api.d.ts +5 -0
  192. package/core/functions/remove.d.ts +1 -0
  193. package/core/services/reuse-strategy.service.d.ts +1 -1
  194. package/crumb/crumb.component.d.ts +1 -1
  195. package/date-picker/date-picker-portal.component.d.ts +4 -11
  196. package/date-picker/date-picker.component.d.ts +3 -4
  197. package/date-picker/date-picker.property.d.ts +55 -20
  198. package/date-picker/date-range-portal.component.d.ts +10 -6
  199. package/date-picker/date-range.component.d.ts +15 -11
  200. package/date-picker/picker-date.component.d.ts +13 -4
  201. package/date-picker/picker-month.component.d.ts +6 -3
  202. package/date-picker/picker-year.component.d.ts +4 -2
  203. package/description/description.component.d.ts +2 -4
  204. package/dialog/dialog-container.component.d.ts +18 -0
  205. package/dialog/dialog-container.directives.d.ts +24 -0
  206. package/dialog/dialog-ref.d.ts +9 -0
  207. package/dialog/dialog.module.d.ts +13 -11
  208. package/dialog/dialog.property.d.ts +84 -6
  209. package/dialog/dialog.service.d.ts +19 -0
  210. package/dialog/public-api.d.ts +4 -0
  211. package/drawer/drawer-container.component.d.ts +18 -0
  212. package/drawer/drawer-container.directives.d.ts +19 -0
  213. package/drawer/drawer-ref.d.ts +9 -0
  214. package/drawer/drawer.module.d.ts +8 -6
  215. package/drawer/drawer.property.d.ts +83 -2
  216. package/drawer/drawer.service.d.ts +19 -0
  217. package/drawer/public-api.d.ts +5 -0
  218. package/dropdown/dropdown-portal.component.d.ts +1 -3
  219. package/dropdown/dropdown.component.d.ts +2 -2
  220. package/esm2015/affix/affix.component.js +3 -3
  221. package/esm2015/affix/affix.module.js +4 -4
  222. package/esm2015/affix/affix.property.js +3 -3
  223. package/esm2015/alert/alert.component.js +4 -4
  224. package/esm2015/alert/alert.module.js +4 -4
  225. package/esm2015/alert/alert.property.js +3 -3
  226. package/esm2015/anchor/anchor.component.js +5 -5
  227. package/esm2015/anchor/anchor.module.js +4 -4
  228. package/esm2015/anchor/anchor.property.js +4 -4
  229. package/esm2015/api/api.component.js +3 -3
  230. package/esm2015/api/api.module.js +4 -4
  231. package/esm2015/auto-complete/auto-complete-portal.component.js +6 -6
  232. package/esm2015/auto-complete/auto-complete.component.js +20 -7
  233. package/esm2015/auto-complete/auto-complete.module.js +4 -4
  234. package/esm2015/auto-complete/auto-complete.property.js +10 -4
  235. package/esm2015/avatar/avatar.component.js +3 -3
  236. package/esm2015/avatar/avatar.module.js +4 -4
  237. package/esm2015/avatar/avatar.property.js +3 -3
  238. package/esm2015/back-top/back-top.component.js +6 -6
  239. package/esm2015/back-top/back-top.module.js +4 -4
  240. package/esm2015/back-top/back-top.property.js +3 -3
  241. package/esm2015/badge/badge.component.js +6 -5
  242. package/esm2015/badge/badge.module.js +4 -4
  243. package/esm2015/badge/badge.property.js +3 -3
  244. package/esm2015/base-form/base-form.component.js +5 -5
  245. package/esm2015/base-form/base-form.module.js +4 -4
  246. package/esm2015/base-form/base-form.property.js +29 -5
  247. package/esm2015/border/border.component.js +3 -3
  248. package/esm2015/border/border.module.js +4 -4
  249. package/esm2015/button/button.component.js +8 -7
  250. package/esm2015/button/button.module.js +4 -4
  251. package/esm2015/button/button.property.js +6 -6
  252. package/esm2015/button/buttons.component.js +4 -4
  253. package/esm2015/calendar/calendar.component.js +8 -7
  254. package/esm2015/calendar/calendar.module.js +4 -4
  255. package/esm2015/calendar/calendar.property.js +3 -3
  256. package/esm2015/card/card.component.js +3 -3
  257. package/esm2015/card/card.module.js +4 -4
  258. package/esm2015/card/card.property.js +3 -3
  259. package/esm2015/carousel/carousel-panel.component.js +15 -14
  260. package/esm2015/carousel/carousel.component.js +7 -6
  261. package/esm2015/carousel/carousel.module.js +4 -4
  262. package/esm2015/carousel/carousel.property.js +6 -6
  263. package/esm2015/cascade/cascade-portal.component.js +23 -11
  264. package/esm2015/cascade/cascade.component.js +23 -6
  265. package/esm2015/cascade/cascade.module.js +4 -4
  266. package/esm2015/cascade/cascade.property.js +16 -4
  267. package/esm2015/checkbox/checkbox.component.js +7 -6
  268. package/esm2015/checkbox/checkbox.module.js +4 -4
  269. package/esm2015/checkbox/checkbox.property.js +4 -4
  270. package/esm2015/collapse/collapse-panel.component.js +4 -4
  271. package/esm2015/collapse/collapse.component.js +3 -3
  272. package/esm2015/collapse/collapse.module.js +4 -4
  273. package/esm2015/collapse/collapse.property.js +6 -6
  274. package/esm2015/color/color.component.js +5 -5
  275. package/esm2015/color/color.module.js +4 -4
  276. package/esm2015/color/color.property.js +3 -3
  277. package/esm2015/color-picker/color-picker-portal.component.js +5 -5
  278. package/esm2015/color-picker/color-picker.component.js +14 -11
  279. package/esm2015/color-picker/color-picker.module.js +4 -4
  280. package/esm2015/color-picker/color-picker.property.js +3 -3
  281. package/esm2015/comment/comment-reply.component.js +3 -3
  282. package/esm2015/comment/comment.component.js +7 -6
  283. package/esm2015/comment/comment.module.js +4 -4
  284. package/esm2015/comment/comment.property.js +6 -6
  285. package/esm2015/container/aside.component.js +3 -3
  286. package/esm2015/container/container.component.js +5 -5
  287. package/esm2015/container/container.module.js +4 -4
  288. package/esm2015/container/container.property.js +12 -12
  289. package/esm2015/container/footer.component.js +3 -3
  290. package/esm2015/container/header.component.js +3 -3
  291. package/esm2015/container/main.component.js +3 -3
  292. package/esm2015/core/animation/fade.js +1 -1
  293. package/esm2015/core/config/config.js +1 -1
  294. package/esm2015/core/config/config.service.js +3 -3
  295. package/esm2015/core/functions/clone-deep.js +12 -0
  296. package/esm2015/core/functions/drop.js +8 -0
  297. package/esm2015/core/functions/flex.js +18 -7
  298. package/esm2015/core/functions/has-in.js +4 -0
  299. package/esm2015/core/functions/order-by.js +31 -0
  300. package/esm2015/core/functions/public-api.js +6 -1
  301. package/esm2015/core/functions/remove.js +15 -0
  302. package/esm2015/core/services/http.service.js +5 -5
  303. package/esm2015/core/services/preloading-strategy.service.js +5 -5
  304. package/esm2015/core/services/reuse-strategy.service.js +2 -2
  305. package/esm2015/core/services/storage.service.js +3 -3
  306. package/esm2015/core/theme/theme.service.js +3 -3
  307. package/esm2015/crumb/crumb.component.js +7 -6
  308. package/esm2015/crumb/crumb.module.js +4 -4
  309. package/esm2015/crumb/crumb.property.js +3 -3
  310. package/esm2015/date-picker/date-picker-portal.component.js +11 -43
  311. package/esm2015/date-picker/date-picker.component.js +13 -14
  312. package/esm2015/date-picker/date-picker.module.js +4 -4
  313. package/esm2015/date-picker/date-picker.property.js +102 -34
  314. package/esm2015/date-picker/date-range-portal.component.js +41 -20
  315. package/esm2015/date-picker/date-range.component.js +66 -47
  316. package/esm2015/date-picker/picker-date.component.js +50 -15
  317. package/esm2015/date-picker/picker-month.component.js +25 -9
  318. package/esm2015/date-picker/picker-year.component.js +21 -9
  319. package/esm2015/description/description-item.component.js +4 -4
  320. package/esm2015/description/description.component.js +8 -9
  321. package/esm2015/description/description.module.js +4 -4
  322. package/esm2015/description/description.property.js +6 -6
  323. package/esm2015/dialog/dialog-container.component.js +59 -0
  324. package/esm2015/dialog/dialog-container.directives.js +73 -0
  325. package/esm2015/dialog/dialog-ref.js +17 -0
  326. package/esm2015/dialog/dialog.component.js +6 -5
  327. package/esm2015/dialog/dialog.module.js +39 -9
  328. package/esm2015/dialog/dialog.property.js +20 -19
  329. package/esm2015/dialog/dialog.service.js +67 -0
  330. package/esm2015/dialog/public-api.js +5 -1
  331. package/esm2015/doc/doc.component.js +3 -3
  332. package/esm2015/doc/doc.module.js +4 -4
  333. package/esm2015/drawer/drawer-container.component.js +59 -0
  334. package/esm2015/drawer/drawer-container.directives.js +57 -0
  335. package/esm2015/drawer/drawer-ref.js +17 -0
  336. package/esm2015/drawer/drawer.component.js +6 -5
  337. package/esm2015/drawer/drawer.module.js +24 -8
  338. package/esm2015/drawer/drawer.property.js +24 -8
  339. package/esm2015/drawer/drawer.service.js +65 -0
  340. package/esm2015/drawer/public-api.js +6 -1
  341. package/esm2015/dropdown/dropdown-portal.component.js +5 -5
  342. package/esm2015/dropdown/dropdown.component.js +7 -6
  343. package/esm2015/dropdown/dropdown.module.js +4 -4
  344. package/esm2015/dropdown/dropdown.property.js +3 -3
  345. package/esm2015/empty/empty.component.js +3 -3
  346. package/esm2015/empty/empty.module.js +4 -4
  347. package/esm2015/empty/empty.property.js +3 -3
  348. package/esm2015/examples/examples.component.js +3 -3
  349. package/esm2015/examples/examples.module.js +4 -4
  350. package/esm2015/find/find.component.js +10 -9
  351. package/esm2015/find/find.module.js +4 -4
  352. package/esm2015/find/find.property.js +3 -3
  353. package/esm2015/form/control.component.js +4 -4
  354. package/esm2015/form/form.component.js +9 -8
  355. package/esm2015/form/form.module.js +4 -4
  356. package/esm2015/form/form.property.js +8 -13
  357. package/esm2015/highlight/highlight.component.js +6 -5
  358. package/esm2015/highlight/highlight.module.js +4 -4
  359. package/esm2015/highlight/highlight.property.js +4 -4
  360. package/esm2015/i18n/i18n.directive.js +6 -5
  361. package/esm2015/i18n/i18n.module.js +4 -4
  362. package/esm2015/i18n/i18n.pipe.js +3 -3
  363. package/esm2015/i18n/i18n.service.js +3 -3
  364. package/esm2015/i18n/languages/ar_EG.js +11 -3
  365. package/esm2015/i18n/languages/bg_BG.js +11 -3
  366. package/esm2015/i18n/languages/ca_ES.js +11 -3
  367. package/esm2015/i18n/languages/cs_CZ.js +11 -3
  368. package/esm2015/i18n/languages/da_DK.js +11 -3
  369. package/esm2015/i18n/languages/de_DE.js +11 -3
  370. package/esm2015/i18n/languages/el_GR.js +11 -3
  371. package/esm2015/i18n/languages/en_GB.js +11 -3
  372. package/esm2015/i18n/languages/en_US.js +7 -2
  373. package/esm2015/i18n/languages/es_ES.js +11 -3
  374. package/esm2015/i18n/languages/et_EE.js +11 -3
  375. package/esm2015/i18n/languages/fa_IR.js +11 -3
  376. package/esm2015/i18n/languages/fi_FI.js +11 -3
  377. package/esm2015/i18n/languages/fr_BE.js +10 -2
  378. package/esm2015/i18n/languages/fr_FR.js +11 -3
  379. package/esm2015/i18n/languages/he_IL.js +11 -3
  380. package/esm2015/i18n/languages/hi_IN.js +11 -3
  381. package/esm2015/i18n/languages/hr_HR.js +11 -3
  382. package/esm2015/i18n/languages/hu_HU.js +11 -3
  383. package/esm2015/i18n/languages/hy_AM.js +11 -3
  384. package/esm2015/i18n/languages/id_ID.js +11 -3
  385. package/esm2015/i18n/languages/is_IS.js +11 -3
  386. package/esm2015/i18n/languages/it_IT.js +11 -3
  387. package/esm2015/i18n/languages/ja_JP.js +11 -3
  388. package/esm2015/i18n/languages/ka_GE.js +11 -3
  389. package/esm2015/i18n/languages/kn_IN.js +11 -3
  390. package/esm2015/i18n/languages/ko_KR.js +11 -3
  391. package/esm2015/i18n/languages/ku_IQ.js +11 -3
  392. package/esm2015/i18n/languages/lv_LV.js +11 -3
  393. package/esm2015/i18n/languages/mn_MN.js +11 -3
  394. package/esm2015/i18n/languages/ms_MY.js +11 -3
  395. package/esm2015/i18n/languages/nb_NO.js +11 -3
  396. package/esm2015/i18n/languages/ne_NP.js +11 -3
  397. package/esm2015/i18n/languages/nl_BE.js +11 -3
  398. package/esm2015/i18n/languages/nl_NL.js +11 -3
  399. package/esm2015/i18n/languages/pl_PL.js +11 -3
  400. package/esm2015/i18n/languages/pt_BR.js +11 -3
  401. package/esm2015/i18n/languages/pt_PT.js +11 -3
  402. package/esm2015/i18n/languages/ro_RO.js +11 -3
  403. package/esm2015/i18n/languages/ru_RU.js +11 -3
  404. package/esm2015/i18n/languages/sk_SK.js +11 -3
  405. package/esm2015/i18n/languages/sl_SI.js +11 -3
  406. package/esm2015/i18n/languages/sr_RS.js +11 -3
  407. package/esm2015/i18n/languages/sv_SE.js +11 -3
  408. package/esm2015/i18n/languages/ta_IN.js +11 -3
  409. package/esm2015/i18n/languages/th_TH.js +29 -21
  410. package/esm2015/i18n/languages/tr_TR.js +11 -3
  411. package/esm2015/i18n/languages/uk_UA.js +11 -3
  412. package/esm2015/i18n/languages/vi_VN.js +11 -3
  413. package/esm2015/i18n/languages/zh_CN.js +6 -2
  414. package/esm2015/i18n/languages/zh_TW.js +10 -3
  415. package/esm2015/icon/icon.component.js +7 -6
  416. package/esm2015/icon/icon.module.js +4 -4
  417. package/esm2015/icon/icon.property.js +3 -3
  418. package/esm2015/icon/icon.service.js +6 -6
  419. package/esm2015/inner/inner.component.js +5 -5
  420. package/esm2015/inner/inner.module.js +4 -4
  421. package/esm2015/inner/inner.property.js +3 -3
  422. package/esm2015/input/input-group.component.js +4 -6
  423. package/esm2015/input/input.component.js +21 -7
  424. package/esm2015/input/input.module.js +4 -4
  425. package/esm2015/input/input.property.js +12 -7
  426. package/esm2015/input-number/input-number.component.js +3 -3
  427. package/esm2015/input-number/input-number.module.js +4 -4
  428. package/esm2015/input-number/input-number.property.js +3 -3
  429. package/esm2015/layout/col.component.js +3 -3
  430. package/esm2015/layout/layout.module.js +4 -4
  431. package/esm2015/layout/layout.property.js +6 -6
  432. package/esm2015/layout/row.component.js +3 -3
  433. package/esm2015/link/link.component.js +3 -3
  434. package/esm2015/link/link.module.js +4 -4
  435. package/esm2015/link/link.property.js +3 -3
  436. package/esm2015/list/list-option.component.js +3 -3
  437. package/esm2015/list/list.component.js +8 -7
  438. package/esm2015/list/list.module.js +4 -4
  439. package/esm2015/list/list.property.js +7 -7
  440. package/esm2015/loading/loading.component.js +6 -5
  441. package/esm2015/loading/loading.module.js +4 -4
  442. package/esm2015/loading/loading.property.js +3 -3
  443. package/esm2015/menu/menu-node.component.js +4 -4
  444. package/esm2015/menu/menu.component.js +10 -10
  445. package/esm2015/menu/menu.module.js +4 -4
  446. package/esm2015/menu/menu.property.js +6 -6
  447. package/esm2015/message/message.component.js +5 -5
  448. package/esm2015/message/message.module.js +4 -4
  449. package/esm2015/message/message.property.js +2 -2
  450. package/esm2015/message/message.service.js +6 -6
  451. package/esm2015/message-box/message-box.component.js +20 -24
  452. package/esm2015/message-box/message-box.module.js +4 -4
  453. package/esm2015/message-box/message-box.service.js +10 -8
  454. package/esm2015/notification/notification.component.js +5 -5
  455. package/esm2015/notification/notification.module.js +4 -4
  456. package/esm2015/notification/notification.property.js +1 -1
  457. package/esm2015/notification/notification.service.js +3 -3
  458. package/esm2015/outlet/outlet.directive.js +3 -3
  459. package/esm2015/outlet/outlet.module.js +4 -4
  460. package/esm2015/page-header/page-header.component.js +3 -3
  461. package/esm2015/page-header/page-header.module.js +4 -4
  462. package/esm2015/page-header/page-header.property.js +3 -3
  463. package/esm2015/pagination/pagination.component.js +45 -7
  464. package/esm2015/pagination/pagination.module.js +10 -6
  465. package/esm2015/pagination/pagination.property.js +52 -4
  466. package/esm2015/pattern/pattern.component.js +3 -3
  467. package/esm2015/pattern/pattern.module.js +4 -4
  468. package/esm2015/popconfirm/popconfirm.component.js +3 -3
  469. package/esm2015/popconfirm/popconfirm.module.js +4 -4
  470. package/esm2015/popconfirm/popconfirm.property.js +3 -3
  471. package/esm2015/popover/popover-portal.component.js +4 -4
  472. package/esm2015/popover/popover.directive.js +7 -6
  473. package/esm2015/popover/popover.module.js +4 -4
  474. package/esm2015/popover/popover.property.js +3 -3
  475. package/esm2015/portal/portal.module.js +6 -5
  476. package/esm2015/portal/portal.service.js +11 -12
  477. package/esm2015/progress/progress.component.js +180 -17
  478. package/esm2015/progress/progress.module.js +4 -4
  479. package/esm2015/progress/progress.property.js +52 -5
  480. package/esm2015/radio/radio.component.js +7 -6
  481. package/esm2015/radio/radio.module.js +4 -4
  482. package/esm2015/radio/radio.property.js +4 -4
  483. package/esm2015/rate/rate.component.js +9 -9
  484. package/esm2015/rate/rate.module.js +4 -4
  485. package/esm2015/rate/rate.property.js +3 -3
  486. package/esm2015/result/result.component.js +3 -3
  487. package/esm2015/result/result.module.js +4 -4
  488. package/esm2015/result/result.property.js +3 -3
  489. package/esm2015/ripple/ripple.directive.js +4 -4
  490. package/esm2015/ripple/ripple.module.js +4 -4
  491. package/esm2015/ripple/ripple.property.js +4 -4
  492. package/esm2015/select/select-portal.component.js +6 -6
  493. package/esm2015/select/select.component.js +15 -11
  494. package/esm2015/select/select.module.js +4 -4
  495. package/esm2015/select/select.property.js +15 -4
  496. package/esm2015/skeleton/skeleton.component.js +6 -5
  497. package/esm2015/skeleton/skeleton.module.js +4 -4
  498. package/esm2015/skeleton/skeleton.property.js +3 -3
  499. package/esm2015/slider/slider.component.js +11 -12
  500. package/esm2015/slider/slider.module.js +4 -4
  501. package/esm2015/slider/slider.property.js +3 -3
  502. package/esm2015/slider-select/slider-select.component.js +3 -3
  503. package/esm2015/slider-select/slider-select.module.js +4 -4
  504. package/esm2015/slider-select/slider-select.property.js +3 -3
  505. package/esm2015/statistic/countdown.component.js +8 -7
  506. package/esm2015/statistic/statistic.component.js +6 -5
  507. package/esm2015/statistic/statistic.module.js +4 -4
  508. package/esm2015/statistic/statistic.property.js +6 -6
  509. package/esm2015/steps/steps.component.js +22 -13
  510. package/esm2015/steps/steps.module.js +7 -6
  511. package/esm2015/steps/steps.property.js +12 -5
  512. package/esm2015/switch/switch.component.js +3 -3
  513. package/esm2015/switch/switch.module.js +4 -4
  514. package/esm2015/switch/switch.property.js +3 -3
  515. package/esm2015/table/drag.directive.js +5 -5
  516. package/esm2015/table/table-body.component.js +7 -6
  517. package/esm2015/table/table-foot.component.js +4 -4
  518. package/esm2015/table/table-head.component.js +7 -6
  519. package/esm2015/table/table.component.js +9 -8
  520. package/esm2015/table/table.module.js +4 -4
  521. package/esm2015/table/table.property.js +13 -13
  522. package/esm2015/tabs/tab-content.component.js +3 -3
  523. package/esm2015/tabs/tab.component.js +4 -4
  524. package/esm2015/tabs/tabs.component.js +9 -8
  525. package/esm2015/tabs/tabs.module.js +4 -4
  526. package/esm2015/tabs/tabs.property.js +6 -6
  527. package/esm2015/tag/tag.component.js +6 -5
  528. package/esm2015/tag/tag.module.js +4 -4
  529. package/esm2015/tag/tag.property.js +3 -3
  530. package/esm2015/text-retract/text-retract.component.js +6 -5
  531. package/esm2015/text-retract/text-retract.module.js +4 -4
  532. package/esm2015/text-retract/text-retract.property.js +3 -3
  533. package/esm2015/textarea/textarea.component.js +6 -5
  534. package/esm2015/textarea/textarea.module.js +4 -4
  535. package/esm2015/textarea/textarea.property.js +4 -14
  536. package/esm2015/theme/theme.component.js +5 -5
  537. package/esm2015/theme/theme.module.js +4 -4
  538. package/esm2015/theme/theme.property.js +4 -4
  539. package/esm2015/time-ago/time-ago.module.js +4 -4
  540. package/esm2015/time-ago/time-ago.pipe.js +3 -3
  541. package/esm2015/time-picker/time-picker-frame.component.js +22 -12
  542. package/esm2015/time-picker/time-picker-portal.component.js +5 -5
  543. package/esm2015/time-picker/time-picker.component.js +31 -15
  544. package/esm2015/time-picker/time-picker.module.js +4 -4
  545. package/esm2015/time-picker/time-picker.property.js +16 -5
  546. package/esm2015/time-range/time-range.module.js +4 -4
  547. package/esm2015/time-range/time-range.pipe.js +3 -3
  548. package/esm2015/timeline/timeline.component.js +7 -6
  549. package/esm2015/timeline/timeline.module.js +4 -4
  550. package/esm2015/timeline/timeline.property.js +3 -3
  551. package/esm2015/tooltip/tooltip-portal.component.js +4 -4
  552. package/esm2015/tooltip/tooltip.directive.js +7 -6
  553. package/esm2015/tooltip/tooltip.module.js +4 -4
  554. package/esm2015/tooltip/tooltip.property.js +4 -4
  555. package/esm2015/transfer/transfer.component.js +7 -6
  556. package/esm2015/transfer/transfer.module.js +4 -4
  557. package/esm2015/transfer/transfer.property.js +3 -3
  558. package/esm2015/tree/tree-node.component.js +5 -5
  559. package/esm2015/tree/tree.component.js +11 -10
  560. package/esm2015/tree/tree.module.js +4 -4
  561. package/esm2015/tree/tree.property.js +7 -7
  562. package/esm2015/tree-file/tree-file.component.js +3 -3
  563. package/esm2015/tree-file/tree-file.module.js +4 -4
  564. package/esm2015/tree-file/tree-file.property.js +3 -3
  565. package/esm2015/typography/typography.component.js +3 -3
  566. package/esm2015/typography/typography.module.js +4 -4
  567. package/esm2015/typography/typography.property.js +3 -3
  568. package/esm2015/upload/upload-portal.component.js +5 -5
  569. package/esm2015/upload/upload.component.js +7 -6
  570. package/esm2015/upload/upload.module.js +4 -4
  571. package/esm2015/upload/upload.property.js +3 -3
  572. package/fesm2015/ng-nest-ui-affix.js +10 -10
  573. package/fesm2015/ng-nest-ui-alert.js +10 -10
  574. package/fesm2015/ng-nest-ui-alert.js.map +1 -1
  575. package/fesm2015/ng-nest-ui-anchor.js +11 -11
  576. package/fesm2015/ng-nest-ui-anchor.js.map +1 -1
  577. package/fesm2015/ng-nest-ui-api.js +7 -7
  578. package/fesm2015/ng-nest-ui-auto-complete.js +37 -18
  579. package/fesm2015/ng-nest-ui-auto-complete.js.map +1 -1
  580. package/fesm2015/ng-nest-ui-avatar.js +10 -10
  581. package/fesm2015/ng-nest-ui-back-top.js +12 -12
  582. package/fesm2015/ng-nest-ui-back-top.js.map +1 -1
  583. package/fesm2015/ng-nest-ui-badge.js +12 -11
  584. package/fesm2015/ng-nest-ui-badge.js.map +1 -1
  585. package/fesm2015/ng-nest-ui-base-form.js +36 -12
  586. package/fesm2015/ng-nest-ui-base-form.js.map +1 -1
  587. package/fesm2015/ng-nest-ui-border.js +7 -7
  588. package/fesm2015/ng-nest-ui-button.js +20 -19
  589. package/fesm2015/ng-nest-ui-button.js.map +1 -1
  590. package/fesm2015/ng-nest-ui-calendar.js +14 -13
  591. package/fesm2015/ng-nest-ui-calendar.js.map +1 -1
  592. package/fesm2015/ng-nest-ui-card.js +10 -10
  593. package/fesm2015/ng-nest-ui-carousel.js +28 -27
  594. package/fesm2015/ng-nest-ui-carousel.js.map +1 -1
  595. package/fesm2015/ng-nest-ui-cascade.js +63 -22
  596. package/fesm2015/ng-nest-ui-cascade.js.map +1 -1
  597. package/fesm2015/ng-nest-ui-checkbox.js +13 -12
  598. package/fesm2015/ng-nest-ui-checkbox.js.map +1 -1
  599. package/fesm2015/ng-nest-ui-collapse.js +16 -16
  600. package/fesm2015/ng-nest-ui-collapse.js.map +1 -1
  601. package/fesm2015/ng-nest-ui-color-picker.js +24 -21
  602. package/fesm2015/ng-nest-ui-color-picker.js.map +1 -1
  603. package/fesm2015/ng-nest-ui-color.js +11 -11
  604. package/fesm2015/ng-nest-ui-color.js.map +1 -1
  605. package/fesm2015/ng-nest-ui-comment.js +19 -18
  606. package/fesm2015/ng-nest-ui-comment.js.map +1 -1
  607. package/fesm2015/ng-nest-ui-container.js +32 -32
  608. package/fesm2015/ng-nest-ui-container.js.map +1 -1
  609. package/fesm2015/ng-nest-ui-core.js +106 -25
  610. package/fesm2015/ng-nest-ui-core.js.map +1 -1
  611. package/fesm2015/ng-nest-ui-crumb.js +13 -12
  612. package/fesm2015/ng-nest-ui-crumb.js.map +1 -1
  613. package/fesm2015/ng-nest-ui-date-picker.js +325 -186
  614. package/fesm2015/ng-nest-ui-date-picker.js.map +1 -1
  615. package/fesm2015/ng-nest-ui-description.js +21 -22
  616. package/fesm2015/ng-nest-ui-description.js.map +1 -1
  617. package/fesm2015/ng-nest-ui-dialog.js +263 -33
  618. package/fesm2015/ng-nest-ui-dialog.js.map +1 -1
  619. package/fesm2015/ng-nest-ui-doc.js +7 -7
  620. package/fesm2015/ng-nest-ui-drawer.js +232 -20
  621. package/fesm2015/ng-nest-ui-drawer.js.map +1 -1
  622. package/fesm2015/ng-nest-ui-dropdown.js +17 -16
  623. package/fesm2015/ng-nest-ui-dropdown.js.map +1 -1
  624. package/fesm2015/ng-nest-ui-empty.js +10 -10
  625. package/fesm2015/ng-nest-ui-examples.js +7 -7
  626. package/fesm2015/ng-nest-ui-find.js +16 -15
  627. package/fesm2015/ng-nest-ui-find.js.map +1 -1
  628. package/fesm2015/ng-nest-ui-form.js +22 -26
  629. package/fesm2015/ng-nest-ui-form.js.map +1 -1
  630. package/fesm2015/ng-nest-ui-highlight.js +12 -11
  631. package/fesm2015/ng-nest-ui-highlight.js.map +1 -1
  632. package/fesm2015/ng-nest-ui-i18n.js +532 -131
  633. package/fesm2015/ng-nest-ui-i18n.js.map +1 -1
  634. package/fesm2015/ng-nest-ui-icon.js +18 -18
  635. package/fesm2015/ng-nest-ui-icon.js.map +1 -1
  636. package/fesm2015/ng-nest-ui-inner.js +11 -11
  637. package/fesm2015/ng-nest-ui-inner.js.map +1 -1
  638. package/fesm2015/ng-nest-ui-input-number.js +10 -10
  639. package/fesm2015/ng-nest-ui-input.js +38 -21
  640. package/fesm2015/ng-nest-ui-input.js.map +1 -1
  641. package/fesm2015/ng-nest-ui-layout.js +16 -16
  642. package/fesm2015/ng-nest-ui-link.js +10 -10
  643. package/fesm2015/ng-nest-ui-list.js +20 -19
  644. package/fesm2015/ng-nest-ui-list.js.map +1 -1
  645. package/fesm2015/ng-nest-ui-loading.js +12 -11
  646. package/fesm2015/ng-nest-ui-loading.js.map +1 -1
  647. package/fesm2015/ng-nest-ui-menu.js +22 -22
  648. package/fesm2015/ng-nest-ui-menu.js.map +1 -1
  649. package/fesm2015/ng-nest-ui-message-box.js +32 -34
  650. package/fesm2015/ng-nest-ui-message-box.js.map +1 -1
  651. package/fesm2015/ng-nest-ui-message.js +14 -14
  652. package/fesm2015/ng-nest-ui-message.js.map +1 -1
  653. package/fesm2015/ng-nest-ui-notification.js +11 -11
  654. package/fesm2015/ng-nest-ui-notification.js.map +1 -1
  655. package/fesm2015/ng-nest-ui-outlet.js +7 -7
  656. package/fesm2015/ng-nest-ui-page-header.js +10 -10
  657. package/fesm2015/ng-nest-ui-pagination.js +104 -14
  658. package/fesm2015/ng-nest-ui-pagination.js.map +1 -1
  659. package/fesm2015/ng-nest-ui-pattern.js +7 -7
  660. package/fesm2015/ng-nest-ui-popconfirm.js +10 -10
  661. package/fesm2015/ng-nest-ui-popover.js +16 -15
  662. package/fesm2015/ng-nest-ui-popover.js.map +1 -1
  663. package/fesm2015/ng-nest-ui-portal.js +15 -15
  664. package/fesm2015/ng-nest-ui-portal.js.map +1 -1
  665. package/fesm2015/ng-nest-ui-progress.js +234 -25
  666. package/fesm2015/ng-nest-ui-progress.js.map +1 -1
  667. package/fesm2015/ng-nest-ui-radio.js +13 -12
  668. package/fesm2015/ng-nest-ui-radio.js.map +1 -1
  669. package/fesm2015/ng-nest-ui-rate.js +15 -15
  670. package/fesm2015/ng-nest-ui-rate.js.map +1 -1
  671. package/fesm2015/ng-nest-ui-result.js +10 -10
  672. package/fesm2015/ng-nest-ui-ripple.js +10 -10
  673. package/fesm2015/ng-nest-ui-ripple.js.map +1 -1
  674. package/fesm2015/ng-nest-ui-select.js +37 -22
  675. package/fesm2015/ng-nest-ui-select.js.map +1 -1
  676. package/fesm2015/ng-nest-ui-skeleton.js +12 -11
  677. package/fesm2015/ng-nest-ui-skeleton.js.map +1 -1
  678. package/fesm2015/ng-nest-ui-slider-select.js +10 -10
  679. package/fesm2015/ng-nest-ui-slider.js +17 -18
  680. package/fesm2015/ng-nest-ui-slider.js.map +1 -1
  681. package/fesm2015/ng-nest-ui-statistic.js +22 -20
  682. package/fesm2015/ng-nest-ui-statistic.js.map +1 -1
  683. package/fesm2015/ng-nest-ui-steps.js +38 -21
  684. package/fesm2015/ng-nest-ui-steps.js.map +1 -1
  685. package/fesm2015/ng-nest-ui-switch.js +10 -10
  686. package/fesm2015/ng-nest-ui-table.js +43 -40
  687. package/fesm2015/ng-nest-ui-table.js.map +1 -1
  688. package/fesm2015/ng-nest-ui-tabs.js +24 -23
  689. package/fesm2015/ng-nest-ui-tabs.js.map +1 -1
  690. package/fesm2015/ng-nest-ui-tag.js +12 -11
  691. package/fesm2015/ng-nest-ui-tag.js.map +1 -1
  692. package/fesm2015/ng-nest-ui-text-retract.js +12 -11
  693. package/fesm2015/ng-nest-ui-text-retract.js.map +1 -1
  694. package/fesm2015/ng-nest-ui-textarea.js +12 -21
  695. package/fesm2015/ng-nest-ui-textarea.js.map +1 -1
  696. package/fesm2015/ng-nest-ui-theme.js +11 -11
  697. package/fesm2015/ng-nest-ui-theme.js.map +1 -1
  698. package/fesm2015/ng-nest-ui-time-ago.js +7 -7
  699. package/fesm2015/ng-nest-ui-time-picker.js +73 -36
  700. package/fesm2015/ng-nest-ui-time-picker.js.map +1 -1
  701. package/fesm2015/ng-nest-ui-time-range.js +7 -7
  702. package/fesm2015/ng-nest-ui-timeline.js +13 -12
  703. package/fesm2015/ng-nest-ui-timeline.js.map +1 -1
  704. package/fesm2015/ng-nest-ui-tooltip.js +16 -15
  705. package/fesm2015/ng-nest-ui-tooltip.js.map +1 -1
  706. package/fesm2015/ng-nest-ui-transfer.js +13 -12
  707. package/fesm2015/ng-nest-ui-transfer.js.map +1 -1
  708. package/fesm2015/ng-nest-ui-tree-file.js +10 -10
  709. package/fesm2015/ng-nest-ui-tree.js +24 -23
  710. package/fesm2015/ng-nest-ui-tree.js.map +1 -1
  711. package/fesm2015/ng-nest-ui-typography.js +10 -10
  712. package/fesm2015/ng-nest-ui-upload.js +17 -16
  713. package/fesm2015/ng-nest-ui-upload.js.map +1 -1
  714. package/find/find.component.d.ts +1 -1
  715. package/form/control.component.d.ts +1 -1
  716. package/form/form.component.d.ts +1 -1
  717. package/form/form.property.d.ts +6 -6
  718. package/i18n/languages/ar_EG.d.ts +8 -0
  719. package/i18n/languages/bg_BG.d.ts +8 -0
  720. package/i18n/languages/ca_ES.d.ts +8 -0
  721. package/i18n/languages/cs_CZ.d.ts +8 -0
  722. package/i18n/languages/da_DK.d.ts +8 -0
  723. package/i18n/languages/de_DE.d.ts +8 -0
  724. package/i18n/languages/el_GR.d.ts +8 -0
  725. package/i18n/languages/en_GB.d.ts +8 -0
  726. package/i18n/languages/en_US.d.ts +5 -0
  727. package/i18n/languages/es_ES.d.ts +8 -0
  728. package/i18n/languages/et_EE.d.ts +8 -0
  729. package/i18n/languages/fa_IR.d.ts +8 -0
  730. package/i18n/languages/fi_FI.d.ts +8 -0
  731. package/i18n/languages/fr_BE.d.ts +8 -0
  732. package/i18n/languages/fr_FR.d.ts +8 -0
  733. package/i18n/languages/he_IL.d.ts +8 -0
  734. package/i18n/languages/hi_IN.d.ts +8 -0
  735. package/i18n/languages/hr_HR.d.ts +8 -0
  736. package/i18n/languages/hu_HU.d.ts +8 -0
  737. package/i18n/languages/hy_AM.d.ts +8 -0
  738. package/i18n/languages/id_ID.d.ts +8 -0
  739. package/i18n/languages/is_IS.d.ts +8 -0
  740. package/i18n/languages/it_IT.d.ts +8 -0
  741. package/i18n/languages/ja_JP.d.ts +8 -0
  742. package/i18n/languages/ka_GE.d.ts +8 -0
  743. package/i18n/languages/kn_IN.d.ts +8 -0
  744. package/i18n/languages/ko_KR.d.ts +8 -0
  745. package/i18n/languages/ku_IQ.d.ts +8 -0
  746. package/i18n/languages/lv_LV.d.ts +8 -0
  747. package/i18n/languages/mn_MN.d.ts +8 -0
  748. package/i18n/languages/ms_MY.d.ts +8 -0
  749. package/i18n/languages/nb_NO.d.ts +8 -0
  750. package/i18n/languages/ne_NP.d.ts +8 -0
  751. package/i18n/languages/nl_BE.d.ts +8 -0
  752. package/i18n/languages/nl_NL.d.ts +8 -0
  753. package/i18n/languages/pl_PL.d.ts +8 -0
  754. package/i18n/languages/pt_BR.d.ts +8 -0
  755. package/i18n/languages/pt_PT.d.ts +8 -0
  756. package/i18n/languages/ro_RO.d.ts +8 -0
  757. package/i18n/languages/ru_RU.d.ts +8 -0
  758. package/i18n/languages/sk_SK.d.ts +8 -0
  759. package/i18n/languages/sl_SI.d.ts +8 -0
  760. package/i18n/languages/sr_RS.d.ts +8 -0
  761. package/i18n/languages/sv_SE.d.ts +8 -0
  762. package/i18n/languages/ta_IN.d.ts +8 -0
  763. package/i18n/languages/th_TH.d.ts +8 -0
  764. package/i18n/languages/tr_TR.d.ts +8 -0
  765. package/i18n/languages/uk_UA.d.ts +8 -0
  766. package/i18n/languages/vi_VN.d.ts +8 -0
  767. package/i18n/languages/zh_CN.d.ts +4 -0
  768. package/i18n/languages/zh_TW.d.ts +7 -0
  769. package/inner/inner.component.d.ts +1 -1
  770. package/input/input-group.component.d.ts +2 -4
  771. package/input/input.component.d.ts +3 -1
  772. package/input/input.property.d.ts +6 -1
  773. package/list/list.component.d.ts +2 -2
  774. package/menu/menu.component.d.ts +1 -1
  775. package/message/message.component.d.ts +1 -1
  776. package/message/message.property.d.ts +1 -1
  777. package/message-box/message-box.component.d.ts +2 -1
  778. package/notification/notification.component.d.ts +1 -1
  779. package/package.json +1 -1
  780. package/pagination/pagination.component.d.ts +5 -1
  781. package/pagination/pagination.module.d.ts +7 -3
  782. package/pagination/pagination.property.d.ts +49 -3
  783. package/portal/portal.module.d.ts +1 -1
  784. package/portal/portal.service.d.ts +2 -3
  785. package/progress/progress.component.d.ts +31 -3
  786. package/progress/progress.property.d.ts +80 -5
  787. package/radio/radio.component.d.ts +1 -1
  788. package/rate/rate.component.d.ts +5 -5
  789. package/select/select-portal.component.d.ts +3 -3
  790. package/select/select.component.d.ts +1 -1
  791. package/select/select.property.d.ts +12 -2
  792. package/slider/slider.component.d.ts +1 -1
  793. package/steps/steps.component.d.ts +1 -1
  794. package/steps/steps.module.d.ts +2 -1
  795. package/steps/steps.property.d.ts +12 -2
  796. package/table/table-body.component.d.ts +1 -1
  797. package/table/table-head.component.d.ts +1 -1
  798. package/table/table.component.d.ts +1 -1
  799. package/table/table.property.d.ts +11 -1
  800. package/textarea/textarea.property.d.ts +1 -6
  801. package/theme/theme.component.d.ts +1 -1
  802. package/time-picker/time-picker-frame.component.d.ts +4 -0
  803. package/time-picker/time-picker-portal.component.d.ts +3 -3
  804. package/time-picker/time-picker.component.d.ts +5 -3
  805. package/time-picker/time-picker.property.d.ts +12 -2
  806. package/timeline/timeline.component.d.ts +1 -1
  807. package/transfer/transfer.component.d.ts +1 -1
  808. package/tree/tree-node.component.d.ts +1 -1
  809. package/tree/tree.component.d.ts +1 -1
  810. package/upload/upload.component.d.ts +3 -3
@@ -46,8 +46,8 @@ class XCarouselProperty extends XProperty {
46
46
  this.activeChange = new EventEmitter();
47
47
  }
48
48
  }
49
- /** @nocollapse */ XCarouselProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
50
- /** @nocollapse */ XCarouselProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.3", type: XCarouselProperty, selector: "ng-component", inputs: { active: "active", height: "height", trigger: "trigger", arrow: "arrow", direction: "direction", autoplay: "autoplay", interval: "interval", outside: "outside", card: "card" }, outputs: { activeChange: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
49
+ /** @nocollapse */ XCarouselProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
50
+ /** @nocollapse */ XCarouselProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: XCarouselProperty, selector: "ng-component", inputs: { active: "active", height: "height", trigger: "trigger", arrow: "arrow", direction: "direction", autoplay: "autoplay", interval: "interval", outside: "outside", card: "card" }, outputs: { activeChange: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
51
51
  __decorate([
52
52
  XInputNumber()
53
53
  ], XCarouselProperty.prototype, "active", void 0);
@@ -72,7 +72,7 @@ __decorate([
72
72
  __decorate([
73
73
  XInputBoolean()
74
74
  ], XCarouselProperty.prototype, "card", void 0);
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselProperty, decorators: [{
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselProperty, decorators: [{
76
76
  type: Component,
77
77
  args: [{ template: '' }]
78
78
  }], propDecorators: { active: [{
@@ -107,12 +107,12 @@ const XCarouselPanelPrefix = 'x-carousel-panel';
107
107
  */
108
108
  class XCarouselPanelProperty extends XProperty {
109
109
  }
110
- /** @nocollapse */ XCarouselPanelProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselPanelProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
111
- /** @nocollapse */ XCarouselPanelProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.3", type: XCarouselPanelProperty, selector: "ng-component", inputs: { active: "active" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
110
+ /** @nocollapse */ XCarouselPanelProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselPanelProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
111
+ /** @nocollapse */ XCarouselPanelProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: XCarouselPanelProperty, selector: "ng-component", inputs: { active: "active" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
112
112
  __decorate([
113
113
  XInputBoolean()
114
114
  ], XCarouselPanelProperty.prototype, "active", void 0);
115
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselPanelProperty, decorators: [{
115
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselPanelProperty, decorators: [{
116
116
  type: Component,
117
117
  args: [{ template: '' }]
118
118
  }], propDecorators: { active: [{
@@ -144,7 +144,8 @@ class XCarouselComponent extends XCarouselProperty {
144
144
  });
145
145
  }
146
146
  ngOnChanges(simples) {
147
- XIsChange(simples.active) && this.setActiveItem(Number(this.active));
147
+ const { active } = simples;
148
+ XIsChange(active) && this.setActiveItem(Number(this.active));
148
149
  }
149
150
  ngOnDestroy() {
150
151
  var _a;
@@ -182,13 +183,13 @@ class XCarouselComponent extends XCarouselProperty {
182
183
  getActivated(index) {
183
184
  return Number(this.active) === index;
184
185
  }
185
- trackByPanel(index, item) {
186
+ trackByPanel(index, _item) {
186
187
  return index;
187
188
  }
188
189
  }
189
- /** @nocollapse */ XCarouselComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
190
- /** @nocollapse */ XCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.3", type: XCarouselComponent, selector: "x-carousel", viewQueries: [{ propertyName: "carousel", first: true, predicate: ["carousel"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #carousel class=\"x-carousel\" [ngClass]=\"classMap\" [class.x-carousel-arrow-always]=\"arrow === 'always'\">\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n <ng-container *ngIf=\"arrow !== 'never' && direction !== 'vertical'\">\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n <ul class=\"x-carousel-indicator\" [class.x-carousel-indicator-outside]=\"outside || card\">\r\n <li\r\n *ngFor=\"let panel of panelChanges; let i = index; trackBy: trackByPanel\"\r\n [class.x-activated]=\"getActivated(i)\"\r\n (click)=\"action(i, 0, 'click')\"\r\n (mouseenter)=\"action(i, 0, 'hover')\"\r\n >\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n </ul>\r\n</div>\r\n", styles: [".x-carousel{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box}.x-carousel,.x-carousel-content{position:relative}.x-carousel-content>x-button{opacity:0;visibility:hidden;top:50%;z-index:10;transform:translateY(-50%);position:absolute;transition:var(--x-animation-duration-base) ease-out}.x-carousel-content>x-button .x-button{border:none;outline:none;padding:0;margin:0;height:2.25rem;width:2.25rem;border-radius:50%;background-color:#1f2d3d26;color:var(--x-background-100);text-align:center}.x-carousel-content>x-button .x-button:hover{color:var(--x-background-100);background-color:#1f2d3d40}.x-carousel-content>x-button.arrow-left{left:1rem;transform:translate3D(-15px,-50%,0)}.x-carousel-content>x-button.arrow-right{right:1rem;transform:translate3D(15px,-50%,0)}.x-carousel-content>x-carousel-panel{position:absolute;top:0;left:0;width:100%;height:100%;display:inline-block;overflow:hidden;background-color:var(--x-background-a100);z-index:0}.x-carousel-content>x-carousel-panel.x-carousel-animating{transition:.4s ease-in-out}.x-carousel-content>x-carousel-panel.x-carousel-card{width:50%}.x-carousel-content>x-carousel-panel.x-carousel-in-stage{cursor:pointer;z-index:1}.x-carousel-content>x-carousel-panel.x-carousel-in-stage .x-carousel-mask{position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(--x-background);opacity:.24;transition:.2s}.x-carousel-content>x-carousel-panel.x-carousel-in-stage:hover .x-carousel-mask{opacity:.12}.x-carousel-content>x-carousel-panel.x-activated{z-index:2}.x-carousel-indicator{bottom:.25rem;left:50%;transform:translateX(-50%);position:absolute;z-index:2;display:inline-flex}.x-carousel-indicator>li{cursor:pointer;background-color:initial;display:inline-flex;padding:.75rem .25rem}.x-carousel-indicator>li>x-button .x-button{padding:0;width:1.875rem;height:.125rem;background-color:#1f2d3d26;transition:.3s}.x-carousel-indicator>li:hover>x-button .x-button{background-color:#1f2d3d40}.x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#ffffffe6}.x-carousel-indicator-outside{position:static;transform:none;display:flex;align-items:center;justify-content:center}.x-carousel-indicator-outside>li>x-button .x-button{background-color:var(--x-text-700)}.x-carousel-indicator-outside>li.x-activated>x-button .x-button{background-color:var(--x-white)}.x-carousel-arrow-always .x-carousel-content>x-button,.x-carousel:hover .x-carousel-content>x-button{opacity:1;visibility:inherit}.x-carousel-arrow-always .x-carousel-content>x-button.arrow-left,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-right,.x-carousel:hover .x-carousel-content>x-button.arrow-left,.x-carousel:hover .x-carousel-content>x-button.arrow-right{transform:translate3D(0,-50%,0)}.x-carousel-horizontal{overflow-x:hidden}.x-carousel-vertical{overflow-y:hidden}.x-carousel-vertical>.x-carousel-indicator{right:0;top:50%;left:inherit;bottom:inherit;flex-direction:column;transform:translateY(-50%)}.x-carousel-vertical>.x-carousel-indicator>li{padding:.25rem .75rem}.x-carousel-vertical>.x-carousel-indicator>li>x-button .x-button{width:.125rem;height:1rem}"], components: [{ type: i2.XButtonComponent, selector: "x-button" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
191
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselComponent, decorators: [{
190
+ /** @nocollapse */ XCarouselComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
191
+ /** @nocollapse */ XCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: XCarouselComponent, selector: "x-carousel", viewQueries: [{ propertyName: "carousel", first: true, predicate: ["carousel"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #carousel class=\"x-carousel\" [ngClass]=\"classMap\" [class.x-carousel-arrow-always]=\"arrow === 'always'\">\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n <ng-container *ngIf=\"arrow !== 'never' && direction !== 'vertical'\">\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n <ul class=\"x-carousel-indicator\" [class.x-carousel-indicator-outside]=\"outside || card\">\r\n <li\r\n *ngFor=\"let panel of panelChanges; let i = index; trackBy: trackByPanel\"\r\n [class.x-activated]=\"getActivated(i)\"\r\n (click)=\"action(i, 0, 'click')\"\r\n (mouseenter)=\"action(i, 0, 'hover')\"\r\n >\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n </ul>\r\n</div>\r\n", styles: [".x-carousel{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;position:relative}.x-carousel-content{position:relative}.x-carousel-content>x-button{opacity:0;visibility:hidden;top:50%;z-index:10;transform:translateY(-50%);position:absolute;transition:var(--x-animation-duration-base) ease-out}.x-carousel-content>x-button .x-button{border:none;outline:none;padding:0;margin:0;height:2.25rem;width:2.25rem;border-radius:50%;background-color:#1f2d3d26;color:var(--x-background-100);text-align:center}.x-carousel-content>x-button .x-button:hover{color:var(--x-background-100);background-color:#1f2d3d40}.x-carousel-content>x-button.arrow-left{left:1rem;transform:translate(-15px,-50%)}.x-carousel-content>x-button.arrow-right{right:1rem;transform:translate(15px,-50%)}.x-carousel-content>x-carousel-panel{position:absolute;top:0;left:0;width:100%;height:100%;display:inline-block;overflow:hidden;background-color:var(--x-background-a100);z-index:0}.x-carousel-content>x-carousel-panel.x-carousel-animating{transition:.4s ease-in-out}.x-carousel-content>x-carousel-panel.x-carousel-card{width:50%}.x-carousel-content>x-carousel-panel.x-carousel-in-stage{cursor:pointer;z-index:1}.x-carousel-content>x-carousel-panel.x-carousel-in-stage .x-carousel-mask{position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(--x-background);opacity:.24;transition:.2s}.x-carousel-content>x-carousel-panel.x-carousel-in-stage:hover .x-carousel-mask{opacity:.12}.x-carousel-content>x-carousel-panel.x-activated{z-index:2}.x-carousel-indicator{bottom:.25rem;left:50%;transform:translate(-50%);position:absolute;z-index:2;display:inline-flex}.x-carousel-indicator>li{cursor:pointer;background-color:transparent;display:inline-flex;padding:.75rem .25rem}.x-carousel-indicator>li>x-button .x-button{padding:0;width:1.875rem;height:.125rem;background-color:#1f2d3d26;transition:.3s}.x-carousel-indicator>li:hover>x-button .x-button{background-color:#1f2d3d40}.x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#ffffffe6}.x-carousel-indicator-outside{position:static;transform:none;display:flex;align-items:center;justify-content:center}.x-carousel-indicator-outside>li>x-button .x-button{background-color:var(--x-text-700)}.x-carousel-indicator-outside>li.x-activated>x-button .x-button{background-color:var(--x-white)}.x-carousel:hover .x-carousel-content>x-button,.x-carousel-arrow-always .x-carousel-content>x-button{opacity:1;visibility:inherit}.x-carousel:hover .x-carousel-content>x-button.arrow-left,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-left{transform:translateY(-50%)}.x-carousel:hover .x-carousel-content>x-button.arrow-right,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-right{transform:translateY(-50%)}.x-carousel-horizontal{overflow-x:hidden}.x-carousel-vertical{overflow-y:hidden}.x-carousel-vertical>.x-carousel-indicator{right:0;top:50%;left:inherit;bottom:inherit;flex-direction:column;transform:translateY(-50%)}.x-carousel-vertical>.x-carousel-indicator>li{padding:.25rem .75rem}.x-carousel-vertical>.x-carousel-indicator>li>x-button .x-button{width:.125rem;height:1rem}\n"], components: [{ type: i2.XButtonComponent, selector: "x-button" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
192
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselComponent, decorators: [{
192
193
  type: Component,
193
194
  args: [{
194
195
  selector: `${XCarouselPrefix}`,
@@ -218,24 +219,24 @@ class XCarouselPanelComponent extends XCarouselPanelProperty {
218
219
  this.scale = 1;
219
220
  this.inStage = false;
220
221
  this.updateSub = new BehaviorSubject(false);
222
+ this.unSubject = new Subject();
221
223
  }
222
224
  ngOnInit() {
223
225
  this.carousel.start++;
224
226
  this.index = this.carousel.start;
225
227
  this.setClass('x-carousel-card', Boolean(this.carousel.card));
226
228
  this.carousel.panelChanges.push(this.updateSub);
227
- }
228
- ngAfterViewInit() {
229
- setTimeout(() => {
230
- this.updateSub.subscribe((x) => {
231
- if (x)
232
- this.update();
233
- });
229
+ this.updateSub.pipe(takeUntil(this.unSubject)).subscribe((x) => {
230
+ if (x)
231
+ this.update();
234
232
  });
235
233
  }
236
234
  ngOnDestroy() {
237
- var _a;
238
- (_a = this.updateSub$) === null || _a === void 0 ? void 0 : _a.unsubscribe();
235
+ this.carousel.start--;
236
+ const idx = this.carousel.panelChanges.indexOf(this.updateSub);
237
+ this.carousel.panelChanges.splice(idx, 1);
238
+ this.unSubject.next();
239
+ this.unSubject.complete();
239
240
  }
240
241
  setActive() {
241
242
  const isActive = this.carousel.active === this.index;
@@ -317,9 +318,9 @@ class XCarouselPanelComponent extends XCarouselPanelProperty {
317
318
  this.renderer.removeClass(this.elementRef.nativeElement, cls);
318
319
  }
319
320
  }
320
- /** @nocollapse */ XCarouselPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselPanelComponent, deps: [{ token: XCarouselComponent, host: true, optional: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i2$1.DomSanitizer }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
321
- /** @nocollapse */ XCarouselPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.3", type: XCarouselPanelComponent, selector: "x-carousel-panel", usesInheritance: true, ngImport: i0, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n <div *ngIf=\"carousel?.card\" [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0;box-sizing:border-box;width:100%;height:100%;display:inline-block}"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [XDropAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
322
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselPanelComponent, decorators: [{
321
+ /** @nocollapse */ XCarouselPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselPanelComponent, deps: [{ token: XCarouselComponent, host: true, optional: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i2$1.DomSanitizer }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
322
+ /** @nocollapse */ XCarouselPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: XCarouselPanelComponent, selector: "x-carousel-panel", usesInheritance: true, ngImport: i0, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n <div *ngIf=\"carousel?.card\" [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0;box-sizing:border-box;width:100%;height:100%;display:inline-block}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [XDropAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
323
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselPanelComponent, decorators: [{
323
324
  type: Component,
324
325
  args: [{
325
326
  selector: `${XCarouselPanelPrefix}`,
@@ -337,10 +338,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImpor
337
338
 
338
339
  class XCarouselModule {
339
340
  }
340
- /** @nocollapse */ XCarouselModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
341
- /** @nocollapse */ XCarouselModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselModule, declarations: [XCarouselComponent, XCarouselPanelComponent, XCarouselProperty, XCarouselPanelProperty], imports: [CommonModule, XButtonModule], exports: [XCarouselComponent, XCarouselPanelComponent] });
342
- /** @nocollapse */ XCarouselModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselModule, imports: [[CommonModule, XButtonModule]] });
343
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCarouselModule, decorators: [{
341
+ /** @nocollapse */ XCarouselModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
342
+ /** @nocollapse */ XCarouselModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselModule, declarations: [XCarouselComponent, XCarouselPanelComponent, XCarouselProperty, XCarouselPanelProperty], imports: [CommonModule, XButtonModule], exports: [XCarouselComponent, XCarouselPanelComponent] });
343
+ /** @nocollapse */ XCarouselModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselModule, imports: [[CommonModule, XButtonModule]] });
344
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCarouselModule, decorators: [{
344
345
  type: NgModule,
345
346
  args: [{
346
347
  declarations: [XCarouselComponent, XCarouselPanelComponent, XCarouselProperty, XCarouselPanelProperty],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-carousel.js","sources":["../../../../lib/ng-nest/ui/carousel/carousel.property.ts","../../../../lib/ng-nest/ui/carousel/carousel.component.ts","../../../../lib/ng-nest/ui/carousel/carousel.component.html","../../../../lib/ng-nest/ui/carousel/carousel-panel.component.ts","../../../../lib/ng-nest/ui/carousel/carousel-panel.component.html","../../../../lib/ng-nest/ui/carousel/carousel.module.ts","../../../../lib/ng-nest/ui/carousel/ng-nest-ui-carousel.ts"],"sourcesContent":["import {\r\n XProperty,\r\n XInputNumber,\r\n XInputBoolean,\r\n XNumber,\r\n XBoolean,\r\n XWithConfig,\r\n XShadow,\r\n XDisplayDirection,\r\n XTrigger\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component } from '@angular/core';\r\n\r\n/**\r\n * Carousel\r\n * @selector x-carousel\r\n * @decorator component\r\n */\r\nexport const XCarouselPrefix = 'x-carousel';\r\nconst X_CONFIG_NAME = 'carousel';\r\n\r\n/**\r\n * Carousel Property\r\n */\r\n@Component({ template: '' })\r\nexport class XCarouselProperty extends XProperty {\r\n /**\r\n * @zh_CN 当前激活的幻灯片索引\r\n * @en_US Index of the currently active slide\r\n */\r\n @Input() @XInputNumber() active: XNumber = 0;\r\n /**\r\n * @zh_CN 幻灯片高度\r\n * @en_US Slide height\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '15rem') height?: string;\r\n /**\r\n * @zh_CN 切换器触发方式\r\n * @en_US Switcher trigger method\r\n */\r\n @Input() @XWithConfig<XCarouselTrigger>(X_CONFIG_NAME, 'hover') trigger?: XCarouselTrigger;\r\n /**\r\n * @zh_CN 箭头显示影藏方式\r\n * @en_US Arrow shows how to hide\r\n */\r\n @Input() @XWithConfig<XCarouselArrow>(X_CONFIG_NAME, 'hover') arrow?: XCarouselArrow;\r\n /**\r\n * @zh_CN 幻灯片轮播方向\r\n * @en_US Slide rotation direction\r\n */\r\n @Input() @XWithConfig<XCarouselDirection>(X_CONFIG_NAME, 'horizontal') direction?: XCarouselDirection;\r\n /**\r\n * @zh_CN 自动切换\r\n * @en_US Automatic switching\r\n */\r\n @Input() @XInputBoolean() autoplay: XBoolean = true;\r\n /**\r\n * @zh_CN 自动切换时间间隔\r\n * @en_US Automatic switching time interval\r\n */\r\n @Input() interval: XNumber = 3000;\r\n /**\r\n * @zh_CN 切换器否显示在外面\r\n * @en_US Whether the switcher is displayed outside\r\n */\r\n @Input() @XInputBoolean() outside?: XBoolean;\r\n /**\r\n * @zh_CN 是否以卡片的方式显示幻灯片\r\n * @en_US Whether to display the slideshow as a card\r\n */\r\n @Input() @XInputBoolean() card?: XBoolean;\r\n /**\r\n * @zh_CN 激活的序号改变的事件\r\n * @en_US The activated sequence number changed event\r\n */\r\n @Output() activeChange = new EventEmitter<number>();\r\n}\r\n\r\n/**\r\n * @zh_CN 指示器切换方式\r\n * @en_US Indicator switching method\r\n */\r\nexport type XCarouselTrigger = XTrigger;\r\n\r\n/**\r\n * @zh_CN 切换箭头显示方式\r\n * @en_US Toggle arrow display\r\n */\r\nexport type XCarouselArrow = XShadow;\r\n\r\n/**\r\n * @zh_CN 走马灯展示的方向\r\n * @en_US The direction of the revolving lantern\r\n */\r\nexport type XCarouselDirection = XDisplayDirection;\r\n\r\n/**\r\n * Carousel Panel\r\n * @selector x-carousel-panel\r\n * @decorator component\r\n */\r\nexport const XCarouselPanelPrefix = 'x-carousel-panel';\r\n\r\n/**\r\n * Carousel Panel Property\r\n */\r\n@Component({ template: '' })\r\nexport class XCarouselPanelProperty extends XProperty {\r\n /**\r\n * @zh_CN 激活当前幻灯片\r\n * @en_US Activate the current slide\r\n */\r\n @Input() @XInputBoolean() active?: XBoolean;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n SimpleChanges,\r\n OnChanges,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XCarouselPrefix, XCarouselProperty } from './carousel.property';\r\nimport { XIsUndefined, XIsChange, XIsEmpty, XNumber, XResize, XConfigService } from '@ng-nest/ui/core';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { takeUntil, debounceTime } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: `${XCarouselPrefix}`,\r\n templateUrl: './carousel.component.html',\r\n styleUrls: ['./carousel.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XCarouselComponent extends XCarouselProperty implements OnInit, OnChanges {\r\n @ViewChild('carousel') carousel!: ElementRef;\r\n @ViewChild('content') content!: ElementRef;\r\n start: number = -1;\r\n before!: number;\r\n timer: any;\r\n panelChanges: BehaviorSubject<any>[] = [];\r\n private _unSubject = new Subject<void>();\r\n private _resizeObserver!: ResizeObserver;\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.autoplay && this.resetInterval();\r\n XResize(this.content.nativeElement)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this.panelChanges.forEach((sub) => sub.next(true));\r\n this._resizeObserver = x.resizeObserver;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n ngOnChanges(simples: SimpleChanges): void {\r\n XIsChange(simples.active) && this.setActiveItem(Number(this.active));\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.timer && clearInterval(this.timer);\r\n this.panelChanges.forEach((x) => x.complete());\r\n this._unSubject.complete();\r\n this._unSubject.unsubscribe();\r\n this._resizeObserver?.disconnect();\r\n }\r\n\r\n action(index: XNumber, increase: number, event?: string): void {\r\n if (!XIsUndefined(event) && this.trigger !== event) return;\r\n this.autoplay && this.resetInterval();\r\n this.setActiveItem(Number(index) + increase);\r\n }\r\n\r\n resetInterval(): void {\r\n this.timer && clearInterval(this.timer);\r\n this.timer = setInterval(() => {\r\n this.setActiveItem(Number(this.active) + 1);\r\n }, Number(this.interval));\r\n }\r\n\r\n setActiveItem(index: number): void {\r\n if (this.start === -1) return;\r\n this.before = Number(this.active);\r\n const nextValue = index > this.start ? 0 : index < 0 ? this.start : index;\r\n this.active = nextValue;\r\n this.panelChanges.forEach((sub) => sub.next(true));\r\n this.activeChange.emit(this.active);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap[`${XCarouselPrefix}-${this.direction}`] = !XIsEmpty(this.direction);\r\n }\r\n\r\n getActivated(index: number) {\r\n return Number(this.active) === index;\r\n }\r\n\r\n trackByPanel(index: number, item: any) {\r\n return index;\r\n }\r\n}\r\n","<div #carousel class=\"x-carousel\" [ngClass]=\"classMap\" [class.x-carousel-arrow-always]=\"arrow === 'always'\">\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n <ng-container *ngIf=\"arrow !== 'never' && direction !== 'vertical'\">\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n <ul class=\"x-carousel-indicator\" [class.x-carousel-indicator-outside]=\"outside || card\">\r\n <li\r\n *ngFor=\"let panel of panelChanges; let i = index; trackBy: trackByPanel\"\r\n [class.x-activated]=\"getActivated(i)\"\r\n (click)=\"action(i, 0, 'click')\"\r\n (mouseenter)=\"action(i, 0, 'hover')\"\r\n >\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n </ul>\r\n</div>\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n Host,\r\n Optional\r\n} from '@angular/core';\r\nimport { XCarouselPanelPrefix, XCarouselPanelProperty } from './carousel.property';\r\nimport { XDropAnimation, XConfigService } from '@ng-nest/ui/core';\r\nimport { XCarouselComponent } from './carousel.component';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { BehaviorSubject, Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: `${XCarouselPanelPrefix}`,\r\n templateUrl: './carousel-panel.component.html',\r\n styleUrls: ['./carousel-panel.component.scss'],\r\n animations: [XDropAnimation],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XCarouselPanelComponent extends XCarouselPanelProperty implements OnInit {\r\n index!: number;\r\n width!: number;\r\n height!: number;\r\n animating!: boolean;\r\n preTranslate!: number;\r\n cardScale = 0.83;\r\n scale = 1;\r\n inStage = false;\r\n updateSub = new BehaviorSubject(false);\r\n updateSub$!: Subscription;\r\n\r\n constructor(\r\n @Optional() @Host() public carousel: XCarouselComponent,\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public sanitizer: DomSanitizer,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.carousel.start++;\r\n this.index = this.carousel.start;\r\n this.setClass('x-carousel-card', Boolean(this.carousel.card));\r\n this.carousel.panelChanges.push(this.updateSub);\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.updateSub.subscribe((x) => {\r\n if (x) this.update();\r\n });\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.updateSub$?.unsubscribe();\r\n }\r\n\r\n setActive() {\r\n const isActive: boolean = this.carousel.active === this.index;\r\n if (this.active !== isActive) {\r\n this.active = isActive;\r\n this.setClass('x-activated', this.active);\r\n }\r\n }\r\n\r\n setStyles() {\r\n this.width = this.elementRef.nativeElement.offsetWidth;\r\n this.height = this.elementRef.nativeElement.offsetHeight;\r\n\r\n let translate: number;\r\n let offset: number = Number(this.carousel.active) - this.index;\r\n let distance = this.width;\r\n let translateType = 'translateX';\r\n if (this.carousel.card) {\r\n if (this.carousel.direction === 'vertical') {\r\n console.warn('[x-carousel] vertical direction is not supported in card mode');\r\n }\r\n this.inStage = Math.round(Math.abs(offset)) <= 1;\r\n this.setClass('x-carousel-in-stage', this.inStage);\r\n translate = this.calcCardTranslate(this.index, Number(this.carousel.active));\r\n this.scale = offset === 0 ? 1 : this.cardScale;\r\n } else {\r\n if (this.carousel.direction === 'vertical') {\r\n distance = this.height;\r\n translateType = 'translateY';\r\n }\r\n const map: any = {\r\n '-2': -distance,\r\n '-1': distance,\r\n '0': 0,\r\n '1': 0 - distance,\r\n '2': distance\r\n };\r\n offset = offset < -2 ? -2 : offset > 2 ? 2 : offset;\r\n translate = map[offset];\r\n }\r\n this.animating =\r\n this.carousel.active === this.index ||\r\n this.carousel.before === this.index ||\r\n this.carousel.start === Math.abs(offset) ||\r\n Boolean(this.carousel.card);\r\n this.setClass('x-carousel-animating', this.animating);\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'transform', `${translateType}(${translate}px) scale(${this.scale})`);\r\n }\r\n\r\n calcCardTranslate(index: number, activeIndex: number) {\r\n const parentWidth = this.carousel.carousel.nativeElement.offsetWidth;\r\n let offset: number = index - activeIndex;\r\n let activeFirstOrLast = this.carousel.start > 1 && this.carousel.start === Math.abs(offset);\r\n if (this.inStage || activeFirstOrLast) {\r\n if (activeFirstOrLast) offset = offset < 0 ? 1 : -1;\r\n return (parentWidth * ((2 - this.cardScale) * offset + 1)) / 4;\r\n } else if (index < activeIndex) {\r\n return (-(1 + this.cardScale) * parentWidth) / 4;\r\n } else {\r\n return ((3 + this.cardScale) * parentWidth) / 4;\r\n }\r\n }\r\n\r\n update() {\r\n this.setActive();\r\n this.setStyles();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n panelClick() {\r\n if (this.carousel.card && this.carousel.active !== this.index) {\r\n this.carousel.autoplay && this.carousel.resetInterval();\r\n this.carousel.setActiveItem(this.index);\r\n }\r\n }\r\n\r\n setClass(cls: string, value: boolean) {\r\n if (value) this.renderer.addClass(this.elementRef.nativeElement, cls);\r\n else this.renderer.removeClass(this.elementRef.nativeElement, cls);\r\n }\r\n}\r\n","<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n <div *ngIf=\"carousel?.card\" [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n <ng-content></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XCarouselComponent } from './carousel.component';\r\nimport { XCarouselPanelComponent } from './carousel-panel.component';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { XCarouselProperty, XCarouselPanelProperty } from './carousel.property';\r\n\r\n@NgModule({\r\n declarations: [XCarouselComponent, XCarouselPanelComponent, XCarouselProperty, XCarouselPanelProperty],\r\n exports: [XCarouselComponent, XCarouselPanelComponent],\r\n imports: [CommonModule, XButtonModule]\r\n})\r\nexport class XCarouselModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-carousel.js","sources":["../../../../lib/ng-nest/ui/carousel/carousel.property.ts","../../../../lib/ng-nest/ui/carousel/carousel.component.ts","../../../../lib/ng-nest/ui/carousel/carousel.component.html","../../../../lib/ng-nest/ui/carousel/carousel-panel.component.ts","../../../../lib/ng-nest/ui/carousel/carousel-panel.component.html","../../../../lib/ng-nest/ui/carousel/carousel.module.ts","../../../../lib/ng-nest/ui/carousel/ng-nest-ui-carousel.ts"],"sourcesContent":["import {\r\n XProperty,\r\n XInputNumber,\r\n XInputBoolean,\r\n XNumber,\r\n XBoolean,\r\n XWithConfig,\r\n XShadow,\r\n XDisplayDirection,\r\n XTrigger\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component } from '@angular/core';\r\n\r\n/**\r\n * Carousel\r\n * @selector x-carousel\r\n * @decorator component\r\n */\r\nexport const XCarouselPrefix = 'x-carousel';\r\nconst X_CONFIG_NAME = 'carousel';\r\n\r\n/**\r\n * Carousel Property\r\n */\r\n@Component({ template: '' })\r\nexport class XCarouselProperty extends XProperty {\r\n /**\r\n * @zh_CN 当前激活的幻灯片索引\r\n * @en_US Index of the currently active slide\r\n */\r\n @Input() @XInputNumber() active: XNumber = 0;\r\n /**\r\n * @zh_CN 幻灯片高度\r\n * @en_US Slide height\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '15rem') height?: string;\r\n /**\r\n * @zh_CN 切换器触发方式\r\n * @en_US Switcher trigger method\r\n */\r\n @Input() @XWithConfig<XCarouselTrigger>(X_CONFIG_NAME, 'hover') trigger?: XCarouselTrigger;\r\n /**\r\n * @zh_CN 箭头显示影藏方式\r\n * @en_US Arrow shows how to hide\r\n */\r\n @Input() @XWithConfig<XCarouselArrow>(X_CONFIG_NAME, 'hover') arrow?: XCarouselArrow;\r\n /**\r\n * @zh_CN 幻灯片轮播方向\r\n * @en_US Slide rotation direction\r\n */\r\n @Input() @XWithConfig<XCarouselDirection>(X_CONFIG_NAME, 'horizontal') direction?: XCarouselDirection;\r\n /**\r\n * @zh_CN 自动切换\r\n * @en_US Automatic switching\r\n */\r\n @Input() @XInputBoolean() autoplay: XBoolean = true;\r\n /**\r\n * @zh_CN 自动切换时间间隔\r\n * @en_US Automatic switching time interval\r\n */\r\n @Input() interval: XNumber = 3000;\r\n /**\r\n * @zh_CN 切换器否显示在外面\r\n * @en_US Whether the switcher is displayed outside\r\n */\r\n @Input() @XInputBoolean() outside?: XBoolean;\r\n /**\r\n * @zh_CN 是否以卡片的方式显示幻灯片\r\n * @en_US Whether to display the slideshow as a card\r\n */\r\n @Input() @XInputBoolean() card?: XBoolean;\r\n /**\r\n * @zh_CN 激活的序号改变的事件\r\n * @en_US The activated sequence number changed event\r\n */\r\n @Output() activeChange = new EventEmitter<number>();\r\n}\r\n\r\n/**\r\n * @zh_CN 指示器切换方式\r\n * @en_US Indicator switching method\r\n */\r\nexport type XCarouselTrigger = XTrigger;\r\n\r\n/**\r\n * @zh_CN 切换箭头显示方式\r\n * @en_US Toggle arrow display\r\n */\r\nexport type XCarouselArrow = XShadow;\r\n\r\n/**\r\n * @zh_CN 走马灯展示的方向\r\n * @en_US The direction of the revolving lantern\r\n */\r\nexport type XCarouselDirection = XDisplayDirection;\r\n\r\n/**\r\n * Carousel Panel\r\n * @selector x-carousel-panel\r\n * @decorator component\r\n */\r\nexport const XCarouselPanelPrefix = 'x-carousel-panel';\r\n\r\n/**\r\n * Carousel Panel Property\r\n */\r\n@Component({ template: '' })\r\nexport class XCarouselPanelProperty extends XProperty {\r\n /**\r\n * @zh_CN 激活当前幻灯片\r\n * @en_US Activate the current slide\r\n */\r\n @Input() @XInputBoolean() active?: XBoolean;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n SimpleChanges,\r\n OnChanges,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XCarouselPrefix, XCarouselProperty } from './carousel.property';\r\nimport { XIsUndefined, XIsChange, XIsEmpty, XNumber, XResize, XConfigService } from '@ng-nest/ui/core';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { takeUntil, debounceTime } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: `${XCarouselPrefix}`,\r\n templateUrl: './carousel.component.html',\r\n styleUrls: ['./carousel.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XCarouselComponent extends XCarouselProperty implements OnInit, OnChanges {\r\n @ViewChild('carousel') carousel!: ElementRef;\r\n @ViewChild('content') content!: ElementRef;\r\n start: number = -1;\r\n before!: number;\r\n timer: any;\r\n panelChanges: BehaviorSubject<any>[] = [];\r\n private _unSubject = new Subject<void>();\r\n private _resizeObserver!: ResizeObserver;\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.autoplay && this.resetInterval();\r\n XResize(this.content.nativeElement)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this.panelChanges.forEach((sub) => sub.next(true));\r\n this._resizeObserver = x.resizeObserver;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n ngOnChanges(simples: SimpleChanges): void {\r\n const { active } = simples;\r\n XIsChange(active) && this.setActiveItem(Number(this.active));\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.timer && clearInterval(this.timer);\r\n this.panelChanges.forEach((x) => x.complete());\r\n this._unSubject.complete();\r\n this._unSubject.unsubscribe();\r\n this._resizeObserver?.disconnect();\r\n }\r\n\r\n action(index: XNumber, increase: number, event?: string): void {\r\n if (!XIsUndefined(event) && this.trigger !== event) return;\r\n this.autoplay && this.resetInterval();\r\n this.setActiveItem(Number(index) + increase);\r\n }\r\n\r\n resetInterval(): void {\r\n this.timer && clearInterval(this.timer);\r\n this.timer = setInterval(() => {\r\n this.setActiveItem(Number(this.active) + 1);\r\n }, Number(this.interval));\r\n }\r\n\r\n setActiveItem(index: number): void {\r\n if (this.start === -1) return;\r\n this.before = Number(this.active);\r\n const nextValue = index > this.start ? 0 : index < 0 ? this.start : index;\r\n this.active = nextValue;\r\n this.panelChanges.forEach((sub) => sub.next(true));\r\n this.activeChange.emit(this.active);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap[`${XCarouselPrefix}-${this.direction}`] = !XIsEmpty(this.direction);\r\n }\r\n\r\n getActivated(index: number) {\r\n return Number(this.active) === index;\r\n }\r\n\r\n trackByPanel(index: number, _item: any) {\r\n return index;\r\n }\r\n}\r\n","<div #carousel class=\"x-carousel\" [ngClass]=\"classMap\" [class.x-carousel-arrow-always]=\"arrow === 'always'\">\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n <ng-container *ngIf=\"arrow !== 'never' && direction !== 'vertical'\">\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n <ul class=\"x-carousel-indicator\" [class.x-carousel-indicator-outside]=\"outside || card\">\r\n <li\r\n *ngFor=\"let panel of panelChanges; let i = index; trackBy: trackByPanel\"\r\n [class.x-activated]=\"getActivated(i)\"\r\n (click)=\"action(i, 0, 'click')\"\r\n (mouseenter)=\"action(i, 0, 'hover')\"\r\n >\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n </ul>\r\n</div>\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n Host,\r\n Optional\r\n} from '@angular/core';\r\nimport { XCarouselPanelPrefix, XCarouselPanelProperty } from './carousel.property';\r\nimport { XDropAnimation, XConfigService } from '@ng-nest/ui/core';\r\nimport { XCarouselComponent } from './carousel.component';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: `${XCarouselPanelPrefix}`,\r\n templateUrl: './carousel-panel.component.html',\r\n styleUrls: ['./carousel-panel.component.scss'],\r\n animations: [XDropAnimation],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XCarouselPanelComponent extends XCarouselPanelProperty implements OnInit {\r\n index!: number;\r\n width!: number;\r\n height!: number;\r\n animating!: boolean;\r\n preTranslate!: number;\r\n cardScale = 0.83;\r\n scale = 1;\r\n inStage = false;\r\n updateSub = new BehaviorSubject(false);\r\n unSubject = new Subject<void>();\r\n\r\n constructor(\r\n @Optional() @Host() public carousel: XCarouselComponent,\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n public sanitizer: DomSanitizer,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.carousel.start++;\r\n this.index = this.carousel.start;\r\n this.setClass('x-carousel-card', Boolean(this.carousel.card));\r\n this.carousel.panelChanges.push(this.updateSub);\r\n this.updateSub.pipe(takeUntil(this.unSubject)).subscribe((x) => {\r\n if (x) this.update();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.carousel.start--;\r\n const idx = this.carousel.panelChanges.indexOf(this.updateSub);\r\n this.carousel.panelChanges.splice(idx, 1);\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n setActive() {\r\n const isActive: boolean = this.carousel.active === this.index;\r\n if (this.active !== isActive) {\r\n this.active = isActive;\r\n this.setClass('x-activated', this.active);\r\n }\r\n }\r\n\r\n setStyles() {\r\n this.width = this.elementRef.nativeElement.offsetWidth;\r\n this.height = this.elementRef.nativeElement.offsetHeight;\r\n\r\n let translate: number;\r\n let offset: number = Number(this.carousel.active) - this.index;\r\n let distance = this.width;\r\n let translateType = 'translateX';\r\n if (this.carousel.card) {\r\n if (this.carousel.direction === 'vertical') {\r\n console.warn('[x-carousel] vertical direction is not supported in card mode');\r\n }\r\n this.inStage = Math.round(Math.abs(offset)) <= 1;\r\n this.setClass('x-carousel-in-stage', this.inStage);\r\n translate = this.calcCardTranslate(this.index, Number(this.carousel.active));\r\n this.scale = offset === 0 ? 1 : this.cardScale;\r\n } else {\r\n if (this.carousel.direction === 'vertical') {\r\n distance = this.height;\r\n translateType = 'translateY';\r\n }\r\n const map: any = {\r\n '-2': -distance,\r\n '-1': distance,\r\n '0': 0,\r\n '1': 0 - distance,\r\n '2': distance\r\n };\r\n offset = offset < -2 ? -2 : offset > 2 ? 2 : offset;\r\n translate = map[offset];\r\n }\r\n this.animating =\r\n this.carousel.active === this.index ||\r\n this.carousel.before === this.index ||\r\n this.carousel.start === Math.abs(offset) ||\r\n Boolean(this.carousel.card);\r\n this.setClass('x-carousel-animating', this.animating);\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'transform', `${translateType}(${translate}px) scale(${this.scale})`);\r\n }\r\n\r\n calcCardTranslate(index: number, activeIndex: number) {\r\n const parentWidth = this.carousel.carousel.nativeElement.offsetWidth;\r\n let offset: number = index - activeIndex;\r\n let activeFirstOrLast = this.carousel.start > 1 && this.carousel.start === Math.abs(offset);\r\n if (this.inStage || activeFirstOrLast) {\r\n if (activeFirstOrLast) offset = offset < 0 ? 1 : -1;\r\n return (parentWidth * ((2 - this.cardScale) * offset + 1)) / 4;\r\n } else if (index < activeIndex) {\r\n return (-(1 + this.cardScale) * parentWidth) / 4;\r\n } else {\r\n return ((3 + this.cardScale) * parentWidth) / 4;\r\n }\r\n }\r\n\r\n update() {\r\n this.setActive();\r\n this.setStyles();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n panelClick() {\r\n if (this.carousel.card && this.carousel.active !== this.index) {\r\n this.carousel.autoplay && this.carousel.resetInterval();\r\n this.carousel.setActiveItem(this.index);\r\n }\r\n }\r\n\r\n setClass(cls: string, value: boolean) {\r\n if (value) this.renderer.addClass(this.elementRef.nativeElement, cls);\r\n else this.renderer.removeClass(this.elementRef.nativeElement, cls);\r\n }\r\n}\r\n","<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n <div *ngIf=\"carousel?.card\" [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n <ng-content></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XCarouselComponent } from './carousel.component';\r\nimport { XCarouselPanelComponent } from './carousel-panel.component';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { XCarouselProperty, XCarouselPanelProperty } from './carousel.property';\r\n\r\n@NgModule({\r\n declarations: [XCarouselComponent, XCarouselPanelComponent, XCarouselProperty, XCarouselPanelProperty],\r\n exports: [XCarouselComponent, XCarouselPanelComponent],\r\n imports: [CommonModule, XButtonModule]\r\n})\r\nexport class XCarouselModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding, HostListener, EventEmitter, Input, Output, ViewChild, NgModule } from '@angular/core';
3
3
  import { XIsEmpty, XConnectBaseAnimation, XDataConvert, XWithConfig, XInputBoolean, XIsChange, XClearClass, XSetData, XGetChildren } from '@ng-nest/ui/core';
4
- import { Subject } from 'rxjs';
5
- import { takeUntil } from 'rxjs/operators';
4
+ import { Subject, of } from 'rxjs';
5
+ import { takeUntil, delay } from 'rxjs/operators';
6
6
  import * as i1 from '@ng-nest/ui/list';
7
7
  import { XListModule } from '@ng-nest/ui/list';
8
8
  import * as i2 from '@angular/common';
@@ -18,21 +18,21 @@ import * as i3 from '@ng-nest/ui/input';
18
18
  import { XInputModule } from '@ng-nest/ui/input';
19
19
 
20
20
  class XCascadePortalComponent {
21
- constructor(renderer, ngZone, cdr) {
22
- this.renderer = renderer;
21
+ constructor(ngZone, cdr) {
23
22
  this.ngZone = ngZone;
24
23
  this.cdr = cdr;
25
24
  this.nodes = [];
26
25
  this.datas = [];
27
26
  this.selecteds = [];
28
27
  this.values = [];
28
+ this.hoverDelayUnSub = new Subject();
29
29
  this._unSubject = new Subject();
30
30
  }
31
31
  done(event) {
32
32
  this.animating(false);
33
33
  event.toState === 'void' && this.destroyPortal();
34
34
  }
35
- start(event) {
35
+ start() {
36
36
  this.animating(true);
37
37
  }
38
38
  ngOnInit() {
@@ -73,7 +73,18 @@ class XCascadePortalComponent {
73
73
  }
74
74
  this.values = this.selecteds.map((x) => x.id);
75
75
  }
76
+ nodeMouseenter(node) {
77
+ of(true)
78
+ .pipe(delay(this.nodeHoverDelay), takeUntil(this.hoverDelayUnSub))
79
+ .subscribe(() => this.nodeExpansion(node, false));
80
+ }
81
+ nodeMouseleave() {
82
+ this.hoverDelayUnSub.next();
83
+ }
76
84
  nodeClick(node) {
85
+ this.nodeExpansion(node);
86
+ }
87
+ nodeExpansion(node, click = true) {
77
88
  const level = Number(node.level);
78
89
  this.ngZone.run(() => {
79
90
  if (node.leaf) {
@@ -92,22 +103,23 @@ class XCascadePortalComponent {
92
103
  this.values = this.selecteds.map((x) => x.id);
93
104
  this.cdr.detectChanges();
94
105
  }
95
- else {
106
+ else if (click) {
96
107
  if (this.selecteds.length >= level + 1) {
97
108
  this.selecteds = this.selecteds.splice(0, level);
98
109
  }
99
110
  this.selecteds = [...this.selecteds, node];
100
111
  this.nodeEmit({
101
112
  node: node,
113
+ nodes: this.selecteds,
102
114
  label: this.selecteds.map((x) => x.label).join(` / `)
103
115
  });
104
116
  }
105
117
  });
106
118
  }
107
119
  }
108
- /** @nocollapse */ XCascadePortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadePortalComponent, deps: [{ token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
109
- /** @nocollapse */ XCascadePortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.3", type: XCascadePortalComponent, selector: "x-cascade-portal", host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.placement" } }, ngImport: i0, template: "<div class=\"x-cascade-portal\" (click)=\"stopPropagation($event)\">\r\n <ng-container *ngFor=\"let list of nodes\">\r\n <x-list [data]=\"list\" [(ngModel)]=\"values\" (nodeClick)=\"nodeClick($event)\" checked></x-list>\r\n </ng-container>\r\n</div>\r\n", styles: [".x-cascade-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);display:flex}.x-cascade-portal>x-list .x-list-option{min-width:8rem}.x-cascade-portal>x-list:not(:first-child){border-left:var(--x-border-width) solid var(--x-border)}"], components: [{ type: i1.XListComponent, selector: "x-list" }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadePortalComponent, decorators: [{
120
+ /** @nocollapse */ XCascadePortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadePortalComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
121
+ /** @nocollapse */ XCascadePortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: XCascadePortalComponent, selector: "x-cascade-portal", host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.placement" } }, ngImport: i0, template: "<div class=\"x-cascade-portal\" tabindex=\"-1\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <ng-container *ngFor=\"let list of nodes\">\r\n <x-list\r\n [data]=\"list\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"values\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n (nodeMouseenter)=\"nodeTrigger === 'hover' && nodeMouseenter($event)\"\r\n (nodeMouseleave)=\"nodeTrigger === 'hover' && nodeMouseleave()\"\r\n checked\r\n ></x-list>\r\n </ng-container>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-cascade-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);display:flex}.x-cascade-portal:focus{outline:none}.x-cascade-portal>x-list .x-list-option{min-width:8rem}.x-cascade-portal>x-list:not(:first-child){border-left:var(--x-border-width) solid var(--x-border)}\n"], components: [{ type: i1.XListComponent, selector: "x-list" }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadePortalComponent, decorators: [{
111
123
  type: Component,
112
124
  args: [{
113
125
  selector: 'x-cascade-portal',
@@ -117,7 +129,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImpor
117
129
  changeDetection: ChangeDetectionStrategy.OnPush,
118
130
  animations: [XConnectBaseAnimation]
119
131
  }]
120
- }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { placement: [{
132
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { placement: [{
121
133
  type: HostBinding,
122
134
  args: ['@x-connect-base-animation']
123
135
  }], done: [{
@@ -153,8 +165,8 @@ class XCascadeProperty extends XControlValueAccessor {
153
165
  this.nodeEmit = new EventEmitter();
154
166
  }
155
167
  }
156
- /** @nocollapse */ XCascadeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
157
- /** @nocollapse */ XCascadeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.3", type: XCascadeProperty, selector: "ng-component", inputs: { data: "data", placement: "placement", size: "size", bordered: "bordered" }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
168
+ /** @nocollapse */ XCascadeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
169
+ /** @nocollapse */ XCascadeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: XCascadeProperty, selector: "ng-component", inputs: { data: "data", placement: "placement", size: "size", bordered: "bordered", nodeTrigger: "nodeTrigger", nodeHoverDelay: "nodeHoverDelay", nodeTpl: "nodeTpl" }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
158
170
  __decorate([
159
171
  XDataConvert()
160
172
  ], XCascadeProperty.prototype, "data", void 0);
@@ -168,7 +180,13 @@ __decorate([
168
180
  XInputBoolean(),
169
181
  XWithConfig(X_CONFIG_NAME, true)
170
182
  ], XCascadeProperty.prototype, "bordered", void 0);
171
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadeProperty, decorators: [{
183
+ __decorate([
184
+ XWithConfig(X_CONFIG_NAME, 'click')
185
+ ], XCascadeProperty.prototype, "nodeTrigger", void 0);
186
+ __decorate([
187
+ XWithConfig(X_CONFIG_NAME, 200)
188
+ ], XCascadeProperty.prototype, "nodeHoverDelay", void 0);
189
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadeProperty, decorators: [{
172
190
  type: Component,
173
191
  args: [{ template: '' }]
174
192
  }], propDecorators: { data: [{
@@ -179,6 +197,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImpor
179
197
  type: Input
180
198
  }], bordered: [{
181
199
  type: Input
200
+ }], nodeTrigger: [{
201
+ type: Input
202
+ }], nodeHoverDelay: [{
203
+ type: Input
204
+ }], nodeTpl: [{
205
+ type: Input
182
206
  }], nodeEmit: [{
183
207
  type: Output
184
208
  }] } });
@@ -208,6 +232,7 @@ class XCascadeComponent extends XCascadeProperty {
208
232
  this.icon = 'fto-chevron-down';
209
233
  this.maxNodes = 6;
210
234
  this.protalTobottom = true;
235
+ this.valueTplContext = { $node: null, $nodes: null, $isValue: true };
211
236
  this.valueChange = new Subject();
212
237
  this.dataChange = new Subject();
213
238
  this.positionChange = new Subject();
@@ -230,7 +255,8 @@ class XCascadeComponent extends XCascadeProperty {
230
255
  this.setPortal();
231
256
  }
232
257
  ngOnChanges(changes) {
233
- XIsChange(changes.data) && this.setData();
258
+ const { data } = changes;
259
+ XIsChange(data) && this.setData();
234
260
  }
235
261
  ngOnDestroy() {
236
262
  this._unSubject.next();
@@ -249,7 +275,7 @@ class XCascadeComponent extends XCascadeProperty {
249
275
  });
250
276
  }
251
277
  setSubject() {
252
- this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe((x) => {
278
+ this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe(() => {
253
279
  this.closePortal();
254
280
  });
255
281
  }
@@ -276,6 +302,8 @@ class XCascadeComponent extends XCascadeProperty {
276
302
  clearEmit() {
277
303
  this.value = '';
278
304
  this.displayValue = '';
305
+ this.valueTplContext.$node = null;
306
+ this.valueTplContext.$nodes = null;
279
307
  this.mleave();
280
308
  this.valueChange.next(this.value);
281
309
  if (this.onChange)
@@ -289,6 +317,7 @@ class XCascadeComponent extends XCascadeProperty {
289
317
  var _a, _b;
290
318
  if (this.portalAttached()) {
291
319
  (_b = (_a = this.portal) === null || _a === void 0 ? void 0 : _a.overlayRef) === null || _b === void 0 ? void 0 : _b.detach();
320
+ this.active = false;
292
321
  this.cdr.detectChanges();
293
322
  return true;
294
323
  }
@@ -302,6 +331,7 @@ class XCascadeComponent extends XCascadeProperty {
302
331
  var _a;
303
332
  if (this.disabled || this.animating)
304
333
  return;
334
+ this.active = true;
305
335
  const config = {
306
336
  backdropClass: '',
307
337
  positionStrategy: this.setPlacement(),
@@ -339,6 +369,10 @@ class XCascadeComponent extends XCascadeProperty {
339
369
  placement: this.placement,
340
370
  valueChange: this.valueChange,
341
371
  positionChange: this.positionChange,
372
+ nodeTpl: this.nodeTpl,
373
+ nodeTrigger: this.nodeTrigger,
374
+ nodeHoverDelay: this.nodeHoverDelay,
375
+ inputCom: this.inputCom,
342
376
  closePortal: () => this.closeSubject.next(),
343
377
  destroyPortal: () => this.destroyPortal(),
344
378
  nodeEmit: (node) => this.onNodeClick(node),
@@ -349,7 +383,10 @@ class XCascadeComponent extends XCascadeProperty {
349
383
  onNodeClick(selected) {
350
384
  this.value = selected.node.id;
351
385
  this.displayValue = selected.label;
386
+ this.valueTplContext.$node = selected;
387
+ this.valueTplContext.$nodes = selected.nodes;
352
388
  this.closeSubject.next();
389
+ this.inputCom.inputFocus();
353
390
  if (this.onChange)
354
391
  this.onChange(this.value);
355
392
  this.nodeEmit.emit(selected);
@@ -358,6 +395,8 @@ class XCascadeComponent extends XCascadeProperty {
358
395
  let node = this.datas.find((x) => x.id === this.value);
359
396
  if (typeof node === 'undefined') {
360
397
  this.displayValue = '';
398
+ this.valueTplContext.$node = null;
399
+ this.valueTplContext.$nodes = null;
361
400
  return;
362
401
  }
363
402
  else {
@@ -367,6 +406,8 @@ class XCascadeComponent extends XCascadeProperty {
367
406
  selecteds = [node, ...selecteds];
368
407
  }
369
408
  this.displayValue = selecteds.map((x) => x.label).join(` / `);
409
+ this.valueTplContext.$node = node;
410
+ this.valueTplContext.$nodes = selecteds;
370
411
  }
371
412
  }
372
413
  setPlacement() {
@@ -387,9 +428,9 @@ class XCascadeComponent extends XCascadeProperty {
387
428
  this.cdr.detectChanges();
388
429
  }
389
430
  }
390
- /** @nocollapse */ XCascadeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2$1.Overlay }], target: i0.ɵɵFactoryTarget.Component });
391
- /** @nocollapse */ XCascadeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.3", type: XCascadeComponent, selector: "x-cascade", providers: [XValueAccessor(XCascadeComponent)], viewQueries: [{ propertyName: "cascade", first: true, predicate: ["cascade"], descendants: true, static: true }, { propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #cascade class=\"x-cascade\">\r\n <div class=\"x-cascade-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [disabled]=\"disabled\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["x-cascade{display:inline-block}.x-cascade{margin:0;padding:0;width:100%}"], components: [{ type: i3.XInputComponent, selector: "x-input" }], directives: [{ type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
392
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadeComponent, decorators: [{
431
+ /** @nocollapse */ XCascadeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2$1.Overlay }], target: i0.ɵɵFactoryTarget.Component });
432
+ /** @nocollapse */ XCascadeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: XCascadeComponent, selector: "x-cascade", providers: [XValueAccessor(XCascadeComponent)], viewQueries: [{ propertyName: "cascade", first: true, predicate: ["cascade"], descendants: true, static: true }, { propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #cascade class=\"x-cascade\">\r\n <div class=\"x-cascade-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [disabled]=\"disabled\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-cascade{display:inline-block}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"], components: [{ type: i3.XInputComponent, selector: "x-input" }], directives: [{ type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
433
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadeComponent, decorators: [{
393
434
  type: Component,
394
435
  args: [{
395
436
  selector: 'x-cascade',
@@ -409,10 +450,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImpor
409
450
 
410
451
  class XCascadeModule {
411
452
  }
412
- /** @nocollapse */ XCascadeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
413
- /** @nocollapse */ XCascadeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadeModule, declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty], imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule], exports: [XCascadeComponent, XCascadePortalComponent] });
414
- /** @nocollapse */ XCascadeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadeModule, imports: [[CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule]] });
415
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.3", ngImport: i0, type: XCascadeModule, decorators: [{
453
+ /** @nocollapse */ XCascadeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
454
+ /** @nocollapse */ XCascadeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadeModule, declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty], imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule], exports: [XCascadeComponent, XCascadePortalComponent] });
455
+ /** @nocollapse */ XCascadeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadeModule, imports: [[CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule]] });
456
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: XCascadeModule, decorators: [{
416
457
  type: NgModule,
417
458
  args: [{
418
459
  declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty],