primeng 18.0.0-beta.5 → 18.0.0-rc.2

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 (389) hide show
  1. package/accordion/accordion.d.ts +2 -4
  2. package/api/primeicons.d.ts +3 -3
  3. package/api/scrolleroptions.d.ts +10 -0
  4. package/api/selectitemgroup.d.ts +2 -2
  5. package/api/shared.d.ts +2 -2
  6. package/autocomplete/autocomplete.d.ts +11 -12
  7. package/badge/badge.d.ts +16 -2
  8. package/blockui/blockui.d.ts +2 -2
  9. package/breadcrumb/breadcrumb.d.ts +3 -4
  10. package/button/button.d.ts +3 -4
  11. package/calendar/calendar.d.ts +12 -12
  12. package/card/card.d.ts +2 -2
  13. package/carousel/carousel.d.ts +3 -3
  14. package/cascadeselect/cascadeselect.d.ts +31 -15
  15. package/cascadeselect/style/cascadeselectstyle.d.ts +8 -1
  16. package/checkbox/checkbox.d.ts +2 -2
  17. package/chip/chip.d.ts +2 -2
  18. package/confirmdialog/confirmdialog.d.ts +3 -3
  19. package/confirmpopup/confirmpopup.d.ts +3 -4
  20. package/contextmenu/contextmenu.d.ts +2 -2
  21. package/dataview/dataview.d.ts +9 -10
  22. package/datepicker/datepicker.d.ts +8 -8
  23. package/defer/defer.d.ts +2 -0
  24. package/dialog/dialog.d.ts +4 -4
  25. package/drawer/drawer.d.ts +2 -2
  26. package/dropdown/dropdown.d.ts +0 -23
  27. package/editor/editor.d.ts +2 -2
  28. package/esm2022/accordion/accordion.mjs +9 -35
  29. package/esm2022/accordion/style/accordionstyle.mjs +9 -7
  30. package/esm2022/api/primeicons.mjs +4 -4
  31. package/esm2022/api/scrolleroptions.mjs +1 -1
  32. package/esm2022/api/selectitemgroup.mjs +1 -1
  33. package/esm2022/api/shared.mjs +6 -6
  34. package/esm2022/autocomplete/autocomplete.mjs +277 -311
  35. package/esm2022/autocomplete/style/autocompletestyle.mjs +12 -12
  36. package/esm2022/avatar/avatar.mjs +3 -3
  37. package/esm2022/avatar/style/avatarstyle.mjs +3 -3
  38. package/esm2022/badge/badge.mjs +33 -3
  39. package/esm2022/badge/style/badgestyle.mjs +3 -3
  40. package/esm2022/base/style/basestyle.mjs +6 -4
  41. package/esm2022/basecomponent/basecomponent.mjs +8 -2
  42. package/esm2022/blockui/blockui.mjs +6 -6
  43. package/esm2022/breadcrumb/breadcrumb.mjs +94 -101
  44. package/esm2022/breadcrumb/style/breadcrumbstyle.mjs +5 -1
  45. package/esm2022/button/button.mjs +19 -37
  46. package/esm2022/button/style/buttonstyle.mjs +17 -7
  47. package/esm2022/buttongroup/style/buttongroupstyle.mjs +9 -9
  48. package/esm2022/calendar/calendar.mjs +114 -114
  49. package/esm2022/calendar/style/calendarstyle.mjs +5 -5
  50. package/esm2022/card/card.mjs +10 -9
  51. package/esm2022/carousel/carousel.mjs +20 -19
  52. package/esm2022/carousel/style/carouselstyle.mjs +10 -1
  53. package/esm2022/cascadeselect/cascadeselect.mjs +182 -107
  54. package/esm2022/cascadeselect/style/cascadeselectstyle.mjs +37 -22
  55. package/esm2022/checkbox/checkbox.mjs +8 -8
  56. package/esm2022/chip/chip.mjs +10 -10
  57. package/esm2022/chip/style/chipstyle.mjs +2 -2
  58. package/esm2022/colorpicker/style/colorpickerstyle.mjs +29 -1
  59. package/esm2022/confirmdialog/confirmdialog.mjs +17 -14
  60. package/esm2022/confirmpopup/confirmpopup.mjs +45 -36
  61. package/esm2022/contextmenu/contextmenu.mjs +12 -12
  62. package/esm2022/contextmenu/style/contextmenustyle.mjs +11 -1
  63. package/esm2022/dataview/dataview.mjs +39 -113
  64. package/esm2022/datepicker/datepicker.mjs +91 -91
  65. package/esm2022/datepicker/style/datepickerstyle.mjs +23 -16
  66. package/esm2022/defer/defer.mjs +7 -1
  67. package/esm2022/dialog/dialog.mjs +29 -28
  68. package/esm2022/dialog/style/dialogstyle.mjs +22 -1
  69. package/esm2022/divider/style/dividerstyle.mjs +18 -14
  70. package/esm2022/dock/style/dockstyle.mjs +11 -1
  71. package/esm2022/drawer/drawer.mjs +8 -8
  72. package/esm2022/drawer/style/drawerstyle.mjs +5 -1
  73. package/esm2022/dropdown/dropdown.mjs +4 -18
  74. package/esm2022/dropdown/style/dropdownstyle.mjs +4 -4
  75. package/esm2022/editor/editor.mjs +1 -1
  76. package/esm2022/editor/style/editorstyle.mjs +52 -158
  77. package/esm2022/fieldset/fieldset.mjs +20 -21
  78. package/esm2022/fileupload/fileupload.mjs +108 -68
  79. package/esm2022/floatlabel/style/floatlabelstyle.mjs +5 -5
  80. package/esm2022/galleria/galleria.mjs +6 -1
  81. package/esm2022/galleria/style/galleriastyle.mjs +18 -1
  82. package/esm2022/iconfield/style/iconfieldstyle.mjs +2 -2
  83. package/esm2022/iftalabel/iftalabel.mjs +6 -6
  84. package/esm2022/iftalabel/style/iftalabelstyle.mjs +5 -5
  85. package/esm2022/image/image.mjs +36 -69
  86. package/esm2022/image/style/imagestyle.mjs +7 -7
  87. package/esm2022/imagecompare/imagecompare.mjs +158 -0
  88. package/esm2022/imagecompare/primeng-imagecompare.mjs +5 -0
  89. package/esm2022/imagecompare/public_api.mjs +3 -0
  90. package/esm2022/imagecompare/style/imagecomparestyle.mjs +124 -0
  91. package/esm2022/inplace/inplace.mjs +8 -8
  92. package/esm2022/inputmask/inputmask.mjs +10 -10
  93. package/esm2022/inputmask/style/inputmaskstyle.mjs +14 -7
  94. package/esm2022/inputnumber/inputnumber.mjs +41 -43
  95. package/esm2022/inputnumber/style/inputnumberstyle.mjs +27 -19
  96. package/esm2022/inputotp/inputotp.mjs +1 -13
  97. package/esm2022/inputtext/style/inputtextstyle.mjs +15 -9
  98. package/esm2022/keyfilter/keyfilter.mjs +4 -3
  99. package/esm2022/listbox/listbox.mjs +8 -53
  100. package/esm2022/megamenu/megamenu.mjs +18 -18
  101. package/esm2022/megamenu/style/megamenustyle.mjs +17 -1
  102. package/esm2022/menu/menu.mjs +46 -28
  103. package/esm2022/menubar/menubar.mjs +25 -25
  104. package/esm2022/menubar/style/menubarstyle.mjs +22 -2
  105. package/esm2022/message/message.mjs +12 -12
  106. package/esm2022/messages/messages.mjs +2 -1
  107. package/esm2022/metergroup/style/metergroupstyle.mjs +9 -9
  108. package/esm2022/multiselect/multiselect.mjs +214 -202
  109. package/esm2022/multiselect/style/multiselectstyle.mjs +13 -15
  110. package/esm2022/orderlist/orderlist.mjs +38 -80
  111. package/esm2022/organizationchart/style/organizationchartstyle.mjs +11 -22
  112. package/esm2022/overlaypanel/overlaypanel.mjs +24 -24
  113. package/esm2022/paginator/paginator.mjs +48 -48
  114. package/esm2022/paginator/style/paginatorstyle.mjs +10 -3
  115. package/esm2022/panel/panel.mjs +17 -37
  116. package/esm2022/panelmenu/panelmenu.mjs +32 -43
  117. package/esm2022/panelmenu/style/panelmenustyle.mjs +13 -5
  118. package/esm2022/password/password.mjs +26 -26
  119. package/esm2022/password/style/passwordstyle.mjs +14 -6
  120. package/esm2022/picklist/picklist.mjs +5 -5
  121. package/esm2022/popover/popover.mjs +21 -25
  122. package/esm2022/progressbar/style/progressbarstyle.mjs +29 -29
  123. package/esm2022/radiobutton/style/radiobuttonstyle.mjs +2 -2
  124. package/esm2022/rating/rating.mjs +12 -12
  125. package/esm2022/scroller/scroller.mjs +9 -9
  126. package/esm2022/scrollpanel/scrollpanel.mjs +4 -4
  127. package/esm2022/scrollpanel/style/scrollpanelstyle.mjs +3 -2
  128. package/esm2022/scrolltop/style/scrolltopstyle.mjs +7 -2
  129. package/esm2022/select/select.mjs +66 -113
  130. package/esm2022/select/style/selectstyle.mjs +14 -20
  131. package/esm2022/selectbutton/style/selectbuttonstyle.mjs +5 -5
  132. package/esm2022/skeleton/style/skeletonstyle.mjs +15 -2
  133. package/esm2022/slider/slider.mjs +18 -11
  134. package/esm2022/slider/style/sliderstyle.mjs +6 -6
  135. package/esm2022/speeddial/speeddial.mjs +1 -16
  136. package/esm2022/speeddial/style/speeddialstyle.mjs +2 -2
  137. package/esm2022/splitbutton/splitbutton.mjs +8 -8
  138. package/esm2022/splitbutton/style/splitbuttonstyle.mjs +9 -9
  139. package/esm2022/splitter/splitter.mjs +58 -18
  140. package/esm2022/stepper/style/stepperstyle.mjs +6 -1
  141. package/esm2022/styleclass/styleclass.mjs +2 -2
  142. package/esm2022/table/style/tablestyle.mjs +14 -7
  143. package/esm2022/table/table.mjs +411 -278
  144. package/esm2022/tabmenu/tabmenu.mjs +15 -33
  145. package/esm2022/tabs/tab.mjs +4 -3
  146. package/esm2022/tabs/tablist.mjs +9 -6
  147. package/esm2022/tabview/tabview.mjs +72 -64
  148. package/esm2022/terminal/style/terminalstyle.mjs +2 -2
  149. package/esm2022/textarea/style/textareastyle.mjs +9 -7
  150. package/esm2022/tieredmenu/style/tieredmenustyle.mjs +6 -1
  151. package/esm2022/tieredmenu/tieredmenu.mjs +12 -12
  152. package/esm2022/timeline/style/timelinestyle.mjs +2 -1
  153. package/esm2022/timeline/timeline.mjs +1 -16
  154. package/esm2022/toast/style/toaststyle.mjs +7 -1
  155. package/esm2022/togglebutton/style/togglebuttonstyle.mjs +2 -2
  156. package/esm2022/toggleswitch/toggleswitch.mjs +1 -10
  157. package/esm2022/tooltip/tooltip.mjs +33 -25
  158. package/esm2022/tree/style/treestyle.mjs +8 -6
  159. package/esm2022/tree/tree.mjs +44 -44
  160. package/esm2022/treeselect/style/treeselectstyle.mjs +15 -12
  161. package/esm2022/treeselect/treeselect.mjs +49 -49
  162. package/esm2022/treetable/style/treetablestyle.mjs +4 -4
  163. package/esm2022/treetable/treetable.mjs +20 -4
  164. package/esm2022/usestyle/usestyle.mjs +3 -2
  165. package/fesm2022/primeng-accordion.mjs +16 -40
  166. package/fesm2022/primeng-accordion.mjs.map +1 -1
  167. package/fesm2022/primeng-api.mjs +8 -8
  168. package/fesm2022/primeng-api.mjs.map +1 -1
  169. package/fesm2022/primeng-autocomplete.mjs +287 -321
  170. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  171. package/fesm2022/primeng-avatar.mjs +4 -4
  172. package/fesm2022/primeng-avatar.mjs.map +1 -1
  173. package/fesm2022/primeng-badge.mjs +34 -4
  174. package/fesm2022/primeng-badge.mjs.map +1 -1
  175. package/fesm2022/primeng-base.mjs +5 -3
  176. package/fesm2022/primeng-base.mjs.map +1 -1
  177. package/fesm2022/primeng-basecomponent.mjs +7 -1
  178. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  179. package/fesm2022/primeng-blockui.mjs +5 -5
  180. package/fesm2022/primeng-blockui.mjs.map +1 -1
  181. package/fesm2022/primeng-breadcrumb.mjs +97 -100
  182. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  183. package/fesm2022/primeng-button.mjs +34 -42
  184. package/fesm2022/primeng-button.mjs.map +1 -1
  185. package/fesm2022/primeng-buttongroup.mjs +8 -8
  186. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  187. package/fesm2022/primeng-calendar.mjs +117 -117
  188. package/fesm2022/primeng-calendar.mjs.map +1 -1
  189. package/fesm2022/primeng-card.mjs +9 -8
  190. package/fesm2022/primeng-card.mjs.map +1 -1
  191. package/fesm2022/primeng-carousel.mjs +28 -18
  192. package/fesm2022/primeng-carousel.mjs.map +1 -1
  193. package/fesm2022/primeng-cascadeselect.mjs +218 -128
  194. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  195. package/fesm2022/primeng-checkbox.mjs +7 -7
  196. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  197. package/fesm2022/primeng-chip.mjs +10 -10
  198. package/fesm2022/primeng-chip.mjs.map +1 -1
  199. package/fesm2022/primeng-colorpicker.mjs +28 -0
  200. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  201. package/fesm2022/primeng-confirmdialog.mjs +16 -13
  202. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  203. package/fesm2022/primeng-confirmpopup.mjs +44 -35
  204. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  205. package/fesm2022/primeng-contextmenu.mjs +21 -11
  206. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  207. package/fesm2022/primeng-dataview.mjs +38 -112
  208. package/fesm2022/primeng-dataview.mjs.map +1 -1
  209. package/fesm2022/primeng-datepicker.mjs +112 -105
  210. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  211. package/fesm2022/primeng-defer.mjs +6 -0
  212. package/fesm2022/primeng-defer.mjs.map +1 -1
  213. package/fesm2022/primeng-dialog.mjs +49 -27
  214. package/fesm2022/primeng-dialog.mjs.map +1 -1
  215. package/fesm2022/primeng-divider.mjs +17 -13
  216. package/fesm2022/primeng-divider.mjs.map +1 -1
  217. package/fesm2022/primeng-dock.mjs +10 -0
  218. package/fesm2022/primeng-dock.mjs.map +1 -1
  219. package/fesm2022/primeng-drawer.mjs +11 -7
  220. package/fesm2022/primeng-drawer.mjs.map +1 -1
  221. package/fesm2022/primeng-dropdown.mjs +6 -20
  222. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  223. package/fesm2022/primeng-editor.mjs +51 -157
  224. package/fesm2022/primeng-editor.mjs.map +1 -1
  225. package/fesm2022/primeng-fieldset.mjs +19 -20
  226. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  227. package/fesm2022/primeng-fileupload.mjs +107 -67
  228. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  229. package/fesm2022/primeng-floatlabel.mjs +4 -4
  230. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  231. package/fesm2022/primeng-galleria.mjs +22 -0
  232. package/fesm2022/primeng-galleria.mjs.map +1 -1
  233. package/fesm2022/primeng-iconfield.mjs +1 -1
  234. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  235. package/fesm2022/primeng-iftalabel.mjs +9 -9
  236. package/fesm2022/primeng-iftalabel.mjs.map +1 -1
  237. package/fesm2022/primeng-image.mjs +41 -74
  238. package/fesm2022/primeng-image.mjs.map +1 -1
  239. package/fesm2022/primeng-imagecompare.mjs +286 -0
  240. package/fesm2022/primeng-imagecompare.mjs.map +1 -0
  241. package/fesm2022/primeng-inplace.mjs +7 -7
  242. package/fesm2022/primeng-inplace.mjs.map +1 -1
  243. package/fesm2022/primeng-inputmask.mjs +22 -15
  244. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  245. package/fesm2022/primeng-inputnumber.mjs +66 -60
  246. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  247. package/fesm2022/primeng-inputotp.mjs +0 -12
  248. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  249. package/fesm2022/primeng-inputtext.mjs +14 -8
  250. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  251. package/fesm2022/primeng-keyfilter.mjs +3 -2
  252. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  253. package/fesm2022/primeng-listbox.mjs +7 -52
  254. package/fesm2022/primeng-listbox.mjs.map +1 -1
  255. package/fesm2022/primeng-megamenu.mjs +33 -17
  256. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  257. package/fesm2022/primeng-menu.mjs +45 -27
  258. package/fesm2022/primeng-menu.mjs.map +1 -1
  259. package/fesm2022/primeng-menubar.mjs +45 -25
  260. package/fesm2022/primeng-menubar.mjs.map +1 -1
  261. package/fesm2022/primeng-message.mjs +11 -11
  262. package/fesm2022/primeng-message.mjs.map +1 -1
  263. package/fesm2022/primeng-messages.mjs +1 -0
  264. package/fesm2022/primeng-messages.mjs.map +1 -1
  265. package/fesm2022/primeng-metergroup.mjs +8 -8
  266. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  267. package/fesm2022/primeng-multiselect.mjs +225 -215
  268. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  269. package/fesm2022/primeng-orderlist.mjs +37 -79
  270. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  271. package/fesm2022/primeng-organizationchart.mjs +10 -21
  272. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  273. package/fesm2022/primeng-overlaypanel.mjs +23 -23
  274. package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
  275. package/fesm2022/primeng-paginator.mjs +56 -49
  276. package/fesm2022/primeng-paginator.mjs.map +1 -1
  277. package/fesm2022/primeng-panel.mjs +16 -36
  278. package/fesm2022/primeng-panel.mjs.map +1 -1
  279. package/fesm2022/primeng-panelmenu.mjs +43 -46
  280. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  281. package/fesm2022/primeng-password.mjs +38 -30
  282. package/fesm2022/primeng-password.mjs.map +1 -1
  283. package/fesm2022/primeng-picklist.mjs +4 -4
  284. package/fesm2022/primeng-picklist.mjs.map +1 -1
  285. package/fesm2022/primeng-popover.mjs +20 -24
  286. package/fesm2022/primeng-popover.mjs.map +1 -1
  287. package/fesm2022/primeng-progressbar.mjs +28 -28
  288. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  289. package/fesm2022/primeng-radiobutton.mjs +1 -1
  290. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  291. package/fesm2022/primeng-rating.mjs +11 -11
  292. package/fesm2022/primeng-rating.mjs.map +1 -1
  293. package/fesm2022/primeng-scroller.mjs +8 -8
  294. package/fesm2022/primeng-scroller.mjs.map +1 -1
  295. package/fesm2022/primeng-scrollpanel.mjs +5 -4
  296. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  297. package/fesm2022/primeng-scrolltop.mjs +6 -1
  298. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  299. package/fesm2022/primeng-select.mjs +78 -131
  300. package/fesm2022/primeng-select.mjs.map +1 -1
  301. package/fesm2022/primeng-selectbutton.mjs +4 -4
  302. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  303. package/fesm2022/primeng-skeleton.mjs +14 -1
  304. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  305. package/fesm2022/primeng-slider.mjs +22 -15
  306. package/fesm2022/primeng-slider.mjs.map +1 -1
  307. package/fesm2022/primeng-speeddial.mjs +1 -16
  308. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  309. package/fesm2022/primeng-splitbutton.mjs +15 -15
  310. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  311. package/fesm2022/primeng-splitter.mjs +59 -19
  312. package/fesm2022/primeng-splitter.mjs.map +1 -1
  313. package/fesm2022/primeng-stepper.mjs +5 -0
  314. package/fesm2022/primeng-stepper.mjs.map +1 -1
  315. package/fesm2022/primeng-styleclass.mjs +1 -1
  316. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  317. package/fesm2022/primeng-table.mjs +424 -284
  318. package/fesm2022/primeng-table.mjs.map +1 -1
  319. package/fesm2022/primeng-tabmenu.mjs +14 -32
  320. package/fesm2022/primeng-tabmenu.mjs.map +1 -1
  321. package/fesm2022/primeng-tabs.mjs +11 -7
  322. package/fesm2022/primeng-tabs.mjs.map +1 -1
  323. package/fesm2022/primeng-tabview.mjs +71 -63
  324. package/fesm2022/primeng-tabview.mjs.map +1 -1
  325. package/fesm2022/primeng-terminal.mjs +1 -1
  326. package/fesm2022/primeng-terminal.mjs.map +1 -1
  327. package/fesm2022/primeng-textarea.mjs +8 -6
  328. package/fesm2022/primeng-textarea.mjs.map +1 -1
  329. package/fesm2022/primeng-tieredmenu.mjs +16 -11
  330. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  331. package/fesm2022/primeng-timeline.mjs +1 -15
  332. package/fesm2022/primeng-timeline.mjs.map +1 -1
  333. package/fesm2022/primeng-toast.mjs +6 -0
  334. package/fesm2022/primeng-toast.mjs.map +1 -1
  335. package/fesm2022/primeng-togglebutton.mjs +1 -1
  336. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  337. package/fesm2022/primeng-toggleswitch.mjs +0 -9
  338. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  339. package/fesm2022/primeng-tooltip.mjs +32 -24
  340. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  341. package/fesm2022/primeng-tree.mjs +50 -48
  342. package/fesm2022/primeng-tree.mjs.map +1 -1
  343. package/fesm2022/primeng-treeselect.mjs +62 -59
  344. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  345. package/fesm2022/primeng-treetable.mjs +22 -6
  346. package/fesm2022/primeng-treetable.mjs.map +1 -1
  347. package/fesm2022/primeng-usestyle.mjs +2 -1
  348. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  349. package/fieldset/fieldset.d.ts +3 -3
  350. package/fileupload/fileupload.d.ts +21 -5
  351. package/iftalabel/iftalabel.d.ts +2 -2
  352. package/image/image.d.ts +6 -7
  353. package/imagecompare/imagecompare.d.ts +52 -0
  354. package/imagecompare/index.d.ts +5 -0
  355. package/imagecompare/public_api.d.ts +2 -0
  356. package/imagecompare/style/imagecomparestyle.d.ts +35 -0
  357. package/inplace/inplace.d.ts +2 -2
  358. package/inputmask/inputmask.d.ts +2 -2
  359. package/inputnumber/inputnumber.d.ts +4 -5
  360. package/inputotp/inputotp.d.ts +1 -2
  361. package/listbox/listbox.d.ts +2 -3
  362. package/megamenu/megamenu.d.ts +4 -4
  363. package/menu/menu.d.ts +10 -4
  364. package/menubar/menubar.d.ts +5 -5
  365. package/message/message.d.ts +2 -2
  366. package/multiselect/multiselect.d.ts +16 -16
  367. package/orderlist/orderlist.d.ts +10 -11
  368. package/overlaypanel/overlaypanel.d.ts +3 -4
  369. package/package.json +219 -213
  370. package/paginator/paginator.d.ts +6 -6
  371. package/panel/panel.d.ts +3 -4
  372. package/panelmenu/panelmenu.d.ts +2 -3
  373. package/password/password.d.ts +4 -4
  374. package/popover/popover.d.ts +7 -5
  375. package/rating/rating.d.ts +4 -4
  376. package/scroller/scroller.d.ts +2 -2
  377. package/select/select.d.ts +12 -13
  378. package/speeddial/speeddial.d.ts +2 -3
  379. package/splitbutton/splitbutton.d.ts +2 -2
  380. package/splitter/splitter.d.ts +9 -2
  381. package/table/table.d.ts +47 -6
  382. package/tabmenu/tabmenu.d.ts +5 -6
  383. package/tabview/tabview.d.ts +4 -5
  384. package/tieredmenu/tieredmenu.d.ts +2 -2
  385. package/timeline/timeline.d.ts +0 -1
  386. package/toggleswitch/toggleswitch.d.ts +0 -1
  387. package/tooltip/tooltip.d.ts +2 -1
  388. package/tree/tree.d.ts +6 -6
  389. package/treeselect/treeselect.d.ts +9 -9
