@ng-nest/ui 16.0.10 → 16.0.12

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 (494) hide show
  1. package/checkbox/checkbox.component.d.ts +0 -1
  2. package/checkbox/checkbox.property.d.ts +16 -1
  3. package/date-picker/date-range.component.d.ts +1 -1
  4. package/esm2022/affix/affix.component.mjs +4 -4
  5. package/esm2022/affix/affix.module.mjs +5 -5
  6. package/esm2022/affix/affix.property.mjs +4 -4
  7. package/esm2022/alert/alert.component.mjs +4 -4
  8. package/esm2022/alert/alert.module.mjs +5 -5
  9. package/esm2022/alert/alert.property.mjs +4 -4
  10. package/esm2022/anchor/anchor-inner.component.mjs +4 -4
  11. package/esm2022/anchor/anchor.component.mjs +4 -4
  12. package/esm2022/anchor/anchor.module.mjs +5 -5
  13. package/esm2022/anchor/anchor.property.mjs +7 -7
  14. package/esm2022/api/api.component.mjs +4 -4
  15. package/esm2022/api/api.module.mjs +5 -5
  16. package/esm2022/auto-complete/auto-complete-portal.component.mjs +5 -5
  17. package/esm2022/auto-complete/auto-complete.component.mjs +5 -5
  18. package/esm2022/auto-complete/auto-complete.module.mjs +5 -5
  19. package/esm2022/auto-complete/auto-complete.property.mjs +4 -4
  20. package/esm2022/avatar/avatar-group.component.mjs +4 -4
  21. package/esm2022/avatar/avatar.component.mjs +4 -4
  22. package/esm2022/avatar/avatar.module.mjs +5 -5
  23. package/esm2022/avatar/avatar.property.mjs +7 -7
  24. package/esm2022/back-top/back-top.component.mjs +4 -4
  25. package/esm2022/back-top/back-top.module.mjs +5 -5
  26. package/esm2022/back-top/back-top.property.mjs +4 -4
  27. package/esm2022/badge/badge.component.mjs +4 -4
  28. package/esm2022/badge/badge.module.mjs +5 -5
  29. package/esm2022/badge/badge.property.mjs +4 -4
  30. package/esm2022/base-form/base-form.component.mjs +4 -4
  31. package/esm2022/base-form/base-form.module.mjs +5 -5
  32. package/esm2022/base-form/base-form.property.mjs +4 -4
  33. package/esm2022/border/border.component.mjs +4 -4
  34. package/esm2022/border/border.module.mjs +5 -5
  35. package/esm2022/button/button.component.mjs +4 -4
  36. package/esm2022/button/button.module.mjs +5 -5
  37. package/esm2022/button/button.property.mjs +7 -7
  38. package/esm2022/button/buttons.component.mjs +4 -4
  39. package/esm2022/calendar/calendar.component.mjs +4 -4
  40. package/esm2022/calendar/calendar.module.mjs +5 -5
  41. package/esm2022/calendar/calendar.property.mjs +4 -4
  42. package/esm2022/card/card.component.mjs +4 -4
  43. package/esm2022/card/card.module.mjs +5 -5
  44. package/esm2022/card/card.property.mjs +4 -4
  45. package/esm2022/carousel/carousel-panel.component.mjs +4 -4
  46. package/esm2022/carousel/carousel.component.mjs +4 -4
  47. package/esm2022/carousel/carousel.module.mjs +5 -5
  48. package/esm2022/carousel/carousel.property.mjs +7 -7
  49. package/esm2022/cascade/cascade-portal.component.mjs +4 -4
  50. package/esm2022/cascade/cascade.component.mjs +4 -4
  51. package/esm2022/cascade/cascade.module.mjs +5 -5
  52. package/esm2022/cascade/cascade.property.mjs +4 -4
  53. package/esm2022/checkbox/checkbox.component.mjs +5 -7
  54. package/esm2022/checkbox/checkbox.module.mjs +5 -5
  55. package/esm2022/checkbox/checkbox.property.mjs +30 -4
  56. package/esm2022/collapse/collapse-panel.component.mjs +4 -4
  57. package/esm2022/collapse/collapse.component.mjs +4 -4
  58. package/esm2022/collapse/collapse.module.mjs +5 -5
  59. package/esm2022/collapse/collapse.property.mjs +7 -7
  60. package/esm2022/color/color.component.mjs +4 -4
  61. package/esm2022/color/color.module.mjs +5 -5
  62. package/esm2022/color/color.property.mjs +4 -4
  63. package/esm2022/color-picker/color-picker-portal.component.mjs +4 -4
  64. package/esm2022/color-picker/color-picker.component.mjs +4 -4
  65. package/esm2022/color-picker/color-picker.module.mjs +5 -5
  66. package/esm2022/color-picker/color-picker.property.mjs +4 -4
  67. package/esm2022/comment/comment-reply.component.mjs +4 -4
  68. package/esm2022/comment/comment.component.mjs +4 -4
  69. package/esm2022/comment/comment.module.mjs +5 -5
  70. package/esm2022/comment/comment.property.mjs +7 -7
  71. package/esm2022/container/aside.component.mjs +4 -4
  72. package/esm2022/container/container.component.mjs +4 -4
  73. package/esm2022/container/container.module.mjs +5 -5
  74. package/esm2022/container/container.property.mjs +13 -13
  75. package/esm2022/container/footer.component.mjs +4 -4
  76. package/esm2022/container/header.component.mjs +4 -4
  77. package/esm2022/container/main.component.mjs +4 -4
  78. package/esm2022/core/config/config.service.mjs +4 -4
  79. package/esm2022/core/services/http.service.mjs +4 -4
  80. package/esm2022/core/services/preloading-strategy.service.mjs +4 -4
  81. package/esm2022/core/services/storage.service.mjs +4 -4
  82. package/esm2022/core/theme/theme.service.mjs +4 -4
  83. package/esm2022/crumb/crumb.component.mjs +4 -4
  84. package/esm2022/crumb/crumb.module.mjs +5 -5
  85. package/esm2022/crumb/crumb.property.mjs +4 -4
  86. package/esm2022/date-picker/date-picker-portal.component.mjs +4 -4
  87. package/esm2022/date-picker/date-picker.component.mjs +4 -4
  88. package/esm2022/date-picker/date-picker.module.mjs +5 -5
  89. package/esm2022/date-picker/date-picker.property.mjs +19 -19
  90. package/esm2022/date-picker/date-quarter.pipe.mjs +4 -4
  91. package/esm2022/date-picker/date-range-portal.component.mjs +4 -4
  92. package/esm2022/date-picker/date-range.component.mjs +4 -4
  93. package/esm2022/date-picker/picker-date.component.mjs +4 -4
  94. package/esm2022/date-picker/picker-month.component.mjs +4 -4
  95. package/esm2022/date-picker/picker-quarter.component.mjs +4 -4
  96. package/esm2022/date-picker/picker-year.component.mjs +4 -4
  97. package/esm2022/description/description-item.component.mjs +4 -4
  98. package/esm2022/description/description.component.mjs +4 -4
  99. package/esm2022/description/description.module.mjs +5 -5
  100. package/esm2022/description/description.property.mjs +7 -7
  101. package/esm2022/dialog/dialog-container.component.mjs +4 -4
  102. package/esm2022/dialog/dialog-portal.component.mjs +4 -4
  103. package/esm2022/dialog/dialog-portal.directives.mjs +19 -19
  104. package/esm2022/dialog/dialog.component.mjs +4 -4
  105. package/esm2022/dialog/dialog.module.mjs +5 -5
  106. package/esm2022/dialog/dialog.property.mjs +7 -7
  107. package/esm2022/dialog/dialog.service.mjs +4 -4
  108. package/esm2022/doc/doc.component.mjs +5 -5
  109. package/esm2022/doc/doc.module.mjs +5 -5
  110. package/esm2022/drag/drag.directive.mjs +4 -4
  111. package/esm2022/drag/drag.module.mjs +5 -5
  112. package/esm2022/drag/drag.property.mjs +4 -4
  113. package/esm2022/drawer/drawer-container.component.mjs +4 -4
  114. package/esm2022/drawer/drawer-portal.component.mjs +4 -4
  115. package/esm2022/drawer/drawer-portal.directives.mjs +10 -10
  116. package/esm2022/drawer/drawer.component.mjs +4 -4
  117. package/esm2022/drawer/drawer.module.mjs +5 -5
  118. package/esm2022/drawer/drawer.property.mjs +7 -7
  119. package/esm2022/drawer/drawer.service.mjs +4 -4
  120. package/esm2022/dropdown/dropdown-portal.component.mjs +4 -4
  121. package/esm2022/dropdown/dropdown.component.mjs +4 -4
  122. package/esm2022/dropdown/dropdown.module.mjs +5 -5
  123. package/esm2022/dropdown/dropdown.property.mjs +4 -4
  124. package/esm2022/empty/empty.component.mjs +4 -4
  125. package/esm2022/empty/empty.module.mjs +5 -5
  126. package/esm2022/empty/empty.property.mjs +4 -4
  127. package/esm2022/examples/examples.component.mjs +4 -4
  128. package/esm2022/examples/examples.module.mjs +5 -5
  129. package/esm2022/find/find.component.mjs +4 -4
  130. package/esm2022/find/find.module.mjs +5 -5
  131. package/esm2022/find/find.property.mjs +4 -4
  132. package/esm2022/form/control.component.mjs +4 -4
  133. package/esm2022/form/form.component.mjs +4 -4
  134. package/esm2022/form/form.module.mjs +5 -5
  135. package/esm2022/form/form.property.mjs +7 -7
  136. package/esm2022/highlight/highlight.component.mjs +4 -4
  137. package/esm2022/highlight/highlight.module.mjs +5 -5
  138. package/esm2022/highlight/highlight.property.mjs +4 -4
  139. package/esm2022/i18n/i18n.directive.mjs +4 -4
  140. package/esm2022/i18n/i18n.module.mjs +5 -5
  141. package/esm2022/i18n/i18n.pipe.mjs +4 -4
  142. package/esm2022/i18n/i18n.service.mjs +4 -4
  143. package/esm2022/icon/icon.component.mjs +4 -4
  144. package/esm2022/icon/icon.module.mjs +5 -5
  145. package/esm2022/icon/icon.property.mjs +4 -4
  146. package/esm2022/icon/icon.service.mjs +4 -4
  147. package/esm2022/image/image-group.component.mjs +4 -4
  148. package/esm2022/image/image-preview.component.mjs +4 -4
  149. package/esm2022/image/image.component.mjs +4 -4
  150. package/esm2022/image/image.module.mjs +5 -5
  151. package/esm2022/image/image.property.mjs +7 -7
  152. package/esm2022/inner/inner.component.mjs +4 -4
  153. package/esm2022/inner/inner.module.mjs +5 -5
  154. package/esm2022/inner/inner.property.mjs +4 -4
  155. package/esm2022/input/input-group.component.mjs +4 -4
  156. package/esm2022/input/input.component.mjs +4 -4
  157. package/esm2022/input/input.module.mjs +5 -5
  158. package/esm2022/input/input.property.mjs +7 -7
  159. package/esm2022/input-number/input-number.component.mjs +4 -4
  160. package/esm2022/input-number/input-number.module.mjs +5 -5
  161. package/esm2022/input-number/input-number.property.mjs +4 -4
  162. package/esm2022/keyword/keyword.directive.mjs +4 -4
  163. package/esm2022/keyword/keyword.module.mjs +5 -5
  164. package/esm2022/keyword/keyword.property.mjs +4 -4
  165. package/esm2022/layout/col.component.mjs +4 -4
  166. package/esm2022/layout/layout.module.mjs +5 -5
  167. package/esm2022/layout/layout.property.mjs +7 -7
  168. package/esm2022/layout/row.component.mjs +4 -4
  169. package/esm2022/link/link.component.mjs +4 -4
  170. package/esm2022/link/link.module.mjs +5 -5
  171. package/esm2022/link/link.property.mjs +4 -4
  172. package/esm2022/list/list-drop-group.directive.mjs +4 -4
  173. package/esm2022/list/list-option.component.mjs +4 -4
  174. package/esm2022/list/list.component.mjs +4 -4
  175. package/esm2022/list/list.module.mjs +5 -5
  176. package/esm2022/list/list.property.mjs +7 -7
  177. package/esm2022/loading/loading.component.mjs +4 -4
  178. package/esm2022/loading/loading.module.mjs +5 -5
  179. package/esm2022/loading/loading.property.mjs +4 -4
  180. package/esm2022/menu/menu-node.component.mjs +4 -4
  181. package/esm2022/menu/menu.component.mjs +4 -4
  182. package/esm2022/menu/menu.module.mjs +5 -5
  183. package/esm2022/menu/menu.property.mjs +7 -7
  184. package/esm2022/message/message.component.mjs +4 -4
  185. package/esm2022/message/message.module.mjs +5 -5
  186. package/esm2022/message/message.service.mjs +4 -4
  187. package/esm2022/message-box/message-box.component.mjs +4 -4
  188. package/esm2022/message-box/message-box.module.mjs +5 -5
  189. package/esm2022/message-box/message-box.service.mjs +4 -4
  190. package/esm2022/notification/notification.component.mjs +4 -4
  191. package/esm2022/notification/notification.module.mjs +5 -5
  192. package/esm2022/notification/notification.service.mjs +4 -4
  193. package/esm2022/outlet/outlet.directive.mjs +4 -4
  194. package/esm2022/outlet/outlet.module.mjs +5 -5
  195. package/esm2022/page-header/page-header.component.mjs +4 -4
  196. package/esm2022/page-header/page-header.module.mjs +5 -5
  197. package/esm2022/page-header/page-header.property.mjs +4 -4
  198. package/esm2022/pagination/pagination.component.mjs +4 -4
  199. package/esm2022/pagination/pagination.module.mjs +5 -5
  200. package/esm2022/pagination/pagination.property.mjs +4 -4
  201. package/esm2022/pattern/pattern.component.mjs +4 -4
  202. package/esm2022/pattern/pattern.module.mjs +5 -5
  203. package/esm2022/popconfirm/popconfirm.component.mjs +4 -4
  204. package/esm2022/popconfirm/popconfirm.module.mjs +5 -5
  205. package/esm2022/popconfirm/popconfirm.property.mjs +4 -4
  206. package/esm2022/popover/popover-portal.component.mjs +4 -4
  207. package/esm2022/popover/popover.directive.mjs +4 -4
  208. package/esm2022/popover/popover.module.mjs +5 -5
  209. package/esm2022/popover/popover.property.mjs +4 -4
  210. package/esm2022/portal/portal.module.mjs +5 -5
  211. package/esm2022/portal/portal.service.mjs +4 -4
  212. package/esm2022/progress/progress.component.mjs +4 -4
  213. package/esm2022/progress/progress.module.mjs +5 -5
  214. package/esm2022/progress/progress.property.mjs +4 -4
  215. package/esm2022/radio/radio.component.mjs +5 -5
  216. package/esm2022/radio/radio.module.mjs +5 -5
  217. package/esm2022/radio/radio.property.mjs +14 -4
  218. package/esm2022/rate/rate.component.mjs +4 -4
  219. package/esm2022/rate/rate.module.mjs +5 -5
  220. package/esm2022/rate/rate.property.mjs +4 -4
  221. package/esm2022/resizable/resizable.directive.mjs +4 -4
  222. package/esm2022/resizable/resizable.module.mjs +5 -5
  223. package/esm2022/resizable/resizable.property.mjs +4 -4
  224. package/esm2022/result/result.component.mjs +4 -4
  225. package/esm2022/result/result.module.mjs +5 -5
  226. package/esm2022/result/result.property.mjs +4 -4
  227. package/esm2022/ripple/ripple.directive.mjs +4 -4
  228. package/esm2022/ripple/ripple.module.mjs +5 -5
  229. package/esm2022/ripple/ripple.property.mjs +4 -4
  230. package/esm2022/select/select-portal.component.mjs +5 -5
  231. package/esm2022/select/select.component.mjs +5 -5
  232. package/esm2022/select/select.module.mjs +5 -5
  233. package/esm2022/select/select.property.mjs +4 -4
  234. package/esm2022/skeleton/skeleton.component.mjs +4 -4
  235. package/esm2022/skeleton/skeleton.module.mjs +5 -5
  236. package/esm2022/skeleton/skeleton.property.mjs +4 -4
  237. package/esm2022/slider/slider.component.mjs +4 -4
  238. package/esm2022/slider/slider.module.mjs +5 -5
  239. package/esm2022/slider/slider.property.mjs +4 -4
  240. package/esm2022/slider-select/slider-select.component.mjs +8 -8
  241. package/esm2022/slider-select/slider-select.module.mjs +5 -5
  242. package/esm2022/slider-select/slider-select.property.mjs +6 -4
  243. package/esm2022/statistic/countdown.component.mjs +4 -4
  244. package/esm2022/statistic/statistic.component.mjs +4 -4
  245. package/esm2022/statistic/statistic.module.mjs +5 -5
  246. package/esm2022/statistic/statistic.property.mjs +7 -7
  247. package/esm2022/steps/steps.component.mjs +4 -4
  248. package/esm2022/steps/steps.module.mjs +5 -5
  249. package/esm2022/steps/steps.property.mjs +4 -4
  250. package/esm2022/switch/switch.component.mjs +4 -4
  251. package/esm2022/switch/switch.module.mjs +5 -5
  252. package/esm2022/switch/switch.property.mjs +4 -4
  253. package/esm2022/table/table-body.component.mjs +5 -5
  254. package/esm2022/table/table-foot.component.mjs +4 -4
  255. package/esm2022/table/table-head.component.mjs +5 -5
  256. package/esm2022/table/table.component.mjs +4 -4
  257. package/esm2022/table/table.module.mjs +5 -5
  258. package/esm2022/table/table.property.mjs +13 -13
  259. package/esm2022/tabs/tab-content.component.mjs +4 -4
  260. package/esm2022/tabs/tab-link.directive.mjs +7 -7
  261. package/esm2022/tabs/tab.component.mjs +4 -4
  262. package/esm2022/tabs/tabs.component.mjs +4 -4
  263. package/esm2022/tabs/tabs.module.mjs +5 -5
  264. package/esm2022/tabs/tabs.property.mjs +7 -7
  265. package/esm2022/tag/tag.component.mjs +4 -4
  266. package/esm2022/tag/tag.module.mjs +5 -5
  267. package/esm2022/tag/tag.property.mjs +4 -4
  268. package/esm2022/text-retract/text-retract.component.mjs +4 -4
  269. package/esm2022/text-retract/text-retract.module.mjs +5 -5
  270. package/esm2022/text-retract/text-retract.property.mjs +4 -4
  271. package/esm2022/textarea/textarea.component.mjs +4 -4
  272. package/esm2022/textarea/textarea.module.mjs +5 -5
  273. package/esm2022/textarea/textarea.property.mjs +4 -4
  274. package/esm2022/theme/theme.component.mjs +4 -4
  275. package/esm2022/theme/theme.module.mjs +5 -5
  276. package/esm2022/theme/theme.property.mjs +4 -4
  277. package/esm2022/time-ago/time-ago.module.mjs +5 -5
  278. package/esm2022/time-ago/time-ago.pipe.mjs +4 -4
  279. package/esm2022/time-picker/time-picker-frame.component.mjs +4 -4
  280. package/esm2022/time-picker/time-picker-portal.component.mjs +4 -4
  281. package/esm2022/time-picker/time-picker.component.mjs +4 -4
  282. package/esm2022/time-picker/time-picker.module.mjs +5 -5
  283. package/esm2022/time-picker/time-picker.property.mjs +4 -4
  284. package/esm2022/time-range/time-range.module.mjs +5 -5
  285. package/esm2022/time-range/time-range.pipe.mjs +4 -4
  286. package/esm2022/timeline/timeline.component.mjs +5 -5
  287. package/esm2022/timeline/timeline.module.mjs +5 -5
  288. package/esm2022/timeline/timeline.property.mjs +4 -4
  289. package/esm2022/tooltip/tooltip-portal.component.mjs +6 -5
  290. package/esm2022/tooltip/tooltip.directive.mjs +4 -4
  291. package/esm2022/tooltip/tooltip.module.mjs +7 -6
  292. package/esm2022/tooltip/tooltip.property.mjs +4 -4
  293. package/esm2022/transfer/transfer.component.mjs +5 -5
  294. package/esm2022/transfer/transfer.module.mjs +5 -5
  295. package/esm2022/transfer/transfer.property.mjs +4 -4
  296. package/esm2022/tree/tree-node.component.mjs +5 -5
  297. package/esm2022/tree/tree.component.mjs +4 -4
  298. package/esm2022/tree/tree.module.mjs +5 -5
  299. package/esm2022/tree/tree.property.mjs +7 -7
  300. package/esm2022/tree/tree.service.mjs +4 -4
  301. package/esm2022/tree-file/tree-file.component.mjs +4 -4
  302. package/esm2022/tree-file/tree-file.module.mjs +5 -5
  303. package/esm2022/tree-file/tree-file.property.mjs +4 -4
  304. package/esm2022/tree-select/tree-select-portal.component.mjs +5 -5
  305. package/esm2022/tree-select/tree-select.component.mjs +5 -5
  306. package/esm2022/tree-select/tree-select.module.mjs +5 -5
  307. package/esm2022/tree-select/tree-select.property.mjs +4 -4
  308. package/esm2022/typography/typography.component.mjs +4 -4
  309. package/esm2022/typography/typography.module.mjs +5 -5
  310. package/esm2022/typography/typography.property.mjs +4 -4
  311. package/esm2022/upload/upload-portal.component.mjs +4 -4
  312. package/esm2022/upload/upload.component.mjs +4 -4
  313. package/esm2022/upload/upload.module.mjs +5 -5
  314. package/esm2022/upload/upload.property.mjs +4 -4
  315. package/fesm2022/ng-nest-ui-affix.mjs +10 -10
  316. package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
  317. package/fesm2022/ng-nest-ui-alert.mjs +10 -10
  318. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  319. package/fesm2022/ng-nest-ui-anchor.mjs +16 -16
  320. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  321. package/fesm2022/ng-nest-ui-api.mjs +7 -7
  322. package/fesm2022/ng-nest-ui-api.mjs.map +1 -1
  323. package/fesm2022/ng-nest-ui-auto-complete.mjs +15 -15
  324. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  325. package/fesm2022/ng-nest-ui-avatar.mjs +16 -16
  326. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  327. package/fesm2022/ng-nest-ui-back-top.mjs +10 -10
  328. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  329. package/fesm2022/ng-nest-ui-badge.mjs +10 -10
  330. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  331. package/fesm2022/ng-nest-ui-base-form.mjs +10 -10
  332. package/fesm2022/ng-nest-ui-base-form.mjs.map +1 -1
  333. package/fesm2022/ng-nest-ui-border.mjs +7 -7
  334. package/fesm2022/ng-nest-ui-border.mjs.map +1 -1
  335. package/fesm2022/ng-nest-ui-button.mjs +16 -16
  336. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  337. package/fesm2022/ng-nest-ui-calendar.mjs +10 -10
  338. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  339. package/fesm2022/ng-nest-ui-card.mjs +10 -10
  340. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  341. package/fesm2022/ng-nest-ui-carousel.mjs +16 -16
  342. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  343. package/fesm2022/ng-nest-ui-cascade.mjs +13 -13
  344. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  345. package/fesm2022/ng-nest-ui-checkbox.mjs +37 -13
  346. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  347. package/fesm2022/ng-nest-ui-collapse.mjs +16 -16
  348. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  349. package/fesm2022/ng-nest-ui-color-picker.mjs +13 -13
  350. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  351. package/fesm2022/ng-nest-ui-color.mjs +10 -10
  352. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  353. package/fesm2022/ng-nest-ui-comment.mjs +16 -16
  354. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  355. package/fesm2022/ng-nest-ui-container.mjs +31 -31
  356. package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
  357. package/fesm2022/ng-nest-ui-core.mjs +15 -15
  358. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  359. package/fesm2022/ng-nest-ui-crumb.mjs +10 -10
  360. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  361. package/fesm2022/ng-nest-ui-date-picker.mjs +49 -49
  362. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  363. package/fesm2022/ng-nest-ui-description.mjs +16 -16
  364. package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
  365. package/fesm2022/ng-nest-ui-dialog.mjs +40 -40
  366. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  367. package/fesm2022/ng-nest-ui-doc.mjs +8 -8
  368. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  369. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  370. package/fesm2022/ng-nest-ui-drag.mjs.map +1 -1
  371. package/fesm2022/ng-nest-ui-drawer.mjs +31 -31
  372. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  373. package/fesm2022/ng-nest-ui-dropdown.mjs +13 -13
  374. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  375. package/fesm2022/ng-nest-ui-empty.mjs +10 -10
  376. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  377. package/fesm2022/ng-nest-ui-examples.mjs +7 -7
  378. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  379. package/fesm2022/ng-nest-ui-find.mjs +10 -10
  380. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  381. package/fesm2022/ng-nest-ui-form.mjs +16 -16
  382. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  383. package/fesm2022/ng-nest-ui-highlight.mjs +10 -10
  384. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  385. package/fesm2022/ng-nest-ui-i18n.mjs +13 -13
  386. package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
  387. package/fesm2022/ng-nest-ui-icon.mjs +13 -13
  388. package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
  389. package/fesm2022/ng-nest-ui-image.mjs +19 -19
  390. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  391. package/fesm2022/ng-nest-ui-inner.mjs +10 -10
  392. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  393. package/fesm2022/ng-nest-ui-input-number.mjs +10 -10
  394. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  395. package/fesm2022/ng-nest-ui-input.mjs +16 -16
  396. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  397. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  398. package/fesm2022/ng-nest-ui-keyword.mjs.map +1 -1
  399. package/fesm2022/ng-nest-ui-layout.mjs +16 -16
  400. package/fesm2022/ng-nest-ui-layout.mjs.map +1 -1
  401. package/fesm2022/ng-nest-ui-link.mjs +10 -10
  402. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  403. package/fesm2022/ng-nest-ui-list.mjs +19 -19
  404. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  405. package/fesm2022/ng-nest-ui-loading.mjs +10 -10
  406. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  407. package/fesm2022/ng-nest-ui-menu.mjs +16 -16
  408. package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
  409. package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
  410. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  411. package/fesm2022/ng-nest-ui-message.mjs +10 -10
  412. package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
  413. package/fesm2022/ng-nest-ui-notification.mjs +10 -10
  414. package/fesm2022/ng-nest-ui-notification.mjs.map +1 -1
  415. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  416. package/fesm2022/ng-nest-ui-outlet.mjs.map +1 -1
  417. package/fesm2022/ng-nest-ui-page-header.mjs +10 -10
  418. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  419. package/fesm2022/ng-nest-ui-pagination.mjs +10 -10
  420. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  421. package/fesm2022/ng-nest-ui-pattern.mjs +7 -7
  422. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  423. package/fesm2022/ng-nest-ui-popconfirm.mjs +10 -10
  424. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  425. package/fesm2022/ng-nest-ui-popover.mjs +13 -13
  426. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  427. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  428. package/fesm2022/ng-nest-ui-portal.mjs.map +1 -1
  429. package/fesm2022/ng-nest-ui-progress.mjs +10 -10
  430. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  431. package/fesm2022/ng-nest-ui-radio.mjs +21 -11
  432. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  433. package/fesm2022/ng-nest-ui-rate.mjs +10 -10
  434. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  435. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  436. package/fesm2022/ng-nest-ui-resizable.mjs.map +1 -1
  437. package/fesm2022/ng-nest-ui-result.mjs +10 -10
  438. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  439. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  440. package/fesm2022/ng-nest-ui-ripple.mjs.map +1 -1
  441. package/fesm2022/ng-nest-ui-select.mjs +15 -15
  442. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  443. package/fesm2022/ng-nest-ui-skeleton.mjs +10 -10
  444. package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
  445. package/fesm2022/ng-nest-ui-slider-select.mjs +16 -14
  446. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  447. package/fesm2022/ng-nest-ui-slider.mjs +10 -10
  448. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  449. package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
  450. package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
  451. package/fesm2022/ng-nest-ui-steps.mjs +10 -10
  452. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  453. package/fesm2022/ng-nest-ui-switch.mjs +10 -10
  454. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  455. package/fesm2022/ng-nest-ui-table.mjs +30 -30
  456. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  457. package/fesm2022/ng-nest-ui-tabs.mjs +25 -25
  458. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  459. package/fesm2022/ng-nest-ui-tag.mjs +10 -10
  460. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  461. package/fesm2022/ng-nest-ui-text-retract.mjs +10 -10
  462. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  463. package/fesm2022/ng-nest-ui-textarea.mjs +10 -10
  464. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  465. package/fesm2022/ng-nest-ui-theme.mjs +10 -10
  466. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  467. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  468. package/fesm2022/ng-nest-ui-time-ago.mjs.map +1 -1
  469. package/fesm2022/ng-nest-ui-time-picker.mjs +16 -16
  470. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  471. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  472. package/fesm2022/ng-nest-ui-time-range.mjs.map +1 -1
  473. package/fesm2022/ng-nest-ui-timeline.mjs +11 -11
  474. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  475. package/fesm2022/ng-nest-ui-tooltip.mjs +19 -17
  476. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  477. package/fesm2022/ng-nest-ui-transfer.mjs +11 -11
  478. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  479. package/fesm2022/ng-nest-ui-tree-file.mjs +10 -10
  480. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  481. package/fesm2022/ng-nest-ui-tree-select.mjs +15 -15
  482. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  483. package/fesm2022/ng-nest-ui-tree.mjs +20 -20
  484. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  485. package/fesm2022/ng-nest-ui-typography.mjs +10 -10
  486. package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
  487. package/fesm2022/ng-nest-ui-upload.mjs +13 -13
  488. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  489. package/package.json +37 -37
  490. package/radio/radio.property.d.ts +6 -1
  491. package/slider-select/slider-select.property.d.ts +6 -1
  492. package/tooltip/tooltip-portal.component.d.ts +2 -2
  493. package/tooltip/tooltip.module.d.ts +2 -1
  494. package/tooltip/tooltip.property.d.ts +2 -2
