@qius.solutions/parallel-ui-angular 1.0.0

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 (1830) hide show
  1. package/LICENSE +88 -0
  2. package/README.md +254 -0
  3. package/accordion/accordion.d.ts +77 -0
  4. package/accordion/index.d.ts +5 -0
  5. package/accordion/public_api.d.ts +1 -0
  6. package/animate/animate.d.ts +27 -0
  7. package/animate/index.d.ts +5 -0
  8. package/animate/public_api.d.ts +1 -0
  9. package/api/blockableui.d.ts +3 -0
  10. package/api/confirmaeventtype.d.ts +5 -0
  11. package/api/confirmation.d.ts +24 -0
  12. package/api/confirmationservice.d.ts +13 -0
  13. package/api/contextmenuservice.d.ts +10 -0
  14. package/api/filtermatchmode.d.ts +22 -0
  15. package/api/filtermetadata.d.ts +5 -0
  16. package/api/filteroperator.d.ts +4 -0
  17. package/api/filterservice.d.ts +29 -0
  18. package/api/index.d.ts +5 -0
  19. package/api/lazyloadevent.d.ts +15 -0
  20. package/api/megamenuitem.d.ts +36 -0
  21. package/api/menuitem.d.ts +55 -0
  22. package/api/message.d.ts +15 -0
  23. package/api/messageservice.d.ts +13 -0
  24. package/api/overlayoptions.d.ts +50 -0
  25. package/api/overlayservice.d.ts +9 -0
  26. package/api/parallel-ui-angular-config.d.ts +20 -0
  27. package/api/parallel-ui-icons.d.ts +260 -0
  28. package/api/public_api.d.ts +29 -0
  29. package/api/selectitem.d.ts +8 -0
  30. package/api/selectitemgroup.d.ts +6 -0
  31. package/api/shared.d.ts +25 -0
  32. package/api/sortevent.d.ts +8 -0
  33. package/api/sortmeta.d.ts +4 -0
  34. package/api/tablestate.d.ts +20 -0
  35. package/api/translation.d.ts +47 -0
  36. package/api/translationkeys.d.ts +42 -0
  37. package/api/treedragdropservice.d.ts +12 -0
  38. package/api/treenode.d.ts +19 -0
  39. package/api/treenodedragevent.d.ts +8 -0
  40. package/autocomplete/autocomplete.d.ts +183 -0
  41. package/autocomplete/index.d.ts +5 -0
  42. package/autocomplete/public_api.d.ts +1 -0
  43. package/autofocus/autofocus.d.ts +17 -0
  44. package/autofocus/index.d.ts +5 -0
  45. package/autofocus/public_api.d.ts +1 -0
  46. package/avatar/avatar.d.ts +28 -0
  47. package/avatar/index.d.ts +5 -0
  48. package/avatar/public_api.d.ts +1 -0
  49. package/avatargroup/avatargroup.d.ts +13 -0
  50. package/avatargroup/index.d.ts +5 -0
  51. package/avatargroup/public_api.d.ts +1 -0
  52. package/badge/badge.d.ts +56 -0
  53. package/badge/index.d.ts +5 -0
  54. package/badge/public_api.d.ts +1 -0
  55. package/baseicon/baseicon.d.ts +14 -0
  56. package/baseicon/index.d.ts +5 -0
  57. package/baseicon/public_api.d.ts +1 -0
  58. package/blockui/blockui.d.ts +37 -0
  59. package/blockui/index.d.ts +5 -0
  60. package/blockui/public_api.d.ts +1 -0
  61. package/breadcrumb/breadcrumb.d.ts +29 -0
  62. package/breadcrumb/index.d.ts +5 -0
  63. package/breadcrumb/public_api.d.ts +1 -0
  64. package/button/button.d.ts +87 -0
  65. package/button/index.d.ts +5 -0
  66. package/button/public_api.d.ts +1 -0
  67. package/calendar/calendar.d.ts +353 -0
  68. package/calendar/index.d.ts +5 -0
  69. package/calendar/public_api.d.ts +1 -0
  70. package/card/card.d.ts +30 -0
  71. package/card/index.d.ts +5 -0
  72. package/card/public_api.d.ts +1 -0
  73. package/carousel/carousel.d.ts +112 -0
  74. package/carousel/index.d.ts +5 -0
  75. package/carousel/public_api.d.ts +1 -0
  76. package/cascadeselect/cascadeselect.d.ts +156 -0
  77. package/cascadeselect/index.d.ts +5 -0
  78. package/cascadeselect/public_api.d.ts +1 -0
  79. package/chart/chart.d.ts +39 -0
  80. package/chart/index.d.ts +5 -0
  81. package/chart/public_api.d.ts +1 -0
  82. package/checkbox/checkbox.d.ts +56 -0
  83. package/checkbox/index.d.ts +5 -0
  84. package/checkbox/public_api.d.ts +1 -0
  85. package/chip/chip.d.ts +33 -0
  86. package/chip/index.d.ts +5 -0
  87. package/chip/public_api.d.ts +1 -0
  88. package/chips/chips.d.ts +73 -0
  89. package/chips/index.d.ts +5 -0
  90. package/chips/public_api.d.ts +1 -0
  91. package/colorpicker/colorpicker.d.ts +141 -0
  92. package/colorpicker/index.d.ts +5 -0
  93. package/colorpicker/public_api.d.ts +1 -0
  94. package/confirmdialog/confirmdialog.d.ts +116 -0
  95. package/confirmdialog/index.d.ts +5 -0
  96. package/confirmdialog/public_api.d.ts +1 -0
  97. package/confirmpopup/confirmpopup.d.ts +71 -0
  98. package/confirmpopup/index.d.ts +5 -0
  99. package/confirmpopup/public_api.d.ts +1 -0
  100. package/contextmenu/contextmenu.d.ts +92 -0
  101. package/contextmenu/index.d.ts +5 -0
  102. package/contextmenu/public_api.d.ts +1 -0
  103. package/dataview/dataview.d.ts +104 -0
  104. package/dataview/index.d.ts +5 -0
  105. package/dataview/public_api.d.ts +1 -0
  106. package/defer/defer.d.ts +29 -0
  107. package/defer/index.d.ts +5 -0
  108. package/defer/public_api.d.ts +1 -0
  109. package/dialog/dialog.d.ts +155 -0
  110. package/dialog/index.d.ts +5 -0
  111. package/dialog/public_api.d.ts +1 -0
  112. package/divider/divider.d.ts +29 -0
  113. package/divider/index.d.ts +5 -0
  114. package/divider/public_api.d.ts +1 -0
  115. package/dock/dock.d.ts +43 -0
  116. package/dock/index.d.ts +5 -0
  117. package/dock/public_api.d.ts +1 -0
  118. package/dom/connectedoverlayscrollhandler.d.ts +9 -0
  119. package/dom/domhandler.d.ts +82 -0
  120. package/dom/index.d.ts +5 -0
  121. package/dom/public_api.d.ts +2 -0
  122. package/dragdrop/dragdrop.d.ts +65 -0
  123. package/dragdrop/index.d.ts +5 -0
  124. package/dragdrop/public_api.d.ts +1 -0
  125. package/dropdown/dropdown.d.ts +225 -0
  126. package/dropdown/index.d.ts +5 -0
  127. package/dropdown/public_api.d.ts +1 -0
  128. package/dynamicdialog/dialogservice.d.ts +18 -0
  129. package/dynamicdialog/dynamicdialog-config.d.ts +29 -0
  130. package/dynamicdialog/dynamicdialog-injector.d.ts +8 -0
  131. package/dynamicdialog/dynamicdialog-ref.d.ts +25 -0
  132. package/dynamicdialog/dynamicdialog.d.ts +101 -0
  133. package/dynamicdialog/dynamicdialogcontent.d.ts +8 -0
  134. package/dynamicdialog/index.d.ts +5 -0
  135. package/dynamicdialog/public_api.d.ts +6 -0
  136. package/editor/editor.d.ts +50 -0
  137. package/editor/index.d.ts +5 -0
  138. package/editor/public_api.d.ts +1 -0
  139. package/esm2020/accordion/accordion.mjs +396 -0
  140. package/esm2020/accordion/public_api.mjs +2 -0
  141. package/esm2020/accordion/qius.solutions-parallel-ui-angular-accordion.mjs +5 -0
  142. package/esm2020/animate/animate.mjs +79 -0
  143. package/esm2020/animate/public_api.mjs +2 -0
  144. package/esm2020/animate/qius.solutions-parallel-ui-angular-animate.mjs +5 -0
  145. package/esm2020/api/blockableui.mjs +2 -0
  146. package/esm2020/api/confirmaeventtype.mjs +7 -0
  147. package/esm2020/api/confirmation.mjs +2 -0
  148. package/esm2020/api/confirmationservice.mjs +28 -0
  149. package/esm2020/api/contextmenuservice.mjs +23 -0
  150. package/esm2020/api/filtermatchmode.mjs +23 -0
  151. package/esm2020/api/filtermetadata.mjs +2 -0
  152. package/esm2020/api/filteroperator.mjs +5 -0
  153. package/esm2020/api/filterservice.mjs +221 -0
  154. package/esm2020/api/lazyloadevent.mjs +2 -0
  155. package/esm2020/api/megamenuitem.mjs +2 -0
  156. package/esm2020/api/menuitem.mjs +2 -0
  157. package/esm2020/api/message.mjs +2 -0
  158. package/esm2020/api/messageservice.mjs +30 -0
  159. package/esm2020/api/overlayoptions.mjs +2 -0
  160. package/esm2020/api/overlayservice.mjs +21 -0
  161. package/esm2020/api/parallel-ui-angular-config.mjs +84 -0
  162. package/esm2020/api/parallel-ui-icons.mjs +261 -0
  163. package/esm2020/api/public_api.mjs +30 -0
  164. package/esm2020/api/qius.solutions-parallel-ui-angular-api.mjs +5 -0
  165. package/esm2020/api/selectitem.mjs +2 -0
  166. package/esm2020/api/selectitemgroup.mjs +2 -0
  167. package/esm2020/api/shared.mjs +62 -0
  168. package/esm2020/api/sortevent.mjs +2 -0
  169. package/esm2020/api/sortmeta.mjs +2 -0
  170. package/esm2020/api/tablestate.mjs +2 -0
  171. package/esm2020/api/translation.mjs +2 -0
  172. package/esm2020/api/translationkeys.mjs +43 -0
  173. package/esm2020/api/treedragdropservice.mjs +23 -0
  174. package/esm2020/api/treenode.mjs +2 -0
  175. package/esm2020/api/treenodedragevent.mjs +2 -0
  176. package/esm2020/autocomplete/autocomplete.mjs +1144 -0
  177. package/esm2020/autocomplete/public_api.mjs +2 -0
  178. package/esm2020/autocomplete/qius.solutions-parallel-ui-angular-autocomplete.mjs +5 -0
  179. package/esm2020/autofocus/autofocus.mjs +51 -0
  180. package/esm2020/autofocus/public_api.mjs +2 -0
  181. package/esm2020/autofocus/qius.solutions-parallel-ui-angular-autofocus.mjs +5 -0
  182. package/esm2020/avatar/avatar.mjs +75 -0
  183. package/esm2020/avatar/public_api.mjs +2 -0
  184. package/esm2020/avatar/qius.solutions-parallel-ui-angular-avatar.mjs +5 -0
  185. package/esm2020/avatargroup/avatargroup.mjs +40 -0
  186. package/esm2020/avatargroup/public_api.mjs +2 -0
  187. package/esm2020/avatargroup/qius.solutions-parallel-ui-angular-avatargroup.mjs +5 -0
  188. package/esm2020/badge/badge.mjs +182 -0
  189. package/esm2020/badge/public_api.mjs +2 -0
  190. package/esm2020/badge/qius.solutions-parallel-ui-angular-badge.mjs +5 -0
  191. package/esm2020/baseicon/baseicon.mjs +41 -0
  192. package/esm2020/baseicon/public_api.mjs +2 -0
  193. package/esm2020/baseicon/qius.solutions-parallel-ui-angular-baseicon.mjs +5 -0
  194. package/esm2020/blockui/blockui.mjs +140 -0
  195. package/esm2020/blockui/public_api.mjs +2 -0
  196. package/esm2020/blockui/qius.solutions-parallel-ui-angular-blockui.mjs +5 -0
  197. package/esm2020/breadcrumb/breadcrumb.mjs +296 -0
  198. package/esm2020/breadcrumb/public_api.mjs +2 -0
  199. package/esm2020/breadcrumb/qius.solutions-parallel-ui-angular-breadcrumb.mjs +5 -0
  200. package/esm2020/button/button.mjs +362 -0
  201. package/esm2020/button/public_api.mjs +2 -0
  202. package/esm2020/button/qius.solutions-parallel-ui-angular-button.mjs +5 -0
  203. package/esm2020/calendar/calendar.mjs +3123 -0
  204. package/esm2020/calendar/public_api.mjs +2 -0
  205. package/esm2020/calendar/qius.solutions-parallel-ui-angular-calendar.mjs +5 -0
  206. package/esm2020/card/card.mjs +126 -0
  207. package/esm2020/card/public_api.mjs +2 -0
  208. package/esm2020/card/qius.solutions-parallel-ui-angular-card.mjs +5 -0
  209. package/esm2020/carousel/carousel.mjs +696 -0
  210. package/esm2020/carousel/public_api.mjs +2 -0
  211. package/esm2020/carousel/qius.solutions-parallel-ui-angular-carousel.mjs +5 -0
  212. package/esm2020/cascadeselect/cascadeselect.mjs +766 -0
  213. package/esm2020/cascadeselect/public_api.mjs +2 -0
  214. package/esm2020/cascadeselect/qius.solutions-parallel-ui-angular-cascadeselect.mjs +5 -0
  215. package/esm2020/chart/chart.mjs +142 -0
  216. package/esm2020/chart/public_api.mjs +2 -0
  217. package/esm2020/chart/qius.solutions-parallel-ui-angular-chart.mjs +5 -0
  218. package/esm2020/checkbox/checkbox.mjs +247 -0
  219. package/esm2020/checkbox/public_api.mjs +2 -0
  220. package/esm2020/checkbox/qius.solutions-parallel-ui-angular-checkbox.mjs +5 -0
  221. package/esm2020/chip/chip.mjs +113 -0
  222. package/esm2020/chip/public_api.mjs +2 -0
  223. package/esm2020/chip/qius.solutions-parallel-ui-angular-chip.mjs +5 -0
  224. package/esm2020/chips/chips.mjs +375 -0
  225. package/esm2020/chips/public_api.mjs +2 -0
  226. package/esm2020/chips/qius.solutions-parallel-ui-angular-chips.mjs +5 -0
  227. package/esm2020/colorpicker/colorpicker.mjs +685 -0
  228. package/esm2020/colorpicker/public_api.mjs +2 -0
  229. package/esm2020/colorpicker/qius.solutions-parallel-ui-angular-colorpicker.mjs +5 -0
  230. package/esm2020/confirmdialog/confirmdialog.mjs +606 -0
  231. package/esm2020/confirmdialog/public_api.mjs +2 -0
  232. package/esm2020/confirmdialog/qius.solutions-parallel-ui-angular-confirmdialog.mjs +5 -0
  233. package/esm2020/confirmpopup/confirmpopup.mjs +394 -0
  234. package/esm2020/confirmpopup/public_api.mjs +2 -0
  235. package/esm2020/confirmpopup/qius.solutions-parallel-ui-angular-confirmpopup.mjs +5 -0
  236. package/esm2020/contextmenu/contextmenu.mjs +691 -0
  237. package/esm2020/contextmenu/public_api.mjs +2 -0
  238. package/esm2020/contextmenu/qius.solutions-parallel-ui-angular-contextmenu.mjs +5 -0
  239. package/esm2020/dataview/dataview.mjs +512 -0
  240. package/esm2020/dataview/public_api.mjs +2 -0
  241. package/esm2020/dataview/qius.solutions-parallel-ui-angular-dataview.mjs +5 -0
  242. package/esm2020/defer/defer.mjs +92 -0
  243. package/esm2020/defer/public_api.mjs +2 -0
  244. package/esm2020/defer/qius.solutions-parallel-ui-angular-defer.mjs +5 -0
  245. package/esm2020/dialog/dialog.mjs +833 -0
  246. package/esm2020/dialog/public_api.mjs +2 -0
  247. package/esm2020/dialog/qius.solutions-parallel-ui-angular-dialog.mjs +5 -0
  248. package/esm2020/divider/divider.mjs +69 -0
  249. package/esm2020/divider/public_api.mjs +2 -0
  250. package/esm2020/divider/qius.solutions-parallel-ui-angular-divider.mjs +5 -0
  251. package/esm2020/dock/dock.mjs +210 -0
  252. package/esm2020/dock/public_api.mjs +2 -0
  253. package/esm2020/dock/qius.solutions-parallel-ui-angular-dock.mjs +5 -0
  254. package/esm2020/dom/connectedoverlayscrollhandler.mjs +27 -0
  255. package/esm2020/dom/domhandler.mjs +600 -0
  256. package/esm2020/dom/public_api.mjs +3 -0
  257. package/esm2020/dom/qius.solutions-parallel-ui-angular-dom.mjs +5 -0
  258. package/esm2020/dragdrop/dragdrop.mjs +251 -0
  259. package/esm2020/dragdrop/public_api.mjs +2 -0
  260. package/esm2020/dragdrop/qius.solutions-parallel-ui-angular-dragdrop.mjs +5 -0
  261. package/esm2020/dropdown/dropdown.mjs +1372 -0
  262. package/esm2020/dropdown/public_api.mjs +2 -0
  263. package/esm2020/dropdown/qius.solutions-parallel-ui-angular-dropdown.mjs +5 -0
  264. package/esm2020/dynamicdialog/dialogservice.mjs +60 -0
  265. package/esm2020/dynamicdialog/dynamicdialog-config.mjs +3 -0
  266. package/esm2020/dynamicdialog/dynamicdialog-injector.mjs +13 -0
  267. package/esm2020/dynamicdialog/dynamicdialog-ref.mjs +41 -0
  268. package/esm2020/dynamicdialog/dynamicdialog.mjs +562 -0
  269. package/esm2020/dynamicdialog/dynamicdialogcontent.mjs +19 -0
  270. package/esm2020/dynamicdialog/public_api.mjs +7 -0
  271. package/esm2020/dynamicdialog/qius.solutions-parallel-ui-angular-dynamicdialog.mjs +5 -0
  272. package/esm2020/editor/editor.mjs +309 -0
  273. package/esm2020/editor/public_api.mjs +2 -0
  274. package/esm2020/editor/qius.solutions-parallel-ui-angular-editor.mjs +5 -0
  275. package/esm2020/fieldset/fieldset.mjs +214 -0
  276. package/esm2020/fieldset/public_api.mjs +2 -0
  277. package/esm2020/fieldset/qius.solutions-parallel-ui-angular-fieldset.mjs +5 -0
  278. package/esm2020/fileupload/fileupload.mjs +754 -0
  279. package/esm2020/fileupload/public_api.mjs +2 -0
  280. package/esm2020/fileupload/qius.solutions-parallel-ui-angular-fileupload.mjs +5 -0
  281. package/esm2020/focustrap/focustrap.mjs +52 -0
  282. package/esm2020/focustrap/public_api.mjs +2 -0
  283. package/esm2020/focustrap/qius.solutions-parallel-ui-angular-focustrap.mjs +5 -0
  284. package/esm2020/galleria/galleria.mjs +1187 -0
  285. package/esm2020/galleria/public_api.mjs +2 -0
  286. package/esm2020/galleria/qius.solutions-parallel-ui-angular-galleria.mjs +5 -0
  287. package/esm2020/icons/angledoubledown/angledoubledown.mjs +35 -0
  288. package/esm2020/icons/angledoubledown/public_api.mjs +2 -0
  289. package/esm2020/icons/angledoubledown/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs +5 -0
  290. package/esm2020/icons/angledoubleleft/angledoubleleft.mjs +35 -0
  291. package/esm2020/icons/angledoubleleft/public_api.mjs +2 -0
  292. package/esm2020/icons/angledoubleleft/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs +5 -0
  293. package/esm2020/icons/angledoubleright/angledoubleright.mjs +35 -0
  294. package/esm2020/icons/angledoubleright/public_api.mjs +2 -0
  295. package/esm2020/icons/angledoubleright/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs +5 -0
  296. package/esm2020/icons/angledoubleup/angledoubleup.mjs +35 -0
  297. package/esm2020/icons/angledoubleup/public_api.mjs +2 -0
  298. package/esm2020/icons/angledoubleup/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs +5 -0
  299. package/esm2020/icons/angledown/angledown.mjs +31 -0
  300. package/esm2020/icons/angledown/public_api.mjs +2 -0
  301. package/esm2020/icons/angledown/qius.solutions-parallel-ui-angular-icons-angledown.mjs +5 -0
  302. package/esm2020/icons/angleleft/angleleft.mjs +31 -0
  303. package/esm2020/icons/angleleft/public_api.mjs +2 -0
  304. package/esm2020/icons/angleleft/qius.solutions-parallel-ui-angular-icons-angleleft.mjs +5 -0
  305. package/esm2020/icons/angleright/angleright.mjs +31 -0
  306. package/esm2020/icons/angleright/public_api.mjs +2 -0
  307. package/esm2020/icons/angleright/qius.solutions-parallel-ui-angular-icons-angleright.mjs +5 -0
  308. package/esm2020/icons/angleup/angleup.mjs +31 -0
  309. package/esm2020/icons/angleup/public_api.mjs +2 -0
  310. package/esm2020/icons/angleup/qius.solutions-parallel-ui-angular-icons-angleup.mjs +5 -0
  311. package/esm2020/icons/arrowdown/arrowdown.mjs +49 -0
  312. package/esm2020/icons/arrowdown/public_api.mjs +2 -0
  313. package/esm2020/icons/arrowdown/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs +5 -0
  314. package/esm2020/icons/arrowdownleft/arrowdownleft.mjs +31 -0
  315. package/esm2020/icons/arrowdownleft/public_api.mjs +2 -0
  316. package/esm2020/icons/arrowdownleft/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs +5 -0
  317. package/esm2020/icons/arrowdownright/arrowdownright.mjs +31 -0
  318. package/esm2020/icons/arrowdownright/public_api.mjs +2 -0
  319. package/esm2020/icons/arrowdownright/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs +5 -0
  320. package/esm2020/icons/arrowleft/arrowleft.mjs +49 -0
  321. package/esm2020/icons/arrowleft/public_api.mjs +2 -0
  322. package/esm2020/icons/arrowleft/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs +5 -0
  323. package/esm2020/icons/arrowright/arrowright.mjs +35 -0
  324. package/esm2020/icons/arrowright/public_api.mjs +2 -0
  325. package/esm2020/icons/arrowright/qius.solutions-parallel-ui-angular-icons-arrowright.mjs +5 -0
  326. package/esm2020/icons/arrowup/arrowup.mjs +49 -0
  327. package/esm2020/icons/arrowup/public_api.mjs +2 -0
  328. package/esm2020/icons/arrowup/qius.solutions-parallel-ui-angular-icons-arrowup.mjs +5 -0
  329. package/esm2020/icons/ban/ban.mjs +45 -0
  330. package/esm2020/icons/ban/public_api.mjs +2 -0
  331. package/esm2020/icons/ban/qius.solutions-parallel-ui-angular-icons-ban.mjs +5 -0
  332. package/esm2020/icons/bars/bars.mjs +35 -0
  333. package/esm2020/icons/bars/public_api.mjs +2 -0
  334. package/esm2020/icons/bars/qius.solutions-parallel-ui-angular-icons-bars.mjs +5 -0
  335. package/esm2020/icons/calendar/calendar.mjs +31 -0
  336. package/esm2020/icons/calendar/public_api.mjs +2 -0
  337. package/esm2020/icons/calendar/qius.solutions-parallel-ui-angular-icons-calendar.mjs +5 -0
  338. package/esm2020/icons/caretleft/caretleft.mjs +31 -0
  339. package/esm2020/icons/caretleft/public_api.mjs +2 -0
  340. package/esm2020/icons/caretleft/qius.solutions-parallel-ui-angular-icons-caretleft.mjs +5 -0
  341. package/esm2020/icons/caretright/caretright.mjs +31 -0
  342. package/esm2020/icons/caretright/public_api.mjs +2 -0
  343. package/esm2020/icons/caretright/qius.solutions-parallel-ui-angular-icons-caretright.mjs +5 -0
  344. package/esm2020/icons/check/check.mjs +31 -0
  345. package/esm2020/icons/check/public_api.mjs +2 -0
  346. package/esm2020/icons/check/qius.solutions-parallel-ui-angular-icons-check.mjs +5 -0
  347. package/esm2020/icons/chevrondown/chevrondown.mjs +31 -0
  348. package/esm2020/icons/chevrondown/public_api.mjs +2 -0
  349. package/esm2020/icons/chevrondown/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs +5 -0
  350. package/esm2020/icons/chevronleft/chevronleft.mjs +31 -0
  351. package/esm2020/icons/chevronleft/public_api.mjs +2 -0
  352. package/esm2020/icons/chevronleft/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs +5 -0
  353. package/esm2020/icons/chevronright/chevronright.mjs +31 -0
  354. package/esm2020/icons/chevronright/public_api.mjs +2 -0
  355. package/esm2020/icons/chevronright/qius.solutions-parallel-ui-angular-icons-chevronright.mjs +5 -0
  356. package/esm2020/icons/chevronup/chevronup.mjs +31 -0
  357. package/esm2020/icons/chevronup/public_api.mjs +2 -0
  358. package/esm2020/icons/chevronup/qius.solutions-parallel-ui-angular-icons-chevronup.mjs +5 -0
  359. package/esm2020/icons/exclamationtriangle/exclamationtriangle.mjs +61 -0
  360. package/esm2020/icons/exclamationtriangle/public_api.mjs +2 -0
  361. package/esm2020/icons/exclamationtriangle/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs +5 -0
  362. package/esm2020/icons/eye/eye.mjs +35 -0
  363. package/esm2020/icons/eye/public_api.mjs +2 -0
  364. package/esm2020/icons/eye/qius.solutions-parallel-ui-angular-icons-eye.mjs +5 -0
  365. package/esm2020/icons/eyeslash/eyeslash.mjs +49 -0
  366. package/esm2020/icons/eyeslash/public_api.mjs +2 -0
  367. package/esm2020/icons/eyeslash/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs +5 -0
  368. package/esm2020/icons/filter/filter.mjs +45 -0
  369. package/esm2020/icons/filter/public_api.mjs +2 -0
  370. package/esm2020/icons/filter/qius.solutions-parallel-ui-angular-icons-filter.mjs +5 -0
  371. package/esm2020/icons/filterslash/filterslash.mjs +49 -0
  372. package/esm2020/icons/filterslash/public_api.mjs +2 -0
  373. package/esm2020/icons/filterslash/qius.solutions-parallel-ui-angular-icons-filterslash.mjs +5 -0
  374. package/esm2020/icons/home/home.mjs +49 -0
  375. package/esm2020/icons/home/public_api.mjs +2 -0
  376. package/esm2020/icons/home/qius.solutions-parallel-ui-angular-icons-home.mjs +5 -0
  377. package/esm2020/icons/infocircle/infocircle.mjs +49 -0
  378. package/esm2020/icons/infocircle/public_api.mjs +2 -0
  379. package/esm2020/icons/infocircle/qius.solutions-parallel-ui-angular-icons-infocircle.mjs +5 -0
  380. package/esm2020/icons/minus/minus.mjs +32 -0
  381. package/esm2020/icons/minus/public_api.mjs +2 -0
  382. package/esm2020/icons/minus/qius.solutions-parallel-ui-angular-icons-minus.mjs +5 -0
  383. package/esm2020/icons/pencil/pencil.mjs +45 -0
  384. package/esm2020/icons/pencil/public_api.mjs +2 -0
  385. package/esm2020/icons/pencil/qius.solutions-parallel-ui-angular-icons-pencil.mjs +5 -0
  386. package/esm2020/icons/plus/plus.mjs +45 -0
  387. package/esm2020/icons/plus/public_api.mjs +2 -0
  388. package/esm2020/icons/plus/qius.solutions-parallel-ui-angular-icons-plus.mjs +5 -0
  389. package/esm2020/icons/refresh/public_api.mjs +2 -0
  390. package/esm2020/icons/refresh/qius.solutions-parallel-ui-angular-icons-refresh.mjs +5 -0
  391. package/esm2020/icons/refresh/refresh.mjs +49 -0
  392. package/esm2020/icons/search/public_api.mjs +2 -0
  393. package/esm2020/icons/search/qius.solutions-parallel-ui-angular-icons-search.mjs +5 -0
  394. package/esm2020/icons/search/search.mjs +49 -0
  395. package/esm2020/icons/searchminus/public_api.mjs +2 -0
  396. package/esm2020/icons/searchminus/qius.solutions-parallel-ui-angular-icons-searchminus.mjs +5 -0
  397. package/esm2020/icons/searchminus/searchminus.mjs +49 -0
  398. package/esm2020/icons/searchplus/public_api.mjs +2 -0
  399. package/esm2020/icons/searchplus/qius.solutions-parallel-ui-angular-icons-searchplus.mjs +5 -0
  400. package/esm2020/icons/searchplus/searchplus.mjs +49 -0
  401. package/esm2020/icons/sortalt/public_api.mjs +2 -0
  402. package/esm2020/icons/sortalt/qius.solutions-parallel-ui-angular-icons-sortalt.mjs +5 -0
  403. package/esm2020/icons/sortalt/sortalt.mjs +57 -0
  404. package/esm2020/icons/sortamountdown/public_api.mjs +2 -0
  405. package/esm2020/icons/sortamountdown/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs +5 -0
  406. package/esm2020/icons/sortamountdown/sortamountdown.mjs +85 -0
  407. package/esm2020/icons/sortamountupalt/public_api.mjs +2 -0
  408. package/esm2020/icons/sortamountupalt/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs +5 -0
  409. package/esm2020/icons/sortamountupalt/sortamountupalt.mjs +85 -0
  410. package/esm2020/icons/spinner/public_api.mjs +2 -0
  411. package/esm2020/icons/spinner/qius.solutions-parallel-ui-angular-icons-spinner.mjs +5 -0
  412. package/esm2020/icons/spinner/spinner.mjs +45 -0
  413. package/esm2020/icons/star/public_api.mjs +2 -0
  414. package/esm2020/icons/star/qius.solutions-parallel-ui-angular-icons-star.mjs +5 -0
  415. package/esm2020/icons/star/star.mjs +45 -0
  416. package/esm2020/icons/starfill/public_api.mjs +2 -0
  417. package/esm2020/icons/starfill/qius.solutions-parallel-ui-angular-icons-starfill.mjs +5 -0
  418. package/esm2020/icons/starfill/starfill.mjs +45 -0
  419. package/esm2020/icons/thlarge/public_api.mjs +2 -0
  420. package/esm2020/icons/thlarge/qius.solutions-parallel-ui-angular-icons-thlarge.mjs +5 -0
  421. package/esm2020/icons/thlarge/thlarge.mjs +49 -0
  422. package/esm2020/icons/times/public_api.mjs +2 -0
  423. package/esm2020/icons/times/qius.solutions-parallel-ui-angular-icons-times.mjs +5 -0
  424. package/esm2020/icons/times/times.mjs +31 -0
  425. package/esm2020/icons/timescircle/public_api.mjs +2 -0
  426. package/esm2020/icons/timescircle/qius.solutions-parallel-ui-angular-icons-timescircle.mjs +5 -0
  427. package/esm2020/icons/timescircle/timescircle.mjs +49 -0
  428. package/esm2020/icons/trash/public_api.mjs +2 -0
  429. package/esm2020/icons/trash/qius.solutions-parallel-ui-angular-icons-trash.mjs +5 -0
  430. package/esm2020/icons/trash/trash.mjs +49 -0
  431. package/esm2020/icons/undo/public_api.mjs +2 -0
  432. package/esm2020/icons/undo/qius.solutions-parallel-ui-angular-icons-undo.mjs +5 -0
  433. package/esm2020/icons/undo/undo.mjs +49 -0
  434. package/esm2020/icons/upload/public_api.mjs +2 -0
  435. package/esm2020/icons/upload/qius.solutions-parallel-ui-angular-icons-upload.mjs +5 -0
  436. package/esm2020/icons/upload/upload.mjs +49 -0
  437. package/esm2020/icons/windowmaximize/public_api.mjs +2 -0
  438. package/esm2020/icons/windowmaximize/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs +5 -0
  439. package/esm2020/icons/windowmaximize/windowmaximize.mjs +49 -0
  440. package/esm2020/icons/windowminimize/public_api.mjs +2 -0
  441. package/esm2020/icons/windowminimize/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs +5 -0
  442. package/esm2020/icons/windowminimize/windowminimize.mjs +49 -0
  443. package/esm2020/image/image.mjs +321 -0
  444. package/esm2020/image/public_api.mjs +2 -0
  445. package/esm2020/image/qius.solutions-parallel-ui-angular-image.mjs +5 -0
  446. package/esm2020/inplace/inplace.mjs +168 -0
  447. package/esm2020/inplace/public_api.mjs +2 -0
  448. package/esm2020/inplace/qius.solutions-parallel-ui-angular-inplace.mjs +5 -0
  449. package/esm2020/inputmask/inputmask.mjs +697 -0
  450. package/esm2020/inputmask/public_api.mjs +2 -0
  451. package/esm2020/inputmask/qius.solutions-parallel-ui-angular-inputmask.mjs +5 -0
  452. package/esm2020/inputnumber/inputnumber.mjs +1189 -0
  453. package/esm2020/inputnumber/public_api.mjs +2 -0
  454. package/esm2020/inputnumber/qius.solutions-parallel-ui-angular-inputnumber.mjs +5 -0
  455. package/esm2020/inputswitch/inputswitch.mjs +160 -0
  456. package/esm2020/inputswitch/public_api.mjs +2 -0
  457. package/esm2020/inputswitch/qius.solutions-parallel-ui-angular-inputswitch.mjs +5 -0
  458. package/esm2020/inputtext/inputtext.mjs +55 -0
  459. package/esm2020/inputtext/public_api.mjs +2 -0
  460. package/esm2020/inputtext/qius.solutions-parallel-ui-angular-inputtext.mjs +5 -0
  461. package/esm2020/inputtextarea/inputtextarea.mjs +117 -0
  462. package/esm2020/inputtextarea/public_api.mjs +2 -0
  463. package/esm2020/inputtextarea/qius.solutions-parallel-ui-angular-inputtextarea.mjs +5 -0
  464. package/esm2020/keyfilter/keyfilter.mjs +214 -0
  465. package/esm2020/keyfilter/public_api.mjs +2 -0
  466. package/esm2020/keyfilter/qius.solutions-parallel-ui-angular-keyfilter.mjs +5 -0
  467. package/esm2020/knob/knob.mjs +283 -0
  468. package/esm2020/knob/public_api.mjs +2 -0
  469. package/esm2020/knob/qius.solutions-parallel-ui-angular-knob.mjs +5 -0
  470. package/esm2020/listbox/listbox.mjs +800 -0
  471. package/esm2020/listbox/public_api.mjs +2 -0
  472. package/esm2020/listbox/qius.solutions-parallel-ui-angular-listbox.mjs +5 -0
  473. package/esm2020/megamenu/megamenu.mjs +464 -0
  474. package/esm2020/megamenu/public_api.mjs +2 -0
  475. package/esm2020/megamenu/qius.solutions-parallel-ui-angular-megamenu.mjs +5 -0
  476. package/esm2020/menu/menu.mjs +548 -0
  477. package/esm2020/menu/public_api.mjs +2 -0
  478. package/esm2020/menu/qius.solutions-parallel-ui-angular-menu.mjs +5 -0
  479. package/esm2020/menubar/menubar.mjs +515 -0
  480. package/esm2020/menubar/public_api.mjs +2 -0
  481. package/esm2020/menubar/qius.solutions-parallel-ui-angular-menubar.mjs +5 -0
  482. package/esm2020/message/message.mjs +103 -0
  483. package/esm2020/message/public_api.mjs +2 -0
  484. package/esm2020/message/qius.solutions-parallel-ui-angular-message.mjs +5 -0
  485. package/esm2020/messages/messages.mjs +272 -0
  486. package/esm2020/messages/public_api.mjs +2 -0
  487. package/esm2020/messages/qius.solutions-parallel-ui-angular-messages.mjs +5 -0
  488. package/esm2020/multiselect/multiselect.mjs +1411 -0
  489. package/esm2020/multiselect/public_api.mjs +2 -0
  490. package/esm2020/multiselect/qius.solutions-parallel-ui-angular-multiselect.mjs +5 -0
  491. package/esm2020/orderlist/orderlist.mjs +621 -0
  492. package/esm2020/orderlist/public_api.mjs +2 -0
  493. package/esm2020/orderlist/qius.solutions-parallel-ui-angular-orderlist.mjs +5 -0
  494. package/esm2020/organizationchart/organizationchart.mjs +319 -0
  495. package/esm2020/organizationchart/public_api.mjs +2 -0
  496. package/esm2020/organizationchart/qius.solutions-parallel-ui-angular-organizationchart.mjs +5 -0
  497. package/esm2020/overlay/overlay.mjs +520 -0
  498. package/esm2020/overlay/public_api.mjs +2 -0
  499. package/esm2020/overlay/qius.solutions-parallel-ui-angular-overlay.mjs +5 -0
  500. package/esm2020/overlaypanel/overlaypanel.mjs +410 -0
  501. package/esm2020/overlaypanel/public_api.mjs +2 -0
  502. package/esm2020/overlaypanel/qius.solutions-parallel-ui-angular-overlaypanel.mjs +5 -0
  503. package/esm2020/paginator/paginator.mjs +405 -0
  504. package/esm2020/paginator/public_api.mjs +2 -0
  505. package/esm2020/paginator/qius.solutions-parallel-ui-angular-paginator.mjs +5 -0
  506. package/esm2020/panel/panel.mjs +296 -0
  507. package/esm2020/panel/public_api.mjs +2 -0
  508. package/esm2020/panel/qius.solutions-parallel-ui-angular-panel.mjs +5 -0
  509. package/esm2020/panelmenu/panelmenu.mjs +518 -0
  510. package/esm2020/panelmenu/public_api.mjs +2 -0
  511. package/esm2020/panelmenu/qius.solutions-parallel-ui-angular-panelmenu.mjs +5 -0
  512. package/esm2020/password/password.mjs +782 -0
  513. package/esm2020/password/public_api.mjs +2 -0
  514. package/esm2020/password/qius.solutions-parallel-ui-angular-password.mjs +5 -0
  515. package/esm2020/picklist/picklist.mjs +1268 -0
  516. package/esm2020/picklist/public_api.mjs +2 -0
  517. package/esm2020/picklist/qius.solutions-parallel-ui-angular-picklist.mjs +5 -0
  518. package/esm2020/progressbar/progressbar.mjs +81 -0
  519. package/esm2020/progressbar/public_api.mjs +2 -0
  520. package/esm2020/progressbar/qius.solutions-parallel-ui-angular-progressbar.mjs +5 -0
  521. package/esm2020/progressspinner/progressspinner.mjs +55 -0
  522. package/esm2020/progressspinner/public_api.mjs +2 -0
  523. package/esm2020/progressspinner/qius.solutions-parallel-ui-angular-progressspinner.mjs +5 -0
  524. package/esm2020/public_api.mjs +2 -0
  525. package/esm2020/qius.solutions-parallel-ui-angular.mjs +5 -0
  526. package/esm2020/radiobutton/public_api.mjs +2 -0
  527. package/esm2020/radiobutton/qius.solutions-parallel-ui-angular-radiobutton.mjs +5 -0
  528. package/esm2020/radiobutton/radiobutton.mjs +254 -0
  529. package/esm2020/rating/public_api.mjs +2 -0
  530. package/esm2020/rating/qius.solutions-parallel-ui-angular-rating.mjs +5 -0
  531. package/esm2020/rating/rating.mjs +199 -0
  532. package/esm2020/ripple/public_api.mjs +2 -0
  533. package/esm2020/ripple/qius.solutions-parallel-ui-angular-ripple.mjs +5 -0
  534. package/esm2020/ripple/ripple.mjs +126 -0
  535. package/esm2020/scroller/public_api.mjs +2 -0
  536. package/esm2020/scroller/qius.solutions-parallel-ui-angular-scroller.mjs +5 -0
  537. package/esm2020/scroller/scroller.mjs +928 -0
  538. package/esm2020/scrollpanel/public_api.mjs +2 -0
  539. package/esm2020/scrollpanel/qius.solutions-parallel-ui-angular-scrollpanel.mjs +5 -0
  540. package/esm2020/scrollpanel/scrollpanel.mjs +272 -0
  541. package/esm2020/scrolltop/public_api.mjs +2 -0
  542. package/esm2020/scrolltop/qius.solutions-parallel-ui-angular-scrolltop.mjs +5 -0
  543. package/esm2020/scrolltop/scrolltop.mjs +221 -0
  544. package/esm2020/selectbutton/public_api.mjs +2 -0
  545. package/esm2020/selectbutton/qius.solutions-parallel-ui-angular-selectbutton.mjs +5 -0
  546. package/esm2020/selectbutton/selectbutton.mjs +209 -0
  547. package/esm2020/sidebar/public_api.mjs +2 -0
  548. package/esm2020/sidebar/qius.solutions-parallel-ui-angular-sidebar.mjs +5 -0
  549. package/esm2020/sidebar/sidebar.mjs +369 -0
  550. package/esm2020/skeleton/public_api.mjs +2 -0
  551. package/esm2020/skeleton/qius.solutions-parallel-ui-angular-skeleton.mjs +5 -0
  552. package/esm2020/skeleton/skeleton.mjs +65 -0
  553. package/esm2020/slidemenu/public_api.mjs +2 -0
  554. package/esm2020/slidemenu/qius.solutions-parallel-ui-angular-slidemenu.mjs +5 -0
  555. package/esm2020/slidemenu/slidemenu.mjs +616 -0
  556. package/esm2020/slider/public_api.mjs +2 -0
  557. package/esm2020/slider/qius.solutions-parallel-ui-angular-slider.mjs +5 -0
  558. package/esm2020/slider/slider.mjs +588 -0
  559. package/esm2020/speeddial/public_api.mjs +2 -0
  560. package/esm2020/speeddial/qius.solutions-parallel-ui-angular-speeddial.mjs +5 -0
  561. package/esm2020/speeddial/speeddial.mjs +402 -0
  562. package/esm2020/spinner/public_api.mjs +2 -0
  563. package/esm2020/spinner/qius.solutions-parallel-ui-angular-spinner.mjs +5 -0
  564. package/esm2020/spinner/spinner.mjs +407 -0
  565. package/esm2020/splitbutton/public_api.mjs +2 -0
  566. package/esm2020/splitbutton/qius.solutions-parallel-ui-angular-splitbutton.mjs +5 -0
  567. package/esm2020/splitbutton/splitbutton.mjs +141 -0
  568. package/esm2020/splitter/public_api.mjs +2 -0
  569. package/esm2020/splitter/qius.solutions-parallel-ui-angular-splitter.mjs +5 -0
  570. package/esm2020/splitter/splitter.mjs +355 -0
  571. package/esm2020/steps/public_api.mjs +2 -0
  572. package/esm2020/steps/qius.solutions-parallel-ui-angular-steps.mjs +5 -0
  573. package/esm2020/steps/steps.mjs +205 -0
  574. package/esm2020/styleclass/public_api.mjs +2 -0
  575. package/esm2020/styleclass/qius.solutions-parallel-ui-angular-styleclass.mjs +5 -0
  576. package/esm2020/styleclass/styleclass.mjs +220 -0
  577. package/esm2020/table/public_api.mjs +2 -0
  578. package/esm2020/table/qius.solutions-parallel-ui-angular-table.mjs +5 -0
  579. package/esm2020/table/table.mjs +5314 -0
  580. package/esm2020/tabmenu/public_api.mjs +2 -0
  581. package/esm2020/tabmenu/qius.solutions-parallel-ui-angular-tabmenu.mjs +5 -0
  582. package/esm2020/tabmenu/tabmenu.mjs +374 -0
  583. package/esm2020/tabview/public_api.mjs +2 -0
  584. package/esm2020/tabview/qius.solutions-parallel-ui-angular-tabview.mjs +5 -0
  585. package/esm2020/tabview/tabview.mjs +527 -0
  586. package/esm2020/tag/public_api.mjs +2 -0
  587. package/esm2020/tag/qius.solutions-parallel-ui-angular-tag.mjs +5 -0
  588. package/esm2020/tag/tag.mjs +86 -0
  589. package/esm2020/terminal/public_api.mjs +3 -0
  590. package/esm2020/terminal/qius.solutions-parallel-ui-angular-terminal.mjs +5 -0
  591. package/esm2020/terminal/terminal.mjs +112 -0
  592. package/esm2020/terminal/terminalservice.mjs +27 -0
  593. package/esm2020/tieredmenu/public_api.mjs +2 -0
  594. package/esm2020/tieredmenu/qius.solutions-parallel-ui-angular-tieredmenu.mjs +5 -0
  595. package/esm2020/tieredmenu/tieredmenu.mjs +663 -0
  596. package/esm2020/timeline/public_api.mjs +2 -0
  597. package/esm2020/timeline/qius.solutions-parallel-ui-angular-timeline.mjs +5 -0
  598. package/esm2020/timeline/timeline.mjs +131 -0
  599. package/esm2020/toast/public_api.mjs +2 -0
  600. package/esm2020/toast/qius.solutions-parallel-ui-angular-toast.mjs +5 -0
  601. package/esm2020/toast/toast.mjs +443 -0
  602. package/esm2020/togglebutton/public_api.mjs +2 -0
  603. package/esm2020/togglebutton/qius.solutions-parallel-ui-angular-togglebutton.mjs +5 -0
  604. package/esm2020/togglebutton/togglebutton.mjs +133 -0
  605. package/esm2020/toolbar/public_api.mjs +2 -0
  606. package/esm2020/toolbar/qius.solutions-parallel-ui-angular-toolbar.mjs +5 -0
  607. package/esm2020/toolbar/toolbar.mjs +83 -0
  608. package/esm2020/tooltip/public_api.mjs +2 -0
  609. package/esm2020/tooltip/qius.solutions-parallel-ui-angular-tooltip.mjs +5 -0
  610. package/esm2020/tooltip/tooltip.mjs +546 -0
  611. package/esm2020/tree/public_api.mjs +2 -0
  612. package/esm2020/tree/qius.solutions-parallel-ui-angular-tree.mjs +5 -0
  613. package/esm2020/tree/tree.mjs +1584 -0
  614. package/esm2020/treeselect/public_api.mjs +2 -0
  615. package/esm2020/treeselect/qius.solutions-parallel-ui-angular-treeselect.mjs +5 -0
  616. package/esm2020/treeselect/treeselect.mjs +778 -0
  617. package/esm2020/treetable/public_api.mjs +2 -0
  618. package/esm2020/treetable/qius.solutions-parallel-ui-angular-treetable.mjs +5 -0
  619. package/esm2020/treetable/treetable.mjs +3217 -0
  620. package/esm2020/tristatecheckbox/public_api.mjs +2 -0
  621. package/esm2020/tristatecheckbox/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs +5 -0
  622. package/esm2020/tristatecheckbox/tristatecheckbox.mjs +223 -0
  623. package/esm2020/utils/objectutils.mjs +198 -0
  624. package/esm2020/utils/public_api.mjs +5 -0
  625. package/esm2020/utils/qius.solutions-parallel-ui-angular-utils.mjs +5 -0
  626. package/esm2020/utils/uniquecomponentid.mjs +7 -0
  627. package/esm2020/utils/zindexutils.mjs +35 -0
  628. package/esm2020/virtualscroller/public_api.mjs +2 -0
  629. package/esm2020/virtualscroller/qius.solutions-parallel-ui-angular-virtualscroller.mjs +5 -0
  630. package/esm2020/virtualscroller/virtualscroller.mjs +153 -0
  631. package/fesm2015/qius.solutions-parallel-ui-angular-accordion.mjs +405 -0
  632. package/fesm2015/qius.solutions-parallel-ui-angular-accordion.mjs.map +1 -0
  633. package/fesm2015/qius.solutions-parallel-ui-angular-animate.mjs +86 -0
  634. package/fesm2015/qius.solutions-parallel-ui-angular-animate.mjs.map +1 -0
  635. package/fesm2015/qius.solutions-parallel-ui-angular-api.mjs +817 -0
  636. package/fesm2015/qius.solutions-parallel-ui-angular-api.mjs.map +1 -0
  637. package/fesm2015/qius.solutions-parallel-ui-angular-autocomplete.mjs +1154 -0
  638. package/fesm2015/qius.solutions-parallel-ui-angular-autocomplete.mjs.map +1 -0
  639. package/fesm2015/qius.solutions-parallel-ui-angular-autofocus.mjs +58 -0
  640. package/fesm2015/qius.solutions-parallel-ui-angular-autofocus.mjs.map +1 -0
  641. package/fesm2015/qius.solutions-parallel-ui-angular-avatar.mjs +82 -0
  642. package/fesm2015/qius.solutions-parallel-ui-angular-avatar.mjs.map +1 -0
  643. package/fesm2015/qius.solutions-parallel-ui-angular-avatargroup.mjs +47 -0
  644. package/fesm2015/qius.solutions-parallel-ui-angular-avatargroup.mjs.map +1 -0
  645. package/fesm2015/qius.solutions-parallel-ui-angular-badge.mjs +191 -0
  646. package/fesm2015/qius.solutions-parallel-ui-angular-badge.mjs.map +1 -0
  647. package/fesm2015/qius.solutions-parallel-ui-angular-baseicon.mjs +48 -0
  648. package/fesm2015/qius.solutions-parallel-ui-angular-baseicon.mjs.map +1 -0
  649. package/fesm2015/qius.solutions-parallel-ui-angular-blockui.mjs +149 -0
  650. package/fesm2015/qius.solutions-parallel-ui-angular-blockui.mjs.map +1 -0
  651. package/fesm2015/qius.solutions-parallel-ui-angular-breadcrumb.mjs +303 -0
  652. package/fesm2015/qius.solutions-parallel-ui-angular-breadcrumb.mjs.map +1 -0
  653. package/fesm2015/qius.solutions-parallel-ui-angular-button.mjs +371 -0
  654. package/fesm2015/qius.solutions-parallel-ui-angular-button.mjs.map +1 -0
  655. package/fesm2015/qius.solutions-parallel-ui-angular-calendar.mjs +3133 -0
  656. package/fesm2015/qius.solutions-parallel-ui-angular-calendar.mjs.map +1 -0
  657. package/fesm2015/qius.solutions-parallel-ui-angular-card.mjs +133 -0
  658. package/fesm2015/qius.solutions-parallel-ui-angular-card.mjs.map +1 -0
  659. package/fesm2015/qius.solutions-parallel-ui-angular-carousel.mjs +706 -0
  660. package/fesm2015/qius.solutions-parallel-ui-angular-carousel.mjs.map +1 -0
  661. package/fesm2015/qius.solutions-parallel-ui-angular-cascadeselect.mjs +776 -0
  662. package/fesm2015/qius.solutions-parallel-ui-angular-cascadeselect.mjs.map +1 -0
  663. package/fesm2015/qius.solutions-parallel-ui-angular-chart.mjs +151 -0
  664. package/fesm2015/qius.solutions-parallel-ui-angular-chart.mjs.map +1 -0
  665. package/fesm2015/qius.solutions-parallel-ui-angular-checkbox.mjs +254 -0
  666. package/fesm2015/qius.solutions-parallel-ui-angular-checkbox.mjs.map +1 -0
  667. package/fesm2015/qius.solutions-parallel-ui-angular-chip.mjs +120 -0
  668. package/fesm2015/qius.solutions-parallel-ui-angular-chip.mjs.map +1 -0
  669. package/fesm2015/qius.solutions-parallel-ui-angular-chips.mjs +384 -0
  670. package/fesm2015/qius.solutions-parallel-ui-angular-chips.mjs.map +1 -0
  671. package/fesm2015/qius.solutions-parallel-ui-angular-colorpicker.mjs +694 -0
  672. package/fesm2015/qius.solutions-parallel-ui-angular-colorpicker.mjs.map +1 -0
  673. package/fesm2015/qius.solutions-parallel-ui-angular-confirmdialog.mjs +615 -0
  674. package/fesm2015/qius.solutions-parallel-ui-angular-confirmdialog.mjs.map +1 -0
  675. package/fesm2015/qius.solutions-parallel-ui-angular-confirmpopup.mjs +403 -0
  676. package/fesm2015/qius.solutions-parallel-ui-angular-confirmpopup.mjs.map +1 -0
  677. package/fesm2015/qius.solutions-parallel-ui-angular-contextmenu.mjs +702 -0
  678. package/fesm2015/qius.solutions-parallel-ui-angular-contextmenu.mjs.map +1 -0
  679. package/fesm2015/qius.solutions-parallel-ui-angular-dataview.mjs +519 -0
  680. package/fesm2015/qius.solutions-parallel-ui-angular-dataview.mjs.map +1 -0
  681. package/fesm2015/qius.solutions-parallel-ui-angular-defer.mjs +101 -0
  682. package/fesm2015/qius.solutions-parallel-ui-angular-defer.mjs.map +1 -0
  683. package/fesm2015/qius.solutions-parallel-ui-angular-dialog.mjs +842 -0
  684. package/fesm2015/qius.solutions-parallel-ui-angular-dialog.mjs.map +1 -0
  685. package/fesm2015/qius.solutions-parallel-ui-angular-divider.mjs +76 -0
  686. package/fesm2015/qius.solutions-parallel-ui-angular-divider.mjs.map +1 -0
  687. package/fesm2015/qius.solutions-parallel-ui-angular-dock.mjs +217 -0
  688. package/fesm2015/qius.solutions-parallel-ui-angular-dock.mjs.map +1 -0
  689. package/fesm2015/qius.solutions-parallel-ui-angular-dom.mjs +632 -0
  690. package/fesm2015/qius.solutions-parallel-ui-angular-dom.mjs.map +1 -0
  691. package/fesm2015/qius.solutions-parallel-ui-angular-dragdrop.mjs +258 -0
  692. package/fesm2015/qius.solutions-parallel-ui-angular-dragdrop.mjs.map +1 -0
  693. package/fesm2015/qius.solutions-parallel-ui-angular-dropdown.mjs +1379 -0
  694. package/fesm2015/qius.solutions-parallel-ui-angular-dropdown.mjs.map +1 -0
  695. package/fesm2015/qius.solutions-parallel-ui-angular-dynamicdialog.mjs +698 -0
  696. package/fesm2015/qius.solutions-parallel-ui-angular-dynamicdialog.mjs.map +1 -0
  697. package/fesm2015/qius.solutions-parallel-ui-angular-editor.mjs +317 -0
  698. package/fesm2015/qius.solutions-parallel-ui-angular-editor.mjs.map +1 -0
  699. package/fesm2015/qius.solutions-parallel-ui-angular-fieldset.mjs +221 -0
  700. package/fesm2015/qius.solutions-parallel-ui-angular-fieldset.mjs.map +1 -0
  701. package/fesm2015/qius.solutions-parallel-ui-angular-fileupload.mjs +764 -0
  702. package/fesm2015/qius.solutions-parallel-ui-angular-fileupload.mjs.map +1 -0
  703. package/fesm2015/qius.solutions-parallel-ui-angular-focustrap.mjs +60 -0
  704. package/fesm2015/qius.solutions-parallel-ui-angular-focustrap.mjs.map +1 -0
  705. package/fesm2015/qius.solutions-parallel-ui-angular-galleria.mjs +1199 -0
  706. package/fesm2015/qius.solutions-parallel-ui-angular-galleria.mjs.map +1 -0
  707. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs +42 -0
  708. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs.map +1 -0
  709. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs +42 -0
  710. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs.map +1 -0
  711. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs +42 -0
  712. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs.map +1 -0
  713. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs +42 -0
  714. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs.map +1 -0
  715. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledown.mjs +38 -0
  716. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledown.mjs.map +1 -0
  717. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleleft.mjs +38 -0
  718. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleleft.mjs.map +1 -0
  719. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleright.mjs +38 -0
  720. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleright.mjs.map +1 -0
  721. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleup.mjs +38 -0
  722. package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleup.mjs.map +1 -0
  723. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs +56 -0
  724. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs.map +1 -0
  725. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs +38 -0
  726. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs.map +1 -0
  727. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs +38 -0
  728. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs.map +1 -0
  729. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs +56 -0
  730. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs.map +1 -0
  731. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowright.mjs +42 -0
  732. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowright.mjs.map +1 -0
  733. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowup.mjs +56 -0
  734. package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowup.mjs.map +1 -0
  735. package/fesm2015/qius.solutions-parallel-ui-angular-icons-ban.mjs +52 -0
  736. package/fesm2015/qius.solutions-parallel-ui-angular-icons-ban.mjs.map +1 -0
  737. package/fesm2015/qius.solutions-parallel-ui-angular-icons-bars.mjs +42 -0
  738. package/fesm2015/qius.solutions-parallel-ui-angular-icons-bars.mjs.map +1 -0
  739. package/fesm2015/qius.solutions-parallel-ui-angular-icons-calendar.mjs +38 -0
  740. package/fesm2015/qius.solutions-parallel-ui-angular-icons-calendar.mjs.map +1 -0
  741. package/fesm2015/qius.solutions-parallel-ui-angular-icons-caretleft.mjs +38 -0
  742. package/fesm2015/qius.solutions-parallel-ui-angular-icons-caretleft.mjs.map +1 -0
  743. package/fesm2015/qius.solutions-parallel-ui-angular-icons-caretright.mjs +38 -0
  744. package/fesm2015/qius.solutions-parallel-ui-angular-icons-caretright.mjs.map +1 -0
  745. package/fesm2015/qius.solutions-parallel-ui-angular-icons-check.mjs +38 -0
  746. package/fesm2015/qius.solutions-parallel-ui-angular-icons-check.mjs.map +1 -0
  747. package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs +38 -0
  748. package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs.map +1 -0
  749. package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs +38 -0
  750. package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs.map +1 -0
  751. package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronright.mjs +38 -0
  752. package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronright.mjs.map +1 -0
  753. package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronup.mjs +38 -0
  754. package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronup.mjs.map +1 -0
  755. package/fesm2015/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs +68 -0
  756. package/fesm2015/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs.map +1 -0
  757. package/fesm2015/qius.solutions-parallel-ui-angular-icons-eye.mjs +42 -0
  758. package/fesm2015/qius.solutions-parallel-ui-angular-icons-eye.mjs.map +1 -0
  759. package/fesm2015/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs +56 -0
  760. package/fesm2015/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs.map +1 -0
  761. package/fesm2015/qius.solutions-parallel-ui-angular-icons-filter.mjs +52 -0
  762. package/fesm2015/qius.solutions-parallel-ui-angular-icons-filter.mjs.map +1 -0
  763. package/fesm2015/qius.solutions-parallel-ui-angular-icons-filterslash.mjs +56 -0
  764. package/fesm2015/qius.solutions-parallel-ui-angular-icons-filterslash.mjs.map +1 -0
  765. package/fesm2015/qius.solutions-parallel-ui-angular-icons-home.mjs +56 -0
  766. package/fesm2015/qius.solutions-parallel-ui-angular-icons-home.mjs.map +1 -0
  767. package/fesm2015/qius.solutions-parallel-ui-angular-icons-infocircle.mjs +56 -0
  768. package/fesm2015/qius.solutions-parallel-ui-angular-icons-infocircle.mjs.map +1 -0
  769. package/fesm2015/qius.solutions-parallel-ui-angular-icons-minus.mjs +39 -0
  770. package/fesm2015/qius.solutions-parallel-ui-angular-icons-minus.mjs.map +1 -0
  771. package/fesm2015/qius.solutions-parallel-ui-angular-icons-pencil.mjs +52 -0
  772. package/fesm2015/qius.solutions-parallel-ui-angular-icons-pencil.mjs.map +1 -0
  773. package/fesm2015/qius.solutions-parallel-ui-angular-icons-plus.mjs +52 -0
  774. package/fesm2015/qius.solutions-parallel-ui-angular-icons-plus.mjs.map +1 -0
  775. package/fesm2015/qius.solutions-parallel-ui-angular-icons-refresh.mjs +56 -0
  776. package/fesm2015/qius.solutions-parallel-ui-angular-icons-refresh.mjs.map +1 -0
  777. package/fesm2015/qius.solutions-parallel-ui-angular-icons-search.mjs +56 -0
  778. package/fesm2015/qius.solutions-parallel-ui-angular-icons-search.mjs.map +1 -0
  779. package/fesm2015/qius.solutions-parallel-ui-angular-icons-searchminus.mjs +56 -0
  780. package/fesm2015/qius.solutions-parallel-ui-angular-icons-searchminus.mjs.map +1 -0
  781. package/fesm2015/qius.solutions-parallel-ui-angular-icons-searchplus.mjs +56 -0
  782. package/fesm2015/qius.solutions-parallel-ui-angular-icons-searchplus.mjs.map +1 -0
  783. package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortalt.mjs +64 -0
  784. package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortalt.mjs.map +1 -0
  785. package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs +92 -0
  786. package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs.map +1 -0
  787. package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs +92 -0
  788. package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs.map +1 -0
  789. package/fesm2015/qius.solutions-parallel-ui-angular-icons-spinner.mjs +52 -0
  790. package/fesm2015/qius.solutions-parallel-ui-angular-icons-spinner.mjs.map +1 -0
  791. package/fesm2015/qius.solutions-parallel-ui-angular-icons-star.mjs +52 -0
  792. package/fesm2015/qius.solutions-parallel-ui-angular-icons-star.mjs.map +1 -0
  793. package/fesm2015/qius.solutions-parallel-ui-angular-icons-starfill.mjs +52 -0
  794. package/fesm2015/qius.solutions-parallel-ui-angular-icons-starfill.mjs.map +1 -0
  795. package/fesm2015/qius.solutions-parallel-ui-angular-icons-thlarge.mjs +56 -0
  796. package/fesm2015/qius.solutions-parallel-ui-angular-icons-thlarge.mjs.map +1 -0
  797. package/fesm2015/qius.solutions-parallel-ui-angular-icons-times.mjs +38 -0
  798. package/fesm2015/qius.solutions-parallel-ui-angular-icons-times.mjs.map +1 -0
  799. package/fesm2015/qius.solutions-parallel-ui-angular-icons-timescircle.mjs +56 -0
  800. package/fesm2015/qius.solutions-parallel-ui-angular-icons-timescircle.mjs.map +1 -0
  801. package/fesm2015/qius.solutions-parallel-ui-angular-icons-trash.mjs +56 -0
  802. package/fesm2015/qius.solutions-parallel-ui-angular-icons-trash.mjs.map +1 -0
  803. package/fesm2015/qius.solutions-parallel-ui-angular-icons-undo.mjs +56 -0
  804. package/fesm2015/qius.solutions-parallel-ui-angular-icons-undo.mjs.map +1 -0
  805. package/fesm2015/qius.solutions-parallel-ui-angular-icons-upload.mjs +56 -0
  806. package/fesm2015/qius.solutions-parallel-ui-angular-icons-upload.mjs.map +1 -0
  807. package/fesm2015/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs +56 -0
  808. package/fesm2015/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs.map +1 -0
  809. package/fesm2015/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs +56 -0
  810. package/fesm2015/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs.map +1 -0
  811. package/fesm2015/qius.solutions-parallel-ui-angular-image.mjs +330 -0
  812. package/fesm2015/qius.solutions-parallel-ui-angular-image.mjs.map +1 -0
  813. package/fesm2015/qius.solutions-parallel-ui-angular-inplace.mjs +175 -0
  814. package/fesm2015/qius.solutions-parallel-ui-angular-inplace.mjs.map +1 -0
  815. package/fesm2015/qius.solutions-parallel-ui-angular-inputmask.mjs +706 -0
  816. package/fesm2015/qius.solutions-parallel-ui-angular-inputmask.mjs.map +1 -0
  817. package/fesm2015/qius.solutions-parallel-ui-angular-inputnumber.mjs +1198 -0
  818. package/fesm2015/qius.solutions-parallel-ui-angular-inputnumber.mjs.map +1 -0
  819. package/fesm2015/qius.solutions-parallel-ui-angular-inputswitch.mjs +167 -0
  820. package/fesm2015/qius.solutions-parallel-ui-angular-inputswitch.mjs.map +1 -0
  821. package/fesm2015/qius.solutions-parallel-ui-angular-inputtext.mjs +64 -0
  822. package/fesm2015/qius.solutions-parallel-ui-angular-inputtext.mjs.map +1 -0
  823. package/fesm2015/qius.solutions-parallel-ui-angular-inputtextarea.mjs +126 -0
  824. package/fesm2015/qius.solutions-parallel-ui-angular-inputtextarea.mjs.map +1 -0
  825. package/fesm2015/qius.solutions-parallel-ui-angular-keyfilter.mjs +223 -0
  826. package/fesm2015/qius.solutions-parallel-ui-angular-keyfilter.mjs.map +1 -0
  827. package/fesm2015/qius.solutions-parallel-ui-angular-knob.mjs +292 -0
  828. package/fesm2015/qius.solutions-parallel-ui-angular-knob.mjs.map +1 -0
  829. package/fesm2015/qius.solutions-parallel-ui-angular-listbox.mjs +807 -0
  830. package/fesm2015/qius.solutions-parallel-ui-angular-listbox.mjs.map +1 -0
  831. package/fesm2015/qius.solutions-parallel-ui-angular-megamenu.mjs +473 -0
  832. package/fesm2015/qius.solutions-parallel-ui-angular-megamenu.mjs.map +1 -0
  833. package/fesm2015/qius.solutions-parallel-ui-angular-menu.mjs +559 -0
  834. package/fesm2015/qius.solutions-parallel-ui-angular-menu.mjs.map +1 -0
  835. package/fesm2015/qius.solutions-parallel-ui-angular-menubar.mjs +526 -0
  836. package/fesm2015/qius.solutions-parallel-ui-angular-menubar.mjs.map +1 -0
  837. package/fesm2015/qius.solutions-parallel-ui-angular-message.mjs +110 -0
  838. package/fesm2015/qius.solutions-parallel-ui-angular-message.mjs.map +1 -0
  839. package/fesm2015/qius.solutions-parallel-ui-angular-messages.mjs +283 -0
  840. package/fesm2015/qius.solutions-parallel-ui-angular-messages.mjs.map +1 -0
  841. package/fesm2015/qius.solutions-parallel-ui-angular-multiselect.mjs +1421 -0
  842. package/fesm2015/qius.solutions-parallel-ui-angular-multiselect.mjs.map +1 -0
  843. package/fesm2015/qius.solutions-parallel-ui-angular-orderlist.mjs +630 -0
  844. package/fesm2015/qius.solutions-parallel-ui-angular-orderlist.mjs.map +1 -0
  845. package/fesm2015/qius.solutions-parallel-ui-angular-organizationchart.mjs +327 -0
  846. package/fesm2015/qius.solutions-parallel-ui-angular-organizationchart.mjs.map +1 -0
  847. package/fesm2015/qius.solutions-parallel-ui-angular-overlay.mjs +554 -0
  848. package/fesm2015/qius.solutions-parallel-ui-angular-overlay.mjs.map +1 -0
  849. package/fesm2015/qius.solutions-parallel-ui-angular-overlaypanel.mjs +419 -0
  850. package/fesm2015/qius.solutions-parallel-ui-angular-overlaypanel.mjs.map +1 -0
  851. package/fesm2015/qius.solutions-parallel-ui-angular-paginator.mjs +411 -0
  852. package/fesm2015/qius.solutions-parallel-ui-angular-paginator.mjs.map +1 -0
  853. package/fesm2015/qius.solutions-parallel-ui-angular-panel.mjs +303 -0
  854. package/fesm2015/qius.solutions-parallel-ui-angular-panel.mjs.map +1 -0
  855. package/fesm2015/qius.solutions-parallel-ui-angular-panelmenu.mjs +525 -0
  856. package/fesm2015/qius.solutions-parallel-ui-angular-panelmenu.mjs.map +1 -0
  857. package/fesm2015/qius.solutions-parallel-ui-angular-password.mjs +793 -0
  858. package/fesm2015/qius.solutions-parallel-ui-angular-password.mjs.map +1 -0
  859. package/fesm2015/qius.solutions-parallel-ui-angular-picklist.mjs +1277 -0
  860. package/fesm2015/qius.solutions-parallel-ui-angular-picklist.mjs.map +1 -0
  861. package/fesm2015/qius.solutions-parallel-ui-angular-progressbar.mjs +88 -0
  862. package/fesm2015/qius.solutions-parallel-ui-angular-progressbar.mjs.map +1 -0
  863. package/fesm2015/qius.solutions-parallel-ui-angular-progressspinner.mjs +62 -0
  864. package/fesm2015/qius.solutions-parallel-ui-angular-progressspinner.mjs.map +1 -0
  865. package/fesm2015/qius.solutions-parallel-ui-angular-radiobutton.mjs +261 -0
  866. package/fesm2015/qius.solutions-parallel-ui-angular-radiobutton.mjs.map +1 -0
  867. package/fesm2015/qius.solutions-parallel-ui-angular-rating.mjs +206 -0
  868. package/fesm2015/qius.solutions-parallel-ui-angular-rating.mjs.map +1 -0
  869. package/fesm2015/qius.solutions-parallel-ui-angular-ripple.mjs +135 -0
  870. package/fesm2015/qius.solutions-parallel-ui-angular-ripple.mjs.map +1 -0
  871. package/fesm2015/qius.solutions-parallel-ui-angular-scroller.mjs +938 -0
  872. package/fesm2015/qius.solutions-parallel-ui-angular-scroller.mjs.map +1 -0
  873. package/fesm2015/qius.solutions-parallel-ui-angular-scrollpanel.mjs +281 -0
  874. package/fesm2015/qius.solutions-parallel-ui-angular-scrollpanel.mjs.map +1 -0
  875. package/fesm2015/qius.solutions-parallel-ui-angular-scrolltop.mjs +230 -0
  876. package/fesm2015/qius.solutions-parallel-ui-angular-scrolltop.mjs.map +1 -0
  877. package/fesm2015/qius.solutions-parallel-ui-angular-selectbutton.mjs +216 -0
  878. package/fesm2015/qius.solutions-parallel-ui-angular-selectbutton.mjs.map +1 -0
  879. package/fesm2015/qius.solutions-parallel-ui-angular-sidebar.mjs +378 -0
  880. package/fesm2015/qius.solutions-parallel-ui-angular-sidebar.mjs.map +1 -0
  881. package/fesm2015/qius.solutions-parallel-ui-angular-skeleton.mjs +72 -0
  882. package/fesm2015/qius.solutions-parallel-ui-angular-skeleton.mjs.map +1 -0
  883. package/fesm2015/qius.solutions-parallel-ui-angular-slidemenu.mjs +627 -0
  884. package/fesm2015/qius.solutions-parallel-ui-angular-slidemenu.mjs.map +1 -0
  885. package/fesm2015/qius.solutions-parallel-ui-angular-slider.mjs +597 -0
  886. package/fesm2015/qius.solutions-parallel-ui-angular-slider.mjs.map +1 -0
  887. package/fesm2015/qius.solutions-parallel-ui-angular-speeddial.mjs +408 -0
  888. package/fesm2015/qius.solutions-parallel-ui-angular-speeddial.mjs.map +1 -0
  889. package/fesm2015/qius.solutions-parallel-ui-angular-spinner.mjs +414 -0
  890. package/fesm2015/qius.solutions-parallel-ui-angular-spinner.mjs.map +1 -0
  891. package/fesm2015/qius.solutions-parallel-ui-angular-splitbutton.mjs +148 -0
  892. package/fesm2015/qius.solutions-parallel-ui-angular-splitbutton.mjs.map +1 -0
  893. package/fesm2015/qius.solutions-parallel-ui-angular-splitter.mjs +364 -0
  894. package/fesm2015/qius.solutions-parallel-ui-angular-splitter.mjs.map +1 -0
  895. package/fesm2015/qius.solutions-parallel-ui-angular-steps.mjs +212 -0
  896. package/fesm2015/qius.solutions-parallel-ui-angular-steps.mjs.map +1 -0
  897. package/fesm2015/qius.solutions-parallel-ui-angular-styleclass.mjs +227 -0
  898. package/fesm2015/qius.solutions-parallel-ui-angular-styleclass.mjs.map +1 -0
  899. package/fesm2015/qius.solutions-parallel-ui-angular-table.mjs +5329 -0
  900. package/fesm2015/qius.solutions-parallel-ui-angular-table.mjs.map +1 -0
  901. package/fesm2015/qius.solutions-parallel-ui-angular-tabmenu.mjs +385 -0
  902. package/fesm2015/qius.solutions-parallel-ui-angular-tabmenu.mjs.map +1 -0
  903. package/fesm2015/qius.solutions-parallel-ui-angular-tabview.mjs +539 -0
  904. package/fesm2015/qius.solutions-parallel-ui-angular-tabview.mjs.map +1 -0
  905. package/fesm2015/qius.solutions-parallel-ui-angular-tag.mjs +92 -0
  906. package/fesm2015/qius.solutions-parallel-ui-angular-tag.mjs.map +1 -0
  907. package/fesm2015/qius.solutions-parallel-ui-angular-terminal.mjs +143 -0
  908. package/fesm2015/qius.solutions-parallel-ui-angular-terminal.mjs.map +1 -0
  909. package/fesm2015/qius.solutions-parallel-ui-angular-tieredmenu.mjs +674 -0
  910. package/fesm2015/qius.solutions-parallel-ui-angular-tieredmenu.mjs.map +1 -0
  911. package/fesm2015/qius.solutions-parallel-ui-angular-timeline.mjs +138 -0
  912. package/fesm2015/qius.solutions-parallel-ui-angular-timeline.mjs.map +1 -0
  913. package/fesm2015/qius.solutions-parallel-ui-angular-toast.mjs +451 -0
  914. package/fesm2015/qius.solutions-parallel-ui-angular-toast.mjs.map +1 -0
  915. package/fesm2015/qius.solutions-parallel-ui-angular-togglebutton.mjs +140 -0
  916. package/fesm2015/qius.solutions-parallel-ui-angular-togglebutton.mjs.map +1 -0
  917. package/fesm2015/qius.solutions-parallel-ui-angular-toolbar.mjs +90 -0
  918. package/fesm2015/qius.solutions-parallel-ui-angular-toolbar.mjs.map +1 -0
  919. package/fesm2015/qius.solutions-parallel-ui-angular-tooltip.mjs +556 -0
  920. package/fesm2015/qius.solutions-parallel-ui-angular-tooltip.mjs.map +1 -0
  921. package/fesm2015/qius.solutions-parallel-ui-angular-tree.mjs +1596 -0
  922. package/fesm2015/qius.solutions-parallel-ui-angular-tree.mjs.map +1 -0
  923. package/fesm2015/qius.solutions-parallel-ui-angular-treeselect.mjs +791 -0
  924. package/fesm2015/qius.solutions-parallel-ui-angular-treeselect.mjs.map +1 -0
  925. package/fesm2015/qius.solutions-parallel-ui-angular-treetable.mjs +3228 -0
  926. package/fesm2015/qius.solutions-parallel-ui-angular-treetable.mjs.map +1 -0
  927. package/fesm2015/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs +230 -0
  928. package/fesm2015/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs.map +1 -0
  929. package/fesm2015/qius.solutions-parallel-ui-angular-utils.mjs +246 -0
  930. package/fesm2015/qius.solutions-parallel-ui-angular-utils.mjs.map +1 -0
  931. package/fesm2015/qius.solutions-parallel-ui-angular-virtualscroller.mjs +157 -0
  932. package/fesm2015/qius.solutions-parallel-ui-angular-virtualscroller.mjs.map +1 -0
  933. package/fesm2015/qius.solutions-parallel-ui-angular.mjs +6 -0
  934. package/fesm2015/qius.solutions-parallel-ui-angular.mjs.map +1 -0
  935. package/fesm2020/qius.solutions-parallel-ui-angular-accordion.mjs +403 -0
  936. package/fesm2020/qius.solutions-parallel-ui-angular-accordion.mjs.map +1 -0
  937. package/fesm2020/qius.solutions-parallel-ui-angular-animate.mjs +86 -0
  938. package/fesm2020/qius.solutions-parallel-ui-angular-animate.mjs.map +1 -0
  939. package/fesm2020/qius.solutions-parallel-ui-angular-api.mjs +817 -0
  940. package/fesm2020/qius.solutions-parallel-ui-angular-api.mjs.map +1 -0
  941. package/fesm2020/qius.solutions-parallel-ui-angular-autocomplete.mjs +1151 -0
  942. package/fesm2020/qius.solutions-parallel-ui-angular-autocomplete.mjs.map +1 -0
  943. package/fesm2020/qius.solutions-parallel-ui-angular-autofocus.mjs +58 -0
  944. package/fesm2020/qius.solutions-parallel-ui-angular-autofocus.mjs.map +1 -0
  945. package/fesm2020/qius.solutions-parallel-ui-angular-avatar.mjs +82 -0
  946. package/fesm2020/qius.solutions-parallel-ui-angular-avatar.mjs.map +1 -0
  947. package/fesm2020/qius.solutions-parallel-ui-angular-avatargroup.mjs +47 -0
  948. package/fesm2020/qius.solutions-parallel-ui-angular-avatargroup.mjs.map +1 -0
  949. package/fesm2020/qius.solutions-parallel-ui-angular-badge.mjs +189 -0
  950. package/fesm2020/qius.solutions-parallel-ui-angular-badge.mjs.map +1 -0
  951. package/fesm2020/qius.solutions-parallel-ui-angular-baseicon.mjs +48 -0
  952. package/fesm2020/qius.solutions-parallel-ui-angular-baseicon.mjs.map +1 -0
  953. package/fesm2020/qius.solutions-parallel-ui-angular-blockui.mjs +147 -0
  954. package/fesm2020/qius.solutions-parallel-ui-angular-blockui.mjs.map +1 -0
  955. package/fesm2020/qius.solutions-parallel-ui-angular-breadcrumb.mjs +303 -0
  956. package/fesm2020/qius.solutions-parallel-ui-angular-breadcrumb.mjs.map +1 -0
  957. package/fesm2020/qius.solutions-parallel-ui-angular-button.mjs +369 -0
  958. package/fesm2020/qius.solutions-parallel-ui-angular-button.mjs.map +1 -0
  959. package/fesm2020/qius.solutions-parallel-ui-angular-calendar.mjs +3130 -0
  960. package/fesm2020/qius.solutions-parallel-ui-angular-calendar.mjs.map +1 -0
  961. package/fesm2020/qius.solutions-parallel-ui-angular-card.mjs +133 -0
  962. package/fesm2020/qius.solutions-parallel-ui-angular-card.mjs.map +1 -0
  963. package/fesm2020/qius.solutions-parallel-ui-angular-carousel.mjs +703 -0
  964. package/fesm2020/qius.solutions-parallel-ui-angular-carousel.mjs.map +1 -0
  965. package/fesm2020/qius.solutions-parallel-ui-angular-cascadeselect.mjs +773 -0
  966. package/fesm2020/qius.solutions-parallel-ui-angular-cascadeselect.mjs.map +1 -0
  967. package/fesm2020/qius.solutions-parallel-ui-angular-chart.mjs +149 -0
  968. package/fesm2020/qius.solutions-parallel-ui-angular-chart.mjs.map +1 -0
  969. package/fesm2020/qius.solutions-parallel-ui-angular-checkbox.mjs +254 -0
  970. package/fesm2020/qius.solutions-parallel-ui-angular-checkbox.mjs.map +1 -0
  971. package/fesm2020/qius.solutions-parallel-ui-angular-chip.mjs +120 -0
  972. package/fesm2020/qius.solutions-parallel-ui-angular-chip.mjs.map +1 -0
  973. package/fesm2020/qius.solutions-parallel-ui-angular-chips.mjs +382 -0
  974. package/fesm2020/qius.solutions-parallel-ui-angular-chips.mjs.map +1 -0
  975. package/fesm2020/qius.solutions-parallel-ui-angular-colorpicker.mjs +692 -0
  976. package/fesm2020/qius.solutions-parallel-ui-angular-colorpicker.mjs.map +1 -0
  977. package/fesm2020/qius.solutions-parallel-ui-angular-confirmdialog.mjs +613 -0
  978. package/fesm2020/qius.solutions-parallel-ui-angular-confirmdialog.mjs.map +1 -0
  979. package/fesm2020/qius.solutions-parallel-ui-angular-confirmpopup.mjs +401 -0
  980. package/fesm2020/qius.solutions-parallel-ui-angular-confirmpopup.mjs.map +1 -0
  981. package/fesm2020/qius.solutions-parallel-ui-angular-contextmenu.mjs +698 -0
  982. package/fesm2020/qius.solutions-parallel-ui-angular-contextmenu.mjs.map +1 -0
  983. package/fesm2020/qius.solutions-parallel-ui-angular-dataview.mjs +519 -0
  984. package/fesm2020/qius.solutions-parallel-ui-angular-dataview.mjs.map +1 -0
  985. package/fesm2020/qius.solutions-parallel-ui-angular-defer.mjs +99 -0
  986. package/fesm2020/qius.solutions-parallel-ui-angular-defer.mjs.map +1 -0
  987. package/fesm2020/qius.solutions-parallel-ui-angular-dialog.mjs +840 -0
  988. package/fesm2020/qius.solutions-parallel-ui-angular-dialog.mjs.map +1 -0
  989. package/fesm2020/qius.solutions-parallel-ui-angular-divider.mjs +76 -0
  990. package/fesm2020/qius.solutions-parallel-ui-angular-divider.mjs.map +1 -0
  991. package/fesm2020/qius.solutions-parallel-ui-angular-dock.mjs +217 -0
  992. package/fesm2020/qius.solutions-parallel-ui-angular-dock.mjs.map +1 -0
  993. package/fesm2020/qius.solutions-parallel-ui-angular-dom.mjs +632 -0
  994. package/fesm2020/qius.solutions-parallel-ui-angular-dom.mjs.map +1 -0
  995. package/fesm2020/qius.solutions-parallel-ui-angular-dragdrop.mjs +258 -0
  996. package/fesm2020/qius.solutions-parallel-ui-angular-dragdrop.mjs.map +1 -0
  997. package/fesm2020/qius.solutions-parallel-ui-angular-dropdown.mjs +1379 -0
  998. package/fesm2020/qius.solutions-parallel-ui-angular-dropdown.mjs.map +1 -0
  999. package/fesm2020/qius.solutions-parallel-ui-angular-dynamicdialog.mjs +693 -0
  1000. package/fesm2020/qius.solutions-parallel-ui-angular-dynamicdialog.mjs.map +1 -0
  1001. package/fesm2020/qius.solutions-parallel-ui-angular-editor.mjs +316 -0
  1002. package/fesm2020/qius.solutions-parallel-ui-angular-editor.mjs.map +1 -0
  1003. package/fesm2020/qius.solutions-parallel-ui-angular-fieldset.mjs +221 -0
  1004. package/fesm2020/qius.solutions-parallel-ui-angular-fieldset.mjs.map +1 -0
  1005. package/fesm2020/qius.solutions-parallel-ui-angular-fileupload.mjs +761 -0
  1006. package/fesm2020/qius.solutions-parallel-ui-angular-fileupload.mjs.map +1 -0
  1007. package/fesm2020/qius.solutions-parallel-ui-angular-focustrap.mjs +59 -0
  1008. package/fesm2020/qius.solutions-parallel-ui-angular-focustrap.mjs.map +1 -0
  1009. package/fesm2020/qius.solutions-parallel-ui-angular-galleria.mjs +1194 -0
  1010. package/fesm2020/qius.solutions-parallel-ui-angular-galleria.mjs.map +1 -0
  1011. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs +42 -0
  1012. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs.map +1 -0
  1013. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs +42 -0
  1014. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs.map +1 -0
  1015. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs +42 -0
  1016. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs.map +1 -0
  1017. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs +42 -0
  1018. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs.map +1 -0
  1019. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledown.mjs +38 -0
  1020. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledown.mjs.map +1 -0
  1021. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleleft.mjs +38 -0
  1022. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleleft.mjs.map +1 -0
  1023. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleright.mjs +38 -0
  1024. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleright.mjs.map +1 -0
  1025. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleup.mjs +38 -0
  1026. package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleup.mjs.map +1 -0
  1027. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs +56 -0
  1028. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs.map +1 -0
  1029. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs +38 -0
  1030. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs.map +1 -0
  1031. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs +38 -0
  1032. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs.map +1 -0
  1033. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs +56 -0
  1034. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs.map +1 -0
  1035. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowright.mjs +42 -0
  1036. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowright.mjs.map +1 -0
  1037. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowup.mjs +56 -0
  1038. package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowup.mjs.map +1 -0
  1039. package/fesm2020/qius.solutions-parallel-ui-angular-icons-ban.mjs +52 -0
  1040. package/fesm2020/qius.solutions-parallel-ui-angular-icons-ban.mjs.map +1 -0
  1041. package/fesm2020/qius.solutions-parallel-ui-angular-icons-bars.mjs +42 -0
  1042. package/fesm2020/qius.solutions-parallel-ui-angular-icons-bars.mjs.map +1 -0
  1043. package/fesm2020/qius.solutions-parallel-ui-angular-icons-calendar.mjs +38 -0
  1044. package/fesm2020/qius.solutions-parallel-ui-angular-icons-calendar.mjs.map +1 -0
  1045. package/fesm2020/qius.solutions-parallel-ui-angular-icons-caretleft.mjs +38 -0
  1046. package/fesm2020/qius.solutions-parallel-ui-angular-icons-caretleft.mjs.map +1 -0
  1047. package/fesm2020/qius.solutions-parallel-ui-angular-icons-caretright.mjs +38 -0
  1048. package/fesm2020/qius.solutions-parallel-ui-angular-icons-caretright.mjs.map +1 -0
  1049. package/fesm2020/qius.solutions-parallel-ui-angular-icons-check.mjs +38 -0
  1050. package/fesm2020/qius.solutions-parallel-ui-angular-icons-check.mjs.map +1 -0
  1051. package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs +38 -0
  1052. package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs.map +1 -0
  1053. package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs +38 -0
  1054. package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs.map +1 -0
  1055. package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronright.mjs +38 -0
  1056. package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronright.mjs.map +1 -0
  1057. package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronup.mjs +38 -0
  1058. package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronup.mjs.map +1 -0
  1059. package/fesm2020/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs +68 -0
  1060. package/fesm2020/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs.map +1 -0
  1061. package/fesm2020/qius.solutions-parallel-ui-angular-icons-eye.mjs +42 -0
  1062. package/fesm2020/qius.solutions-parallel-ui-angular-icons-eye.mjs.map +1 -0
  1063. package/fesm2020/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs +56 -0
  1064. package/fesm2020/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs.map +1 -0
  1065. package/fesm2020/qius.solutions-parallel-ui-angular-icons-filter.mjs +52 -0
  1066. package/fesm2020/qius.solutions-parallel-ui-angular-icons-filter.mjs.map +1 -0
  1067. package/fesm2020/qius.solutions-parallel-ui-angular-icons-filterslash.mjs +56 -0
  1068. package/fesm2020/qius.solutions-parallel-ui-angular-icons-filterslash.mjs.map +1 -0
  1069. package/fesm2020/qius.solutions-parallel-ui-angular-icons-home.mjs +56 -0
  1070. package/fesm2020/qius.solutions-parallel-ui-angular-icons-home.mjs.map +1 -0
  1071. package/fesm2020/qius.solutions-parallel-ui-angular-icons-infocircle.mjs +56 -0
  1072. package/fesm2020/qius.solutions-parallel-ui-angular-icons-infocircle.mjs.map +1 -0
  1073. package/fesm2020/qius.solutions-parallel-ui-angular-icons-minus.mjs +39 -0
  1074. package/fesm2020/qius.solutions-parallel-ui-angular-icons-minus.mjs.map +1 -0
  1075. package/fesm2020/qius.solutions-parallel-ui-angular-icons-pencil.mjs +52 -0
  1076. package/fesm2020/qius.solutions-parallel-ui-angular-icons-pencil.mjs.map +1 -0
  1077. package/fesm2020/qius.solutions-parallel-ui-angular-icons-plus.mjs +52 -0
  1078. package/fesm2020/qius.solutions-parallel-ui-angular-icons-plus.mjs.map +1 -0
  1079. package/fesm2020/qius.solutions-parallel-ui-angular-icons-refresh.mjs +56 -0
  1080. package/fesm2020/qius.solutions-parallel-ui-angular-icons-refresh.mjs.map +1 -0
  1081. package/fesm2020/qius.solutions-parallel-ui-angular-icons-search.mjs +56 -0
  1082. package/fesm2020/qius.solutions-parallel-ui-angular-icons-search.mjs.map +1 -0
  1083. package/fesm2020/qius.solutions-parallel-ui-angular-icons-searchminus.mjs +56 -0
  1084. package/fesm2020/qius.solutions-parallel-ui-angular-icons-searchminus.mjs.map +1 -0
  1085. package/fesm2020/qius.solutions-parallel-ui-angular-icons-searchplus.mjs +56 -0
  1086. package/fesm2020/qius.solutions-parallel-ui-angular-icons-searchplus.mjs.map +1 -0
  1087. package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortalt.mjs +64 -0
  1088. package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortalt.mjs.map +1 -0
  1089. package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs +92 -0
  1090. package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs.map +1 -0
  1091. package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs +92 -0
  1092. package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs.map +1 -0
  1093. package/fesm2020/qius.solutions-parallel-ui-angular-icons-spinner.mjs +52 -0
  1094. package/fesm2020/qius.solutions-parallel-ui-angular-icons-spinner.mjs.map +1 -0
  1095. package/fesm2020/qius.solutions-parallel-ui-angular-icons-star.mjs +52 -0
  1096. package/fesm2020/qius.solutions-parallel-ui-angular-icons-star.mjs.map +1 -0
  1097. package/fesm2020/qius.solutions-parallel-ui-angular-icons-starfill.mjs +52 -0
  1098. package/fesm2020/qius.solutions-parallel-ui-angular-icons-starfill.mjs.map +1 -0
  1099. package/fesm2020/qius.solutions-parallel-ui-angular-icons-thlarge.mjs +56 -0
  1100. package/fesm2020/qius.solutions-parallel-ui-angular-icons-thlarge.mjs.map +1 -0
  1101. package/fesm2020/qius.solutions-parallel-ui-angular-icons-times.mjs +38 -0
  1102. package/fesm2020/qius.solutions-parallel-ui-angular-icons-times.mjs.map +1 -0
  1103. package/fesm2020/qius.solutions-parallel-ui-angular-icons-timescircle.mjs +56 -0
  1104. package/fesm2020/qius.solutions-parallel-ui-angular-icons-timescircle.mjs.map +1 -0
  1105. package/fesm2020/qius.solutions-parallel-ui-angular-icons-trash.mjs +56 -0
  1106. package/fesm2020/qius.solutions-parallel-ui-angular-icons-trash.mjs.map +1 -0
  1107. package/fesm2020/qius.solutions-parallel-ui-angular-icons-undo.mjs +56 -0
  1108. package/fesm2020/qius.solutions-parallel-ui-angular-icons-undo.mjs.map +1 -0
  1109. package/fesm2020/qius.solutions-parallel-ui-angular-icons-upload.mjs +56 -0
  1110. package/fesm2020/qius.solutions-parallel-ui-angular-icons-upload.mjs.map +1 -0
  1111. package/fesm2020/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs +56 -0
  1112. package/fesm2020/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs.map +1 -0
  1113. package/fesm2020/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs +56 -0
  1114. package/fesm2020/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs.map +1 -0
  1115. package/fesm2020/qius.solutions-parallel-ui-angular-image.mjs +328 -0
  1116. package/fesm2020/qius.solutions-parallel-ui-angular-image.mjs.map +1 -0
  1117. package/fesm2020/qius.solutions-parallel-ui-angular-inplace.mjs +175 -0
  1118. package/fesm2020/qius.solutions-parallel-ui-angular-inplace.mjs.map +1 -0
  1119. package/fesm2020/qius.solutions-parallel-ui-angular-inputmask.mjs +704 -0
  1120. package/fesm2020/qius.solutions-parallel-ui-angular-inputmask.mjs.map +1 -0
  1121. package/fesm2020/qius.solutions-parallel-ui-angular-inputnumber.mjs +1196 -0
  1122. package/fesm2020/qius.solutions-parallel-ui-angular-inputnumber.mjs.map +1 -0
  1123. package/fesm2020/qius.solutions-parallel-ui-angular-inputswitch.mjs +167 -0
  1124. package/fesm2020/qius.solutions-parallel-ui-angular-inputswitch.mjs.map +1 -0
  1125. package/fesm2020/qius.solutions-parallel-ui-angular-inputtext.mjs +62 -0
  1126. package/fesm2020/qius.solutions-parallel-ui-angular-inputtext.mjs.map +1 -0
  1127. package/fesm2020/qius.solutions-parallel-ui-angular-inputtextarea.mjs +124 -0
  1128. package/fesm2020/qius.solutions-parallel-ui-angular-inputtextarea.mjs.map +1 -0
  1129. package/fesm2020/qius.solutions-parallel-ui-angular-keyfilter.mjs +221 -0
  1130. package/fesm2020/qius.solutions-parallel-ui-angular-keyfilter.mjs.map +1 -0
  1131. package/fesm2020/qius.solutions-parallel-ui-angular-knob.mjs +290 -0
  1132. package/fesm2020/qius.solutions-parallel-ui-angular-knob.mjs.map +1 -0
  1133. package/fesm2020/qius.solutions-parallel-ui-angular-listbox.mjs +807 -0
  1134. package/fesm2020/qius.solutions-parallel-ui-angular-listbox.mjs.map +1 -0
  1135. package/fesm2020/qius.solutions-parallel-ui-angular-megamenu.mjs +471 -0
  1136. package/fesm2020/qius.solutions-parallel-ui-angular-megamenu.mjs.map +1 -0
  1137. package/fesm2020/qius.solutions-parallel-ui-angular-menu.mjs +555 -0
  1138. package/fesm2020/qius.solutions-parallel-ui-angular-menu.mjs.map +1 -0
  1139. package/fesm2020/qius.solutions-parallel-ui-angular-menubar.mjs +522 -0
  1140. package/fesm2020/qius.solutions-parallel-ui-angular-menubar.mjs.map +1 -0
  1141. package/fesm2020/qius.solutions-parallel-ui-angular-message.mjs +110 -0
  1142. package/fesm2020/qius.solutions-parallel-ui-angular-message.mjs.map +1 -0
  1143. package/fesm2020/qius.solutions-parallel-ui-angular-messages.mjs +279 -0
  1144. package/fesm2020/qius.solutions-parallel-ui-angular-messages.mjs.map +1 -0
  1145. package/fesm2020/qius.solutions-parallel-ui-angular-multiselect.mjs +1418 -0
  1146. package/fesm2020/qius.solutions-parallel-ui-angular-multiselect.mjs.map +1 -0
  1147. package/fesm2020/qius.solutions-parallel-ui-angular-orderlist.mjs +628 -0
  1148. package/fesm2020/qius.solutions-parallel-ui-angular-orderlist.mjs.map +1 -0
  1149. package/fesm2020/qius.solutions-parallel-ui-angular-organizationchart.mjs +325 -0
  1150. package/fesm2020/qius.solutions-parallel-ui-angular-organizationchart.mjs.map +1 -0
  1151. package/fesm2020/qius.solutions-parallel-ui-angular-overlay.mjs +527 -0
  1152. package/fesm2020/qius.solutions-parallel-ui-angular-overlay.mjs.map +1 -0
  1153. package/fesm2020/qius.solutions-parallel-ui-angular-overlaypanel.mjs +417 -0
  1154. package/fesm2020/qius.solutions-parallel-ui-angular-overlaypanel.mjs.map +1 -0
  1155. package/fesm2020/qius.solutions-parallel-ui-angular-paginator.mjs +411 -0
  1156. package/fesm2020/qius.solutions-parallel-ui-angular-paginator.mjs.map +1 -0
  1157. package/fesm2020/qius.solutions-parallel-ui-angular-panel.mjs +303 -0
  1158. package/fesm2020/qius.solutions-parallel-ui-angular-panel.mjs.map +1 -0
  1159. package/fesm2020/qius.solutions-parallel-ui-angular-panelmenu.mjs +525 -0
  1160. package/fesm2020/qius.solutions-parallel-ui-angular-panelmenu.mjs.map +1 -0
  1161. package/fesm2020/qius.solutions-parallel-ui-angular-password.mjs +789 -0
  1162. package/fesm2020/qius.solutions-parallel-ui-angular-password.mjs.map +1 -0
  1163. package/fesm2020/qius.solutions-parallel-ui-angular-picklist.mjs +1275 -0
  1164. package/fesm2020/qius.solutions-parallel-ui-angular-picklist.mjs.map +1 -0
  1165. package/fesm2020/qius.solutions-parallel-ui-angular-progressbar.mjs +88 -0
  1166. package/fesm2020/qius.solutions-parallel-ui-angular-progressbar.mjs.map +1 -0
  1167. package/fesm2020/qius.solutions-parallel-ui-angular-progressspinner.mjs +62 -0
  1168. package/fesm2020/qius.solutions-parallel-ui-angular-progressspinner.mjs.map +1 -0
  1169. package/fesm2020/qius.solutions-parallel-ui-angular-radiobutton.mjs +261 -0
  1170. package/fesm2020/qius.solutions-parallel-ui-angular-radiobutton.mjs.map +1 -0
  1171. package/fesm2020/qius.solutions-parallel-ui-angular-rating.mjs +206 -0
  1172. package/fesm2020/qius.solutions-parallel-ui-angular-rating.mjs.map +1 -0
  1173. package/fesm2020/qius.solutions-parallel-ui-angular-ripple.mjs +133 -0
  1174. package/fesm2020/qius.solutions-parallel-ui-angular-ripple.mjs.map +1 -0
  1175. package/fesm2020/qius.solutions-parallel-ui-angular-scroller.mjs +935 -0
  1176. package/fesm2020/qius.solutions-parallel-ui-angular-scroller.mjs.map +1 -0
  1177. package/fesm2020/qius.solutions-parallel-ui-angular-scrollpanel.mjs +279 -0
  1178. package/fesm2020/qius.solutions-parallel-ui-angular-scrollpanel.mjs.map +1 -0
  1179. package/fesm2020/qius.solutions-parallel-ui-angular-scrolltop.mjs +228 -0
  1180. package/fesm2020/qius.solutions-parallel-ui-angular-scrolltop.mjs.map +1 -0
  1181. package/fesm2020/qius.solutions-parallel-ui-angular-selectbutton.mjs +216 -0
  1182. package/fesm2020/qius.solutions-parallel-ui-angular-selectbutton.mjs.map +1 -0
  1183. package/fesm2020/qius.solutions-parallel-ui-angular-sidebar.mjs +376 -0
  1184. package/fesm2020/qius.solutions-parallel-ui-angular-sidebar.mjs.map +1 -0
  1185. package/fesm2020/qius.solutions-parallel-ui-angular-skeleton.mjs +72 -0
  1186. package/fesm2020/qius.solutions-parallel-ui-angular-skeleton.mjs.map +1 -0
  1187. package/fesm2020/qius.solutions-parallel-ui-angular-slidemenu.mjs +623 -0
  1188. package/fesm2020/qius.solutions-parallel-ui-angular-slidemenu.mjs.map +1 -0
  1189. package/fesm2020/qius.solutions-parallel-ui-angular-slider.mjs +595 -0
  1190. package/fesm2020/qius.solutions-parallel-ui-angular-slider.mjs.map +1 -0
  1191. package/fesm2020/qius.solutions-parallel-ui-angular-speeddial.mjs +409 -0
  1192. package/fesm2020/qius.solutions-parallel-ui-angular-speeddial.mjs.map +1 -0
  1193. package/fesm2020/qius.solutions-parallel-ui-angular-spinner.mjs +414 -0
  1194. package/fesm2020/qius.solutions-parallel-ui-angular-spinner.mjs.map +1 -0
  1195. package/fesm2020/qius.solutions-parallel-ui-angular-splitbutton.mjs +148 -0
  1196. package/fesm2020/qius.solutions-parallel-ui-angular-splitbutton.mjs.map +1 -0
  1197. package/fesm2020/qius.solutions-parallel-ui-angular-splitter.mjs +362 -0
  1198. package/fesm2020/qius.solutions-parallel-ui-angular-splitter.mjs.map +1 -0
  1199. package/fesm2020/qius.solutions-parallel-ui-angular-steps.mjs +212 -0
  1200. package/fesm2020/qius.solutions-parallel-ui-angular-steps.mjs.map +1 -0
  1201. package/fesm2020/qius.solutions-parallel-ui-angular-styleclass.mjs +227 -0
  1202. package/fesm2020/qius.solutions-parallel-ui-angular-styleclass.mjs.map +1 -0
  1203. package/fesm2020/qius.solutions-parallel-ui-angular-table.mjs +5321 -0
  1204. package/fesm2020/qius.solutions-parallel-ui-angular-table.mjs.map +1 -0
  1205. package/fesm2020/qius.solutions-parallel-ui-angular-tabmenu.mjs +381 -0
  1206. package/fesm2020/qius.solutions-parallel-ui-angular-tabmenu.mjs.map +1 -0
  1207. package/fesm2020/qius.solutions-parallel-ui-angular-tabview.mjs +534 -0
  1208. package/fesm2020/qius.solutions-parallel-ui-angular-tabview.mjs.map +1 -0
  1209. package/fesm2020/qius.solutions-parallel-ui-angular-tag.mjs +92 -0
  1210. package/fesm2020/qius.solutions-parallel-ui-angular-tag.mjs.map +1 -0
  1211. package/fesm2020/qius.solutions-parallel-ui-angular-terminal.mjs +143 -0
  1212. package/fesm2020/qius.solutions-parallel-ui-angular-terminal.mjs.map +1 -0
  1213. package/fesm2020/qius.solutions-parallel-ui-angular-tieredmenu.mjs +670 -0
  1214. package/fesm2020/qius.solutions-parallel-ui-angular-tieredmenu.mjs.map +1 -0
  1215. package/fesm2020/qius.solutions-parallel-ui-angular-timeline.mjs +138 -0
  1216. package/fesm2020/qius.solutions-parallel-ui-angular-timeline.mjs.map +1 -0
  1217. package/fesm2020/qius.solutions-parallel-ui-angular-toast.mjs +449 -0
  1218. package/fesm2020/qius.solutions-parallel-ui-angular-toast.mjs.map +1 -0
  1219. package/fesm2020/qius.solutions-parallel-ui-angular-togglebutton.mjs +140 -0
  1220. package/fesm2020/qius.solutions-parallel-ui-angular-togglebutton.mjs.map +1 -0
  1221. package/fesm2020/qius.solutions-parallel-ui-angular-toolbar.mjs +90 -0
  1222. package/fesm2020/qius.solutions-parallel-ui-angular-toolbar.mjs.map +1 -0
  1223. package/fesm2020/qius.solutions-parallel-ui-angular-tooltip.mjs +553 -0
  1224. package/fesm2020/qius.solutions-parallel-ui-angular-tooltip.mjs.map +1 -0
  1225. package/fesm2020/qius.solutions-parallel-ui-angular-tree.mjs +1591 -0
  1226. package/fesm2020/qius.solutions-parallel-ui-angular-tree.mjs.map +1 -0
  1227. package/fesm2020/qius.solutions-parallel-ui-angular-treeselect.mjs +785 -0
  1228. package/fesm2020/qius.solutions-parallel-ui-angular-treeselect.mjs.map +1 -0
  1229. package/fesm2020/qius.solutions-parallel-ui-angular-treetable.mjs +3224 -0
  1230. package/fesm2020/qius.solutions-parallel-ui-angular-treetable.mjs.map +1 -0
  1231. package/fesm2020/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs +230 -0
  1232. package/fesm2020/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs.map +1 -0
  1233. package/fesm2020/qius.solutions-parallel-ui-angular-utils.mjs +246 -0
  1234. package/fesm2020/qius.solutions-parallel-ui-angular-utils.mjs.map +1 -0
  1235. package/fesm2020/qius.solutions-parallel-ui-angular-virtualscroller.mjs +160 -0
  1236. package/fesm2020/qius.solutions-parallel-ui-angular-virtualscroller.mjs.map +1 -0
  1237. package/fesm2020/qius.solutions-parallel-ui-angular.mjs +6 -0
  1238. package/fesm2020/qius.solutions-parallel-ui-angular.mjs.map +1 -0
  1239. package/fieldset/fieldset.d.ts +41 -0
  1240. package/fieldset/index.d.ts +5 -0
  1241. package/fieldset/public_api.d.ts +1 -0
  1242. package/fileupload/fileupload.d.ts +139 -0
  1243. package/fileupload/index.d.ts +5 -0
  1244. package/fileupload/public_api.d.ts +1 -0
  1245. package/focustrap/focustrap.d.ts +16 -0
  1246. package/focustrap/index.d.ts +5 -0
  1247. package/focustrap/public_api.d.ts +1 -0
  1248. package/galleria/galleria.d.ts +218 -0
  1249. package/galleria/index.d.ts +5 -0
  1250. package/galleria/public_api.d.ts +1 -0
  1251. package/icons/angledoubledown/angledoubledown.d.ts +6 -0
  1252. package/icons/angledoubledown/index.d.ts +5 -0
  1253. package/icons/angledoubledown/public_api.d.ts +1 -0
  1254. package/icons/angledoubleleft/angledoubleleft.d.ts +6 -0
  1255. package/icons/angledoubleleft/index.d.ts +5 -0
  1256. package/icons/angledoubleleft/public_api.d.ts +1 -0
  1257. package/icons/angledoubleright/angledoubleright.d.ts +6 -0
  1258. package/icons/angledoubleright/index.d.ts +5 -0
  1259. package/icons/angledoubleright/public_api.d.ts +1 -0
  1260. package/icons/angledoubleup/angledoubleup.d.ts +6 -0
  1261. package/icons/angledoubleup/index.d.ts +5 -0
  1262. package/icons/angledoubleup/public_api.d.ts +1 -0
  1263. package/icons/angledown/angledown.d.ts +6 -0
  1264. package/icons/angledown/index.d.ts +5 -0
  1265. package/icons/angledown/public_api.d.ts +1 -0
  1266. package/icons/angleleft/angleleft.d.ts +6 -0
  1267. package/icons/angleleft/index.d.ts +5 -0
  1268. package/icons/angleleft/public_api.d.ts +1 -0
  1269. package/icons/angleright/angleright.d.ts +6 -0
  1270. package/icons/angleright/index.d.ts +5 -0
  1271. package/icons/angleright/public_api.d.ts +1 -0
  1272. package/icons/angleup/angleup.d.ts +6 -0
  1273. package/icons/angleup/index.d.ts +5 -0
  1274. package/icons/angleup/public_api.d.ts +1 -0
  1275. package/icons/arrowdown/arrowdown.d.ts +6 -0
  1276. package/icons/arrowdown/index.d.ts +5 -0
  1277. package/icons/arrowdown/public_api.d.ts +1 -0
  1278. package/icons/arrowdownleft/arrowdownleft.d.ts +6 -0
  1279. package/icons/arrowdownleft/index.d.ts +5 -0
  1280. package/icons/arrowdownleft/public_api.d.ts +1 -0
  1281. package/icons/arrowdownright/arrowdownright.d.ts +6 -0
  1282. package/icons/arrowdownright/index.d.ts +5 -0
  1283. package/icons/arrowdownright/public_api.d.ts +1 -0
  1284. package/icons/arrowleft/arrowleft.d.ts +6 -0
  1285. package/icons/arrowleft/index.d.ts +5 -0
  1286. package/icons/arrowleft/public_api.d.ts +1 -0
  1287. package/icons/arrowright/arrowright.d.ts +6 -0
  1288. package/icons/arrowright/index.d.ts +5 -0
  1289. package/icons/arrowright/public_api.d.ts +1 -0
  1290. package/icons/arrowup/arrowup.d.ts +6 -0
  1291. package/icons/arrowup/index.d.ts +5 -0
  1292. package/icons/arrowup/public_api.d.ts +1 -0
  1293. package/icons/ban/ban.d.ts +6 -0
  1294. package/icons/ban/index.d.ts +5 -0
  1295. package/icons/ban/public_api.d.ts +1 -0
  1296. package/icons/bars/bars.d.ts +6 -0
  1297. package/icons/bars/index.d.ts +5 -0
  1298. package/icons/bars/public_api.d.ts +1 -0
  1299. package/icons/calendar/calendar.d.ts +6 -0
  1300. package/icons/calendar/index.d.ts +5 -0
  1301. package/icons/calendar/public_api.d.ts +1 -0
  1302. package/icons/caretleft/caretleft.d.ts +6 -0
  1303. package/icons/caretleft/index.d.ts +5 -0
  1304. package/icons/caretleft/public_api.d.ts +1 -0
  1305. package/icons/caretright/caretright.d.ts +6 -0
  1306. package/icons/caretright/index.d.ts +5 -0
  1307. package/icons/caretright/public_api.d.ts +1 -0
  1308. package/icons/check/check.d.ts +6 -0
  1309. package/icons/check/index.d.ts +5 -0
  1310. package/icons/check/public_api.d.ts +1 -0
  1311. package/icons/chevrondown/chevrondown.d.ts +6 -0
  1312. package/icons/chevrondown/index.d.ts +5 -0
  1313. package/icons/chevrondown/public_api.d.ts +1 -0
  1314. package/icons/chevronleft/chevronleft.d.ts +6 -0
  1315. package/icons/chevronleft/index.d.ts +5 -0
  1316. package/icons/chevronleft/public_api.d.ts +1 -0
  1317. package/icons/chevronright/chevronright.d.ts +6 -0
  1318. package/icons/chevronright/index.d.ts +5 -0
  1319. package/icons/chevronright/public_api.d.ts +1 -0
  1320. package/icons/chevronup/chevronup.d.ts +6 -0
  1321. package/icons/chevronup/index.d.ts +5 -0
  1322. package/icons/chevronup/public_api.d.ts +1 -0
  1323. package/icons/exclamationtriangle/exclamationtriangle.d.ts +6 -0
  1324. package/icons/exclamationtriangle/index.d.ts +5 -0
  1325. package/icons/exclamationtriangle/public_api.d.ts +1 -0
  1326. package/icons/eye/eye.d.ts +6 -0
  1327. package/icons/eye/index.d.ts +5 -0
  1328. package/icons/eye/public_api.d.ts +1 -0
  1329. package/icons/eyeslash/eyeslash.d.ts +6 -0
  1330. package/icons/eyeslash/index.d.ts +5 -0
  1331. package/icons/eyeslash/public_api.d.ts +1 -0
  1332. package/icons/filter/filter.d.ts +6 -0
  1333. package/icons/filter/index.d.ts +5 -0
  1334. package/icons/filter/public_api.d.ts +1 -0
  1335. package/icons/filterslash/filterslash.d.ts +6 -0
  1336. package/icons/filterslash/index.d.ts +5 -0
  1337. package/icons/filterslash/public_api.d.ts +1 -0
  1338. package/icons/home/home.d.ts +6 -0
  1339. package/icons/home/index.d.ts +5 -0
  1340. package/icons/home/public_api.d.ts +1 -0
  1341. package/icons/infocircle/index.d.ts +5 -0
  1342. package/icons/infocircle/infocircle.d.ts +6 -0
  1343. package/icons/infocircle/public_api.d.ts +1 -0
  1344. package/icons/minus/index.d.ts +5 -0
  1345. package/icons/minus/minus.d.ts +6 -0
  1346. package/icons/minus/public_api.d.ts +1 -0
  1347. package/icons/pencil/index.d.ts +5 -0
  1348. package/icons/pencil/pencil.d.ts +6 -0
  1349. package/icons/pencil/public_api.d.ts +1 -0
  1350. package/icons/plus/index.d.ts +5 -0
  1351. package/icons/plus/plus.d.ts +6 -0
  1352. package/icons/plus/public_api.d.ts +1 -0
  1353. package/icons/refresh/index.d.ts +5 -0
  1354. package/icons/refresh/public_api.d.ts +1 -0
  1355. package/icons/refresh/refresh.d.ts +6 -0
  1356. package/icons/search/index.d.ts +5 -0
  1357. package/icons/search/public_api.d.ts +1 -0
  1358. package/icons/search/search.d.ts +6 -0
  1359. package/icons/searchminus/index.d.ts +5 -0
  1360. package/icons/searchminus/public_api.d.ts +1 -0
  1361. package/icons/searchminus/searchminus.d.ts +6 -0
  1362. package/icons/searchplus/index.d.ts +5 -0
  1363. package/icons/searchplus/public_api.d.ts +1 -0
  1364. package/icons/searchplus/searchplus.d.ts +6 -0
  1365. package/icons/sortalt/index.d.ts +5 -0
  1366. package/icons/sortalt/public_api.d.ts +1 -0
  1367. package/icons/sortalt/sortalt.d.ts +6 -0
  1368. package/icons/sortamountdown/index.d.ts +5 -0
  1369. package/icons/sortamountdown/public_api.d.ts +1 -0
  1370. package/icons/sortamountdown/sortamountdown.d.ts +6 -0
  1371. package/icons/sortamountupalt/index.d.ts +5 -0
  1372. package/icons/sortamountupalt/public_api.d.ts +1 -0
  1373. package/icons/sortamountupalt/sortamountupalt.d.ts +6 -0
  1374. package/icons/spinner/index.d.ts +5 -0
  1375. package/icons/spinner/public_api.d.ts +1 -0
  1376. package/icons/spinner/spinner.d.ts +6 -0
  1377. package/icons/star/index.d.ts +5 -0
  1378. package/icons/star/public_api.d.ts +1 -0
  1379. package/icons/star/star.d.ts +6 -0
  1380. package/icons/starfill/index.d.ts +5 -0
  1381. package/icons/starfill/public_api.d.ts +1 -0
  1382. package/icons/starfill/starfill.d.ts +6 -0
  1383. package/icons/thlarge/index.d.ts +5 -0
  1384. package/icons/thlarge/public_api.d.ts +1 -0
  1385. package/icons/thlarge/thlarge.d.ts +6 -0
  1386. package/icons/times/index.d.ts +5 -0
  1387. package/icons/times/public_api.d.ts +1 -0
  1388. package/icons/times/times.d.ts +6 -0
  1389. package/icons/timescircle/index.d.ts +5 -0
  1390. package/icons/timescircle/public_api.d.ts +1 -0
  1391. package/icons/timescircle/timescircle.d.ts +6 -0
  1392. package/icons/trash/index.d.ts +5 -0
  1393. package/icons/trash/public_api.d.ts +1 -0
  1394. package/icons/trash/trash.d.ts +6 -0
  1395. package/icons/undo/index.d.ts +5 -0
  1396. package/icons/undo/public_api.d.ts +1 -0
  1397. package/icons/undo/undo.d.ts +6 -0
  1398. package/icons/upload/index.d.ts +5 -0
  1399. package/icons/upload/public_api.d.ts +1 -0
  1400. package/icons/upload/upload.d.ts +6 -0
  1401. package/icons/windowmaximize/index.d.ts +5 -0
  1402. package/icons/windowmaximize/public_api.d.ts +1 -0
  1403. package/icons/windowmaximize/windowmaximize.d.ts +6 -0
  1404. package/icons/windowminimize/index.d.ts +5 -0
  1405. package/icons/windowminimize/public_api.d.ts +1 -0
  1406. package/icons/windowminimize/windowminimize.d.ts +6 -0
  1407. package/image/image.d.ts +81 -0
  1408. package/image/index.d.ts +5 -0
  1409. package/image/public_api.d.ts +1 -0
  1410. package/index.d.ts +5 -0
  1411. package/inplace/index.d.ts +5 -0
  1412. package/inplace/inplace.d.ts +45 -0
  1413. package/inplace/public_api.d.ts +1 -0
  1414. package/inputmask/index.d.ts +5 -0
  1415. package/inputmask/inputmask.d.ts +108 -0
  1416. package/inputmask/public_api.d.ts +1 -0
  1417. package/inputnumber/index.d.ts +5 -0
  1418. package/inputnumber/inputnumber.d.ts +177 -0
  1419. package/inputnumber/public_api.d.ts +1 -0
  1420. package/inputswitch/index.d.ts +5 -0
  1421. package/inputswitch/inputswitch.d.ts +47 -0
  1422. package/inputswitch/public_api.d.ts +1 -0
  1423. package/inputtext/index.d.ts +5 -0
  1424. package/inputtext/inputtext.d.ts +22 -0
  1425. package/inputtext/public_api.d.ts +1 -0
  1426. package/inputtextarea/index.d.ts +5 -0
  1427. package/inputtextarea/inputtextarea.d.ts +34 -0
  1428. package/inputtextarea/public_api.d.ts +1 -0
  1429. package/keyfilter/index.d.ts +5 -0
  1430. package/keyfilter/keyfilter.d.ts +39 -0
  1431. package/keyfilter/public_api.d.ts +1 -0
  1432. package/knob/index.d.ts +5 -0
  1433. package/knob/knob.d.ts +81 -0
  1434. package/knob/public_api.d.ts +1 -0
  1435. package/listbox/index.d.ts +5 -0
  1436. package/listbox/listbox.d.ts +125 -0
  1437. package/listbox/public_api.d.ts +1 -0
  1438. package/megamenu/index.d.ts +5 -0
  1439. package/megamenu/megamenu.d.ts +42 -0
  1440. package/megamenu/public_api.d.ts +1 -0
  1441. package/menu/index.d.ts +5 -0
  1442. package/menu/menu.d.ts +77 -0
  1443. package/menu/public_api.d.ts +1 -0
  1444. package/menubar/index.d.ts +5 -0
  1445. package/menubar/menubar.d.ts +97 -0
  1446. package/menubar/public_api.d.ts +1 -0
  1447. package/message/index.d.ts +5 -0
  1448. package/message/message.d.ts +21 -0
  1449. package/message/public_api.d.ts +1 -0
  1450. package/messages/index.d.ts +5 -0
  1451. package/messages/messages.d.ts +49 -0
  1452. package/messages/public_api.d.ts +1 -0
  1453. package/multiselect/index.d.ts +5 -0
  1454. package/multiselect/multiselect.d.ts +232 -0
  1455. package/multiselect/public_api.d.ts +1 -0
  1456. package/orderlist/index.d.ts +5 -0
  1457. package/orderlist/orderlist.d.ts +105 -0
  1458. package/orderlist/public_api.d.ts +1 -0
  1459. package/organizationchart/index.d.ts +5 -0
  1460. package/organizationchart/organizationchart.d.ts +63 -0
  1461. package/organizationchart/public_api.d.ts +1 -0
  1462. package/overlay/index.d.ts +5 -0
  1463. package/overlay/overlay.d.ts +118 -0
  1464. package/overlay/public_api.d.ts +1 -0
  1465. package/overlaypanel/index.d.ts +5 -0
  1466. package/overlaypanel/overlaypanel.d.ts +80 -0
  1467. package/overlaypanel/public_api.d.ts +1 -0
  1468. package/package.json +1267 -0
  1469. package/paginator/index.d.ts +5 -0
  1470. package/paginator/paginator.d.ts +79 -0
  1471. package/paginator/public_api.d.ts +1 -0
  1472. package/panel/index.d.ts +5 -0
  1473. package/panel/panel.d.ts +52 -0
  1474. package/panel/public_api.d.ts +1 -0
  1475. package/panelmenu/index.d.ts +5 -0
  1476. package/panelmenu/panelmenu.d.ts +66 -0
  1477. package/panelmenu/public_api.d.ts +1 -0
  1478. package/password/index.d.ts +5 -0
  1479. package/password/password.d.ts +168 -0
  1480. package/password/public_api.d.ts +1 -0
  1481. package/picklist/index.d.ts +5 -0
  1482. package/picklist/picklist.d.ts +183 -0
  1483. package/picklist/public_api.d.ts +1 -0
  1484. package/progressbar/index.d.ts +5 -0
  1485. package/progressbar/progressbar.d.ts +18 -0
  1486. package/progressbar/public_api.d.ts +1 -0
  1487. package/progressspinner/index.d.ts +5 -0
  1488. package/progressspinner/progressspinner.d.ts +16 -0
  1489. package/progressspinner/public_api.d.ts +1 -0
  1490. package/public_api.d.ts +2 -0
  1491. package/radiobutton/index.d.ts +5 -0
  1492. package/radiobutton/public_api.d.ts +1 -0
  1493. package/radiobutton/radiobutton.d.ts +62 -0
  1494. package/rating/index.d.ts +5 -0
  1495. package/rating/public_api.d.ts +1 -0
  1496. package/rating/rating.d.ts +52 -0
  1497. package/resources/components/accordion/accordion.css +33 -0
  1498. package/resources/components/autocomplete/autocomplete.css +100 -0
  1499. package/resources/components/avatar/avatar.css +26 -0
  1500. package/resources/components/avatargroup/avatargroup.css +8 -0
  1501. package/resources/components/badge/badge.css +32 -0
  1502. package/resources/components/blockui/blockui.css +24 -0
  1503. package/resources/components/breadcrumb/breadcrumb.css +25 -0
  1504. package/resources/components/button/button.css +69 -0
  1505. package/resources/components/calendar/calendar.css +171 -0
  1506. package/resources/components/card/card.css +3 -0
  1507. package/resources/components/carousel/carousel.css +69 -0
  1508. package/resources/components/cascadeselect/cascadeselect.css +96 -0
  1509. package/resources/components/checkbox/checkbox.css +28 -0
  1510. package/resources/components/chip/chip.css +24 -0
  1511. package/resources/components/chips/chips.css +66 -0
  1512. package/resources/components/colorpicker/colorpicker-images.css +7 -0
  1513. package/resources/components/colorpicker/colorpicker.css +81 -0
  1514. package/resources/components/colorpicker/images/color.png +0 -0
  1515. package/resources/components/colorpicker/images/hue.png +0 -0
  1516. package/resources/components/common/common.css +167 -0
  1517. package/resources/components/confirmpopup/confirmpopup.css +49 -0
  1518. package/resources/components/contextmenu/contextmenu.css +46 -0
  1519. package/resources/components/dataview/dataview.css +11 -0
  1520. package/resources/components/dialog/dialog.css +138 -0
  1521. package/resources/components/divider/divider.css +84 -0
  1522. package/resources/components/dock/dock.css +105 -0
  1523. package/resources/components/dropdown/dropdown.css +78 -0
  1524. package/resources/components/editor/editor.css +4 -0
  1525. package/resources/components/fieldset/fieldset.css +25 -0
  1526. package/resources/components/fileupload/fileupload.css +45 -0
  1527. package/resources/components/galleria/galleria.css +274 -0
  1528. package/resources/components/image/image.css +64 -0
  1529. package/resources/components/inplace/inplace.css +17 -0
  1530. package/resources/components/inputmask/inputmask.css +10 -0
  1531. package/resources/components/inputnumber/inputnumber.css +113 -0
  1532. package/resources/components/inputswitch/inputswitch.css +20 -0
  1533. package/resources/components/inputtext/inputtext.css +105 -0
  1534. package/resources/components/inputtextarea/inputtextarea.css +8 -0
  1535. package/resources/components/knob/knob.css +18 -0
  1536. package/resources/components/listbox/listbox.css +38 -0
  1537. package/resources/components/megamenu/megamenu.css +107 -0
  1538. package/resources/components/menu/menu.css +28 -0
  1539. package/resources/components/menubar/menubar.css +75 -0
  1540. package/resources/components/message/message.css +15 -0
  1541. package/resources/components/messages/messages.css +20 -0
  1542. package/resources/components/multiselect/multiselect.css +108 -0
  1543. package/resources/components/orderlist/orderlist.css +76 -0
  1544. package/resources/components/organizationchart/organizationchart.css +60 -0
  1545. package/resources/components/overlay/overlay.css +78 -0
  1546. package/resources/components/overlaypanel/overlaypanel.css +58 -0
  1547. package/resources/components/paginator/paginator.css +35 -0
  1548. package/resources/components/panel/panel.css +27 -0
  1549. package/resources/components/panelmenu/panelmenu.css +40 -0
  1550. package/resources/components/password/images/password-meter.png +0 -0
  1551. package/resources/components/password/password.css +44 -0
  1552. package/resources/components/picklist/picklist.css +58 -0
  1553. package/resources/components/progressbar/progressbar.css +96 -0
  1554. package/resources/components/progressspinner/progressspinner.css +72 -0
  1555. package/resources/components/radiobutton/radiobutton.css +36 -0
  1556. package/resources/components/rating/rating.css +11 -0
  1557. package/resources/components/ripple/ripple.css +27 -0
  1558. package/resources/components/scroller/scroller.css +56 -0
  1559. package/resources/components/scrollpanel/scrollpanel.css +48 -0
  1560. package/resources/components/scrolltop/scrolltop.css +16 -0
  1561. package/resources/components/sidebar/sidebar.css +104 -0
  1562. package/resources/components/skeleton/skeleton.css +33 -0
  1563. package/resources/components/slidemenu/slidemenu.css +99 -0
  1564. package/resources/components/slider/slider.css +39 -0
  1565. package/resources/components/speeddial/speeddial.css +110 -0
  1566. package/resources/components/spinner/spinner.css +61 -0
  1567. package/resources/components/splitbutton/splitbutton.css +31 -0
  1568. package/resources/components/splitter/splitter.css +62 -0
  1569. package/resources/components/steps/steps.css +47 -0
  1570. package/resources/components/table/table.css +242 -0
  1571. package/resources/components/tabmenu/tabmenu.css +78 -0
  1572. package/resources/components/tabview/tabview.css +73 -0
  1573. package/resources/components/tag/tag.css +15 -0
  1574. package/resources/components/terminal/terminal.css +22 -0
  1575. package/resources/components/tieredmenu/tieredmenu.css +49 -0
  1576. package/resources/components/timeline/timeline.css +110 -0
  1577. package/resources/components/toast/toast.css +68 -0
  1578. package/resources/components/toolbar/toolbar.css +17 -0
  1579. package/resources/components/tooltip/tooltip.css +61 -0
  1580. package/resources/components/tree/images/line.gif +0 -0
  1581. package/resources/components/tree/tree.css +156 -0
  1582. package/resources/components/treeselect/treeselect.css +95 -0
  1583. package/resources/components/treetable/treetable.css +203 -0
  1584. package/resources/images/color.png +0 -0
  1585. package/resources/images/hue.png +0 -0
  1586. package/resources/images/line.gif +0 -0
  1587. package/resources/images/password-meter.png +0 -0
  1588. package/resources/parallel-ui-angular.css +588 -0
  1589. package/resources/parallel-ui-angular.min.css +1 -0
  1590. package/resources/themes/arya-blue/theme.css +7757 -0
  1591. package/resources/themes/arya-green/theme.css +7757 -0
  1592. package/resources/themes/arya-orange/theme.css +7757 -0
  1593. package/resources/themes/arya-purple/theme.css +7757 -0
  1594. package/resources/themes/bootstrap4-dark-blue/theme.css +7763 -0
  1595. package/resources/themes/bootstrap4-dark-purple/theme.css +7763 -0
  1596. package/resources/themes/bootstrap4-light-blue/theme.css +7763 -0
  1597. package/resources/themes/bootstrap4-light-purple/theme.css +7763 -0
  1598. package/resources/themes/fluent-light/theme.css +7905 -0
  1599. package/resources/themes/lara-dark-blue/theme.css +7737 -0
  1600. package/resources/themes/lara-dark-indigo/theme.css +7737 -0
  1601. package/resources/themes/lara-dark-purple/theme.css +7737 -0
  1602. package/resources/themes/lara-dark-teal/theme.css +7737 -0
  1603. package/resources/themes/lara-light-blue/theme.css +7737 -0
  1604. package/resources/themes/lara-light-indigo/theme.css +7737 -0
  1605. package/resources/themes/lara-light-purple/theme.css +7737 -0
  1606. package/resources/themes/lara-light-teal/theme.css +7737 -0
  1607. package/resources/themes/luna-amber/theme.css +7686 -0
  1608. package/resources/themes/luna-blue/theme.css +7686 -0
  1609. package/resources/themes/luna-green/theme.css +7686 -0
  1610. package/resources/themes/luna-pink/theme.css +7686 -0
  1611. package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
  1612. package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
  1613. package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
  1614. package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
  1615. package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
  1616. package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
  1617. package/resources/themes/md-dark-deeppurple/theme.css +9765 -0
  1618. package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
  1619. package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
  1620. package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
  1621. package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
  1622. package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
  1623. package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
  1624. package/resources/themes/md-dark-indigo/theme.css +9765 -0
  1625. package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
  1626. package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
  1627. package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
  1628. package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
  1629. package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
  1630. package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
  1631. package/resources/themes/md-light-deeppurple/theme.css +9765 -0
  1632. package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
  1633. package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
  1634. package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
  1635. package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
  1636. package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
  1637. package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
  1638. package/resources/themes/md-light-indigo/theme.css +9765 -0
  1639. package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
  1640. package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
  1641. package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
  1642. package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
  1643. package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
  1644. package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
  1645. package/resources/themes/mdc-dark-deeppurple/theme.css +9765 -0
  1646. package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
  1647. package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
  1648. package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
  1649. package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
  1650. package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
  1651. package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
  1652. package/resources/themes/mdc-dark-indigo/theme.css +9765 -0
  1653. package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
  1654. package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
  1655. package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
  1656. package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
  1657. package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
  1658. package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
  1659. package/resources/themes/mdc-light-deeppurple/theme.css +9765 -0
  1660. package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
  1661. package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
  1662. package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
  1663. package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
  1664. package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
  1665. package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
  1666. package/resources/themes/mdc-light-indigo/theme.css +9765 -0
  1667. package/resources/themes/mira/fonts/Inter-Bold.woff +0 -0
  1668. package/resources/themes/mira/fonts/Inter-Bold.woff2 +0 -0
  1669. package/resources/themes/mira/fonts/Inter-Medium.woff +0 -0
  1670. package/resources/themes/mira/fonts/Inter-Medium.woff2 +0 -0
  1671. package/resources/themes/mira/fonts/Inter-Regular.woff +0 -0
  1672. package/resources/themes/mira/fonts/Inter-Regular.woff2 +0 -0
  1673. package/resources/themes/mira/fonts/Inter-SemiBold.woff +0 -0
  1674. package/resources/themes/mira/fonts/Inter-SemiBold.woff2 +0 -0
  1675. package/resources/themes/mira/theme.css +7990 -0
  1676. package/resources/themes/nano/theme.css +7736 -0
  1677. package/resources/themes/nova/theme.css +7702 -0
  1678. package/resources/themes/nova-accent/theme.css +7714 -0
  1679. package/resources/themes/nova-alt/theme.css +7714 -0
  1680. package/resources/themes/rhea/theme.css +7690 -0
  1681. package/resources/themes/saga-blue/theme.css +7753 -0
  1682. package/resources/themes/saga-green/theme.css +7753 -0
  1683. package/resources/themes/saga-orange/theme.css +7753 -0
  1684. package/resources/themes/saga-purple/theme.css +7753 -0
  1685. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-300.woff +0 -0
  1686. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-300.woff2 +0 -0
  1687. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-700.woff +0 -0
  1688. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-700.woff2 +0 -0
  1689. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-regular.woff +0 -0
  1690. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-regular.woff2 +0 -0
  1691. package/resources/themes/soho-dark/theme.css +7719 -0
  1692. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-300.woff +0 -0
  1693. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-300.woff2 +0 -0
  1694. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-700.woff +0 -0
  1695. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-700.woff2 +0 -0
  1696. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-regular.woff +0 -0
  1697. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-regular.woff2 +0 -0
  1698. package/resources/themes/soho-light/theme.css +7785 -0
  1699. package/resources/themes/tailwind-light/fonts/Inter-Bold.woff +0 -0
  1700. package/resources/themes/tailwind-light/fonts/Inter-Bold.woff2 +0 -0
  1701. package/resources/themes/tailwind-light/fonts/Inter-Light.woff +0 -0
  1702. package/resources/themes/tailwind-light/fonts/Inter-Light.woff2 +0 -0
  1703. package/resources/themes/tailwind-light/fonts/Inter-Medium.woff +0 -0
  1704. package/resources/themes/tailwind-light/fonts/Inter-Medium.woff2 +0 -0
  1705. package/resources/themes/tailwind-light/fonts/Inter-Regular.woff +0 -0
  1706. package/resources/themes/tailwind-light/fonts/Inter-Regular.woff2 +0 -0
  1707. package/resources/themes/tailwind-light/fonts/Inter-SemiBold.woff +0 -0
  1708. package/resources/themes/tailwind-light/fonts/Inter-SemiBold.woff2 +0 -0
  1709. package/resources/themes/tailwind-light/theme.css +7867 -0
  1710. package/resources/themes/vela-blue/theme.css +7757 -0
  1711. package/resources/themes/vela-green/theme.css +7757 -0
  1712. package/resources/themes/vela-orange/theme.css +7757 -0
  1713. package/resources/themes/vela-purple/theme.css +7757 -0
  1714. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-300.woff +0 -0
  1715. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-300.woff2 +0 -0
  1716. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-600.woff +0 -0
  1717. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-600.woff2 +0 -0
  1718. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-700.woff +0 -0
  1719. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-700.woff2 +0 -0
  1720. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-regular.woff +0 -0
  1721. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-regular.woff2 +0 -0
  1722. package/resources/themes/viva-dark/theme.css +7910 -0
  1723. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-300.woff +0 -0
  1724. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-300.woff2 +0 -0
  1725. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-600.woff +0 -0
  1726. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-600.woff2 +0 -0
  1727. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-700.woff +0 -0
  1728. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-700.woff2 +0 -0
  1729. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-regular.woff +0 -0
  1730. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-regular.woff2 +0 -0
  1731. package/resources/themes/viva-light/theme.css +7910 -0
  1732. package/ripple/index.d.ts +5 -0
  1733. package/ripple/public_api.d.ts +1 -0
  1734. package/ripple/ripple.d.ts +31 -0
  1735. package/scroller/index.d.ts +5 -0
  1736. package/scroller/public_api.d.ts +1 -0
  1737. package/scroller/scroller.d.ts +251 -0
  1738. package/scrollpanel/index.d.ts +5 -0
  1739. package/scrollpanel/public_api.d.ts +1 -0
  1740. package/scrollpanel/scrollpanel.d.ts +59 -0
  1741. package/scrolltop/index.d.ts +5 -0
  1742. package/scrolltop/public_api.d.ts +1 -0
  1743. package/scrolltop/scrolltop.d.ts +53 -0
  1744. package/selectbutton/index.d.ts +5 -0
  1745. package/selectbutton/public_api.d.ts +1 -0
  1746. package/selectbutton/selectbutton.d.ts +45 -0
  1747. package/sidebar/index.d.ts +5 -0
  1748. package/sidebar/public_api.d.ts +1 -0
  1749. package/sidebar/sidebar.d.ts +75 -0
  1750. package/skeleton/index.d.ts +5 -0
  1751. package/skeleton/public_api.d.ts +1 -0
  1752. package/skeleton/skeleton.d.ts +25 -0
  1753. package/slidemenu/index.d.ts +5 -0
  1754. package/slidemenu/public_api.d.ts +1 -0
  1755. package/slidemenu/slidemenu.d.ts +112 -0
  1756. package/slider/index.d.ts +5 -0
  1757. package/slider/public_api.d.ts +1 -0
  1758. package/slider/slider.d.ts +92 -0
  1759. package/speeddial/index.d.ts +5 -0
  1760. package/speeddial/public_api.d.ts +1 -0
  1761. package/speeddial/speeddial.d.ts +137 -0
  1762. package/spinner/index.d.ts +5 -0
  1763. package/spinner/public_api.d.ts +1 -0
  1764. package/spinner/spinner.d.ts +80 -0
  1765. package/splitbutton/index.d.ts +5 -0
  1766. package/splitbutton/public_api.d.ts +1 -0
  1767. package/splitbutton/splitbutton.d.ts +45 -0
  1768. package/splitter/index.d.ts +5 -0
  1769. package/splitter/public_api.d.ts +1 -0
  1770. package/splitter/splitter.d.ts +88 -0
  1771. package/steps/index.d.ts +5 -0
  1772. package/steps/public_api.d.ts +1 -0
  1773. package/steps/steps.d.ts +33 -0
  1774. package/styleclass/index.d.ts +5 -0
  1775. package/styleclass/public_api.d.ts +1 -0
  1776. package/styleclass/styleclass.d.ts +45 -0
  1777. package/table/index.d.ts +5 -0
  1778. package/table/public_api.d.ts +1 -0
  1779. package/table/table.d.ts +890 -0
  1780. package/tabmenu/index.d.ts +5 -0
  1781. package/tabmenu/public_api.d.ts +1 -0
  1782. package/tabmenu/tabmenu.d.ts +61 -0
  1783. package/tabview/index.d.ts +5 -0
  1784. package/tabview/public_api.d.ts +1 -0
  1785. package/tabview/tabview.d.ts +110 -0
  1786. package/tag/index.d.ts +5 -0
  1787. package/tag/public_api.d.ts +1 -0
  1788. package/tag/tag.d.ts +30 -0
  1789. package/terminal/index.d.ts +5 -0
  1790. package/terminal/public_api.d.ts +2 -0
  1791. package/terminal/terminal.d.ts +34 -0
  1792. package/terminal/terminalservice.d.ts +11 -0
  1793. package/tieredmenu/index.d.ts +5 -0
  1794. package/tieredmenu/public_api.d.ts +1 -0
  1795. package/tieredmenu/tieredmenu.d.ts +109 -0
  1796. package/timeline/index.d.ts +5 -0
  1797. package/timeline/public_api.d.ts +1 -0
  1798. package/timeline/timeline.d.ts +27 -0
  1799. package/toast/index.d.ts +5 -0
  1800. package/toast/public_api.d.ts +1 -0
  1801. package/toast/toast.d.ts +87 -0
  1802. package/togglebutton/index.d.ts +5 -0
  1803. package/togglebutton/public_api.d.ts +1 -0
  1804. package/togglebutton/togglebutton.d.ts +40 -0
  1805. package/toolbar/index.d.ts +5 -0
  1806. package/toolbar/public_api.d.ts +1 -0
  1807. package/toolbar/toolbar.d.ts +23 -0
  1808. package/tooltip/index.d.ts +5 -0
  1809. package/tooltip/public_api.d.ts +1 -0
  1810. package/tooltip/tooltip.d.ts +115 -0
  1811. package/tree/index.d.ts +5 -0
  1812. package/tree/public_api.d.ts +1 -0
  1813. package/tree/tree.d.ts +207 -0
  1814. package/treeselect/index.d.ts +5 -0
  1815. package/treeselect/public_api.d.ts +1 -0
  1816. package/treeselect/treeselect.d.ts +149 -0
  1817. package/treetable/index.d.ts +5 -0
  1818. package/treetable/public_api.d.ts +1 -0
  1819. package/treetable/treetable.d.ts +542 -0
  1820. package/tristatecheckbox/index.d.ts +5 -0
  1821. package/tristatecheckbox/public_api.d.ts +1 -0
  1822. package/tristatecheckbox/tristatecheckbox.d.ts +49 -0
  1823. package/utils/index.d.ts +5 -0
  1824. package/utils/objectutils.d.ts +17 -0
  1825. package/utils/public_api.d.ts +4 -0
  1826. package/utils/uniquecomponentid.d.ts +2 -0
  1827. package/utils/zindexutils.d.ts +7 -0
  1828. package/virtualscroller/index.d.ts +5 -0
  1829. package/virtualscroller/public_api.d.ts +1 -0
  1830. package/virtualscroller/virtualscroller.d.ts +41 -0
