@ng-nest/ui 13.1.8 → 13.1.9

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 (637) hide show
  1. package/core/animation/opacity.d.ts +2 -0
  2. package/core/animation/public-api.d.ts +1 -0
  3. package/dialog/dialog-container.component.d.ts +8 -0
  4. package/dialog/dialog.component.d.ts +10 -2
  5. package/dialog/dialog.module.d.ts +15 -14
  6. package/dialog/dialog.property.d.ts +16 -2
  7. package/dialog/examples/en_US/default/container/README.md +6 -0
  8. package/dialog/examples/en_US/default/resizable/README.md +6 -0
  9. package/dialog/examples/zh_CN/default/container/README.md +6 -0
  10. package/dialog/public-api.d.ts +1 -0
  11. package/esm2020/affix/affix.component.mjs +4 -4
  12. package/esm2020/affix/affix.module.mjs +5 -5
  13. package/esm2020/affix/affix.property.mjs +4 -4
  14. package/esm2020/alert/alert.component.mjs +4 -4
  15. package/esm2020/alert/alert.module.mjs +5 -5
  16. package/esm2020/alert/alert.property.mjs +4 -4
  17. package/esm2020/anchor/anchor.component.mjs +4 -4
  18. package/esm2020/anchor/anchor.module.mjs +5 -5
  19. package/esm2020/anchor/anchor.property.mjs +4 -4
  20. package/esm2020/api/api.component.mjs +4 -4
  21. package/esm2020/api/api.module.mjs +5 -5
  22. package/esm2020/auto-complete/auto-complete-portal.component.mjs +4 -4
  23. package/esm2020/auto-complete/auto-complete.component.mjs +4 -4
  24. package/esm2020/auto-complete/auto-complete.module.mjs +5 -5
  25. package/esm2020/auto-complete/auto-complete.property.mjs +4 -4
  26. package/esm2020/avatar/avatar.component.mjs +4 -4
  27. package/esm2020/avatar/avatar.module.mjs +5 -5
  28. package/esm2020/avatar/avatar.property.mjs +4 -4
  29. package/esm2020/back-top/back-top.component.mjs +4 -4
  30. package/esm2020/back-top/back-top.module.mjs +5 -5
  31. package/esm2020/back-top/back-top.property.mjs +4 -4
  32. package/esm2020/badge/badge.component.mjs +4 -4
  33. package/esm2020/badge/badge.module.mjs +5 -5
  34. package/esm2020/badge/badge.property.mjs +4 -4
  35. package/esm2020/base-form/base-form.component.mjs +4 -4
  36. package/esm2020/base-form/base-form.module.mjs +5 -5
  37. package/esm2020/base-form/base-form.property.mjs +4 -4
  38. package/esm2020/border/border.component.mjs +4 -4
  39. package/esm2020/border/border.module.mjs +5 -5
  40. package/esm2020/button/button.component.mjs +4 -4
  41. package/esm2020/button/button.module.mjs +5 -5
  42. package/esm2020/button/button.property.mjs +7 -7
  43. package/esm2020/button/buttons.component.mjs +4 -4
  44. package/esm2020/calendar/calendar.component.mjs +4 -4
  45. package/esm2020/calendar/calendar.module.mjs +5 -5
  46. package/esm2020/calendar/calendar.property.mjs +4 -4
  47. package/esm2020/card/card.component.mjs +4 -4
  48. package/esm2020/card/card.module.mjs +5 -5
  49. package/esm2020/card/card.property.mjs +4 -4
  50. package/esm2020/carousel/carousel-panel.component.mjs +4 -4
  51. package/esm2020/carousel/carousel.component.mjs +4 -4
  52. package/esm2020/carousel/carousel.module.mjs +5 -5
  53. package/esm2020/carousel/carousel.property.mjs +7 -7
  54. package/esm2020/cascade/cascade-portal.component.mjs +4 -4
  55. package/esm2020/cascade/cascade.component.mjs +4 -4
  56. package/esm2020/cascade/cascade.module.mjs +5 -5
  57. package/esm2020/cascade/cascade.property.mjs +4 -4
  58. package/esm2020/checkbox/checkbox.component.mjs +4 -4
  59. package/esm2020/checkbox/checkbox.module.mjs +5 -5
  60. package/esm2020/checkbox/checkbox.property.mjs +4 -4
  61. package/esm2020/collapse/collapse-panel.component.mjs +4 -4
  62. package/esm2020/collapse/collapse.component.mjs +4 -4
  63. package/esm2020/collapse/collapse.module.mjs +5 -5
  64. package/esm2020/collapse/collapse.property.mjs +7 -7
  65. package/esm2020/color/color.component.mjs +4 -4
  66. package/esm2020/color/color.module.mjs +5 -5
  67. package/esm2020/color/color.property.mjs +4 -4
  68. package/esm2020/color-picker/color-picker-portal.component.mjs +5 -5
  69. package/esm2020/color-picker/color-picker.component.mjs +4 -4
  70. package/esm2020/color-picker/color-picker.module.mjs +5 -5
  71. package/esm2020/color-picker/color-picker.property.mjs +4 -4
  72. package/esm2020/comment/comment-reply.component.mjs +4 -4
  73. package/esm2020/comment/comment.component.mjs +4 -4
  74. package/esm2020/comment/comment.module.mjs +5 -5
  75. package/esm2020/comment/comment.property.mjs +7 -7
  76. package/esm2020/container/aside.component.mjs +4 -4
  77. package/esm2020/container/container.component.mjs +4 -4
  78. package/esm2020/container/container.module.mjs +5 -5
  79. package/esm2020/container/container.property.mjs +13 -13
  80. package/esm2020/container/footer.component.mjs +4 -4
  81. package/esm2020/container/header.component.mjs +4 -4
  82. package/esm2020/container/main.component.mjs +4 -4
  83. package/esm2020/core/animation/opacity.mjs +9 -0
  84. package/esm2020/core/animation/public-api.mjs +2 -1
  85. package/esm2020/core/config/config.service.mjs +4 -4
  86. package/esm2020/core/services/http.service.mjs +4 -4
  87. package/esm2020/core/services/preloading-strategy.service.mjs +4 -4
  88. package/esm2020/core/services/storage.service.mjs +4 -4
  89. package/esm2020/core/theme/theme.service.mjs +4 -4
  90. package/esm2020/crumb/crumb.component.mjs +4 -4
  91. package/esm2020/crumb/crumb.module.mjs +5 -5
  92. package/esm2020/crumb/crumb.property.mjs +4 -4
  93. package/esm2020/date-picker/date-picker-portal.component.mjs +4 -4
  94. package/esm2020/date-picker/date-picker.component.mjs +4 -4
  95. package/esm2020/date-picker/date-picker.module.mjs +5 -5
  96. package/esm2020/date-picker/date-picker.property.mjs +16 -16
  97. package/esm2020/date-picker/date-range-portal.component.mjs +4 -4
  98. package/esm2020/date-picker/date-range.component.mjs +4 -4
  99. package/esm2020/date-picker/picker-date.component.mjs +4 -4
  100. package/esm2020/date-picker/picker-month.component.mjs +4 -4
  101. package/esm2020/date-picker/picker-year.component.mjs +4 -4
  102. package/esm2020/description/description-item.component.mjs +4 -4
  103. package/esm2020/description/description.component.mjs +4 -4
  104. package/esm2020/description/description.module.mjs +5 -5
  105. package/esm2020/description/description.property.mjs +7 -7
  106. package/esm2020/dialog/dialog-container.component.mjs +29 -0
  107. package/esm2020/dialog/dialog-portal.component.mjs +4 -4
  108. package/esm2020/dialog/dialog-portal.directives.mjs +19 -19
  109. package/esm2020/dialog/dialog.component.mjs +69 -17
  110. package/esm2020/dialog/dialog.module.mjs +15 -8
  111. package/esm2020/dialog/dialog.property.mjs +24 -6
  112. package/esm2020/dialog/dialog.service.mjs +4 -4
  113. package/esm2020/dialog/public-api.mjs +2 -1
  114. package/esm2020/doc/doc.component.mjs +4 -4
  115. package/esm2020/doc/doc.module.mjs +5 -5
  116. package/esm2020/drawer/drawer-container.component.mjs +4 -4
  117. package/esm2020/drawer/drawer-portal.component.mjs +4 -4
  118. package/esm2020/drawer/drawer-portal.directives.mjs +10 -10
  119. package/esm2020/drawer/drawer.component.mjs +4 -4
  120. package/esm2020/drawer/drawer.module.mjs +5 -5
  121. package/esm2020/drawer/drawer.property.mjs +7 -7
  122. package/esm2020/drawer/drawer.service.mjs +4 -4
  123. package/esm2020/dropdown/dropdown-portal.component.mjs +4 -4
  124. package/esm2020/dropdown/dropdown.component.mjs +4 -4
  125. package/esm2020/dropdown/dropdown.module.mjs +5 -5
  126. package/esm2020/dropdown/dropdown.property.mjs +4 -4
  127. package/esm2020/empty/empty.component.mjs +4 -4
  128. package/esm2020/empty/empty.module.mjs +5 -5
  129. package/esm2020/empty/empty.property.mjs +4 -4
  130. package/esm2020/examples/examples.component.mjs +4 -4
  131. package/esm2020/examples/examples.module.mjs +5 -5
  132. package/esm2020/find/find.component.mjs +4 -4
  133. package/esm2020/find/find.module.mjs +5 -5
  134. package/esm2020/find/find.property.mjs +4 -4
  135. package/esm2020/form/control.component.mjs +4 -4
  136. package/esm2020/form/form.component.mjs +4 -4
  137. package/esm2020/form/form.module.mjs +5 -5
  138. package/esm2020/form/form.property.mjs +7 -7
  139. package/esm2020/highlight/highlight.component.mjs +4 -4
  140. package/esm2020/highlight/highlight.module.mjs +5 -5
  141. package/esm2020/highlight/highlight.property.mjs +4 -4
  142. package/esm2020/i18n/i18n.directive.mjs +4 -4
  143. package/esm2020/i18n/i18n.module.mjs +5 -5
  144. package/esm2020/i18n/i18n.pipe.mjs +4 -4
  145. package/esm2020/i18n/i18n.service.mjs +4 -4
  146. package/esm2020/icon/icon.component.mjs +4 -4
  147. package/esm2020/icon/icon.module.mjs +5 -5
  148. package/esm2020/icon/icon.property.mjs +4 -4
  149. package/esm2020/icon/icon.service.mjs +4 -4
  150. package/esm2020/inner/inner.component.mjs +4 -4
  151. package/esm2020/inner/inner.module.mjs +5 -5
  152. package/esm2020/inner/inner.property.mjs +4 -4
  153. package/esm2020/input/input-group.component.mjs +4 -4
  154. package/esm2020/input/input.component.mjs +4 -4
  155. package/esm2020/input/input.module.mjs +5 -5
  156. package/esm2020/input/input.property.mjs +7 -7
  157. package/esm2020/input-number/input-number.component.mjs +4 -4
  158. package/esm2020/input-number/input-number.module.mjs +5 -5
  159. package/esm2020/input-number/input-number.property.mjs +4 -4
  160. package/esm2020/layout/col.component.mjs +4 -4
  161. package/esm2020/layout/layout.module.mjs +5 -5
  162. package/esm2020/layout/layout.property.mjs +7 -7
  163. package/esm2020/layout/row.component.mjs +4 -4
  164. package/esm2020/link/link.component.mjs +4 -4
  165. package/esm2020/link/link.module.mjs +5 -5
  166. package/esm2020/link/link.property.mjs +4 -4
  167. package/esm2020/list/list-option.component.mjs +4 -4
  168. package/esm2020/list/list.component.mjs +4 -4
  169. package/esm2020/list/list.module.mjs +5 -5
  170. package/esm2020/list/list.property.mjs +7 -7
  171. package/esm2020/loading/loading.component.mjs +4 -4
  172. package/esm2020/loading/loading.module.mjs +5 -5
  173. package/esm2020/loading/loading.property.mjs +4 -4
  174. package/esm2020/menu/menu-node.component.mjs +4 -4
  175. package/esm2020/menu/menu.component.mjs +4 -4
  176. package/esm2020/menu/menu.module.mjs +5 -5
  177. package/esm2020/menu/menu.property.mjs +7 -7
  178. package/esm2020/message/message.component.mjs +4 -4
  179. package/esm2020/message/message.module.mjs +5 -5
  180. package/esm2020/message/message.service.mjs +4 -4
  181. package/esm2020/message-box/message-box.component.mjs +4 -4
  182. package/esm2020/message-box/message-box.module.mjs +5 -5
  183. package/esm2020/message-box/message-box.service.mjs +4 -4
  184. package/esm2020/notification/notification.component.mjs +4 -4
  185. package/esm2020/notification/notification.module.mjs +5 -5
  186. package/esm2020/notification/notification.service.mjs +4 -4
  187. package/esm2020/outlet/outlet.directive.mjs +4 -4
  188. package/esm2020/outlet/outlet.module.mjs +5 -5
  189. package/esm2020/page-header/page-header.component.mjs +4 -4
  190. package/esm2020/page-header/page-header.module.mjs +5 -5
  191. package/esm2020/page-header/page-header.property.mjs +4 -4
  192. package/esm2020/pagination/pagination.component.mjs +4 -4
  193. package/esm2020/pagination/pagination.module.mjs +5 -5
  194. package/esm2020/pagination/pagination.property.mjs +4 -4
  195. package/esm2020/pattern/pattern.component.mjs +4 -4
  196. package/esm2020/pattern/pattern.module.mjs +5 -5
  197. package/esm2020/popconfirm/popconfirm.component.mjs +4 -4
  198. package/esm2020/popconfirm/popconfirm.module.mjs +5 -5
  199. package/esm2020/popconfirm/popconfirm.property.mjs +4 -4
  200. package/esm2020/popover/popover-portal.component.mjs +4 -4
  201. package/esm2020/popover/popover.directive.mjs +4 -4
  202. package/esm2020/popover/popover.module.mjs +5 -5
  203. package/esm2020/popover/popover.property.mjs +4 -4
  204. package/esm2020/portal/portal.module.mjs +5 -5
  205. package/esm2020/portal/portal.service.mjs +39 -12
  206. package/esm2020/progress/progress.component.mjs +4 -4
  207. package/esm2020/progress/progress.module.mjs +5 -5
  208. package/esm2020/progress/progress.property.mjs +4 -4
  209. package/esm2020/radio/radio.component.mjs +4 -4
  210. package/esm2020/radio/radio.module.mjs +5 -5
  211. package/esm2020/radio/radio.property.mjs +4 -4
  212. package/esm2020/rate/rate.component.mjs +4 -4
  213. package/esm2020/rate/rate.module.mjs +5 -5
  214. package/esm2020/rate/rate.property.mjs +4 -4
  215. package/esm2020/resizable/resizable.directive.mjs +4 -4
  216. package/esm2020/resizable/resizable.module.mjs +5 -5
  217. package/esm2020/resizable/resizable.property.mjs +4 -4
  218. package/esm2020/result/result.component.mjs +4 -4
  219. package/esm2020/result/result.module.mjs +5 -5
  220. package/esm2020/result/result.property.mjs +4 -4
  221. package/esm2020/ripple/ripple.directive.mjs +4 -4
  222. package/esm2020/ripple/ripple.module.mjs +5 -5
  223. package/esm2020/ripple/ripple.property.mjs +4 -4
  224. package/esm2020/select/select-portal.component.mjs +4 -4
  225. package/esm2020/select/select.component.mjs +4 -4
  226. package/esm2020/select/select.module.mjs +5 -5
  227. package/esm2020/select/select.property.mjs +4 -4
  228. package/esm2020/skeleton/skeleton.component.mjs +4 -4
  229. package/esm2020/skeleton/skeleton.module.mjs +5 -5
  230. package/esm2020/skeleton/skeleton.property.mjs +4 -4
  231. package/esm2020/slider/slider.component.mjs +4 -4
  232. package/esm2020/slider/slider.module.mjs +5 -5
  233. package/esm2020/slider/slider.property.mjs +4 -4
  234. package/esm2020/slider-select/slider-select.component.mjs +4 -4
  235. package/esm2020/slider-select/slider-select.module.mjs +5 -5
  236. package/esm2020/slider-select/slider-select.property.mjs +4 -4
  237. package/esm2020/statistic/countdown.component.mjs +4 -4
  238. package/esm2020/statistic/statistic.component.mjs +4 -4
  239. package/esm2020/statistic/statistic.module.mjs +5 -5
  240. package/esm2020/statistic/statistic.property.mjs +7 -7
  241. package/esm2020/steps/steps.component.mjs +4 -4
  242. package/esm2020/steps/steps.module.mjs +5 -5
  243. package/esm2020/steps/steps.property.mjs +4 -4
  244. package/esm2020/switch/switch.component.mjs +4 -4
  245. package/esm2020/switch/switch.module.mjs +5 -5
  246. package/esm2020/switch/switch.property.mjs +4 -4
  247. package/esm2020/table/drag.directive.mjs +4 -4
  248. package/esm2020/table/table-body.component.mjs +4 -4
  249. package/esm2020/table/table-foot.component.mjs +4 -4
  250. package/esm2020/table/table-head.component.mjs +4 -4
  251. package/esm2020/table/table.component.mjs +4 -4
  252. package/esm2020/table/table.module.mjs +5 -5
  253. package/esm2020/table/table.property.mjs +13 -13
  254. package/esm2020/tabs/tab-content.component.mjs +4 -4
  255. package/esm2020/tabs/tab.component.mjs +4 -4
  256. package/esm2020/tabs/tabs.component.mjs +4 -4
  257. package/esm2020/tabs/tabs.module.mjs +5 -5
  258. package/esm2020/tabs/tabs.property.mjs +7 -7
  259. package/esm2020/tag/tag.component.mjs +4 -4
  260. package/esm2020/tag/tag.module.mjs +5 -5
  261. package/esm2020/tag/tag.property.mjs +4 -4
  262. package/esm2020/text-retract/text-retract.component.mjs +4 -4
  263. package/esm2020/text-retract/text-retract.module.mjs +5 -5
  264. package/esm2020/text-retract/text-retract.property.mjs +4 -4
  265. package/esm2020/textarea/textarea.component.mjs +4 -4
  266. package/esm2020/textarea/textarea.module.mjs +5 -5
  267. package/esm2020/textarea/textarea.property.mjs +4 -4
  268. package/esm2020/theme/theme.component.mjs +4 -4
  269. package/esm2020/theme/theme.module.mjs +5 -5
  270. package/esm2020/theme/theme.property.mjs +4 -4
  271. package/esm2020/time-ago/time-ago.module.mjs +5 -5
  272. package/esm2020/time-ago/time-ago.pipe.mjs +4 -4
  273. package/esm2020/time-picker/time-picker-frame.component.mjs +4 -4
  274. package/esm2020/time-picker/time-picker-portal.component.mjs +4 -4
  275. package/esm2020/time-picker/time-picker.component.mjs +4 -4
  276. package/esm2020/time-picker/time-picker.module.mjs +5 -5
  277. package/esm2020/time-picker/time-picker.property.mjs +4 -4
  278. package/esm2020/time-range/time-range.module.mjs +5 -5
  279. package/esm2020/time-range/time-range.pipe.mjs +4 -4
  280. package/esm2020/timeline/timeline.component.mjs +4 -4
  281. package/esm2020/timeline/timeline.module.mjs +5 -5
  282. package/esm2020/timeline/timeline.property.mjs +4 -4
  283. package/esm2020/tooltip/tooltip-portal.component.mjs +4 -4
  284. package/esm2020/tooltip/tooltip.directive.mjs +4 -4
  285. package/esm2020/tooltip/tooltip.module.mjs +5 -5
  286. package/esm2020/tooltip/tooltip.property.mjs +4 -4
  287. package/esm2020/transfer/transfer.component.mjs +4 -4
  288. package/esm2020/transfer/transfer.module.mjs +5 -5
  289. package/esm2020/transfer/transfer.property.mjs +4 -4
  290. package/esm2020/tree/tree-node.component.mjs +4 -4
  291. package/esm2020/tree/tree.component.mjs +4 -4
  292. package/esm2020/tree/tree.module.mjs +5 -5
  293. package/esm2020/tree/tree.property.mjs +7 -7
  294. package/esm2020/tree-file/tree-file.component.mjs +4 -4
  295. package/esm2020/tree-file/tree-file.module.mjs +5 -5
  296. package/esm2020/tree-file/tree-file.property.mjs +4 -4
  297. package/esm2020/typography/typography.component.mjs +4 -4
  298. package/esm2020/typography/typography.module.mjs +5 -5
  299. package/esm2020/typography/typography.property.mjs +4 -4
  300. package/esm2020/upload/upload-portal.component.mjs +5 -5
  301. package/esm2020/upload/upload.component.mjs +4 -4
  302. package/esm2020/upload/upload.module.mjs +5 -5
  303. package/esm2020/upload/upload.property.mjs +4 -4
  304. package/fesm2015/ng-nest-ui-affix.mjs +10 -10
  305. package/fesm2015/ng-nest-ui-affix.mjs.map +1 -1
  306. package/fesm2015/ng-nest-ui-alert.mjs +10 -10
  307. package/fesm2015/ng-nest-ui-alert.mjs.map +1 -1
  308. package/fesm2015/ng-nest-ui-anchor.mjs +10 -10
  309. package/fesm2015/ng-nest-ui-anchor.mjs.map +1 -1
  310. package/fesm2015/ng-nest-ui-api.mjs +7 -7
  311. package/fesm2015/ng-nest-ui-api.mjs.map +1 -1
  312. package/fesm2015/ng-nest-ui-auto-complete.mjs +13 -13
  313. package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
  314. package/fesm2015/ng-nest-ui-avatar.mjs +10 -10
  315. package/fesm2015/ng-nest-ui-avatar.mjs.map +1 -1
  316. package/fesm2015/ng-nest-ui-back-top.mjs +10 -10
  317. package/fesm2015/ng-nest-ui-back-top.mjs.map +1 -1
  318. package/fesm2015/ng-nest-ui-badge.mjs +10 -10
  319. package/fesm2015/ng-nest-ui-badge.mjs.map +1 -1
  320. package/fesm2015/ng-nest-ui-base-form.mjs +10 -10
  321. package/fesm2015/ng-nest-ui-base-form.mjs.map +1 -1
  322. package/fesm2015/ng-nest-ui-border.mjs +7 -7
  323. package/fesm2015/ng-nest-ui-border.mjs.map +1 -1
  324. package/fesm2015/ng-nest-ui-button.mjs +16 -16
  325. package/fesm2015/ng-nest-ui-button.mjs.map +1 -1
  326. package/fesm2015/ng-nest-ui-calendar.mjs +10 -10
  327. package/fesm2015/ng-nest-ui-calendar.mjs.map +1 -1
  328. package/fesm2015/ng-nest-ui-card.mjs +10 -10
  329. package/fesm2015/ng-nest-ui-card.mjs.map +1 -1
  330. package/fesm2015/ng-nest-ui-carousel.mjs +16 -16
  331. package/fesm2015/ng-nest-ui-carousel.mjs.map +1 -1
  332. package/fesm2015/ng-nest-ui-cascade.mjs +13 -13
  333. package/fesm2015/ng-nest-ui-cascade.mjs.map +1 -1
  334. package/fesm2015/ng-nest-ui-checkbox.mjs +10 -10
  335. package/fesm2015/ng-nest-ui-checkbox.mjs.map +1 -1
  336. package/fesm2015/ng-nest-ui-collapse.mjs +16 -16
  337. package/fesm2015/ng-nest-ui-collapse.mjs.map +1 -1
  338. package/fesm2015/ng-nest-ui-color-picker.mjs +14 -14
  339. package/fesm2015/ng-nest-ui-color-picker.mjs.map +1 -1
  340. package/fesm2015/ng-nest-ui-color.mjs +10 -10
  341. package/fesm2015/ng-nest-ui-color.mjs.map +1 -1
  342. package/fesm2015/ng-nest-ui-comment.mjs +16 -16
  343. package/fesm2015/ng-nest-ui-comment.mjs.map +1 -1
  344. package/fesm2015/ng-nest-ui-container.mjs +31 -31
  345. package/fesm2015/ng-nest-ui-container.mjs.map +1 -1
  346. package/fesm2015/ng-nest-ui-core.mjs +23 -16
  347. package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
  348. package/fesm2015/ng-nest-ui-crumb.mjs +10 -10
  349. package/fesm2015/ng-nest-ui-crumb.mjs.map +1 -1
  350. package/fesm2015/ng-nest-ui-date-picker.mjs +40 -40
  351. package/fesm2015/ng-nest-ui-date-picker.mjs.map +1 -1
  352. package/fesm2015/ng-nest-ui-description.mjs +16 -16
  353. package/fesm2015/ng-nest-ui-description.mjs.map +1 -1
  354. package/fesm2015/ng-nest-ui-dialog.mjs +148 -53
  355. package/fesm2015/ng-nest-ui-dialog.mjs.map +1 -1
  356. package/fesm2015/ng-nest-ui-doc.mjs +7 -7
  357. package/fesm2015/ng-nest-ui-doc.mjs.map +1 -1
  358. package/fesm2015/ng-nest-ui-drawer.mjs +31 -31
  359. package/fesm2015/ng-nest-ui-drawer.mjs.map +1 -1
  360. package/fesm2015/ng-nest-ui-dropdown.mjs +13 -13
  361. package/fesm2015/ng-nest-ui-dropdown.mjs.map +1 -1
  362. package/fesm2015/ng-nest-ui-empty.mjs +10 -10
  363. package/fesm2015/ng-nest-ui-empty.mjs.map +1 -1
  364. package/fesm2015/ng-nest-ui-examples.mjs +7 -7
  365. package/fesm2015/ng-nest-ui-examples.mjs.map +1 -1
  366. package/fesm2015/ng-nest-ui-find.mjs +10 -10
  367. package/fesm2015/ng-nest-ui-find.mjs.map +1 -1
  368. package/fesm2015/ng-nest-ui-form.mjs +16 -16
  369. package/fesm2015/ng-nest-ui-form.mjs.map +1 -1
  370. package/fesm2015/ng-nest-ui-highlight.mjs +10 -10
  371. package/fesm2015/ng-nest-ui-highlight.mjs.map +1 -1
  372. package/fesm2015/ng-nest-ui-i18n.mjs +13 -13
  373. package/fesm2015/ng-nest-ui-i18n.mjs.map +1 -1
  374. package/fesm2015/ng-nest-ui-icon.mjs +13 -13
  375. package/fesm2015/ng-nest-ui-icon.mjs.map +1 -1
  376. package/fesm2015/ng-nest-ui-inner.mjs +10 -10
  377. package/fesm2015/ng-nest-ui-inner.mjs.map +1 -1
  378. package/fesm2015/ng-nest-ui-input-number.mjs +10 -10
  379. package/fesm2015/ng-nest-ui-input-number.mjs.map +1 -1
  380. package/fesm2015/ng-nest-ui-input.mjs +16 -16
  381. package/fesm2015/ng-nest-ui-input.mjs.map +1 -1
  382. package/fesm2015/ng-nest-ui-layout.mjs +16 -16
  383. package/fesm2015/ng-nest-ui-layout.mjs.map +1 -1
  384. package/fesm2015/ng-nest-ui-link.mjs +10 -10
  385. package/fesm2015/ng-nest-ui-link.mjs.map +1 -1
  386. package/fesm2015/ng-nest-ui-list.mjs +16 -16
  387. package/fesm2015/ng-nest-ui-list.mjs.map +1 -1
  388. package/fesm2015/ng-nest-ui-loading.mjs +10 -10
  389. package/fesm2015/ng-nest-ui-loading.mjs.map +1 -1
  390. package/fesm2015/ng-nest-ui-menu.mjs +16 -16
  391. package/fesm2015/ng-nest-ui-menu.mjs.map +1 -1
  392. package/fesm2015/ng-nest-ui-message-box.mjs +10 -10
  393. package/fesm2015/ng-nest-ui-message-box.mjs.map +1 -1
  394. package/fesm2015/ng-nest-ui-message.mjs +10 -10
  395. package/fesm2015/ng-nest-ui-message.mjs.map +1 -1
  396. package/fesm2015/ng-nest-ui-notification.mjs +10 -10
  397. package/fesm2015/ng-nest-ui-notification.mjs.map +1 -1
  398. package/fesm2015/ng-nest-ui-outlet.mjs +7 -7
  399. package/fesm2015/ng-nest-ui-outlet.mjs.map +1 -1
  400. package/fesm2015/ng-nest-ui-page-header.mjs +10 -10
  401. package/fesm2015/ng-nest-ui-page-header.mjs.map +1 -1
  402. package/fesm2015/ng-nest-ui-pagination.mjs +10 -10
  403. package/fesm2015/ng-nest-ui-pagination.mjs.map +1 -1
  404. package/fesm2015/ng-nest-ui-pattern.mjs +7 -7
  405. package/fesm2015/ng-nest-ui-pattern.mjs.map +1 -1
  406. package/fesm2015/ng-nest-ui-popconfirm.mjs +10 -10
  407. package/fesm2015/ng-nest-ui-popconfirm.mjs.map +1 -1
  408. package/fesm2015/ng-nest-ui-popover.mjs +13 -13
  409. package/fesm2015/ng-nest-ui-popover.mjs.map +1 -1
  410. package/fesm2015/ng-nest-ui-portal.mjs +42 -15
  411. package/fesm2015/ng-nest-ui-portal.mjs.map +1 -1
  412. package/fesm2015/ng-nest-ui-progress.mjs +10 -10
  413. package/fesm2015/ng-nest-ui-progress.mjs.map +1 -1
  414. package/fesm2015/ng-nest-ui-radio.mjs +10 -10
  415. package/fesm2015/ng-nest-ui-radio.mjs.map +1 -1
  416. package/fesm2015/ng-nest-ui-rate.mjs +10 -10
  417. package/fesm2015/ng-nest-ui-rate.mjs.map +1 -1
  418. package/fesm2015/ng-nest-ui-resizable.mjs +10 -10
  419. package/fesm2015/ng-nest-ui-resizable.mjs.map +1 -1
  420. package/fesm2015/ng-nest-ui-result.mjs +10 -10
  421. package/fesm2015/ng-nest-ui-result.mjs.map +1 -1
  422. package/fesm2015/ng-nest-ui-ripple.mjs +10 -10
  423. package/fesm2015/ng-nest-ui-ripple.mjs.map +1 -1
  424. package/fesm2015/ng-nest-ui-select.mjs +13 -13
  425. package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
  426. package/fesm2015/ng-nest-ui-skeleton.mjs +10 -10
  427. package/fesm2015/ng-nest-ui-skeleton.mjs.map +1 -1
  428. package/fesm2015/ng-nest-ui-slider-select.mjs +10 -10
  429. package/fesm2015/ng-nest-ui-slider-select.mjs.map +1 -1
  430. package/fesm2015/ng-nest-ui-slider.mjs +10 -10
  431. package/fesm2015/ng-nest-ui-slider.mjs.map +1 -1
  432. package/fesm2015/ng-nest-ui-statistic.mjs +16 -16
  433. package/fesm2015/ng-nest-ui-statistic.mjs.map +1 -1
  434. package/fesm2015/ng-nest-ui-steps.mjs +10 -10
  435. package/fesm2015/ng-nest-ui-steps.mjs.map +1 -1
  436. package/fesm2015/ng-nest-ui-switch.mjs +10 -10
  437. package/fesm2015/ng-nest-ui-switch.mjs.map +1 -1
  438. package/fesm2015/ng-nest-ui-table.mjs +31 -31
  439. package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
  440. package/fesm2015/ng-nest-ui-tabs.mjs +19 -19
  441. package/fesm2015/ng-nest-ui-tabs.mjs.map +1 -1
  442. package/fesm2015/ng-nest-ui-tag.mjs +10 -10
  443. package/fesm2015/ng-nest-ui-tag.mjs.map +1 -1
  444. package/fesm2015/ng-nest-ui-text-retract.mjs +10 -10
  445. package/fesm2015/ng-nest-ui-text-retract.mjs.map +1 -1
  446. package/fesm2015/ng-nest-ui-textarea.mjs +10 -10
  447. package/fesm2015/ng-nest-ui-textarea.mjs.map +1 -1
  448. package/fesm2015/ng-nest-ui-theme.mjs +10 -10
  449. package/fesm2015/ng-nest-ui-theme.mjs.map +1 -1
  450. package/fesm2015/ng-nest-ui-time-ago.mjs +7 -7
  451. package/fesm2015/ng-nest-ui-time-ago.mjs.map +1 -1
  452. package/fesm2015/ng-nest-ui-time-picker.mjs +16 -16
  453. package/fesm2015/ng-nest-ui-time-picker.mjs.map +1 -1
  454. package/fesm2015/ng-nest-ui-time-range.mjs +7 -7
  455. package/fesm2015/ng-nest-ui-time-range.mjs.map +1 -1
  456. package/fesm2015/ng-nest-ui-timeline.mjs +10 -10
  457. package/fesm2015/ng-nest-ui-timeline.mjs.map +1 -1
  458. package/fesm2015/ng-nest-ui-tooltip.mjs +13 -13
  459. package/fesm2015/ng-nest-ui-tooltip.mjs.map +1 -1
  460. package/fesm2015/ng-nest-ui-transfer.mjs +10 -10
  461. package/fesm2015/ng-nest-ui-transfer.mjs.map +1 -1
  462. package/fesm2015/ng-nest-ui-tree-file.mjs +10 -10
  463. package/fesm2015/ng-nest-ui-tree-file.mjs.map +1 -1
  464. package/fesm2015/ng-nest-ui-tree.mjs +16 -16
  465. package/fesm2015/ng-nest-ui-tree.mjs.map +1 -1
  466. package/fesm2015/ng-nest-ui-typography.mjs +10 -10
  467. package/fesm2015/ng-nest-ui-typography.mjs.map +1 -1
  468. package/fesm2015/ng-nest-ui-upload.mjs +14 -14
  469. package/fesm2015/ng-nest-ui-upload.mjs.map +1 -1
  470. package/fesm2020/ng-nest-ui-affix.mjs +10 -10
  471. package/fesm2020/ng-nest-ui-affix.mjs.map +1 -1
  472. package/fesm2020/ng-nest-ui-alert.mjs +10 -10
  473. package/fesm2020/ng-nest-ui-alert.mjs.map +1 -1
  474. package/fesm2020/ng-nest-ui-anchor.mjs +10 -10
  475. package/fesm2020/ng-nest-ui-anchor.mjs.map +1 -1
  476. package/fesm2020/ng-nest-ui-api.mjs +7 -7
  477. package/fesm2020/ng-nest-ui-api.mjs.map +1 -1
  478. package/fesm2020/ng-nest-ui-auto-complete.mjs +13 -13
  479. package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
  480. package/fesm2020/ng-nest-ui-avatar.mjs +10 -10
  481. package/fesm2020/ng-nest-ui-avatar.mjs.map +1 -1
  482. package/fesm2020/ng-nest-ui-back-top.mjs +10 -10
  483. package/fesm2020/ng-nest-ui-back-top.mjs.map +1 -1
  484. package/fesm2020/ng-nest-ui-badge.mjs +10 -10
  485. package/fesm2020/ng-nest-ui-badge.mjs.map +1 -1
  486. package/fesm2020/ng-nest-ui-base-form.mjs +10 -10
  487. package/fesm2020/ng-nest-ui-base-form.mjs.map +1 -1
  488. package/fesm2020/ng-nest-ui-border.mjs +7 -7
  489. package/fesm2020/ng-nest-ui-border.mjs.map +1 -1
  490. package/fesm2020/ng-nest-ui-button.mjs +16 -16
  491. package/fesm2020/ng-nest-ui-button.mjs.map +1 -1
  492. package/fesm2020/ng-nest-ui-calendar.mjs +10 -10
  493. package/fesm2020/ng-nest-ui-calendar.mjs.map +1 -1
  494. package/fesm2020/ng-nest-ui-card.mjs +10 -10
  495. package/fesm2020/ng-nest-ui-card.mjs.map +1 -1
  496. package/fesm2020/ng-nest-ui-carousel.mjs +16 -16
  497. package/fesm2020/ng-nest-ui-carousel.mjs.map +1 -1
  498. package/fesm2020/ng-nest-ui-cascade.mjs +13 -13
  499. package/fesm2020/ng-nest-ui-cascade.mjs.map +1 -1
  500. package/fesm2020/ng-nest-ui-checkbox.mjs +10 -10
  501. package/fesm2020/ng-nest-ui-checkbox.mjs.map +1 -1
  502. package/fesm2020/ng-nest-ui-collapse.mjs +16 -16
  503. package/fesm2020/ng-nest-ui-collapse.mjs.map +1 -1
  504. package/fesm2020/ng-nest-ui-color-picker.mjs +14 -14
  505. package/fesm2020/ng-nest-ui-color-picker.mjs.map +1 -1
  506. package/fesm2020/ng-nest-ui-color.mjs +10 -10
  507. package/fesm2020/ng-nest-ui-color.mjs.map +1 -1
  508. package/fesm2020/ng-nest-ui-comment.mjs +16 -16
  509. package/fesm2020/ng-nest-ui-comment.mjs.map +1 -1
  510. package/fesm2020/ng-nest-ui-container.mjs +31 -31
  511. package/fesm2020/ng-nest-ui-container.mjs.map +1 -1
  512. package/fesm2020/ng-nest-ui-core.mjs +23 -16
  513. package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
  514. package/fesm2020/ng-nest-ui-crumb.mjs +10 -10
  515. package/fesm2020/ng-nest-ui-crumb.mjs.map +1 -1
  516. package/fesm2020/ng-nest-ui-date-picker.mjs +40 -40
  517. package/fesm2020/ng-nest-ui-date-picker.mjs.map +1 -1
  518. package/fesm2020/ng-nest-ui-description.mjs +16 -16
  519. package/fesm2020/ng-nest-ui-description.mjs.map +1 -1
  520. package/fesm2020/ng-nest-ui-dialog.mjs +153 -53
  521. package/fesm2020/ng-nest-ui-dialog.mjs.map +1 -1
  522. package/fesm2020/ng-nest-ui-doc.mjs +7 -7
  523. package/fesm2020/ng-nest-ui-doc.mjs.map +1 -1
  524. package/fesm2020/ng-nest-ui-drawer.mjs +31 -31
  525. package/fesm2020/ng-nest-ui-drawer.mjs.map +1 -1
  526. package/fesm2020/ng-nest-ui-dropdown.mjs +13 -13
  527. package/fesm2020/ng-nest-ui-dropdown.mjs.map +1 -1
  528. package/fesm2020/ng-nest-ui-empty.mjs +10 -10
  529. package/fesm2020/ng-nest-ui-empty.mjs.map +1 -1
  530. package/fesm2020/ng-nest-ui-examples.mjs +7 -7
  531. package/fesm2020/ng-nest-ui-examples.mjs.map +1 -1
  532. package/fesm2020/ng-nest-ui-find.mjs +10 -10
  533. package/fesm2020/ng-nest-ui-find.mjs.map +1 -1
  534. package/fesm2020/ng-nest-ui-form.mjs +16 -16
  535. package/fesm2020/ng-nest-ui-form.mjs.map +1 -1
  536. package/fesm2020/ng-nest-ui-highlight.mjs +10 -10
  537. package/fesm2020/ng-nest-ui-highlight.mjs.map +1 -1
  538. package/fesm2020/ng-nest-ui-i18n.mjs +13 -13
  539. package/fesm2020/ng-nest-ui-i18n.mjs.map +1 -1
  540. package/fesm2020/ng-nest-ui-icon.mjs +13 -13
  541. package/fesm2020/ng-nest-ui-icon.mjs.map +1 -1
  542. package/fesm2020/ng-nest-ui-inner.mjs +10 -10
  543. package/fesm2020/ng-nest-ui-inner.mjs.map +1 -1
  544. package/fesm2020/ng-nest-ui-input-number.mjs +10 -10
  545. package/fesm2020/ng-nest-ui-input-number.mjs.map +1 -1
  546. package/fesm2020/ng-nest-ui-input.mjs +16 -16
  547. package/fesm2020/ng-nest-ui-input.mjs.map +1 -1
  548. package/fesm2020/ng-nest-ui-layout.mjs +16 -16
  549. package/fesm2020/ng-nest-ui-layout.mjs.map +1 -1
  550. package/fesm2020/ng-nest-ui-link.mjs +10 -10
  551. package/fesm2020/ng-nest-ui-link.mjs.map +1 -1
  552. package/fesm2020/ng-nest-ui-list.mjs +16 -16
  553. package/fesm2020/ng-nest-ui-list.mjs.map +1 -1
  554. package/fesm2020/ng-nest-ui-loading.mjs +10 -10
  555. package/fesm2020/ng-nest-ui-loading.mjs.map +1 -1
  556. package/fesm2020/ng-nest-ui-menu.mjs +16 -16
  557. package/fesm2020/ng-nest-ui-menu.mjs.map +1 -1
  558. package/fesm2020/ng-nest-ui-message-box.mjs +10 -10
  559. package/fesm2020/ng-nest-ui-message-box.mjs.map +1 -1
  560. package/fesm2020/ng-nest-ui-message.mjs +10 -10
  561. package/fesm2020/ng-nest-ui-message.mjs.map +1 -1
  562. package/fesm2020/ng-nest-ui-notification.mjs +10 -10
  563. package/fesm2020/ng-nest-ui-notification.mjs.map +1 -1
  564. package/fesm2020/ng-nest-ui-outlet.mjs +7 -7
  565. package/fesm2020/ng-nest-ui-outlet.mjs.map +1 -1
  566. package/fesm2020/ng-nest-ui-page-header.mjs +10 -10
  567. package/fesm2020/ng-nest-ui-page-header.mjs.map +1 -1
  568. package/fesm2020/ng-nest-ui-pagination.mjs +10 -10
  569. package/fesm2020/ng-nest-ui-pagination.mjs.map +1 -1
  570. package/fesm2020/ng-nest-ui-pattern.mjs +7 -7
  571. package/fesm2020/ng-nest-ui-pattern.mjs.map +1 -1
  572. package/fesm2020/ng-nest-ui-popconfirm.mjs +10 -10
  573. package/fesm2020/ng-nest-ui-popconfirm.mjs.map +1 -1
  574. package/fesm2020/ng-nest-ui-popover.mjs +13 -13
  575. package/fesm2020/ng-nest-ui-popover.mjs.map +1 -1
  576. package/fesm2020/ng-nest-ui-portal.mjs +42 -15
  577. package/fesm2020/ng-nest-ui-portal.mjs.map +1 -1
  578. package/fesm2020/ng-nest-ui-progress.mjs +10 -10
  579. package/fesm2020/ng-nest-ui-progress.mjs.map +1 -1
  580. package/fesm2020/ng-nest-ui-radio.mjs +10 -10
  581. package/fesm2020/ng-nest-ui-radio.mjs.map +1 -1
  582. package/fesm2020/ng-nest-ui-rate.mjs +10 -10
  583. package/fesm2020/ng-nest-ui-rate.mjs.map +1 -1
  584. package/fesm2020/ng-nest-ui-resizable.mjs +10 -10
  585. package/fesm2020/ng-nest-ui-resizable.mjs.map +1 -1
  586. package/fesm2020/ng-nest-ui-result.mjs +10 -10
  587. package/fesm2020/ng-nest-ui-result.mjs.map +1 -1
  588. package/fesm2020/ng-nest-ui-ripple.mjs +10 -10
  589. package/fesm2020/ng-nest-ui-ripple.mjs.map +1 -1
  590. package/fesm2020/ng-nest-ui-select.mjs +13 -13
  591. package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
  592. package/fesm2020/ng-nest-ui-skeleton.mjs +10 -10
  593. package/fesm2020/ng-nest-ui-skeleton.mjs.map +1 -1
  594. package/fesm2020/ng-nest-ui-slider-select.mjs +10 -10
  595. package/fesm2020/ng-nest-ui-slider-select.mjs.map +1 -1
  596. package/fesm2020/ng-nest-ui-slider.mjs +10 -10
  597. package/fesm2020/ng-nest-ui-slider.mjs.map +1 -1
  598. package/fesm2020/ng-nest-ui-statistic.mjs +16 -16
  599. package/fesm2020/ng-nest-ui-statistic.mjs.map +1 -1
  600. package/fesm2020/ng-nest-ui-steps.mjs +10 -10
  601. package/fesm2020/ng-nest-ui-steps.mjs.map +1 -1
  602. package/fesm2020/ng-nest-ui-switch.mjs +10 -10
  603. package/fesm2020/ng-nest-ui-switch.mjs.map +1 -1
  604. package/fesm2020/ng-nest-ui-table.mjs +31 -31
  605. package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
  606. package/fesm2020/ng-nest-ui-tabs.mjs +19 -19
  607. package/fesm2020/ng-nest-ui-tabs.mjs.map +1 -1
  608. package/fesm2020/ng-nest-ui-tag.mjs +10 -10
  609. package/fesm2020/ng-nest-ui-tag.mjs.map +1 -1
  610. package/fesm2020/ng-nest-ui-text-retract.mjs +10 -10
  611. package/fesm2020/ng-nest-ui-text-retract.mjs.map +1 -1
  612. package/fesm2020/ng-nest-ui-textarea.mjs +10 -10
  613. package/fesm2020/ng-nest-ui-textarea.mjs.map +1 -1
  614. package/fesm2020/ng-nest-ui-theme.mjs +10 -10
  615. package/fesm2020/ng-nest-ui-theme.mjs.map +1 -1
  616. package/fesm2020/ng-nest-ui-time-ago.mjs +7 -7
  617. package/fesm2020/ng-nest-ui-time-ago.mjs.map +1 -1
  618. package/fesm2020/ng-nest-ui-time-picker.mjs +16 -16
  619. package/fesm2020/ng-nest-ui-time-picker.mjs.map +1 -1
  620. package/fesm2020/ng-nest-ui-time-range.mjs +7 -7
  621. package/fesm2020/ng-nest-ui-time-range.mjs.map +1 -1
  622. package/fesm2020/ng-nest-ui-timeline.mjs +10 -10
  623. package/fesm2020/ng-nest-ui-timeline.mjs.map +1 -1
  624. package/fesm2020/ng-nest-ui-tooltip.mjs +13 -13
  625. package/fesm2020/ng-nest-ui-tooltip.mjs.map +1 -1
  626. package/fesm2020/ng-nest-ui-transfer.mjs +10 -10
  627. package/fesm2020/ng-nest-ui-transfer.mjs.map +1 -1
  628. package/fesm2020/ng-nest-ui-tree-file.mjs +10 -10
  629. package/fesm2020/ng-nest-ui-tree-file.mjs.map +1 -1
  630. package/fesm2020/ng-nest-ui-tree.mjs +16 -16
  631. package/fesm2020/ng-nest-ui-tree.mjs.map +1 -1
  632. package/fesm2020/ng-nest-ui-typography.mjs +10 -10
  633. package/fesm2020/ng-nest-ui-typography.mjs.map +1 -1
  634. package/fesm2020/ng-nest-ui-upload.mjs +14 -14
  635. package/fesm2020/ng-nest-ui-upload.mjs.map +1 -1
  636. package/package.json +1 -1
  637. package/portal/portal.service.d.ts +47 -0
