primeng 16.0.0-rc.1 → 16.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 (809) hide show
  1. package/accordion/accordion.d.ts +127 -30
  2. package/accordion/accordion.interface.d.ts +47 -0
  3. package/accordion/public_api.d.ts +1 -0
  4. package/animate/animate.d.ts +9 -3
  5. package/api/blockableui.d.ts +7 -0
  6. package/api/confirmation.d.ts +66 -0
  7. package/api/contextmenuservice.d.ts +3 -2
  8. package/api/filtermetadata.d.ts +12 -0
  9. package/api/filterservice.d.ts +1 -20
  10. package/api/lazyloadevent.d.ts +32 -1
  11. package/api/lazyloadmeta.d.ts +18 -0
  12. package/api/megamenuitem.d.ts +89 -0
  13. package/api/menuitem.d.ts +104 -0
  14. package/api/message.d.ts +3 -0
  15. package/api/overlayoptions.d.ts +126 -0
  16. package/api/public_api.d.ts +1 -0
  17. package/api/selectitem.d.ts +3 -0
  18. package/api/selectitemgroup.d.ts +3 -0
  19. package/api/shared.d.ts +2 -2
  20. package/api/sortevent.d.ts +3 -0
  21. package/api/sortmeta.d.ts +3 -0
  22. package/api/tablestate.d.ts +40 -1
  23. package/api/translation.d.ts +3 -0
  24. package/api/treenode.d.ts +3 -0
  25. package/api/treenodedragevent.d.ts +3 -0
  26. package/autocomplete/autocomplete.d.ts +369 -96
  27. package/autocomplete/autocomplete.interface.d.ts +131 -0
  28. package/autocomplete/public_api.d.ts +1 -0
  29. package/autofocus/autofocus.d.ts +5 -1
  30. package/avatar/avatar.d.ts +44 -9
  31. package/avatargroup/avatargroup.d.ts +11 -2
  32. package/badge/badge.d.ts +57 -14
  33. package/blockui/blockui.d.ts +30 -9
  34. package/blockui/blockui.interface.d.ts +11 -0
  35. package/blockui/public_api.d.ts +1 -0
  36. package/breadcrumb/breadcrumb.d.ts +40 -12
  37. package/breadcrumb/breadcrumb.interface.d.ts +26 -0
  38. package/breadcrumb/public_api.d.ts +1 -0
  39. package/button/button.d.ts +109 -23
  40. package/button/button.interface.d.ts +19 -0
  41. package/button/public_api.d.ts +1 -0
  42. package/calendar/calendar.d.ts +452 -152
  43. package/calendar/calendar.interface.d.ts +134 -0
  44. package/calendar/public_api.d.ts +1 -0
  45. package/card/card.d.ts +32 -14
  46. package/card/card.interface.d.ts +27 -0
  47. package/card/public_api.d.ts +1 -0
  48. package/carousel/carousel.d.ts +119 -31
  49. package/carousel/carousel.interface.d.ts +52 -0
  50. package/carousel/public_api.d.ts +1 -0
  51. package/cascadeselect/cascadeselect.d.ts +207 -70
  52. package/cascadeselect/cascadeselect.interface.d.ts +88 -0
  53. package/cascadeselect/public_api.d.ts +1 -0
  54. package/chart/chart.d.ts +39 -7
  55. package/checkbox/checkbox.d.ts +104 -22
  56. package/checkbox/checkbox.interface.d.ts +25 -0
  57. package/checkbox/public_api.d.ts +1 -0
  58. package/chip/chip.d.ts +55 -14
  59. package/chip/chip.interface.d.ts +15 -0
  60. package/chip/public_api.d.ts +1 -0
  61. package/chips/chips.d.ts +120 -23
  62. package/chips/chips.interface.d.ts +55 -0
  63. package/chips/public_api.d.ts +1 -0
  64. package/colorpicker/colorpicker.d.ts +134 -44
  65. package/colorpicker/colorpicker.interface.d.ts +14 -0
  66. package/colorpicker/public_api.d.ts +1 -0
  67. package/confirmdialog/confirmdialog.d.ts +172 -43
  68. package/confirmdialog/confirmdialog.interface.d.ts +23 -0
  69. package/confirmdialog/public_api.d.ts +1 -0
  70. package/confirmpopup/confirmpopup.d.ts +56 -17
  71. package/confirmpopup/confirmpopup.interface.d.ts +15 -0
  72. package/confirmpopup/public_api.d.ts +1 -0
  73. package/contextmenu/contextmenu.d.ts +83 -36
  74. package/dataview/dataview.d.ts +189 -52
  75. package/dataview/dataview.interface.d.ts +178 -0
  76. package/dataview/public_api.d.ts +1 -0
  77. package/defer/defer.d.ts +11 -5
  78. package/dialog/dialog.d.ts +242 -57
  79. package/dialog/dialog.interface.d.ts +31 -0
  80. package/dialog/public_api.d.ts +1 -0
  81. package/divider/divider.d.ts +28 -6
  82. package/dock/dock.d.ts +34 -11
  83. package/dock/dock.interface.d.ts +19 -0
  84. package/dock/public_api.d.ts +1 -0
  85. package/dragdrop/dragdrop.d.ts +69 -26
  86. package/dropdown/dropdown.d.ts +428 -135
  87. package/dropdown/dropdown.interface.d.ts +144 -0
  88. package/dropdown/public_api.d.ts +1 -0
  89. package/dynamicdialog/dynamicdialog.d.ts +22 -21
  90. package/editor/editor.d.ts +73 -17
  91. package/editor/editor.interface.d.ts +61 -0
  92. package/editor/public_api.d.ts +1 -0
  93. package/esm2022/accordion/accordion.interface.mjs +2 -0
  94. package/esm2022/accordion/accordion.mjs +130 -42
  95. package/esm2022/accordion/public_api.mjs +2 -1
  96. package/esm2022/animate/animate.mjs +14 -8
  97. package/esm2022/api/blockableui.mjs +1 -1
  98. package/esm2022/api/confirmation.mjs +1 -1
  99. package/esm2022/api/confirmationservice.mjs +4 -4
  100. package/esm2022/api/contextmenuservice.mjs +4 -4
  101. package/esm2022/api/filtermetadata.mjs +1 -1
  102. package/esm2022/api/filterservice.mjs +4 -4
  103. package/esm2022/api/lazyloadevent.mjs +1 -1
  104. package/esm2022/api/lazyloadmeta.mjs +2 -0
  105. package/esm2022/api/megamenuitem.mjs +1 -1
  106. package/esm2022/api/menuitem.mjs +1 -1
  107. package/esm2022/api/message.mjs +1 -1
  108. package/esm2022/api/messageservice.mjs +4 -4
  109. package/esm2022/api/overlayoptions.mjs +1 -1
  110. package/esm2022/api/overlayservice.mjs +4 -4
  111. package/esm2022/api/primengconfig.mjs +4 -4
  112. package/esm2022/api/public_api.mjs +2 -1
  113. package/esm2022/api/selectitem.mjs +1 -1
  114. package/esm2022/api/selectitemgroup.mjs +1 -1
  115. package/esm2022/api/shared.mjs +15 -16
  116. package/esm2022/api/sortevent.mjs +1 -1
  117. package/esm2022/api/sortmeta.mjs +1 -1
  118. package/esm2022/api/tablestate.mjs +1 -1
  119. package/esm2022/api/translation.mjs +1 -1
  120. package/esm2022/api/treedragdropservice.mjs +3 -3
  121. package/esm2022/api/treenode.mjs +1 -1
  122. package/esm2022/api/treenodedragevent.mjs +1 -1
  123. package/esm2022/autocomplete/autocomplete.interface.mjs +2 -0
  124. package/esm2022/autocomplete/autocomplete.mjs +341 -75
  125. package/esm2022/autocomplete/public_api.mjs +2 -1
  126. package/esm2022/autofocus/autofocus.mjs +12 -8
  127. package/esm2022/avatar/avatar.mjs +42 -9
  128. package/esm2022/avatargroup/avatargroup.mjs +15 -8
  129. package/esm2022/badge/badge.mjs +83 -39
  130. package/esm2022/baseicon/baseicon.mjs +3 -3
  131. package/esm2022/blockui/blockui.interface.mjs +2 -0
  132. package/esm2022/blockui/blockui.mjs +45 -24
  133. package/esm2022/blockui/public_api.mjs +2 -1
  134. package/esm2022/breadcrumb/breadcrumb.interface.mjs +2 -0
  135. package/esm2022/breadcrumb/breadcrumb.mjs +37 -12
  136. package/esm2022/breadcrumb/public_api.mjs +2 -1
  137. package/esm2022/button/button.interface.mjs +2 -0
  138. package/esm2022/button/button.mjs +119 -36
  139. package/esm2022/button/public_api.mjs +2 -1
  140. package/esm2022/calendar/calendar.interface.mjs +2 -0
  141. package/esm2022/calendar/calendar.mjs +471 -156
  142. package/esm2022/calendar/public_api.mjs +2 -1
  143. package/esm2022/card/card.interface.mjs +2 -0
  144. package/esm2022/card/card.mjs +26 -10
  145. package/esm2022/card/public_api.mjs +2 -1
  146. package/esm2022/carousel/carousel.interface.mjs +2 -0
  147. package/esm2022/carousel/carousel.mjs +93 -15
  148. package/esm2022/carousel/public_api.mjs +2 -1
  149. package/esm2022/cascadeselect/cascadeselect.interface.mjs +2 -0
  150. package/esm2022/cascadeselect/cascadeselect.mjs +169 -40
  151. package/esm2022/cascadeselect/public_api.mjs +2 -1
  152. package/esm2022/chart/chart.mjs +52 -20
  153. package/esm2022/checkbox/checkbox.interface.mjs +2 -0
  154. package/esm2022/checkbox/checkbox.mjs +89 -12
  155. package/esm2022/checkbox/public_api.mjs +2 -1
  156. package/esm2022/chip/chip.interface.mjs +2 -0
  157. package/esm2022/chip/chip.mjs +49 -11
  158. package/esm2022/chip/public_api.mjs +2 -1
  159. package/esm2022/chips/chips.interface.mjs +2 -0
  160. package/esm2022/chips/chips.mjs +102 -9
  161. package/esm2022/chips/public_api.mjs +2 -1
  162. package/esm2022/colorpicker/colorpicker.interface.mjs +2 -0
  163. package/esm2022/colorpicker/colorpicker.mjs +78 -17
  164. package/esm2022/colorpicker/public_api.mjs +2 -1
  165. package/esm2022/confirmdialog/confirmdialog.interface.mjs +2 -0
  166. package/esm2022/confirmdialog/confirmdialog.mjs +149 -20
  167. package/esm2022/confirmdialog/public_api.mjs +2 -1
  168. package/esm2022/confirmpopup/confirmpopup.interface.mjs +2 -0
  169. package/esm2022/confirmpopup/confirmpopup.mjs +68 -32
  170. package/esm2022/confirmpopup/public_api.mjs +2 -1
  171. package/esm2022/contextmenu/contextmenu.mjs +74 -30
  172. package/esm2022/dataview/dataview.interface.mjs +2 -0
  173. package/esm2022/dataview/dataview.mjs +159 -28
  174. package/esm2022/dataview/public_api.mjs +2 -1
  175. package/esm2022/defer/defer.mjs +15 -10
  176. package/esm2022/dialog/dialog.interface.mjs +2 -0
  177. package/esm2022/dialog/dialog.mjs +276 -92
  178. package/esm2022/dialog/public_api.mjs +2 -1
  179. package/esm2022/divider/divider.mjs +31 -11
  180. package/esm2022/dock/dock.interface.mjs +2 -0
  181. package/esm2022/dock/dock.mjs +31 -11
  182. package/esm2022/dock/public_api.mjs +2 -1
  183. package/esm2022/dragdrop/dragdrop.mjs +60 -18
  184. package/esm2022/dropdown/dropdown.interface.mjs +2 -0
  185. package/esm2022/dropdown/dropdown.mjs +390 -102
  186. package/esm2022/dropdown/public_api.mjs +2 -1
  187. package/esm2022/dynamicdialog/dialogservice.mjs +3 -3
  188. package/esm2022/dynamicdialog/dynamicdialog.mjs +11 -11
  189. package/esm2022/dynamicdialog/dynamicdialogcontent.mjs +3 -3
  190. package/esm2022/editor/editor.interface.mjs +2 -0
  191. package/esm2022/editor/editor.mjs +87 -35
  192. package/esm2022/editor/public_api.mjs +2 -1
  193. package/esm2022/fieldset/fieldset.interface.mjs +2 -0
  194. package/esm2022/fieldset/fieldset.mjs +61 -21
  195. package/esm2022/fieldset/public_api.mjs +2 -1
  196. package/esm2022/fileupload/fileupload.interface.mjs +2 -0
  197. package/esm2022/fileupload/fileupload.mjs +219 -21
  198. package/esm2022/fileupload/public_api.mjs +2 -1
  199. package/esm2022/focustrap/focustrap.mjs +13 -9
  200. package/esm2022/galleria/galleria.interface.mjs +2 -0
  201. package/esm2022/galleria/galleria.mjs +151 -37
  202. package/esm2022/galleria/public_api.mjs +2 -1
  203. package/esm2022/icons/angledoubledown/angledoubledown.mjs +3 -3
  204. package/esm2022/icons/angledoubleleft/angledoubleleft.mjs +3 -3
  205. package/esm2022/icons/angledoubleright/angledoubleright.mjs +3 -3
  206. package/esm2022/icons/angledoubleup/angledoubleup.mjs +3 -3
  207. package/esm2022/icons/angledown/angledown.mjs +3 -3
  208. package/esm2022/icons/angleleft/angleleft.mjs +3 -3
  209. package/esm2022/icons/angleright/angleright.mjs +3 -3
  210. package/esm2022/icons/angleup/angleup.mjs +3 -3
  211. package/esm2022/icons/arrowdown/arrowdown.mjs +3 -3
  212. package/esm2022/icons/arrowdownleft/arrowdownleft.mjs +3 -3
  213. package/esm2022/icons/arrowdownright/arrowdownright.mjs +3 -3
  214. package/esm2022/icons/arrowleft/arrowleft.mjs +3 -3
  215. package/esm2022/icons/arrowright/arrowright.mjs +3 -3
  216. package/esm2022/icons/arrowup/arrowup.mjs +3 -3
  217. package/esm2022/icons/ban/ban.mjs +3 -3
  218. package/esm2022/icons/bars/bars.mjs +3 -3
  219. package/esm2022/icons/calendar/calendar.mjs +3 -3
  220. package/esm2022/icons/caretleft/caretleft.mjs +3 -3
  221. package/esm2022/icons/caretright/caretright.mjs +3 -3
  222. package/esm2022/icons/check/check.mjs +3 -3
  223. package/esm2022/icons/chevrondown/chevrondown.mjs +3 -3
  224. package/esm2022/icons/chevronleft/chevronleft.mjs +3 -3
  225. package/esm2022/icons/chevronright/chevronright.mjs +3 -3
  226. package/esm2022/icons/chevronup/chevronup.mjs +3 -3
  227. package/esm2022/icons/exclamationtriangle/exclamationtriangle.mjs +3 -3
  228. package/esm2022/icons/eye/eye.mjs +3 -3
  229. package/esm2022/icons/eyeslash/eyeslash.mjs +3 -3
  230. package/esm2022/icons/filter/filter.mjs +3 -3
  231. package/esm2022/icons/filterslash/filterslash.mjs +3 -3
  232. package/esm2022/icons/home/home.mjs +3 -3
  233. package/esm2022/icons/infocircle/infocircle.mjs +3 -3
  234. package/esm2022/icons/minus/minus.mjs +3 -3
  235. package/esm2022/icons/pencil/pencil.mjs +3 -3
  236. package/esm2022/icons/plus/plus.mjs +3 -3
  237. package/esm2022/icons/refresh/refresh.mjs +3 -3
  238. package/esm2022/icons/search/search.mjs +3 -3
  239. package/esm2022/icons/searchminus/searchminus.mjs +3 -3
  240. package/esm2022/icons/searchplus/searchplus.mjs +3 -3
  241. package/esm2022/icons/sortalt/sortalt.mjs +3 -3
  242. package/esm2022/icons/sortamountdown/sortamountdown.mjs +3 -3
  243. package/esm2022/icons/sortamountupalt/sortamountupalt.mjs +3 -3
  244. package/esm2022/icons/spinner/spinner.mjs +3 -3
  245. package/esm2022/icons/star/star.mjs +3 -3
  246. package/esm2022/icons/starfill/starfill.mjs +3 -3
  247. package/esm2022/icons/thlarge/thlarge.mjs +3 -3
  248. package/esm2022/icons/times/times.mjs +3 -3
  249. package/esm2022/icons/timescircle/timescircle.mjs +3 -3
  250. package/esm2022/icons/trash/trash.mjs +3 -3
  251. package/esm2022/icons/undo/undo.mjs +3 -3
  252. package/esm2022/icons/upload/upload.mjs +3 -3
  253. package/esm2022/icons/windowmaximize/windowmaximize.mjs +3 -3
  254. package/esm2022/icons/windowminimize/windowminimize.mjs +3 -3
  255. package/esm2022/image/image.interface.mjs +2 -0
  256. package/esm2022/image/image.mjs +77 -16
  257. package/esm2022/image/public_api.mjs +2 -1
  258. package/esm2022/inplace/inplace.interface.mjs +2 -0
  259. package/esm2022/inplace/inplace.mjs +72 -24
  260. package/esm2022/inplace/public_api.mjs +2 -1
  261. package/esm2022/inputmask/inputmask.interface.mjs +2 -0
  262. package/esm2022/inputmask/inputmask.mjs +165 -41
  263. package/esm2022/inputmask/public_api.mjs +2 -1
  264. package/esm2022/inputnumber/inputnumber.interface.mjs +2 -0
  265. package/esm2022/inputnumber/inputnumber.mjs +239 -43
  266. package/esm2022/inputnumber/public_api.mjs +2 -1
  267. package/esm2022/inputswitch/inputswitch.interface.mjs +2 -0
  268. package/esm2022/inputswitch/inputswitch.mjs +57 -8
  269. package/esm2022/inputswitch/public_api.mjs +2 -1
  270. package/esm2022/inputtext/inputtext.mjs +9 -9
  271. package/esm2022/inputtextarea/inputtextarea.mjs +17 -8
  272. package/esm2022/keyfilter/keyfilter.mjs +30 -17
  273. package/esm2022/knob/knob.mjs +86 -18
  274. package/esm2022/listbox/listbox.interface.mjs +2 -0
  275. package/esm2022/listbox/listbox.mjs +150 -27
  276. package/esm2022/listbox/public_api.mjs +2 -1
  277. package/esm2022/megamenu/megamenu.interface.mjs +2 -0
  278. package/esm2022/megamenu/megamenu.mjs +29 -13
  279. package/esm2022/megamenu/public_api.mjs +2 -1
  280. package/esm2022/menu/menu.mjs +62 -22
  281. package/esm2022/menubar/menubar.interface.mjs +2 -0
  282. package/esm2022/menubar/menubar.mjs +67 -34
  283. package/esm2022/menubar/public_api.mjs +2 -1
  284. package/esm2022/message/message.mjs +30 -10
  285. package/esm2022/messages/messages.interface.mjs +2 -0
  286. package/esm2022/messages/messages.mjs +64 -19
  287. package/esm2022/messages/public_api.mjs +2 -1
  288. package/esm2022/multiselect/multiselect.interface.mjs +2 -0
  289. package/esm2022/multiselect/multiselect.mjs +330 -63
  290. package/esm2022/multiselect/public_api.mjs +2 -1
  291. package/esm2022/orderlist/orderlist.interface.mjs +2 -0
  292. package/esm2022/orderlist/orderlist.mjs +138 -38
  293. package/esm2022/orderlist/public_api.mjs +2 -1
  294. package/esm2022/organizationchart/organizationchart.interface.mjs +2 -0
  295. package/esm2022/organizationchart/organizationchart.mjs +67 -14
  296. package/esm2022/organizationchart/public_api.mjs +2 -1
  297. package/esm2022/overlay/overlay.mjs +104 -9
  298. package/esm2022/overlaypanel/overlaypanel.mjs +81 -13
  299. package/esm2022/paginator/paginator.interface.mjs +2 -0
  300. package/esm2022/paginator/paginator.mjs +113 -22
  301. package/esm2022/paginator/public_api.mjs +2 -1
  302. package/esm2022/panel/panel.interface.mjs +2 -0
  303. package/esm2022/panel/panel.mjs +80 -16
  304. package/esm2022/panel/public_api.mjs +2 -1
  305. package/esm2022/panelmenu/panelmenu.interface.mjs +2 -0
  306. package/esm2022/panelmenu/panelmenu.mjs +34 -19
  307. package/esm2022/panelmenu/public_api.mjs +2 -1
  308. package/esm2022/password/password.mjs +156 -18
  309. package/esm2022/picklist/picklist.interface.mjs +2 -0
  310. package/esm2022/picklist/picklist.mjs +214 -16
  311. package/esm2022/picklist/public_api.mjs +2 -1
  312. package/esm2022/progressbar/progressbar.mjs +39 -11
  313. package/esm2022/progressspinner/progressspinner.mjs +32 -12
  314. package/esm2022/radiobutton/public_api.mjs +2 -1
  315. package/esm2022/radiobutton/radiobutton.interface.mjs +2 -0
  316. package/esm2022/radiobutton/radiobutton.mjs +78 -11
  317. package/esm2022/rating/public_api.mjs +2 -1
  318. package/esm2022/rating/rating.interface.mjs +2 -0
  319. package/esm2022/rating/rating.mjs +66 -22
  320. package/esm2022/ripple/ripple.mjs +12 -12
  321. package/esm2022/scroller/public_api.mjs +2 -1
  322. package/esm2022/scroller/scroller.interface.mjs +2 -0
  323. package/esm2022/scroller/scroller.mjs +137 -20
  324. package/esm2022/scrollpanel/public_api.mjs +2 -1
  325. package/esm2022/scrollpanel/scrollpanel.interface.mjs +2 -0
  326. package/esm2022/scrollpanel/scrollpanel.mjs +30 -13
  327. package/esm2022/scrolltop/public_api.mjs +2 -1
  328. package/esm2022/scrolltop/scrolltop.interface.mjs +2 -0
  329. package/esm2022/scrolltop/scrolltop.mjs +44 -12
  330. package/esm2022/selectbutton/public_api.mjs +2 -1
  331. package/esm2022/selectbutton/selectbutton.interface.mjs +2 -0
  332. package/esm2022/selectbutton/selectbutton.mjs +62 -8
  333. package/esm2022/sidebar/public_api.mjs +2 -1
  334. package/esm2022/sidebar/sidebar.interface.mjs +2 -0
  335. package/esm2022/sidebar/sidebar.mjs +123 -50
  336. package/esm2022/skeleton/skeleton.mjs +43 -11
  337. package/esm2022/slidemenu/public_api.mjs +2 -1
  338. package/esm2022/slidemenu/slidemenu.interface.mjs +2 -0
  339. package/esm2022/slidemenu/slidemenu.mjs +109 -31
  340. package/esm2022/slider/public_api.mjs +2 -1
  341. package/esm2022/slider/slider.interface.mjs +2 -0
  342. package/esm2022/slider/slider.mjs +70 -15
  343. package/esm2022/speeddial/public_api.mjs +2 -1
  344. package/esm2022/speeddial/speeddial.interface.mjs +2 -0
  345. package/esm2022/speeddial/speeddial.mjs +119 -18
  346. package/esm2022/spinner/spinner.mjs +7 -7
  347. package/esm2022/splitbutton/public_api.mjs +2 -1
  348. package/esm2022/splitbutton/splitbutton.interface.mjs +2 -0
  349. package/esm2022/splitbutton/splitbutton.mjs +88 -18
  350. package/esm2022/splitter/public_api.mjs +2 -1
  351. package/esm2022/splitter/splitter.interface.mjs +2 -0
  352. package/esm2022/splitter/splitter.mjs +74 -24
  353. package/esm2022/steps/steps.mjs +34 -9
  354. package/esm2022/styleclass/styleclass.mjs +50 -10
  355. package/esm2022/table/public_api.mjs +2 -1
  356. package/esm2022/table/table.interface.mjs +2 -0
  357. package/esm2022/table/table.mjs +686 -220
  358. package/esm2022/tabmenu/public_api.mjs +2 -1
  359. package/esm2022/tabmenu/tabmenu.interface.mjs +2 -0
  360. package/esm2022/tabmenu/tabmenu.mjs +48 -20
  361. package/esm2022/tabview/public_api.mjs +2 -1
  362. package/esm2022/tabview/tabview.interface.mjs +2 -0
  363. package/esm2022/tabview/tabview.mjs +191 -101
  364. package/esm2022/tag/public_api.mjs +2 -1
  365. package/esm2022/tag/tag.interface.mjs +2 -0
  366. package/esm2022/tag/tag.mjs +39 -15
  367. package/esm2022/terminal/terminal.mjs +24 -8
  368. package/esm2022/terminal/terminalservice.mjs +3 -3
  369. package/esm2022/tieredmenu/public_api.mjs +2 -1
  370. package/esm2022/tieredmenu/tieredmenu.interface.mjs +2 -0
  371. package/esm2022/tieredmenu/tieredmenu.mjs +90 -23
  372. package/esm2022/timeline/public_api.mjs +2 -1
  373. package/esm2022/timeline/timeline.interface.mjs +2 -0
  374. package/esm2022/timeline/timeline.mjs +28 -8
  375. package/esm2022/toast/public_api.mjs +2 -1
  376. package/esm2022/toast/toast.interface.mjs +2 -0
  377. package/esm2022/toast/toast.mjs +92 -36
  378. package/esm2022/togglebutton/public_api.mjs +2 -1
  379. package/esm2022/togglebutton/togglebutton.interface.mjs +2 -0
  380. package/esm2022/togglebutton/togglebutton.mjs +59 -10
  381. package/esm2022/toolbar/public_api.mjs +2 -1
  382. package/esm2022/toolbar/toolbar.interface.mjs +2 -0
  383. package/esm2022/toolbar/toolbar.mjs +16 -8
  384. package/esm2022/tooltip/public_api.mjs +2 -1
  385. package/esm2022/tooltip/tooltip.interface.mjs +2 -0
  386. package/esm2022/tooltip/tooltip.mjs +81 -9
  387. package/esm2022/tree/public_api.mjs +2 -1
  388. package/esm2022/tree/tree.interface.mjs +2 -0
  389. package/esm2022/tree/tree.mjs +241 -41
  390. package/esm2022/treeselect/public_api.mjs +2 -1
  391. package/esm2022/treeselect/treeselect.interface.mjs +2 -0
  392. package/esm2022/treeselect/treeselect.mjs +215 -53
  393. package/esm2022/treetable/public_api.mjs +2 -1
  394. package/esm2022/treetable/treetable.interface.mjs +2 -0
  395. package/esm2022/treetable/treetable.mjs +497 -155
  396. package/esm2022/tristatecheckbox/public_api.mjs +2 -1
  397. package/esm2022/tristatecheckbox/tristatecheckbox.interface.mjs +2 -0
  398. package/esm2022/tristatecheckbox/tristatecheckbox.mjs +57 -8
  399. package/esm2022/ts-helpers/primeng-ts-helpers.mjs +5 -0
  400. package/esm2022/ts-helpers/public_api.mjs +2 -0
  401. package/esm2022/ts-helpers/ts-helpers.mjs +2 -0
  402. package/esm2022/virtualscroller/public_api.mjs +2 -1
  403. package/esm2022/virtualscroller/virtualscroller.interface.mjs +2 -0
  404. package/esm2022/virtualscroller/virtualscroller.mjs +48 -11
  405. package/fesm2022/primeng-accordion.mjs +128 -40
  406. package/fesm2022/primeng-accordion.mjs.map +1 -1
  407. package/fesm2022/primeng-animate.mjs +13 -7
  408. package/fesm2022/primeng-animate.mjs.map +1 -1
  409. package/fesm2022/primeng-api.mjs +34 -34
  410. package/fesm2022/primeng-api.mjs.map +1 -1
  411. package/fesm2022/primeng-autocomplete.mjs +341 -75
  412. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  413. package/fesm2022/primeng-autofocus.mjs +11 -7
  414. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  415. package/fesm2022/primeng-avatar.mjs +42 -9
  416. package/fesm2022/primeng-avatar.mjs.map +1 -1
  417. package/fesm2022/primeng-avatargroup.mjs +14 -7
  418. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  419. package/fesm2022/primeng-badge.mjs +82 -38
  420. package/fesm2022/primeng-badge.mjs.map +1 -1
  421. package/fesm2022/primeng-baseicon.mjs +3 -3
  422. package/fesm2022/primeng-blockui.mjs +45 -24
  423. package/fesm2022/primeng-blockui.mjs.map +1 -1
  424. package/fesm2022/primeng-breadcrumb.mjs +38 -13
  425. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  426. package/fesm2022/primeng-button.mjs +118 -35
  427. package/fesm2022/primeng-button.mjs.map +1 -1
  428. package/fesm2022/primeng-calendar.mjs +470 -155
  429. package/fesm2022/primeng-calendar.mjs.map +1 -1
  430. package/fesm2022/primeng-card.mjs +25 -9
  431. package/fesm2022/primeng-card.mjs.map +1 -1
  432. package/fesm2022/primeng-carousel.mjs +92 -14
  433. package/fesm2022/primeng-carousel.mjs.map +1 -1
  434. package/fesm2022/primeng-cascadeselect.mjs +168 -39
  435. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  436. package/fesm2022/primeng-chart.mjs +51 -19
  437. package/fesm2022/primeng-chart.mjs.map +1 -1
  438. package/fesm2022/primeng-checkbox.mjs +89 -12
  439. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  440. package/fesm2022/primeng-chip.mjs +49 -11
  441. package/fesm2022/primeng-chip.mjs.map +1 -1
  442. package/fesm2022/primeng-chips.mjs +101 -8
  443. package/fesm2022/primeng-chips.mjs.map +1 -1
  444. package/fesm2022/primeng-colorpicker.mjs +77 -16
  445. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  446. package/fesm2022/primeng-confirmdialog.mjs +147 -18
  447. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  448. package/fesm2022/primeng-confirmpopup.mjs +68 -32
  449. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  450. package/fesm2022/primeng-contextmenu.mjs +72 -28
  451. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  452. package/fesm2022/primeng-dataview.mjs +158 -27
  453. package/fesm2022/primeng-dataview.mjs.map +1 -1
  454. package/fesm2022/primeng-defer.mjs +14 -9
  455. package/fesm2022/primeng-defer.mjs.map +1 -1
  456. package/fesm2022/primeng-dialog.mjs +276 -92
  457. package/fesm2022/primeng-dialog.mjs.map +1 -1
  458. package/fesm2022/primeng-divider.mjs +30 -10
  459. package/fesm2022/primeng-divider.mjs.map +1 -1
  460. package/fesm2022/primeng-dock.mjs +31 -11
  461. package/fesm2022/primeng-dock.mjs.map +1 -1
  462. package/fesm2022/primeng-dragdrop.mjs +59 -17
  463. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  464. package/fesm2022/primeng-dropdown.mjs +390 -102
  465. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  466. package/fesm2022/primeng-dynamicdialog.mjs +14 -14
  467. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  468. package/fesm2022/primeng-editor.mjs +86 -35
  469. package/fesm2022/primeng-editor.mjs.map +1 -1
  470. package/fesm2022/primeng-fieldset.mjs +60 -20
  471. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  472. package/fesm2022/primeng-fileupload.mjs +218 -20
  473. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  474. package/fesm2022/primeng-focustrap.mjs +12 -8
  475. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  476. package/fesm2022/primeng-galleria.mjs +151 -37
  477. package/fesm2022/primeng-galleria.mjs.map +1 -1
  478. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  479. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  480. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  481. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  482. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  483. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  484. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  485. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  486. package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
  487. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  488. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  489. package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
  490. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  491. package/fesm2022/primeng-icons-arrowup.mjs +3 -3
  492. package/fesm2022/primeng-icons-ban.mjs +3 -3
  493. package/fesm2022/primeng-icons-bars.mjs +3 -3
  494. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  495. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  496. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  497. package/fesm2022/primeng-icons-check.mjs +3 -3
  498. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  499. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  500. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  501. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  502. package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
  503. package/fesm2022/primeng-icons-eye.mjs +3 -3
  504. package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
  505. package/fesm2022/primeng-icons-filter.mjs +3 -3
  506. package/fesm2022/primeng-icons-filterslash.mjs +3 -3
  507. package/fesm2022/primeng-icons-home.mjs +3 -3
  508. package/fesm2022/primeng-icons-infocircle.mjs +3 -3
  509. package/fesm2022/primeng-icons-minus.mjs +3 -3
  510. package/fesm2022/primeng-icons-pencil.mjs +3 -3
  511. package/fesm2022/primeng-icons-plus.mjs +3 -3
  512. package/fesm2022/primeng-icons-refresh.mjs +3 -3
  513. package/fesm2022/primeng-icons-search.mjs +3 -3
  514. package/fesm2022/primeng-icons-searchminus.mjs +3 -3
  515. package/fesm2022/primeng-icons-searchplus.mjs +3 -3
  516. package/fesm2022/primeng-icons-sortalt.mjs +3 -3
  517. package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
  518. package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
  519. package/fesm2022/primeng-icons-spinner.mjs +3 -3
  520. package/fesm2022/primeng-icons-star.mjs +3 -3
  521. package/fesm2022/primeng-icons-starfill.mjs +3 -3
  522. package/fesm2022/primeng-icons-thlarge.mjs +3 -3
  523. package/fesm2022/primeng-icons-times.mjs +3 -3
  524. package/fesm2022/primeng-icons-timescircle.mjs +3 -3
  525. package/fesm2022/primeng-icons-trash.mjs +3 -3
  526. package/fesm2022/primeng-icons-undo.mjs +3 -3
  527. package/fesm2022/primeng-icons-upload.mjs +3 -3
  528. package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
  529. package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
  530. package/fesm2022/primeng-image.mjs +76 -15
  531. package/fesm2022/primeng-image.mjs.map +1 -1
  532. package/fesm2022/primeng-inplace.mjs +72 -24
  533. package/fesm2022/primeng-inplace.mjs.map +1 -1
  534. package/fesm2022/primeng-inputmask.mjs +165 -41
  535. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  536. package/fesm2022/primeng-inputnumber.mjs +239 -43
  537. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  538. package/fesm2022/primeng-inputswitch.mjs +56 -7
  539. package/fesm2022/primeng-inputswitch.mjs.map +1 -1
  540. package/fesm2022/primeng-inputtext.mjs +8 -8
  541. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  542. package/fesm2022/primeng-inputtextarea.mjs +16 -7
  543. package/fesm2022/primeng-inputtextarea.mjs.map +1 -1
  544. package/fesm2022/primeng-keyfilter.mjs +29 -16
  545. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  546. package/fesm2022/primeng-knob.mjs +85 -17
  547. package/fesm2022/primeng-knob.mjs.map +1 -1
  548. package/fesm2022/primeng-listbox.mjs +149 -26
  549. package/fesm2022/primeng-listbox.mjs.map +1 -1
  550. package/fesm2022/primeng-megamenu.mjs +29 -13
  551. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  552. package/fesm2022/primeng-menu.mjs +61 -21
  553. package/fesm2022/primeng-menu.mjs.map +1 -1
  554. package/fesm2022/primeng-menubar.mjs +68 -35
  555. package/fesm2022/primeng-menubar.mjs.map +1 -1
  556. package/fesm2022/primeng-message.mjs +30 -10
  557. package/fesm2022/primeng-message.mjs.map +1 -1
  558. package/fesm2022/primeng-messages.mjs +65 -20
  559. package/fesm2022/primeng-messages.mjs.map +1 -1
  560. package/fesm2022/primeng-multiselect.mjs +329 -62
  561. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  562. package/fesm2022/primeng-orderlist.mjs +137 -37
  563. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  564. package/fesm2022/primeng-organizationchart.mjs +66 -13
  565. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  566. package/fesm2022/primeng-overlay.mjs +103 -8
  567. package/fesm2022/primeng-overlay.mjs.map +1 -1
  568. package/fesm2022/primeng-overlaypanel.mjs +80 -12
  569. package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
  570. package/fesm2022/primeng-paginator.mjs +112 -21
  571. package/fesm2022/primeng-paginator.mjs.map +1 -1
  572. package/fesm2022/primeng-panel.mjs +79 -15
  573. package/fesm2022/primeng-panel.mjs.map +1 -1
  574. package/fesm2022/primeng-panelmenu.mjs +34 -19
  575. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  576. package/fesm2022/primeng-password.mjs +156 -18
  577. package/fesm2022/primeng-password.mjs.map +1 -1
  578. package/fesm2022/primeng-picklist.mjs +213 -15
  579. package/fesm2022/primeng-picklist.mjs.map +1 -1
  580. package/fesm2022/primeng-progressbar.mjs +38 -10
  581. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  582. package/fesm2022/primeng-progressspinner.mjs +32 -12
  583. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  584. package/fesm2022/primeng-radiobutton.mjs +77 -10
  585. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  586. package/fesm2022/primeng-rating.mjs +66 -22
  587. package/fesm2022/primeng-rating.mjs.map +1 -1
  588. package/fesm2022/primeng-ripple.mjs +11 -11
  589. package/fesm2022/primeng-ripple.mjs.map +1 -1
  590. package/fesm2022/primeng-scroller.mjs +137 -20
  591. package/fesm2022/primeng-scroller.mjs.map +1 -1
  592. package/fesm2022/primeng-scrollpanel.mjs +30 -13
  593. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  594. package/fesm2022/primeng-scrolltop.mjs +44 -12
  595. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  596. package/fesm2022/primeng-selectbutton.mjs +61 -7
  597. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  598. package/fesm2022/primeng-sidebar.mjs +122 -49
  599. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  600. package/fesm2022/primeng-skeleton.mjs +43 -11
  601. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  602. package/fesm2022/primeng-slidemenu.mjs +109 -31
  603. package/fesm2022/primeng-slidemenu.mjs.map +1 -1
  604. package/fesm2022/primeng-slider.mjs +69 -14
  605. package/fesm2022/primeng-slider.mjs.map +1 -1
  606. package/fesm2022/primeng-speeddial.mjs +119 -18
  607. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  608. package/fesm2022/primeng-spinner.mjs +7 -7
  609. package/fesm2022/primeng-splitbutton.mjs +88 -18
  610. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  611. package/fesm2022/primeng-splitter.mjs +73 -23
  612. package/fesm2022/primeng-splitter.mjs.map +1 -1
  613. package/fesm2022/primeng-steps.mjs +34 -9
  614. package/fesm2022/primeng-steps.mjs.map +1 -1
  615. package/fesm2022/primeng-styleclass.mjs +49 -9
  616. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  617. package/fesm2022/primeng-table.mjs +685 -219
  618. package/fesm2022/primeng-table.mjs.map +1 -1
  619. package/fesm2022/primeng-tabmenu.mjs +47 -19
  620. package/fesm2022/primeng-tabmenu.mjs.map +1 -1
  621. package/fesm2022/primeng-tabview.mjs +192 -102
  622. package/fesm2022/primeng-tabview.mjs.map +1 -1
  623. package/fesm2022/primeng-tag.mjs +38 -13
  624. package/fesm2022/primeng-tag.mjs.map +1 -1
  625. package/fesm2022/primeng-terminal.mjs +26 -10
  626. package/fesm2022/primeng-terminal.mjs.map +1 -1
  627. package/fesm2022/primeng-tieredmenu.mjs +91 -24
  628. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  629. package/fesm2022/primeng-timeline.mjs +27 -7
  630. package/fesm2022/primeng-timeline.mjs.map +1 -1
  631. package/fesm2022/primeng-toast.mjs +93 -36
  632. package/fesm2022/primeng-toast.mjs.map +1 -1
  633. package/fesm2022/primeng-togglebutton.mjs +58 -9
  634. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  635. package/fesm2022/primeng-toolbar.mjs +15 -7
  636. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  637. package/fesm2022/primeng-tooltip.mjs +80 -8
  638. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  639. package/fesm2022/primeng-tree.mjs +240 -40
  640. package/fesm2022/primeng-tree.mjs.map +1 -1
  641. package/fesm2022/primeng-treeselect.mjs +215 -53
  642. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  643. package/fesm2022/primeng-treetable.mjs +496 -154
  644. package/fesm2022/primeng-treetable.mjs.map +1 -1
  645. package/fesm2022/primeng-tristatecheckbox.mjs +56 -7
  646. package/fesm2022/primeng-tristatecheckbox.mjs.map +1 -1
  647. package/fesm2022/primeng-ts-helpers.mjs +4 -0
  648. package/fesm2022/primeng-ts-helpers.mjs.map +1 -0
  649. package/fesm2022/primeng-virtualscroller.mjs +48 -11
  650. package/fesm2022/primeng-virtualscroller.mjs.map +1 -1
  651. package/fieldset/fieldset.d.ts +62 -17
  652. package/fieldset/fieldset.interface.d.ts +44 -0
  653. package/fieldset/public_api.d.ts +1 -0
  654. package/fileupload/fileupload.d.ts +260 -58
  655. package/fileupload/fileupload.interface.d.ts +125 -0
  656. package/fileupload/public_api.d.ts +1 -0
  657. package/focustrap/focustrap.d.ts +5 -1
  658. package/galleria/galleria.d.ts +185 -63
  659. package/galleria/galleria.interface.d.ts +96 -0
  660. package/galleria/public_api.d.ts +1 -0
  661. package/image/image.d.ts +89 -23
  662. package/image/image.interface.d.ts +31 -0
  663. package/image/public_api.d.ts +1 -0
  664. package/inplace/inplace.d.ts +67 -16
  665. package/inplace/inplace.interface.d.ts +19 -0
  666. package/inplace/public_api.d.ts +1 -0
  667. package/inputmask/inputmask.d.ts +188 -60
  668. package/inputmask/inputmask.interface.d.ts +18 -0
  669. package/inputmask/public_api.d.ts +1 -0
  670. package/inputnumber/inputnumber.d.ts +273 -84
  671. package/inputnumber/inputnumber.interface.d.ts +37 -0
  672. package/inputnumber/public_api.d.ts +1 -0
  673. package/inputswitch/inputswitch.d.ts +61 -13
  674. package/inputswitch/inputswitch.interface.d.ts +14 -0
  675. package/inputswitch/public_api.d.ts +1 -0
  676. package/inputtext/inputtext.d.ts +3 -2
  677. package/inputtextarea/inputtextarea.d.ts +18 -9
  678. package/keyfilter/keyfilter.d.ts +20 -7
  679. package/knob/knob.d.ts +90 -23
  680. package/listbox/listbox.d.ts +186 -61
  681. package/listbox/listbox.interface.d.ts +122 -0
  682. package/listbox/public_api.d.ts +1 -0
  683. package/megamenu/megamenu.d.ts +32 -13
  684. package/megamenu/megamenu.interface.d.ts +19 -0
  685. package/megamenu/public_api.d.ts +1 -0
  686. package/menu/menu.d.ts +64 -18
  687. package/menubar/menubar.d.ts +64 -29
  688. package/menubar/menubar.interface.d.ts +23 -0
  689. package/menubar/public_api.d.ts +1 -0
  690. package/message/message.d.ts +26 -4
  691. package/messages/messages.d.ts +59 -12
  692. package/messages/messages.interface.d.ts +11 -0
  693. package/messages/public_api.d.ts +1 -0
  694. package/multiselect/multiselect.d.ts +403 -128
  695. package/multiselect/multiselect.interface.d.ts +196 -0
  696. package/multiselect/public_api.d.ts +1 -0
  697. package/orderlist/orderlist.d.ts +151 -49
  698. package/orderlist/orderlist.interface.d.ts +107 -0
  699. package/orderlist/public_api.d.ts +1 -0
  700. package/organizationchart/organizationchart.d.ts +73 -19
  701. package/organizationchart/organizationchart.interface.d.ts +54 -0
  702. package/organizationchart/public_api.d.ts +1 -0
  703. package/overlay/overlay.d.ts +104 -9
  704. package/overlaypanel/overlaypanel.d.ts +91 -20
  705. package/package.json +154 -148
  706. package/paginator/paginator.d.ts +126 -30
  707. package/paginator/paginator.interface.d.ts +32 -0
  708. package/paginator/public_api.d.ts +1 -0
  709. package/panel/panel.d.ts +94 -27
  710. package/panel/panel.interface.d.ts +55 -0
  711. package/panel/public_api.d.ts +1 -0
  712. package/panelmenu/panelmenu.d.ts +36 -19
  713. package/panelmenu/panelmenu.interface.d.ts +11 -0
  714. package/panelmenu/public_api.d.ts +1 -0
  715. package/password/password.d.ts +196 -52
  716. package/picklist/picklist.d.ts +290 -92
  717. package/picklist/picklist.interface.d.ts +231 -0
  718. package/picklist/public_api.d.ts +1 -0
  719. package/progressbar/progressbar.d.ts +35 -5
  720. package/progressspinner/progressspinner.d.ts +25 -3
  721. package/radiobutton/public_api.d.ts +1 -0
  722. package/radiobutton/radiobutton.d.ts +93 -22
  723. package/radiobutton/radiobutton.interface.d.ts +14 -0
  724. package/rating/public_api.d.ts +1 -0
  725. package/rating/rating.d.ts +79 -22
  726. package/rating/rating.interface.d.ts +33 -0
  727. package/ripple/ripple.d.ts +3 -2
  728. package/scroller/public_api.d.ts +1 -0
  729. package/scroller/scroller.d.ts +193 -92
  730. package/scroller/scroller.interface.d.ts +166 -0
  731. package/scrollpanel/public_api.d.ts +1 -0
  732. package/scrollpanel/scrollpanel.d.ts +41 -21
  733. package/scrollpanel/scrollpanel.interface.d.ts +11 -0
  734. package/scrolltop/public_api.d.ts +1 -0
  735. package/scrolltop/scrolltop.d.ts +46 -12
  736. package/scrolltop/scrolltop.interface.d.ts +18 -0
  737. package/selectbutton/public_api.d.ts +1 -0
  738. package/selectbutton/selectbutton.d.ts +69 -14
  739. package/selectbutton/selectbutton.interface.d.ts +43 -0
  740. package/sidebar/public_api.d.ts +1 -0
  741. package/sidebar/sidebar.d.ts +97 -23
  742. package/sidebar/sidebar.interface.d.ts +23 -0
  743. package/skeleton/skeleton.d.ts +43 -5
  744. package/slidemenu/public_api.d.ts +1 -0
  745. package/slidemenu/slidemenu.d.ts +114 -33
  746. package/slidemenu/slidemenu.interface.d.ts +15 -0
  747. package/slider/public_api.d.ts +1 -0
  748. package/slider/slider.d.ts +95 -37
  749. package/slider/slider.interface.d.ts +36 -0
  750. package/speeddial/public_api.d.ts +1 -0
  751. package/speeddial/speeddial.d.ts +133 -28
  752. package/speeddial/speeddial.interface.d.ts +11 -0
  753. package/splitbutton/public_api.d.ts +1 -0
  754. package/splitbutton/splitbutton.d.ts +98 -24
  755. package/splitbutton/splitbutton.interface.d.ts +15 -0
  756. package/splitter/public_api.d.ts +1 -0
  757. package/splitter/splitter.d.ts +87 -30
  758. package/splitter/splitter.interface.d.ts +32 -0
  759. package/steps/steps.d.ts +34 -7
  760. package/styleclass/styleclass.d.ts +58 -17
  761. package/table/public_api.d.ts +1 -0
  762. package/table/table.d.ts +801 -320
  763. package/table/table.interface.d.ts +514 -0
  764. package/tabmenu/public_api.d.ts +1 -0
  765. package/tabmenu/tabmenu.d.ts +49 -18
  766. package/tabmenu/tabmenu.interface.d.ts +32 -0
  767. package/tabview/public_api.d.ts +1 -0
  768. package/tabview/tabview.d.ts +151 -54
  769. package/tabview/tabview.interface.d.ts +75 -0
  770. package/tag/public_api.d.ts +1 -0
  771. package/tag/tag.d.ts +38 -10
  772. package/tag/tag.interface.d.ts +11 -0
  773. package/terminal/terminal.d.ts +22 -4
  774. package/tieredmenu/public_api.d.ts +1 -0
  775. package/tieredmenu/tieredmenu.d.ts +99 -34
  776. package/tieredmenu/tieredmenu.interface.d.ts +11 -0
  777. package/timeline/public_api.d.ts +1 -0
  778. package/timeline/timeline.d.ts +31 -8
  779. package/timeline/timeline.interface.d.ts +43 -0
  780. package/toast/public_api.d.ts +1 -0
  781. package/toast/toast.d.ts +86 -27
  782. package/toast/toast.interface.d.ts +41 -0
  783. package/togglebutton/public_api.d.ts +1 -0
  784. package/togglebutton/togglebutton.d.ts +61 -11
  785. package/togglebutton/togglebutton.interface.d.ts +14 -0
  786. package/toolbar/public_api.d.ts +1 -0
  787. package/toolbar/toolbar.d.ts +17 -7
  788. package/toolbar/toolbar.interface.d.ts +19 -0
  789. package/tooltip/public_api.d.ts +1 -0
  790. package/tooltip/tooltip.d.ts +99 -43
  791. package/tooltip/tooltip.interface.d.ts +21 -0
  792. package/tree/public_api.d.ts +1 -0
  793. package/tree/tree.d.ts +294 -93
  794. package/tree/tree.interface.d.ts +183 -0
  795. package/treeselect/public_api.d.ts +1 -0
  796. package/treeselect/treeselect.d.ts +256 -74
  797. package/treeselect/treeselect.interface.d.ts +106 -0
  798. package/treetable/public_api.d.ts +1 -0
  799. package/treetable/treetable.d.ts +581 -229
  800. package/treetable/treetable.interface.d.ts +486 -0
  801. package/tristatecheckbox/public_api.d.ts +1 -0
  802. package/tristatecheckbox/tristatecheckbox.d.ts +71 -17
  803. package/tristatecheckbox/tristatecheckbox.interface.d.ts +29 -0
  804. package/ts-helpers/index.d.ts +5 -0
  805. package/ts-helpers/public_api.d.ts +1 -0
  806. package/ts-helpers/ts-helpers.d.ts +4 -0
  807. package/virtualscroller/public_api.d.ts +1 -0
  808. package/virtualscroller/virtualscroller.d.ts +60 -18
  809. package/virtualscroller/virtualscroller.interface.d.ts +72 -0