@@ -0,0 +1,782 @@
1
+ import { animate, style, transition, trigger } from '@angular/animations';
2
+ import { CommonModule, DOCUMENT, isPlatformBrowser } from '@angular/common';
3
+ import { ChangeDetectionStrategy, Component, ContentChildren, Directive, EventEmitter, forwardRef, HostListener, Inject, Input, NgModule, Output, Pipe, PLATFORM_ID, ViewChild, ViewEncapsulation } from '@angular/core';
4
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
5
+ import { QiusTemplate, SharedModule, TranslationKeys } from '@qius.solutions/parallel-ui-angular/api';
6
+ import { ConnectedOverlayScrollHandler, DomHandler } from '@qius.solutions/parallel-ui-angular/dom';
7
+ import { InputTextModule } from '@qius.solutions/parallel-ui-angular/inputtext';
8
+ import { ZIndexUtils } from '@qius.solutions/parallel-ui-angular/utils';
9
+ import { TimesIcon } from '@qius.solutions/parallel-ui-angular/icons/times';
10
+ import { EyeSlashIcon } from '@qius.solutions/parallel-ui-angular/icons/eyeslash';
11
+ import { EyeIcon } from '@qius.solutions/parallel-ui-angular/icons/eye';
12
+ import * as i0 from "@angular/core";
13
+ import * as i1 from "@qius.solutions/parallel-ui-angular/api";
14
+ import * as i2 from "@angular/common";
15
+ import * as i3 from "@qius.solutions/parallel-ui-angular/inputtext";
16
+ export class PasswordDirective {
17
+ constructor(document, platformId, renderer, el, zone) {
18
+ this.document = document;
19
+ this.platformId = platformId;
20
+ this.renderer = renderer;
21
+ this.el = el;
22
+ this.zone = zone;
23
+ this.promptLabel = 'Enter a password';
24
+ this.weakLabel = 'Weak';
25
+ this.mediumLabel = 'Medium';
26
+ this.strongLabel = 'Strong';
27
+ this.feedback = true;
28
+ }
29
+ set showPassword(show) {
30
+ this.el.nativeElement.type = show ? 'text' : 'password';
31
+ }
32
+ ngDoCheck() {
33
+ this.updateFilledState();
34
+ }
35
+ onInput(e) {
36
+ this.updateFilledState();
37
+ }
38
+ updateFilledState() {
39
+ this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;
40
+ }
41
+ createPanel() {
42
+ if (isPlatformBrowser(this.platformId)) {
43
+ this.panel = this.renderer.createElement('div');
44
+ this.renderer.addClass(this.panel, 'p-password-panel');
45
+ this.renderer.addClass(this.panel, 'p-component');
46
+ this.renderer.addClass(this.panel, 'p-password-panel-overlay');
47
+ this.renderer.addClass(this.panel, 'p-connected-overlay');
48
+ this.meter = this.renderer.createElement('div');
49
+ this.renderer.addClass(this.meter, 'p-password-meter');
50
+ this.renderer.appendChild(this.panel, this.meter);
51
+ this.info = this.renderer.createElement('div');
52
+ this.renderer.addClass(this.info, 'p-password-info');
53
+ this.renderer.setProperty(this.info, 'textContent', this.promptLabel);
54
+ this.renderer.appendChild(this.panel, this.info);
55
+ this.renderer.setStyle(this.panel, 'minWidth', `${this.el.nativeElement.offsetWidth}px`);
56
+ this.renderer.appendChild(document.body, this.panel);
57
+ }
58
+ }
59
+ showOverlay() {
60
+ if (this.feedback) {
61
+ if (!this.panel) {
62
+ this.createPanel();
63
+ }
64
+ this.renderer.setStyle(this.panel, 'zIndex', String(++DomHandler.zindex));
65
+ this.renderer.setStyle(this.panel, 'display', 'block');
66
+ this.zone.runOutsideAngular(() => {
67
+ setTimeout(() => {
68
+ DomHandler.addClass(this.panel, 'p-connected-overlay-visible');
69
+ this.bindScrollListener();
70
+ this.bindDocumentResizeListener();
71
+ }, 1);
72
+ });
73
+ DomHandler.absolutePosition(this.panel, this.el.nativeElement);
74
+ }
75
+ }
76
+ hideOverlay() {
77
+ if (this.feedback && this.panel) {
78
+ DomHandler.addClass(this.panel, 'p-connected-overlay-hidden');
79
+ DomHandler.removeClass(this.panel, 'p-connected-overlay-visible');
80
+ this.unbindScrollListener();
81
+ this.unbindDocumentResizeListener();
82
+ this.zone.runOutsideAngular(() => {
83
+ setTimeout(() => {
84
+ this.ngOnDestroy();
85
+ }, 150);
86
+ });
87
+ }
88
+ }
89
+ onFocus() {
90
+ this.showOverlay();
91
+ }
92
+ onBlur() {
93
+ this.hideOverlay();
94
+ }
95
+ onKeyup(e) {
96
+ if (this.feedback) {
97
+ let value = e.target.value, label = null, meterPos = null;
98
+ if (value.length === 0) {
99
+ label = this.promptLabel;
100
+ meterPos = '0px 0px';
101
+ }
102
+ else {
103
+ var score = this.testStrength(value);
104
+ if (score < 30) {
105
+ label = this.weakLabel;
106
+ meterPos = '0px -10px';
107
+ }
108
+ else if (score >= 30 && score < 80) {
109
+ label = this.mediumLabel;
110
+ meterPos = '0px -20px';
111
+ }
112
+ else if (score >= 80) {
113
+ label = this.strongLabel;
114
+ meterPos = '0px -30px';
115
+ }
116
+ }
117
+ if (!this.panel || !DomHandler.hasClass(this.panel, 'p-connected-overlay-visible')) {
118
+ this.showOverlay();
119
+ }
120
+ this.renderer.setStyle(this.meter, 'backgroundPosition', meterPos);
121
+ this.info.textContent = label;
122
+ }
123
+ }
124
+ testStrength(str) {
125
+ let grade = 0;
126
+ let val;
127
+ val = str.match('[0-9]');
128
+ grade += this.normalize(val ? val.length : 1 / 4, 1) * 25;
129
+ val = str.match('[a-zA-Z]');
130
+ grade += this.normalize(val ? val.length : 1 / 2, 3) * 10;
131
+ val = str.match('[!@#$%^&*?_~.,;=]');
132
+ grade += this.normalize(val ? val.length : 1 / 6, 1) * 35;
133
+ val = str.match('[A-Z]');
134
+ grade += this.normalize(val ? val.length : 1 / 6, 1) * 30;
135
+ grade *= str.length / 8;
136
+ return grade > 100 ? 100 : grade;
137
+ }
138
+ normalize(x, y) {
139
+ let diff = x - y;
140
+ if (diff <= 0)
141
+ return x / y;
142
+ else
143
+ return 1 + 0.5 * (x / (x + y / 4));
144
+ }
145
+ get disabled() {
146
+ return this.el.nativeElement.disabled;
147
+ }
148
+ bindScrollListener() {
149
+ if (!this.scrollHandler) {
150
+ this.scrollHandler = new ConnectedOverlayScrollHandler(this.el.nativeElement, () => {
151
+ if (DomHandler.hasClass(this.panel, 'p-connected-overlay-visible')) {
152
+ this.hideOverlay();
153
+ }
154
+ });
155
+ }
156
+ this.scrollHandler.bindScrollListener();
157
+ }
158
+ unbindScrollListener() {
159
+ if (this.scrollHandler) {
160
+ this.scrollHandler.unbindScrollListener();
161
+ }
162
+ }
163
+ bindDocumentResizeListener() {
164
+ if (isPlatformBrowser(this.platformId)) {
165
+ if (!this.documentResizeListener) {
166
+ const window = this.document.defaultView;
167
+ this.documentResizeListener = this.renderer.listen(window, 'resize', this.onWindowResize.bind(this));
168
+ }
169
+ }
170
+ }
171
+ unbindDocumentResizeListener() {
172
+ if (this.documentResizeListener) {
173
+ this.documentResizeListener();
174
+ this.documentResizeListener = null;
175
+ }
176
+ }
177
+ onWindowResize() {
178
+ if (!DomHandler.isTouchDevice()) {
179
+ this.hideOverlay();
180
+ }
181
+ }
182
+ ngOnDestroy() {
183
+ if (this.panel) {
184
+ if (this.scrollHandler) {
185
+ this.scrollHandler.destroy();
186
+ this.scrollHandler = null;
187
+ }
188
+ this.unbindDocumentResizeListener();
189
+ this.renderer.removeChild(this.document.body, this.panel);
190
+ this.panel = null;
191
+ this.meter = null;
192
+ this.info = null;
193
+ }
194
+ }
195
+ }
196
+ PasswordDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PasswordDirective, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
197
+ PasswordDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: PasswordDirective, selector: "[pPassword]", inputs: { promptLabel: "promptLabel", weakLabel: "weakLabel", mediumLabel: "mediumLabel", strongLabel: "strongLabel", feedback: "feedback", showPassword: "showPassword" }, host: { listeners: { "input": "onInput($event)", "focus": "onFocus()", "blur": "onBlur()", "keyup": "onKeyup($event)" }, properties: { "class.p-filled": "filled" }, classAttribute: "p-inputtext p-component p-element" }, ngImport: i0 });
198
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PasswordDirective, decorators: [{
199
+ type: Directive,
200
+ args: [{
201
+ selector: '[pPassword]',
202
+ host: {
203
+ class: 'p-inputtext p-component p-element',
204
+ '[class.p-filled]': 'filled'
205
+ }
206
+ }]
207
+ }], ctorParameters: function () { return [{ type: Document, decorators: [{
208
+ type: Inject,
209
+ args: [DOCUMENT]
210
+ }] }, { type: undefined, decorators: [{
211
+ type: Inject,
212
+ args: [PLATFORM_ID]
213
+ }] }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { promptLabel: [{
214
+ type: Input
215
+ }], weakLabel: [{
216
+ type: Input
217
+ }], mediumLabel: [{
218
+ type: Input
219
+ }], strongLabel: [{
220
+ type: Input
221
+ }], feedback: [{
222
+ type: Input
223
+ }], showPassword: [{
224
+ type: Input
225
+ }], onInput: [{
226
+ type: HostListener,
227
+ args: ['input', ['$event']]
228
+ }], onFocus: [{
229
+ type: HostListener,
230
+ args: ['focus']
231
+ }], onBlur: [{
232
+ type: HostListener,
233
+ args: ['blur']
234
+ }], onKeyup: [{
235
+ type: HostListener,
236
+ args: ['keyup', ['$event']]
237
+ }] } });
238
+ export class MapperPipe {
239
+ transform(value, mapper, ...args) {
240
+ return mapper(value, ...args);
241
+ }
242
+ }
243
+ MapperPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapperPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
244
+ MapperPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: MapperPipe, name: "mapper" });
245
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapperPipe, decorators: [{
246
+ type: Pipe,
247
+ args: [{
248
+ name: 'mapper',
249
+ pure: true
250
+ }]
251
+ }] });
252
+ export const Password_VALUE_ACCESSOR = {
253
+ provide: NG_VALUE_ACCESSOR,
254
+ useExisting: forwardRef(() => Password),
255
+ multi: true
256
+ };
257
+ export class Password {
258
+ constructor(document, platformId, renderer, cd, config, el, overlayService) {
259
+ this.document = document;
260
+ this.platformId = platformId;
261
+ this.renderer = renderer;
262
+ this.cd = cd;
263
+ this.config = config;
264
+ this.el = el;
265
+ this.overlayService = overlayService;
266
+ this.mediumRegex = '^(((?=.*[a-z])(?=.*[A-Z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[A-Z])(?=.*[0-9])))(?=.{6,})';
267
+ this.strongRegex = '^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.{8,})';
268
+ this.feedback = true;
269
+ this.showTransitionOptions = '.12s cubic-bezier(0, 0, 0.2, 1)';
270
+ this.hideTransitionOptions = '.1s linear';
271
+ this.showClear = false;
272
+ this.onFocus = new EventEmitter();
273
+ this.onBlur = new EventEmitter();
274
+ this.onClear = new EventEmitter();
275
+ this.overlayVisible = false;
276
+ this.focused = false;
277
+ this.unmasked = false;
278
+ this.value = null;
279
+ this.onModelChange = () => { };
280
+ this.onModelTouched = () => { };
281
+ }
282
+ ngAfterContentInit() {
283
+ this.templates.forEach((item) => {
284
+ switch (item.getType()) {
285
+ case 'content':
286
+ this.contentTemplate = item.template;
287
+ break;
288
+ case 'header':
289
+ this.headerTemplate = item.template;
290
+ break;
291
+ case 'footer':
292
+ this.footerTemplate = item.template;
293
+ break;
294
+ case 'clearicon':
295
+ this.clearIconTemplate = item.template;
296
+ break;
297
+ case 'hideicon':
298
+ this.hideIconTemplate = item.template;
299
+ break;
300
+ case 'showicon':
301
+ this.showIconTemplate = item.template;
302
+ break;
303
+ default:
304
+ this.contentTemplate = item.template;
305
+ break;
306
+ }
307
+ });
308
+ }
309
+ ngOnInit() {
310
+ this.infoText = this.promptText();
311
+ this.mediumCheckRegExp = new RegExp(this.mediumRegex);
312
+ this.strongCheckRegExp = new RegExp(this.strongRegex);
313
+ this.translationSubscription = this.config.translationObserver.subscribe(() => {
314
+ this.updateUI(this.value || '');
315
+ });
316
+ }
317
+ onAnimationStart(event) {
318
+ switch (event.toState) {
319
+ case 'visible':
320
+ this.overlay = event.element;
321
+ ZIndexUtils.set('overlay', this.overlay, this.config.zIndex.overlay);
322
+ this.appendContainer();
323
+ this.alignOverlay();
324
+ this.bindScrollListener();
325
+ this.bindResizeListener();
326
+ break;
327
+ case 'void':
328
+ this.unbindScrollListener();
329
+ this.unbindResizeListener();
330
+ this.overlay = null;
331
+ break;
332
+ }
333
+ }
334
+ onAnimationEnd(event) {
335
+ switch (event.toState) {
336
+ case 'void':
337
+ ZIndexUtils.clear(event.element);
338
+ break;
339
+ }
340
+ }
341
+ appendContainer() {
342
+ if (this.appendTo) {
343
+ if (this.appendTo === 'body')
344
+ this.renderer.appendChild(this.document.body, this.overlay);
345
+ else
346
+ this.document.getElementById(this.appendTo).appendChild(this.overlay);
347
+ }
348
+ }
349
+ alignOverlay() {
350
+ if (this.appendTo) {
351
+ this.overlay.style.minWidth = DomHandler.getOuterWidth(this.input.nativeElement) + 'px';
352
+ DomHandler.absolutePosition(this.overlay, this.input.nativeElement);
353
+ }
354
+ else {
355
+ DomHandler.relativePosition(this.overlay, this.input.nativeElement);
356
+ }
357
+ }
358
+ onInput(event) {
359
+ this.value = event.target.value;
360
+ this.onModelChange(this.value);
361
+ }
362
+ onInputFocus(event) {
363
+ this.focused = true;
364
+ if (this.feedback) {
365
+ this.overlayVisible = true;
366
+ }
367
+ this.onFocus.emit(event);
368
+ }
369
+ onInputBlur(event) {
370
+ this.focused = false;
371
+ if (this.feedback) {
372
+ this.overlayVisible = false;
373
+ }
374
+ this.onModelTouched();
375
+ this.onBlur.emit(event);
376
+ }
377
+ onKeyDown(event) {
378
+ if (event.key === 'Escape') {
379
+ this.overlayVisible = false;
380
+ }
381
+ }
382
+ onKeyUp(event) {
383
+ if (this.feedback) {
384
+ let value = event.target.value;
385
+ this.updateUI(value);
386
+ if (!this.overlayVisible) {
387
+ this.overlayVisible = true;
388
+ }
389
+ }
390
+ }
391
+ updateUI(value) {
392
+ let label = null;
393
+ let meter = null;
394
+ switch (this.testStrength(value)) {
395
+ case 1:
396
+ label = this.weakText();
397
+ meter = {
398
+ strength: 'weak',
399
+ width: '33.33%'
400
+ };
401
+ break;
402
+ case 2:
403
+ label = this.mediumText();
404
+ meter = {
405
+ strength: 'medium',
406
+ width: '66.66%'
407
+ };
408
+ break;
409
+ case 3:
410
+ label = this.strongText();
411
+ meter = {
412
+ strength: 'strong',
413
+ width: '100%'
414
+ };
415
+ break;
416
+ default:
417
+ label = this.promptText();
418
+ meter = null;
419
+ break;
420
+ }
421
+ this.meter = meter;
422
+ this.infoText = label;
423
+ }
424
+ onMaskToggle() {
425
+ this.unmasked = !this.unmasked;
426
+ }
427
+ onOverlayClick(event) {
428
+ this.overlayService.add({
429
+ originalEvent: event,
430
+ target: this.el.nativeElement
431
+ });
432
+ }
433
+ testStrength(str) {
434
+ let level = 0;
435
+ if (this.strongCheckRegExp.test(str))
436
+ level = 3;
437
+ else if (this.mediumCheckRegExp.test(str))
438
+ level = 2;
439
+ else if (str.length)
440
+ level = 1;
441
+ return level;
442
+ }
443
+ writeValue(value) {
444
+ if (value === undefined)
445
+ this.value = null;
446
+ else
447
+ this.value = value;
448
+ if (this.feedback)
449
+ this.updateUI(this.value || '');
450
+ this.cd.markForCheck();
451
+ }
452
+ registerOnChange(fn) {
453
+ this.onModelChange = fn;
454
+ }
455
+ registerOnTouched(fn) {
456
+ this.onModelTouched = fn;
457
+ }
458
+ setDisabledState(val) {
459
+ this.disabled = val;
460
+ this.cd.markForCheck();
461
+ }
462
+ bindScrollListener() {
463
+ if (isPlatformBrowser(this.platformId)) {
464
+ if (!this.scrollHandler) {
465
+ this.scrollHandler = new ConnectedOverlayScrollHandler(this.input.nativeElement, () => {
466
+ if (this.overlayVisible) {
467
+ this.overlayVisible = false;
468
+ }
469
+ });
470
+ }
471
+ this.scrollHandler.bindScrollListener();
472
+ }
473
+ }
474
+ bindResizeListener() {
475
+ if (isPlatformBrowser(this.platformId)) {
476
+ if (!this.resizeListener) {
477
+ const window = this.document.defaultView;
478
+ this.resizeListener = this.renderer.listen(window, 'resize', () => {
479
+ if (this.overlayVisible && !DomHandler.isTouchDevice()) {
480
+ this.overlayVisible = false;
481
+ }
482
+ });
483
+ }
484
+ }
485
+ }
486
+ unbindScrollListener() {
487
+ if (this.scrollHandler) {
488
+ this.scrollHandler.unbindScrollListener();
489
+ }
490
+ }
491
+ unbindResizeListener() {
492
+ if (this.resizeListener) {
493
+ this.resizeListener();
494
+ this.resizeListener = null;
495
+ }
496
+ }
497
+ containerClass(toggleMask) {
498
+ return { 'p-password p-component p-inputwrapper': true, 'p-input-icon-right': toggleMask };
499
+ }
500
+ inputFieldClass(disabled) {
501
+ return { 'p-password-input': true, 'p-disabled': disabled };
502
+ }
503
+ strengthClass(meter) {
504
+ return `p-password-strength ${meter ? meter.strength : ''}`;
505
+ }
506
+ filled() {
507
+ return this.value != null && this.value.toString().length > 0;
508
+ }
509
+ promptText() {
510
+ return this.promptLabel || this.getTranslation(TranslationKeys.PASSWORD_PROMPT);
511
+ }
512
+ weakText() {
513
+ return this.weakLabel || this.getTranslation(TranslationKeys.WEAK);
514
+ }
515
+ mediumText() {
516
+ return this.mediumLabel || this.getTranslation(TranslationKeys.MEDIUM);
517
+ }
518
+ strongText() {
519
+ return this.strongLabel || this.getTranslation(TranslationKeys.STRONG);
520
+ }
521
+ restoreAppend() {
522
+ if (this.overlay && this.appendTo) {
523
+ if (this.appendTo === 'body')
524
+ this.renderer.removeChild(this.document.body, this.overlay);
525
+ else
526
+ this.document.getElementById(this.appendTo).removeChild(this.overlay);
527
+ }
528
+ }
529
+ inputType(unmasked) {
530
+ return unmasked ? 'text' : 'password';
531
+ }
532
+ getTranslation(option) {
533
+ return this.config.getTranslation(option);
534
+ }
535
+ clear() {
536
+ this.value = null;
537
+ this.onModelChange(this.value);
538
+ this.writeValue(this.value);
539
+ this.onClear.emit();
540
+ }
541
+ ngOnDestroy() {
542
+ if (this.overlay) {
543
+ ZIndexUtils.clear(this.overlay);
544
+ this.overlay = null;
545
+ }
546
+ this.restoreAppend();
547
+ this.unbindResizeListener();
548
+ if (this.scrollHandler) {
549
+ this.scrollHandler.destroy();
550
+ this.scrollHandler = null;
551
+ }
552
+ if (this.translationSubscription) {
553
+ this.translationSubscription.unsubscribe();
554
+ }
555
+ }
556
+ }
557
+ Password.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: Password, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i1.ParallelUIAngularConfig }, { token: i0.ElementRef }, { token: i1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
558
+ Password.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: Password, selector: "p-password", inputs: { ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", label: "label", disabled: "disabled", promptLabel: "promptLabel", mediumRegex: "mediumRegex", strongRegex: "strongRegex", weakLabel: "weakLabel", mediumLabel: "mediumLabel", maxLength: "maxLength", strongLabel: "strongLabel", inputId: "inputId", feedback: "feedback", appendTo: "appendTo", toggleMask: "toggleMask", inputStyleClass: "inputStyleClass", panelStyle: "panelStyle", panelStyleClass: "panelStyleClass", styleClass: "styleClass", style: "style", inputStyle: "inputStyle", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", placeholder: "placeholder", showClear: "showClear" }, outputs: { onFocus: "onFocus", onBlur: "onBlur", onClear: "onClear" }, host: { properties: { "class.p-inputwrapper-filled": "filled()", "class.p-inputwrapper-focus": "focused", "class.p-password-clearable": "showClear", "class.p-password-mask": "toggleMask" }, classAttribute: "p-element p-inputwrapper" }, providers: [Password_VALUE_ACCESSOR], queries: [{ propertyName: "templates", predicate: QiusTemplate }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: `
559
+ <div [ngClass]="toggleMask | mapper: containerClass" [ngStyle]="style" [class]="styleClass">
560
+ <input
561
+ #input
562
+ [attr.label]="label"
563
+ [attr.aria-label]="ariaLabel"
564
+ [attr.aria-labelledBy]="ariaLabelledBy"
565
+ [attr.id]="inputId"
566
+ pInputText
567
+ [ngClass]="disabled | mapper: inputFieldClass"
568
+ [ngStyle]="inputStyle"
569
+ [class]="inputStyleClass"
570
+ [attr.type]="unmasked | mapper: inputType"
571
+ [attr.placeholder]="placeholder"
572
+ [value]="value"
573
+ (input)="onInput($event)"
574
+ (focus)="onInputFocus($event)"
575
+ (blur)="onInputBlur($event)"
576
+ (keyup)="onKeyUp($event)"
577
+ (keydown)="onKeyDown($event)"
578
+ [attr.maxlength]="maxLength"
579
+ />
580
+ <ng-container *ngIf="showClear && value != null">
581
+ <TimesIcon *ngIf="!clearIconTemplate" [styleClass]="'p-password-clear-icon'" (click)="clear()" />
582
+ <span (click)="clear()" class="p-password-clear-icon">
583
+ <ng-template *ngTemplateOutlet="clearIconTemplate"></ng-template>
584
+ </span>
585
+ </ng-container>
586
+
587
+ <ng-container *ngIf="toggleMask">
588
+ <ng-container *ngIf="unmasked">
589
+ <EyeSlashIcon *ngIf="!hideIconTemplate" (click)="onMaskToggle()"/>
590
+ <span *ngIf="hideIconTemplate" (click)="onMaskToggle()">
591
+ <ng-template *ngTemplateOutlet="hideIconTemplate"></ng-template>
592
+ </span>
593
+ </ng-container>
594
+ <ng-container *ngIf="!unmasked">
595
+ <EyeIcon *ngIf="!showIconTemplate" (click)="onMaskToggle()"/>
596
+ <span *ngIf="showIconTemplate" (click)="onMaskToggle()">
597
+ <ng-template *ngTemplateOutlet="showIconTemplate"></ng-template>
598
+ </span>
599
+ </ng-container>
600
+ </ng-container>
601
+
602
+ <div
603
+ #overlay
604
+ *ngIf="overlayVisible"
605
+ [ngClass]="'p-password-panel p-component'"
606
+ (click)="onOverlayClick($event)"
607
+ [@overlayAnimation]="{ value: 'visible', params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }"
608
+ (@overlayAnimation.start)="onAnimationStart($event)"
609
+ (@overlayAnimation.done)="onAnimationEnd($event)"
610
+ >
611
+ <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
612
+ <ng-container *ngIf="contentTemplate; else content">
613
+ <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>
614
+ </ng-container>
615
+ <ng-template #content>
616
+ <div class="p-password-meter">
617
+ <div [ngClass]="meter | mapper: strengthClass" [ngStyle]="{ width: meter ? meter.width : '' }"></div>
618
+ </div>
619
+ <div className="p-password-info">{{ infoText }}</div>
620
+ </ng-template>
621
+ <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
622
+ </div>
623
+ </div>
624
+ `, isInline: true, styles: [".p-password{position:relative;display:inline-flex}.p-password-panel{position:absolute;top:0;left:0}.p-password .p-password-panel{min-width:100%}.p-password-meter{height:10px}.p-password-strength{height:100%;width:0%;transition:width 1s ease-in-out}.p-fluid .p-password{display:flex}.p-password-input::-ms-reveal,.p-password-input::-ms-clear{display:none}.p-password-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-password-clearable{position:relative}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i2.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.InputText; }), selector: "[pInputText]" }, { kind: "component", type: i0.forwardRef(function () { return TimesIcon; }), selector: "TimesIcon" }, { kind: "component", type: i0.forwardRef(function () { return EyeSlashIcon; }), selector: "EyeSlashIcon" }, { kind: "component", type: i0.forwardRef(function () { return EyeIcon; }), selector: "EyeIcon" }, { kind: "pipe", type: i0.forwardRef(function () { return MapperPipe; }), name: "mapper" }], animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
625
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: Password, decorators: [{
626
+ type: Component,
627
+ args: [{ selector: 'p-password', template: `
628
+ <div [ngClass]="toggleMask | mapper: containerClass" [ngStyle]="style" [class]="styleClass">
629
+ <input
630
+ #input
631
+ [attr.label]="label"
632
+ [attr.aria-label]="ariaLabel"
633
+ [attr.aria-labelledBy]="ariaLabelledBy"
634
+ [attr.id]="inputId"
635
+ pInputText
636
+ [ngClass]="disabled | mapper: inputFieldClass"
637
+ [ngStyle]="inputStyle"
638
+ [class]="inputStyleClass"
639
+ [attr.type]="unmasked | mapper: inputType"
640
+ [attr.placeholder]="placeholder"
641
+ [value]="value"
642
+ (input)="onInput($event)"
643
+ (focus)="onInputFocus($event)"
644
+ (blur)="onInputBlur($event)"
645
+ (keyup)="onKeyUp($event)"
646
+ (keydown)="onKeyDown($event)"
647
+ [attr.maxlength]="maxLength"
648
+ />
649
+ <ng-container *ngIf="showClear && value != null">
650
+ <TimesIcon *ngIf="!clearIconTemplate" [styleClass]="'p-password-clear-icon'" (click)="clear()" />
651
+ <span (click)="clear()" class="p-password-clear-icon">
652
+ <ng-template *ngTemplateOutlet="clearIconTemplate"></ng-template>
653
+ </span>
654
+ </ng-container>
655
+
656
+ <ng-container *ngIf="toggleMask">
657
+ <ng-container *ngIf="unmasked">
658
+ <EyeSlashIcon *ngIf="!hideIconTemplate" (click)="onMaskToggle()"/>
659
+ <span *ngIf="hideIconTemplate" (click)="onMaskToggle()">
660
+ <ng-template *ngTemplateOutlet="hideIconTemplate"></ng-template>
661
+ </span>
662
+ </ng-container>
663
+ <ng-container *ngIf="!unmasked">
664
+ <EyeIcon *ngIf="!showIconTemplate" (click)="onMaskToggle()"/>
665
+ <span *ngIf="showIconTemplate" (click)="onMaskToggle()">
666
+ <ng-template *ngTemplateOutlet="showIconTemplate"></ng-template>
667
+ </span>
668
+ </ng-container>
669
+ </ng-container>
670
+
671
+ <div
672
+ #overlay
673
+ *ngIf="overlayVisible"
674
+ [ngClass]="'p-password-panel p-component'"
675
+ (click)="onOverlayClick($event)"
676
+ [@overlayAnimation]="{ value: 'visible', params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }"
677
+ (@overlayAnimation.start)="onAnimationStart($event)"
678
+ (@overlayAnimation.done)="onAnimationEnd($event)"
679
+ >
680
+ <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
681
+ <ng-container *ngIf="contentTemplate; else content">
682
+ <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>
683
+ </ng-container>
684
+ <ng-template #content>
685
+ <div class="p-password-meter">
686
+ <div [ngClass]="meter | mapper: strengthClass" [ngStyle]="{ width: meter ? meter.width : '' }"></div>
687
+ </div>
688
+ <div className="p-password-info">{{ infoText }}</div>
689
+ </ng-template>
690
+ <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
691
+ </div>
692
+ </div>
693
+ `, animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])], host: {
694
+ class: 'p-element p-inputwrapper',
695
+ '[class.p-inputwrapper-filled]': 'filled()',
696
+ '[class.p-inputwrapper-focus]': 'focused',
697
+ '[class.p-password-clearable]': 'showClear',
698
+ '[class.p-password-mask]': 'toggleMask'
699
+ }, providers: [Password_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".p-password{position:relative;display:inline-flex}.p-password-panel{position:absolute;top:0;left:0}.p-password .p-password-panel{min-width:100%}.p-password-meter{height:10px}.p-password-strength{height:100%;width:0%;transition:width 1s ease-in-out}.p-fluid .p-password{display:flex}.p-password-input::-ms-reveal,.p-password-input::-ms-clear{display:none}.p-password-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-password-clearable{position:relative}\n"] }]
700
+ }], ctorParameters: function () { return [{ type: Document, decorators: [{
701
+ type: Inject,
702
+ args: [DOCUMENT]
703
+ }] }, { type: undefined, decorators: [{
704
+ type: Inject,
705
+ args: [PLATFORM_ID]
706
+ }] }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i1.ParallelUIAngularConfig }, { type: i0.ElementRef }, { type: i1.OverlayService }]; }, propDecorators: { ariaLabel: [{
707
+ type: Input
708
+ }], ariaLabelledBy: [{
709
+ type: Input
710
+ }], label: [{
711
+ type: Input
712
+ }], disabled: [{
713
+ type: Input
714
+ }], promptLabel: [{
715
+ type: Input
716
+ }], mediumRegex: [{
717
+ type: Input
718
+ }], strongRegex: [{
719
+ type: Input
720
+ }], weakLabel: [{
721
+ type: Input
722
+ }], mediumLabel: [{
723
+ type: Input
724
+ }], maxLength: [{
725
+ type: Input
726
+ }], strongLabel: [{
727
+ type: Input
728
+ }], inputId: [{
729
+ type: Input
730
+ }], feedback: [{
731
+ type: Input
732
+ }], appendTo: [{
733
+ type: Input
734
+ }], toggleMask: [{
735
+ type: Input
736
+ }], inputStyleClass: [{
737
+ type: Input
738
+ }], panelStyle: [{
739
+ type: Input
740
+ }], panelStyleClass: [{
741
+ type: Input
742
+ }], styleClass: [{
743
+ type: Input
744
+ }], style: [{
745
+ type: Input
746
+ }], inputStyle: [{
747
+ type: Input
748
+ }], showTransitionOptions: [{
749
+ type: Input
750
+ }], hideTransitionOptions: [{
751
+ type: Input
752
+ }], placeholder: [{
753
+ type: Input
754
+ }], showClear: [{
755
+ type: Input
756
+ }], input: [{
757
+ type: ViewChild,
758
+ args: ['input']
759
+ }], onFocus: [{
760
+ type: Output
761
+ }], onBlur: [{
762
+ type: Output
763
+ }], onClear: [{
764
+ type: Output
765
+ }], templates: [{
766
+ type: ContentChildren,
767
+ args: [QiusTemplate]
768
+ }] } });
769
+ export class PasswordModule {
770
+ }
771
+ PasswordModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PasswordModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
772
+ PasswordModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: PasswordModule, declarations: [PasswordDirective, Password, MapperPipe], imports: [CommonModule, InputTextModule, TimesIcon, EyeSlashIcon, EyeIcon], exports: [PasswordDirective, Password, SharedModule] });
773
+ PasswordModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PasswordModule, imports: [CommonModule, InputTextModule, TimesIcon, EyeSlashIcon, EyeIcon, SharedModule] });
774
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PasswordModule, decorators: [{
775
+ type: NgModule,
776
+ args: [{
777
+ imports: [CommonModule, InputTextModule, TimesIcon, EyeSlashIcon, EyeIcon],
778
+ exports: [PasswordDirective, Password, SharedModule],
779
+ declarations: [PasswordDirective, Password, MapperPipe]
780
+ }]
781
+ }] });
782
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvcGFzc3dvcmQvcGFzc3dvcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUUsT0FBTyxFQUVILHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFNBQVMsRUFHVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFJUixNQUFNLEVBQ04sSUFBSSxFQUVKLFdBQVcsRUFJWCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBMkMsWUFBWSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMvSSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsVUFBVSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDcEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saURBQWlELENBQUM7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQzs7Ozs7QUFTeEUsTUFBTSxPQUFPLGlCQUFpQjtJQTJCMUIsWUFBc0MsUUFBa0IsRUFBK0IsVUFBZSxFQUFV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aUJBQWlCLEVBMFVqQixRQUFRLEVBb2JzQixZQUFZOzZHQUcxQyxjQUFjLFlBSmIsWUFBWSxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFDbEMsWUFBWTs0RkFHMUMsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsT0FBTyxDQUFDO29CQUMxRSxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDO29CQUNwRCxZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsVUFBVSxDQUFDO2lCQUMxRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIERPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEaXJlY3RpdmUsXG4gICAgRG9DaGVjayxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgTmdNb2R1bGUsXG4gICAgTmdab25lLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFBpcGUsXG4gICAgUGlwZVRyYW5zZm9ybSxcbiAgICBQTEFURk9STV9JRCxcbiAgICBRdWVyeUxpc3QsXG4gICAgUmVuZGVyZXIyLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT3ZlcmxheVNlcnZpY2UsIFBhcmFsbGVsVUlBbmd1bGFyQ29uZmlnLCBRaXVzVGVtcGxhdGUsIFNoYXJlZE1vZHVsZSwgVHJhbnNsYXRpb25LZXlzIH0gZnJvbSAnQHFpdXMuc29sdXRpb25zL3BhcmFsbGVsLXVpLWFuZ3VsYXIvYXBpJztcbmltcG9ydCB7IENvbm5lY3RlZE92ZXJsYXlTY3JvbGxIYW5kbGVyLCBEb21IYW5kbGVyIH0gZnJvbSAnQHFpdXMuc29sdXRpb25zL3BhcmFsbGVsLXVpLWFuZ3VsYXIvZG9tJztcbmltcG9ydCB7IElucHV0VGV4dE1vZHVsZSB9IGZyb20gJ0BxaXVzLnNvbHV0aW9ucy9wYXJhbGxlbC11aS1hbmd1bGFyL2lucHV0dGV4dCc7XG5pbXBvcnQgeyBaSW5kZXhVdGlscyB9IGZyb20gJ0BxaXVzLnNvbHV0aW9ucy9wYXJhbGxlbC11aS1hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVGltZXNJY29uIH0gZnJvbSAnQHFpdXMuc29sdXRpb25zL3BhcmFsbGVsLXVpLWFuZ3VsYXIvaWNvbnMvdGltZXMnO1xuaW1wb3J0IHsgRXllU2xhc2hJY29uIH0gZnJvbSAnQHFpdXMuc29sdXRpb25zL3BhcmFsbGVsLXVpLWFuZ3VsYXIvaWNvbnMvZXllc2xhc2gnO1xuaW1wb3J0IHsgRXllSWNvbiB9IGZyb20gJ0BxaXVzLnNvbHV0aW9ucy9wYXJhbGxlbC11aS1hbmd1bGFyL2ljb25zL2V5ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3BQYXNzd29yZF0nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdwLWlucHV0dGV4dCBwLWNvbXBvbmVudCBwLWVsZW1lbnQnLFxuICAgICAgICAnW2NsYXNzLnAtZmlsbGVkXSc6ICdmaWxsZWQnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBQYXNzd29yZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgRG9DaGVjayB7XG4gICAgQElucHV0KCkgcHJvbXB0TGFiZWw6IHN0cmluZyA9ICdFbnRlciBhIHBhc3N3b3JkJztcblxuICAgIEBJbnB1dCgpIHdlYWtMYWJlbDogc3RyaW5nID0gJ1dlYWsnO1xuXG4gICAgQElucHV0KCkgbWVkaXVtTGFiZWw6IHN0cmluZyA9ICdNZWRpdW0nO1xuXG4gICAgQElucHV0KCkgc3Ryb25nTGFiZWw6IHN0cmluZyA9ICdTdHJvbmcnO1xuXG4gICAgQElucHV0KCkgZmVlZGJhY2s6IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgQElucHV0KCkgc2V0IHNob3dQYXNzd29yZChzaG93OiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC50eXBlID0gc2hvdyA/ICd0ZXh0JyA6ICdwYXNzd29yZCc7XG4gICAgfVxuXG4gICAgcGFuZWw6IEhUTUxEaXZFbGVtZW50O1xuXG4gICAgbWV0ZXI6IGFueTtcblxuICAgIGluZm86IGFueTtcblxuICAgIGZpbGxlZDogYm9vbGVhbjtcblxuICAgIHNjcm9sbEhhbmRsZXI6IENvbm5lY3RlZE92ZXJsYXlTY3JvbGxIYW5kbGVyO1xuXG4gICAgZG9jdW1lbnRSZXNpemVMaXN0ZW5lcjogKCkgPT4gdm9pZCB8IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudCwgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBhbnksIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHVibGljIGVsOiBFbGVtZW50UmVmLCBwdWJsaWMgem9uZTogTmdab25lKSB7fVxuXG4gICAgbmdEb0NoZWNrKCkge1xuICAgICAgICB0aGlzLnVwZGF0ZUZpbGxlZFN0YXRlKCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignaW5wdXQnLCBbJyRldmVudCddKVxuICAgIG9uSW5wdXQoZSkge1xuICAgICAgICB0aGlzLnVwZGF0ZUZpbGxlZFN0YXRlKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlRmlsbGVkU3RhdGUoKSB7XG4gICAgICAgIHRoaXMuZmlsbGVkID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnZhbHVlICYmIHRoaXMuZWwubmF0aXZlRWxlbWVudC52YWx1ZS5sZW5ndGg7XG4gICAgfVxuXG4gICAgY3JlYXRlUGFuZWwoKSB7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICB0aGlzLnBhbmVsID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5wYW5lbCwgJ3AtcGFzc3dvcmQtcGFuZWwnKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5wYW5lbCwgJ3AtY29tcG9uZW50Jyk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMucGFuZWwsICdwLXBhc3N3b3JkLXBhbmVsLW92ZXJsYXknKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5wYW5lbCwgJ3AtY29ubmVjdGVkLW92ZXJsYXknKTtcblxuICAgICAgICAgICAgdGhpcy5tZXRlciA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubWV0ZXIsICdwLXBhc3N3b3JkLW1ldGVyJyk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMucGFuZWwsIHRoaXMubWV0ZXIpO1xuXG4gICAgICAgICAgICB0aGlzLmluZm8gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmluZm8sICdwLXBhc3N3b3JkLWluZm8nKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5pbmZvLCAndGV4dENvbnRlbnQnLCB0aGlzLnByb21wdExhYmVsKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5wYW5lbCwgdGhpcy5pbmZvKTtcblxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnBhbmVsLCAnbWluV2lkdGgnLCBgJHt0aGlzLmVsLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGh9cHhgKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuYm9keSwgdGhpcy5wYW5lbCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzaG93T3ZlcmxheSgpIHtcbiAgICAgICAgaWYgKHRoaXMuZmVlZGJhY2spIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5wYW5lbCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlUGFuZWwoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnBhbmVsLCAnekluZGV4JywgU3RyaW5nKCsrRG9tSGFuZGxlci56aW5kZXgpKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wYW5lbCwgJ2Rpc3BsYXknLCAnYmxvY2snKTtcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIERvbUhhbmRsZXIuYWRkQ2xhc3ModGhpcy5wYW5lbCwgJ3AtY29ubmVjdGVkLW92ZXJsYXktdmlzaWJsZScpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmJpbmRTY3JvbGxMaXN0ZW5lcigpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmJpbmREb2N1bWVudFJlc2l6ZUxpc3RlbmVyKCk7XG4gICAgICAgICAgICAgICAgfSwgMSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIERvbUhhbmRsZXIuYWJzb2x1dGVQb3NpdGlvbih0aGlzLnBhbmVsLCB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaGlkZU92ZXJsYXkoKSB7XG4gICAgICAgIGlmICh0aGlzLmZlZWRiYWNrICYmIHRoaXMucGFuZWwpIHtcbiAgICAgICAgICAgIERvbUhhbmRsZXIuYWRkQ2xhc3ModGhpcy5wYW5lbCwgJ3AtY29ubmVjdGVkLW92ZXJsYXktaGlkZGVuJyk7XG4gICAgICAgICAgICBEb21IYW5kbGVyLnJlbW92ZUNsYXNzKHRoaXMucGFuZWwsICdwLWNvbm5lY3RlZC1vdmVybGF5LXZpc2libGUnKTtcbiAgICAgICAgICAgIHRoaXMudW5iaW5kU2Nyb2xsTGlzdGVuZXIoKTtcbiAgICAgICAgICAgIHRoaXMudW5iaW5kRG9jdW1lbnRSZXNpemVMaXN0ZW5lcigpO1xuXG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm5nT25EZXN0cm95KCk7XG4gICAgICAgICAgICAgICAgfSwgMTUwKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXMnKVxuICAgIG9uRm9jdXMoKSB7XG4gICAgICAgIHRoaXMuc2hvd092ZXJsYXkoKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdibHVyJylcbiAgICBvbkJsdXIoKSB7XG4gICAgICAgIHRoaXMuaGlkZU92ZXJsYXkoKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gICAgb25LZXl1cChlKSB7XG4gICAgICAgIGlmICh0aGlzLmZlZWRiYWNrKSB7XG4gICAgICAgICAgICBsZXQgdmFsdWUgPSBlLnRhcmdldC52YWx1ZSxcbiAgICAgICAgICAgICAgICBsYWJlbCA9IG51bGwsXG4gICAgICAgICAgICAgICAgbWV0ZXJQb3MgPSBudWxsO1xuXG4gICAgICAgICAgICBpZiAodmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgbGFiZWwgPSB0aGlzLnByb21wdExhYmVsO1xuICAgICAgICAgICAgICAgIG1ldGVyUG9zID0gJzBweCAwcHgnO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB2YXIgc2NvcmUgPSB0aGlzLnRlc3RTdHJlbmd0aCh2YWx1ZSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoc2NvcmUgPCAzMCkge1xuICAgICAgICAgICAgICAgICAgICBsYWJlbCA9IHRoaXMud2Vha0xhYmVsO1xuICAgICAgICAgICAgICAgICAgICBtZXRlclBvcyA9ICcwcHggLTEwcHgnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoc2NvcmUgPj0gMzAgJiYgc2NvcmUgPCA4MCkge1xuICAgICAgICAgICAgICAgICAgICBsYWJlbCA9IHRoaXMubWVkaXVtTGFiZWw7XG4gICAgICAgICAgICAgICAgICAgIG1ldGVyUG9zID0gJzBweCAtMjBweCc7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChzY29yZSA+PSA4MCkge1xuICAgICAgICAgICAgICAgICAgICBsYWJlbCA9IHRoaXMuc3Ryb25nTGFiZWw7XG4gICAgICAgICAgICAgICAgICAgIG1ldGVyUG9zID0gJzBweCAtMzBweCc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIXRoaXMucGFuZWwgfHwgIURvbUhhbmRsZXIuaGFzQ2xhc3ModGhpcy5wYW5lbCwgJ3AtY29ubmVjdGVkLW92ZXJsYXktdmlzaWJsZScpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zaG93T3ZlcmxheSgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMubWV0ZXIsICdiYWNrZ3JvdW5kUG9zaXRpb24nLCBtZXRlclBvcyk7XG4gICAgICAgICAgICB0aGlzLmluZm8udGV4dENvbnRlbnQgPSBsYWJlbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRlc3RTdHJlbmd0aChzdHI6IHN0cmluZykge1xuICAgICAgICBsZXQgZ3JhZGU6IG51bWJlciA9IDA7XG4gICAgICAgIGxldCB2YWw6IFJlZ0V4cE1hdGNoQXJyYXk7XG5cbiAgICAgICAgdmFsID0gc3RyLm1hdGNoKCdbMC05XScpO1xuICAgICAgICBncmFkZSArPSB0aGlzLm5vcm1hbGl6ZSh2YWwgPyB2YWwubGVuZ3RoIDogMSAvIDQsIDEpICogMjU7XG5cbiAgICAgICAgdmFsID0gc3RyLm1hdGNoKCdbYS16QS1aXScpO1xuICAgICAgICBncmFkZSArPSB0aGlzLm5vcm1hbGl6ZSh2YWwgPyB2YWwubGVuZ3RoIDogMSAvIDIsIDMpICogMTA7XG5cbiAgICAgICAgdmFsID0gc3RyLm1hdGNoKCdbIUAjJCVeJio/X34uLDs9XScpO1xuICAgICAgICBncmFkZSArPSB0aGlzLm5vcm1hbGl6ZSh2YWwgPyB2YWwubGVuZ3RoIDogMSAvIDYsIDEpICogMzU7XG5cbiAgICAgICAgdmFsID0gc3RyLm1hdGNoKCdbQS1aXScpO1xuICAgICAgICBncmFkZSArPSB0aGlzLm5vcm1hbGl6ZSh2YWwgPyB2YWwubGVuZ3RoIDogMSAvIDYsIDEpICogMzA7XG5cbiAgICAgICAgZ3JhZGUgKj0gc3RyLmxlbmd0aCAvIDg7XG5cbiAgICAgICAgcmV0dXJuIGdyYWRlID4gMTAwID8gMTAwIDogZ3JhZGU7XG4gICAgfVxuXG4gICAgbm9ybWFsaXplKHgsIHkpIHtcbiAgICAgICAgbGV0IGRpZmYgPSB4IC0geTtcblxuICAgICAgICBpZiAoZGlmZiA8PSAwKSByZXR1cm4geCAvIHk7XG4gICAgICAgIGVsc2UgcmV0dXJuIDEgKyAwLjUgKiAoeCAvICh4ICsgeSAvIDQpKTtcbiAgICB9XG5cbiAgICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgYmluZFNjcm9sbExpc3RlbmVyKCkge1xuICAgICAgICBpZiAoIXRoaXMuc2Nyb2xsSGFuZGxlcikge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyID0gbmV3IENvbm5lY3RlZE92ZXJsYXlTY3JvbGxIYW5kbGVyKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChEb21IYW5kbGVyLmhhc0NsYXNzKHRoaXMucGFuZWwsICdwLWNvbm5lY3RlZC1vdmVybGF5LXZpc2libGUnKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmhpZGVPdmVybGF5KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNjcm9sbEhhbmRsZXIuYmluZFNjcm9sbExpc3RlbmVyKCk7XG4gICAgfVxuXG4gICAgdW5iaW5kU2Nyb2xsTGlzdGVuZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLnNjcm9sbEhhbmRsZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsSGFuZGxlci51bmJpbmRTY3JvbGxMaXN0ZW5lcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYmluZERvY3VtZW50UmVzaXplTGlzdGVuZXIoKSB7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZG9jdW1lbnRSZXNpemVMaXN0ZW5lcikge1xuICAgICAgICAgICAgICAgIGNvbnN0IHdpbmRvdyA9IHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXcgYXMgV2luZG93O1xuICAgICAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRSZXNpemVMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHdpbmRvdywgJ3Jlc2l6ZScsIHRoaXMub25XaW5kb3dSZXNpemUuYmluZCh0aGlzKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bmJpbmREb2N1bWVudFJlc2l6ZUxpc3RlbmVyKCkge1xuICAgICAgICBpZiAodGhpcy5kb2N1bWVudFJlc2l6ZUxpc3RlbmVyKSB7XG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50UmVzaXplTGlzdGVuZXIoKTtcbiAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRSZXNpemVMaXN0ZW5lciA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbldpbmRvd1Jlc2l6ZSgpIHtcbiAgICAgICAgaWYgKCFEb21IYW5kbGVyLmlzVG91Y2hEZXZpY2UoKSkge1xuICAgICAgICAgICAgdGhpcy5oaWRlT3ZlcmxheSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIGlmICh0aGlzLnBhbmVsKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5zY3JvbGxIYW5kbGVyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyLmRlc3Ryb3koKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNjcm9sbEhhbmRsZXIgPSBudWxsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLnVuYmluZERvY3VtZW50UmVzaXplTGlzdGVuZXIoKTtcblxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZCh0aGlzLmRvY3VtZW50LmJvZHksIHRoaXMucGFuZWwpO1xuICAgICAgICAgICAgdGhpcy5wYW5lbCA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLm1ldGVyID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuaW5mbyA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnR5cGUgTWFwcGVyPFQsIEc+ID0gKGl0ZW06IFQsIC4uLmFyZ3M6IGFueVtdKSA9PiBHO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ21hcHBlcicsXG4gICAgcHVyZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBNYXBwZXJQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgcHVibGljIHRyYW5zZm9ybTxULCBHPih2YWx1ZTogVCwgbWFwcGVyOiBNYXBwZXI8VCwgRz4sIC4uLmFyZ3M6IHVua25vd25bXSk6IEcge1xuICAgICAgICByZXR1cm4gbWFwcGVyKHZhbHVlLCAuLi5hcmdzKTtcbiAgICB9XG59XG5cbmV4cG9ydCBjb25zdCBQYXNzd29yZF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBhc3N3b3JkKSxcbiAgICBtdWx0aTogdHJ1ZVxufTtcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncC1wYXNzd29yZCcsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ0b2dnbGVNYXNrIHwgbWFwcGVyOiBjb250YWluZXJDbGFzc1wiIFtuZ1N0eWxlXT1cInN0eWxlXCIgW2NsYXNzXT1cInN0eWxlQ2xhc3NcIj5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICNpbnB1dFxuICAgICAgICAgICAgICAgIFthdHRyLmxhYmVsXT1cImxhYmVsXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZEJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJpbnB1dElkXCJcbiAgICAgICAgICAgICAgICBwSW5wdXRUZXh0XG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiZGlzYWJsZWQgfCBtYXBwZXI6IGlucHV0RmllbGRDbGFzc1wiXG4gICAgICAgICAgICAgICAgW25nU3R5bGVdPVwiaW5wdXRTdHlsZVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzXT1cImlucHV0U3R5bGVDbGFzc1wiXG4gICAgICAgICAgICAgICAgW2F0dHIudHlwZV09XCJ1bm1hc2tlZCB8IG1hcHBlcjogaW5wdXRUeXBlXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoZm9jdXMpPVwib25JbnB1dEZvY3VzKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChibHVyKT1cIm9uSW5wdXRCbHVyKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChrZXl1cCk9XCJvbktleVVwKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4TGVuZ3RoXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0NsZWFyICYmIHZhbHVlICE9IG51bGxcIj5cbiAgICAgICAgICAgICAgICA8VGltZXNJY29uICpuZ0lmPVwiIWNsZWFySWNvblRlbXBsYXRlXCIgW3N0eWxlQ2xhc3NdPVwiJ3AtcGFzc3dvcmQtY2xlYXItaWNvbidcIiAoY2xpY2spPVwiY2xlYXIoKVwiIC8+XG4gICAgICAgICAgICAgICAgPHNwYW4gKGNsaWNrKT1cImNsZWFyKClcIiBjbGFzcz1cInAtcGFzc3dvcmQtY2xlYXItaWNvblwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjbGVhckljb25UZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9zcGFuPiAgICBcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidG9nZ2xlTWFza1wiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1bm1hc2tlZFwiPlxuICAgICAgICAgICAgICAgICAgICA8RXllU2xhc2hJY29uICpuZ0lmPVwiIWhpZGVJY29uVGVtcGxhdGVcIiAoY2xpY2spPVwib25NYXNrVG9nZ2xlKClcIi8+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGlkZUljb25UZW1wbGF0ZVwiIChjbGljayk9XCJvbk1hc2tUb2dnbGUoKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwiaGlkZUljb25UZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXVubWFza2VkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxFeWVJY29uICpuZ0lmPVwiIXNob3dJY29uVGVtcGxhdGVcIiAoY2xpY2spPVwib25NYXNrVG9nZ2xlKClcIi8+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic2hvd0ljb25UZW1wbGF0ZVwiIChjbGljayk9XCJvbk1hc2tUb2dnbGUoKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwic2hvd0ljb25UZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgI292ZXJsYXlcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm92ZXJsYXlWaXNpYmxlXCJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCIncC1wYXNzd29yZC1wYW5lbCBwLWNvbXBvbmVudCdcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk92ZXJsYXlDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICBbQG92ZXJsYXlBbmltYXRpb25dPVwieyB2YWx1ZTogJ3Zpc2libGUnLCBwYXJhbXM6IHsgc2hvd1RyYW5zaXRpb25QYXJhbXM6IHNob3dUcmFuc2l0aW9uT3B0aW9ucywgaGlkZVRyYW5zaXRpb25QYXJhbXM6IGhpZGVUcmFuc2l0aW9uT3B0aW9ucyB9IH1cIlxuICAgICAgICAgICAgICAgIChAb3ZlcmxheUFuaW1hdGlvbi5zdGFydCk9XCJvbkFuaW1hdGlvblN0YXJ0KCRldmVudClcIlxuICAgICAgICAgICAgICAgIChAb3ZlcmxheUFuaW1hdGlvbi5kb25lKT1cIm9uQW5pbWF0aW9uRW5kKCRldmVudClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb250ZW50VGVtcGxhdGU7IGVsc2UgY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1wYXNzd29yZC1tZXRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJtZXRlciB8IG1hcHBlcjogc3RyZW5ndGhDbGFzc1wiIFtuZ1N0eWxlXT1cInsgd2lkdGg6IG1ldGVyID8gbWV0ZXIud2lkdGggOiAnJyB9XCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInAtcGFzc3dvcmQtaW5mb1wiPnt7IGluZm9UZXh0IH19PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZm9vdGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICBgLFxuICAgIGFuaW1hdGlvbnM6IFt0cmlnZ2VyKCdvdmVybGF5QW5pbWF0aW9uJywgW3RyYW5zaXRpb24oJzplbnRlcicsIFtzdHlsZSh7IG9wYWNpdHk6IDAsIHRyYW5zZm9ybTogJ3NjYWxlWSgwLjgpJyB9KSwgYW5pbWF0ZSgne3tzaG93VHJhbnNpdGlvblBhcmFtc319JyldKSwgdHJhbnNpdGlvbignOmxlYXZlJywgW2FuaW1hdGUoJ3t7aGlkZVRyYW5zaXRpb25QYXJhbXN9fScsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSldKV0pXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAncC1lbGVtZW50IHAtaW5wdXR3cmFwcGVyJyxcbiAgICAgICAgJ1tjbGFzcy5wLWlucHV0d3JhcHBlci1maWxsZWRdJzogJ2ZpbGxlZCgpJyxcbiAgICAgICAgJ1tjbGFzcy5wLWlucHV0d3JhcHBlci1mb2N1c10nOiAnZm9jdXNlZCcsXG4gICAgICAgICdbY2xhc3MucC1wYXNzd29yZC1jbGVhcmFibGVdJzogJ3Nob3dDbGVhcicsXG4gICAgICAgICdbY2xhc3MucC1wYXNzd29yZC1tYXNrXSc6ICd0b2dnbGVNYXNrJ1xuICAgIH0sXG4gICAgcHJvdmlkZXJzOiBbUGFzc3dvcmRfVkFMVUVfQUNDRVNTT1JdLFxuICAgIHN0eWxlVXJsczogWycuL3Bhc3N3b3JkLmNzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgUGFzc3dvcmQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkluaXQge1xuICAgIEBJbnB1dCgpIGFyaWFMYWJlbDogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgYXJpYUxhYmVsbGVkQnk6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgpIHByb21wdExhYmVsOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBtZWRpdW1SZWdleDogc3RyaW5nID0gJ14oKCg/PS4qW2Etel0pKD89LipbQS1aXSkpfCgoPz0uKlthLXpdKSg/PS4qWzAtOV0pKXwoKD89LipbQS1aXSkoPz0uKlswLTldKSkpKD89Lns2LH0pJztcblxuICAgIEBJbnB1dCgpIHN0cm9uZ1JlZ2V4OiBzdHJpbmcgPSAnXig/PS4qW2Etel0pKD89LipbQS1aXSkoPz0uKlswLTldKSg/PS57OCx9KSc7XG5cbiAgICBASW5wdXQoKSB3ZWFrTGFiZWw6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIG1lZGl1bUxhYmVsOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBtYXhMZW5ndGg6IG51bWJlcjtcblxuICAgIEBJbnB1dCgpIHN0cm9uZ0xhYmVsOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBpbnB1dElkOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBmZWVkYmFjazogYm9vbGVhbiA9IHRydWU7XG5cbiAgICBASW5wdXQoKSBhcHBlbmRUbzogYW55O1xuXG4gICAgQElucHV0KCkgdG9nZ2xlTWFzazogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgpIGlucHV0U3R5bGVDbGFzczogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgcGFuZWxTdHlsZTogYW55O1xuXG4gICAgQElucHV0KCkgcGFuZWxTdHlsZUNsYXNzOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBzdHlsZUNsYXNzOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBzdHlsZTogYW55O1xuXG4gICAgQElucHV0KCkgaW5wdXRTdHlsZTogYW55O1xuXG4gICAgQElucHV0KCkgc2hvd1RyYW5zaXRpb25PcHRpb25zOiBzdHJpbmcgPSAnLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSc7XG5cbiAgICBASW5wdXQoKSBoaWRlVHJhbnNpdGlvbk9wdGlvbnM6IHN0cmluZyA9ICcuMXMgbGluZWFyJztcblxuICAgIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBzaG93Q2xlYXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0JykgaW5wdXQ6IEVsZW1lbnRSZWY7XG5cbiAgICBAT3V0cHV0KCkgb25Gb2N1czogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAT3V0cHV0KCkgb25CbHVyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoKSBvbkNsZWFyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIGNvbnRlbnRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgaGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBjbGVhckljb25UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIGhpZGVJY29uVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBzaG93SWNvblRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihRaXVzVGVtcGxhdGUpIHRlbXBsYXRlczogUXVlcnlMaXN0PGFueT47XG5cbiAgICBvdmVybGF5VmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgbWV0ZXI6IGFueTtcblxuICAgIGluZm9UZXh0OiBzdHJpbmc7XG5cbiAgICBmb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICB1bm1hc2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgbWVkaXVtQ2hlY2tSZWdFeHA6IGFueTtcblxuICAgIHN0cm9uZ0NoZWNrUmVnRXhwOiBhbnk7XG5cbiAgICByZXNpemVMaXN0ZW5lcjogVm9pZEZ1bmN0aW9uIHwgbnVsbDtcblxuICAgIHNjcm9sbEhhbmRsZXI6IENvbm5lY3RlZE92ZXJsYXlTY3JvbGxIYW5kbGVyIHwgbnVsbDtcblxuICAgIG92ZXJsYXk6IGFueTtcblxuICAgIHZhbHVlOiBzdHJpbmcgPSBudWxsO1xuXG4gICAgb25Nb2RlbENoYW5nZTogRnVuY3Rpb24gPSAoKSA9PiB7fTtcblxuICAgIG9uTW9kZWxUb3VjaGVkOiBGdW5jdGlvbiA9ICgpID0+IHt9O1xuXG4gICAgdHJhbnNsYXRpb25TdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudCxcbiAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBhbnksXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgY29uZmlnOiBQYXJhbGxlbFVJQW5ndWxhckNvbmZpZyxcbiAgICAgICAgcHVibGljIGVsOiBFbGVtZW50UmVmLFxuICAgICAgICBwdWJsaWMgb3ZlcmxheVNlcnZpY2U6IE92ZXJsYXlTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLnRlbXBsYXRlcy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBzd2l0Y2ggKGl0ZW0uZ2V0VHlwZSgpKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnY29udGVudCc6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGVudFRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlICdoZWFkZXInOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmhlYWRlclRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlICdmb290ZXInOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvb3RlclRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlICdjbGVhcmljb24nOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsZWFySWNvblRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlICdoaWRlaWNvbic6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGlkZUljb25UZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAnc2hvd2ljb24nOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dJY29uVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGVudFRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmluZm9UZXh0ID0gdGhpcy5wcm9tcHRUZXh0KCk7XG4gICAgICAgIHRoaXMubWVkaXVtQ2hlY2tSZWdFeHAgPSBuZXcgUmVnRXhwKHRoaXMubWVkaXVtUmVnZXgpO1xuICAgICAgICB0aGlzLnN0cm9uZ0NoZWNrUmVnRXhwID0gbmV3IFJlZ0V4cCh0aGlzLnN0cm9uZ1JlZ2V4KTtcbiAgICAgICAgdGhpcy50cmFuc2xhdGlvblN1YnNjcmlwdGlvbiA9IHRoaXMuY29uZmlnLnRyYW5zbGF0aW9uT2JzZXJ2ZXIuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVUkodGhpcy52YWx1ZSB8fCAnJyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uQW5pbWF0aW9uU3RhcnQoZXZlbnQpIHtcbiAgICAgICAgc3dpdGNoIChldmVudC50b1N0YXRlKSB7XG4gICAgICAgICAgICBjYXNlICd2aXNpYmxlJzpcbiAgICAgICAgICAgICAgICB0aGlzLm92ZXJsYXkgPSBldmVudC5lbGVtZW50O1xuICAgICAgICAgICAgICAgIFpJbmRleFV0aWxzLnNldCgnb3ZlcmxheScsIHRoaXMub3ZlcmxheSwgdGhpcy5jb25maWcuekluZGV4Lm92ZXJsYXkpO1xuICAgICAgICAgICAgICAgIHRoaXMuYXBwZW5kQ29udGFpbmVyKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5hbGlnbk92ZXJsYXkoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmJpbmRTY3JvbGxMaXN0ZW5lcigpO1xuICAgICAgICAgICAgICAgIHRoaXMuYmluZFJlc2l6ZUxpc3RlbmVyKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgJ3ZvaWQnOlxuICAgICAgICAgICAgICAgIHRoaXMudW5iaW5kU2Nyb2xsTGlzdGVuZXIoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnVuYmluZFJlc2l6ZUxpc3RlbmVyKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5vdmVybGF5ID0gbnVsbDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQW5pbWF0aW9uRW5kKGV2ZW50KSB7XG4gICAgICAgIHN3aXRjaCAoZXZlbnQudG9TdGF0ZSkge1xuICAgICAgICAgICAgY2FzZSAndm9pZCc6XG4gICAgICAgICAgICAgICAgWkluZGV4VXRpbHMuY2xlYXIoZXZlbnQuZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhcHBlbmRDb250YWluZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLmFwcGVuZFRvKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5hcHBlbmRUbyA9PT0gJ2JvZHknKSB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZG9jdW1lbnQuYm9keSwgdGhpcy5vdmVybGF5KTtcbiAgICAgICAgICAgIGVsc2UgdGhpcy5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLmFwcGVuZFRvKS5hcHBlbmRDaGlsZCh0aGlzLm92ZXJsYXkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYWxpZ25PdmVybGF5KCkge1xuICAgICAgICBpZiAodGhpcy5hcHBlbmRUbykge1xuICAgICAgICAgICAgdGhpcy5vdmVybGF5LnN0eWxlLm1pbldpZHRoID0gRG9tSGFuZGxlci5nZXRPdXRlcldpZHRoKHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCkgKyAncHgnO1xuICAgICAgICAgICAgRG9tSGFuZGxlci5hYnNvbHV0ZVBvc2l0aW9uKHRoaXMub3ZlcmxheSwgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIERvbUhhbmRsZXIucmVsYXRpdmVQb3NpdGlvbih0aGlzLm92ZXJsYXksIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbklucHV0KGV2ZW50KSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgICAgIHRoaXMub25Nb2RlbENoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBvbklucHV0Rm9jdXMoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIHRoaXMuZm9jdXNlZCA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLmZlZWRiYWNrKSB7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlWaXNpYmxlID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub25Gb2N1cy5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICBvbklucHV0Qmx1cihldmVudDogRXZlbnQpIHtcbiAgICAgICAgdGhpcy5mb2N1c2VkID0gZmFsc2U7XG4gICAgICAgIGlmICh0aGlzLmZlZWRiYWNrKSB7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlWaXNpYmxlID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9uTW9kZWxUb3VjaGVkKCk7XG4gICAgICAgIHRoaXMub25CbHVyLmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25LZXlVcChldmVudCkge1xuICAgICAgICBpZiAodGhpcy5mZWVkYmFjaykge1xuICAgICAgICAgICAgbGV0IHZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVVSSh2YWx1ZSk7XG5cbiAgICAgICAgICAgIGlmICghdGhpcy5vdmVybGF5VmlzaWJsZSkge1xuICAgICAgICAgICAgICAgIHRoaXMub3ZlcmxheVZpc2libGUgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlVUkodmFsdWUpIHtcbiAgICAgICAgbGV0IGxhYmVsID0gbnVsbDtcbiAgICAgICAgbGV0IG1ldGVyID0gbnVsbDtcblxuICAgICAgICBzd2l0Y2ggKHRoaXMudGVzdFN0cmVuZ3RoKHZhbHVlKSkge1xuICAgICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgICAgIGxhYmVsID0gdGhpcy53ZWFrVGV4dCgpO1xuICAgICAgICAgICAgICAgIG1ldGVyID0ge1xuICAgICAgICAgICAgICAgICAgICBzdHJlbmd0aDogJ3dlYWsnLFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJzMzLjMzJSdcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgICAgICAgbGFiZWwgPSB0aGlzLm1lZGl1bVRleHQoKTtcbiAgICAgICAgICAgICAgICBtZXRlciA9IHtcbiAgICAgICAgICAgICAgICAgICAgc3RyZW5ndGg6ICdtZWRpdW0nLFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJzY2LjY2JSdcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDM6XG4gICAgICAgICAgICAgICAgbGFiZWwgPSB0aGlzLnN0cm9uZ1RleHQoKTtcbiAgICAgICAgICAgICAgICBtZXRlciA9IHtcbiAgICAgICAgICAgICAgICAgICAgc3RyZW5ndGg6ICdzdHJvbmcnLFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBsYWJlbCA9IHRoaXMucHJvbXB0VGV4dCgpO1xuICAgICAgICAgICAgICAgIG1ldGVyID0gbnVsbDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubWV0ZXIgPSBtZXRlcjtcbiAgICAgICAgdGhpcy5pbmZvVGV4dCA9IGxhYmVsO1xuICAgIH1cblxuICAgIG9uTWFza1RvZ2dsZSgpIHtcbiAgICAgICAgdGhpcy51bm1hc2tlZCA9ICF0aGlzLnVubWFza2VkO1xuICAgIH1cblxuICAgIG9uT3ZlcmxheUNsaWNrKGV2ZW50KSB7XG4gICAgICAgIHRoaXMub3ZlcmxheVNlcnZpY2UuYWRkKHtcbiAgICAgICAgICAgIG9yaWdpbmFsRXZlbnQ6IGV2ZW50LFxuICAgICAgICAgICAgdGFyZ2V0OiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGVzdFN0cmVuZ3RoKHN0cikge1xuICAgICAgICBsZXQgbGV2ZWwgPSAwO1xuXG4gICAgICAgIGlmICh0aGlzLnN0cm9uZ0NoZWNrUmVnRXhwLnRlc3Qoc3RyKSkgbGV2ZWwgPSAzO1xuICAgICAgICBlbHNlIGlmICh0aGlzLm1lZGl1bUNoZWNrUmVnRXhwLnRlc3Qoc3RyKSkgbGV2ZWwgPSAyO1xuICAgICAgICBlbHNlIGlmIChzdHIubGVuZ3RoKSBsZXZlbCA9IDE7XG5cbiAgICAgICAgcmV0dXJuIGxldmVsO1xuICAgIH1cblxuICAgIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkgdGhpcy52YWx1ZSA9IG51bGw7XG4gICAgICAgIGVsc2UgdGhpcy52YWx1ZSA9IHZhbHVlO1xuXG4gICAgICAgIGlmICh0aGlzLmZlZWRiYWNrKSB0aGlzLnVwZGF0ZVVJKHRoaXMudmFsdWUgfHwgJycpO1xuXG4gICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogRnVuY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IEZ1bmN0aW9uKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Nb2RlbFRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKHZhbDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gdmFsO1xuICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIGJpbmRTY3JvbGxMaXN0ZW5lcigpIHtcbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5zY3JvbGxIYW5kbGVyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyID0gbmV3IENvbm5lY3RlZE92ZXJsYXlTY3JvbGxIYW5kbGVyKHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5vdmVybGF5VmlzaWJsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsSGFuZGxlci5iaW5kU2Nyb2xsTGlzdGVuZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJpbmRSZXNpemVMaXN0ZW5lcigpIHtcbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5yZXNpemVMaXN0ZW5lcikge1xuICAgICAgICAgICAgICAgIGNvbnN0IHdpbmRvdyA9IHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXcgYXMgV2luZG93O1xuICAgICAgICAgICAgICAgIHRoaXMucmVzaXplTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih3aW5kb3csICdyZXNpemUnLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLm92ZXJsYXlWaXNpYmxlICYmICFEb21IYW5kbGVyLmlzVG91Y2hEZXZpY2UoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bmJpbmRTY3JvbGxMaXN0ZW5lcigpIHtcbiAgICAgICAgaWYgKHRoaXMuc2Nyb2xsSGFuZGxlcikge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyLnVuYmluZFNjcm9sbExpc3RlbmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bmJpbmRSZXNpemVMaXN0ZW5lcigpIHtcbiAgICAgICAgaWYgKHRoaXMucmVzaXplTGlzdGVuZXIpIHtcbiAgICAgICAgICAgIHRoaXMucmVzaXplTGlzdGVuZXIoKTtcbiAgICAgICAgICAgIHRoaXMucmVzaXplTGlzdGVuZXIgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29udGFpbmVyQ2xhc3ModG9nZ2xlTWFzazogYm9vbGVhbikge1xuICAgICAgICByZXR1cm4geyAncC1wYXNzd29yZCBwLWNvbXBvbmVudCBwLWlucHV0d3JhcHBlcic6IHRydWUsICdwLWlucHV0LWljb24tcmlnaHQnOiB0b2dnbGVNYXNrIH07XG4gICAgfVxuXG4gICAgaW5wdXRGaWVsZENsYXNzKGRpc2FibGVkOiBib29sZWFuKSB7XG4gICAgICAgIHJldHVybiB7ICdwLXBhc3N3b3JkLWlucHV0JzogdHJ1ZSwgJ3AtZGlzYWJsZWQnOiBkaXNhYmxlZCB9O1xuICAgIH1cblxuICAgIHN0cmVuZ3RoQ2xhc3MobWV0ZXI6IGFueSkge1xuICAgICAgICByZXR1cm4gYHAtcGFzc3dvcmQtc3RyZW5ndGggJHttZXRlciA/IG1ldGVyLnN0cmVuZ3RoIDogJyd9YDtcbiAgICB9XG5cbiAgICBmaWxsZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlICE9IG51bGwgJiYgdGhpcy52YWx1ZS50b1N0cmluZygpLmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgcHJvbXB0VGV4dCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvbXB0TGFiZWwgfHwgdGhpcy5nZXRUcmFuc2xhdGlvbihUcmFuc2xhdGlvbktleXMuUEFTU1dPUkRfUFJPTVBUKTtcbiAgICB9XG5cbiAgICB3ZWFrVGV4dCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMud2Vha0xhYmVsIHx8IHRoaXMuZ2V0VHJhbnNsYXRpb24oVHJhbnNsYXRpb25LZXlzLldFQUspO1xuICAgIH1cblxuICAgIG1lZGl1bVRleHQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm1lZGl1bUxhYmVsIHx8IHRoaXMuZ2V0VHJhbnNsYXRpb24oVHJhbnNsYXRpb25LZXlzLk1FRElVTSk7XG4gICAgfVxuXG4gICAgc3Ryb25nVGV4dCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3Ryb25nTGFiZWwgfHwgdGhpcy5nZXRUcmFuc2xhdGlvbihUcmFuc2xhdGlvbktleXMuU1RST05HKTtcbiAgICB9XG5cbiAgICByZXN0b3JlQXBwZW5kKCkge1xuICAgICAgICBpZiAodGhpcy5vdmVybGF5ICYmIHRoaXMuYXBwZW5kVG8pIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmFwcGVuZFRvID09PSAnYm9keScpIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5kb2N1bWVudC5ib2R5LCB0aGlzLm92ZXJsYXkpO1xuICAgICAgICAgICAgZWxzZSB0aGlzLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuYXBwZW5kVG8pLnJlbW92ZUNoaWxkKHRoaXMub3ZlcmxheSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFR5cGUodW5tYXNrZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgcmV0dXJuIHVubWFza2VkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJztcbiAgICB9XG5cbiAgICBnZXRUcmFuc2xhdGlvbihvcHRpb246IHN0cmluZykge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcuZ2V0VHJhbnNsYXRpb24ob3B0aW9uKTtcbiAgICB9XG5cbiAgICBjbGVhcigpIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IG51bGw7XG4gICAgICAgIHRoaXMub25Nb2RlbENoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMudmFsdWUpO1xuICAgICAgICB0aGlzLm9uQ2xlYXIuZW1pdCgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBpZiAodGhpcy5vdmVybGF5KSB7XG4gICAgICAgICAgICBaSW5kZXhVdGlscy5jbGVhcih0aGlzLm92ZXJsYXkpO1xuICAgICAgICAgICAgdGhpcy5vdmVybGF5ID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucmVzdG9yZUFwcGVuZCgpO1xuICAgICAgICB0aGlzLnVuYmluZFJlc2l6ZUxpc3RlbmVyKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuc2Nyb2xsSGFuZGxlcikge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsSGFuZGxlciA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy50cmFuc2xhdGlvblN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGlvblN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElucHV0VGV4dE1vZHVsZSwgVGltZXNJY29uLCBFeWVTbGFzaEljb24sIEV5ZUljb25dLFxuICAgIGV4cG9ydHM6IFtQYXNzd29yZERpcmVjdGl2ZSwgUGFzc3dvcmQsIFNoYXJlZE1vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbUGFzc3dvcmREaXJlY3RpdmUsIFBhc3N3b3JkLCBNYXBwZXJQaXBlXVxufSlcbmV4cG9ydCBjbGFzcyBQYXNzd29yZE1vZHVsZSB7fVxuIl19