@ng-nest/ui 13.0.6 → 13.0.7

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 (461) hide show
  1. package/core/config/config.d.ts +4 -1
  2. package/esm2020/affix/affix.component.mjs +3 -3
  3. package/esm2020/affix/affix.module.mjs +4 -4
  4. package/esm2020/affix/affix.property.mjs +3 -3
  5. package/esm2020/alert/alert.component.mjs +3 -3
  6. package/esm2020/alert/alert.module.mjs +4 -4
  7. package/esm2020/alert/alert.property.mjs +3 -3
  8. package/esm2020/anchor/anchor.component.mjs +3 -3
  9. package/esm2020/anchor/anchor.module.mjs +4 -4
  10. package/esm2020/anchor/anchor.property.mjs +3 -3
  11. package/esm2020/api/api.component.mjs +3 -3
  12. package/esm2020/api/api.module.mjs +4 -4
  13. package/esm2020/auto-complete/auto-complete-portal.component.mjs +3 -3
  14. package/esm2020/auto-complete/auto-complete.component.mjs +3 -3
  15. package/esm2020/auto-complete/auto-complete.module.mjs +4 -4
  16. package/esm2020/auto-complete/auto-complete.property.mjs +3 -3
  17. package/esm2020/avatar/avatar.component.mjs +3 -3
  18. package/esm2020/avatar/avatar.module.mjs +4 -4
  19. package/esm2020/avatar/avatar.property.mjs +3 -3
  20. package/esm2020/back-top/back-top.component.mjs +3 -3
  21. package/esm2020/back-top/back-top.module.mjs +4 -4
  22. package/esm2020/back-top/back-top.property.mjs +3 -3
  23. package/esm2020/badge/badge.component.mjs +3 -3
  24. package/esm2020/badge/badge.module.mjs +4 -4
  25. package/esm2020/badge/badge.property.mjs +3 -3
  26. package/esm2020/base-form/base-form.component.mjs +3 -3
  27. package/esm2020/base-form/base-form.module.mjs +4 -4
  28. package/esm2020/base-form/base-form.property.mjs +3 -3
  29. package/esm2020/border/border.component.mjs +3 -3
  30. package/esm2020/border/border.module.mjs +4 -4
  31. package/esm2020/button/button.component.mjs +3 -3
  32. package/esm2020/button/button.module.mjs +4 -4
  33. package/esm2020/button/button.property.mjs +6 -6
  34. package/esm2020/button/buttons.component.mjs +3 -3
  35. package/esm2020/calendar/calendar.component.mjs +3 -3
  36. package/esm2020/calendar/calendar.module.mjs +4 -4
  37. package/esm2020/calendar/calendar.property.mjs +3 -3
  38. package/esm2020/card/card.component.mjs +3 -3
  39. package/esm2020/card/card.module.mjs +4 -4
  40. package/esm2020/card/card.property.mjs +3 -3
  41. package/esm2020/carousel/carousel-panel.component.mjs +3 -3
  42. package/esm2020/carousel/carousel.component.mjs +3 -3
  43. package/esm2020/carousel/carousel.module.mjs +4 -4
  44. package/esm2020/carousel/carousel.property.mjs +6 -6
  45. package/esm2020/cascade/cascade-portal.component.mjs +3 -3
  46. package/esm2020/cascade/cascade.component.mjs +3 -3
  47. package/esm2020/cascade/cascade.module.mjs +4 -4
  48. package/esm2020/cascade/cascade.property.mjs +3 -3
  49. package/esm2020/checkbox/checkbox.component.mjs +3 -3
  50. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  51. package/esm2020/checkbox/checkbox.property.mjs +3 -3
  52. package/esm2020/collapse/collapse-panel.component.mjs +3 -3
  53. package/esm2020/collapse/collapse.component.mjs +3 -3
  54. package/esm2020/collapse/collapse.module.mjs +4 -4
  55. package/esm2020/collapse/collapse.property.mjs +6 -6
  56. package/esm2020/color/color.component.mjs +3 -3
  57. package/esm2020/color/color.module.mjs +4 -4
  58. package/esm2020/color/color.property.mjs +3 -3
  59. package/esm2020/color-picker/color-picker-portal.component.mjs +3 -3
  60. package/esm2020/color-picker/color-picker.component.mjs +3 -3
  61. package/esm2020/color-picker/color-picker.module.mjs +4 -4
  62. package/esm2020/color-picker/color-picker.property.mjs +3 -3
  63. package/esm2020/comment/comment-reply.component.mjs +3 -3
  64. package/esm2020/comment/comment.component.mjs +3 -3
  65. package/esm2020/comment/comment.module.mjs +4 -4
  66. package/esm2020/comment/comment.property.mjs +6 -6
  67. package/esm2020/container/aside.component.mjs +3 -3
  68. package/esm2020/container/container.component.mjs +3 -3
  69. package/esm2020/container/container.module.mjs +4 -4
  70. package/esm2020/container/container.property.mjs +12 -12
  71. package/esm2020/container/footer.component.mjs +3 -3
  72. package/esm2020/container/header.component.mjs +3 -3
  73. package/esm2020/container/main.component.mjs +3 -3
  74. package/esm2020/core/config/config.mjs +1 -1
  75. package/esm2020/core/config/config.service.mjs +3 -3
  76. package/esm2020/core/services/http.service.mjs +3 -3
  77. package/esm2020/core/services/preloading-strategy.service.mjs +3 -3
  78. package/esm2020/core/services/storage.service.mjs +3 -3
  79. package/esm2020/core/theme/theme.service.mjs +3 -3
  80. package/esm2020/crumb/crumb.component.mjs +3 -3
  81. package/esm2020/crumb/crumb.module.mjs +4 -4
  82. package/esm2020/crumb/crumb.property.mjs +3 -3
  83. package/esm2020/date-picker/date-picker-portal.component.mjs +3 -3
  84. package/esm2020/date-picker/date-picker.component.mjs +3 -3
  85. package/esm2020/date-picker/date-picker.module.mjs +4 -4
  86. package/esm2020/date-picker/date-picker.property.mjs +15 -15
  87. package/esm2020/date-picker/date-range-portal.component.mjs +3 -3
  88. package/esm2020/date-picker/date-range.component.mjs +3 -3
  89. package/esm2020/date-picker/picker-date.component.mjs +3 -3
  90. package/esm2020/date-picker/picker-month.component.mjs +3 -3
  91. package/esm2020/date-picker/picker-year.component.mjs +3 -3
  92. package/esm2020/description/description-item.component.mjs +3 -3
  93. package/esm2020/description/description.component.mjs +3 -3
  94. package/esm2020/description/description.module.mjs +4 -4
  95. package/esm2020/description/description.property.mjs +6 -6
  96. package/esm2020/dialog/dialog-portal.component.mjs +3 -3
  97. package/esm2020/dialog/dialog-portal.directives.mjs +12 -12
  98. package/esm2020/dialog/dialog.component.mjs +3 -3
  99. package/esm2020/dialog/dialog.module.mjs +4 -4
  100. package/esm2020/dialog/dialog.property.mjs +3 -3
  101. package/esm2020/dialog/dialog.service.mjs +3 -3
  102. package/esm2020/doc/doc.component.mjs +3 -3
  103. package/esm2020/doc/doc.module.mjs +4 -4
  104. package/esm2020/drawer/drawer-container.component.mjs +3 -3
  105. package/esm2020/drawer/drawer-portal.component.mjs +3 -3
  106. package/esm2020/drawer/drawer-portal.directives.mjs +9 -9
  107. package/esm2020/drawer/drawer.component.mjs +3 -3
  108. package/esm2020/drawer/drawer.module.mjs +4 -4
  109. package/esm2020/drawer/drawer.property.mjs +6 -6
  110. package/esm2020/drawer/drawer.service.mjs +3 -3
  111. package/esm2020/dropdown/dropdown-portal.component.mjs +3 -3
  112. package/esm2020/dropdown/dropdown.component.mjs +3 -3
  113. package/esm2020/dropdown/dropdown.module.mjs +4 -4
  114. package/esm2020/dropdown/dropdown.property.mjs +3 -3
  115. package/esm2020/empty/empty.component.mjs +3 -3
  116. package/esm2020/empty/empty.module.mjs +4 -4
  117. package/esm2020/empty/empty.property.mjs +3 -3
  118. package/esm2020/examples/examples.component.mjs +3 -3
  119. package/esm2020/examples/examples.module.mjs +4 -4
  120. package/esm2020/find/find.component.mjs +3 -3
  121. package/esm2020/find/find.module.mjs +4 -4
  122. package/esm2020/find/find.property.mjs +3 -3
  123. package/esm2020/form/control.component.mjs +3 -3
  124. package/esm2020/form/form.component.mjs +3 -3
  125. package/esm2020/form/form.module.mjs +4 -4
  126. package/esm2020/form/form.property.mjs +6 -6
  127. package/esm2020/highlight/highlight.component.mjs +3 -3
  128. package/esm2020/highlight/highlight.module.mjs +4 -4
  129. package/esm2020/highlight/highlight.property.mjs +3 -3
  130. package/esm2020/i18n/i18n.directive.mjs +3 -3
  131. package/esm2020/i18n/i18n.module.mjs +4 -4
  132. package/esm2020/i18n/i18n.pipe.mjs +3 -3
  133. package/esm2020/i18n/i18n.service.mjs +3 -3
  134. package/esm2020/icon/icon.component.mjs +3 -3
  135. package/esm2020/icon/icon.module.mjs +4 -4
  136. package/esm2020/icon/icon.property.mjs +3 -3
  137. package/esm2020/icon/icon.service.mjs +3 -3
  138. package/esm2020/inner/inner.component.mjs +3 -3
  139. package/esm2020/inner/inner.module.mjs +4 -4
  140. package/esm2020/inner/inner.property.mjs +3 -3
  141. package/esm2020/input/input-group.component.mjs +3 -3
  142. package/esm2020/input/input.component.mjs +3 -3
  143. package/esm2020/input/input.module.mjs +4 -4
  144. package/esm2020/input/input.property.mjs +6 -6
  145. package/esm2020/input-number/input-number.component.mjs +3 -3
  146. package/esm2020/input-number/input-number.module.mjs +4 -4
  147. package/esm2020/input-number/input-number.property.mjs +3 -3
  148. package/esm2020/layout/col.component.mjs +3 -3
  149. package/esm2020/layout/layout.module.mjs +4 -4
  150. package/esm2020/layout/layout.property.mjs +6 -6
  151. package/esm2020/layout/row.component.mjs +3 -3
  152. package/esm2020/link/link.component.mjs +3 -3
  153. package/esm2020/link/link.module.mjs +4 -4
  154. package/esm2020/link/link.property.mjs +3 -3
  155. package/esm2020/list/list-option.component.mjs +3 -3
  156. package/esm2020/list/list.component.mjs +3 -3
  157. package/esm2020/list/list.module.mjs +4 -4
  158. package/esm2020/list/list.property.mjs +6 -6
  159. package/esm2020/loading/loading.component.mjs +3 -3
  160. package/esm2020/loading/loading.module.mjs +4 -4
  161. package/esm2020/loading/loading.property.mjs +3 -3
  162. package/esm2020/menu/menu-node.component.mjs +3 -3
  163. package/esm2020/menu/menu.component.mjs +5 -5
  164. package/esm2020/menu/menu.module.mjs +4 -4
  165. package/esm2020/menu/menu.property.mjs +12 -7
  166. package/esm2020/message/message.component.mjs +3 -3
  167. package/esm2020/message/message.module.mjs +4 -4
  168. package/esm2020/message/message.service.mjs +3 -3
  169. package/esm2020/message-box/message-box.component.mjs +3 -3
  170. package/esm2020/message-box/message-box.module.mjs +4 -4
  171. package/esm2020/message-box/message-box.service.mjs +3 -3
  172. package/esm2020/notification/notification.component.mjs +3 -3
  173. package/esm2020/notification/notification.module.mjs +4 -4
  174. package/esm2020/notification/notification.service.mjs +3 -3
  175. package/esm2020/outlet/outlet.directive.mjs +3 -3
  176. package/esm2020/outlet/outlet.module.mjs +4 -4
  177. package/esm2020/page-header/page-header.component.mjs +3 -3
  178. package/esm2020/page-header/page-header.module.mjs +4 -4
  179. package/esm2020/page-header/page-header.property.mjs +3 -3
  180. package/esm2020/pagination/pagination.component.mjs +3 -3
  181. package/esm2020/pagination/pagination.module.mjs +4 -4
  182. package/esm2020/pagination/pagination.property.mjs +3 -3
  183. package/esm2020/pattern/pattern.component.mjs +3 -3
  184. package/esm2020/pattern/pattern.module.mjs +4 -4
  185. package/esm2020/popconfirm/popconfirm.component.mjs +3 -3
  186. package/esm2020/popconfirm/popconfirm.module.mjs +4 -4
  187. package/esm2020/popconfirm/popconfirm.property.mjs +3 -3
  188. package/esm2020/popover/popover-portal.component.mjs +3 -3
  189. package/esm2020/popover/popover.directive.mjs +3 -3
  190. package/esm2020/popover/popover.module.mjs +4 -4
  191. package/esm2020/popover/popover.property.mjs +3 -3
  192. package/esm2020/portal/portal.module.mjs +4 -4
  193. package/esm2020/portal/portal.service.mjs +3 -3
  194. package/esm2020/progress/progress.component.mjs +3 -3
  195. package/esm2020/progress/progress.module.mjs +4 -4
  196. package/esm2020/progress/progress.property.mjs +3 -3
  197. package/esm2020/radio/radio.component.mjs +3 -3
  198. package/esm2020/radio/radio.module.mjs +4 -4
  199. package/esm2020/radio/radio.property.mjs +3 -3
  200. package/esm2020/rate/rate.component.mjs +3 -3
  201. package/esm2020/rate/rate.module.mjs +4 -4
  202. package/esm2020/rate/rate.property.mjs +3 -3
  203. package/esm2020/result/result.component.mjs +3 -3
  204. package/esm2020/result/result.module.mjs +4 -4
  205. package/esm2020/result/result.property.mjs +3 -3
  206. package/esm2020/ripple/ripple.directive.mjs +3 -3
  207. package/esm2020/ripple/ripple.module.mjs +4 -4
  208. package/esm2020/ripple/ripple.property.mjs +3 -3
  209. package/esm2020/select/select-portal.component.mjs +3 -3
  210. package/esm2020/select/select.component.mjs +3 -3
  211. package/esm2020/select/select.module.mjs +4 -4
  212. package/esm2020/select/select.property.mjs +3 -3
  213. package/esm2020/skeleton/skeleton.component.mjs +3 -3
  214. package/esm2020/skeleton/skeleton.module.mjs +4 -4
  215. package/esm2020/skeleton/skeleton.property.mjs +3 -3
  216. package/esm2020/slider/slider.component.mjs +3 -3
  217. package/esm2020/slider/slider.module.mjs +4 -4
  218. package/esm2020/slider/slider.property.mjs +3 -3
  219. package/esm2020/slider-select/slider-select.component.mjs +3 -3
  220. package/esm2020/slider-select/slider-select.module.mjs +4 -4
  221. package/esm2020/slider-select/slider-select.property.mjs +3 -3
  222. package/esm2020/statistic/countdown.component.mjs +3 -3
  223. package/esm2020/statistic/statistic.component.mjs +3 -3
  224. package/esm2020/statistic/statistic.module.mjs +4 -4
  225. package/esm2020/statistic/statistic.property.mjs +6 -6
  226. package/esm2020/steps/steps.component.mjs +3 -3
  227. package/esm2020/steps/steps.module.mjs +4 -4
  228. package/esm2020/steps/steps.property.mjs +3 -3
  229. package/esm2020/switch/switch.component.mjs +3 -3
  230. package/esm2020/switch/switch.module.mjs +4 -4
  231. package/esm2020/switch/switch.property.mjs +3 -3
  232. package/esm2020/table/drag.directive.mjs +3 -3
  233. package/esm2020/table/table-body.component.mjs +3 -3
  234. package/esm2020/table/table-foot.component.mjs +3 -3
  235. package/esm2020/table/table-head.component.mjs +3 -3
  236. package/esm2020/table/table.component.mjs +3 -3
  237. package/esm2020/table/table.module.mjs +4 -4
  238. package/esm2020/table/table.property.mjs +12 -12
  239. package/esm2020/tabs/tab-content.component.mjs +3 -3
  240. package/esm2020/tabs/tab.component.mjs +3 -3
  241. package/esm2020/tabs/tabs.component.mjs +3 -3
  242. package/esm2020/tabs/tabs.module.mjs +4 -4
  243. package/esm2020/tabs/tabs.property.mjs +6 -6
  244. package/esm2020/tag/tag.component.mjs +3 -3
  245. package/esm2020/tag/tag.module.mjs +4 -4
  246. package/esm2020/tag/tag.property.mjs +3 -3
  247. package/esm2020/text-retract/text-retract.component.mjs +3 -3
  248. package/esm2020/text-retract/text-retract.module.mjs +4 -4
  249. package/esm2020/text-retract/text-retract.property.mjs +3 -3
  250. package/esm2020/textarea/textarea.component.mjs +3 -3
  251. package/esm2020/textarea/textarea.module.mjs +4 -4
  252. package/esm2020/textarea/textarea.property.mjs +3 -3
  253. package/esm2020/theme/theme.component.mjs +3 -3
  254. package/esm2020/theme/theme.module.mjs +4 -4
  255. package/esm2020/theme/theme.property.mjs +3 -3
  256. package/esm2020/time-ago/time-ago.module.mjs +4 -4
  257. package/esm2020/time-ago/time-ago.pipe.mjs +3 -3
  258. package/esm2020/time-picker/time-picker-frame.component.mjs +3 -3
  259. package/esm2020/time-picker/time-picker-portal.component.mjs +3 -3
  260. package/esm2020/time-picker/time-picker.component.mjs +3 -3
  261. package/esm2020/time-picker/time-picker.module.mjs +4 -4
  262. package/esm2020/time-picker/time-picker.property.mjs +3 -3
  263. package/esm2020/time-range/time-range.module.mjs +4 -4
  264. package/esm2020/time-range/time-range.pipe.mjs +3 -3
  265. package/esm2020/timeline/timeline.component.mjs +3 -3
  266. package/esm2020/timeline/timeline.module.mjs +4 -4
  267. package/esm2020/timeline/timeline.property.mjs +3 -3
  268. package/esm2020/tooltip/tooltip-portal.component.mjs +3 -3
  269. package/esm2020/tooltip/tooltip.directive.mjs +3 -3
  270. package/esm2020/tooltip/tooltip.module.mjs +4 -4
  271. package/esm2020/tooltip/tooltip.property.mjs +3 -3
  272. package/esm2020/transfer/transfer.component.mjs +3 -3
  273. package/esm2020/transfer/transfer.module.mjs +4 -4
  274. package/esm2020/transfer/transfer.property.mjs +3 -3
  275. package/esm2020/tree/tree-node.component.mjs +5 -5
  276. package/esm2020/tree/tree.component.mjs +3 -3
  277. package/esm2020/tree/tree.module.mjs +4 -4
  278. package/esm2020/tree/tree.property.mjs +13 -7
  279. package/esm2020/tree-file/tree-file.component.mjs +3 -3
  280. package/esm2020/tree-file/tree-file.module.mjs +4 -4
  281. package/esm2020/tree-file/tree-file.property.mjs +3 -3
  282. package/esm2020/typography/typography.component.mjs +3 -3
  283. package/esm2020/typography/typography.module.mjs +4 -4
  284. package/esm2020/typography/typography.property.mjs +3 -3
  285. package/esm2020/upload/upload-portal.component.mjs +3 -3
  286. package/esm2020/upload/upload.component.mjs +3 -3
  287. package/esm2020/upload/upload.module.mjs +4 -4
  288. package/esm2020/upload/upload.property.mjs +3 -3
  289. package/fesm2015/ng-nest-ui-affix.mjs +10 -10
  290. package/fesm2015/ng-nest-ui-alert.mjs +10 -10
  291. package/fesm2015/ng-nest-ui-anchor.mjs +10 -10
  292. package/fesm2015/ng-nest-ui-api.mjs +7 -7
  293. package/fesm2015/ng-nest-ui-auto-complete.mjs +13 -13
  294. package/fesm2015/ng-nest-ui-avatar.mjs +10 -10
  295. package/fesm2015/ng-nest-ui-back-top.mjs +10 -10
  296. package/fesm2015/ng-nest-ui-badge.mjs +10 -10
  297. package/fesm2015/ng-nest-ui-base-form.mjs +10 -10
  298. package/fesm2015/ng-nest-ui-border.mjs +7 -7
  299. package/fesm2015/ng-nest-ui-button.mjs +16 -16
  300. package/fesm2015/ng-nest-ui-calendar.mjs +10 -10
  301. package/fesm2015/ng-nest-ui-card.mjs +10 -10
  302. package/fesm2015/ng-nest-ui-carousel.mjs +16 -16
  303. package/fesm2015/ng-nest-ui-cascade.mjs +13 -13
  304. package/fesm2015/ng-nest-ui-checkbox.mjs +10 -10
  305. package/fesm2015/ng-nest-ui-collapse.mjs +16 -16
  306. package/fesm2015/ng-nest-ui-color-picker.mjs +13 -13
  307. package/fesm2015/ng-nest-ui-color.mjs +10 -10
  308. package/fesm2015/ng-nest-ui-comment.mjs +16 -16
  309. package/fesm2015/ng-nest-ui-container.mjs +31 -31
  310. package/fesm2015/ng-nest-ui-core.mjs +15 -15
  311. package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
  312. package/fesm2015/ng-nest-ui-crumb.mjs +10 -10
  313. package/fesm2015/ng-nest-ui-date-picker.mjs +40 -40
  314. package/fesm2015/ng-nest-ui-description.mjs +16 -16
  315. package/fesm2015/ng-nest-ui-dialog.mjs +28 -28
  316. package/fesm2015/ng-nest-ui-doc.mjs +7 -7
  317. package/fesm2015/ng-nest-ui-drawer.mjs +31 -31
  318. package/fesm2015/ng-nest-ui-dropdown.mjs +13 -13
  319. package/fesm2015/ng-nest-ui-empty.mjs +10 -10
  320. package/fesm2015/ng-nest-ui-examples.mjs +7 -7
  321. package/fesm2015/ng-nest-ui-find.mjs +10 -10
  322. package/fesm2015/ng-nest-ui-form.mjs +16 -16
  323. package/fesm2015/ng-nest-ui-highlight.mjs +10 -10
  324. package/fesm2015/ng-nest-ui-i18n.mjs +13 -13
  325. package/fesm2015/ng-nest-ui-icon.mjs +13 -13
  326. package/fesm2015/ng-nest-ui-inner.mjs +10 -10
  327. package/fesm2015/ng-nest-ui-input-number.mjs +10 -10
  328. package/fesm2015/ng-nest-ui-input.mjs +16 -16
  329. package/fesm2015/ng-nest-ui-layout.mjs +16 -16
  330. package/fesm2015/ng-nest-ui-link.mjs +10 -10
  331. package/fesm2015/ng-nest-ui-list.mjs +16 -16
  332. package/fesm2015/ng-nest-ui-loading.mjs +10 -10
  333. package/fesm2015/ng-nest-ui-menu.mjs +22 -17
  334. package/fesm2015/ng-nest-ui-menu.mjs.map +1 -1
  335. package/fesm2015/ng-nest-ui-message-box.mjs +10 -10
  336. package/fesm2015/ng-nest-ui-message.mjs +10 -10
  337. package/fesm2015/ng-nest-ui-notification.mjs +10 -10
  338. package/fesm2015/ng-nest-ui-outlet.mjs +7 -7
  339. package/fesm2015/ng-nest-ui-page-header.mjs +10 -10
  340. package/fesm2015/ng-nest-ui-pagination.mjs +10 -10
  341. package/fesm2015/ng-nest-ui-pattern.mjs +7 -7
  342. package/fesm2015/ng-nest-ui-popconfirm.mjs +10 -10
  343. package/fesm2015/ng-nest-ui-popover.mjs +13 -13
  344. package/fesm2015/ng-nest-ui-portal.mjs +7 -7
  345. package/fesm2015/ng-nest-ui-progress.mjs +10 -10
  346. package/fesm2015/ng-nest-ui-radio.mjs +10 -10
  347. package/fesm2015/ng-nest-ui-rate.mjs +10 -10
  348. package/fesm2015/ng-nest-ui-result.mjs +10 -10
  349. package/fesm2015/ng-nest-ui-ripple.mjs +10 -10
  350. package/fesm2015/ng-nest-ui-select.mjs +13 -13
  351. package/fesm2015/ng-nest-ui-skeleton.mjs +10 -10
  352. package/fesm2015/ng-nest-ui-slider-select.mjs +10 -10
  353. package/fesm2015/ng-nest-ui-slider.mjs +10 -10
  354. package/fesm2015/ng-nest-ui-statistic.mjs +16 -16
  355. package/fesm2015/ng-nest-ui-steps.mjs +10 -10
  356. package/fesm2015/ng-nest-ui-switch.mjs +10 -10
  357. package/fesm2015/ng-nest-ui-table.mjs +31 -31
  358. package/fesm2015/ng-nest-ui-tabs.mjs +19 -19
  359. package/fesm2015/ng-nest-ui-tag.mjs +10 -10
  360. package/fesm2015/ng-nest-ui-text-retract.mjs +10 -10
  361. package/fesm2015/ng-nest-ui-textarea.mjs +10 -10
  362. package/fesm2015/ng-nest-ui-theme.mjs +10 -10
  363. package/fesm2015/ng-nest-ui-time-ago.mjs +7 -7
  364. package/fesm2015/ng-nest-ui-time-picker.mjs +16 -16
  365. package/fesm2015/ng-nest-ui-time-range.mjs +7 -7
  366. package/fesm2015/ng-nest-ui-timeline.mjs +10 -10
  367. package/fesm2015/ng-nest-ui-tooltip.mjs +13 -13
  368. package/fesm2015/ng-nest-ui-transfer.mjs +10 -10
  369. package/fesm2015/ng-nest-ui-tree-file.mjs +10 -10
  370. package/fesm2015/ng-nest-ui-tree.mjs +23 -17
  371. package/fesm2015/ng-nest-ui-tree.mjs.map +1 -1
  372. package/fesm2015/ng-nest-ui-typography.mjs +10 -10
  373. package/fesm2015/ng-nest-ui-upload.mjs +13 -13
  374. package/fesm2020/ng-nest-ui-affix.mjs +10 -10
  375. package/fesm2020/ng-nest-ui-alert.mjs +10 -10
  376. package/fesm2020/ng-nest-ui-anchor.mjs +10 -10
  377. package/fesm2020/ng-nest-ui-api.mjs +7 -7
  378. package/fesm2020/ng-nest-ui-auto-complete.mjs +13 -13
  379. package/fesm2020/ng-nest-ui-avatar.mjs +10 -10
  380. package/fesm2020/ng-nest-ui-back-top.mjs +10 -10
  381. package/fesm2020/ng-nest-ui-badge.mjs +10 -10
  382. package/fesm2020/ng-nest-ui-base-form.mjs +10 -10
  383. package/fesm2020/ng-nest-ui-border.mjs +7 -7
  384. package/fesm2020/ng-nest-ui-button.mjs +16 -16
  385. package/fesm2020/ng-nest-ui-calendar.mjs +10 -10
  386. package/fesm2020/ng-nest-ui-card.mjs +10 -10
  387. package/fesm2020/ng-nest-ui-carousel.mjs +16 -16
  388. package/fesm2020/ng-nest-ui-cascade.mjs +13 -13
  389. package/fesm2020/ng-nest-ui-checkbox.mjs +10 -10
  390. package/fesm2020/ng-nest-ui-collapse.mjs +16 -16
  391. package/fesm2020/ng-nest-ui-color-picker.mjs +13 -13
  392. package/fesm2020/ng-nest-ui-color.mjs +10 -10
  393. package/fesm2020/ng-nest-ui-comment.mjs +16 -16
  394. package/fesm2020/ng-nest-ui-container.mjs +31 -31
  395. package/fesm2020/ng-nest-ui-core.mjs +15 -15
  396. package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
  397. package/fesm2020/ng-nest-ui-crumb.mjs +10 -10
  398. package/fesm2020/ng-nest-ui-date-picker.mjs +40 -40
  399. package/fesm2020/ng-nest-ui-description.mjs +16 -16
  400. package/fesm2020/ng-nest-ui-dialog.mjs +28 -28
  401. package/fesm2020/ng-nest-ui-doc.mjs +7 -7
  402. package/fesm2020/ng-nest-ui-drawer.mjs +31 -31
  403. package/fesm2020/ng-nest-ui-dropdown.mjs +13 -13
  404. package/fesm2020/ng-nest-ui-empty.mjs +10 -10
  405. package/fesm2020/ng-nest-ui-examples.mjs +7 -7
  406. package/fesm2020/ng-nest-ui-find.mjs +10 -10
  407. package/fesm2020/ng-nest-ui-form.mjs +16 -16
  408. package/fesm2020/ng-nest-ui-highlight.mjs +10 -10
  409. package/fesm2020/ng-nest-ui-i18n.mjs +13 -13
  410. package/fesm2020/ng-nest-ui-icon.mjs +13 -13
  411. package/fesm2020/ng-nest-ui-inner.mjs +10 -10
  412. package/fesm2020/ng-nest-ui-input-number.mjs +10 -10
  413. package/fesm2020/ng-nest-ui-input.mjs +16 -16
  414. package/fesm2020/ng-nest-ui-layout.mjs +16 -16
  415. package/fesm2020/ng-nest-ui-link.mjs +10 -10
  416. package/fesm2020/ng-nest-ui-list.mjs +16 -16
  417. package/fesm2020/ng-nest-ui-loading.mjs +10 -10
  418. package/fesm2020/ng-nest-ui-menu.mjs +22 -17
  419. package/fesm2020/ng-nest-ui-menu.mjs.map +1 -1
  420. package/fesm2020/ng-nest-ui-message-box.mjs +10 -10
  421. package/fesm2020/ng-nest-ui-message.mjs +10 -10
  422. package/fesm2020/ng-nest-ui-notification.mjs +10 -10
  423. package/fesm2020/ng-nest-ui-outlet.mjs +7 -7
  424. package/fesm2020/ng-nest-ui-page-header.mjs +10 -10
  425. package/fesm2020/ng-nest-ui-pagination.mjs +10 -10
  426. package/fesm2020/ng-nest-ui-pattern.mjs +7 -7
  427. package/fesm2020/ng-nest-ui-popconfirm.mjs +10 -10
  428. package/fesm2020/ng-nest-ui-popover.mjs +13 -13
  429. package/fesm2020/ng-nest-ui-portal.mjs +7 -7
  430. package/fesm2020/ng-nest-ui-progress.mjs +10 -10
  431. package/fesm2020/ng-nest-ui-radio.mjs +10 -10
  432. package/fesm2020/ng-nest-ui-rate.mjs +10 -10
  433. package/fesm2020/ng-nest-ui-result.mjs +10 -10
  434. package/fesm2020/ng-nest-ui-ripple.mjs +10 -10
  435. package/fesm2020/ng-nest-ui-select.mjs +13 -13
  436. package/fesm2020/ng-nest-ui-skeleton.mjs +10 -10
  437. package/fesm2020/ng-nest-ui-slider-select.mjs +10 -10
  438. package/fesm2020/ng-nest-ui-slider.mjs +10 -10
  439. package/fesm2020/ng-nest-ui-statistic.mjs +16 -16
  440. package/fesm2020/ng-nest-ui-steps.mjs +10 -10
  441. package/fesm2020/ng-nest-ui-switch.mjs +10 -10
  442. package/fesm2020/ng-nest-ui-table.mjs +31 -31
  443. package/fesm2020/ng-nest-ui-tabs.mjs +19 -19
  444. package/fesm2020/ng-nest-ui-tag.mjs +10 -10
  445. package/fesm2020/ng-nest-ui-text-retract.mjs +10 -10
  446. package/fesm2020/ng-nest-ui-textarea.mjs +10 -10
  447. package/fesm2020/ng-nest-ui-theme.mjs +10 -10
  448. package/fesm2020/ng-nest-ui-time-ago.mjs +7 -7
  449. package/fesm2020/ng-nest-ui-time-picker.mjs +16 -16
  450. package/fesm2020/ng-nest-ui-time-range.mjs +7 -7
  451. package/fesm2020/ng-nest-ui-timeline.mjs +10 -10
  452. package/fesm2020/ng-nest-ui-tooltip.mjs +13 -13
  453. package/fesm2020/ng-nest-ui-transfer.mjs +10 -10
  454. package/fesm2020/ng-nest-ui-tree-file.mjs +10 -10
  455. package/fesm2020/ng-nest-ui-tree.mjs +23 -17
  456. package/fesm2020/ng-nest-ui-tree.mjs.map +1 -1
  457. package/fesm2020/ng-nest-ui-typography.mjs +10 -10
  458. package/fesm2020/ng-nest-ui-upload.mjs +13 -13
  459. package/menu/menu.property.d.ts +8 -3
  460. package/package.json +1 -1
  461. package/tree/tree.property.d.ts +6 -1