@@ -16,27 +16,120 @@ class Chips {
16
16
  document;
17
17
  el;
18
18
  cd;
19
+ /**
20
+ * Inline style of the element.
21
+ * @group Props
22
+ */
19
23
  style;
24
+ /**
25
+ * Style class of the element.
26
+ * @group Props
27
+ */
20
28
  styleClass;
29
+ /**
30
+ * When present, it specifies that the element should be disabled.
31
+ * @group Props
32
+ */
21
33
  disabled;
34
+ /**
35
+ * Name of the property to display on a chip.
36
+ * @group Props
37
+ */
22
38
  field;
39
+ /**
40
+ * Advisory information to display on input.
41
+ * @group Props
42
+ */
23
43
  placeholder;
44
+ /**
45
+ * Maximum number of entries allowed.
46
+ * @group Props
47
+ */
24
48
  max;
49
+ /**
50
+ * Establishes relationships between the component and label(s) where its value should be one or more element IDs.
51
+ * @group Props
52
+ */
25
53
  ariaLabelledBy;
54
+ /**
55
+ * Index of the element in tabbing order.
56
+ * @group Props
57
+ */
26
58
  tabindex;
59
+ /**
60
+ * Identifier of the focus input to match a label defined for the component.
61
+ * @group Props
62
+ */
27
63
  inputId;
64
+ /**
65
+ * Whether to allow duplicate values or not.
66
+ * @group Props
67
+ */
28
68
  allowDuplicate = true;
69
+ /**
70
+ * Inline style of the input field.
71
+ * @group Props
72
+ */
29
73
  inputStyle;
74
+ /**
75
+ * Style class of the input field.
76
+ * @group Props
77
+ */
30
78
  inputStyleClass;
79
+ /**
80
+ * Whether to add an item on tab key press.
81
+ * @group Props
82
+ */
31
83
  addOnTab;
84
+ /**
85
+ * Whether to add an item when the input loses focus.
86
+ * @group Props
87
+ */
32
88
  addOnBlur;
89
+ /**
90
+ * Separator char to add an item when pressed in addition to the enter key.
91
+ * @group Props
92
+ */
33
93
  separator;
94
+ /**
95
+ * When enabled, a clear icon is displayed to clear the value.
96
+ * @group Props
97
+ */
34
98
  showClear = false;
99
+ /**
100
+ * Callback to invoke on chip add.
101
+ * @param {ChipsAddEvent} event - Custom event.
102
+ * @group Emits
103
+ */
35
104
  onAdd = new EventEmitter();
105
+ /**
106
+ * Callback to invoke on chip remove.
107
+ * @param {ChipsRemoveEvent} event - Custom event.
108
+ * @group Emits
109
+ */
36
110
  onRemove = new EventEmitter();
111
+ /**
112
+ * Callback to invoke on focus of input field.
113
+ * @param {Event} event - Focus event
114
+ * @group Emits
115
+ */
37
116
  onFocus = new EventEmitter();
117
+ /**
118
+ * Callback to invoke on blur of input field.
119
+ * @param {Event} event - Blur event
120
+ * @group Emits
121
+ */
38
122
  onBlur = new EventEmitter();
123
+ /**
124
+ * Callback to invoke on chip clicked.
125
+ * @param {ChipsClickEvent} event - Custom event
126
+ * @group Emits
127
+ */
39
128
  onChipClick = new EventEmitter();
129
+ /**
130
+ * Callback to invoke on clear token clicked.
131
+ * @group Emits
132
+ */
40
133
  onClear = new EventEmitter();
41
134
  inputViewChild;
42
135
  templates;
@@ -74,7 +167,7 @@ class Chips {
74
167
  this.updateFilledState();
75
168
  }
76
169
  onClick() {
77
- this.inputViewChild.nativeElement.focus();
170
+ this.inputViewChild?.nativeElement.focus();
78
171
  }
79
172
  onInput() {
80
173
  this.updateFilledState();
@@ -242,8 +335,8 @@ class Chips {
242
335
  }
243
336
  }
244
337
  }
