@ng-nest/ui 13.0.2 → 13.0.6

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 (575) hide show
  1. package/alert/alert.component.d.ts +2 -1
  2. package/carousel/carousel-panel.component.d.ts +2 -3
  3. package/core/config/config.d.ts +7 -0
  4. package/core/interfaces/layout.type.d.ts +1 -1
  5. package/date-picker/date-picker.property.d.ts +51 -1
  6. package/date-picker/date-range-portal.component.d.ts +7 -5
  7. package/date-picker/date-range.component.d.ts +5 -1
  8. package/date-picker/examples/en_US/default/disabled/README.md +1 -1
  9. package/date-picker/examples/en_US/default/time/README.md +6 -0
  10. package/date-picker/examples/zh_CN/default/disabled/README.md +1 -1
  11. package/date-picker/examples/zh_CN/default/time/README.md +6 -0
  12. package/date-picker/picker-date.component.d.ts +3 -0
  13. package/dialog/dialog-portal.component.d.ts +18 -0
  14. package/dialog/dialog-portal.directives.d.ts +24 -0
  15. package/dialog/dialog-ref.d.ts +9 -0
  16. package/dialog/dialog.module.d.ts +13 -11
  17. package/dialog/dialog.property.d.ts +85 -7
  18. package/dialog/dialog.service.d.ts +19 -0
  19. package/dialog/examples/en_US/default/service/README.md +6 -0
  20. package/dialog/examples/zh_CN/default/service/README.md +6 -0
  21. package/dialog/public-api.d.ts +4 -0
  22. package/drawer/drawer-container.component.d.ts +8 -0
  23. package/drawer/drawer-portal.component.d.ts +18 -0
  24. package/drawer/drawer-portal.directives.d.ts +19 -0
  25. package/drawer/drawer-ref.d.ts +9 -0
  26. package/drawer/drawer.component.d.ts +10 -3
  27. package/drawer/drawer.module.d.ts +9 -6
  28. package/drawer/drawer.property.d.ts +97 -2
  29. package/drawer/drawer.service.d.ts +19 -0
  30. package/drawer/examples/en_US/default/container/README.md +6 -0
  31. package/drawer/examples/en_US/default/service/README.md +6 -0
  32. package/drawer/examples/zh_CN/default/container/README.md +6 -0
  33. package/drawer/examples/zh_CN/default/service/README.md +6 -0
  34. package/drawer/public-api.d.ts +6 -0
  35. package/esm2020/affix/affix.component.mjs +3 -3
  36. package/esm2020/affix/affix.module.mjs +4 -4
  37. package/esm2020/affix/affix.property.mjs +3 -3
  38. package/esm2020/alert/alert.component.mjs +11 -6
  39. package/esm2020/alert/alert.module.mjs +4 -4
  40. package/esm2020/alert/alert.property.mjs +3 -3
  41. package/esm2020/anchor/anchor.component.mjs +3 -3
  42. package/esm2020/anchor/anchor.module.mjs +4 -4
  43. package/esm2020/anchor/anchor.property.mjs +3 -3
  44. package/esm2020/api/api.component.mjs +3 -3
  45. package/esm2020/api/api.module.mjs +4 -4
  46. package/esm2020/auto-complete/auto-complete-portal.component.mjs +3 -3
  47. package/esm2020/auto-complete/auto-complete.component.mjs +3 -3
  48. package/esm2020/auto-complete/auto-complete.module.mjs +6 -7
  49. package/esm2020/auto-complete/auto-complete.property.mjs +3 -3
  50. package/esm2020/avatar/avatar.component.mjs +3 -3
  51. package/esm2020/avatar/avatar.module.mjs +4 -4
  52. package/esm2020/avatar/avatar.property.mjs +3 -3
  53. package/esm2020/back-top/back-top.component.mjs +3 -3
  54. package/esm2020/back-top/back-top.module.mjs +4 -4
  55. package/esm2020/back-top/back-top.property.mjs +3 -3
  56. package/esm2020/badge/badge.component.mjs +3 -3
  57. package/esm2020/badge/badge.module.mjs +4 -4
  58. package/esm2020/badge/badge.property.mjs +3 -3
  59. package/esm2020/base-form/base-form.component.mjs +3 -3
  60. package/esm2020/base-form/base-form.module.mjs +4 -4
  61. package/esm2020/base-form/base-form.property.mjs +3 -3
  62. package/esm2020/border/border.component.mjs +3 -3
  63. package/esm2020/border/border.module.mjs +4 -4
  64. package/esm2020/button/button.component.mjs +4 -4
  65. package/esm2020/button/button.module.mjs +4 -4
  66. package/esm2020/button/button.property.mjs +6 -6
  67. package/esm2020/button/buttons.component.mjs +3 -3
  68. package/esm2020/calendar/calendar.component.mjs +3 -3
  69. package/esm2020/calendar/calendar.module.mjs +4 -4
  70. package/esm2020/calendar/calendar.property.mjs +3 -3
  71. package/esm2020/card/card.component.mjs +4 -4
  72. package/esm2020/card/card.module.mjs +4 -4
  73. package/esm2020/card/card.property.mjs +3 -3
  74. package/esm2020/carousel/carousel-panel.component.mjs +14 -13
  75. package/esm2020/carousel/carousel.component.mjs +3 -3
  76. package/esm2020/carousel/carousel.module.mjs +4 -4
  77. package/esm2020/carousel/carousel.property.mjs +6 -6
  78. package/esm2020/cascade/cascade-portal.component.mjs +3 -3
  79. package/esm2020/cascade/cascade.component.mjs +3 -3
  80. package/esm2020/cascade/cascade.module.mjs +6 -7
  81. package/esm2020/cascade/cascade.property.mjs +3 -3
  82. package/esm2020/checkbox/checkbox.component.mjs +4 -4
  83. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  84. package/esm2020/checkbox/checkbox.property.mjs +3 -3
  85. package/esm2020/collapse/collapse-panel.component.mjs +3 -3
  86. package/esm2020/collapse/collapse.component.mjs +3 -3
  87. package/esm2020/collapse/collapse.module.mjs +4 -4
  88. package/esm2020/collapse/collapse.property.mjs +6 -6
  89. package/esm2020/color/color.component.mjs +3 -3
  90. package/esm2020/color/color.module.mjs +4 -4
  91. package/esm2020/color/color.property.mjs +3 -3
  92. package/esm2020/color-picker/color-picker-portal.component.mjs +3 -3
  93. package/esm2020/color-picker/color-picker.component.mjs +3 -3
  94. package/esm2020/color-picker/color-picker.module.mjs +6 -7
  95. package/esm2020/color-picker/color-picker.property.mjs +3 -3
  96. package/esm2020/comment/comment-reply.component.mjs +3 -3
  97. package/esm2020/comment/comment.component.mjs +3 -3
  98. package/esm2020/comment/comment.module.mjs +4 -4
  99. package/esm2020/comment/comment.property.mjs +6 -6
  100. package/esm2020/container/aside.component.mjs +3 -3
  101. package/esm2020/container/container.component.mjs +3 -3
  102. package/esm2020/container/container.module.mjs +4 -4
  103. package/esm2020/container/container.property.mjs +12 -12
  104. package/esm2020/container/footer.component.mjs +4 -4
  105. package/esm2020/container/header.component.mjs +4 -4
  106. package/esm2020/container/main.component.mjs +4 -4
  107. package/esm2020/core/config/config.mjs +1 -1
  108. package/esm2020/core/config/config.service.mjs +3 -3
  109. package/esm2020/core/interfaces/layout.type.mjs +1 -1
  110. package/esm2020/core/services/http.service.mjs +3 -3
  111. package/esm2020/core/services/preloading-strategy.service.mjs +3 -3
  112. package/esm2020/core/services/storage.service.mjs +3 -3
  113. package/esm2020/core/theme/theme.service.mjs +3 -3
  114. package/esm2020/crumb/crumb.component.mjs +3 -3
  115. package/esm2020/crumb/crumb.module.mjs +4 -4
  116. package/esm2020/crumb/crumb.property.mjs +3 -3
  117. package/esm2020/date-picker/date-picker-portal.component.mjs +3 -3
  118. package/esm2020/date-picker/date-picker.component.mjs +3 -3
  119. package/esm2020/date-picker/date-picker.module.mjs +6 -7
  120. package/esm2020/date-picker/date-picker.property.mjs +86 -16
  121. package/esm2020/date-picker/date-range-portal.component.mjs +47 -28
  122. package/esm2020/date-picker/date-range.component.mjs +33 -10
  123. package/esm2020/date-picker/picker-date.component.mjs +33 -6
  124. package/esm2020/date-picker/picker-month.component.mjs +3 -3
  125. package/esm2020/date-picker/picker-year.component.mjs +3 -3
  126. package/esm2020/description/description-item.component.mjs +3 -3
  127. package/esm2020/description/description.component.mjs +3 -3
  128. package/esm2020/description/description.module.mjs +4 -4
  129. package/esm2020/description/description.property.mjs +6 -6
  130. package/esm2020/dialog/dialog-portal.component.mjs +52 -0
  131. package/esm2020/dialog/dialog-portal.directives.mjs +73 -0
  132. package/esm2020/dialog/dialog-ref.mjs +17 -0
  133. package/esm2020/dialog/dialog.component.mjs +7 -7
  134. package/esm2020/dialog/dialog.module.mjs +39 -9
  135. package/esm2020/dialog/dialog.property.mjs +21 -20
  136. package/esm2020/dialog/dialog.service.mjs +67 -0
  137. package/esm2020/dialog/public-api.mjs +5 -1
  138. package/esm2020/doc/doc.component.mjs +4 -4
  139. package/esm2020/doc/doc.module.mjs +4 -4
  140. package/esm2020/drawer/drawer-container.component.mjs +29 -0
  141. package/esm2020/drawer/drawer-portal.component.mjs +52 -0
  142. package/esm2020/drawer/drawer-portal.directives.mjs +57 -0
  143. package/esm2020/drawer/drawer-ref.mjs +17 -0
  144. package/esm2020/drawer/drawer.component.mjs +55 -19
  145. package/esm2020/drawer/drawer.module.mjs +42 -9
  146. package/esm2020/drawer/drawer.property.mjs +42 -8
  147. package/esm2020/drawer/drawer.service.mjs +65 -0
  148. package/esm2020/drawer/public-api.mjs +7 -1
  149. package/esm2020/dropdown/dropdown-portal.component.mjs +3 -3
  150. package/esm2020/dropdown/dropdown.component.mjs +3 -3
  151. package/esm2020/dropdown/dropdown.module.mjs +6 -7
  152. package/esm2020/dropdown/dropdown.property.mjs +3 -3
  153. package/esm2020/empty/empty.component.mjs +3 -3
  154. package/esm2020/empty/empty.module.mjs +4 -4
  155. package/esm2020/empty/empty.property.mjs +3 -3
  156. package/esm2020/examples/examples.component.mjs +3 -3
  157. package/esm2020/examples/examples.module.mjs +4 -4
  158. package/esm2020/find/find.component.mjs +15 -6
  159. package/esm2020/find/find.module.mjs +4 -4
  160. package/esm2020/find/find.property.mjs +20 -4
  161. package/esm2020/form/control.component.mjs +3 -3
  162. package/esm2020/form/form.component.mjs +3 -3
  163. package/esm2020/form/form.module.mjs +4 -4
  164. package/esm2020/form/form.property.mjs +6 -6
  165. package/esm2020/highlight/highlight.component.mjs +3 -3
  166. package/esm2020/highlight/highlight.module.mjs +4 -4
  167. package/esm2020/highlight/highlight.property.mjs +3 -3
  168. package/esm2020/i18n/i18n.directive.mjs +3 -3
  169. package/esm2020/i18n/i18n.module.mjs +4 -4
  170. package/esm2020/i18n/i18n.pipe.mjs +3 -3
  171. package/esm2020/i18n/i18n.service.mjs +3 -3
  172. package/esm2020/icon/icon.component.mjs +3 -3
  173. package/esm2020/icon/icon.module.mjs +4 -4
  174. package/esm2020/icon/icon.property.mjs +3 -3
  175. package/esm2020/icon/icon.service.mjs +3 -3
  176. package/esm2020/inner/inner.component.mjs +3 -3
  177. package/esm2020/inner/inner.module.mjs +4 -4
  178. package/esm2020/inner/inner.property.mjs +3 -3
  179. package/esm2020/input/input-group.component.mjs +3 -3
  180. package/esm2020/input/input.component.mjs +6 -5
  181. package/esm2020/input/input.module.mjs +4 -4
  182. package/esm2020/input/input.property.mjs +6 -6
  183. package/esm2020/input-number/input-number.component.mjs +3 -3
  184. package/esm2020/input-number/input-number.module.mjs +4 -4
  185. package/esm2020/input-number/input-number.property.mjs +3 -3
  186. package/esm2020/layout/col.component.mjs +3 -3
  187. package/esm2020/layout/layout.module.mjs +4 -4
  188. package/esm2020/layout/layout.property.mjs +6 -6
  189. package/esm2020/layout/row.component.mjs +3 -3
  190. package/esm2020/link/link.component.mjs +3 -3
  191. package/esm2020/link/link.module.mjs +4 -4
  192. package/esm2020/link/link.property.mjs +3 -3
  193. package/esm2020/list/list-option.component.mjs +3 -3
  194. package/esm2020/list/list.component.mjs +3 -3
  195. package/esm2020/list/list.module.mjs +4 -4
  196. package/esm2020/list/list.property.mjs +6 -6
  197. package/esm2020/loading/loading.component.mjs +3 -3
  198. package/esm2020/loading/loading.module.mjs +4 -4
  199. package/esm2020/loading/loading.property.mjs +3 -3
  200. package/esm2020/menu/menu-node.component.mjs +3 -3
  201. package/esm2020/menu/menu.component.mjs +5 -5
  202. package/esm2020/menu/menu.module.mjs +4 -4
  203. package/esm2020/menu/menu.property.mjs +6 -6
  204. package/esm2020/message/message-ref.mjs +12 -0
  205. package/esm2020/message/message.component.mjs +6 -6
  206. package/esm2020/message/message.module.mjs +4 -4
  207. package/esm2020/message/message.property.mjs +2 -2
  208. package/esm2020/message/message.service.mjs +39 -18
  209. package/esm2020/message/public-api.mjs +2 -1
  210. package/esm2020/message-box/message-box.component.mjs +3 -3
  211. package/esm2020/message-box/message-box.module.mjs +4 -4
  212. package/esm2020/message-box/message-box.service.mjs +3 -3
  213. package/esm2020/notification/notification.component.mjs +3 -3
  214. package/esm2020/notification/notification.module.mjs +4 -4
  215. package/esm2020/notification/notification.service.mjs +3 -3
  216. package/esm2020/outlet/outlet.directive.mjs +3 -3
  217. package/esm2020/outlet/outlet.module.mjs +4 -4
  218. package/esm2020/page-header/page-header.component.mjs +3 -3
  219. package/esm2020/page-header/page-header.module.mjs +4 -4
  220. package/esm2020/page-header/page-header.property.mjs +3 -3
  221. package/esm2020/pagination/pagination.component.mjs +4 -4
  222. package/esm2020/pagination/pagination.module.mjs +4 -4
  223. package/esm2020/pagination/pagination.property.mjs +3 -3
  224. package/esm2020/pattern/pattern.component.mjs +3 -3
  225. package/esm2020/pattern/pattern.module.mjs +4 -4
  226. package/esm2020/popconfirm/popconfirm.component.mjs +28 -7
  227. package/esm2020/popconfirm/popconfirm.module.mjs +4 -4
  228. package/esm2020/popconfirm/popconfirm.property.mjs +12 -5
  229. package/esm2020/popover/popover-portal.component.mjs +3 -3
  230. package/esm2020/popover/popover.directive.mjs +11 -5
  231. package/esm2020/popover/popover.module.mjs +6 -7
  232. package/esm2020/popover/popover.property.mjs +9 -4
  233. package/esm2020/portal/portal.module.mjs +6 -5
  234. package/esm2020/portal/portal.service.mjs +11 -12
  235. package/esm2020/progress/progress.component.mjs +179 -18
  236. package/esm2020/progress/progress.module.mjs +4 -4
  237. package/esm2020/progress/progress.property.mjs +52 -5
  238. package/esm2020/radio/radio.component.mjs +4 -4
  239. package/esm2020/radio/radio.module.mjs +4 -4
  240. package/esm2020/radio/radio.property.mjs +3 -3
  241. package/esm2020/rate/rate.component.mjs +4 -4
  242. package/esm2020/rate/rate.module.mjs +4 -4
  243. package/esm2020/rate/rate.property.mjs +3 -3
  244. package/esm2020/result/result.component.mjs +4 -4
  245. package/esm2020/result/result.module.mjs +4 -4
  246. package/esm2020/result/result.property.mjs +3 -3
  247. package/esm2020/ripple/ripple.directive.mjs +3 -3
  248. package/esm2020/ripple/ripple.module.mjs +4 -4
  249. package/esm2020/ripple/ripple.property.mjs +3 -3
  250. package/esm2020/select/select-portal.component.mjs +3 -3
  251. package/esm2020/select/select.component.mjs +3 -3
  252. package/esm2020/select/select.module.mjs +6 -7
  253. package/esm2020/select/select.property.mjs +3 -3
  254. package/esm2020/skeleton/skeleton.component.mjs +3 -3
  255. package/esm2020/skeleton/skeleton.module.mjs +4 -4
  256. package/esm2020/skeleton/skeleton.property.mjs +3 -3
  257. package/esm2020/slider/slider.component.mjs +3 -3
  258. package/esm2020/slider/slider.module.mjs +4 -4
  259. package/esm2020/slider/slider.property.mjs +3 -3
  260. package/esm2020/slider-select/slider-select.component.mjs +4 -4
  261. package/esm2020/slider-select/slider-select.module.mjs +4 -4
  262. package/esm2020/slider-select/slider-select.property.mjs +3 -3
  263. package/esm2020/statistic/countdown.component.mjs +3 -3
  264. package/esm2020/statistic/statistic.component.mjs +3 -3
  265. package/esm2020/statistic/statistic.module.mjs +4 -4
  266. package/esm2020/statistic/statistic.property.mjs +6 -6
  267. package/esm2020/steps/steps.component.mjs +18 -11
  268. package/esm2020/steps/steps.module.mjs +4 -4
  269. package/esm2020/steps/steps.property.mjs +10 -5
  270. package/esm2020/switch/switch.component.mjs +4 -4
  271. package/esm2020/switch/switch.module.mjs +4 -4
  272. package/esm2020/switch/switch.property.mjs +3 -3
  273. package/esm2020/table/drag.directive.mjs +3 -3
  274. package/esm2020/table/table-body.component.mjs +3 -3
  275. package/esm2020/table/table-foot.component.mjs +3 -3
  276. package/esm2020/table/table-head.component.mjs +3 -3
  277. package/esm2020/table/table.component.mjs +3 -3
  278. package/esm2020/table/table.module.mjs +4 -4
  279. package/esm2020/table/table.property.mjs +13 -13
  280. package/esm2020/tabs/tab-content.component.mjs +3 -3
  281. package/esm2020/tabs/tab.component.mjs +3 -3
  282. package/esm2020/tabs/tabs.component.mjs +3 -3
  283. package/esm2020/tabs/tabs.module.mjs +4 -4
  284. package/esm2020/tabs/tabs.property.mjs +6 -6
  285. package/esm2020/tag/tag.component.mjs +4 -4
  286. package/esm2020/tag/tag.module.mjs +4 -4
  287. package/esm2020/tag/tag.property.mjs +3 -3
  288. package/esm2020/text-retract/text-retract.component.mjs +3 -3
  289. package/esm2020/text-retract/text-retract.module.mjs +4 -4
  290. package/esm2020/text-retract/text-retract.property.mjs +3 -3
  291. package/esm2020/textarea/textarea.component.mjs +4 -4
  292. package/esm2020/textarea/textarea.module.mjs +4 -4
  293. package/esm2020/textarea/textarea.property.mjs +3 -3
  294. package/esm2020/theme/theme.component.mjs +3 -3
  295. package/esm2020/theme/theme.module.mjs +4 -4
  296. package/esm2020/theme/theme.property.mjs +3 -3
  297. package/esm2020/time-ago/time-ago.module.mjs +4 -4
  298. package/esm2020/time-ago/time-ago.pipe.mjs +3 -3
  299. package/esm2020/time-picker/time-picker-frame.component.mjs +4 -4
  300. package/esm2020/time-picker/time-picker-portal.component.mjs +3 -3
  301. package/esm2020/time-picker/time-picker.component.mjs +3 -3
  302. package/esm2020/time-picker/time-picker.module.mjs +6 -7
  303. package/esm2020/time-picker/time-picker.property.mjs +3 -3
  304. package/esm2020/time-range/time-range.module.mjs +4 -4
  305. package/esm2020/time-range/time-range.pipe.mjs +3 -3
  306. package/esm2020/timeline/timeline.component.mjs +3 -3
  307. package/esm2020/timeline/timeline.module.mjs +4 -4
  308. package/esm2020/timeline/timeline.property.mjs +3 -3
  309. package/esm2020/tooltip/tooltip-portal.component.mjs +3 -3
  310. package/esm2020/tooltip/tooltip.directive.mjs +3 -3
  311. package/esm2020/tooltip/tooltip.module.mjs +6 -7
  312. package/esm2020/tooltip/tooltip.property.mjs +3 -3
  313. package/esm2020/transfer/transfer.component.mjs +3 -3
  314. package/esm2020/transfer/transfer.module.mjs +4 -4
  315. package/esm2020/transfer/transfer.property.mjs +3 -3
  316. package/esm2020/tree/tree-node.component.mjs +3 -3
  317. package/esm2020/tree/tree.component.mjs +3 -3
  318. package/esm2020/tree/tree.module.mjs +4 -4
  319. package/esm2020/tree/tree.property.mjs +6 -6
  320. package/esm2020/tree-file/tree-file.component.mjs +4 -4
  321. package/esm2020/tree-file/tree-file.module.mjs +4 -4
  322. package/esm2020/tree-file/tree-file.property.mjs +3 -3
  323. package/esm2020/typography/typography.component.mjs +3 -3
  324. package/esm2020/typography/typography.module.mjs +4 -4
  325. package/esm2020/typography/typography.property.mjs +3 -3
  326. package/esm2020/upload/upload-portal.component.mjs +4 -4
  327. package/esm2020/upload/upload.component.mjs +3 -3
  328. package/esm2020/upload/upload.module.mjs +4 -4
  329. package/esm2020/upload/upload.property.mjs +3 -3
  330. package/fesm2015/ng-nest-ui-affix.mjs +10 -10
  331. package/fesm2015/ng-nest-ui-alert.mjs +17 -12
  332. package/fesm2015/ng-nest-ui-alert.mjs.map +1 -1
  333. package/fesm2015/ng-nest-ui-anchor.mjs +10 -10
  334. package/fesm2015/ng-nest-ui-api.mjs +7 -7
  335. package/fesm2015/ng-nest-ui-auto-complete.mjs +14 -15
  336. package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
  337. package/fesm2015/ng-nest-ui-avatar.mjs +10 -10
  338. package/fesm2015/ng-nest-ui-back-top.mjs +10 -10
  339. package/fesm2015/ng-nest-ui-badge.mjs +10 -10
  340. package/fesm2015/ng-nest-ui-base-form.mjs +10 -10
  341. package/fesm2015/ng-nest-ui-border.mjs +7 -7
  342. package/fesm2015/ng-nest-ui-button.mjs +17 -17
  343. package/fesm2015/ng-nest-ui-calendar.mjs +10 -10
  344. package/fesm2015/ng-nest-ui-card.mjs +11 -11
  345. package/fesm2015/ng-nest-ui-carousel.mjs +26 -26
  346. package/fesm2015/ng-nest-ui-carousel.mjs.map +1 -1
  347. package/fesm2015/ng-nest-ui-cascade.mjs +14 -15
  348. package/fesm2015/ng-nest-ui-cascade.mjs.map +1 -1
  349. package/fesm2015/ng-nest-ui-checkbox.mjs +11 -11
  350. package/fesm2015/ng-nest-ui-collapse.mjs +16 -16
  351. package/fesm2015/ng-nest-ui-color-picker.mjs +14 -15
  352. package/fesm2015/ng-nest-ui-color-picker.mjs.map +1 -1
  353. package/fesm2015/ng-nest-ui-color.mjs +10 -10
  354. package/fesm2015/ng-nest-ui-comment.mjs +16 -16
  355. package/fesm2015/ng-nest-ui-container.mjs +34 -34
  356. package/fesm2015/ng-nest-ui-core.mjs +15 -15
  357. package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
  358. package/fesm2015/ng-nest-ui-crumb.mjs +10 -10
  359. package/fesm2015/ng-nest-ui-date-picker.mjs +212 -74
  360. package/fesm2015/ng-nest-ui-date-picker.mjs.map +1 -1
  361. package/fesm2015/ng-nest-ui-description.mjs +16 -16
  362. package/fesm2015/ng-nest-ui-dialog.mjs +259 -35
  363. package/fesm2015/ng-nest-ui-dialog.mjs.map +1 -1
  364. package/fesm2015/ng-nest-ui-doc.mjs +8 -8
  365. package/fesm2015/ng-nest-ui-drawer.mjs +334 -31
  366. package/fesm2015/ng-nest-ui-drawer.mjs.map +1 -1
  367. package/fesm2015/ng-nest-ui-dropdown.mjs +14 -15
  368. package/fesm2015/ng-nest-ui-dropdown.mjs.map +1 -1
  369. package/fesm2015/ng-nest-ui-empty.mjs +10 -10
  370. package/fesm2015/ng-nest-ui-examples.mjs +7 -7
  371. package/fesm2015/ng-nest-ui-find.mjs +37 -12
  372. package/fesm2015/ng-nest-ui-find.mjs.map +1 -1
  373. package/fesm2015/ng-nest-ui-form.mjs +16 -16
  374. package/fesm2015/ng-nest-ui-highlight.mjs +10 -10
  375. package/fesm2015/ng-nest-ui-i18n.mjs +13 -13
  376. package/fesm2015/ng-nest-ui-icon.mjs +13 -13
  377. package/fesm2015/ng-nest-ui-inner.mjs +10 -10
  378. package/fesm2015/ng-nest-ui-input-number.mjs +10 -10
  379. package/fesm2015/ng-nest-ui-input.mjs +18 -17
  380. package/fesm2015/ng-nest-ui-input.mjs.map +1 -1
  381. package/fesm2015/ng-nest-ui-layout.mjs +16 -16
  382. package/fesm2015/ng-nest-ui-link.mjs +10 -10
  383. package/fesm2015/ng-nest-ui-list.mjs +16 -16
  384. package/fesm2015/ng-nest-ui-loading.mjs +10 -10
  385. package/fesm2015/ng-nest-ui-menu.mjs +17 -17
  386. package/fesm2015/ng-nest-ui-menu.mjs.map +1 -1
  387. package/fesm2015/ng-nest-ui-message-box.mjs +10 -10
  388. package/fesm2015/ng-nest-ui-message.mjs +60 -27
  389. package/fesm2015/ng-nest-ui-message.mjs.map +1 -1
  390. package/fesm2015/ng-nest-ui-notification.mjs +10 -10
  391. package/fesm2015/ng-nest-ui-outlet.mjs +7 -7
  392. package/fesm2015/ng-nest-ui-page-header.mjs +10 -10
  393. package/fesm2015/ng-nest-ui-pagination.mjs +11 -11
  394. package/fesm2015/ng-nest-ui-pattern.mjs +7 -7
  395. package/fesm2015/ng-nest-ui-popconfirm.mjs +42 -14
  396. package/fesm2015/ng-nest-ui-popconfirm.mjs.map +1 -1
  397. package/fesm2015/ng-nest-ui-popover.mjs +26 -16
  398. package/fesm2015/ng-nest-ui-popover.mjs.map +1 -1
  399. package/fesm2015/ng-nest-ui-portal.mjs +15 -15
  400. package/fesm2015/ng-nest-ui-portal.mjs.map +1 -1
  401. package/fesm2015/ng-nest-ui-progress.mjs +234 -26
  402. package/fesm2015/ng-nest-ui-progress.mjs.map +1 -1
  403. package/fesm2015/ng-nest-ui-radio.mjs +11 -11
  404. package/fesm2015/ng-nest-ui-rate.mjs +11 -11
  405. package/fesm2015/ng-nest-ui-result.mjs +11 -11
  406. package/fesm2015/ng-nest-ui-ripple.mjs +10 -10
  407. package/fesm2015/ng-nest-ui-select.mjs +14 -15
  408. package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
  409. package/fesm2015/ng-nest-ui-skeleton.mjs +10 -10
  410. package/fesm2015/ng-nest-ui-slider-select.mjs +11 -11
  411. package/fesm2015/ng-nest-ui-slider.mjs +10 -10
  412. package/fesm2015/ng-nest-ui-statistic.mjs +16 -16
  413. package/fesm2015/ng-nest-ui-steps.mjs +30 -18
  414. package/fesm2015/ng-nest-ui-steps.mjs.map +1 -1
  415. package/fesm2015/ng-nest-ui-switch.mjs +11 -11
  416. package/fesm2015/ng-nest-ui-table.mjs +31 -31
  417. package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
  418. package/fesm2015/ng-nest-ui-tabs.mjs +19 -19
  419. package/fesm2015/ng-nest-ui-tag.mjs +11 -11
  420. package/fesm2015/ng-nest-ui-text-retract.mjs +10 -10
  421. package/fesm2015/ng-nest-ui-textarea.mjs +11 -11
  422. package/fesm2015/ng-nest-ui-theme.mjs +10 -10
  423. package/fesm2015/ng-nest-ui-time-ago.mjs +7 -7
  424. package/fesm2015/ng-nest-ui-time-picker.mjs +18 -19
  425. package/fesm2015/ng-nest-ui-time-picker.mjs.map +1 -1
  426. package/fesm2015/ng-nest-ui-time-range.mjs +7 -7
  427. package/fesm2015/ng-nest-ui-timeline.mjs +10 -10
  428. package/fesm2015/ng-nest-ui-tooltip.mjs +14 -15
  429. package/fesm2015/ng-nest-ui-tooltip.mjs.map +1 -1
  430. package/fesm2015/ng-nest-ui-transfer.mjs +10 -10
  431. package/fesm2015/ng-nest-ui-tree-file.mjs +11 -11
  432. package/fesm2015/ng-nest-ui-tree.mjs +16 -16
  433. package/fesm2015/ng-nest-ui-typography.mjs +10 -10
  434. package/fesm2015/ng-nest-ui-upload.mjs +14 -14
  435. package/fesm2020/ng-nest-ui-affix.mjs +10 -10
  436. package/fesm2020/ng-nest-ui-alert.mjs +17 -12
  437. package/fesm2020/ng-nest-ui-alert.mjs.map +1 -1
  438. package/fesm2020/ng-nest-ui-anchor.mjs +10 -10
  439. package/fesm2020/ng-nest-ui-api.mjs +7 -7
  440. package/fesm2020/ng-nest-ui-auto-complete.mjs +14 -15
  441. package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
  442. package/fesm2020/ng-nest-ui-avatar.mjs +10 -10
  443. package/fesm2020/ng-nest-ui-back-top.mjs +10 -10
  444. package/fesm2020/ng-nest-ui-badge.mjs +10 -10
  445. package/fesm2020/ng-nest-ui-base-form.mjs +10 -10
  446. package/fesm2020/ng-nest-ui-border.mjs +7 -7
  447. package/fesm2020/ng-nest-ui-button.mjs +17 -17
  448. package/fesm2020/ng-nest-ui-calendar.mjs +10 -10
  449. package/fesm2020/ng-nest-ui-card.mjs +11 -11
  450. package/fesm2020/ng-nest-ui-carousel.mjs +26 -25
  451. package/fesm2020/ng-nest-ui-carousel.mjs.map +1 -1
  452. package/fesm2020/ng-nest-ui-cascade.mjs +14 -15
  453. package/fesm2020/ng-nest-ui-cascade.mjs.map +1 -1
  454. package/fesm2020/ng-nest-ui-checkbox.mjs +11 -11
  455. package/fesm2020/ng-nest-ui-collapse.mjs +16 -16
  456. package/fesm2020/ng-nest-ui-color-picker.mjs +14 -15
  457. package/fesm2020/ng-nest-ui-color-picker.mjs.map +1 -1
  458. package/fesm2020/ng-nest-ui-color.mjs +10 -10
  459. package/fesm2020/ng-nest-ui-comment.mjs +16 -16
  460. package/fesm2020/ng-nest-ui-container.mjs +34 -34
  461. package/fesm2020/ng-nest-ui-core.mjs +15 -15
  462. package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
  463. package/fesm2020/ng-nest-ui-crumb.mjs +10 -10
  464. package/fesm2020/ng-nest-ui-date-picker.mjs +212 -74
  465. package/fesm2020/ng-nest-ui-date-picker.mjs.map +1 -1
  466. package/fesm2020/ng-nest-ui-description.mjs +16 -16
  467. package/fesm2020/ng-nest-ui-dialog.mjs +257 -35
  468. package/fesm2020/ng-nest-ui-dialog.mjs.map +1 -1
  469. package/fesm2020/ng-nest-ui-doc.mjs +8 -8
  470. package/fesm2020/ng-nest-ui-drawer.mjs +330 -31
  471. package/fesm2020/ng-nest-ui-drawer.mjs.map +1 -1
  472. package/fesm2020/ng-nest-ui-dropdown.mjs +14 -15
  473. package/fesm2020/ng-nest-ui-dropdown.mjs.map +1 -1
  474. package/fesm2020/ng-nest-ui-empty.mjs +10 -10
  475. package/fesm2020/ng-nest-ui-examples.mjs +7 -7
  476. package/fesm2020/ng-nest-ui-find.mjs +37 -12
  477. package/fesm2020/ng-nest-ui-find.mjs.map +1 -1
  478. package/fesm2020/ng-nest-ui-form.mjs +16 -16
  479. package/fesm2020/ng-nest-ui-highlight.mjs +10 -10
  480. package/fesm2020/ng-nest-ui-i18n.mjs +13 -13
  481. package/fesm2020/ng-nest-ui-icon.mjs +13 -13
  482. package/fesm2020/ng-nest-ui-inner.mjs +10 -10
  483. package/fesm2020/ng-nest-ui-input-number.mjs +10 -10
  484. package/fesm2020/ng-nest-ui-input.mjs +18 -17
  485. package/fesm2020/ng-nest-ui-input.mjs.map +1 -1
  486. package/fesm2020/ng-nest-ui-layout.mjs +16 -16
  487. package/fesm2020/ng-nest-ui-link.mjs +10 -10
  488. package/fesm2020/ng-nest-ui-list.mjs +16 -16
  489. package/fesm2020/ng-nest-ui-loading.mjs +10 -10
  490. package/fesm2020/ng-nest-ui-menu.mjs +17 -17
  491. package/fesm2020/ng-nest-ui-menu.mjs.map +1 -1
  492. package/fesm2020/ng-nest-ui-message-box.mjs +10 -10
  493. package/fesm2020/ng-nest-ui-message.mjs +59 -27
  494. package/fesm2020/ng-nest-ui-message.mjs.map +1 -1
  495. package/fesm2020/ng-nest-ui-notification.mjs +10 -10
  496. package/fesm2020/ng-nest-ui-outlet.mjs +7 -7
  497. package/fesm2020/ng-nest-ui-page-header.mjs +10 -10
  498. package/fesm2020/ng-nest-ui-pagination.mjs +11 -11
  499. package/fesm2020/ng-nest-ui-pattern.mjs +7 -7
  500. package/fesm2020/ng-nest-ui-popconfirm.mjs +42 -14
  501. package/fesm2020/ng-nest-ui-popconfirm.mjs.map +1 -1
  502. package/fesm2020/ng-nest-ui-popover.mjs +26 -16
  503. package/fesm2020/ng-nest-ui-popover.mjs.map +1 -1
  504. package/fesm2020/ng-nest-ui-portal.mjs +15 -15
  505. package/fesm2020/ng-nest-ui-portal.mjs.map +1 -1
  506. package/fesm2020/ng-nest-ui-progress.mjs +233 -25
  507. package/fesm2020/ng-nest-ui-progress.mjs.map +1 -1
  508. package/fesm2020/ng-nest-ui-radio.mjs +11 -11
  509. package/fesm2020/ng-nest-ui-rate.mjs +11 -11
  510. package/fesm2020/ng-nest-ui-result.mjs +11 -11
  511. package/fesm2020/ng-nest-ui-ripple.mjs +10 -10
  512. package/fesm2020/ng-nest-ui-select.mjs +14 -15
  513. package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
  514. package/fesm2020/ng-nest-ui-skeleton.mjs +10 -10
  515. package/fesm2020/ng-nest-ui-slider-select.mjs +11 -11
  516. package/fesm2020/ng-nest-ui-slider.mjs +10 -10
  517. package/fesm2020/ng-nest-ui-statistic.mjs +16 -16
  518. package/fesm2020/ng-nest-ui-steps.mjs +30 -18
  519. package/fesm2020/ng-nest-ui-steps.mjs.map +1 -1
  520. package/fesm2020/ng-nest-ui-switch.mjs +11 -11
  521. package/fesm2020/ng-nest-ui-table.mjs +31 -31
  522. package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
  523. package/fesm2020/ng-nest-ui-tabs.mjs +19 -19
  524. package/fesm2020/ng-nest-ui-tag.mjs +11 -11
  525. package/fesm2020/ng-nest-ui-text-retract.mjs +10 -10
  526. package/fesm2020/ng-nest-ui-textarea.mjs +11 -11
  527. package/fesm2020/ng-nest-ui-theme.mjs +10 -10
  528. package/fesm2020/ng-nest-ui-time-ago.mjs +7 -7
  529. package/fesm2020/ng-nest-ui-time-picker.mjs +18 -19
  530. package/fesm2020/ng-nest-ui-time-picker.mjs.map +1 -1
  531. package/fesm2020/ng-nest-ui-time-range.mjs +7 -7
  532. package/fesm2020/ng-nest-ui-timeline.mjs +10 -10
  533. package/fesm2020/ng-nest-ui-tooltip.mjs +14 -15
  534. package/fesm2020/ng-nest-ui-tooltip.mjs.map +1 -1
  535. package/fesm2020/ng-nest-ui-transfer.mjs +10 -10
  536. package/fesm2020/ng-nest-ui-tree-file.mjs +11 -11
  537. package/fesm2020/ng-nest-ui-tree.mjs +16 -16
  538. package/fesm2020/ng-nest-ui-typography.mjs +10 -10
  539. package/fesm2020/ng-nest-ui-upload.mjs +14 -14
  540. package/find/find.property.d.ts +31 -1
  541. package/layout/examples/en_US/default/flex/README.md +1 -1
  542. package/layout/examples/zh_CN/default/flex/README.md +1 -1
  543. package/message/examples/en_US/default/loading/README.md +6 -0
  544. package/message/examples/zh_CN/default/loading/README.md +6 -0
  545. package/message/message-ref.d.ts +8 -0
  546. package/message/message.component.d.ts +3 -3
  547. package/message/message.property.d.ts +24 -4
  548. package/message/message.service.d.ts +4 -1
  549. package/message/public-api.d.ts +1 -0
  550. package/package.json +7 -7
  551. package/popconfirm/examples/en_US/default/async-close/README.md +6 -0
  552. package/popconfirm/examples/en_US/default/condition/README.md +6 -0
  553. package/popconfirm/examples/zh_CN/default/async-close/README.md +6 -0
  554. package/popconfirm/examples/zh_CN/default/condition/README.md +6 -0
  555. package/popconfirm/popconfirm.component.d.ts +6 -2
  556. package/popconfirm/popconfirm.property.d.ts +13 -2
  557. package/popover/popover.property.d.ts +6 -1
  558. package/portal/portal.module.d.ts +1 -1
  559. package/portal/portal.service.d.ts +2 -3
  560. package/progress/examples/en_US/default/circle/README.md +6 -0
  561. package/progress/examples/en_US/default/dashboard/README.md +6 -0
  562. package/progress/examples/en_US/default/gradient/README.md +6 -0
  563. package/progress/examples/en_US/default/steps/README.md +6 -0
  564. package/progress/examples/en_US/default/subsection/README.md +6 -0
  565. package/progress/examples/zh_CN/default/circle/README.md +6 -0
  566. package/progress/examples/zh_CN/default/dashboard/README.md +6 -0
  567. package/progress/examples/zh_CN/default/gradient/README.md +6 -0
  568. package/progress/examples/zh_CN/default/steps/README.md +6 -0
  569. package/progress/examples/zh_CN/default/subsection/README.md +6 -0
  570. package/progress/progress.component.d.ts +31 -3
  571. package/progress/progress.property.d.ts +80 -5
  572. package/steps/examples/en_US/default/node-status/README.md +6 -0
  573. package/steps/examples/zh_CN/default/node-status/README.md +6 -0
  574. package/steps/steps.property.d.ts +7 -2
  575. package/table/table.property.d.ts +1 -1
