general-library-union 3.3.71 → 3.3.72

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 (986) hide show
  1. package/README.md +0 -0
  2. package/esm2022/public-api.mjs +4 -1
  3. package/esm2022/src/app/core/componentes/filtro-general/filtro-general.component.mjs +31 -13
  4. package/esm2022/src/app/core/componentes/formulariodinamico/formulariodinamico.component.mjs +11 -17
  5. package/esm2022/src/app/core/componentes/inicio-component/inicio-component.component.mjs +3 -3
  6. package/esm2022/src/app/core/componentes/menu/menu.component.mjs +3 -3
  7. package/esm2022/src/app/core/componentes/tabla-general/tabla-general.component.mjs +4 -3
  8. package/esm2022/src/app/core/componentes/template-tabla-vacia/template-tabla-vacia.component.mjs +21 -0
  9. package/esm2022/src/app/core/servicios/auth.service.mjs +2 -1
  10. package/esm2022/src/app/core/servicios/click-posicion.service.mjs +20 -0
  11. package/esm2022/src/app/core/servicios/data-exporter-table.utils.mjs +2 -2
  12. package/esm2022/src/app/core/servicios/toast.service.mjs +2 -2
  13. package/esm2022/src/app/core/servicios/utils.service.mjs +45 -19
  14. package/esm2022/src/app/layout/app.breadcrumb.component.mjs +5 -5
  15. package/esm2022/src/app/layout/app.layout.component.mjs +3 -4
  16. package/esm2022/src/app/layout/app.menu.component.mjs +1 -1
  17. package/esm2022/src/app/layout/app.menuitem.component.mjs +72 -13
  18. package/esm2022/src/app/layout/app.topbar.component.mjs +19 -22
  19. package/esm2022/src/app/publico/pages/login/login.page.mjs +5 -3
  20. package/esm2022/src/app/publico/pages/not-found/not-found.page.mjs +3 -3
  21. package/esm2022/src/app/publico/pages/seleccion-rol/seleccion-rol.component.mjs +4 -3
  22. package/esm2022/src/app/publico/pages/timeout/timeout.page.mjs +3 -3
  23. package/esm2022/src/app/seguridad/modelos/CorreoOrgEmpModModel.mjs +9 -0
  24. package/esm2022/src/app/seguridad/modelos/RespuestaModel.mjs +1 -1
  25. package/esm2022/src/app/seguridad/modelos/ServidorCorreoModel.mjs +1 -1
  26. package/esm2022/src/app/seguridad/modelos/TareasModel.mjs +2 -1
  27. package/esm2022/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.mjs +3 -3
  28. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.mjs +4 -3
  29. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.mjs +4 -3
  30. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.mjs +30 -31
  31. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.mjs +32 -5
  32. package/esm2022/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.mjs +8 -6
  33. package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.mjs +13 -3
  34. package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.mjs +4 -3
  35. package/esm2022/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.mjs +5 -4
  36. package/esm2022/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.mjs +4 -3
  37. package/esm2022/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.mjs +4 -3
  38. package/esm2022/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.mjs +3 -2
  39. package/esm2022/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.mjs +5 -4
  40. package/esm2022/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.mjs +4 -3
  41. package/esm2022/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.mjs +4 -3
  42. package/esm2022/src/app/webcommon/popups/popup-recurso/popup-recurso.component.mjs +4 -3
  43. package/esm2022/src/app/webcommon/popups/popup-reporte/popup-reporte.component.mjs +19 -8
  44. package/esm2022/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.mjs +4 -3
  45. package/esm2022/src/app/webcommon/services/fechaUtils.service.mjs +6 -1
  46. package/esm2022/src/environments/environment.mjs +2 -3
  47. package/fesm2022/general-library-union.mjs +413 -454
  48. package/fesm2022/general-library-union.mjs.map +1 -1
  49. package/package.json +5 -5
  50. package/public-api.d.ts +3 -0
  51. package/src/app/core/componentes/filtro-general/filtro-general.component.d.ts +3 -1
  52. package/src/app/core/componentes/template-tabla-vacia/template-tabla-vacia.component.d.ts +9 -0
  53. package/src/app/core/servicios/click-posicion.service.d.ts +11 -0
  54. package/src/app/core/servicios/utils.service.d.ts +4 -1
  55. package/src/app/layout/app.menuitem.component.d.ts +2 -4
  56. package/src/app/layout/app.topbar.component.d.ts +2 -3
  57. package/src/app/seguridad/modelos/CorreoOrgEmpModModel.d.ts +8 -0
  58. package/src/app/seguridad/modelos/ServidorCorreoModel.d.ts +15 -15
  59. package/src/app/seguridad/modelos/TareasModel.d.ts +1 -0
  60. package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.d.ts +3 -1
  61. package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.d.ts +1 -0
  62. package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.d.ts +3 -0
  63. package/src/app/webcommon/services/fechaUtils.service.d.ts +1 -0
  64. package/src/assets/demo/avatar-1.png +0 -0
  65. package/src/assets/demo/customers-large.json +0 -0
  66. package/src/assets/demo/data/chat.json +0 -0
  67. package/src/assets/demo/data/countries.json +0 -0
  68. package/src/assets/demo/data/customers-large.json +0 -0
  69. package/src/assets/demo/data/customers-medium.json +0 -0
  70. package/src/assets/demo/data/customers-small.json +0 -0
  71. package/src/assets/demo/data/file-management.json +0 -0
  72. package/src/assets/demo/data/files-lazy.json +0 -0
  73. package/src/assets/demo/data/files.json +0 -0
  74. package/src/assets/demo/data/filesystem-lazy.json +0 -0
  75. package/src/assets/demo/data/filesystem.json +0 -0
  76. package/src/assets/demo/data/icons.json +0 -0
  77. package/src/assets/demo/data/kanban.json +0 -0
  78. package/src/assets/demo/data/mail.json +0 -0
  79. package/src/assets/demo/data/members.json +0 -0
  80. package/src/assets/demo/data/photos.json +0 -0
  81. package/src/assets/demo/data/products-mixed.json +0 -0
  82. package/src/assets/demo/data/products-orders-small.json +0 -0
  83. package/src/assets/demo/data/products-orders.json +0 -0
  84. package/src/assets/demo/data/products-small.json +0 -0
  85. package/src/assets/demo/data/products.json +0 -0
  86. package/src/assets/demo/data/scheduleevents.json +0 -0
  87. package/src/assets/demo/data/tasks.json +0 -0
  88. package/src/assets/demo/images/avatar/activity-1.png +0 -0
  89. package/src/assets/demo/images/avatar/activity-2.png +0 -0
  90. package/src/assets/demo/images/avatar/activity-3.png +0 -0
  91. package/src/assets/demo/images/avatar/amyelsner.png +0 -0
  92. package/src/assets/demo/images/avatar/annafali.png +0 -0
  93. package/src/assets/demo/images/avatar/asiyajavayant.png +0 -0
  94. package/src/assets/demo/images/avatar/avatar-1.png +0 -0
  95. package/src/assets/demo/images/avatar/avatar-10.png +0 -0
  96. package/src/assets/demo/images/avatar/avatar-11.png +0 -0
  97. package/src/assets/demo/images/avatar/avatar-12.png +0 -0
  98. package/src/assets/demo/images/avatar/avatar-13.png +0 -0
  99. package/src/assets/demo/images/avatar/avatar-14.png +0 -0
  100. package/src/assets/demo/images/avatar/avatar-15.png +0 -0
  101. package/src/assets/demo/images/avatar/avatar-16.png +0 -0
  102. package/src/assets/demo/images/avatar/avatar-2.png +0 -0
  103. package/src/assets/demo/images/avatar/avatar-3.png +0 -0
  104. package/src/assets/demo/images/avatar/avatar-4.png +0 -0
  105. package/src/assets/demo/images/avatar/avatar-5.png +0 -0
  106. package/src/assets/demo/images/avatar/avatar-6.png +0 -0
  107. package/src/assets/demo/images/avatar/avatar-7.png +0 -0
  108. package/src/assets/demo/images/avatar/avatar-8.png +0 -0
  109. package/src/assets/demo/images/avatar/avatar-9.png +0 -0
  110. package/src/assets/demo/images/avatar/bernardodominic.png +0 -0
  111. package/src/assets/demo/images/avatar/circle/avatar-f-1.png +0 -0
  112. package/src/assets/demo/images/avatar/circle/avatar-f-10.png +0 -0
  113. package/src/assets/demo/images/avatar/circle/avatar-f-10@2x.png +0 -0
  114. package/src/assets/demo/images/avatar/circle/avatar-f-11.png +0 -0
  115. package/src/assets/demo/images/avatar/circle/avatar-f-11@2x.png +0 -0
  116. package/src/assets/demo/images/avatar/circle/avatar-f-12.png +0 -0
  117. package/src/assets/demo/images/avatar/circle/avatar-f-12@2x.png +0 -0
  118. package/src/assets/demo/images/avatar/circle/avatar-f-1@2x.png +0 -0
  119. package/src/assets/demo/images/avatar/circle/avatar-f-2.png +0 -0
  120. package/src/assets/demo/images/avatar/circle/avatar-f-2@2x.png +0 -0
  121. package/src/assets/demo/images/avatar/circle/avatar-f-3.png +0 -0
  122. package/src/assets/demo/images/avatar/circle/avatar-f-3@2x.png +0 -0
  123. package/src/assets/demo/images/avatar/circle/avatar-f-4.png +0 -0
  124. package/src/assets/demo/images/avatar/circle/avatar-f-4@2x.png +0 -0
  125. package/src/assets/demo/images/avatar/circle/avatar-f-5.png +0 -0
  126. package/src/assets/demo/images/avatar/circle/avatar-f-5@2x.png +0 -0
  127. package/src/assets/demo/images/avatar/circle/avatar-f-6.png +0 -0
  128. package/src/assets/demo/images/avatar/circle/avatar-f-6@2x.png +0 -0
  129. package/src/assets/demo/images/avatar/circle/avatar-f-7.png +0 -0
  130. package/src/assets/demo/images/avatar/circle/avatar-f-7@2x.png +0 -0
  131. package/src/assets/demo/images/avatar/circle/avatar-f-8.png +0 -0
  132. package/src/assets/demo/images/avatar/circle/avatar-f-8@2x.png +0 -0
  133. package/src/assets/demo/images/avatar/circle/avatar-f-9.png +0 -0
  134. package/src/assets/demo/images/avatar/circle/avatar-f-9@2x.png +0 -0
  135. package/src/assets/demo/images/avatar/circle/avatar-m-1.png +0 -0
  136. package/src/assets/demo/images/avatar/circle/avatar-m-10.png +0 -0
  137. package/src/assets/demo/images/avatar/circle/avatar-m-10@2x.png +0 -0
  138. package/src/assets/demo/images/avatar/circle/avatar-m-11.png +0 -0
  139. package/src/assets/demo/images/avatar/circle/avatar-m-11@2x.png +0 -0
  140. package/src/assets/demo/images/avatar/circle/avatar-m-12.png +0 -0
  141. package/src/assets/demo/images/avatar/circle/avatar-m-12@2x.png +0 -0
  142. package/src/assets/demo/images/avatar/circle/avatar-m-1@2x.png +0 -0
  143. package/src/assets/demo/images/avatar/circle/avatar-m-2.png +0 -0
  144. package/src/assets/demo/images/avatar/circle/avatar-m-2@2x.png +0 -0
  145. package/src/assets/demo/images/avatar/circle/avatar-m-3.png +0 -0
  146. package/src/assets/demo/images/avatar/circle/avatar-m-3@2x.png +0 -0
  147. package/src/assets/demo/images/avatar/circle/avatar-m-4.png +0 -0
  148. package/src/assets/demo/images/avatar/circle/avatar-m-4@2x.png +0 -0
  149. package/src/assets/demo/images/avatar/circle/avatar-m-5.png +0 -0
  150. package/src/assets/demo/images/avatar/circle/avatar-m-5@2x.png +0 -0
  151. package/src/assets/demo/images/avatar/circle/avatar-m-6.png +0 -0
  152. package/src/assets/demo/images/avatar/circle/avatar-m-6@2x.png +0 -0
  153. package/src/assets/demo/images/avatar/circle/avatar-m-7-1.png +0 -0
  154. package/src/assets/demo/images/avatar/circle/avatar-m-7.png +0 -0
  155. package/src/assets/demo/images/avatar/circle/avatar-m-7@2x-1.png +0 -0
  156. package/src/assets/demo/images/avatar/circle/avatar-m-7@2x.png +0 -0
  157. package/src/assets/demo/images/avatar/circle/avatar-m-8.png +0 -0
  158. package/src/assets/demo/images/avatar/circle/avatar-m-8@2x.png +0 -0
  159. package/src/assets/demo/images/avatar/circle/avatar-m-9.png +0 -0
  160. package/src/assets/demo/images/avatar/circle/avatar-m-9@2x.png +0 -0
  161. package/src/assets/demo/images/avatar/circle-big/avatar-f-1.png +0 -0
  162. package/src/assets/demo/images/avatar/circle-big/avatar-f-1@2x.png +0 -0
  163. package/src/assets/demo/images/avatar/circle-big/avatar-f-2.png +0 -0
  164. package/src/assets/demo/images/avatar/circle-big/avatar-f-2@2x.png +0 -0
  165. package/src/assets/demo/images/avatar/circle-big/avatar-f-3.png +0 -0
  166. package/src/assets/demo/images/avatar/circle-big/avatar-f-3@2x.png +0 -0
  167. package/src/assets/demo/images/avatar/circle-big/avatar-m-1.png +0 -0
  168. package/src/assets/demo/images/avatar/circle-big/avatar-m-1@2x.png +0 -0
  169. package/src/assets/demo/images/avatar/circle-big/avatar-m-2.png +0 -0
  170. package/src/assets/demo/images/avatar/circle-big/avatar-m-2@2x.png +0 -0
  171. package/src/assets/demo/images/avatar/circle-big/avatar-m-3.png +0 -0
  172. package/src/assets/demo/images/avatar/circle-big/avatar-m-3@2x.png +0 -0
  173. package/src/assets/demo/images/avatar/elwinsharvill.png +0 -0
  174. package/src/assets/demo/images/avatar/ionibowcher.png +0 -0
  175. package/src/assets/demo/images/avatar/ivanmagalhaes.png +0 -0
  176. package/src/assets/demo/images/avatar/onyamalimba.png +0 -0
  177. package/src/assets/demo/images/avatar/profile.jpg +0 -0
  178. package/src/assets/demo/images/avatar/square/avatar-f-1.jpg +0 -0
  179. package/src/assets/demo/images/avatar/square/avatar-f-1@2x.jpg +0 -0
  180. package/src/assets/demo/images/avatar/square/avatar-f-2.jpg +0 -0
  181. package/src/assets/demo/images/avatar/square/avatar-f-2@2x.jpg +0 -0
  182. package/src/assets/demo/images/avatar/square/avatar-m-1.jpg +0 -0
  183. package/src/assets/demo/images/avatar/square/avatar-m-1@2x.jpg +0 -0
  184. package/src/assets/demo/images/avatar/stephenshaw.png +0 -0
  185. package/src/assets/demo/images/avatar/xuxuefeng.png +0 -0
  186. package/src/assets/demo/images/blocks/about/about-1.png +0 -0
  187. package/src/assets/demo/images/blocks/ad/icon-blocks.svg +0 -0
  188. package/src/assets/demo/images/blocks/hero/hero-1.png +0 -0
  189. package/src/assets/demo/images/blocks/logos/hyper.svg +0 -0
  190. package/src/assets/demo/images/blocks/logos/visa.png +0 -0
  191. package/src/assets/demo/images/blocks/team/team-1.png +0 -0
  192. package/src/assets/demo/images/blocks/team/team-2.png +0 -0
  193. package/src/assets/demo/images/blocks/team/team-3.png +0 -0
  194. package/src/assets/demo/images/blocks/team/team-4.png +0 -0
  195. package/src/assets/demo/images/blog/blog-1.png +0 -0
  196. package/src/assets/demo/images/blog/blog-2.png +0 -0
  197. package/src/assets/demo/images/blog/blog-3.png +0 -0
  198. package/src/assets/demo/images/blog/blog-4.png +0 -0
  199. package/src/assets/demo/images/blog/blog-5.png +0 -0
  200. package/src/assets/demo/images/blog/blog-6.png +0 -0
  201. package/src/assets/demo/images/blog/blogdetail.png +0 -0
  202. package/src/assets/demo/images/contact/map-dark.svg +0 -0
  203. package/src/assets/demo/images/contact/map-light.svg +0 -0
  204. package/src/assets/demo/images/ecommerce/order-history/orderhistory-1.png +0 -0
  205. package/src/assets/demo/images/ecommerce/order-history/orderhistory-2.png +0 -0
  206. package/src/assets/demo/images/ecommerce/order-history/orderhistory-3.png +0 -0
  207. package/src/assets/demo/images/ecommerce/order-history/orderhistory-4.png +0 -0
  208. package/src/assets/demo/images/ecommerce/order-history/orderhistory-5.png +0 -0
  209. package/src/assets/demo/images/ecommerce/order-history/orderhistory-6.png +0 -0
  210. package/src/assets/demo/images/ecommerce/ordersummary/order-summary-1-1.png +0 -0
  211. package/src/assets/demo/images/ecommerce/ordersummary/order-summary-1-2.png +0 -0
  212. package/src/assets/demo/images/ecommerce/ordersummary/order-summary-2-1.png +0 -0
  213. package/src/assets/demo/images/ecommerce/ordersummary/visa.png +0 -0
  214. package/src/assets/demo/images/ecommerce/product-list/product-list-2-1.png +0 -0
  215. package/src/assets/demo/images/ecommerce/product-list/product-list-2-2.png +0 -0
  216. package/src/assets/demo/images/ecommerce/product-list/product-list-2-3.png +0 -0
  217. package/src/assets/demo/images/ecommerce/product-list/product-list-2-4.png +0 -0
  218. package/src/assets/demo/images/ecommerce/product-list/product-list-4-1.png +0 -0
  219. package/src/assets/demo/images/ecommerce/product-list/product-list-4-2.png +0 -0
  220. package/src/assets/demo/images/ecommerce/product-list/product-list-4-3.png +0 -0
  221. package/src/assets/demo/images/ecommerce/product-list/product-list-4-4.png +0 -0
  222. package/src/assets/demo/images/ecommerce/product-list/product-list-4-5.png +0 -0
  223. package/src/assets/demo/images/ecommerce/product-list/product-list-4-6.png +0 -0
  224. package/src/assets/demo/images/ecommerce/productoverview/product-overview-1-1.png +0 -0
  225. package/src/assets/demo/images/ecommerce/productoverview/product-overview-1-2.png +0 -0
  226. package/src/assets/demo/images/ecommerce/productoverview/product-overview-1-3.png +0 -0
  227. package/src/assets/demo/images/ecommerce/productoverview/product-overview-2-1.png +0 -0
  228. package/src/assets/demo/images/ecommerce/productoverview/product-overview-2-2.png +0 -0
  229. package/src/assets/demo/images/ecommerce/productoverview/product-overview-2-3.png +0 -0
  230. package/src/assets/demo/images/ecommerce/productoverview/product-overview-2-4.png +0 -0
  231. package/src/assets/demo/images/ecommerce/productoverview/product-overview-3-1.png +0 -0
  232. package/src/assets/demo/images/ecommerce/productoverview/product-overview-3-2.png +0 -0
  233. package/src/assets/demo/images/ecommerce/productoverview/product-overview-3-3.png +0 -0
  234. package/src/assets/demo/images/ecommerce/productoverview/product-overview-3-4.png +0 -0
  235. package/src/assets/demo/images/ecommerce/productoverview/product-overview-4-1.png +0 -0
  236. package/src/assets/demo/images/ecommerce/productoverview/product-overview-4-2.png +0 -0
  237. package/src/assets/demo/images/ecommerce/productoverview/product-overview-4-3.png +0 -0
  238. package/src/assets/demo/images/ecommerce/productoverview/product-suggestion.png +0 -0
  239. package/src/assets/demo/images/ecommerce/shop/flag.png +0 -0
  240. package/src/assets/demo/images/ecommerce/shop/shop-1.png +0 -0
  241. package/src/assets/demo/images/ecommerce/shop/shop-2.png +0 -0
  242. package/src/assets/demo/images/ecommerce/shop/shop-3.png +0 -0
  243. package/src/assets/demo/images/ecommerce/shop/shop-4.png +0 -0
  244. package/src/assets/demo/images/ecommerce/shop/shop-5.png +0 -0
  245. package/src/assets/demo/images/ecommerce/shop/shop-6.png +0 -0
  246. package/src/assets/demo/images/ecommerce/shopping-cart/shopping-cart-2-1.png +0 -0
  247. package/src/assets/demo/images/ecommerce/shopping-cart/shopping-cart-2-2.png +0 -0
  248. package/src/assets/demo/images/flag/flag_placeholder.png +0 -0
  249. package/src/assets/demo/images/galleria/galleria1.jpg +0 -0
  250. package/src/assets/demo/images/galleria/galleria10.jpg +0 -0
  251. package/src/assets/demo/images/galleria/galleria10s.jpg +0 -0
  252. package/src/assets/demo/images/galleria/galleria11.jpg +0 -0
  253. package/src/assets/demo/images/galleria/galleria11s.jpg +0 -0
  254. package/src/assets/demo/images/galleria/galleria12.jpg +0 -0
  255. package/src/assets/demo/images/galleria/galleria12s.jpg +0 -0
  256. package/src/assets/demo/images/galleria/galleria13.jpg +0 -0
  257. package/src/assets/demo/images/galleria/galleria13s.jpg +0 -0
  258. package/src/assets/demo/images/galleria/galleria14.jpg +0 -0
  259. package/src/assets/demo/images/galleria/galleria14s.jpg +0 -0
  260. package/src/assets/demo/images/galleria/galleria15.jpg +0 -0
  261. package/src/assets/demo/images/galleria/galleria15s.jpg +0 -0
  262. package/src/assets/demo/images/galleria/galleria1s.jpg +0 -0
  263. package/src/assets/demo/images/galleria/galleria2.jpg +0 -0
  264. package/src/assets/demo/images/galleria/galleria2s.jpg +0 -0
  265. package/src/assets/demo/images/galleria/galleria3.jpg +0 -0
  266. package/src/assets/demo/images/galleria/galleria3s.jpg +0 -0
  267. package/src/assets/demo/images/galleria/galleria4.jpg +0 -0
  268. package/src/assets/demo/images/galleria/galleria4s.jpg +0 -0
  269. package/src/assets/demo/images/galleria/galleria5.jpg +0 -0
  270. package/src/assets/demo/images/galleria/galleria5s.jpg +0 -0
  271. package/src/assets/demo/images/galleria/galleria6.jpg +0 -0
  272. package/src/assets/demo/images/galleria/galleria6s.jpg +0 -0
  273. package/src/assets/demo/images/galleria/galleria7.jpg +0 -0
  274. package/src/assets/demo/images/galleria/galleria7s.jpg +0 -0
  275. package/src/assets/demo/images/galleria/galleria8.jpg +0 -0
  276. package/src/assets/demo/images/galleria/galleria8s.jpg +0 -0
  277. package/src/assets/demo/images/galleria/galleria9.jpg +0 -0
  278. package/src/assets/demo/images/galleria/galleria9s.jpg +0 -0
  279. package/src/assets/demo/images/landing/chat-dark.png +0 -0
  280. package/src/assets/demo/images/landing/chat-light.png +0 -0
  281. package/src/assets/demo/images/landing/dashboard-dark.png +0 -0
  282. package/src/assets/demo/images/landing/dashboard-light.png +0 -0
  283. package/src/assets/demo/images/landing/icon-accessibility.svg +0 -0
  284. package/src/assets/demo/images/landing/icon-community.svg +0 -0
  285. package/src/assets/demo/images/landing/icon-components.svg +0 -0
  286. package/src/assets/demo/images/landing/icon-mobile.svg +0 -0
  287. package/src/assets/demo/images/landing/icon-productivity.svg +0 -0
  288. package/src/assets/demo/images/landing/icon-support.svg +0 -0
  289. package/src/assets/demo/images/landing/icon-theme.svg +0 -0
  290. package/src/assets/demo/images/landing/icon-ts.svg +0 -0
  291. package/src/assets/demo/images/landing/kanban-dark.png +0 -0
  292. package/src/assets/demo/images/landing/kanban-light.png +0 -0
  293. package/src/assets/demo/images/landing/mail-dark.png +0 -0
  294. package/src/assets/demo/images/landing/mail-light.png +0 -0
  295. package/src/assets/demo/images/nature/nature1.jpg +0 -0
  296. package/src/assets/demo/images/nature/nature10.jpg +0 -0
  297. package/src/assets/demo/images/nature/nature11.jpg +0 -0
  298. package/src/assets/demo/images/nature/nature12.jpg +0 -0
  299. package/src/assets/demo/images/nature/nature2.jpg +0 -0
  300. package/src/assets/demo/images/nature/nature3.jpg +0 -0
  301. package/src/assets/demo/images/nature/nature4.jpg +0 -0
  302. package/src/assets/demo/images/nature/nature5.jpg +0 -0
  303. package/src/assets/demo/images/nature/nature6.jpg +0 -0
  304. package/src/assets/demo/images/nature/nature7.jpg +0 -0
  305. package/src/assets/demo/images/nature/nature8.jpg +0 -0
  306. package/src/assets/demo/images/nature/nature9.jpg +0 -0
  307. package/src/assets/demo/images/product/bamboo-watch.jpg +0 -0
  308. package/src/assets/demo/images/product/black-watch.jpg +0 -0
  309. package/src/assets/demo/images/product/blue-band.jpg +0 -0
  310. package/src/assets/demo/images/product/blue-t-shirt.jpg +0 -0
  311. package/src/assets/demo/images/product/bracelet.jpg +0 -0
  312. package/src/assets/demo/images/product/brown-purse.jpg +0 -0
  313. package/src/assets/demo/images/product/chakra-bracelet.jpg +0 -0
  314. package/src/assets/demo/images/product/galaxy-earrings.jpg +0 -0
  315. package/src/assets/demo/images/product/game-controller.jpg +0 -0
  316. package/src/assets/demo/images/product/gaming-set.jpg +0 -0
  317. package/src/assets/demo/images/product/gold-phone-case.jpg +0 -0
  318. package/src/assets/demo/images/product/green-earbuds.jpg +0 -0
  319. package/src/assets/demo/images/product/green-t-shirt.jpg +0 -0
  320. package/src/assets/demo/images/product/grey-t-shirt.jpg +0 -0
  321. package/src/assets/demo/images/product/headphones.jpg +0 -0
  322. package/src/assets/demo/images/product/light-green-t-shirt.jpg +0 -0
  323. package/src/assets/demo/images/product/lime-band.jpg +0 -0
  324. package/src/assets/demo/images/product/mini-speakers.jpg +0 -0
  325. package/src/assets/demo/images/product/painted-phone-case.jpg +0 -0
  326. package/src/assets/demo/images/product/pink-band.jpg +0 -0
  327. package/src/assets/demo/images/product/pink-purse.jpg +0 -0
  328. package/src/assets/demo/images/product/product-placeholder.svg +0 -0
  329. package/src/assets/demo/images/product/purple-band.jpg +0 -0
  330. package/src/assets/demo/images/product/purple-gemstone-necklace.jpg +0 -0
  331. package/src/assets/demo/images/product/purple-t-shirt.jpg +0 -0
  332. package/src/assets/demo/images/product/shoes.jpg +0 -0
  333. package/src/assets/demo/images/product/sneakers.jpg +0 -0
  334. package/src/assets/demo/images/product/teal-t-shirt.jpg +0 -0
  335. package/src/assets/demo/images/product/yellow-earbuds.jpg +0 -0
  336. package/src/assets/demo/images/product/yoga-mat.jpg +0 -0
  337. package/src/assets/demo/images/product/yoga-set.jpg +0 -0
  338. package/src/assets/demo/styles/badges.css +0 -0
  339. package/src/assets/demo/styles/badges.scss +0 -0
  340. package/src/assets/demo/styles/code.css +0 -0
  341. package/src/assets/demo/styles/code.scss +0 -0
  342. package/src/assets/demo/styles/flags/flags.css +0 -0
  343. package/src/assets/demo/styles/flags/flags_responsive.png +0 -0
  344. package/src/assets/glyphicons/css/boton-icon.css +0 -0
  345. package/src/assets/glyphicons/css/glyphicons-basic.css +0 -0
  346. package/src/assets/glyphicons/css/glyphicons-filetypes.css +0 -0
  347. package/src/assets/glyphicons/css/glyphicons-halflings.css +0 -0
  348. package/src/assets/glyphicons/css/glyphicons-social.css +0 -0
  349. package/src/assets/glyphicons/css/glyphicons.css +0 -0
  350. package/src/assets/glyphicons/fonts/filetypes/glyphicons-filetypes-regular.eot +0 -0
  351. package/src/assets/glyphicons/fonts/filetypes/glyphicons-filetypes-regular.svg +0 -0
  352. package/src/assets/glyphicons/fonts/filetypes/glyphicons-filetypes-regular.ttf +0 -0
  353. package/src/assets/glyphicons/fonts/filetypes/glyphicons-filetypes-regular.woff +0 -0
  354. package/src/assets/glyphicons/fonts/filetypes/glyphicons-filetypes-regular.woff2 +0 -0
  355. package/src/assets/glyphicons/fonts/halflings/glyphicons-halflings-regular.eot +0 -0
  356. package/src/assets/glyphicons/fonts/halflings/glyphicons-halflings-regular.svg +0 -0
  357. package/src/assets/glyphicons/fonts/halflings/glyphicons-halflings-regular.ttf +0 -0
  358. package/src/assets/glyphicons/fonts/halflings/glyphicons-halflings-regular.woff +0 -0
  359. package/src/assets/glyphicons/fonts/halflings/glyphicons-halflings-regular.woff2 +0 -0
  360. package/src/assets/glyphicons/fonts/regular/glyphicons-regular.eot +0 -0
  361. package/src/assets/glyphicons/fonts/regular/glyphicons-regular.svg +0 -0
  362. package/src/assets/glyphicons/fonts/regular/glyphicons-regular.ttf +0 -0
  363. package/src/assets/glyphicons/fonts/regular/glyphicons-regular.woff +0 -0
  364. package/src/assets/glyphicons/fonts/regular/glyphicons-regular.woff2 +0 -0
  365. package/src/assets/glyphicons/fonts/social/glyphicons-social-regular.eot +0 -0
  366. package/src/assets/glyphicons/fonts/social/glyphicons-social-regular.svg +0 -0
  367. package/src/assets/glyphicons/fonts/social/glyphicons-social-regular.ttf +0 -0
  368. package/src/assets/glyphicons/fonts/social/glyphicons-social-regular.woff +0 -0
  369. package/src/assets/glyphicons/fonts/social/glyphicons-social-regular.woff2 +0 -0
  370. package/src/assets/images/LogoUS.png +0 -0
  371. package/src/assets/images/Robot.png +0 -0
  372. package/src/assets/images/favicon.ico +0 -0
  373. package/src/assets/images/fdNoFound.png +0 -0
  374. package/src/assets/images/fd_timeOut.png +0 -0
  375. package/src/assets/images/imagen-principal-sam.png +0 -0
  376. package/src/assets/images/imagen-principal-samanta.png +0 -0
  377. package/src/assets/images/imagen-principal-sara.png +0 -0
  378. package/src/assets/images/imagen-principal-seguridad.png +0 -0
  379. package/src/assets/images/imagen_login.png +0 -0
  380. package/src/assets/images/logo-aps-descomprimido.png +0 -0
  381. package/src/assets/images/logo-aps.png +0 -0
  382. package/src/assets/images/logo-icono-aps.png +0 -0
  383. package/src/assets/images/logo-icono-sam.png +0 -0
  384. package/src/assets/images/logo-icono-samanta.png +0 -0
  385. package/src/assets/images/logo-icono-sara.png +0 -0
  386. package/src/assets/images/logo-icono-seguridad.png +0 -0
  387. package/src/assets/images/logo-sam-descomprimido.png +0 -0
  388. package/src/assets/images/logo-sam.png +0 -0
  389. package/src/assets/images/logo-samanta-descomprimido.png +0 -0
  390. package/src/assets/images/logo-samanta.png +0 -0
  391. package/src/assets/images/logo-sara-descomprimido.png +0 -0
  392. package/src/assets/images/logo-sara.png +0 -0
  393. package/src/assets/images/logo-seguridad-descomprimido.png +0 -0
  394. package/src/assets/images/logo-seguridad.png +0 -0
  395. package/src/assets/images/logo-union-simple.png +0 -0
  396. package/src/assets/images/logo-union-soluciones-logo.png +0 -0
  397. package/src/assets/images/logous-blanco.png +0 -0
  398. package/src/assets/images/modulos/icono-activos-fijos.png +0 -0
  399. package/src/assets/images/modulos/icono-administracion.png +0 -0
  400. package/src/assets/images/modulos/icono-compras.png +0 -0
  401. package/src/assets/images/modulos/icono-control.png +0 -0
  402. package/src/assets/images/modulos/icono-cotizacion.png +0 -0
  403. package/src/assets/images/modulos/icono-inventarios.png +0 -0
  404. package/src/assets/images/modulos/icono-presupuesto.png +0 -0
  405. package/src/assets/images/modulos/icono-produccion.png +0 -0
  406. package/src/assets/images/modulos/icono-requisicion.png +0 -0
  407. package/src/assets/images/navegador-chrome.png +0 -0
  408. package/src/assets/images/navegador-edge.png +0 -0
  409. package/src/assets/images/navegador-explorer.png +0 -0
  410. package/src/assets/images/navegador-firefox.png +0 -0
  411. package/src/assets/images/not-found-fondo.png +0 -0
  412. package/src/assets/images/not-found.png +0 -0
  413. package/src/assets/images/not-found.webp +0 -0
  414. package/src/assets/images/personaje.png +0 -0
  415. package/src/assets/images/robotZ.png +0 -0
  416. package/src/assets/images/temaClaro/no-info.webp +0 -0
  417. package/src/assets/images/temaOscuro/no-info.webp +0 -0
  418. package/src/assets/images/texto-union-soluciones.png +0 -0
  419. package/src/assets/images/time-out.webp +0 -0
  420. package/src/assets/images/timeout.png +0 -0
  421. package/src/assets/layout/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
  422. package/src/assets/layout/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
  423. package/src/assets/layout/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
  424. package/src/assets/layout/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
  425. package/src/assets/layout/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
  426. package/src/assets/layout/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
  427. package/src/assets/layout/images/401.svg +0 -0
  428. package/src/assets/layout/images/404-2x.png +0 -0
  429. package/src/assets/layout/images/dashboard/saas-card.png +0 -0
  430. package/src/assets/layout/images/doc/breadcrumb-doc.jpg +0 -0
  431. package/src/assets/layout/images/doc/inlinemenu-doc.jpg +0 -0
  432. package/src/assets/layout/images/doc/rightmenu-doc.jpg +0 -0
  433. package/src/assets/layout/images/doc/topbar-doc.jpg +0 -0
  434. package/src/assets/layout/images/extensions/asset-amex.svg +0 -0
  435. package/src/assets/layout/images/extensions/asset-mastercard.svg +0 -0
  436. package/src/assets/layout/images/extensions/asset-paypal.svg +0 -0
  437. package/src/assets/layout/images/extensions/asset-visa.svg +0 -0
  438. package/src/assets/layout/images/extensions/background@2x.jpg +0 -0
  439. package/src/assets/layout/images/extensions/flag-us@2x.png +0 -0
  440. package/src/assets/layout/images/extensions/help-header@2x.jpg +0 -0
  441. package/src/assets/layout/images/extensions/prime-logo.svg +0 -0
  442. package/src/assets/layout/images/favicon.png +0 -0
  443. package/src/assets/layout/images/footer-ultima-dark.svg +0 -0
  444. package/src/assets/layout/images/footer-ultima.svg +0 -0
  445. package/src/assets/layout/images/landing/collaboration-image.png +0 -0
  446. package/src/assets/layout/images/landing/easyfollow-image.png +0 -0
  447. package/src/assets/layout/images/landing/landing-ellipse.png +0 -0
  448. package/src/assets/layout/images/landing/landing-ellipse2.png +0 -0
  449. package/src/assets/layout/images/landing/landing-hero-image.jpg +0 -0
  450. package/src/assets/layout/images/landing/landing-logo1.png +0 -0
  451. package/src/assets/layout/images/landing/landing-logo2.png +0 -0
  452. package/src/assets/layout/images/landing/landing-logo3.png +0 -0
  453. package/src/assets/layout/images/landing/landing-logo4.png +0 -0
  454. package/src/assets/layout/images/landing/layer-0-opt.jpg +0 -0
  455. package/src/assets/layout/images/landing/layer-1-opt.png +0 -0
  456. package/src/assets/layout/images/landing/layer-2-opt.png +0 -0
  457. package/src/assets/layout/images/logo-ultima.svg +0 -0
  458. package/src/assets/layout/images/logo.png +0 -0
  459. package/src/assets/layout/images/logo2x.png +0 -0
  460. package/src/assets/layout/images/pages/404-bg.jpg +0 -0
  461. package/src/assets/layout/images/pages/404.png +0 -0
  462. package/src/assets/layout/images/pages/accessDenied-bg.jpg +0 -0
  463. package/src/assets/layout/images/pages/accessDenied.png +0 -0
  464. package/src/assets/layout/images/pages/error-bg.jpg +0 -0
  465. package/src/assets/layout/images/pages/error.png +0 -0
  466. package/src/assets/layout/images/pages/error2.png +0 -0
  467. package/src/assets/layout/images/pages/login-bg.jpg +0 -0
  468. package/src/assets/layout/images/vector_logo.png +0 -0
  469. package/src/assets/layout/images/widgets/asset-profile.png +0 -0
  470. package/src/assets/layout/images/widgets/feature-faq.svg +0 -0
  471. package/src/assets/layout/images/widgets/feature-onboarding.svg +0 -0
  472. package/src/assets/layout/images/widgets/feature-security.svg +0 -0
  473. package/src/assets/layout/images/widgets/image-blog.jpg +0 -0
  474. package/src/assets/layout/images/widgets/map.jpg +0 -0
  475. package/src/assets/layout/styles/layout/_animation.scss +0 -0
  476. package/src/assets/layout/styles/layout/_breadcrumb.scss +0 -0
  477. package/src/assets/layout/styles/layout/_config.scss +0 -0
  478. package/src/assets/layout/styles/layout/_content.scss +0 -0
  479. package/src/assets/layout/styles/layout/_fonts.scss +0 -0
  480. package/src/assets/layout/styles/layout/_footer.scss +0 -0
  481. package/src/assets/layout/styles/layout/_invoice.scss +0 -0
  482. package/src/assets/layout/styles/layout/_landing.scss +0 -0
  483. package/src/assets/layout/styles/layout/_main.scss +0 -0
  484. package/src/assets/layout/styles/layout/_megamenu.scss +0 -0
  485. package/src/assets/layout/styles/layout/_menuprofile.scss +0 -0
  486. package/src/assets/layout/styles/layout/_responsive.scss +0 -0
  487. package/src/assets/layout/styles/layout/_rightmenu.scss +0 -0
  488. package/src/assets/layout/styles/layout/_typography.scss +0 -0
  489. package/src/assets/layout/styles/layout/_utils.scss +0 -0
  490. package/src/assets/layout/styles/layout/layout.css +0 -0
  491. package/src/assets/layout/styles/layout/layout.scss +0 -0
  492. package/src/assets/layout/styles/layout/preloading.css +0 -0
  493. package/src/assets/layout/styles/layout/preloading.scss +0 -0
  494. package/src/assets/layout/styles/layout/sidebar/_sidebar.scss +0 -0
  495. package/src/assets/layout/styles/layout/sidebar/_sidebar_drawer.scss +0 -0
  496. package/src/assets/layout/styles/layout/sidebar/_sidebar_horizontal.scss +0 -0
  497. package/src/assets/layout/styles/layout/sidebar/_sidebar_reveal.scss +0 -0
  498. package/src/assets/layout/styles/layout/sidebar/_sidebar_slim.scss +0 -0
  499. package/src/assets/layout/styles/layout/sidebar/_sidebar_slim_plus.scss +0 -0
  500. package/src/assets/layout/styles/layout/sidebar/_sidebar_vertical.scss +0 -0
  501. package/src/assets/layout/styles/layout/sidebar/themes/_menu_bluegrey.scss +0 -0
  502. package/src/assets/layout/styles/layout/sidebar/themes/_menu_brown.scss +0 -0
  503. package/src/assets/layout/styles/layout/sidebar/themes/_menu_cyan.scss +0 -0
  504. package/src/assets/layout/styles/layout/sidebar/themes/_menu_dark.scss +0 -0
  505. package/src/assets/layout/styles/layout/sidebar/themes/_menu_deeporange.scss +0 -0
  506. package/src/assets/layout/styles/layout/sidebar/themes/_menu_deeppurple.scss +0 -0
  507. package/src/assets/layout/styles/layout/sidebar/themes/_menu_green.scss +0 -0
  508. package/src/assets/layout/styles/layout/sidebar/themes/_menu_indigo.scss +0 -0
  509. package/src/assets/layout/styles/layout/sidebar/themes/_menu_light.scss +0 -0
  510. package/src/assets/layout/styles/layout/sidebar/themes/_menu_pink.scss +0 -0
  511. package/src/assets/layout/styles/layout/sidebar/themes/_menu_purple.scss +0 -0
  512. package/src/assets/layout/styles/layout/sidebar/themes/_menu_teal.scss +0 -0
  513. package/src/assets/layout/styles/layout/topbar/_topbar.scss +0 -0
  514. package/src/assets/layout/styles/layout/topbar/_topbar_main.scss +0 -0
  515. package/src/assets/layout/styles/layout/topbar/themes/_topbar_amber.scss +0 -0
  516. package/src/assets/layout/styles/layout/topbar/themes/_topbar_blue.scss +0 -0
  517. package/src/assets/layout/styles/layout/topbar/themes/_topbar_bluegrey.scss +0 -0
  518. package/src/assets/layout/styles/layout/topbar/themes/_topbar_brown.scss +0 -0
  519. package/src/assets/layout/styles/layout/topbar/themes/_topbar_cyan.scss +0 -0
  520. package/src/assets/layout/styles/layout/topbar/themes/_topbar_dark.scss +0 -0
  521. package/src/assets/layout/styles/layout/topbar/themes/_topbar_deeporange.scss +0 -0
  522. package/src/assets/layout/styles/layout/topbar/themes/_topbar_deeppurple.scss +0 -0
  523. package/src/assets/layout/styles/layout/topbar/themes/_topbar_green.scss +0 -0
  524. package/src/assets/layout/styles/layout/topbar/themes/_topbar_grey.scss +0 -0
  525. package/src/assets/layout/styles/layout/topbar/themes/_topbar_indigo.scss +0 -0
  526. package/src/assets/layout/styles/layout/topbar/themes/_topbar_lightblue.scss +0 -0
  527. package/src/assets/layout/styles/layout/topbar/themes/_topbar_lightgreen.scss +0 -0
  528. package/src/assets/layout/styles/layout/topbar/themes/_topbar_lime.scss +0 -0
  529. package/src/assets/layout/styles/layout/topbar/themes/_topbar_orange.scss +0 -0
  530. package/src/assets/layout/styles/layout/topbar/themes/_topbar_pink.scss +0 -0
  531. package/src/assets/layout/styles/layout/topbar/themes/_topbar_purple.scss +0 -0
  532. package/src/assets/layout/styles/layout/topbar/themes/_topbar_teal.scss +0 -0
  533. package/src/assets/layout/styles/layout/topbar/themes/_topbar_white.scss +0 -0
  534. package/src/assets/layout/styles/layout/topbar/themes/_topbar_yellow.scss +0 -0
  535. package/src/assets/layout/styles/theme/_compact.scss +0 -0
  536. package/src/assets/layout/styles/theme/designer/_colors.scss +0 -0
  537. package/src/assets/layout/styles/theme/designer/_common.scss +0 -0
  538. package/src/assets/layout/styles/theme/designer/_components.scss +0 -0
  539. package/src/assets/layout/styles/theme/designer/_mixins.scss +0 -0
  540. package/src/assets/layout/styles/theme/designer/components/button/_button.scss +0 -0
  541. package/src/assets/layout/styles/theme/designer/components/button/_speeddial.scss +0 -0
  542. package/src/assets/layout/styles/theme/designer/components/button/_splitbutton.scss +0 -0
  543. package/src/assets/layout/styles/theme/designer/components/data/_carousel.scss +0 -0
  544. package/src/assets/layout/styles/theme/designer/components/data/_datatable.scss +0 -0
  545. package/src/assets/layout/styles/theme/designer/components/data/_dataview.scss +0 -0
  546. package/src/assets/layout/styles/theme/designer/components/data/_filter.scss +0 -0
  547. package/src/assets/layout/styles/theme/designer/components/data/_fullcalendar.scss +0 -0
  548. package/src/assets/layout/styles/theme/designer/components/data/_orderlist.scss +0 -0
  549. package/src/assets/layout/styles/theme/designer/components/data/_organizationchart.scss +0 -0
  550. package/src/assets/layout/styles/theme/designer/components/data/_paginator.scss +0 -0
  551. package/src/assets/layout/styles/theme/designer/components/data/_picklist.scss +0 -0
  552. package/src/assets/layout/styles/theme/designer/components/data/_timeline.scss +0 -0
  553. package/src/assets/layout/styles/theme/designer/components/data/_tree.scss +0 -0
  554. package/src/assets/layout/styles/theme/designer/components/data/_treetable.scss +0 -0
  555. package/src/assets/layout/styles/theme/designer/components/data/_virtualscroller.scss +0 -0
  556. package/src/assets/layout/styles/theme/designer/components/file/_fileupload.scss +0 -0
  557. package/src/assets/layout/styles/theme/designer/components/input/_autocomplete.scss +0 -0
  558. package/src/assets/layout/styles/theme/designer/components/input/_calendar.scss +0 -0
  559. package/src/assets/layout/styles/theme/designer/components/input/_cascadeselect.scss +0 -0
  560. package/src/assets/layout/styles/theme/designer/components/input/_checkbox.scss +0 -0
  561. package/src/assets/layout/styles/theme/designer/components/input/_chips.scss +0 -0
  562. package/src/assets/layout/styles/theme/designer/components/input/_colorpicker.scss +0 -0
  563. package/src/assets/layout/styles/theme/designer/components/input/_dropdown.scss +0 -0
  564. package/src/assets/layout/styles/theme/designer/components/input/_editor.scss +0 -0
  565. package/src/assets/layout/styles/theme/designer/components/input/_inputgroup.scss +0 -0
  566. package/src/assets/layout/styles/theme/designer/components/input/_inputmask.scss +0 -0
  567. package/src/assets/layout/styles/theme/designer/components/input/_inputnumber.scss +0 -0
  568. package/src/assets/layout/styles/theme/designer/components/input/_inputswitch.scss +0 -0
  569. package/src/assets/layout/styles/theme/designer/components/input/_inputtext.scss +0 -0
  570. package/src/assets/layout/styles/theme/designer/components/input/_listbox.scss +0 -0
  571. package/src/assets/layout/styles/theme/designer/components/input/_multiselect.scss +0 -0
  572. package/src/assets/layout/styles/theme/designer/components/input/_password.scss +0 -0
  573. package/src/assets/layout/styles/theme/designer/components/input/_radiobutton.scss +0 -0
  574. package/src/assets/layout/styles/theme/designer/components/input/_rating.scss +0 -0
  575. package/src/assets/layout/styles/theme/designer/components/input/_selectbutton.scss +0 -0
  576. package/src/assets/layout/styles/theme/designer/components/input/_slider.scss +0 -0
  577. package/src/assets/layout/styles/theme/designer/components/input/_togglebutton.scss +0 -0
  578. package/src/assets/layout/styles/theme/designer/components/input/_treeselect.scss +0 -0
  579. package/src/assets/layout/styles/theme/designer/components/menu/_breadcrumb.scss +0 -0
  580. package/src/assets/layout/styles/theme/designer/components/menu/_contextmenu.scss +0 -0
  581. package/src/assets/layout/styles/theme/designer/components/menu/_dock.scss +0 -0
  582. package/src/assets/layout/styles/theme/designer/components/menu/_megamenu.scss +0 -0
  583. package/src/assets/layout/styles/theme/designer/components/menu/_menu.scss +0 -0
  584. package/src/assets/layout/styles/theme/designer/components/menu/_menubar.scss +0 -0
  585. package/src/assets/layout/styles/theme/designer/components/menu/_panelmenu.scss +0 -0
  586. package/src/assets/layout/styles/theme/designer/components/menu/_slidemenu.scss +0 -0
  587. package/src/assets/layout/styles/theme/designer/components/menu/_steps.scss +0 -0
  588. package/src/assets/layout/styles/theme/designer/components/menu/_tabmenu.scss +0 -0
  589. package/src/assets/layout/styles/theme/designer/components/menu/_tieredmenu.scss +0 -0
  590. package/src/assets/layout/styles/theme/designer/components/messages/_inlinemessage.scss +0 -0
  591. package/src/assets/layout/styles/theme/designer/components/messages/_message.scss +0 -0
  592. package/src/assets/layout/styles/theme/designer/components/messages/_toast.scss +0 -0
  593. package/src/assets/layout/styles/theme/designer/components/misc/_avatar.scss +0 -0
  594. package/src/assets/layout/styles/theme/designer/components/misc/_badge.scss +0 -0
  595. package/src/assets/layout/styles/theme/designer/components/misc/_blockui.scss +0 -0
  596. package/src/assets/layout/styles/theme/designer/components/misc/_chip.scss +0 -0
  597. package/src/assets/layout/styles/theme/designer/components/misc/_inplace.scss +0 -0
  598. package/src/assets/layout/styles/theme/designer/components/misc/_progressbar.scss +0 -0
  599. package/src/assets/layout/styles/theme/designer/components/misc/_scrolltop.scss +0 -0
  600. package/src/assets/layout/styles/theme/designer/components/misc/_skeleton.scss +0 -0
  601. package/src/assets/layout/styles/theme/designer/components/misc/_tag.scss +0 -0
  602. package/src/assets/layout/styles/theme/designer/components/misc/_terminal.scss +0 -0
  603. package/src/assets/layout/styles/theme/designer/components/multimedia/_galleria.scss +0 -0
  604. package/src/assets/layout/styles/theme/designer/components/multimedia/_image.scss +0 -0
  605. package/src/assets/layout/styles/theme/designer/components/overlay/_confirmpopup.scss +0 -0
  606. package/src/assets/layout/styles/theme/designer/components/overlay/_dialog.scss +0 -0
  607. package/src/assets/layout/styles/theme/designer/components/overlay/_overlaypanel.scss +0 -0
  608. package/src/assets/layout/styles/theme/designer/components/overlay/_sidebar.scss +0 -0
  609. package/src/assets/layout/styles/theme/designer/components/overlay/_tooltip.scss +0 -0
  610. package/src/assets/layout/styles/theme/designer/components/panel/_accordion.scss +0 -0
  611. package/src/assets/layout/styles/theme/designer/components/panel/_card.scss +0 -0
  612. package/src/assets/layout/styles/theme/designer/components/panel/_divider.scss +0 -0
  613. package/src/assets/layout/styles/theme/designer/components/panel/_fieldset.scss +0 -0
  614. package/src/assets/layout/styles/theme/designer/components/panel/_panel.scss +0 -0
  615. package/src/assets/layout/styles/theme/designer/components/panel/_scrollpanel.scss +0 -0
  616. package/src/assets/layout/styles/theme/designer/components/panel/_splitter.scss +0 -0
  617. package/src/assets/layout/styles/theme/designer/components/panel/_tabview.scss +0 -0
  618. package/src/assets/layout/styles/theme/designer/components/panel/_toolbar.scss +0 -0
  619. package/src/assets/layout/styles/theme/extensions/_accordion.scss +0 -0
  620. package/src/assets/layout/styles/theme/extensions/_autocomplete.scss +0 -0
  621. package/src/assets/layout/styles/theme/extensions/_breadcrumb.scss +0 -0
  622. package/src/assets/layout/styles/theme/extensions/_button.scss +0 -0
  623. package/src/assets/layout/styles/theme/extensions/_calendar.scss +0 -0
  624. package/src/assets/layout/styles/theme/extensions/_carousel.scss +0 -0
  625. package/src/assets/layout/styles/theme/extensions/_cascadeselect.scss +0 -0
  626. package/src/assets/layout/styles/theme/extensions/_checkbox.scss +0 -0
  627. package/src/assets/layout/styles/theme/extensions/_chips.scss +0 -0
  628. package/src/assets/layout/styles/theme/extensions/_datatable.scss +0 -0
  629. package/src/assets/layout/styles/theme/extensions/_dropdown.scss +0 -0
  630. package/src/assets/layout/styles/theme/extensions/_fieldset.scss +0 -0
  631. package/src/assets/layout/styles/theme/extensions/_float_label.scss +0 -0
  632. package/src/assets/layout/styles/theme/extensions/_fullcalendar.scss +0 -0
  633. package/src/assets/layout/styles/theme/extensions/_galleria.scss +0 -0
  634. package/src/assets/layout/styles/theme/extensions/_input.scss +0 -0
  635. package/src/assets/layout/styles/theme/extensions/_inputgroup.scss +0 -0
  636. package/src/assets/layout/styles/theme/extensions/_inputmask.scss +0 -0
  637. package/src/assets/layout/styles/theme/extensions/_inputnumber.scss +0 -0
  638. package/src/assets/layout/styles/theme/extensions/_inputswitch.scss +0 -0
  639. package/src/assets/layout/styles/theme/extensions/_listbox.scss +0 -0
  640. package/src/assets/layout/styles/theme/extensions/_megamenu.scss +0 -0
  641. package/src/assets/layout/styles/theme/extensions/_menu.scss +0 -0
  642. package/src/assets/layout/styles/theme/extensions/_menubar.scss +0 -0
  643. package/src/assets/layout/styles/theme/extensions/_mixins.scss +0 -0
  644. package/src/assets/layout/styles/theme/extensions/_multiselect.scss +0 -0
  645. package/src/assets/layout/styles/theme/extensions/_orderlist.scss +0 -0
  646. package/src/assets/layout/styles/theme/extensions/_overlaypanel.scss +0 -0
  647. package/src/assets/layout/styles/theme/extensions/_paginator.scss +0 -0
  648. package/src/assets/layout/styles/theme/extensions/_panel.scss +0 -0
  649. package/src/assets/layout/styles/theme/extensions/_panelmenu.scss +0 -0
  650. package/src/assets/layout/styles/theme/extensions/_picklist.scss +0 -0
  651. package/src/assets/layout/styles/theme/extensions/_progressbar.scss +0 -0
  652. package/src/assets/layout/styles/theme/extensions/_radiobutton.scss +0 -0
  653. package/src/assets/layout/styles/theme/extensions/_rating.scss +0 -0
  654. package/src/assets/layout/styles/theme/extensions/_selectbutton.scss +0 -0
  655. package/src/assets/layout/styles/theme/extensions/_slidemenu.scss +0 -0
  656. package/src/assets/layout/styles/theme/extensions/_slider.scss +0 -0
  657. package/src/assets/layout/styles/theme/extensions/_steps.scss +0 -0
  658. package/src/assets/layout/styles/theme/extensions/_tabmenu.scss +0 -0
  659. package/src/assets/layout/styles/theme/extensions/_tabview.scss +0 -0
  660. package/src/assets/layout/styles/theme/extensions/_tieredmenu.scss +0 -0
  661. package/src/assets/layout/styles/theme/extensions/_timeline.scss +0 -0
  662. package/src/assets/layout/styles/theme/extensions/_togglebutton.scss +0 -0
  663. package/src/assets/layout/styles/theme/extensions/_toolbar.scss +0 -0
  664. package/src/assets/layout/styles/theme/extensions/_tooltip.scss +0 -0
  665. package/src/assets/layout/styles/theme/extensions/_tree.scss +0 -0
  666. package/src/assets/layout/styles/theme/extensions/_treeselect.scss +0 -0
  667. package/src/assets/layout/styles/theme/extensions/_treetable.scss +0 -0
  668. package/src/assets/layout/styles/theme/extensions/_vendor_extensions.scss +0 -0
  669. package/src/assets/layout/styles/theme/theme-dark/_variables.scss +0 -0
  670. package/src/assets/layout/styles/theme/theme-dark/amber/theme.css +0 -0
  671. package/src/assets/layout/styles/theme/theme-dark/amber/theme.scss +0 -0
  672. package/src/assets/layout/styles/theme/theme-dark/blue/theme.css +0 -0
  673. package/src/assets/layout/styles/theme/theme-dark/blue/theme.scss +0 -0
  674. package/src/assets/layout/styles/theme/theme-dark/bluegrey/theme.css +0 -0
  675. package/src/assets/layout/styles/theme/theme-dark/bluegrey/theme.scss +0 -0
  676. package/src/assets/layout/styles/theme/theme-dark/brown/theme.css +0 -0
  677. package/src/assets/layout/styles/theme/theme-dark/brown/theme.scss +0 -0
  678. package/src/assets/layout/styles/theme/theme-dark/cyan/theme.css +0 -0
  679. package/src/assets/layout/styles/theme/theme-dark/cyan/theme.scss +0 -0
  680. package/src/assets/layout/styles/theme/theme-dark/deeporange/theme.css +0 -0
  681. package/src/assets/layout/styles/theme/theme-dark/deeporange/theme.scss +0 -0
  682. package/src/assets/layout/styles/theme/theme-dark/deeppurple/theme.css +0 -0
  683. package/src/assets/layout/styles/theme/theme-dark/deeppurple/theme.scss +0 -0
  684. package/src/assets/layout/styles/theme/theme-dark/green/theme.css +0 -0
  685. package/src/assets/layout/styles/theme/theme-dark/green/theme.scss +0 -0
  686. package/src/assets/layout/styles/theme/theme-dark/indigo/theme.css +0 -0
  687. package/src/assets/layout/styles/theme/theme-dark/indigo/theme.scss +0 -0
  688. package/src/assets/layout/styles/theme/theme-dark/lightblue/theme.css +0 -0
  689. package/src/assets/layout/styles/theme/theme-dark/lightblue/theme.scss +0 -0
  690. package/src/assets/layout/styles/theme/theme-dark/lightgreen/theme.css +0 -0
  691. package/src/assets/layout/styles/theme/theme-dark/lightgreen/theme.scss +0 -0
  692. package/src/assets/layout/styles/theme/theme-dark/lime/theme.css +0 -0
  693. package/src/assets/layout/styles/theme/theme-dark/lime/theme.scss +0 -0
  694. package/src/assets/layout/styles/theme/theme-dark/orange/theme.css +0 -0
  695. package/src/assets/layout/styles/theme/theme-dark/orange/theme.scss +0 -0
  696. package/src/assets/layout/styles/theme/theme-dark/pink/theme.css +0 -0
  697. package/src/assets/layout/styles/theme/theme-dark/pink/theme.scss +0 -0
  698. package/src/assets/layout/styles/theme/theme-dark/purple/theme.css +0 -0
  699. package/src/assets/layout/styles/theme/theme-dark/purple/theme.scss +0 -0
  700. package/src/assets/layout/styles/theme/theme-dark/teal/theme.css +0 -0
  701. package/src/assets/layout/styles/theme/theme-dark/teal/theme.scss +0 -0
  702. package/src/assets/layout/styles/theme/theme-dark/yellow/theme.css +0 -0
  703. package/src/assets/layout/styles/theme/theme-dark/yellow/theme.scss +0 -0
  704. package/src/assets/layout/styles/theme/theme-light/_variables.scss +0 -0
  705. package/src/assets/layout/styles/theme/theme-light/amber/theme.css +0 -0
  706. package/src/assets/layout/styles/theme/theme-light/amber/theme.scss +0 -0
  707. package/src/assets/layout/styles/theme/theme-light/blue/theme.css +0 -0
  708. package/src/assets/layout/styles/theme/theme-light/blue/theme.scss +0 -0
  709. package/src/assets/layout/styles/theme/theme-light/bluegrey/theme.css +0 -0
  710. package/src/assets/layout/styles/theme/theme-light/bluegrey/theme.scss +0 -0
  711. package/src/assets/layout/styles/theme/theme-light/brown/theme.css +0 -0
  712. package/src/assets/layout/styles/theme/theme-light/brown/theme.scss +0 -0
  713. package/src/assets/layout/styles/theme/theme-light/cyan/theme.css +0 -0
  714. package/src/assets/layout/styles/theme/theme-light/cyan/theme.scss +0 -0
  715. package/src/assets/layout/styles/theme/theme-light/deeporange/theme.css +0 -0
  716. package/src/assets/layout/styles/theme/theme-light/deeporange/theme.scss +0 -0
  717. package/src/assets/layout/styles/theme/theme-light/deeppurple/theme.css +0 -0
  718. package/src/assets/layout/styles/theme/theme-light/deeppurple/theme.scss +0 -0
  719. package/src/assets/layout/styles/theme/theme-light/green/theme.css +0 -0
  720. package/src/assets/layout/styles/theme/theme-light/green/theme.scss +0 -0
  721. package/src/assets/layout/styles/theme/theme-light/indigo/theme.css +0 -0
  722. package/src/assets/layout/styles/theme/theme-light/indigo/theme.scss +0 -0
  723. package/src/assets/layout/styles/theme/theme-light/lightblue/theme.css +0 -0
  724. package/src/assets/layout/styles/theme/theme-light/lightblue/theme.scss +0 -0
  725. package/src/assets/layout/styles/theme/theme-light/lightgreen/theme.css +0 -0
  726. package/src/assets/layout/styles/theme/theme-light/lightgreen/theme.scss +0 -0
  727. package/src/assets/layout/styles/theme/theme-light/lime/theme.css +0 -0
  728. package/src/assets/layout/styles/theme/theme-light/lime/theme.scss +0 -0
  729. package/src/assets/layout/styles/theme/theme-light/orange/theme.css +0 -0
  730. package/src/assets/layout/styles/theme/theme-light/orange/theme.scss +0 -0
  731. package/src/assets/layout/styles/theme/theme-light/pink/theme.css +0 -0
  732. package/src/assets/layout/styles/theme/theme-light/pink/theme.scss +0 -0
  733. package/src/assets/layout/styles/theme/theme-light/purple/theme.css +0 -0
  734. package/src/assets/layout/styles/theme/theme-light/purple/theme.scss +0 -0
  735. package/src/assets/layout/styles/theme/theme-light/teal/theme.css +0 -0
  736. package/src/assets/layout/styles/theme/theme-light/teal/theme.scss +0 -0
  737. package/src/assets/layout/styles/theme/theme-light/yellow/theme.css +0 -0
  738. package/src/assets/layout/styles/theme/theme-light/yellow/theme.scss +0 -0
  739. package/src/assets/theme/uniondinamic/layout-light.css +0 -0
  740. package/src/assets/theme/uniondinamic/theme-light.css +0 -0
  741. package/src/styles/primeflex/primeflex.scss +0 -0
  742. package/src/styles/primeng/layout/fonts/poppins-v20-latin-300.woff +0 -0
  743. package/src/styles/primeng/layout/fonts/poppins-v20-latin-300.woff2 +0 -0
  744. package/src/styles/primeng/layout/fonts/poppins-v20-latin-500.woff +0 -0
  745. package/src/styles/primeng/layout/fonts/poppins-v20-latin-500.woff2 +0 -0
  746. package/src/styles/primeng/layout/fonts/poppins-v20-latin-600.woff +0 -0
  747. package/src/styles/primeng/layout/fonts/poppins-v20-latin-600.woff2 +0 -0
  748. package/src/styles/primeng/layout/fonts/poppins-v20-latin-700.woff +0 -0
  749. package/src/styles/primeng/layout/fonts/poppins-v20-latin-700.woff2 +0 -0
  750. package/src/styles/primeng/layout/fonts/poppins-v20-latin-regular.woff +0 -0
  751. package/src/styles/primeng/layout/fonts/poppins-v20-latin-regular.woff2 +0 -0
  752. package/src/styles/primeng/layout/layout-dark.scss +0 -0
  753. package/src/styles/primeng/layout/layout-light.scss +0 -0
  754. package/src/styles/primeng/sass/_fonts.scss +0 -0
  755. package/src/styles/primeng/sass/layout/_animation.scss +0 -0
  756. package/src/styles/primeng/sass/layout/_breadcrumb.scss +0 -0
  757. package/src/styles/primeng/sass/layout/_config.scss +0 -0
  758. package/src/styles/primeng/sass/layout/_dashboard.scss +0 -0
  759. package/src/styles/primeng/sass/layout/_footer.scss +0 -0
  760. package/src/styles/primeng/sass/layout/_help.scss +0 -0
  761. package/src/styles/primeng/sass/layout/_invoice.scss +0 -0
  762. package/src/styles/primeng/sass/layout/_landing.scss +0 -0
  763. package/src/styles/primeng/sass/layout/_loader.scss +0 -0
  764. package/src/styles/primeng/sass/layout/_main.scss +0 -0
  765. package/src/styles/primeng/sass/layout/_megamenu.scss +0 -0
  766. package/src/styles/primeng/sass/layout/_mixins.scss +0 -0
  767. package/src/styles/primeng/sass/layout/_pages.scss +0 -0
  768. package/src/styles/primeng/sass/layout/_rightmenu.scss +0 -0
  769. package/src/styles/primeng/sass/layout/_rtl.scss +0 -0
  770. package/src/styles/primeng/sass/layout/_typography.scss +0 -0
  771. package/src/styles/primeng/sass/layout/_utils.scss +0 -0
  772. package/src/styles/primeng/sass/layout/_widgets.scss +0 -0
  773. package/src/styles/primeng/sass/layout/_wizard.scss +0 -0
  774. package/src/styles/primeng/sass/layout/core/_layout.scss +0 -0
  775. package/src/styles/primeng/sass/layout/core/_layout_dark.scss +0 -0
  776. package/src/styles/primeng/sass/layout/core/_layout_light.scss +0 -0
  777. package/src/styles/primeng/sass/layout/menu/_inline_menu.scss +0 -0
  778. package/src/styles/primeng/sass/layout/menu/_menu.scss +0 -0
  779. package/src/styles/primeng/sass/layout/menu/_menu_common.scss +0 -0
  780. package/src/styles/primeng/sass/layout/menu/_menu_exports.scss +0 -0
  781. package/src/styles/primeng/sass/layout/menu/_menu_horizontal.scss +0 -0
  782. package/src/styles/primeng/sass/layout/menu/_menu_overlay.scss +0 -0
  783. package/src/styles/primeng/sass/layout/menu/_menu_responsive.scss +0 -0
  784. package/src/styles/primeng/sass/layout/menu/_menu_slim.scss +0 -0
  785. package/src/styles/primeng/sass/layout/menu/_menu_static.scss +0 -0
  786. package/src/styles/primeng/sass/layout/menu/_menu_theme.scss +0 -0
  787. package/src/styles/primeng/sass/layout/menu/_rtl_menu.scss +0 -0
  788. package/src/styles/primeng/sass/layout/menu/themes/_menu_bluegrey.scss +0 -0
  789. package/src/styles/primeng/sass/layout/menu/themes/_menu_brown.scss +0 -0
  790. package/src/styles/primeng/sass/layout/menu/themes/_menu_cyan.scss +0 -0
  791. package/src/styles/primeng/sass/layout/menu/themes/_menu_dark.scss +0 -0
  792. package/src/styles/primeng/sass/layout/menu/themes/_menu_deeporange.scss +0 -0
  793. package/src/styles/primeng/sass/layout/menu/themes/_menu_deeppurple.scss +0 -0
  794. package/src/styles/primeng/sass/layout/menu/themes/_menu_green.scss +0 -0
  795. package/src/styles/primeng/sass/layout/menu/themes/_menu_indigo.scss +0 -0
  796. package/src/styles/primeng/sass/layout/menu/themes/_menu_light.scss +0 -0
  797. package/src/styles/primeng/sass/layout/menu/themes/_menu_pink.scss +0 -0
  798. package/src/styles/primeng/sass/layout/menu/themes/_menu_purple.scss +0 -0
  799. package/src/styles/primeng/sass/layout/menu/themes/_menu_teal.scss +0 -0
  800. package/src/styles/primeng/sass/layout/topbar/_rtl_topbar.scss +0 -0
  801. package/src/styles/primeng/sass/layout/topbar/_topbar.scss +0 -0
  802. package/src/styles/primeng/sass/layout/topbar/_topbar_common.scss +0 -0
  803. package/src/styles/primeng/sass/layout/topbar/_topbar_exports.scss +0 -0
  804. package/src/styles/primeng/sass/layout/topbar/_topbar_responsive.scss +0 -0
  805. package/src/styles/primeng/sass/layout/topbar/_topbar_theme.scss +0 -0
  806. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_amber.scss +0 -0
  807. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_blue.scss +0 -0
  808. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_bluegrey.scss +0 -0
  809. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_brown.scss +0 -0
  810. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_custom.scss +0 -0
  811. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_cyan.scss +0 -0
  812. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_dark.scss +0 -0
  813. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_deeporange.scss +0 -0
  814. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_deeppurple.scss +0 -0
  815. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_green.scss +0 -0
  816. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_grey.scss +0 -0
  817. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_indigo.scss +0 -0
  818. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_lightblue.scss +0 -0
  819. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_lightgreen.scss +0 -0
  820. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_lime.scss +0 -0
  821. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_orange.scss +0 -0
  822. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_pink.scss +0 -0
  823. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_purple.scss +0 -0
  824. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_teal.scss +0 -0
  825. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_white.scss +0 -0
  826. package/src/styles/primeng/sass/layout/topbar/themes/_topbar_yellow.scss +0 -0
  827. package/src/styles/primeng/sass/overrides/_layout_styles.scss +0 -0
  828. package/src/styles/primeng/sass/overrides/_layout_variables.scss +0 -0
  829. package/src/styles/primeng/sass/overrides/_theme_styles.scss +139 -81
  830. package/src/styles/primeng/sass/overrides/_theme_styles_dark.scss +240 -97
  831. package/src/styles/primeng/sass/overrides/_theme_variables.scss +0 -0
  832. package/src/styles/primeng/sass/theme/_compact.scss +0 -0
  833. package/src/styles/primeng/sass/theme/_theme_dark.scss +0 -0
  834. package/src/styles/primeng/sass/theme/_theme_light.scss +0 -0
  835. package/src/styles/primeng/sass/theme/designer/_colors.scss +0 -0
  836. package/src/styles/primeng/sass/theme/designer/_common.scss +0 -0
  837. package/src/styles/primeng/sass/theme/designer/_components.scss +0 -0
  838. package/src/styles/primeng/sass/theme/designer/_mixins.scss +0 -0
  839. package/src/styles/primeng/sass/theme/designer/components/button/_button.scss +0 -0
  840. package/src/styles/primeng/sass/theme/designer/components/button/_speeddial.scss +0 -0
  841. package/src/styles/primeng/sass/theme/designer/components/button/_splitbutton.scss +0 -0
  842. package/src/styles/primeng/sass/theme/designer/components/data/_carousel.scss +0 -0
  843. package/src/styles/primeng/sass/theme/designer/components/data/_datatable.scss +0 -0
  844. package/src/styles/primeng/sass/theme/designer/components/data/_dataview.scss +0 -0
  845. package/src/styles/primeng/sass/theme/designer/components/data/_filter.scss +0 -0
  846. package/src/styles/primeng/sass/theme/designer/components/data/_fullcalendar.scss +0 -0
  847. package/src/styles/primeng/sass/theme/designer/components/data/_orderlist.scss +0 -0
  848. package/src/styles/primeng/sass/theme/designer/components/data/_organizationchart.scss +0 -0
  849. package/src/styles/primeng/sass/theme/designer/components/data/_paginator.scss +0 -0
  850. package/src/styles/primeng/sass/theme/designer/components/data/_picklist.scss +0 -0
  851. package/src/styles/primeng/sass/theme/designer/components/data/_timeline.scss +0 -0
  852. package/src/styles/primeng/sass/theme/designer/components/data/_tree.scss +0 -0
  853. package/src/styles/primeng/sass/theme/designer/components/data/_treetable.scss +0 -0
  854. package/src/styles/primeng/sass/theme/designer/components/data/_virtualscroller.scss +0 -0
  855. package/src/styles/primeng/sass/theme/designer/components/file/_fileupload.scss +0 -0
  856. package/src/styles/primeng/sass/theme/designer/components/input/_autocomplete.scss +0 -0
  857. package/src/styles/primeng/sass/theme/designer/components/input/_calendar.scss +0 -0
  858. package/src/styles/primeng/sass/theme/designer/components/input/_cascadeselect.scss +0 -0
  859. package/src/styles/primeng/sass/theme/designer/components/input/_checkbox.scss +0 -0
  860. package/src/styles/primeng/sass/theme/designer/components/input/_chips.scss +0 -0
  861. package/src/styles/primeng/sass/theme/designer/components/input/_colorpicker.scss +0 -0
  862. package/src/styles/primeng/sass/theme/designer/components/input/_dropdown.scss +0 -0
  863. package/src/styles/primeng/sass/theme/designer/components/input/_editor.scss +0 -0
  864. package/src/styles/primeng/sass/theme/designer/components/input/_inputgroup.scss +0 -0
  865. package/src/styles/primeng/sass/theme/designer/components/input/_inputmask.scss +0 -0
  866. package/src/styles/primeng/sass/theme/designer/components/input/_inputnumber.scss +0 -0
  867. package/src/styles/primeng/sass/theme/designer/components/input/_inputswitch.scss +0 -0
  868. package/src/styles/primeng/sass/theme/designer/components/input/_inputtext.scss +0 -0
  869. package/src/styles/primeng/sass/theme/designer/components/input/_listbox.scss +0 -0
  870. package/src/styles/primeng/sass/theme/designer/components/input/_multiselect.scss +0 -0
  871. package/src/styles/primeng/sass/theme/designer/components/input/_password.scss +0 -0
  872. package/src/styles/primeng/sass/theme/designer/components/input/_radiobutton.scss +0 -0
  873. package/src/styles/primeng/sass/theme/designer/components/input/_rating.scss +0 -0
  874. package/src/styles/primeng/sass/theme/designer/components/input/_selectbutton.scss +0 -0
  875. package/src/styles/primeng/sass/theme/designer/components/input/_slider.scss +0 -0
  876. package/src/styles/primeng/sass/theme/designer/components/input/_togglebutton.scss +0 -0
  877. package/src/styles/primeng/sass/theme/designer/components/input/_treeselect.scss +0 -0
  878. package/src/styles/primeng/sass/theme/designer/components/menu/_breadcrumb.scss +0 -0
  879. package/src/styles/primeng/sass/theme/designer/components/menu/_contextmenu.scss +0 -0
  880. package/src/styles/primeng/sass/theme/designer/components/menu/_dock.scss +0 -0
  881. package/src/styles/primeng/sass/theme/designer/components/menu/_megamenu.scss +0 -0
  882. package/src/styles/primeng/sass/theme/designer/components/menu/_menu.scss +0 -0
  883. package/src/styles/primeng/sass/theme/designer/components/menu/_menubar.scss +0 -0
  884. package/src/styles/primeng/sass/theme/designer/components/menu/_panelmenu.scss +0 -0
  885. package/src/styles/primeng/sass/theme/designer/components/menu/_slidemenu.scss +0 -0
  886. package/src/styles/primeng/sass/theme/designer/components/menu/_steps.scss +0 -0
  887. package/src/styles/primeng/sass/theme/designer/components/menu/_tabmenu.scss +0 -0
  888. package/src/styles/primeng/sass/theme/designer/components/menu/_tieredmenu.scss +0 -0
  889. package/src/styles/primeng/sass/theme/designer/components/messages/_inlinemessage.scss +0 -0
  890. package/src/styles/primeng/sass/theme/designer/components/messages/_message.scss +0 -0
  891. package/src/styles/primeng/sass/theme/designer/components/messages/_toast.scss +0 -0
  892. package/src/styles/primeng/sass/theme/designer/components/misc/_avatar.scss +0 -0
  893. package/src/styles/primeng/sass/theme/designer/components/misc/_badge.scss +0 -0
  894. package/src/styles/primeng/sass/theme/designer/components/misc/_blockui.scss +0 -0
  895. package/src/styles/primeng/sass/theme/designer/components/misc/_chip.scss +0 -0
  896. package/src/styles/primeng/sass/theme/designer/components/misc/_inplace.scss +0 -0
  897. package/src/styles/primeng/sass/theme/designer/components/misc/_progressbar.scss +0 -0
  898. package/src/styles/primeng/sass/theme/designer/components/misc/_scrolltop.scss +0 -0
  899. package/src/styles/primeng/sass/theme/designer/components/misc/_skeleton.scss +0 -0
  900. package/src/styles/primeng/sass/theme/designer/components/misc/_tag.scss +0 -0
  901. package/src/styles/primeng/sass/theme/designer/components/misc/_terminal.scss +0 -0
  902. package/src/styles/primeng/sass/theme/designer/components/multimedia/_galleria.scss +0 -0
  903. package/src/styles/primeng/sass/theme/designer/components/multimedia/_image.scss +0 -0
  904. package/src/styles/primeng/sass/theme/designer/components/overlay/_confirmpopup.scss +0 -0
  905. package/src/styles/primeng/sass/theme/designer/components/overlay/_dialog.scss +0 -0
  906. package/src/styles/primeng/sass/theme/designer/components/overlay/_overlaypanel.scss +0 -0
  907. package/src/styles/primeng/sass/theme/designer/components/overlay/_sidebar.scss +0 -0
  908. package/src/styles/primeng/sass/theme/designer/components/overlay/_tooltip.scss +0 -0
  909. package/src/styles/primeng/sass/theme/designer/components/panel/_accordion.scss +0 -0
  910. package/src/styles/primeng/sass/theme/designer/components/panel/_card.scss +0 -0
  911. package/src/styles/primeng/sass/theme/designer/components/panel/_divider.scss +0 -0
  912. package/src/styles/primeng/sass/theme/designer/components/panel/_fieldset.scss +0 -0
  913. package/src/styles/primeng/sass/theme/designer/components/panel/_panel.scss +0 -0
  914. package/src/styles/primeng/sass/theme/designer/components/panel/_scrollpanel.scss +0 -0
  915. package/src/styles/primeng/sass/theme/designer/components/panel/_splitter.scss +0 -0
  916. package/src/styles/primeng/sass/theme/designer/components/panel/_tabview.scss +0 -0
  917. package/src/styles/primeng/sass/theme/designer/components/panel/_toolbar.scss +0 -0
  918. package/src/styles/primeng/sass/theme/extensions/_accordion.scss +0 -0
  919. package/src/styles/primeng/sass/theme/extensions/_autocomplete.scss +0 -0
  920. package/src/styles/primeng/sass/theme/extensions/_breadcrumb.scss +0 -0
  921. package/src/styles/primeng/sass/theme/extensions/_button.scss +0 -0
  922. package/src/styles/primeng/sass/theme/extensions/_calendar.scss +0 -0
  923. package/src/styles/primeng/sass/theme/extensions/_carousel.scss +0 -0
  924. package/src/styles/primeng/sass/theme/extensions/_cascadeselect.scss +0 -0
  925. package/src/styles/primeng/sass/theme/extensions/_checkbox.scss +0 -0
  926. package/src/styles/primeng/sass/theme/extensions/_chips.scss +0 -0
  927. package/src/styles/primeng/sass/theme/extensions/_datatable.scss +0 -0
  928. package/src/styles/primeng/sass/theme/extensions/_dropdown.scss +0 -0
  929. package/src/styles/primeng/sass/theme/extensions/_fieldset.scss +0 -0
  930. package/src/styles/primeng/sass/theme/extensions/_float_label.scss +0 -0
  931. package/src/styles/primeng/sass/theme/extensions/_fullcalendar.scss +0 -0
  932. package/src/styles/primeng/sass/theme/extensions/_galleria.scss +0 -0
  933. package/src/styles/primeng/sass/theme/extensions/_input.scss +0 -0
  934. package/src/styles/primeng/sass/theme/extensions/_inputgroup.scss +0 -0
  935. package/src/styles/primeng/sass/theme/extensions/_inputmask.scss +0 -0
  936. package/src/styles/primeng/sass/theme/extensions/_inputnumber.scss +0 -0
  937. package/src/styles/primeng/sass/theme/extensions/_inputswitch.scss +0 -0
  938. package/src/styles/primeng/sass/theme/extensions/_listbox.scss +0 -0
  939. package/src/styles/primeng/sass/theme/extensions/_megamenu.scss +0 -0
  940. package/src/styles/primeng/sass/theme/extensions/_menu.scss +0 -0
  941. package/src/styles/primeng/sass/theme/extensions/_menubar.scss +0 -0
  942. package/src/styles/primeng/sass/theme/extensions/_mixins.scss +0 -0
  943. package/src/styles/primeng/sass/theme/extensions/_multiselect.scss +0 -0
  944. package/src/styles/primeng/sass/theme/extensions/_orderlist.scss +0 -0
  945. package/src/styles/primeng/sass/theme/extensions/_overlaypanel.scss +0 -0
  946. package/src/styles/primeng/sass/theme/extensions/_paginator.scss +0 -0
  947. package/src/styles/primeng/sass/theme/extensions/_panel.scss +0 -0
  948. package/src/styles/primeng/sass/theme/extensions/_panelmenu.scss +0 -0
  949. package/src/styles/primeng/sass/theme/extensions/_picklist.scss +0 -0
  950. package/src/styles/primeng/sass/theme/extensions/_progressbar.scss +0 -0
  951. package/src/styles/primeng/sass/theme/extensions/_radiobutton.scss +0 -0
  952. package/src/styles/primeng/sass/theme/extensions/_rating.scss +0 -0
  953. package/src/styles/primeng/sass/theme/extensions/_selectbutton.scss +0 -0
  954. package/src/styles/primeng/sass/theme/extensions/_slidemenu.scss +0 -0
  955. package/src/styles/primeng/sass/theme/extensions/_slider.scss +0 -0
  956. package/src/styles/primeng/sass/theme/extensions/_steps.scss +0 -0
  957. package/src/styles/primeng/sass/theme/extensions/_tabmenu.scss +0 -0
  958. package/src/styles/primeng/sass/theme/extensions/_tabview.scss +0 -0
  959. package/src/styles/primeng/sass/theme/extensions/_tieredmenu.scss +0 -0
  960. package/src/styles/primeng/sass/theme/extensions/_timeline.scss +0 -0
  961. package/src/styles/primeng/sass/theme/extensions/_togglebutton.scss +0 -0
  962. package/src/styles/primeng/sass/theme/extensions/_toolbar.scss +0 -0
  963. package/src/styles/primeng/sass/theme/extensions/_tooltip.scss +0 -0
  964. package/src/styles/primeng/sass/theme/extensions/_tree.scss +0 -0
  965. package/src/styles/primeng/sass/theme/extensions/_treeselect.scss +0 -0
  966. package/src/styles/primeng/sass/theme/extensions/_treetable.scss +0 -0
  967. package/src/styles/primeng/sass/theme/extensions/_vendor_extensions.scss +0 -0
  968. package/src/styles/primeng/sass/variables/layout/_layout_common.scss +0 -0
  969. package/src/styles/primeng/sass/variables/layout/_layout_dark.scss +0 -0
  970. package/src/styles/primeng/sass/variables/layout/_layout_light.scss +0 -0
  971. package/src/styles/primeng/sass/variables/theme/_theme_dark.scss +0 -0
  972. package/src/styles/primeng/sass/variables/theme/_theme_light.scss +0 -0
  973. package/src/styles/primeng/theme/theme-dark.scss +0 -0
  974. package/src/styles/primeng/theme/theme-light.scss +0 -0
  975. package/src/styles/sass/_mixins.scss +0 -0
  976. package/src/styles/sass/_variables.scss +0 -0
  977. package/src/styles/sass/mixins/_breakpoints.scss +0 -0
  978. package/src/styles/sass/mixins/_colors.scss +0 -0
  979. package/src/styles/sass/pages/_general.scss +0 -0
  980. package/src/styles/sass/pages/_listado.scss +0 -0
  981. package/src/styles-dark.scss +0 -0
  982. package/src/styles.scss +1 -1
  983. package/esm2022/src/app/core/componentes/tabs-multiples/tabs-multiples.component.mjs +0 -182
  984. package/esm2022/src/app/core/servicios/tabs-multiples.service.mjs +0 -62
  985. package/src/app/core/componentes/tabs-multiples/tabs-multiples.component.d.ts +0 -44
  986. package/src/app/core/servicios/tabs-multiples.service.d.ts +0 -19