@@ -54,7 +54,13 @@ export class BaseComponent {
54
54
  this.templates?.forEach((item) => {
55
55
  const type = item.getType();
56
56
  const template = `${type}Template`;
57
- this[template] = item.template;
57
+ if (this.hasOwnProperty(template)) {
58
+ this[template] = item.template;
59
+ }
60
+ if (this.hasOwnProperty(`_${template}`)) {
61
+ this[`_${template}`] = item.template;
62
+ }
63
+ this[type] = item.template;
58
64
  });
59
65
  }
60
66
  ngOnChanges(changes) {
@@ -174,4 +180,4 @@ export class BaseComponent {
174
180
  type: ContentChildren,
175
181
  args: [PrimeTemplate]
176
182
  }] }); })();
177
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZWNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXNlY29tcG9uZW50L2Jhc2Vjb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQWEsU0FBUyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNySyxPQUFPLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBR2hFLE1BQU0sT0FBTyxhQUFhO0lBQ2YsUUFBUSxHQUFhLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUV0QyxVQUFVLEdBQVEsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRXRDLEVBQUUsR0FBZSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFM0IsUUFBUSxHQUFhLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUV0QyxFQUFFLEdBQXNCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRTNELFFBQVEsR0FBYyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFeEMsTUFBTSxHQUFZLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUVsQyxrQkFBa0IsR0FBdUIsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFcEUsU0FBUyxHQUFjLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUV6QyxhQUFhLENBQU07SUFFbkIsTUFBTSxDQUFNO0lBRVYsRUFBRSxDQUFxQjtJQUVoQyxJQUFJLFlBQVk7UUFDWixPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2QsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUxQixnQkFBZ0IsQ0FBQyxRQUFRO1FBQ3JCLElBQUksUUFBUSxFQUFFLENBQUM7WUFDWCxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3JMLENBQUM7SUFDTCxDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQU8sRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLE1BQU0sR0FBRyxFQUFFO1FBQzFDLE9BQU8sV0FBVyxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkIsQ0FBQztJQUNMLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLGFBQWEsQ0FBQztRQUNyQyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDckQsQ0FBQztJQUNMLENBQUM7SUFFK0IsU0FBUyxDQUF1QztJQUVoRixrQkFBa0I7UUFDZCxJQUFJLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzdCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM1QixNQUFNLFFBQVEsR0FBRyxHQUFHLElBQUksVUFBVSxDQUFDO1lBQ25DLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUN0RCxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDO1lBQ3ZCLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDN0MsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUNsRixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELFdBQVc7UUFDUCxNQUFNLEtBQUssR0FBRyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDMUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFFRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUN4Qiw4QkFBOEI7UUFDbEMsQ0FBQyxDQUFDO1FBRUYsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ25ELElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osU0FBUztRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxjQUFjLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUU3RixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLHFCQUFxQixFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7WUFDM0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1lBQ3pGLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztZQUNyRixJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFaEYsS0FBSyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxZQUFZO1FBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDbkYsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLGlCQUFpQixFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFFeEUsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLFlBQVksRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1lBQ3pHLElBQUksQ0FBQyxjQUFjLEVBQUUsU0FBUyxDQUFDLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUU1RyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBRUQsY0FBYztRQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUMxQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLHFCQUFxQixFQUFFLEVBQUUsQ0FBQztZQUVsRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztZQUM1RixLQUFLLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1YsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNyQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzFFLENBQUM7SUFDTCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsTUFBTTtRQUN6QixNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxjQUFjLEVBQUUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDOUYsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQy9DLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUU7WUFDekQsR0FBRyxJQUFJLENBQUMsWUFBWTtTQUN2QixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxHQUFHLFdBQVcsRUFBRSxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELHdCQUF3QjtRQUNwQixJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxRQUFRLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3QixZQUFZLENBQUMsRUFBRSxDQUFDLGNBQWMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsRUFBRSxDQUFDLEdBQVcsRUFBRSxJQUFhO1FBQ3pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRS9HLElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDaEMsT0FBTyxPQUFPLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBRUQsT0FBTyxPQUFPLE9BQU8sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxFQUFFLENBQUMsR0FBVztRQUNWLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsWUFBWSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEQsSUFBSSxPQUFPLE1BQU0sS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUMvQixPQUFPLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLENBQUM7UUFFRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzdCLE9BQU8sTUFBTSxDQUFDO1FBQ2xCLENBQUM7YUFBTSxDQUFDO1lBQ0osT0FBTyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsd0dBQXdHO0lBQ3hHLDJHQUEyRztJQUMzRyxJQUFJO0lBRUosSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxDQUFDO3VHQW5NUSxhQUFhOzZEQUFiLGFBQWE7d0NBOERMLGFBQWE7Ozs7c0ZBL0RRLENBQUMsa0JBQWtCLEVBQUUsU0FBUyxDQUFDOztpRkFDNUQsYUFBYTtjQUR6QixTQUFTO2VBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxFQUFFO2dCQXdCOUQsRUFBRTtrQkFBVixLQUFLO1lBdUMwQixTQUFTO2tCQUF4QyxlQUFlO21CQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCwgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5qZWN0b3IsIElucHV0LCBQTEFURk9STV9JRCwgUXVlcnlMaXN0LCBSZW5kZXJlcjIsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lLCBUaGVtZVNlcnZpY2UgfSBmcm9tICdAcHJpbWV1aXgvc3R5bGVkJztcbmltcG9ydCB7IGdldEtleVZhbHVlLCB1dWlkIH0gZnJvbSAnQHByaW1ldWl4L3V0aWxzJztcbmltcG9ydCB7IFByaW1lVGVtcGxhdGUgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCYXNlLCBCYXNlU3R5bGUgfSBmcm9tICdwcmltZW5nL2Jhc2UnO1xuaW1wb3J0IHsgUHJpbWVORyB9IGZyb20gJ3ByaW1lbmcvY29uZmlnJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnRTdHlsZSB9IGZyb20gJy4vc3R5bGUvYmFzZWNvbXBvbmVudHN0eWxlJztcblxuQERpcmVjdGl2ZSh7IHN0YW5kYWxvbmU6IHRydWUsIHByb3ZpZGVyczogW0Jhc2VDb21wb25lbnRTdHlsZSwgQmFzZVN0eWxlXSB9KVxuZXhwb3J0IGNsYXNzIEJhc2VDb21wb25lbnQge1xuICAgIHB1YmxpYyBkb2N1bWVudDogRG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXG4gICAgcHVibGljIHBsYXRmb3JtSWQ6IGFueSA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgICBwdWJsaWMgZWw6IEVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIgPSBpbmplY3QoUmVuZGVyZXIyKTtcblxuICAgIHB1YmxpYyBjb25maWc6IFByaW1lTkcgPSBpbmplY3QoUHJpbWVORyk7XG5cbiAgICBwdWJsaWMgYmFzZUNvbXBvbmVudFN0eWxlOiBCYXNlQ29tcG9uZW50U3R5bGUgPSBpbmplY3QoQmFzZUNvbXBvbmVudFN0eWxlKTtcblxuICAgIHB1YmxpYyBiYXNlU3R5bGU6IEJhc2VTdHlsZSA9IGluamVjdChCYXNlU3R5bGUpO1xuXG4gICAgcHVibGljIHNjb3BlZFN0eWxlRWw6IGFueTtcblxuICAgIHB1YmxpYyByb290RWw6IGFueTtcblxuICAgIEBJbnB1dCgpIGR0OiBPYmplY3QgfCB1bmRlZmluZWQ7XG5cbiAgICBnZXQgc3R5bGVPcHRpb25zKCkge1xuICAgICAgICByZXR1cm4geyBub25jZTogdGhpcy5jb25maWc/LmNzcCgpLm5vbmNlIH07XG4gICAgfVxuXG4gICAgZ2V0IF9uYW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25zdHJ1Y3Rvci5uYW1lLnJlcGxhY2UoL15fLywgJycpLnRvTG93ZXJDYXNlKCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXBvbmVudFN0eWxlKCkge1xuICAgICAgICByZXR1cm4gdGhpc1snX2NvbXBvbmVudFN0eWxlJ107XG4gICAgfVxuXG4gICAgYXR0clNlbGVjdG9yID0gdXVpZCgncGMnKTtcblxuICAgIF9nZXRIb3N0SW5zdGFuY2UoaW5zdGFuY2UpIHtcbiAgICAgICAgaWYgKGluc3RhbmNlKSB7XG4gICAgICAgICAgICByZXR1cm4gaW5zdGFuY2UgPyAodGhpc1snaG9zdE5hbWUnXSA/IChpbnN0YW5jZVsnbmFtZSddID09PSB0aGlzWydob3N0TmFtZSddID8gaW5zdGFuY2UgOiB0aGlzLl9nZXRIb3N0SW5zdGFuY2UoaW5zdGFuY2UucGFyZW50SW5zdGFuY2UpKSA6IGluc3RhbmNlLnBhcmVudEluc3RhbmNlKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIF9nZXRPcHRpb25WYWx1ZShvcHRpb25zLCBrZXkgPSAnJywgcGFyYW1zID0ge30pIHtcbiAgICAgICAgcmV0dXJuIGdldEtleVZhbHVlKG9wdGlvbnMsIGtleSwgcGFyYW1zKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZG9jdW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX2xvYWRTdHlsZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5yb290RWwgPSB0aGlzLmVsPy5uYXRpdmVFbGVtZW50O1xuICAgICAgICBpZiAodGhpcy5yb290RWwpIHtcbiAgICAgICAgICAgIHRoaXMucm9vdEVsPy5zZXRBdHRyaWJ1dGUodGhpcy5hdHRyU2VsZWN0b3IsICcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBDb250ZW50Q2hpbGRyZW4oUHJpbWVUZW1wbGF0ZSkgdGVtcGxhdGVzOiBRdWVyeUxpc3Q8UHJpbWVUZW1wbGF0ZT4gfCB1bmRlZmluZWQ7XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMudGVtcGxhdGVzPy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0eXBlID0gaXRlbS5nZXRUeXBlKCk7XG4gICAgICAgICAgICBjb25zdCB0ZW1wbGF0ZSA9IGAke3R5cGV9VGVtcGxhdGVgO1xuICAgICAgICAgICAgdGhpc1t0ZW1wbGF0ZV0gPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGlmICh0aGlzLmRvY3VtZW50ICYmICFpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgZHQgfSA9IGNoYW5nZXM7XG4gICAgICAgICAgICBpZiAoZHQgJiYgZHQuY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbG9hZFNjb3BlZFRoZW1lU3R5bGVzKGR0LmN1cnJlbnRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdGhlbWVDaGFuZ2VMaXN0ZW5lcigoKSA9PiB0aGlzLl9sb2FkU2NvcGVkVGhlbWVTdHlsZXMoZHQuY3VycmVudFZhbHVlKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5fdW5sb2FkU2NvcGVkVGhlbWVTdHlsZXMoKTtcbiAgICB9XG5cbiAgICBfbG9hZFN0eWxlcygpIHtcbiAgICAgICAgY29uc3QgX2xvYWQgPSAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIUJhc2UuaXNTdHlsZU5hbWVMb2FkZWQoJ2Jhc2UnKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuYmFzZVN0eWxlLmxvYWRDU1ModGhpcy5zdHlsZU9wdGlvbnMpO1xuICAgICAgICAgICAgICAgIEJhc2Uuc2V0TG9hZGVkU3R5bGVOYW1lKCdiYXNlJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2xvYWRUaGVtZVN0eWxlcygpO1xuICAgICAgICAgICAgLy8gQHRvZG8gdXBkYXRlIGNvbmZpZy50aGVtZSgpXG4gICAgICAgIH07XG5cbiAgICAgICAgX2xvYWQoKTtcbiAgICAgICAgdGhpcy5fdGhlbWVDaGFuZ2VMaXN0ZW5lcigoKSA9PiBfbG9hZCgpKTtcbiAgICB9XG5cbiAgICBfbG9hZENvcmVTdHlsZXMoKSB7XG4gICAgICAgIGlmICghQmFzZS5pc1N0eWxlTmFtZUxvYWRlZCgnYmFzZScpICYmIHRoaXMuX25hbWUpIHtcbiAgICAgICAgICAgIHRoaXMuYmFzZUNvbXBvbmVudFN0eWxlLmxvYWRDU1ModGhpcy5zdHlsZU9wdGlvbnMpO1xuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRTdHlsZSAmJiB0aGlzLmNvbXBvbmVudFN0eWxlPy5sb2FkQ1NTKHRoaXMuc3R5bGVPcHRpb25zKTtcbiAgICAgICAgICAgIEJhc2Uuc2V0TG9hZGVkU3R5bGVOYW1lKHRoaXMuY29tcG9uZW50U3R5bGU/Lm5hbWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgX2xvYWRUaGVtZVN0eWxlcygpIHtcbiAgICAgICAgLy8gY29tbW9uXG4gICAgICAgIGlmICghVGhlbWUuaXNTdHlsZU5hbWVMb2FkZWQoJ2NvbW1vbicpKSB7XG4gICAgICAgICAgICBjb25zdCB7IHByaW1pdGl2ZSwgc2VtYW50aWMsIGdsb2JhbCwgc3R5bGUgfSA9IHRoaXMuY29tcG9uZW50U3R5bGU/LmdldENvbW1vblRoZW1lPy4oKSB8fCB7fTtcblxuICAgICAgICAgICAgdGhpcy5iYXNlU3R5bGUubG9hZChwcmltaXRpdmU/LmNzcywgeyBuYW1lOiAncHJpbWl0aXZlLXZhcmlhYmxlcycsIC4uLnRoaXMuc3R5bGVPcHRpb25zIH0pO1xuICAgICAgICAgICAgdGhpcy5iYXNlU3R5bGUubG9hZChzZW1hbnRpYz8uY3NzLCB7IG5hbWU6ICdzZW1hbnRpYy12YXJpYWJsZXMnLCAuLi50aGlzLnN0eWxlT3B0aW9ucyB9KTtcbiAgICAgICAgICAgIHRoaXMuYmFzZVN0eWxlLmxvYWQoZ2xvYmFsPy5jc3MsIHsgbmFtZTogJ2dsb2JhbC12YXJpYWJsZXMnLCAuLi50aGlzLnN0eWxlT3B0aW9ucyB9KTtcbiAgICAgICAgICAgIHRoaXMuYmFzZVN0eWxlLmxvYWRUaGVtZSh7IG5hbWU6ICdnbG9iYWwtc3R5bGUnLCAuLi50aGlzLnN0eWxlT3B0aW9ucyB9LCBzdHlsZSk7XG5cbiAgICAgICAgICAgIFRoZW1lLnNldExvYWRlZFN0eWxlTmFtZSgnY29tbW9uJyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBjb21wb25lbnRcbiAgICAgICAgaWYgKCFUaGVtZS5pc1N0eWxlTmFtZUxvYWRlZCh0aGlzLmNvbXBvbmVudFN0eWxlPy5uYW1lKSAmJiB0aGlzLmNvbXBvbmVudFN0eWxlPy5uYW1lKSB7XG4gICAgICAgICAgICBjb25zdCB7IGNzcywgc3R5bGUgfSA9IHRoaXMuY29tcG9uZW50U3R5bGU/LmdldENvbXBvbmVudFRoZW1lPy4oKSB8fCB7fTtcblxuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRTdHlsZT8ubG9hZChjc3MsIHsgbmFtZTogYCR7dGhpcy5jb21wb25lbnRTdHlsZT8ubmFtZX0tdmFyaWFibGVzYCwgLi4udGhpcy5zdHlsZU9wdGlvbnMgfSk7XG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudFN0eWxlPy5sb2FkVGhlbWUoeyBuYW1lOiBgJHt0aGlzLmNvbXBvbmVudFN0eWxlPy5uYW1lfS1zdHlsZWAsIC4uLnRoaXMuc3R5bGVPcHRpb25zIH0sIHN0eWxlKTtcblxuICAgICAgICAgICAgVGhlbWUuc2V0TG9hZGVkU3R5bGVOYW1lKHRoaXMuY29tcG9uZW50U3R5bGU/Lm5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gbGF5ZXIgb3JkZXJcbiAgICAgICAgaWYgKCFUaGVtZS5pc1N0eWxlTmFtZUxvYWRlZCgnbGF5ZXItb3JkZXInKSkge1xuICAgICAgICAgICAgY29uc3QgbGF5ZXJPcmRlciA9IHRoaXMuY29tcG9uZW50U3R5bGU/LmdldExheWVyT3JkZXJUaGVtZUNTUz8uKCk7XG5cbiAgICAgICAgICAgIHRoaXMuYmFzZVN0eWxlLmxvYWQobGF5ZXJPcmRlciwgeyBuYW1lOiAnbGF5ZXItb3JkZXInLCBmaXJzdDogdHJ1ZSwgLi4udGhpcy5zdHlsZU9wdGlvbnMgfSk7XG4gICAgICAgICAgICBUaGVtZS5zZXRMb2FkZWRTdHlsZU5hbWUoJ2xheWVyLW9yZGVyJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5kdCkge1xuICAgICAgICAgICAgdGhpcy5fbG9hZFNjb3BlZFRoZW1lU3R5bGVzKHRoaXMuZHQpO1xuICAgICAgICAgICAgdGhpcy5fdGhlbWVDaGFuZ2VMaXN0ZW5lcigoKSA9PiB0aGlzLl9sb2FkU2NvcGVkVGhlbWVTdHlsZXModGhpcy5kdCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgX2xvYWRTY29wZWRUaGVtZVN0eWxlcyhwcmVzZXQpIHtcbiAgICAgICAgY29uc3QgeyBjc3MgfSA9IHRoaXMuY29tcG9uZW50U3R5bGU/LmdldFByZXNldFRoZW1lPy4ocHJlc2V0LCBgWyR7dGhpcy5hdHRyU2VsZWN0b3J9XWApIHx8IHt9O1xuICAgICAgICBjb25zdCBzY29wZWRTdHlsZSA9IHRoaXMuY29tcG9uZW50U3R5bGU/LmxvYWQoY3NzLCB7XG4gICAgICAgICAgICBuYW1lOiBgJHt0aGlzLmF0dHJTZWxlY3Rvcn0tJHt0aGlzLmNvbXBvbmVudFN0eWxlPy5uYW1lfWAsXG4gICAgICAgICAgICAuLi50aGlzLnN0eWxlT3B0aW9uc1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnNjb3BlZFN0eWxlRWwgPSBzY29wZWRTdHlsZT8uZWw7XG4gICAgfVxuXG4gICAgX3VubG9hZFNjb3BlZFRoZW1lU3R5bGVzKCkge1xuICAgICAgICB0aGlzLnNjb3BlZFN0eWxlRWw/LnJlbW92ZSgpO1xuICAgIH1cblxuICAgIF90aGVtZUNoYW5nZUxpc3RlbmVyKGNhbGxiYWNrID0gKCkgPT4ge30pIHtcbiAgICAgICAgQmFzZS5jbGVhckxvYWRlZFN0eWxlTmFtZXMoKTtcbiAgICAgICAgVGhlbWVTZXJ2aWNlLm9uKCd0aGVtZTpjaGFuZ2UnLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgY3goYXJnOiBzdHJpbmcsIHJlc3Q/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBjbGFzc2VzID0gdGhpcy5wYXJlbnQgPyB0aGlzLnBhcmVudC5jb21wb25lbnRTdHlsZT8uY2xhc3Nlcz8uW2FyZ10gOiB0aGlzLmNvbXBvbmVudFN0eWxlPy5jbGFzc2VzPy5bYXJnXTtcblxuICAgICAgICBpZiAodHlwZW9mIGNsYXNzZXMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHJldHVybiBjbGFzc2VzKHsgaW5zdGFuY2U6IHRoaXMgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdHlwZW9mIGNsYXNzZXMgPT09ICdzdHJpbmcnID8gY2xhc3NlcyA6IGFyZztcbiAgICB9XG5cbiAgICBzeChhcmc6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHN0eWxlcyA9IHRoaXMuY29tcG9uZW50U3R5bGU/LmlubGluZVN0eWxlcz8uW2FyZ107XG4gICAgICAgIGlmICh0eXBlb2Ygc3R5bGVzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICByZXR1cm4gc3R5bGVzKHsgaW5zdGFuY2U6IHRoaXMgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZW9mIHN0eWxlcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiBzdHlsZXM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4geyAuLi5zdHlsZXMgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGN4KGtleSA9ICcnLCBwYXJhbXMgPSB7fSkge1xuICAgIC8vICAgICBjb25zdCBjbGFzc2VzID0gdGhpcy5wYXJlbnQgPyB0aGlzLnBhcmVudC5jb21wb25lbnRTdHlsZT8uY2xhc3NlcyA6IHRoaXMuY29tcG9uZW50U3R5bGU/LmNsYXNzZXM7XG4gICAgLy8gICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb25WYWx1ZShjbGFzc2VzKHsgaW5zdGFuY2U6IHRoaXMuX2dldEhvc3RJbnN0YW5jZSh0aGlzKSB9KSwga2V5LCB7IC4uLnBhcmFtcyB9KTtcbiAgICAvLyB9XG5cbiAgICBnZXQgcGFyZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpc1sncGFyZW50SW5zdGFuY2UnXTtcbiAgICB9XG59XG4iXX0=
183
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZWNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXNlY29tcG9uZW50L2Jhc2Vjb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQWEsU0FBUyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNySyxPQUFPLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBR2hFLE1BQU0sT0FBTyxhQUFhO0lBQ2YsUUFBUSxHQUFhLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUV0QyxVQUFVLEdBQVEsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRXRDLEVBQUUsR0FBZSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFM0IsUUFBUSxHQUFhLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUV0QyxFQUFFLEdBQXNCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRTNELFFBQVEsR0FBYyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFeEMsTUFBTSxHQUFZLE1BQU0sQ0FBQyxPQUFP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b20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5qZWN0b3IsIElucHV0LCBQTEFURk9STV9JRCwgUXVlcnlMaXN0LCBSZW5kZXJlcjIsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lLCBUaGVtZVNlcnZpY2UgfSBmcm9tICdAcHJpbWV1aXgvc3R5bGVkJztcbmltcG9ydCB7IGdldEtleVZhbHVlLCB1dWlkIH0gZnJvbSAnQHByaW1ldWl4L3V0aWxzJztcbmltcG9ydCB7IFByaW1lVGVtcGxhdGUgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCYXNlLCBCYXNlU3R5bGUgfSBmcm9tICdwcmltZW5nL2Jhc2UnO1xuaW1wb3J0IHsgUHJpbWVORyB9IGZyb20gJ3ByaW1lbmcvY29uZmlnJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnRTdHlsZSB9IGZyb20gJy4vc3R5bGUvYmFzZWNvbXBvbmVudHN0eWxlJztcblxuQERpcmVjdGl2ZSh7IHN0YW5kYWxvbmU6IHRydWUsIHByb3ZpZGVyczogW0Jhc2VDb21wb25lbnRTdHlsZSwgQmFzZVN0eWxlXSB9KVxuZXhwb3J0IGNsYXNzIEJhc2VDb21wb25lbnQge1xuICAgIHB1YmxpYyBkb2N1bWVudDogRG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXG4gICAgcHVibGljIHBsYXRmb3JtSWQ6IGFueSA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgICBwdWJsaWMgZWw6IEVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIgPSBpbmplY3QoUmVuZGVyZXIyKTtcblxuICAgIHB1YmxpYyBjb25maWc6IFByaW1lTkcgPSBpbmplY3QoUHJpbWVORyk7XG5cbiAgICBwdWJsaWMgYmFzZUNvbXBvbmVudFN0eWxlOiBCYXNlQ29tcG9uZW50U3R5bGUgPSBpbmplY3QoQmFzZUNvbXBvbmVudFN0eWxlKTtcblxuICAgIHB1YmxpYyBiYXNlU3R5bGU6IEJhc2VTdHlsZSA9IGluamVjdChCYXNlU3R5bGUpO1xuXG4gICAgcHVibGljIHNjb3BlZFN0eWxlRWw6IGFueTtcblxuICAgIHB1YmxpYyByb290RWw6IGFueTtcblxuICAgIEBJbnB1dCgpIGR0OiBPYmplY3QgfCB1bmRlZmluZWQ7XG5cbiAgICBnZXQgc3R5bGVPcHRpb25zKCkge1xuICAgICAgICByZXR1cm4geyBub25jZTogdGhpcy5jb25maWc/LmNzcCgpLm5vbmNlIH07XG4gICAgfVxuXG4gICAgZ2V0IF9uYW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25zdHJ1Y3Rvci5uYW1lLnJlcGxhY2UoL15fLywgJycpLnRvTG93ZXJDYXNlKCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXBvbmVudFN0eWxlKCkge1xuICAgICAgICByZXR1cm4gdGhpc1snX2NvbXBvbmVudFN0eWxlJ107XG4gICAgfVxuXG4gICAgYXR0clNlbGVjdG9yID0gdXVpZCgncGMnKTtcblxuICAgIF9nZXRIb3N0SW5zdGFuY2UoaW5zdGFuY2UpIHtcbiAgICAgICAgaWYgKGluc3RhbmNlKSB7XG4gICAgICAgICAgICByZXR1cm4gaW5zdGFuY2UgPyAodGhpc1snaG9zdE5hbWUnXSA/IChpbnN0YW5jZVsnbmFtZSddID09PSB0aGlzWydob3N0TmFtZSddID8gaW5zdGFuY2UgOiB0aGlzLl9nZXRIb3N0SW5zdGFuY2UoaW5zdGFuY2UucGFyZW50SW5zdGFuY2UpKSA6IGluc3RhbmNlLnBhcmVudEluc3RhbmNlKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIF9nZXRPcHRpb25WYWx1ZShvcHRpb25zLCBrZXkgPSAnJywgcGFyYW1zID0ge30pIHtcbiAgICAgICAgcmV0dXJuIGdldEtleVZhbHVlKG9wdGlvbnMsIGtleSwgcGFyYW1zKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMuZG9jdW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX2xvYWRTdHlsZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5yb290RWwgPSB0aGlzLmVsPy5uYXRpdmVFbGVtZW50O1xuICAgICAgICBpZiAodGhpcy5yb290RWwpIHtcbiAgICAgICAgICAgIHRoaXMucm9vdEVsPy5zZXRBdHRyaWJ1dGUodGhpcy5hdHRyU2VsZWN0b3IsICcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBDb250ZW50Q2hpbGRyZW4oUHJpbWVUZW1wbGF0ZSkgdGVtcGxhdGVzOiBRdWVyeUxpc3Q8UHJpbWVUZW1wbGF0ZT4gfCB1bmRlZmluZWQ7XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMudGVtcGxhdGVzPy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0eXBlID0gaXRlbS5nZXRUeXBlKCk7XG4gICAgICAgICAgICBjb25zdCB0ZW1wbGF0ZSA9IGAke3R5cGV9VGVtcGxhdGVgO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5oYXNPd25Qcm9wZXJ0eSh0ZW1wbGF0ZSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzW3RlbXBsYXRlXSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmhhc093blByb3BlcnR5KGBfJHt0ZW1wbGF0ZX1gKSkge1xuICAgICAgICAgICAgICAgIHRoaXNbYF8ke3RlbXBsYXRlfWBdID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpc1t0eXBlXSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgaWYgKHRoaXMuZG9jdW1lbnQgJiYgIWlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgY29uc3QgeyBkdCB9ID0gY2hhbmdlcztcbiAgICAgICAgICAgIGlmIChkdCAmJiBkdC5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sb2FkU2NvcGVkVGhlbWVTdHlsZXMoZHQuY3VycmVudFZhbHVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLl90aGVtZUNoYW5nZUxpc3RlbmVyKCgpID0+IHRoaXMuX2xvYWRTY29wZWRUaGVtZVN0eWxlcyhkdC5jdXJyZW50VmFsdWUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLl91bmxvYWRTY29wZWRUaGVtZVN0eWxlcygpO1xuICAgIH1cblxuICAgIF9sb2FkU3R5bGVzKCkge1xuICAgICAgICBjb25zdCBfbG9hZCA9ICgpID0+IHtcbiAgICAgICAgICAgIGlmICghQmFzZS5pc1N0eWxlTmFtZUxvYWRlZCgnYmFzZScpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5iYXNlU3R5bGUubG9hZENTUyh0aGlzLnN0eWxlT3B0aW9ucyk7XG4gICAgICAgICAgICAgICAgQmFzZS5zZXRMb2FkZWRTdHlsZU5hbWUoJ2Jhc2UnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fbG9hZFRoZW1lU3R5bGVzKCk7XG4gICAgICAgICAgICAvLyBAdG9kbyB1cGRhdGUgY29uZmlnLnRoZW1lKClcbiAgICAgICAgfTtcblxuICAgICAgICBfbG9hZCgpO1xuICAgICAgICB0aGlzLl90aGVtZUNoYW5nZUxpc3RlbmVyKCgpID0+IF9sb2FkKCkpO1xuICAgIH1cblxuICAgIF9sb2FkQ29yZVN0eWxlcygpIHtcbiAgICAgICAgaWYgKCFCYXNlLmlzU3R5bGVOYW1lTG9hZGVkKCdiYXNlJykgJiYgdGhpcy5fbmFtZSkge1xuICAgICAgICAgICAgdGhpcy5iYXNlQ29tcG9uZW50U3R5bGUubG9hZENTUyh0aGlzLnN0eWxlT3B0aW9ucyk7XG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudFN0eWxlICYmIHRoaXMuY29tcG9uZW50U3R5bGU/LmxvYWRDU1ModGhpcy5zdHlsZU9wdGlvbnMpO1xuICAgICAgICAgICAgQmFzZS5zZXRMb2FkZWRTdHlsZU5hbWUodGhpcy5jb21wb25lbnRTdHlsZT8ubmFtZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBfbG9hZFRoZW1lU3R5bGVzKCkge1xuICAgICAgICAvLyBjb21tb25cbiAgICAgICAgaWYgKCFUaGVtZS5pc1N0eWxlTmFtZUxvYWRlZCgnY29tbW9uJykpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgcHJpbWl0aXZlLCBzZW1hbnRpYywgZ2xvYmFsLCBzdHlsZSB9ID0gdGhpcy5jb21wb25lbnRTdHlsZT8uZ2V0Q29tbW9uVGhlbWU/LigpIHx8IHt9O1xuXG4gICAgICAgICAgICB0aGlzLmJhc2VTdHlsZS5sb2FkKHByaW1pdGl2ZT8uY3NzLCB7IG5hbWU6ICdwcmltaXRpdmUtdmFyaWFibGVzJywgLi4udGhpcy5zdHlsZU9wdGlvbnMgfSk7XG4gICAgICAgICAgICB0aGlzLmJhc2VTdHlsZS5sb2FkKHNlbWFudGljPy5jc3MsIHsgbmFtZTogJ3NlbWFudGljLXZhcmlhYmxlcycsIC4uLnRoaXMuc3R5bGVPcHRpb25zIH0pO1xuICAgICAgICAgICAgdGhpcy5iYXNlU3R5bGUubG9hZChnbG9iYWw/LmNzcywgeyBuYW1lOiAnZ2xvYmFsLXZhcmlhYmxlcycsIC4uLnRoaXMuc3R5bGVPcHRpb25zIH0pO1xuICAgICAgICAgICAgdGhpcy5iYXNlU3R5bGUubG9hZFRoZW1lKHsgbmFtZTogJ2dsb2JhbC1zdHlsZScsIC4uLnRoaXMuc3R5bGVPcHRpb25zIH0sIHN0eWxlKTtcblxuICAgICAgICAgICAgVGhlbWUuc2V0TG9hZGVkU3R5bGVOYW1lKCdjb21tb24nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGNvbXBvbmVudFxuICAgICAgICBpZiAoIVRoZW1lLmlzU3R5bGVOYW1lTG9hZGVkKHRoaXMuY29tcG9uZW50U3R5bGU/Lm5hbWUpICYmIHRoaXMuY29tcG9uZW50U3R5bGU/Lm5hbWUpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgY3NzLCBzdHlsZSB9ID0gdGhpcy5jb21wb25lbnRTdHlsZT8uZ2V0Q29tcG9uZW50VGhlbWU/LigpIHx8IHt9O1xuXG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudFN0eWxlPy5sb2FkKGNzcywgeyBuYW1lOiBgJHt0aGlzLmNvbXBvbmVudFN0eWxlPy5uYW1lfS12YXJpYWJsZXNgLCAuLi50aGlzLnN0eWxlT3B0aW9ucyB9KTtcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50U3R5bGU/LmxvYWRUaGVtZSh7IG5hbWU6IGAke3RoaXMuY29tcG9uZW50U3R5bGU/Lm5hbWV9LXN0eWxlYCwgLi4udGhpcy5zdHlsZU9wdGlvbnMgfSwgc3R5bGUpO1xuXG4gICAgICAgICAgICBUaGVtZS5zZXRMb2FkZWRTdHlsZU5hbWUodGhpcy5jb21wb25lbnRTdHlsZT8ubmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBsYXllciBvcmRlclxuICAgICAgICBpZiAoIVRoZW1lLmlzU3R5bGVOYW1lTG9hZGVkKCdsYXllci1vcmRlcicpKSB7XG4gICAgICAgICAgICBjb25zdCBsYXllck9yZGVyID0gdGhpcy5jb21wb25lbnRTdHlsZT8uZ2V0TGF5ZXJPcmRlclRoZW1lQ1NTPy4oKTtcblxuICAgICAgICAgICAgdGhpcy5iYXNlU3R5bGUubG9hZChsYXllck9yZGVyLCB7IG5hbWU6ICdsYXllci1vcmRlcicsIGZpcnN0OiB0cnVlLCAuLi50aGlzLnN0eWxlT3B0aW9ucyB9KTtcbiAgICAgICAgICAgIFRoZW1lLnNldExvYWRlZFN0eWxlTmFtZSgnbGF5ZXItb3JkZXInKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmR0KSB7XG4gICAgICAgICAgICB0aGlzLl9sb2FkU2NvcGVkVGhlbWVTdHlsZXModGhpcy5kdCk7XG4gICAgICAgICAgICB0aGlzLl90aGVtZUNoYW5nZUxpc3RlbmVyKCgpID0+IHRoaXMuX2xvYWRTY29wZWRUaGVtZVN0eWxlcyh0aGlzLmR0KSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBfbG9hZFNjb3BlZFRoZW1lU3R5bGVzKHByZXNldCkge1xuICAgICAgICBjb25zdCB7IGNzcyB9ID0gdGhpcy5jb21wb25lbnRTdHlsZT8uZ2V0UHJlc2V0VGhlbWU/LihwcmVzZXQsIGBbJHt0aGlzLmF0dHJTZWxlY3Rvcn1dYCkgfHwge307XG4gICAgICAgIGNvbnN0IHNjb3BlZFN0eWxlID0gdGhpcy5jb21wb25lbnRTdHlsZT8ubG9hZChjc3MsIHtcbiAgICAgICAgICAgIG5hbWU6IGAke3RoaXMuYXR0clNlbGVjdG9yfS0ke3RoaXMuY29tcG9uZW50U3R5bGU/Lm5hbWV9YCxcbiAgICAgICAgICAgIC4uLnRoaXMuc3R5bGVPcHRpb25zXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc2NvcGVkU3R5bGVFbCA9IHNjb3BlZFN0eWxlPy5lbDtcbiAgICB9XG5cbiAgICBfdW5sb2FkU2NvcGVkVGhlbWVTdHlsZXMoKSB7XG4gICAgICAgIHRoaXMuc2NvcGVkU3R5bGVFbD8ucmVtb3ZlKCk7XG4gICAgfVxuXG4gICAgX3RoZW1lQ2hhbmdlTGlzdGVuZXIoY2FsbGJhY2sgPSAoKSA9PiB7fSkge1xuICAgICAgICBCYXNlLmNsZWFyTG9hZGVkU3R5bGVOYW1lcygpO1xuICAgICAgICBUaGVtZVNlcnZpY2Uub24oJ3RoZW1lOmNoYW5nZScsIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICBjeChhcmc6IHN0cmluZywgcmVzdD86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGNsYXNzZXMgPSB0aGlzLnBhcmVudCA/IHRoaXMucGFyZW50LmNvbXBvbmVudFN0eWxlPy5jbGFzc2VzPy5bYXJnXSA6IHRoaXMuY29tcG9uZW50U3R5bGU/LmNsYXNzZXM/LlthcmddO1xuXG4gICAgICAgIGlmICh0eXBlb2YgY2xhc3NlcyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcmV0dXJuIGNsYXNzZXMoeyBpbnN0YW5jZTogdGhpcyB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0eXBlb2YgY2xhc3NlcyA9PT0gJ3N0cmluZycgPyBjbGFzc2VzIDogYXJnO1xuICAgIH1cblxuICAgIHN4KGFyZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3Qgc3R5bGVzID0gdGhpcy5jb21wb25lbnRTdHlsZT8uaW5saW5lU3R5bGVzPy5bYXJnXTtcbiAgICAgICAgaWYgKHR5cGVvZiBzdHlsZXMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHJldHVybiBzdHlsZXMoeyBpbnN0YW5jZTogdGhpcyB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2Ygc3R5bGVzID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgcmV0dXJuIHN0eWxlcztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB7IC4uLnN0eWxlcyB9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gY3goa2V5ID0gJycsIHBhcmFtcyA9IHt9KSB7XG4gICAgLy8gICAgIGNvbnN0IGNsYXNzZXMgPSB0aGlzLnBhcmVudCA/IHRoaXMucGFyZW50LmNvbXBvbmVudFN0eWxlPy5jbGFzc2VzIDogdGhpcy5jb21wb25lbnRTdHlsZT8uY2xhc3NlcztcbiAgICAvLyAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvblZhbHVlKGNsYXNzZXMoeyBpbnN0YW5jZTogdGhpcy5fZ2V0SG9zdEluc3RhbmNlKHRoaXMpIH0pLCBrZXksIHsgLi4ucGFyYW1zIH0pO1xuICAgIC8vIH1cblxuICAgIGdldCBwYXJlbnQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzWydwYXJlbnRJbnN0YW5jZSddO1xuICAgIH1cbn1cbiJdfQ==
@@ -62,7 +62,7 @@ export class BlockUI extends BaseComponent {
62
62
  * template of the content
63
63
  * @group Templates
64
64
  */
65
- contentTemplate;
65
+ content;
66
66
  mask;
67
67
  _blocked = false;
68
68
  animationEndListener;
@@ -130,7 +130,7 @@ export class BlockUI extends BaseComponent {
130
130
  i0.ɵɵcontentQuery(dirIndex, _c0, 5);
131
131
  } if (rf & 2) {
132
132
  let _t;
133
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.contentTemplate = _t.first);
133
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.content = _t.first);
134
134
  } }, viewQuery: function BlockUI_Query(rf, ctx) { if (rf & 1) {
135
135
  i0.ɵɵviewQuery(_c1, 5);
136
136
  } if (rf & 2) {
@@ -147,7 +147,7 @@ export class BlockUI extends BaseComponent {
147
147
  i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(8, _c3, !ctx.target))("ngStyle", i0.ɵɵpureFunction0(10, _c4));
148
148
  i0.ɵɵattribute("aria-busy", ctx.blocked)("data-pc-name", "blockui")("data-pc-section", "root");
149
149
  i0.ɵɵadvance(3);
150
- i0.ɵɵproperty("ngTemplateOutlet", ctx.contentTemplate);
150
+ i0.ɵɵproperty("ngTemplateOutlet", ctx.content);
151
151
  } }, dependencies: [CommonModule, i1.NgClass, i1.NgTemplateOutlet, i1.NgStyle, SharedModule], encapsulation: 2, changeDetection: 0 });