245
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: Chips, deps: [{ token: DOCUMENT }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
246
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: Chips, selector: "p-chips", inputs: { style: "style", styleClass: "styleClass", disabled: "disabled", field: "field", placeholder: "placeholder", max: "max", ariaLabelledBy: "ariaLabelledBy", tabindex: "tabindex", inputId: "inputId", allowDuplicate: "allowDuplicate", inputStyle: "inputStyle", inputStyleClass: "inputStyleClass", addOnTab: "addOnTab", addOnBlur: "addOnBlur", separator: "separator", showClear: "showClear" }, outputs: { onAdd: "onAdd", onRemove: "onRemove", onFocus: "onFocus", onBlur: "onBlur", onChipClick: "onChipClick", onClear: "onClear" }, host: { properties: { "class.p-inputwrapper-filled": "filled", "class.p-inputwrapper-focus": "focus", "class.p-chips-clearable": "showClear" }, classAttribute: "p-element p-inputwrapper" }, providers: [CHIPS_VALUE_ACCESSOR], queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "inputViewChild", first: true, predicate: ["inputtext"], descendants: true }], ngImport: i0, template: `
338
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Chips, deps: [{ token: DOCUMENT }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
339
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: Chips, selector: "p-chips", inputs: { style: "style", styleClass: "styleClass", disabled: "disabled", field: "field", placeholder: "placeholder", max: "max", ariaLabelledBy: "ariaLabelledBy", tabindex: "tabindex", inputId: "inputId", allowDuplicate: "allowDuplicate", inputStyle: "inputStyle", inputStyleClass: "inputStyleClass", addOnTab: "addOnTab", addOnBlur: "addOnBlur", separator: "separator", showClear: "showClear" }, outputs: { onAdd: "onAdd", onRemove: "onRemove", onFocus: "onFocus", onBlur: "onBlur", onChipClick: "onChipClick", onClear: "onClear" }, host: { properties: { "class.p-inputwrapper-filled": "filled", "class.p-inputwrapper-focus": "focus", "class.p-chips-clearable": "showClear" }, classAttribute: "p-element p-inputwrapper" }, providers: [CHIPS_VALUE_ACCESSOR], queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "inputViewChild", first: true, predicate: ["inputtext"], descendants: true }], ngImport: i0, template: `
247
340
  <div [ngClass]="'p-chips p-component'" [ngStyle]="style" [class]="styleClass" (click)="onClick()">
