simpo-component-library 3.6.999 → 3.7.3

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 (267) hide show
  1. package/README.md +24 -24
  2. package/esm2022/lib/components/delete-hover-element/delete-hover-element.component.mjs +3 -3
  3. package/esm2022/lib/components/deprecated-section/deprecated-section.component.mjs +1 -1
  4. package/esm2022/lib/components/document/document.component.mjs +3 -3
  5. package/esm2022/lib/components/image-loading/image-loading.component.mjs +3 -3
  6. package/esm2022/lib/components/payment-details/payment-details.component.mjs +3 -3
  7. package/esm2022/lib/constants/business.constant.mjs +1 -1
  8. package/esm2022/lib/directive/alignment.directive.mjs +1 -1
  9. package/esm2022/lib/directive/blur-content.directive.mjs +1 -1
  10. package/esm2022/lib/directive/borderlessImage.directive.mjs +1 -1
  11. package/esm2022/lib/directive/button-directive.directive.mjs +1 -1
  12. package/esm2022/lib/directive/button-editor.directive.mjs +1 -1
  13. package/esm2022/lib/directive/color.directive.mjs +1 -1
  14. package/esm2022/lib/directive/column-directive.directive.mjs +1 -1
  15. package/esm2022/lib/directive/container-alignment.directive.mjs +1 -1
  16. package/esm2022/lib/directive/container-fir.directive.mjs +1 -1
  17. package/esm2022/lib/directive/content-title-spacing.directive.mjs +1 -1
  18. package/esm2022/lib/directive/contenteditable.directive.mjs +1 -1
  19. package/esm2022/lib/directive/corner-directive.mjs +1 -1
  20. package/esm2022/lib/directive/height.directive.mjs +1 -1
  21. package/esm2022/lib/directive/hover-animation.directive.mjs +1 -1
  22. package/esm2022/lib/directive/hoverborder.directive.mjs +1 -1
  23. package/esm2022/lib/directive/icon-directive.directive.mjs +1 -1
  24. package/esm2022/lib/directive/image-container.directive.mjs +1 -1
  25. package/esm2022/lib/directive/image-directive.directive.mjs +1 -1
  26. package/esm2022/lib/directive/image-editor.directive.mjs +1 -1
  27. package/esm2022/lib/directive/image-position.directive.mjs +1 -1
  28. package/esm2022/lib/directive/letters-only.directive.mjs +1 -1
  29. package/esm2022/lib/directive/merge-header.directive.mjs +1 -1
  30. package/esm2022/lib/directive/numbers-only.directive.mjs +1 -1
  31. package/esm2022/lib/directive/position-layout-directive.directive.mjs +1 -1
  32. package/esm2022/lib/directive/set-dynamic-background.directive.mjs +1 -1
  33. package/esm2022/lib/directive/spacing-around.directive.mjs +1 -1
  34. package/esm2022/lib/directive/spacing-horizontal.directive.mjs +1 -1
  35. package/esm2022/lib/directive/spacing.directive.mjs +1 -1
  36. package/esm2022/lib/directive/text-background-directive.directive.mjs +1 -1
  37. package/esm2022/lib/directive/text-size.directive.mjs +1 -1
  38. package/esm2022/lib/directive/translate-onhover.directive.mjs +1 -1
  39. package/esm2022/lib/directive/video-directive.directive.mjs +1 -1
  40. package/esm2022/lib/directive/wrap-containers.directive.mjs +1 -1
  41. package/esm2022/lib/ecommerce/sections/address/address.component.mjs +3 -3
  42. package/esm2022/lib/ecommerce/sections/authenticate-user/authenticate-user.component.mjs +3 -3
  43. package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.component.mjs +3 -3
  44. package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.model.mjs +1 -1
  45. package/esm2022/lib/ecommerce/sections/book-appointment/book-appointment.component.mjs +3 -3
  46. package/esm2022/lib/ecommerce/sections/brands-with-image-background-columns/brands-with-image-background-columns.component.mjs +3 -3
  47. package/esm2022/lib/ecommerce/sections/cart/cart.component.mjs +3 -3
  48. package/esm2022/lib/ecommerce/sections/cart/cart.modal.mjs +1 -1
  49. package/esm2022/lib/ecommerce/sections/categories-with-image-background-columns/categories-with-image-background-columns.component.mjs +7 -5
  50. package/esm2022/lib/ecommerce/sections/category-product/category-product.component.mjs +3 -3
  51. package/esm2022/lib/ecommerce/sections/category-product/category-product.model.mjs +1 -1
  52. package/esm2022/lib/ecommerce/sections/checkout/checkout.component.mjs +3 -3
  53. package/esm2022/lib/ecommerce/sections/checkout/checkout.modal.mjs +1 -1
  54. package/esm2022/lib/ecommerce/sections/customer-review/customer-review.component.mjs +3 -3
  55. package/esm2022/lib/ecommerce/sections/customer-review/customer-review.model.mjs +1 -1
  56. package/esm2022/lib/ecommerce/sections/enrollment-form/enrollment-form.component.mjs +3 -3
  57. package/esm2022/lib/ecommerce/sections/enrollment-form/enrollment-form.model.mjs +1 -1
  58. package/esm2022/lib/ecommerce/sections/featured-brand/featured-brand.component.mjs +3 -3
  59. package/esm2022/lib/ecommerce/sections/featured-brand/featured-brand.modal.mjs +1 -1
  60. package/esm2022/lib/ecommerce/sections/featured-category/featured-category.component.mjs +5 -5
  61. package/esm2022/lib/ecommerce/sections/featured-category/featured-category.modal.mjs +1 -1
  62. package/esm2022/lib/ecommerce/sections/featured-category/featured-collection.component.mjs +5 -5
  63. package/esm2022/lib/ecommerce/sections/featured-products/featured-products.component.mjs +3 -3
  64. package/esm2022/lib/ecommerce/sections/featured-products/featured-products.modal.mjs +1 -1
  65. package/esm2022/lib/ecommerce/sections/item-varient/item-varient.component.mjs +3 -3
  66. package/esm2022/lib/ecommerce/sections/new-collection/new-collection.component.mjs +5 -5
  67. package/esm2022/lib/ecommerce/sections/new-collection/new-collection.modal.mjs +1 -1
  68. package/esm2022/lib/ecommerce/sections/order-details/order-details.component.mjs +3 -3
  69. package/esm2022/lib/ecommerce/sections/pagnination/pagnination.component.mjs +3 -3
  70. package/esm2022/lib/ecommerce/sections/passbook-transactions/passbook-transactions.component.mjs +3 -3
  71. package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.component.mjs +3 -3
  72. package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.model.mjs +1 -1
  73. package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +19 -5
  74. package/esm2022/lib/ecommerce/sections/product-desc/product-desc.modal.mjs +1 -1
  75. package/esm2022/lib/ecommerce/sections/product-list/product-list.component.mjs +268 -15
  76. package/esm2022/lib/ecommerce/sections/product-list/product-list.modal.mjs +1 -1
  77. package/esm2022/lib/ecommerce/sections/refer-earn/refer-earn.component.mjs +3 -3
  78. package/esm2022/lib/ecommerce/sections/refer-earn/refer-earn.modal.mjs +1 -1
  79. package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.component.mjs +1 -1
  80. package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.model.mjs +1 -1
  81. package/esm2022/lib/ecommerce/sections/scheme-details/scheme-details.component.mjs +3 -3
  82. package/esm2022/lib/ecommerce/sections/scheme-selection/scheme-selection.component.mjs +3 -3
  83. package/esm2022/lib/ecommerce/sections/schemes/schemes.component.mjs +3 -3
  84. package/esm2022/lib/ecommerce/sections/schemes/schemes.component.model.mjs +1 -1
  85. package/esm2022/lib/ecommerce/sections/small-product-listing/small-product-listing.component.mjs +3 -3
  86. package/esm2022/lib/ecommerce/sections/store-list/store-list.component.mjs +3 -3
  87. package/esm2022/lib/ecommerce/sections/store-list/store-list.modal.mjs +1 -1
  88. package/esm2022/lib/ecommerce/sections/store-page/store-page.component.mjs +3 -3
  89. package/esm2022/lib/ecommerce/sections/store-page/store-page.model.mjs +1 -1
  90. package/esm2022/lib/ecommerce/sections/user-basic-info/user-basic-info.component.mjs +3 -3
  91. package/esm2022/lib/ecommerce/sections/user-profile/user-profile.modal.mjs +1 -1
  92. package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.component.mjs +3 -3
  93. package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.model.mjs +1 -1
  94. package/esm2022/lib/ecommerce/sections/whislist/whislist.component.mjs +3 -3
  95. package/esm2022/lib/ecommerce/styles/BaseCollection.modal.mjs +1 -1
  96. package/esm2022/lib/ecommerce/styles/Brand.modal.mjs +1 -1
  97. package/esm2022/lib/ecommerce/styles/Collection.modal.mjs +2 -1
  98. package/esm2022/lib/ecommerce/styles/OrderedItems.modal.mjs +1 -1
  99. package/esm2022/lib/ecommerce/styles/PincodeLocation.model.mjs +1 -1
  100. package/esm2022/lib/ecommerce/styles/PincodeLocationInter.model.mjs +1 -1
  101. package/esm2022/lib/ecommerce/styles/cart.modal.mjs +1 -1
  102. package/esm2022/lib/ecommerce/styles/category.modal.mjs +2 -1
  103. package/esm2022/lib/ecommerce/styles/order.modal.mjs +1 -1
  104. package/esm2022/lib/ecommerce/styles/product.modal.mjs +11 -1
  105. package/esm2022/lib/ecommerce/styles/review.modal.mjs +1 -1
  106. package/esm2022/lib/ecommerce/styles/user.modal.mjs +1 -1
  107. package/esm2022/lib/elements/add-section/add-section.component.mjs +3 -3
  108. package/esm2022/lib/elements/address-list/address-list.component.mjs +3 -3
  109. package/esm2022/lib/elements/below-image-card/below-image-card.component.mjs +3 -3
  110. package/esm2022/lib/elements/booking-cart-groups/booking-cart-groups.component.mjs +3 -3
  111. package/esm2022/lib/elements/button/button.component.mjs +3 -3
  112. package/esm2022/lib/elements/button/button.model.mjs +1 -1
  113. package/esm2022/lib/elements/card-skeleton-loader/card-skeleton-loader.component.mjs +3 -3
  114. package/esm2022/lib/elements/covering-image-card/covering-image-card.component.mjs +3 -3
  115. package/esm2022/lib/elements/editor-service.service.mjs +1 -1
  116. package/esm2022/lib/elements/heading-element/heading-element.component.mjs +3 -3
  117. package/esm2022/lib/elements/index.mjs +1 -1
  118. package/esm2022/lib/elements/link-editor/link-editor.component.mjs +3 -3
  119. package/esm2022/lib/elements/list-home-appointment/list-home-appointment.component.mjs +3 -3
  120. package/esm2022/lib/elements/media-selector/media-selector.component.mjs +3 -3
  121. package/esm2022/lib/elements/my-bookings/my-bookings.component.mjs +13 -3
  122. package/esm2022/lib/elements/portfolio/portfolio.component.mjs +3 -3
  123. package/esm2022/lib/elements/pricing-s1/pricing-s1.component.mjs +3 -3
  124. package/esm2022/lib/elements/property/property.component.mjs +3 -3
  125. package/esm2022/lib/elements/simpo-button/simpo-button.component.mjs +3 -3
  126. package/esm2022/lib/elements/svg-divider/svg-divider.component.mjs +3 -3
  127. package/esm2022/lib/elements/text/text.component.mjs +3 -3
  128. package/esm2022/lib/elements/text-editor/text-editor.component.mjs +7 -7
  129. package/esm2022/lib/elements/top-of-image-card/top-of-image-card.component.mjs +3 -3
  130. package/esm2022/lib/pipes/amount.pipe.mjs +1 -1
  131. package/esm2022/lib/pipes/gender.pipe.mjs +1 -1
  132. package/esm2022/lib/sections/BaseSection.mjs +1 -1
  133. package/esm2022/lib/sections/add-new-section/add-new-section.component.mjs +3 -3
  134. package/esm2022/lib/sections/appointment-form/appointment-booking/appointment-booking/appointment-booking.component.mjs +8 -5
  135. package/esm2022/lib/sections/appointment-form/appointment-form.model.mjs +1 -1
  136. package/esm2022/lib/sections/banner-carousel/banner-carousel.component.mjs +3 -3
  137. package/esm2022/lib/sections/banner-carousel/banner-carousel.model.mjs +1 -1
  138. package/esm2022/lib/sections/banner-grid-section/banner-grid-section.component.mjs +3 -3
  139. package/esm2022/lib/sections/blog-list/blog-list.component.mjs +3 -3
  140. package/esm2022/lib/sections/blog-list/blog-list.model.mjs +1 -1
  141. package/esm2022/lib/sections/brand-story-section/brand-story-section.component.mjs +3 -3
  142. package/esm2022/lib/sections/brand-story-section/brand-story-section.modal.mjs +1 -1
  143. package/esm2022/lib/sections/button-grid-section/button-grid-section.component.mjs +3 -3
  144. package/esm2022/lib/sections/choose-us-section/choose-us-section.component.mjs +3 -3
  145. package/esm2022/lib/sections/choose-us-section/choose-us-section.model.mjs +1 -1
  146. package/esm2022/lib/sections/condensed-and-gradient/condensed-and-gradient.component.mjs +3 -3
  147. package/esm2022/lib/sections/countdown-banner/countdown-banner.component.mjs +3 -3
  148. package/esm2022/lib/sections/countdown-banner/countdown-banner.component.model.mjs +1 -1
  149. package/esm2022/lib/sections/faq-columns-cards/faq-columns-cards.component.mjs +3 -3
  150. package/esm2022/lib/sections/faq-columns-cards/faq-columns-cards.modal.mjs +1 -1
  151. package/esm2022/lib/sections/faq-section/faq-section.component.mjs +3 -3
  152. package/esm2022/lib/sections/faq-section/faq-section.modal.mjs +1 -1
  153. package/esm2022/lib/sections/feature-experience-section/feature-experience-section.component.mjs +3 -3
  154. package/esm2022/lib/sections/feature-experience-section/feature-experience-section.modal.mjs +1 -1
  155. package/esm2022/lib/sections/features-section/features-section.component.mjs +3 -3
  156. package/esm2022/lib/sections/features-section/features-section.model.mjs +1 -1
  157. package/esm2022/lib/sections/footer/footer.component.mjs +10 -7
  158. package/esm2022/lib/sections/footer/footer.modal.mjs +1 -1
  159. package/esm2022/lib/sections/four-features-centered-image/four-features-centered-image.component.mjs +3 -3
  160. package/esm2022/lib/sections/four-features-centered-image/four-features-centered-image.modal.mjs +1 -1
  161. package/esm2022/lib/sections/header-section/header-section.component.mjs +12 -7
  162. package/esm2022/lib/sections/header-section/header-section.model.mjs +1 -1
  163. package/esm2022/lib/sections/header-text/header-text.component.mjs +3 -3
  164. package/esm2022/lib/sections/header-text/header-text.model.mjs +1 -1
  165. package/esm2022/lib/sections/image-background/image-background/image-background.component.mjs +3 -3
  166. package/esm2022/lib/sections/image-background/image-background/image-background.component.model.mjs +1 -1
  167. package/esm2022/lib/sections/image-carousel-section/image-carousel-section.component.mjs +3 -3
  168. package/esm2022/lib/sections/image-carousel-section/image-carousel.model.mjs +1 -1
  169. package/esm2022/lib/sections/image-grid-hotspot/image-grid-hotspot.component.mjs +3 -3
  170. package/esm2022/lib/sections/image-grid-hotspot/image-grid-hotspot.model.mjs +1 -1
  171. package/esm2022/lib/sections/image-grid-section/image-grid-section.component.mjs +3 -3
  172. package/esm2022/lib/sections/image-grid-section/image-grid-section.model.mjs +1 -1
  173. package/esm2022/lib/sections/image-section/image-section.component.mjs +3 -3
  174. package/esm2022/lib/sections/image-section/image-section.model.mjs +1 -1
  175. package/esm2022/lib/sections/location-section/location-section.component.mjs +3 -3
  176. package/esm2022/lib/sections/location-section/location-section.modal.mjs +1 -1
  177. package/esm2022/lib/sections/logo-showcase/logo-showcase.component.mjs +3 -3
  178. package/esm2022/lib/sections/logo-showcase/logo-showcase.modal.mjs +1 -1
  179. package/esm2022/lib/sections/moving-text/moving-text.component.mjs +3 -3
  180. package/esm2022/lib/sections/moving-text/moving-text.modal.mjs +1 -1
  181. package/esm2022/lib/sections/new-services/new-services.component.mjs +3 -3
  182. package/esm2022/lib/sections/new-services/new-services.model.mjs +1 -1
  183. package/esm2022/lib/sections/new-testimonials/new-testimonials.component.mjs +3 -3
  184. package/esm2022/lib/sections/new-testimonials/new-testimonials.model.mjs +1 -1
  185. package/esm2022/lib/sections/news-letter-component/news-letter-component.component.mjs +3 -3
  186. package/esm2022/lib/sections/news-letter-component/news-letter.modal.mjs +1 -1
  187. package/esm2022/lib/sections/overlapping-image/overlapping-image.component.mjs +3 -3
  188. package/esm2022/lib/sections/overlapping-image/overlapping-image.component.modal.mjs +1 -1
  189. package/esm2022/lib/sections/pricing-section/pricing-section.component.mjs +3 -3
  190. package/esm2022/lib/sections/pricing-section/pricing-section.modal.mjs +1 -1
  191. package/esm2022/lib/sections/process-modern/process-modern.component.mjs +3 -3
  192. package/esm2022/lib/sections/process-modern/process-modern.model.mjs +1 -1
  193. package/esm2022/lib/sections/process-section/process-section.component.mjs +3 -3
  194. package/esm2022/lib/sections/process-section/process-section.modal.mjs +1 -1
  195. package/esm2022/lib/sections/product-info-section/product-info-section.component.mjs +3 -3
  196. package/esm2022/lib/sections/product-info-section/product-info-section.component.modal.mjs +1 -1
  197. package/esm2022/lib/sections/property-component/property-component.component.mjs +3 -3
  198. package/esm2022/lib/sections/property-component/property-component.modal.mjs +1 -1
  199. package/esm2022/lib/sections/property-list/property-list.component.mjs +3 -3
  200. package/esm2022/lib/sections/property-list/property-list.modal.mjs +1 -1
  201. package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.component.mjs +3 -3
  202. package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.model.mjs +1 -1
  203. package/esm2022/lib/sections/registration-form/registration-form.component.mjs +3 -3
  204. package/esm2022/lib/sections/registration-form/registrationForm.model.mjs +1 -1
  205. package/esm2022/lib/sections/scheme-detail/scheme-detail.component.mjs +3 -3
  206. package/esm2022/lib/sections/scheme-detail/scheme-detail.modal.mjs +1 -1
  207. package/esm2022/lib/sections/service-section/service-section.component.mjs +3 -3
  208. package/esm2022/lib/sections/service-section/service-section.model.mjs +1 -1
  209. package/esm2022/lib/sections/skeleton-loader-section/skeleton-loader-section.component.mjs +3 -3
  210. package/esm2022/lib/sections/team-member-section/team-member-section.component.mjs +3 -3
  211. package/esm2022/lib/sections/team-member-section/team-member-section.model.mjs +1 -1
  212. package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.component.mjs +3 -3
  213. package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.model.mjs +1 -1
  214. package/esm2022/lib/sections/testimonial-masonry/testimonial-masonry.component.mjs +3 -3
  215. package/esm2022/lib/sections/testimonial-masonry/testimonial-masonry.model.mjs +1 -1
  216. package/esm2022/lib/sections/testimonial-section/testimonial-section.component.mjs +3 -3
  217. package/esm2022/lib/sections/testimonial-section/testimonial-section.model.mjs +1 -1
  218. package/esm2022/lib/sections/testimonial-slider/testimonial-slider.component.mjs +3 -3
  219. package/esm2022/lib/sections/testimonial-slider/testimonial-slider.model.mjs +1 -1
  220. package/esm2022/lib/sections/testimonial-video/testimonial-video.component.mjs +3 -3
  221. package/esm2022/lib/sections/testimonial-video/testimonial-video.model.mjs +1 -1
  222. package/esm2022/lib/sections/text-section/text-section.model.mjs +1 -1
  223. package/esm2022/lib/sections/usp-video-section/usp-video-section.component.mjs +3 -3
  224. package/esm2022/lib/sections/usp-video-section/usp-video-section.model.mjs +1 -1
  225. package/esm2022/lib/sections/video-carousel-section/video-carousel-section.component.mjs +3 -3
  226. package/esm2022/lib/sections/video-carousel-section/video-carousel.model.mjs +1 -1
  227. package/esm2022/lib/sections/video-grid-section/video-grid-section.component.mjs +3 -3
  228. package/esm2022/lib/sections/video-grid-section/video-grid-section.model.mjs +1 -1
  229. package/esm2022/lib/sections/video-section/video-section.component.mjs +3 -3
  230. package/esm2022/lib/sections/video-section/video-section.model.mjs +1 -1
  231. package/esm2022/lib/sections/video-showcase/video-showcase.component.mjs +3 -3
  232. package/esm2022/lib/sections/view-blog/view-blog.component.mjs +1 -1
  233. package/esm2022/lib/services/analytics.service.mjs +1 -1
  234. package/esm2022/lib/services/booking-product-cart.service.mjs +1 -1
  235. package/esm2022/lib/services/cart.service.mjs +1 -1
  236. package/esm2022/lib/services/endUser.service.mjs +1 -1
  237. package/esm2022/lib/services/image-upload-service.service.mjs +1 -1
  238. package/esm2022/lib/services/rest.service.mjs +38 -3
  239. package/esm2022/lib/services/sanitizeHtml.mjs +1 -1
  240. package/esm2022/lib/services/storage.service.mjs +1 -1
  241. package/esm2022/lib/styles/gradient-extension.mjs +1 -1
  242. package/esm2022/lib/styles/index.mjs +1 -1
  243. package/esm2022/lib/styles/style.model.mjs +1 -1
  244. package/esm2022/lib/styles/text-size.extension.mjs +1 -1
  245. package/esm2022/lib/styles/types.mjs +1 -1
  246. package/esm2022/lib/tokens/api-token.mjs +1 -1
  247. package/esm2022/lib/utils/list-route.util.mjs +56 -0
  248. package/esm2022/public-api.mjs +1 -1
  249. package/fesm2022/simpo-component-library.mjs +637 -253
  250. package/fesm2022/simpo-component-library.mjs.map +1 -1
  251. package/lib/components/input-fields/input-fields.component.d.ts +1 -1
  252. package/lib/ecommerce/sections/authentication-required/authentication-required.component.d.ts +1 -1
  253. package/lib/ecommerce/sections/product-desc/product-desc.component.d.ts +5 -1
  254. package/lib/ecommerce/sections/product-list/product-list.component.d.ts +46 -1
  255. package/lib/ecommerce/sections/schemes/schemes.component.d.ts +1 -1
  256. package/lib/ecommerce/styles/Collection.modal.d.ts +1 -0
  257. package/lib/ecommerce/styles/category.modal.d.ts +1 -0
  258. package/lib/ecommerce/styles/product.modal.d.ts +42 -0
  259. package/lib/elements/my-bookings/my-bookings.component.d.ts +3 -0
  260. package/lib/sections/banner-carousel/banner-carousel.component.d.ts +1 -1
  261. package/lib/sections/footer/footer.component.d.ts +2 -2
  262. package/lib/sections/pricing-section/pricing-section.component.d.ts +1 -1
  263. package/lib/services/rest.service.d.ts +13 -2
  264. package/lib/utils/list-route.util.d.ts +21 -0
  265. package/package.json +1 -1
  266. package/simpo-component-library-3.7.003.tgz +0 -0
  267. package/simpo-component-library-3.6.999.tgz +0 -0