@@ -20,8 +20,8 @@ const XIconHref = 'https://ngnest.com/static/icons/';
20
20
  * Icon Property
21
21
  */
22
22
  class XIconProperty extends XProperty {
23
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
24
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XIconProperty, selector: "x-icon-property", inputs: { href: "href", type: "type", color: "color", rotate: "rotate", spin: "spin", to: "to" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
23
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
24
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XIconProperty, selector: "x-icon-property", inputs: { href: "href", type: "type", color: "color", rotate: "rotate", spin: "spin", to: "to" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
25
25
  }
26
26
  __decorate([
27
27
  XWithConfig(X_CONFIG_NAME, XIconHref)
@@ -32,7 +32,7 @@ __decorate([
32
32
  __decorate([
33
33
  XInputBoolean()
34
34
  ], XIconProperty.prototype, "spin", void 0);
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconProperty, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconProperty, decorators: [{
36
36
  type: Component,
37
37
  args: [{ selector: `${XIconPrefix}-property`, template: '' }]
38
38
  }], propDecorators: { href: [{
@@ -120,10 +120,10 @@ class XIconService {
120
120
  const safeUrl = this.sanitizer.sanitize(SecurityContext.URL, url);
121
121
  return this.http.get(safeUrl, { responseType: 'text' });
122
122
  }
123
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconService, deps: [{ token: i1.DomSanitizer }, { token: i2.HttpClient, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
124
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconService }); }
123
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconService, deps: [{ token: i1.DomSanitizer }, { token: i2.HttpClient, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
124
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconService }); }
125
125
  }
126
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconService, decorators: [{
126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconService, decorators: [{
127
127
  type: Injectable
128
128
  }], ctorParameters: function () { return [{ type: i1.DomSanitizer }, { type: i2.HttpClient, decorators: [{
129
129
  type: Optional
@@ -296,10 +296,10 @@ class XIconComponent extends XIconProperty {
296
296
  }
297
297
  }
298
298
  }
299
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: XIconService }, { token: i0.ChangeDetectorRef }, { token: i2$1.XConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
300
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XIconComponent, selector: "x-icon", host: { properties: { "class.x-icon-spin": "this.getSpin" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "\r\n", styles: ["@keyframes x-icon-spin{to{transform:rotate(360deg)}}.x-icon{margin:0;padding:0;display:inline-block;line-height:0;text-align:center;vertical-align:-.125em}.x-icon-spin{animation:1s linear infinite x-icon-spin}.x-icon[left]{margin-right:.25rem}.x-icon[right]{margin-left:.25rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
299
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: XIconService }, { token: i0.ChangeDetectorRef }, { token: i2$1.XConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
300
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XIconComponent, selector: "x-icon", host: { properties: { "class.x-icon-spin": "this.getSpin" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "\r\n", styles: ["@keyframes x-icon-spin{to{transform:rotate(360deg)}}.x-icon{margin:0;padding:0;display:inline-block;line-height:0;text-align:center;vertical-align:-.125em}.x-icon-spin{animation:1s linear infinite x-icon-spin}.x-icon[left]{margin-right:.25rem}.x-icon[right]{margin-left:.25rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
301
301
  }
302
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconComponent, decorators: [{
302
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconComponent, decorators: [{
303
303
  type: Component,
304
304
  args: [{ selector: `${XIconPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "\r\n", styles: ["@keyframes x-icon-spin{to{transform:rotate(360deg)}}.x-icon{margin:0;padding:0;display:inline-block;line-height:0;text-align:center;vertical-align:-.125em}.x-icon-spin{animation:1s linear infinite x-icon-spin}.x-icon[left]{margin-right:.25rem}.x-icon[right]{margin-left:.25rem}\n"] }]
305
305
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: XIconService }, { type: i0.ChangeDetectorRef }, { type: i2$1.XConfigService }]; }, propDecorators: { getSpin: [{
@@ -308,11 +308,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImpor
308
308
  }] } });
309
309
 
310
310
  class XIconModule {
311
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
312
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.5", ngImport: i0, type: XIconModule, declarations: [XIconComponent, XIconProperty], imports: [CommonModule], exports: [XIconComponent] }); }
313
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconModule, providers: [XIconService], imports: [CommonModule] }); }
311
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
312
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: XIconModule, declarations: [XIconComponent, XIconProperty], imports: [CommonModule], exports: [XIconComponent] }); }
313
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconModule, providers: [XIconService], imports: [CommonModule] }); }
314
314
  }
315
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XIconModule, decorators: [{
315
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XIconModule, decorators: [{
316
316
  type: NgModule,
317
317
  args: [{
318
318
  declarations: [XIconComponent, XIconProperty],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-icon.mjs","sources":["../../../../lib/ng-nest/ui/icon/icon.property.ts","../../../../lib/ng-nest/ui/icon/icon.service.ts","../../../../lib/ng-nest/ui/icon/icon.component.ts","../../../../lib/ng-nest/ui/icon/icon.component.html","../../../../lib/ng-nest/ui/icon/icon.module.ts","../../../../lib/ng-nest/ui/icon/ng-nest-ui-icon.ts"],"sourcesContent":["import { XProperty, XInputNumber, XInputBoolean, XNumber, XBoolean, XWithConfig } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Icon\r\n * @selector x-icon\r\n * @decorator component\r\n */\r\nexport const XIconPrefix = 'x-icon';\r\n\r\nconst X_CONFIG_NAME = 'icon';\r\n\r\nexport const XIconHref = 'https://ngnest.com/static/icons/';\r\n\r\n/**\r\n * Icon Property\r\n */\r\n@Component({ selector: `${XIconPrefix}-property`, template: '' })\r\nexport class XIconProperty extends XProperty {\r\n /**\r\n * @zh_CN SVG 图标根路径地址,可以通过全局只配置一次,所有图标资源在 github 上的 ng-nest-icon 中\r\n * @en_US The root address of the SVG icon can be configured only once globally. All icon resources are in ng-nest-icon on github\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, XIconHref) href?: string;\r\n /**\r\n * @zh_CN 图标类型\r\n * @en_US Icon type\r\n */\r\n @Input() type?: string;\r\n /**\r\n * @zh_CN 图标颜色\r\n * @en_US Icon color\r\n */\r\n @Input() color?: string | string[];\r\n /**\r\n * @zh_CN 图标旋转角度\r\n * @en_US Icon rotation angle\r\n */\r\n @Input() @XInputNumber() rotate?: XNumber;\r\n /**\r\n * @zh_CN loading效果(图标一直旋转)\r\n * @en_US Loading effect (icon keeps rotating)\r\n */\r\n @Input() @XInputBoolean() spin?: XBoolean;\r\n /**\r\n * @zh_CN 变化为的图标(未实现)\r\n * @en_US Icon to change to (not implemented)\r\n */\r\n @Input() to?: string;\r\n}\r\n\r\n/**\r\n * @zh_CN 图标来源\r\n * @en_US Icon source\r\n */\r\nexport type XIconSource = 'ant-design' | 'eva' | 'feather' | 'font-awesome' | 'material-design';\r\n","import { Injectable, Optional, SecurityContext } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable, Subscriber } from 'rxjs';\r\nimport { XHasIn } from '@ng-nest/ui/core';\r\nimport { XIconPrefix } from './icon.property';\r\n\r\ntype Task<T> = {\r\n name: string;\r\n observable: Observable<T>;\r\n callback: Function;\r\n};\r\n\r\n// @dynamic\r\n@Injectable()\r\nexport class XIconService {\r\n rootUrl = `https://ngnest.com/static/icons/`;\r\n caches: { [property: string]: any } = {};\r\n queue: Task<any>[] = [];\r\n activeTaskXm: number = 0;\r\n isRunningTask = false;\r\n limit: number = 10;\r\n\r\n constructor(private sanitizer: DomSanitizer, @Optional() private http: HttpClient) {\r\n if (!http) {\r\n throw new Error(`${XIconPrefix}: Not found 'HttpClient', You can import 'HttpClientModule' in your root module.`);\r\n }\r\n }\r\n\r\n public addTask<T>(task: Task<T>) {\r\n this.queue.push(task);\r\n this.runTask();\r\n }\r\n\r\n private execute<T>(task: Task<T>) {\r\n this.isRunningTask = true;\r\n if (XHasIn(this.caches, task.name)) {\r\n task.callback(this.caches[task.name]);\r\n this.activeTaskXm--;\r\n this.isRunningTask = false;\r\n this.runTask();\r\n return;\r\n }\r\n return task.observable.subscribe(\r\n (result) => {\r\n this.caches[task.name] = result;\r\n task.callback(result);\r\n return result;\r\n },\r\n (error) => {\r\n console.error(error);\r\n this.activeTaskXm--;\r\n this.isRunningTask = false;\r\n this.runTask();\r\n },\r\n () => {\r\n this.activeTaskXm--;\r\n this.isRunningTask = false;\r\n this.runTask();\r\n }\r\n );\r\n }\r\n\r\n private runTask() {\r\n if (!this.isRunningTask && this.activeTaskXm < this.limit && this.queue.length > 0) {\r\n const task = this.queue.shift();\r\n this.activeTaskXm++;\r\n this.execute(task!);\r\n }\r\n }\r\n\r\n getSvgs(...icons: string[]): Observable<string[]> {\r\n return Observable.create((subscriber: Subscriber<string[]>) => {\r\n let result: string[] = [];\r\n icons.forEach((icon, index) =>\r\n this.addTask({\r\n name: icon,\r\n observable: this.getSvgElement(icon),\r\n callback: (svg: string) => {\r\n result.push(svg);\r\n if (index === icons.length - 1) {\r\n subscriber.next(result);\r\n subscriber.complete();\r\n }\r\n }\r\n })\r\n );\r\n });\r\n }\r\n\r\n getSvgElement(icon: string): Observable<string> {\r\n const url = `${this.rootUrl}${icon}.svg`;\r\n const safeUrl = this.sanitizer.sanitize(SecurityContext.URL, url);\r\n return this.http.get(safeUrl as string, { responseType: 'text' });\r\n }\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n Renderer2,\r\n ChangeDetectorRef,\r\n OnChanges,\r\n SimpleChanges,\r\n HostBinding,\r\n inject\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { XIconPrefix, XIconProperty } from './icon.property';\r\nimport { XIconService } from './icon.service';\r\nimport { warnIconTypeNotFound, warnSVGTagNotFound, XIsChange, XIsEmpty, XConfigService } from '@ng-nest/ui/core';\r\n\r\n// 来源路径对应\r\nexport const XSouceUrl: { [property: string]: string } = {\r\n adf: `ant-design/fill/`,\r\n ado: `ant-design/outline/`,\r\n adt: `ant-design/twotone/`,\r\n eaf: `eva/fill/`,\r\n eao: `eva/outline/`,\r\n fto: `feather/`,\r\n fab: `font-awesome/brands/`,\r\n far: `font-awesome/regular/`,\r\n fas: `font-awesome/solid/`,\r\n mdf: `material-design/fill/`,\r\n mdo: `material-design/outline/`\r\n};\r\n\r\nexport const XViewBox = [\r\n // { souces: [\"adf\", \"ado\", \"adt\"], value: \"0 0 1024 1024\" },\r\n // { souces: [\"eaf\", \"eao\"], value: \"0 0 24 24\" },\r\n // { souces: [\"fto\"], value: \"0 0 24 24\" }\r\n];\r\n\r\n@Component({\r\n selector: `${XIconPrefix}`,\r\n templateUrl: './icon.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XIconComponent extends XIconProperty implements OnInit, OnChanges {\r\n private _svgElement!: SVGElement;\r\n private _loaded: boolean = false;\r\n private document = inject(DOCUMENT);\r\n\r\n @HostBinding('class.x-icon-spin') get getSpin() {\r\n return this.spin;\r\n }\r\n\r\n constructor(\r\n public elementRef: ElementRef<HTMLElement>,\r\n private renderer: Renderer2,\r\n public iconService: XIconService,\r\n private cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n this.iconService.rootUrl = this.href as string;\r\n this.renderer.addClass(this.elementRef.nativeElement, XIconPrefix);\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { type, spin } = changes;\r\n if (XIsChange(type)) {\r\n this.setSvgElement();\r\n this.renderer.removeClass(this.elementRef.nativeElement, type.previousValue);\r\n this.renderer.addClass(this.elementRef.nativeElement, `${this.type}`);\r\n this.cdr.detectChanges();\r\n }\r\n if (XIsChange(spin)) {\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n getSvg() {\r\n if (this._loaded) return;\r\n let height = this.document.documentElement.clientHeight;\r\n let width = this.document.documentElement.clientWidth;\r\n let box = this.elementRef.nativeElement.getBoundingClientRect();\r\n if (box.top <= height && box.left <= width) {\r\n this.setSvgElement();\r\n this.renderer.addClass(this.elementRef.nativeElement, `${this.type}`);\r\n this._loaded = true;\r\n }\r\n }\r\n\r\n setSvgElement() {\r\n const typeIcon = this.setSourceUrl(this.type);\r\n const toIcon = this.setSourceUrl(this.to);\r\n let icons = [typeIcon];\r\n if (XIsEmpty(typeIcon)) return;\r\n if (!XIsEmpty(toIcon)) {\r\n icons = [...icons, toIcon];\r\n }\r\n this.iconService.getSvgs(...icons).subscribe((x) => this.setSvgs(x));\r\n }\r\n\r\n setSvgs(svgs: string[]) {\r\n if (svgs?.length > 0) {\r\n let firstChild = this.elementRef.nativeElement.firstChild;\r\n if (firstChild) {\r\n this.renderer.removeChild(this.elementRef.nativeElement, firstChild);\r\n }\r\n this._svgElement = this.buildSvg(svgs.shift() as string) as SVGSVGElement;\r\n // this.setAnimates(svgs);\r\n this.setAttributes(this._svgElement);\r\n this.renderer.appendChild(this.elementRef.nativeElement, this._svgElement);\r\n this.cdr.markForCheck();\r\n }\r\n }\r\n\r\n setSourceUrl(type?: string) {\r\n if (typeof type === 'undefined') return '';\r\n const split = type.split('-');\r\n const souce = split.shift();\r\n if (typeof souce === 'undefined') return '';\r\n const souceUrl = XSouceUrl[souce];\r\n const fileName = split.join('-');\r\n if (!souceUrl || !fileName) {\r\n warnIconTypeNotFound();\r\n }\r\n return `${souceUrl}${fileName}`;\r\n }\r\n\r\n setAttributes(svgEle: SVGElement) {\r\n if (svgEle) {\r\n this.renderer.setAttribute(svgEle, 'width', '1em');\r\n this.renderer.setAttribute(svgEle, 'height', '1em');\r\n }\r\n }\r\n\r\n buildSvg(svgStr: string): SVGSVGElement | undefined {\r\n const result = this.document.createElementNS('http://www.w3.org/2000/svg', 'svg') as SVGSVGElement;\r\n const svg = this.createSvg(svgStr);\r\n if (!svg) return;\r\n svg.children.forEach((x) => {\r\n x.removeAttribute('class');\r\n if (x.tagName === 'rect') {\r\n x.setAttribute('fill', 'none');\r\n }\r\n result.appendChild(x);\r\n });\r\n this.setAttribute(result, svg.ele, 'viewBox');\r\n this.setAttribute(result, svg.ele, 'fill', 'currentColor');\r\n this.setAttribute(result, svg.ele, 'stroke');\r\n this.setAttribute(result, svg.ele, 'stroke-width');\r\n this.setAttribute(result, svg.ele, 'stroke-linecap');\r\n this.setAttribute(result, svg.ele, 'stroke-linejoin');\r\n if (!result) {\r\n warnSVGTagNotFound();\r\n }\r\n\r\n return result;\r\n }\r\n\r\n createSvg(svgStr: string) {\r\n const div = this.document.createElement('div');\r\n div.innerHTML = svgStr;\r\n let svgEle = div.querySelector('svg') as SVGElement;\r\n if (!svgEle) return null;\r\n return {\r\n ele: svgEle,\r\n children: svgEle.querySelectorAll('path, polyline, polygon, circle, line, rect')\r\n };\r\n }\r\n\r\n setAttribute(svg: SVGElement, svgEle: SVGElement, attribute: string, def?: string) {\r\n let attr = svgEle.getAttribute(attribute);\r\n if (attr) {\r\n svg.setAttribute(attribute, attr);\r\n } else if (def) {\r\n svg.setAttribute(attribute, def);\r\n }\r\n }\r\n\r\n //<animate begin=\"mouseenter\" dur=\"500ms\" repeatCount=\"1\" attributeName=\"d\" from=\"M86.425,13.204l5.648,12.741H0.55 l0.125-12.616L0.55,0.544h91.523L86.425,13.204z\" to=\"M92.725,13.521l0.044,12.887H1.245 l7-12.616l-7-12.785h91.523L92.725,13.521z\" fill=\"freeze\"></animate>\r\n\r\n setAnimates(svgs: string[]) {\r\n if (svgs?.length > 0) {\r\n let svg = this.createSvg(svgs.shift() as string);\r\n for (let i = 0; i < this._svgElement.children.length; i++) {\r\n let child = this._svgElement.children[i];\r\n let toChild = svg?.children[i];\r\n if (child?.nodeName === 'path' && toChild?.nodeName === 'path') {\r\n let toAnimate = this.document.createElement('animate');\r\n toAnimate.setAttribute('dur', '500ms');\r\n toAnimate.setAttribute('repeatCount', '1');\r\n toAnimate.setAttribute('attributeName', 'd');\r\n toAnimate.setAttribute('fill', 'freeze');\r\n toAnimate.setAttribute('from', child.getAttribute('d') as string);\r\n toAnimate.setAttribute('to', toChild.getAttribute('d') as string);\r\n this.renderer.appendChild(child, toAnimate);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XIconComponent } from './icon.component';\r\nimport { XIconService } from './icon.service';\r\nimport { XIconProperty } from './icon.property';\r\n\r\n@NgModule({\r\n declarations: [XIconComponent, XIconProperty],\r\n exports: [XIconComponent],\r\n imports: [CommonModule],\r\n providers: [XIconService]\r\n})\r\nexport class XIconModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.XIconService","i2"],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-icon.mjs","sources":["../../../../lib/ng-nest/ui/icon/icon.property.ts","../../../../lib/ng-nest/ui/icon/icon.service.ts","../../../../lib/ng-nest/ui/icon/icon.component.ts","../../../../lib/ng-nest/ui/icon/icon.component.html","../../../../lib/ng-nest/ui/icon/icon.module.ts","../../../../lib/ng-nest/ui/icon/ng-nest-ui-icon.ts"],"sourcesContent":["import { XProperty, XInputNumber, XInputBoolean, XNumber, XBoolean, XWithConfig } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Icon\r\n * @selector x-icon\r\n * @decorator component\r\n */\r\nexport const XIconPrefix = 'x-icon';\r\n\r\nconst X_CONFIG_NAME = 'icon';\r\n\r\nexport const XIconHref = 'https://ngnest.com/static/icons/';\r\n\r\n/**\r\n * Icon Property\r\n */\r\n@Component({ selector: `${XIconPrefix}-property`, template: '' })\r\nexport class XIconProperty extends XProperty {\r\n /**\r\n * @zh_CN SVG 图标根路径地址,可以通过全局只配置一次,所有图标资源在 github 上的 ng-nest-icon 中\r\n * @en_US The root address of the SVG icon can be configured only once globally. All icon resources are in ng-nest-icon on github\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, XIconHref) href?: string;\r\n /**\r\n * @zh_CN 图标类型\r\n * @en_US Icon type\r\n */\r\n @Input() type?: string;\r\n /**\r\n * @zh_CN 图标颜色\r\n * @en_US Icon color\r\n */\r\n @Input() color?: string | string[];\r\n /**\r\n * @zh_CN 图标旋转角度\r\n * @en_US Icon rotation angle\r\n */\r\n @Input() @XInputNumber() rotate?: XNumber;\r\n /**\r\n * @zh_CN loading效果(图标一直旋转)\r\n * @en_US Loading effect (icon keeps rotating)\r\n */\r\n @Input() @XInputBoolean() spin?: XBoolean;\r\n /**\r\n * @zh_CN 变化为的图标(未实现)\r\n * @en_US Icon to change to (not implemented)\r\n */\r\n @Input() to?: string;\r\n}\r\n\r\n/**\r\n * @zh_CN 图标来源\r\n * @en_US Icon source\r\n */\r\nexport type XIconSource = 'ant-design' | 'eva' | 'feather' | 'font-awesome' | 'material-design';\r\n","import { Injectable, Optional, SecurityContext } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable, Subscriber } from 'rxjs';\r\nimport { XHasIn } from '@ng-nest/ui/core';\r\nimport { XIconPrefix } from './icon.property';\r\n\r\ntype Task<T> = {\r\n name: string;\r\n observable: Observable<T>;\r\n callback: Function;\r\n};\r\n\r\n// @dynamic\r\n@Injectable()\r\nexport class XIconService {\r\n rootUrl = `https://ngnest.com/static/icons/`;\r\n caches: { [property: string]: any } = {};\r\n queue: Task<any>[] = [];\r\n activeTaskXm: number = 0;\r\n isRunningTask = false;\r\n limit: number = 10;\r\n\r\n constructor(private sanitizer: DomSanitizer, @Optional() private http: HttpClient) {\r\n if (!http) {\r\n throw new Error(`${XIconPrefix}: Not found 'HttpClient', You can import 'HttpClientModule' in your root module.`);\r\n }\r\n }\r\n\r\n public addTask<T>(task: Task<T>) {\r\n this.queue.push(task);\r\n this.runTask();\r\n }\r\n\r\n private execute<T>(task: Task<T>) {\r\n this.isRunningTask = true;\r\n if (XHasIn(this.caches, task.name)) {\r\n task.callback(this.caches[task.name]);\r\n this.activeTaskXm--;\r\n this.isRunningTask = false;\r\n this.runTask();\r\n return;\r\n }\r\n return task.observable.subscribe(\r\n (result) => {\r\n this.caches[task.name] = result;\r\n task.callback(result);\r\n return result;\r\n },\r\n (error) => {\r\n console.error(error);\r\n this.activeTaskXm--;\r\n this.isRunningTask = false;\r\n this.runTask();\r\n },\r\n () => {\r\n this.activeTaskXm--;\r\n this.isRunningTask = false;\r\n this.runTask();\r\n }\r\n );\r\n }\r\n\r\n private runTask() {\r\n if (!this.isRunningTask && this.activeTaskXm < this.limit && this.queue.length > 0) {\r\n const task = this.queue.shift();\r\n this.activeTaskXm++;\r\n this.execute(task!);\r\n }\r\n }\r\n\r\n getSvgs(...icons: string[]): Observable<string[]> {\r\n return Observable.create((subscriber: Subscriber<string[]>) => {\r\n let result: string[] = [];\r\n icons.forEach((icon, index) =>\r\n this.addTask({\r\n name: icon,\r\n observable: this.getSvgElement(icon),\r\n callback: (svg: string) => {\r\n result.push(svg);\r\n if (index === icons.length - 1) {\r\n subscriber.next(result);\r\n subscriber.complete();\r\n }\r\n }\r\n })\r\n );\r\n });\r\n }\r\n\r\n getSvgElement(icon: string): Observable<string> {\r\n const url = `${this.rootUrl}${icon}.svg`;\r\n const safeUrl = this.sanitizer.sanitize(SecurityContext.URL, url);\r\n return this.http.get(safeUrl as string, { responseType: 'text' });\r\n }\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n Renderer2,\r\n ChangeDetectorRef,\r\n OnChanges,\r\n SimpleChanges,\r\n HostBinding,\r\n inject\r\n} from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { XIconPrefix, XIconProperty } from './icon.property';\r\nimport { XIconService } from './icon.service';\r\nimport { warnIconTypeNotFound, warnSVGTagNotFound, XIsChange, XIsEmpty, XConfigService } from '@ng-nest/ui/core';\r\n\r\n// 来源路径对应\r\nexport const XSouceUrl: { [property: string]: string } = {\r\n adf: `ant-design/fill/`,\r\n ado: `ant-design/outline/`,\r\n adt: `ant-design/twotone/`,\r\n eaf: `eva/fill/`,\r\n eao: `eva/outline/`,\r\n fto: `feather/`,\r\n fab: `font-awesome/brands/`,\r\n far: `font-awesome/regular/`,\r\n fas: `font-awesome/solid/`,\r\n mdf: `material-design/fill/`,\r\n mdo: `material-design/outline/`\r\n};\r\n\r\nexport const XViewBox = [\r\n // { souces: [\"adf\", \"ado\", \"adt\"], value: \"0 0 1024 1024\" },\r\n // { souces: [\"eaf\", \"eao\"], value: \"0 0 24 24\" },\r\n // { souces: [\"fto\"], value: \"0 0 24 24\" }\r\n];\r\n\r\n@Component({\r\n selector: `${XIconPrefix}`,\r\n templateUrl: './icon.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XIconComponent extends XIconProperty implements OnInit, OnChanges {\r\n private _svgElement!: SVGElement;\r\n private _loaded: boolean = false;\r\n private document = inject(DOCUMENT);\r\n\r\n @HostBinding('class.x-icon-spin') get getSpin() {\r\n return this.spin;\r\n }\r\n\r\n constructor(\r\n public elementRef: ElementRef<HTMLElement>,\r\n private renderer: Renderer2,\r\n public iconService: XIconService,\r\n private cdr: ChangeDetectorRef,\r\n public configService: XConfigService\r\n ) {\r\n super();\r\n this.iconService.rootUrl = this.href as string;\r\n this.renderer.addClass(this.elementRef.nativeElement, XIconPrefix);\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { type, spin } = changes;\r\n if (XIsChange(type)) {\r\n this.setSvgElement();\r\n this.renderer.removeClass(this.elementRef.nativeElement, type.previousValue);\r\n this.renderer.addClass(this.elementRef.nativeElement, `${this.type}`);\r\n this.cdr.detectChanges();\r\n }\r\n if (XIsChange(spin)) {\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n getSvg() {\r\n if (this._loaded) return;\r\n let height = this.document.documentElement.clientHeight;\r\n let width = this.document.documentElement.clientWidth;\r\n let box = this.elementRef.nativeElement.getBoundingClientRect();\r\n if (box.top <= height && box.left <= width) {\r\n this.setSvgElement();\r\n this.renderer.addClass(this.elementRef.nativeElement, `${this.type}`);\r\n this._loaded = true;\r\n }\r\n }\r\n\r\n setSvgElement() {\r\n const typeIcon = this.setSourceUrl(this.type);\r\n const toIcon = this.setSourceUrl(this.to);\r\n let icons = [typeIcon];\r\n if (XIsEmpty(typeIcon)) return;\r\n if (!XIsEmpty(toIcon)) {\r\n icons = [...icons, toIcon];\r\n }\r\n this.iconService.getSvgs(...icons).subscribe((x) => this.setSvgs(x));\r\n }\r\n\r\n setSvgs(svgs: string[]) {\r\n if (svgs?.length > 0) {\r\n let firstChild = this.elementRef.nativeElement.firstChild;\r\n if (firstChild) {\r\n this.renderer.removeChild(this.elementRef.nativeElement, firstChild);\r\n }\r\n this._svgElement = this.buildSvg(svgs.shift() as string) as SVGSVGElement;\r\n // this.setAnimates(svgs);\r\n this.setAttributes(this._svgElement);\r\n this.renderer.appendChild(this.elementRef.nativeElement, this._svgElement);\r\n this.cdr.markForCheck();\r\n }\r\n }\r\n\r\n setSourceUrl(type?: string) {\r\n if (typeof type === 'undefined') return '';\r\n const split = type.split('-');\r\n const souce = split.shift();\r\n if (typeof souce === 'undefined') return '';\r\n const souceUrl = XSouceUrl[souce];\r\n const fileName = split.join('-');\r\n if (!souceUrl || !fileName) {\r\n warnIconTypeNotFound();\r\n }\r\n return `${souceUrl}${fileName}`;\r\n }\r\n\r\n setAttributes(svgEle: SVGElement) {\r\n if (svgEle) {\r\n this.renderer.setAttribute(svgEle, 'width', '1em');\r\n this.renderer.setAttribute(svgEle, 'height', '1em');\r\n }\r\n }\r\n\r\n buildSvg(svgStr: string): SVGSVGElement | undefined {\r\n const result = this.document.createElementNS('http://www.w3.org/2000/svg', 'svg') as SVGSVGElement;\r\n const svg = this.createSvg(svgStr);\r\n if (!svg) return;\r\n svg.children.forEach((x) => {\r\n x.removeAttribute('class');\r\n if (x.tagName === 'rect') {\r\n x.setAttribute('fill', 'none');\r\n }\r\n result.appendChild(x);\r\n });\r\n this.setAttribute(result, svg.ele, 'viewBox');\r\n this.setAttribute(result, svg.ele, 'fill', 'currentColor');\r\n this.setAttribute(result, svg.ele, 'stroke');\r\n this.setAttribute(result, svg.ele, 'stroke-width');\r\n this.setAttribute(result, svg.ele, 'stroke-linecap');\r\n this.setAttribute(result, svg.ele, 'stroke-linejoin');\r\n if (!result) {\r\n warnSVGTagNotFound();\r\n }\r\n\r\n return result;\r\n }\r\n\r\n createSvg(svgStr: string) {\r\n const div = this.document.createElement('div');\r\n div.innerHTML = svgStr;\r\n let svgEle = div.querySelector('svg') as SVGElement;\r\n if (!svgEle) return null;\r\n return {\r\n ele: svgEle,\r\n children: svgEle.querySelectorAll('path, polyline, polygon, circle, line, rect')\r\n };\r\n }\r\n\r\n setAttribute(svg: SVGElement, svgEle: SVGElement, attribute: string, def?: string) {\r\n let attr = svgEle.getAttribute(attribute);\r\n if (attr) {\r\n svg.setAttribute(attribute, attr);\r\n } else if (def) {\r\n svg.setAttribute(attribute, def);\r\n }\r\n }\r\n\r\n //<animate begin=\"mouseenter\" dur=\"500ms\" repeatCount=\"1\" attributeName=\"d\" from=\"M86.425,13.204l5.648,12.741H0.55 l0.125-12.616L0.55,0.544h91.523L86.425,13.204z\" to=\"M92.725,13.521l0.044,12.887H1.245 l7-12.616l-7-12.785h91.523L92.725,13.521z\" fill=\"freeze\"></animate>\r\n\r\n setAnimates(svgs: string[]) {\r\n if (svgs?.length > 0) {\r\n let svg = this.createSvg(svgs.shift() as string);\r\n for (let i = 0; i < this._svgElement.children.length; i++) {\r\n let child = this._svgElement.children[i];\r\n let toChild = svg?.children[i];\r\n if (child?.nodeName === 'path' && toChild?.nodeName === 'path') {\r\n let toAnimate = this.document.createElement('animate');\r\n toAnimate.setAttribute('dur', '500ms');\r\n toAnimate.setAttribute('repeatCount', '1');\r\n toAnimate.setAttribute('attributeName', 'd');\r\n toAnimate.setAttribute('fill', 'freeze');\r\n toAnimate.setAttribute('from', child.getAttribute('d') as string);\r\n toAnimate.setAttribute('to', toChild.getAttribute('d') as string);\r\n this.renderer.appendChild(child, toAnimate);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XIconComponent } from './icon.component';\r\nimport { XIconService } from './icon.service';\r\nimport { XIconProperty } from './icon.property';\r\n\r\n@NgModule({\r\n declarations: [XIconComponent, XIconProperty],\r\n exports: [XIconComponent],\r\n imports: [CommonModule],\r\n providers: [XIconService]\r\n})\r\nexport class XIconModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.XIconService","i2"],"mappings":"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"}
@@ -43,13 +43,13 @@ class XImageProperty extends XProperty {
43
43
  */
44
44
  this.load = new EventEmitter();
45
45
  }
46
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImageProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
47
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XImageProperty, selector: "x-image-property", inputs: { src: "src", width: "width", height: "height", alt: "alt", fallback: "fallback", previewText: "previewText", placeholder: "placeholder", previewTpl: "previewTpl" }, outputs: { error: "error", load: "load" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
46
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImageProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
47
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XImageProperty, selector: "x-image-property", inputs: { src: "src", width: "width", height: "height", alt: "alt", fallback: "fallback", previewText: "previewText", placeholder: "placeholder", previewTpl: "previewTpl" }, outputs: { error: "error", load: "load" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
48
48
  }
49
49
  __decorate([
50
50
  XWithConfig(X_CONFIG_NAME)
51
51
  ], XImageProperty.prototype, "previewText", void 0);
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImageProperty, decorators: [{
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImageProperty, decorators: [{
53
53
  type: Component,
54
54
  args: [{ selector: `${XImagePrefix}-property`, template: '' }]
55
55
  }], propDecorators: { src: [{
@@ -83,10 +83,10 @@ const XImagePreviewPrefix = 'x-image-preview';
83
83
  * Image Preview Property
84
84
  */
85
85
  class XImagePreviewProperty extends XProperty {
86
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImagePreviewProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
87
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XImagePreviewProperty, selector: "x-image-preview-property", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
86
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImagePreviewProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
87
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XImagePreviewProperty, selector: "x-image-preview-property", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
88
88
  }
89
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImagePreviewProperty, decorators: [{
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImagePreviewProperty, decorators: [{
90
90
  type: Component,
91
91
  args: [{ selector: `${XImagePreviewPrefix}-property`, template: '' }]
92
92
  }] });
@@ -213,10 +213,10 @@ class XImagePreviewComponent extends XImagePreviewProperty {
213
213
  }
214
214
  return distance;
215
215
  }
216
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImagePreviewComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }, { token: X_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
217
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XImagePreviewComponent, selector: "x-image-preview", viewQueries: [{ propertyName: "imageRef", first: true, predicate: ["imageRef"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-image-preview\" [ngClass]=\"classMap\">\r\n <div class=\"x-image-preview-header\">\r\n <div class=\"x-image-preview-header-left\">\r\n <span class=\"x-image-preview-current\" *ngIf=\"total != 1\">{{ current }} / {{ total }}</span>\r\n </div>\r\n <div class=\"x-image-preview-header-center\">\r\n <x-icon type=\"fto-corner-up-left\" (click)=\"onRotate(-90)\"></x-icon>\r\n <x-icon type=\"fto-corner-up-right\" (click)=\"onRotate(90)\"></x-icon>\r\n <x-icon type=\"fto-zoom-out\" [class.x-image-preview-disabled]=\"imgScale3d.x === 1\" (click)=\"imgScale3d.x > 1 && onScale(-1)\"></x-icon>\r\n <x-icon type=\"fto-zoom-in\" (click)=\"onScale(1)\"></x-icon>\r\n </div>\r\n <div class=\"x-image-preview-header-right\">\r\n <x-icon type=\"fto-x\" x-dialog-close></x-icon>\r\n </div>\r\n </div>\r\n <div\r\n class=\"x-image-preview-wrapper\"\r\n cdkDrag\r\n [style.transform]=\"getWrapperTransform\"\r\n [cdkDragFreeDragPosition]=\"position\"\r\n (cdkDragReleased)=\"onDragReleased()\"\r\n >\r\n <img #imageRef [src]=\"activated?.src\" [attr.alt]=\"activated?.alt\" cdkDragHandle [style.transform]=\"getImgTransform\" />\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === 1\"\r\n class=\"x-image-preview-left\"\r\n (click)=\"current > 1 && onCurrentChange(-1)\"\r\n >\r\n <x-icon type=\"fto-chevron-left\"></x-icon>\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === total\"\r\n class=\"x-image-preview-right\"\r\n (click)=\"current != total && onCurrentChange(1)\"\r\n >\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n </div>\r\n</div>\r\n", styles: ["x-image-preview{display:block;width:100%;height:100%}.x-image-preview{margin:0;padding:0;width:100%;height:100%}.x-image-preview-header{display:flex;align-items:center;justify-content:center;background-color:#0003;color:#fff;position:absolute;width:100%;z-index:1;height:2.75rem}.x-image-preview-header x-icon{font-size:1.25rem;padding:.75rem;cursor:pointer;transition:background-color var(--x-animation-duration-base)}.x-image-preview-header x-icon:hover:not(.x-image-preview-disabled){background-color:#0000001a}.x-image-preview-header x-icon.x-image-preview-disabled{color:#ffffff80;cursor:default}.x-image-preview-header-center{position:absolute}.x-image-preview-header-right{position:absolute;right:0}.x-image-preview-header-left{position:absolute;left:0}.x-image-preview-current{padding:.75rem}.x-image-preview-wrapper{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:transform var(--x-animation-duration-base) ease-out 0s}.x-image-preview-wrapper>img{max-width:100%;max-height:100%;vertical-align:middle;cursor:grab;transition:transform var(--x-animation-duration-base) ease-out 0s}.x-image-preview-left,.x-image-preview-right{position:absolute;top:50%;z-index:1;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin-top:-1.375rem;color:#fff;background-color:#0003;border-radius:50%;transition:background-color var(--x-animation-duration-base);cursor:pointer;font-size:1.25rem}.x-image-preview-left:hover:not(.x-image-preview-disabled),.x-image-preview-right:hover:not(.x-image-preview-disabled){background-color:#0000001a}.x-image-preview-left.x-image-preview-disabled,.x-image-preview-right.x-image-preview-disabled{color:#ffffff80;cursor:default}.x-image-preview-left{left:1rem}.x-image-preview-right{right:1rem}.x-image-preview-portal .x-dialog-portal{background:transparent;box-shadow:none;padding:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.XIconComponent, selector: "x-icon" }, { kind: "directive", type: i2$1.XDialogCloseDirective, selector: "[x-dialog-close]" }, { kind: "directive", type: i5.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i5.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
216
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImagePreviewComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }, { token: X_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
217
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XImagePreviewComponent, selector: "x-image-preview", viewQueries: [{ propertyName: "imageRef", first: true, predicate: ["imageRef"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-image-preview\" [ngClass]=\"classMap\">\r\n <div class=\"x-image-preview-header\">\r\n <div class=\"x-image-preview-header-left\">\r\n <span class=\"x-image-preview-current\" *ngIf=\"total != 1\">{{ current }} / {{ total }}</span>\r\n </div>\r\n <div class=\"x-image-preview-header-center\">\r\n <x-icon type=\"fto-corner-up-left\" (click)=\"onRotate(-90)\"></x-icon>\r\n <x-icon type=\"fto-corner-up-right\" (click)=\"onRotate(90)\"></x-icon>\r\n <x-icon type=\"fto-zoom-out\" [class.x-image-preview-disabled]=\"imgScale3d.x === 1\" (click)=\"imgScale3d.x > 1 && onScale(-1)\"></x-icon>\r\n <x-icon type=\"fto-zoom-in\" (click)=\"onScale(1)\"></x-icon>\r\n </div>\r\n <div class=\"x-image-preview-header-right\">\r\n <x-icon type=\"fto-x\" x-dialog-close></x-icon>\r\n </div>\r\n </div>\r\n <div\r\n class=\"x-image-preview-wrapper\"\r\n cdkDrag\r\n [style.transform]=\"getWrapperTransform\"\r\n [cdkDragFreeDragPosition]=\"position\"\r\n (cdkDragReleased)=\"onDragReleased()\"\r\n >\r\n <img #imageRef [src]=\"activated?.src\" [attr.alt]=\"activated?.alt\" cdkDragHandle [style.transform]=\"getImgTransform\" />\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === 1\"\r\n class=\"x-image-preview-left\"\r\n (click)=\"current > 1 && onCurrentChange(-1)\"\r\n >\r\n <x-icon type=\"fto-chevron-left\"></x-icon>\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === total\"\r\n class=\"x-image-preview-right\"\r\n (click)=\"current != total && onCurrentChange(1)\"\r\n >\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n </div>\r\n</div>\r\n", styles: ["x-image-preview{display:block;width:100%;height:100%}.x-image-preview{margin:0;padding:0;width:100%;height:100%}.x-image-preview-header{display:flex;align-items:center;justify-content:center;background-color:#0003;color:#fff;position:absolute;width:100%;z-index:1;height:2.75rem}.x-image-preview-header x-icon{font-size:1.25rem;padding:.75rem;cursor:pointer;transition:background-color var(--x-animation-duration-base)}.x-image-preview-header x-icon:hover:not(.x-image-preview-disabled){background-color:#0000001a}.x-image-preview-header x-icon.x-image-preview-disabled{color:#ffffff80;cursor:default}.x-image-preview-header-center{position:absolute}.x-image-preview-header-right{position:absolute;right:0}.x-image-preview-header-left{position:absolute;left:0}.x-image-preview-current{padding:.75rem}.x-image-preview-wrapper{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:transform var(--x-animation-duration-base) ease-out 0s}.x-image-preview-wrapper>img{max-width:100%;max-height:100%;vertical-align:middle;cursor:grab;transition:transform var(--x-animation-duration-base) ease-out 0s}.x-image-preview-left,.x-image-preview-right{position:absolute;top:50%;z-index:1;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin-top:-1.375rem;color:#fff;background-color:#0003;border-radius:50%;transition:background-color var(--x-animation-duration-base);cursor:pointer;font-size:1.25rem}.x-image-preview-left:hover:not(.x-image-preview-disabled),.x-image-preview-right:hover:not(.x-image-preview-disabled){background-color:#0000001a}.x-image-preview-left.x-image-preview-disabled,.x-image-preview-right.x-image-preview-disabled{color:#ffffff80;cursor:default}.x-image-preview-left{left:1rem}.x-image-preview-right{right:1rem}.x-image-preview-portal .x-dialog-portal{background:transparent;box-shadow:none;padding:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.XIconComponent, selector: "x-icon" }, { kind: "directive", type: i2$1.XDialogCloseDirective, selector: "[x-dialog-close]" }, { kind: "directive", type: i5.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i5.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
218
218
  }
219
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImagePreviewComponent, decorators: [{
219
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImagePreviewComponent, decorators: [{
220
220
  type: Component,
221
221
  args: [{ selector: `${XImagePreviewPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-image-preview\" [ngClass]=\"classMap\">\r\n <div class=\"x-image-preview-header\">\r\n <div class=\"x-image-preview-header-left\">\r\n <span class=\"x-image-preview-current\" *ngIf=\"total != 1\">{{ current }} / {{ total }}</span>\r\n </div>\r\n <div class=\"x-image-preview-header-center\">\r\n <x-icon type=\"fto-corner-up-left\" (click)=\"onRotate(-90)\"></x-icon>\r\n <x-icon type=\"fto-corner-up-right\" (click)=\"onRotate(90)\"></x-icon>\r\n <x-icon type=\"fto-zoom-out\" [class.x-image-preview-disabled]=\"imgScale3d.x === 1\" (click)=\"imgScale3d.x > 1 && onScale(-1)\"></x-icon>\r\n <x-icon type=\"fto-zoom-in\" (click)=\"onScale(1)\"></x-icon>\r\n </div>\r\n <div class=\"x-image-preview-header-right\">\r\n <x-icon type=\"fto-x\" x-dialog-close></x-icon>\r\n </div>\r\n </div>\r\n <div\r\n class=\"x-image-preview-wrapper\"\r\n cdkDrag\r\n [style.transform]=\"getWrapperTransform\"\r\n [cdkDragFreeDragPosition]=\"position\"\r\n (cdkDragReleased)=\"onDragReleased()\"\r\n >\r\n <img #imageRef [src]=\"activated?.src\" [attr.alt]=\"activated?.alt\" cdkDragHandle [style.transform]=\"getImgTransform\" />\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === 1\"\r\n class=\"x-image-preview-left\"\r\n (click)=\"current > 1 && onCurrentChange(-1)\"\r\n >\r\n <x-icon type=\"fto-chevron-left\"></x-icon>\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === total\"\r\n class=\"x-image-preview-right\"\r\n (click)=\"current != total && onCurrentChange(1)\"\r\n >\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n </div>\r\n</div>\r\n", styles: ["x-image-preview{display:block;width:100%;height:100%}.x-image-preview{margin:0;padding:0;width:100%;height:100%}.x-image-preview-header{display:flex;align-items:center;justify-content:center;background-color:#0003;color:#fff;position:absolute;width:100%;z-index:1;height:2.75rem}.x-image-preview-header x-icon{font-size:1.25rem;padding:.75rem;cursor:pointer;transition:background-color var(--x-animation-duration-base)}.x-image-preview-header x-icon:hover:not(.x-image-preview-disabled){background-color:#0000001a}.x-image-preview-header x-icon.x-image-preview-disabled{color:#ffffff80;cursor:default}.x-image-preview-header-center{position:absolute}.x-image-preview-header-right{position:absolute;right:0}.x-image-preview-header-left{position:absolute;left:0}.x-image-preview-current{padding:.75rem}.x-image-preview-wrapper{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:transform var(--x-animation-duration-base) ease-out 0s}.x-image-preview-wrapper>img{max-width:100%;max-height:100%;vertical-align:middle;cursor:grab;transition:transform var(--x-animation-duration-base) ease-out 0s}.x-image-preview-left,.x-image-preview-right{position:absolute;top:50%;z-index:1;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin-top:-1.375rem;color:#fff;background-color:#0003;border-radius:50%;transition:background-color var(--x-animation-duration-base);cursor:pointer;font-size:1.25rem}.x-image-preview-left:hover:not(.x-image-preview-disabled),.x-image-preview-right:hover:not(.x-image-preview-disabled){background-color:#0000001a}.x-image-preview-left.x-image-preview-disabled,.x-image-preview-right.x-image-preview-disabled{color:#ffffff80;cursor:default}.x-image-preview-left{left:1rem}.x-image-preview-right{right:1rem}.x-image-preview-portal .x-dialog-portal{background:transparent;box-shadow:none;padding:0}\n"] }]
222
222
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }, { type: undefined, decorators: [{
@@ -237,10 +237,10 @@ class XImageGroupComponent {
237
237
  removeImage(image) {
238
238
  this.images.splice(this.images.indexOf(image), 1);
239
239
  }
240
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImageGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
241
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XImageGroupComponent, selector: "x-image-group", ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: ["x-image-group{display:inline-flex;flex-wrap:wrap}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
240
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImageGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
241
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XImageGroupComponent, selector: "x-image-group", ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: ["x-image-group{display:inline-flex;flex-wrap:wrap}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
242
242
  }
243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImageGroupComponent, decorators: [{
243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImageGroupComponent, decorators: [{
244
244
  type: Component,
245
245
  args: [{ selector: `${XImageGroupPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\r\n", styles: ["x-image-group{display:inline-flex;flex-wrap:wrap}\n"] }]
246
246
  }] });
@@ -315,10 +315,10 @@ class XImageComponent extends XImageProperty {
315
315
  this.cdr.detectChanges();
316
316
  this.load.emit(event);
317
317
  }
318
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImageComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }, { token: i2$1.XDialogService }, { token: i3$1.XI18nService }, { token: XImageGroupComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
319
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XImageComponent, selector: "x-image", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-image\" [ngClass]=\"classMap\">\r\n <img\r\n *ngIf=\"!isError && !fallback\"\r\n [hidden]=\"placeholder && !isLoaded\"\r\n class=\"x-image-img\"\r\n [src]=\"src\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n (error)=\"onError($event)\"\r\n (load)=\"onLoad($event)\"\r\n />\r\n <img *ngIf=\"placeholder && !isLoaded\" class=\"x-image-img\" [src]=\"placeholder\" [style.width]=\"width\" [style.height]=\"height\" />\r\n <div *ngIf=\"isError && !fallback\" class=\"x-image-error-icon\" [style.width]=\"width\" [style.height]=\"height\">\r\n <x-icon type=\"fto-image\"></x-icon>\r\n </div>\r\n <ng-container *xOutlet=\"previewTpl; context: { $image: this }\">\r\n <div class=\"x-image-overlay\" *ngIf=\"!isError\" (click)=\"onPreview()\">\r\n <div class=\"x-image-text\">\r\n <x-icon type=\"fto-eye\"></x-icon>\r\n <span>{{ getPreviewText }}</span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n", styles: ["x-image{display:inline-block}.x-image{margin:0;padding:0;position:relative;display:inline-block}.x-image-img{max-width:100%;max-height:100%;vertical-align:middle}.x-image-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity var(--x-animation-duration-base)}.x-image-overlay:hover{opacity:1}.x-image-text>span{margin-left:.25rem}.x-image-error{display:none}.x-image-error-icon{font-size:2rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.XIconComponent, selector: "x-icon" }, { kind: "directive", type: i7.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
318
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImageComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }, { token: i2$1.XDialogService }, { token: i3$1.XI18nService }, { token: XImageGroupComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
319
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XImageComponent, selector: "x-image", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"x-image\" [ngClass]=\"classMap\">\r\n <img\r\n *ngIf=\"!isError && !fallback\"\r\n [hidden]=\"placeholder && !isLoaded\"\r\n class=\"x-image-img\"\r\n [src]=\"src\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n (error)=\"onError($event)\"\r\n (load)=\"onLoad($event)\"\r\n />\r\n <img *ngIf=\"placeholder && !isLoaded\" class=\"x-image-img\" [src]=\"placeholder\" [style.width]=\"width\" [style.height]=\"height\" />\r\n <div *ngIf=\"isError && !fallback\" class=\"x-image-error-icon\" [style.width]=\"width\" [style.height]=\"height\">\r\n <x-icon type=\"fto-image\"></x-icon>\r\n </div>\r\n <ng-container *xOutlet=\"previewTpl; context: { $image: this }\">\r\n <div class=\"x-image-overlay\" *ngIf=\"!isError\" (click)=\"onPreview()\">\r\n <div class=\"x-image-text\">\r\n <x-icon type=\"fto-eye\"></x-icon>\r\n <span>{{ getPreviewText }}</span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n", styles: ["x-image{display:inline-block}.x-image{margin:0;padding:0;position:relative;display:inline-block}.x-image-img{max-width:100%;max-height:100%;vertical-align:middle}.x-image-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity var(--x-animation-duration-base)}.x-image-overlay:hover{opacity:1}.x-image-text>span{margin-left:.25rem}.x-image-error{display:none}.x-image-error-icon{font-size:2rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.XIconComponent, selector: "x-icon" }, { kind: "directive", type: i7.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
320
320
  }
321
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImageComponent, decorators: [{
321
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImageComponent, decorators: [{
322
322
  type: Component,
323
323
  args: [{ selector: `${XImagePrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-image\" [ngClass]=\"classMap\">\r\n <img\r\n *ngIf=\"!isError && !fallback\"\r\n [hidden]=\"placeholder && !isLoaded\"\r\n class=\"x-image-img\"\r\n [src]=\"src\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n (error)=\"onError($event)\"\r\n (load)=\"onLoad($event)\"\r\n />\r\n <img *ngIf=\"placeholder && !isLoaded\" class=\"x-image-img\" [src]=\"placeholder\" [style.width]=\"width\" [style.height]=\"height\" />\r\n <div *ngIf=\"isError && !fallback\" class=\"x-image-error-icon\" [style.width]=\"width\" [style.height]=\"height\">\r\n <x-icon type=\"fto-image\"></x-icon>\r\n </div>\r\n <ng-container *xOutlet=\"previewTpl; context: { $image: this }\">\r\n <div class=\"x-image-overlay\" *ngIf=\"!isError\" (click)=\"onPreview()\">\r\n <div class=\"x-image-text\">\r\n <x-icon type=\"fto-eye\"></x-icon>\r\n <span>{{ getPreviewText }}</span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n", styles: ["x-image{display:inline-block}.x-image{margin:0;padding:0;position:relative;display:inline-block}.x-image-img{max-width:100%;max-height:100%;vertical-align:middle}.x-image-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity var(--x-animation-duration-base)}.x-image-overlay:hover{opacity:1}.x-image-text>span{margin-left:.25rem}.x-image-error{display:none}.x-image-error-icon{font-size:2rem}\n"] }]
324
324
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }, { type: i2$1.XDialogService }, { type: i3$1.XI18nService }, { type: XImageGroupComponent, decorators: [{
@@ -326,11 +326,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImpor
326
326
  }] }]; } });
327
327
 
328
328
  class XImageModule {
329
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
330
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.5", ngImport: i0, type: XImageModule, declarations: [XImageComponent, XImageProperty, XImagePreviewComponent, XImagePreviewProperty, XImageGroupComponent], imports: [CommonModule, XIconModule, XDialogModule, XButtonModule, XI18nModule, XOutletModule, DragDropModule], exports: [XImageComponent, XImagePreviewComponent, XImageGroupComponent] }); }
331
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImageModule, imports: [CommonModule, XIconModule, XDialogModule, XButtonModule, XI18nModule, XOutletModule, DragDropModule] }); }
329
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
330
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: XImageModule, declarations: [XImageComponent, XImageProperty, XImagePreviewComponent, XImagePreviewProperty, XImageGroupComponent], imports: [CommonModule, XIconModule, XDialogModule, XButtonModule, XI18nModule, XOutletModule, DragDropModule], exports: [XImageComponent, XImagePreviewComponent, XImageGroupComponent] }); }
331
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImageModule, imports: [CommonModule, XIconModule, XDialogModule, XButtonModule, XI18nModule, XOutletModule, DragDropModule] }); }
332
332
  }
333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XImageModule, decorators: [{
333
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XImageModule, decorators: [{
334
334
  type: NgModule,
335
335
  args: [{
336
336
  declarations: [XImageComponent, XImageProperty, XImagePreviewComponent, XImagePreviewProperty, XImageGroupComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-image.mjs","sources":["../../../../lib/ng-nest/ui/image/image.property.ts","../../../../lib/ng-nest/ui/image/image-preview.component.ts","../../../../lib/ng-nest/ui/image/image-preview.component.html","../../../../lib/ng-nest/ui/image/image-group.component.ts","../../../../lib/ng-nest/ui/image/image-group.component.html","../../../../lib/ng-nest/ui/image/image.component.ts","../../../../lib/ng-nest/ui/image/image.component.html","../../../../lib/ng-nest/ui/image/image.module.ts","../../../../lib/ng-nest/ui/image/ng-nest-ui-image.ts"],"sourcesContent":["import { Input, Component, Output, EventEmitter } from '@angular/core';\r\nimport { XProperty, XTemplate, XWithConfig } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Image\r\n * @selector x-image\r\n * @decorator component\r\n */\r\nexport const XImagePrefix = 'x-image';\r\nconst X_CONFIG_NAME = 'image';\r\n\r\n/**\r\n * Image Property\r\n */\r\n@Component({ selector: `${XImagePrefix}-property`, template: '' })\r\nexport class XImageProperty extends XProperty {\r\n /**\r\n * @zh_CN 图片显示地址\r\n * @en_US Picture display address\r\n */\r\n @Input() src?: string;\r\n /**\r\n * @zh_CN 图片宽度\r\n * @en_US Picture width\r\n */\r\n @Input() width?: string;\r\n /**\r\n * @zh_CN 图片高度\r\n * @en_US Picture height\r\n */\r\n @Input() height?: string;\r\n /**\r\n * @zh_CN 图像描述\r\n * @en_US Image description\r\n */\r\n @Input() alt?: string;\r\n /**\r\n * @zh_CN 加载失败显示的地址\r\n * @en_US Load fault tolerance address\r\n */\r\n @Input() fallback?: string;\r\n /**\r\n * @zh_CN 预览文字\r\n * @en_US Preview text\r\n * @default '预览'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME) previewText?: string;\r\n /**\r\n * @zh_CN 渐进加载显示的图片\r\n * @en_US Gradually loaded the display of the display\r\n */\r\n @Input() placeholder?: string;\r\n /**\r\n * @zh_CN 自定义预览操作\r\n * @en_US Custom preview operation\r\n */\r\n @Input() previewTpl?: XTemplate;\r\n /**\r\n * @zh_CN 图片加载错误\r\n * @en_US Picture load failed\r\n */\r\n @Output() error = new EventEmitter();\r\n /**\r\n * @zh_CN 图片加载完成\r\n * @en_US Picture loading complete\r\n */\r\n @Output() load = new EventEmitter();\r\n}\r\n\r\n/**\r\n * @zh_CN 图片节点数据\r\n * @en_US Image node data\r\n */\r\nexport interface XImageNode {\r\n /**\r\n * @zh_CN 图片显示地址\r\n * @en_US Picture display address\r\n */\r\n src?: string;\r\n /**\r\n * @zh_CN 图像描述\r\n * @en_US Image description\r\n */\r\n alt?: string;\r\n /**\r\n * @zh_CN 加载失败显示的地址\r\n * @en_US Load fault tolerance address\r\n */\r\n fallback?: string;\r\n /**\r\n * @zh_CN 当前激活的图片\r\n * @en_US Current activated pictures\r\n */\r\n activated?: boolean;\r\n}\r\n\r\n/**\r\n * Image Preview\r\n * @selector x-image-preview\r\n * @decorator component\r\n */\r\nexport const XImagePreviewPrefix = 'x-image-preview';\r\n\r\n/**\r\n * Image Preview Property\r\n */\r\n@Component({ selector: `${XImagePreviewPrefix}-property`, template: '' })\r\nexport class XImagePreviewProperty extends XProperty {}\r\n\r\n/**\r\n * Image Group\r\n * @selector x-image-group\r\n * @decorator component\r\n */\r\nexport const XImageGroupPrefix = 'x-image-group';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n OnChanges,\r\n Inject,\r\n ViewChild,\r\n inject\r\n} from '@angular/core';\r\nimport { XImageNode, XImagePreviewPrefix, XImagePreviewProperty } from './image.property';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\nimport { X_DIALOG_DATA } from '@ng-nest/ui/dialog';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XImagePreviewPrefix}`,\r\n templateUrl: './image-preview.component.html',\r\n styleUrls: ['./image-preview.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XImagePreviewComponent extends XImagePreviewProperty implements OnChanges {\r\n imgScale3d = {\r\n x: 1,\r\n y: 1,\r\n z: 1\r\n };\r\n rotate = 0;\r\n\r\n position = {\r\n x: 0,\r\n y: 0\r\n };\r\n\r\n activated?: XImageNode;\r\n total = 1;\r\n current = 1;\r\n\r\n private document = inject(DOCUMENT);\r\n\r\n get getWrapperTransform() {\r\n return `translate3d(${this.position.x}px, ${this.position.y}px, 0)`;\r\n }\r\n get getImgTransform() {\r\n return `scale3d(${this.imgScale3d.x}, ${this.imgScale3d.y}, ${this.imgScale3d.z}) rotate(${this.rotate}deg)`;\r\n }\r\n\r\n @ViewChild('imageRef') imageRef!: ElementRef<HTMLImageElement>;\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef<HTMLElement>,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService,\r\n @Inject(X_DIALOG_DATA) public data: XImageNode[]\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setActivated();\r\n }\r\n\r\n ngOnChanges() {}\r\n\r\n initialization() {\r\n this.imgScale3d = {\r\n x: 1,\r\n y: 1,\r\n z: 1\r\n };\r\n this.rotate = 0;\r\n this.position = {\r\n x: 0,\r\n y: 0\r\n };\r\n }\r\n\r\n setActivated() {\r\n if (!this.data) return;\r\n if (this.data.length === 1) {\r\n this.activated = this.data[0];\r\n this.total = this.current = 1;\r\n } else {\r\n this.total = this.data.length;\r\n this.activated = this.data.find((x, index) => {\r\n if (x.activated) {\r\n this.current = index + 1;\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n }\r\n\r\n onCurrentChange(num: number) {\r\n this.current += num;\r\n this.activated = this.data[this.current - 1];\r\n this.initialization();\r\n }\r\n\r\n onRotate(deg: number) {\r\n this.rotate += deg;\r\n }\r\n\r\n onScale(zoom: number) {\r\n this.imgScale3d.x += zoom;\r\n this.imgScale3d.y += zoom;\r\n }\r\n\r\n onDragReleased() {\r\n let width = this.imageRef.nativeElement.offsetWidth * this.imgScale3d.x;\r\n let height = this.imageRef.nativeElement.offsetHeight * this.imgScale3d.x;\r\n const clientWidth = this.document.documentElement.clientWidth;\r\n const clientHeight = this.document.defaultView?.innerHeight || this.document.documentElement.clientHeight;\r\n const isRotate = this.rotate % 180 !== 0;\r\n const box = this.imageRef.nativeElement.getBoundingClientRect();\r\n const docElem = this.document.documentElement;\r\n const left =\r\n box.left +\r\n (this.document.defaultView?.pageXOffset || docElem.scrollLeft) -\r\n (docElem.clientLeft || this.document.body.clientLeft || 0);\r\n const top =\r\n box.top + (this.document.defaultView?.pageYOffset || docElem.scrollTop) - (docElem.clientTop || this.document.body.clientTop || 0);\r\n width = isRotate ? height : width;\r\n height = isRotate ? width : height;\r\n\r\n let position = { x: 0, y: 0 };\r\n if (width > clientWidth || height > clientHeight) {\r\n const x = this.fitPoint(left, width, clientWidth);\r\n const y = this.fitPoint(top, height, clientHeight);\r\n position.x = x ? x : 0;\r\n position.y = y ? y : 0;\r\n }\r\n\r\n this.position = { ...this.position, ...position };\r\n }\r\n\r\n fitPoint(start: number, size: number, clientSize: number): number | null {\r\n const startAddSize = start + size;\r\n const offsetStart = (size - clientSize) / 2;\r\n let distance: number | null = null;\r\n\r\n if (size > clientSize) {\r\n if (start > 0) {\r\n distance = offsetStart;\r\n }\r\n if (start < 0 && startAddSize < clientSize) {\r\n distance = -offsetStart;\r\n }\r\n } else {\r\n if (start < 0 || startAddSize > clientSize) {\r\n distance = start < 0 ? offsetStart : -offsetStart;\r\n }\r\n }\r\n\r\n return distance;\r\n }\r\n}\r\n","<div class=\"x-image-preview\" [ngClass]=\"classMap\">\r\n <div class=\"x-image-preview-header\">\r\n <div class=\"x-image-preview-header-left\">\r\n <span class=\"x-image-preview-current\" *ngIf=\"total != 1\">{{ current }} / {{ total }}</span>\r\n </div>\r\n <div class=\"x-image-preview-header-center\">\r\n <x-icon type=\"fto-corner-up-left\" (click)=\"onRotate(-90)\"></x-icon>\r\n <x-icon type=\"fto-corner-up-right\" (click)=\"onRotate(90)\"></x-icon>\r\n <x-icon type=\"fto-zoom-out\" [class.x-image-preview-disabled]=\"imgScale3d.x === 1\" (click)=\"imgScale3d.x > 1 && onScale(-1)\"></x-icon>\r\n <x-icon type=\"fto-zoom-in\" (click)=\"onScale(1)\"></x-icon>\r\n </div>\r\n <div class=\"x-image-preview-header-right\">\r\n <x-icon type=\"fto-x\" x-dialog-close></x-icon>\r\n </div>\r\n </div>\r\n <div\r\n class=\"x-image-preview-wrapper\"\r\n cdkDrag\r\n [style.transform]=\"getWrapperTransform\"\r\n [cdkDragFreeDragPosition]=\"position\"\r\n (cdkDragReleased)=\"onDragReleased()\"\r\n >\r\n <img #imageRef [src]=\"activated?.src\" [attr.alt]=\"activated?.alt\" cdkDragHandle [style.transform]=\"getImgTransform\" />\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === 1\"\r\n class=\"x-image-preview-left\"\r\n (click)=\"current > 1 && onCurrentChange(-1)\"\r\n >\r\n <x-icon type=\"fto-chevron-left\"></x-icon>\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === total\"\r\n class=\"x-image-preview-right\"\r\n (click)=\"current != total && onCurrentChange(1)\"\r\n >\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n </div>\r\n</div>\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\r\nimport { XImageComponent } from './image.component';\r\nimport { XImageGroupPrefix } from './image.property';\r\n\r\n@Component({\r\n selector: `${XImageGroupPrefix}`,\r\n templateUrl: './image-group.component.html',\r\n styleUrls: ['./image-group.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XImageGroupComponent {\r\n images: XImageComponent[] = [];\r\n\r\n addImage(image: XImageComponent): void {\r\n this.images.push(image);\r\n }\r\n\r\n removeImage(image: XImageComponent): void {\r\n this.images.splice(this.images.indexOf(image), 1);\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n OnInit,\r\n Optional,\r\n OnChanges,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { XImageNode, XImagePrefix, XImageProperty } from './image.property';\r\nimport { XConfigService, XIsChange } from '@ng-nest/ui/core';\r\nimport { XDialogService } from '@ng-nest/ui/dialog';\r\nimport { XImagePreviewComponent } from './image-preview.component';\r\nimport { XI18nImage, XI18nService } from '@ng-nest/ui/i18n';\r\nimport { map, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XImageGroupComponent } from './image-group.component';\r\n\r\n@Component({\r\n selector: `${XImagePrefix}`,\r\n templateUrl: './image.component.html',\r\n styleUrls: ['./image.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XImageComponent extends XImageProperty implements OnInit, OnChanges {\r\n locale: XI18nImage = {};\r\n isError = false;\r\n isLoaded = false;\r\n private _unSubject = new Subject<void>();\r\n\r\n get getPreviewText() {\r\n return this.previewText || this.locale.previewText;\r\n }\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef<HTMLElement>,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService,\r\n public dialog: XDialogService,\r\n public i18n: XI18nService,\r\n @Optional() public group: XImageGroupComponent\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.group) {\r\n this.group.addImage(this);\r\n }\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.image as XI18nImage),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n let { src } = changes;\r\n if (XIsChange(src)) {\r\n this.isLoaded = false;\r\n this.isError = false;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.group) {\r\n this.group.removeImage(this);\r\n }\r\n }\r\n\r\n onPreview() {\r\n let data: XImageNode[] = [];\r\n if (this.group) {\r\n const activatedIndex = this.group.images.indexOf(this);\r\n data = this.group.images.map((x, index) => ({ src: x.src, alt: x.alt, fallback: x.fallback, activated: index === activatedIndex }));\r\n } else {\r\n data = [{ src: this.src, alt: this.alt, fallback: this.fallback }];\r\n }\r\n this.dialog.create(XImagePreviewComponent, {\r\n width: '100%',\r\n height: '100%',\r\n className: 'x-image-preview-portal',\r\n data: data\r\n });\r\n }\r\n\r\n onError(event: Event) {\r\n this.src = this.fallback;\r\n this.isError = true;\r\n this.cdr.detectChanges();\r\n this.error.emit(event);\r\n }\r\n\r\n onLoad(event: Event) {\r\n this.isLoaded = true;\r\n this.isError = false;\r\n this.cdr.detectChanges();\r\n this.load.emit(event);\r\n }\r\n}\r\n","<div class=\"x-image\" [ngClass]=\"classMap\">\r\n <img\r\n *ngIf=\"!isError && !fallback\"\r\n [hidden]=\"placeholder && !isLoaded\"\r\n class=\"x-image-img\"\r\n [src]=\"src\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n (error)=\"onError($event)\"\r\n (load)=\"onLoad($event)\"\r\n />\r\n <img *ngIf=\"placeholder && !isLoaded\" class=\"x-image-img\" [src]=\"placeholder\" [style.width]=\"width\" [style.height]=\"height\" />\r\n <div *ngIf=\"isError && !fallback\" class=\"x-image-error-icon\" [style.width]=\"width\" [style.height]=\"height\">\r\n <x-icon type=\"fto-image\"></x-icon>\r\n </div>\r\n <ng-container *xOutlet=\"previewTpl; context: { $image: this }\">\r\n <div class=\"x-image-overlay\" *ngIf=\"!isError\" (click)=\"onPreview()\">\r\n <div class=\"x-image-text\">\r\n <x-icon type=\"fto-eye\"></x-icon>\r\n <span>{{ getPreviewText }}</span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XImageComponent } from './image.component';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XImagePreviewProperty, XImageProperty } from './image.property';\r\nimport { XDialogModule } from '@ng-nest/ui/dialog';\r\nimport { XImagePreviewComponent } from './image-preview.component';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XI18nModule } from '@ng-nest/ui/i18n';\r\nimport { XImageGroupComponent } from './image-group.component';\r\nimport { XOutletModule } from '@ng-nest/ui/outlet';\r\n\r\n@NgModule({\r\n declarations: [XImageComponent, XImageProperty, XImagePreviewComponent, XImagePreviewProperty, XImageGroupComponent],\r\n exports: [XImageComponent, XImagePreviewComponent, XImageGroupComponent],\r\n imports: [CommonModule, XIconModule, XDialogModule, XButtonModule, XI18nModule, XOutletModule, DragDropModule]\r\n})\r\nexport class XImageModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i4","i2","i3","i4.XImageGroupComponent","i5","i6"],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-image.mjs","sources":["../../../../lib/ng-nest/ui/image/image.property.ts","../../../../lib/ng-nest/ui/image/image-preview.component.ts","../../../../lib/ng-nest/ui/image/image-preview.component.html","../../../../lib/ng-nest/ui/image/image-group.component.ts","../../../../lib/ng-nest/ui/image/image-group.component.html","../../../../lib/ng-nest/ui/image/image.component.ts","../../../../lib/ng-nest/ui/image/image.component.html","../../../../lib/ng-nest/ui/image/image.module.ts","../../../../lib/ng-nest/ui/image/ng-nest-ui-image.ts"],"sourcesContent":["import { Input, Component, Output, EventEmitter } from '@angular/core';\r\nimport { XProperty, XTemplate, XWithConfig } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Image\r\n * @selector x-image\r\n * @decorator component\r\n */\r\nexport const XImagePrefix = 'x-image';\r\nconst X_CONFIG_NAME = 'image';\r\n\r\n/**\r\n * Image Property\r\n */\r\n@Component({ selector: `${XImagePrefix}-property`, template: '' })\r\nexport class XImageProperty extends XProperty {\r\n /**\r\n * @zh_CN 图片显示地址\r\n * @en_US Picture display address\r\n */\r\n @Input() src?: string;\r\n /**\r\n * @zh_CN 图片宽度\r\n * @en_US Picture width\r\n */\r\n @Input() width?: string;\r\n /**\r\n * @zh_CN 图片高度\r\n * @en_US Picture height\r\n */\r\n @Input() height?: string;\r\n /**\r\n * @zh_CN 图像描述\r\n * @en_US Image description\r\n */\r\n @Input() alt?: string;\r\n /**\r\n * @zh_CN 加载失败显示的地址\r\n * @en_US Load fault tolerance address\r\n */\r\n @Input() fallback?: string;\r\n /**\r\n * @zh_CN 预览文字\r\n * @en_US Preview text\r\n * @default '预览'\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME) previewText?: string;\r\n /**\r\n * @zh_CN 渐进加载显示的图片\r\n * @en_US Gradually loaded the display of the display\r\n */\r\n @Input() placeholder?: string;\r\n /**\r\n * @zh_CN 自定义预览操作\r\n * @en_US Custom preview operation\r\n */\r\n @Input() previewTpl?: XTemplate;\r\n /**\r\n * @zh_CN 图片加载错误\r\n * @en_US Picture load failed\r\n */\r\n @Output() error = new EventEmitter();\r\n /**\r\n * @zh_CN 图片加载完成\r\n * @en_US Picture loading complete\r\n */\r\n @Output() load = new EventEmitter();\r\n}\r\n\r\n/**\r\n * @zh_CN 图片节点数据\r\n * @en_US Image node data\r\n */\r\nexport interface XImageNode {\r\n /**\r\n * @zh_CN 图片显示地址\r\n * @en_US Picture display address\r\n */\r\n src?: string;\r\n /**\r\n * @zh_CN 图像描述\r\n * @en_US Image description\r\n */\r\n alt?: string;\r\n /**\r\n * @zh_CN 加载失败显示的地址\r\n * @en_US Load fault tolerance address\r\n */\r\n fallback?: string;\r\n /**\r\n * @zh_CN 当前激活的图片\r\n * @en_US Current activated pictures\r\n */\r\n activated?: boolean;\r\n}\r\n\r\n/**\r\n * Image Preview\r\n * @selector x-image-preview\r\n * @decorator component\r\n */\r\nexport const XImagePreviewPrefix = 'x-image-preview';\r\n\r\n/**\r\n * Image Preview Property\r\n */\r\n@Component({ selector: `${XImagePreviewPrefix}-property`, template: '' })\r\nexport class XImagePreviewProperty extends XProperty {}\r\n\r\n/**\r\n * Image Group\r\n * @selector x-image-group\r\n * @decorator component\r\n */\r\nexport const XImageGroupPrefix = 'x-image-group';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n OnChanges,\r\n Inject,\r\n ViewChild,\r\n inject\r\n} from '@angular/core';\r\nimport { XImageNode, XImagePreviewPrefix, XImagePreviewProperty } from './image.property';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\nimport { X_DIALOG_DATA } from '@ng-nest/ui/dialog';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XImagePreviewPrefix}`,\r\n templateUrl: './image-preview.component.html',\r\n styleUrls: ['./image-preview.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XImagePreviewComponent extends XImagePreviewProperty implements OnChanges {\r\n imgScale3d = {\r\n x: 1,\r\n y: 1,\r\n z: 1\r\n };\r\n rotate = 0;\r\n\r\n position = {\r\n x: 0,\r\n y: 0\r\n };\r\n\r\n activated?: XImageNode;\r\n total = 1;\r\n current = 1;\r\n\r\n private document = inject(DOCUMENT);\r\n\r\n get getWrapperTransform() {\r\n return `translate3d(${this.position.x}px, ${this.position.y}px, 0)`;\r\n }\r\n get getImgTransform() {\r\n return `scale3d(${this.imgScale3d.x}, ${this.imgScale3d.y}, ${this.imgScale3d.z}) rotate(${this.rotate}deg)`;\r\n }\r\n\r\n @ViewChild('imageRef') imageRef!: ElementRef<HTMLImageElement>;\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef<HTMLElement>,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService,\r\n @Inject(X_DIALOG_DATA) public data: XImageNode[]\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setActivated();\r\n }\r\n\r\n ngOnChanges() {}\r\n\r\n initialization() {\r\n this.imgScale3d = {\r\n x: 1,\r\n y: 1,\r\n z: 1\r\n };\r\n this.rotate = 0;\r\n this.position = {\r\n x: 0,\r\n y: 0\r\n };\r\n }\r\n\r\n setActivated() {\r\n if (!this.data) return;\r\n if (this.data.length === 1) {\r\n this.activated = this.data[0];\r\n this.total = this.current = 1;\r\n } else {\r\n this.total = this.data.length;\r\n this.activated = this.data.find((x, index) => {\r\n if (x.activated) {\r\n this.current = index + 1;\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n }\r\n\r\n onCurrentChange(num: number) {\r\n this.current += num;\r\n this.activated = this.data[this.current - 1];\r\n this.initialization();\r\n }\r\n\r\n onRotate(deg: number) {\r\n this.rotate += deg;\r\n }\r\n\r\n onScale(zoom: number) {\r\n this.imgScale3d.x += zoom;\r\n this.imgScale3d.y += zoom;\r\n }\r\n\r\n onDragReleased() {\r\n let width = this.imageRef.nativeElement.offsetWidth * this.imgScale3d.x;\r\n let height = this.imageRef.nativeElement.offsetHeight * this.imgScale3d.x;\r\n const clientWidth = this.document.documentElement.clientWidth;\r\n const clientHeight = this.document.defaultView?.innerHeight || this.document.documentElement.clientHeight;\r\n const isRotate = this.rotate % 180 !== 0;\r\n const box = this.imageRef.nativeElement.getBoundingClientRect();\r\n const docElem = this.document.documentElement;\r\n const left =\r\n box.left +\r\n (this.document.defaultView?.pageXOffset || docElem.scrollLeft) -\r\n (docElem.clientLeft || this.document.body.clientLeft || 0);\r\n const top =\r\n box.top + (this.document.defaultView?.pageYOffset || docElem.scrollTop) - (docElem.clientTop || this.document.body.clientTop || 0);\r\n width = isRotate ? height : width;\r\n height = isRotate ? width : height;\r\n\r\n let position = { x: 0, y: 0 };\r\n if (width > clientWidth || height > clientHeight) {\r\n const x = this.fitPoint(left, width, clientWidth);\r\n const y = this.fitPoint(top, height, clientHeight);\r\n position.x = x ? x : 0;\r\n position.y = y ? y : 0;\r\n }\r\n\r\n this.position = { ...this.position, ...position };\r\n }\r\n\r\n fitPoint(start: number, size: number, clientSize: number): number | null {\r\n const startAddSize = start + size;\r\n const offsetStart = (size - clientSize) / 2;\r\n let distance: number | null = null;\r\n\r\n if (size > clientSize) {\r\n if (start > 0) {\r\n distance = offsetStart;\r\n }\r\n if (start < 0 && startAddSize < clientSize) {\r\n distance = -offsetStart;\r\n }\r\n } else {\r\n if (start < 0 || startAddSize > clientSize) {\r\n distance = start < 0 ? offsetStart : -offsetStart;\r\n }\r\n }\r\n\r\n return distance;\r\n }\r\n}\r\n","<div class=\"x-image-preview\" [ngClass]=\"classMap\">\r\n <div class=\"x-image-preview-header\">\r\n <div class=\"x-image-preview-header-left\">\r\n <span class=\"x-image-preview-current\" *ngIf=\"total != 1\">{{ current }} / {{ total }}</span>\r\n </div>\r\n <div class=\"x-image-preview-header-center\">\r\n <x-icon type=\"fto-corner-up-left\" (click)=\"onRotate(-90)\"></x-icon>\r\n <x-icon type=\"fto-corner-up-right\" (click)=\"onRotate(90)\"></x-icon>\r\n <x-icon type=\"fto-zoom-out\" [class.x-image-preview-disabled]=\"imgScale3d.x === 1\" (click)=\"imgScale3d.x > 1 && onScale(-1)\"></x-icon>\r\n <x-icon type=\"fto-zoom-in\" (click)=\"onScale(1)\"></x-icon>\r\n </div>\r\n <div class=\"x-image-preview-header-right\">\r\n <x-icon type=\"fto-x\" x-dialog-close></x-icon>\r\n </div>\r\n </div>\r\n <div\r\n class=\"x-image-preview-wrapper\"\r\n cdkDrag\r\n [style.transform]=\"getWrapperTransform\"\r\n [cdkDragFreeDragPosition]=\"position\"\r\n (cdkDragReleased)=\"onDragReleased()\"\r\n >\r\n <img #imageRef [src]=\"activated?.src\" [attr.alt]=\"activated?.alt\" cdkDragHandle [style.transform]=\"getImgTransform\" />\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === 1\"\r\n class=\"x-image-preview-left\"\r\n (click)=\"current > 1 && onCurrentChange(-1)\"\r\n >\r\n <x-icon type=\"fto-chevron-left\"></x-icon>\r\n </div>\r\n <div\r\n *ngIf=\"data && data.length > 1\"\r\n [class.x-image-preview-disabled]=\"current === total\"\r\n class=\"x-image-preview-right\"\r\n (click)=\"current != total && onCurrentChange(1)\"\r\n >\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n </div>\r\n</div>\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\r\nimport { XImageComponent } from './image.component';\r\nimport { XImageGroupPrefix } from './image.property';\r\n\r\n@Component({\r\n selector: `${XImageGroupPrefix}`,\r\n templateUrl: './image-group.component.html',\r\n styleUrls: ['./image-group.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XImageGroupComponent {\r\n images: XImageComponent[] = [];\r\n\r\n addImage(image: XImageComponent): void {\r\n this.images.push(image);\r\n }\r\n\r\n removeImage(image: XImageComponent): void {\r\n this.images.splice(this.images.indexOf(image), 1);\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n OnInit,\r\n Optional,\r\n OnChanges,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { XImageNode, XImagePrefix, XImageProperty } from './image.property';\r\nimport { XConfigService, XIsChange } from '@ng-nest/ui/core';\r\nimport { XDialogService } from '@ng-nest/ui/dialog';\r\nimport { XImagePreviewComponent } from './image-preview.component';\r\nimport { XI18nImage, XI18nService } from '@ng-nest/ui/i18n';\r\nimport { map, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XImageGroupComponent } from './image-group.component';\r\n\r\n@Component({\r\n selector: `${XImagePrefix}`,\r\n templateUrl: './image.component.html',\r\n styleUrls: ['./image.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XImageComponent extends XImageProperty implements OnInit, OnChanges {\r\n locale: XI18nImage = {};\r\n isError = false;\r\n isLoaded = false;\r\n private _unSubject = new Subject<void>();\r\n\r\n get getPreviewText() {\r\n return this.previewText || this.locale.previewText;\r\n }\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef<HTMLElement>,\r\n public cdr: ChangeDetectorRef,\r\n public configService: XConfigService,\r\n public dialog: XDialogService,\r\n public i18n: XI18nService,\r\n @Optional() public group: XImageGroupComponent\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.group) {\r\n this.group.addImage(this);\r\n }\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.image as XI18nImage),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n let { src } = changes;\r\n if (XIsChange(src)) {\r\n this.isLoaded = false;\r\n this.isError = false;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.group) {\r\n this.group.removeImage(this);\r\n }\r\n }\r\n\r\n onPreview() {\r\n let data: XImageNode[] = [];\r\n if (this.group) {\r\n const activatedIndex = this.group.images.indexOf(this);\r\n data = this.group.images.map((x, index) => ({ src: x.src, alt: x.alt, fallback: x.fallback, activated: index === activatedIndex }));\r\n } else {\r\n data = [{ src: this.src, alt: this.alt, fallback: this.fallback }];\r\n }\r\n this.dialog.create(XImagePreviewComponent, {\r\n width: '100%',\r\n height: '100%',\r\n className: 'x-image-preview-portal',\r\n data: data\r\n });\r\n }\r\n\r\n onError(event: Event) {\r\n this.src = this.fallback;\r\n this.isError = true;\r\n this.cdr.detectChanges();\r\n this.error.emit(event);\r\n }\r\n\r\n onLoad(event: Event) {\r\n this.isLoaded = true;\r\n this.isError = false;\r\n this.cdr.detectChanges();\r\n this.load.emit(event);\r\n }\r\n}\r\n","<div class=\"x-image\" [ngClass]=\"classMap\">\r\n <img\r\n *ngIf=\"!isError && !fallback\"\r\n [hidden]=\"placeholder && !isLoaded\"\r\n class=\"x-image-img\"\r\n [src]=\"src\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n (error)=\"onError($event)\"\r\n (load)=\"onLoad($event)\"\r\n />\r\n <img *ngIf=\"placeholder && !isLoaded\" class=\"x-image-img\" [src]=\"placeholder\" [style.width]=\"width\" [style.height]=\"height\" />\r\n <div *ngIf=\"isError && !fallback\" class=\"x-image-error-icon\" [style.width]=\"width\" [style.height]=\"height\">\r\n <x-icon type=\"fto-image\"></x-icon>\r\n </div>\r\n <ng-container *xOutlet=\"previewTpl; context: { $image: this }\">\r\n <div class=\"x-image-overlay\" *ngIf=\"!isError\" (click)=\"onPreview()\">\r\n <div class=\"x-image-text\">\r\n <x-icon type=\"fto-eye\"></x-icon>\r\n <span>{{ getPreviewText }}</span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XImageComponent } from './image.component';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XImagePreviewProperty, XImageProperty } from './image.property';\r\nimport { XDialogModule } from '@ng-nest/ui/dialog';\r\nimport { XImagePreviewComponent } from './image-preview.component';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XI18nModule } from '@ng-nest/ui/i18n';\r\nimport { XImageGroupComponent } from './image-group.component';\r\nimport { XOutletModule } from '@ng-nest/ui/outlet';\r\n\r\n@NgModule({\r\n declarations: [XImageComponent, XImageProperty, XImagePreviewComponent, XImagePreviewProperty, XImageGroupComponent],\r\n exports: [XImageComponent, XImagePreviewComponent, XImageGroupComponent],\r\n imports: [CommonModule, XIconModule, XDialogModule, XButtonModule, XI18nModule, XOutletModule, DragDropModule]\r\n})\r\nexport class XImageModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i4","i2","i3","i4.XImageGroupComponent","i5","i6"],"mappings":"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"}
@@ -16,13 +16,13 @@ const X_CONFIG_NAME = 'inner';
16
16
  * Inner Property
17
17
  */
18
18
  class XInnerProperty extends XProperty {
19
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XInnerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
20
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XInnerProperty, selector: "x-inner-property", inputs: { padding: "padding" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
19
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XInnerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
20
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XInnerProperty, selector: "x-inner-property", inputs: { padding: "padding" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
21
21
  }
22
22
  __decorate([
23
23
  XWithConfig(X_CONFIG_NAME, '1rem')
24
24
  ], XInnerProperty.prototype, "padding", void 0);
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XInnerProperty, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XInnerProperty, decorators: [{
26
26
  type: Component,
27
27
  args: [{ selector: `${XInnerPrefix}-property`, template: '' }]
28
28
  }], propDecorators: { padding: [{
@@ -47,20 +47,20 @@ class XInnerComponent extends XInnerProperty {
47
47
  setStyle() {
48
48
  this.renderer.setStyle(this._ele, 'padding', this.padding);
49
49
  }
50
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XInnerComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
51
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XInnerComponent, selector: "x-inner", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-inner{margin:0;padding:0;display:block;width:100%;height:100%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
50
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XInnerComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
51
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XInnerComponent, selector: "x-inner", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-inner{margin:0;padding:0;display:block;width:100%;height:100%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
52
52
  }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XInnerComponent, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XInnerComponent, decorators: [{
54
54
  type: Component,
55
55
  args: [{ selector: `${XInnerPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\r\n", styles: [".x-inner{margin:0;padding:0;display:block;width:100%;height:100%}\n"] }]
56
56
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.XConfigService }]; } });
57
57
 
58
58
  class XInnerModule {
59
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XInnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
60
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.5", ngImport: i0, type: XInnerModule, declarations: [XInnerComponent, XInnerProperty], imports: [CommonModule], exports: [XInnerComponent] }); }
61
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XInnerModule, imports: [CommonModule] }); }
59
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XInnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
60
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: XInnerModule, declarations: [XInnerComponent, XInnerProperty], imports: [CommonModule], exports: [XInnerComponent] }); }
61
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XInnerModule, imports: [CommonModule] }); }
62
62
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XInnerModule, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XInnerModule, decorators: [{
64
64
  type: NgModule,
65
65
  args: [{
66
66
  declarations: [XInnerComponent, XInnerProperty],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-inner.mjs","sources":["../../../../lib/ng-nest/ui/inner/inner.property.ts","../../../../lib/ng-nest/ui/inner/inner.component.ts","../../../../lib/ng-nest/ui/inner/inner.component.html","../../../../lib/ng-nest/ui/inner/inner.module.ts","../../../../lib/ng-nest/ui/inner/ng-nest-ui-inner.ts"],"sourcesContent":["import { XProperty, XWithConfig } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Inner\r\n * @selector x-inner\r\n * @decorator component\r\n */\r\nexport const XInnerPrefix = 'x-inner';\r\nconst X_CONFIG_NAME = 'inner';\r\n\r\n/**\r\n * Inner Property\r\n */\r\n@Component({ selector: `${XInnerPrefix}-property`, template: '' })\r\nexport class XInnerProperty extends XProperty {\r\n /**\r\n * @zh_CN 内边距\r\n * @en_US Inner padding\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '1rem') padding?: string;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n Renderer2,\r\n ElementRef,\r\n OnChanges,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { XInnerPrefix, XInnerProperty } from './inner.property';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XInnerPrefix}`,\r\n templateUrl: './inner.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XInnerComponent extends XInnerProperty implements OnInit, OnChanges {\r\n private _ele: HTMLElement;\r\n\r\n constructor(private renderer: Renderer2, private elementRef: ElementRef<HTMLElement>, public configService: XConfigService) {\r\n super();\r\n this.renderer.addClass(this.elementRef.nativeElement, XInnerPrefix);\r\n this._ele = this.elementRef.nativeElement;\r\n }\r\n\r\n ngOnInit() {\r\n this.setStyle();\r\n }\r\n\r\n ngOnChanges(_changes: SimpleChanges): void {\r\n this.setStyle();\r\n }\r\n\r\n setStyle() {\r\n this.renderer.setStyle(this._ele, 'padding', this.padding);\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XInnerComponent } from './inner.component';\r\nimport { XInnerProperty } from './inner.property';\r\n\r\n@NgModule({\r\n declarations: [XInnerComponent, XInnerProperty],\r\n exports: [XInnerComponent],\r\n imports: [CommonModule]\r\n})\r\nexport class XInnerModule {}\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-inner.mjs","sources":["../../../../lib/ng-nest/ui/inner/inner.property.ts","../../../../lib/ng-nest/ui/inner/inner.component.ts","../../../../lib/ng-nest/ui/inner/inner.component.html","../../../../lib/ng-nest/ui/inner/inner.module.ts","../../../../lib/ng-nest/ui/inner/ng-nest-ui-inner.ts"],"sourcesContent":["import { XProperty, XWithConfig } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Inner\r\n * @selector x-inner\r\n * @decorator component\r\n */\r\nexport const XInnerPrefix = 'x-inner';\r\nconst X_CONFIG_NAME = 'inner';\r\n\r\n/**\r\n * Inner Property\r\n */\r\n@Component({ selector: `${XInnerPrefix}-property`, template: '' })\r\nexport class XInnerProperty extends XProperty {\r\n /**\r\n * @zh_CN 内边距\r\n * @en_US Inner padding\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '1rem') padding?: string;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n Renderer2,\r\n ElementRef,\r\n OnChanges,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { XInnerPrefix, XInnerProperty } from './inner.property';\r\nimport { XConfigService } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XInnerPrefix}`,\r\n templateUrl: './inner.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XInnerComponent extends XInnerProperty implements OnInit, OnChanges {\r\n private _ele: HTMLElement;\r\n\r\n constructor(private renderer: Renderer2, private elementRef: ElementRef<HTMLElement>, public configService: XConfigService) {\r\n super();\r\n this.renderer.addClass(this.elementRef.nativeElement, XInnerPrefix);\r\n this._ele = this.elementRef.nativeElement;\r\n }\r\n\r\n ngOnInit() {\r\n this.setStyle();\r\n }\r\n\r\n ngOnChanges(_changes: SimpleChanges): void {\r\n this.setStyle();\r\n }\r\n\r\n setStyle() {\r\n this.renderer.setStyle(this._ele, 'padding', this.padding);\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XInnerComponent } from './inner.component';\r\nimport { XInnerProperty } from './inner.property';\r\n\r\n@NgModule({\r\n declarations: [XInnerComponent, XInnerProperty],\r\n exports: [XInnerComponent],\r\n imports: [CommonModule]\r\n})\r\nexport class XInnerModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}