248
341
  <ul [ngClass]="{ 'p-inputtext p-chips-multiple-container': true, 'p-focus': focus, 'p-disabled': disabled }">
249
342
  <li #token *ngFor="let item of value; let i = index" class="p-chips-token" (click)="onItemClick($event, item)">
@@ -285,7 +378,7 @@ class Chips {
285
378
  `, isInline: true, styles: [".p-chips{display:inline-flex}.p-chips-multiple-container{margin:0;padding:0;list-style-type:none;cursor:text;overflow:hidden;display:flex;align-items:center;flex-wrap:wrap}.p-chips-token{cursor:default;display:inline-flex;align-items:center;flex:0 0 auto;max-width:100%}.p-chips-token-label{min-width:0%;overflow:auto}.p-chips-token-label::-webkit-scrollbar{display:none}.p-chips-input-token{flex:1 1 auto;display:inline-flex}.p-chips-token-icon{cursor:pointer}.p-chips-input-token input{border:0 none;outline:0 none;background-color:transparent;margin:0;padding:0;box-shadow:none;border-radius:0;width:100%}.p-fluid .p-chips{display:flex}.p-chips-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-chips-clearable .p-inputtext{position:relative}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i1.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i0.forwardRef(function () { return TimesCircleIcon; }), selector: "TimesCircleIcon" }, { kind: "component", type: i0.forwardRef(function () { return TimesIcon; }), selector: "TimesIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
286
379
  }
287
380
  export { Chips };
288
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: Chips, decorators: [{
381
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Chips, decorators: [{
289
382
  type: Component,
290
383
  args: [{ selector: 'p-chips', template: `
291
384
  <div [ngClass]="'p-chips p-component'" [ngStyle]="style" [class]="styleClass" (click)="onClick()">
@@ -387,12 +480,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
387
480
  args: [PrimeTemplate]
388
481
  }] } });