@@ -10,6 +10,7 @@ import { OverlayDirective } from '../../../directive/overlay-directive';
10
10
  import { ContentFitDirective } from '../../../directive/content-fit-directive';
11
11
  import { SimpoComponentModule } from '../../../components/index';
12
12
  import BaseSection from '../../../sections/BaseSection';
13
+ import { listPath } from '../../../utils/list-route.util';
13
14
  import { SpacingHorizontalDirective } from '../../../directive/spacing-horizontal.directive';
14
15
  import { SimpoContainerAligment } from '../../../directive/container-alignment.directive';
15
16
  import { moveItemInArray } from '@angular/cdk/drag-drop';
@@ -77,8 +78,7 @@ export class FeaturedCollectionComponent extends BaseSection {
77
78
  moveItemInArray(this.responseData, startIdx, endIdx);
78
79
  }
79
80
  redirectToListPage(collection) {
80
- collection = collection.collectionName;
81
- this.router.navigate(['/list'], { queryParams: { collections: collection } });
81
+ this.router.navigate(listPath({ collection }));
82
82
  }
83
83
  get stylesLayout() {
84
84
  return { ...this.styles?.layout };
@@ -106,7 +106,7 @@ export class FeaturedCollectionComponent extends BaseSection {
106
106
  return this.styles?.layout?.align || '';
107
107
  }
108
108
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeaturedCollectionComponent, deps: [{ token: i1.Router }, { token: i2.RestService }, { token: i3.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
109
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FeaturedCollectionComponent, isStandalone: true, selector: "simpo-featured-collection", inputs: { data: "data", responseData: "responseData", index: "index", edit: "edit", delete: "delete", customClass: "customClass", nextComponentColor: "nextComponentColor" }, viewQueries: [{ propertyName: "categoryParent", first: true, predicate: ["categoryParent1"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!isLoading\">\n <section class=\"container-fluid total-container p-0\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\"\n [attr.style]=\"customClass\">\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\" class=\"border-radius-unset\">\n <div [id]=\"data?.id\" #mainContainer [simpoAnimation]=\"styles?.animation\" [simpoBackground]=\"styles?.background\"\n [simpoCorner]=\"styles?.corners\" class=\"d-flex w-100\">\n <div class=\"d-flex flex-column w-100\" [simpoOverlay]=\"styles?.background\" [simpoCorner]=\"styles?.corners\"\n [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" [spacingHorizontal]=\"stylesLayout\"\n [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let item of content?.inputText\" class=\"text-container\">\n <!-- <div class = \"content-side\"[innerHTML]=\"item.value | sanitizeHtml\" [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\"> -->\n <ng-container *ngIf=\"edit || item.value\">\n <div class=\"pt-3 w-100\">\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\n </div>\n </ng-container>\n <!-- </div> -->\n </div>\n <ng-container *ngIf=\"styles?.componentStyle === 'Style1';else categoryStyle2\">\n <div class=\"category-parent\" [ngClass]=\"{'flex-wrap': getDirection == 'COLUMN'}\"\n [simpoContainerAlignment]=\"styles?.layout\" [id]=\"data?.id\"\n [style.justifyContent]=\"!isMobile ? getJustifyContent() : ''\" #categoryParent1>\n <div\n *ngFor=\"let data of responseData | slice:getSliceParameters()[0]:getSliceParameters()[1]; let idx = index\"\n (click)=\"redirectToListPage(data.categoryName)\" class=\"d-flex flex-column align-items-center w-fit-content\"\n [ngClass]=\"{ 'w-48 d-flex flex-column align-items-center' : isMobile}\">\n <img [simpoCorner]=\"styles?.corners\"\n [style.height.px]=\"(styles?.containerHeight ?? 1) / (isMobile ? 2 : 1)\"\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\" loading=\"lazy\"\n onerror=\"this.src='https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\"\n [src]=\"data.imgUrl?.[0] ?? 'https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\" alt=\"\"\n class=\"category-image\" [ngClass]=\"{'category-new-image' : isMobile && getDirection == 'COLUMN'}\">\n <div *ngIf=\"content?.display?.showHeading\"\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\">{{data.categoryName}}</div>\n <!-- class=\"category-name body-large\" -->\n </div>\n </div>\n </ng-container>\n <ng-template #categoryStyle2>\n <div class=\"w-100\">\n <simpo-categories-with-image-background-columns [responseData]=\"responseData\" [styles]=\"styles\"\n [content]=\"content\"></simpo-categories-with-image-background-columns>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"styles?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n </section>\n</ng-container>\n\n<ngx-skeleton-loader *ngIf=\"isLoading\" count=\"1\" appearance=\"circle\" [theme]=\"{\n width: '100%',\n height: '40vh',\n 'border-radius': '10px',\n 'position': 'relative',\n 'right': '5px'\n}\">\n</ngx-skeleton-loader>", styles: [".mt-15{margin-top:15px}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.text-container{min-width:100px}.w-fit-content{width:fit-content!important}.total-container{height:fit-content!important;position:relative;display:block!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.category-parent{padding:25px 0% 2%;display:flex;width:100%;max-width:100%;gap:25px;overflow-x:scroll;font-size:16px!important;cursor:pointer}.hovering-effect:hover{font-size:22px!important;transition:.3s ease-in-out}.category-image{display:flex;flex-wrap:wrap;margin-bottom:15px;transition-duration:.3s;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out}.category-image:hover{-webkit-transform:scale(1.1);transform:scale(1.1)}.category-parent::-webkit-scrollbar{display:none}.span{width:141px;height:15px}.category-name{color:#222;font-size:16px;line-height:normal;font-weight:600}.border-radius-unset{border-radius:unset!important}@media screen and (max-width : 475px){.main-container{padding-left:10px;padding-right:10px}.total-container{height:fit-content!important}.w-48{width:48%!important}.category-new-image{height:150px!important;width:100%!important}.header{gap:7px}.category-parent{gap:8px;margin-top:15px;padding-left:0!important;padding-right:0!important;padding-top:0!important}.category-parent::-webkit-scrollbar{display:flex!important;height:3px}.span{width:70.5px;height:7.5px}.category-name{font-size:12px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.SlicePipe, name: "slice" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i5.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i6.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: i7.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["count", "loadingText", "appearance", "animation", "ariaLabel", "theme"] }, { kind: "directive", type:
109
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FeaturedCollectionComponent, isStandalone: true, selector: "simpo-featured-collection", inputs: { data: "data", responseData: "responseData", index: "index", edit: "edit", delete: "delete", customClass: "customClass", nextComponentColor: "nextComponentColor" }, viewQueries: [{ propertyName: "categoryParent", first: true, predicate: ["categoryParent1"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"!isLoading\">\r\n <section class=\"container-fluid total-container p-0\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n [attr.style]=\"customClass\">\r\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\" class=\"border-radius-unset\">\r\n <div [id]=\"data?.id\" #mainContainer [simpoAnimation]=\"styles?.animation\" [simpoBackground]=\"styles?.background\"\r\n [simpoCorner]=\"styles?.corners\" class=\"d-flex w-100\">\r\n <div class=\"d-flex flex-column w-100\" [simpoOverlay]=\"styles?.background\" [simpoCorner]=\"styles?.corners\"\r\n [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" [spacingHorizontal]=\"stylesLayout\"\r\n [simpoAnimation]=\"styles?.animation\">\r\n <div *ngFor=\"let item of content?.inputText\" class=\"text-container\">\r\n <!-- <div class = \"content-side\"[innerHTML]=\"item.value | sanitizeHtml\" [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\"> -->\r\n <ng-container *ngIf=\"edit || item.value\">\r\n <div class=\"pt-3 w-100\">\r\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\r\n </div>\r\n </ng-container>\r\n <!-- </div> -->\r\n </div>\r\n <ng-container *ngIf=\"styles?.componentStyle === 'Style1';else categoryStyle2\">\r\n <div class=\"category-parent\" [ngClass]=\"{'flex-wrap': getDirection == 'COLUMN'}\"\r\n [simpoContainerAlignment]=\"styles?.layout\" [id]=\"data?.id\"\r\n [style.justifyContent]=\"!isMobile ? getJustifyContent() : ''\" #categoryParent1>\r\n <div\r\n *ngFor=\"let data of responseData | slice:getSliceParameters()[0]:getSliceParameters()[1]; let idx = index\"\r\n (click)=\"redirectToListPage(data)\" class=\"d-flex flex-column align-items-center w-fit-content\"\r\n [ngClass]=\"{ 'w-48 d-flex flex-column align-items-center' : isMobile}\">\r\n <img [simpoCorner]=\"styles?.corners\"\r\n [style.height.px]=\"(styles?.containerHeight ?? 1) / (isMobile ? 2 : 1)\"\r\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\" loading=\"lazy\"\r\n onerror=\"this.src='https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\"\r\n [src]=\"data.imgUrl?.[0] ?? 'https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\" alt=\"\"\r\n class=\"category-image\" [ngClass]=\"{'category-new-image' : isMobile && getDirection == 'COLUMN'}\">\r\n <div *ngIf=\"content?.display?.showHeading\"\r\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\">{{data.categoryName}}</div>\r\n <!-- class=\"category-name body-large\" -->\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-template #categoryStyle2>\r\n <div class=\"w-100\">\r\n <simpo-categories-with-image-background-columns [responseData]=\"responseData\" [styles]=\"styles\"\r\n [content]=\"content\"></simpo-categories-with-image-background-columns>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"styles?.devider?.display\">\r\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\r\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\r\n </ng-container>\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n\r\n </section>\r\n</ng-container>\r\n\r\n<ngx-skeleton-loader *ngIf=\"isLoading\" count=\"1\" appearance=\"circle\" [theme]=\"{\r\n width: '100%',\r\n height: '40vh',\r\n 'border-radius': '10px',\r\n 'position': 'relative',\r\n 'right': '5px'\r\n}\">\r\n</ngx-skeleton-loader>", styles: [".mt-15{margin-top:15px}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.text-container{min-width:100px}.w-fit-content{width:fit-content!important}.total-container{height:fit-content!important;position:relative;display:block!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.category-parent{padding:25px 0% 2%;display:flex;width:100%;max-width:100%;gap:25px;overflow-x:scroll;font-size:16px!important;cursor:pointer}.hovering-effect:hover{font-size:22px!important;transition:.3s ease-in-out}.category-image{display:flex;flex-wrap:wrap;margin-bottom:15px;transition-duration:.3s;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out}.category-image:hover{-webkit-transform:scale(1.1);transform:scale(1.1)}.category-parent::-webkit-scrollbar{display:none}.span{width:141px;height:15px}.category-name{color:#222;font-size:16px;line-height:normal;font-weight:600}.border-radius-unset{border-radius:unset!important}@media screen and (max-width : 475px){.main-container{padding-left:10px;padding-right:10px}.total-container{height:fit-content!important}.w-48{width:48%!important}.category-new-image{height:150px!important;width:100%!important}.header{gap:7px}.category-parent{gap:8px;margin-top:15px;padding-left:0!important;padding-right:0!important;padding-top:0!important}.category-parent::-webkit-scrollbar{display:flex!important;height:3px}.span{width:70.5px;height:7.5px}.category-name{font-size:12px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.SlicePipe, name: "slice" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: i5.HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged", "isEcommerce"], outputs: ["edit"] }, { kind: "component", type: i6.DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: i7.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["count", "loadingText", "appearance", "animation", "ariaLabel", "theme"] }, { kind: "directive", type:
110
110
  //directive
111
111
  AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: BackgroundDirective, selector: "[simpoBackground]", inputs: ["simpoBackground", "scrollValue"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: SimpoContainerAligment, selector: "[simpoContainerAlignment]", inputs: ["simpoContainerAlignment"] }, { kind: "directive", type: SpacingHorizontalDirective, selector: "[spacingHorizontal]", inputs: ["spacingHorizontal", "isHeader"] }, { kind: "directive", type: CornerDirective, selector: "[simpoCorner]", inputs: ["simpoCorner"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "component", type: SvgDividerComponent, selector: "simpo-svg-divider", inputs: ["dividerType", "color"] }, { kind: "component", type: TextEditorComponent, selector: "simpo-text-editor", inputs: ["value", "editable", "isRTE", "sectionId", "label", "type", "inputTextIndex", "itemIndex"], outputs: ["valueChange"] }, { kind: "directive", type: SpacingAroundDirective, selector: "[spacingAround]", inputs: ["spacingAround", "backgroundInfo"] }, { kind: "component", type: CategoriesWithImageBackgroundColumnsComponent, selector: "simpo-categories-with-image-background-columns", inputs: ["responseData", "styles", "content"] }] }); }
112
112
  }
@@ -130,7 +130,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
130
130
  TextEditorComponent,
131
131
  SpacingAroundDirective,
132
132
  CategoriesWithImageBackgroundColumnsComponent
133
- ], template: "<ng-container *ngIf=\"!isLoading\">\n <section class=\"container-fluid total-container p-0\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\"\n [attr.style]=\"customClass\">\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\" class=\"border-radius-unset\">\n <div [id]=\"data?.id\" #mainContainer [simpoAnimation]=\"styles?.animation\" [simpoBackground]=\"styles?.background\"\n [simpoCorner]=\"styles?.corners\" class=\"d-flex w-100\">\n <div class=\"d-flex flex-column w-100\" [simpoOverlay]=\"styles?.background\" [simpoCorner]=\"styles?.corners\"\n [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" [spacingHorizontal]=\"stylesLayout\"\n [simpoAnimation]=\"styles?.animation\">\n <div *ngFor=\"let item of content?.inputText\" class=\"text-container\">\n <!-- <div class = \"content-side\"[innerHTML]=\"item.value | sanitizeHtml\" [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\"> -->\n <ng-container *ngIf=\"edit || item.value\">\n <div class=\"pt-3 w-100\">\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\n </div>\n </ng-container>\n <!-- </div> -->\n </div>\n <ng-container *ngIf=\"styles?.componentStyle === 'Style1';else categoryStyle2\">\n <div class=\"category-parent\" [ngClass]=\"{'flex-wrap': getDirection == 'COLUMN'}\"\n [simpoContainerAlignment]=\"styles?.layout\" [id]=\"data?.id\"\n [style.justifyContent]=\"!isMobile ? getJustifyContent() : ''\" #categoryParent1>\n <div\n *ngFor=\"let data of responseData | slice:getSliceParameters()[0]:getSliceParameters()[1]; let idx = index\"\n (click)=\"redirectToListPage(data.categoryName)\" class=\"d-flex flex-column align-items-center w-fit-content\"\n [ngClass]=\"{ 'w-48 d-flex flex-column align-items-center' : isMobile}\">\n <img [simpoCorner]=\"styles?.corners\"\n [style.height.px]=\"(styles?.containerHeight ?? 1) / (isMobile ? 2 : 1)\"\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\" loading=\"lazy\"\n onerror=\"this.src='https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\"\n [src]=\"data.imgUrl?.[0] ?? 'https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\" alt=\"\"\n class=\"category-image\" [ngClass]=\"{'category-new-image' : isMobile && getDirection == 'COLUMN'}\">\n <div *ngIf=\"content?.display?.showHeading\"\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\">{{data.categoryName}}</div>\n <!-- class=\"category-name body-large\" -->\n </div>\n </div>\n </ng-container>\n <ng-template #categoryStyle2>\n <div class=\"w-100\">\n <simpo-categories-with-image-background-columns [responseData]=\"responseData\" [styles]=\"styles\"\n [content]=\"content\"></simpo-categories-with-image-background-columns>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"styles?.devider?.display\">\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\n </ng-container>\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\n </div>\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\n </div>\n\n </section>\n</ng-container>\n\n<ngx-skeleton-loader *ngIf=\"isLoading\" count=\"1\" appearance=\"circle\" [theme]=\"{\n width: '100%',\n height: '40vh',\n 'border-radius': '10px',\n 'position': 'relative',\n 'right': '5px'\n}\">\n</ngx-skeleton-loader>", styles: [".mt-15{margin-top:15px}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.text-container{min-width:100px}.w-fit-content{width:fit-content!important}.total-container{height:fit-content!important;position:relative;display:block!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.category-parent{padding:25px 0% 2%;display:flex;width:100%;max-width:100%;gap:25px;overflow-x:scroll;font-size:16px!important;cursor:pointer}.hovering-effect:hover{font-size:22px!important;transition:.3s ease-in-out}.category-image{display:flex;flex-wrap:wrap;margin-bottom:15px;transition-duration:.3s;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out}.category-image:hover{-webkit-transform:scale(1.1);transform:scale(1.1)}.category-parent::-webkit-scrollbar{display:none}.span{width:141px;height:15px}.category-name{color:#222;font-size:16px;line-height:normal;font-weight:600}.border-radius-unset{border-radius:unset!important}@media screen and (max-width : 475px){.main-container{padding-left:10px;padding-right:10px}.total-container{height:fit-content!important}.w-48{width:48%!important}.category-new-image{height:150px!important;width:100%!important}.header{gap:7px}.category-parent{gap:8px;margin-top:15px;padding-left:0!important;padding-right:0!important;padding-top:0!important}.category-parent::-webkit-scrollbar{display:flex!important;height:3px}.span{width:70.5px;height:7.5px}.category-name{font-size:12px}}\n"] }]
133
+ ], template: "<ng-container *ngIf=\"!isLoading\">\r\n <section class=\"container-fluid total-container p-0\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\"\r\n [attr.style]=\"customClass\">\r\n <div [spacingAround]=\"stylesLayout\" [id]=\"data?.id\" [simpoBorder]=\"styles?.border\" class=\"border-radius-unset\">\r\n <div [id]=\"data?.id\" #mainContainer [simpoAnimation]=\"styles?.animation\" [simpoBackground]=\"styles?.background\"\r\n [simpoCorner]=\"styles?.corners\" class=\"d-flex w-100\">\r\n <div class=\"d-flex flex-column w-100\" [simpoOverlay]=\"styles?.background\" [simpoCorner]=\"styles?.corners\"\r\n [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" [spacingHorizontal]=\"stylesLayout\"\r\n [simpoAnimation]=\"styles?.animation\">\r\n <div *ngFor=\"let item of content?.inputText\" class=\"text-container\">\r\n <!-- <div class = \"content-side\"[innerHTML]=\"item.value | sanitizeHtml\" [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\"> -->\r\n <ng-container *ngIf=\"edit || item.value\">\r\n <div class=\"pt-3 w-100\">\r\n <simpo-text-editor [(value)]=\"item.value\" [editable]=\"edit || false\" [isRTE]=\"item.isRTE\"></simpo-text-editor>\r\n </div>\r\n </ng-container>\r\n <!-- </div> -->\r\n </div>\r\n <ng-container *ngIf=\"styles?.componentStyle === 'Style1';else categoryStyle2\">\r\n <div class=\"category-parent\" [ngClass]=\"{'flex-wrap': getDirection == 'COLUMN'}\"\r\n [simpoContainerAlignment]=\"styles?.layout\" [id]=\"data?.id\"\r\n [style.justifyContent]=\"!isMobile ? getJustifyContent() : ''\" #categoryParent1>\r\n <div\r\n *ngFor=\"let data of responseData | slice:getSliceParameters()[0]:getSliceParameters()[1]; let idx = index\"\r\n (click)=\"redirectToListPage(data)\" class=\"d-flex flex-column align-items-center w-fit-content\"\r\n [ngClass]=\"{ 'w-48 d-flex flex-column align-items-center' : isMobile}\">\r\n <img [simpoCorner]=\"styles?.corners\"\r\n [style.height.px]=\"(styles?.containerHeight ?? 1) / (isMobile ? 2 : 1)\"\r\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\" loading=\"lazy\"\r\n onerror=\"this.src='https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\"\r\n [src]=\"data.imgUrl?.[0] ?? 'https://i.postimg.cc/hPS2JpV0/no-image-available.jpg'\" alt=\"\"\r\n class=\"category-image\" [ngClass]=\"{'category-new-image' : isMobile && getDirection == 'COLUMN'}\">\r\n <div *ngIf=\"content?.display?.showHeading\"\r\n [style.width.px]=\"(styles?.containerWidth ?? 1) / (isMobile ? 2 : 1)\">{{data.categoryName}}</div>\r\n <!-- class=\"category-name body-large\" -->\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-template #categoryStyle2>\r\n <div class=\"w-100\">\r\n <simpo-categories-with-image-background-columns [responseData]=\"responseData\" [styles]=\"styles\"\r\n [content]=\"content\"></simpo-categories-with-image-background-columns>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"styles?.devider?.display\">\r\n <simpo-svg-divider [dividerType]=\"styles?.devider?.deviderType\"\r\n [color]=\"nextComponentColor?.color\"></simpo-svg-divider>\r\n </ng-container>\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n\r\n </section>\r\n</ng-container>\r\n\r\n<ngx-skeleton-loader *ngIf=\"isLoading\" count=\"1\" appearance=\"circle\" [theme]=\"{\r\n width: '100%',\r\n height: '40vh',\r\n 'border-radius': '10px',\r\n 'position': 'relative',\r\n 'right': '5px'\r\n}\">\r\n</ngx-skeleton-loader>", styles: [".mt-15{margin-top:15px}*{font-family:var(--website-font-family)}mat-icon{font-family:Material Icons!important}.text-container{min-width:100px}.w-fit-content{width:fit-content!important}.total-container{height:fit-content!important;position:relative;display:block!important}.hover_effect{position:unset;width:100%;top:0;left:0;height:100%}.category-parent{padding:25px 0% 2%;display:flex;width:100%;max-width:100%;gap:25px;overflow-x:scroll;font-size:16px!important;cursor:pointer}.hovering-effect:hover{font-size:22px!important;transition:.3s ease-in-out}.category-image{display:flex;flex-wrap:wrap;margin-bottom:15px;transition-duration:.3s;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out}.category-image:hover{-webkit-transform:scale(1.1);transform:scale(1.1)}.category-parent::-webkit-scrollbar{display:none}.span{width:141px;height:15px}.category-name{color:#222;font-size:16px;line-height:normal;font-weight:600}.border-radius-unset{border-radius:unset!important}@media screen and (max-width : 475px){.main-container{padding-left:10px;padding-right:10px}.total-container{height:fit-content!important}.w-48{width:48%!important}.category-new-image{height:150px!important;width:100%!important}.header{gap:7px}.category-parent{gap:8px;margin-top:15px;padding-left:0!important;padding-right:0!important;padding-top:0!important}.category-parent::-webkit-scrollbar{display:flex!important;height:3px}.span{width:70.5px;height:7.5px}.category-name{font-size:12px}}\n"] }]
134
134
  }], ctorParameters: () => [{ type: i1.Router }, { type: i2.RestService }, { type: i3.EventsService }], propDecorators: { categoryParent: [{
135
135
  type: ViewChild,
136
136
  args: ['categoryParent1', { static: false }]
@@ -149,4 +149,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
149
149
  }], nextComponentColor: [{
150
150
  type: Input
151
151
  }] } });
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZWQtY29sbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2Vjb21tZXJjZS9zZWN0aW9ucy9mZWF0dXJlZC1jYXRlZ29yeS9mZWF0dXJlZC1jb2xsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZWNvbW1lcmNlL3NlY3Rpb25zL2ZlYXR1cmVkLWNhdGVnb3J5L2ZlYXR1cmVkLWNhdGVnb3J5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQW9DLEtBQUssRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxXQUFXLE1BQU0sK0JBQStCLENBQUM7QUFNeEQsT0FBTyxFQUFFLDBCQUEw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Q0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLGtCQUFrQjtzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBQTEFURk9STV9JRCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQW5pbWF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBPdmVybGF5RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL292ZXJsYXktZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvY29udGVudC1maXQtZGlyZWN0aXZlJztcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLy4uLy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IFNpbXBvQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9pbmRleCc7XG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vLi4vLi4vc2VjdGlvbnMvQmFzZVNlY3Rpb24nO1xuaW1wb3J0IHsgRmVhdHVyZWRDYXRlZ29yeUNvbnRlbnRNb2RhbCwgRmVhdHVyZWRDYXRlZ29yeU1vZGFsLCBGZWF0dXJlZENhdGVnb3J5U3R5bGVzTW9kZWwgfSBmcm9tICcuL2ZlYXR1cmVkLWNhdGVnb3J5Lm1vZGFsJztcbmltcG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnLi4vLi4vc3R5bGVzL2NhdGVnb3J5Lm1vZGFsJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcmVzdC5zZXJ2aWNlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vc3R5bGVzL0NvbGxlY3Rpb24ubW9kYWwnO1xuaW1wb3J0IHsgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1ob3Jpem9udGFsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTaW1wb0NvbnRhaW5lckFsaWdtZW50IH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL2NvbnRhaW5lci1hbGlnbm1lbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJhY2tncm91bmRNb2RlbCwgTGF5T3V0TW9kZWwgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xuaW1wb3J0IHsgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBTdmdEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZWxlbWVudHMvc3ZnLWRpdmlkZXIvc3ZnLWRpdmlkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9lbGVtZW50cy90ZXh0LWVkaXRvci90ZXh0LWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3BhY2luZ0Fyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9zcGFjaW5nLWFyb3VuZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ2F0ZWdvcmllc1dpdGhJbWFnZUJhY2tncm91bmRDb2x1bW5zQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NhdGVnb3JpZXMtd2l0aC1pbWFnZS1iYWNrZ3JvdW5kLWNvbHVtbnMvY2F0ZWdvcmllcy13aXRoLWltYWdlLWJhY2tncm91bmQtY29sdW1ucy5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2ltcG8tZmVhdHVyZWQtY29sbGVjdGlvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgU2ltcG9Db21wb25lbnRNb2R1bGUsXG5cbiAgICAvL2RpcmVjdGl2ZVxuICAgIEFuaW1hdGlvbkRpcmVjdGl2ZSxcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXG4gICAgQm9yZGVyRGlyZWN0aXZlLFxuICAgIFNpbXBvQ29udGFpbmVyQWxpZ21lbnQsXG4gICAgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUsXG4gICAgQ29ybmVyRGlyZWN0aXZlLFxuICAgIEhvdmVyRGlyZWN0aXZlLFxuICAgIE92ZXJsYXlEaXJlY3RpdmUsXG4gICAgU3ZnRGl2aWRlckNvbXBvbmVudCxcbiAgICBUZXh0RWRpdG9yQ29tcG9uZW50LFxuICAgIFNwYWNpbmdBcm91bmREaXJlY3RpdmUsXG4gICAgQ2F0ZWdvcmllc1dpdGhJbWFnZUJhY2tncm91bmRDb2x1bW5zQ29tcG9uZW50XG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9mZWF0dXJlZC1jYXRlZ29yeS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9mZWF0dXJlZC1jYXRlZ29yeS5jb21wb25lbnQuY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBGZWF0dXJlZENvbGxlY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlU2VjdGlvbiB7XG4gIEBWaWV3Q2hpbGQoJ2NhdGVnb3J5UGFyZW50MScsIHsgc3RhdGljOiBmYWxzZSB9KSBjYXRlZ29yeVBhcmVudCE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuICBASW5wdXQoKSBkYXRhPzogRmVhdHVyZWRDYXRlZ29yeU1vZGFsO1xuICBASW5wdXQoKSByZXNwb25zZURhdGE/OiBDYXRlZ29yeVtdO1xuICBASW5wdXQoKSBpbmRleD86IG51bWJlcjtcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGRlbGV0ZT86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIG5leHRDb21wb25lbnRDb2xvcj86IEJhY2tncm91bmRNb2RlbDtcbiAgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG4gIGNvbnRlbnQ/OiBGZWF0dXJlZENhdGVnb3J5Q29udGVudE1vZGFsO1xuICBzdHlsZXM/OiBGZWF0dXJlZENhdGVnb3J5U3R5bGVzTW9kZWw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3RTZXJ2aWNlOiBSZXN0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudFNlcnZpY2U6IEV2ZW50c1NlcnZpY2UsXG4gICkge1xuICAgIHN1cGVyKClcbiAgfVxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLmRhdGE/LmNvbnRlbnQ7XG4gICAgdGhpcy5zdHlsZXMgPSB0aGlzLmRhdGE/LnN0eWxlcztcbiAgICB0aGlzLmdldENvbGxlY3Rpb25zSWRzKCk7XG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnNob3dMb2FkaW5nU2NyZWVuLnN1YnNjcmliZSgocmVzcG9uc2UpID0+IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gcmVzcG9uc2U7XG4gICAgfSlcbiAgICAvLyB0aGlzLl9ldmVudFNlcnZpY2Uud3JhcERpcmVjdGlvbi5zdWJzY3JpYmUoKHJlc3BvbnNlKT0+IHtcbiAgICAvLyAgIGlmIChyZXNwb25zZSA9PT0gdGhpcy5kYXRhPy5pZCAmJiB0aGlzLnN0eWxlcylcbiAgICAvLyAgICAgdGhpcy5zdHlsZXMuZGlyZWN0aW9uID0gcmVzcG9uc2UgYXMgXCJST1dcIiB8IFwiQ09MVU1OXCI7XG4gICAgLy8gfSlcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuY29sbGVjdGlvbnNMaXN0RXZlbnQuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5nZXRDb2xsZWN0aW9uc0lkcygpO1xuICAgIH0pXG4gIH1cblxuICBnZXRTbGljZVBhcmFtZXRlcnMoKSB7XG4gICAgcmV0dXJuIFswLCAodGhpcy5zdHlsZXM/Lm1heGltdW1Qcm9kdWN0IHx8IDApXTtcbiAgfVxuICBnZXRDb2xsZWN0aW9uc0lkcygpIHtcbiAgICBpZiAoIXRoaXMuY29udGVudD8uY29sbGVjdGlvbklkcylcbiAgICAgIHJldHVybjtcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLmdldENvbGxlY3Rpb25CeUlkcyh0aGlzLmNvbnRlbnQ/LmNvbGxlY3Rpb25JZHMpLnN1YnNjcmliZSgocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgdGhpcy5yZXNwb25zZURhdGEgPSByZXNwb25zZS5maWx0ZXIoKGNhdGVnb3J5OiBhbnkpID0+IGNhdGVnb3J5LmZlYXR1cmVkQ29sbGVjdGlvbiB8fCB0cnVlKS5tYXAoKGNvbGxlY3Rpb246IENvbGxlY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5jb2xsZWN0aW9uLFxuICAgICAgICAgIGNhdGVnb3J5TmFtZTogY29sbGVjdGlvbi5jb2xsZWN0aW9uTmFtZSxcbiAgICAgICAgICBjYXRlZ29yeUlkOiBjb2xsZWN0aW9uLmNvbGxlY3Rpb25JZFxuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgdGhpcy5jb250ZW50Py5jb2xsZWN0aW9uSWRzPy5mb3JFYWNoKChpZDogc3RyaW5nLCBjb2xsZWN0aW9uSW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICBsZXQgaW5kZXggPSAtMTtcbiAgICAgICAgdGhpcy5yZXNwb25zZURhdGE/LmZvckVhY2goKGRhdGE6IGFueSwgaWR4KSA9PiB7XG4gICAgICAgICAgaWYgKGRhdGEuY29sbGVjdGlvbklkID09IGlkKVxuICAgICAgICAgICAgaW5kZXggPSBpZHg7XG4gICAgICAgIH0pXG4gICAgICAgIHRoaXMuZHJvcENvbGxlY3Rpb24oaW5kZXgsIGNvbGxlY3Rpb25JbmRleCk7XG4gICAgICB9KVxuICAgIH0pXG5cbiAgfVxuICBkcm9wQ29sbGVjdGlvbihzdGFydElkeDogbnVtYmVyLCBlbmRJZHg6IG51bWJlcikge1xuICAgIGlmICh0aGlzLnJlc3BvbnNlRGF0YSlcbiAgICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLnJlc3BvbnNlRGF0YSwgc3RhcnRJZHgsIGVuZElkeCk7XG4gIH1cbiAgcmVkaXJlY3RUb0xpc3RQYWdlKGNvbGxlY3Rpb246IGFueSkge1xuICAgIGNvbGxlY3Rpb24gPSBjb2xsZWN0aW9uLmNvbGxlY3Rpb25OYW1lO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xpc3QnXSwgeyBxdWVyeVBhcmFtczogeyBjb2xsZWN0aW9uczogY29sbGVjdGlvbiB9IH0pO1xuICB9XG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZXM/LmxheW91dCB9IGFzIExheU91dE1vZGVsO1xuICB9XG4gIGdldCBnZXREaXJlY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuc3R5bGVzPy5kaXJlY3Rpb247XG4gIH1cbiAgZ2V0IGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aCA8PSA0NzU7XG4gIH1cbiAgZWRpdFNlY3Rpb24oKSB7XG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmVkaXRTZWN0aW9uLmVtaXQoeyBkYXRhOiB0aGlzLmRhdGEgfSk7XG4gICAgfSwgMTAwKTtcbiAgfVxuICBnZXRKdXN0aWZ5Q29udGVudCgpIHtcbiAgICBjb25zdCBlbCA9IHRoaXMuY2F0ZWdvcnlQYXJlbnQ/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKCFlbCkgcmV0dXJuICcnO1xuICAgIGNvbnN0IGlzT3ZlcmZsb3dpbmcgPSBlbC5zY3JvbGxXaWR0aCA+IGVsLmNsaWVudFdpZHRoO1xuICAgIGlmIChpc092ZXJmbG93aW5nKSB7XG4gICAgICByZXR1cm4gJ2ZsZXgtc3RhcnQnO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zdHlsZXM/LmxheW91dD8uYWxpZ24gfHwgJyc7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMb2FkaW5nXCI+XG4gIDxzZWN0aW9uIGNsYXNzPVwiY29udGFpbmVyLWZsdWlkIHRvdGFsLWNvbnRhaW5lciBwLTBcIiBbaWRdPVwiZGF0YT8uaWRcIiBzaW1wb0hvdmVyIChob3ZlcmluZyk9XCJzaG93RWRpdFRhYnMoJGV2ZW50KVwiXG4gICAgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cbiAgICA8ZGl2IFtzcGFjaW5nQXJvdW5kXT1cInN0eWxlc0xheW91dFwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0JvcmRlcl09XCJzdHlsZXM/LmJvcmRlclwiIGNsYXNzPVwiYm9yZGVyLXJhZGl1cy11bnNldFwiPlxuICAgICAgPGRpdiBbaWRdPVwiZGF0YT8uaWRcIiAjbWFpbkNvbnRhaW5lciBbc2ltcG9BbmltYXRpb25dPVwic3R5bGVzPy5hbmltYXRpb25cIiBbc2ltcG9CYWNrZ3JvdW5kXT1cInN0eWxlcz8uYmFja2dyb3VuZFwiXG4gICAgICAgIFtzaW1wb0Nvcm5lcl09XCJzdHlsZXM/LmNvcm5lcnNcIiBjbGFzcz1cImQtZmxleCB3LTEwMFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIHctMTAwXCIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCJcbiAgICAgICAgICBbaWRdPVwiZGF0YT8uaWRcIiBbc2ltcG9MYXlvdXRdPVwic3R5bGVzPy5sYXlvdXRcIiBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCJcbiAgICAgICAgICBbc2ltcG9BbmltYXRpb25dPVwic3R5bGVzPy5hbmltYXRpb25cIj5cbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/LmlucHV0VGV4dFwiIGNsYXNzPVwidGV4dC1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDwhLS0gPGRpdiAgY2xhc3MgPSBcImNvbnRlbnQtc2lkZVwiW2lubmVySFRNTF09XCJpdGVtLnZhbHVlIHwgc2FuaXRpemVIdG1sXCIgW25nQ2xhc3NdPVwiaXRlbS5sYWJlbCA9PT0gJ0hlYWRpbmcnID8gJ2hlYWRpbmctbGFyZ2UgbGgtMiBtYi0zJyA6ICdib2R5LWxhcmdlJ1wiPiAtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlZGl0IHx8IGl0ZW0udmFsdWVcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB0LTMgdy0xMDBcIj5cbiAgICAgICAgICAgICAgICA8c2ltcG8tdGV4dC1lZGl0b3IgWyh2YWx1ZSldPVwiaXRlbS52YWx1ZVwiIFtlZGl0YWJsZV09XCJlZGl0IHx8IGZhbHNlXCIgW2lzUlRFXT1cIml0ZW0uaXNSVEVcIj48L3NpbXBvLXRleHQtZWRpdG9yPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPCEtLSA8L2Rpdj4gLS0+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlcz8uY29tcG9uZW50U3R5bGUgPT09ICdTdHlsZTEnO2Vsc2UgY2F0ZWdvcnlTdHlsZTJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXRlZ29yeS1wYXJlbnRcIiBbbmdDbGFzc109XCJ7J2ZsZXgtd3JhcCc6IGdldERpcmVjdGlvbiA9PSAnQ09MVU1OJ31cIlxuICAgICAgICAgICAgICBbc2ltcG9Db250YWluZXJBbGlnbm1lbnRdPVwic3R5bGVzPy5sYXlvdXRcIiBbaWRdPVwiZGF0YT8uaWRcIlxuICAgICAgICAgICAgICBbc3R5bGUuanVzdGlmeUNvbnRlbnRdPVwiIWlzTW9iaWxlID8gZ2V0SnVzdGlmeUNvbnRlbnQoKSA6ICcnXCIgI2NhdGVnb3J5UGFyZW50MT5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBkYXRhIG9mIHJlc3BvbnNlRGF0YSB8IHNsaWNlOmdldFNsaWNlUGFyYW1ldGVycygpWzBdOmdldFNsaWNlUGFyYW1ldGVycygpWzFdOyBsZXQgaWR4ID0gaW5kZXhcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJyZWRpcmVjdFRvTGlzdFBhZ2UoZGF0YS5jYXRlZ29yeU5hbWUpXCIgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIHctZml0LWNvbnRlbnRcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ3ctNDggZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlcicgOiBpc01vYmlsZX1cIj5cbiAgICAgICAgICAgICAgICA8aW1nICBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiKHN0eWxlcz8uY29udGFpbmVySGVpZ2h0ID8/IDEpIC8gKGlzTW9iaWxlID8gMiA6IDEpXCJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS53aWR0aC5weF09XCIoc3R5bGVzPy5jb250YWluZXJXaWR0aCA/PyAxKSAvIChpc01vYmlsZSA/IDIgOiAxKVwiIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgIG9uZXJyb3I9XCJ0aGlzLnNyYz0naHR0cHM6Ly9pLnBvc3RpbWcuY2MvaFBTMkpwVjAvbm8taW1hZ2UtYXZhaWxhYmxlLmpwZydcIlxuICAgICAgICAgICAgICAgICAgW3NyY109XCJkYXRhLmltZ1VybD8uWzBdID8/ICdodHRwczovL2kucG9zdGltZy5jYy9oUFMySnBWMC9uby1pbWFnZS1hdmFpbGFibGUuanBnJ1wiIGFsdD1cIlwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImNhdGVnb3J5LWltYWdlXCIgW25nQ2xhc3NdPVwieydjYXRlZ29yeS1uZXctaW1hZ2UnIDogaXNNb2JpbGUgJiYgZ2V0RGlyZWN0aW9uID09ICdDT0xVTU4nfVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb250ZW50Py5kaXNwbGF5Py5zaG93SGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwiKHN0eWxlcz8uY29udGFpbmVyV2lkdGggPz8gMSkgLyAoaXNNb2JpbGUgPyAyIDogMSlcIj57e2RhdGEuY2F0ZWdvcnlOYW1lfX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8IS0tIGNsYXNzPVwiY2F0ZWdvcnktbmFtZSBib2R5LWxhcmdlXCIgIC0tPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2F0ZWdvcnlTdHlsZTI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0xMDBcIj5cbiAgICAgICAgICAgICAgPHNpbXBvLWNhdGVnb3JpZXMtd2l0aC1pbWFnZS1iYWNrZ3JvdW5kLWNvbHVtbnMgW3Jlc3BvbnNlRGF0YV09XCJyZXNwb25zZURhdGFcIiBbc3R5bGVzXT1cInN0eWxlc1wiXG4gICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwiY29udGVudFwiPjwvc2ltcG8tY2F0ZWdvcmllcy13aXRoLWltYWdlLWJhY2tncm91bmQtY29sdW1ucz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGVzPy5kZXZpZGVyPy5kaXNwbGF5XCI+XG4gICAgICA8c2ltcG8tc3ZnLWRpdmlkZXIgW2RpdmlkZXJUeXBlXT1cInN0eWxlcz8uZGV2aWRlcj8uZGV2aWRlclR5cGVcIlxuICAgICAgICBbY29sb3JdPVwibmV4dENvbXBvbmVudENvbG9yPy5jb2xvclwiPjwvc2ltcG8tc3ZnLWRpdmlkZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxuICAgICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cInNob3dEZWxldGVcIiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGRlbGV0ZX1cIj5cbiAgICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cbiAgICA8L2Rpdj5cblxuICA8L3NlY3Rpb24+XG48L25nLWNvbnRhaW5lcj5cblxuPG5neC1za2VsZXRvbi1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIiBjb3VudD1cIjFcIiBhcHBlYXJhbmNlPVwiY2lyY2xlXCIgW3RoZW1lXT1cIntcbiAgd2lkdGg6ICcxMDAlJyxcbiAgaGVpZ2h0OiAnNDB2aCcsXG4gICdib3JkZXItcmFkaXVzJzogJzEwcHgnLFxuICAncG9zaXRpb24nOiAncmVsYXRpdmUnLFxuICAncmlnaHQnOiAnNXB4J1xufVwiPlxuPC9uZ3gtc2tlbGV0b24tbG9hZGVyPiJdfQ==
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZWQtY29sbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2Vjb21tZXJjZS9zZWN0aW9ucy9mZWF0dXJlZC1jYXRlZ29yeS9mZWF0dXJlZC1jb2xsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZWNvbW1lcmNlL3NlY3Rpb25zL2ZlYXR1cmVkLWNhdGVnb3J5L2ZlYXR1cmVkLWNhdGVnb3J5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQW9DLEtBQUssRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxXQUFXLE1BQU0sK0JBQStCLENBQUM7QUFLeEQsT0FBTyxFQUFFLFFBQVEs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TTtzQkFBZCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgSW5wdXQsIFBMQVRGT1JNX0lELCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBBbmltYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvYW5pbWF0aW9uLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJhY2tncm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvYmFja2dyb3VuZC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvcm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9jb3JuZXItZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBPdmVybGF5RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL292ZXJsYXktZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi8uLi8uLi9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IFNpbXBvQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9pbmRleCc7XHJcbmltcG9ydCBCYXNlU2VjdGlvbiBmcm9tICcuLi8uLi8uLi9zZWN0aW9ucy9CYXNlU2VjdGlvbic7XHJcbmltcG9ydCB7IEZlYXR1cmVkQ2F0ZWdvcnlDb250ZW50TW9kYWwsIEZlYXR1cmVkQ2F0ZWdvcnlNb2RhbCwgRmVhdHVyZWRDYXRlZ29yeVN0eWxlc01vZGVsIH0gZnJvbSAnLi9mZWF0dXJlZC1jYXRlZ29yeS5tb2RhbCc7XHJcbmltcG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnLi4vLi4vc3R5bGVzL2NhdGVnb3J5Lm1vZGFsJztcclxuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBsaXN0UGF0aCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2xpc3Qtcm91dGUudXRpbCc7XHJcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9zdHlsZXMvQ29sbGVjdGlvbi5tb2RhbCc7XHJcbmltcG9ydCB7IFNwYWNpbmdIb3Jpem9udGFsRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmctaG9yaXpvbnRhbC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTaW1wb0NvbnRhaW5lckFsaWdtZW50IH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL2NvbnRhaW5lci1hbGlnbm1lbnQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XHJcbmltcG9ydCB7IG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBTdmdEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZWxlbWVudHMvc3ZnLWRpdmlkZXIvc3ZnLWRpdmlkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2VsZW1lbnRzL3RleHQtZWRpdG9yL3RleHQtZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNwYWNpbmdBcm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1hcm91bmQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ2F0ZWdvcmllc1dpdGhJbWFnZUJhY2tncm91bmRDb2x1bW5zQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NhdGVnb3JpZXMtd2l0aC1pbWFnZS1iYWNrZ3JvdW5kLWNvbHVtbnMvY2F0ZWdvcmllcy13aXRoLWltYWdlLWJhY2tncm91bmQtY29sdW1ucy5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8tZmVhdHVyZWQtY29sbGVjdGlvbicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFNpbXBvQ29tcG9uZW50TW9kdWxlLFxyXG5cclxuICAgIC8vZGlyZWN0aXZlXHJcbiAgICBBbmltYXRpb25EaXJlY3RpdmUsXHJcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxyXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcclxuICAgIEJvcmRlckRpcmVjdGl2ZSxcclxuICAgIFNpbXBvQ29udGFpbmVyQWxpZ21lbnQsXHJcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSxcclxuICAgIENvcm5lckRpcmVjdGl2ZSxcclxuICAgIEhvdmVyRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFN2Z0RpdmlkZXJDb21wb25lbnQsXHJcbiAgICBUZXh0RWRpdG9yQ29tcG9uZW50LFxyXG4gICAgU3BhY2luZ0Fyb3VuZERpcmVjdGl2ZSxcclxuICAgIENhdGVnb3JpZXNXaXRoSW1hZ2VCYWNrZ3JvdW5kQ29sdW1uc0NvbXBvbmVudFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZlYXR1cmVkLWNhdGVnb3J5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vZmVhdHVyZWQtY2F0ZWdvcnkuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEZlYXR1cmVkQ29sbGVjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIHtcclxuICBAVmlld0NoaWxkKCdjYXRlZ29yeVBhcmVudDEnLCB7IHN0YXRpYzogZmFsc2UgfSkgY2F0ZWdvcnlQYXJlbnQhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcclxuICBASW5wdXQoKSBkYXRhPzogRmVhdHVyZWRDYXRlZ29yeU1vZGFsO1xyXG4gIEBJbnB1dCgpIHJlc3BvbnNlRGF0YT86IENhdGVnb3J5W107XHJcbiAgQElucHV0KCkgaW5kZXg/OiBudW1iZXI7XHJcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudENvbG9yPzogQmFja2dyb3VuZE1vZGVsO1xyXG4gIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNvbnRlbnQ/OiBGZWF0dXJlZENhdGVnb3J5Q29udGVudE1vZGFsO1xyXG4gIHN0eWxlcz86IEZlYXR1cmVkQ2F0ZWdvcnlTdHlsZXNNb2RlbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXN0U2VydmljZTogUmVzdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudFNlcnZpY2U6IEV2ZW50c1NlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpXHJcbiAgfVxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdHlsZXMgPSB0aGlzLmRhdGE/LnN0eWxlcztcclxuICAgIHRoaXMuZ2V0Q29sbGVjdGlvbnNJZHMoKTtcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS5zaG93TG9hZGluZ1NjcmVlbi5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gcmVzcG9uc2U7XHJcbiAgICB9KVxyXG4gICAgLy8gdGhpcy5fZXZlbnRTZXJ2aWNlLndyYXBEaXJlY3Rpb24uc3Vic2NyaWJlKChyZXNwb25zZSk9PiB7XHJcbiAgICAvLyAgIGlmIChyZXNwb25zZSA9PT0gdGhpcy5kYXRhPy5pZCAmJiB0aGlzLnN0eWxlcylcclxuICAgIC8vICAgICB0aGlzLnN0eWxlcy5kaXJlY3Rpb24gPSByZXNwb25zZSBhcyBcIlJPV1wiIHwgXCJDT0xVTU5cIjtcclxuICAgIC8vIH0pXHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuY29sbGVjdGlvbnNMaXN0RXZlbnQuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICB0aGlzLmdldENvbGxlY3Rpb25zSWRzKCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgZ2V0U2xpY2VQYXJhbWV0ZXJzKCkge1xyXG4gICAgcmV0dXJuIFswLCAodGhpcy5zdHlsZXM/Lm1heGltdW1Qcm9kdWN0IHx8IDApXTtcclxuICB9XHJcbiAgZ2V0Q29sbGVjdGlvbnNJZHMoKSB7XHJcbiAgICBpZiAoIXRoaXMuY29udGVudD8uY29sbGVjdGlvbklkcylcclxuICAgICAgcmV0dXJuO1xyXG4gICAgdGhpcy5yZXN0U2VydmljZS5nZXRDb2xsZWN0aW9uQnlJZHModGhpcy5jb250ZW50Py5jb2xsZWN0aW9uSWRzKS5zdWJzY3JpYmUoKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5yZXNwb25zZURhdGEgPSByZXNwb25zZS5maWx0ZXIoKGNhdGVnb3J5OiBhbnkpID0+IGNhdGVnb3J5LmZlYXR1cmVkQ29sbGVjdGlvbiB8fCB0cnVlKS5tYXAoKGNvbGxlY3Rpb246IENvbGxlY3Rpb24pID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgLi4uY29sbGVjdGlvbixcclxuICAgICAgICAgIGNhdGVnb3J5TmFtZTogY29sbGVjdGlvbi5jb2xsZWN0aW9uTmFtZSxcclxuICAgICAgICAgIGNhdGVnb3J5SWQ6IGNvbGxlY3Rpb24uY29sbGVjdGlvbklkXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgICB0aGlzLmNvbnRlbnQ/LmNvbGxlY3Rpb25JZHM/LmZvckVhY2goKGlkOiBzdHJpbmcsIGNvbGxlY3Rpb25JbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgbGV0IGluZGV4ID0gLTE7XHJcbiAgICAgICAgdGhpcy5yZXNwb25zZURhdGE/LmZvckVhY2goKGRhdGE6IGFueSwgaWR4KSA9PiB7XHJcbiAgICAgICAgICBpZiAoZGF0YS5jb2xsZWN0aW9uSWQgPT0gaWQpXHJcbiAgICAgICAgICAgIGluZGV4ID0gaWR4O1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5kcm9wQ29sbGVjdGlvbihpbmRleCwgY29sbGVjdGlvbkluZGV4KTtcclxuICAgICAgfSlcclxuICAgIH0pXHJcblxyXG4gIH1cclxuICBkcm9wQ29sbGVjdGlvbihzdGFydElkeDogbnVtYmVyLCBlbmRJZHg6IG51bWJlcikge1xyXG4gICAgaWYgKHRoaXMucmVzcG9uc2VEYXRhKVxyXG4gICAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5yZXNwb25zZURhdGEsIHN0YXJ0SWR4LCBlbmRJZHgpO1xyXG4gIH1cclxuICByZWRpcmVjdFRvTGlzdFBhZ2UoY29sbGVjdGlvbjogYW55KSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShsaXN0UGF0aCh7IGNvbGxlY3Rpb24gfSkpO1xyXG4gIH1cclxuICBnZXQgc3R5bGVzTGF5b3V0KCkge1xyXG4gICAgcmV0dXJuIHsgLi4udGhpcy5zdHlsZXM/LmxheW91dCB9IGFzIExheU91dE1vZGVsO1xyXG4gIH1cclxuICBnZXQgZ2V0RGlyZWN0aW9uKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3R5bGVzPy5kaXJlY3Rpb247XHJcbiAgfVxyXG4gIGdldCBpc01vYmlsZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aCA8PSA0NzU7XHJcbiAgfVxyXG4gIGVkaXRTZWN0aW9uKCkge1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcbiAgZ2V0SnVzdGlmeUNvbnRlbnQoKSB7XHJcbiAgICBjb25zdCBlbCA9IHRoaXMuY2F0ZWdvcnlQYXJlbnQ/Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBpZiAoIWVsKSByZXR1cm4gJyc7XHJcbiAgICBjb25zdCBpc092ZXJmbG93aW5nID0gZWwuc2Nyb2xsV2lkdGggPiBlbC5jbGllbnRXaWR0aDtcclxuICAgIGlmIChpc092ZXJmbG93aW5nKSB7XHJcbiAgICAgIHJldHVybiAnZmxleC1zdGFydCc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5zdHlsZXM/LmxheW91dD8uYWxpZ24gfHwgJyc7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMb2FkaW5nXCI+XHJcbiAgPHNlY3Rpb24gY2xhc3M9XCJjb250YWluZXItZmx1aWQgdG90YWwtY29udGFpbmVyIHAtMFwiIFtpZF09XCJkYXRhPy5pZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCJcclxuICAgIFthdHRyLnN0eWxlXT1cImN1c3RvbUNsYXNzXCI+XHJcbiAgICA8ZGl2IFtzcGFjaW5nQXJvdW5kXT1cInN0eWxlc0xheW91dFwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0JvcmRlcl09XCJzdHlsZXM/LmJvcmRlclwiIGNsYXNzPVwiYm9yZGVyLXJhZGl1cy11bnNldFwiPlxyXG4gICAgICA8ZGl2IFtpZF09XCJkYXRhPy5pZFwiICNtYWluQ29udGFpbmVyIFtzaW1wb0FuaW1hdGlvbl09XCJzdHlsZXM/LmFuaW1hdGlvblwiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGVzPy5iYWNrZ3JvdW5kXCJcclxuICAgICAgICBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCIgY2xhc3M9XCJkLWZsZXggdy0xMDBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIHctMTAwXCIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZXM/LmJhY2tncm91bmRcIiBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCJcclxuICAgICAgICAgIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb0xheW91dF09XCJzdHlsZXM/LmxheW91dFwiIFtzcGFjaW5nSG9yaXpvbnRhbF09XCJzdHlsZXNMYXlvdXRcIlxyXG4gICAgICAgICAgW3NpbXBvQW5pbWF0aW9uXT1cInN0eWxlcz8uYW5pbWF0aW9uXCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/LmlucHV0VGV4dFwiIGNsYXNzPVwidGV4dC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgPCEtLSA8ZGl2ICBjbGFzcyA9IFwiY29udGVudC1zaWRlXCJbaW5uZXJIVE1MXT1cIml0ZW0udmFsdWUgfCBzYW5pdGl6ZUh0bWxcIiBbbmdDbGFzc109XCJpdGVtLmxhYmVsID09PSAnSGVhZGluZycgPyAnaGVhZGluZy1sYXJnZSBsaC0yIG1iLTMnIDogJ2JvZHktbGFyZ2UnXCI+IC0tPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWRpdCB8fCBpdGVtLnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB0LTMgdy0xMDBcIj5cclxuICAgICAgICAgICAgICAgIDxzaW1wby10ZXh0LWVkaXRvciBbKHZhbHVlKV09XCJpdGVtLnZhbHVlXCIgW2VkaXRhYmxlXT1cImVkaXQgfHwgZmFsc2VcIiBbaXNSVEVdPVwiaXRlbS5pc1JURVwiPjwvc2ltcG8tdGV4dC1lZGl0b3I+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8IS0tIDwvZGl2PiAtLT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0eWxlcz8uY29tcG9uZW50U3R5bGUgPT09ICdTdHlsZTEnO2Vsc2UgY2F0ZWdvcnlTdHlsZTJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhdGVnb3J5LXBhcmVudFwiIFtuZ0NsYXNzXT1cInsnZmxleC13cmFwJzogZ2V0RGlyZWN0aW9uID09ICdDT0xVTU4nfVwiXHJcbiAgICAgICAgICAgICAgW3NpbXBvQ29udGFpbmVyQWxpZ25tZW50XT1cInN0eWxlcz8ubGF5b3V0XCIgW2lkXT1cImRhdGE/LmlkXCJcclxuICAgICAgICAgICAgICBbc3R5bGUuanVzdGlmeUNvbnRlbnRdPVwiIWlzTW9iaWxlID8gZ2V0SnVzdGlmeUNvbnRlbnQoKSA6ICcnXCIgI2NhdGVnb3J5UGFyZW50MT5cclxuICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZGF0YSBvZiByZXNwb25zZURhdGEgfCBzbGljZTpnZXRTbGljZVBhcmFtZXRlcnMoKVswXTpnZXRTbGljZVBhcmFtZXRlcnMoKVsxXTsgbGV0IGlkeCA9IGluZGV4XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJyZWRpcmVjdFRvTGlzdFBhZ2UoZGF0YSlcIiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgdy1maXQtY29udGVudFwiXHJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICd3LTQ4IGQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXInIDogaXNNb2JpbGV9XCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nICBbc2ltcG9Db3JuZXJdPVwic3R5bGVzPy5jb3JuZXJzXCJcclxuICAgICAgICAgICAgICAgICAgW3N0eWxlLmhlaWdodC5weF09XCIoc3R5bGVzPy5jb250YWluZXJIZWlnaHQgPz8gMSkgLyAoaXNNb2JpbGUgPyAyIDogMSlcIlxyXG4gICAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwiKHN0eWxlcz8uY29udGFpbmVyV2lkdGggPz8gMSkgLyAoaXNNb2JpbGUgPyAyIDogMSlcIiBsb2FkaW5nPVwibGF6eVwiXHJcbiAgICAgICAgICAgICAgICAgIG9uZXJyb3I9XCJ0aGlzLnNyYz0naHR0cHM6Ly9pLnBvc3RpbWcuY2MvaFBTMkpwVjAvbm8taW1hZ2UtYXZhaWxhYmxlLmpwZydcIlxyXG4gICAgICAgICAgICAgICAgICBbc3JjXT1cImRhdGEuaW1nVXJsPy5bMF0gPz8gJ2h0dHBzOi8vaS5wb3N0aW1nLmNjL2hQUzJKcFYwL25vLWltYWdlLWF2YWlsYWJsZS5qcGcnXCIgYWx0PVwiXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXRlZ29yeS1pbWFnZVwiIFtuZ0NsYXNzXT1cInsnY2F0ZWdvcnktbmV3LWltYWdlJyA6IGlzTW9iaWxlICYmIGdldERpcmVjdGlvbiA9PSAnQ09MVU1OJ31cIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb250ZW50Py5kaXNwbGF5Py5zaG93SGVhZGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS53aWR0aC5weF09XCIoc3R5bGVzPy5jb250YWluZXJXaWR0aCA/PyAxKSAvIChpc01vYmlsZSA/IDIgOiAxKVwiPnt7ZGF0YS5jYXRlZ29yeU5hbWV9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPCEtLSBjbGFzcz1cImNhdGVnb3J5LW5hbWUgYm9keS1sYXJnZVwiICAtLT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY2F0ZWdvcnlTdHlsZTI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMFwiPlxyXG4gICAgICAgICAgICAgIDxzaW1wby1jYXRlZ29yaWVzLXdpdGgtaW1hZ2UtYmFja2dyb3VuZC1jb2x1bW5zIFtyZXNwb25zZURhdGFdPVwicmVzcG9uc2VEYXRhXCIgW3N0eWxlc109XCJzdHlsZXNcIlxyXG4gICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwiY29udGVudFwiPjwvc2ltcG8tY2F0ZWdvcmllcy13aXRoLWltYWdlLWJhY2tncm91bmQtY29sdW1ucz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZXM/LmRldmlkZXI/LmRpc3BsYXlcIj5cclxuICAgICAgPHNpbXBvLXN2Zy1kaXZpZGVyIFtkaXZpZGVyVHlwZV09XCJzdHlsZXM/LmRldmlkZXI/LmRldmlkZXJUeXBlXCJcclxuICAgICAgICBbY29sb3JdPVwibmV4dENvbXBvbmVudENvbG9yPy5jb2xvclwiPjwvc2ltcG8tc3ZnLWRpdmlkZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxkaXYgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBlZGl0fVwiICpuZ0lmPVwic2hvd0VkaXRvcnNcIj5cclxuICAgICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJzaG93RGVsZXRlXCIgW25nQ2xhc3NdPVwieydob3Zlcl9lZmZlY3QnOiBkZWxldGV9XCI+XHJcbiAgICAgIDxzaW1wby1kZWxldGUtaG92ZXItZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2luZGV4XT1cImluZGV4XCI+PC9zaW1wby1kZWxldGUtaG92ZXItZWxlbWVudD5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L3NlY3Rpb24+XHJcbjwvbmctY29udGFpbmVyPlxyXG5cclxuPG5neC1za2VsZXRvbi1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIiBjb3VudD1cIjFcIiBhcHBlYXJhbmNlPVwiY2lyY2xlXCIgW3RoZW1lXT1cIntcclxuICB3aWR0aDogJzEwMCUnLFxyXG4gIGhlaWdodDogJzQwdmgnLFxyXG4gICdib3JkZXItcmFkaXVzJzogJzEwcHgnLFxyXG4gICdwb3NpdGlvbic6ICdyZWxhdGl2ZScsXHJcbiAgJ3JpZ2h0JzogJzVweCdcclxufVwiPlxyXG48L25neC1za2VsZXRvbi1sb2FkZXI+Il19