@@ -13,6 +13,7 @@ import { ButtonModule } from 'primeng/button';
13
13
  import { AccordionModule } from 'primeng/accordion';
14
14
  import { FormsModule } from '@angular/forms';
15
15
  import { TableModule } from 'primeng/table';
16
+ import { TemplateTablaVaciaComponent } from '../../../core/componentes/template-tabla-vacia/template-tabla-vacia.component';
16
17
  import { InputTextareaModule } from 'primeng/inputtextarea';
17
18
  import * as i0 from "@angular/core";
18
19
  import * as i1 from "../../../shared/servicios/general.service";
@@ -258,12 +259,12 @@ export class PopupRecursoComponent {
258
259
  this.regresar.emit();
259
260
  }
260
261
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: PopupRecursoComponent, deps: [{ token: i1.GeneralService }, { token: i2.cargarmapasGlobal }, { token: i3.ToastService }, { token: i4.GeneralPipe }, { token: i5.UtilsService }, { token: i3.ToastService }, { token: i6.ConfirmationService }], target: i0.ɵɵFactoryTarget.Component });
261
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.4", type: PopupRecursoComponent, isStandalone: true, selector: "app-popup-recurso", outputs: { regresar: "regresar" }, providers: [MessageService], ngImport: i0, template: "<p-confirmPopup></p-confirmPopup>\n<p-dialog id='popupReImprimirRegresion' header=\"{{'recurso' | translate}}\" [(visible)]=\"mostrarPopup\"\n [breakpoints]=\"{'960px': '75vw', '640px': '100vw'}\" [style]=\"{width: '50vw'}\" (onHide)=\"ocultar()\" [modal]=\"true\">\n <p-accordion class=\"w-full\">\n <p-accordionTab [selected]=\"true\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'punto' | translate }} {{'proceso' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <div class=\"p-fluid grid\">\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <p-dropdown [options]=\"listaPuntosProceso\" [autoDisplayFirst]=\"false\" appendTo=\"body\" [autoZIndex]=\"false\"\n optionLabel=\"label\" optionValue=\"key\" [(ngModel)]=\"recursoPuntoDTO.puntoProceso\">\n </p-dropdown>\n </div>\n </div>\n <div class=\"flex justify-content-end align-items-center mt-3\">\n <button pButton pRipple label=\"{{'link_guardar' | translate }}\"\n class=\"p-element p-ripple ml-2 p-button-raised p-button p-component\" type=\"button\" (click)=\"guardar()\"\n *ngIf=\"nuevo\"><span class=\"glyphicons glyphicons-floppy-save\"\n style=\"width: auto;\"></span></button>\n <button pButton pRipple label=\"{{'link_actualizar' | translate }}\"\n class=\"ml-2 p-button-raised\" *ngIf=\"!nuevo\" type=\"button\"\n (click)=\"guardar()\"><span class=\"glyphicons glyphicons-refresh\"\n style=\"width: auto;\"></span></button>\n <button pButton label=\"{{'link_eliminar' | translate }}\"\n class=\"p-button-outlined ml-2 mr-2p-element p-button p-component eliminar\" type=\"button\"\n *ngIf=\"!nuevo\" (click)=\"eliminar($event)\"><span class=\"glyphicons glyphicons-bin\"\n style=\"width: auto;\"></span></button>\n </div>\n </div>\n </ng-template>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"!nuevo\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'cruce' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div class=\"flex justify-content-end align-items-center mb-3\">\n <button pButton label=\"{{'link_nuevo' | translate}}\" (click)=\"nuevoCruce()\" icon=\"pi pi-plus\"\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\n </div>\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"listaCruce\" [scrollable]=\"true\"\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\n editMode=\"row\" dataKey=\"llaveTabla\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 40%;\">{{'entrada' | translate}}</th>\n <th style=\"width: 40%;\">{{'valor' | translate}}</th>\n <th style=\"width: 10%;\"> </th>\n </tr>\n <tr class=\" TablaNuevoRegistro\" *ngIf=\"vistaVisualizar === 'nuevoCruce'\">\n <td style=\"width: 40%;\">\n <p-dropdown class=\"w-full\" [options]=\"listaEntrada\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruceRecursoPunto.fuenteEntrada\"></p-dropdown>\n </td>\n <td style=\"width: 40%;\">\n <p-dropdown class=\"w-full\" [options]=\"listadoAtributoPunto\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\"\n [(ngModel)]=\"cruceRecursoPunto.atributoPunto\" class=\"w-full\"></p-dropdown>\n </td>\n <td style=\"width: 10%;\" >\n <div class=\"flex justify-content-end\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-check\" (click)=\"agregarCruce(null,true)\"\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <button pButton pRipple type=\"button\" (click)=\"cancelarCruce()\" icon=\"pi pi-times\"\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n </div>\n </td>\n\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-cruce let-editing=\"editing\" let-ri=\"rowIndex\">\n <tr [pEditableRow]=\"cruce\">\n <td style=\"width: 40%;\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-dropdown [options]=\"listaEntrada\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruce.reporteEntrada\"></p-dropdown>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{cruce.descripcionEntrada}}\n </ng-template>\n </p-cellEditor>\n </td>\n <td style=\"width: 40%;\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-dropdown [options]=\"listadoAtributoPunto\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruce.atributoPunto\"></p-dropdown>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{cruce.atributoPuntoDescripcion}}\n </ng-template>\n </p-cellEditor>\n </td>\n <td style=\"width: 10%;\">\n <div class=\"flex align-items-center justify-content-end gap-2\">\n <!-- CHECK GUARDAR -->\n <button *ngIf=\"editing\" pButton pRipple type=\"button\" pSaveEditableRow\n icon=\"pi pi-check\" (click)=\"agregarCruce(cruce, false)\"\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- CANCELAR -->\n <button *ngIf=\"editing\" pButton pRipple type=\"button\" pCancelEditableRow\n icon=\"pi pi-times\"\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- EDITAR -->\n <button *ngIf=\"!editing\" pButton pRipple type=\"button\" pInitEditableRow\n icon=\"glyphicons glyphicons-pencil\"\n class=\"p-element p-ripple p-button-rounded p-button-secondary mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- ELIMINAR -->\n <button *ngIf=\"!editing\" pButton pRipple type=\"button\" pDeleteEditableRow\n icon=\"pi pi-trash\" (click)=\"eliminarCruce($event,cruce)\"\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n </div>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr class=\"p-3 font-medium emptymessage\">\n <td colspan=\"5\">\n {{'mensajetablavacia' | translate}} \n </td>\n </tr>\n </ng-template>\n </p-table>\n </ng-template>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"!nuevo\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'filtro' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n\n <p-table [value]=\"listaAtributoPunto\" responsiveLayout=\"scroll\" [scrollable]=\"true\"\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" >\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 50%;\">{{'descripcion' | translate}}</th>\n <th style=\"width: 50%;\">{{'codigo' | translate}}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-element>\n <tr>\n <td style=\"width: 50%;\">\n {{element.descripcion}}\n </td>\n <td style=\"width: 50%;\">\n {{element.codigo}}\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr class=\"p-3 font-medium emptymessage\">\n <td colspan=\"5\">\n {{'mensajetablavacia' | translate}} \n </td>\n </tr>\n </ng-template>\n </p-table>\n\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <label class=\"font-medium w-full\" for=\"descripcion\">{{'filtro' | translate}}\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea\n [(ngModel)]=\"recursoPuntoDTO.filtro\" autofocus [autoResize]=\"true\"> </textarea></label>\n </div>\n <div class=\"flex justify-content-end align-content-center mt-3\">\n <button pButton pRipple class=\"ml-2 p-button-raised\" (click)=\"guardar()\"\n icon=\"glyphicons glyphicons-refresh\" label=\"Actualizar\" ></button>\n </div>\n </ng-template>\n </p-accordionTab>\n </p-accordion>\n</p-dialog>\n", styles: [":host ::ng-deep .p-dropdown{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i9.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "directive", type: i6.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ConfirmPopupModule }, { kind: "component", type: i10.ConfirmPopup, selector: "p-confirmPopup", inputs: ["key", "defaultFocus", "showTransitionOptions", "hideTransitionOptions", "autoZIndex", "baseZIndex", "style", "styleClass", "visible"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i11.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i12.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "ngmodule", type: AccordionModule }, { kind: "component", type: i13.Accordion, selector: "p-accordion", inputs: ["multiple", "style", "styleClass", "expandIcon", "collapseIcon", "activeIndex", "selectOnFocus", "headerAriaLevel"], outputs: ["onClose", "onOpen", "activeIndexChange"] }, { kind: "component", type: i13.AccordionTab, selector: "p-accordionTab", inputs: ["id", "header", "headerStyle", "tabStyle", "contentStyle", "tabStyleClass", "headerStyleClass", "contentStyleClass", "disabled", "cache", "transitionOptions", "iconPos", "selected", "headerAriaLevel"], outputs: ["selectedChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i14.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i14.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i14.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i15.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "component", type: i15.CellEditor, selector: "p-cellEditor" }, { kind: "directive", type: i15.EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "directive", type: i15.InitEditableRow, selector: "[pInitEditableRow]" }, { kind: "directive", type: i15.SaveEditableRow, selector: "[pSaveEditableRow]" }, { kind: "directive", type: i15.CancelEditableRow, selector: "[pCancelEditableRow]" }, { kind: "ngmodule", type: InputTextareaModule }, { kind: "directive", type: i16.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize", "variant"], outputs: ["onResize"] }] });
262
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.4", type: PopupRecursoComponent, isStandalone: true, selector: "app-popup-recurso", outputs: { regresar: "regresar" }, providers: [MessageService], ngImport: i0, template: "<p-confirmPopup></p-confirmPopup>\n<p-dialog id='popupReImprimirRegresion' header=\"{{'recurso' | translate}}\" [(visible)]=\"mostrarPopup\"\n [breakpoints]=\"{'960px': '75vw', '640px': '100vw'}\" [style]=\"{width: '50vw'}\" (onHide)=\"ocultar()\" [modal]=\"true\">\n <p-accordion class=\"w-full\">\n <p-accordionTab [selected]=\"true\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'punto' | translate }} {{'proceso' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <div class=\"p-fluid grid\">\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <p-dropdown [options]=\"listaPuntosProceso\" [autoDisplayFirst]=\"false\" appendTo=\"body\" [autoZIndex]=\"false\"\n optionLabel=\"label\" optionValue=\"key\" [(ngModel)]=\"recursoPuntoDTO.puntoProceso\">\n </p-dropdown>\n </div>\n </div>\n <div class=\"flex justify-content-end align-items-center mt-3\">\n <button pButton pRipple label=\"{{'link_guardar' | translate }}\"\n class=\"p-element p-ripple ml-2 p-button-raised p-button p-component\" type=\"button\" (click)=\"guardar()\"\n *ngIf=\"nuevo\"><span class=\"glyphicons glyphicons-floppy-save\"\n style=\"width: auto;\"></span></button>\n <button pButton pRipple label=\"{{'link_actualizar' | translate }}\"\n class=\"ml-2 p-button-raised\" *ngIf=\"!nuevo\" type=\"button\"\n (click)=\"guardar()\"><span class=\"glyphicons glyphicons-refresh\"\n style=\"width: auto;\"></span></button>\n <button pButton label=\"{{'link_eliminar' | translate }}\"\n class=\"p-button-outlined ml-2 mr-2p-element p-button p-component eliminar\" type=\"button\"\n *ngIf=\"!nuevo\" (click)=\"eliminar($event)\"><span class=\"glyphicons glyphicons-bin\"\n style=\"width: auto;\"></span></button>\n </div>\n </div>\n </ng-template>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"!nuevo\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'cruce' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div class=\"flex justify-content-end align-items-center mb-3\">\n <button pButton label=\"{{'link_nuevo' | translate}}\" (click)=\"nuevoCruce()\" icon=\"pi pi-plus\"\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\n </div>\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"listaCruce\" [scrollable]=\"true\"\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\n editMode=\"row\" dataKey=\"llaveTabla\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 40%;\">{{'entrada' | translate}}</th>\n <th style=\"width: 40%;\">{{'valor' | translate}}</th>\n <th style=\"width: 10%;\"> </th>\n </tr>\n <tr class=\" TablaNuevoRegistro\" *ngIf=\"vistaVisualizar === 'nuevoCruce'\">\n <td style=\"width: 40%;\">\n <p-dropdown class=\"w-full\" [options]=\"listaEntrada\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruceRecursoPunto.fuenteEntrada\"></p-dropdown>\n </td>\n <td style=\"width: 40%;\">\n <p-dropdown class=\"w-full\" [options]=\"listadoAtributoPunto\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\"\n [(ngModel)]=\"cruceRecursoPunto.atributoPunto\" class=\"w-full\"></p-dropdown>\n </td>\n <td style=\"width: 10%;\" >\n <div class=\"flex justify-content-end\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-check\" (click)=\"agregarCruce(null,true)\"\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <button pButton pRipple type=\"button\" (click)=\"cancelarCruce()\" icon=\"pi pi-times\"\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n </div>\n </td>\n\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-cruce let-editing=\"editing\" let-ri=\"rowIndex\">\n <tr [pEditableRow]=\"cruce\">\n <td style=\"width: 40%;\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-dropdown [options]=\"listaEntrada\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruce.reporteEntrada\"></p-dropdown>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{cruce.descripcionEntrada}}\n </ng-template>\n </p-cellEditor>\n </td>\n <td style=\"width: 40%;\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-dropdown [options]=\"listadoAtributoPunto\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruce.atributoPunto\"></p-dropdown>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{cruce.atributoPuntoDescripcion}}\n </ng-template>\n </p-cellEditor>\n </td>\n <td style=\"width: 10%;\">\n <div class=\"flex align-items-center justify-content-end gap-2\">\n <!-- CHECK GUARDAR -->\n <button *ngIf=\"editing\" pButton pRipple type=\"button\" pSaveEditableRow\n icon=\"pi pi-check\" (click)=\"agregarCruce(cruce, false)\"\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- CANCELAR -->\n <button *ngIf=\"editing\" pButton pRipple type=\"button\" pCancelEditableRow\n icon=\"pi pi-times\"\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- EDITAR -->\n <button *ngIf=\"!editing\" pButton pRipple type=\"button\" pInitEditableRow\n icon=\"glyphicons glyphicons-pencil\"\n class=\"p-element p-ripple p-button-rounded p-button-secondary mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- ELIMINAR -->\n <button *ngIf=\"!editing\" pButton pRipple type=\"button\" pDeleteEditableRow\n icon=\"pi pi-trash\" (click)=\"eliminarCruce($event,cruce)\"\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n </div>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr>\n <td colspan=\"100\"> \n <app-template-tabla-vacia></app-template-tabla-vacia>\n </td>\n </tr>\n </ng-template> </p-table>\n </ng-template>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"!nuevo\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'filtro' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n\n <p-table [value]=\"listaAtributoPunto\" responsiveLayout=\"scroll\" [scrollable]=\"true\"\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" >\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 50%;\">{{'descripcion' | translate}}</th>\n <th style=\"width: 50%;\">{{'codigo' | translate}}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-element>\n <tr>\n <td style=\"width: 50%;\">\n {{element.descripcion}}\n </td>\n <td style=\"width: 50%;\">\n {{element.codigo}}\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr>\n <td colspan=\"100\"> \n <app-template-tabla-vacia></app-template-tabla-vacia>\n </td>\n </tr>\n </ng-template> </p-table>\n\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <label class=\"font-medium w-full\" for=\"descripcion\">{{'filtro' | translate}}\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea\n [(ngModel)]=\"recursoPuntoDTO.filtro\" autofocus [autoResize]=\"true\"> </textarea></label>\n </div>\n <div class=\"flex justify-content-end align-content-center mt-3\">\n <button pButton pRipple class=\"ml-2 p-button-raised\" (click)=\"guardar()\"\n icon=\"glyphicons glyphicons-refresh\" label=\"Actualizar\" ></button>\n </div>\n </ng-template>\n </p-accordionTab>\n </p-accordion>\n</p-dialog>\n", styles: [":host ::ng-deep .p-dropdown{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i9.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "directive", type: i6.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ConfirmPopupModule }, { kind: "component", type: i10.ConfirmPopup, selector: "p-confirmPopup", inputs: ["key", "defaultFocus", "showTransitionOptions", "hideTransitionOptions", "autoZIndex", "baseZIndex", "style", "styleClass", "visible"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i11.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i12.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "ngmodule", type: AccordionModule }, { kind: "component", type: i13.Accordion, selector: "p-accordion", inputs: ["multiple", "style", "styleClass", "expandIcon", "collapseIcon", "activeIndex", "selectOnFocus", "headerAriaLevel"], outputs: ["onClose", "onOpen", "activeIndexChange"] }, { kind: "component", type: i13.AccordionTab, selector: "p-accordionTab", inputs: ["id", "header", "headerStyle", "tabStyle", "contentStyle", "tabStyleClass", "headerStyleClass", "contentStyleClass", "disabled", "cache", "transitionOptions", "iconPos", "selected", "headerAriaLevel"], outputs: ["selectedChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i14.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i14.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i14.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i15.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "component", type: i15.CellEditor, selector: "p-cellEditor" }, { kind: "directive", type: i15.EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "directive", type: i15.InitEditableRow, selector: "[pInitEditableRow]" }, { kind: "directive", type: i15.SaveEditableRow, selector: "[pSaveEditableRow]" }, { kind: "directive", type: i15.CancelEditableRow, selector: "[pCancelEditableRow]" }, { kind: "component", type: TemplateTablaVaciaComponent, selector: "app-template-tabla-vacia" }, { kind: "ngmodule", type: InputTextareaModule }, { kind: "directive", type: i16.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize", "variant"], outputs: ["onResize"] }] });
262
263
  }
263
264
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: PopupRecursoComponent, decorators: [{
264
265
  type: Component,
265
- args: [{ selector: 'app-popup-recurso', imports: [TranslateModule, CommonModule, DialogModule, ConfirmPopupModule, DropdownModule, ButtonModule, AccordionModule, FormsModule, TableModule, InputTextareaModule], standalone: true, providers: [MessageService], template: "<p-confirmPopup></p-confirmPopup>\n<p-dialog id='popupReImprimirRegresion' header=\"{{'recurso' | translate}}\" [(visible)]=\"mostrarPopup\"\n [breakpoints]=\"{'960px': '75vw', '640px': '100vw'}\" [style]=\"{width: '50vw'}\" (onHide)=\"ocultar()\" [modal]=\"true\">\n <p-accordion class=\"w-full\">\n <p-accordionTab [selected]=\"true\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'punto' | translate }} {{'proceso' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <div class=\"p-fluid grid\">\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <p-dropdown [options]=\"listaPuntosProceso\" [autoDisplayFirst]=\"false\" appendTo=\"body\" [autoZIndex]=\"false\"\n optionLabel=\"label\" optionValue=\"key\" [(ngModel)]=\"recursoPuntoDTO.puntoProceso\">\n </p-dropdown>\n </div>\n </div>\n <div class=\"flex justify-content-end align-items-center mt-3\">\n <button pButton pRipple label=\"{{'link_guardar' | translate }}\"\n class=\"p-element p-ripple ml-2 p-button-raised p-button p-component\" type=\"button\" (click)=\"guardar()\"\n *ngIf=\"nuevo\"><span class=\"glyphicons glyphicons-floppy-save\"\n style=\"width: auto;\"></span></button>\n <button pButton pRipple label=\"{{'link_actualizar' | translate }}\"\n class=\"ml-2 p-button-raised\" *ngIf=\"!nuevo\" type=\"button\"\n (click)=\"guardar()\"><span class=\"glyphicons glyphicons-refresh\"\n style=\"width: auto;\"></span></button>\n <button pButton label=\"{{'link_eliminar' | translate }}\"\n class=\"p-button-outlined ml-2 mr-2p-element p-button p-component eliminar\" type=\"button\"\n *ngIf=\"!nuevo\" (click)=\"eliminar($event)\"><span class=\"glyphicons glyphicons-bin\"\n style=\"width: auto;\"></span></button>\n </div>\n </div>\n </ng-template>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"!nuevo\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'cruce' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div class=\"flex justify-content-end align-items-center mb-3\">\n <button pButton label=\"{{'link_nuevo' | translate}}\" (click)=\"nuevoCruce()\" icon=\"pi pi-plus\"\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\n </div>\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"listaCruce\" [scrollable]=\"true\"\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\n editMode=\"row\" dataKey=\"llaveTabla\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 40%;\">{{'entrada' | translate}}</th>\n <th style=\"width: 40%;\">{{'valor' | translate}}</th>\n <th style=\"width: 10%;\"> </th>\n </tr>\n <tr class=\" TablaNuevoRegistro\" *ngIf=\"vistaVisualizar === 'nuevoCruce'\">\n <td style=\"width: 40%;\">\n <p-dropdown class=\"w-full\" [options]=\"listaEntrada\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruceRecursoPunto.fuenteEntrada\"></p-dropdown>\n </td>\n <td style=\"width: 40%;\">\n <p-dropdown class=\"w-full\" [options]=\"listadoAtributoPunto\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\"\n [(ngModel)]=\"cruceRecursoPunto.atributoPunto\" class=\"w-full\"></p-dropdown>\n </td>\n <td style=\"width: 10%;\" >\n <div class=\"flex justify-content-end\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-check\" (click)=\"agregarCruce(null,true)\"\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <button pButton pRipple type=\"button\" (click)=\"cancelarCruce()\" icon=\"pi pi-times\"\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n </div>\n </td>\n\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-cruce let-editing=\"editing\" let-ri=\"rowIndex\">\n <tr [pEditableRow]=\"cruce\">\n <td style=\"width: 40%;\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-dropdown [options]=\"listaEntrada\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruce.reporteEntrada\"></p-dropdown>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{cruce.descripcionEntrada}}\n </ng-template>\n </p-cellEditor>\n </td>\n <td style=\"width: 40%;\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-dropdown [options]=\"listadoAtributoPunto\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruce.atributoPunto\"></p-dropdown>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{cruce.atributoPuntoDescripcion}}\n </ng-template>\n </p-cellEditor>\n </td>\n <td style=\"width: 10%;\">\n <div class=\"flex align-items-center justify-content-end gap-2\">\n <!-- CHECK GUARDAR -->\n <button *ngIf=\"editing\" pButton pRipple type=\"button\" pSaveEditableRow\n icon=\"pi pi-check\" (click)=\"agregarCruce(cruce, false)\"\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- CANCELAR -->\n <button *ngIf=\"editing\" pButton pRipple type=\"button\" pCancelEditableRow\n icon=\"pi pi-times\"\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- EDITAR -->\n <button *ngIf=\"!editing\" pButton pRipple type=\"button\" pInitEditableRow\n icon=\"glyphicons glyphicons-pencil\"\n class=\"p-element p-ripple p-button-rounded p-button-secondary mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- ELIMINAR -->\n <button *ngIf=\"!editing\" pButton pRipple type=\"button\" pDeleteEditableRow\n icon=\"pi pi-trash\" (click)=\"eliminarCruce($event,cruce)\"\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n </div>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr class=\"p-3 font-medium emptymessage\">\n <td colspan=\"5\">\n {{'mensajetablavacia' | translate}} \n </td>\n </tr>\n </ng-template>\n </p-table>\n </ng-template>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"!nuevo\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'filtro' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n\n <p-table [value]=\"listaAtributoPunto\" responsiveLayout=\"scroll\" [scrollable]=\"true\"\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" >\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 50%;\">{{'descripcion' | translate}}</th>\n <th style=\"width: 50%;\">{{'codigo' | translate}}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-element>\n <tr>\n <td style=\"width: 50%;\">\n {{element.descripcion}}\n </td>\n <td style=\"width: 50%;\">\n {{element.codigo}}\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr class=\"p-3 font-medium emptymessage\">\n <td colspan=\"5\">\n {{'mensajetablavacia' | translate}} \n </td>\n </tr>\n </ng-template>\n </p-table>\n\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <label class=\"font-medium w-full\" for=\"descripcion\">{{'filtro' | translate}}\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea\n [(ngModel)]=\"recursoPuntoDTO.filtro\" autofocus [autoResize]=\"true\"> </textarea></label>\n </div>\n <div class=\"flex justify-content-end align-content-center mt-3\">\n <button pButton pRipple class=\"ml-2 p-button-raised\" (click)=\"guardar()\"\n icon=\"glyphicons glyphicons-refresh\" label=\"Actualizar\" ></button>\n </div>\n </ng-template>\n </p-accordionTab>\n </p-accordion>\n</p-dialog>\n", styles: [":host ::ng-deep .p-dropdown{width:100%}\n"] }]
266
+ args: [{ selector: 'app-popup-recurso', imports: [TranslateModule, CommonModule, DialogModule, ConfirmPopupModule, DropdownModule, ButtonModule, AccordionModule, FormsModule, TableModule, TemplateTablaVaciaComponent, InputTextareaModule], standalone: true, providers: [MessageService], template: "<p-confirmPopup></p-confirmPopup>\n<p-dialog id='popupReImprimirRegresion' header=\"{{'recurso' | translate}}\" [(visible)]=\"mostrarPopup\"\n [breakpoints]=\"{'960px': '75vw', '640px': '100vw'}\" [style]=\"{width: '50vw'}\" (onHide)=\"ocultar()\" [modal]=\"true\">\n <p-accordion class=\"w-full\">\n <p-accordionTab [selected]=\"true\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'punto' | translate }} {{'proceso' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <div class=\"p-fluid grid\">\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <p-dropdown [options]=\"listaPuntosProceso\" [autoDisplayFirst]=\"false\" appendTo=\"body\" [autoZIndex]=\"false\"\n optionLabel=\"label\" optionValue=\"key\" [(ngModel)]=\"recursoPuntoDTO.puntoProceso\">\n </p-dropdown>\n </div>\n </div>\n <div class=\"flex justify-content-end align-items-center mt-3\">\n <button pButton pRipple label=\"{{'link_guardar' | translate }}\"\n class=\"p-element p-ripple ml-2 p-button-raised p-button p-component\" type=\"button\" (click)=\"guardar()\"\n *ngIf=\"nuevo\"><span class=\"glyphicons glyphicons-floppy-save\"\n style=\"width: auto;\"></span></button>\n <button pButton pRipple label=\"{{'link_actualizar' | translate }}\"\n class=\"ml-2 p-button-raised\" *ngIf=\"!nuevo\" type=\"button\"\n (click)=\"guardar()\"><span class=\"glyphicons glyphicons-refresh\"\n style=\"width: auto;\"></span></button>\n <button pButton label=\"{{'link_eliminar' | translate }}\"\n class=\"p-button-outlined ml-2 mr-2p-element p-button p-component eliminar\" type=\"button\"\n *ngIf=\"!nuevo\" (click)=\"eliminar($event)\"><span class=\"glyphicons glyphicons-bin\"\n style=\"width: auto;\"></span></button>\n </div>\n </div>\n </ng-template>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"!nuevo\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'cruce' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n <div class=\"flex justify-content-end align-items-center mb-3\">\n <button pButton label=\"{{'link_nuevo' | translate}}\" (click)=\"nuevoCruce()\" icon=\"pi pi-plus\"\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\n </div>\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"listaCruce\" [scrollable]=\"true\"\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\n editMode=\"row\" dataKey=\"llaveTabla\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 40%;\">{{'entrada' | translate}}</th>\n <th style=\"width: 40%;\">{{'valor' | translate}}</th>\n <th style=\"width: 10%;\"> </th>\n </tr>\n <tr class=\" TablaNuevoRegistro\" *ngIf=\"vistaVisualizar === 'nuevoCruce'\">\n <td style=\"width: 40%;\">\n <p-dropdown class=\"w-full\" [options]=\"listaEntrada\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruceRecursoPunto.fuenteEntrada\"></p-dropdown>\n </td>\n <td style=\"width: 40%;\">\n <p-dropdown class=\"w-full\" [options]=\"listadoAtributoPunto\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\"\n [(ngModel)]=\"cruceRecursoPunto.atributoPunto\" class=\"w-full\"></p-dropdown>\n </td>\n <td style=\"width: 10%;\" >\n <div class=\"flex justify-content-end\">\n <button pButton pRipple type=\"button\" icon=\"pi pi-check\" (click)=\"agregarCruce(null,true)\"\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <button pButton pRipple type=\"button\" (click)=\"cancelarCruce()\" icon=\"pi pi-times\"\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n </div>\n </td>\n\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-cruce let-editing=\"editing\" let-ri=\"rowIndex\">\n <tr [pEditableRow]=\"cruce\">\n <td style=\"width: 40%;\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-dropdown [options]=\"listaEntrada\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruce.reporteEntrada\"></p-dropdown>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{cruce.descripcionEntrada}}\n </ng-template>\n </p-cellEditor>\n </td>\n <td style=\"width: 40%;\">\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <p-dropdown [options]=\"listadoAtributoPunto\" optionValue=\"key\" appendTo=\"body\" [autoZIndex]=\"false\"\n [autoDisplayFirst]=\"false\" optionLabel=\"label\" class=\"w-full\"\n [(ngModel)]=\"cruce.atributoPunto\"></p-dropdown>\n </ng-template>\n <ng-template pTemplate=\"output\">\n {{cruce.atributoPuntoDescripcion}}\n </ng-template>\n </p-cellEditor>\n </td>\n <td style=\"width: 10%;\">\n <div class=\"flex align-items-center justify-content-end gap-2\">\n <!-- CHECK GUARDAR -->\n <button *ngIf=\"editing\" pButton pRipple type=\"button\" pSaveEditableRow\n icon=\"pi pi-check\" (click)=\"agregarCruce(cruce, false)\"\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- CANCELAR -->\n <button *ngIf=\"editing\" pButton pRipple type=\"button\" pCancelEditableRow\n icon=\"pi pi-times\"\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- EDITAR -->\n <button *ngIf=\"!editing\" pButton pRipple type=\"button\" pInitEditableRow\n icon=\"glyphicons glyphicons-pencil\"\n class=\"p-element p-ripple p-button-rounded p-button-secondary mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n <!-- ELIMINAR -->\n <button *ngIf=\"!editing\" pButton pRipple type=\"button\" pDeleteEditableRow\n icon=\"pi pi-trash\" (click)=\"eliminarCruce($event,cruce)\"\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\n </div>\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr>\n <td colspan=\"100\"> \n <app-template-tabla-vacia></app-template-tabla-vacia>\n </td>\n </tr>\n </ng-template> </p-table>\n </ng-template>\n </p-accordionTab>\n <p-accordionTab *ngIf=\"!nuevo\">\n <ng-template pTemplate=\"header\">\n <i class=\"glyphicons glyphicons-notes-2\"></i>{{'filtro' | translate }}\n </ng-template>\n <ng-template pTemplate=\"content\">\n\n <p-table [value]=\"listaAtributoPunto\" responsiveLayout=\"scroll\" [scrollable]=\"true\"\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" >\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 50%;\">{{'descripcion' | translate}}</th>\n <th style=\"width: 50%;\">{{'codigo' | translate}}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-element>\n <tr>\n <td style=\"width: 50%;\">\n {{element.descripcion}}\n </td>\n <td style=\"width: 50%;\">\n {{element.codigo}}\n </td>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"emptymessage\">\n <tr>\n <td colspan=\"100\"> \n <app-template-tabla-vacia></app-template-tabla-vacia>\n </td>\n </tr>\n </ng-template> </p-table>\n\n <div class=\"field col-12 md:col-12 lg:col-12\">\n <label class=\"font-medium w-full\" for=\"descripcion\">{{'filtro' | translate}}\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea\n [(ngModel)]=\"recursoPuntoDTO.filtro\" autofocus [autoResize]=\"true\"> </textarea></label>\n </div>\n <div class=\"flex justify-content-end align-content-center mt-3\">\n <button pButton pRipple class=\"ml-2 p-button-raised\" (click)=\"guardar()\"\n icon=\"glyphicons glyphicons-refresh\" label=\"Actualizar\" ></button>\n </div>\n </ng-template>\n </p-accordionTab>\n </p-accordion>\n</p-dialog>\n", styles: [":host ::ng-deep .p-dropdown{width:100%}\n"] }]
266
267
  }], ctorParameters: () => [{ type: i1.GeneralService }, { type: i2.cargarmapasGlobal }, { type: i3.ToastService }, { type: i4.GeneralPipe }, { type: i5.UtilsService }, { type: i3.ToastService }, { type: i6.ConfirmationService }], propDecorators: { regresar: [{
267
268
  type: Output
268
269
  }] } });