389
482
  class ChipsModule {
390
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: ChipsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
391
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0", ngImport: i0, type: ChipsModule, declarations: [Chips], imports: [CommonModule, InputTextModule, SharedModule, TimesCircleIcon, TimesIcon], exports: [Chips, InputTextModule, SharedModule] });
392
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: ChipsModule, imports: [CommonModule, InputTextModule, SharedModule, TimesCircleIcon, TimesIcon, InputTextModule, SharedModule] });
483
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ChipsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
484
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.2", ngImport: i0, type: ChipsModule, declarations: [Chips], imports: [CommonModule, InputTextModule, SharedModule, TimesCircleIcon, TimesIcon], exports: [Chips, InputTextModule, SharedModule] });
485
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ChipsModule, imports: [CommonModule, InputTextModule, SharedModule, TimesCircleIcon, TimesIcon, InputTextModule, SharedModule] });
393
486
  }
394
487
  export { ChipsModule };
395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: ChipsModule, decorators: [{
488
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ChipsModule, decorators: [{
396
489
  type: NgModule,
397
490
  args: [{
398
491
  imports: [CommonModule, InputTextModule, SharedModule, TimesCircleIcon, TimesIcon],
@@ -400,4 +493,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
400
493
  declarations: [Chips]
401
494
  }]
402
495
  }] });