@@ -22,15 +22,15 @@ export class XTimelineProperty extends XProperty {
22
22
  this.data = [];
23
23
  }
24
24
  }
25
- /** @nocollapse */ /** @nocollapse */ XTimelineProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimelineProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
26
- /** @nocollapse */ /** @nocollapse */ XTimelineProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTimelineProperty, selector: "ng-component", inputs: { data: "data", type: "type", size: "size", wrapper: "wrapper" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
25
+ /** @nocollapse */ /** @nocollapse */ XTimelineProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTimelineProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
26
+ /** @nocollapse */ /** @nocollapse */ XTimelineProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XTimelineProperty, selector: "ng-component", inputs: { data: "data", type: "type", size: "size", wrapper: "wrapper" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
27
27
  __decorate([
28
28
  XDataConvert()
29
29
  ], XTimelineProperty.prototype, "data", void 0);
30
30
  __decorate([
31
31
  XWithConfig(X_CONFIG_NAME, 'medium')
32
32
  ], XTimelineProperty.prototype, "size", void 0);
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimelineProperty, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTimelineProperty, decorators: [{
34
34
  type: Component,
35
35
  args: [{ template: '' }]
36
36
  }], propDecorators: { data: [{
@@ -78,9 +78,9 @@ export class XTooltipPortalComponent {
78
78
  return this.placement.indexOf(arrow) >= 0;
79
79
  }
80
80
  }
81
- /** @nocollapse */ /** @nocollapse */ XTooltipPortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipPortalComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
82
- /** @nocollapse */ /** @nocollapse */ XTooltipPortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTooltipPortalComponent, selector: "x-tooltip-portal", host: { listeners: { "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" }, properties: { "@x-fade-animation": "this.animation" } }, viewQueries: [{ propertyName: "tooltipPortal", first: true, predicate: ["tooltipPortal"], descendants: true, static: true }, { propertyName: "tooltipArrow", first: true, predicate: ["tooltipArrow"], descendants: true }, { propertyName: "tooltipArrowAfter", first: true, predicate: ["tooltipArrowAfter"], descendants: true }], ngImport: i0, template: "<div #tooltipPortal class=\"x-tooltip-portal\" [ngClass]=\"classMap\">\r\n <div class=\"x-tooltip-portal-inner\" [style.backgroundColor]=\"backgroundColor\" [style.color]=\"color\" [innerHTML]=\"content\"></div>\r\n <div #tooltipArrow class=\"x-tooltip-portal-arrow\">\r\n <div #tooltipArrowAfter class=\"x-tooltip-portal-arrow-after\"></div>\r\n </div>\r\n</div>\r\n", styles: [".x-tooltip-portal{margin:0;padding:0;display:inline-flex;position:relative;justify-content:center;align-items:center}.x-tooltip-portal>.x-tooltip-portal-inner{font-size:var(--x-font-size);background-color:var(--x-text);color:var(--x-text-700);padding:.325rem .5rem;max-width:10rem;border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color)}.x-tooltip-portal .x-tooltip-portal-arrow,.x-tooltip-portal .x-tooltip-portal-arrow-after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.x-tooltip-portal .x-tooltip-portal-arrow{border-width:.375rem;filter:drop-shadow(0 .125rem .75rem rgba(0,0,0,.03))}.x-tooltip-portal .x-tooltip-portal-arrow-after{border-width:.375rem}.x-tooltip-portal-top,.x-tooltip-portal-top-start,.x-tooltip-portal-top-end{padding-bottom:.525rem}.x-tooltip-portal-top>.x-tooltip-portal-arrow,.x-tooltip-portal-top-start>.x-tooltip-portal-arrow,.x-tooltip-portal-top-end>.x-tooltip-portal-arrow{bottom:.2rem;border-bottom-width:0;border-top-color:var(--x-text)}.x-tooltip-portal-top .x-tooltip-portal-arrow-after,.x-tooltip-portal-top-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-top-end .x-tooltip-portal-arrow-after{bottom:.1rem;margin-left:-.375rem;border-bottom-width:0;border-top-color:var(--x-text)}.x-tooltip-portal-left,.x-tooltip-portal-left-start,.x-tooltip-portal-left-end{padding-right:.525rem}.x-tooltip-portal-left>.x-tooltip-portal-arrow,.x-tooltip-portal-left-start>.x-tooltip-portal-arrow,.x-tooltip-portal-left-end>.x-tooltip-portal-arrow{right:.2rem;border-right-width:0;border-left-color:var(--x-text)}.x-tooltip-portal-left .x-tooltip-portal-arrow-after,.x-tooltip-portal-left-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-left-end .x-tooltip-portal-arrow-after{right:.1rem;margin-top:-.375rem;border-right-width:0;border-left-color:var(--x-text)}.x-tooltip-portal-right,.x-tooltip-portal-right-start,.x-tooltip-portal-right-end{padding-left:.525rem}.x-tooltip-portal-right>.x-tooltip-portal-arrow,.x-tooltip-portal-right-start>.x-tooltip-portal-arrow,.x-tooltip-portal-right-end>.x-tooltip-portal-arrow{left:.2rem;border-left-width:0;border-right-color:var(--x-text)}.x-tooltip-portal-right .x-tooltip-portal-arrow-after,.x-tooltip-portal-right-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-right-end .x-tooltip-portal-arrow-after{left:.1rem;margin-top:-.375rem;border-left-width:0;border-right-color:var(--x-text)}.x-tooltip-portal-bottom,.x-tooltip-portal-bottom-start,.x-tooltip-portal-bottom-end{padding-top:.525rem}.x-tooltip-portal-bottom .x-tooltip-portal-arrow,.x-tooltip-portal-bottom-start .x-tooltip-portal-arrow,.x-tooltip-portal-bottom-end .x-tooltip-portal-arrow{top:.2rem;border-top-width:0;border-bottom-color:var(--x-text)}.x-tooltip-portal-bottom .x-tooltip-portal-arrow-after,.x-tooltip-portal-bottom-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-bottom-end .x-tooltip-portal-arrow-after{top:.1rem;margin-left:-.375rem;border-top-width:0;border-bottom-color:var(--x-text)}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [XFadeAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipPortalComponent, decorators: [{
81
+ /** @nocollapse */ /** @nocollapse */ XTooltipPortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipPortalComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
82
+ /** @nocollapse */ /** @nocollapse */ XTooltipPortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XTooltipPortalComponent, selector: "x-tooltip-portal", host: { listeners: { "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" }, properties: { "@x-fade-animation": "this.animation" } }, viewQueries: [{ propertyName: "tooltipPortal", first: true, predicate: ["tooltipPortal"], descendants: true, static: true }, { propertyName: "tooltipArrow", first: true, predicate: ["tooltipArrow"], descendants: true }, { propertyName: "tooltipArrowAfter", first: true, predicate: ["tooltipArrowAfter"], descendants: true }], ngImport: i0, template: "<div #tooltipPortal class=\"x-tooltip-portal\" [ngClass]=\"classMap\">\r\n <div class=\"x-tooltip-portal-inner\" [style.backgroundColor]=\"backgroundColor\" [style.color]=\"color\" [innerHTML]=\"content\"></div>\r\n <div #tooltipArrow class=\"x-tooltip-portal-arrow\">\r\n <div #tooltipArrowAfter class=\"x-tooltip-portal-arrow-after\"></div>\r\n </div>\r\n</div>\r\n", styles: [".x-tooltip-portal{margin:0;padding:0;display:inline-flex;position:relative;justify-content:center;align-items:center}.x-tooltip-portal>.x-tooltip-portal-inner{font-size:var(--x-font-size);background-color:var(--x-text);color:var(--x-text-700);padding:.325rem .5rem;max-width:10rem;border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color)}.x-tooltip-portal .x-tooltip-portal-arrow,.x-tooltip-portal .x-tooltip-portal-arrow-after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.x-tooltip-portal .x-tooltip-portal-arrow{border-width:.375rem;filter:drop-shadow(0 .125rem .75rem rgba(0,0,0,.03))}.x-tooltip-portal .x-tooltip-portal-arrow-after{border-width:.375rem}.x-tooltip-portal-top,.x-tooltip-portal-top-start,.x-tooltip-portal-top-end{padding-bottom:.525rem}.x-tooltip-portal-top>.x-tooltip-portal-arrow,.x-tooltip-portal-top-start>.x-tooltip-portal-arrow,.x-tooltip-portal-top-end>.x-tooltip-portal-arrow{bottom:.2rem;border-bottom-width:0;border-top-color:var(--x-text)}.x-tooltip-portal-top .x-tooltip-portal-arrow-after,.x-tooltip-portal-top-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-top-end .x-tooltip-portal-arrow-after{bottom:.1rem;margin-left:-.375rem;border-bottom-width:0;border-top-color:var(--x-text)}.x-tooltip-portal-left,.x-tooltip-portal-left-start,.x-tooltip-portal-left-end{padding-right:.525rem}.x-tooltip-portal-left>.x-tooltip-portal-arrow,.x-tooltip-portal-left-start>.x-tooltip-portal-arrow,.x-tooltip-portal-left-end>.x-tooltip-portal-arrow{right:.2rem;border-right-width:0;border-left-color:var(--x-text)}.x-tooltip-portal-left .x-tooltip-portal-arrow-after,.x-tooltip-portal-left-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-left-end .x-tooltip-portal-arrow-after{right:.1rem;margin-top:-.375rem;border-right-width:0;border-left-color:var(--x-text)}.x-tooltip-portal-right,.x-tooltip-portal-right-start,.x-tooltip-portal-right-end{padding-left:.525rem}.x-tooltip-portal-right>.x-tooltip-portal-arrow,.x-tooltip-portal-right-start>.x-tooltip-portal-arrow,.x-tooltip-portal-right-end>.x-tooltip-portal-arrow{left:.2rem;border-left-width:0;border-right-color:var(--x-text)}.x-tooltip-portal-right .x-tooltip-portal-arrow-after,.x-tooltip-portal-right-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-right-end .x-tooltip-portal-arrow-after{left:.1rem;margin-top:-.375rem;border-left-width:0;border-right-color:var(--x-text)}.x-tooltip-portal-bottom,.x-tooltip-portal-bottom-start,.x-tooltip-portal-bottom-end{padding-top:.525rem}.x-tooltip-portal-bottom .x-tooltip-portal-arrow,.x-tooltip-portal-bottom-start .x-tooltip-portal-arrow,.x-tooltip-portal-bottom-end .x-tooltip-portal-arrow{top:.2rem;border-top-width:0;border-bottom-color:var(--x-text)}.x-tooltip-portal-bottom .x-tooltip-portal-arrow-after,.x-tooltip-portal-bottom-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-bottom-end .x-tooltip-portal-arrow-after{top:.1rem;margin-left:-.375rem;border-top-width:0;border-bottom-color:var(--x-text)}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [XFadeAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipPortalComponent, decorators: [{
84
84
  type: Component,
85
85
  args: [{ selector: `${XTooltipPortalPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XFadeAnimation], template: "<div #tooltipPortal class=\"x-tooltip-portal\" [ngClass]=\"classMap\">\r\n <div class=\"x-tooltip-portal-inner\" [style.backgroundColor]=\"backgroundColor\" [style.color]=\"color\" [innerHTML]=\"content\"></div>\r\n <div #tooltipArrow class=\"x-tooltip-portal-arrow\">\r\n <div #tooltipArrowAfter class=\"x-tooltip-portal-arrow-after\"></div>\r\n </div>\r\n</div>\r\n", styles: [".x-tooltip-portal{margin:0;padding:0;display:inline-flex;position:relative;justify-content:center;align-items:center}.x-tooltip-portal>.x-tooltip-portal-inner{font-size:var(--x-font-size);background-color:var(--x-text);color:var(--x-text-700);padding:.325rem .5rem;max-width:10rem;border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color)}.x-tooltip-portal .x-tooltip-portal-arrow,.x-tooltip-portal .x-tooltip-portal-arrow-after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.x-tooltip-portal .x-tooltip-portal-arrow{border-width:.375rem;filter:drop-shadow(0 .125rem .75rem rgba(0,0,0,.03))}.x-tooltip-portal .x-tooltip-portal-arrow-after{border-width:.375rem}.x-tooltip-portal-top,.x-tooltip-portal-top-start,.x-tooltip-portal-top-end{padding-bottom:.525rem}.x-tooltip-portal-top>.x-tooltip-portal-arrow,.x-tooltip-portal-top-start>.x-tooltip-portal-arrow,.x-tooltip-portal-top-end>.x-tooltip-portal-arrow{bottom:.2rem;border-bottom-width:0;border-top-color:var(--x-text)}.x-tooltip-portal-top .x-tooltip-portal-arrow-after,.x-tooltip-portal-top-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-top-end .x-tooltip-portal-arrow-after{bottom:.1rem;margin-left:-.375rem;border-bottom-width:0;border-top-color:var(--x-text)}.x-tooltip-portal-left,.x-tooltip-portal-left-start,.x-tooltip-portal-left-end{padding-right:.525rem}.x-tooltip-portal-left>.x-tooltip-portal-arrow,.x-tooltip-portal-left-start>.x-tooltip-portal-arrow,.x-tooltip-portal-left-end>.x-tooltip-portal-arrow{right:.2rem;border-right-width:0;border-left-color:var(--x-text)}.x-tooltip-portal-left .x-tooltip-portal-arrow-after,.x-tooltip-portal-left-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-left-end .x-tooltip-portal-arrow-after{right:.1rem;margin-top:-.375rem;border-right-width:0;border-left-color:var(--x-text)}.x-tooltip-portal-right,.x-tooltip-portal-right-start,.x-tooltip-portal-right-end{padding-left:.525rem}.x-tooltip-portal-right>.x-tooltip-portal-arrow,.x-tooltip-portal-right-start>.x-tooltip-portal-arrow,.x-tooltip-portal-right-end>.x-tooltip-portal-arrow{left:.2rem;border-left-width:0;border-right-color:var(--x-text)}.x-tooltip-portal-right .x-tooltip-portal-arrow-after,.x-tooltip-portal-right-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-right-end .x-tooltip-portal-arrow-after{left:.1rem;margin-top:-.375rem;border-left-width:0;border-right-color:var(--x-text)}.x-tooltip-portal-bottom,.x-tooltip-portal-bottom-start,.x-tooltip-portal-bottom-end{padding-top:.525rem}.x-tooltip-portal-bottom .x-tooltip-portal-arrow,.x-tooltip-portal-bottom-start .x-tooltip-portal-arrow,.x-tooltip-portal-bottom-end .x-tooltip-portal-arrow{top:.2rem;border-top-width:0;border-bottom-color:var(--x-text)}.x-tooltip-portal-bottom .x-tooltip-portal-arrow-after,.x-tooltip-portal-bottom-start .x-tooltip-portal-arrow-after,.x-tooltip-portal-bottom-end .x-tooltip-portal-arrow-after{top:.1rem;margin-left:-.375rem;border-top-width:0;border-bottom-color:var(--x-text)}\n"] }]
86
86
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { mouseenter: [{
@@ -107,9 +107,9 @@ export class XTooltipDirective extends XTooltipProperty {
107
107
  this.portal.overlayRef?.updatePosition();
108
108
  }
109
109
  }
110
- /** @nocollapse */ /** @nocollapse */ XTooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipDirective, deps: [{ token: i0.ElementRef }, { token: i1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
111
- /** @nocollapse */ /** @nocollapse */ XTooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.3", type: XTooltipDirective, selector: "[x-tooltip], x-tooltip", host: { listeners: { "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0 });
112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipDirective, decorators: [{
110
+ /** @nocollapse */ /** @nocollapse */ XTooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipDirective, deps: [{ token: i0.ElementRef }, { token: i1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
111
+ /** @nocollapse */ /** @nocollapse */ XTooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: XTooltipDirective, selector: "[x-tooltip], x-tooltip", host: { listeners: { "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0 });
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipDirective, decorators: [{
113
113
  type: Directive,
114
114
  args: [{ selector: `[${XTooltipPrefix}], ${XTooltipPrefix}` }]
115
115
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.XPortalService }, { type: i0.ViewContainerRef }, { type: i2.Overlay }]; }, propDecorators: { mouseenter: [{
@@ -7,10 +7,10 @@ import { XTooltipProperty } from './tooltip.property';
7
7
  import * as i0 from "@angular/core";
8
8
  export class XTooltipModule {
9
9
  }
10
- /** @nocollapse */ /** @nocollapse */ XTooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- /** @nocollapse */ /** @nocollapse */ XTooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipModule, declarations: [XTooltipDirective, XTooltipPortalComponent, XTooltipProperty], imports: [CommonModule, XPortalModule], exports: [XTooltipDirective, XTooltipPortalComponent] });
12
- /** @nocollapse */ /** @nocollapse */ XTooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipModule, imports: [[CommonModule, XPortalModule]] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipModule, decorators: [{
10
+ /** @nocollapse */ /** @nocollapse */ XTooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ /** @nocollapse */ /** @nocollapse */ XTooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipModule, declarations: [XTooltipDirective, XTooltipPortalComponent, XTooltipProperty], imports: [CommonModule, XPortalModule], exports: [XTooltipDirective, XTooltipPortalComponent] });
12
+ /** @nocollapse */ /** @nocollapse */ XTooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipModule, imports: [[CommonModule, XPortalModule]] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  declarations: [XTooltipDirective, XTooltipPortalComponent, XTooltipProperty],
@@ -14,8 +14,8 @@ const X_CONFIG_NAME = 'tooltip';
14
14
  */
15
15
  export class XTooltipProperty {
16
16
  }
17
- /** @nocollapse */ /** @nocollapse */ XTooltipProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipProperty, deps: [], target: i0.ɵɵFactoryTarget.Directive });
18
- /** @nocollapse */ /** @nocollapse */ XTooltipProperty.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.3", type: XTooltipProperty, selector: "[x-tooltip], x-tooltip", inputs: { content: "content", placement: "placement", visible: "visible", backgroundColor: "backgroundColor", color: "color", manual: "manual" }, ngImport: i0 });
17
+ /** @nocollapse */ /** @nocollapse */ XTooltipProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipProperty, deps: [], target: i0.ɵɵFactoryTarget.Directive });
18
+ /** @nocollapse */ /** @nocollapse */ XTooltipProperty.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: XTooltipProperty, selector: "[x-tooltip], x-tooltip", inputs: { content: "content", placement: "placement", visible: "visible", backgroundColor: "backgroundColor", color: "color", manual: "manual" }, ngImport: i0 });
19
19
  __decorate([
20
20
  XWithConfig(X_CONFIG_NAME, 'bottom')
21
21
  ], XTooltipProperty.prototype, "placement", void 0);
@@ -25,7 +25,7 @@ __decorate([
25
25
  __decorate([
26
26
  XInputBoolean()
27
27
  ], XTooltipProperty.prototype, "manual", void 0);
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTooltipProperty, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTooltipProperty, decorators: [{
29
29
  type: Directive,
30
30
  args: [{ selector: `[${XTooltipPrefix}], ${XTooltipPrefix}` }]
31
31
  }], propDecorators: { content: [{
@@ -181,9 +181,9 @@ export class XTransferComponent extends XTransferProperty {
181
181
  this.cdr.detectChanges();
182
182
  }
183
183
  }
184
- /** @nocollapse */ /** @nocollapse */ XTransferComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTransferComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
185
- /** @nocollapse */ /** @nocollapse */ XTransferComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTransferComponent, selector: "x-transfer", providers: [XValueAccessor(XTransferComponent)], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #transfer class=\"x-transfer\" cdkDropListGroup [ngClass]=\"classMap\">\r\n <div class=\"x-transfer-box\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: left }\"></ng-container>\r\n <ul\r\n class=\"x-transfer-list\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"left.list\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <li class=\"x-transfer-item\" *ngFor=\"let node of left.list; trackBy: trackByNode\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: left }\"></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"x-transfer-buttons\">\r\n <x-button type=\"primary\" icon=\"fto-chevron-right\" [disabled]=\"left.disabledButton\" (click)=\"move(left, right)\"></x-button>\r\n <x-button type=\"primary\" icon=\"fto-chevron-left\" [disabled]=\"right.disabledButton\" (click)=\"move(right, left)\"></x-button>\r\n </div>\r\n <div class=\"x-transfer-box\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: right }\"></ng-container>\r\n <ul\r\n class=\"x-transfer-list\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"right.list\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <li class=\"x-transfer-item\" *ngFor=\"let node of right.list; trackBy: trackByNode\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: right }\"></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n\r\n<ng-template #sourceTitleTpl let-source=\"source\">\r\n <div class=\"x-transfer-title\">\r\n <x-checkbox\r\n [data]=\"[titleTpl ? '' : source.title]\"\r\n [(ngModel)]=\"source.checkedAll\"\r\n (ngModelChange)=\"checkedAllChange($event, source)\"\r\n [indeterminate]=\"source.indeterminate\"\r\n ></x-checkbox>\r\n <ng-container *xOutlet=\"titleTpl; context: { $title: source.title, $checkedCount: source.checkedCount, $count: source.list.length }\"\r\n ><span>{{ source.checkedCount }} / {{ source.list.length }}</span></ng-container\r\n >\r\n </div>\r\n <!-- <div class=\"x-transfer-search\" *ngIf=\"search\">\r\n <x-input\r\n icon=\"fto-search\"\r\n [(ngModel)]=\"source.searchInput\"\r\n (ngModelChange)=\"searchInputChange(source)\"\r\n clearable\r\n ></x-input>\r\n </div> -->\r\n</ng-template>\r\n\r\n<ng-template #sourceNodeTpl let-node=\"node\" let-source=\"source\">\r\n <x-checkbox\r\n [data]=\"[{ id: node.id, label: nodeTpl ? nodeTpl : node.label, node: node }]\"\r\n [disabled]=\"node.disabled\"\r\n [(ngModel)]=\"node.checked\"\r\n (ngModelChange)=\"checkedChange($event, source)\"\r\n ></x-checkbox>\r\n</ng-template>\r\n", styles: [".x-transfer{margin:0;padding:0;display:inline-flex;align-items:center}.x-transfer-box{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);width:12rem}.x-transfer-title{padding:.25rem .5625rem;display:flex;align-items:center;justify-content:space-between;border-bottom:.0625rem solid var(--x-border);background-color:var(--x-background);color:var(--x-text-300)}.x-transfer-title>span{margin-left:.325rem}.x-transfer-list{display:flex;flex-direction:column;padding:.25rem;height:18rem;overflow-y:auto}.x-transfer-list>li{padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;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-transfer-list.cdk-drop-list-dragging>li:hover{background-color:transparent}.x-transfer-list.cdk-drop-list-dragging>li.cdk-drag-placeholder{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}.x-transfer-list.cdk-drop-list-dragging>li:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-transfer-buttons{margin:0 1rem;display:flex;flex-direction:column}.x-transfer-buttons>x-button:not(:first-child){margin-top:.5rem}.x-transfer-search{padding:.5rem;border-bottom:.0625rem solid var(--x-border)}body>li.x-transfer-item.cdk-drag-preview{padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;border:.0625rem dashed transparent;border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}body>li.x-transfer-item.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"], components: [{ type: i2.XButtonComponent, selector: "x-button" }, { type: i3.XCheckboxComponent, selector: "x-checkbox" }], directives: [{ type: i4.CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { 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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
186
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTransferComponent, decorators: [{
184
+ /** @nocollapse */ /** @nocollapse */ XTransferComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTransferComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
185
+ /** @nocollapse */ /** @nocollapse */ XTransferComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XTransferComponent, selector: "x-transfer", providers: [XValueAccessor(XTransferComponent)], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #transfer class=\"x-transfer\" cdkDropListGroup [ngClass]=\"classMap\">\r\n <div class=\"x-transfer-box\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: left }\"></ng-container>\r\n <ul\r\n class=\"x-transfer-list\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"left.list\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <li class=\"x-transfer-item\" *ngFor=\"let node of left.list; trackBy: trackByNode\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: left }\"></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"x-transfer-buttons\">\r\n <x-button type=\"primary\" icon=\"fto-chevron-right\" [disabled]=\"left.disabledButton\" (click)=\"move(left, right)\"></x-button>\r\n <x-button type=\"primary\" icon=\"fto-chevron-left\" [disabled]=\"right.disabledButton\" (click)=\"move(right, left)\"></x-button>\r\n </div>\r\n <div class=\"x-transfer-box\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: right }\"></ng-container>\r\n <ul\r\n class=\"x-transfer-list\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"right.list\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <li class=\"x-transfer-item\" *ngFor=\"let node of right.list; trackBy: trackByNode\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: right }\"></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n\r\n<ng-template #sourceTitleTpl let-source=\"source\">\r\n <div class=\"x-transfer-title\">\r\n <x-checkbox\r\n [data]=\"[titleTpl ? '' : source.title]\"\r\n [(ngModel)]=\"source.checkedAll\"\r\n (ngModelChange)=\"checkedAllChange($event, source)\"\r\n [indeterminate]=\"source.indeterminate\"\r\n ></x-checkbox>\r\n <ng-container *xOutlet=\"titleTpl; context: { $title: source.title, $checkedCount: source.checkedCount, $count: source.list.length }\"\r\n ><span>{{ source.checkedCount }} / {{ source.list.length }}</span></ng-container\r\n >\r\n </div>\r\n <!-- <div class=\"x-transfer-search\" *ngIf=\"search\">\r\n <x-input\r\n icon=\"fto-search\"\r\n [(ngModel)]=\"source.searchInput\"\r\n (ngModelChange)=\"searchInputChange(source)\"\r\n clearable\r\n ></x-input>\r\n </div> -->\r\n</ng-template>\r\n\r\n<ng-template #sourceNodeTpl let-node=\"node\" let-source=\"source\">\r\n <x-checkbox\r\n [data]=\"[{ id: node.id, label: nodeTpl ? nodeTpl : node.label, node: node }]\"\r\n [disabled]=\"node.disabled\"\r\n [(ngModel)]=\"node.checked\"\r\n (ngModelChange)=\"checkedChange($event, source)\"\r\n ></x-checkbox>\r\n</ng-template>\r\n", styles: [".x-transfer{margin:0;padding:0;display:inline-flex;align-items:center}.x-transfer-box{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);width:12rem}.x-transfer-title{padding:.25rem .5625rem;display:flex;align-items:center;justify-content:space-between;border-bottom:.0625rem solid var(--x-border);background-color:var(--x-background);color:var(--x-text-300)}.x-transfer-title>span{margin-left:.325rem}.x-transfer-list{display:flex;flex-direction:column;padding:.25rem;height:18rem;overflow-y:auto}.x-transfer-list>li{padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;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-transfer-list.cdk-drop-list-dragging>li:hover{background-color:transparent}.x-transfer-list.cdk-drop-list-dragging>li.cdk-drag-placeholder{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}.x-transfer-list.cdk-drop-list-dragging>li:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-transfer-buttons{margin:0 1rem;display:flex;flex-direction:column}.x-transfer-buttons>x-button:not(:first-child){margin-top:.5rem}.x-transfer-search{padding:.5rem;border-bottom:.0625rem solid var(--x-border)}body>li.x-transfer-item.cdk-drag-preview{padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;border:.0625rem dashed transparent;border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}body>li.x-transfer-item.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"], components: [{ type: i2.XButtonComponent, selector: "x-button" }, { type: i3.XCheckboxComponent, selector: "x-checkbox" }], directives: [{ type: i4.CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { 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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTransferComponent, decorators: [{
187
187
  type: Component,
188
188
  args: [{ selector: `${XTransferPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XTransferComponent)], template: "<div #transfer class=\"x-transfer\" cdkDropListGroup [ngClass]=\"classMap\">\r\n <div class=\"x-transfer-box\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: left }\"></ng-container>\r\n <ul\r\n class=\"x-transfer-list\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"left.list\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <li class=\"x-transfer-item\" *ngFor=\"let node of left.list; trackBy: trackByNode\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: left }\"></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"x-transfer-buttons\">\r\n <x-button type=\"primary\" icon=\"fto-chevron-right\" [disabled]=\"left.disabledButton\" (click)=\"move(left, right)\"></x-button>\r\n <x-button type=\"primary\" icon=\"fto-chevron-left\" [disabled]=\"right.disabledButton\" (click)=\"move(right, left)\"></x-button>\r\n </div>\r\n <div class=\"x-transfer-box\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: right }\"></ng-container>\r\n <ul\r\n class=\"x-transfer-list\"\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"right.list\"\r\n [cdkDropListDisabled]=\"!drag\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n >\r\n <li class=\"x-transfer-item\" *ngFor=\"let node of right.list; trackBy: trackByNode\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: right }\"></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n\r\n<ng-template #sourceTitleTpl let-source=\"source\">\r\n <div class=\"x-transfer-title\">\r\n <x-checkbox\r\n [data]=\"[titleTpl ? '' : source.title]\"\r\n [(ngModel)]=\"source.checkedAll\"\r\n (ngModelChange)=\"checkedAllChange($event, source)\"\r\n [indeterminate]=\"source.indeterminate\"\r\n ></x-checkbox>\r\n <ng-container *xOutlet=\"titleTpl; context: { $title: source.title, $checkedCount: source.checkedCount, $count: source.list.length }\"\r\n ><span>{{ source.checkedCount }} / {{ source.list.length }}</span></ng-container\r\n >\r\n </div>\r\n <!-- <div class=\"x-transfer-search\" *ngIf=\"search\">\r\n <x-input\r\n icon=\"fto-search\"\r\n [(ngModel)]=\"source.searchInput\"\r\n (ngModelChange)=\"searchInputChange(source)\"\r\n clearable\r\n ></x-input>\r\n </div> -->\r\n</ng-template>\r\n\r\n<ng-template #sourceNodeTpl let-node=\"node\" let-source=\"source\">\r\n <x-checkbox\r\n [data]=\"[{ id: node.id, label: nodeTpl ? nodeTpl : node.label, node: node }]\"\r\n [disabled]=\"node.disabled\"\r\n [(ngModel)]=\"node.checked\"\r\n (ngModelChange)=\"checkedChange($event, source)\"\r\n ></x-checkbox>\r\n</ng-template>\r\n", styles: [".x-transfer{margin:0;padding:0;display:inline-flex;align-items:center}.x-transfer-box{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);width:12rem}.x-transfer-title{padding:.25rem .5625rem;display:flex;align-items:center;justify-content:space-between;border-bottom:.0625rem solid var(--x-border);background-color:var(--x-background);color:var(--x-text-300)}.x-transfer-title>span{margin-left:.325rem}.x-transfer-list{display:flex;flex-direction:column;padding:.25rem;height:18rem;overflow-y:auto}.x-transfer-list>li{padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;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-transfer-list.cdk-drop-list-dragging>li:hover{background-color:transparent}.x-transfer-list.cdk-drop-list-dragging>li.cdk-drag-placeholder{border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}.x-transfer-list.cdk-drop-list-dragging>li:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-transfer-buttons{margin:0 1rem;display:flex;flex-direction:column}.x-transfer-buttons>x-button:not(:first-child){margin-top:.5rem}.x-transfer-search{padding:.5rem;border-bottom:.0625rem solid var(--x-border)}body>li.x-transfer-item.cdk-drag-preview{padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;border:.0625rem dashed transparent;border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}body>li.x-transfer-item.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"] }]
189
189
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; } });
@@ -12,10 +12,10 @@ import { XBaseFormModule } from '@ng-nest/ui/base-form';
12
12
  import * as i0 from "@angular/core";
13
13
  export class XTransferModule {
14
14
  }
15
- /** @nocollapse */ /** @nocollapse */ XTransferModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTransferModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
- /** @nocollapse */ /** @nocollapse */ XTransferModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTransferModule, declarations: [XTransferComponent, XTransferProperty], imports: [CommonModule, FormsModule, DragDropModule, XOutletModule, XCheckboxModule, XButtonModule, XInputModule, XBaseFormModule], exports: [XTransferComponent] });
17
- /** @nocollapse */ /** @nocollapse */ XTransferModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTransferModule, imports: [[CommonModule, FormsModule, DragDropModule, XOutletModule, XCheckboxModule, XButtonModule, XInputModule, XBaseFormModule]] });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTransferModule, decorators: [{
15
+ /** @nocollapse */ /** @nocollapse */ XTransferModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTransferModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ /** @nocollapse */ /** @nocollapse */ XTransferModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTransferModule, declarations: [XTransferComponent, XTransferProperty], imports: [CommonModule, FormsModule, DragDropModule, XOutletModule, XCheckboxModule, XButtonModule, XInputModule, XBaseFormModule], exports: [XTransferComponent] });
17
+ /** @nocollapse */ /** @nocollapse */ XTransferModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTransferModule, imports: [[CommonModule, FormsModule, DragDropModule, XOutletModule, XCheckboxModule, XButtonModule, XInputModule, XBaseFormModule]] });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTransferModule, decorators: [{
19
19
  type: NgModule,
20
20
  args: [{
21
21
  declarations: [XTransferComponent, XTransferProperty],
@@ -23,8 +23,8 @@ export class XTransferProperty extends XControlValueAccessor {
23
23
  this.data = [];
24
24
  }
25
25
  }
26
- /** @nocollapse */ /** @nocollapse */ XTransferProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTransferProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
27
- /** @nocollapse */ /** @nocollapse */ XTransferProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTransferProperty, selector: "ng-component", inputs: { data: "data", titles: "titles", drag: "drag", search: "search", nodeTpl: "nodeTpl", titleTpl: "titleTpl" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
26
+ /** @nocollapse */ /** @nocollapse */ XTransferProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTransferProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
27
+ /** @nocollapse */ /** @nocollapse */ XTransferProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XTransferProperty, selector: "ng-component", inputs: { data: "data", titles: "titles", drag: "drag", search: "search", nodeTpl: "nodeTpl", titleTpl: "titleTpl" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
28
28
  __decorate([
29
29
  XDataConvert()
30
30
  ], XTransferProperty.prototype, "data", void 0);
@@ -38,7 +38,7 @@ __decorate([
38
38
  __decorate([
39
39
  XInputBoolean()
40
40
  ], XTransferProperty.prototype, "search", void 0);
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTransferProperty, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTransferProperty, decorators: [{
42
42
  type: Component,
43
43
  args: [{ template: '' }]
44
44
  }], propDecorators: { data: [{
@@ -147,11 +147,11 @@ export class XTreeNodeComponent extends XTreeNodeProperty {
147
147
  return item.id;
148
148
  }
149
149
  }
150
- /** @nocollapse */ /** @nocollapse */ XTreeNodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeNodeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
151
- /** @nocollapse */ /** @nocollapse */ XTreeNodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTreeNodeComponent, selector: "x-tree-node, [x-tree-node]", inputs: { parent: "parent", tree: "tree" }, host: { properties: { "class.x-tree-node": "this.rootClass" } }, usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-tree-node-content\"\r\n [class.x-activated]=\"tree.activatedNode?.id === node.id\"\r\n [style.padding-left.rem]=\"paddingLeft\"\r\n [style.height.rem]=\"node.height ? node.height : nodeHeight ? nodeHeight : ''\"\r\n [style.align-items]=\"node.alignItems ? node.alignItems : nodeAlignItems\"\r\n (click)=\"onActivate($event, node)\"\r\n>\r\n <x-icon\r\n *ngIf=\"!loading\"\r\n [class.is-leaf]=\"!node.leaf\"\r\n [class.is-open]=\"node.open\"\r\n type=\"fto-chevron-right\"\r\n (click)=\"!tree.nodeOpen && onToggle($event, node)\"\r\n ></x-icon>\r\n <x-icon *ngIf=\"loading\" type=\"fto-loader\" [spin]=\"loading\"></x-icon>\r\n <x-checkbox\r\n *ngIf=\"tree.checkbox\"\r\n [data]=\"[{ label: '', id: node.id }]\"\r\n [(ngModel)]=\"node.checked\"\r\n (ngModelChange)=\"onCheckboxChange()\"\r\n [indeterminate]=\"node.indeterminate\"\r\n [disabled]=\"getNodeDisabled(node.disabled)\"\r\n (click)=\"$event.stopPropagation()\"\r\n ></x-checkbox>\r\n <span\r\n class=\"x-tree-node-label\"\r\n [class.nowrap]=\"node.nowrap === false || node.nowrap === true ? node.nowrap : nodeNowrap\"\r\n [title]=\"node.label\"\r\n *ngIf=\"!tree.labelTpl; else labelTpl\"\r\n >{{ node.label }}</span\r\n >\r\n <ng-template #labelTpl>\r\n <ng-container *xOutlet=\"tree.labelTpl; context: { $node: node }\"></ng-container>\r\n </ng-template>\r\n <span class=\"x-tree-node-operations\">\r\n <x-link\r\n *ngFor=\"let action of tree.actions; trackBy: trackByItem\"\r\n [icon]=\"action.icon\"\r\n [title]=\"action.label\"\r\n (click)=\"onAction($event, action, node)\"\r\n ></x-link>\r\n </span>\r\n</div>\r\n<ul *ngIf=\"node.childrenLoaded || (node.leaf && node.open)\" [hidden]=\"!node.open\">\r\n <li\r\n x-tree-node\r\n *ngFor=\"let child of node.children; trackBy: trackByItem\"\r\n [node]=\"child\"\r\n [parent]=\"this\"\r\n [lazy]=\"lazy\"\r\n [lazyData]=\"lazyData\"\r\n [nodeHeight]=\"nodeHeight\"\r\n [nodeNowrap]=\"nodeNowrap\"\r\n [nodeAlignItems]=\"nodeAlignItems\"\r\n [tree]=\"tree\"\r\n ></li>\r\n</ul>\r\n", styles: [".x-tree-node{margin:0;padding:0}.x-tree-node-content{display:flex;padding:.0625rem 0;cursor:pointer}.x-tree-node-content x-icon{padding:.25rem;color:var(--x-text-400);font-size:1rem;margin-right:.125rem;transition:var(--x-animation-duration-base)}.x-tree-node-content x-icon.is-leaf{visibility:hidden}.x-tree-node-content x-icon.is-open{transform:rotate(90deg)}.x-tree-node-content x-icon:hover{color:var(--x-text-300)}.x-tree-node-content x-checkbox{margin-right:.325rem;padding:.25rem 0}.x-tree-node-content:hover,.x-tree-node-content.x-activated{background-color:var(--x-background-a100)}.x-tree-node-content:hover .x-tree-node-operations{display:flex;align-items:center}.x-tree-node-operations{display:none}.x-tree-node-operations .x-link{padding:0 .125rem}.x-tree-node-label{flex:1;-webkit-user-select:none;user-select:none}.x-tree-node-label.nowrap{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}\n"], components: [{ type: i2.XIconComponent, selector: "x-icon" }, { type: i3.XCheckboxComponent, selector: "x-checkbox" }, { type: i4.XLinkComponent, selector: "x-link" }, { type: XTreeNodeComponent, selector: "x-tree-node, [x-tree-node]", inputs: ["parent", "tree"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
152
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeNodeComponent, decorators: [{
150
+ /** @nocollapse */ /** @nocollapse */ XTreeNodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeNodeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
151
+ /** @nocollapse */ /** @nocollapse */ XTreeNodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XTreeNodeComponent, selector: "x-tree-node, [x-tree-node]", inputs: { parent: "parent", tree: "tree" }, host: { properties: { "class.x-tree-node": "this.rootClass" } }, usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-tree-node-content\"\r\n [class.x-activated]=\"tree.activatedNode?.id === node.id\"\r\n [style.padding-left.rem]=\"paddingLeft\"\r\n [style.height.rem]=\"node.height ? node.height : nodeHeight ? nodeHeight : ''\"\r\n [style.align-items]=\"node.alignItems ? node.alignItems : nodeAlignItems\"\r\n (click)=\"onActivate($event, node)\"\r\n>\r\n <x-icon\r\n *ngIf=\"!loading\"\r\n [class.is-leaf]=\"!node.leaf\"\r\n [class.is-open]=\"node.open\"\r\n type=\"fto-chevron-right\"\r\n (click)=\"!tree.nodeOpen && onToggle($event, node)\"\r\n ></x-icon>\r\n <x-icon *ngIf=\"loading\" type=\"fto-loader\" [spin]=\"loading\"></x-icon>\r\n <x-checkbox\r\n *ngIf=\"tree.checkbox\"\r\n [data]=\"[{ label: '', id: node.id }]\"\r\n [(ngModel)]=\"node.checked\"\r\n (ngModelChange)=\"onCheckboxChange()\"\r\n [indeterminate]=\"node.indeterminate\"\r\n [disabled]=\"getNodeDisabled(node.disabled)\"\r\n (click)=\"$event.stopPropagation()\"\r\n ></x-checkbox>\r\n <span\r\n class=\"x-tree-node-label\"\r\n [class.nowrap]=\"node.nowrap === false || node.nowrap === true ? node.nowrap : nodeNowrap\"\r\n [title]=\"node.label\"\r\n *ngIf=\"!tree.labelTpl; else labelTpl\"\r\n >{{ node.label }}</span\r\n >\r\n <ng-template #labelTpl>\r\n <ng-container *xOutlet=\"tree.labelTpl; context: { $node: node }\"></ng-container>\r\n </ng-template>\r\n <span class=\"x-tree-node-operations\">\r\n <x-link\r\n *ngFor=\"let action of tree.actions; trackBy: trackByItem\"\r\n [icon]=\"action.icon\"\r\n [title]=\"action.label\"\r\n (click)=\"onAction($event, action, node)\"\r\n ></x-link>\r\n </span>\r\n</div>\r\n<ul *ngIf=\"node.childrenLoaded || (node.leaf && node.open)\" [hidden]=\"!node.open\">\r\n <li\r\n x-tree-node\r\n *ngFor=\"let child of node.children; trackBy: trackByItem\"\r\n [node]=\"child\"\r\n [parent]=\"this\"\r\n [lazy]=\"lazy\"\r\n [lazyData]=\"lazyData\"\r\n [nodeHeight]=\"nodeHeight\"\r\n [nodeNowrap]=\"nodeNowrap\"\r\n [nodeAlignItems]=\"nodeAlignItems\"\r\n [tree]=\"tree\"\r\n ></li>\r\n</ul>\r\n", styles: [".x-tree-node{margin:0;padding:0}.x-tree-node-content{display:flex;padding:.0625rem 0;cursor:pointer}.x-tree-node-content x-icon{padding:.25rem;color:var(--x-text-400);font-size:1rem;margin-right:.125rem;transition:var(--x-animation-duration-base)}.x-tree-node-content x-icon.is-leaf{visibility:hidden}.x-tree-node-content x-icon.is-open{transform:rotate(90deg)}.x-tree-node-content x-icon:hover{color:var(--x-text-300)}.x-tree-node-content x-checkbox{margin-right:.325rem;padding:.25rem 0}.x-tree-node-content:hover,.x-tree-node-content.x-activated{background-color:var(--x-background-a100)}.x-tree-node-content:hover .x-tree-node-label,.x-tree-node-content.x-activated .x-tree-node-label{color:var(--x-primary)}.x-tree-node-content:hover .x-tree-node-operations{display:flex;align-items:center}.x-tree-node-operations{display:none}.x-tree-node-operations .x-link{padding:0 .125rem}.x-tree-node-label{flex:1;-webkit-user-select:none;user-select:none}.x-tree-node-label.nowrap{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}\n"], components: [{ type: i2.XIconComponent, selector: "x-icon" }, { type: i3.XCheckboxComponent, selector: "x-checkbox" }, { type: i4.XLinkComponent, selector: "x-link" }, { type: XTreeNodeComponent, selector: "x-tree-node, [x-tree-node]", inputs: ["parent", "tree"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeNodeComponent, decorators: [{
153
153
  type: Component,
154
- args: [{ selector: `${XTreeNodePrefix}, [${XTreeNodePrefix}]`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"x-tree-node-content\"\r\n [class.x-activated]=\"tree.activatedNode?.id === node.id\"\r\n [style.padding-left.rem]=\"paddingLeft\"\r\n [style.height.rem]=\"node.height ? node.height : nodeHeight ? nodeHeight : ''\"\r\n [style.align-items]=\"node.alignItems ? node.alignItems : nodeAlignItems\"\r\n (click)=\"onActivate($event, node)\"\r\n>\r\n <x-icon\r\n *ngIf=\"!loading\"\r\n [class.is-leaf]=\"!node.leaf\"\r\n [class.is-open]=\"node.open\"\r\n type=\"fto-chevron-right\"\r\n (click)=\"!tree.nodeOpen && onToggle($event, node)\"\r\n ></x-icon>\r\n <x-icon *ngIf=\"loading\" type=\"fto-loader\" [spin]=\"loading\"></x-icon>\r\n <x-checkbox\r\n *ngIf=\"tree.checkbox\"\r\n [data]=\"[{ label: '', id: node.id }]\"\r\n [(ngModel)]=\"node.checked\"\r\n (ngModelChange)=\"onCheckboxChange()\"\r\n [indeterminate]=\"node.indeterminate\"\r\n [disabled]=\"getNodeDisabled(node.disabled)\"\r\n (click)=\"$event.stopPropagation()\"\r\n ></x-checkbox>\r\n <span\r\n class=\"x-tree-node-label\"\r\n [class.nowrap]=\"node.nowrap === false || node.nowrap === true ? node.nowrap : nodeNowrap\"\r\n [title]=\"node.label\"\r\n *ngIf=\"!tree.labelTpl; else labelTpl\"\r\n >{{ node.label }}</span\r\n >\r\n <ng-template #labelTpl>\r\n <ng-container *xOutlet=\"tree.labelTpl; context: { $node: node }\"></ng-container>\r\n </ng-template>\r\n <span class=\"x-tree-node-operations\">\r\n <x-link\r\n *ngFor=\"let action of tree.actions; trackBy: trackByItem\"\r\n [icon]=\"action.icon\"\r\n [title]=\"action.label\"\r\n (click)=\"onAction($event, action, node)\"\r\n ></x-link>\r\n </span>\r\n</div>\r\n<ul *ngIf=\"node.childrenLoaded || (node.leaf && node.open)\" [hidden]=\"!node.open\">\r\n <li\r\n x-tree-node\r\n *ngFor=\"let child of node.children; trackBy: trackByItem\"\r\n [node]=\"child\"\r\n [parent]=\"this\"\r\n [lazy]=\"lazy\"\r\n [lazyData]=\"lazyData\"\r\n [nodeHeight]=\"nodeHeight\"\r\n [nodeNowrap]=\"nodeNowrap\"\r\n [nodeAlignItems]=\"nodeAlignItems\"\r\n [tree]=\"tree\"\r\n ></li>\r\n</ul>\r\n", styles: [".x-tree-node{margin:0;padding:0}.x-tree-node-content{display:flex;padding:.0625rem 0;cursor:pointer}.x-tree-node-content x-icon{padding:.25rem;color:var(--x-text-400);font-size:1rem;margin-right:.125rem;transition:var(--x-animation-duration-base)}.x-tree-node-content x-icon.is-leaf{visibility:hidden}.x-tree-node-content x-icon.is-open{transform:rotate(90deg)}.x-tree-node-content x-icon:hover{color:var(--x-text-300)}.x-tree-node-content x-checkbox{margin-right:.325rem;padding:.25rem 0}.x-tree-node-content:hover,.x-tree-node-content.x-activated{background-color:var(--x-background-a100)}.x-tree-node-content:hover .x-tree-node-operations{display:flex;align-items:center}.x-tree-node-operations{display:none}.x-tree-node-operations .x-link{padding:0 .125rem}.x-tree-node-label{flex:1;-webkit-user-select:none;user-select:none}.x-tree-node-label.nowrap{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}\n"] }]
154
+ args: [{ selector: `${XTreeNodePrefix}, [${XTreeNodePrefix}]`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"x-tree-node-content\"\r\n [class.x-activated]=\"tree.activatedNode?.id === node.id\"\r\n [style.padding-left.rem]=\"paddingLeft\"\r\n [style.height.rem]=\"node.height ? node.height : nodeHeight ? nodeHeight : ''\"\r\n [style.align-items]=\"node.alignItems ? node.alignItems : nodeAlignItems\"\r\n (click)=\"onActivate($event, node)\"\r\n>\r\n <x-icon\r\n *ngIf=\"!loading\"\r\n [class.is-leaf]=\"!node.leaf\"\r\n [class.is-open]=\"node.open\"\r\n type=\"fto-chevron-right\"\r\n (click)=\"!tree.nodeOpen && onToggle($event, node)\"\r\n ></x-icon>\r\n <x-icon *ngIf=\"loading\" type=\"fto-loader\" [spin]=\"loading\"></x-icon>\r\n <x-checkbox\r\n *ngIf=\"tree.checkbox\"\r\n [data]=\"[{ label: '', id: node.id }]\"\r\n [(ngModel)]=\"node.checked\"\r\n (ngModelChange)=\"onCheckboxChange()\"\r\n [indeterminate]=\"node.indeterminate\"\r\n [disabled]=\"getNodeDisabled(node.disabled)\"\r\n (click)=\"$event.stopPropagation()\"\r\n ></x-checkbox>\r\n <span\r\n class=\"x-tree-node-label\"\r\n [class.nowrap]=\"node.nowrap === false || node.nowrap === true ? node.nowrap : nodeNowrap\"\r\n [title]=\"node.label\"\r\n *ngIf=\"!tree.labelTpl; else labelTpl\"\r\n >{{ node.label }}</span\r\n >\r\n <ng-template #labelTpl>\r\n <ng-container *xOutlet=\"tree.labelTpl; context: { $node: node }\"></ng-container>\r\n </ng-template>\r\n <span class=\"x-tree-node-operations\">\r\n <x-link\r\n *ngFor=\"let action of tree.actions; trackBy: trackByItem\"\r\n [icon]=\"action.icon\"\r\n [title]=\"action.label\"\r\n (click)=\"onAction($event, action, node)\"\r\n ></x-link>\r\n </span>\r\n</div>\r\n<ul *ngIf=\"node.childrenLoaded || (node.leaf && node.open)\" [hidden]=\"!node.open\">\r\n <li\r\n x-tree-node\r\n *ngFor=\"let child of node.children; trackBy: trackByItem\"\r\n [node]=\"child\"\r\n [parent]=\"this\"\r\n [lazy]=\"lazy\"\r\n [lazyData]=\"lazyData\"\r\n [nodeHeight]=\"nodeHeight\"\r\n [nodeNowrap]=\"nodeNowrap\"\r\n [nodeAlignItems]=\"nodeAlignItems\"\r\n [tree]=\"tree\"\r\n ></li>\r\n</ul>\r\n", styles: [".x-tree-node{margin:0;padding:0}.x-tree-node-content{display:flex;padding:.0625rem 0;cursor:pointer}.x-tree-node-content x-icon{padding:.25rem;color:var(--x-text-400);font-size:1rem;margin-right:.125rem;transition:var(--x-animation-duration-base)}.x-tree-node-content x-icon.is-leaf{visibility:hidden}.x-tree-node-content x-icon.is-open{transform:rotate(90deg)}.x-tree-node-content x-icon:hover{color:var(--x-text-300)}.x-tree-node-content x-checkbox{margin-right:.325rem;padding:.25rem 0}.x-tree-node-content:hover,.x-tree-node-content.x-activated{background-color:var(--x-background-a100)}.x-tree-node-content:hover .x-tree-node-label,.x-tree-node-content.x-activated .x-tree-node-label{color:var(--x-primary)}.x-tree-node-content:hover .x-tree-node-operations{display:flex;align-items:center}.x-tree-node-operations{display:none}.x-tree-node-operations .x-link{padding:0 .125rem}.x-tree-node-label{flex:1;-webkit-user-select:none;user-select:none}.x-tree-node-label.nowrap{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}\n"] }]
155
155
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; }, propDecorators: { parent: [{
156
156
  type: Input
157
157
  }], tree: [{
@@ -160,4 +160,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
160
160
  type: HostBinding,
161
161
  args: ['class.x-tree-node']
162
162
  }] } });
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS1ub2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS1ub2RlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsaUJBQWlCLEVBSWpCLHVCQUF1QixFQUN2QixXQUFXLEVBQ1gsS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQWEsaUJBQWlCLEVBQWUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RixPQUFPLEVBQUUsUUFBUSxFQUE0QixNQUFNLGtCQUFrQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBVXJDLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxpQkFBaUI7SUFpQnZEO0lBQ0UsMkNBQTJDO0lBQ3BDLFFBQW1CLEVBQ25CLFVBQXNCLEVBQ3RCLEdBQXNCLEVBQ3RCLGFBQTZCO1FBRXBDLEtBQUssRUFBRSxDQUFDO1FBTEQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtRQW5CSixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzNDLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFxQnpCLENBQUM7SUFwQkQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBVyxPQUFPLENBQUMsS0FBSztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFB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ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBSZW5kZXJlcjIsXHJcbiAgRWxlbWVudFJlZixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBIb3N0QmluZGluZyxcclxuICBJbnB1dFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYVHJlZU5vZGVQcmVmaXgsIFhUcmVlTm9kZSwgWFRyZWVOb2RlUHJvcGVydHksIFhUcmVlQWN0aW9uIH0gZnJvbSAnLi90cmVlLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWElzRW1wdHksIFhDb25maWdTZXJ2aWNlLCBYQm9vbGVhbiB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVHJlZU5vZGVQcmVmaXh9LCBbJHtYVHJlZU5vZGVQcmVmaXh9XWAsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtbm9kZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHJlZS1ub2RlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWFRyZWVOb2RlQ29tcG9uZW50IGV4dGVuZHMgWFRyZWVOb2RlUHJvcGVydHkgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIHBhcmVudCE6IFhUcmVlTm9kZUNvbXBvbmVudDtcclxuICBASW5wdXQoKSB0cmVlOiBhbnk7XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy54LXRyZWUtbm9kZScpIHJvb3RDbGFzcyA9IHRydWU7XHJcbiAgcHJpdmF0ZSBfbG9hZGluZyA9IGZhbHNlO1xyXG4gIHB1YmxpYyBnZXQgbG9hZGluZygpIHtcclxuICAgIHJldHVybiB0aGlzLl9sb2FkaW5nO1xyXG4gIH1cclxuICBwdWJsaWMgc2V0IGxvYWRpbmcodmFsdWUpIHtcclxuICAgIHRoaXMuX2xvYWRpbmcgPSB2YWx1ZTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIGdldCBwYWRkaW5nTGVmdCgpIHtcclxuICAgIHJldHVybiBOdW1iZXIodGhpcy5sZXZlbCkgKiBOdW1iZXIodGhpcy50cmVlLnNwYWNpbmcpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAvLyBAT3B0aW9uYWwoKSBwdWJsaWMgdHJlZTogWFRyZWVDb21wb25lbnQsXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMubm9kZS5jaGFuZ2UgPSAoY2hlY2s6IGJvb2xlYW4pID0+IHtcclxuICAgICAgaWYgKGNoZWNrKSB0aGlzLnNldENoZWNrYm94KCk7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH07XHJcbiAgICB0aGlzLmxldmVsID0gdGhpcy5ub2RlPy5sZXZlbCA/IHRoaXMubm9kZS5sZXZlbCA6IDA7XHJcbiAgICBpZiAoIXRoaXMudHJlZS5sZXZlbENoZWNrKSByZXR1cm47XHJcbiAgICBpZiAodGhpcy5ub2RlLmNoZWNrZWQpIHRoaXMuc2V0Q2hlY2tib3goKTtcclxuICAgIHRoaXMuc2V0SW5kZXRlcm1pbmF0ZSh0aGlzLm5vZGUpO1xyXG4gIH1cclxuXHJcbiAgb25Ub2dnbGUoZXZlbnQ6IEV2ZW50LCBub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIG5vZGUub3BlbiA9ICFub2RlLm9wZW47XHJcbiAgICBpZiAobm9kZS5vcGVuICYmICFub2RlLmNoaWxkcmVuTG9hZGVkKSB7XHJcbiAgICAgIGlmICh0aGlzLmxhenkpIHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgICAgICAodGhpcy5sYXp5RGF0YSBhcyAocGlkPzogYW55KSA9PiBPYnNlcnZhYmxlPFhUcmVlTm9kZVtdPikobm9kZS5pZClcclxuICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICBtYXAoKHgpID0+XHJcbiAgICAgICAgICAgICAgeC5tYXAoKHkpID0+IHtcclxuICAgICAgICAgICAgICAgIHkubGV2ZWwgPSAobm9kZS5sZXZlbCBhcyBudW1iZXIpICsgMTtcclxuICAgICAgICAgICAgICAgIHkuY2hlY2tlZCA9IG5vZGUuY2hlY2tlZDtcclxuICAgICAgICAgICAgICAgIHJldHVybiB5O1xyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgIClcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICAgICAgbm9kZS5jaGlsZHJlbiA9IHg7XHJcbiAgICAgICAgICAgIG5vZGUuY2hpbGRyZW5Mb2FkZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbm9kZS5jaGlsZHJlbkxvYWRlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uQWN0aXZhdGUoZXZlbnQ6IEV2ZW50LCBub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIGNvbnN0IGNoYW5nZTogRnVuY3Rpb24gPSB0aGlzLnRyZWUuYWN0aXZhdGVkTm9kZT8uY2hhbmdlIGFzIEZ1bmN0aW9uO1xyXG4gICAgdGhpcy50cmVlLm5vZGVPcGVuICYmIG5vZGUubGVhZiAmJiB0aGlzLm9uVG9nZ2xlKGV2ZW50LCBub2RlKTtcclxuICAgIGlmICh0aGlzLnRyZWUuYWN0aXZhdGVkTm9kZSkge1xyXG4gICAgICBpZiAodGhpcy50cmVlLmFjdGl2YXRlZE5vZGUuaWQgPT09IG5vZGUuaWQgJiYgIXRoaXMudHJlZS5hbGxvd01hbnlBY3RpdmF0ZWQpIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMudHJlZS5hY3RpdmF0ZWROb2RlID0gbm9kZTtcclxuICAgIHRoaXMudHJlZS5hY3RpdmF0ZWRDaGFuZ2UuZW1pdChub2RlKTtcclxuICAgIGNoYW5nZSAmJiBjaGFuZ2UoKTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgb25DaGVja2JveENoYW5nZSgpIHtcclxuICAgIHRoaXMuc2V0Q2hlY2tib3goKTtcclxuICAgIHRoaXMudHJlZS5jaGVja2JveENoYW5nZS5lbWl0KHRoaXMubm9kZSk7XHJcbiAgfVxyXG5cclxuICBzZXRDaGVja2JveCgpIHtcclxuICAgIGlmICghdGhpcy50cmVlLmxldmVsQ2hlY2spIHJldHVybjtcclxuICAgIHRoaXMubm9kZS5pbmRldGVybWluYXRlID0gdGhpcy5ub2RlLmNoZWNrZWQ7XHJcbiAgICB0aGlzLm5vZGUuY2hpbGRyZW4gJiYgdGhpcy5zZXRDaGlsZHJlbkNoZWNrYm94KHRoaXMubm9kZS5jaGVja2VkIGFzIGJvb2xlYW4pO1xyXG4gICAgdGhpcy5wYXJlbnQ/LnNldFBhcmVudENoZWNrYm94KCk7XHJcbiAgfVxyXG5cclxuICBzZXRDaGlsZHJlbkNoZWNrYm94KGNoZWNrZWQ6IGJvb2xlYW4pIHtcclxuICAgIGNvbnN0IHNldENoaWxkcmVuID0gKGNoaWxkcmVuOiBYVHJlZU5vZGVbXSwgaXNDaGVja2VkOiBib29sZWFuKSA9PiB7XHJcbiAgICAgIGlmIChYSXNFbXB0eShjaGlsZHJlbikpIHJldHVybjtcclxuICAgICAgZm9yIChsZXQgeCBvZiBjaGlsZHJlbikge1xyXG4gICAgICAgIGlmICh4LmRpc2FibGVkKSBjb250aW51ZTtcclxuICAgICAgICB4LmNoZWNrZWQgPSBpc0NoZWNrZWQ7XHJcbiAgICAgICAgeC5pbmRldGVybWluYXRlID0gaXNDaGVja2VkO1xyXG4gICAgICAgIHguY2hhbmdlICYmIHguY2hhbmdlKCk7XHJcbiAgICAgICAgc2V0Q2hpbGRyZW4oeC5jaGlsZHJlbiBhcyBYVHJlZU5vZGVbXSwgaXNDaGVja2VkKTtcclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIHNldENoaWxkcmVuKHRoaXMubm9kZS5jaGlsZHJlbiBhcyBYVHJlZU5vZGVbXSwgY2hlY2tlZCk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBzZXRQYXJlbnRDaGVja2JveCgpIHtcclxuICAgIGlmIChYSXNFbXB0eSh0aGlzLm5vZGUuY2hpbGRyZW4pKSByZXR1cm47XHJcbiAgICBsZXQgY2hlY2tlZExpc3QgPSB0aGlzLm5vZGUuY2hpbGRyZW4/LmZpbHRlcigoeCkgPT4geC5jaGVja2VkKTtcclxuICAgIGxldCBpbmRldGVybWluYXRlTGlzdCA9IHRoaXMubm9kZS5jaGlsZHJlbj8uZmlsdGVyKCh4KSA9PiB4LmluZGV0ZXJtaW5hdGUpO1xyXG4gICAgdGhpcy5ub2RlLmNoZWNrZWQgPSBjaGVja2VkTGlzdD8ubGVuZ3RoID09PSB0aGlzLm5vZGUuY2hpbGRyZW4/Lmxlbmd0aDtcclxuICAgIHRoaXMubm9kZS5pbmRldGVybWluYXRlID0gKGNoZWNrZWRMaXN0IGFzIFhUcmVlTm9kZVtdKS5sZW5ndGggPiAwIHx8IChpbmRldGVybWluYXRlTGlzdCBhcyBYVHJlZU5vZGVbXSkubGVuZ3RoID4gMDtcclxuICAgIHRoaXMucGFyZW50Py5zZXRQYXJlbnRDaGVja2JveCgpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5kZXRlcm1pbmF0ZShub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIGNvbnN0IGdldENoaWxkcmVuID0gKGNoaWxkcmVuOiBYVHJlZU5vZGVbXSkgPT4ge1xyXG4gICAgICBpZiAoWElzRW1wdHkoY2hpbGRyZW4pKSByZXR1cm47XHJcbiAgICAgIGNoaWxkcmVuLmZvckVhY2goKHgpID0+IHtcclxuICAgICAgICBpZiAoeC5pbmRldGVybWluYXRlIHx8IHguY2hlY2tlZCkge1xyXG4gICAgICAgICAgbm9kZS5pbmRldGVybWluYXRlID0gdHJ1ZTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgZ2V0Q2hpbGRyZW4oeC5jaGlsZHJlbiBhcyBYVHJlZU5vZGVbXSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfTtcclxuICAgIGdldENoaWxkcmVuKG5vZGUuY2hpbGRyZW4gYXMgWFRyZWVOb2RlW10pO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Tm9kZURpc2FibGVkKGRpc2FibGVkPzogYm9vbGVhbikge1xyXG4gICAgcmV0dXJuIGRpc2FibGVkIGFzIFhCb29sZWFuO1xyXG4gIH1cclxuXHJcbiAgb25BY3Rpb24oZXZlbnQ6IEV2ZW50LCBhY3Rpb246IFhUcmVlQWN0aW9uLCBub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIGFjdGlvbi5oYW5kbGVyICYmIGFjdGlvbi5oYW5kbGVyKG5vZGUpO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5SXRlbShfaW5kZXg6IG51bWJlciwgaXRlbTogWFRyZWVBY3Rpb24gfCBYVHJlZU5vZGUpIHtcclxuICAgIHJldHVybiBpdGVtLmlkO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJ4LXRyZWUtbm9kZS1jb250ZW50XCJcclxuICBbY2xhc3MueC1hY3RpdmF0ZWRdPVwidHJlZS5hY3RpdmF0ZWROb2RlPy5pZCA9PT0gbm9kZS5pZFwiXHJcbiAgW3N0eWxlLnBhZGRpbmctbGVmdC5yZW1dPVwicGFkZGluZ0xlZnRcIlxyXG4gIFtzdHlsZS5oZWlnaHQucmVtXT1cIm5vZGUuaGVpZ2h0ID8gbm9kZS5oZWlnaHQgOiBub2RlSGVpZ2h0ID8gbm9kZUhlaWdodCA6ICcnXCJcclxuICBbc3R5bGUuYWxpZ24taXRlbXNdPVwibm9kZS5hbGlnbkl0ZW1zID8gbm9kZS5hbGlnbkl0ZW1zIDogbm9kZUFsaWduSXRlbXNcIlxyXG4gIChjbGljayk9XCJvbkFjdGl2YXRlKCRldmVudCwgbm9kZSlcIlxyXG4+XHJcbiAgPHgtaWNvblxyXG4gICAgKm5nSWY9XCIhbG9hZGluZ1wiXHJcbiAgICBbY2xhc3MuaXMtbGVhZl09XCIhbm9kZS5sZWFmXCJcclxuICAgIFtjbGFzcy5pcy1vcGVuXT1cIm5vZGUub3BlblwiXHJcbiAgICB0eXBlPVwiZnRvLWNoZXZyb24tcmlnaHRcIlxyXG4gICAgKGNsaWNrKT1cIiF0cmVlLm5vZGVPcGVuICYmIG9uVG9nZ2xlKCRldmVudCwgbm9kZSlcIlxyXG4gID48L3gtaWNvbj5cclxuICA8eC1pY29uICpuZ0lmPVwibG9hZGluZ1wiIHR5cGU9XCJmdG8tbG9hZGVyXCIgW3NwaW5dPVwibG9hZGluZ1wiPjwveC1pY29uPlxyXG4gIDx4LWNoZWNrYm94XHJcbiAgICAqbmdJZj1cInRyZWUuY2hlY2tib3hcIlxyXG4gICAgW2RhdGFdPVwiW3sgbGFiZWw6ICcnLCBpZDogbm9kZS5pZCB9XVwiXHJcbiAgICBbKG5nTW9kZWwpXT1cIm5vZGUuY2hlY2tlZFwiXHJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJvbkNoZWNrYm94Q2hhbmdlKClcIlxyXG4gICAgW2luZGV0ZXJtaW5hdGVdPVwibm9kZS5pbmRldGVybWluYXRlXCJcclxuICAgIFtkaXNhYmxlZF09XCJnZXROb2RlRGlzYWJsZWQobm9kZS5kaXNhYmxlZClcIlxyXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXHJcbiAgPjwveC1jaGVja2JveD5cclxuICA8c3BhblxyXG4gICAgY2xhc3M9XCJ4LXRyZWUtbm9kZS1sYWJlbFwiXHJcbiAgICBbY2xhc3Mubm93cmFwXT1cIm5vZGUubm93cmFwID09PSBmYWxzZSB8fCBub2RlLm5vd3JhcCA9PT0gdHJ1ZSA/IG5vZGUubm93cmFwIDogbm9kZU5vd3JhcFwiXHJcbiAgICBbdGl0bGVdPVwibm9kZS5sYWJlbFwiXHJcbiAgICAqbmdJZj1cIiF0cmVlLmxhYmVsVHBsOyBlbHNlIGxhYmVsVHBsXCJcclxuICAgID57eyBub2RlLmxhYmVsIH19PC9zcGFuXHJcbiAgPlxyXG4gIDxuZy10ZW1wbGF0ZSAjbGFiZWxUcGw+XHJcbiAgICA8bmctY29udGFpbmVyICp4T3V0bGV0PVwidHJlZS5sYWJlbFRwbDsgY29udGV4dDogeyAkbm9kZTogbm9kZSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuICA8c3BhbiBjbGFzcz1cIngtdHJlZS1ub2RlLW9wZXJhdGlvbnNcIj5cclxuICAgIDx4LWxpbmtcclxuICAgICAgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiB0cmVlLmFjdGlvbnM7IHRyYWNrQnk6IHRyYWNrQnlJdGVtXCJcclxuICAgICAgW2ljb25dPVwiYWN0aW9uLmljb25cIlxyXG4gICAgICBbdGl0bGVdPVwiYWN0aW9uLmxhYmVsXCJcclxuICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uKCRldmVudCwgYWN0aW9uLCBub2RlKVwiXHJcbiAgICA+PC94LWxpbms+XHJcbiAgPC9zcGFuPlxyXG48L2Rpdj5cclxuPHVsICpuZ0lmPVwibm9kZS5jaGlsZHJlbkxvYWRlZCB8fCAobm9kZS5sZWFmICYmIG5vZGUub3BlbilcIiBbaGlkZGVuXT1cIiFub2RlLm9wZW5cIj5cclxuICA8bGlcclxuICAgIHgtdHJlZS1ub2RlXHJcbiAgICAqbmdGb3I9XCJsZXQgY2hpbGQgb2Ygbm9kZS5jaGlsZHJlbjsgdHJhY2tCeTogdHJhY2tCeUl0ZW1cIlxyXG4gICAgW25vZGVdPVwiY2hpbGRcIlxyXG4gICAgW3BhcmVudF09XCJ0aGlzXCJcclxuICAgIFtsYXp5XT1cImxhenlcIlxyXG4gICAgW2xhenlEYXRhXT1cImxhenlEYXRhXCJcclxuICAgIFtub2RlSGVpZ2h0XT1cIm5vZGVIZWlnaHRcIlxyXG4gICAgW25vZGVOb3dyYXBdPVwibm9kZU5vd3JhcFwiXHJcbiAgICBbbm9kZUFsaWduSXRlbXNdPVwibm9kZUFsaWduSXRlbXNcIlxyXG4gICAgW3RyZWVdPVwidHJlZVwiXHJcbiAgPjwvbGk+XHJcbjwvdWw+XHJcbiJdfQ==
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS1ub2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS1ub2RlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsaUJBQWlCLEVBSWpCLHVCQUF1QixFQUN2QixXQUFXLEVBQ1gsS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQWEsaUJBQWlCLEVBQWUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RixPQUFPLEVBQUUsUUFBUSxFQUE0QixNQUFNLGtCQUFrQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBVXJDLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxpQkFBaUI7SUFpQnZEO0lBQ0UsMkNBQTJDO0lBQ3BDLFFBQW1CLEVBQ25CLFVBQXNCLEVBQ3RCLEdBQXNCLEVBQ3RCLGFBQTZCO1FBRXBDLEtBQUssRUFBRSxDQUFDO1FBTEQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtRQW5CSixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzNDLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFxQnpCLENBQUM7SUFwQkQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBVyxPQUFPLENBQUMsS0FBSztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFB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ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBSZW5kZXJlcjIsXHJcbiAgRWxlbWVudFJlZixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBIb3N0QmluZGluZyxcclxuICBJbnB1dFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYVHJlZU5vZGVQcmVmaXgsIFhUcmVlTm9kZSwgWFRyZWVOb2RlUHJvcGVydHksIFhUcmVlQWN0aW9uIH0gZnJvbSAnLi90cmVlLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWElzRW1wdHksIFhDb25maWdTZXJ2aWNlLCBYQm9vbGVhbiB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVHJlZU5vZGVQcmVmaXh9LCBbJHtYVHJlZU5vZGVQcmVmaXh9XWAsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtbm9kZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHJlZS1ub2RlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWFRyZWVOb2RlQ29tcG9uZW50IGV4dGVuZHMgWFRyZWVOb2RlUHJvcGVydHkgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIHBhcmVudCE6IFhUcmVlTm9kZUNvbXBvbmVudDtcclxuICBASW5wdXQoKSB0cmVlOiBhbnk7XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy54LXRyZWUtbm9kZScpIHJvb3RDbGFzcyA9IHRydWU7XHJcbiAgcHJpdmF0ZSBfbG9hZGluZyA9IGZhbHNlO1xyXG4gIHB1YmxpYyBnZXQgbG9hZGluZygpIHtcclxuICAgIHJldHVybiB0aGlzLl9sb2FkaW5nO1xyXG4gIH1cclxuICBwdWJsaWMgc2V0IGxvYWRpbmcodmFsdWUpIHtcclxuICAgIHRoaXMuX2xvYWRpbmcgPSB2YWx1ZTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIGdldCBwYWRkaW5nTGVmdCgpIHtcclxuICAgIHJldHVybiBOdW1iZXIodGhpcy5sZXZlbCkgKiBOdW1iZXIodGhpcy50cmVlLnNwYWNpbmcpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAvLyBAT3B0aW9uYWwoKSBwdWJsaWMgdHJlZTogWFRyZWVDb21wb25lbnQsXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMubm9kZS5jaGFuZ2UgPSAoY2hlY2s6IGJvb2xlYW4pID0+IHtcclxuICAgICAgaWYgKGNoZWNrKSB0aGlzLnNldENoZWNrYm94KCk7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH07XHJcbiAgICB0aGlzLmxldmVsID0gdGhpcy5ub2RlPy5sZXZlbCA/IHRoaXMubm9kZS5sZXZlbCA6IDA7XHJcbiAgICBpZiAoIXRoaXMudHJlZS5sZXZlbENoZWNrKSByZXR1cm47XHJcbiAgICBpZiAodGhpcy5ub2RlLmNoZWNrZWQpIHRoaXMuc2V0Q2hlY2tib3goKTtcclxuICAgIHRoaXMuc2V0SW5kZXRlcm1pbmF0ZSh0aGlzLm5vZGUpO1xyXG4gIH1cclxuXHJcbiAgb25Ub2dnbGUoZXZlbnQ6IEV2ZW50LCBub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIG5vZGUub3BlbiA9ICFub2RlLm9wZW47XHJcbiAgICBpZiAobm9kZS5vcGVuICYmICFub2RlLmNoaWxkcmVuTG9hZGVkKSB7XHJcbiAgICAgIGlmICh0aGlzLmxhenkpIHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgICAgICAodGhpcy5sYXp5RGF0YSBhcyAocGlkPzogYW55KSA9PiBPYnNlcnZhYmxlPFhUcmVlTm9kZVtdPikobm9kZS5pZClcclxuICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICBtYXAoKHgpID0+XHJcbiAgICAgICAgICAgICAgeC5tYXAoKHkpID0+IHtcclxuICAgICAgICAgICAgICAgIHkubGV2ZWwgPSAobm9kZS5sZXZlbCBhcyBudW1iZXIpICsgMTtcclxuICAgICAgICAgICAgICAgIHkuY2hlY2tlZCA9IG5vZGUuY2hlY2tlZDtcclxuICAgICAgICAgICAgICAgIHJldHVybiB5O1xyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgIClcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICAgICAgbm9kZS5jaGlsZHJlbiA9IHg7XHJcbiAgICAgICAgICAgIG5vZGUuY2hpbGRyZW5Mb2FkZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbm9kZS5jaGlsZHJlbkxvYWRlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uQWN0aXZhdGUoZXZlbnQ6IEV2ZW50LCBub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIGNvbnN0IGNoYW5nZTogRnVuY3Rpb24gPSB0aGlzLnRyZWUuYWN0aXZhdGVkTm9kZT8uY2hhbmdlIGFzIEZ1bmN0aW9uO1xyXG4gICAgdGhpcy50cmVlLm5vZGVPcGVuICYmIG5vZGUubGVhZiAmJiB0aGlzLm9uVG9nZ2xlKGV2ZW50LCBub2RlKTtcclxuICAgIGlmICh0aGlzLnRyZWUuYWN0aXZhdGVkTm9kZSkge1xyXG4gICAgICBpZiAodGhpcy50cmVlLmFjdGl2YXRlZE5vZGUuaWQgPT09IG5vZGUuaWQgJiYgIXRoaXMudHJlZS5hbGxvd01hbnlBY3RpdmF0ZWQpIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMudHJlZS5hY3RpdmF0ZWROb2RlID0gbm9kZTtcclxuICAgIHRoaXMudHJlZS5hY3RpdmF0ZWRDaGFuZ2UuZW1pdChub2RlKTtcclxuICAgIGNoYW5nZSAmJiBjaGFuZ2UoKTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgb25DaGVja2JveENoYW5nZSgpIHtcclxuICAgIHRoaXMuc2V0Q2hlY2tib3goKTtcclxuICAgIHRoaXMudHJlZS5jaGVja2JveENoYW5nZS5lbWl0KHRoaXMubm9kZSk7XHJcbiAgfVxyXG5cclxuICBzZXRDaGVja2JveCgpIHtcclxuICAgIGlmICghdGhpcy50cmVlLmxldmVsQ2hlY2spIHJldHVybjtcclxuICAgIHRoaXMubm9kZS5pbmRldGVybWluYXRlID0gdGhpcy5ub2RlLmNoZWNrZWQ7XHJcbiAgICB0aGlzLm5vZGUuY2hpbGRyZW4gJiYgdGhpcy5zZXRDaGlsZHJlbkNoZWNrYm94KHRoaXMubm9kZS5jaGVja2VkIGFzIGJvb2xlYW4pO1xyXG4gICAgdGhpcy5wYXJlbnQ/LnNldFBhcmVudENoZWNrYm94KCk7XHJcbiAgfVxyXG5cclxuICBzZXRDaGlsZHJlbkNoZWNrYm94KGNoZWNrZWQ6IGJvb2xlYW4pIHtcclxuICAgIGNvbnN0IHNldENoaWxkcmVuID0gKGNoaWxkcmVuOiBYVHJlZU5vZGVbXSwgaXNDaGVja2VkOiBib29sZWFuKSA9PiB7XHJcbiAgICAgIGlmIChYSXNFbXB0eShjaGlsZHJlbikpIHJldHVybjtcclxuICAgICAgZm9yIChsZXQgeCBvZiBjaGlsZHJlbikge1xyXG4gICAgICAgIGlmICh4LmRpc2FibGVkKSBjb250aW51ZTtcclxuICAgICAgICB4LmNoZWNrZWQgPSBpc0NoZWNrZWQ7XHJcbiAgICAgICAgeC5pbmRldGVybWluYXRlID0gaXNDaGVja2VkO1xyXG4gICAgICAgIHguY2hhbmdlICYmIHguY2hhbmdlKCk7XHJcbiAgICAgICAgc2V0Q2hpbGRyZW4oeC5jaGlsZHJlbiBhcyBYVHJlZU5vZGVbXSwgaXNDaGVja2VkKTtcclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIHNldENoaWxkcmVuKHRoaXMubm9kZS5jaGlsZHJlbiBhcyBYVHJlZU5vZGVbXSwgY2hlY2tlZCk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBzZXRQYXJlbnRDaGVja2JveCgpIHtcclxuICAgIGlmIChYSXNFbXB0eSh0aGlzLm5vZGUuY2hpbGRyZW4pKSByZXR1cm47XHJcbiAgICBsZXQgY2hlY2tlZExpc3QgPSB0aGlzLm5vZGUuY2hpbGRyZW4/LmZpbHRlcigoeCkgPT4geC5jaGVja2VkKTtcclxuICAgIGxldCBpbmRldGVybWluYXRlTGlzdCA9IHRoaXMubm9kZS5jaGlsZHJlbj8uZmlsdGVyKCh4KSA9PiB4LmluZGV0ZXJtaW5hdGUpO1xyXG4gICAgdGhpcy5ub2RlLmNoZWNrZWQgPSBjaGVja2VkTGlzdD8ubGVuZ3RoID09PSB0aGlzLm5vZGUuY2hpbGRyZW4/Lmxlbmd0aDtcclxuICAgIHRoaXMubm9kZS5pbmRldGVybWluYXRlID0gKGNoZWNrZWRMaXN0IGFzIFhUcmVlTm9kZVtdKS5sZW5ndGggPiAwIHx8IChpbmRldGVybWluYXRlTGlzdCBhcyBYVHJlZU5vZGVbXSkubGVuZ3RoID4gMDtcclxuICAgIHRoaXMucGFyZW50Py5zZXRQYXJlbnRDaGVja2JveCgpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5kZXRlcm1pbmF0ZShub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIGNvbnN0IGdldENoaWxkcmVuID0gKGNoaWxkcmVuOiBYVHJlZU5vZGVbXSkgPT4ge1xyXG4gICAgICBpZiAoWElzRW1wdHkoY2hpbGRyZW4pKSByZXR1cm47XHJcbiAgICAgIGNoaWxkcmVuLmZvckVhY2goKHgpID0+IHtcclxuICAgICAgICBpZiAoeC5pbmRldGVybWluYXRlIHx8IHguY2hlY2tlZCkge1xyXG4gICAgICAgICAgbm9kZS5pbmRldGVybWluYXRlID0gdHJ1ZTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgZ2V0Q2hpbGRyZW4oeC5jaGlsZHJlbiBhcyBYVHJlZU5vZGVbXSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfTtcclxuICAgIGdldENoaWxkcmVuKG5vZGUuY2hpbGRyZW4gYXMgWFRyZWVOb2RlW10pO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Tm9kZURpc2FibGVkKGRpc2FibGVkPzogYm9vbGVhbikge1xyXG4gICAgcmV0dXJuIGRpc2FibGVkIGFzIFhCb29sZWFuO1xyXG4gIH1cclxuXHJcbiAgb25BY3Rpb24oZXZlbnQ6IEV2ZW50LCBhY3Rpb246IFhUcmVlQWN0aW9uLCBub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIGFjdGlvbi5oYW5kbGVyICYmIGFjdGlvbi5oYW5kbGVyKG5vZGUpO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5SXRlbShfaW5kZXg6IG51bWJlciwgaXRlbTogWFRyZWVBY3Rpb24gfCBYVHJlZU5vZGUpIHtcclxuICAgIHJldHVybiBpdGVtLmlkO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJ4LXRyZWUtbm9kZS1jb250ZW50XCJcclxuICBbY2xhc3MueC1hY3RpdmF0ZWRdPVwidHJlZS5hY3RpdmF0ZWROb2RlPy5pZCA9PT0gbm9kZS5pZFwiXHJcbiAgW3N0eWxlLnBhZGRpbmctbGVmdC5yZW1dPVwicGFkZGluZ0xlZnRcIlxyXG4gIFtzdHlsZS5oZWlnaHQucmVtXT1cIm5vZGUuaGVpZ2h0ID8gbm9kZS5oZWlnaHQgOiBub2RlSGVpZ2h0ID8gbm9kZUhlaWdodCA6ICcnXCJcclxuICBbc3R5bGUuYWxpZ24taXRlbXNdPVwibm9kZS5hbGlnbkl0ZW1zID8gbm9kZS5hbGlnbkl0ZW1zIDogbm9kZUFsaWduSXRlbXNcIlxyXG4gIChjbGljayk9XCJvbkFjdGl2YXRlKCRldmVudCwgbm9kZSlcIlxyXG4+XHJcbiAgPHgtaWNvblxyXG4gICAgKm5nSWY9XCIhbG9hZGluZ1wiXHJcbiAgICBbY2xhc3MuaXMtbGVhZl09XCIhbm9kZS5sZWFmXCJcclxuICAgIFtjbGFzcy5pcy1vcGVuXT1cIm5vZGUub3BlblwiXHJcbiAgICB0eXBlPVwiZnRvLWNoZXZyb24tcmlnaHRcIlxyXG4gICAgKGNsaWNrKT1cIiF0cmVlLm5vZGVPcGVuICYmIG9uVG9nZ2xlKCRldmVudCwgbm9kZSlcIlxyXG4gID48L3gtaWNvbj5cclxuICA8eC1pY29uICpuZ0lmPVwibG9hZGluZ1wiIHR5cGU9XCJmdG8tbG9hZGVyXCIgW3NwaW5dPVwibG9hZGluZ1wiPjwveC1pY29uPlxyXG4gIDx4LWNoZWNrYm94XHJcbiAgICAqbmdJZj1cInRyZWUuY2hlY2tib3hcIlxyXG4gICAgW2RhdGFdPVwiW3sgbGFiZWw6ICcnLCBpZDogbm9kZS5pZCB9XVwiXHJcbiAgICBbKG5nTW9kZWwpXT1cIm5vZGUuY2hlY2tlZFwiXHJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJvbkNoZWNrYm94Q2hhbmdlKClcIlxyXG4gICAgW2luZGV0ZXJtaW5hdGVdPVwibm9kZS5pbmRldGVybWluYXRlXCJcclxuICAgIFtkaXNhYmxlZF09XCJnZXROb2RlRGlzYWJsZWQobm9kZS5kaXNhYmxlZClcIlxyXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXHJcbiAgPjwveC1jaGVja2JveD5cclxuICA8c3BhblxyXG4gICAgY2xhc3M9XCJ4LXRyZWUtbm9kZS1sYWJlbFwiXHJcbiAgICBbY2xhc3Mubm93cmFwXT1cIm5vZGUubm93cmFwID09PSBmYWxzZSB8fCBub2RlLm5vd3JhcCA9PT0gdHJ1ZSA/IG5vZGUubm93cmFwIDogbm9kZU5vd3JhcFwiXHJcbiAgICBbdGl0bGVdPVwibm9kZS5sYWJlbFwiXHJcbiAgICAqbmdJZj1cIiF0cmVlLmxhYmVsVHBsOyBlbHNlIGxhYmVsVHBsXCJcclxuICAgID57eyBub2RlLmxhYmVsIH19PC9zcGFuXHJcbiAgPlxyXG4gIDxuZy10ZW1wbGF0ZSAjbGFiZWxUcGw+XHJcbiAgICA8bmctY29udGFpbmVyICp4T3V0bGV0PVwidHJlZS5sYWJlbFRwbDsgY29udGV4dDogeyAkbm9kZTogbm9kZSB9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuICA8c3BhbiBjbGFzcz1cIngtdHJlZS1ub2RlLW9wZXJhdGlvbnNcIj5cclxuICAgIDx4LWxpbmtcclxuICAgICAgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiB0cmVlLmFjdGlvbnM7IHRyYWNrQnk6IHRyYWNrQnlJdGVtXCJcclxuICAgICAgW2ljb25dPVwiYWN0aW9uLmljb25cIlxyXG4gICAgICBbdGl0bGVdPVwiYWN0aW9uLmxhYmVsXCJcclxuICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uKCRldmVudCwgYWN0aW9uLCBub2RlKVwiXHJcbiAgICA+PC94LWxpbms+XHJcbiAgPC9zcGFuPlxyXG48L2Rpdj5cclxuPHVsICpuZ0lmPVwibm9kZS5jaGlsZHJlbkxvYWRlZCB8fCAobm9kZS5sZWFmICYmIG5vZGUub3BlbilcIiBbaGlkZGVuXT1cIiFub2RlLm9wZW5cIj5cclxuICA8bGlcclxuICAgIHgtdHJlZS1ub2RlXHJcbiAgICAqbmdGb3I9XCJsZXQgY2hpbGQgb2Ygbm9kZS5jaGlsZHJlbjsgdHJhY2tCeTogdHJhY2tCeUl0ZW1cIlxyXG4gICAgW25vZGVdPVwiY2hpbGRcIlxyXG4gICAgW3BhcmVudF09XCJ0aGlzXCJcclxuICAgIFtsYXp5XT1cImxhenlcIlxyXG4gICAgW2xhenlEYXRhXT1cImxhenlEYXRhXCJcclxuICAgIFtub2RlSGVpZ2h0XT1cIm5vZGVIZWlnaHRcIlxyXG4gICAgW25vZGVOb3dyYXBdPVwibm9kZU5vd3JhcFwiXHJcbiAgICBbbm9kZUFsaWduSXRlbXNdPVwibm9kZUFsaWduSXRlbXNcIlxyXG4gICAgW3RyZWVdPVwidHJlZVwiXHJcbiAgPjwvbGk+XHJcbjwvdWw+XHJcbiJdfQ==
@@ -196,9 +196,9 @@ export class XTreeComponent extends XTreeProperty {
196
196
  return item.id;
197
197
  }
198
198
  }
199
- /** @nocollapse */ /** @nocollapse */ XTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
200
- /** @nocollapse */ /** @nocollapse */ XTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTreeComponent, selector: "x-tree", viewQueries: [{ propertyName: "tree", first: true, predicate: ["tree"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #tree class=\"x-tree\">\r\n <ul>\r\n <li\r\n x-tree-node\r\n *ngFor=\"let node of nodes; trackBy: trackByItem\"\r\n [node]=\"node\"\r\n [lazy]=\"lazy\"\r\n [lazyData]=\"data\"\r\n [nodeHeight]=\"nodeHeight\"\r\n [nodeNowrap]=\"nodeNowrap\"\r\n [nodeAlignItems]=\"nodeAlignItems\"\r\n [tree]=\"this\"\r\n ></li>\r\n </ul>\r\n</div>\r\n\r\n<!-- \u63D0\u524D\u52A0\u8F7Dloading\u7684\u56FE\u6807-->\r\n<x-icon *ngIf=\"lazy\" [style.display]=\"'none'\" type=\"fto-loader\"></x-icon>\r\n", styles: [".x-tree{margin:0;padding:0}\n"], components: [{ type: i2.XTreeNodeComponent, selector: "x-tree-node, [x-tree-node]", inputs: ["parent", "tree"] }, { type: i3.XIconComponent, selector: "x-icon" }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeComponent, decorators: [{
199
+ /** @nocollapse */ /** @nocollapse */ XTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
200
+ /** @nocollapse */ /** @nocollapse */ XTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XTreeComponent, selector: "x-tree", viewQueries: [{ propertyName: "tree", first: true, predicate: ["tree"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #tree class=\"x-tree\">\r\n <ul>\r\n <li\r\n x-tree-node\r\n *ngFor=\"let node of nodes; trackBy: trackByItem\"\r\n [node]=\"node\"\r\n [lazy]=\"lazy\"\r\n [lazyData]=\"data\"\r\n [nodeHeight]=\"nodeHeight\"\r\n [nodeNowrap]=\"nodeNowrap\"\r\n [nodeAlignItems]=\"nodeAlignItems\"\r\n [tree]=\"this\"\r\n ></li>\r\n </ul>\r\n</div>\r\n\r\n<!-- \u63D0\u524D\u52A0\u8F7Dloading\u7684\u56FE\u6807-->\r\n<x-icon *ngIf=\"lazy\" [style.display]=\"'none'\" type=\"fto-loader\"></x-icon>\r\n", styles: [".x-tree{margin:0;padding:0}\n"], components: [{ type: i2.XTreeNodeComponent, selector: "x-tree-node, [x-tree-node]", inputs: ["parent", "tree"] }, { type: i3.XIconComponent, selector: "x-icon" }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
201
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeComponent, decorators: [{
202
202
  type: Component,
203
203
  args: [{ selector: `${XTreePrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #tree class=\"x-tree\">\r\n <ul>\r\n <li\r\n x-tree-node\r\n *ngFor=\"let node of nodes; trackBy: trackByItem\"\r\n [node]=\"node\"\r\n [lazy]=\"lazy\"\r\n [lazyData]=\"data\"\r\n [nodeHeight]=\"nodeHeight\"\r\n [nodeNowrap]=\"nodeNowrap\"\r\n [nodeAlignItems]=\"nodeAlignItems\"\r\n [tree]=\"this\"\r\n ></li>\r\n </ul>\r\n</div>\r\n\r\n<!-- \u63D0\u524D\u52A0\u8F7Dloading\u7684\u56FE\u6807-->\r\n<x-icon *ngIf=\"lazy\" [style.display]=\"'none'\" type=\"fto-loader\"></x-icon>\r\n", styles: [".x-tree{margin:0;padding:0}\n"] }]
204
204
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; }, propDecorators: { tree: [{
@@ -11,10 +11,10 @@ import { XTreeProperty, XTreeNodeProperty } from './tree.property';
11
11
  import * as i0 from "@angular/core";
12
12
  export class XTreeModule {
13
13
  }
14
- /** @nocollapse */ /** @nocollapse */ XTreeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
- /** @nocollapse */ /** @nocollapse */ XTreeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeModule, declarations: [XTreeComponent, XTreeNodeComponent, XTreeProperty, XTreeNodeProperty], imports: [CommonModule, FormsModule, XIconModule, XCheckboxModule, XOutletModule, XLinkModule], exports: [XTreeComponent, XTreeNodeComponent] });
16
- /** @nocollapse */ /** @nocollapse */ XTreeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeModule, imports: [[CommonModule, FormsModule, XIconModule, XCheckboxModule, XOutletModule, XLinkModule]] });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeModule, decorators: [{
14
+ /** @nocollapse */ /** @nocollapse */ XTreeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ /** @nocollapse */ /** @nocollapse */ XTreeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeModule, declarations: [XTreeComponent, XTreeNodeComponent, XTreeProperty, XTreeNodeProperty], imports: [CommonModule, FormsModule, XIconModule, XCheckboxModule, XOutletModule, XLinkModule], exports: [XTreeComponent, XTreeNodeComponent] });
16
+ /** @nocollapse */ /** @nocollapse */ XTreeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeModule, imports: [[CommonModule, FormsModule, XIconModule, XCheckboxModule, XOutletModule, XLinkModule]] });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeModule, decorators: [{
18
18
  type: NgModule,
19
19
  args: [{
20
20
  declarations: [XTreeComponent, XTreeNodeComponent, XTreeProperty, XTreeNodeProperty],
@@ -72,8 +72,8 @@ export class XTreeProperty extends XProperty {
72
72
  this.manualChange = new EventEmitter();
73
73
  }
74
74
  }
75
- /** @nocollapse */ /** @nocollapse */ XTreeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
76
- /** @nocollapse */ /** @nocollapse */ XTreeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTreeProperty, selector: "ng-component", inputs: { data: "data", checkbox: "checkbox", lazy: "lazy", activatedId: "activatedId", expanded: "expanded", checked: "checked", expandedAll: "expandedAll", expandedLevel: "expandedLevel", nodeOpen: "nodeOpen", spacing: "spacing", labelTpl: "labelTpl", nodeHeight: "nodeHeight", allowManyActivated: "allowManyActivated", manual: "manual", levelCheck: "levelCheck", nodeNowrap: "nodeNowrap", nodeAlignItems: "nodeAlignItems", actions: "actions" }, outputs: { activatedChange: "activatedChange", checkboxChange: "checkboxChange", manualChange: "manualChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
75
+ /** @nocollapse */ /** @nocollapse */ XTreeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
76
+ /** @nocollapse */ /** @nocollapse */ XTreeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XTreeProperty, selector: "ng-component", inputs: { data: "data", checkbox: "checkbox", lazy: "lazy", activatedId: "activatedId", expanded: "expanded", checked: "checked", expandedAll: "expandedAll", expandedLevel: "expandedLevel", nodeOpen: "nodeOpen", spacing: "spacing", labelTpl: "labelTpl", nodeHeight: "nodeHeight", allowManyActivated: "allowManyActivated", manual: "manual", levelCheck: "levelCheck", nodeNowrap: "nodeNowrap", nodeAlignItems: "nodeAlignItems", actions: "actions", virtualScroll: "virtualScroll" }, outputs: { activatedChange: "activatedChange", checkboxChange: "checkboxChange", manualChange: "manualChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
77
77
  __decorate([
78
78
  XDataConvert()
79
79
  ], XTreeProperty.prototype, "data", void 0);
@@ -115,7 +115,11 @@ __decorate([
115
115
  __decorate([
116
116
  XWithConfig(X_CONFIG_NAME, 'center')
117
117
  ], XTreeProperty.prototype, "nodeAlignItems", void 0);
118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeProperty, decorators: [{
118
+ __decorate([
119
+ XWithConfig(X_CONFIG_NAME),
120
+ XInputBoolean()
121
+ ], XTreeProperty.prototype, "virtualScroll", void 0);
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeProperty, decorators: [{
119
123
  type: Component,
120
124
  args: [{ template: '' }]
121
125
  }], propDecorators: { data: [{
@@ -158,6 +162,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
158
162
  type: Input
159
163
  }], actions: [{
160
164
  type: Input
165
+ }], virtualScroll: [{
166
+ type: Input
161
167
  }], manualChange: [{
162
168
  type: Output
163
169
  }] } });
@@ -190,8 +196,8 @@ export class XTreeNodeProperty extends XProperty {
190
196
  this.nodeAlignItems = 'center';
191
197
  }
192
198
  }
193
- /** @nocollapse */ /** @nocollapse */ XTreeNodeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeNodeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
194
- /** @nocollapse */ /** @nocollapse */ XTreeNodeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTreeNodeProperty, selector: "ng-component", inputs: { node: "node", level: "level", lazy: "lazy", nodeHeight: "nodeHeight", nodeNowrap: "nodeNowrap", nodeAlignItems: "nodeAlignItems", lazyData: "lazyData" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
199
+ /** @nocollapse */ /** @nocollapse */ XTreeNodeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeNodeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
200
+ /** @nocollapse */ /** @nocollapse */ XTreeNodeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XTreeNodeProperty, selector: "ng-component", inputs: { node: "node", level: "level", lazy: "lazy", nodeHeight: "nodeHeight", nodeNowrap: "nodeNowrap", nodeAlignItems: "nodeAlignItems", lazyData: "lazyData" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
195
201
  __decorate([
196
202
  XInputBoolean()
197
203
  ], XTreeNodeProperty.prototype, "lazy", void 0);
@@ -201,7 +207,7 @@ __decorate([
201
207
  __decorate([
202
208
  XInputBoolean()
203
209
  ], XTreeNodeProperty.prototype, "nodeNowrap", void 0);
204
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTreeNodeProperty, decorators: [{
210
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XTreeNodeProperty, decorators: [{
205
211
  type: Component,
206
212
  args: [{ template: '' }]
207
213
  }], propDecorators: { node: [{
@@ -219,4 +225,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
219
225
  }], lazyData: [{
220
226
  type: Input
221
227
  }] } });
222
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5wcm9wZXJ0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS5wcm9wZXJ0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFlBQVksRUFDWixTQUFTLEVBRVQsYUFBYSxFQUliLFlBQVksRUFFWixXQUFXLEVBRVosTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsS0FBSyxFQUFlLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVwRjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQztBQUNwQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUM7QUFFN0I7O0dBRUc7QUFFSCxNQUFNLE9BQU8sYUFBYyxTQUFRLFNBQVM7SUFENUM7O1FBRUU7OztXQUdHO1FBQ3NCLFNBQUksR0FBcUIsRUFBRSxDQUFDO1FBZ0JyRDs7O1dBR0c7UUFDTSxhQUFRLEdBQVUsRUFBRSxDQUFDO1FBQzlCOzs7V0FHRztRQUNNLFlBQU8sR0FBVSxFQUFFLENBQUM7UUFNN0I7OztXQUdHO1FBQ3NCLGtCQUFhLEdBQVksQ0FBQyxDQUFDLENBQUM7UUEwQnJEOzs7V0FHRztRQUNPLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQUMxRDs7O1dBR0c7UUFDTyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFDekQ7OztXQUdHO1FBQ3VCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFDakQ7OztXQUdHO1FBQ3VCLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFDdEQ7OztXQUdHO1FBQ3VCLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFNdEQ7OztXQUdHO1FBQ00sWUFBTyxHQUFrQixFQUFFLENBQUM7UUFDckM7OztXQUdHO1FBQ08saUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0tBQ3REOztnSkExR1ksYUFBYTtvSUFBYixhQUFhLDRuQkFESCxFQUFFO0FBTUU7SUFBZixZQUFZLEVBQUU7MkNBQTZCO0FBSzNCO0lBQWhCLGFBQWEsRUFBRTsrQ0FBcUI7QUFLcEI7SUFBaEIsYUFBYSxFQUFFOzJDQUFpQjtBQW9CaEI7SUFBaEIsYUFBYSxFQUFFO2tEQUF3QjtBQUt4QjtJQUFmLFlBQVksRUFBRTtvREFBNkI7QUFLM0I7SUFBaEIsYUFBYSxFQUFFOytDQUFxQjtBQUt1QjtJQUEzRCxXQUFXLENBQVUsYUFBYSxFQUFFLEtBQUssQ0FBQztJQUFFLFlBQVksRUFBRTs4Q0FBbUI7QUFVdEI7SUFBdkQsV0FBVyxDQUFVLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFBRSxZQUFZLEVBQUU7aURBQXNCO0FBSzVEO0lBQWhCLGFBQWEsRUFBRTt5REFBK0I7QUFlOUI7SUFBaEIsYUFBYSxFQUFFOzZDQUF3QjtBQUt2QjtJQUFoQixhQUFhLEVBQUU7aURBQTZCO0FBSzVCO0lBQWhCLGFBQWEsRUFBRTtpREFBNkI7QUFLQztJQUE3QyxXQUFXLENBQVMsYUFBYSxFQUFFLFFBQVEsQ0FBQztxREFBeUI7MkZBL0ZwRSxhQUFhO2tCQUR6QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTs4QkFNQSxJQUFJO3NCQUE1QixLQUFLO2dCQUtvQixRQUFRO3NCQUFqQyxLQUFLO2dCQUtvQixJQUFJO3NCQUE3QixLQUFLO2dCQUtHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS29CLFdBQVc7c0JBQXBDLEtBQUs7Z0JBS21CLGFBQWE7c0JBQXJDLEtBQUs7Z0JBS29CLFFBQVE7c0JBQWpDLEtBQUs7Z0JBSytELE9BQU87c0JBQTNFLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFLMkQsVUFBVTtzQkFBMUUsS0FBSztnQkFLb0Isa0JBQWtCO3NCQUEzQyxLQUFLO2dCQUtJLGVBQWU7c0JBQXhCLE1BQU07Z0JBS0csY0FBYztzQkFBdkIsTUFBTTtnQkFLbUIsTUFBTTtzQkFBL0IsS0FBSztnQkFLb0IsVUFBVTtzQkFBbkMsS0FBSztnQkFLb0IsVUFBVTtzQkFBbkMsS0FBSztnQkFLaUQsY0FBYztzQkFBcEUsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS0ksWUFBWTtzQkFBckIsTUFBTTs7QUFrRlQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxhQUFhLENBQUM7QUFFN0M7O0dBRUc7QUFFSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsU0FBUztJQURoRDs7UUFFRTs7O1dBR0c7UUFDTSxTQUFJLEdBQWMsRUFBRSxDQUFDO1FBVzlCOzs7V0FHRztRQUNzQixlQUFVLEdBQVksQ0FBQyxDQUFDO1FBTWpEOzs7V0FHRztRQUNNLG1CQUFjLEdBQVcsUUFBUSxDQUFDO0tBTTVDOztvSkFwQ1ksaUJBQWlCO3dJQUFqQixpQkFBaUIsK09BRFAsRUFBRTtBQWdCRztJQUFoQixhQUFhLEVBQUU7K0NBQWlCO0FBS2pCO0lBQWYsWUFBWSxFQUFFO3FEQUF5QjtBQUt2QjtJQUFoQixhQUFhLEVBQUU7cURBQXVCOzJGQXpCckMsaUJBQWlCO2tCQUQ3QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTs4QkFNaEIsSUFBSTtzQkFBWixLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFLb0IsSUFBSTtzQkFBN0IsS0FBSztnQkFLbUIsVUFBVTtzQkFBbEMsS0FBSztnQkFLb0IsVUFBVTtzQkFBbkMsS0FBSztnQkFLRyxjQUFjO3NCQUF0QixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIFhEYXRhQ29udmVydCxcclxuICBYUHJvcGVydHksXHJcbiAgWERhdGEsXHJcbiAgWElucHV0Qm9vbGVhbixcclxuICBYUGFyZW50SWRlbnRpdHlQcm9wZXJ0eSxcclxuICBYTnVtYmVyLFxyXG4gIFhCb29sZWFuLFxyXG4gIFhJbnB1dE51bWJlcixcclxuICBYSWRlbnRpdHlQcm9wZXJ0eSxcclxuICBYV2l0aENvbmZpZyxcclxuICBYQWxpZ25cclxufSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgSW5wdXQsIFRlbXBsYXRlUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vKipcclxuICogVHJlZVxyXG4gKiBAc2VsZWN0b3IgeC10cmVlXHJcbiAqIEBkZWNvcmF0b3IgY29tcG9uZW50XHJcbiAqL1xyXG5leHBvcnQgY29uc3QgWFRyZWVQcmVmaXggPSAneC10cmVlJztcclxuY29uc3QgWF9DT05GSUdfTkFNRSA9ICd0cmVlJztcclxuXHJcbi8qKlxyXG4gKiBUcmVlIFByb3BlcnR5XHJcbiAqL1xyXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXHJcbmV4cG9ydCBjbGFzcyBYVHJlZVByb3BlcnR5IGV4dGVuZHMgWFByb3BlcnR5IHtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55pWw5o2uXHJcbiAgICogQGVuX1VTIE5vZGUgZGF0YVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYRGF0YUNvbnZlcnQoKSBkYXRhOiBYRGF0YTxYVHJlZU5vZGU+ID0gW107XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaYvuekuuWkmumAieahhlxyXG4gICAqIEBlbl9VUyBTaG93IGNoZWNrYm94XHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBjaGVja2JveD86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvIDlkK/mh5LliqDovb3oioLngrnvvIxkYXRhIOW/hemhu+iuvue9ruaIkOWHveaVsOexu+Wei1xyXG4gICAqIEBlbl9VUyBPcGVuIGxhenkgbG9hZGluZyBub2RlLCBkYXRhIG11c3QgYmUgc2V0IHRvIGZ1bmN0aW9uIHR5cGVcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIGxhenk/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5b2T5YmN5r+A5rS755qE6IqC54K5IElkXHJcbiAgICogQGVuX1VTIEN1cnJlbnRseSBhY3RpdmUgbm9kZSBJZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFjdGl2YXRlZElkOiBhbnk7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWxleW8gOeahOiKgueCuVxyXG4gICAqIEBlbl9VUyBFeHBhbmRlZCBub2RlXHJcbiAgICovXHJcbiAgQElucHV0KCkgZXhwYW5kZWQ6IGFueVtdID0gW107XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIGNoZWNrYm94IOmAieS4reeahOiKgueCuVxyXG4gICAqIEBlbl9VUyBDaGVja2JveCBzZWxlY3RlZCBub2RlXHJcbiAgICovXHJcbiAgQElucHV0KCkgY2hlY2tlZDogYW55W10gPSBbXTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5bGV5byA5omA5pyJ6IqC54K5XHJcbiAgICogQGVuX1VTIEV4cGFuZCBhbGwgbm9kZXNcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIGV4cGFuZGVkQWxsPzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOm7mOiupOWxleW8gOeahOWxgue6p1xyXG4gICAqIEBlbl9VUyBEZWZhdWx0IGV4cGFuZGVkIGxldmVsXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dE51bWJlcigpIGV4cGFuZGVkTGV2ZWw6IFhOdW1iZXIgPSAtMTtcclxuICAvKipcclxuICAgKiBAemhfQ04g54K55Ye76IqC54K55bCx6Kem5Y+R5bGV5byAL+aUtui1t+eahOaTjeS9nO+8jOivt+ehruS/neiKgueCueS4iuayoeacieWFtuWug+aTjeS9nO+8iGNoZWNrYm9444CB6Ieq5a6a5LmJ55qE5pON5L2c5oyJ6ZKu77yJXHJcbiAgICogQGVuX1VTIENsaWNrIHRoZSBub2RlIHRvIHRyaWdnZXIgdGhlIGV4cGFuZC9jb2xsYXBzZSBvcGVyYXRpb24sIHBsZWFzZSBtYWtlIHN1cmUgdGhhdCB0aGVyZSBhcmUgbm8gb3RoZXIgb3BlcmF0aW9ucyBvbiB0aGUgbm9kZSAoY2hlY2tib3gsIGN1c3RvbSBvcGVyYXRpb24gYnV0dG9uKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgbm9kZU9wZW4/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5Y2V5L2N6Ze06Led77yM6L+Z5Liq5LiO5bGC57qn55qE5LmY56ev566X5Ye66IqC54K555qE5bem6L656Led77yM5Y2V5L2NIHJlbVxyXG4gICAqIEBlbl9VUyBVbml0IHNwYWNpbmcsIHRoZSBwcm9kdWN0IG9mIHRoaXMgYW5kIHRoZSBsZXZlbCBjYWxjdWxhdGVzIHRoZSBsZWZ0IG1hcmdpbiBvZiB0aGUgbm9kZSwgdGhlIHVuaXQgaXMgcmVtXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhXaXRoQ29uZmlnPFhOdW1iZXI+KFhfQ09ORklHX05BTUUsIDAuODc1KSBAWElucHV0TnVtYmVyKCkgc3BhY2luZz86IFhOdW1iZXI7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOagh+etvuiHquWumuS5ieaooeadv1xyXG4gICAqIEBlbl9VUyBMYWJlbCBjdXN0b20gdGVtcGxhdGVcclxuICAgKi9cclxuICBASW5wdXQoKSBsYWJlbFRwbD86IFRlbXBsYXRlUmVmPHZvaWQ+O1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnnmoTpq5jluqbvvIzljZXkvY0gcmVtLCDpu5jorqQgMCDmmK/oh6rpgILlupTpq5jluqZcclxuICAgKiBAZW5fVVMgVGhlIGhlaWdodCBvZiB0aGUgbm9kZSBpbiByZW1cclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8WE51bWJlcj4oWF9DT05GSUdfTkFNRSwgMCkgQFhJbnB1dE51bWJlcigpIG5vZGVIZWlnaHQhOiBYTnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmmK/lkKblhYHorrjlpJrmrKHngrnlh7vkuIDkuKroioLngrnop6blj5HlpJrmrKHkuovku7ZcclxuICAgKiBAZW5fVVMgV2hldGhlciB0byBhbGxvdyBtdWx0aXBsZSBjbGlja3Mgb24gYSBub2RlIHRvIHRyaWdnZXIgbXVsdGlwbGUgZXZlbnRzXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBhbGxvd01hbnlBY3RpdmF0ZWQ/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5b2T5YmN54K55Ye76YCJ5Lit55qE6IqC54K55Y+Y5YyW55qE5LqL5Lu2XHJcbiAgICogQGVuX1VTIFRoZSBldmVudCBvZiB0aGUgY3VycmVudGx5IGNsaWNrZWQgbm9kZSBjaGFuZ2VcclxuICAgKi9cclxuICBAT3V0cHV0KCkgYWN0aXZhdGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxYVHJlZU5vZGU+KCk7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOS9v+eUqCBjaGVja2VkYm94IOmAieS4reWPmOWMlueahOS6i+S7tlxyXG4gICAqIEBlbl9VUyBVc2UgY2hlY2tlZGJveCB0byBzZWxlY3QgY2hhbmdlZCBldmVudHNcclxuICAgKi9cclxuICBAT3V0cHV0KCkgY2hlY2tib3hDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFhUcmVlTm9kZT4oKTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5aaC5p6cIGRhdGEg5piv5Ye95pWw57G75Z6L77yM5Y+v5Lul6YCa6L+H5q2k5Y+C5pWw5o6n5Yi26K+35rGC77yM5bi455So5LqO5by55qGG5Lit55qE6KGo5qC877yM5by55Ye65ZCO5YaN6K+35rGCXHJcbiAgICogQGVuX1VTIElmIGRhdGEgaXMgYSBmdW5jdGlvbiB0eXBlLCB5b3UgY2FuIHVzZSB0aGlzIHBhcmFtZXRlciB0byBjb250cm9sIHRoZSByZXF1ZXN0LCB3aGljaCBpcyBvZnRlbiB1c2VkIGluIHRoZSBmb3JtIGluIHRoZSBwb3AtdXAgYm94LCBhbmQgdGhlbiByZXF1ZXN0IGl0IGFmdGVyIGl0IHBvcHMgdXBcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIG1hbnVhbDogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIGNoZWNrYm94IOeKtuaAgeaUueWPmOinpuWPkeWxgue6p+ajgOafpVxyXG4gICAqIEBlbl9VUyBDaGVja2JveCBzdGF0dXMgY2hhbmdlcyB0cmlnZ2VyIGxldmVsIGNoZWNrc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgbGV2ZWxDaGVjazogWEJvb2xlYW4gPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnlhoXlrrnkuI3mjaLooYzmmL7npLrnnIHnlaXlj7dcclxuICAgKiBAZW5fVVMgU2hvdyBlbGxpcHNpcyB3aXRob3V0IHdyYXBwaW5nXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBub2RlTm93cmFwOiBYQm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueWeguebtOWvuem9kOaWueW8j1xyXG4gICAqIEBlbl9VUyBTaG93IGVsbGlwc2lzIHdpdGhvdXQgd3JhcHBpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8WEFsaWduPihYX0NPTkZJR19OQU1FLCAnY2VudGVyJykgbm9kZUFsaWduSXRlbXMhOiBYQWxpZ247XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOagkeiKgueCueaTjeS9nOaMiemSrlxyXG4gICAqIEBlbl9VUyBUcmVlIG5vZGUgb3BlcmF0aW9uIGJ1dHRvbnNcclxuICAgKi9cclxuICBASW5wdXQoKSBhY3Rpb25zOiBYVHJlZUFjdGlvbltdID0gW107XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWPguaVsOaOp+WItuivt+axguaUueWPmOS6i+S7tlxyXG4gICAqIEBlbl9VUyBQYXJhbWV0ZXIgY29udHJvbCByZXF1ZXN0IGNoYW5nZSBldmVudFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtYW51YWxDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBAemhfQ04gVHJlZSDmlbDmja7lr7nosaFcclxuICogQGVuX1VTIFRyZWUgZGF0YSBvYmplY3RcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgWFRyZWVOb2RlIGV4dGVuZHMgWFBhcmVudElkZW50aXR5UHJvcGVydHk8WFRyZWVOb2RlPiB7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWxleW8gFxyXG4gICAqIEBlbl9VUyBVbmZvbGRcclxuICAgKi9cclxuICBvcGVuPzogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5r+A5rS755qEXHJcbiAgICogQGVuX1VTIGFjdGl2ZVxyXG4gICAqL1xyXG4gIGFjdGl2YXRlZD86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOajgOafpeabtOaWsFxyXG4gICAqIEBlbl9VUyBDaGVjayBmb3IgdXBkYXRlc1xyXG4gICAqL1xyXG4gIGNoYW5nZT86IEZ1bmN0aW9uO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlrZDoioLngrnlt7LliqDovb3ov4dcclxuICAgKiBAZW5fVVMgQ2hpbGQgbm9kZSBoYXMgYmVlbiBsb2FkZWRcclxuICAgKi9cclxuICBjaGlsZHJlbkxvYWRlZD86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIGNoZWNrYm94IOaYr+WQpumAieS4rVxyXG4gICAqIEBlbl9VUyB3aGV0aGVyIGNoZWNrYm94IGlzIHNlbGVjdGVkXHJcbiAgICovXHJcbiAgY2hlY2tlZD86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOemgeeUqGNoZWNrYm94XHJcbiAgICogQGVuX1VTIERpc2FibGUgY2hlY2tib3hcclxuICAgKi9cclxuICBkaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIGNoZWNrYm94IOWtkOiKgueCueaYr+WQpuaciemAieS4reeahOeKtuaAgVxyXG4gICAqIEBlbl9VUyBXaGV0aGVyIHRoZSBjaGlsZCBub2RlIG9mIGNoZWNrYm94IGlzIHNlbGVjdGVkXHJcbiAgICovXHJcbiAgaW5kZXRlcm1pbmF0ZT86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCuemrmOW6pu+8jOS8mOWFiOe6p+mrmOS6jiB0cmVlIOWPguaVsO+8jOWNleS9jSByZW1cclxuICAgKiBAZW5fVVMgTm9kZSBoZWlnaHQgaW4gcmVtLCBoaWdoZXN0IHByaW9yaXR5XHJcbiAgICovXHJcbiAgaGVpZ2h0PzogbnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnlhoXlrrnkuI3mjaLooYzmmL7npLrnnIHnlaXlj7fvvIzkvJjlhYjnuqfpq5jkuo4gdHJlZSDlj4LmlbBcclxuICAgKiBAZW5fVVMgU2hvdyBlbGxpcHNpcyB3aXRob3V0IHdyYXBwaW5nLCBoaWdoZXN0IHByaW9yaXR5XHJcbiAgICovXHJcbiAgbm93cmFwPzogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55Z6C55u05a+56b2Q5pa55byP77yM5LyY5YWI57qn6auY5LqOIHRyZWUg5Y+C5pWwXHJcbiAgICogQGVuX1VTIFNob3cgZWxsaXBzaXMgd2l0aG91dCB3cmFwcGluZywgaGlnaGVzdCBwcmlvcml0eVxyXG4gICAqL1xyXG4gIGFsaWduSXRlbXM/OiBYQWxpZ247XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiHquWumuS5ieWxnuaAp1xyXG4gICAqIEBlbl9VUyBDdXN0b20gYXR0cmlidXRlc1xyXG4gICAqL1xyXG4gIFtwcm9wZXJ0eTogc3RyaW5nXTogYW55O1xyXG59XHJcblxyXG4vKipcclxuICogQHpoX0NOIFRyZWUg6IqC54K55pON5L2cXHJcbiAqIEBlbl9VUyBUcmVlIG5vZGUgb3BlcmF0aW9uXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFhUcmVlQWN0aW9uIGV4dGVuZHMgWElkZW50aXR5UHJvcGVydHkge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmk43kvZxcclxuICAgKiBAZW5fVVMgT3BlcmF0aW5nXHJcbiAgICovXHJcbiAgaGFuZGxlcj86IEZ1bmN0aW9uO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlm77moIdcclxuICAgKiBAZW5fVVMgSWNvblxyXG4gICAqL1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUcmVlTm9kZVxyXG4gKiBAc2VsZWN0b3IgeC10cmVlLW5vZGVcclxuICogQGRlY29yYXRvciBkaXJlY3RpdmVcclxuICovXHJcbmV4cG9ydCBjb25zdCBYVHJlZU5vZGVQcmVmaXggPSAneC10cmVlLW5vZGUnO1xyXG5cclxuLyoqXHJcbiAqIFRyZWVOb2RlIFByb3BlcnR5XHJcbiAqL1xyXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXHJcbmV4cG9ydCBjbGFzcyBYVHJlZU5vZGVQcm9wZXJ0eSBleHRlbmRzIFhQcm9wZXJ0eSB7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueaVsOaNrlxyXG4gICAqIEBlbl9VUyBOb2RlIGRhdGFcclxuICAgKi9cclxuICBASW5wdXQoKSBub2RlOiBYVHJlZU5vZGUgPSB7fTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5bGC57qnXHJcbiAgICogQGVuX1VTIExldmVsXHJcbiAgICovXHJcbiAgQElucHV0KCkgbGV2ZWw/OiBYTnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmh5LliqDovb3lrZDoioLngrlcclxuICAgKiBAZW5fVVMgTGF6eSBsb2FkaW5nIG9mIGNoaWxkIG5vZGVzXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBsYXp5PzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueeahOmrmOW6pu+8jOWNleS9jSByZW1cclxuICAgKiBAZW5fVVMgVGhlIGhlaWdodCBvZiB0aGUgbm9kZSBpbiByZW1cclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0TnVtYmVyKCkgbm9kZUhlaWdodDogWE51bWJlciA9IDA7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueWGheWuueS4jeaNouihjOaYvuekuuecgeeVpeWPt1xyXG4gICAqIEBlbl9VUyBTaG93IGVsbGlwc2lzIHdpdGhvdXQgd3JhcHBpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIG5vZGVOb3dyYXA/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55Z6C55u05a+56b2Q5pa55byPXHJcbiAgICogQGVuX1VTIFNob3cgZWxsaXBzaXMgd2l0aG91dCB3cmFwcGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG5vZGVBbGlnbkl0ZW1zOiBYQWxpZ24gPSAnY2VudGVyJztcclxuICAvKipcclxuICAgKiBAemhfQ04g5oeS5Yqg6L295Ye95pWwXHJcbiAgICogQGVuX1VTIExhenkgbG9hZGluZyBmdW5jdGlvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGxhenlEYXRhITogWERhdGE8WFRyZWVOb2RlW10+O1xyXG59XHJcbiJdfQ==
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5wcm9wZXJ0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS5wcm9wZXJ0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFlBQVksRUFDWixTQUFTLEVBRVQsYUFBYSxFQUliLFlBQVksRUFFWixXQUFXLEVBRVosTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsS0FBSyxFQUFlLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVwRjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQztBQUNwQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUM7QUFFN0I7O0dBRUc7QUFFSCxNQUFNLE9BQU8sYUFBYyxTQUFRLFNBQVM7SUFENUM7O1FBRUU7OztXQUdHO1FBQ3NCLFNBQUksR0FBcUIsRUFBRSxDQUFDO1FBZ0JyRDs7O1dBR0c7UUFDTSxhQUFRLEdBQVUsRUFBRSxDQUFDO1FBQzlCOzs7V0FHRztRQUNNLFlBQU8sR0FBVSxFQUFFLENBQUM7UUFNN0I7OztXQUdHO1FBQ3NCLGtCQUFhLEdBQVksQ0FBQyxDQUFDLENBQUM7UUEwQnJEOzs7V0FHRztRQUNPLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQUMxRDs7O1dBR0c7UUFDTyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFDekQ7OztXQUdHO1FBQ3VCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFDakQ7OztXQUdHO1FBQ3VCLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFDdEQ7OztXQUdHO1FBQ3VCLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFNdEQ7OztXQUdHO1FBQ00sWUFBTyxHQUFrQixFQUFFLENBQUM7UUFNckM7OztXQUdHO1FBQ08saUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0tBQ3REOztnSkEvR1ksYUFBYTtvSUFBYixhQUFhLDRwQkFESCxFQUFFO0FBTUU7SUFBZixZQUFZLEVBQUU7MkNBQTZCO0FBSzNCO0lBQWhCLGFBQWEsRUFBRTsrQ0FBcUI7QUFLcEI7SUFBaEIsYUFBYSxFQUFFOzJDQUFpQjtBQW9CaEI7SUFBaEIsYUFBYSxFQUFFO2tEQUF3QjtBQUt4QjtJQUFmLFlBQVksRUFBRTtvREFBNkI7QUFLM0I7SUFBaEIsYUFBYSxFQUFFOytDQUFxQjtBQUt1QjtJQUEzRCxXQUFXLENBQVUsYUFBYSxFQUFFLEtBQUssQ0FBQztJQUFFLFlBQVksRUFBRTs4Q0FBbUI7QUFVdEI7SUFBdkQsV0FBVyxDQUFVLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFBRSxZQUFZLEVBQUU7aURBQXNCO0FBSzVEO0lBQWhCLGFBQWEsRUFBRTt5REFBK0I7QUFlOUI7SUFBaEIsYUFBYSxFQUFFOzZDQUF3QjtBQUt2QjtJQUFoQixhQUFhLEVBQUU7aURBQTZCO0FBSzVCO0lBQWhCLGFBQWEsRUFBRTtpREFBNkI7QUFLQztJQUE3QyxXQUFXLENBQVMsYUFBYSxFQUFFLFFBQVEsQ0FBQztxREFBeUI7QUFVZjtJQUF0RCxXQUFXLENBQVcsYUFBYSxDQUFDO0lBQUUsYUFBYSxFQUFFO29EQUEwQjsyRkF6RzlFLGFBQWE7a0JBRHpCLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFOzhCQU1BLElBQUk7c0JBQTVCLEtBQUs7Z0JBS29CLFFBQVE7c0JBQWpDLEtBQUs7Z0JBS29CLElBQUk7c0JBQTdCLEtBQUs7Z0JBS0csV0FBVztzQkFBbkIsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtHLE9BQU87c0JBQWYsS0FBSztnQkFLb0IsV0FBVztzQkFBcEMsS0FBSztnQkFLbUIsYUFBYTtzQkFBckMsS0FBSztnQkFLb0IsUUFBUTtzQkFBakMsS0FBSztnQkFLK0QsT0FBTztzQkFBM0UsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUsyRCxVQUFVO3NCQUExRSxLQUFLO2dCQUtvQixrQkFBa0I7c0JBQTNDLEtBQUs7Z0JBS0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFLRyxjQUFjO3NCQUF2QixNQUFNO2dCQUttQixNQUFNO3NCQUEvQixLQUFLO2dCQUtvQixVQUFVO3NCQUFuQyxLQUFLO2dCQUtvQixVQUFVO3NCQUFuQyxLQUFLO2dCQUtpRCxjQUFjO3NCQUFwRSxLQUFLO2dCQUtHLE9BQU87c0JBQWYsS0FBSztnQkFLMEQsYUFBYTtzQkFBNUUsS0FBSztnQkFLSSxZQUFZO3NCQUFyQixNQUFNOztBQWtGVDs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLGFBQWEsQ0FBQztBQUU3Qzs7R0FFRztBQUVILE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxTQUFTO0lBRGhEOztRQUVFOzs7V0FHRztRQUNNLFNBQUksR0FBYyxFQUFFLENBQUM7UUFXOUI7OztXQUdHO1FBQ3NCLGVBQVUsR0FBWSxDQUFDLENBQUM7UUFNakQ7OztXQUdHO1FBQ00sbUJBQWMsR0FBVyxRQUFRLENBQUM7S0FNNUM7O29KQXBDWSxpQkFBaUI7d0lBQWpCLGlCQUFpQiwrT0FEUCxFQUFFO0FBZ0JHO0lBQWhCLGFBQWEsRUFBRTsrQ0FBaUI7QUFLakI7SUFBZixZQUFZLEVBQUU7cURBQXlCO0FBS3ZCO0lBQWhCLGFBQWEsRUFBRTtxREFBdUI7MkZBekJyQyxpQkFBaUI7a0JBRDdCLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFOzhCQU1oQixJQUFJO3NCQUFaLEtBQUs7Z0JBS0csS0FBSztzQkFBYixLQUFLO2dCQUtvQixJQUFJO3NCQUE3QixLQUFLO2dCQUttQixVQUFVO3NCQUFsQyxLQUFLO2dCQUtvQixVQUFVO3NCQUFuQyxLQUFLO2dCQUtHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgWERhdGFDb252ZXJ0LFxyXG4gIFhQcm9wZXJ0eSxcclxuICBYRGF0YSxcclxuICBYSW5wdXRCb29sZWFuLFxyXG4gIFhQYXJlbnRJZGVudGl0eVByb3BlcnR5LFxyXG4gIFhOdW1iZXIsXHJcbiAgWEJvb2xlYW4sXHJcbiAgWElucHV0TnVtYmVyLFxyXG4gIFhJZGVudGl0eVByb3BlcnR5LFxyXG4gIFhXaXRoQ29uZmlnLFxyXG4gIFhBbGlnblxyXG59IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBJbnB1dCwgVGVtcGxhdGVSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8qKlxyXG4gKiBUcmVlXHJcbiAqIEBzZWxlY3RvciB4LXRyZWVcclxuICogQGRlY29yYXRvciBjb21wb25lbnRcclxuICovXHJcbmV4cG9ydCBjb25zdCBYVHJlZVByZWZpeCA9ICd4LXRyZWUnO1xyXG5jb25zdCBYX0NPTkZJR19OQU1FID0gJ3RyZWUnO1xyXG5cclxuLyoqXHJcbiAqIFRyZWUgUHJvcGVydHlcclxuICovXHJcbkBDb21wb25lbnQoeyB0ZW1wbGF0ZTogJycgfSlcclxuZXhwb3J0IGNsYXNzIFhUcmVlUHJvcGVydHkgZXh0ZW5kcyBYUHJvcGVydHkge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnmlbDmja5cclxuICAgKiBAZW5fVVMgTm9kZSBkYXRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhEYXRhQ29udmVydCgpIGRhdGE6IFhEYXRhPFhUcmVlTm9kZT4gPSBbXTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5pi+56S65aSa6YCJ5qGGXHJcbiAgICogQGVuX1VTIFNob3cgY2hlY2tib3hcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIGNoZWNrYm94PzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOW8gOWQr+aHkuWKoOi9veiKgueCue+8jGRhdGEg5b+F6aG76K6+572u5oiQ5Ye95pWw57G75Z6LXHJcbiAgICogQGVuX1VTIE9wZW4gbGF6eSBsb2FkaW5nIG5vZGUsIGRhdGEgbXVzdCBiZSBzZXQgdG8gZnVuY3Rpb24gdHlwZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgbGF6eT86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvZPliY3mv4DmtLvnmoToioLngrkgSWRcclxuICAgKiBAZW5fVVMgQ3VycmVudGx5IGFjdGl2ZSBub2RlIElkXHJcbiAgICovXHJcbiAgQElucHV0KCkgYWN0aXZhdGVkSWQ6IGFueTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5bGV5byA55qE6IqC54K5XHJcbiAgICogQGVuX1VTIEV4cGFuZGVkIG5vZGVcclxuICAgKi9cclxuICBASW5wdXQoKSBleHBhbmRlZDogYW55W10gPSBbXTtcclxuICAvKipcclxuICAgKiBAemhfQ04gY2hlY2tib3gg6YCJ5Lit55qE6IqC54K5XHJcbiAgICogQGVuX1VTIENoZWNrYm94IHNlbGVjdGVkIG5vZGVcclxuICAgKi9cclxuICBASW5wdXQoKSBjaGVja2VkOiBhbnlbXSA9IFtdO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlsZXlvIDmiYDmnInoioLngrlcclxuICAgKiBAZW5fVVMgRXhwYW5kIGFsbCBub2Rlc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgZXhwYW5kZWRBbGw/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6buY6K6k5bGV5byA55qE5bGC57qnXHJcbiAgICogQGVuX1VTIERlZmF1bHQgZXhwYW5kZWQgbGV2ZWxcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0TnVtYmVyKCkgZXhwYW5kZWRMZXZlbDogWE51bWJlciA9IC0xO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDngrnlh7voioLngrnlsLHop6blj5HlsZXlvIAv5pS26LW355qE5pON5L2c77yM6K+356Gu5L+d6IqC54K55LiK5rKh5pyJ5YW25a6D5pON5L2c77yIY2hlY2tib3jjgIHoh6rlrprkuYnnmoTmk43kvZzmjInpkq7vvIlcclxuICAgKiBAZW5fVVMgQ2xpY2sgdGhlIG5vZGUgdG8gdHJpZ2dlciB0aGUgZXhwYW5kL2NvbGxhcHNlIG9wZXJhdGlvbiwgcGxlYXNlIG1ha2Ugc3VyZSB0aGF0IHRoZXJlIGFyZSBubyBvdGhlciBvcGVyYXRpb25zIG9uIHRoZSBub2RlIChjaGVja2JveCwgY3VzdG9tIG9wZXJhdGlvbiBidXR0b24pXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBub2RlT3Blbj86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDljZXkvY3pl7Tot53vvIzov5nkuKrkuI7lsYLnuqfnmoTkuZjnp6/nrpflh7roioLngrnnmoTlt6bovrnot53vvIzljZXkvY0gcmVtXHJcbiAgICogQGVuX1VTIFVuaXQgc3BhY2luZywgdGhlIHByb2R1Y3Qgb2YgdGhpcyBhbmQgdGhlIGxldmVsIGNhbGN1bGF0ZXMgdGhlIGxlZnQgbWFyZ2luIG9mIHRoZSBub2RlLCB0aGUgdW5pdCBpcyByZW1cclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8WE51bWJlcj4oWF9DT05GSUdfTkFNRSwgMC44NzUpIEBYSW5wdXROdW1iZXIoKSBzcGFjaW5nPzogWE51bWJlcjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5qCH562+6Ieq5a6a5LmJ5qih5p2/XHJcbiAgICogQGVuX1VTIExhYmVsIGN1c3RvbSB0ZW1wbGF0ZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGxhYmVsVHBsPzogVGVtcGxhdGVSZWY8dm9pZD47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueeahOmrmOW6pu+8jOWNleS9jSByZW0sIOm7mOiupCAwIOaYr+iHqumAguW6lOmrmOW6plxyXG4gICAqIEBlbl9VUyBUaGUgaGVpZ2h0IG9mIHRoZSBub2RlIGluIHJlbVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYTnVtYmVyPihYX0NPTkZJR19OQU1FLCAwKSBAWElucHV0TnVtYmVyKCkgbm9kZUhlaWdodCE6IFhOdW1iZXI7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaYr+WQpuWFgeiuuOWkmuasoeeCueWHu+S4gOS4quiKgueCueinpuWPkeWkmuasoeS6i+S7tlxyXG4gICAqIEBlbl9VUyBXaGV0aGVyIHRvIGFsbG93IG11bHRpcGxlIGNsaWNrcyBvbiBhIG5vZGUgdG8gdHJpZ2dlciBtdWx0aXBsZSBldmVudHNcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIGFsbG93TWFueUFjdGl2YXRlZD86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvZPliY3ngrnlh7vpgInkuK3nmoToioLngrnlj5jljJbnmoTkuovku7ZcclxuICAgKiBAZW5fVVMgVGhlIGV2ZW50IG9mIHRoZSBjdXJyZW50bHkgY2xpY2tlZCBub2RlIGNoYW5nZVxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBhY3RpdmF0ZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFhUcmVlTm9kZT4oKTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5L2/55SoIGNoZWNrZWRib3gg6YCJ5Lit5Y+Y5YyW55qE5LqL5Lu2XHJcbiAgICogQGVuX1VTIFVzZSBjaGVja2VkYm94IHRvIHNlbGVjdCBjaGFuZ2VkIGV2ZW50c1xyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBjaGVja2JveENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WFRyZWVOb2RlPigpO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlpoLmnpwgZGF0YSDmmK/lh73mlbDnsbvlnovvvIzlj6/ku6XpgJrov4fmraTlj4LmlbDmjqfliLbor7fmsYLvvIzluLjnlKjkuo7lvLnmoYbkuK3nmoTooajmoLzvvIzlvLnlh7rlkI7lho3or7fmsYJcclxuICAgKiBAZW5fVVMgSWYgZGF0YSBpcyBhIGZ1bmN0aW9uIHR5cGUsIHlvdSBjYW4gdXNlIHRoaXMgcGFyYW1ldGVyIHRvIGNvbnRyb2wgdGhlIHJlcXVlc3QsIHdoaWNoIGlzIG9mdGVuIHVzZWQgaW4gdGhlIGZvcm0gaW4gdGhlIHBvcC11cCBib3gsIGFuZCB0aGVuIHJlcXVlc3QgaXQgYWZ0ZXIgaXQgcG9wcyB1cFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgbWFudWFsOiBib29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBAemhfQ04gY2hlY2tib3gg54q25oCB5pS55Y+Y6Kem5Y+R5bGC57qn5qOA5p+lXHJcbiAgICogQGVuX1VTIENoZWNrYm94IHN0YXR1cyBjaGFuZ2VzIHRyaWdnZXIgbGV2ZWwgY2hlY2tzXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBsZXZlbENoZWNrOiBYQm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueWGheWuueS4jeaNouihjOaYvuekuuecgeeVpeWPt1xyXG4gICAqIEBlbl9VUyBTaG93IGVsbGlwc2lzIHdpdGhvdXQgd3JhcHBpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIG5vZGVOb3dyYXA6IFhCb29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55Z6C55u05a+56b2Q5pa55byPXHJcbiAgICogQGVuX1VTIFNob3cgZWxsaXBzaXMgd2l0aG91dCB3cmFwcGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQWxpZ24+KFhfQ09ORklHX05BTUUsICdjZW50ZXInKSBub2RlQWxpZ25JdGVtcyE6IFhBbGlnbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5qCR6IqC54K55pON5L2c5oyJ6ZKuXHJcbiAgICogQGVuX1VTIFRyZWUgbm9kZSBvcGVyYXRpb24gYnV0dG9uc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFjdGlvbnM6IFhUcmVlQWN0aW9uW10gPSBbXTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5byA5ZCv6Jma5ouf5rua5YqoXHJcbiAgICogQGVuX1VTIFR1cm4gb24gdmlydHVhbCBzY3JvbGxpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8WEJvb2xlYW4+KFhfQ09ORklHX05BTUUpIEBYSW5wdXRCb29sZWFuKCkgdmlydHVhbFNjcm9sbCE6IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlj4LmlbDmjqfliLbor7fmsYLmlLnlj5jkuovku7ZcclxuICAgKiBAZW5fVVMgUGFyYW1ldGVyIGNvbnRyb2wgcmVxdWVzdCBjaGFuZ2UgZXZlbnRcclxuICAgKi9cclxuICBAT3V0cHV0KCkgbWFudWFsQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG59XHJcblxyXG4vKipcclxuICogQHpoX0NOIFRyZWUg5pWw5o2u5a+56LGhXHJcbiAqIEBlbl9VUyBUcmVlIGRhdGEgb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFhUcmVlTm9kZSBleHRlbmRzIFhQYXJlbnRJZGVudGl0eVByb3BlcnR5PFhUcmVlTm9kZT4ge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlsZXlvIBcclxuICAgKiBAZW5fVVMgVW5mb2xkXHJcbiAgICovXHJcbiAgb3Blbj86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOa/gOa0u+eahFxyXG4gICAqIEBlbl9VUyBhY3RpdmVcclxuICAgKi9cclxuICBhY3RpdmF0ZWQ/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmo4Dmn6Xmm7TmlrBcclxuICAgKiBAZW5fVVMgQ2hlY2sgZm9yIHVwZGF0ZXNcclxuICAgKi9cclxuICBjaGFuZ2U/OiBGdW5jdGlvbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5a2Q6IqC54K55bey5Yqg6L296L+HXHJcbiAgICogQGVuX1VTIENoaWxkIG5vZGUgaGFzIGJlZW4gbG9hZGVkXHJcbiAgICovXHJcbiAgY2hpbGRyZW5Mb2FkZWQ/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiBjaGVja2JveCDmmK/lkKbpgInkuK1cclxuICAgKiBAZW5fVVMgd2hldGhlciBjaGVja2JveCBpcyBzZWxlY3RlZFxyXG4gICAqL1xyXG4gIGNoZWNrZWQ/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDnpoHnlKhjaGVja2JveFxyXG4gICAqIEBlbl9VUyBEaXNhYmxlIGNoZWNrYm94XHJcbiAgICovXHJcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiBjaGVja2JveCDlrZDoioLngrnmmK/lkKbmnInpgInkuK3nmoTnirbmgIFcclxuICAgKiBAZW5fVVMgV2hldGhlciB0aGUgY2hpbGQgbm9kZSBvZiBjaGVja2JveCBpcyBzZWxlY3RlZFxyXG4gICAqL1xyXG4gIGluZGV0ZXJtaW5hdGU/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnpq5jluqbvvIzkvJjlhYjnuqfpq5jkuo4gdHJlZSDlj4LmlbDvvIzljZXkvY0gcmVtXHJcbiAgICogQGVuX1VTIE5vZGUgaGVpZ2h0IGluIHJlbSwgaGlnaGVzdCBwcmlvcml0eVxyXG4gICAqL1xyXG4gIGhlaWdodD86IG51bWJlcjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55YaF5a655LiN5o2i6KGM5pi+56S655yB55Wl5Y+377yM5LyY5YWI57qn6auY5LqOIHRyZWUg5Y+C5pWwXHJcbiAgICogQGVuX1VTIFNob3cgZWxsaXBzaXMgd2l0aG91dCB3cmFwcGluZywgaGlnaGVzdCBwcmlvcml0eVxyXG4gICAqL1xyXG4gIG5vd3JhcD86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueWeguebtOWvuem9kOaWueW8j++8jOS8mOWFiOe6p+mrmOS6jiB0cmVlIOWPguaVsFxyXG4gICAqIEBlbl9VUyBTaG93IGVsbGlwc2lzIHdpdGhvdXQgd3JhcHBpbmcsIGhpZ2hlc3QgcHJpb3JpdHlcclxuICAgKi9cclxuICBhbGlnbkl0ZW1zPzogWEFsaWduO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoh6rlrprkuYnlsZ7mgKdcclxuICAgKiBAZW5fVVMgQ3VzdG9tIGF0dHJpYnV0ZXNcclxuICAgKi9cclxuICBbcHJvcGVydHk6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEB6aF9DTiBUcmVlIOiKgueCueaTjeS9nFxyXG4gKiBAZW5fVVMgVHJlZSBub2RlIG9wZXJhdGlvblxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBYVHJlZUFjdGlvbiBleHRlbmRzIFhJZGVudGl0eVByb3BlcnR5IHtcclxuICAvKipcclxuICAgKiBAemhfQ04g5pON5L2cXHJcbiAgICogQGVuX1VTIE9wZXJhdGluZ1xyXG4gICAqL1xyXG4gIGhhbmRsZXI/OiBGdW5jdGlvbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5Zu+5qCHXHJcbiAgICogQGVuX1VTIEljb25cclxuICAgKi9cclxuICBpY29uPzogc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogVHJlZU5vZGVcclxuICogQHNlbGVjdG9yIHgtdHJlZS1ub2RlXHJcbiAqIEBkZWNvcmF0b3IgZGlyZWN0aXZlXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgWFRyZWVOb2RlUHJlZml4ID0gJ3gtdHJlZS1ub2RlJztcclxuXHJcbi8qKlxyXG4gKiBUcmVlTm9kZSBQcm9wZXJ0eVxyXG4gKi9cclxuQENvbXBvbmVudCh7IHRlbXBsYXRlOiAnJyB9KVxyXG5leHBvcnQgY2xhc3MgWFRyZWVOb2RlUHJvcGVydHkgZXh0ZW5kcyBYUHJvcGVydHkge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnmlbDmja5cclxuICAgKiBAZW5fVVMgTm9kZSBkYXRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgbm9kZTogWFRyZWVOb2RlID0ge307XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWxgue6p1xyXG4gICAqIEBlbl9VUyBMZXZlbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGxldmVsPzogWE51bWJlcjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5oeS5Yqg6L295a2Q6IqC54K5XHJcbiAgICogQGVuX1VTIExhenkgbG9hZGluZyBvZiBjaGlsZCBub2Rlc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgbGF6eT86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnnmoTpq5jluqbvvIzljZXkvY0gcmVtXHJcbiAgICogQGVuX1VTIFRoZSBoZWlnaHQgb2YgdGhlIG5vZGUgaW4gcmVtXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dE51bWJlcigpIG5vZGVIZWlnaHQ6IFhOdW1iZXIgPSAwO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnlhoXlrrnkuI3mjaLooYzmmL7npLrnnIHnlaXlj7dcclxuICAgKiBAZW5fVVMgU2hvdyBlbGxpcHNpcyB3aXRob3V0IHdyYXBwaW5nXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBub2RlTm93cmFwPzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueWeguebtOWvuem9kOaWueW8j1xyXG4gICAqIEBlbl9VUyBTaG93IGVsbGlwc2lzIHdpdGhvdXQgd3JhcHBpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBub2RlQWxpZ25JdGVtczogWEFsaWduID0gJ2NlbnRlcic7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaHkuWKoOi9veWHveaVsFxyXG4gICAqIEBlbl9VUyBMYXp5IGxvYWRpbmcgZnVuY3Rpb25cclxuICAgKi9cclxuICBASW5wdXQoKSBsYXp5RGF0YSE6IFhEYXRhPFhUcmVlTm9kZVtdPjtcclxufVxyXG4iXX0=