@@ -67,9 +67,9 @@ export class XDialogPortalComponent extends BasePortalOutlet {
67
67
  this.distance = { x: this.distance.x + event.distance.x, y: this.distance.y + event.distance.y };
68
68
  }
69
69
  }
70
- /** @nocollapse */ /** @nocollapse */ XDialogPortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogPortalComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
71
- /** @nocollapse */ /** @nocollapse */ XDialogPortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: XDialogPortalComponent, selector: "x-dialog-portal", host: { listeners: { "@x-move-box-animation.done": "done($event)", "@x-move-box-animation.start": "start($event)" }, properties: { "@x-move-box-animation": "this.placement" } }, queries: [{ propertyName: "handles", predicate: CdkDragHandle, descendants: true }], viewQueries: [{ propertyName: "portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }, { propertyName: "dragRef", first: true, predicate: CdkDrag, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-dialog-portal\"\r\n #dragRef\r\n cdkDrag\r\n [cdkDragDisabled]=\"!option.draggable && !dialogBox['draggable']\"\r\n [cdkDragBoundary]=\"'.cdk-overlay-container'\"\r\n [cdkDragFreeDragPosition]=\"dialogBox['distance']\"\r\n [xResizable]=\"option.resizable && dialogBox['resizable']!\"\r\n (resizing)=\"resizing($event)\"\r\n (cdkDragEnded)=\"onDragEnded($event)\"\r\n [offsetLeft]=\"offsetLeft\"\r\n [offsetTop]=\"offsetTop\"\r\n [style.minWidth]=\"dialogBox['minWidth']\"\r\n [style.minHeight]=\"dialogBox['minHeight']\"\r\n>\r\n <ng-template cdkPortalOutlet></ng-template>\r\n</div>\r\n", styles: [".x-dialog-portal{margin:0;padding:0;width:100%;height:100%;display:block;padding:1rem;box-sizing:border-box;min-height:inherit;max-height:inherit;background-color:var(--x-background);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);border:.0625rem solid transparent;border-radius:var(--x-border-radius)}.x-dialog-portal-title{font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:3rem;line-height:3rem;display:block;align-items:center;margin:-1rem -1rem 0;padding:0 1rem}.x-dialog-portal-content{display:block;margin:0 -1rem;padding:0 1rem;max-height:70vh;overflow:auto;color:var(--x-text-300);font-size:calc(var(--x-font-size) - .0625rem);line-height:1.325rem}.x-dialog-portal-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;box-sizing:content-box;margin:0 -1rem -1rem;padding:0 1rem;height:4rem}.x-dialog-portal-actions[align=center]{justify-content:center}.x-dialog-portal-actions[align=start]{justify-content:flex-start}.x-dialog-portal-actions x-button:not(:first-child){margin-left:1rem}.x-dialog-portal-drag-handle{cursor:move}.x-dialog-portal-fullscreen{margin:0!important}.x-dialog-portal-fullscreen .x-dialog-portal{left:0!important;top:0!important}.x-dialog-portal-fullscreen .x-dialog-portal-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important}x-dialog-portal{width:100%;height:100%}\n"], directives: [{ type: i1.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: i2.XResizableDirective, selector: "[xResizable]" }, { type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [XMoveBoxAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogPortalComponent, decorators: [{
70
+ /** @nocollapse */ /** @nocollapse */ XDialogPortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogPortalComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
71
+ /** @nocollapse */ /** @nocollapse */ XDialogPortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: XDialogPortalComponent, selector: "x-dialog-portal", host: { listeners: { "@x-move-box-animation.done": "done($event)", "@x-move-box-animation.start": "start($event)" }, properties: { "@x-move-box-animation": "this.placement" } }, queries: [{ propertyName: "handles", predicate: CdkDragHandle, descendants: true }], viewQueries: [{ propertyName: "portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }, { propertyName: "dragRef", first: true, predicate: CdkDrag, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-dialog-portal\"\r\n #dragRef\r\n cdkDrag\r\n [cdkDragDisabled]=\"!option.draggable && !dialogBox['draggable']\"\r\n [cdkDragBoundary]=\"'.cdk-overlay-container'\"\r\n [cdkDragFreeDragPosition]=\"dialogBox['distance']\"\r\n [xResizable]=\"option.resizable && dialogBox['resizable']!\"\r\n (resizing)=\"resizing($event)\"\r\n (cdkDragEnded)=\"onDragEnded($event)\"\r\n [offsetLeft]=\"offsetLeft\"\r\n [offsetTop]=\"offsetTop\"\r\n [style.minWidth]=\"dialogBox['minWidth']\"\r\n [style.minHeight]=\"dialogBox['minHeight']\"\r\n>\r\n <ng-template cdkPortalOutlet></ng-template>\r\n</div>\r\n", styles: [".x-dialog-portal{margin:0;padding:0;width:100%;height:100%;display:block;padding:1rem;box-sizing:border-box;min-height:inherit;max-height:inherit;background-color:var(--x-background);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);border:.0625rem solid transparent;border-radius:var(--x-border-radius)}.x-dialog-portal-title{font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:3rem;line-height:3rem;display:block;align-items:center;margin:-1rem -1rem 0;padding:0 1rem}.x-dialog-portal-content{display:block;margin:0 -1rem;padding:0 1rem;max-height:70vh;overflow:auto;color:var(--x-text-300);font-size:calc(var(--x-font-size) - .0625rem);line-height:1.325rem}.x-dialog-portal-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;box-sizing:content-box;margin:0 -1rem -1rem;padding:0 1rem;height:4rem}.x-dialog-portal-actions[align=center]{justify-content:center}.x-dialog-portal-actions[align=start]{justify-content:flex-start}.x-dialog-portal-actions x-button:not(:first-child){margin-left:1rem}.x-dialog-portal-drag-handle{cursor:move}.x-dialog-portal-fullscreen{margin:0!important}.x-dialog-portal-fullscreen .x-dialog-portal{left:0!important;top:0!important}.x-dialog-portal-fullscreen .x-dialog-portal-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important}x-dialog-portal{width:100%;height:100%}\n"], directives: [{ type: i1.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: i2.XResizableDirective, selector: "[xResizable]" }, { type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [XMoveBoxAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogPortalComponent, decorators: [{
73
73
  type: Component,
74
74
  args: [{ selector: 'x-dialog-portal', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XMoveBoxAnimation], template: "<div\r\n class=\"x-dialog-portal\"\r\n #dragRef\r\n cdkDrag\r\n [cdkDragDisabled]=\"!option.draggable && !dialogBox['draggable']\"\r\n [cdkDragBoundary]=\"'.cdk-overlay-container'\"\r\n [cdkDragFreeDragPosition]=\"dialogBox['distance']\"\r\n [xResizable]=\"option.resizable && dialogBox['resizable']!\"\r\n (resizing)=\"resizing($event)\"\r\n (cdkDragEnded)=\"onDragEnded($event)\"\r\n [offsetLeft]=\"offsetLeft\"\r\n [offsetTop]=\"offsetTop\"\r\n [style.minWidth]=\"dialogBox['minWidth']\"\r\n [style.minHeight]=\"dialogBox['minHeight']\"\r\n>\r\n <ng-template cdkPortalOutlet></ng-template>\r\n</div>\r\n", styles: [".x-dialog-portal{margin:0;padding:0;width:100%;height:100%;display:block;padding:1rem;box-sizing:border-box;min-height:inherit;max-height:inherit;background-color:var(--x-background);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);border:.0625rem solid transparent;border-radius:var(--x-border-radius)}.x-dialog-portal-title{font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:3rem;line-height:3rem;display:block;align-items:center;margin:-1rem -1rem 0;padding:0 1rem}.x-dialog-portal-content{display:block;margin:0 -1rem;padding:0 1rem;max-height:70vh;overflow:auto;color:var(--x-text-300);font-size:calc(var(--x-font-size) - .0625rem);line-height:1.325rem}.x-dialog-portal-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;box-sizing:content-box;margin:0 -1rem -1rem;padding:0 1rem;height:4rem}.x-dialog-portal-actions[align=center]{justify-content:center}.x-dialog-portal-actions[align=start]{justify-content:flex-start}.x-dialog-portal-actions x-button:not(:first-child){margin-left:1rem}.x-dialog-portal-drag-handle{cursor:move}.x-dialog-portal-fullscreen{margin:0!important}.x-dialog-portal-fullscreen .x-dialog-portal{left:0!important;top:0!important}.x-dialog-portal-fullscreen .x-dialog-portal-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important}x-dialog-portal{width:100%;height:100%}\n"] }]
75
75
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; }, propDecorators: { placement: [{
@@ -91,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
91
91
  type: ContentChildren,
92
92
  args: [CdkDragHandle, { descendants: true }]
93
93
  }] } });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXBvcnRhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9kaWFsb2cvZGlhbG9nLXBvcnRhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9kaWFsb2cvZGlhbG9nLXBvcnRhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFtQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3pHLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULGVBQWUsRUFFZixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixTQUFTLEVBRVQsU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUdyRCxPQUFPLEVBQUUsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7OztBQVk1RSxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZ0JBQWdCO0lBaUMxRCxZQUFvQixRQUFtQjtRQUNyQyxLQUFLLEVBQUUsQ0FBQztRQURVLGFBQVEsR0FBUixRQUFRLENBQVc7UUFuQnZDLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO1FBSzdELGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsYUFBUSxHQUFHLE1BQU0sQ0FBQztRQUNsQixjQUFTLEdBQUcsTUFBTSxDQUFDO1FBQ25CLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixzQkFBaUIsR0FBRyxDQUFDLENBQUM7UUFFdEIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFHeEIsYUFBUSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFF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RUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBRW1CLE9BQU87c0JBQTdELGVBQWU7dUJBQUMsYUFBYSxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VQb3J0YWxPdXRsZXQsIENka1BvcnRhbE91dGxldCwgQ29tcG9uZW50UG9ydGFsLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5pbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBDb21wb25lbnRSZWYsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIEVtYmVkZGVkVmlld1JlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBSZW5kZXJlcjIsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhNb3ZlQm94QW5pbWF0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFhEaWFsb2dBbmltYXRpb25FdmVudCwgWERpYWxvZ0FuaW1hdGlvblN0YXRlLCBYRGlhbG9nUmVmT3B0aW9uIH0gZnJvbSAnLi9kaWFsb2cucHJvcGVydHknO1xyXG5pbXBvcnQgeyBBbmltYXRpb25FdmVudCB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBDZGtEcmFnLCBDZGtEcmFnRW5kLCBDZGtEcmFnSGFuZGxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7IFhEaWFsb2dSZWYgfSBmcm9tICcuL2RpYWxvZy1yZWYnO1xyXG5pbXBvcnQgeyBYUmVzaXphYmxlRXZlbnQgfSBmcm9tICdAbmctbmVzdC91aS9yZXNpemFibGUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd4LWRpYWxvZy1wb3J0YWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2ctcG9ydGFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kaWFsb2ctcG9ydGFsLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBhbmltYXRpb25zOiBbWE1vdmVCb3hBbmltYXRpb25dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYRGlhbG9nUG9ydGFsQ29tcG9uZW50IGV4dGVuZHMgQmFzZVBvcnRhbE91dGxldCB7XHJcbiAgLy8gQEhvc3RCaW5kaW5nKCdjbGFzcy54LWRpYWxvZy1wb3J0YWwnKSBfaGFzID0gdHJ1ZTtcclxuICBASG9zdEJpbmRpbmcoJ0B4LW1vdmUtYm94LWFuaW1hdGlvbicpIHB1YmxpYyBwbGFjZW1lbnQ/OiBYRGlhbG9nQW5pbWF0aW9uU3RhdGU7XHJcbiAgQEhvc3RMaXN0ZW5lcignQHgtbW92ZS1ib3gtYW5pbWF0aW9uLmRvbmUnLCBbJyRldmVudCddKSBkb25lKHsgdG9TdGF0ZSwgdG90YWxUaW1lIH06IEFuaW1hdGlvbkV2ZW50KSB7XHJcbiAgICB0aGlzLmFuaW1hdGlvbkNoYW5nZWQubmV4dCh7IGFjdGlvbjogJ2RvbmUnLCBzdGF0ZTogdG9TdGF0ZSBhcyBYRGlhbG9nQW5pbWF0aW9uU3RhdGUsIHRvdGFsVGltZSB9KTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignQHgtbW92ZS1ib3gtYW5pbWF0aW9uLnN0YXJ0JywgWyckZXZlbnQnXSkgc3RhcnQoeyB0b1N0YXRlLCB0b3RhbFRpbWUgfTogQW5pbWF0aW9uRXZlbnQpIHtcclxuICAgIHRoaXMuYW5pbWF0aW9uQ2hhbmdlZC5uZXh0KHsgYWN0aW9uOiAnc3RhcnQnLCBzdGF0ZTogdG9TdGF0ZSBhcyBYRGlhbG9nQW5pbWF0aW9uU3RhdGUsIHRvdGFsVGltZSB9KTtcclxuICB9XHJcbiAgQFZpZXdDaGlsZChDZGtQb3J0YWxPdXRsZXQsIHsgc3RhdGljOiB0cnVlIH0pIHBvcnRhbE91dGxldCE6IENka1BvcnRhbE91dGxldDtcclxuICBAVmlld0NoaWxkKENka0RyYWcsIHsgc3RhdGljOiB0cnVlIH0pIGRyYWdSZWYhOiBDZGtEcmFnO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKENka0RyYWdIYW5kbGUsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgaGFuZGxlcyE6IFF1ZXJ5TGlzdDxDZGtEcmFnSGFuZGxlPjtcclxuXHJcbiAgYW5pbWF0aW9uQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8WERpYWxvZ0FuaW1hdGlvbkV2ZW50PigpO1xyXG5cclxuICBvcHRpb24hOiBYRGlhbG9nUmVmT3B0aW9uO1xyXG4gIGRpYWxvZ1JlZiE6IFhEaWFsb2dSZWY8YW55PjtcclxuXHJcbiAgb2Zmc2V0TGVmdCA9IDA7XHJcbiAgb2Zmc2V0VG9wID0gMDtcclxuICBtaW5XaWR0aCA9ICcwcmVtJztcclxuICBtaW5IZWlnaHQgPSAnMHJlbSc7XHJcbiAgaW5pdEhlaWdodCA9IDA7XHJcbiAgaW5pdENvbnRlbnRIZWlnaHQgPSAwO1xyXG4gIGRpYWxvZ0NvbnRlbnQ/OiBIVE1MRWxlbWVudDtcclxuICBkZWZhdWx0TWF4aW1pemUgPSBmYWxzZTtcclxuICBvdmVybGF5RWxlbWVudD86IEhUTUxFbGVtZW50O1xyXG4gIGhvc3RFbGVtZW50PzogSFRNTEVsZW1lbnQ7XHJcbiAgZGlzdGFuY2UgPSB7IHg6IDAsIHk6IDAgfTtcclxuXHJcbiAgZGlhbG9nQm94OiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5kaWFsb2dCb3hbJ2RyYWdnYWJsZSddID0gdGhpcy5kZWZhdWx0TWF4aW1pemUgPyB0aGlzLmRpYWxvZ0JveFsnZHJhZ2dhYmxlJ10gOiB0aGlzLm9wdGlvbi5kcmFnZ2FibGU7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsncmVzaXphYmxlJ10gPSB0aGlzLmRlZmF1bHRNYXhpbWl6ZSA/IHRoaXMuZGlhbG9nQm94WydyZXNpemFibGUnXSA6IHRoaXMub3B0aW9uLnJlc2l6YWJsZTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGxldCBsaXN0ID0gbmV3IFF1ZXJ5TGlzdDxDZGtEcmFnSGFuZGxlPigpO1xyXG4gICAgaWYgKHRoaXMuZGlhbG9nUmVmLmRyYWdIYW5kbGVSZWZzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB0aGlzLmRpYWxvZ0JveFsnZHJhZ2dhYmxlJ10gPSBmYWxzZTtcclxuICAgICAgdGhpcy5vcHRpb24uZHJhZ2dhYmxlID0gZmFsc2U7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGZvciAobGV0IGl0ZW0gb2YgdGhpcy5kaWFsb2dSZWYuZHJhZ0hhbmRsZVJlZnMpIHtcclxuICAgICAgbGlzdC5yZXNldChbLi4ubGlzdC50b0FycmF5KCksIG5ldyBDZGtEcmFnSGFuZGxlKGl0ZW0sIHRoaXMuZHJhZ1JlZildKTtcclxuICAgIH1cclxuICAgIHRoaXMuZHJhZ1JlZi5faGFuZGxlcyA9IGxpc3Q7XHJcbiAgfVxyXG5cclxuICBhdHRhY2hDb21wb25lbnRQb3J0YWw8VD4ocG9ydGFsOiBDb21wb25lbnRQb3J0YWw8VD4pOiBDb21wb25lbnRSZWY8VD4ge1xyXG4gICAgaWYgKHRoaXMucG9ydGFsT3V0bGV0Lmhhc0F0dGFjaGVkKCkpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ2RpYWxvZyBwb3J0YWwgaGFzIGF0dGFjaGVkJyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5wb3J0YWxPdXRsZXQuYXR0YWNoQ29tcG9uZW50UG9ydGFsKHBvcnRhbCk7XHJcbiAgfVxyXG4gIGF0dGFjaFRlbXBsYXRlUG9ydGFsPEM+KHBvcnRhbDogVGVtcGxhdGVQb3J0YWw8Qz4pOiBFbWJlZGRlZFZpZXdSZWY8Qz4ge1xyXG4gICAgaWYgKHRoaXMucG9ydGFsT3V0bGV0Lmhhc0F0dGFjaGVkKCkpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ2RpYWxvZyBwb3J0YWwgaGFzIGF0dGFjaGVkJyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5wb3J0YWxPdXRsZXQuYXR0YWNoVGVtcGxhdGVQb3J0YWwocG9ydGFsKTtcclxuICB9XHJcblxyXG4gIHJlc2l6aW5nKGV2ZW50OiBYUmVzaXphYmxlRXZlbnQpIHtcclxuICAgIGNvbnN0IGNvbnRlbnRIZWlnaHQgPSBOdW1iZXIodGhpcy5pbml0Q29udGVudEhlaWdodCkgKyBOdW1iZXIoZXZlbnQuY2xpZW50SGVpZ2h0KSAtIE51bWJlcih0aGlzLmluaXRIZWlnaHQpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRpYWxvZ0NvbnRlbnQsICdtYXgtaGVpZ2h0JywgJ2luaXRpYWwnKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kaWFsb2dDb250ZW50LCAnZmxleCcsICdpbml0aWFsJyk7XHJcbiAgICBpZiAoWyd0b3Atc3RhcnQnLCAndG9wLWVuZCcsICdib3R0b20nLCAndG9wJywgJ2JvdHRvbS1zdGFydCcsICdib3R0b20tZW5kJ10uaW5jbHVkZXMoZXZlbnQuZGlyZWN0aW9uIGFzIHN0cmluZykpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRpYWxvZ0NvbnRlbnQsICdoZWlnaHQnLCBgJHtjb250ZW50SGVpZ2h0fXB4YCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkRyYWdFbmRlZChldmVudDogQ2RrRHJhZ0VuZCkge1xyXG4gICAgdGhpcy5kaXN0YW5jZSA9IHsgeDogdGhpcy5kaXN0YW5jZS54ICsgZXZlbnQuZGlzdGFuY2UueCwgeTogdGhpcy5kaXN0YW5jZS55ICsgZXZlbnQuZGlzdGFuY2UueSB9O1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJ4LWRpYWxvZy1wb3J0YWxcIlxyXG4gICNkcmFnUmVmXHJcbiAgY2RrRHJhZ1xyXG4gIFtjZGtEcmFnRGlzYWJsZWRdPVwiIW9wdGlvbi5kcmFnZ2FibGUgJiYgIWRpYWxvZ0JveFsnZHJhZ2dhYmxlJ11cIlxyXG4gIFtjZGtEcmFnQm91bmRhcnldPVwiJy5jZGstb3ZlcmxheS1jb250YWluZXInXCJcclxuICBbY2RrRHJhZ0ZyZWVEcmFnUG9zaXRpb25dPVwiZGlhbG9nQm94WydkaXN0YW5jZSddXCJcclxuICBbeFJlc2l6YWJsZV09XCJvcHRpb24ucmVzaXphYmxlICYmIGRpYWxvZ0JveFsncmVzaXphYmxlJ10hXCJcclxuICAocmVzaXppbmcpPVwicmVzaXppbmcoJGV2ZW50KVwiXHJcbiAgKGNka0RyYWdFbmRlZCk9XCJvbkRyYWdFbmRlZCgkZXZlbnQpXCJcclxuICBbb2Zmc2V0TGVmdF09XCJvZmZzZXRMZWZ0XCJcclxuICBbb2Zmc2V0VG9wXT1cIm9mZnNldFRvcFwiXHJcbiAgW3N0eWxlLm1pbldpZHRoXT1cImRpYWxvZ0JveFsnbWluV2lkdGgnXVwiXHJcbiAgW3N0eWxlLm1pbkhlaWdodF09XCJkaWFsb2dCb3hbJ21pbkhlaWdodCddXCJcclxuPlxyXG4gIDxuZy10ZW1wbGF0ZSBjZGtQb3J0YWxPdXRsZXQ+PC9uZy10ZW1wbGF0ZT5cclxuPC9kaXY+XHJcbiJdfQ==
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXBvcnRhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9kaWFsb2cvZGlhbG9nLXBvcnRhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9kaWFsb2cvZGlhbG9nLXBvcnRhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFtQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3pHLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULGVBQWUsRUFFZixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixTQUFTLEVBRVQsU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUdyRCxPQUFPLEVBQUUsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7OztBQVk1RSxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZ0JBQWdCO0lBaUMxRCxZQUFvQixRQUFtQjtRQUNyQyxLQUFLLEVBQUUsQ0FBQztRQURVLGFBQVEsR0FBUixRQUFRLENBQVc7UUFuQnZDLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO1FBSzdELGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsYUFBUSxHQUFHLE1BQU0sQ0FBQztRQUNsQixjQUFTLEdBQUcsTUFBTSxDQUFDO1FBQ25CLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixzQkFBaUIsR0FBRyxDQUFDLENBQUM7UUFFdEIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFHeEIsYUFBUSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFFMUIsY0FBUyxHQUEyQixFQUFFLENBQUM7SUFJdkMsQ0FBQztJQWhDdUQsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBa0I7UUFDakcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQWdDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBQ3dELEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQWtCO1FBQ25HLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFnQyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQTZCRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUN6RyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO0lBQzNHLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxJQUFJLEdBQUcsSUFBSSxTQUFTLEVBQWlCLENBQUM7UUFDMUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzlDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUM5QixPQUFPO1NBQ1I7UUFDRCxLQUFLLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFO1lBQzlDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN4RTtRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQscUJBQXFCLENBQUksTUFBMEI7UUFDakQsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ25DLE1BQU0sS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7U0FDM0M7UUFDRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUNELG9CQUFvQixDQUFJLE1BQXlCO1FBQy9DLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUNuQyxNQUFNLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1NBQzNDO1FBQ0QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxRQUFRLENBQUMsS0FBc0I7UUFDN0IsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1RyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFNBQW1CLENBQUMsRUFBRTtZQUMvRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFFBQVEsRUFBRSxHQUFHLGFBQWEsSUFBSSxDQUFDLENBQUM7U0FDNUU7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWlCO1FBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDbkcsQ0FBQzs7MEpBL0VVLHNCQUFzQjs4SUFBdEIsc0JBQXNCLGlRQVloQixhQUFhLDhGQUhuQixlQUFlLHdGQUNmLE9BQU8scUZDeENwQiw4bUJBaUJBLHVqRURXYyxDQUFDLGlCQUFpQixDQUFDOzRGQUVwQixzQkFBc0I7a0JBUmxDLFNBQVM7K0JBQ0UsaUJBQWlCLGlCQUdaLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsQ0FBQyxpQkFBaUIsQ0FBQztnR0FJYyxTQUFTO3NCQUFyRCxXQUFXO3VCQUFDLHVCQUF1QjtnQkFDb0IsSUFBSTtzQkFBM0QsWUFBWTt1QkFBQyw0QkFBNEIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFHRyxLQUFLO3NCQUE3RCxZQUFZO3VCQUFDLDZCQUE2QixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUdULFlBQVk7c0JBQXpELFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDTixPQUFPO3NCQUE1QyxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBRW1CLE9BQU87c0JBQTdELGVBQWU7dUJBQUMsYUFBYSxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VQb3J0YWxPdXRsZXQsIENka1BvcnRhbE91dGxldCwgQ29tcG9uZW50UG9ydGFsLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5pbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBDb21wb25lbnRSZWYsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIEVtYmVkZGVkVmlld1JlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBSZW5kZXJlcjIsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhNb3ZlQm94QW5pbWF0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFhEaWFsb2dBbmltYXRpb25FdmVudCwgWERpYWxvZ0FuaW1hdGlvblN0YXRlLCBYRGlhbG9nUmVmT3B0aW9uIH0gZnJvbSAnLi9kaWFsb2cucHJvcGVydHknO1xyXG5pbXBvcnQgeyBBbmltYXRpb25FdmVudCB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBDZGtEcmFnLCBDZGtEcmFnRW5kLCBDZGtEcmFnSGFuZGxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7IFhEaWFsb2dSZWYgfSBmcm9tICcuL2RpYWxvZy1yZWYnO1xyXG5pbXBvcnQgeyBYUmVzaXphYmxlRXZlbnQgfSBmcm9tICdAbmctbmVzdC91aS9yZXNpemFibGUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd4LWRpYWxvZy1wb3J0YWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2ctcG9ydGFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kaWFsb2ctcG9ydGFsLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBhbmltYXRpb25zOiBbWE1vdmVCb3hBbmltYXRpb25dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYRGlhbG9nUG9ydGFsQ29tcG9uZW50IGV4dGVuZHMgQmFzZVBvcnRhbE91dGxldCB7XHJcbiAgLy8gQEhvc3RCaW5kaW5nKCdjbGFzcy54LWRpYWxvZy1wb3J0YWwnKSBfaGFzID0gdHJ1ZTtcclxuICBASG9zdEJpbmRpbmcoJ0B4LW1vdmUtYm94LWFuaW1hdGlvbicpIHB1YmxpYyBwbGFjZW1lbnQ/OiBYRGlhbG9nQW5pbWF0aW9uU3RhdGU7XHJcbiAgQEhvc3RMaXN0ZW5lcignQHgtbW92ZS1ib3gtYW5pbWF0aW9uLmRvbmUnLCBbJyRldmVudCddKSBkb25lKHsgdG9TdGF0ZSwgdG90YWxUaW1lIH06IEFuaW1hdGlvbkV2ZW50KSB7XHJcbiAgICB0aGlzLmFuaW1hdGlvbkNoYW5nZWQubmV4dCh7IGFjdGlvbjogJ2RvbmUnLCBzdGF0ZTogdG9TdGF0ZSBhcyBYRGlhbG9nQW5pbWF0aW9uU3RhdGUsIHRvdGFsVGltZSB9KTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignQHgtbW92ZS1ib3gtYW5pbWF0aW9uLnN0YXJ0JywgWyckZXZlbnQnXSkgc3RhcnQoeyB0b1N0YXRlLCB0b3RhbFRpbWUgfTogQW5pbWF0aW9uRXZlbnQpIHtcclxuICAgIHRoaXMuYW5pbWF0aW9uQ2hhbmdlZC5uZXh0KHsgYWN0aW9uOiAnc3RhcnQnLCBzdGF0ZTogdG9TdGF0ZSBhcyBYRGlhbG9nQW5pbWF0aW9uU3RhdGUsIHRvdGFsVGltZSB9KTtcclxuICB9XHJcbiAgQFZpZXdDaGlsZChDZGtQb3J0YWxPdXRsZXQsIHsgc3RhdGljOiB0cnVlIH0pIHBvcnRhbE91dGxldCE6IENka1BvcnRhbE91dGxldDtcclxuICBAVmlld0NoaWxkKENka0RyYWcsIHsgc3RhdGljOiB0cnVlIH0pIGRyYWdSZWYhOiBDZGtEcmFnO1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKENka0RyYWdIYW5kbGUsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgaGFuZGxlcyE6IFF1ZXJ5TGlzdDxDZGtEcmFnSGFuZGxlPjtcclxuXHJcbiAgYW5pbWF0aW9uQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8WERpYWxvZ0FuaW1hdGlvbkV2ZW50PigpO1xyXG5cclxuICBvcHRpb24hOiBYRGlhbG9nUmVmT3B0aW9uO1xyXG4gIGRpYWxvZ1JlZiE6IFhEaWFsb2dSZWY8YW55PjtcclxuXHJcbiAgb2Zmc2V0TGVmdCA9IDA7XHJcbiAgb2Zmc2V0VG9wID0gMDtcclxuICBtaW5XaWR0aCA9ICcwcmVtJztcclxuICBtaW5IZWlnaHQgPSAnMHJlbSc7XHJcbiAgaW5pdEhlaWdodCA9IDA7XHJcbiAgaW5pdENvbnRlbnRIZWlnaHQgPSAwO1xyXG4gIGRpYWxvZ0NvbnRlbnQ/OiBIVE1MRWxlbWVudDtcclxuICBkZWZhdWx0TWF4aW1pemUgPSBmYWxzZTtcclxuICBvdmVybGF5RWxlbWVudD86IEhUTUxFbGVtZW50O1xyXG4gIGhvc3RFbGVtZW50PzogSFRNTEVsZW1lbnQ7XHJcbiAgZGlzdGFuY2UgPSB7IHg6IDAsIHk6IDAgfTtcclxuXHJcbiAgZGlhbG9nQm94OiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5kaWFsb2dCb3hbJ2RyYWdnYWJsZSddID0gdGhpcy5kZWZhdWx0TWF4aW1pemUgPyB0aGlzLmRpYWxvZ0JveFsnZHJhZ2dhYmxlJ10gOiB0aGlzLm9wdGlvbi5kcmFnZ2FibGU7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsncmVzaXphYmxlJ10gPSB0aGlzLmRlZmF1bHRNYXhpbWl6ZSA/IHRoaXMuZGlhbG9nQm94WydyZXNpemFibGUnXSA6IHRoaXMub3B0aW9uLnJlc2l6YWJsZTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGxldCBsaXN0ID0gbmV3IFF1ZXJ5TGlzdDxDZGtEcmFnSGFuZGxlPigpO1xyXG4gICAgaWYgKHRoaXMuZGlhbG9nUmVmLmRyYWdIYW5kbGVSZWZzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB0aGlzLmRpYWxvZ0JveFsnZHJhZ2dhYmxlJ10gPSBmYWxzZTtcclxuICAgICAgdGhpcy5vcHRpb24uZHJhZ2dhYmxlID0gZmFsc2U7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGZvciAobGV0IGl0ZW0gb2YgdGhpcy5kaWFsb2dSZWYuZHJhZ0hhbmRsZVJlZnMpIHtcclxuICAgICAgbGlzdC5yZXNldChbLi4ubGlzdC50b0FycmF5KCksIG5ldyBDZGtEcmFnSGFuZGxlKGl0ZW0sIHRoaXMuZHJhZ1JlZildKTtcclxuICAgIH1cclxuICAgIHRoaXMuZHJhZ1JlZi5faGFuZGxlcyA9IGxpc3Q7XHJcbiAgfVxyXG5cclxuICBhdHRhY2hDb21wb25lbnRQb3J0YWw8VD4ocG9ydGFsOiBDb21wb25lbnRQb3J0YWw8VD4pOiBDb21wb25lbnRSZWY8VD4ge1xyXG4gICAgaWYgKHRoaXMucG9ydGFsT3V0bGV0Lmhhc0F0dGFjaGVkKCkpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ2RpYWxvZyBwb3J0YWwgaGFzIGF0dGFjaGVkJyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5wb3J0YWxPdXRsZXQuYXR0YWNoQ29tcG9uZW50UG9ydGFsKHBvcnRhbCk7XHJcbiAgfVxyXG4gIGF0dGFjaFRlbXBsYXRlUG9ydGFsPEM+KHBvcnRhbDogVGVtcGxhdGVQb3J0YWw8Qz4pOiBFbWJlZGRlZFZpZXdSZWY8Qz4ge1xyXG4gICAgaWYgKHRoaXMucG9ydGFsT3V0bGV0Lmhhc0F0dGFjaGVkKCkpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ2RpYWxvZyBwb3J0YWwgaGFzIGF0dGFjaGVkJyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5wb3J0YWxPdXRsZXQuYXR0YWNoVGVtcGxhdGVQb3J0YWwocG9ydGFsKTtcclxuICB9XHJcblxyXG4gIHJlc2l6aW5nKGV2ZW50OiBYUmVzaXphYmxlRXZlbnQpIHtcclxuICAgIGNvbnN0IGNvbnRlbnRIZWlnaHQgPSBOdW1iZXIodGhpcy5pbml0Q29udGVudEhlaWdodCkgKyBOdW1iZXIoZXZlbnQuY2xpZW50SGVpZ2h0KSAtIE51bWJlcih0aGlzLmluaXRIZWlnaHQpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRpYWxvZ0NvbnRlbnQsICdtYXgtaGVpZ2h0JywgJ2luaXRpYWwnKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kaWFsb2dDb250ZW50LCAnZmxleCcsICdpbml0aWFsJyk7XHJcbiAgICBpZiAoWyd0b3Atc3RhcnQnLCAndG9wLWVuZCcsICdib3R0b20nLCAndG9wJywgJ2JvdHRvbS1zdGFydCcsICdib3R0b20tZW5kJ10uaW5jbHVkZXMoZXZlbnQuZGlyZWN0aW9uIGFzIHN0cmluZykpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRpYWxvZ0NvbnRlbnQsICdoZWlnaHQnLCBgJHtjb250ZW50SGVpZ2h0fXB4YCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkRyYWdFbmRlZChldmVudDogQ2RrRHJhZ0VuZCkge1xyXG4gICAgdGhpcy5kaXN0YW5jZSA9IHsgeDogdGhpcy5kaXN0YW5jZS54ICsgZXZlbnQuZGlzdGFuY2UueCwgeTogdGhpcy5kaXN0YW5jZS55ICsgZXZlbnQuZGlzdGFuY2UueSB9O1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJ4LWRpYWxvZy1wb3J0YWxcIlxyXG4gICNkcmFnUmVmXHJcbiAgY2RrRHJhZ1xyXG4gIFtjZGtEcmFnRGlzYWJsZWRdPVwiIW9wdGlvbi5kcmFnZ2FibGUgJiYgIWRpYWxvZ0JveFsnZHJhZ2dhYmxlJ11cIlxyXG4gIFtjZGtEcmFnQm91bmRhcnldPVwiJy5jZGstb3ZlcmxheS1jb250YWluZXInXCJcclxuICBbY2RrRHJhZ0ZyZWVEcmFnUG9zaXRpb25dPVwiZGlhbG9nQm94WydkaXN0YW5jZSddXCJcclxuICBbeFJlc2l6YWJsZV09XCJvcHRpb24ucmVzaXphYmxlICYmIGRpYWxvZ0JveFsncmVzaXphYmxlJ10hXCJcclxuICAocmVzaXppbmcpPVwicmVzaXppbmcoJGV2ZW50KVwiXHJcbiAgKGNka0RyYWdFbmRlZCk9XCJvbkRyYWdFbmRlZCgkZXZlbnQpXCJcclxuICBbb2Zmc2V0TGVmdF09XCJvZmZzZXRMZWZ0XCJcclxuICBbb2Zmc2V0VG9wXT1cIm9mZnNldFRvcFwiXHJcbiAgW3N0eWxlLm1pbldpZHRoXT1cImRpYWxvZ0JveFsnbWluV2lkdGgnXVwiXHJcbiAgW3N0eWxlLm1pbkhlaWdodF09XCJkaWFsb2dCb3hbJ21pbkhlaWdodCddXCJcclxuPlxyXG4gIDxuZy10ZW1wbGF0ZSBjZGtQb3J0YWxPdXRsZXQ+PC9uZy10ZW1wbGF0ZT5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -9,9 +9,9 @@ export class XDialogCloseDirective {
9
9
  this.dialogRef && this.dialogRef.close();
10
10
  }
11
11
  }
12
- /** @nocollapse */ /** @nocollapse */ XDialogCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogCloseDirective, deps: [{ token: i1.XDialogRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
13
- /** @nocollapse */ /** @nocollapse */ XDialogCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: XDialogCloseDirective, selector: "[x-dialog-close]", host: { listeners: { "click": "onCloseClick($event)" } }, ngImport: i0 });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogCloseDirective, decorators: [{
12
+ /** @nocollapse */ /** @nocollapse */ XDialogCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogCloseDirective, deps: [{ token: i1.XDialogRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
13
+ /** @nocollapse */ /** @nocollapse */ XDialogCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: XDialogCloseDirective, selector: "[x-dialog-close]", host: { listeners: { "click": "onCloseClick($event)" } }, ngImport: i0 });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogCloseDirective, decorators: [{
15
15
  type: Directive,
16
16
  args: [{
17
17
  selector: `[x-dialog-close]`
@@ -27,9 +27,9 @@ export class XDialogTitleDirective {
27
27
  this._has = true;
28
28
  }
29
29
  }
30
- /** @nocollapse */ /** @nocollapse */ XDialogTitleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
31
- /** @nocollapse */ /** @nocollapse */ XDialogTitleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: XDialogTitleDirective, selector: "[x-dialog-title]", host: { properties: { "class.x-dialog-portal-title": "this._has" } }, ngImport: i0 });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogTitleDirective, decorators: [{
30
+ /** @nocollapse */ /** @nocollapse */ XDialogTitleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
31
+ /** @nocollapse */ /** @nocollapse */ XDialogTitleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: XDialogTitleDirective, selector: "[x-dialog-title]", host: { properties: { "class.x-dialog-portal-title": "this._has" } }, ngImport: i0 });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogTitleDirective, decorators: [{
33
33
  type: Directive,
34
34
  args: [{
35
35
  selector: `[x-dialog-title]`
@@ -43,9 +43,9 @@ export class XDialogContentDirective {
43
43
  this._has = true;
44
44
  }
45
45
  }
46
- /** @nocollapse */ /** @nocollapse */ XDialogContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
47
- /** @nocollapse */ /** @nocollapse */ XDialogContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: XDialogContentDirective, selector: "[x-dialog-content], x-dialog-content", host: { properties: { "class.x-dialog-portal-content": "this._has" } }, ngImport: i0 });
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogContentDirective, decorators: [{
46
+ /** @nocollapse */ /** @nocollapse */ XDialogContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
47
+ /** @nocollapse */ /** @nocollapse */ XDialogContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: XDialogContentDirective, selector: "[x-dialog-content], x-dialog-content", host: { properties: { "class.x-dialog-portal-content": "this._has" } }, ngImport: i0 });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogContentDirective, decorators: [{
49
49
  type: Directive,
50
50
  args: [{
51
51
  selector: `[x-dialog-content], x-dialog-content`
@@ -59,9 +59,9 @@ export class XDialogActionsDirective {
59
59
  this._has = true;
60
60
  }
61
61
  }
62
- /** @nocollapse */ /** @nocollapse */ XDialogActionsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogActionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
63
- /** @nocollapse */ /** @nocollapse */ XDialogActionsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: XDialogActionsDirective, selector: "[x-dialog-actions], x-dialog-actions", host: { properties: { "class.x-dialog-portal-actions": "this._has" } }, ngImport: i0 });
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogActionsDirective, decorators: [{
62
+ /** @nocollapse */ /** @nocollapse */ XDialogActionsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogActionsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
63
+ /** @nocollapse */ /** @nocollapse */ XDialogActionsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: XDialogActionsDirective, selector: "[x-dialog-actions], x-dialog-actions", host: { properties: { "class.x-dialog-portal-actions": "this._has" } }, ngImport: i0 });
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogActionsDirective, decorators: [{
65
65
  type: Directive,
66
66
  args: [{
67
67
  selector: `[x-dialog-actions], x-dialog-actions`
@@ -82,9 +82,9 @@ export class XDialogDragHandleDirective {
82
82
  this.dialogRef.dragHandleRefs.push(this.elementRef);
83
83
  }
84
84
  }
85
- /** @nocollapse */ /** @nocollapse */ XDialogDragHandleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogDragHandleDirective, deps: [{ token: i1.XDialogRef, optional: true }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
86
- /** @nocollapse */ /** @nocollapse */ XDialogDragHandleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: XDialogDragHandleDirective, selector: "[x-dialog-drag-handle], x-dialog-drag-handle", host: { properties: { "class.x-dialog-portal-drag-handle": "this.getDraggable" } }, ngImport: i0 });
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogDragHandleDirective, decorators: [{
85
+ /** @nocollapse */ /** @nocollapse */ XDialogDragHandleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogDragHandleDirective, deps: [{ token: i1.XDialogRef, optional: true }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
86
+ /** @nocollapse */ /** @nocollapse */ XDialogDragHandleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: XDialogDragHandleDirective, selector: "[x-dialog-drag-handle], x-dialog-drag-handle", host: { properties: { "class.x-dialog-portal-drag-handle": "this.getDraggable" } }, ngImport: i0 });
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogDragHandleDirective, decorators: [{
88
88
  type: Directive,
89
89
  args: [{
90
90
  selector: `[x-dialog-drag-handle], x-dialog-drag-handle`
@@ -103,9 +103,9 @@ export class XDialogFullscreenDirective {
103
103
  this.dialogRef && this.dialogRef.onFullscreen();
104
104
  }
105
105
  }
106
- /** @nocollapse */ /** @nocollapse */ XDialogFullscreenDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogFullscreenDirective, deps: [{ token: i1.XDialogRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
107
- /** @nocollapse */ /** @nocollapse */ XDialogFullscreenDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: XDialogFullscreenDirective, selector: "[x-dialog-fullscreen], x-dialog-fullscreen", host: { listeners: { "click": "onFullscreenClick($event)" } }, ngImport: i0 });
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogFullscreenDirective, decorators: [{
106
+ /** @nocollapse */ /** @nocollapse */ XDialogFullscreenDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogFullscreenDirective, deps: [{ token: i1.XDialogRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
107
+ /** @nocollapse */ /** @nocollapse */ XDialogFullscreenDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: XDialogFullscreenDirective, selector: "[x-dialog-fullscreen], x-dialog-fullscreen", host: { listeners: { "click": "onFullscreenClick($event)" } }, ngImport: i0 });
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogFullscreenDirective, decorators: [{
109
109
  type: Directive,
110
110
  args: [{
111
111
  selector: `[x-dialog-fullscreen], x-dialog-fullscreen`
@@ -116,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
116
116
  type: HostListener,
117
117
  args: ['click', ['$event']]
118
118
  }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXBvcnRhbC5kaXJlY3RpdmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZGlhbG9nL2RpYWxvZy1wb3J0YWwuZGlyZWN0aXZlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFdBQVcsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNM0YsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUErQixTQUEwQjtRQUExQixjQUFTLEdBQVQsU0FBUyxDQUFpQjtJQUFHLENBQUM7SUFIMUIsWUFBWTtRQUM3QyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDM0MsQ0FBQzs7d0pBSFUscUJBQXFCOzRJQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2lCQUM3Qjs7MEJBS2MsUUFBUTs0Q0FIYyxZQUFZO3NCQUE5QyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQzs7QUFTbkMsTUFBTSxPQUFPLHFCQUFxQjtJQUhsQztRQUk4QyxTQUFJLEdBQUcsSUFBSSxDQUFDO0tBQ3pEOzt3SkFGWSxxQkFBcUI7NElBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7aUJBQzdCOzhCQUU2QyxJQUFJO3NCQUEvQyxXQUFXO3VCQUFDLDZCQUE2Qjs7QUFNNUMsTUFBTSxPQUFPLHVCQUF1QjtJQUhwQztRQUlnRCxTQUFJLEdBQUcsSUFBSSxDQUFDO0tBQzNEOzswSkFGWSx1QkFBdUI7OElBQXZCLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQUhuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQ0FBc0M7aUJBQ2pEOzhCQUUrQyxJQUFJO3NCQUFqRCxXQUFXO3VCQUFDLCtCQUErQjs7QUFNOUMsTUFBTSxPQUFPLHVCQUF1QjtJQUhwQztRQUlnRCxTQUFJLEdBQUcsSUFBSSxDQUFDO0tBQzNEOzswSkFGWSx1QkFBdUI7OElBQXZCLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQUhuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQ0FBc0M7aUJBQ2pEOzhCQUUrQyxJQUFJO3NCQUFqRCxXQUFXO3VCQUFDLCtCQUErQjs7QUFNOUMsTUFBTSxPQUFPLDBCQUEwQjtJQUlyQyxZQUErQixTQUEwQixFQUFVLFVBQXNCO1FBQTFELGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFHLENBQUM7SUFIN0YsSUFBc0QsWUFBWTtRQUNoRSxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO0lBQ3ZFLENBQUM7SUFHRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0RCxDQUFDOzs2SkFSVSwwQkFBMEI7aUpBQTFCLDBCQUEwQjsyRkFBMUIsMEJBQTBCO2tCQUh0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw4Q0FBOEM7aUJBQ3pEOzswQkFLYyxRQUFRO3FFQUhpQyxZQUFZO3NCQUFqRSxXQUFXO3VCQUFDLG1DQUFtQzs7QUFhbEQsTUFBTSxPQUFPLDBCQUEwQjtJQUlyQyxZQUErQixTQUEwQjtRQUExQixjQUFTLEdBQVQsU0FBUyxDQUFpQjtJQUFHLENBQUM7SUFIMUIsaUJBQWlCO1FBQ2xELElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNsRCxDQUFDOzs2SkFIVSwwQkFBMEI7aUpBQTFCLDBCQUEwQjsyRkFBMUIsMEJBQTBCO2tCQUh0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0Q0FBNEM7aUJBQ3ZEOzswQkFLYyxRQUFROzRDQUhjLGlCQUFpQjtzQkFBbkQsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhEaWFsb2dSZWYgfSBmcm9tICcuL2RpYWxvZy1yZWYnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IGBbeC1kaWFsb2ctY2xvc2VdYFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERpYWxvZ0Nsb3NlRGlyZWN0aXZlIHtcclxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pIG9uQ2xvc2VDbGljaygpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmICYmIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHB1YmxpYyBkaWFsb2dSZWY6IFhEaWFsb2dSZWY8YW55Pikge31cclxufVxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IGBbeC1kaWFsb2ctdGl0bGVdYFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERpYWxvZ1RpdGxlRGlyZWN0aXZlIHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtZGlhbG9nLXBvcnRhbC10aXRsZScpIF9oYXMgPSB0cnVlO1xyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogYFt4LWRpYWxvZy1jb250ZW50XSwgeC1kaWFsb2ctY29udGVudGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFhEaWFsb2dDb250ZW50RGlyZWN0aXZlIHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtZGlhbG9nLXBvcnRhbC1jb250ZW50JykgX2hhcyA9IHRydWU7XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBgW3gtZGlhbG9nLWFjdGlvbnNdLCB4LWRpYWxvZy1hY3Rpb25zYFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERpYWxvZ0FjdGlvbnNEaXJlY3RpdmUge1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MueC1kaWFsb2ctcG9ydGFsLWFjdGlvbnMnKSBfaGFzID0gdHJ1ZTtcclxufVxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IGBbeC1kaWFsb2ctZHJhZy1oYW5kbGVdLCB4LWRpYWxvZy1kcmFnLWhhbmRsZWBcclxufSlcclxuZXhwb3J0IGNsYXNzIFhEaWFsb2dEcmFnSGFuZGxlRGlyZWN0aXZlIHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtZGlhbG9nLXBvcnRhbC1kcmFnLWhhbmRsZScpIGdldCBnZXREcmFnZ2FibGUoKSB7XHJcbiAgICByZXR1cm4gIXRoaXMuZGlhbG9nUmVmLmZ1bGxzY3JlZW4gJiYgdGhpcy5kaWFsb2dSZWYub3B0aW9uLmRyYWdnYWJsZTtcclxuICB9XHJcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHVibGljIGRpYWxvZ1JlZjogWERpYWxvZ1JlZjxhbnk+LCBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuZHJhZ0hhbmRsZVJlZnMucHVzaCh0aGlzLmVsZW1lbnRSZWYpO1xyXG4gIH1cclxufVxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IGBbeC1kaWFsb2ctZnVsbHNjcmVlbl0sIHgtZGlhbG9nLWZ1bGxzY3JlZW5gXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYRGlhbG9nRnVsbHNjcmVlbkRpcmVjdGl2ZSB7XHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKSBvbkZ1bGxzY3JlZW5DbGljaygpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmICYmIHRoaXMuZGlhbG9nUmVmLm9uRnVsbHNjcmVlbigpO1xyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwdWJsaWMgZGlhbG9nUmVmOiBYRGlhbG9nUmVmPGFueT4pIHt9XHJcbn1cclxuIl19
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXBvcnRhbC5kaXJlY3RpdmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZGlhbG9nL2RpYWxvZy1wb3J0YWwuZGlyZWN0aXZlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFdBQVcsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNM0YsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUErQixTQUEwQjtRQUExQixjQUFTLEdBQVQsU0FBUyxDQUFpQjtJQUFHLENBQUM7SUFIMUIsWUFBWTtRQUM3QyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDM0MsQ0FBQzs7eUpBSFUscUJBQXFCOzZJQUFyQixxQkFBcUI7NEZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2lCQUM3Qjs7MEJBS2MsUUFBUTs0Q0FIYyxZQUFZO3NCQUE5QyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQzs7QUFTbkMsTUFBTSxPQUFPLHFCQUFxQjtJQUhsQztRQUk4QyxTQUFJLEdBQUcsSUFBSSxDQUFDO0tBQ3pEOzt5SkFGWSxxQkFBcUI7NklBQXJCLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7aUJBQzdCOzhCQUU2QyxJQUFJO3NCQUEvQyxXQUFXO3VCQUFDLDZCQUE2Qjs7QUFNNUMsTUFBTSxPQUFPLHVCQUF1QjtJQUhwQztRQUlnRCxTQUFJLEdBQUcsSUFBSSxDQUFDO0tBQzNEOzsySkFGWSx1QkFBdUI7K0lBQXZCLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQUhuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQ0FBc0M7aUJBQ2pEOzhCQUUrQyxJQUFJO3NCQUFqRCxXQUFXO3VCQUFDLCtCQUErQjs7QUFNOUMsTUFBTSxPQUFPLHVCQUF1QjtJQUhwQztRQUlnRCxTQUFJLEdBQUcsSUFBSSxDQUFDO0tBQzNEOzsySkFGWSx1QkFBdUI7K0lBQXZCLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQUhuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQ0FBc0M7aUJBQ2pEOzhCQUUrQyxJQUFJO3NCQUFqRCxXQUFXO3VCQUFDLCtCQUErQjs7QUFNOUMsTUFBTSxPQUFPLDBCQUEwQjtJQUlyQyxZQUErQixTQUEwQixFQUFVLFVBQXNCO1FBQTFELGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFHLENBQUM7SUFIN0YsSUFBc0QsWUFBWTtRQUNoRSxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO0lBQ3ZFLENBQUM7SUFHRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0RCxDQUFDOzs4SkFSVSwwQkFBMEI7a0pBQTFCLDBCQUEwQjs0RkFBMUIsMEJBQTBCO2tCQUh0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw4Q0FBOEM7aUJBQ3pEOzswQkFLYyxRQUFRO3FFQUhpQyxZQUFZO3NCQUFqRSxXQUFXO3VCQUFDLG1DQUFtQzs7QUFhbEQsTUFBTSxPQUFPLDBCQUEwQjtJQUlyQyxZQUErQixTQUEwQjtRQUExQixjQUFTLEdBQVQsU0FBUyxDQUFpQjtJQUFHLENBQUM7SUFIMUIsaUJBQWlCO1FBQ2xELElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNsRCxDQUFDOzs4SkFIVSwwQkFBMEI7a0pBQTFCLDBCQUEwQjs0RkFBMUIsMEJBQTBCO2tCQUh0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0Q0FBNEM7aUJBQ3ZEOzswQkFLYyxRQUFROzRDQUhjLGlCQUFpQjtzQkFBbkQsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhEaWFsb2dSZWYgfSBmcm9tICcuL2RpYWxvZy1yZWYnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IGBbeC1kaWFsb2ctY2xvc2VdYFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERpYWxvZ0Nsb3NlRGlyZWN0aXZlIHtcclxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pIG9uQ2xvc2VDbGljaygpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmICYmIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHB1YmxpYyBkaWFsb2dSZWY6IFhEaWFsb2dSZWY8YW55Pikge31cclxufVxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IGBbeC1kaWFsb2ctdGl0bGVdYFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERpYWxvZ1RpdGxlRGlyZWN0aXZlIHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtZGlhbG9nLXBvcnRhbC10aXRsZScpIF9oYXMgPSB0cnVlO1xyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogYFt4LWRpYWxvZy1jb250ZW50XSwgeC1kaWFsb2ctY29udGVudGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFhEaWFsb2dDb250ZW50RGlyZWN0aXZlIHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtZGlhbG9nLXBvcnRhbC1jb250ZW50JykgX2hhcyA9IHRydWU7XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBgW3gtZGlhbG9nLWFjdGlvbnNdLCB4LWRpYWxvZy1hY3Rpb25zYFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERpYWxvZ0FjdGlvbnNEaXJlY3RpdmUge1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MueC1kaWFsb2ctcG9ydGFsLWFjdGlvbnMnKSBfaGFzID0gdHJ1ZTtcclxufVxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IGBbeC1kaWFsb2ctZHJhZy1oYW5kbGVdLCB4LWRpYWxvZy1kcmFnLWhhbmRsZWBcclxufSlcclxuZXhwb3J0IGNsYXNzIFhEaWFsb2dEcmFnSGFuZGxlRGlyZWN0aXZlIHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtZGlhbG9nLXBvcnRhbC1kcmFnLWhhbmRsZScpIGdldCBnZXREcmFnZ2FibGUoKSB7XHJcbiAgICByZXR1cm4gIXRoaXMuZGlhbG9nUmVmLmZ1bGxzY3JlZW4gJiYgdGhpcy5kaWFsb2dSZWYub3B0aW9uLmRyYWdnYWJsZTtcclxuICB9XHJcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHVibGljIGRpYWxvZ1JlZjogWERpYWxvZ1JlZjxhbnk+LCBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuZHJhZ0hhbmRsZVJlZnMucHVzaCh0aGlzLmVsZW1lbnRSZWYpO1xyXG4gIH1cclxufVxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IGBbeC1kaWFsb2ctZnVsbHNjcmVlbl0sIHgtZGlhbG9nLWZ1bGxzY3JlZW5gXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYRGlhbG9nRnVsbHNjcmVlbkRpcmVjdGl2ZSB7XHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKSBvbkZ1bGxzY3JlZW5DbGljaygpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmICYmIHRoaXMuZGlhbG9nUmVmLm9uRnVsbHNjcmVlbigpO1xyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwdWJsaWMgZGlhbG9nUmVmOiBYRGlhbG9nUmVmPGFueT4pIHt9XHJcbn1cclxuIl19
@@ -1,6 +1,6 @@
1
- import { Component, ViewEncapsulation, ChangeDetectionStrategy, ViewChild } from '@angular/core';
2
- import { XMoveBoxAnimation, XIsChange, XIsFunction } from '@ng-nest/ui/core';
3
- import { XDialogPrefix, XDialogProperty, XDialogContainer } from './dialog.property';
1
+ import { Component, ViewEncapsulation, ChangeDetectionStrategy, ViewChild, Optional, Inject, HostBinding } from '@angular/core';
2
+ import { XMoveBoxAnimation, XIsChange, XIsFunction, XIsEmpty, XClearClass, XOpacityAnimation } from '@ng-nest/ui/core';
3
+ import { XDialogPrefix, XDialogProperty, XDialogContainer, X_DIALOG_CONTAINER } from './dialog.property';
4
4
  import { PortalResizablePrefix } from '@ng-nest/ui/portal';
5
5
  import { Subject } from 'rxjs';
6
6
  import { map, takeUntil } from 'rxjs/operators';
@@ -8,12 +8,14 @@ import * as i0 from "@angular/core";
8
8
  import * as i1 from "@ng-nest/ui/portal";
9
9
  import * as i2 from "@angular/cdk/overlay";
10
10
  import * as i3 from "@ng-nest/ui/i18n";
11
- import * as i4 from "@ng-nest/ui/alert";
12
- import * as i5 from "@ng-nest/ui/button";
13
- import * as i6 from "@ng-nest/ui/outlet";
11
+ import * as i4 from "@ng-nest/ui/core";
12
+ import * as i5 from "@ng-nest/ui/alert";
13
+ import * as i6 from "@ng-nest/ui/button";
14
14
  import * as i7 from "@angular/common";
15
+ import * as i8 from "@ng-nest/ui/outlet";
16
+ import * as i9 from "./dialog-container.component";
15
17
  export class XDialogComponent extends XDialogProperty {
16
- constructor(renderer, elementRef, cdr, viewContainerRef, protalService, overlay, i18n) {
18
+ constructor(renderer, elementRef, cdr, viewContainerRef, protalService, overlay, i18n, configService, container) {
17
19
  super();
18
20
  this.renderer = renderer;
19
21
  this.elementRef = elementRef;
@@ -22,6 +24,8 @@ export class XDialogComponent extends XDialogProperty {
22
24
  this.protalService = protalService;
23
25
  this.overlay = overlay;
24
26
  this.i18n = i18n;
27
+ this.configService = configService;
28
+ this.container = container;
25
29
  this.locale = {};
26
30
  this.initHeight = 0;
27
31
  this.initContentHeight = 0;
@@ -32,15 +36,30 @@ export class XDialogComponent extends XDialogProperty {
32
36
  this.distance = { x: 0, y: 0 };
33
37
  this.viewInit = false;
34
38
  this.action = null;
39
+ this.containerInit = false;
35
40
  this._unSubject = new Subject();
36
41
  this.scrollStrategy = this.protalService.overlay.scrollStrategies.block();
37
42
  }
43
+ get getVisible() {
44
+ return this.visible;
45
+ }
38
46
  get getCancelText() {
39
47
  return this.cancelText || this.locale.cancelText;
40
48
  }
41
49
  get getConfirmText() {
42
50
  return this.confirmText || this.locale.confirmText;
43
51
  }
52
+ get getStyle() {
53
+ return this.container
54
+ ? {
55
+ ...this.protalService.setContainerStyle(this.placement, this.offset),
56
+ width: this.width,
57
+ height: this.height,
58
+ minWidth: this.minWidth,
59
+ minHeight: this.minHeight
60
+ }
61
+ : {};
62
+ }
44
63
  ngOnInit() {
45
64
  this.i18n.localeChange
46
65
  .pipe(map((x) => x.dialog), takeUntil(this._unSubject))
@@ -50,10 +69,14 @@ export class XDialogComponent extends XDialogProperty {
50
69
  });
51
70
  this.dialogBox['draggable'] = this.draggable;
52
71
  this.dialogBox['resizable'] = this.resizable;
72
+ this.setClassMap();
53
73
  }
54
74
  ngOnChanges(changes) {
55
- const { visible } = changes;
75
+ const { visible, placement } = changes;
56
76
  XIsChange(visible) && this.setVisible();
77
+ if (XIsChange(placement)) {
78
+ this.setClassMap();
79
+ }
57
80
  }
58
81
  ngOnDestroy() {
59
82
  this.unsubscribe();
@@ -67,6 +90,18 @@ export class XDialogComponent extends XDialogProperty {
67
90
  unsubscribe() {
68
91
  this.backdropClick$?.unsubscribe();
69
92
  }
93
+ setClassMap() {
94
+ for (let key in this.classMap) {
95
+ this.renderer.removeClass(this.elementRef.nativeElement, key);
96
+ }
97
+ XClearClass(this.classMap);
98
+ this.classMap = {
99
+ [`${XDialogPrefix}-${this.placement}`]: !XIsEmpty(this.placement)
100
+ };
101
+ for (let key in this.classMap) {
102
+ this.renderer.addClass(this.elementRef.nativeElement, key);
103
+ }
104
+ }
70
105
  setVisible() {
71
106
  if (!this.viewInit)
72
107
  return;
@@ -78,6 +113,10 @@ export class XDialogComponent extends XDialogProperty {
78
113
  }
79
114
  }
80
115
  create() {
116
+ if (this.container) {
117
+ this.containerInit = true;
118
+ return;
119
+ }
81
120
  this.dialogRef = this.protalService.attach({
82
121
  content: this.dialogTpl,
83
122
  viewContainerRef: this.viewContainerRef,
@@ -131,7 +170,9 @@ export class XDialogComponent extends XDialogProperty {
131
170
  return this.dialogRef?.overlayRef?.hasAttached();
132
171
  }
133
172
  onClose(action, execFunction = true) {
134
- if (!this.portalAttached())
173
+ if (!this.portalAttached() && !this.container)
174
+ return;
175
+ if (this.container && !this.containerInit)
135
176
  return;
136
177
  if (XIsFunction(this.beforeClose) && execFunction) {
137
178
  this.beforeClose(action);
@@ -140,14 +181,17 @@ export class XDialogComponent extends XDialogProperty {
140
181
  else {
141
182
  this.visible = false;
142
183
  this.visibleChange.emit(this.visible);
143
- this.dialogRef?.overlayRef?.detach();
144
- this.unsubscribe();
184
+ if (this.portalAttached()) {
185
+ this.dialogRef?.overlayRef?.detach();
186
+ this.unsubscribe();
187
+ }
145
188
  if ([action, this.action].includes('confirm')) {
146
189
  this.confirm.emit();
147
190
  }
148
191
  if ([action, this.action].includes('cancel')) {
149
192
  this.cancel.emit();
150
193
  }
194
+ this.containerInit = false;
151
195
  this.action = null;
152
196
  this.close.emit();
153
197
  }
@@ -237,13 +281,21 @@ export class XDialogComponent extends XDialogProperty {
237
281
  }
238
282
  }
239
283
  }
240
- /** @nocollapse */ /** @nocollapse */ XDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i1.XPortalService }, { token: i2.Overlay }, { token: i3.XI18nService }], target: i0.ɵɵFactoryTarget.Component });
241
- /** @nocollapse */ /** @nocollapse */ XDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: XDialogComponent, selector: "x-dialog", viewQueries: [{ propertyName: "dialogTpl", first: true, predicate: ["dialogTpl"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-template #dialogTpl>\r\n <div\r\n class=\"x-dialog\"\r\n [@x-move-box-animation]=\"placement\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n [class.x-dialog-maximize]=\"isMaximize\"\r\n [class.x-dialog-resizable]=\"resizable\"\r\n [class.x-dialog-default-maximize]=\"isDefaultMaximize\"\r\n >\r\n <x-alert\r\n [draggable]=\"draggable && dialogBox['draggable']\"\r\n [resizable]=\"resizable && dialogBox['resizable']\"\r\n [dragFreeDragPosition]=\"dialogBox['distance']\"\r\n [offsetLeft]=\"offsetLeft\"\r\n [offsetTop]=\"offsetTop\"\r\n [minWidth]=\"dialogBox['minWidth']\"\r\n [minHeight]=\"dialogBox['minHeight']\"\r\n [dragBoundary]=\"'.cdk-overlay-container'\"\r\n [title]=\"title\"\r\n [content]=\"contentTpl\"\r\n [type]=\"type\"\r\n [effect]=\"effect\"\r\n [hideClose]=\"hideClose\"\r\n [closeText]=\"closeText\"\r\n [operationTpl]=\"operationTpl\"\r\n (close)=\"onClose('close')\"\r\n (dragEnded)=\"onDragEnded($event)\"\r\n (resizing)=\"onResizing($event)\"\r\n showIcon=\"false\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #contentTpl>\r\n <div class=\"x-dialog-inner\">\r\n <div class=\"x-dialog-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"x-dialog-buttons\" [class.x-dialog-buttons-center]=\"buttonsCenter\">\r\n <ng-container *xOutlet=\"footer\">\r\n <x-buttons space=\"1\" *ngIf=\"showCancel || showConfirm\">\r\n <x-button *ngIf=\"showCancel\" (click)=\"onClose('cancel')\">{{ getCancelText }}</x-button>\r\n <x-button *ngIf=\"showConfirm\" type=\"primary\" (click)=\"onClose('confirm')\">{{ getConfirmText }}</x-button>\r\n </x-buttons>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #operationTpl>\r\n <ng-container *ngIf=\"maximize || resizable\">\r\n <x-button size=\"small\" [icon]=\"isMaximize ? 'fto-minimize' : 'fto-maximize'\" [onlyIcon]=\"true\" (click)=\"onSize()\"></x-button>\r\n </ng-container>\r\n</ng-template>\r\n", styles: [".x-dialog{margin:0;padding:0;width:100%;height:100%}.x-dialog>x-alert{height:100%}.x-dialog>x-alert .x-alert{min-height:100%;height:-moz-fit-content;height:fit-content;align-items:inherit;padding:0}.x-dialog>x-alert .x-alert-inner{min-height:100%;display:flex;flex-direction:column}.x-dialog>x-alert .x-alert-title{padding:1rem 1rem 0}.x-dialog>x-alert .x-alert-content{flex:1;display:flex;flex-direction:column;padding:0 1rem .5rem}.x-dialog-inner{display:flex;flex-direction:column;margin:.5rem 0;flex:1}.x-dialog-buttons{display:flex;justify-content:flex-end}.x-dialog-buttons>x-buttons{margin-top:1rem;align-self:flex-end}.x-dialog-buttons-center{justify-content:center}.x-dialog-content{display:inline-flex;flex-direction:column;flex:1;max-height:70vh;overflow:auto;min-height:2rem}.x-dialog-maximize>x-alert .x-alert{left:0!important;top:0!important}.x-dialog-maximize .x-dialog-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important}.x-dialog-default-maximize .x-dialog-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important;flex:initial}.x-dialog-container x-dialog{width:100%}\n"], components: [{ type: i4.XAlertComponent, selector: "x-alert" }, { type: i5.XButtonsComponent, selector: "x-buttons" }, { type: i5.XButtonComponent, selector: "x-button" }], directives: [{ type: i6.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [XMoveBoxAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
242
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: XDialogComponent, decorators: [{
284
+ /** @nocollapse */ /** @nocollapse */ XDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i1.XPortalService }, { token: i2.Overlay }, { token: i3.XI18nService }, { token: i4.XConfigService }, { token: X_DIALOG_CONTAINER, optional: true }], target: i0.ɵɵFactoryTarget.Component });
285
+ /** @nocollapse */ /** @nocollapse */ XDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: XDialogComponent, selector: "x-dialog", host: { properties: { "class.x-dialog-visible": "this.getVisible" } }, viewQueries: [{ propertyName: "dialogTpl", first: true, predicate: ["dialogTpl"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-template #dialogTpl>\r\n <div class=\"x-dialog-backdrop\" *ngIf=\"container && hasBackdrop\" [@x-opacity-animation]=\"visible\" (click)=\"onClose('close')\"></div>\r\n <div\r\n class=\"x-dialog\"\r\n [@x-move-box-animation]=\"placement\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n [class.x-dialog-maximize]=\"isMaximize\"\r\n [class.x-dialog-resizable]=\"resizable\"\r\n [class.x-dialog-default-maximize]=\"isDefaultMaximize\"\r\n [ngStyle]=\"getStyle\"\r\n >\r\n <x-alert\r\n [draggable]=\"draggable && dialogBox['draggable']\"\r\n [resizable]=\"resizable && dialogBox['resizable']\"\r\n [dragFreeDragPosition]=\"dialogBox['distance']\"\r\n [offsetLeft]=\"offsetLeft\"\r\n [offsetTop]=\"offsetTop\"\r\n [minWidth]=\"dialogBox['minWidth']\"\r\n [minHeight]=\"dialogBox['minHeight']\"\r\n [dragBoundary]=\"'.cdk-overlay-container'\"\r\n [title]=\"title\"\r\n [content]=\"contentTpl\"\r\n [type]=\"type\"\r\n [effect]=\"effect\"\r\n [hideClose]=\"hideClose\"\r\n [closeText]=\"closeText\"\r\n [operationTpl]=\"operationTpl\"\r\n (close)=\"onClose('close')\"\r\n (dragEnded)=\"onDragEnded($event)\"\r\n (resizing)=\"onResizing($event)\"\r\n showIcon=\"false\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #contentTpl>\r\n <div class=\"x-dialog-inner\">\r\n <div class=\"x-dialog-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"x-dialog-buttons\" [class.x-dialog-buttons-center]=\"buttonsCenter\">\r\n <ng-container *xOutlet=\"footer\">\r\n <x-buttons space=\"1\" *ngIf=\"showCancel || showConfirm\">\r\n <x-button *ngIf=\"showCancel\" (click)=\"onClose('cancel')\">{{ getCancelText }}</x-button>\r\n <x-button *ngIf=\"showConfirm\" type=\"primary\" (click)=\"onClose('confirm')\">{{ getConfirmText }}</x-button>\r\n </x-buttons>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #operationTpl>\r\n <ng-container *ngIf=\"maximize || resizable\">\r\n <x-button size=\"small\" [icon]=\"isMaximize ? 'fto-minimize' : 'fto-maximize'\" [onlyIcon]=\"true\" (click)=\"onSize()\"></x-button>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-container *ngIf=\"container && visible\">\r\n <ng-container *ngTemplateOutlet=\"dialogTpl\"></ng-container>\r\n</ng-container>\r\n", styles: [".x-dialog{margin:0;padding:0;width:100%;height:100%}.x-dialog>x-alert{height:100%}.x-dialog>x-alert .x-alert{min-height:100%;height:-moz-fit-content;height:fit-content;align-items:inherit;padding:0}.x-dialog>x-alert .x-alert-inner{min-height:100%;display:flex;flex-direction:column}.x-dialog>x-alert .x-alert-title{padding:1rem 1rem 0}.x-dialog>x-alert .x-alert-content{flex:1;display:flex;flex-direction:column;padding:0 1rem .5rem}.x-dialog-inner{display:flex;flex-direction:column;margin:.5rem 0;flex:1}.x-dialog-buttons{display:flex;justify-content:flex-end}.x-dialog-buttons>x-buttons{margin-top:1rem;align-self:flex-end}.x-dialog-buttons-center{justify-content:center}.x-dialog-content{display:inline-flex;flex-direction:column;flex:1;max-height:70vh;overflow:auto;min-height:2rem}.x-dialog-maximize>x-alert .x-alert{left:0!important;top:0!important}.x-dialog-maximize .x-dialog-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important}.x-dialog-default-maximize .x-dialog-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important;flex:initial}\n"], components: [{ type: i5.XAlertComponent, selector: "x-alert" }, { type: i6.XButtonsComponent, selector: "x-buttons" }, { type: i6.XButtonComponent, selector: "x-button" }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i8.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], animations: [XMoveBoxAnimation, XOpacityAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
286
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: XDialogComponent, decorators: [{
243
287
  type: Component,
244
- args: [{ selector: `${XDialogPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XMoveBoxAnimation], template: "<ng-template #dialogTpl>\r\n <div\r\n class=\"x-dialog\"\r\n [@x-move-box-animation]=\"placement\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n [class.x-dialog-maximize]=\"isMaximize\"\r\n [class.x-dialog-resizable]=\"resizable\"\r\n [class.x-dialog-default-maximize]=\"isDefaultMaximize\"\r\n >\r\n <x-alert\r\n [draggable]=\"draggable && dialogBox['draggable']\"\r\n [resizable]=\"resizable && dialogBox['resizable']\"\r\n [dragFreeDragPosition]=\"dialogBox['distance']\"\r\n [offsetLeft]=\"offsetLeft\"\r\n [offsetTop]=\"offsetTop\"\r\n [minWidth]=\"dialogBox['minWidth']\"\r\n [minHeight]=\"dialogBox['minHeight']\"\r\n [dragBoundary]=\"'.cdk-overlay-container'\"\r\n [title]=\"title\"\r\n [content]=\"contentTpl\"\r\n [type]=\"type\"\r\n [effect]=\"effect\"\r\n [hideClose]=\"hideClose\"\r\n [closeText]=\"closeText\"\r\n [operationTpl]=\"operationTpl\"\r\n (close)=\"onClose('close')\"\r\n (dragEnded)=\"onDragEnded($event)\"\r\n (resizing)=\"onResizing($event)\"\r\n showIcon=\"false\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #contentTpl>\r\n <div class=\"x-dialog-inner\">\r\n <div class=\"x-dialog-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"x-dialog-buttons\" [class.x-dialog-buttons-center]=\"buttonsCenter\">\r\n <ng-container *xOutlet=\"footer\">\r\n <x-buttons space=\"1\" *ngIf=\"showCancel || showConfirm\">\r\n <x-button *ngIf=\"showCancel\" (click)=\"onClose('cancel')\">{{ getCancelText }}</x-button>\r\n <x-button *ngIf=\"showConfirm\" type=\"primary\" (click)=\"onClose('confirm')\">{{ getConfirmText }}</x-button>\r\n </x-buttons>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #operationTpl>\r\n <ng-container *ngIf=\"maximize || resizable\">\r\n <x-button size=\"small\" [icon]=\"isMaximize ? 'fto-minimize' : 'fto-maximize'\" [onlyIcon]=\"true\" (click)=\"onSize()\"></x-button>\r\n </ng-container>\r\n</ng-template>\r\n", styles: [".x-dialog{margin:0;padding:0;width:100%;height:100%}.x-dialog>x-alert{height:100%}.x-dialog>x-alert .x-alert{min-height:100%;height:-moz-fit-content;height:fit-content;align-items:inherit;padding:0}.x-dialog>x-alert .x-alert-inner{min-height:100%;display:flex;flex-direction:column}.x-dialog>x-alert .x-alert-title{padding:1rem 1rem 0}.x-dialog>x-alert .x-alert-content{flex:1;display:flex;flex-direction:column;padding:0 1rem .5rem}.x-dialog-inner{display:flex;flex-direction:column;margin:.5rem 0;flex:1}.x-dialog-buttons{display:flex;justify-content:flex-end}.x-dialog-buttons>x-buttons{margin-top:1rem;align-self:flex-end}.x-dialog-buttons-center{justify-content:center}.x-dialog-content{display:inline-flex;flex-direction:column;flex:1;max-height:70vh;overflow:auto;min-height:2rem}.x-dialog-maximize>x-alert .x-alert{left:0!important;top:0!important}.x-dialog-maximize .x-dialog-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important}.x-dialog-default-maximize .x-dialog-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important;flex:initial}.x-dialog-container x-dialog{width:100%}\n"] }]
245
- }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.ViewContainerRef }, { type: i1.XPortalService }, { type: i2.Overlay }, { type: i3.XI18nService }]; }, propDecorators: { dialogTpl: [{
288
+ args: [{ selector: `${XDialogPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XMoveBoxAnimation, XOpacityAnimation], template: "<ng-template #dialogTpl>\r\n <div class=\"x-dialog-backdrop\" *ngIf=\"container && hasBackdrop\" [@x-opacity-animation]=\"visible\" (click)=\"onClose('close')\"></div>\r\n <div\r\n class=\"x-dialog\"\r\n [@x-move-box-animation]=\"placement\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n [class.x-dialog-maximize]=\"isMaximize\"\r\n [class.x-dialog-resizable]=\"resizable\"\r\n [class.x-dialog-default-maximize]=\"isDefaultMaximize\"\r\n [ngStyle]=\"getStyle\"\r\n >\r\n <x-alert\r\n [draggable]=\"draggable && dialogBox['draggable']\"\r\n [resizable]=\"resizable && dialogBox['resizable']\"\r\n [dragFreeDragPosition]=\"dialogBox['distance']\"\r\n [offsetLeft]=\"offsetLeft\"\r\n [offsetTop]=\"offsetTop\"\r\n [minWidth]=\"dialogBox['minWidth']\"\r\n [minHeight]=\"dialogBox['minHeight']\"\r\n [dragBoundary]=\"'.cdk-overlay-container'\"\r\n [title]=\"title\"\r\n [content]=\"contentTpl\"\r\n [type]=\"type\"\r\n [effect]=\"effect\"\r\n [hideClose]=\"hideClose\"\r\n [closeText]=\"closeText\"\r\n [operationTpl]=\"operationTpl\"\r\n (close)=\"onClose('close')\"\r\n (dragEnded)=\"onDragEnded($event)\"\r\n (resizing)=\"onResizing($event)\"\r\n showIcon=\"false\"\r\n duration=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #contentTpl>\r\n <div class=\"x-dialog-inner\">\r\n <div class=\"x-dialog-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"x-dialog-buttons\" [class.x-dialog-buttons-center]=\"buttonsCenter\">\r\n <ng-container *xOutlet=\"footer\">\r\n <x-buttons space=\"1\" *ngIf=\"showCancel || showConfirm\">\r\n <x-button *ngIf=\"showCancel\" (click)=\"onClose('cancel')\">{{ getCancelText }}</x-button>\r\n <x-button *ngIf=\"showConfirm\" type=\"primary\" (click)=\"onClose('confirm')\">{{ getConfirmText }}</x-button>\r\n </x-buttons>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #operationTpl>\r\n <ng-container *ngIf=\"maximize || resizable\">\r\n <x-button size=\"small\" [icon]=\"isMaximize ? 'fto-minimize' : 'fto-maximize'\" [onlyIcon]=\"true\" (click)=\"onSize()\"></x-button>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-container *ngIf=\"container && visible\">\r\n <ng-container *ngTemplateOutlet=\"dialogTpl\"></ng-container>\r\n</ng-container>\r\n", styles: [".x-dialog{margin:0;padding:0;width:100%;height:100%}.x-dialog>x-alert{height:100%}.x-dialog>x-alert .x-alert{min-height:100%;height:-moz-fit-content;height:fit-content;align-items:inherit;padding:0}.x-dialog>x-alert .x-alert-inner{min-height:100%;display:flex;flex-direction:column}.x-dialog>x-alert .x-alert-title{padding:1rem 1rem 0}.x-dialog>x-alert .x-alert-content{flex:1;display:flex;flex-direction:column;padding:0 1rem .5rem}.x-dialog-inner{display:flex;flex-direction:column;margin:.5rem 0;flex:1}.x-dialog-buttons{display:flex;justify-content:flex-end}.x-dialog-buttons>x-buttons{margin-top:1rem;align-self:flex-end}.x-dialog-buttons-center{justify-content:center}.x-dialog-content{display:inline-flex;flex-direction:column;flex:1;max-height:70vh;overflow:auto;min-height:2rem}.x-dialog-maximize>x-alert .x-alert{left:0!important;top:0!important}.x-dialog-maximize .x-dialog-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important}.x-dialog-default-maximize .x-dialog-content{max-height:calc(100vh - 7rem)!important;height:calc(100vh - 7rem)!important;flex:initial}\n"] }]
289
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.ViewContainerRef }, { type: i1.XPortalService }, { type: i2.Overlay }, { type: i3.XI18nService }, { type: i4.XConfigService }, { type: i9.XDialogContainerComponent, decorators: [{
290
+ type: Optional
291
+ }, {
292
+ type: Inject,
293
+ args: [X_DIALOG_CONTAINER]
294
+ }] }]; }, propDecorators: { getVisible: [{
295
+ type: HostBinding,
296
+ args: ['class.x-dialog-visible']
297
+ }], dialogTpl: [{
246
298
  type: ViewChild,
247
299
  args: ['dialogTpl', { static: false }]
248
300
  }] } });
249
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUlqQix1QkFBdUIsRUFHdkIsU0FBUyxFQUlWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGFBQWEsRUFBcUIsZUFBZSxFQUFFLGdCQUFnQixFQUFpQixNQUFNLG1CQUFtQixDQUFDO0FBQ3ZILE9BQU8sRUFBRSxxQkFBcUIsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRSxPQUFPLEVBQWdCLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUc3QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7QUFZaEQsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGVBQWU7SUE0Qm5ELFlBQ1MsUUFBbUIsRUFDbkIsVUFBc0IsRUFDdEIsR0FBc0IsRUFDdEIsZ0JBQWtDLEVBQ2xDLGFBQTZCLEVBQzdCLE9BQWdCLEVBQ2hCLElBQWtCO1FBRXpCLEtBQUssRUFBRSxDQUFDO1FBUkQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBQzdCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsU0FBSSxHQUFKLElBQUks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QUMsV0FBVyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ3BDLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztTQUNsRTtRQUNELElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7U0FDN0M7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUMzQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDN0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzdDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUM3QyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUM7WUFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO1lBQzlCLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztZQUNoQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUM7WUFDcEMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDO1NBQ3ZDLENBQUMsQ0FBQztRQUNILElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDbkQ7UUFDRCxJ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LEdBQUcsYUFBYSxFQUFFLGlCQUdiLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsQ0FBQyxpQkFBaUIsQ0FBQztzUUFHWSxTQUFTO3NCQUFuRCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBSZW5kZXJlcjIsXHJcbiAgRWxlbWVudFJlZixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxuICBPbkRlc3Ryb3lcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWE1vdmVCb3hBbmltYXRpb24sIFhJc0NoYW5nZSwgWElzRnVuY3Rpb24gfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgWERpYWxvZ1ByZWZpeCwgWERpYWxvZ092ZXJsYXlSZWYsIFhEaWFsb2dQcm9wZXJ0eSwgWERpYWxvZ0NvbnRhaW5lciwgWERpYWxvZ0FjdGlvbiB9IGZyb20gJy4vZGlhbG9nLnByb3BlcnR5JztcclxuaW1wb3J0IHsgUG9ydGFsUmVzaXphYmxlUHJlZml4LCBYUG9ydGFsU2VydmljZSB9IGZyb20gJ0BuZy1uZXN0L3VpL3BvcnRhbCc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBCbG9ja1Njcm9sbFN0cmF0ZWd5LCBPdmVybGF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyBYSTE4bkRpYWxvZywgWEkxOG5TZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvaTE4bic7XHJcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBDZGtEcmFnRW5kIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7IFhSZXNpemFibGVFdmVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL3Jlc2l6YWJsZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WERpYWxvZ1ByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2RpYWxvZy5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgYW5pbWF0aW9uczogW1hNb3ZlQm94QW5pbWF0aW9uXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERpYWxvZ0NvbXBvbmVudCBleHRlbmRzIFhEaWFsb2dQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcclxuICBAVmlld0NoaWxkKCdkaWFsb2dUcGwnLCB7IHN0YXRpYzogZmFsc2UgfSkgZGlhbG9nVHBsITogVGVtcGxhdGVSZWY8dm9pZD47XHJcbiAgZGlhbG9nUmVmITogWERpYWxvZ092ZXJsYXlSZWY7XHJcbiAgYmFja2Ryb3BDbGljayQhOiBTdWJzY3JpcHRpb247XHJcbiAgc2Nyb2xsU3RyYXRlZ3k6IEJsb2NrU2Nyb2xsU3RyYXRlZ3k7XHJcbiAgbG9jYWxlOiBYSTE4bkRpYWxvZyA9IHt9O1xyXG4gIG92ZXJsYXlFbGVtZW50PzogSFRNTEVsZW1lbnQ7XHJcbiAgZGlhbG9nQ29udGVudD86IEhUTUxFbGVtZW50O1xyXG4gIGluaXRIZWlnaHQ/ID0gMDtcclxuICBpbml0Q29udGVudEhlaWdodD8gPSAwO1xyXG4gIGlzTWF4aW1pemUgPSBmYWxzZTtcclxuICBpc0RlZmF1bHRNYXhpbWl6ZSA9IGZhbHNlO1xyXG4gIGRpYWxvZ0JveDogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xyXG4gIGNvbnRlbnRCb3g6IFhSZXNpemFibGVFdmVudCA9IHt9O1xyXG4gIGRpc3RhbmNlID0geyB4OiAwLCB5OiAwIH07XHJcbiAgdmlld0luaXQgPSBmYWxzZTtcclxuICBhY3Rpb246IFhEaWFsb2dBY3Rpb24gfCBudWxsID0gbnVsbDtcclxuXHJcbiAgcHJpdmF0ZSBfdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgZ2V0IGdldENhbmNlbFRleHQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jYW5jZWxUZXh0IHx8IHRoaXMubG9jYWxlLmNhbmNlbFRleHQ7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0Q29uZmlybVRleHQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maXJtVGV4dCB8fCB0aGlzLmxvY2FsZS5jb25maXJtVGV4dDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHVibGljIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICBwdWJsaWMgcHJvdGFsU2VydmljZTogWFBvcnRhbFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHB1YmxpYyBpMThuOiBYSTE4blNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5wcm90YWxTZXJ2aWNlLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ibG9jaygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmkxOG4ubG9jYWxlQ2hhbmdlXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoeCkgPT4geC5kaWFsb2cgYXMgWEkxOG5EaWFsb2cpLFxyXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9jYWxlID0geDtcclxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgfSk7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsnZHJhZ2dhYmxlJ10gPSB0aGlzLmRyYWdnYWJsZTtcclxuICAgIHRoaXMuZGlhbG9nQm94WydyZXNpemFibGUnXSA9IHRoaXMucmVzaXphYmxlO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3QgeyB2aXNpYmxlIH0gPSBjaGFuZ2VzO1xyXG4gICAgWElzQ2hhbmdlKHZpc2libGUpICYmIHRoaXMuc2V0VmlzaWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLl91blN1YmplY3QubmV4dCgpO1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLnZpZXdJbml0ID0gdHJ1ZTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy52aXNpYmxlICYmIHRoaXMuY3JlYXRlKCkpO1xyXG4gIH1cclxuXHJcbiAgdW5zdWJzY3JpYmUoKSB7XHJcbiAgICB0aGlzLmJhY2tkcm9wQ2xpY2skPy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0VmlzaWJsZSgpIHtcclxuICAgIGlmICghdGhpcy52aWV3SW5pdCkgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMudmlzaWJsZSkge1xyXG4gICAgICB0aGlzLmNyZWF0ZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5vbkNsb3NlKCdjbG9zZScsIGZhbHNlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNyZWF0ZSgpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmID0gdGhpcy5wcm90YWxTZXJ2aWNlLmF0dGFjaCh7XHJcbiAgICAgIGNvbnRlbnQ6IHRoaXMuZGlhbG9nVHBsLFxyXG4gICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnZpZXdDb250YWluZXJSZWYsXHJcbiAgICAgIG92ZXJsYXlDb25maWc6IHtcclxuICAgICAgICBwYW5lbENsYXNzOiBbWERpYWxvZ0NvbnRhaW5lciwgdGhpcy5jbGFzc05hbWVdLFxyXG4gICAgICAgIGhhc0JhY2tkcm9wOiBCb29sZWFuKHRoaXMuaGFzQmFja2Ryb3ApLFxyXG4gICAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ibG9jaygpLFxyXG4gICAgICAgIHdpZHRoOiB0aGlzLndpZHRoLFxyXG4gICAgICAgIGhlaWdodDogdGhpcy5oZWlnaHQsXHJcbiAgICAgICAgbWluV2lkdGg6IHRoaXMubWluV2lkdGgsXHJcbiAgICAgICAgbWluSGVpZ2h0OiB0aGlzLm1pbkhlaWdodCxcclxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLnByb3RhbFNlcnZpY2Uuc2V0UGxhY2UodGhpcy5wbGFjZW1lbnQsIHRoaXMub2Zmc2V0KVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHsgaG9zdEVsZW1lbnQsIG92ZXJsYXlFbGVtZW50IH0gPSB0aGlzLmRpYWxvZ1JlZi5vdmVybGF5UmVmITtcclxuICAgIHRoaXMub3ZlcmxheUVsZW1lbnQgPSBvdmVybGF5RWxlbWVudDtcclxuICAgIHRoaXMuc2V0V2lkdGhIZWlnaHQoKTtcclxuICAgIE9iamVjdC5hc3NpZ24odGhpcy5kaWFsb2dCb3gsIHtcclxuICAgICAgd2lkdGg6IHRoaXMud2lkdGgsXHJcbiAgICAgIGhlaWdodDogdGhpcy5oZWlnaHQsXHJcbiAgICAgIG1pbldpZHRoOiB0aGlzLm1pbldpZHRoLFxyXG4gICAgICBtaW5IZWlnaHQ6IHRoaXMubWluSGVpZ2h0XHJcbiAgICB9KTtcclxuICAgIGlmICh0aGlzLnJlc2l6YWJsZSAmJiAhdGhpcy5pc0RlZmF1bHRNYXhpbWl6ZSkge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGhvc3RFbGVtZW50LCBQb3J0YWxSZXNpemFibGVQcmVmaXgpO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuZGlhbG9nQm94LCB0aGlzLnByb3RhbFNlcnZpY2Uuc2V0UmVzaXphYmxlKHRoaXMub3ZlcmxheUVsZW1lbnQhLCB0aGlzLnBsYWNlbWVudCkpO1xyXG4gICAgICAgIHRoaXMub2Zmc2V0TGVmdCA9IHRoaXMub3ZlcmxheUVsZW1lbnQhLm9mZnNldExlZnQ7XHJcbiAgICAgICAgdGhpcy5vZmZzZXRUb3AgPSB0aGlzLm92ZXJsYXlFbGVtZW50IS5vZmZzZXRUb3A7XHJcbiAgICAgICAgY29uc3QgZGlhbG9nRHJhZ2dhYmxlID0gdGhpcy5vdmVybGF5RWxlbWVudD8ucXVlcnlTZWxlY3RvcignLngtYWxlcnQtZHJhZ2dhYmxlJykhO1xyXG4gICAgICAgIHRoaXMuaW5pdEhlaWdodCA9IGRpYWxvZ0RyYWdnYWJsZS5jbGllbnRIZWlnaHQ7XHJcbiAgICAgICAgdGhpcy5kaWFsb2dDb250ZW50ID0gdGhpcy5vdmVybGF5RWxlbWVudD8ucXVlcnlTZWxlY3RvcignLngtZGlhbG9nLWNvbnRlbnQnKSE7XHJcbiAgICAgICAgdGhpcy5pbml0Q29udGVudEhlaWdodCA9IHRoaXMuZGlhbG9nQ29udGVudC5jbGllbnRIZWlnaHQ7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuaGFzQmFja2Ryb3AgJiYgdGhpcy5iYWNrZHJvcENsb3NlICYmIHRoaXMuZGlhbG9nUmVmPy5vdmVybGF5UmVmKSB7XHJcbiAgICAgIHRoaXMuYmFja2Ryb3BDbGljayQgPSB0aGlzLmRpYWxvZ1JlZi5vdmVybGF5UmVmLmJhY2tkcm9wQ2xpY2soKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkNsb3NlKCdjbG9zZScpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFdpZHRoSGVpZ2h0KCkge1xyXG4gICAgY29uc3Qgd3MgPSBbJzEwMCUnLCAnMTAwdncnXTtcclxuICAgIGNvbnN0IGhzID0gWycxMDAlJywgJzEwMHZoJ107XHJcbiAgICBpZiAod3MuaW5jbHVkZXModGhpcy53aWR0aCBhcyBzdHJpbmcpICYmIGhzLmluY2x1ZGVzKHRoaXMuaGVpZ2h0IGFzIHN0cmluZykpIHtcclxuICAgICAgdGhpcy5pc0RlZmF1bHRNYXhpbWl6ZSA9IHRydWU7XHJcbiAgICAgIHRoaXMucmVzaXphYmxlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuZHJhZ2dhYmxlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMubWF4aW1pemUgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHBvcnRhbEF0dGFjaGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZGlhbG9nUmVmPy5vdmVybGF5UmVmPy5oYXNBdHRhY2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgb25DbG9zZShhY3Rpb246IFhEaWFsb2dBY3Rpb24sIGV4ZWNGdW5jdGlvbiA9IHRydWUpIHtcclxuICAgIGlmICghdGhpcy5wb3J0YWxBdHRhY2hlZCgpKSByZXR1cm47XHJcbiAgICBpZiAoWElzRnVuY3Rpb24odGhpcy5iZWZvcmVDbG9zZSkgJiYgZXhlY0Z1bmN0aW9uKSB7XHJcbiAgICAgIHRoaXMuYmVmb3JlQ2xvc2UoYWN0aW9uKTtcclxuICAgICAgdGhpcy5hY3Rpb24gPSBhY3Rpb247XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuICAgICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodGhpcy52aXNpYmxlKTtcclxuICAgICAgdGhpcy5kaWFsb2dSZWY/Lm92ZXJsYXlSZWY/LmRldGFjaCgpO1xyXG4gICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgIGlmIChbYWN0aW9uLCB0aGlzLmFjdGlvbl0uaW5jbHVkZXMoJ2NvbmZpcm0nKSkge1xyXG4gICAgICAgIHRoaXMuY29uZmlybS5lbWl0KCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKFthY3Rpb24sIHRoaXMuYWN0aW9uXS5pbmNsdWRlcygnY2FuY2VsJykpIHtcclxuICAgICAgICB0aGlzLmNhbmNlbC5lbWl0KCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5hY3Rpb24gPSBudWxsO1xyXG4gICAgICB0aGlzLmNsb3NlLmVtaXQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRHJhZ0VuZGVkKCRldmVudDogQ2RrRHJhZ0VuZCkge1xyXG4gICAgdGhpcy5kaXN0YW5jZSA9IHsgeDogdGhpcy5kaXN0YW5jZS54ICsgJGV2ZW50LmRpc3RhbmNlLngsIHk6IHRoaXMuZGlzdGFuY2UueSArICRldmVudC5kaXN0YW5jZS55IH07XHJcbiAgfVxyXG5cclxuICBvblNpemUoKSB7XHJcbiAgICBpZiAoIXRoaXMuZGlhbG9nUmVmKSByZXR1cm47XHJcbiAgICB0aGlzLmlzTWF4aW1pemUgPSAhdGhpcy5pc01heGltaXplO1xyXG4gICAgaWYgKHRoaXMuaXNNYXhpbWl6ZSkge1xyXG4gICAgICB0aGlzLm9uTWF4aW1pemUoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMub25NaW5pbWl6ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25NYXhpbWl6ZSgpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLm92ZXJsYXlSZWY/LnVwZGF0ZVNpemUoe1xyXG4gICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgICAgbWluV2lkdGg6ICcxMDAlJyxcclxuICAgICAgbWluSGVpZ2h0OiAnMTAwJSdcclxuICAgIH0pO1xyXG4gICAgdGhpcy5kaWFsb2dCb3hbJ21pbldpZHRoJ10gPSAnMTAwJSc7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsnbWluSGVpZ2h0J10gPSAnMTAwJSc7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsnZHJhZ2dhYmxlJ10gPSBmYWxzZTtcclxuICAgIHRoaXMuZGlhbG9nQm94WydyZXNpemFibGUnXSA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMucmVzaXphYmxlKSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5vdmVybGF5RWxlbWVudCwgJ21hcmdpbicsICcwIDAgMCAwJyk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5kcmFnZ2FibGUpIHtcclxuICAgICAgdGhpcy5kaWFsb2dCb3hbJ2Rpc3RhbmNlJ10gPSB7IHg6IDAsIHk6IDAgfTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uTWluaW1pemUoKSB7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsnbWluV2lkdGgnXSA9IHRoaXMubWluV2lkdGg7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsnbWluSGVpZ2h0J10gPSB0aGlzLm1pbkhlaWdodDtcclxuICAgIHRoaXMuZGlhbG9nQm94WydkcmFnZ2FibGUnXSA9IHRoaXMuZHJhZ2dhYmxlO1xyXG4gICAgdGhpcy5kaWFsb2dCb3hbJ3Jlc2l6YWJsZSddID0gdGhpcy5yZXNpemFibGU7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5vdmVybGF5UmVmPy51cGRhdGVTaXplKHtcclxuICAgICAgd2lkdGg6IHRoaXMuZGlhbG9nQm94Wyd3aWR0aCddLFxyXG4gICAgICBoZWlnaHQ6IHRoaXMuZGlhbG9nQm94WydoZWlnaHQnXSxcclxuICAgICAgbWluV2lkdGg6IHRoaXMuZGlhbG9nQm94WydtaW5XaWR0aCddLFxyXG4gICAgICBtaW5IZWlnaHQ6IHRoaXMuZGlhbG9nQm94WydtaW5IZWlnaHQnXVxyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy5kcmFnZ2FibGUpIHtcclxuICAgICAgdGhpcy5kaWFsb2dCb3hbJ2Rpc3RhbmNlJ10gPSB7IC4uLnRoaXMuZGlzdGFuY2UgfTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnJlc2l6YWJsZSkge1xyXG4gICAgICBpZiAodGhpcy5kaWFsb2dCb3hbJ21hcmdpblRvcCddKSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLm92ZXJsYXlFbGVtZW50LCAnbWFyZ2luLXRvcCcsIGAke3RoaXMuZGlhbG9nQm94WydtYXJnaW5Ub3AnXX1gKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5kaWFsb2dCb3hbJ21hcmdpbkxlZnQnXSkge1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5vdmVybGF5RWxlbWVudCwgJ21hcmdpbi1sZWZ0JywgYCR7dGhpcy5kaWFsb2dCb3hbJ21hcmdpbkxlZnQnXX1gKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5kaWFsb2dCb3hbJ21hcmdpblJpZ2h0J10pIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMub3ZlcmxheUVsZW1lbnQsICdtYXJnaW4tcmlnaHQnLCBgJHt0aGlzLmRpYWxvZ0JveFsnbWFyZ2luUmlnaHQnXX1gKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5kaWFsb2dCb3hbJ21hcmdpbkJvdHRvbSddKSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLm92ZXJsYXlFbGVtZW50LCAnbWFyZ2luLWJvdHRvbScsIGAke3RoaXMuZGlhbG9nQm94WydtYXJnaW5Cb3R0b20nXX1gKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbW92ZURvbmUoJGV2ZW50OiB7IHRvU3RhdGU6IHN0cmluZyB9KSB7XHJcbiAgICBpZiAoJGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJykge1xyXG4gICAgICB0aGlzLmNsb3NlRG9uZS5lbWl0KCRldmVudCk7XHJcbiAgICAgIHRoaXMuaXNNYXhpbWl6ZSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmRpYWxvZ0JveCA9IHtcclxuICAgICAgICBkcmFnZ2FibGU6IHRoaXMuZHJhZ2dhYmxlLFxyXG4gICAgICAgIHJlc2l6YWJsZTogdGhpcy5yZXNpemFibGVcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5kaXN0YW5jZSA9IHsgeDogMCwgeTogMCB9O1xyXG4gICAgICB0aGlzLmRpYWxvZ1JlZj8ub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93RG9uZS5lbWl0KCRldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvblJlc2l6aW5nKGV2ZW50OiBYUmVzaXphYmxlRXZlbnQpIHtcclxuICAgIGNvbnN0IGNvbnRlbnRIZWlnaHQgPSBOdW1iZXIodGhpcy5pbml0Q29udGVudEhlaWdodCkgKyBOdW1iZXIoZXZlbnQuY2xpZW50SGVpZ2h0KSAtIE51bWJlcih0aGlzLmluaXRIZWlnaHQpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRpYWxvZ0NvbnRlbnQsICdtYXgtaGVpZ2h0JywgJ2luaXRpYWwnKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kaWFsb2dDb250ZW50LCAnZmxleCcsICdpbml0aWFsJyk7XHJcbiAgICBpZiAoWyd0b3Atc3RhcnQnLCAndG9wLWVuZCcsICdib3R0b20nLCAndG9wJywgJ2JvdHRvbS1zdGFydCcsICdib3R0b20tZW5kJ10uaW5jbHVkZXMoZXZlbnQuZGlyZWN0aW9uIGFzIHN0cmluZykpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRpYWxvZ0NvbnRlbnQsICdoZWlnaHQnLCBgJHtjb250ZW50SGVpZ2h0fXB4YCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZSAjZGlhbG9nVHBsPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwieC1kaWFsb2dcIlxyXG4gICAgW0B4LW1vdmUtYm94LWFuaW1hdGlvbl09XCJwbGFjZW1lbnRcIlxyXG4gICAgKEB4LW1vdmUtYm94LWFuaW1hdGlvbi5kb25lKT1cIm1vdmVEb25lKCRldmVudClcIlxyXG4gICAgW2NsYXNzLngtZGlhbG9nLW1heGltaXplXT1cImlzTWF4aW1pemVcIlxyXG4gICAgW2NsYXNzLngtZGlhbG9nLXJlc2l6YWJsZV09XCJyZXNpemFibGVcIlxyXG4gICAgW2NsYXNzLngtZGlhbG9nLWRlZmF1bHQtbWF4aW1pemVdPVwiaXNEZWZhdWx0TWF4aW1pemVcIlxyXG4gID5cclxuICAgIDx4LWFsZXJ0XHJcbiAgICAgIFtkcmFnZ2FibGVdPVwiZHJhZ2dhYmxlICYmIGRpYWxvZ0JveFsnZHJhZ2dhYmxlJ11cIlxyXG4gICAgICBbcmVzaXphYmxlXT1cInJlc2l6YWJsZSAmJiBkaWFsb2dCb3hbJ3Jlc2l6YWJsZSddXCJcclxuICAgICAgW2RyYWdGcmVlRHJhZ1Bvc2l0aW9uXT1cImRpYWxvZ0JveFsnZGlzdGFuY2UnXVwiXHJcbiAgICAgIFtvZmZzZXRMZWZ0XT1cIm9mZnNldExlZnRcIlxyXG4gICAgICBbb2Zmc2V0VG9wXT1cIm9mZnNldFRvcFwiXHJcbiAgICAgIFttaW5XaWR0aF09XCJkaWFsb2dCb3hbJ21pbldpZHRoJ11cIlxyXG4gICAgICBbbWluSGVpZ2h0XT1cImRpYWxvZ0JveFsnbWluSGVpZ2h0J11cIlxyXG4gICAgICBbZHJhZ0JvdW5kYXJ5XT1cIicuY2RrLW92ZXJsYXktY29udGFpbmVyJ1wiXHJcbiAgICAgIFt0aXRsZV09XCJ0aXRsZVwiXHJcbiAgICAgIFtjb250ZW50XT1cImNvbnRlbnRUcGxcIlxyXG4gICAgICBbdHlwZV09XCJ0eXBlXCJcclxuICAgICAgW2VmZmVjdF09XCJlZmZlY3RcIlxyXG4gICAgICBbaGlkZUNsb3NlXT1cImhpZGVDbG9zZVwiXHJcbiAgICAgIFtjbG9zZVRleHRdPVwiY2xvc2VUZXh0XCJcclxuICAgICAgW29wZXJhdGlvblRwbF09XCJvcGVyYXRpb25UcGxcIlxyXG4gICAgICAoY2xvc2UpPVwib25DbG9zZSgnY2xvc2UnKVwiXHJcbiAgICAgIChkcmFnRW5kZWQpPVwib25EcmFnRW5kZWQoJGV2ZW50KVwiXHJcbiAgICAgIChyZXNpemluZyk9XCJvblJlc2l6aW5nKCRldmVudClcIlxyXG4gICAgICBzaG93SWNvbj1cImZhbHNlXCJcclxuICAgICAgZHVyYXRpb249XCIwXCJcclxuICAgICAgbWFudWFsXHJcbiAgICAgIGRpc2FibGVkQW5pbWF0aW9uXHJcbiAgICA+PC94LWFsZXJ0PlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNjb250ZW50VHBsPlxyXG4gIDxkaXYgY2xhc3M9XCJ4LWRpYWxvZy1pbm5lclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIngtZGlhbG9nLWNvbnRlbnRcIj5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwieC1kaWFsb2ctYnV0dG9uc1wiIFtjbGFzcy54LWRpYWxvZy1idXR0b25zLWNlbnRlcl09XCJidXR0b25zQ2VudGVyXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJmb290ZXJcIj5cclxuICAgICAgICA8eC1idXR0b25zIHNwYWNlPVwiMVwiICpuZ0lmPVwic2hvd0NhbmNlbCB8fCBzaG93Q29uZmlybVwiPlxyXG4gICAgICAgICAgPHgtYnV0dG9uICpuZ0lmPVwic2hvd0NhbmNlbFwiIChjbGljayk9XCJvbkNsb3NlKCdjYW5jZWwnKVwiPnt7IGdldENhbmNlbFRleHQgfX08L3gtYnV0dG9uPlxyXG4gICAgICAgICAgPHgtYnV0dG9uICpuZ0lmPVwic2hvd0NvbmZpcm1cIiB0eXBlPVwicHJpbWFyeVwiIChjbGljayk9XCJvbkNsb3NlKCdjb25maXJtJylcIj57eyBnZXRDb25maXJtVGV4dCB9fTwveC1idXR0b24+XHJcbiAgICAgICAgPC94LWJ1dHRvbnM+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI29wZXJhdGlvblRwbD5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwibWF4aW1pemUgfHwgcmVzaXphYmxlXCI+XHJcbiAgICA8eC1idXR0b24gc2l6ZT1cInNtYWxsXCIgW2ljb25dPVwiaXNNYXhpbWl6ZSA/ICdmdG8tbWluaW1pemUnIDogJ2Z0by1tYXhpbWl6ZSdcIiBbb25seUljb25dPVwidHJ1ZVwiIChjbGljayk9XCJvblNpemUoKVwiPjwveC1idXR0b24+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
301
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUlqQix1QkFBdUIsRUFHdkIsU0FBUyxFQUlULFFBQVEsRUFDUixNQUFNLEVBQ04sV0FBVyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFrQixRQUFRLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdkksT0FBTyxFQUFFLGFBQWEsRUFBcUIsZUFBZSxFQUFFLGdCQUFnQixFQUFpQixrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzNJLE9BQU8sRUFBRSxxQkFBcUIsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRSxPQUFPLEVBQWdCLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUc3QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7OztBQWFoRCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsZUFBZTtJQTRDbkQsWUFDUyxRQUFtQixFQUNuQixVQUFzQixFQUN0QixHQUFzQixFQUN0QixnQkFBa0MsRUFDbEMsYUFBNkIsRUFDN0IsT0FBZ0IsRUFDaEIsSUFBa0IsRUFDbEIsYUFBNkIsRUFDVyxTQUFxQztRQUVwRixLQUFLLEVBQUUsQ0FBQztRQVZELGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0Qixx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QVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFNBQW1CLENBQUMsRUFBRTtZQUMvRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFFBQVEsRUFBRSxHQUFHLGFBQWEsSUFBSSxDQUFDLENBQUM7U0FDNUU7SUFDSCxDQUFDOztvSkFqU1UsZ0JBQWdCLHFQQXFETCxrQkFBa0I7d0lBckQ3QixnQkFBZ0IsMlFDcEM3QiwrOEVBK0RBLGdwREQ3QmMsQ0FBQyxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQzs0RkFFdkMsZ0JBQWdCO2tCQVI1QixTQUFTOytCQUNFLEdBQUcsYUFBYSxFQUFFLGlCQUdiLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsQ0FBQyxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQzs7MEJBdUQvQyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLGtCQUFrQjs0Q0FwREcsVUFBVTtzQkFBcEQsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBR00sU0FBUztzQkFBbkQsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgT25DaGFuZ2VzLFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9wdGlvbmFsLFxyXG4gIEluamVjdCxcclxuICBIb3N0QmluZGluZ1xyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYTW92ZUJveEFuaW1hdGlvbiwgWElzQ2hhbmdlLCBYSXNGdW5jdGlvbiwgWENvbmZpZ1NlcnZpY2UsIFhJc0VtcHR5LCBYQ2xlYXJDbGFzcywgWE9wYWNpdHlBbmltYXRpb24gfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgWERpYWxvZ1ByZWZpeCwgWERpYWxvZ092ZXJsYXlSZWYsIFhEaWFsb2dQcm9wZXJ0eSwgWERpYWxvZ0NvbnRhaW5lciwgWERpYWxvZ0FjdGlvbiwgWF9ESUFMT0dfQ09OVEFJTkVSIH0gZnJvbSAnLi9kaWFsb2cucHJvcGVydHknO1xyXG5pbXBvcnQgeyBQb3J0YWxSZXNpemFibGVQcmVmaXgsIFhQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvcG9ydGFsJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEJsb2NrU2Nyb2xsU3RyYXRlZ3ksIE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IFhJMThuRGlhbG9nLCBYSTE4blNlcnZpY2UgfSBmcm9tICdAbmctbmVzdC91aS9pMThuJztcclxuaW1wb3J0IHsgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENka0RyYWdFbmQgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHsgWFJlc2l6YWJsZUV2ZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvcmVzaXphYmxlJztcclxuaW1wb3J0IHsgWERpYWxvZ0NvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vZGlhbG9nLWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hEaWFsb2dQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGFuaW1hdGlvbnM6IFtYTW92ZUJveEFuaW1hdGlvbiwgWE9wYWNpdHlBbmltYXRpb25dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYRGlhbG9nQ29tcG9uZW50IGV4dGVuZHMgWERpYWxvZ1Byb3BlcnR5IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MueC1kaWFsb2ctdmlzaWJsZScpIGdldCBnZXRWaXNpYmxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudmlzaWJsZTtcclxuICB9XHJcbiAgQFZpZXdDaGlsZCgnZGlhbG9nVHBsJywgeyBzdGF0aWM6IGZhbHNlIH0pIGRpYWxvZ1RwbCE6IFRlbXBsYXRlUmVmPHZvaWQ+O1xyXG4gIGRpYWxvZ1JlZiE6IFhEaWFsb2dPdmVybGF5UmVmO1xyXG4gIGJhY2tkcm9wQ2xpY2skITogU3Vic2NyaXB0aW9uO1xyXG4gIHNjcm9sbFN0cmF0ZWd5OiBCbG9ja1Njcm9sbFN0cmF0ZWd5O1xyXG4gIGxvY2FsZTogWEkxOG5EaWFsb2cgPSB7fTtcclxuICBvdmVybGF5RWxlbWVudD86IEhUTUxFbGVtZW50O1xyXG4gIGRpYWxvZ0NvbnRlbnQ/OiBIVE1MRWxlbWVudDtcclxuICBpbml0SGVpZ2h0PyA9IDA7XHJcbiAgaW5pdENvbnRlbnRIZWlnaHQ/ID0gMDtcclxuICBpc01heGltaXplID0gZmFsc2U7XHJcbiAgaXNEZWZhdWx0TWF4aW1pemUgPSBmYWxzZTtcclxuICBkaWFsb2dCb3g6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7fTtcclxuICBjb250ZW50Qm94OiBYUmVzaXphYmxlRXZlbnQgPSB7fTtcclxuICBkaXN0YW5jZSA9IHsgeDogMCwgeTogMCB9O1xyXG4gIHZpZXdJbml0ID0gZmFsc2U7XHJcbiAgYWN0aW9uOiBYRGlhbG9nQWN0aW9uIHwgbnVsbCA9IG51bGw7XHJcbiAgY29udGFpbmVySW5pdCA9IGZhbHNlO1xyXG5cclxuICBwcml2YXRlIF91blN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICBnZXQgZ2V0Q2FuY2VsVGV4dCgpIHtcclxuICAgIHJldHVybiB0aGlzLmNhbmNlbFRleHQgfHwgdGhpcy5sb2NhbGUuY2FuY2VsVGV4dDtcclxuICB9XHJcblxyXG4gIGdldCBnZXRDb25maXJtVGV4dCgpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpcm1UZXh0IHx8IHRoaXMubG9jYWxlLmNvbmZpcm1UZXh0O1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldFN0eWxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29udGFpbmVyXHJcbiAgICAgID8ge1xyXG4gICAgICAgICAgLi4udGhpcy5wcm90YWxTZXJ2aWNlLnNldENvbnRhaW5lclN0eWxlKHRoaXMucGxhY2VtZW50LCB0aGlzLm9mZnNldCksXHJcbiAgICAgICAgICB3aWR0aDogdGhpcy53aWR0aCxcclxuICAgICAgICAgIGhlaWdodDogdGhpcy5oZWlnaHQsXHJcbiAgICAgICAgICBtaW5XaWR0aDogdGhpcy5taW5XaWR0aCxcclxuICAgICAgICAgIG1pbkhlaWdodDogdGhpcy5taW5IZWlnaHRcclxuICAgICAgICB9XHJcbiAgICAgIDoge307XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBwdWJsaWMgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHVibGljIHByb3RhbFNlcnZpY2U6IFhQb3J0YWxTZXJ2aWNlLFxyXG4gICAgcHVibGljIG92ZXJsYXk6IE92ZXJsYXksXHJcbiAgICBwdWJsaWMgaTE4bjogWEkxOG5TZXJ2aWNlLFxyXG4gICAgcHVibGljIGNvbmZpZ1NlcnZpY2U6IFhDb25maWdTZXJ2aWNlLFxyXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChYX0RJQUxPR19DT05UQUlORVIpIHB1YmxpYyBjb250YWluZXI/OiBYRGlhbG9nQ29udGFpbmVyQ29tcG9uZW50XHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5zY3JvbGxTdHJhdGVneSA9IHRoaXMucHJvdGFsU2VydmljZS5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuYmxvY2soKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5pMThuLmxvY2FsZUNoYW5nZVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHgpID0+IHguZGlhbG9nIGFzIFhJMThuRGlhbG9nKSxcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICB0aGlzLmxvY2FsZSA9IHg7XHJcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy5kaWFsb2dCb3hbJ2RyYWdnYWJsZSddID0gdGhpcy5kcmFnZ2FibGU7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsncmVzaXphYmxlJ10gPSB0aGlzLnJlc2l6YWJsZTtcclxuICAgIHRoaXMuc2V0Q2xhc3NNYXAoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgdmlzaWJsZSwgcGxhY2VtZW50IH0gPSBjaGFuZ2VzO1xyXG4gICAgWElzQ2hhbmdlKHZpc2libGUpICYmIHRoaXMuc2V0VmlzaWJsZSgpO1xyXG4gICAgaWYgKFhJc0NoYW5nZShwbGFjZW1lbnQpKSB7XHJcbiAgICAgIHRoaXMuc2V0Q2xhc3NNYXAoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMuX3VuU3ViamVjdC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy52aWV3SW5pdCA9IHRydWU7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMudmlzaWJsZSAmJiB0aGlzLmNyZWF0ZSgpKTtcclxuICB9XHJcblxyXG4gIHVuc3Vic2NyaWJlKCkge1xyXG4gICAgdGhpcy5iYWNrZHJvcENsaWNrJD8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHNldENsYXNzTWFwKCkge1xyXG4gICAgZm9yIChsZXQga2V5IGluIHRoaXMuY2xhc3NNYXApIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwga2V5KTtcclxuICAgIH1cclxuICAgIFhDbGVhckNsYXNzKHRoaXMuY2xhc3NNYXApO1xyXG4gICAgdGhpcy5jbGFzc01hcCA9IHtcclxuICAgICAgW2Ake1hEaWFsb2dQcmVmaXh9LSR7dGhpcy5wbGFjZW1lbnR9YF06ICFYSXNFbXB0eSh0aGlzLnBsYWNlbWVudClcclxuICAgIH07XHJcbiAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5jbGFzc01hcCkge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBrZXkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0VmlzaWJsZSgpIHtcclxuICAgIGlmICghdGhpcy52aWV3SW5pdCkgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMudmlzaWJsZSkge1xyXG4gICAgICB0aGlzLmNyZWF0ZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5vbkNsb3NlKCdjbG9zZScsIGZhbHNlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNyZWF0ZSgpIHtcclxuICAgIGlmICh0aGlzLmNvbnRhaW5lcikge1xyXG4gICAgICB0aGlzLmNvbnRhaW5lckluaXQgPSB0cnVlO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmRpYWxvZ1JlZiA9IHRoaXMucHJvdGFsU2VydmljZS5hdHRhY2goe1xyXG4gICAgICBjb250ZW50OiB0aGlzLmRpYWxvZ1RwbCxcclxuICAgICAgdmlld0NvbnRhaW5lclJlZjogdGhpcy52aWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICBvdmVybGF5Q29uZmlnOiB7XHJcbiAgICAgICAgcGFuZWxDbGFzczogW1hEaWFsb2dDb250YWluZXIsIHRoaXMuY2xhc3NOYW1lXSxcclxuICAgICAgICBoYXNCYWNrZHJvcDogQm9vbGVhbih0aGlzLmhhc0JhY2tkcm9wKSxcclxuICAgICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuYmxvY2soKSxcclxuICAgICAgICB3aWR0aDogdGhpcy53aWR0aCxcclxuICAgICAgICBoZWlnaHQ6IHRoaXMuaGVpZ2h0LFxyXG4gICAgICAgIG1pbldpZHRoOiB0aGlzLm1pbldpZHRoLFxyXG4gICAgICAgIG1pbkhlaWdodDogdGhpcy5taW5IZWlnaHQsXHJcbiAgICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5wcm90YWxTZXJ2aWNlLnNldFBsYWNlKHRoaXMucGxhY2VtZW50LCB0aGlzLm9mZnNldClcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICBjb25zdCB7IGhvc3RFbGVtZW50LCBvdmVybGF5RWxlbWVudCB9ID0gdGhpcy5kaWFsb2dSZWYub3ZlcmxheVJlZiE7XHJcbiAgICB0aGlzLm92ZXJsYXlFbGVtZW50ID0gb3ZlcmxheUVsZW1lbnQ7XHJcbiAgICB0aGlzLnNldFdpZHRoSGVpZ2h0KCk7XHJcbiAgICBPYmplY3QuYXNzaWduKHRoaXMuZGlhbG9nQm94LCB7XHJcbiAgICAgIHdpZHRoOiB0aGlzLndpZHRoLFxyXG4gICAgICBoZWlnaHQ6IHRoaXMuaGVpZ2h0LFxyXG4gICAgICBtaW5XaWR0aDogdGhpcy5taW5XaWR0aCxcclxuICAgICAgbWluSGVpZ2h0OiB0aGlzLm1pbkhlaWdodFxyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy5yZXNpemFibGUgJiYgIXRoaXMuaXNEZWZhdWx0TWF4aW1pemUpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhob3N0RWxlbWVudCwgUG9ydGFsUmVzaXphYmxlUHJlZml4KTtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLmRpYWxvZ0JveCwgdGhpcy5wcm90YWxTZXJ2aWNlLnNldFJlc2l6YWJsZSh0aGlzLm92ZXJsYXlFbGVtZW50ISwgdGhpcy5wbGFjZW1lbnQpKTtcclxuICAgICAgICB0aGlzLm9mZnNldExlZnQgPSB0aGlzLm92ZXJsYXlFbGVtZW50IS5vZmZzZXRMZWZ0O1xyXG4gICAgICAgIHRoaXMub2Zmc2V0VG9wID0gdGhpcy5vdmVybGF5RWxlbWVudCEub2Zmc2V0VG9wO1xyXG4gICAgICAgIGNvbnN0IGRpYWxvZ0RyYWdnYWJsZSA9IHRoaXMub3ZlcmxheUVsZW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoJy54LWFsZXJ0LWRyYWdnYWJsZScpITtcclxuICAgICAgICB0aGlzLmluaXRIZWlnaHQgPSBkaWFsb2dEcmFnZ2FibGUuY2xpZW50SGVpZ2h0O1xyXG4gICAgICAgIHRoaXMuZGlhbG9nQ29udGVudCA9IHRoaXMub3ZlcmxheUVsZW1lbnQ/LnF1ZXJ5U2VsZWN0b3IoJy54LWRpYWxvZy1jb250ZW50JykhO1xyXG4gICAgICAgIHRoaXMuaW5pdENvbnRlbnRIZWlnaHQgPSB0aGlzLmRpYWxvZ0NvbnRlbnQuY2xpZW50SGVpZ2h0O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmhhc0JhY2tkcm9wICYmIHRoaXMuYmFja2Ryb3BDbG9zZSAmJiB0aGlzLmRpYWxvZ1JlZj8ub3ZlcmxheVJlZikge1xyXG4gICAgICB0aGlzLmJhY2tkcm9wQ2xpY2skID0gdGhpcy5kaWFsb2dSZWYub3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKCgpID0+IHRoaXMub25DbG9zZSgnY2xvc2UnKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRXaWR0aEhlaWdodCgpIHtcclxuICAgIGNvbnN0IHdzID0gWycxMDAlJywgJzEwMHZ3J107XHJcbiAgICBjb25zdCBocyA9IFsnMTAwJScsICcxMDB2aCddO1xyXG4gICAgaWYgKHdzLmluY2x1ZGVzKHRoaXMud2lkdGggYXMgc3RyaW5nKSAmJiBocy5pbmNsdWRlcyh0aGlzLmhlaWdodCBhcyBzdHJpbmcpKSB7XHJcbiAgICAgIHRoaXMuaXNEZWZhdWx0TWF4aW1pemUgPSB0cnVlO1xyXG4gICAgICB0aGlzLnJlc2l6YWJsZSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmRyYWdnYWJsZSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLm1heGltaXplID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwb3J0YWxBdHRhY2hlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLmRpYWxvZ1JlZj8ub3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xvc2UoYWN0aW9uOiBYRGlhbG9nQWN0aW9uLCBleGVjRnVuY3Rpb24gPSB0cnVlKSB7XHJcbiAgICBpZiAoIXRoaXMucG9ydGFsQXR0YWNoZWQoKSAmJiAhdGhpcy5jb250YWluZXIpIHJldHVybjtcclxuICAgIGlmICh0aGlzLmNvbnRhaW5lciAmJiAhdGhpcy5jb250YWluZXJJbml0KSByZXR1cm47XHJcbiAgICBpZiAoWElzRnVuY3Rpb24odGhpcy5iZWZvcmVDbG9zZSkgJiYgZXhlY0Z1bmN0aW9uKSB7XHJcbiAgICAgIHRoaXMuYmVmb3JlQ2xvc2UoYWN0aW9uKTtcclxuICAgICAgdGhpcy5hY3Rpb24gPSBhY3Rpb247XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuICAgICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodGhpcy52aXNpYmxlKTtcclxuICAgICAgaWYgKHRoaXMucG9ydGFsQXR0YWNoZWQoKSkge1xyXG4gICAgICAgIHRoaXMuZGlhbG9nUmVmPy5vdmVybGF5UmVmPy5kZXRhY2goKTtcclxuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKFthY3Rpb24sIHRoaXMuYWN0aW9uXS5pbmNsdWRlcygnY29uZmlybScpKSB7XHJcbiAgICAgICAgdGhpcy5jb25maXJtLmVtaXQoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoW2FjdGlvbiwgdGhpcy5hY3Rpb25dLmluY2x1ZGVzKCdjYW5jZWwnKSkge1xyXG4gICAgICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmNvbnRhaW5lckluaXQgPSBmYWxzZTtcclxuICAgICAgdGhpcy5hY3Rpb24gPSBudWxsO1xyXG4gICAgICB0aGlzLmNsb3NlLmVtaXQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRHJhZ0VuZGVkKCRldmVudDogQ2RrRHJhZ0VuZCkge1xyXG4gICAgdGhpcy5kaXN0YW5jZSA9IHsgeDogdGhpcy5kaXN0YW5jZS54ICsgJGV2ZW50LmRpc3RhbmNlLngsIHk6IHRoaXMuZGlzdGFuY2UueSArICRldmVudC5kaXN0YW5jZS55IH07XHJcbiAgfVxyXG5cclxuICBvblNpemUoKSB7XHJcbiAgICBpZiAoIXRoaXMuZGlhbG9nUmVmKSByZXR1cm47XHJcbiAgICB0aGlzLmlzTWF4aW1pemUgPSAhdGhpcy5pc01heGltaXplO1xyXG4gICAgaWYgKHRoaXMuaXNNYXhpbWl6ZSkge1xyXG4gICAgICB0aGlzLm9uTWF4aW1pemUoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMub25NaW5pbWl6ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25NYXhpbWl6ZSgpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLm92ZXJsYXlSZWY/LnVwZGF0ZVNpemUoe1xyXG4gICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgICAgbWluV2lkdGg6ICcxMDAlJyxcclxuICAgICAgbWluSGVpZ2h0OiAnMTAwJSdcclxuICAgIH0pO1xyXG4gICAgdGhpcy5kaWFsb2dCb3hbJ21pbldpZHRoJ10gPSAnMTAwJSc7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsnbWluSGVpZ2h0J10gPSAnMTAwJSc7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsnZHJhZ2dhYmxlJ10gPSBmYWxzZTtcclxuICAgIHRoaXMuZGlhbG9nQm94WydyZXNpemFibGUnXSA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMucmVzaXphYmxlKSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5vdmVybGF5RWxlbWVudCwgJ21hcmdpbicsICcwIDAgMCAwJyk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5kcmFnZ2FibGUpIHtcclxuICAgICAgdGhpcy5kaWFsb2dCb3hbJ2Rpc3RhbmNlJ10gPSB7IHg6IDAsIHk6IDAgfTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uTWluaW1pemUoKSB7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsnbWluV2lkdGgnXSA9IHRoaXMubWluV2lkdGg7XHJcbiAgICB0aGlzLmRpYWxvZ0JveFsnbWluSGVpZ2h0J10gPSB0aGlzLm1pbkhlaWdodDtcclxuICAgIHRoaXMuZGlhbG9nQm94WydkcmFnZ2FibGUnXSA9IHRoaXMuZHJhZ2dhYmxlO1xyXG4gICAgdGhpcy5kaWFsb2dCb3hbJ3Jlc2l6YWJsZSddID0gdGhpcy5yZXNpemFibGU7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5vdmVybGF5UmVmPy51cGRhdGVTaXplKHtcclxuICAgICAgd2lkdGg6IHRoaXMuZGlhbG9nQm94Wyd3aWR0aCddLFxyXG4gICAgICBoZWlnaHQ6IHRoaXMuZGlhbG9nQm94WydoZWlnaHQnXSxcclxuICAgICAgbWluV2lkdGg6IHRoaXMuZGlhbG9nQm94WydtaW5XaWR0aCddLFxyXG4gICAgICBtaW5IZWlnaHQ6IHRoaXMuZGlhbG9nQm94WydtaW5IZWlnaHQnXVxyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy5kcmFnZ2FibGUpIHtcclxuICAgICAgdGhpcy5kaWFsb2dCb3hbJ2Rpc3RhbmNlJ10gPSB7IC4uLnRoaXMuZGlzdGFuY2UgfTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnJlc2l6YWJsZSkge1xyXG4gICAgICBpZiAodGhpcy5kaWFsb2dCb3hbJ21hcmdpblRvcCddKSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLm92ZXJsYXlFbGVtZW50LCAnbWFyZ2luLXRvcCcsIGAke3RoaXMuZGlhbG9nQm94WydtYXJnaW5Ub3AnXX1gKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5kaWFsb2dCb3hbJ21hcmdpbkxlZnQnXSkge1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5vdmVybGF5RWxlbWVudCwgJ21hcmdpbi1sZWZ0JywgYCR7dGhpcy5kaWFsb2dCb3hbJ21hcmdpbkxlZnQnXX1gKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5kaWFsb2dCb3hbJ21hcmdpblJpZ2h0J10pIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMub3ZlcmxheUVsZW1lbnQsICdtYXJnaW4tcmlnaHQnLCBgJHt0aGlzLmRpYWxvZ0JveFsnbWFyZ2luUmlnaHQnXX1gKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5kaWFsb2dCb3hbJ21hcmdpbkJvdHRvbSddKSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLm92ZXJsYXlFbGVtZW50LCAnbWFyZ2luLWJvdHRvbScsIGAke3RoaXMuZGlhbG9nQm94WydtYXJnaW5Cb3R0b20nXX1gKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbW92ZURvbmUoJGV2ZW50OiB7IHRvU3RhdGU6IHN0cmluZyB9KSB7XHJcbiAgICBpZiAoJGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJykge1xyXG4gICAgICB0aGlzLmNsb3NlRG9uZS5lbWl0KCRldmVudCk7XHJcbiAgICAgIHRoaXMuaXNNYXhpbWl6ZSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmRpYWxvZ0JveCA9IHtcclxuICAgICAgICBkcmFnZ2FibGU6IHRoaXMuZHJhZ2dhYmxlLFxyXG4gICAgICAgIHJlc2l6YWJsZTogdGhpcy5yZXNpemFibGVcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5kaXN0YW5jZSA9IHsgeDogMCwgeTogMCB9O1xyXG4gICAgICB0aGlzLmRpYWxvZ1JlZj8ub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93RG9uZS5lbWl0KCRldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvblJlc2l6aW5nKGV2ZW50OiBYUmVzaXphYmxlRXZlbnQpIHtcclxuICAgIGNvbnN0IGNvbnRlbnRIZWlnaHQgPSBOdW1iZXIodGhpcy5pbml0Q29udGVudEhlaWdodCkgKyBOdW1iZXIoZXZlbnQuY2xpZW50SGVpZ2h0KSAtIE51bWJlcih0aGlzLmluaXRIZWlnaHQpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRpYWxvZ0NvbnRlbnQsICdtYXgtaGVpZ2h0JywgJ2luaXRpYWwnKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5kaWFsb2dDb250ZW50LCAnZmxleCcsICdpbml0aWFsJyk7XHJcbiAgICBpZiAoWyd0b3Atc3RhcnQnLCAndG9wLWVuZCcsICdib3R0b20nLCAndG9wJywgJ2JvdHRvbS1zdGFydCcsICdib3R0b20tZW5kJ10uaW5jbHVkZXMoZXZlbnQuZGlyZWN0aW9uIGFzIHN0cmluZykpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmRpYWxvZ0NvbnRlbnQsICdoZWlnaHQnLCBgJHtjb250ZW50SGVpZ2h0fXB4YCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZSAjZGlhbG9nVHBsPlxyXG4gIDxkaXYgY2xhc3M9XCJ4LWRpYWxvZy1iYWNrZHJvcFwiICpuZ0lmPVwiY29udGFpbmVyICYmIGhhc0JhY2tkcm9wXCIgW0B4LW9wYWNpdHktYW5pbWF0aW9uXT1cInZpc2libGVcIiAoY2xpY2spPVwib25DbG9zZSgnY2xvc2UnKVwiPjwvZGl2PlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwieC1kaWFsb2dcIlxyXG4gICAgW0B4LW1vdmUtYm94LWFuaW1hdGlvbl09XCJwbGFjZW1lbnRcIlxyXG4gICAgKEB4LW1vdmUtYm94LWFuaW1hdGlvbi5kb25lKT1cIm1vdmVEb25lKCRldmVudClcIlxyXG4gICAgW2NsYXNzLngtZGlhbG9nLW1heGltaXplXT1cImlzTWF4aW1pemVcIlxyXG4gICAgW2NsYXNzLngtZGlhbG9nLXJlc2l6YWJsZV09XCJyZXNpemFibGVcIlxyXG4gICAgW2NsYXNzLngtZGlhbG9nLWRlZmF1bHQtbWF4aW1pemVdPVwiaXNEZWZhdWx0TWF4aW1pemVcIlxyXG4gICAgW25nU3R5bGVdPVwiZ2V0U3R5bGVcIlxyXG4gID5cclxuICAgIDx4LWFsZXJ0XHJcbiAgICAgIFtkcmFnZ2FibGVdPVwiZHJhZ2dhYmxlICYmIGRpYWxvZ0JveFsnZHJhZ2dhYmxlJ11cIlxyXG4gICAgICBbcmVzaXphYmxlXT1cInJlc2l6YWJsZSAmJiBkaWFsb2dCb3hbJ3Jlc2l6YWJsZSddXCJcclxuICAgICAgW2RyYWdGcmVlRHJhZ1Bvc2l0aW9uXT1cImRpYWxvZ0JveFsnZGlzdGFuY2UnXVwiXHJcbiAgICAgIFtvZmZzZXRMZWZ0XT1cIm9mZnNldExlZnRcIlxyXG4gICAgICBbb2Zmc2V0VG9wXT1cIm9mZnNldFRvcFwiXHJcbiAgICAgIFttaW5XaWR0aF09XCJkaWFsb2dCb3hbJ21pbldpZHRoJ11cIlxyXG4gICAgICBbbWluSGVpZ2h0XT1cImRpYWxvZ0JveFsnbWluSGVpZ2h0J11cIlxyXG4gICAgICBbZHJhZ0JvdW5kYXJ5XT1cIicuY2RrLW92ZXJsYXktY29udGFpbmVyJ1wiXHJcbiAgICAgIFt0aXRsZV09XCJ0aXRsZVwiXHJcbiAgICAgIFtjb250ZW50XT1cImNvbnRlbnRUcGxcIlxyXG4gICAgICBbdHlwZV09XCJ0eXBlXCJcclxuICAgICAgW2VmZmVjdF09XCJlZmZlY3RcIlxyXG4gICAgICBbaGlkZUNsb3NlXT1cImhpZGVDbG9zZVwiXHJcbiAgICAgIFtjbG9zZVRleHRdPVwiY2xvc2VUZXh0XCJcclxuICAgICAgW29wZXJhdGlvblRwbF09XCJvcGVyYXRpb25UcGxcIlxyXG4gICAgICAoY2xvc2UpPVwib25DbG9zZSgnY2xvc2UnKVwiXHJcbiAgICAgIChkcmFnRW5kZWQpPVwib25EcmFnRW5kZWQoJGV2ZW50KVwiXHJcbiAgICAgIChyZXNpemluZyk9XCJvblJlc2l6aW5nKCRldmVudClcIlxyXG4gICAgICBzaG93SWNvbj1cImZhbHNlXCJcclxuICAgICAgZHVyYXRpb249XCIwXCJcclxuICAgICAgbWFudWFsXHJcbiAgICAgIGRpc2FibGVkQW5pbWF0aW9uXHJcbiAgICA+PC94LWFsZXJ0PlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNjb250ZW50VHBsPlxyXG4gIDxkaXYgY2xhc3M9XCJ4LWRpYWxvZy1pbm5lclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIngtZGlhbG9nLWNvbnRlbnRcIj5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwieC1kaWFsb2ctYnV0dG9uc1wiIFtjbGFzcy54LWRpYWxvZy1idXR0b25zLWNlbnRlcl09XCJidXR0b25zQ2VudGVyXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJmb290ZXJcIj5cclxuICAgICAgICA8eC1idXR0b25zIHNwYWNlPVwiMVwiICpuZ0lmPVwic2hvd0NhbmNlbCB8fCBzaG93Q29uZmlybVwiPlxyXG4gICAgICAgICAgPHgtYnV0dG9uICpuZ0lmPVwic2hvd0NhbmNlbFwiIChjbGljayk9XCJvbkNsb3NlKCdjYW5jZWwnKVwiPnt7IGdldENhbmNlbFRleHQgfX08L3gtYnV0dG9uPlxyXG4gICAgICAgICAgPHgtYnV0dG9uICpuZ0lmPVwic2hvd0NvbmZpcm1cIiB0eXBlPVwicHJpbWFyeVwiIChjbGljayk9XCJvbkNsb3NlKCdjb25maXJtJylcIj57eyBnZXRDb25maXJtVGV4dCB9fTwveC1idXR0b24+XHJcbiAgICAgICAgPC94LWJ1dHRvbnM+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI29wZXJhdGlvblRwbD5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwibWF4aW1pemUgfHwgcmVzaXphYmxlXCI+XHJcbiAgICA8eC1idXR0b24gc2l6ZT1cInNtYWxsXCIgW2ljb25dPVwiaXNNYXhpbWl6ZSA/ICdmdG8tbWluaW1pemUnIDogJ2Z0by1tYXhpbWl6ZSdcIiBbb25seUljb25dPVwidHJ1ZVwiIChjbGljayk9XCJvblNpemUoKVwiPjwveC1idXR0b24+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctY29udGFpbmVyICpuZ0lmPVwiY29udGFpbmVyICYmIHZpc2libGVcIj5cclxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGlhbG9nVHBsXCI+PC9uZy1jb250YWluZXI+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=