403
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvY2hpcHMvY2hpcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEVBQW9CLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUEwQixTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdFAsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7QUFFaEQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQVE7SUFDckMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztJQUNwQyxLQUFLLEVBQUUsSUFBSTtDQUNkLENBQUM7QUFFRixNQXFEYSxLQUFLO0lBbUV3QjtJQUEyQjtJQUF1QjtJQWxFL0UsS0FBSyxDQUFNO0lBRVgsVUFBVSxDQUFTO0lBRW5CLFFBQVEsQ0FBVTtJQUVsQixLQUFLLENBQVM7SUFFZCxXQUFXLENBQVM7SUFFcEIsR0FBRyxDQUFTO0lBRVosY0FBYyxDQUFTO0lBRXZCLFFBQVEsQ0FBUztJQUVqQixPQUFPLENBQVM7SUFFaEIsY0FBYyxHQUFZLElBQUksQ0FBQztJQUUv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VCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEluamVjdCwgSW5wdXQsIE5nTW9kdWxlLCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFByaW1lVGVtcGxhdGUsIFNoYXJlZE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7IElucHV0VGV4dE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvaW5wdXR0ZXh0JztcbmltcG9ydCB7IFRpbWVzQ2lyY2xlSWNvbiB9IGZyb20gJ3ByaW1lbmcvaWNvbnMvdGltZXNjaXJjbGUnO1xuaW1wb3J0IHsgVGltZXNJY29uIH0gZnJvbSAncHJpbWVuZy9pY29ucy90aW1lcyc7XG5cbmV4cG9ydCBjb25zdCBDSElQU19WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENoaXBzKSxcbiAgICBtdWx0aTogdHJ1ZVxufTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwLWNoaXBzJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cIidwLWNoaXBzIHAtY29tcG9uZW50J1wiIFtuZ1N0eWxlXT1cInN0eWxlXCIgW2NsYXNzXT1cInN0eWxlQ2xhc3NcIiAoY2xpY2spPVwib25DbGljaygpXCI+XG4gICAgICAgICAgICA8dWwgW25nQ2xhc3NdPVwieyAncC1pbnB1dHRleHQgcC1jaGlwcy1tdWx0aXBsZS1jb250YWluZXInOiB0cnVlLCAncC1mb2N1cyc6IGZvY3VzLCAncC1kaXNhYmxlZCc6IGRpc2FibGVkIH1cIj5cbiAgICAgICAgICAgICAgICA8bGkgI3Rva2VuICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZhbHVlOyBsZXQgaSA9IGluZGV4XCIgY2xhc3M9XCJwLWNoaXBzLXRva2VuXCIgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKCRldmVudCwgaXRlbSlcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW0gfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpdGVtVGVtcGxhdGVcIiBjbGFzcz1cInAtY2hpcHMtdG9rZW4tbGFiZWxcIj57eyBmaWVsZCA/IHJlc29sdmVGaWVsZERhdGEoaXRlbSwgZmllbGQpIDogaXRlbSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFkaXNhYmxlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFRpbWVzQ2lyY2xlSWNvbiBbc3R5bGVDbGFzc109XCIncC1jaGlwcy10b2tlbi1pY29uJ1wiICpuZ0lmPVwiIXJlbW92ZVRva2VuSWNvblRlbXBsYXRlXCIgKGNsaWNrKT1cInJlbW92ZUl0ZW0oJGV2ZW50LCBpKVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInJlbW92ZVRva2VuSWNvblRlbXBsYXRlXCIgY2xhc3M9XCJwLWNoaXBzLXRva2VuLWljb25cIiAoY2xpY2spPVwicmVtb3ZlSXRlbSgkZXZlbnQsIGkpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVtb3ZlVG9rZW5JY29uVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cInAtY2hpcHMtaW5wdXQtdG9rZW5cIiBbbmdDbGFzc109XCJ7ICdwLWNoaXBzLWNsZWFyYWJsZSc6IHNob3dDbGVhciAmJiAhZGlzYWJsZWQgfVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICNpbnB1dHRleHRcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cImlucHV0SWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwidmFsdWUgJiYgdmFsdWUubGVuZ3RoID8gbnVsbCA6IHBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChpbnB1dCk9XCJvbklucHV0KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKHBhc3RlKT1cIm9uUGFzdGUoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkQnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGZvY3VzKT1cIm9uSW5wdXRGb2N1cygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChibHVyKT1cIm9uSW5wdXRCbHVyKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cImlucHV0U3R5bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cImlucHV0U3R5bGVDbGFzc1wiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICA8bGkgKm5nSWY9XCJ2YWx1ZSAhPSBudWxsICYmIGZpbGxlZCAmJiAhZGlzYWJsZWQgJiYgc2hvd0NsZWFyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxUaW1lc0ljb24gKm5nSWY9XCIhY2xlYXJJY29uVGVtcGxhdGVcIiBbc3R5bGVDbGFzc109XCIncC1jaGlwcy1jbGVhci1pY29uJ1wiIChjbGljayk9XCJjbGVhcigpXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjbGVhckljb25UZW1wbGF0ZVwiIGNsYXNzPVwicC1jaGlwcy1jbGVhci1pY29uXCIgKGNsaWNrKT1cImNsZWFyKClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cImNsZWFySWNvblRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICA8L2Rpdj5cbiAgICBgLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdwLWVsZW1lbnQgcC1pbnB1dHdyYXBwZXInLFxuICAgICAgICAnW2NsYXNzLnAtaW5wdXR3cmFwcGVyLWZpbGxlZF0nOiAnZmlsbGVkJyxcbiAgICAgICAgJ1tjbGFzcy5wLWlucHV0d3JhcHBlci1mb2N1c10nOiAnZm9jdXMnLFxuICAgICAgICAnW2NsYXNzLnAtY2hpcHMtY2xlYXJhYmxlXSc6ICdzaG93Q2xlYXInXG4gICAgfSxcbiAgICBwcm92aWRlcnM6IFtDSElQU19WQUxVRV9BQ0NFU1NPUl0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBzdHlsZVVybHM6IFsnLi9jaGlwcy5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDaGlwcyBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICBASW5wdXQoKSBzdHlsZTogYW55O1xuXG4gICAgQElucHV0KCkgc3R5bGVDbGFzczogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgICBASW5wdXQoKSBmaWVsZDogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIG1heDogbnVtYmVyO1xuXG4gICAgQElucHV0KCkgYXJpYUxhYmVsbGVkQnk6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIHRhYmluZGV4OiBudW1iZXI7XG5cbiAgICBASW5wdXQoKSBpbnB1dElkOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBhbGxvd0R1cGxpY2F0ZTogYm9vbGVhbiA9IHRydWU7XG5cbiAgICBASW5wdXQoKSBpbnB1dFN0eWxlOiBhbnk7XG5cbiAgICBASW5wdXQoKSBpbnB1dFN0eWxlQ2xhc3M6IGFueTtcblxuICAgIEBJbnB1dCgpIGFkZE9uVGFiOiBib29sZWFuO1xuXG4gICAgQElucHV0KCkgYWRkT25CbHVyOiBib29sZWFuO1xuXG4gICAgQElucHV0KCkgc2VwYXJhdG9yOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBzaG93Q2xlYXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSBvbkFkZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAT3V0cHV0KCkgb25SZW1vdmU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQE91dHB1dCgpIG9uRm9jdXM6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQE91dHB1dCgpIG9uQmx1cjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAT3V0cHV0KCkgb25DaGlwQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQE91dHB1dCgpIG9uQ2xlYXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXR0ZXh0JykgaW5wdXRWaWV3Q2hpbGQ6IEVsZW1lbnRSZWY7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKFByaW1lVGVtcGxhdGUpIHRlbXBsYXRlczogUXVlcnlMaXN0PGFueT47XG5cbiAgICBwdWJsaWMgaXRlbVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgcmVtb3ZlVG9rZW5JY29uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBjbGVhckljb25UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIHZhbHVlOiBhbnk7XG5cbiAgICBvbk1vZGVsQ2hhbmdlOiBGdW5jdGlvbiA9ICgpID0+IHt9O1xuXG4gICAgb25Nb2RlbFRvdWNoZWQ6IEZ1bmN0aW9uID0gKCkgPT4ge307XG5cbiAgICB2YWx1ZUNoYW5nZWQ6IGJvb2xlYW47XG5cbiAgICBmb2N1czogYm9vbGVhbjtcblxuICAgIGZpbGxlZDogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50LCBwdWJsaWMgZWw6IEVsZW1lbnRSZWYsIHB1YmxpYyBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMudGVtcGxhdGVzLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgIHN3aXRjaCAoaXRlbS5nZXRUeXBlKCkpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdpdGVtJzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgJ3JlbW92ZXRva2VuaWNvbic6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlVG9rZW5JY29uVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgJ2NsZWFyaWNvbic6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJJY29uVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXRlbVRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMudXBkYXRlRmlsbGVkU3RhdGUoKTtcbiAgICB9XG5cbiAgICBvbkNsaWNrKCkge1xuICAgICAgICB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBvbklucHV0KCkge1xuICAgICAgICB0aGlzLnVwZGF0ZUZpbGxlZFN0YXRlKCk7XG4gICAgfVxuXG4gICAgb25QYXN0ZShldmVudCkge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnNlcGFyYXRvcikge1xuICAgICAgICAgICAgICAgIGxldCBwYXN0ZWREYXRhID0gKGV2ZW50LmNsaXBib2FyZERhdGEgfHwgdGhpcy5kb2N1bWVudC5kZWZhdWx0Vmlld1snY2xpcGJvYXJkRGF0YSddKS5nZXREYXRhKCdUZXh0Jyk7XG4gICAgICAgICAgICAgICAgcGFzdGVkRGF0YS5zcGxpdCh0aGlzLnNlcGFyYXRvcikuZm9yRWFjaCgodmFsKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkSXRlbShldmVudCwgdmFsLCB0cnVlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy51cGRhdGVGaWxsZWRTdGF0ZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlRmlsbGVkU3RhdGUoKSB7XG4gICAgICAgIGlmICghdGhpcy52YWx1ZSB8fCB0aGlzLnZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5maWxsZWQgPSB0aGlzLmlucHV0Vmlld0NoaWxkICYmIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudCAmJiB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQudmFsdWUgIT0gJyc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmZpbGxlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkl0ZW1DbGljayhldmVudDogRXZlbnQsIGl0ZW06IGFueSkge1xuICAgICAgICB0aGlzLm9uQ2hpcENsaWNrLmVtaXQoe1xuICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXG4gICAgICAgICAgICB2YWx1ZTogaXRlbVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLnVwZGF0ZU1heGVkT3V0KCk7XG4gICAgICAgIHRoaXMudXBkYXRlRmlsbGVkU3RhdGUoKTtcbiAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBGdW5jdGlvbik6IHZvaWQge1xuICAgICAgICB0aGlzLm9uTW9kZWxDaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogRnVuY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbk1vZGVsVG91Y2hlZCA9IGZuO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUodmFsOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB2YWw7XG4gICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcmVzb2x2ZUZpZWxkRGF0YShkYXRhOiBhbnksIGZpZWxkOiBzdHJpbmcpOiBhbnkge1xuICAgICAgICBpZiAoZGF0YSAmJiBmaWVsZCkge1xuICAgICAgICAgICAgaWYgKGZpZWxkLmluZGV4T2YoJy4nKSA9PSAtMSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBkYXRhW2ZpZWxkXTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbGV0IGZpZWxkczogc3RyaW5nW10gPSBmaWVsZC5zcGxpdCgnLicpO1xuICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IGRhdGE7XG4gICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGxlbiA9IGZpZWxkcy5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlW2ZpZWxkc1tpXV07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25JbnB1dEZvY3VzKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgICAgIHRoaXMuZm9jdXMgPSB0cnVlO1xuICAgICAgICB0aGlzLm9uRm9jdXMuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgb25JbnB1dEJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICAgICAgdGhpcy5mb2N1cyA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5hZGRPbkJsdXIgJiYgdGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmFkZEl0ZW0oZXZlbnQsIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC52YWx1ZSwgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMub25Nb2RlbFRvdWNoZWQoKTtcbiAgICAgICAgdGhpcy5vbkJsdXIuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgcmVtb3ZlSXRlbShldmVudDogRXZlbnQsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCByZW1vdmVkSXRlbSA9IHRoaXMudmFsdWVbaW5kZXhdO1xuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy52YWx1ZS5maWx0ZXIoKHZhbCwgaSkgPT4gaSAhPSBpbmRleCk7XG4gICAgICAgIHRoaXMub25Nb2RlbENoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICAgICAgdGhpcy5vblJlbW92ZS5lbWl0KHtcbiAgICAgICAgICAgIG9yaWdpbmFsRXZlbnQ6IGV2ZW50LFxuICAgICAgICAgICAgdmFsdWU6IHJlbW92ZWRJdGVtXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnVwZGF0ZUZpbGxlZFN0YXRlKCk7XG4gICAgICAgIHRoaXMudXBkYXRlTWF4ZWRPdXQoKTtcbiAgICB9XG5cbiAgICBhZGRJdGVtKGV2ZW50OiBFdmVudCwgaXRlbTogc3RyaW5nLCBwcmV2ZW50RGVmYXVsdDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy52YWx1ZSB8fCBbXTtcbiAgICAgICAgaWYgKGl0ZW0gJiYgaXRlbS50cmltKCkubGVuZ3RoKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5hbGxvd0R1cGxpY2F0ZSB8fCB0aGlzLnZhbHVlLmluZGV4T2YoaXRlbSkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IFsuLi50aGlzLnZhbHVlLCBpdGVtXTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uTW9kZWxDaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkFkZC5lbWl0KHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBpdGVtXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51cGRhdGVGaWxsZWRTdGF0ZSgpO1xuICAgICAgICB0aGlzLnVwZGF0ZU1heGVkT3V0KCk7XG4gICAgICAgIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuXG4gICAgICAgIGlmIChwcmV2ZW50RGVmYXVsdCkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsZWFyKCkge1xuICAgICAgICB0aGlzLnZhbHVlID0gbnVsbDtcbiAgICAgICAgdGhpcy51cGRhdGVGaWxsZWRTdGF0ZSgpO1xuICAgICAgICB0aGlzLm9uTW9kZWxDaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICAgIHRoaXMub25DbGVhci5lbWl0KCk7XG4gICAgfVxuXG4gICAgb25LZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHN3aXRjaCAoZXZlbnQud2hpY2gpIHtcbiAgICAgICAgICAgIC8vYmFja3NwYWNlXG4gICAgICAgICAgICBjYXNlIDg6XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC52YWx1ZS5sZW5ndGggPT09IDAgJiYgdGhpcy52YWx1ZSAmJiB0aGlzLnZhbHVlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IFsuLi50aGlzLnZhbHVlXTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHJlbW92ZWRJdGVtID0gdGhpcy52YWx1ZS5wb3AoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uUmVtb3ZlLmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogcmVtb3ZlZEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlRmlsbGVkU3RhdGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIC8vZW50ZXJcbiAgICAgICAgICAgIGNhc2UgMTM6XG4gICAgICAgICAgICAgICAgdGhpcy5hZGRJdGVtKGV2ZW50LCB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQudmFsdWUsIHRydWUpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDk6XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuYWRkT25UYWIgJiYgdGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnZhbHVlICE9PSAnJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZEl0ZW0oZXZlbnQsIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC52YWx1ZSwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLm1heCAmJiB0aGlzLnZhbHVlICYmIHRoaXMubWF4ID09PSB0aGlzLnZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5zZXBhcmF0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuc2VwYXJhdG9yID09PSBldmVudC5rZXkgfHwgZXZlbnQua2V5Lm1hdGNoKHRoaXMuc2VwYXJhdG9yKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRJdGVtKGV2ZW50LCB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQudmFsdWUsIHRydWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlTWF4ZWRPdXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlucHV0Vmlld0NoaWxkICYmIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudCkge1xuICAgICAgICAgICAgaWYgKHRoaXMubWF4ICYmIHRoaXMudmFsdWUgJiYgdGhpcy5tYXggPT09IHRoaXMudmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgLy8gQ2FsbGluZyBgYmx1cmAgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgZmlyZWZveCBkb2VzIG5vdCBjYWxsIGBvbmZvY3VzYCBldmVudHNcbiAgICAgICAgICAgICAgICAvLyBmb3IgZGlzYWJsZWQgaW5wdXRzLCB1bmxpa2UgY2hyb21pdW0gYnJvd3NlcnMuXG4gICAgICAgICAgICAgICAgdGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LmJsdXIoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQuYmx1cigpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC5kaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQgfHwgZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSW5wdXRUZXh0TW9kdWxlLCBTaGFyZWRNb2R1bGUsIFRpbWVzQ2lyY2xlSWNvbiwgVGltZXNJY29uXSxcbiAgICBleHBvcnRzOiBbQ2hpcHMsIElucHV0VGV4dE1vZHVsZSwgU2hhcmVkTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtDaGlwc11cbn0pXG5leHBvcnQgY2xhc3MgQ2hpcHNNb2R1bGUge31cbiJdfQ==
496
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvY2hpcHMvY2hpcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEVBQW9CLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUEwQixTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdFAsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7QUFJaEQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQVE7SUFDckMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztJQUNwQyxLQUFLLEVBQUUsSUFBSTtDQUNkLENBQUM7QUFFRixNQXFEYSxLQUFLO0lBMkl3QjtJQUEyQjtJQUF1QjtJQTFJeEY7OztPQUdHO0lBQ00sS0FBSyxDQUE4QztJQUM1RDs7O09BR0c7SUFDTSxVQUFVLENBQXFCO0lBQ3hDOzs7T0FHRztJQUNNLFFBQVEsQ0FBc0I7SUFDdkM7OztPQUdHO0lBQ00sS0FBSyxDQUFxQjtJQUNuQzs7O09BR0c7SUFDTSxXQUFXLENBQXFCO0lBQ3pDOzs7T0FHRztJQUNNLEdBQUcsQ0FB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QUUsZUFBZSxFQUFFLFNBQVMsRUFDaEUsZUFBZSxFQUFFLFlBQVk7O1NBR3JDLFdBQVc7MkZBQVgsV0FBVztrQkFMdkIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsU0FBUyxDQUFDO29CQUNsRixPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsZUFBZSxFQUFFLFlBQVksQ0FBQztvQkFDL0MsWUFBWSxFQUFFLENBQUMsS0FBSyxDQUFDO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSwgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbmplY3QsIElucHV0LCBOZ01vZHVsZSwgT3V0cHV0LCBRdWVyeUxpc3QsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQcmltZVRlbXBsYXRlLCBTaGFyZWRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBJbnB1dFRleHRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2lucHV0dGV4dCc7XG5pbXBvcnQgeyBUaW1lc0NpcmNsZUljb24gfSBmcm9tICdwcmltZW5nL2ljb25zL3RpbWVzY2lyY2xlJztcbmltcG9ydCB7IFRpbWVzSWNvbiB9IGZyb20gJ3ByaW1lbmcvaWNvbnMvdGltZXMnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdwcmltZW5nL3RzLWhlbHBlcnMnO1xuaW1wb3J0IHsgQ2hpcHNBZGRFdmVudCwgQ2hpcHNSZW1vdmVFdmVudCwgQ2hpcHNDbGlja0V2ZW50IH0gZnJvbSAnLi9jaGlwcy5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY29uc3QgQ0hJUFNfVkFMVUVfQUNDRVNTT1I6IGFueSA9IHtcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDaGlwcyksXG4gICAgbXVsdGk6IHRydWVcbn07XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncC1jaGlwcycsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCIncC1jaGlwcyBwLWNvbXBvbmVudCdcIiBbbmdTdHlsZV09XCJzdHlsZVwiIFtjbGFzc109XCJzdHlsZUNsYXNzXCIgKGNsaWNrKT1cIm9uQ2xpY2soKVwiPlxuICAgICAgICAgICAgPHVsIFtuZ0NsYXNzXT1cInsgJ3AtaW5wdXR0ZXh0IHAtY2hpcHMtbXVsdGlwbGUtY29udGFpbmVyJzogdHJ1ZSwgJ3AtZm9jdXMnOiBmb2N1cywgJ3AtZGlzYWJsZWQnOiBkaXNhYmxlZCB9XCI+XG4gICAgICAgICAgICAgICAgPGxpICN0b2tlbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiB2YWx1ZTsgbGV0IGkgPSBpbmRleFwiIGNsYXNzPVwicC1jaGlwcy10b2tlblwiIChjbGljayk9XCJvbkl0ZW1DbGljaygkZXZlbnQsIGl0ZW0pXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhaXRlbVRlbXBsYXRlXCIgY2xhc3M9XCJwLWNoaXBzLXRva2VuLWxhYmVsXCI+e3sgZmllbGQgPyByZXNvbHZlRmllbGREYXRhKGl0ZW0sIGZpZWxkKSA6IGl0ZW0gfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZGlzYWJsZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxUaW1lc0NpcmNsZUljb24gW3N0eWxlQ2xhc3NdPVwiJ3AtY2hpcHMtdG9rZW4taWNvbidcIiAqbmdJZj1cIiFyZW1vdmVUb2tlbkljb25UZW1wbGF0ZVwiIChjbGljayk9XCJyZW1vdmVJdGVtKCRldmVudCwgaSlcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJyZW1vdmVUb2tlbkljb25UZW1wbGF0ZVwiIGNsYXNzPVwicC1jaGlwcy10b2tlbi1pY29uXCIgKGNsaWNrKT1cInJlbW92ZUl0ZW0oJGV2ZW50LCBpKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cInJlbW92ZVRva2VuSWNvblRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJwLWNoaXBzLWlucHV0LXRva2VuXCIgW25nQ2xhc3NdPVwieyAncC1jaGlwcy1jbGVhcmFibGUnOiBzaG93Q2xlYXIgJiYgIWRpc2FibGVkIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAjaW5wdXR0ZXh0XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJpbnB1dElkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInZhbHVlICYmIHZhbHVlLmxlbmd0aCA/IG51bGwgOiBwbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci50YWJpbmRleF09XCJ0YWJpbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJvbktleWRvd24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoaW5wdXQpPVwib25JbnB1dCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChwYXN0ZSk9XCJvblBhc3RlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChmb2N1cyk9XCJvbklucHV0Rm9jdXMoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoYmx1cik9XCJvbklucHV0Qmx1cigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJpbnB1dFN0eWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJpbnB1dFN0eWxlQ2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPGxpICpuZ0lmPVwidmFsdWUgIT0gbnVsbCAmJiBmaWxsZWQgJiYgIWRpc2FibGVkICYmIHNob3dDbGVhclwiPlxuICAgICAgICAgICAgICAgICAgICA8VGltZXNJY29uICpuZ0lmPVwiIWNsZWFySWNvblRlbXBsYXRlXCIgW3N0eWxlQ2xhc3NdPVwiJ3AtY2hpcHMtY2xlYXItaWNvbidcIiAoY2xpY2spPVwiY2xlYXIoKVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY2xlYXJJY29uVGVtcGxhdGVcIiBjbGFzcz1cInAtY2hpcHMtY2xlYXItaWNvblwiIChjbGljayk9XCJjbGVhcigpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjbGVhckljb25UZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgPC9kaXY+XG4gICAgYCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAncC1lbGVtZW50IHAtaW5wdXR3cmFwcGVyJyxcbiAgICAgICAgJ1tjbGFzcy5wLWlucHV0d3JhcHBlci1maWxsZWRdJzogJ2ZpbGxlZCcsXG4gICAgICAgICdbY2xhc3MucC1pbnB1dHdyYXBwZXItZm9jdXNdJzogJ2ZvY3VzJyxcbiAgICAgICAgJ1tjbGFzcy5wLWNoaXBzLWNsZWFyYWJsZV0nOiAnc2hvd0NsZWFyJ1xuICAgIH0sXG4gICAgcHJvdmlkZXJzOiBbQ0hJUFNfVkFMVUVfQUNDRVNTT1JdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2hpcHMuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ2hpcHMgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgLyoqXG4gICAgICogSW5saW5lIHN0eWxlIG9mIHRoZSBlbGVtZW50LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHN0eWxlOiB7IFtrbGFzczogc3RyaW5nXTogYW55IH0gfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIFN0eWxlIGNsYXNzIG9mIHRoZSBlbGVtZW50LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHN0eWxlQ2xhc3M6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBXaGVuIHByZXNlbnQsIGl0IHNwZWNpZmllcyB0aGF0IHRoZSBlbGVtZW50IHNob3VsZCBiZSBkaXNhYmxlZC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBOYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBkaXNwbGF5IG9uIGEgY2hpcC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBmaWVsZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIEFkdmlzb3J5IGluZm9ybWF0aW9uIHRvIGRpc3BsYXkgb24gaW5wdXQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBNYXhpbXVtIG51bWJlciBvZiBlbnRyaWVzIGFsbG93ZWQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgbWF4OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogRXN0YWJsaXNoZXMgcmVsYXRpb25zaGlwcyBiZXR3ZWVuIHRoZSBjb21wb25lbnQgYW5kIGxhYmVsKHMpIHdoZXJlIGl0cyB2YWx1ZSBzaG91bGQgYmUgb25lIG9yIG1vcmUgZWxlbWVudCBJRHMuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgYXJpYUxhYmVsbGVkQnk6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBJbmRleCBvZiB0aGUgZWxlbWVudCBpbiB0YWJiaW5nIG9yZGVyLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRhYmluZGV4OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogSWRlbnRpZmllciBvZiB0aGUgZm9jdXMgaW5wdXQgdG8gbWF0Y2ggYSBsYWJlbCBkZWZpbmVkIGZvciB0aGUgY29tcG9uZW50LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGlucHV0SWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRvIGFsbG93IGR1cGxpY2F0ZSB2YWx1ZXMgb3Igbm90LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGFsbG93RHVwbGljYXRlOiBib29sZWFuID0gdHJ1ZTtcbiAgICAvKipcbiAgICAgKiBJbmxpbmUgc3R5bGUgb2YgdGhlIGlucHV0IGZpZWxkLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGlucHV0U3R5bGU6IGFueTtcbiAgICAvKipcbiAgICAgKiBTdHlsZSBjbGFzcyBvZiB0aGUgaW5wdXQgZmllbGQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgaW5wdXRTdHlsZUNsYXNzOiBhbnk7XG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBhZGQgYW4gaXRlbSBvbiB0YWIga2V5IHByZXNzLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGFkZE9uVGFiOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdG8gYWRkIGFuIGl0ZW0gd2hlbiB0aGUgaW5wdXQgbG9zZXMgZm9jdXMuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgYWRkT25CbHVyOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIFNlcGFyYXRvciBjaGFyIHRvIGFkZCBhbiBpdGVtIHdoZW4gcHJlc3NlZCBpbiBhZGRpdGlvbiB0byB0aGUgZW50ZXIga2V5LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHNlcGFyYXRvcjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIFdoZW4gZW5hYmxlZCwgYSBjbGVhciBpY29uIGlzIGRpc3BsYXllZCB0byBjbGVhciB0aGUgdmFsdWUuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgc2hvd0NsZWFyOiBib29sZWFuID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgdG8gaW52b2tlIG9uIGNoaXAgYWRkLlxuICAgICAqIEBwYXJhbSB7Q2hpcHNBZGRFdmVudH0gZXZlbnQgLSBDdXN0b20gZXZlbnQuXG4gICAgICogQGdyb3VwIEVtaXRzXG4gICAgICovXG4gICAgQE91dHB1dCgpIG9uQWRkOiBFdmVudEVtaXR0ZXI8Q2hpcHNBZGRFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPENoaXBzQWRkRXZlbnQ+KCk7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgdG8gaW52b2tlIG9uIGNoaXAgcmVtb3ZlLlxuICAgICAqIEBwYXJhbSB7Q2hpcHNSZW1vdmVFdmVudH0gZXZlbnQgLSBDdXN0b20gZXZlbnQuXG4gICAgICogQGdyb3VwIEVtaXRzXG4gICAgICovXG4gICAgQE91dHB1dCgpIG9uUmVtb3ZlOiBFdmVudEVtaXR0ZXI8Q2hpcHNSZW1vdmVFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPENoaXBzUmVtb3ZlRXZlbnQ+KCk7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgdG8gaW52b2tlIG9uIGZvY3VzIG9mIGlucHV0IGZpZWxkLlxuICAgICAqIEBwYXJhbSB7RXZlbnR9IGV2ZW50IC0gRm9jdXMgZXZlbnRcbiAgICAgKiBAZ3JvdXAgRW1pdHNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgb25Gb2N1czogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgdG8gaW52b2tlIG9uIGJsdXIgb2YgaW5wdXQgZmllbGQuXG4gICAgICogQHBhcmFtIHtFdmVudH0gZXZlbnQgLSBCbHVyIGV2ZW50XG4gICAgICogQGdyb3VwIEVtaXRzXG4gICAgICovXG4gICAgQE91dHB1dCgpIG9uQmx1cjogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgdG8gaW52b2tlIG9uIGNoaXAgY2xpY2tlZC5cbiAgICAgKiBAcGFyYW0ge0NoaXBzQ2xpY2tFdmVudH0gZXZlbnQgLSBDdXN0b20gZXZlbnRcbiAgICAgKiBAZ3JvdXAgRW1pdHNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgb25DaGlwQ2xpY2s6IEV2ZW50RW1pdHRlcjxDaGlwc0NsaWNrRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxDaGlwc0NsaWNrRXZlbnQ+KCk7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgdG8gaW52b2tlIG9uIGNsZWFyIHRva2VuIGNsaWNrZWQuXG4gICAgICogQGdyb3VwIEVtaXRzXG4gICAgICovXG4gICAgQE91dHB1dCgpIG9uQ2xlYXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXR0ZXh0JykgaW5wdXRWaWV3Q2hpbGQhOiBFbGVtZW50UmVmO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihQcmltZVRlbXBsYXRlKSB0ZW1wbGF0ZXMhOiBRdWVyeUxpc3Q8YW55PjtcblxuICAgIHB1YmxpYyBpdGVtVGVtcGxhdGU6IE51bGxhYmxlPFRlbXBsYXRlUmVmPGFueT4+O1xuXG4gICAgcmVtb3ZlVG9rZW5JY29uVGVtcGxhdGU6IE51bGxhYmxlPFRlbXBsYXRlUmVmPGFueT4+O1xuXG4gICAgY2xlYXJJY29uVGVtcGxhdGU6IE51bGxhYmxlPFRlbXBsYXRlUmVmPGFueT4+O1xuXG4gICAgdmFsdWU6IGFueTtcblxuICAgIG9uTW9kZWxDaGFuZ2U6IEZ1bmN0aW9uID0gKCkgPT4ge307XG5cbiAgICBvbk1vZGVsVG91Y2hlZDogRnVuY3Rpb24gPSAoKSA9PiB7fTtcblxuICAgIHZhbHVlQ2hhbmdlZDogTnVsbGFibGU8Ym9vbGVhbj47XG5cbiAgICBmb2N1czogTnVsbGFibGU8Ym9vbGVhbj47XG5cbiAgICBmaWxsZWQ6IE51bGxhYmxlPGJvb2xlYW4+O1xuXG4gICAgY29uc3RydWN0b3IoQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnQsIHB1YmxpYyBlbDogRWxlbWVudFJlZiwgcHVibGljIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgc3dpdGNoIChpdGVtLmdldFR5cGUoKSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2l0ZW0nOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLml0ZW1UZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAncmVtb3ZldG9rZW5pY29uJzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW1vdmVUb2tlbkljb25UZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAnY2xlYXJpY29uJzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbGVhckljb25UZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy51cGRhdGVGaWxsZWRTdGF0ZSgpO1xuICAgIH1cblxuICAgIG9uQ2xpY2soKSB7XG4gICAgICAgIHRoaXMuaW5wdXRWaWV3Q2hpbGQ/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBvbklucHV0KCkge1xuICAgICAgICB0aGlzLnVwZGF0ZUZpbGxlZFN0YXRlKCk7XG4gICAgfVxuXG4gICAgb25QYXN0ZShldmVudDogYW55KSB7XG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuc2VwYXJhdG9yKSB7XG4gICAgICAgICAgICAgICAgbGV0IHBhc3RlZERhdGEgPSAoZXZlbnQuY2xpcGJvYXJkRGF0YSB8fCAodGhpcy5kb2N1bWVudC5kZWZhdWx0VmlldyBhcyBhbnkpWydjbGlwYm9hcmREYXRhJ10pLmdldERhdGEoJ1RleHQnKTtcbiAgICAgICAgICAgICAgICBwYXN0ZWREYXRhLnNwbGl0KHRoaXMuc2VwYXJhdG9yKS5mb3JFYWNoKCh2YWw6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZEl0ZW0oZXZlbnQsIHZhbCwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMudXBkYXRlRmlsbGVkU3RhdGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVwZGF0ZUZpbGxlZFN0YXRlKCkge1xuICAgICAgICBpZiAoIXRoaXMudmFsdWUgfHwgdGhpcy52YWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHRoaXMuZmlsbGVkID0gdGhpcy5pbnB1dFZpZXdDaGlsZCAmJiB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQgJiYgdGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnZhbHVlICE9ICcnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5maWxsZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25JdGVtQ2xpY2soZXZlbnQ6IEV2ZW50LCBpdGVtOiBhbnkpIHtcbiAgICAgICAgdGhpcy5vbkNoaXBDbGljay5lbWl0KHtcbiAgICAgICAgICAgIG9yaWdpbmFsRXZlbnQ6IGV2ZW50LFxuICAgICAgICAgICAgdmFsdWU6IGl0ZW1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy51cGRhdGVNYXhlZE91dCgpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZpbGxlZFN0YXRlKCk7XG4gICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogRnVuY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IEZ1bmN0aW9uKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Nb2RlbFRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKHZhbDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gdmFsO1xuICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIHJlc29sdmVGaWVsZERhdGEoZGF0YTogYW55LCBmaWVsZDogc3RyaW5nKTogYW55IHtcbiAgICAgICAgaWYgKGRhdGEgJiYgZmllbGQpIHtcbiAgICAgICAgICAgIGlmIChmaWVsZC5pbmRleE9mKCcuJykgPT0gLTEpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGF0YVtmaWVsZF07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGxldCBmaWVsZHM6IHN0cmluZ1tdID0gZmllbGQuc3BsaXQoJy4nKTtcbiAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBkYXRhO1xuICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwLCBsZW4gPSBmaWVsZHMubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZVtmaWVsZHNbaV1dO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uSW5wdXRGb2N1cyhldmVudDogRm9jdXNFdmVudCkge1xuICAgICAgICB0aGlzLmZvY3VzID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIG9uSW5wdXRCbHVyKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgICAgIHRoaXMuZm9jdXMgPSBmYWxzZTtcbiAgICAgICAgaWYgKHRoaXMuYWRkT25CbHVyICYmIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC52YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5hZGRJdGVtKGV2ZW50LCB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQudmFsdWUsIGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9uTW9kZWxUb3VjaGVkKCk7XG4gICAgICAgIHRoaXMub25CbHVyLmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIHJlbW92ZUl0ZW0oZXZlbnQ6IEV2ZW50LCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgcmVtb3ZlZEl0ZW0gPSB0aGlzLnZhbHVlW2luZGV4XTtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMudmFsdWUuZmlsdGVyKCh2YWw6IGFueSwgaTogbnVtYmVyKSA9PiBpICE9IGluZGV4KTtcbiAgICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgICAgICB0aGlzLm9uUmVtb3ZlLmVtaXQoe1xuICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXG4gICAgICAgICAgICB2YWx1ZTogcmVtb3ZlZEl0ZW1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudXBkYXRlRmlsbGVkU3RhdGUoKTtcbiAgICAgICAgdGhpcy51cGRhdGVNYXhlZE91dCgpO1xuICAgIH1cblxuICAgIGFkZEl0ZW0oZXZlbnQ6IEV2ZW50LCBpdGVtOiBzdHJpbmcsIHByZXZlbnREZWZhdWx0OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLnZhbHVlIHx8IFtdO1xuICAgICAgICBpZiAoaXRlbSAmJiBpdGVtLnRyaW0oKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmFsbG93RHVwbGljYXRlIHx8IHRoaXMudmFsdWUuaW5kZXhPZihpdGVtKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gWy4uLnRoaXMudmFsdWUsIGl0ZW1dO1xuICAgICAgICAgICAgICAgIHRoaXMub25Nb2RlbENoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQWRkLmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICBvcmlnaW5hbEV2ZW50OiBldmVudCxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGl0ZW1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnVwZGF0ZUZpbGxlZFN0YXRlKCk7XG4gICAgICAgIHRoaXMudXBkYXRlTWF4ZWRPdXQoKTtcbiAgICAgICAgdGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG5cbiAgICAgICAgaWYgKHByZXZlbnREZWZhdWx0KSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2xlYXIoKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBudWxsO1xuICAgICAgICB0aGlzLnVwZGF0ZUZpbGxlZFN0YXRlKCk7XG4gICAgICAgIHRoaXMub25Nb2RlbENoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICAgICAgdGhpcy5vbkNsZWFyLmVtaXQoKTtcbiAgICB9XG5cbiAgICBvbktleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgc3dpdGNoIChldmVudC53aGljaCkge1xuICAgICAgICAgICAgLy9iYWNrc3BhY2VcbiAgICAgICAgICAgIGNhc2UgODpcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnZhbHVlLmxlbmd0aCA9PT0gMCAmJiB0aGlzLnZhbHVlICYmIHRoaXMudmFsdWUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gWy4uLnRoaXMudmFsdWVdO1xuICAgICAgICAgICAgICAgICAgICBsZXQgcmVtb3ZlZEl0ZW0gPSB0aGlzLnZhbHVlLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uTW9kZWxDaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25SZW1vdmUuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW5hbEV2ZW50OiBldmVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiByZW1vdmVkSXRlbVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVGaWxsZWRTdGF0ZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgLy9lbnRlclxuICAgICAgICAgICAgY2FzZSAxMzpcbiAgICAgICAgICAgICAgICB0aGlzLmFkZEl0ZW0oZXZlbnQsIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC52YWx1ZSwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgOTpcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5hZGRPblRhYiAmJiB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQudmFsdWUgIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkSXRlbShldmVudCwgdGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnZhbHVlLCB0cnVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMubWF4ICYmIHRoaXMudmFsdWUgJiYgdGhpcy5tYXggPT09IHRoaXMudmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnNlcGFyYXRvcikge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5zZXBhcmF0b3IgPT09IGV2ZW50LmtleSB8fCBldmVudC5rZXkubWF0Y2godGhpcy5zZXBhcmF0b3IpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZEl0ZW0oZXZlbnQsIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC52YWx1ZSwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGVNYXhlZE91dCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaW5wdXRWaWV3Q2hpbGQgJiYgdGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgICAgICBpZiAodGhpcy5tYXggJiYgdGhpcy52YWx1ZSAmJiB0aGlzLm1heCA9PT0gdGhpcy52YWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAvLyBDYWxsaW5nIGBibHVyYCBpcyBuZWNlc3NhcnkgYmVjYXVzZSBmaXJlZm94IGRvZXMgbm90IGNhbGwgYG9uZm9jdXNgIGV2ZW50c1xuICAgICAgICAgICAgICAgIC8vIGZvciBkaXNhYmxlZCBpbnB1dHMsIHVubGlrZSBjaHJvbWl1bSBicm93c2Vycy5cbiAgICAgICAgICAgICAgICB0aGlzLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnQuYmx1cigpO1xuICAgICAgICAgICAgICAgIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC5kaXNhYmxlZCA9IHRydWU7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC5ibHVyKCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LmRpc2FibGVkID0gdGhpcy5kaXNhYmxlZCB8fCBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBJbnB1dFRleHRNb2R1bGUsIFNoYXJlZE1vZHVsZSwgVGltZXNDaXJjbGVJY29uLCBUaW1lc0ljb25dLFxuICAgIGV4cG9ydHM6IFtDaGlwcywgSW5wdXRUZXh0TW9kdWxlLCBTaGFyZWRNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW0NoaXBzXVxufSlcbmV4cG9ydCBjbGFzcyBDaGlwc01vZHVsZSB7fVxuIl19
@@ -1,2 +1,3 @@
1
1
  export * from './chips';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9jaGlwcy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jaGlwcyc7XG4iXX0=
2
+ export * from './chips.interface';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9jaGlwcy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NoaXBzJztcbmV4cG9ydCAqIGZyb20gJy4vY2hpcHMuaW50ZXJmYWNlJztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3JwaWNrZXIuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2NvbG9ycGlja2VyL2NvbG9ycGlja2VyLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3JQaWNrZXIgfSBmcm9tICcuL2NvbG9ycGlja2VyJztcbi8qKlxuICogQ3VzdG9tIGNoYW5nZSBldmVudC5cbiAqIEBzZWUge0BsaW5rIENvbG9yUGlja2VyLm9uQ2hhbmdlfVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbG9yUGlja2VyQ2hhbmdlRXZlbnQge1xuICAgIC8qKlxuICAgICAqIEJyb3dzZXIgZXZlbnRcbiAgICAgKi9cbiAgICBvcmlnaW5hbEV2ZW50OiBFdmVudDtcbiAgICAvKipcbiAgICAgKiBTZWxlY3RlZCBjb2xvciB2YWx1ZS5cbiAgICAgKi9cbiAgICB2YWx1ZTogc3RyaW5nIHwgb2JqZWN0O1xufVxuIl19