152
152
  }
153
153
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BlockUI, [{
@@ -167,7 +167,7 @@ export class BlockUI extends BaseComponent {
167
167
  [attr.data-pc-section]="'root'"
168
168
  >
169
169
  <ng-content></ng-content>
170
- <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>
170
+ <ng-container *ngTemplateOutlet="content"></ng-container>
171
171
  </div>
172
172
  `,
173
173
  changeDetection: ChangeDetectionStrategy.OnPush,
@@ -186,7 +186,7 @@ export class BlockUI extends BaseComponent {
186
186
  type: Input
187
187
  }], blocked: [{
188
188
  type: Input
189
- }], contentTemplate: [{
189
+ }], content: [{
190
190
  type: ContentChild,
191
191
  args: ['content']
192
192
  }], mask: [{
@@ -207,4 +207,4 @@ export class BlockUIModule {
207
207
  }]
208
208
  }], null, null); })();
209
209
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(BlockUIModule, { imports: [BlockUI], exports: [BlockUI, SharedModule] }); })();
210
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2t1aS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3VpL2Jsb2NrdWkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBaUIsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBYyxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQTBCLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5TixPQUFPLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7O0lBcUJ4Qyx3QkFBaUU7O0FBbkI3RTs7O0dBR0c7QUF1QkgsTUFBTSxPQUFPLE9BQVEsU0FBUSxhQUFhO0lBQ3RDOzs7T0FHRztJQUNNLE1BQU0sQ0FBTTtJQUNyQjs7O09BR0c7SUFDcUMsVUFBVSxHQUFZLElBQUksQ0FBQztJQUNuRTs7O09BR0c7SUFDb0MsVUFBVSxHQUFXLENBQUMsQ0FBQztJQUM5RDs7O09BR0c7SUFDTSxVQUFVLENBQXFCO0lBQ3hDOzs7T0FHRztJQUNILElBQWEsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLEdBQVk7UUFDcEIsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENB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Q3JDLFNBQVMsRUFBRSxDQUFDLFlBQVksQ0FBQzthQUM1QjtvQkFNWSxNQUFNO2tCQUFkLEtBQUs7WUFLa0MsVUFBVTtrQkFBakQsS0FBSzttQkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtZQUtDLFVBQVU7a0JBQWhELEtBQUs7bUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO1lBSzVCLFVBQVU7a0JBQWxCLEtBQUs7WUFLTyxPQUFPO2tCQUFuQixLQUFLO1lBZW1CLGVBQWU7a0JBQXZDLFlBQVk7bUJBQUMsU0FBUztZQUVKLElBQUk7a0JBQXRCLFNBQVM7bUJBQUMsTUFBTTs7a0ZBMUNSLE9BQU87QUF5SHBCLE1BQU0sT0FBTyxhQUFhO3VHQUFiLGFBQWE7NERBQWIsYUFBYTtnRUFIWixPQUFPLEVBQ0UsWUFBWTs7aUZBRXRCLGFBQWE7Y0FKekIsUUFBUTtlQUFDO2dCQUNOLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbEIsT0FBTyxFQUFFLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQzthQUNuQzs7d0ZBQ1ksYUFBYSxjQXpIYixPQUFPLGFBQVAsT0FBTyxFQXVIRyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBib29sZWFuQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5wdXQsIE5nTW9kdWxlLCBudW1iZXJBdHRyaWJ1dGUsIE9uRGVzdHJveSwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFkZENsYXNzLCBibG9ja0JvZHlTY3JvbGwsIHJlbW92ZUNsYXNzLCB1bmJsb2NrQm9keVNjcm9sbCB9IGZyb20gJ0BwcmltZXVpeC91dGlscyc7XG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAncHJpbWVuZy9iYXNlY29tcG9uZW50JztcbmltcG9ydCB7IFpJbmRleFV0aWxzIH0gZnJvbSAncHJpbWVuZy91dGlscyc7XG5pbXBvcnQgeyBCbG9ja1VpU3R5bGUgfSBmcm9tICcuL3N0eWxlL2Jsb2NrdWlzdHlsZSc7XG5cbi8qKlxuICogQmxvY2tVSSBjYW4gZWl0aGVyIGJsb2NrIG90aGVyIGNvbXBvbmVudHMgb3IgdGhlIHdob2xlIHBhZ2UuXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3AtYmxvY2tVSSwgcC1ibG9ja3VpLCBwLWJsb2NrLXVpJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFNoYXJlZE1vZHVsZV0sXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgI21hc2tcbiAgICAgICAgICAgIFtjbGFzc109XCJzdHlsZUNsYXNzXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtYnVzeV09XCJibG9ja2VkXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3AtYmxvY2t1aS1tYXNrLWRvY3VtZW50JzogIXRhcmdldCwgJ3AtYmxvY2t1aSBwLWJsb2NrdWktbWFzayBwLW92ZXJsYXktbWFzayc6IHRydWUgfVwiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7IGRpc3BsYXk6ICdub25lJyB9XCJcbiAgICAgICAgICAgIFthdHRyLmRhdGEtcGMtbmFtZV09XCInYmxvY2t1aSdcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS1wYy1zZWN0aW9uXT1cIidyb290J1wiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50VGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgYCxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHByb3ZpZGVyczogW0Jsb2NrVWlTdHlsZV1cbn0pXG5leHBvcnQgY2xhc3MgQmxvY2tVSSBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIC8qKlxuICAgICAqIE5hbWUgb2YgdGhlIGxvY2FsIG5nLXRlbXBsYXRlIHZhcmlhYmxlIHJlZmVycmluZyB0byBhbm90aGVyIGNvbXBvbmVudC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0YXJnZXQ6IGFueTtcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRvIGF1dG9tYXRpY2FsbHkgbWFuYWdlIGxheWVyaW5nLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBhdXRvWkluZGV4OiBib29sZWFuID0gdHJ1ZTtcbiAgICAvKipcbiAgICAgKiBCYXNlIHpJbmRleCB2YWx1ZSB0byB1c2UgaW4gbGF5ZXJpbmcuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSkgYmFzZVpJbmRleDogbnVtYmVyID0gMDtcbiAgICAvKipcbiAgICAgKiBDbGFzcyBvZiB0aGUgZWxlbWVudC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBzdHlsZUNsYXNzOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogQ3VycmVudCBibG9ja2VkIHN0YXRlIGFzIGEgYm9vbGVhbi5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBnZXQgYmxvY2tlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Jsb2NrZWQ7XG4gICAgfVxuICAgIHNldCBibG9ja2VkKHZhbDogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5tYXNrICYmIHRoaXMubWFzay5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgICAgICBpZiAodmFsKSB0aGlzLmJsb2NrKCk7XG4gICAgICAgICAgICBlbHNlIHRoaXMudW5ibG9jaygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fYmxvY2tlZCA9IHZhbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiB0ZW1wbGF0ZSBvZiB0aGUgY29udGVudFxuICAgICAqIEBncm91cCBUZW1wbGF0ZXNcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKCdjb250ZW50JykgY29udGVudFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgQFZpZXdDaGlsZCgnbWFzaycpIG1hc2s6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgICBfYmxvY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgYW5pbWF0aW9uRW5kTGlzdGVuZXI6IFZvaWRGdW5jdGlvbiB8IG51bGwgfCB1bmRlZmluZWQ7XG5cbiAgICBfY29tcG9uZW50U3R5bGUgPSBpbmplY3QoQmxvY2tVaVN0eWxlKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgICAgIGlmICh0aGlzLl9ibG9ja2VkKSB0aGlzLmJsb2NrKCk7XG5cbiAgICAgICAgaWYgKHRoaXMudGFyZ2V0ICYmICF0aGlzLnRhcmdldC5nZXRCbG9ja2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICB0aHJvdyAnVGFyZ2V0IG9mIEJsb2NrVUkgbXVzdCBpbXBsZW1lbnQgQmxvY2thYmxlVUkgaW50ZXJmYWNlJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJsb2NrKCkge1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgdGhpcy5fYmxvY2tlZCA9IHRydWU7XG4gICAgICAgICAgICAodGhpcy5tYXNrIGFzIEVsZW1lbnRSZWYpLm5hdGl2ZUVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdmbGV4JztcblxuICAgICAgICAgICAgaWYgKHRoaXMudGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXQuZ2V0QmxvY2thYmxlRWxlbWVudCgpLmFwcGVuZENoaWxkKCh0aGlzLm1hc2sgYXMgRWxlbWVudFJlZikubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXQuZ2V0QmxvY2thYmxlRWxlbWVudCgpLnN0eWxlLnBvc2l0aW9uID0gJ3JlbGF0aXZlJztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmRvY3VtZW50LmJvZHksICh0aGlzLm1hc2sgYXMgRWxlbWVudFJlZikubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICAgICAgYmxvY2tCb2R5U2Nyb2xsKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmF1dG9aSW5kZXgpIHtcbiAgICAgICAgICAgICAgICBaSW5kZXhVdGlscy5zZXQoJ21vZGFsJywgKHRoaXMubWFzayBhcyBFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50LCB0aGlzLmJhc2VaSW5kZXggKyB0aGlzLmNvbmZpZy56SW5kZXgubW9kYWwpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdW5ibG9jaygpIHtcbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgJiYgdGhpcy5tYXNrICYmICF0aGlzLmFuaW1hdGlvbkVuZExpc3RlbmVyKSB7XG4gICAgICAgICAgICAvLyB0aGlzLmFuaW1hdGlvbkVuZExpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4odGhpcy5tYXNrLm5hdGl2ZUVsZW1lbnQsICdhbmltYXRpb25lbmQnLCB0aGlzLmRlc3Ryb3lNb2RhbC5iaW5kKHRoaXMpKTtcbiAgICAgICAgICAgIC8vIFRPRE8gQWRkIGFuaW1hdGlvblxuICAgICAgICAgICAgdGhpcy5kZXN0cm95TW9kYWwoKTtcbiAgICAgICAgICAgIGFkZENsYXNzKHRoaXMubWFzay5uYXRpdmVFbGVtZW50LCAncC1vdmVybGF5LW1hc2stbGVhdmUnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGRlc3Ryb3lNb2RhbCgpIHtcbiAgICAgICAgdGhpcy5fYmxvY2tlZCA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5tYXNrICYmIGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIFpJbmRleFV0aWxzLmNsZWFyKHRoaXMubWFzay5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgIHJlbW92ZUNsYXNzKHRoaXMubWFzay5uYXRpdmVFbGVtZW50LCAncC1vdmVybGF5LW1hc2stbGVhdmUnKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLm1hc2submF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICB1bmJsb2NrQm9keVNjcm9sbCgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudW5iaW5kQW5pbWF0aW9uRW5kTGlzdGVuZXIoKTtcbiAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICB1bmJpbmRBbmltYXRpb25FbmRMaXN0ZW5lcigpIHtcbiAgICAgICAgaWYgKHRoaXMuYW5pbWF0aW9uRW5kTGlzdGVuZXIgJiYgdGhpcy5tYXNrKSB7XG4gICAgICAgICAgICB0aGlzLmFuaW1hdGlvbkVuZExpc3RlbmVyKCk7XG4gICAgICAgICAgICB0aGlzLmFuaW1hdGlvbkVuZExpc3RlbmVyID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLnVuYmxvY2soKTtcbiAgICAgICAgdGhpcy5kZXN0cm95TW9kYWwoKTtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0Jsb2NrVUldLFxuICAgIGV4cG9ydHM6IFtCbG9ja1VJLCBTaGFyZWRNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEJsb2NrVUlNb2R1bGUge31cbiJdfQ==
210
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2t1aS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3VpL2Jsb2NrdWkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBaUIsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBYyxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQTBCLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5TixPQUFPLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7O0lBcUJ4Qyx3QkFBeUQ7O0FBbkJyRTs7O0dBR0c7QUF1QkgsTUFBTSxPQUFPLE9BQVEsU0FBUSxhQUFhO0lBQ3RDOzs7T0FHRztJQUNNLE1BQU0sQ0FBTTtJQUNyQjs7O09BR0c7SUFDcUMsVUFBVSxHQUFZLElBQUksQ0FBQztJQUNuRTs7O09BR0c7SUFDb0MsVUFBVSxHQUFXLENBQUMsQ0FBQztJQUM5RDs7O09BR0c7SUFDTSxVQUFVLENBQXFCO0lBQ3hDOzs7T0FHRztJQUNILElBQWEsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLEdBQVk7UUFDcEIsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENB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Q3JDLFNBQVMsRUFBRSxDQUFDLFlBQVksQ0FBQzthQUM1QjtvQkFNWSxNQUFNO2tCQUFkLEtBQUs7WUFLa0MsVUFBVTtrQkFBakQsS0FBSzttQkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtZQUtDLFVBQVU7a0JBQWhELEtBQUs7bUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO1lBSzVCLFVBQVU7a0JBQWxCLEtBQUs7WUFLTyxPQUFPO2tCQUFuQixLQUFLO1lBZW1CLE9BQU87a0JBQS9CLFlBQVk7bUJBQUMsU0FBUztZQUVKLElBQUk7a0JBQXRCLFNBQVM7bUJBQUMsTUFBTTs7a0ZBMUNSLE9BQU87QUF5SHBCLE1BQU0sT0FBTyxhQUFhO3VHQUFiLGFBQWE7NERBQWIsYUFBYTtnRUFIWixPQUFPLEVBQ0UsWUFBWTs7aUZBRXRCLGFBQWE7Y0FKekIsUUFBUTtlQUFDO2dCQUNOLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFDbEIsT0FBTyxFQUFFLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQzthQUNuQzs7d0ZBQ1ksYUFBYSxjQXpIYixPQUFPLGFBQVAsT0FBTyxFQXVIRyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBib29sZWFuQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5wdXQsIE5nTW9kdWxlLCBudW1iZXJBdHRyaWJ1dGUsIE9uRGVzdHJveSwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFkZENsYXNzLCBibG9ja0JvZHlTY3JvbGwsIHJlbW92ZUNsYXNzLCB1bmJsb2NrQm9keVNjcm9sbCB9IGZyb20gJ0BwcmltZXVpeC91dGlscyc7XG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAncHJpbWVuZy9iYXNlY29tcG9uZW50JztcbmltcG9ydCB7IFpJbmRleFV0aWxzIH0gZnJvbSAncHJpbWVuZy91dGlscyc7XG5pbXBvcnQgeyBCbG9ja1VpU3R5bGUgfSBmcm9tICcuL3N0eWxlL2Jsb2NrdWlzdHlsZSc7XG5cbi8qKlxuICogQmxvY2tVSSBjYW4gZWl0aGVyIGJsb2NrIG90aGVyIGNvbXBvbmVudHMgb3IgdGhlIHdob2xlIHBhZ2UuXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3AtYmxvY2tVSSwgcC1ibG9ja3VpLCBwLWJsb2NrLXVpJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFNoYXJlZE1vZHVsZV0sXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgI21hc2tcbiAgICAgICAgICAgIFtjbGFzc109XCJzdHlsZUNsYXNzXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtYnVzeV09XCJibG9ja2VkXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3AtYmxvY2t1aS1tYXNrLWRvY3VtZW50JzogIXRhcmdldCwgJ3AtYmxvY2t1aSBwLWJsb2NrdWktbWFzayBwLW92ZXJsYXktbWFzayc6IHRydWUgfVwiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7IGRpc3BsYXk6ICdub25lJyB9XCJcbiAgICAgICAgICAgIFthdHRyLmRhdGEtcGMtbmFtZV09XCInYmxvY2t1aSdcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS1wYy1zZWN0aW9uXT1cIidyb290J1wiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIGAsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtCbG9ja1VpU3R5bGVdXG59KVxuZXhwb3J0IGNsYXNzIEJsb2NrVUkgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiBOYW1lIG9mIHRoZSBsb2NhbCBuZy10ZW1wbGF0ZSB2YXJpYWJsZSByZWZlcnJpbmcgdG8gYW5vdGhlciBjb21wb25lbnQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgdGFyZ2V0OiBhbnk7XG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBhdXRvbWF0aWNhbGx5IG1hbmFnZSBsYXllcmluZy5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgYXV0b1pJbmRleDogYm9vbGVhbiA9IHRydWU7XG4gICAgLyoqXG4gICAgICogQmFzZSB6SW5kZXggdmFsdWUgdG8gdXNlIGluIGxheWVyaW5nLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pIGJhc2VaSW5kZXg6IG51bWJlciA9IDA7XG4gICAgLyoqXG4gICAgICogQ2xhc3Mgb2YgdGhlIGVsZW1lbnQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgc3R5bGVDbGFzczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIEN1cnJlbnQgYmxvY2tlZCBzdGF0ZSBhcyBhIGJvb2xlYW4uXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgZ2V0IGJsb2NrZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9ibG9ja2VkO1xuICAgIH1cbiAgICBzZXQgYmxvY2tlZCh2YWw6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMubWFzayAmJiB0aGlzLm1hc2submF0aXZlRWxlbWVudCkge1xuICAgICAgICAgICAgaWYgKHZhbCkgdGhpcy5ibG9jaygpO1xuICAgICAgICAgICAgZWxzZSB0aGlzLnVuYmxvY2soKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2Jsb2NrZWQgPSB2YWw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogdGVtcGxhdGUgb2YgdGhlIGNvbnRlbnRcbiAgICAgKiBAZ3JvdXAgVGVtcGxhdGVzXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZCgnY29udGVudCcpIGNvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cbiAgICBAVmlld0NoaWxkKCdtYXNrJykgbWFzazogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICAgIF9ibG9ja2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBhbmltYXRpb25FbmRMaXN0ZW5lcjogVm9pZEZ1bmN0aW9uIHwgbnVsbCB8IHVuZGVmaW5lZDtcblxuICAgIF9jb21wb25lbnRTdHlsZSA9IGluamVjdChCbG9ja1VpU3R5bGUpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcbiAgICAgICAgaWYgKHRoaXMuX2Jsb2NrZWQpIHRoaXMuYmxvY2soKTtcblxuICAgICAgICBpZiAodGhpcy50YXJnZXQgJiYgIXRoaXMudGFyZ2V0LmdldEJsb2NrYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRocm93ICdUYXJnZXQgb2YgQmxvY2tVSSBtdXN0IGltcGxlbWVudCBCbG9ja2FibGVVSSBpbnRlcmZhY2UnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYmxvY2soKSB7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICB0aGlzLl9ibG9ja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICh0aGlzLm1hc2sgYXMgRWxlbWVudFJlZikubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ2ZsZXgnO1xuXG4gICAgICAgICAgICBpZiAodGhpcy50YXJnZXQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnRhcmdldC5nZXRCbG9ja2FibGVFbGVtZW50KCkuYXBwZW5kQ2hpbGQoKHRoaXMubWFzayBhcyBFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICB0aGlzLnRhcmdldC5nZXRCbG9ja2FibGVFbGVtZW50KCkuc3R5bGUucG9zaXRpb24gPSAncmVsYXRpdmUnO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZG9jdW1lbnQuYm9keSwgKHRoaXMubWFzayBhcyBFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICBibG9ja0JvZHlTY3JvbGwoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRoaXMuYXV0b1pJbmRleCkge1xuICAgICAgICAgICAgICAgIFpJbmRleFV0aWxzLnNldCgnbW9kYWwnLCAodGhpcy5tYXNrIGFzIEVsZW1lbnRSZWYpLm5hdGl2ZUVsZW1lbnQsIHRoaXMuYmFzZVpJbmRleCArIHRoaXMuY29uZmlnLnpJbmRleC5tb2RhbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bmJsb2NrKCkge1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSAmJiB0aGlzLm1hc2sgJiYgIXRoaXMuYW5pbWF0aW9uRW5kTGlzdGVuZXIpIHtcbiAgICAgICAgICAgIC8vIHRoaXMuYW5pbWF0aW9uRW5kTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aGlzLm1hc2submF0aXZlRWxlbWVudCwgJ2FuaW1hdGlvbmVuZCcsIHRoaXMuZGVzdHJveU1vZGFsLmJpbmQodGhpcykpO1xuICAgICAgICAgICAgLy8gVE9ETyBBZGQgYW5pbWF0aW9uXG4gICAgICAgICAgICB0aGlzLmRlc3Ryb3lNb2RhbCgpO1xuICAgICAgICAgICAgYWRkQ2xhc3ModGhpcy5tYXNrLm5hdGl2ZUVsZW1lbnQsICdwLW92ZXJsYXktbWFzay1sZWF2ZScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGVzdHJveU1vZGFsKCkge1xuICAgICAgICB0aGlzLl9ibG9ja2VkID0gZmFsc2U7XG4gICAgICAgIGlmICh0aGlzLm1hc2sgJiYgaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgWkluZGV4VXRpbHMuY2xlYXIodGhpcy5tYXNrLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgcmVtb3ZlQ2xhc3ModGhpcy5tYXNrLm5hdGl2ZUVsZW1lbnQsICdwLW92ZXJsYXktbWFzay1sZWF2ZScpO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIHRoaXMubWFzay5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgIHVuYmxvY2tCb2R5U2Nyb2xsKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51bmJpbmRBbmltYXRpb25FbmRMaXN0ZW5lcigpO1xuICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIHVuYmluZEFuaW1hdGlvbkVuZExpc3RlbmVyKCkge1xuICAgICAgICBpZiAodGhpcy5hbmltYXRpb25FbmRMaXN0ZW5lciAmJiB0aGlzLm1hc2spIHtcbiAgICAgICAgICAgIHRoaXMuYW5pbWF0aW9uRW5kTGlzdGVuZXIoKTtcbiAgICAgICAgICAgIHRoaXMuYW5pbWF0aW9uRW5kTGlzdGVuZXIgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMudW5ibG9jaygpO1xuICAgICAgICB0aGlzLmRlc3Ryb3lNb2RhbCgpO1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIH1cbn1cblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQmxvY2tVSV0sXG4gICAgZXhwb3J0czogW0Jsb2NrVUksIFNoYXJlZE1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgQmxvY2tVSU1vZHVsZSB7fVxuIl19