269
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAtcmVjdXJzby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3dlYmNvbW1vbi9wb3B1cHMvcG9wdXAtcmVjdXJzby9wb3B1cC1yZWN1cnNvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvd2ViY29tbW9uL3BvcHVwcy9wb3B1cC1yZWN1cnNvL3BvcHVwLXJlY3Vyc28uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQWlCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdkUsT0FBTyxFQUF1QixjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDekYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDL0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFHL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFn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QVcsaW5CQUFFLFdBQVcsaTRFQUFFLG1CQUFtQjs7MkZBTTVKLHFCQUFxQjtrQkFSakMsU0FBUzsrQkFDRSxtQkFBbUIsV0FDcEIsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixDQUFDLGNBQzFKLElBQUksYUFDTCxDQUFDLGNBQWMsQ0FBQztnUUFNWixRQUFRO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2VuZXJhbFBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy9nZW5lcmFsLnBpcGUnO1xuaW1wb3J0IHsgY2FyZ2FybWFwYXNHbG9iYWwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvc2VydmljaW9zL2Nhcmdhci1tYXBhcy5zZXJ2aWNlJztcbmltcG9ydCB7IEdlbmVyYWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3NlcnZpY2lvcy9nZW5lcmFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2VuZXJhbE1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vc2VndXJpZGFkL21vZGVsb3MvR2VuZXJhbE1vZGVsJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHtBdHJpYnV0b1B1bnRvTW9kZWx9IGZyb20gJy4uLy4uLy4uL3NlZ3VyaWRhZC9tb2RlbG9zL0F0cmlidXRvUHVudG9Nb2RlbCc7XG5pbXBvcnQge0NydWNlUmVjdXJzb1B1bnRvTW9kZWx9IGZyb20gJy4uLy4uLy4uL3NlZ3VyaWRhZC9tb2RlbG9zL0NydWNlUmVjdXJzb1B1bnRvTW9kZWwnO1xuaW1wb3J0IHtQdW50b1Byb2Nlc29Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vc2VndXJpZGFkL21vZGVsb3MvUHVudG9Qcm9jZXNvTW9kZWwnO1xuaW1wb3J0IHtSZWN1cnNvUHVudG9Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vc2VndXJpZGFkL21vZGVsb3MvUmVjdXJzb1B1bnRvTW9kZWwnO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNpb3MvdG9hc3Quc2VydmljZSc7XG5pbXBvcnQgeyBVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2lvcy91dGlscy5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpYWxvZ01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZGlhbG9nJztcbmltcG9ydCB7IENvbmZpcm1Qb3B1cE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvY29uZmlybXBvcHVwJztcbmltcG9ydCB7IERyb3Bkb3duTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9kcm9wZG93bic7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XG5pbXBvcnQgeyBBY2NvcmRpb25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2FjY29yZGlvbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XG5pbXBvcnQgeyBJbnB1dFRleHRhcmVhTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dHRleHRhcmVhJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXBvcHVwLXJlY3Vyc28nLFxuICBpbXBvcnRzOiBbVHJhbnNsYXRlTW9kdWxlLCBDb21tb25Nb2R1bGUsIERpYWxvZ01vZHVsZSwgQ29uZmlybVBvcHVwTW9kdWxlLCBEcm9wZG93bk1vZHVsZSwgQnV0dG9uTW9kdWxlLCBBY2NvcmRpb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBUYWJsZU1vZHVsZSwgSW5wdXRUZXh0YXJlYU1vZHVsZV0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtNZXNzYWdlU2VydmljZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3BvcHVwLXJlY3Vyc28uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wb3B1cC1yZWN1cnNvLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUG9wdXBSZWN1cnNvQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBAT3V0cHV0KCkgcHVibGljIHJlZ3Jlc2FyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHJlY3Vyc29QdW50b0RUTzogUmVjdXJzb1B1bnRvTW9kZWwgPSBuZXcgUmVjdXJzb1B1bnRvTW9kZWw7XG4gIGxsYXZlOiBhbnk7XG4gIGRlc3Rpbm86IFN0cmluZztcbiAgdGlwb1JlY3Vyc287XG4gIG51ZXZvOiBib29sZWFuO1xuICBtb3N0cmFyUG9wdXA6IGJvb2xlYW47XG4gIHJlY3Vyc29zVmFsaWRhcjogUmVjdXJzb1B1bnRvTW9kZWxbXSA9IFtdO1xuICBjcnVjZXM6IENydWNlUmVjdXJzb1B1bnRvTW9kZWxbXSA9IFtdO1xuICBsaXN0YUVudHJhZGE6IGFueVtdID0gW107XG4gIGxpc3RhUHVudG9zUHJvY2VzbzogYW55W10gPSBbXTtcbiAgbGlzdGFBdHJpYnV0b1B1bnRvOiBBdHJpYnV0b1B1bnRvTW9kZWxbXSA9IFtdO1xuICBsaXN0YWRvQXRyaWJ1dG9QdW50bzogYW55W10gPSBbXTtcbiAgbGlzdGFDcnVjZTogQ3J1Y2VSZWN1cnNvUHVudG9Nb2RlbFtdID0gW107XG4gIGNydWNlUmVjdXJzb1B1bnRvOiBDcnVjZVJlY3Vyc29QdW50b01vZGVsID0gbmV3IENydWNlUmVjdXJzb1B1bnRvTW9kZWwoKTtcbiAgdmlzdGFWaXN1YWxpemFyOiBTdHJpbmc7XG4gIHBhZ2luYXRvckNydWNlID0ge1xuICAgIHJvd3M6IDEwLFxuICAgIHRvdGFsUmVjb3JkczogMCxcbiAgfTtcblxuICBcblxuXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBnZW5lcmFsU2VydmljZTogR2VuZXJhbFNlcnZpY2UsIHByaXZhdGUgY2FyZ2FyTWFwYXM6IGNhcmdhcm1hcGFzR2xvYmFsLCBwcml2YXRlIG5vdGlmaWNhY2lvbkJ1c1NlcnZpY2U6IFRvYXN0U2VydmljZSwgcHJpdmF0ZSBnZW5lcmFsUGlwZTogR2VuZXJhbFBpcGUsXG4gICAgcHVibGljIHV0aWxzU2VydmljZTogVXRpbHNTZXJ2aWNlLHByaXZhdGUgbm90aWZpY2FjaW9uZXNCdXNTZXJ2aWNlOiBUb2FzdFNlcnZpY2UscHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7IH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2FyZ2FyTGlzdGFzKCk7XG4gIH1cblxuICBhc3luYyBjYXJnYXJMaXN0YXMoKSB7XG4gICAgdGhpcy5saXN0YVB1bnRvc1Byb2Nlc28gPSBhd2FpdCB0aGlzLmNhcmdhck1hcGFzLmNhcmdhclNlbGVjdEl0ZW1TdHJpbmcoJ2xsYXZlVGFibGEnLCAnZGVzY3JpcGNpb24nLCBuZXcgR2VuZXJhbE1vZGVsKCdQdW50b1Byb2Nlc29EVE8nLCBudWxsLCBmYWxzZSwgbmV3IFB1bnRvUHJvY2Vzb01vZGVsKSk7XG4gIH1cblxuICBhc3luYyBsb2FkQ3J1Y2UoKSB7XG4gICAgdGhpcy5saXN0YUNydWNlID0gYXdhaXQgdGhpcy5nZW5lcmFsU2VydmljZS5xdWVyeUZvckxpc3QobmV3IEdlbmVyYWxNb2RlbCgnQ3J1Y2VSZWN1cnNvUHVudG9EVE8nLCAnQ3J1Y2VSZWN1cnNvUHVudG8uY29uc3VsdGFyQ3J1Y2VQb3JSZWN1cnNvJywgZmFsc2UsIHtyZWN1cnNvUHVudG86IHRoaXMucmVjdXJzb1B1bnRvRFRPLmxsYXZlVGFibGF9KSkudG9Qcm9taXNlKCk7XG4gIH1cblxuXG5cbiAgYXN5bmMgdmVyKHJlY3Vyc29QdW50b0RUTzogUmVjdXJzb1B1bnRvTW9kZWwsIGxsYXZlOiBhbnksIG51ZXZvOiBib29sZWFuLCB0aXBvUmVjdXJzbykge1xuICAgICAgYXdhaXQgdGhpcy5uZ09uSW5pdCgpO1xuICAgICAgdGhpcy5tb3N0cmFyUG9wdXAgPSB0cnVlO1xuICAgICAgdGhpcy5sbGF2ZSA9IGxsYXZlO1xuICAgICAgdGhpcy50aXBvUmVjdXJzbyA9IHRpcG9SZWN1cnNvO1xuICAgICAgdGhpcy5udWV2byA9IG51ZXZvO1xuICAgICAgdGhpcy5yZWN1cnNvUHVudG9EVE8gPSByZWN1cnNvUHVudG9EVE87XG4gICAgICB0aGlzLmNhcmdhclJlY3Vyc29QdW50bygpO1xuICAgICAgdGhpcy5jYXJnYXJFbnRyYWRhcygpO1xuICAgICAgaWYgKCF0aGlzLm51ZXZvKSB7XG4gICAgICAgIHRoaXMubG9hZENydWNlKCk7XG4gICAgICAgIHRoaXMuY2FyZ2FyQXRyaWJ1dG9zKHJlY3Vyc29QdW50b0RUTy5wdW50b1Byb2Nlc28pO1xuICAgICAgfVxuICB9XG5cbiAgZWxpbWluYXIoZXZlbnQpe1xuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZS5jb25maXJtKHtcbiAgICAgIHRhcmdldDogZXZlbnQudGFyZ2V0LFxuICAgICAgbWVzc2FnZTogdGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX0VMSU1JTkFSX0NPTkZJUk1BUixcbiAgICAgIGFjY2VwdExhYmVsOidTaScsXG4gICAgICBhY2NlcHQ6ICgpID0+IHtcbiAgICAgICAgdGhpcy5zZXRSZXNwdWVzdGEoKTtcbiAgICAgIH0sXG4gICAgICByZWplY3Q6ICgpID0+IHtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHNldFJlc3B1ZXN0YSgpe1xuICAgIGlmKHRoaXMudmFsaWRhckVsaW1pbmFjaW9uKCkpe1xuICAgIGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuZGVsZXRlKG5ldyBHZW5lcmFsTW9kZWwoJ1JlY3Vyc29QdW50b0RUTycsbnVsbCwgZmFsc2UsIHtsbGF2ZVRhYmxhOiB0aGlzLnJlY3Vyc29QdW50b0RUTy5sbGF2ZVRhYmxhfSkpLnRvUHJvbWlzZSgpO1xuICAgIHRoaXMubm90aWZpY2FjaW9uQnVzU2VydmljZS5zaG93SW5mbyh0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfRUxJTUlOQVIpO1xuICAgIHRoaXMub2N1bHRhcigpO1xuICAgIHJldHVyblxuICAgIH1lbHNlIHtcbiAgICAgIHRoaXMubm90aWZpY2FjaW9uZXNCdXNTZXJ2aWNlLnNob3dXYXJuaW5nKCdEZWJlIGVsaW1pbmFyIGxvcyBjcnVjZXMgcHJpbWVybycpO1xuICAgIH1cbiAgfVxuICBhc3luYyB2YWxpZGFyRWxpbWluYWNpb24oKXtcbiAgICBsZXQgdmFsaWRhZG9yID0gIGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuY2FudGlkYWRSZWdpc3Ryb3MobmV3IEdlbmVyYWxNb2RlbCgnQ3J1Y2VSZWN1cnNvUHVudG9EVE8nLCBudWxsLCBmYWxzZSx7cHVudG9Qcm9jZXNvOiB0aGlzLnJlY3Vyc29QdW50b0RUTy5wdW50b1Byb2Nlc28gLCByZXBvcnRlRnVlbnRlOiB0aGlzLnJlY3Vyc29QdW50b0RUTy5yZXBvcnRlRnVlbnRlfSkpLnRvUHJvbWlzZSgpO1xuICAgIHJldHVybiB0cnVlID8gdmFsaWRhZG9yID09IDAgOiBmYWxzZTtcbiAgfVxuXG4gIGFzeW5jIGNhcmdhclJlY3Vyc29QdW50bygpIHtcbiAgICBsZXQgdmVyaWZpY2FyOiBSZWN1cnNvUHVudG9Nb2RlbCA9IG5ldyBSZWN1cnNvUHVudG9Nb2RlbCgpO1xuICAgIGlmICh0aGlzLnRpcG9SZWN1cnNvID09ICdGJykge1xuICAgICAgdmVyaWZpY2FyLmZ1ZW50ZSA9IHRoaXMubGxhdmU7XG4gICAgfSBlbHNlIGlmICh0aGlzLnRpcG9SZWN1cnNvID09ICdSJykge1xuICAgICAgdmVyaWZpY2FyLnJlcG9ydGVGdWVudGUgPSB0aGlzLmxsYXZlO1xuICAgIH1cbiAgICB0aGlzLnJlY3Vyc29zVmFsaWRhciA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UucXVlcnlGb3JMaXN0KG5ldyBHZW5lcmFsTW9kZWwoJ1JlY3Vyc29QdW50b0RUTycsIG51bGwsIGZhbHNlLCB2ZXJpZmljYXIpKS50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGNhcmdhckVudHJhZGFzKCkge1xuICAgIGlmICh0aGlzLnRpcG9SZWN1cnNvID09ICdGJykge1xuICAgICAgdGhpcy5saXN0YUVudHJhZGEgPSBhd2FpdCB0aGlzLmNhcmdhck1hcGFzLmNhcmdhclNlbGVjdEl0ZW1TdHJpbmcoJ2xsYXZlVGFibGEnLCAnZGVzY3JpcGNpb24nLCBuZXcgR2VuZXJhbE1vZGVsKCdGdWVudGVFbnRyYWRhRFRPJywgbnVsbCwgZmFsc2UsIHsgZnVlbnRlOiB0aGlzLmxsYXZlIH0pKVxuICAgIH0gZWxzZSBpZiAodGhpcy50aXBvUmVjdXJzbyA9PSAnUicpIHtcbiAgICAgIHRoaXMubGlzdGFFbnRyYWRhID0gYXdhaXQgdGhpcy5jYXJnYXJNYXBhcy5jYXJnYXJTZWxlY3RJdGVtU3RyaW5nKCdsbGF2ZVRhYmxhJywgJ2Rlc2NyaXBjaW9uJywgbmV3IEdlbmVyYWxNb2RlbCgnRnVlbnRlRW50cmFkYURUTycsIG51bGwsIGZhbHNlLCB7IHJlcG9ydGVGdWVudGU6IHRoaXMubGxhdmUgfSkpXG4gICAgfVxuICB9XG5cbiAgYXN5bmMgY2FyZ2FyQ3J1Y2UoKSB7XG4gICAgaWYgKHRoaXMucmVjdXJzb1B1bnRvRFRPLmxsYXZlVGFibGEgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNydWNlcyA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UucXVlcnlGb3JMaXN0KG5ldyBHZW5lcmFsTW9kZWwoJ0NydWNlUmVjdXJzb1B1bnRvRFRPJywgJ0NydWNlUmVjdXJzb1B1bnRvLmNvbnN1bHRhckNydWNlUG9yUmVjdXJzbycsIHRydWUsIHsgcmVjdXJzb1B1bnRvOiB0aGlzLnJlY3Vyc29QdW50b0RUTy5sbGF2ZVRhYmxhIH0pKS50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGNhcmdhckF0cmlidXRvcyhwdW50b1Byb2Nlc28pIHtcbiAgICB0aGlzLmxpc3RhZG9BdHJpYnV0b1B1bnRvID0gYXdhaXQgdGhpcy5jYXJnYXJNYXBhcy5jYXJnYXJTZWxlY3RJdGVtU3RyaW5nKCdsbGF2ZVRhYmxhJywgJ2Rlc2NyaXBjaW9uJywgbmV3IEdlbmVyYWxNb2RlbCgnQXRyaWJ1dG9QdW50b0RUTycsIG51bGwsIGZhbHNlLCB7IHB1bnRvUHJvY2VzbzogcHVudG9Qcm9jZXNvIH0pKTtcbiAgICB0aGlzLmxpc3RhQXRyaWJ1dG9QdW50byA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UucXVlcnlGb3JMaXN0KG5ldyBHZW5lcmFsTW9kZWwoJ0F0cmlidXRvUHVudG9EVE8nLCBudWxsLCBmYWxzZSwgeyBwdW50b1Byb2Nlc286IHB1bnRvUHJvY2VzbyB9KSkudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBndWFyZGFyKCkge1xuICAgICAgaWYgKHRoaXMudmFsaWRhcigpKSB7XG4gICAgICAgIGlmICh0aGlzLm51ZXZvKSB7XG4gICAgICAgICAgaWYgKHRoaXMudGlwb1JlY3Vyc28gPT0gJ0YnKSB7XG4gICAgICAgICAgICB0aGlzLnJlY3Vyc29QdW50b0RUTy5mdWVudGUgPSB0aGlzLmxsYXZlO1xuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy50aXBvUmVjdXJzbyA9PSAnUicpIHtcbiAgICAgICAgICAgIHRoaXMucmVjdXJzb1B1bnRvRFRPLnJlcG9ydGVGdWVudGUgPSB0aGlzLmxsYXZlO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLnJlY3Vyc29QdW50b0RUTy50aXBvID0gdGhpcy50aXBvUmVjdXJzbztcbiAgICAgICAgICB0aGlzLnJlY3Vyc29QdW50b0RUTyA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuY3JlYXJSZWdpc3RybyhuZXcgR2VuZXJhbE1vZGVsKCdSZWN1cnNvUHVudG9EVE8nLCBudWxsLCBmYWxzZSwgdGhpcy5yZWN1cnNvUHVudG9EVE8pKS50b1Byb21pc2UoKTtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhY2lvbkJ1c1NlcnZpY2Uuc2hvd0luZm8odGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX0dVQVJEQVIpO1xuICAgICAgICAgIHRoaXMuY2FyZ2FyQXRyaWJ1dG9zKHRoaXMucmVjdXJzb1B1bnRvRFRPLnB1bnRvUHJvY2Vzbyk7XG4gICAgICAgICAgdGhpcy5udWV2byA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZWN1cnNvUHVudG9EVE8udGlwbyA9IHRoaXMudGlwb1JlY3Vyc29cbiAgICAgICAgaWYgKChhd2FpdCB0aGlzLmdlbmVyYWxTZXJ2aWNlLnVwZGF0ZShuZXcgR2VuZXJhbE1vZGVsKCdSZWN1cnNvUHVudG9EVE8nLCBudWxsLCBmYWxzZSwgdGhpcy5yZWN1cnNvUHVudG9EVE8pKS50b1Byb21pc2UoKSkgPD0gMCkge1xuICAgICAgICAgIHRoaXMubm90aWZpY2FjaW9uQnVzU2VydmljZS5zaG93SW5mbyh0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfQUNUVUFMSVpBUl9OTyk7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jYXJnYXJBdHJpYnV0b3ModGhpcy5yZWN1cnNvUHVudG9EVE8ucHVudG9Qcm9jZXNvKTtcbiAgICAgICAgdGhpcy5ub3RpZmljYWNpb25CdXNTZXJ2aWNlLnNob3dJbmZvKHRoaXMuZ2VuZXJhbFBpcGUuTUVOU0FKRV9BQ1RVQUxJWkFSKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgbnVldm9DcnVjZSgpIHtcbiAgICB0aGlzLnZpc3RhVmlzdWFsaXphciA9ICdudWV2b0NydWNlJ1xuICB9XG4gIGNhbmNlbGFyQ3J1Y2UoKSB7XG4gICAgdGhpcy52aXN0YVZpc3VhbGl6YXIgPSBudWxsO1xuICB9XG5cbiAgYXN5bmMgYWdyZWdhckNydWNlKGNydWNlPywgbnVldm8/KSB7XG4gICAgICBpZiAobnVldm8pIHtcbiAgICAgICAgaWYgKCF0aGlzLnZhbGlkYXJDcnVjZSgpKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY3J1Y2VSZWN1cnNvUHVudG8ucmVjdXJzb1B1bnRvID0gdGhpcy5yZWN1cnNvUHVudG9EVE8ubGxhdmVUYWJsYTtcbiAgICAgICAgdGhpcy5jcnVjZVJlY3Vyc29QdW50byA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuY3JlYXJSZWdpc3RybyhuZXcgR2VuZXJhbE1vZGVsKCdDcnVjZVJlY3Vyc29QdW50b0RUTycsIG51bGwsIGZhbHNlLCB0aGlzLmNydWNlUmVjdXJzb1B1bnRvKSkudG9Qcm9taXNlKCk7XG4gICAgICAgIC8vdGhpcy5saXN0YUNydWNlLnB1c2godGhpcy5jcnVjZVJlY3Vyc29QdW50byk7XG4gICAgICAgIGF3YWl0IHRoaXMuY2FyZ2FyQ3J1Y2UoKTtcbiAgICAgICAgYXdhaXQgdGhpcy5sb2FkQ3J1Y2UoKTtcbiAgICAgICAgdGhpcy5ub3RpZmljYWNpb25CdXNTZXJ2aWNlLnNob3dJbmZvKHRoaXMuZ2VuZXJhbFBpcGUuTUVOU0FKRV9HVUFSREFSKTtcbiAgICAgICAgdGhpcy52aXN0YVZpc3VhbGl6YXIgPSBudWxsO1xuICAgICAgICB0aGlzLmNydWNlUmVjdXJzb1B1bnRvID0gbmV3IENydWNlUmVjdXJzb1B1bnRvTW9kZWwoKTtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNydWNlUmVjdXJzb1B1bnRvID0gY3J1Y2VcbiAgICAgICAgaWYgKChhd2FpdCB0aGlzLmdlbmVyYWxTZXJ2aWNlLnVwZGF0ZShuZXcgR2VuZXJhbE1vZGVsKCdDcnVjZVJlY3Vyc29QdW50b0RUTycsIG51bGwsIGZhbHNlLCB0aGlzLmNydWNlUmVjdXJzb1B1bnRvKSkudG9Qcm9taXNlKCkpIDw9IDApIHtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhY2lvbkJ1c1NlcnZpY2Uuc2hvd1dhcm5pbmcodGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX0FDVFVBTElaQVJfTk8pO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubm90aWZpY2FjaW9uQnVzU2VydmljZS5zaG93U3VjY2Vzcyh0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfQUNUVUFMSVpBUik7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICB9XG4gIFxuICBlbGltaW5hckNydWNlKGV2ZW50LCBjcnVjZSl7XG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xuICAgICAgdGFyZ2V0OiBldmVudC50YXJnZXQsXG4gICAgICBtZXNzYWdlOiB0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfRUxJTUlOQVJfQ09ORklSTUFSLFxuICAgICAgYWNjZXB0TGFiZWw6ICdTaScsXG4gICAgICBhY2NlcHQ6ICgpID0+IHtcbiAgICAgICAgdGhpcy5zZXRFbGltaW5hckNydWNlKGNydWNlKTtcbiAgICAgIH0sXG4gICAgICByZWplY3Q6ICgpID0+IHtcbiAgICAgICAgdGhpcy5ub3RpZmljYWNpb25lc0J1c1NlcnZpY2Uuc2hvd0luZm8oJ05vIHNlIGVsaW1pbm8gZWwgcmVnaXN0cm8nKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICBhc3luYyBzZXRFbGltaW5hckNydWNlKGNydWNlKXtcbiAgICBpZiAoKGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuZGVsZXRlKG5ldyBHZW5lcmFsTW9kZWwoJ0NydWNlUmVjdXJzb1B1bnRvRFRPJywgbnVsbCwgZmFsc2UsIGNydWNlKSkudG9Qcm9taXNlKCkpIDw9IDApIHtcbiAgICAgIHRoaXMubm90aWZpY2FjaW9uZXNCdXNTZXJ2aWNlLnNob3dXYXJuaW5nKHRoaXMuZ2VuZXJhbFBpcGUuTUVOU0FKRV9FTElNSU5BUl9OTyk7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpcy5ub3RpZmljYWNpb25lc0J1c1NlcnZpY2Uuc2hvd0luZm8odGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX0VMSU1JTkFSKTtcbiAgICB0aGlzLmxvYWRDcnVjZSgpO1xuICB9XG5cbiAgdmFsaWRhcigpIHtcbiAgICBsZXQgdmFsaWRhciA9IHRydWU7XG4gICAgaWYgKHRoaXMucmVjdXJzb3NWYWxpZGFyID09IG51bGwgfHwgdGhpcy5yZWN1cnNvc1ZhbGlkYXIubGVuZ3RoIDw9IDApIHtcbiAgICAgIHJldHVybiB2YWxpZGFyO1xuICAgIH1cbiAgICB0aGlzLnJlY3Vyc29zVmFsaWRhci5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgaWYgKChlbGVtZW50LmxsYXZlVGFibGEgIT0gdGhpcy5yZWN1cnNvUHVudG9EVE8ubGxhdmVUYWJsYSkgJiYgZWxlbWVudC5wdW50b1Byb2Nlc28gPT0gdGhpcy5yZWN1cnNvUHVudG9EVE8ucHVudG9Qcm9jZXNvKSB7XG4gICAgICAgIHRoaXMubm90aWZpY2FjaW9uQnVzU2VydmljZS5zaG93SW5mbyh0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfUFVOVE9fUFJPQ0VTT19SRVBFVElETyk7XG4gICAgICAgIHZhbGlkYXIgPSBmYWxzZVxuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiB2YWxpZGFyO1xuICB9XG4gIHZhbGlkYXJDcnVjZSgpIHtcbiAgICBpZih0aGlzLnRpcG9SZWN1cnNvID09IG51bGwpe1xuICAgICAgdGhpcy5ub3RpZmljYWNpb25CdXNTZXJ2aWNlLnNob3dFcnJvcignTm8gc2UgZW5jdWVudHJhIGVsIHJlY3Vyc28nKTtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgICB0aGlzLmNydWNlcy5mb3JFYWNoKGFzeW5jIGVsZW1lbnQgPT4ge1xuICAgICAgaWYgKHRoaXMudGlwb1JlY3Vyc28gPT0gJ0YnICYmIGVsZW1lbnQuZnVlbnRlRW50cmFkYSA9PSB0aGlzLmNydWNlUmVjdXJzb1B1bnRvLmZ1ZW50ZUVudHJhZGEpIHtcbiAgICAgICAgdGhpcy5ub3RpZmljYWNpb25CdXNTZXJ2aWNlLnNob3dJbmZvKHRoaXMuZ2VuZXJhbFBpcGUuTUVOU0FKRV9QQVJBTUVUUk9fUkVQRVRJRE8pO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm5vdGlmaWNhY2lvbkJ1c1NlcnZpY2Uuc2hvd0luZm8odGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX1BBUkFNRVRST19SRVBFVElETyk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG5cblxuICBwdWJsaWMgb2N1bHRhcigpIHtcbiAgICB0aGlzLm1vc3RyYXJQb3B1cCA9IGZhbHNlO1xuICAgIHRoaXMucmVncmVzYXIuZW1pdCgpO1xuICB9XG5cbn1cbiIsIjxwLWNvbmZpcm1Qb3B1cD48L3AtY29uZmlybVBvcHVwPlxuPHAtZGlhbG9nIGlkPSdwb3B1cFJlSW1wcmltaXJSZWdyZXNpb24nIGhlYWRlcj1cInt7J3JlY3Vyc28nIHwgdHJhbnNsYXRlfX1cIiBbKHZpc2libGUpXT1cIm1vc3RyYXJQb3B1cFwiXG4gICAgW2JyZWFrcG9pbnRzXT1cInsnOTYwcHgnOiAnNzV2dycsICc2NDBweCc6ICcxMDB2dyd9XCIgW3N0eWxlXT1cInt3aWR0aDogJzUwdncnfVwiIChvbkhpZGUpPVwib2N1bHRhcigpXCIgW21vZGFsXT1cInRydWVcIj5cbiAgICA8cC1hY2NvcmRpb24gY2xhc3M9XCJ3LWZ1bGxcIj5cbiAgICAgICAgPHAtYWNjb3JkaW9uVGFiIFtzZWxlY3RlZF09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJnbHlwaGljb25zIGdseXBoaWNvbnMtbm90ZXMtMlwiPjwvaT57eydwdW50bycgfCB0cmFuc2xhdGUgfX0ge3sncHJvY2VzbycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBjb2wtMTIgbWQ6Y29sLTEyIGxnOmNvbC0xMlwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1mbHVpZCBncmlkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgY29sLTEyIG1kOmNvbC0xMiBsZzpjb2wtMTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1kcm9wZG93biBbb3B0aW9uc109XCJsaXN0YVB1bnRvc1Byb2Nlc29cIiBbYXV0b0Rpc3BsYXlGaXJzdF09XCJmYWxzZVwiIGFwcGVuZFRvPVwiYm9keVwiIFthdXRvWkluZGV4XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uTGFiZWw9XCJsYWJlbFwiIG9wdGlvblZhbHVlPVwia2V5XCIgWyhuZ01vZGVsKV09XCJyZWN1cnNvUHVudG9EVE8ucHVudG9Qcm9jZXNvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wLWRyb3Bkb3duPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIGFsaWduLWl0ZW1zLWNlbnRlciBtdC0zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHBCdXR0b24gcFJpcHBsZSBsYWJlbD1cInt7J2xpbmtfZ3VhcmRhcicgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicC1lbGVtZW50IHAtcmlwcGxlIG1sLTIgcC1idXR0b24tcmFpc2VkIHAtYnV0dG9uIHAtY29tcG9uZW50XCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJndWFyZGFyKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibnVldm9cIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbnMgZ2x5cGhpY29ucy1mbG9wcHktc2F2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwid2lkdGg6IGF1dG87XCI+PC9zcGFuPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgbGFiZWw9XCJ7eydsaW5rX2FjdHVhbGl6YXInIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC0yIHAtYnV0dG9uLXJhaXNlZFwiICpuZ0lmPVwiIW51ZXZvXCIgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImd1YXJkYXIoKVwiPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29ucyBnbHlwaGljb25zLXJlZnJlc2hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIndpZHRoOiBhdXRvO1wiPjwvc3Bhbj48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gcEJ1dHRvbiBsYWJlbD1cInt7J2xpbmtfZWxpbWluYXInIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInAtYnV0dG9uLW91dGxpbmVkIG1sLTIgbXItMnAtZWxlbWVudCBwLWJ1dHRvbiBwLWNvbXBvbmVudCBlbGltaW5hclwiIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIW51ZXZvXCIgKGNsaWNrKT1cImVsaW1pbmFyKCRldmVudClcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbnMgZ2x5cGhpY29ucy1iaW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIndpZHRoOiBhdXRvO1wiPjwvc3Bhbj48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtYWNjb3JkaW9uVGFiPlxuICAgICAgICA8cC1hY2NvcmRpb25UYWIgKm5nSWY9XCIhbnVldm9cIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImdseXBoaWNvbnMgZ2x5cGhpY29ucy1ub3Rlcy0yXCI+PC9pPnt7J2NydWNlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWVuZCBhbGlnbi1pdGVtcy1jZW50ZXIgbWItM1wiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHBCdXR0b24gbGFiZWw9XCJ7eydsaW5rX251ZXZvJyB8IHRyYW5zbGF0ZX19XCIgKGNsaWNrKT1cIm51ZXZvQ3J1Y2UoKVwiIGljb249XCJwaSBwaS1wbHVzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicC1yaXBwbGUgcC1lbGVtZW50IHAtYnV0dG9uIHAtY29tcG9uZW50IHAtYnV0dG9uLXNlY29uZGFyeSBtYi0yXCI+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHAtdGFibGUgaWQ9XCJ0YWJsYV9saXN0YV90aXBvX2VudGlkYWRcIiBbdmFsdWVdPVwibGlzdGFDcnVjZVwiIFtzY3JvbGxhYmxlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIHNjcm9sbERpcmVjdGlvbj1cImJvdGhcIiBzY3JvbGxEaXJlY3Rpb249XCJob3Jpem9udGFsXCIgcmVzcG9uc2l2ZUxheW91dD1cInNjcm9sbFwiXG4gICAgICAgICAgICAgICAgICAgIHNjcm9sbERpcmVjdGlvbj1cImhvcml6b250YWxcIiBzdHlsZUNsYXNzPVwicC1kYXRhdGFibGUtc3RyaXBlZFwiIFtzaG93Q3VycmVudFBhZ2VSZXBvcnRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIGVkaXRNb2RlPVwicm93XCIgZGF0YUtleT1cImxsYXZlVGFibGFcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA0MCU7XCI+e3snZW50cmFkYScgfCB0cmFuc2xhdGV9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDQwJTtcIj57eyd2YWxvcicgfCB0cmFuc2xhdGV9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDEwJTtcIj4gPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCIgVGFibGFOdWV2b1JlZ2lzdHJvXCIgKm5nSWY9XCJ2aXN0YVZpc3VhbGl6YXIgPT09ICdudWV2b0NydWNlJ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MCU7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLWRyb3Bkb3duIGNsYXNzPVwidy1mdWxsXCIgW29wdGlvbnNdPVwibGlzdGFFbnRyYWRhXCIgb3B0aW9uVmFsdWU9XCJrZXlcIiBhcHBlbmRUbz1cImJvZHlcIiBbYXV0b1pJbmRleF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXV0b0Rpc3BsYXlGaXJzdF09XCJmYWxzZVwiIG9wdGlvbkxhYmVsPVwibGFiZWxcIiBjbGFzcz1cInctZnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNydWNlUmVjdXJzb1B1bnRvLmZ1ZW50ZUVudHJhZGFcIj48L3AtZHJvcGRvd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNDAlO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1kcm9wZG93biAgY2xhc3M9XCJ3LWZ1bGxcIiBbb3B0aW9uc109XCJsaXN0YWRvQXRyaWJ1dG9QdW50b1wiIG9wdGlvblZhbHVlPVwia2V5XCIgYXBwZW5kVG89XCJib2R5XCIgW2F1dG9aSW5kZXhdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F1dG9EaXNwbGF5Rmlyc3RdPVwiZmFsc2VcIiBvcHRpb25MYWJlbD1cImxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY3J1Y2VSZWN1cnNvUHVudG8uYXRyaWJ1dG9QdW50b1wiIGNsYXNzPVwidy1mdWxsXCI+PC9wLWRyb3Bkb3duPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDEwJTtcIiA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktY2hlY2tcIiAoY2xpY2spPVwiYWdyZWdhckNydWNlKG51bGwsdHJ1ZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zdWNjZXNzIG1yLTIgbWItMiBwLWJ1dHRvbiBwLWNvbXBvbmVudCBwLWJ1dHRvbi1pY29uLW9ubHlcIj48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjYW5jZWxhckNydWNlKClcIiBpY29uPVwicGkgcGktdGltZXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1kYW5nZXIgbXItMiBtYi0yIHAtYnV0dG9uIHAtY29tcG9uZW50IHAtYnV0dG9uLWljb24tb25seVwiPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LWNydWNlIGxldC1lZGl0aW5nPVwiZWRpdGluZ1wiIGxldC1yaT1cInJvd0luZGV4XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgW3BFZGl0YWJsZVJvd109XCJjcnVjZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MCU7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLWNlbGxFZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaW5wdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1kcm9wZG93biBbb3B0aW9uc109XCJsaXN0YUVudHJhZGFcIiBvcHRpb25WYWx1ZT1cImtleVwiIGFwcGVuZFRvPVwiYm9keVwiIFthdXRvWkluZGV4XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F1dG9EaXNwbGF5Rmlyc3RdPVwiZmFsc2VcIiBvcHRpb25MYWJlbD1cImxhYmVsXCIgY2xhc3M9XCJ3LWZ1bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNydWNlLnJlcG9ydGVFbnRyYWRhXCI+PC9wLWRyb3Bkb3duPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJvdXRwdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2NydWNlLmRlc2NyaXBjaW9uRW50cmFkYX19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3AtY2VsbEVkaXRvcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MCU7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLWNlbGxFZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaW5wdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1kcm9wZG93biBbb3B0aW9uc109XCJsaXN0YWRvQXRyaWJ1dG9QdW50b1wiIG9wdGlvblZhbHVlPVwia2V5XCIgYXBwZW5kVG89XCJib2R5XCIgW2F1dG9aSW5kZXhdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXV0b0Rpc3BsYXlGaXJzdF09XCJmYWxzZVwiIG9wdGlvbkxhYmVsPVwibGFiZWxcIiBjbGFzcz1cInctZnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY3J1Y2UuYXRyaWJ1dG9QdW50b1wiPjwvcC1kcm9wZG93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwib3V0cHV0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tjcnVjZS5hdHJpYnV0b1B1bnRvRGVzY3JpcGNpb259fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wLWNlbGxFZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogMTAlO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDSEVDSyBHVUFSREFSIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImVkaXRpbmdcIiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIHBTYXZlRWRpdGFibGVSb3dcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwicGkgcGktY2hlY2tcIiAoY2xpY2spPVwiYWdyZWdhckNydWNlKGNydWNlLCBmYWxzZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicC1lbGVtZW50IHAtcmlwcGxlIHAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tc3VjY2VzcyBtci0yIG1iLTIgcC1idXR0b24gcC1jb21wb25lbnQgcC1idXR0b24taWNvbi1vbmx5XCI+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENBTkNFTEFSIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImVkaXRpbmdcIiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIHBDYW5jZWxFZGl0YWJsZVJvd1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJwaSBwaS10aW1lc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1kYW5nZXIgbXItMiBtYi0yIHAtYnV0dG9uIHAtY29tcG9uZW50IHAtYnV0dG9uLWljb24tb25seVwiPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFRElUQVIgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiIWVkaXRpbmdcIiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIHBJbml0RWRpdGFibGVSb3dcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwiZ2x5cGhpY29ucyBnbHlwaGljb25zLXBlbmNpbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zZWNvbmRhcnkgbXItMiBtYi0yIHAtYnV0dG9uIHAtY29tcG9uZW50IHAtYnV0dG9uLWljb24tb25seVwiPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFTElNSU5BUiAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIhZWRpdGluZ1wiIHBCdXR0b24gcFJpcHBsZSB0eXBlPVwiYnV0dG9uXCIgcERlbGV0ZUVkaXRhYmxlUm93XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cInBpIHBpLXRyYXNoXCIgKGNsaWNrKT1cImVsaW1pbmFyQ3J1Y2UoJGV2ZW50LGNydWNlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1vdXRsaW5lZCBtci0yIG1iLTIgcC1idXR0b24gcC1jb21wb25lbnQgcC1idXR0b24taWNvbi1vbmx5XCI+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZW1wdHltZXNzYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJwLTMgZm9udC1tZWRpdW0gZW1wdHltZXNzYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCI1XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7J21lbnNhamV0YWJsYXZhY2lhJyB8IHRyYW5zbGF0ZX19IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvcC10YWJsZT5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC1hY2NvcmRpb25UYWI+XG4gICAgICAgIDxwLWFjY29yZGlvblRhYiAqbmdJZj1cIiFudWV2b1wiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZ2x5cGhpY29ucyBnbHlwaGljb25zLW5vdGVzLTJcIj48L2k+e3snZmlsdHJvJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCI+XG5cbiAgICAgICAgICAgICAgICA8cC10YWJsZSAgW3ZhbHVlXT1cImxpc3RhQXRyaWJ1dG9QdW50b1wiIHJlc3BvbnNpdmVMYXlvdXQ9XCJzY3JvbGxcIiBbc2Nyb2xsYWJsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsRGlyZWN0aW9uPVwiaG9yaXpvbnRhbFwiIHN0eWxlQ2xhc3M9XCJwLWRhdGF0YWJsZS1zdHJpcGVkXCIgPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDUwJTtcIj57eydkZXNjcmlwY2lvbicgfCB0cmFuc2xhdGV9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDUwJTtcIj57eydjb2RpZ28nIHwgdHJhbnNsYXRlfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtZWxlbWVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNTAlO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2VsZW1lbnQuZGVzY3JpcGNpb259fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDUwJTtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tlbGVtZW50LmNvZGlnb319XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJlbXB0eW1lc3NhZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz1cInAtMyBmb250LW1lZGl1bSBlbXB0eW1lc3NhZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3snbWVuc2FqZXRhYmxhdmFjaWEnIHwgdHJhbnNsYXRlfX0gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGNvbC0xMiBtZDpjb2wtMTIgbGc6Y29sLTEyXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9udC1tZWRpdW0gdy1mdWxsXCIgZm9yPVwiZGVzY3JpcGNpb25cIj57eydmaWx0cm8nIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICAgICAgPHRleHRhcmVhIGNsYXNzPVwidy1mdWxsXCIgaWQ9XCJmbG9hdC1pbnB1dFwiIHJvd3M9XCI1XCIgY29scz1cIjMwXCIgcElucHV0VGV4dGFyZWFcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwicmVjdXJzb1B1bnRvRFRPLmZpbHRyb1wiIGF1dG9mb2N1cyBbYXV0b1Jlc2l6ZV09XCJ0cnVlXCI+IDwvdGV4dGFyZWE+PC9sYWJlbD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIGFsaWduLWNvbnRlbnQtY2VudGVyIG10LTNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgY2xhc3M9XCJtbC0yIHAtYnV0dG9uLXJhaXNlZFwiIChjbGljayk9XCJndWFyZGFyKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cImdseXBoaWNvbnMgZ2x5cGhpY29ucy1yZWZyZXNoXCIgbGFiZWw9XCJBY3R1YWxpemFyXCIgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLWFjY29yZGlvblRhYj5cbiAgICA8L3AtYWNjb3JkaW9uPlxuPC9wLWRpYWxvZz5cbiJdfQ==
270
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAtcmVjdXJzby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3dlYmNvbW1vbi9wb3B1cHMvcG9wdXAtcmVjdXJzby9wb3B1cC1yZWN1cnNvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvd2ViY29tbW9uL3BvcHVwcy9wb3B1cC1yZWN1cnNvL3BvcHVwLXJlY3Vyc28uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQWlCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdkUsT0FBTyxFQUF1QixjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDekYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDL0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFHL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFn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LDBQQUFFLGNBQWMsNHFDQUFFLFlBQVksNk9BQUUsZUFBZSxpbEJBQUUsV0FBVyxpbkJBQUUsV0FBVyxrNEVBQUUsMkJBQTJCLG9FQUFFLG1CQUFtQjs7MkZBTXpMLHFCQUFxQjtrQkFSakMsU0FBUzsrQkFDRSxtQkFBbUIsV0FDcEIsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLDJCQUEyQixFQUFFLG1CQUFtQixDQUFDLGNBQ3ZMLElBQUksYUFDTCxDQUFDLGNBQWMsQ0FBQztnUUFNWixRQUFRO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2VuZXJhbFBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy9nZW5lcmFsLnBpcGUnO1xuaW1wb3J0IHsgY2FyZ2FybWFwYXNHbG9iYWwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvc2VydmljaW9zL2Nhcmdhci1tYXBhcy5zZXJ2aWNlJztcbmltcG9ydCB7IEdlbmVyYWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3NlcnZpY2lvcy9nZW5lcmFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2VuZXJhbE1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vc2VndXJpZGFkL21vZGVsb3MvR2VuZXJhbE1vZGVsJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHtBdHJpYnV0b1B1bnRvTW9kZWx9IGZyb20gJy4uLy4uLy4uL3NlZ3VyaWRhZC9tb2RlbG9zL0F0cmlidXRvUHVudG9Nb2RlbCc7XG5pbXBvcnQge0NydWNlUmVjdXJzb1B1bnRvTW9kZWx9IGZyb20gJy4uLy4uLy4uL3NlZ3VyaWRhZC9tb2RlbG9zL0NydWNlUmVjdXJzb1B1bnRvTW9kZWwnO1xuaW1wb3J0IHtQdW50b1Byb2Nlc29Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vc2VndXJpZGFkL21vZGVsb3MvUHVudG9Qcm9jZXNvTW9kZWwnO1xuaW1wb3J0IHtSZWN1cnNvUHVudG9Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vc2VndXJpZGFkL21vZGVsb3MvUmVjdXJzb1B1bnRvTW9kZWwnO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNpb3MvdG9hc3Quc2VydmljZSc7XG5pbXBvcnQgeyBVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2lvcy91dGlscy5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpYWxvZ01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZGlhbG9nJztcbmltcG9ydCB7IENvbmZpcm1Qb3B1cE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvY29uZmlybXBvcHVwJztcbmltcG9ydCB7IERyb3Bkb3duTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9kcm9wZG93bic7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XG5pbXBvcnQgeyBBY2NvcmRpb25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2FjY29yZGlvbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XG5pbXBvcnQgeyBUZW1wbGF0ZVRhYmxhVmFjaWFDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2NvbXBvbmVudGVzL3RlbXBsYXRlLXRhYmxhLXZhY2lhL3RlbXBsYXRlLXRhYmxhLXZhY2lhLmNvbXBvbmVudCc7aW1wb3J0IHsgSW5wdXRUZXh0YXJlYU1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvaW5wdXR0ZXh0YXJlYSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1wb3B1cC1yZWN1cnNvJyxcbiAgaW1wb3J0czogW1RyYW5zbGF0ZU1vZHVsZSwgQ29tbW9uTW9kdWxlLCBEaWFsb2dNb2R1bGUsIENvbmZpcm1Qb3B1cE1vZHVsZSwgRHJvcGRvd25Nb2R1bGUsIEJ1dHRvbk1vZHVsZSwgQWNjb3JkaW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgVGFibGVNb2R1bGUsIFRlbXBsYXRlVGFibGFWYWNpYUNvbXBvbmVudCwgSW5wdXRUZXh0YXJlYU1vZHVsZV0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtNZXNzYWdlU2VydmljZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3BvcHVwLXJlY3Vyc28uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wb3B1cC1yZWN1cnNvLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUG9wdXBSZWN1cnNvQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBAT3V0cHV0KCkgcHVibGljIHJlZ3Jlc2FyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHJlY3Vyc29QdW50b0RUTzogUmVjdXJzb1B1bnRvTW9kZWwgPSBuZXcgUmVjdXJzb1B1bnRvTW9kZWw7XG4gIGxsYXZlOiBhbnk7XG4gIGRlc3Rpbm86IFN0cmluZztcbiAgdGlwb1JlY3Vyc287XG4gIG51ZXZvOiBib29sZWFuO1xuICBtb3N0cmFyUG9wdXA6IGJvb2xlYW47XG4gIHJlY3Vyc29zVmFsaWRhcjogUmVjdXJzb1B1bnRvTW9kZWxbXSA9IFtdO1xuICBjcnVjZXM6IENydWNlUmVjdXJzb1B1bnRvTW9kZWxbXSA9IFtdO1xuICBsaXN0YUVudHJhZGE6IGFueVtdID0gW107XG4gIGxpc3RhUHVudG9zUHJvY2VzbzogYW55W10gPSBbXTtcbiAgbGlzdGFBdHJpYnV0b1B1bnRvOiBBdHJpYnV0b1B1bnRvTW9kZWxbXSA9IFtdO1xuICBsaXN0YWRvQXRyaWJ1dG9QdW50bzogYW55W10gPSBbXTtcbiAgbGlzdGFDcnVjZTogQ3J1Y2VSZWN1cnNvUHVudG9Nb2RlbFtdID0gW107XG4gIGNydWNlUmVjdXJzb1B1bnRvOiBDcnVjZVJlY3Vyc29QdW50b01vZGVsID0gbmV3IENydWNlUmVjdXJzb1B1bnRvTW9kZWwoKTtcbiAgdmlzdGFWaXN1YWxpemFyOiBTdHJpbmc7XG4gIHBhZ2luYXRvckNydWNlID0ge1xuICAgIHJvd3M6IDEwLFxuICAgIHRvdGFsUmVjb3JkczogMCxcbiAgfTtcblxuICBcblxuXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBnZW5lcmFsU2VydmljZTogR2VuZXJhbFNlcnZpY2UsIHByaXZhdGUgY2FyZ2FyTWFwYXM6IGNhcmdhcm1hcGFzR2xvYmFsLCBwcml2YXRlIG5vdGlmaWNhY2lvbkJ1c1NlcnZpY2U6IFRvYXN0U2VydmljZSwgcHJpdmF0ZSBnZW5lcmFsUGlwZTogR2VuZXJhbFBpcGUsXG4gICAgcHVibGljIHV0aWxzU2VydmljZTogVXRpbHNTZXJ2aWNlLHByaXZhdGUgbm90aWZpY2FjaW9uZXNCdXNTZXJ2aWNlOiBUb2FzdFNlcnZpY2UscHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7IH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2FyZ2FyTGlzdGFzKCk7XG4gIH1cblxuICBhc3luYyBjYXJnYXJMaXN0YXMoKSB7XG4gICAgdGhpcy5saXN0YVB1bnRvc1Byb2Nlc28gPSBhd2FpdCB0aGlzLmNhcmdhck1hcGFzLmNhcmdhclNlbGVjdEl0ZW1TdHJpbmcoJ2xsYXZlVGFibGEnLCAnZGVzY3JpcGNpb24nLCBuZXcgR2VuZXJhbE1vZGVsKCdQdW50b1Byb2Nlc29EVE8nLCBudWxsLCBmYWxzZSwgbmV3IFB1bnRvUHJvY2Vzb01vZGVsKSk7XG4gIH1cblxuICBhc3luYyBsb2FkQ3J1Y2UoKSB7XG4gICAgdGhpcy5saXN0YUNydWNlID0gYXdhaXQgdGhpcy5nZW5lcmFsU2VydmljZS5xdWVyeUZvckxpc3QobmV3IEdlbmVyYWxNb2RlbCgnQ3J1Y2VSZWN1cnNvUHVudG9EVE8nLCAnQ3J1Y2VSZWN1cnNvUHVudG8uY29uc3VsdGFyQ3J1Y2VQb3JSZWN1cnNvJywgZmFsc2UsIHtyZWN1cnNvUHVudG86IHRoaXMucmVjdXJzb1B1bnRvRFRPLmxsYXZlVGFibGF9KSkudG9Qcm9taXNlKCk7XG4gIH1cblxuXG5cbiAgYXN5bmMgdmVyKHJlY3Vyc29QdW50b0RUTzogUmVjdXJzb1B1bnRvTW9kZWwsIGxsYXZlOiBhbnksIG51ZXZvOiBib29sZWFuLCB0aXBvUmVjdXJzbykge1xuICAgICAgYXdhaXQgdGhpcy5uZ09uSW5pdCgpO1xuICAgICAgdGhpcy5tb3N0cmFyUG9wdXAgPSB0cnVlO1xuICAgICAgdGhpcy5sbGF2ZSA9IGxsYXZlO1xuICAgICAgdGhpcy50aXBvUmVjdXJzbyA9IHRpcG9SZWN1cnNvO1xuICAgICAgdGhpcy5udWV2byA9IG51ZXZvO1xuICAgICAgdGhpcy5yZWN1cnNvUHVudG9EVE8gPSByZWN1cnNvUHVudG9EVE87XG4gICAgICB0aGlzLmNhcmdhclJlY3Vyc29QdW50bygpO1xuICAgICAgdGhpcy5jYXJnYXJFbnRyYWRhcygpO1xuICAgICAgaWYgKCF0aGlzLm51ZXZvKSB7XG4gICAgICAgIHRoaXMubG9hZENydWNlKCk7XG4gICAgICAgIHRoaXMuY2FyZ2FyQXRyaWJ1dG9zKHJlY3Vyc29QdW50b0RUTy5wdW50b1Byb2Nlc28pO1xuICAgICAgfVxuICB9XG5cbiAgZWxpbWluYXIoZXZlbnQpe1xuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZS5jb25maXJtKHtcbiAgICAgIHRhcmdldDogZXZlbnQudGFyZ2V0LFxuICAgICAgbWVzc2FnZTogdGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX0VMSU1JTkFSX0NPTkZJUk1BUixcbiAgICAgIGFjY2VwdExhYmVsOidTaScsXG4gICAgICBhY2NlcHQ6ICgpID0+IHtcbiAgICAgICAgdGhpcy5zZXRSZXNwdWVzdGEoKTtcbiAgICAgIH0sXG4gICAgICByZWplY3Q6ICgpID0+IHtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHNldFJlc3B1ZXN0YSgpe1xuICAgIGlmKHRoaXMudmFsaWRhckVsaW1pbmFjaW9uKCkpe1xuICAgIGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuZGVsZXRlKG5ldyBHZW5lcmFsTW9kZWwoJ1JlY3Vyc29QdW50b0RUTycsbnVsbCwgZmFsc2UsIHtsbGF2ZVRhYmxhOiB0aGlzLnJlY3Vyc29QdW50b0RUTy5sbGF2ZVRhYmxhfSkpLnRvUHJvbWlzZSgpO1xuICAgIHRoaXMubm90aWZpY2FjaW9uQnVzU2VydmljZS5zaG93SW5mbyh0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfRUxJTUlOQVIpO1xuICAgIHRoaXMub2N1bHRhcigpO1xuICAgIHJldHVyblxuICAgIH1lbHNlIHtcbiAgICAgIHRoaXMubm90aWZpY2FjaW9uZXNCdXNTZXJ2aWNlLnNob3dXYXJuaW5nKCdEZWJlIGVsaW1pbmFyIGxvcyBjcnVjZXMgcHJpbWVybycpO1xuICAgIH1cbiAgfVxuICBhc3luYyB2YWxpZGFyRWxpbWluYWNpb24oKXtcbiAgICBsZXQgdmFsaWRhZG9yID0gIGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuY2FudGlkYWRSZWdpc3Ryb3MobmV3IEdlbmVyYWxNb2RlbCgnQ3J1Y2VSZWN1cnNvUHVudG9EVE8nLCBudWxsLCBmYWxzZSx7cHVudG9Qcm9jZXNvOiB0aGlzLnJlY3Vyc29QdW50b0RUTy5wdW50b1Byb2Nlc28gLCByZXBvcnRlRnVlbnRlOiB0aGlzLnJlY3Vyc29QdW50b0RUTy5yZXBvcnRlRnVlbnRlfSkpLnRvUHJvbWlzZSgpO1xuICAgIHJldHVybiB0cnVlID8gdmFsaWRhZG9yID09IDAgOiBmYWxzZTtcbiAgfVxuXG4gIGFzeW5jIGNhcmdhclJlY3Vyc29QdW50bygpIHtcbiAgICBsZXQgdmVyaWZpY2FyOiBSZWN1cnNvUHVudG9Nb2RlbCA9IG5ldyBSZWN1cnNvUHVudG9Nb2RlbCgpO1xuICAgIGlmICh0aGlzLnRpcG9SZWN1cnNvID09ICdGJykge1xuICAgICAgdmVyaWZpY2FyLmZ1ZW50ZSA9IHRoaXMubGxhdmU7XG4gICAgfSBlbHNlIGlmICh0aGlzLnRpcG9SZWN1cnNvID09ICdSJykge1xuICAgICAgdmVyaWZpY2FyLnJlcG9ydGVGdWVudGUgPSB0aGlzLmxsYXZlO1xuICAgIH1cbiAgICB0aGlzLnJlY3Vyc29zVmFsaWRhciA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UucXVlcnlGb3JMaXN0KG5ldyBHZW5lcmFsTW9kZWwoJ1JlY3Vyc29QdW50b0RUTycsIG51bGwsIGZhbHNlLCB2ZXJpZmljYXIpKS50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGNhcmdhckVudHJhZGFzKCkge1xuICAgIGlmICh0aGlzLnRpcG9SZWN1cnNvID09ICdGJykge1xuICAgICAgdGhpcy5saXN0YUVudHJhZGEgPSBhd2FpdCB0aGlzLmNhcmdhck1hcGFzLmNhcmdhclNlbGVjdEl0ZW1TdHJpbmcoJ2xsYXZlVGFibGEnLCAnZGVzY3JpcGNpb24nLCBuZXcgR2VuZXJhbE1vZGVsKCdGdWVudGVFbnRyYWRhRFRPJywgbnVsbCwgZmFsc2UsIHsgZnVlbnRlOiB0aGlzLmxsYXZlIH0pKVxuICAgIH0gZWxzZSBpZiAodGhpcy50aXBvUmVjdXJzbyA9PSAnUicpIHtcbiAgICAgIHRoaXMubGlzdGFFbnRyYWRhID0gYXdhaXQgdGhpcy5jYXJnYXJNYXBhcy5jYXJnYXJTZWxlY3RJdGVtU3RyaW5nKCdsbGF2ZVRhYmxhJywgJ2Rlc2NyaXBjaW9uJywgbmV3IEdlbmVyYWxNb2RlbCgnRnVlbnRlRW50cmFkYURUTycsIG51bGwsIGZhbHNlLCB7IHJlcG9ydGVGdWVudGU6IHRoaXMubGxhdmUgfSkpXG4gICAgfVxuICB9XG5cbiAgYXN5bmMgY2FyZ2FyQ3J1Y2UoKSB7XG4gICAgaWYgKHRoaXMucmVjdXJzb1B1bnRvRFRPLmxsYXZlVGFibGEgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNydWNlcyA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UucXVlcnlGb3JMaXN0KG5ldyBHZW5lcmFsTW9kZWwoJ0NydWNlUmVjdXJzb1B1bnRvRFRPJywgJ0NydWNlUmVjdXJzb1B1bnRvLmNvbnN1bHRhckNydWNlUG9yUmVjdXJzbycsIHRydWUsIHsgcmVjdXJzb1B1bnRvOiB0aGlzLnJlY3Vyc29QdW50b0RUTy5sbGF2ZVRhYmxhIH0pKS50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIGNhcmdhckF0cmlidXRvcyhwdW50b1Byb2Nlc28pIHtcbiAgICB0aGlzLmxpc3RhZG9BdHJpYnV0b1B1bnRvID0gYXdhaXQgdGhpcy5jYXJnYXJNYXBhcy5jYXJnYXJTZWxlY3RJdGVtU3RyaW5nKCdsbGF2ZVRhYmxhJywgJ2Rlc2NyaXBjaW9uJywgbmV3IEdlbmVyYWxNb2RlbCgnQXRyaWJ1dG9QdW50b0RUTycsIG51bGwsIGZhbHNlLCB7IHB1bnRvUHJvY2VzbzogcHVudG9Qcm9jZXNvIH0pKTtcbiAgICB0aGlzLmxpc3RhQXRyaWJ1dG9QdW50byA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UucXVlcnlGb3JMaXN0KG5ldyBHZW5lcmFsTW9kZWwoJ0F0cmlidXRvUHVudG9EVE8nLCBudWxsLCBmYWxzZSwgeyBwdW50b1Byb2Nlc286IHB1bnRvUHJvY2VzbyB9KSkudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBndWFyZGFyKCkge1xuICAgICAgaWYgKHRoaXMudmFsaWRhcigpKSB7XG4gICAgICAgIGlmICh0aGlzLm51ZXZvKSB7XG4gICAgICAgICAgaWYgKHRoaXMudGlwb1JlY3Vyc28gPT0gJ0YnKSB7XG4gICAgICAgICAgICB0aGlzLnJlY3Vyc29QdW50b0RUTy5mdWVudGUgPSB0aGlzLmxsYXZlO1xuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy50aXBvUmVjdXJzbyA9PSAnUicpIHtcbiAgICAgICAgICAgIHRoaXMucmVjdXJzb1B1bnRvRFRPLnJlcG9ydGVGdWVudGUgPSB0aGlzLmxsYXZlO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLnJlY3Vyc29QdW50b0RUTy50aXBvID0gdGhpcy50aXBvUmVjdXJzbztcbiAgICAgICAgICB0aGlzLnJlY3Vyc29QdW50b0RUTyA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuY3JlYXJSZWdpc3RybyhuZXcgR2VuZXJhbE1vZGVsKCdSZWN1cnNvUHVudG9EVE8nLCBudWxsLCBmYWxzZSwgdGhpcy5yZWN1cnNvUHVudG9EVE8pKS50b1Byb21pc2UoKTtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhY2lvbkJ1c1NlcnZpY2Uuc2hvd0luZm8odGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX0dVQVJEQVIpO1xuICAgICAgICAgIHRoaXMuY2FyZ2FyQXRyaWJ1dG9zKHRoaXMucmVjdXJzb1B1bnRvRFRPLnB1bnRvUHJvY2Vzbyk7XG4gICAgICAgICAgdGhpcy5udWV2byA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZWN1cnNvUHVudG9EVE8udGlwbyA9IHRoaXMudGlwb1JlY3Vyc29cbiAgICAgICAgaWYgKChhd2FpdCB0aGlzLmdlbmVyYWxTZXJ2aWNlLnVwZGF0ZShuZXcgR2VuZXJhbE1vZGVsKCdSZWN1cnNvUHVudG9EVE8nLCBudWxsLCBmYWxzZSwgdGhpcy5yZWN1cnNvUHVudG9EVE8pKS50b1Byb21pc2UoKSkgPD0gMCkge1xuICAgICAgICAgIHRoaXMubm90aWZpY2FjaW9uQnVzU2VydmljZS5zaG93SW5mbyh0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfQUNUVUFMSVpBUl9OTyk7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jYXJnYXJBdHJpYnV0b3ModGhpcy5yZWN1cnNvUHVudG9EVE8ucHVudG9Qcm9jZXNvKTtcbiAgICAgICAgdGhpcy5ub3RpZmljYWNpb25CdXNTZXJ2aWNlLnNob3dJbmZvKHRoaXMuZ2VuZXJhbFBpcGUuTUVOU0FKRV9BQ1RVQUxJWkFSKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgbnVldm9DcnVjZSgpIHtcbiAgICB0aGlzLnZpc3RhVmlzdWFsaXphciA9ICdudWV2b0NydWNlJ1xuICB9XG4gIGNhbmNlbGFyQ3J1Y2UoKSB7XG4gICAgdGhpcy52aXN0YVZpc3VhbGl6YXIgPSBudWxsO1xuICB9XG5cbiAgYXN5bmMgYWdyZWdhckNydWNlKGNydWNlPywgbnVldm8/KSB7XG4gICAgICBpZiAobnVldm8pIHtcbiAgICAgICAgaWYgKCF0aGlzLnZhbGlkYXJDcnVjZSgpKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY3J1Y2VSZWN1cnNvUHVudG8ucmVjdXJzb1B1bnRvID0gdGhpcy5yZWN1cnNvUHVudG9EVE8ubGxhdmVUYWJsYTtcbiAgICAgICAgdGhpcy5jcnVjZVJlY3Vyc29QdW50byA9IGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuY3JlYXJSZWdpc3RybyhuZXcgR2VuZXJhbE1vZGVsKCdDcnVjZVJlY3Vyc29QdW50b0RUTycsIG51bGwsIGZhbHNlLCB0aGlzLmNydWNlUmVjdXJzb1B1bnRvKSkudG9Qcm9taXNlKCk7XG4gICAgICAgIC8vdGhpcy5saXN0YUNydWNlLnB1c2godGhpcy5jcnVjZVJlY3Vyc29QdW50byk7XG4gICAgICAgIGF3YWl0IHRoaXMuY2FyZ2FyQ3J1Y2UoKTtcbiAgICAgICAgYXdhaXQgdGhpcy5sb2FkQ3J1Y2UoKTtcbiAgICAgICAgdGhpcy5ub3RpZmljYWNpb25CdXNTZXJ2aWNlLnNob3dJbmZvKHRoaXMuZ2VuZXJhbFBpcGUuTUVOU0FKRV9HVUFSREFSKTtcbiAgICAgICAgdGhpcy52aXN0YVZpc3VhbGl6YXIgPSBudWxsO1xuICAgICAgICB0aGlzLmNydWNlUmVjdXJzb1B1bnRvID0gbmV3IENydWNlUmVjdXJzb1B1bnRvTW9kZWwoKTtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNydWNlUmVjdXJzb1B1bnRvID0gY3J1Y2VcbiAgICAgICAgaWYgKChhd2FpdCB0aGlzLmdlbmVyYWxTZXJ2aWNlLnVwZGF0ZShuZXcgR2VuZXJhbE1vZGVsKCdDcnVjZVJlY3Vyc29QdW50b0RUTycsIG51bGwsIGZhbHNlLCB0aGlzLmNydWNlUmVjdXJzb1B1bnRvKSkudG9Qcm9taXNlKCkpIDw9IDApIHtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhY2lvbkJ1c1NlcnZpY2Uuc2hvd1dhcm5pbmcodGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX0FDVFVBTElaQVJfTk8pO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubm90aWZpY2FjaW9uQnVzU2VydmljZS5zaG93U3VjY2Vzcyh0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfQUNUVUFMSVpBUik7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICB9XG4gIFxuICBlbGltaW5hckNydWNlKGV2ZW50LCBjcnVjZSl7XG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xuICAgICAgdGFyZ2V0OiBldmVudC50YXJnZXQsXG4gICAgICBtZXNzYWdlOiB0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfRUxJTUlOQVJfQ09ORklSTUFSLFxuICAgICAgYWNjZXB0TGFiZWw6ICdTaScsXG4gICAgICBhY2NlcHQ6ICgpID0+IHtcbiAgICAgICAgdGhpcy5zZXRFbGltaW5hckNydWNlKGNydWNlKTtcbiAgICAgIH0sXG4gICAgICByZWplY3Q6ICgpID0+IHtcbiAgICAgICAgdGhpcy5ub3RpZmljYWNpb25lc0J1c1NlcnZpY2Uuc2hvd0luZm8oJ05vIHNlIGVsaW1pbm8gZWwgcmVnaXN0cm8nKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICBhc3luYyBzZXRFbGltaW5hckNydWNlKGNydWNlKXtcbiAgICBpZiAoKGF3YWl0IHRoaXMuZ2VuZXJhbFNlcnZpY2UuZGVsZXRlKG5ldyBHZW5lcmFsTW9kZWwoJ0NydWNlUmVjdXJzb1B1bnRvRFRPJywgbnVsbCwgZmFsc2UsIGNydWNlKSkudG9Qcm9taXNlKCkpIDw9IDApIHtcbiAgICAgIHRoaXMubm90aWZpY2FjaW9uZXNCdXNTZXJ2aWNlLnNob3dXYXJuaW5nKHRoaXMuZ2VuZXJhbFBpcGUuTUVOU0FKRV9FTElNSU5BUl9OTyk7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpcy5ub3RpZmljYWNpb25lc0J1c1NlcnZpY2Uuc2hvd0luZm8odGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX0VMSU1JTkFSKTtcbiAgICB0aGlzLmxvYWRDcnVjZSgpO1xuICB9XG5cbiAgdmFsaWRhcigpIHtcbiAgICBsZXQgdmFsaWRhciA9IHRydWU7XG4gICAgaWYgKHRoaXMucmVjdXJzb3NWYWxpZGFyID09IG51bGwgfHwgdGhpcy5yZWN1cnNvc1ZhbGlkYXIubGVuZ3RoIDw9IDApIHtcbiAgICAgIHJldHVybiB2YWxpZGFyO1xuICAgIH1cbiAgICB0aGlzLnJlY3Vyc29zVmFsaWRhci5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgaWYgKChlbGVtZW50LmxsYXZlVGFibGEgIT0gdGhpcy5yZWN1cnNvUHVudG9EVE8ubGxhdmVUYWJsYSkgJiYgZWxlbWVudC5wdW50b1Byb2Nlc28gPT0gdGhpcy5yZWN1cnNvUHVudG9EVE8ucHVudG9Qcm9jZXNvKSB7XG4gICAgICAgIHRoaXMubm90aWZpY2FjaW9uQnVzU2VydmljZS5zaG93SW5mbyh0aGlzLmdlbmVyYWxQaXBlLk1FTlNBSkVfUFVOVE9fUFJPQ0VTT19SRVBFVElETyk7XG4gICAgICAgIHZhbGlkYXIgPSBmYWxzZVxuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiB2YWxpZGFyO1xuICB9XG4gIHZhbGlkYXJDcnVjZSgpIHtcbiAgICBpZih0aGlzLnRpcG9SZWN1cnNvID09IG51bGwpe1xuICAgICAgdGhpcy5ub3RpZmljYWNpb25CdXNTZXJ2aWNlLnNob3dFcnJvcignTm8gc2UgZW5jdWVudHJhIGVsIHJlY3Vyc28nKTtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgICB0aGlzLmNydWNlcy5mb3JFYWNoKGFzeW5jIGVsZW1lbnQgPT4ge1xuICAgICAgaWYgKHRoaXMudGlwb1JlY3Vyc28gPT0gJ0YnICYmIGVsZW1lbnQuZnVlbnRlRW50cmFkYSA9PSB0aGlzLmNydWNlUmVjdXJzb1B1bnRvLmZ1ZW50ZUVudHJhZGEpIHtcbiAgICAgICAgdGhpcy5ub3RpZmljYWNpb25CdXNTZXJ2aWNlLnNob3dJbmZvKHRoaXMuZ2VuZXJhbFBpcGUuTUVOU0FKRV9QQVJBTUVUUk9fUkVQRVRJRE8pO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm5vdGlmaWNhY2lvbkJ1c1NlcnZpY2Uuc2hvd0luZm8odGhpcy5nZW5lcmFsUGlwZS5NRU5TQUpFX1BBUkFNRVRST19SRVBFVElETyk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG5cblxuICBwdWJsaWMgb2N1bHRhcigpIHtcbiAgICB0aGlzLm1vc3RyYXJQb3B1cCA9IGZhbHNlO1xuICAgIHRoaXMucmVncmVzYXIuZW1pdCgpO1xuICB9XG5cbn1cbiIsIjxwLWNvbmZpcm1Qb3B1cD48L3AtY29uZmlybVBvcHVwPlxuPHAtZGlhbG9nIGlkPSdwb3B1cFJlSW1wcmltaXJSZWdyZXNpb24nIGhlYWRlcj1cInt7J3JlY3Vyc28nIHwgdHJhbnNsYXRlfX1cIiBbKHZpc2libGUpXT1cIm1vc3RyYXJQb3B1cFwiXG4gICAgW2JyZWFrcG9pbnRzXT1cInsnOTYwcHgnOiAnNzV2dycsICc2NDBweCc6ICcxMDB2dyd9XCIgW3N0eWxlXT1cInt3aWR0aDogJzUwdncnfVwiIChvbkhpZGUpPVwib2N1bHRhcigpXCIgW21vZGFsXT1cInRydWVcIj5cbiAgICA8cC1hY2NvcmRpb24gY2xhc3M9XCJ3LWZ1bGxcIj5cbiAgICAgICAgPHAtYWNjb3JkaW9uVGFiIFtzZWxlY3RlZF09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJnbHlwaGljb25zIGdseXBoaWNvbnMtbm90ZXMtMlwiPjwvaT57eydwdW50bycgfCB0cmFuc2xhdGUgfX0ge3sncHJvY2VzbycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiY29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBjb2wtMTIgbWQ6Y29sLTEyIGxnOmNvbC0xMlwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1mbHVpZCBncmlkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgY29sLTEyIG1kOmNvbC0xMiBsZzpjb2wtMTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1kcm9wZG93biBbb3B0aW9uc109XCJsaXN0YVB1bnRvc1Byb2Nlc29cIiBbYXV0b0Rpc3BsYXlGaXJzdF09XCJmYWxzZVwiIGFwcGVuZFRvPVwiYm9keVwiIFthdXRvWkluZGV4XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uTGFiZWw9XCJsYWJlbFwiIG9wdGlvblZhbHVlPVwia2V5XCIgWyhuZ01vZGVsKV09XCJyZWN1cnNvUHVudG9EVE8ucHVudG9Qcm9jZXNvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wLWRyb3Bkb3duPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIGFsaWduLWl0ZW1zLWNlbnRlciBtdC0zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHBCdXR0b24gcFJpcHBsZSBsYWJlbD1cInt7J2xpbmtfZ3VhcmRhcicgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicC1lbGVtZW50IHAtcmlwcGxlIG1sLTIgcC1idXR0b24tcmFpc2VkIHAtYnV0dG9uIHAtY29tcG9uZW50XCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJndWFyZGFyKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibnVldm9cIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbnMgZ2x5cGhpY29ucy1mbG9wcHktc2F2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwid2lkdGg6IGF1dG87XCI+PC9zcGFuPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgbGFiZWw9XCJ7eydsaW5rX2FjdHVhbGl6YXInIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC0yIHAtYnV0dG9uLXJhaXNlZFwiICpuZ0lmPVwiIW51ZXZvXCIgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImd1YXJkYXIoKVwiPjxzcGFuIGNsYXNzPVwiZ2x5cGhpY29ucyBnbHlwaGljb25zLXJlZnJlc2hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIndpZHRoOiBhdXRvO1wiPjwvc3Bhbj48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gcEJ1dHRvbiBsYWJlbD1cInt7J2xpbmtfZWxpbWluYXInIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInAtYnV0dG9uLW91dGxpbmVkIG1sLTIgbXItMnAtZWxlbWVudCBwLWJ1dHRvbiBwLWNvbXBvbmVudCBlbGltaW5hclwiIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIW51ZXZvXCIgKGNsaWNrKT1cImVsaW1pbmFyKCRldmVudClcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbnMgZ2x5cGhpY29ucy1iaW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIndpZHRoOiBhdXRvO1wiPjwvc3Bhbj48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtYWNjb3JkaW9uVGFiPlxuICAgICAgICA8cC1hY2NvcmRpb25UYWIgKm5nSWY9XCIhbnVldm9cIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImdseXBoaWNvbnMgZ2x5cGhpY29ucy1ub3Rlcy0yXCI+PC9pPnt7J2NydWNlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWVuZCBhbGlnbi1pdGVtcy1jZW50ZXIgbWItM1wiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHBCdXR0b24gbGFiZWw9XCJ7eydsaW5rX251ZXZvJyB8IHRyYW5zbGF0ZX19XCIgKGNsaWNrKT1cIm51ZXZvQ3J1Y2UoKVwiIGljb249XCJwaSBwaS1wbHVzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicC1yaXBwbGUgcC1lbGVtZW50IHAtYnV0dG9uIHAtY29tcG9uZW50IHAtYnV0dG9uLXNlY29uZGFyeSBtYi0yXCI+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHAtdGFibGUgaWQ9XCJ0YWJsYV9saXN0YV90aXBvX2VudGlkYWRcIiBbdmFsdWVdPVwibGlzdGFDcnVjZVwiIFtzY3JvbGxhYmxlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIHNjcm9sbERpcmVjdGlvbj1cImJvdGhcIiBzY3JvbGxEaXJlY3Rpb249XCJob3Jpem9udGFsXCIgcmVzcG9uc2l2ZUxheW91dD1cInNjcm9sbFwiXG4gICAgICAgICAgICAgICAgICAgIHNjcm9sbERpcmVjdGlvbj1cImhvcml6b250YWxcIiBzdHlsZUNsYXNzPVwicC1kYXRhdGFibGUtc3RyaXBlZFwiIFtzaG93Q3VycmVudFBhZ2VSZXBvcnRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIGVkaXRNb2RlPVwicm93XCIgZGF0YUtleT1cImxsYXZlVGFibGFcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA0MCU7XCI+e3snZW50cmFkYScgfCB0cmFuc2xhdGV9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDQwJTtcIj57eyd2YWxvcicgfCB0cmFuc2xhdGV9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDEwJTtcIj4gPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCIgVGFibGFOdWV2b1JlZ2lzdHJvXCIgKm5nSWY9XCJ2aXN0YVZpc3VhbGl6YXIgPT09ICdudWV2b0NydWNlJ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MCU7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLWRyb3Bkb3duIGNsYXNzPVwidy1mdWxsXCIgW29wdGlvbnNdPVwibGlzdGFFbnRyYWRhXCIgb3B0aW9uVmFsdWU9XCJrZXlcIiBhcHBlbmRUbz1cImJvZHlcIiBbYXV0b1pJbmRleF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXV0b0Rpc3BsYXlGaXJzdF09XCJmYWxzZVwiIG9wdGlvbkxhYmVsPVwibGFiZWxcIiBjbGFzcz1cInctZnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNydWNlUmVjdXJzb1B1bnRvLmZ1ZW50ZUVudHJhZGFcIj48L3AtZHJvcGRvd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNDAlO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1kcm9wZG93biAgY2xhc3M9XCJ3LWZ1bGxcIiBbb3B0aW9uc109XCJsaXN0YWRvQXRyaWJ1dG9QdW50b1wiIG9wdGlvblZhbHVlPVwia2V5XCIgYXBwZW5kVG89XCJib2R5XCIgW2F1dG9aSW5kZXhdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F1dG9EaXNwbGF5Rmlyc3RdPVwiZmFsc2VcIiBvcHRpb25MYWJlbD1cImxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY3J1Y2VSZWN1cnNvUHVudG8uYXRyaWJ1dG9QdW50b1wiIGNsYXNzPVwidy1mdWxsXCI+PC9wLWRyb3Bkb3duPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDEwJTtcIiA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gcEJ1dHRvbiBwUmlwcGxlIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktY2hlY2tcIiAoY2xpY2spPVwiYWdyZWdhckNydWNlKG51bGwsdHJ1ZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zdWNjZXNzIG1yLTIgbWItMiBwLWJ1dHRvbiBwLWNvbXBvbmVudCBwLWJ1dHRvbi1pY29uLW9ubHlcIj48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjYW5jZWxhckNydWNlKClcIiBpY29uPVwicGkgcGktdGltZXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1kYW5nZXIgbXItMiBtYi0yIHAtYnV0dG9uIHAtY29tcG9uZW50IHAtYnV0dG9uLWljb24tb25seVwiPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LWNydWNlIGxldC1lZGl0aW5nPVwiZWRpdGluZ1wiIGxldC1yaT1cInJvd0luZGV4XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgW3BFZGl0YWJsZVJvd109XCJjcnVjZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MCU7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLWNlbGxFZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaW5wdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1kcm9wZG93biBbb3B0aW9uc109XCJsaXN0YUVudHJhZGFcIiBvcHRpb25WYWx1ZT1cImtleVwiIGFwcGVuZFRvPVwiYm9keVwiIFthdXRvWkluZGV4XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F1dG9EaXNwbGF5Rmlyc3RdPVwiZmFsc2VcIiBvcHRpb25MYWJlbD1cImxhYmVsXCIgY2xhc3M9XCJ3LWZ1bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNydWNlLnJlcG9ydGVFbnRyYWRhXCI+PC9wLWRyb3Bkb3duPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJvdXRwdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2NydWNlLmRlc2NyaXBjaW9uRW50cmFkYX19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3AtY2VsbEVkaXRvcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA0MCU7XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLWNlbGxFZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaW5wdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1kcm9wZG93biBbb3B0aW9uc109XCJsaXN0YWRvQXRyaWJ1dG9QdW50b1wiIG9wdGlvblZhbHVlPVwia2V5XCIgYXBwZW5kVG89XCJib2R5XCIgW2F1dG9aSW5kZXhdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXV0b0Rpc3BsYXlGaXJzdF09XCJmYWxzZVwiIG9wdGlvbkxhYmVsPVwibGFiZWxcIiBjbGFzcz1cInctZnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY3J1Y2UuYXRyaWJ1dG9QdW50b1wiPjwvcC1kcm9wZG93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwib3V0cHV0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tjcnVjZS5hdHJpYnV0b1B1bnRvRGVzY3JpcGNpb259fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wLWNlbGxFZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogMTAlO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDSEVDSyBHVUFSREFSIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImVkaXRpbmdcIiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIHBTYXZlRWRpdGFibGVSb3dcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwicGkgcGktY2hlY2tcIiAoY2xpY2spPVwiYWdyZWdhckNydWNlKGNydWNlLCBmYWxzZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicC1lbGVtZW50IHAtcmlwcGxlIHAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tc3VjY2VzcyBtci0yIG1iLTIgcC1idXR0b24gcC1jb21wb25lbnQgcC1idXR0b24taWNvbi1vbmx5XCI+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENBTkNFTEFSIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImVkaXRpbmdcIiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIHBDYW5jZWxFZGl0YWJsZVJvd1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJwaSBwaS10aW1lc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1kYW5nZXIgbXItMiBtYi0yIHAtYnV0dG9uIHAtY29tcG9uZW50IHAtYnV0dG9uLWljb24tb25seVwiPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFRElUQVIgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiIWVkaXRpbmdcIiBwQnV0dG9uIHBSaXBwbGUgdHlwZT1cImJ1dHRvblwiIHBJbml0RWRpdGFibGVSb3dcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwiZ2x5cGhpY29ucyBnbHlwaGljb25zLXBlbmNpbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1zZWNvbmRhcnkgbXItMiBtYi0yIHAtYnV0dG9uIHAtY29tcG9uZW50IHAtYnV0dG9uLWljb24tb25seVwiPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFTElNSU5BUiAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIhZWRpdGluZ1wiIHBCdXR0b24gcFJpcHBsZSB0eXBlPVwiYnV0dG9uXCIgcERlbGV0ZUVkaXRhYmxlUm93XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cInBpIHBpLXRyYXNoXCIgKGNsaWNrKT1cImVsaW1pbmFyQ3J1Y2UoJGV2ZW50LGNydWNlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwLWVsZW1lbnQgcC1yaXBwbGUgcC1idXR0b24tcm91bmRlZCBwLWJ1dHRvbi1vdXRsaW5lZCBtci0yIG1iLTIgcC1idXR0b24gcC1jb21wb25lbnQgcC1idXR0b24taWNvbi1vbmx5XCI+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZW1wdHltZXNzYWdlXCI+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiMTAwXCI+IFxuICAgICAgICAgICAgICAgIDxhcHAtdGVtcGxhdGUtdGFibGEtdmFjaWE+PC9hcHAtdGVtcGxhdGUtdGFibGEtdmFjaWE+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICA8L3RyPlxuICAgIDwvbmctdGVtcGxhdGU+ICAgICAgICAgICAgICAgIDwvcC10YWJsZT5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC1hY2NvcmRpb25UYWI+XG4gICAgICAgIDxwLWFjY29yZGlvblRhYiAqbmdJZj1cIiFudWV2b1wiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZ2x5cGhpY29ucyBnbHlwaGljb25zLW5vdGVzLTJcIj48L2k+e3snZmlsdHJvJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCI+XG5cbiAgICAgICAgICAgICAgICA8cC10YWJsZSAgW3ZhbHVlXT1cImxpc3RhQXRyaWJ1dG9QdW50b1wiIHJlc3BvbnNpdmVMYXlvdXQ9XCJzY3JvbGxcIiBbc2Nyb2xsYWJsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsRGlyZWN0aW9uPVwiaG9yaXpvbnRhbFwiIHN0eWxlQ2xhc3M9XCJwLWRhdGF0YWJsZS1zdHJpcGVkXCIgPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDUwJTtcIj57eydkZXNjcmlwY2lvbicgfCB0cmFuc2xhdGV9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwid2lkdGg6IDUwJTtcIj57eydjb2RpZ28nIHwgdHJhbnNsYXRlfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtZWxlbWVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogNTAlO1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2VsZW1lbnQuZGVzY3JpcGNpb259fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2lkdGg6IDUwJTtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tlbGVtZW50LmNvZGlnb319XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJlbXB0eW1lc3NhZ2VcIj5cbiAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRkIGNvbHNwYW49XCIxMDBcIj4gXG4gICAgICAgICAgICAgICAgPGFwcC10ZW1wbGF0ZS10YWJsYS12YWNpYT48L2FwcC10ZW1wbGF0ZS10YWJsYS12YWNpYT5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgIDwvdHI+XG4gICAgPC9uZy10ZW1wbGF0ZT4gICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGNvbC0xMiBtZDpjb2wtMTIgbGc6Y29sLTEyXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9udC1tZWRpdW0gdy1mdWxsXCIgZm9yPVwiZGVzY3JpcGNpb25cIj57eydmaWx0cm8nIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICAgICAgPHRleHRhcmVhIGNsYXNzPVwidy1mdWxsXCIgaWQ9XCJmbG9hdC1pbnB1dFwiIHJvd3M9XCI1XCIgY29scz1cIjMwXCIgcElucHV0VGV4dGFyZWFcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwicmVjdXJzb1B1bnRvRFRPLmZpbHRyb1wiIGF1dG9mb2N1cyBbYXV0b1Jlc2l6ZV09XCJ0cnVlXCI+IDwvdGV4dGFyZWE+PC9sYWJlbD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIGFsaWduLWNvbnRlbnQtY2VudGVyIG10LTNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBwQnV0dG9uIHBSaXBwbGUgY2xhc3M9XCJtbC0yIHAtYnV0dG9uLXJhaXNlZFwiIChjbGljayk9XCJndWFyZGFyKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cImdseXBoaWNvbnMgZ2x5cGhpY29ucy1yZWZyZXNoXCIgbGFiZWw9XCJBY3R1YWxpemFyXCIgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLWFjY29yZGlvblRhYj5cbiAgICA8L3AtYWNjb3JkaW9uPlxuPC9wLWRpYWxvZz5cbiJdfQ==