@@ -13,12 +13,12 @@ export const XRowPrefix = 'x-row';
13
13
  */
14
14
  export class XRowProperty extends XProperty {
15
15
  }
16
- /** @nocollapse */ /** @nocollapse */ XRowProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XRowProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
17
- /** @nocollapse */ /** @nocollapse */ XRowProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XRowProperty, selector: "ng-component", inputs: { space: "space", justify: "justify", align: "align" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
16
+ /** @nocollapse */ /** @nocollapse */ XRowProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XRowProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
17
+ /** @nocollapse */ /** @nocollapse */ XRowProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XRowProperty, selector: "ng-component", inputs: { space: "space", justify: "justify", align: "align" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
18
18
  __decorate([
19
19
  XInputNumber()
20
20
  ], XRowProperty.prototype, "space", void 0);
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XRowProperty, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XRowProperty, decorators: [{
22
22
  type: Component,
23
23
  args: [{ template: '' }]
24
24
  }], propDecorators: { space: [{
@@ -39,8 +39,8 @@ export const XColPrefix = 'x-col';
39
39
  */
40
40
  export class XColProperty extends XProperty {
41
41
  }
42
- /** @nocollapse */ /** @nocollapse */ XColProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XColProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
43
- /** @nocollapse */ /** @nocollapse */ XColProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XColProperty, selector: "ng-component", inputs: { span: "span", offset: "offset", xs: "xs", sm: "sm", md: "md", lg: "lg", xl: "xl", inherit: "inherit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
42
+ /** @nocollapse */ /** @nocollapse */ XColProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XColProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
43
+ /** @nocollapse */ /** @nocollapse */ XColProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XColProperty, selector: "ng-component", inputs: { span: "span", offset: "offset", xs: "xs", sm: "sm", md: "md", lg: "lg", xl: "xl", inherit: "inherit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
44
44
  __decorate([
45
45
  XInputNumber()
46
46
  ], XColProperty.prototype, "span", void 0);
@@ -65,7 +65,7 @@ __decorate([
65
65
  __decorate([
66
66
  XInputBoolean()
67
67
  ], XColProperty.prototype, "inherit", void 0);
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XColProperty, decorators: [{
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XColProperty, decorators: [{
69
69
  type: Component,
70
70
  args: [{ template: '' }]
71
71
  }], propDecorators: { span: [{
@@ -33,9 +33,9 @@ export class XRowComponent extends XRowProperty {
33
33
  this.renderer.addClass(this.elementRef.nativeElement, `x-align-${this.align}`);
34
34
  }
35
35
  }
36
- /** @nocollapse */ /** @nocollapse */ XRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XRowComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
37
- /** @nocollapse */ /** @nocollapse */ XRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XRowComponent, selector: "x-row", host: { properties: { "class.x-flex": "this.getFlex" } }, usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".x-row{display:block;position:relative;height:auto}.x-row:before,.x-row:after{content:\"\";display:table;clear:both}.x-row.x-flex{display:flex}.x-row.x-justify-start{justify-content:flex-start}.x-row.x-justify-center{justify-content:center}.x-row.x-justify-end{justify-content:flex-end}.x-row.x-justify-space-between{justify-content:space-between}.x-row.x-justify-space-around{justify-content:space-around}.x-row.x-align-start{align-items:flex-start}.x-row.x-align-center{align-items:center}.x-row.x-align-end{align-items:flex-end}.x-row.x-direction-column{flex-direction:column}.x-row.x-direction-column-reverse{flex-direction:column-reverse}.x-row.x-direction-row{flex-direction:row}.x-row.x-direction-row-reverse{flex-direction:row-reverse}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XRowComponent, decorators: [{
36
+ /** @nocollapse */ /** @nocollapse */ XRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XRowComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
37
+ /** @nocollapse */ /** @nocollapse */ XRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XRowComponent, selector: "x-row", host: { properties: { "class.x-flex": "this.getFlex" } }, usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".x-row{display:block;position:relative;height:auto}.x-row:before,.x-row:after{content:\"\";display:table;clear:both}.x-row.x-flex{display:flex}.x-row.x-justify-start{justify-content:flex-start}.x-row.x-justify-center{justify-content:center}.x-row.x-justify-end{justify-content:flex-end}.x-row.x-justify-space-between{justify-content:space-between}.x-row.x-justify-space-around{justify-content:space-around}.x-row.x-align-start{align-items:flex-start}.x-row.x-align-center{align-items:center}.x-row.x-align-end{align-items:flex-end}.x-row.x-direction-column{flex-direction:column}.x-row.x-direction-column-reverse{flex-direction:column-reverse}.x-row.x-direction-row{flex-direction:row}.x-row.x-direction-row-reverse{flex-direction:row-reverse}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XRowComponent, decorators: [{
39
39
  type: Component,
40
40
  args: [{ selector: `${XRowPrefix}`, template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".x-row{display:block;position:relative;height:auto}.x-row:before,.x-row:after{content:\"\";display:table;clear:both}.x-row.x-flex{display:flex}.x-row.x-justify-start{justify-content:flex-start}.x-row.x-justify-center{justify-content:center}.x-row.x-justify-end{justify-content:flex-end}.x-row.x-justify-space-between{justify-content:space-between}.x-row.x-justify-space-around{justify-content:space-around}.x-row.x-align-start{align-items:flex-start}.x-row.x-align-center{align-items:center}.x-row.x-align-end{align-items:flex-end}.x-row.x-direction-column{flex-direction:column}.x-row.x-direction-column-reverse{flex-direction:column-reverse}.x-row.x-direction-row{flex-direction:row}.x-row.x-direction-row-reverse{flex-direction:row-reverse}\n"] }]
41
41
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { getFlex: [{
@@ -28,9 +28,9 @@ export class XLinkComponent extends XLinkProperty {
28
28
  this.classMap[`${XLinkPrefix}-${this.type}`] = this.type ? true : false;
29
29
  }
30
30
  }
31
- /** @nocollapse */ /** @nocollapse */ XLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLinkComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
32
- /** @nocollapse */ /** @nocollapse */ XLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XLinkComponent, selector: "x-link", host: { listeners: { "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" } }, usesInheritance: true, ngImport: i0, template: "<a\r\n class=\"x-link\"\r\n [ngClass]=\"classMap\"\r\n [class.x-link-disabled]=\"disabled\"\r\n [class.x-link-underline]=\"underline && !disabled\"\r\n [class.x-link-icon-right]=\"iconRight\"\r\n [class.x-link-only-icon]=\"icon && !content.innerHTML.trim()\"\r\n [attr.href]=\"href\"\r\n [attr.target]=\"target\"\r\n>\r\n <x-icon *ngIf=\"icon\" [type]=\"icon\"></x-icon>\r\n <span #content><ng-content></ng-content></span>\r\n</a>\r\n", styles: ["x-link{display:inline-flex}.x-link{margin:0;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;vertical-align:middle;position:relative;text-decoration:none;outline:none;cursor:pointer;padding:0;transition:all var(--x-animation-duration-base) ease-in-out}.x-link>x-icon{margin-right:.125rem}.x-link-underline:hover:after{content:\"\";position:absolute;left:0;right:0;height:0;bottom:0;border-bottom:.0625rem solid var(--x-primary)}.x-link-icon-right{flex-direction:row-reverse}.x-link-icon-right>x-icon{margin-right:0;margin-left:.125rem}.x-link-only-icon>x-icon{margin-right:0;margin-left:0}.x-link{color:inherit}.x-link:hover{color:var(--x-primary)}.x-link:hover:after{border-color:var(--x-primary)}.x-link:active{color:var(--x-primary-a100)}.x-link.x-link-disabled{color:var(--x-text-400);cursor:not-allowed}.x-link.x-link-disabled:active{transform:none}.x-link.x-link-disabled:hover:after{border-color:transparent}.x-link-primary{color:var(--x-primary)}.x-link-primary:hover{color:var(--x-primary-100)}.x-link-primary:hover:after{border-color:var(--x-primary-100)}.x-link-primary:active{color:var(--x-primary-300)}.x-link-primary.x-link-disabled{color:var(--x-primary-400);cursor:not-allowed}.x-link-primary.x-link-disabled:active{transform:none}.x-link-primary.x-link-disabled:hover:after{border-color:transparent}.x-link-success{color:var(--x-success)}.x-link-success:hover{color:var(--x-success-100)}.x-link-success:hover:after{border-color:var(--x-success-100)}.x-link-success:active{color:var(--x-success-300)}.x-link-success.x-link-disabled{color:var(--x-success-400);cursor:not-allowed}.x-link-success.x-link-disabled:active{transform:none}.x-link-success.x-link-disabled:hover:after{border-color:transparent}.x-link-warning{color:var(--x-warning)}.x-link-warning:hover{color:var(--x-warning-100)}.x-link-warning:hover:after{border-color:var(--x-warning-100)}.x-link-warning:active{color:var(--x-warning-300)}.x-link-warning.x-link-disabled{color:var(--x-warning-400);cursor:not-allowed}.x-link-warning.x-link-disabled:active{transform:none}.x-link-warning.x-link-disabled:hover:after{border-color:transparent}.x-link-danger{color:var(--x-danger)}.x-link-danger:hover{color:var(--x-danger-100)}.x-link-danger:hover:after{border-color:var(--x-danger-100)}.x-link-danger:active{color:var(--x-danger-300)}.x-link-danger.x-link-disabled{color:var(--x-danger-400);cursor:not-allowed}.x-link-danger.x-link-disabled:active{transform:none}.x-link-danger.x-link-disabled:hover:after{border-color:transparent}.x-link-info{color:var(--x-info)}.x-link-info:hover{color:var(--x-info-100)}.x-link-info:hover:after{border-color:var(--x-info-100)}.x-link-info:active{color:var(--x-info-300)}.x-link-info.x-link-disabled{color:var(--x-info-400);cursor:not-allowed}.x-link-info.x-link-disabled:active{transform:none}.x-link-info.x-link-disabled:hover:after{border-color:transparent}\n"], components: [{ type: i2.XIconComponent, selector: "x-icon" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLinkComponent, decorators: [{
31
+ /** @nocollapse */ /** @nocollapse */ XLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLinkComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
32
+ /** @nocollapse */ /** @nocollapse */ XLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XLinkComponent, selector: "x-link", host: { listeners: { "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" } }, usesInheritance: true, ngImport: i0, template: "<a\r\n class=\"x-link\"\r\n [ngClass]=\"classMap\"\r\n [class.x-link-disabled]=\"disabled\"\r\n [class.x-link-underline]=\"underline && !disabled\"\r\n [class.x-link-icon-right]=\"iconRight\"\r\n [class.x-link-only-icon]=\"icon && !content.innerHTML.trim()\"\r\n [attr.href]=\"href\"\r\n [attr.target]=\"target\"\r\n>\r\n <x-icon *ngIf=\"icon\" [type]=\"icon\"></x-icon>\r\n <span #content><ng-content></ng-content></span>\r\n</a>\r\n", styles: ["x-link{display:inline-flex}.x-link{margin:0;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;vertical-align:middle;position:relative;text-decoration:none;outline:none;cursor:pointer;padding:0;transition:all var(--x-animation-duration-base) ease-in-out}.x-link>x-icon{margin-right:.125rem}.x-link-underline:hover:after{content:\"\";position:absolute;left:0;right:0;height:0;bottom:0;border-bottom:.0625rem solid var(--x-primary)}.x-link-icon-right{flex-direction:row-reverse}.x-link-icon-right>x-icon{margin-right:0;margin-left:.125rem}.x-link-only-icon>x-icon{margin-right:0;margin-left:0}.x-link{color:inherit}.x-link:hover{color:var(--x-primary)}.x-link:hover:after{border-color:var(--x-primary)}.x-link:active{color:var(--x-primary-a100)}.x-link.x-link-disabled{color:var(--x-text-400);cursor:not-allowed}.x-link.x-link-disabled:active{transform:none}.x-link.x-link-disabled:hover:after{border-color:transparent}.x-link-primary{color:var(--x-primary)}.x-link-primary:hover{color:var(--x-primary-100)}.x-link-primary:hover:after{border-color:var(--x-primary-100)}.x-link-primary:active{color:var(--x-primary-300)}.x-link-primary.x-link-disabled{color:var(--x-primary-400);cursor:not-allowed}.x-link-primary.x-link-disabled:active{transform:none}.x-link-primary.x-link-disabled:hover:after{border-color:transparent}.x-link-success{color:var(--x-success)}.x-link-success:hover{color:var(--x-success-100)}.x-link-success:hover:after{border-color:var(--x-success-100)}.x-link-success:active{color:var(--x-success-300)}.x-link-success.x-link-disabled{color:var(--x-success-400);cursor:not-allowed}.x-link-success.x-link-disabled:active{transform:none}.x-link-success.x-link-disabled:hover:after{border-color:transparent}.x-link-warning{color:var(--x-warning)}.x-link-warning:hover{color:var(--x-warning-100)}.x-link-warning:hover:after{border-color:var(--x-warning-100)}.x-link-warning:active{color:var(--x-warning-300)}.x-link-warning.x-link-disabled{color:var(--x-warning-400);cursor:not-allowed}.x-link-warning.x-link-disabled:active{transform:none}.x-link-warning.x-link-disabled:hover:after{border-color:transparent}.x-link-danger{color:var(--x-danger)}.x-link-danger:hover{color:var(--x-danger-100)}.x-link-danger:hover:after{border-color:var(--x-danger-100)}.x-link-danger:active{color:var(--x-danger-300)}.x-link-danger.x-link-disabled{color:var(--x-danger-400);cursor:not-allowed}.x-link-danger.x-link-disabled:active{transform:none}.x-link-danger.x-link-disabled:hover:after{border-color:transparent}.x-link-info{color:var(--x-info)}.x-link-info:hover{color:var(--x-info-100)}.x-link-info:hover:after{border-color:var(--x-info-100)}.x-link-info:active{color:var(--x-info-300)}.x-link-info.x-link-disabled{color:var(--x-info-400);cursor:not-allowed}.x-link-info.x-link-disabled:active{transform:none}.x-link-info.x-link-disabled:hover:after{border-color:transparent}\n"], components: [{ type: i2.XIconComponent, selector: "x-icon" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLinkComponent, decorators: [{
34
34
  type: Component,
35
35
  args: [{ selector: `${XLinkPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\r\n class=\"x-link\"\r\n [ngClass]=\"classMap\"\r\n [class.x-link-disabled]=\"disabled\"\r\n [class.x-link-underline]=\"underline && !disabled\"\r\n [class.x-link-icon-right]=\"iconRight\"\r\n [class.x-link-only-icon]=\"icon && !content.innerHTML.trim()\"\r\n [attr.href]=\"href\"\r\n [attr.target]=\"target\"\r\n>\r\n <x-icon *ngIf=\"icon\" [type]=\"icon\"></x-icon>\r\n <span #content><ng-content></ng-content></span>\r\n</a>\r\n", styles: ["x-link{display:inline-flex}.x-link{margin:0;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;vertical-align:middle;position:relative;text-decoration:none;outline:none;cursor:pointer;padding:0;transition:all var(--x-animation-duration-base) ease-in-out}.x-link>x-icon{margin-right:.125rem}.x-link-underline:hover:after{content:\"\";position:absolute;left:0;right:0;height:0;bottom:0;border-bottom:.0625rem solid var(--x-primary)}.x-link-icon-right{flex-direction:row-reverse}.x-link-icon-right>x-icon{margin-right:0;margin-left:.125rem}.x-link-only-icon>x-icon{margin-right:0;margin-left:0}.x-link{color:inherit}.x-link:hover{color:var(--x-primary)}.x-link:hover:after{border-color:var(--x-primary)}.x-link:active{color:var(--x-primary-a100)}.x-link.x-link-disabled{color:var(--x-text-400);cursor:not-allowed}.x-link.x-link-disabled:active{transform:none}.x-link.x-link-disabled:hover:after{border-color:transparent}.x-link-primary{color:var(--x-primary)}.x-link-primary:hover{color:var(--x-primary-100)}.x-link-primary:hover:after{border-color:var(--x-primary-100)}.x-link-primary:active{color:var(--x-primary-300)}.x-link-primary.x-link-disabled{color:var(--x-primary-400);cursor:not-allowed}.x-link-primary.x-link-disabled:active{transform:none}.x-link-primary.x-link-disabled:hover:after{border-color:transparent}.x-link-success{color:var(--x-success)}.x-link-success:hover{color:var(--x-success-100)}.x-link-success:hover:after{border-color:var(--x-success-100)}.x-link-success:active{color:var(--x-success-300)}.x-link-success.x-link-disabled{color:var(--x-success-400);cursor:not-allowed}.x-link-success.x-link-disabled:active{transform:none}.x-link-success.x-link-disabled:hover:after{border-color:transparent}.x-link-warning{color:var(--x-warning)}.x-link-warning:hover{color:var(--x-warning-100)}.x-link-warning:hover:after{border-color:var(--x-warning-100)}.x-link-warning:active{color:var(--x-warning-300)}.x-link-warning.x-link-disabled{color:var(--x-warning-400);cursor:not-allowed}.x-link-warning.x-link-disabled:active{transform:none}.x-link-warning.x-link-disabled:hover:after{border-color:transparent}.x-link-danger{color:var(--x-danger)}.x-link-danger:hover{color:var(--x-danger-100)}.x-link-danger:hover:after{border-color:var(--x-danger-100)}.x-link-danger:active{color:var(--x-danger-300)}.x-link-danger.x-link-disabled{color:var(--x-danger-400);cursor:not-allowed}.x-link-danger.x-link-disabled:active{transform:none}.x-link-danger.x-link-disabled:hover:after{border-color:transparent}.x-link-info{color:var(--x-info)}.x-link-info:hover{color:var(--x-info-100)}.x-link-info:hover:after{border-color:var(--x-info-100)}.x-link-info:active{color:var(--x-info-300)}.x-link-info.x-link-disabled{color:var(--x-info-400);cursor:not-allowed}.x-link-info.x-link-disabled:active{transform:none}.x-link-info.x-link-disabled:hover:after{border-color:transparent}\n"] }]
36
36
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; }, propDecorators: { mouseenter: [{
@@ -8,10 +8,10 @@ import { XRippleModule } from '@ng-nest/ui/ripple';
8
8
  import * as i0 from "@angular/core";
9
9
  export class XLinkModule {
10
10
  }
11
- /** @nocollapse */ /** @nocollapse */ XLinkModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLinkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- /** @nocollapse */ /** @nocollapse */ XLinkModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLinkModule, declarations: [XLinkComponent, XLinkProperty], imports: [CommonModule, XIconModule, XOutletModule, XRippleModule], exports: [XLinkComponent] });
13
- /** @nocollapse */ /** @nocollapse */ XLinkModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLinkModule, imports: [[CommonModule, XIconModule, XOutletModule, XRippleModule]] });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLinkModule, decorators: [{
11
+ /** @nocollapse */ /** @nocollapse */ XLinkModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLinkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ /** @nocollapse */ /** @nocollapse */ XLinkModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLinkModule, declarations: [XLinkComponent, XLinkProperty], imports: [CommonModule, XIconModule, XOutletModule, XRippleModule], exports: [XLinkComponent] });
13
+ /** @nocollapse */ /** @nocollapse */ XLinkModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLinkModule, imports: [[CommonModule, XIconModule, XOutletModule, XRippleModule]] });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLinkModule, decorators: [{
15
15
  type: NgModule,
16
16
  args: [{
17
17
  declarations: [XLinkComponent, XLinkProperty],
@@ -14,8 +14,8 @@ const X_CONFIG_NAME = 'link';
14
14
  */
15
15
  export class XLinkProperty extends XProperty {
16
16
  }
17
- /** @nocollapse */ /** @nocollapse */ XLinkProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLinkProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
18
- /** @nocollapse */ /** @nocollapse */ XLinkProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XLinkProperty, selector: "ng-component", inputs: { href: "href", icon: "icon", underline: "underline", disabled: "disabled", iconRight: "iconRight", type: "type", target: "target" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
17
+ /** @nocollapse */ /** @nocollapse */ XLinkProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLinkProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
18
+ /** @nocollapse */ /** @nocollapse */ XLinkProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XLinkProperty, selector: "ng-component", inputs: { href: "href", icon: "icon", underline: "underline", disabled: "disabled", iconRight: "iconRight", type: "type", target: "target" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
19
19
  __decorate([
20
20
  XWithConfig(X_CONFIG_NAME),
21
21
  XInputBoolean()
@@ -27,7 +27,7 @@ __decorate([
27
27
  XWithConfig(X_CONFIG_NAME),
28
28
  XInputBoolean()
29
29
  ], XLinkProperty.prototype, "iconRight", void 0);
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLinkProperty, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLinkProperty, decorators: [{
31
31
  type: Component,
32
32
  args: [{ template: '' }]
33
33
  }], propDecorators: { href: [{
@@ -24,9 +24,9 @@ export class XListOptionComponent extends XListOptionProperty {
24
24
  return this.label;
25
25
  }
26
26
  }
27
- /** @nocollapse */ /** @nocollapse */ XListOptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListOptionComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
28
- /** @nocollapse */ /** @nocollapse */ XListOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XListOptionComponent, selector: "x-list-option", host: { properties: { "attr.role": "this.role" } }, usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-list-option\"\r\n [class.x-selected]=\"selected\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-active]=\"active\"\r\n [class.x-list-icon]=\"icon\"\r\n [class.x-list-divided]=\"divided\"\r\n>\r\n <span>\r\n <ng-container *ngIf=\"!nodeTpl\"\r\n ><x-icon [type]=\"icon\" *ngIf=\"icon\"></x-icon> {{ label }}</ng-container\r\n >\r\n <ng-container *ngIf=\"nodeTpl\">\r\n <ng-template *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-template>\r\n </ng-container>\r\n </span>\r\n <x-icon class=\"x-list-leaf\" type=\"fto-chevron-right\" *ngIf=\"leaf\"></x-icon>\r\n <x-icon class=\"x-list-checked\" type=\"fto-check\" *ngIf=\"checked && !leaf && selected\"></x-icon>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-list-option{display:block}.x-list-option{padding:0 .4rem;height:calc(var(--x-font-size) + 1rem);line-height:calc(var(--x-font-size) + 1rem);border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;transition:border-color var(--x-animation-duration-base),background-color var(--x-animation-duration-base),color var(--x-animation-duration-base)}.x-list-option>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;-webkit-user-select:none;user-select:none}.x-list-option:not(:first-child){margin-top:var(--x-border-width)}.x-list-option:hover,.x-list-option.x-active{background-color:var(--x-background-a300)}.x-list-option.x-list-divided{margin-top:.8125rem}.x-list-option.x-list-divided:before{content:\" \";position:absolute;top:0;left:0;width:100%;margin-top:-.5rem;border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-list-option.x-selected{background-color:var(--x-background-a300);color:var(--x-primary)}.x-list-option.x-selected>x-icon{color:var(--x-primary)}.x-list-option.x-disabled{color:var(--x-text-500);cursor:not-allowed}.x-list-option.x-disabled:hover{background-color:inherit}.x-list-option.x-disabled>span x-icon{color:var(--x-text-500)}body>x-list-option{display:block}body>x-list-option.cdk-drag-preview .x-list-option{padding:0 .4rem;height:calc(var(--x-font-size) + 1rem);line-height:calc(var(--x-font-size) + 1rem);border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}body>x-list-option.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"], components: [{ type: i1.XIconComponent, selector: "x-icon" }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListOptionComponent, decorators: [{
27
+ /** @nocollapse */ /** @nocollapse */ XListOptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListOptionComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
28
+ /** @nocollapse */ /** @nocollapse */ XListOptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XListOptionComponent, selector: "x-list-option", host: { properties: { "attr.role": "this.role" } }, usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-list-option\"\r\n [class.x-selected]=\"selected\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-active]=\"active\"\r\n [class.x-list-icon]=\"icon\"\r\n [class.x-list-divided]=\"divided\"\r\n>\r\n <span>\r\n <ng-container *ngIf=\"!nodeTpl\"\r\n ><x-icon [type]=\"icon\" *ngIf=\"icon\"></x-icon> {{ label }}</ng-container\r\n >\r\n <ng-container *ngIf=\"nodeTpl\">\r\n <ng-template *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-template>\r\n </ng-container>\r\n </span>\r\n <x-icon class=\"x-list-leaf\" type=\"fto-chevron-right\" *ngIf=\"leaf\"></x-icon>\r\n <x-icon class=\"x-list-checked\" type=\"fto-check\" *ngIf=\"checked && !leaf && selected\"></x-icon>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-list-option{display:block}.x-list-option{padding:0 .4rem;height:calc(var(--x-font-size) + 1rem);line-height:calc(var(--x-font-size) + 1rem);border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;transition:border-color var(--x-animation-duration-base),background-color var(--x-animation-duration-base),color var(--x-animation-duration-base)}.x-list-option>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;-webkit-user-select:none;user-select:none}.x-list-option:not(:first-child){margin-top:var(--x-border-width)}.x-list-option:hover,.x-list-option.x-active{background-color:var(--x-background-a300)}.x-list-option.x-list-divided{margin-top:.8125rem}.x-list-option.x-list-divided:before{content:\" \";position:absolute;top:0;left:0;width:100%;margin-top:-.5rem;border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-list-option.x-selected{background-color:var(--x-background-a300);color:var(--x-primary)}.x-list-option.x-selected>x-icon{color:var(--x-primary)}.x-list-option.x-disabled{color:var(--x-text-500);cursor:not-allowed}.x-list-option.x-disabled:hover{background-color:inherit}.x-list-option.x-disabled>span x-icon{color:var(--x-text-500)}body>x-list-option{display:block}body>x-list-option.cdk-drag-preview .x-list-option{padding:0 .4rem;height:calc(var(--x-font-size) + 1rem);line-height:calc(var(--x-font-size) + 1rem);border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}body>x-list-option.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"], components: [{ type: i1.XIconComponent, selector: "x-icon" }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListOptionComponent, decorators: [{
30
30
  type: Component,
31
31
  args: [{ selector: `${XListOptionPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"x-list-option\"\r\n [class.x-selected]=\"selected\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-active]=\"active\"\r\n [class.x-list-icon]=\"icon\"\r\n [class.x-list-divided]=\"divided\"\r\n>\r\n <span>\r\n <ng-container *ngIf=\"!nodeTpl\"\r\n ><x-icon [type]=\"icon\" *ngIf=\"icon\"></x-icon> {{ label }}</ng-container\r\n >\r\n <ng-container *ngIf=\"nodeTpl\">\r\n <ng-template *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-template>\r\n </ng-container>\r\n </span>\r\n <x-icon class=\"x-list-leaf\" type=\"fto-chevron-right\" *ngIf=\"leaf\"></x-icon>\r\n <x-icon class=\"x-list-checked\" type=\"fto-check\" *ngIf=\"checked && !leaf && selected\"></x-icon>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-list-option{display:block}.x-list-option{padding:0 .4rem;height:calc(var(--x-font-size) + 1rem);line-height:calc(var(--x-font-size) + 1rem);border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;transition:border-color var(--x-animation-duration-base),background-color var(--x-animation-duration-base),color var(--x-animation-duration-base)}.x-list-option>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;-webkit-user-select:none;user-select:none}.x-list-option:not(:first-child){margin-top:var(--x-border-width)}.x-list-option:hover,.x-list-option.x-active{background-color:var(--x-background-a300)}.x-list-option.x-list-divided{margin-top:.8125rem}.x-list-option.x-list-divided:before{content:\" \";position:absolute;top:0;left:0;width:100%;margin-top:-.5rem;border-top:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-list-option.x-selected{background-color:var(--x-background-a300);color:var(--x-primary)}.x-list-option.x-selected>x-icon{color:var(--x-primary)}.x-list-option.x-disabled{color:var(--x-text-500);cursor:not-allowed}.x-list-option.x-disabled:hover{background-color:inherit}.x-list-option.x-disabled>span x-icon{color:var(--x-text-500)}body>x-list-option{display:block}body>x-list-option.cdk-drag-preview .x-list-option{padding:0 .4rem;height:calc(var(--x-font-size) + 1rem);line-height:calc(var(--x-font-size) + 1rem);border-radius:var(--x-border-radius);display:flex;align-items:center;justify-content:space-between;border:.0625rem dashed transparent;border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}body>x-list-option.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"] }]
32
32
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { role: [{
@@ -216,9 +216,9 @@ export class XListComponent extends XListProperty {
216
216
  this.nodes[num].active = false;
217
217
  }
218
218
  }
219
- /** @nocollapse */ /** @nocollapse */ XListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
220
- /** @nocollapse */ /** @nocollapse */ XListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XListComponent, selector: "x-list", host: { listeners: { "keydown": "keydown($event)" }, properties: { "attr.role": "this.role", "attr.tabindex": "this.tabindex" } }, providers: [XValueAccessor(XListComponent)], viewQueries: [{ propertyName: "listItems", first: true, predicate: ["listItems"], descendants: true }, { propertyName: "options", predicate: XListOptionComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n class=\"x-list\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [hidden]=\"isEmpty\"\r\n>\r\n <x-list-option\r\n cdkDrag\r\n *ngFor=\"let node of nodes; trackBy: trackByNode\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n</div>\r\n<x-empty *ngIf=\"isEmpty\"></x-empty>\r\n", styles: ["@charset \"UTF-8\";x-list{width:100%}x-list:focus{outline:none}x-list>x-empty{margin:1rem}.x-list{margin:0;padding:0;width:100%;cursor:pointer}.x-list:focus{outline:none}.x-list.cdk-drop-list-dragging>x-list-option:hover{background-color:transparent}.x-list.cdk-drop-list-dragging>x-list-option.cdk-drag-placeholder{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}.x-list.cdk-drop-list-dragging>x-list-option:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-list-leaf,.x-list-checked{right:0;margin-left:.4rem;color:var(--x-text-400)}.x-list-icon>span x-icon{color:var(--x-text-300);margin-right:.25rem}\n"], components: [{ type: i2.XListOptionComponent, selector: "x-list-option" }, { type: i3.XEmptyComponent, selector: "x-empty" }], directives: [{ type: i4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
221
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListComponent, decorators: [{
219
+ /** @nocollapse */ /** @nocollapse */ XListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
220
+ /** @nocollapse */ /** @nocollapse */ XListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XListComponent, selector: "x-list", host: { listeners: { "keydown": "keydown($event)" }, properties: { "attr.role": "this.role", "attr.tabindex": "this.tabindex" } }, providers: [XValueAccessor(XListComponent)], viewQueries: [{ propertyName: "listItems", first: true, predicate: ["listItems"], descendants: true }, { propertyName: "options", predicate: XListOptionComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n class=\"x-list\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [hidden]=\"isEmpty\"\r\n>\r\n <x-list-option\r\n cdkDrag\r\n *ngFor=\"let node of nodes; trackBy: trackByNode\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n</div>\r\n<x-empty *ngIf=\"isEmpty\"></x-empty>\r\n", styles: ["@charset \"UTF-8\";x-list{width:100%}x-list:focus{outline:none}x-list>x-empty{margin:1rem}.x-list{margin:0;padding:0;width:100%;cursor:pointer}.x-list:focus{outline:none}.x-list.cdk-drop-list-dragging>x-list-option:hover{background-color:transparent}.x-list.cdk-drop-list-dragging>x-list-option.cdk-drag-placeholder{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}.x-list.cdk-drop-list-dragging>x-list-option:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-list-leaf,.x-list-checked{right:0;margin-left:.4rem;color:var(--x-text-400)}.x-list-icon>span x-icon{color:var(--x-text-300);margin-right:.25rem}\n"], components: [{ type: i2.XListOptionComponent, selector: "x-list-option" }, { type: i3.XEmptyComponent, selector: "x-empty" }], directives: [{ type: i4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
221
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListComponent, decorators: [{
222
222
  type: Component,
223
223
  args: [{ selector: `${XListPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XListComponent)], template: "<div\r\n class=\"x-list\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [hidden]=\"isEmpty\"\r\n>\r\n <x-list-option\r\n cdkDrag\r\n *ngFor=\"let node of nodes; trackBy: trackByNode\"\r\n [node]=\"node\"\r\n [checked]=\"checked\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [selected]=\"node.selected\"\r\n [disabled]=\"node.disabled\"\r\n [(active)]=\"node.active\"\r\n [icon]=\"node.icon\"\r\n [label]=\"node.label\"\r\n [leaf]=\"node.leaf\"\r\n (click)=\"onNodeClick($event, node)\"\r\n (mouseenter)=\"onMouseenter($event, node)\"\r\n (mouseleave)=\"onMouseleave($event, node)\"\r\n ></x-list-option>\r\n</div>\r\n<x-empty *ngIf=\"isEmpty\"></x-empty>\r\n", styles: ["@charset \"UTF-8\";x-list{width:100%}x-list:focus{outline:none}x-list>x-empty{margin:1rem}.x-list{margin:0;padding:0;width:100%;cursor:pointer}.x-list:focus{outline:none}.x-list.cdk-drop-list-dragging>x-list-option:hover{background-color:transparent}.x-list.cdk-drop-list-dragging>x-list-option.cdk-drag-placeholder{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}.x-list.cdk-drop-list-dragging>x-list-option:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-list-leaf,.x-list-checked{right:0;margin-left:.4rem;color:var(--x-text-400)}.x-list-icon>span x-icon{color:var(--x-text-300);margin-right:.25rem}\n"] }]
224
224
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.XConfigService }]; }, propDecorators: { listItems: [{
@@ -12,8 +12,8 @@ import { XBaseFormModule } from '@ng-nest/ui/base-form';
12
12
  import * as i0 from "@angular/core";
13
13
  export class XListModule {
14
14
  }
15
- /** @nocollapse */ /** @nocollapse */ XListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
- /** @nocollapse */ /** @nocollapse */ XListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListModule, declarations: [XListComponent, XListOptionComponent, XListProperty, XListOptionProperty], imports: [CommonModule,
15
+ /** @nocollapse */ /** @nocollapse */ XListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ /** @nocollapse */ /** @nocollapse */ XListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListModule, declarations: [XListComponent, XListOptionComponent, XListProperty, XListOptionProperty], imports: [CommonModule,
17
17
  FormsModule,
18
18
  ReactiveFormsModule,
19
19
  DragDropModule,
@@ -21,7 +21,7 @@ export class XListModule {
21
21
  XIconModule,
22
22
  XEmptyModule,
23
23
  XBaseFormModule], exports: [XListComponent, XListOptionComponent] });
24
- /** @nocollapse */ /** @nocollapse */ XListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListModule, imports: [[
24
+ /** @nocollapse */ /** @nocollapse */ XListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListModule, imports: [[
25
25
  CommonModule,
26
26
  FormsModule,
27
27
  ReactiveFormsModule,
@@ -31,7 +31,7 @@ export class XListModule {
31
31
  XEmptyModule,
32
32
  XBaseFormModule
33
33
  ]] });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListModule, decorators: [{
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListModule, decorators: [{
35
35
  type: NgModule,
36
36
  args: [{
37
37
  declarations: [XListComponent, XListOptionComponent, XListProperty, XListOptionProperty],
@@ -52,8 +52,8 @@ export class XListProperty extends XControlValueAccessor {
52
52
  this.keyManagerChange = new EventEmitter();
53
53
  }
54
54
  }
55
- /** @nocollapse */ /** @nocollapse */ XListProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
56
- /** @nocollapse */ /** @nocollapse */ XListProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XListProperty, selector: "ng-component", inputs: { data: "data", multiple: "multiple", checked: "checked", drag: "drag", objectArray: "objectArray", nodeTpl: "nodeTpl", scrollElement: "scrollElement" }, outputs: { nodeMouseenter: "nodeMouseenter", nodeMouseleave: "nodeMouseleave", nodeClick: "nodeClick", keyManagerTabOut: "keyManagerTabOut", keyManagerChange: "keyManagerChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
55
+ /** @nocollapse */ /** @nocollapse */ XListProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
56
+ /** @nocollapse */ /** @nocollapse */ XListProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XListProperty, selector: "ng-component", inputs: { data: "data", multiple: "multiple", checked: "checked", drag: "drag", objectArray: "objectArray", nodeTpl: "nodeTpl", scrollElement: "scrollElement" }, outputs: { nodeMouseenter: "nodeMouseenter", nodeMouseleave: "nodeMouseleave", nodeClick: "nodeClick", keyManagerTabOut: "keyManagerTabOut", keyManagerChange: "keyManagerChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
57
57
  __decorate([
58
58
  XDataConvert()
59
59
  ], XListProperty.prototype, "data", void 0);
@@ -69,7 +69,7 @@ __decorate([
69
69
  __decorate([
70
70
  XInputBoolean()
71
71
  ], XListProperty.prototype, "objectArray", void 0);
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListProperty, decorators: [{
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListProperty, decorators: [{
73
73
  type: Component,
74
74
  args: [{ template: '' }]
75
75
  }], propDecorators: { data: [{
@@ -115,8 +115,8 @@ export class XListOptionProperty {
115
115
  this.activeChange = new EventEmitter();
116
116
  }
117
117
  }
118
- /** @nocollapse */ /** @nocollapse */ XListOptionProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListOptionProperty, deps: [], target: i0.ɵɵFactoryTarget.Component });
119
- /** @nocollapse */ /** @nocollapse */ XListOptionProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XListOptionProperty, selector: "ng-component", inputs: { node: "node", checked: "checked", nodeTpl: "nodeTpl", selected: "selected", disabled: "disabled", active: "active", icon: "icon", divided: "divided", label: "label", leaf: "leaf" }, outputs: { activeChange: "activeChange" }, ngImport: i0, template: '', isInline: true });
118
+ /** @nocollapse */ /** @nocollapse */ XListOptionProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListOptionProperty, deps: [], target: i0.ɵɵFactoryTarget.Component });
119
+ /** @nocollapse */ /** @nocollapse */ XListOptionProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XListOptionProperty, selector: "ng-component", inputs: { node: "node", checked: "checked", nodeTpl: "nodeTpl", selected: "selected", disabled: "disabled", active: "active", icon: "icon", divided: "divided", label: "label", leaf: "leaf" }, outputs: { activeChange: "activeChange" }, ngImport: i0, template: '', isInline: true });
120
120
  __decorate([
121
121
  XInputBoolean()
122
122
  ], XListOptionProperty.prototype, "checked", void 0);
@@ -132,7 +132,7 @@ __decorate([
132
132
  __decorate([
133
133
  XInputBoolean()
134
134
  ], XListOptionProperty.prototype, "leaf", void 0);
135
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XListOptionProperty, decorators: [{
135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XListOptionProperty, decorators: [{
136
136
  type: Component,
137
137
  args: [{ template: '' }]
138
138
  }], propDecorators: { node: [{
@@ -59,9 +59,9 @@ export class XLoadingComponent extends XLoadingProperty {
59
59
  }
60
60
  }
61
61
  }
62
- /** @nocollapse */ /** @nocollapse */ XLoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLoadingComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
63
- /** @nocollapse */ /** @nocollapse */ XLoadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XLoadingComponent, selector: "x-loading, [x-loading]", host: { properties: { "class.x-loading-parent": "this.getLoading" } }, viewQueries: [{ propertyName: "loadingTpl", first: true, predicate: ["loadingTpl"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\r\n\r\n<ng-container *ngIf=\"!fullScreen\">\r\n <ng-container *ngTemplateOutlet=\"loadingTpl\"></ng-container>\r\n</ng-container>\r\n\r\n<ng-template #loadingTpl>\r\n <div #loading class=\"x-loading\" [ngClass]=\"classMap\" [style.background]=\"background\" *ngIf=\"loading\">\r\n <div class=\"x-loading-spinner\" [style.color]=\"color\">\r\n <ng-container *ngIf=\"icon; else circularTpl\">\r\n <div class=\"x-loading-icon\">\r\n <x-icon [type]=\"icon\"></x-icon>\r\n </div>\r\n </ng-container>\r\n <div class=\"x-loading-text\">\r\n <ng-container *xOutlet=\"text\">{{ text }}</ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #circularTpl>\r\n <svg class=\"x-loading-circular\" viewBox=\"25 25 50 50\">\r\n <circle class=\"x-loading-path\" cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" />\r\n </svg>\r\n</ng-template>\r\n", styles: ["@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-2.5rem}to{stroke-dasharray:90,150;stroke-dashoffset:-7.5rem}}.x-loading-parent{position:relative}.x-loading{padding:0;position:absolute;background-color:var(--x-background);opacity:.85;margin:0;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;z-index:10}.x-loading-spinner{color:var(--x-primary);text-align:center}.x-loading-circular{animation:loading-rotate 2s linear infinite}.x-loading-icon{animation:loading-rotate 2s linear infinite;display:inline-flex}.x-loading-path{animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:var(--x-primary);stroke-linecap:round}.x-loading-big .x-loading-circular{height:2.175rem;width:2.175rem}.x-loading-big .x-loading-icon{font-size:2.175rem}.x-loading-large .x-loading-circular{height:1.875rem;width:1.875rem}.x-loading-large .x-loading-icon{font-size:1.875rem}.x-loading-medium .x-loading-circular{height:1.675rem;width:1.675rem}.x-loading-medium .x-loading-icon{font-size:1.675rem}.x-loading-small .x-loading-circular{height:1.5rem;width:1.5rem}.x-loading-small .x-loading-icon{font-size:1.5rem}.x-loading-mini .x-loading-circular{height:1.375rem;width:1.375rem}.x-loading-mini .x-loading-icon{font-size:1.375rem}\n"], components: [{ type: i3.XIconComponent, selector: "x-icon" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLoadingComponent, decorators: [{
62
+ /** @nocollapse */ /** @nocollapse */ XLoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLoadingComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
63
+ /** @nocollapse */ /** @nocollapse */ XLoadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XLoadingComponent, selector: "x-loading, [x-loading]", host: { properties: { "class.x-loading-parent": "this.getLoading" } }, viewQueries: [{ propertyName: "loadingTpl", first: true, predicate: ["loadingTpl"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\r\n\r\n<ng-container *ngIf=\"!fullScreen\">\r\n <ng-container *ngTemplateOutlet=\"loadingTpl\"></ng-container>\r\n</ng-container>\r\n\r\n<ng-template #loadingTpl>\r\n <div #loading class=\"x-loading\" [ngClass]=\"classMap\" [style.background]=\"background\" *ngIf=\"loading\">\r\n <div class=\"x-loading-spinner\" [style.color]=\"color\">\r\n <ng-container *ngIf=\"icon; else circularTpl\">\r\n <div class=\"x-loading-icon\">\r\n <x-icon [type]=\"icon\"></x-icon>\r\n </div>\r\n </ng-container>\r\n <div class=\"x-loading-text\">\r\n <ng-container *xOutlet=\"text\">{{ text }}</ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #circularTpl>\r\n <svg class=\"x-loading-circular\" viewBox=\"25 25 50 50\">\r\n <circle class=\"x-loading-path\" cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" />\r\n </svg>\r\n</ng-template>\r\n", styles: ["@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-2.5rem}to{stroke-dasharray:90,150;stroke-dashoffset:-7.5rem}}.x-loading-parent{position:relative}.x-loading{padding:0;position:absolute;background-color:var(--x-background);opacity:.85;margin:0;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;z-index:10}.x-loading-spinner{color:var(--x-primary);text-align:center}.x-loading-circular{animation:loading-rotate 2s linear infinite}.x-loading-icon{animation:loading-rotate 2s linear infinite;display:inline-flex}.x-loading-path{animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:var(--x-primary);stroke-linecap:round}.x-loading-big .x-loading-circular{height:2.175rem;width:2.175rem}.x-loading-big .x-loading-icon{font-size:2.175rem}.x-loading-large .x-loading-circular{height:1.875rem;width:1.875rem}.x-loading-large .x-loading-icon{font-size:1.875rem}.x-loading-medium .x-loading-circular{height:1.675rem;width:1.675rem}.x-loading-medium .x-loading-icon{font-size:1.675rem}.x-loading-small .x-loading-circular{height:1.5rem;width:1.5rem}.x-loading-small .x-loading-icon{font-size:1.5rem}.x-loading-mini .x-loading-circular{height:1.375rem;width:1.375rem}.x-loading-mini .x-loading-icon{font-size:1.375rem}\n"], components: [{ type: i3.XIconComponent, selector: "x-icon" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLoadingComponent, decorators: [{
65
65
  type: Component,
66
66
  args: [{ selector: `${XLoadingPrefix}, [${XLoadingPrefix}]`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\r\n\r\n<ng-container *ngIf=\"!fullScreen\">\r\n <ng-container *ngTemplateOutlet=\"loadingTpl\"></ng-container>\r\n</ng-container>\r\n\r\n<ng-template #loadingTpl>\r\n <div #loading class=\"x-loading\" [ngClass]=\"classMap\" [style.background]=\"background\" *ngIf=\"loading\">\r\n <div class=\"x-loading-spinner\" [style.color]=\"color\">\r\n <ng-container *ngIf=\"icon; else circularTpl\">\r\n <div class=\"x-loading-icon\">\r\n <x-icon [type]=\"icon\"></x-icon>\r\n </div>\r\n </ng-container>\r\n <div class=\"x-loading-text\">\r\n <ng-container *xOutlet=\"text\">{{ text }}</ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #circularTpl>\r\n <svg class=\"x-loading-circular\" viewBox=\"25 25 50 50\">\r\n <circle class=\"x-loading-path\" cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" />\r\n </svg>\r\n</ng-template>\r\n", styles: ["@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-2.5rem}to{stroke-dasharray:90,150;stroke-dashoffset:-7.5rem}}.x-loading-parent{position:relative}.x-loading{padding:0;position:absolute;background-color:var(--x-background);opacity:.85;margin:0;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;z-index:10}.x-loading-spinner{color:var(--x-primary);text-align:center}.x-loading-circular{animation:loading-rotate 2s linear infinite}.x-loading-icon{animation:loading-rotate 2s linear infinite;display:inline-flex}.x-loading-path{animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:var(--x-primary);stroke-linecap:round}.x-loading-big .x-loading-circular{height:2.175rem;width:2.175rem}.x-loading-big .x-loading-icon{font-size:2.175rem}.x-loading-large .x-loading-circular{height:1.875rem;width:1.875rem}.x-loading-large .x-loading-icon{font-size:1.875rem}.x-loading-medium .x-loading-circular{height:1.675rem;width:1.675rem}.x-loading-medium .x-loading-icon{font-size:1.675rem}.x-loading-small .x-loading-circular{height:1.5rem;width:1.5rem}.x-loading-small .x-loading-icon{font-size:1.5rem}.x-loading-mini .x-loading-circular{height:1.375rem;width:1.375rem}.x-loading-mini .x-loading-icon{font-size:1.375rem}\n"] }]
67
67
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XPortalService }, { type: i0.ViewContainerRef }, { type: i2.XConfigService }]; }, propDecorators: { getLoading: [{
@@ -8,10 +8,10 @@ import { XLoadingProperty } from './loading.property';
8
8
  import * as i0 from "@angular/core";
9
9
  export class XLoadingModule {
10
10
  }
11
- /** @nocollapse */ /** @nocollapse */ XLoadingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLoadingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- /** @nocollapse */ /** @nocollapse */ XLoadingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLoadingModule, declarations: [XLoadingComponent, XLoadingProperty], imports: [CommonModule, XIconModule, XOutletModule, XPortalModule], exports: [XLoadingComponent] });
13
- /** @nocollapse */ /** @nocollapse */ XLoadingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLoadingModule, imports: [[CommonModule, XIconModule, XOutletModule, XPortalModule]] });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLoadingModule, decorators: [{
11
+ /** @nocollapse */ /** @nocollapse */ XLoadingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLoadingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ /** @nocollapse */ /** @nocollapse */ XLoadingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLoadingModule, declarations: [XLoadingComponent, XLoadingProperty], imports: [CommonModule, XIconModule, XOutletModule, XPortalModule], exports: [XLoadingComponent] });
13
+ /** @nocollapse */ /** @nocollapse */ XLoadingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLoadingModule, imports: [[CommonModule, XIconModule, XOutletModule, XPortalModule]] });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLoadingModule, decorators: [{
15
15
  type: NgModule,
16
16
  args: [{
17
17
  declarations: [XLoadingComponent, XLoadingProperty],
@@ -22,8 +22,8 @@ export class XLoadingProperty extends XProperty {
22
22
  this.loading = false;
23
23
  }
24
24
  }
25
- /** @nocollapse */ /** @nocollapse */ XLoadingProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLoadingProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
26
- /** @nocollapse */ /** @nocollapse */ XLoadingProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XLoadingProperty, selector: "ng-component", inputs: { loading: ["x-loading", "loading"], size: "size", text: "text", icon: "icon", color: "color", fullScreen: "fullScreen", background: "background" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
25
+ /** @nocollapse */ /** @nocollapse */ XLoadingProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLoadingProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
26
+ /** @nocollapse */ /** @nocollapse */ XLoadingProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XLoadingProperty, selector: "ng-component", inputs: { loading: ["x-loading", "loading"], size: "size", text: "text", icon: "icon", color: "color", fullScreen: "fullScreen", background: "background" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
27
27
  __decorate([
28
28
  XInputBoolean()
29
29
  ], XLoadingProperty.prototype, "loading", void 0);
@@ -45,7 +45,7 @@ __decorate([
45
45
  __decorate([
46
46
  XWithConfig(X_CONFIG_NAME)
47
47
  ], XLoadingProperty.prototype, "background", void 0);
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XLoadingProperty, decorators: [{
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XLoadingProperty, decorators: [{
49
49
  type: Component,
50
50
  args: [{ template: '' }]
51
51
  }], propDecorators: { loading: [{
@@ -23,9 +23,9 @@ export class XMenuNodeComponent extends XMenuNodeProperty {
23
23
  };
24
24
  }
25
25
  }
26
- /** @nocollapse */ /** @nocollapse */ XMenuNodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XMenuNodeComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
27
- /** @nocollapse */ /** @nocollapse */ XMenuNodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XMenuNodeComponent, selector: "x-menu-node", inputs: { menu: "menu" }, usesInheritance: true, ngImport: i0, template: "<a *ngIf=\"node.routerLink && !node.leaf; else menuTpl\" [routerLink]=\"node.routerLink\">\r\n <ng-container *ngTemplateOutlet=\"menuTpl\"></ng-container>\r\n</a>\r\n\r\n<ng-template #menuTpl>\r\n <x-icon class=\"x-menu-icon\" *ngIf=\"node.icon\" [type]=\"node.icon\"></x-icon>\r\n <span class=\"x-menu-text\" *ngIf=\"node.label\">{{ node.label }}</span>\r\n <x-icon class=\"x-menu-arrow\" *ngIf=\"node.leaf\" [class.is-open]=\"node.open\" type=\"fto-chevron-down\"></x-icon>\r\n</ng-template>\r\n", components: [{ type: i2.XIconComponent, selector: "x-icon" }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XMenuNodeComponent, decorators: [{
26
+ /** @nocollapse */ /** @nocollapse */ XMenuNodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XMenuNodeComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
27
+ /** @nocollapse */ /** @nocollapse */ XMenuNodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XMenuNodeComponent, selector: "x-menu-node", inputs: { menu: "menu" }, usesInheritance: true, ngImport: i0, template: "<a *ngIf=\"node.routerLink && !node.leaf; else menuTpl\" [routerLink]=\"node.routerLink\">\r\n <ng-container *ngTemplateOutlet=\"menuTpl\"></ng-container>\r\n</a>\r\n\r\n<ng-template #menuTpl>\r\n <x-icon class=\"x-menu-icon\" *ngIf=\"node.icon\" [type]=\"node.icon\"></x-icon>\r\n <span class=\"x-menu-text\" *ngIf=\"node.label\">{{ node.label }}</span>\r\n <x-icon class=\"x-menu-arrow\" *ngIf=\"node.leaf\" [class.is-open]=\"node.open\" type=\"fto-chevron-down\"></x-icon>\r\n</ng-template>\r\n", components: [{ type: i2.XIconComponent, selector: "x-icon" }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XMenuNodeComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ selector: `${XMenuNodePrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<a *ngIf=\"node.routerLink && !node.leaf; else menuTpl\" [routerLink]=\"node.routerLink\">\r\n <ng-container *ngTemplateOutlet=\"menuTpl\"></ng-container>\r\n</a>\r\n\r\n<ng-template #menuTpl>\r\n <x-icon class=\"x-menu-icon\" *ngIf=\"node.icon\" [type]=\"node.icon\"></x-icon>\r\n <span class=\"x-menu-text\" *ngIf=\"node.label\">{{ node.label }}</span>\r\n <x-icon class=\"x-menu-arrow\" *ngIf=\"node.leaf\" [class.is-open]=\"node.open\" type=\"fto-chevron-down\"></x-icon>\r\n</ng-template>\r\n" }]
31
31
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.XConfigService }]; }, propDecorators: { menu: [{
@@ -34,7 +34,7 @@ export class XMenuComponent extends XMenuProperty {
34
34
  ngOnChanges(changes) {
35
35
  const { data, activatedId, collapsed, target } = changes;
36
36
  XIsChange(data) && this.setData();
37
- XIsChange(activatedId) && this.setActivatedNode(this.nodes);
37
+ XIsChange(activatedId) && this.setActivatedNode(this.datas);
38
38
  XIsChange(collapsed) && this.setClassMap();
39
39
  if (XIsChange(target)) {
40
40
  this._target = typeof this.target === 'string' ? this.doc.querySelector(this.target) : this.target;
@@ -184,13 +184,13 @@ export class XMenuComponent extends XMenuProperty {
184
184
  return item.id;
185
185
  }
186
186
  }
187
- /** @nocollapse */ /** @nocollapse */ XMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XMenuComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
188
- /** @nocollapse */ /** @nocollapse */ XMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XMenuComponent, selector: "x-menu", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #menu class=\"x-menu\" [ngClass]=\"classMap\">\r\n <div class=\"x-menu-nodes\" *ngIf=\"layout === 'column'\">\r\n <ng-container *ngFor=\"let node of nodes; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: node, $children: true }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n <x-slider\r\n *ngIf=\"layout === 'row'\"\r\n [data]=\"nodes\"\r\n [size]=\"size\"\r\n [nodeTpl]=\"nodeRowTpl\"\r\n [nodeJustify]=\"'center'\"\r\n [activatedIndex]=\"rootIndex\"\r\n (indexChange)=\"rootIndexChange($event)\"\r\n ></x-slider>\r\n</div>\r\n\r\n<ng-template #nodeTpl let-node=\"$node\">\r\n <x-dropdown\r\n *ngIf=\"node.level === 0 && collapsed\"\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n placement=\"right-start\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <x-menu-node [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n </x-dropdown>\r\n <x-menu-node *ngIf=\"!collapsed\" [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n</ng-template>\r\n\r\n<ng-template #nodeRowTpl let-node=\"$node\">\r\n <x-dropdown\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <div class=\"x-menu-node\" [ngClass]=\"nodeClassMap\">\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n </x-dropdown>\r\n</ng-template>\r\n\r\n<ng-template #nodeColumnTpl let-node=\"$node\">\r\n <div\r\n class=\"x-menu-node\"\r\n [class.x-activated]=\"activated?.id === node.id\"\r\n [class.x-menu-category]=\"node.categoryNode\"\r\n [ngClass]=\"nodeClassMap\"\r\n (click)=\"onToggle($event, node)\"\r\n [style.padding-left.rem]=\"(node.level + 1) * 0.875\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n <div class=\"x-menu-nodes\" *ngIf=\"node.childrenLoaded || (node.leaf && node.open)\" [hidden]=\"!node.open\">\r\n <ng-container *ngFor=\"let child of node.children; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: child }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n", styles: ["x-menu{display:block}.x-menu{margin:0;padding:0}.x-menu-icon.x-icon{font-size:1rem;transition:opacity var(--x-animation-duration-base)}.x-menu-arrow.x-icon{transition:opacity var(--x-animation-duration-base)}.x-menu-arrow.x-icon.is-open{transform:rotate(180deg)}.x-menu-node.x-size-big{padding:0 calc(var(--x-padding-big) + .25rem);height:calc(var(--x-height-big) + .75rem);line-height:calc(var(--x-height-big) + .75rem)}.x-menu-node.x-size-big.x-menu-category{height:calc(calc(var(--x-height-big) + .75rem) * 1.5)}.x-menu-node.x-size-large{padding:0 calc(var(--x-padding-large) + .25rem);height:calc(var(--x-height-large) + .75rem);line-height:calc(var(--x-height-large) + .75rem)}.x-menu-node.x-size-large.x-menu-category{height:calc(calc(var(--x-height-large) + .75rem) * 1.5)}.x-menu-node.x-size-medium{padding:0 calc(var(--x-padding-medium) + .25rem);height:calc(var(--x-height-medium) + .75rem);line-height:calc(var(--x-height-medium) + .75rem)}.x-menu-node.x-size-medium.x-menu-category{height:calc(calc(var(--x-height-medium) + .75rem) * 1.5)}.x-menu-node.x-size-small{padding:0 var(--x-padding-small);height:calc(var(--x-height-small) + .5rem);line-height:calc(var(--x-height-small) + .5rem)}.x-menu-node.x-size-small.x-menu-category{height:calc(calc(var(--x-height-small) + .5rem) * 1.5)}.x-menu-node.x-size-mini{padding:0 var(--x-padding-mini);height:calc(var(--x-height-mini) + .5rem);line-height:calc(var(--x-height-mini) + .5rem)}.x-menu-node.x-size-mini.x-menu-category{height:calc(calc(var(--x-height-mini) + .5rem) * 1.5)}.x-menu x-slider .x-slider-scroll>ul>li.x-slider-highlight{background-color:inherit;border-radius:0;border:none;border-bottom:.125rem solid var(--x-primary)}.x-menu x-slider .x-slider-scroll>ul>li>x-link{padding:0!important;height:inherit!important;line-height:inherit!important}.x-menu-column{width:12rem;transition:var(--x-animation-duration-base)}.x-menu-row .x-menu-text{margin-left:.25rem}.x-menu-nodes .x-menu-node{cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:width var(--x-animation-duration-base),background-color var(--x-animation-duration-base);border-right:.125rem solid var(--x-border);position:relative;-webkit-user-select:none;user-select:none;padding-right:.875rem}.x-menu-nodes .x-menu-node .x-menu-text{flex:1;margin:0 .25rem;transition:background-color var(--x-animation-duration-base),opacity var(--x-animation-duration-base);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.x-menu-nodes .x-menu-node:hover{color:var(--x-primary);background-color:var(--x-background-a100)}.x-menu-nodes .x-menu-node x-menu-node{flex:1;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.x-menu-nodes .x-menu-node x-menu-node>a{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-decoration:none}.x-menu-nodes .x-menu-node.x-activated{color:var(--x-primary);background-color:var(--x-background-a100)}.x-menu-nodes .x-menu-node.x-activated:after{content:\"\";position:absolute;height:100%;right:-.125rem;top:0;border-right:.125rem solid var(--x-primary)}.x-menu-nodes .x-menu-node.x-menu-category{cursor:inherit;color:var(--x-text-400)}.x-menu-nodes .x-menu-node.x-menu-category:hover{background-color:transparent}.x-menu-nodes .x-menu-node.x-menu-category>x-menu-node{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border-300)}.x-menu-collapsed.x-menu-column{width:3rem}.x-menu-collapsed .x-menu-nodes x-dropdown,.x-menu-collapsed .x-menu-nodes .x-dropdown{display:flex;flex:1}.x-menu-collapsed .x-menu-nodes .x-menu-node{padding-left:0!important;padding-right:0}.x-menu-collapsed .x-menu-nodes .x-menu-node x-menu-node{padding-left:.875rem}.x-menu-collapsed .x-menu-nodes .x-menu-node .x-menu-text{opacity:0;width:0}.x-menu-collapsed .x-menu-nodes .x-menu-nodes{display:none}.x-menu-collapsed .x-menu-arrow.x-icon{opacity:0;width:0}\n"], components: [{ type: i2.XSliderComponent, selector: "x-slider" }, { type: i3.XDropdownComponent, selector: "x-dropdown" }, { type: i4.XMenuNodeComponent, selector: "x-menu-node", inputs: ["menu"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
189
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XMenuComponent, decorators: [{
187
+ /** @nocollapse */ /** @nocollapse */ XMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XMenuComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
188
+ /** @nocollapse */ /** @nocollapse */ XMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XMenuComponent, selector: "x-menu", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #menu class=\"x-menu\" [ngClass]=\"classMap\">\r\n <div class=\"x-menu-nodes\" *ngIf=\"layout === 'column'\">\r\n <ng-container *ngFor=\"let node of nodes; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: node, $children: true }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n <x-slider\r\n *ngIf=\"layout === 'row'\"\r\n [data]=\"nodes\"\r\n [size]=\"size\"\r\n [nodeTpl]=\"nodeRowTpl\"\r\n [nodeJustify]=\"'center'\"\r\n [activatedIndex]=\"rootIndex\"\r\n (indexChange)=\"rootIndexChange($event)\"\r\n ></x-slider>\r\n</div>\r\n\r\n<ng-template #nodeTpl let-node=\"$node\">\r\n <x-dropdown\r\n *ngIf=\"node.level === 0 && collapsed\"\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n placement=\"right-start\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <x-menu-node [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n </x-dropdown>\r\n <x-menu-node *ngIf=\"!collapsed\" [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n</ng-template>\r\n\r\n<ng-template #nodeRowTpl let-node=\"$node\">\r\n <x-dropdown\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <div class=\"x-menu-node\" [ngClass]=\"nodeClassMap\">\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n </x-dropdown>\r\n</ng-template>\r\n\r\n<ng-template #nodeColumnTpl let-node=\"$node\">\r\n <div\r\n class=\"x-menu-node\"\r\n [class.x-activated]=\"activated?.id === node.id\"\r\n [class.x-menu-category]=\"node.categoryNode\"\r\n [ngClass]=\"nodeClassMap\"\r\n (click)=\"onToggle($event, node)\"\r\n [style.padding-left.rem]=\"(node.level + 1) * 0.875\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n <div class=\"x-menu-nodes\" *ngIf=\"node.childrenLoaded || (node.leaf && node.open)\" [hidden]=\"!node.open\">\r\n <ng-container *ngFor=\"let child of node.children; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: child }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n", styles: ["x-menu{display:block}.x-menu{margin:0;padding:0}.x-menu-icon.x-icon{font-size:1rem;transition:opacity var(--x-animation-duration-base)}.x-menu-arrow.x-icon{transition:opacity var(--x-animation-duration-base)}.x-menu-arrow.x-icon.is-open{transform:rotate(180deg)}.x-menu-node.x-size-big{padding:0 calc(var(--x-padding-big) + .25rem);height:calc(var(--x-height-big) + .75rem);line-height:calc(var(--x-height-big) + .75rem)}.x-menu-node.x-size-big.x-menu-category{height:calc(calc(var(--x-height-big) + .75rem) * 1.5)}.x-menu-node.x-size-large{padding:0 calc(var(--x-padding-large) + .25rem);height:calc(var(--x-height-large) + .75rem);line-height:calc(var(--x-height-large) + .75rem)}.x-menu-node.x-size-large.x-menu-category{height:calc(calc(var(--x-height-large) + .75rem) * 1.5)}.x-menu-node.x-size-medium{padding:0 calc(var(--x-padding-medium) + .25rem);height:calc(var(--x-height-medium) + .75rem);line-height:calc(var(--x-height-medium) + .75rem)}.x-menu-node.x-size-medium.x-menu-category{height:calc(calc(var(--x-height-medium) + .75rem) * 1.5)}.x-menu-node.x-size-small{padding:0 var(--x-padding-small);height:calc(var(--x-height-small) + .5rem);line-height:calc(var(--x-height-small) + .5rem)}.x-menu-node.x-size-small.x-menu-category{height:calc(calc(var(--x-height-small) + .5rem) * 1.5)}.x-menu-node.x-size-mini{padding:0 var(--x-padding-mini);height:calc(var(--x-height-mini) + .5rem);line-height:calc(var(--x-height-mini) + .5rem)}.x-menu-node.x-size-mini.x-menu-category{height:calc(calc(var(--x-height-mini) + .5rem) * 1.5)}.x-menu x-slider .x-slider-scroll>ul>li.x-slider-highlight{background-color:inherit;border-radius:0;border:none;border-bottom:.125rem solid var(--x-primary)}.x-menu x-slider .x-slider-scroll>ul>li>x-link{padding:0!important;height:inherit!important;line-height:inherit!important}.x-menu-column{width:12rem;transition:var(--x-animation-duration-base)}.x-menu-row .x-menu-text{margin-left:.25rem}.x-menu-nodes .x-menu-node{cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:width var(--x-animation-duration-base),background-color var(--x-animation-duration-base);border-right:.125rem solid var(--x-border);position:relative;-webkit-user-select:none;user-select:none;padding-right:.875rem}.x-menu-nodes .x-menu-node .x-menu-text{flex:1;margin:0 .25rem;transition:background-color var(--x-animation-duration-base),opacity var(--x-animation-duration-base);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.x-menu-nodes .x-menu-node:hover{color:var(--x-primary);background-color:var(--x-background-a100)}.x-menu-nodes .x-menu-node x-menu-node{flex:1;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.x-menu-nodes .x-menu-node x-menu-node>a{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-decoration:none}.x-menu-nodes .x-menu-node.x-activated{color:var(--x-primary);background-color:var(--x-background-a100)}.x-menu-nodes .x-menu-node.x-activated:after{content:\"\";position:absolute;height:100%;right:-.125rem;top:0;border-right:.125rem solid var(--x-primary)}.x-menu-nodes .x-menu-node.x-menu-category{cursor:inherit;color:var(--x-text-400)}.x-menu-nodes .x-menu-node.x-menu-category:hover{background-color:transparent}.x-menu-nodes .x-menu-node.x-menu-category>x-menu-node{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border-300)}.x-menu-collapsed.x-menu-column{width:3rem}.x-menu-collapsed .x-menu-nodes x-dropdown,.x-menu-collapsed .x-menu-nodes .x-dropdown{display:flex;flex:1}.x-menu-collapsed .x-menu-nodes .x-menu-node{padding-left:0!important;padding-right:0}.x-menu-collapsed .x-menu-nodes .x-menu-node x-menu-node{padding-left:.875rem}.x-menu-collapsed .x-menu-nodes .x-menu-node .x-menu-text{opacity:0;width:0}.x-menu-collapsed .x-menu-nodes .x-menu-nodes{display:none}.x-menu-collapsed .x-menu-arrow.x-icon{opacity:0;width:0}\n"], components: [{ type: i2.XSliderComponent, selector: "x-slider" }, { type: i3.XDropdownComponent, selector: "x-dropdown" }, { type: i4.XMenuNodeComponent, selector: "x-menu-node", inputs: ["menu"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
189
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XMenuComponent, decorators: [{
190
190
  type: Component,
191
191
  args: [{ selector: `${XMenuPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #menu class=\"x-menu\" [ngClass]=\"classMap\">\r\n <div class=\"x-menu-nodes\" *ngIf=\"layout === 'column'\">\r\n <ng-container *ngFor=\"let node of nodes; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: node, $children: true }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n <x-slider\r\n *ngIf=\"layout === 'row'\"\r\n [data]=\"nodes\"\r\n [size]=\"size\"\r\n [nodeTpl]=\"nodeRowTpl\"\r\n [nodeJustify]=\"'center'\"\r\n [activatedIndex]=\"rootIndex\"\r\n (indexChange)=\"rootIndexChange($event)\"\r\n ></x-slider>\r\n</div>\r\n\r\n<ng-template #nodeTpl let-node=\"$node\">\r\n <x-dropdown\r\n *ngIf=\"node.level === 0 && collapsed\"\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n placement=\"right-start\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <x-menu-node [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n </x-dropdown>\r\n <x-menu-node *ngIf=\"!collapsed\" [node]=\"node\" [menu]=\"this\"></x-menu-node>\r\n</ng-template>\r\n\r\n<ng-template #nodeRowTpl let-node=\"$node\">\r\n <x-dropdown\r\n [disabled]=\"!node.leaf\"\r\n [data]=\"node.children\"\r\n [trigger]=\"trigger\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n [portalMinWidth]=\"portalMinWidth\"\r\n children\r\n >\r\n <div class=\"x-menu-node\" [ngClass]=\"nodeClassMap\">\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n </x-dropdown>\r\n</ng-template>\r\n\r\n<ng-template #nodeColumnTpl let-node=\"$node\">\r\n <div\r\n class=\"x-menu-node\"\r\n [class.x-activated]=\"activated?.id === node.id\"\r\n [class.x-menu-category]=\"node.categoryNode\"\r\n [ngClass]=\"nodeClassMap\"\r\n (click)=\"onToggle($event, node)\"\r\n [style.padding-left.rem]=\"(node.level + 1) * 0.875\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"nodeTpl; context: { $node: node }\"></ng-container>\r\n </div>\r\n <div class=\"x-menu-nodes\" *ngIf=\"node.childrenLoaded || (node.leaf && node.open)\" [hidden]=\"!node.open\">\r\n <ng-container *ngFor=\"let child of node.children; trackBy: trackByNode\">\r\n <ng-container *ngTemplateOutlet=\"nodeColumnTpl; context: { $node: child }\"></ng-container>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n", styles: ["x-menu{display:block}.x-menu{margin:0;padding:0}.x-menu-icon.x-icon{font-size:1rem;transition:opacity var(--x-animation-duration-base)}.x-menu-arrow.x-icon{transition:opacity var(--x-animation-duration-base)}.x-menu-arrow.x-icon.is-open{transform:rotate(180deg)}.x-menu-node.x-size-big{padding:0 calc(var(--x-padding-big) + .25rem);height:calc(var(--x-height-big) + .75rem);line-height:calc(var(--x-height-big) + .75rem)}.x-menu-node.x-size-big.x-menu-category{height:calc(calc(var(--x-height-big) + .75rem) * 1.5)}.x-menu-node.x-size-large{padding:0 calc(var(--x-padding-large) + .25rem);height:calc(var(--x-height-large) + .75rem);line-height:calc(var(--x-height-large) + .75rem)}.x-menu-node.x-size-large.x-menu-category{height:calc(calc(var(--x-height-large) + .75rem) * 1.5)}.x-menu-node.x-size-medium{padding:0 calc(var(--x-padding-medium) + .25rem);height:calc(var(--x-height-medium) + .75rem);line-height:calc(var(--x-height-medium) + .75rem)}.x-menu-node.x-size-medium.x-menu-category{height:calc(calc(var(--x-height-medium) + .75rem) * 1.5)}.x-menu-node.x-size-small{padding:0 var(--x-padding-small);height:calc(var(--x-height-small) + .5rem);line-height:calc(var(--x-height-small) + .5rem)}.x-menu-node.x-size-small.x-menu-category{height:calc(calc(var(--x-height-small) + .5rem) * 1.5)}.x-menu-node.x-size-mini{padding:0 var(--x-padding-mini);height:calc(var(--x-height-mini) + .5rem);line-height:calc(var(--x-height-mini) + .5rem)}.x-menu-node.x-size-mini.x-menu-category{height:calc(calc(var(--x-height-mini) + .5rem) * 1.5)}.x-menu x-slider .x-slider-scroll>ul>li.x-slider-highlight{background-color:inherit;border-radius:0;border:none;border-bottom:.125rem solid var(--x-primary)}.x-menu x-slider .x-slider-scroll>ul>li>x-link{padding:0!important;height:inherit!important;line-height:inherit!important}.x-menu-column{width:12rem;transition:var(--x-animation-duration-base)}.x-menu-row .x-menu-text{margin-left:.25rem}.x-menu-nodes .x-menu-node{cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:width var(--x-animation-duration-base),background-color var(--x-animation-duration-base);border-right:.125rem solid var(--x-border);position:relative;-webkit-user-select:none;user-select:none;padding-right:.875rem}.x-menu-nodes .x-menu-node .x-menu-text{flex:1;margin:0 .25rem;transition:background-color var(--x-animation-duration-base),opacity var(--x-animation-duration-base);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.x-menu-nodes .x-menu-node:hover{color:var(--x-primary);background-color:var(--x-background-a100)}.x-menu-nodes .x-menu-node x-menu-node{flex:1;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.x-menu-nodes .x-menu-node x-menu-node>a{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-decoration:none}.x-menu-nodes .x-menu-node.x-activated{color:var(--x-primary);background-color:var(--x-background-a100)}.x-menu-nodes .x-menu-node.x-activated:after{content:\"\";position:absolute;height:100%;right:-.125rem;top:0;border-right:.125rem solid var(--x-primary)}.x-menu-nodes .x-menu-node.x-menu-category{cursor:inherit;color:var(--x-text-400)}.x-menu-nodes .x-menu-node.x-menu-category:hover{background-color:transparent}.x-menu-nodes .x-menu-node.x-menu-category>x-menu-node{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border-300)}.x-menu-collapsed.x-menu-column{width:3rem}.x-menu-collapsed .x-menu-nodes x-dropdown,.x-menu-collapsed .x-menu-nodes .x-dropdown{display:flex;flex:1}.x-menu-collapsed .x-menu-nodes .x-menu-node{padding-left:0!important;padding-right:0}.x-menu-collapsed .x-menu-nodes .x-menu-node x-menu-node{padding-left:.875rem}.x-menu-collapsed .x-menu-nodes .x-menu-node .x-menu-text{opacity:0;width:0}.x-menu-collapsed .x-menu-nodes .x-menu-nodes{display:none}.x-menu-collapsed .x-menu-arrow.x-icon{opacity:0;width:0}\n"] }]
192
192
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
193
193
  type: Inject,
194
194
  args: [DOCUMENT]
195
195
  }] }, { type: i1.XConfigService }]; } });
196
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9tZW51L21lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvbWVudS9tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsaUJBQWlCLEVBSWpCLHVCQUF1QixFQUt2QixNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBYSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEVBQWEsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFrQixNQUFNLGtCQUFrQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7O0FBUzNDLE1BQU0sT0FBTyxjQUFlLFNBQVEsYUFBYTtJQWUvQyxZQUNTLFFBQW1CLEVBQ25CLFVBQXNCLEVBQ3RCLEdBQXNCLEVBQ0osR0FBUSxFQUMxQixhQUE2QjtRQUVwQyxLQUFLLEVBQUUsQ0FBQztRQU5ELGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUNKLFFBQUcsR0FBSCxHQUFHLENBQUs7UUFDMUIsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBbkJ0QyxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUlyQixpQkFBWSxHQUFjLEVBQUUsQ0FBQztRQUM3QixVQUFLLEdBQWdCLEVBQUUsQ0FBQztRQUN4QixVQUFLLEdBQWdCLEVBQUUsQ0FBQztRQUN4QixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBR3RCLGFBQVEsR0FBVSxFQUFFLENB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Q0FBQztJQUNsQixDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQWMsRUFBRSxJQUFlO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNqQixDQUFDOztpSkEzTFUsY0FBYyxzR0FtQmYsUUFBUTtxSUFuQlAsY0FBYywwRkMxQjNCLGk1RUFpRUE7MkZEdkNhLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0UsR0FBRyxXQUFXLEVBQUUsaUJBR1gsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs7MEJBcUI1QyxNQUFNOzJCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgSW5qZWN0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhNZW51UHJlZml4LCBYTWVudU5vZGUsIFhNZW51UHJvcGVydHkgfSBmcm9tICcuL21lbnUucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYQ2xhc3NNYXAsIFhJc0NoYW5nZSwgWElzRW1wdHksIFhTZXREYXRhLCBncm91cEJ5LCBYQ29uZmlnU2VydmljZSB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYTWVudVByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tZW51LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWE1lbnVDb21wb25lbnQgZXh0ZW5kcyBYTWVudVByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgc2hvd0NhdGVnb3J5ID0gZmFsc2U7XHJcbiAgZ2V0IHNjcm9sbCgpOiBIVE1MRWxlbWVudCB7XHJcbiAgICByZXR1cm4gdGhpcy5fdGFyZ2V0O1xyXG4gIH1cclxuICBub2RlQ2xhc3NNYXA6IFhDbGFzc01hcCA9IHt9O1xyXG4gIGRhdGFzOiBYTWVudU5vZGVbXSA9IFtdO1xyXG4gIG5vZGVzOiBYTWVudU5vZGVbXSA9IFtdO1xyXG4gIHJvb3RJbmRleDogbnVtYmVyID0gMDtcclxuICBhY3RpdmF0ZWQhOiBYTWVudU5vZGU7XHJcbiAgYWN0aXZhdGVkRWxlbWVudFJlZiE6IEVsZW1lbnRSZWY7XHJcbiAgZXhwYW5kZWQ6IGFueVtdID0gW107XHJcbiAgcHJpdmF0ZSBfdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwcml2YXRlIF90YXJnZXQhOiBIVE1MRWxlbWVudDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwdWJsaWMgZG9jOiBhbnksXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0Q2xhc3NNYXAoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgYWN0aXZhdGVkSWQsIGNvbGxhcHNlZCwgdGFyZ2V0IH0gPSBjaGFuZ2VzO1xyXG4gICAgWElzQ2hhbmdlKGRhdGEpICYmIHRoaXMuc2V0RGF0YSgpO1xyXG4gICAgWElzQ2hhbmdlKGFjdGl2YXRlZElkKSAmJiB0aGlzLnNldEFjdGl2YXRlZE5vZGUodGhpcy5ub2Rlcyk7XHJcbiAgICBYSXNDaGFuZ2UoY29sbGFwc2VkKSAmJiB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgICBpZiAoWElzQ2hhbmdlKHRhcmdldCkpIHtcclxuICAgICAgdGhpcy5fdGFyZ2V0ID0gdHlwZW9mIHRoaXMudGFyZ2V0ID09PSAnc3RyaW5nJyA/IHRoaXMuZG9jLnF1ZXJ5U2VsZWN0b3IodGhpcy50YXJnZXQpIDogdGhpcy50YXJnZXQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5uZXh0KCk7XHJcbiAgICB0aGlzLl91blN1YmplY3QudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmICh0aGlzLmFjdGl2YXRlZEVsZW1lbnRSZWYgJiYgdGhpcy5zY3JvbGwpIHtcclxuICAgICAgY29uc3Qgbm9kZVJlY3Q6IERPTVJlY3QgPSB0aGlzLmFjdGl2YXRlZEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgY29uc3Qgc2Nyb2xsUmVjdDogRE9NUmVjdCA9IHRoaXMuc2Nyb2xsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICBsZXQgc2Nyb2xsVG9wID0gbm9kZVJlY3QudG9wIC0gc2Nyb2xsUmVjdC50b3AgLSBzY3JvbGxSZWN0LmhlaWdodDtcclxuICAgICAgaWYgKHNjcm9sbFRvcCA+IDApIHtcclxuICAgICAgICBsZXQgb2Zmc2V0ID0gMDtcclxuICAgICAgICB3aGlsZSAob2Zmc2V0IDwgc2Nyb2xsUmVjdC5oZWlnaHQgLyAyKSB7XHJcbiAgICAgICAgICBvZmZzZXQgPSBvZmZzZXQgKyBub2RlUmVjdC5oZWlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2Nyb2xsLnNjcm9sbFRvcCA9IHNjcm9sbFRvcCArIG9mZnNldDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25Ob2RlQ2xpY2sobm9kZTogWE1lbnVOb2RlKSB7XHJcbiAgICBpZiAoIXRoaXMuY29sbGFwc2VkKSB7XHJcbiAgICAgIHRoaXMucm9vdEluZGV4ID0gdGhpcy5ub2Rlcy5pbmRleE9mKHRoaXMuZ2V0Um9vdChub2RlKSk7XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVkSWQgPSBub2RlLmlkO1xyXG4gICAgICB0aGlzLmFjdGl2YXRlZCA9IG5vZGU7XHJcbiAgICAgIHRoaXMubm9kZUNsaWNrLmVtaXQobm9kZSk7XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVkSWRDaGFuZ2UuZW1pdChub2RlLmlkKTtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5vblRvZ2dsZShudWxsLCBub2RlLCB0cnVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJvb3RJbmRleENoYW5nZShpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnJvb3RJbmRleCA9IGluZGV4O1xyXG4gICAgbGV0IG5vZGUgPSB0aGlzLm5vZGVzW2luZGV4XTtcclxuICAgIHRoaXMuYWN0aXZhdGVkSWQgPSBub2RlLmlkO1xyXG4gICAgdGhpcy5hY3RpdmF0ZWQgPSBub2RlO1xyXG4gICAgdGhpcy5ub2RlQ2xpY2suZW1pdChub2RlKTtcclxuICAgIHRoaXMuYWN0aXZhdGVkSWRDaGFuZ2UuZW1pdChub2RlLmlkKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uVG9nZ2xlKGV2ZW50OiBFdmVudCB8IG51bGwsIG5vZGU6IFhNZW51Tm9kZSwgaXNEcm9wZG93biA9IGZhbHNlKSB7XHJcbiAgICBpZiAoKHRoaXMuY29sbGFwc2VkICYmICFpc0Ryb3Bkb3duKSB8fCBub2RlLmNhdGVnb3J5Tm9kZSkgcmV0dXJuO1xyXG4gICAgaWYgKCFub2RlLmxlYWYpIHtcclxuICAgICAgdGhpcy5hY3RpdmF0ZWQgPSBub2RlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgICBub2RlLm9wZW4gPSAhbm9kZS5vcGVuO1xyXG4gICAgICBpZiAobm9kZS5vcGVuICYmICFub2RlLmNoaWxkcmVuTG9hZGVkKSB7XHJcbiAgICAgICAgbm9kZS5jaGlsZHJlbkxvYWRlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMubm9kZUNsaWNrLmVtaXQobm9kZSk7XHJcbiAgICBub2RlLmNoYW5nZSAmJiBub2RlLmNoYW5nZSgpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xhc3NNYXAoKSB7XHJcbiAgICB0aGlzLmNsYXNzTWFwW2Ake1hNZW51UHJlZml4fS0ke3RoaXMubGF5b3V0fWBdID0gdGhpcy5sYXlvdXQgPyB0cnVlIDogZmFsc2U7XHJcbiAgICB0aGlzLmNsYXNzTWFwW2Ake1hNZW51UHJlZml4fS1jb2xsYXBzZWRgXSA9IEJvb2xlYW4odGhpcy5jb2xsYXBzZWQpO1xyXG4gICAgdGhpcy5ub2RlQ2xhc3NNYXBbYHgtc2l6ZS0ke3RoaXMuc2l6ZX1gXSA9IHRoaXMuc2l6ZSA/IHRydWUgOiBmYWxzZTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0RGF0YSgpIHtcclxuICAgIFhTZXREYXRhPFhNZW51Tm9kZT4odGhpcy5kYXRhLCB0aGlzLl91blN1YmplY3QpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLnNldERhdGFDaGFuZ2UoeCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0RGF0YUNoYW5nZSh2YWx1ZTogWE1lbnVOb2RlW10pIHtcclxuICAgICFYSXNFbXB0eSh0aGlzLmFjdGl2YXRlZElkKSAmJiB0aGlzLnNldEFjdGl2YXRlZE5vZGUodmFsdWUpO1xyXG4gICAgbGV0IGhhbmRsZXJEYXRhczogWE1lbnVOb2RlW10gPSBbXTtcclxuICAgIGNvbnN0IGdldENoaWxkcmVuID0gKG5vZGU6IFhNZW51Tm9kZSwgbGV2ZWw6IG51bWJlcikgPT4ge1xyXG4gICAgICBub2RlLmxldmVsID0gbGV2ZWw7XHJcbiAgICAgIG5vZGUuY2hpbGRyZW4gPSB2YWx1ZS5maWx0ZXIoKHkpID0+IHkucGlkID09PSBub2RlLmlkKTtcclxuICAgICAgbm9kZS5sZWFmID0gbm9kZS5jaGlsZHJlbj8ubGVuZ3RoID4gMDtcclxuICAgICAgaWYgKG5vZGUubGVhZikge1xyXG4gICAgICAgIG5vZGUub3BlbiA9IEJvb2xlYW4odGhpcy5leHBhbmRlZEFsbCkgfHwgbGV2ZWwgPD0gdGhpcy5leHBhbmRlZExldmVsIHx8IHRoaXMuZXhwYW5kZWQuaW5kZXhPZihub2RlLmlkKSA+PSAwO1xyXG4gICAgICAgIG5vZGUuY2hpbGRyZW5Mb2FkZWQgPSBub2RlLm9wZW47XHJcbiAgICAgICAgbm9kZS5jaGlsZHJlbi5tYXAoKHkpID0+IGdldENoaWxkcmVuKHksIGxldmVsICsgMSkpO1xyXG4gICAgICAgIG5vZGUuY2hpbGRyZW4gPSB0aGlzLnNldENhdGVnb3J5KG5vZGUuY2hpbGRyZW4pO1xyXG4gICAgICB9XHJcbiAgICAgIGhhbmRsZXJEYXRhcyA9IFsuLi5oYW5kbGVyRGF0YXMsIG5vZGVdO1xyXG4gICAgICByZXR1cm4gbm9kZTtcclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5ub2RlcyA9IHRoaXMuc2V0Q2F0ZWdvcnkodmFsdWUuZmlsdGVyKCh4KSA9PiBYSXNFbXB0eSh4LnBpZCkpKS5tYXAoKHgpID0+IGdldENoaWxkcmVuKHgsIDApKTtcclxuICAgIHRoaXMuZGF0YXMgPSBoYW5kbGVyRGF0YXM7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFJvb3QodmFsdWU6IFhNZW51Tm9kZSkge1xyXG4gICAgbGV0IHJvb3QgPSB2YWx1ZTtcclxuICAgIGNvbnN0IGdldFBhcmVudCA9IChub2RlOiBYTWVudU5vZGUpID0+IHtcclxuICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5kYXRhcy5maW5kKCh4KSA9PiBub2RlLnBpZCA9PT0geC5pZCkgYXMgWE1lbnVOb2RlO1xyXG4gICAgICBpZiAoWElzRW1wdHkocGFyZW50Py5waWQpKSByb290ID0gcGFyZW50O1xyXG4gICAgICBlbHNlIGdldFBhcmVudChwYXJlbnQpO1xyXG4gICAgfTtcclxuICAgIGlmICghWElzRW1wdHkodmFsdWUucGlkKSkgZ2V0UGFyZW50KHZhbHVlKTtcclxuICAgIHJldHVybiByb290O1xyXG4gIH1cclxuXHJcbiAgc2V0Q2F0ZWdvcnkobm9kZXM6IFhNZW51Tm9kZVtdKSB7XHJcbiAgICBjb25zdCBncm91cCA9IGdyb3VwQnkobm9kZXMgYXMgWE1lbnVOb2RlW10sICdjYXRlZ29yeScpO1xyXG4gICAgZm9yIChsZXQgbGlzdCBvZiBncm91cCkge1xyXG4gICAgICBjb25zdCBmaXJzdCA9IGxpc3RbMF07XHJcbiAgICAgIGlmIChmaXJzdC5jYXRlZ29yeSkge1xyXG4gICAgICAgIGxpc3QudW5zaGlmdCh7XHJcbiAgICAgICAgICBpZDogYCR7Zmlyc3QucGlkfV9fJHtmaXJzdC5jYXRlZ29yeX1gLFxyXG4gICAgICAgICAgcGlkOiBmaXJzdC5waWQsXHJcbiAgICAgICAgICBsYWJlbDogZmlyc3QuY2F0ZWdvcnksXHJcbiAgICAgICAgICBsZXZlbDogZmlyc3QubGV2ZWwsXHJcbiAgICAgICAgICBjYXRlZ29yeU5vZGU6IHRydWVcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgbGV0IGNvbjogWE1lbnVOb2RlW10gPSBbXTtcclxuICAgIGdyb3VwLm1hcCgoeCkgPT4ge1xyXG4gICAgICBjb24gPSBjb24uY29uY2F0KHgpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gY29uO1xyXG4gIH1cclxuXHJcbiAgc2V0QWN0aXZhdGVkTm9kZShub2RlczogWE1lbnVOb2RlW10pIHtcclxuICAgIHRoaXMuYWN0aXZhdGVkID0gbm9kZXMuZmluZCgoeCkgPT4geC5pZCA9PSB0aGlzLmFjdGl2YXRlZElkKSBhcyBYTWVudU5vZGU7XHJcbiAgICB0aGlzLnJvb3RJbmRleCA9IG5vZGVzLmZpbmRJbmRleCgoeCkgPT4geC5pZCA9PSB0aGlzLmFjdGl2YXRlZElkICYmICF4LnBpZCk7XHJcbiAgICBpZiAodGhpcy5hY3RpdmF0ZWQpIHtcclxuICAgICAgdGhpcy5zZXRQYXJlbnRPcGVuKG5vZGVzLCB0aGlzLmFjdGl2YXRlZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRQYXJlbnRPcGVuKG5vZGVzOiBYTWVudU5vZGVbXSwgbm9kZTogWE1lbnVOb2RlKSB7XHJcbiAgICBjb25zdCBnZXRQYXJlbnQgPSAoY2hpbGQ6IFhNZW51Tm9kZSkgPT4ge1xyXG4gICAgICBpZiAoWElzRW1wdHkoY2hpbGQucGlkKSkgcmV0dXJuO1xyXG4gICAgICBjb25zdCBwYXJlbnQgPSBub2Rlcy5maW5kKCh4KSA9PiB4LmlkID09PSBjaGlsZC5waWQpIGFzIFhNZW51Tm9kZTtcclxuICAgICAgaWYgKCFYSXNFbXB0eShwYXJlbnQpKSB7XHJcbiAgICAgICAgdGhpcy5leHBhbmRlZCA9IFsuLi50aGlzLmV4cGFuZGVkLCBwYXJlbnQuaWRdO1xyXG4gICAgICAgIGdldFBhcmVudChwYXJlbnQpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgZ2V0UGFyZW50KG5vZGUpO1xyXG4gIH1cclxuXHJcbiAgdHJhY2tCeU5vZGUoX2luZGV4OiBudW1iZXIsIGl0ZW06IFhNZW51Tm9kZSkge1xyXG4gICAgcmV0dXJuIGl0ZW0uaWQ7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgI21lbnUgY2xhc3M9XCJ4LW1lbnVcIiBbbmdDbGFzc109XCJjbGFzc01hcFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJ4LW1lbnUtbm9kZXNcIiAqbmdJZj1cImxheW91dCA9PT0gJ2NvbHVtbidcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG5vZGUgb2Ygbm9kZXM7IHRyYWNrQnk6IHRyYWNrQnlOb2RlXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJub2RlQ29sdW1uVHBsOyBjb250ZXh0OiB7ICRub2RlOiBub2RlLCAkY2hpbGRyZW46IHRydWUgfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgPHgtc2xpZGVyXHJcbiAgICAqbmdJZj1cImxheW91dCA9PT0gJ3JvdydcIlxyXG4gICAgW2RhdGFdPVwibm9kZXNcIlxyXG4gICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICBbbm9kZVRwbF09XCJub2RlUm93VHBsXCJcclxuICAgIFtub2RlSnVzdGlmeV09XCInY2VudGVyJ1wiXHJcbiAgICBbYWN0aXZhdGVkSW5kZXhdPVwicm9vdEluZGV4XCJcclxuICAgIChpbmRleENoYW5nZSk9XCJyb290SW5kZXhDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgPjwveC1zbGlkZXI+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNub2RlVHBsIGxldC1ub2RlPVwiJG5vZGVcIj5cclxuICA8eC1kcm9wZG93blxyXG4gICAgKm5nSWY9XCJub2RlLmxldmVsID09PSAwICYmIGNvbGxhcHNlZFwiXHJcbiAgICBbZGlzYWJsZWRdPVwiIW5vZGUubGVhZlwiXHJcbiAgICBbZGF0YV09XCJub2RlLmNoaWxkcmVuXCJcclxuICAgIFt0cmlnZ2VyXT1cInRyaWdnZXJcIlxyXG4gICAgcGxhY2VtZW50PVwicmlnaHQtc3RhcnRcIlxyXG4gICAgKG5vZGVDbGljayk9XCJvbk5vZGVDbGljaygkZXZlbnQpXCJcclxuICAgIFtwb3J0YWxNaW5XaWR0aF09XCJwb3J0YWxNaW5XaWR0aFwiXHJcbiAgICBjaGlsZHJlblxyXG4gID5cclxuICAgIDx4LW1lbnUtbm9kZSBbbm9kZV09XCJub2RlXCIgW21lbnVdPVwidGhpc1wiPjwveC1tZW51LW5vZGU+XHJcbiAgPC94LWRyb3Bkb3duPlxyXG4gIDx4LW1lbnUtbm9kZSAqbmdJZj1cIiFjb2xsYXBzZWRcIiBbbm9kZV09XCJub2RlXCIgW21lbnVdPVwidGhpc1wiPjwveC1tZW51LW5vZGU+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI25vZGVSb3dUcGwgbGV0LW5vZGU9XCIkbm9kZVwiPlxyXG4gIDx4LWRyb3Bkb3duXHJcbiAgICBbZGlzYWJsZWRdPVwiIW5vZGUubGVhZlwiXHJcbiAgICBbZGF0YV09XCJub2RlLmNoaWxkcmVuXCJcclxuICAgIFt0cmlnZ2VyXT1cInRyaWdnZXJcIlxyXG4gICAgKG5vZGVDbGljayk9XCJvbk5vZGVDbGljaygkZXZlbnQpXCJcclxuICAgIFtwb3J0YWxNaW5XaWR0aF09XCJwb3J0YWxNaW5XaWR0aFwiXHJcbiAgICBjaGlsZHJlblxyXG4gID5cclxuICAgIDxkaXYgY2xhc3M9XCJ4LW1lbnUtbm9kZVwiIFtuZ0NsYXNzXT1cIm5vZGVDbGFzc01hcFwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibm9kZVRwbDsgY29udGV4dDogeyAkbm9kZTogbm9kZSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L3gtZHJvcGRvd24+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI25vZGVDb2x1bW5UcGwgbGV0LW5vZGU9XCIkbm9kZVwiPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwieC1tZW51LW5vZGVcIlxyXG4gICAgW2NsYXNzLngtYWN0aXZhdGVkXT1cImFjdGl2YXRlZD8uaWQgPT09IG5vZGUuaWRcIlxyXG4gICAgW2NsYXNzLngtbWVudS1jYXRlZ29yeV09XCJub2RlLmNhdGVnb3J5Tm9kZVwiXHJcbiAgICBbbmdDbGFzc109XCJub2RlQ2xhc3NNYXBcIlxyXG4gICAgKGNsaWNrKT1cIm9uVG9nZ2xlKCRldmVudCwgbm9kZSlcIlxyXG4gICAgW3N0eWxlLnBhZGRpbmctbGVmdC5yZW1dPVwiKG5vZGUubGV2ZWwgKyAxKSAqIDAuODc1XCJcclxuICA+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibm9kZVRwbDsgY29udGV4dDogeyAkbm9kZTogbm9kZSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIngtbWVudS1ub2Rlc1wiICpuZ0lmPVwibm9kZS5jaGlsZHJlbkxvYWRlZCB8fCAobm9kZS5sZWFmICYmIG5vZGUub3BlbilcIiBbaGlkZGVuXT1cIiFub2RlLm9wZW5cIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIG5vZGUuY2hpbGRyZW47IHRyYWNrQnk6IHRyYWNrQnlOb2RlXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJub2RlQ29sdW1uVHBsOyBjb250ZXh0OiB7ICRub2RlOiBjaGlsZCB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
196
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9tZW51L21lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvbWVudS9tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsaUJBQWlCLEVBSWpCLHVCQUF1QixFQUt2QixNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBYSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEVBQWEsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFrQixNQUFNLGtCQUFrQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7O0FBUzNDLE1BQU0sT0FBTyxjQUFlLFNBQVEsYUFBYTtJQWUvQyxZQUNTLFFBQW1CLEVBQ25CLFVBQXNCLEVBQ3RCLEdBQXNCLEVBQ0osR0FBUSxFQUMxQixhQUE2QjtRQUVwQyxLQUFLLEVBQUUsQ0FBQztRQU5ELGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUNKLFFBQUcsR0FBSCxHQUFHLENBQUs7UUFDMUIsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBbkJ0QyxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUlyQixpQkFBWSxHQUFjLEVBQUUsQ0FBQztRQUM3QixVQUFLLEdBQWdCLEVBQUUsQ0FBQztRQUN4QixVQUFLLEdBQWdCLEVBQUUsQ0FBQztRQUN4QixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBR3RCLGFBQVEsR0FBVSxFQUFFLENB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Q0FBQztJQUNsQixDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQWMsRUFBRSxJQUFlO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNqQixDQUFDOztpSkEzTFUsY0FBYyxzR0FtQmYsUUFBUTtxSUFuQlAsY0FBYywwRkMxQjNCLGk1RUFpRUE7MkZEdkNhLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0UsR0FBRyxXQUFXLEVBQUUsaUJBR1gsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs7MEJBcUI1QyxNQUFNOzJCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgSW5qZWN0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhNZW51UHJlZml4LCBYTWVudU5vZGUsIFhNZW51UHJvcGVydHkgfSBmcm9tICcuL21lbnUucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYQ2xhc3NNYXAsIFhJc0NoYW5nZSwgWElzRW1wdHksIFhTZXREYXRhLCBncm91cEJ5LCBYQ29uZmlnU2VydmljZSB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYTWVudVByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tZW51LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWE1lbnVDb21wb25lbnQgZXh0ZW5kcyBYTWVudVByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgc2hvd0NhdGVnb3J5ID0gZmFsc2U7XHJcbiAgZ2V0IHNjcm9sbCgpOiBIVE1MRWxlbWVudCB7XHJcbiAgICByZXR1cm4gdGhpcy5fdGFyZ2V0O1xyXG4gIH1cclxuICBub2RlQ2xhc3NNYXA6IFhDbGFzc01hcCA9IHt9O1xyXG4gIGRhdGFzOiBYTWVudU5vZGVbXSA9IFtdO1xyXG4gIG5vZGVzOiBYTWVudU5vZGVbXSA9IFtdO1xyXG4gIHJvb3RJbmRleDogbnVtYmVyID0gMDtcclxuICBhY3RpdmF0ZWQhOiBYTWVudU5vZGU7XHJcbiAgYWN0aXZhdGVkRWxlbWVudFJlZiE6IEVsZW1lbnRSZWY7XHJcbiAgZXhwYW5kZWQ6IGFueVtdID0gW107XHJcbiAgcHJpdmF0ZSBfdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwcml2YXRlIF90YXJnZXQhOiBIVE1MRWxlbWVudDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwdWJsaWMgZG9jOiBhbnksXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0Q2xhc3NNYXAoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgYWN0aXZhdGVkSWQsIGNvbGxhcHNlZCwgdGFyZ2V0IH0gPSBjaGFuZ2VzO1xyXG4gICAgWElzQ2hhbmdlKGRhdGEpICYmIHRoaXMuc2V0RGF0YSgpO1xyXG4gICAgWElzQ2hhbmdlKGFjdGl2YXRlZElkKSAmJiB0aGlzLnNldEFjdGl2YXRlZE5vZGUodGhpcy5kYXRhcyk7XHJcbiAgICBYSXNDaGFuZ2UoY29sbGFwc2VkKSAmJiB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgICBpZiAoWElzQ2hhbmdlKHRhcmdldCkpIHtcclxuICAgICAgdGhpcy5fdGFyZ2V0ID0gdHlwZW9mIHRoaXMudGFyZ2V0ID09PSAnc3RyaW5nJyA/IHRoaXMuZG9jLnF1ZXJ5U2VsZWN0b3IodGhpcy50YXJnZXQpIDogdGhpcy50YXJnZXQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5uZXh0KCk7XHJcbiAgICB0aGlzLl91blN1YmplY3QudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmICh0aGlzLmFjdGl2YXRlZEVsZW1lbnRSZWYgJiYgdGhpcy5zY3JvbGwpIHtcclxuICAgICAgY29uc3Qgbm9kZVJlY3Q6IERPTVJlY3QgPSB0aGlzLmFjdGl2YXRlZEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgY29uc3Qgc2Nyb2xsUmVjdDogRE9NUmVjdCA9IHRoaXMuc2Nyb2xsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICBsZXQgc2Nyb2xsVG9wID0gbm9kZVJlY3QudG9wIC0gc2Nyb2xsUmVjdC50b3AgLSBzY3JvbGxSZWN0LmhlaWdodDtcclxuICAgICAgaWYgKHNjcm9sbFRvcCA+IDApIHtcclxuICAgICAgICBsZXQgb2Zmc2V0ID0gMDtcclxuICAgICAgICB3aGlsZSAob2Zmc2V0IDwgc2Nyb2xsUmVjdC5oZWlnaHQgLyAyKSB7XHJcbiAgICAgICAgICBvZmZzZXQgPSBvZmZzZXQgKyBub2RlUmVjdC5oZWlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2Nyb2xsLnNjcm9sbFRvcCA9IHNjcm9sbFRvcCArIG9mZnNldDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25Ob2RlQ2xpY2sobm9kZTogWE1lbnVOb2RlKSB7XHJcbiAgICBpZiAoIXRoaXMuY29sbGFwc2VkKSB7XHJcbiAgICAgIHRoaXMucm9vdEluZGV4ID0gdGhpcy5ub2Rlcy5pbmRleE9mKHRoaXMuZ2V0Um9vdChub2RlKSk7XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVkSWQgPSBub2RlLmlkO1xyXG4gICAgICB0aGlzLmFjdGl2YXRlZCA9IG5vZGU7XHJcbiAgICAgIHRoaXMubm9kZUNsaWNrLmVtaXQobm9kZSk7XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVkSWRDaGFuZ2UuZW1pdChub2RlLmlkKTtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5vblRvZ2dsZShudWxsLCBub2RlLCB0cnVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJvb3RJbmRleENoYW5nZShpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnJvb3RJbmRleCA9IGluZGV4O1xyXG4gICAgbGV0IG5vZGUgPSB0aGlzLm5vZGVzW2luZGV4XTtcclxuICAgIHRoaXMuYWN0aXZhdGVkSWQgPSBub2RlLmlkO1xyXG4gICAgdGhpcy5hY3RpdmF0ZWQgPSBub2RlO1xyXG4gICAgdGhpcy5ub2RlQ2xpY2suZW1pdChub2RlKTtcclxuICAgIHRoaXMuYWN0aXZhdGVkSWRDaGFuZ2UuZW1pdChub2RlLmlkKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uVG9nZ2xlKGV2ZW50OiBFdmVudCB8IG51bGwsIG5vZGU6IFhNZW51Tm9kZSwgaXNEcm9wZG93biA9IGZhbHNlKSB7XHJcbiAgICBpZiAoKHRoaXMuY29sbGFwc2VkICYmICFpc0Ryb3Bkb3duKSB8fCBub2RlLmNhdGVnb3J5Tm9kZSkgcmV0dXJuO1xyXG4gICAgaWYgKCFub2RlLmxlYWYpIHtcclxuICAgICAgdGhpcy5hY3RpdmF0ZWQgPSBub2RlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgICBub2RlLm9wZW4gPSAhbm9kZS5vcGVuO1xyXG4gICAgICBpZiAobm9kZS5vcGVuICYmICFub2RlLmNoaWxkcmVuTG9hZGVkKSB7XHJcbiAgICAgICAgbm9kZS5jaGlsZHJlbkxvYWRlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMubm9kZUNsaWNrLmVtaXQobm9kZSk7XHJcbiAgICBub2RlLmNoYW5nZSAmJiBub2RlLmNoYW5nZSgpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xhc3NNYXAoKSB7XHJcbiAgICB0aGlzLmNsYXNzTWFwW2Ake1hNZW51UHJlZml4fS0ke3RoaXMubGF5b3V0fWBdID0gdGhpcy5sYXlvdXQgPyB0cnVlIDogZmFsc2U7XHJcbiAgICB0aGlzLmNsYXNzTWFwW2Ake1hNZW51UHJlZml4fS1jb2xsYXBzZWRgXSA9IEJvb2xlYW4odGhpcy5jb2xsYXBzZWQpO1xyXG4gICAgdGhpcy5ub2RlQ2xhc3NNYXBbYHgtc2l6ZS0ke3RoaXMuc2l6ZX1gXSA9IHRoaXMuc2l6ZSA/IHRydWUgOiBmYWxzZTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0RGF0YSgpIHtcclxuICAgIFhTZXREYXRhPFhNZW51Tm9kZT4odGhpcy5kYXRhLCB0aGlzLl91blN1YmplY3QpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLnNldERhdGFDaGFuZ2UoeCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0RGF0YUNoYW5nZSh2YWx1ZTogWE1lbnVOb2RlW10pIHtcclxuICAgICFYSXNFbXB0eSh0aGlzLmFjdGl2YXRlZElkKSAmJiB0aGlzLnNldEFjdGl2YXRlZE5vZGUodmFsdWUpO1xyXG4gICAgbGV0IGhhbmRsZXJEYXRhczogWE1lbnVOb2RlW10gPSBbXTtcclxuICAgIGNvbnN0IGdldENoaWxkcmVuID0gKG5vZGU6IFhNZW51Tm9kZSwgbGV2ZWw6IG51bWJlcikgPT4ge1xyXG4gICAgICBub2RlLmxldmVsID0gbGV2ZWw7XHJcbiAgICAgIG5vZGUuY2hpbGRyZW4gPSB2YWx1ZS5maWx0ZXIoKHkpID0+IHkucGlkID09PSBub2RlLmlkKTtcclxuICAgICAgbm9kZS5sZWFmID0gbm9kZS5jaGlsZHJlbj8ubGVuZ3RoID4gMDtcclxuICAgICAgaWYgKG5vZGUubGVhZikge1xyXG4gICAgICAgIG5vZGUub3BlbiA9IEJvb2xlYW4odGhpcy5leHBhbmRlZEFsbCkgfHwgbGV2ZWwgPD0gdGhpcy5leHBhbmRlZExldmVsIHx8IHRoaXMuZXhwYW5kZWQuaW5kZXhPZihub2RlLmlkKSA+PSAwO1xyXG4gICAgICAgIG5vZGUuY2hpbGRyZW5Mb2FkZWQgPSBub2RlLm9wZW47XHJcbiAgICAgICAgbm9kZS5jaGlsZHJlbi5tYXAoKHkpID0+IGdldENoaWxkcmVuKHksIGxldmVsICsgMSkpO1xyXG4gICAgICAgIG5vZGUuY2hpbGRyZW4gPSB0aGlzLnNldENhdGVnb3J5KG5vZGUuY2hpbGRyZW4pO1xyXG4gICAgICB9XHJcbiAgICAgIGhhbmRsZXJEYXRhcyA9IFsuLi5oYW5kbGVyRGF0YXMsIG5vZGVdO1xyXG4gICAgICByZXR1cm4gbm9kZTtcclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5ub2RlcyA9IHRoaXMuc2V0Q2F0ZWdvcnkodmFsdWUuZmlsdGVyKCh4KSA9PiBYSXNFbXB0eSh4LnBpZCkpKS5tYXAoKHgpID0+IGdldENoaWxkcmVuKHgsIDApKTtcclxuICAgIHRoaXMuZGF0YXMgPSBoYW5kbGVyRGF0YXM7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFJvb3QodmFsdWU6IFhNZW51Tm9kZSkge1xyXG4gICAgbGV0IHJvb3QgPSB2YWx1ZTtcclxuICAgIGNvbnN0IGdldFBhcmVudCA9IChub2RlOiBYTWVudU5vZGUpID0+IHtcclxuICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5kYXRhcy5maW5kKCh4KSA9PiBub2RlLnBpZCA9PT0geC5pZCkgYXMgWE1lbnVOb2RlO1xyXG4gICAgICBpZiAoWElzRW1wdHkocGFyZW50Py5waWQpKSByb290ID0gcGFyZW50O1xyXG4gICAgICBlbHNlIGdldFBhcmVudChwYXJlbnQpO1xyXG4gICAgfTtcclxuICAgIGlmICghWElzRW1wdHkodmFsdWUucGlkKSkgZ2V0UGFyZW50KHZhbHVlKTtcclxuICAgIHJldHVybiByb290O1xyXG4gIH1cclxuXHJcbiAgc2V0Q2F0ZWdvcnkobm9kZXM6IFhNZW51Tm9kZVtdKSB7XHJcbiAgICBjb25zdCBncm91cCA9IGdyb3VwQnkobm9kZXMgYXMgWE1lbnVOb2RlW10sICdjYXRlZ29yeScpO1xyXG4gICAgZm9yIChsZXQgbGlzdCBvZiBncm91cCkge1xyXG4gICAgICBjb25zdCBmaXJzdCA9IGxpc3RbMF07XHJcbiAgICAgIGlmIChmaXJzdC5jYXRlZ29yeSkge1xyXG4gICAgICAgIGxpc3QudW5zaGlmdCh7XHJcbiAgICAgICAgICBpZDogYCR7Zmlyc3QucGlkfV9fJHtmaXJzdC5jYXRlZ29yeX1gLFxyXG4gICAgICAgICAgcGlkOiBmaXJzdC5waWQsXHJcbiAgICAgICAgICBsYWJlbDogZmlyc3QuY2F0ZWdvcnksXHJcbiAgICAgICAgICBsZXZlbDogZmlyc3QubGV2ZWwsXHJcbiAgICAgICAgICBjYXRlZ29yeU5vZGU6IHRydWVcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgbGV0IGNvbjogWE1lbnVOb2RlW10gPSBbXTtcclxuICAgIGdyb3VwLm1hcCgoeCkgPT4ge1xyXG4gICAgICBjb24gPSBjb24uY29uY2F0KHgpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gY29uO1xyXG4gIH1cclxuXHJcbiAgc2V0QWN0aXZhdGVkTm9kZShub2RlczogWE1lbnVOb2RlW10pIHtcclxuICAgIHRoaXMuYWN0aXZhdGVkID0gbm9kZXMuZmluZCgoeCkgPT4geC5pZCA9PSB0aGlzLmFjdGl2YXRlZElkKSBhcyBYTWVudU5vZGU7XHJcbiAgICB0aGlzLnJvb3RJbmRleCA9IG5vZGVzLmZpbmRJbmRleCgoeCkgPT4geC5pZCA9PSB0aGlzLmFjdGl2YXRlZElkICYmICF4LnBpZCk7XHJcbiAgICBpZiAodGhpcy5hY3RpdmF0ZWQpIHtcclxuICAgICAgdGhpcy5zZXRQYXJlbnRPcGVuKG5vZGVzLCB0aGlzLmFjdGl2YXRlZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRQYXJlbnRPcGVuKG5vZGVzOiBYTWVudU5vZGVbXSwgbm9kZTogWE1lbnVOb2RlKSB7XHJcbiAgICBjb25zdCBnZXRQYXJlbnQgPSAoY2hpbGQ6IFhNZW51Tm9kZSkgPT4ge1xyXG4gICAgICBpZiAoWElzRW1wdHkoY2hpbGQucGlkKSkgcmV0dXJuO1xyXG4gICAgICBjb25zdCBwYXJlbnQgPSBub2Rlcy5maW5kKCh4KSA9PiB4LmlkID09PSBjaGlsZC5waWQpIGFzIFhNZW51Tm9kZTtcclxuICAgICAgaWYgKCFYSXNFbXB0eShwYXJlbnQpKSB7XHJcbiAgICAgICAgdGhpcy5leHBhbmRlZCA9IFsuLi50aGlzLmV4cGFuZGVkLCBwYXJlbnQuaWRdO1xyXG4gICAgICAgIGdldFBhcmVudChwYXJlbnQpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgZ2V0UGFyZW50KG5vZGUpO1xyXG4gIH1cclxuXHJcbiAgdHJhY2tCeU5vZGUoX2luZGV4OiBudW1iZXIsIGl0ZW06IFhNZW51Tm9kZSkge1xyXG4gICAgcmV0dXJuIGl0ZW0uaWQ7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgI21lbnUgY2xhc3M9XCJ4LW1lbnVcIiBbbmdDbGFzc109XCJjbGFzc01hcFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJ4LW1lbnUtbm9kZXNcIiAqbmdJZj1cImxheW91dCA9PT0gJ2NvbHVtbidcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG5vZGUgb2Ygbm9kZXM7IHRyYWNrQnk6IHRyYWNrQnlOb2RlXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJub2RlQ29sdW1uVHBsOyBjb250ZXh0OiB7ICRub2RlOiBub2RlLCAkY2hpbGRyZW46IHRydWUgfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgPHgtc2xpZGVyXHJcbiAgICAqbmdJZj1cImxheW91dCA9PT0gJ3JvdydcIlxyXG4gICAgW2RhdGFdPVwibm9kZXNcIlxyXG4gICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICBbbm9kZVRwbF09XCJub2RlUm93VHBsXCJcclxuICAgIFtub2RlSnVzdGlmeV09XCInY2VudGVyJ1wiXHJcbiAgICBbYWN0aXZhdGVkSW5kZXhdPVwicm9vdEluZGV4XCJcclxuICAgIChpbmRleENoYW5nZSk9XCJyb290SW5kZXhDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgPjwveC1zbGlkZXI+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNub2RlVHBsIGxldC1ub2RlPVwiJG5vZGVcIj5cclxuICA8eC1kcm9wZG93blxyXG4gICAgKm5nSWY9XCJub2RlLmxldmVsID09PSAwICYmIGNvbGxhcHNlZFwiXHJcbiAgICBbZGlzYWJsZWRdPVwiIW5vZGUubGVhZlwiXHJcbiAgICBbZGF0YV09XCJub2RlLmNoaWxkcmVuXCJcclxuICAgIFt0cmlnZ2VyXT1cInRyaWdnZXJcIlxyXG4gICAgcGxhY2VtZW50PVwicmlnaHQtc3RhcnRcIlxyXG4gICAgKG5vZGVDbGljayk9XCJvbk5vZGVDbGljaygkZXZlbnQpXCJcclxuICAgIFtwb3J0YWxNaW5XaWR0aF09XCJwb3J0YWxNaW5XaWR0aFwiXHJcbiAgICBjaGlsZHJlblxyXG4gID5cclxuICAgIDx4LW1lbnUtbm9kZSBbbm9kZV09XCJub2RlXCIgW21lbnVdPVwidGhpc1wiPjwveC1tZW51LW5vZGU+XHJcbiAgPC94LWRyb3Bkb3duPlxyXG4gIDx4LW1lbnUtbm9kZSAqbmdJZj1cIiFjb2xsYXBzZWRcIiBbbm9kZV09XCJub2RlXCIgW21lbnVdPVwidGhpc1wiPjwveC1tZW51LW5vZGU+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI25vZGVSb3dUcGwgbGV0LW5vZGU9XCIkbm9kZVwiPlxyXG4gIDx4LWRyb3Bkb3duXHJcbiAgICBbZGlzYWJsZWRdPVwiIW5vZGUubGVhZlwiXHJcbiAgICBbZGF0YV09XCJub2RlLmNoaWxkcmVuXCJcclxuICAgIFt0cmlnZ2VyXT1cInRyaWdnZXJcIlxyXG4gICAgKG5vZGVDbGljayk9XCJvbk5vZGVDbGljaygkZXZlbnQpXCJcclxuICAgIFtwb3J0YWxNaW5XaWR0aF09XCJwb3J0YWxNaW5XaWR0aFwiXHJcbiAgICBjaGlsZHJlblxyXG4gID5cclxuICAgIDxkaXYgY2xhc3M9XCJ4LW1lbnUtbm9kZVwiIFtuZ0NsYXNzXT1cIm5vZGVDbGFzc01hcFwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibm9kZVRwbDsgY29udGV4dDogeyAkbm9kZTogbm9kZSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L3gtZHJvcGRvd24+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI25vZGVDb2x1bW5UcGwgbGV0LW5vZGU9XCIkbm9kZVwiPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwieC1tZW51LW5vZGVcIlxyXG4gICAgW2NsYXNzLngtYWN0aXZhdGVkXT1cImFjdGl2YXRlZD8uaWQgPT09IG5vZGUuaWRcIlxyXG4gICAgW2NsYXNzLngtbWVudS1jYXRlZ29yeV09XCJub2RlLmNhdGVnb3J5Tm9kZVwiXHJcbiAgICBbbmdDbGFzc109XCJub2RlQ2xhc3NNYXBcIlxyXG4gICAgKGNsaWNrKT1cIm9uVG9nZ2xlKCRldmVudCwgbm9kZSlcIlxyXG4gICAgW3N0eWxlLnBhZGRpbmctbGVmdC5yZW1dPVwiKG5vZGUubGV2ZWwgKyAxKSAqIDAuODc1XCJcclxuICA+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibm9kZVRwbDsgY29udGV4dDogeyAkbm9kZTogbm9kZSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIngtbWVudS1ub2Rlc1wiICpuZ0lmPVwibm9kZS5jaGlsZHJlbkxvYWRlZCB8fCAobm9kZS5sZWFmICYmIG5vZGUub3BlbilcIiBbaGlkZGVuXT1cIiFub2RlLm9wZW5cIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIG5vZGUuY2hpbGRyZW47IHRyYWNrQnk6IHRyYWNrQnlOb2RlXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJub2RlQ29sdW1uVHBsOyBjb250ZXh0OiB7ICRub2RlOiBjaGlsZCB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19