@esolve/ng-esolve-connect 0.19.0 → 0.20.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (386) hide show
  1. package/esm2020/lib/cart/esolve-cart-item.model.mjs +3 -2
  2. package/esm2020/lib/cart/esolve-cart.service.mjs +2 -2
  3. package/esm2020/lib/locations/esolve-locations.service.mjs +10 -3
  4. package/esm2020/lib/ng-esolve-connect.module.mjs +3 -3
  5. package/esm2020/lib/stock/classes/esolve-stock-item-base.model.mjs +9 -1
  6. package/esm2020/lib/stock/interfaces/esolve-stock-base-record.interface.mjs +1 -1
  7. package/esm2020/media/classes/esolve-heading.model.mjs +7 -0
  8. package/esm2020/media/classes/esolve-media-article.model.mjs +54 -0
  9. package/esm2020/media/classes/esolve-media-group.model.mjs +15 -0
  10. package/esm2020/media/classes/esolve-media-layout-section.model.mjs +18 -0
  11. package/esm2020/media/classes/index.mjs +5 -0
  12. package/esm2020/media/components/index.mjs +3 -0
  13. package/esm2020/media/components/media-layout/esolve-media-layout.component.mjs +41 -0
  14. package/esm2020/media/components/media-section/esolve-media-section.component.mjs +46 -0
  15. package/esm2020/media/esolve-connect-media-config.token.mjs +3 -0
  16. package/esm2020/media/esolve-connect-media.config.mjs +2 -0
  17. package/esm2020/media/esolve-ng-esolve-connect-media.mjs +5 -0
  18. package/esm2020/media/esolve-section-data.token.mjs +3 -0
  19. package/esm2020/media/interfaces/esolve-heading-record.interface.mjs +2 -0
  20. package/esm2020/media/interfaces/esolve-layout-config.interface.mjs +2 -0
  21. package/esm2020/media/interfaces/esolve-layout-section-config.interface.mjs +2 -0
  22. package/esm2020/media/interfaces/esolve-media-group-record.interface.mjs +2 -0
  23. package/esm2020/media/interfaces/esolve-media-layout-section-record.interface.mjs +2 -0
  24. package/esm2020/media/interfaces/esolve-media-record.interface.mjs +2 -0
  25. package/esm2020/media/interfaces/index.mjs +7 -0
  26. package/esm2020/media/ng-esolve-connect-media.module.mjs +54 -0
  27. package/esm2020/media/public_api.mjs +10 -0
  28. package/esm2020/media/services/esolve-media-layout.service.mjs +145 -0
  29. package/esm2020/media/services/esolve-media.service.mjs +114 -0
  30. package/esm2020/media/services/index.mjs +3 -0
  31. package/esm2020/media/types/esolve-media-layout-section-type.type.mjs +2 -0
  32. package/esm2020/media/types/index.mjs +2 -0
  33. package/esm2020/public-api.mjs +3 -3
  34. package/esolve-ng-esolve-connect.d.ts.map +1 -0
  35. package/fesm2015/esolve-ng-esolve-connect-media.mjs +487 -0
  36. package/fesm2015/esolve-ng-esolve-connect-media.mjs.map +1 -0
  37. package/fesm2015/esolve-ng-esolve-connect.mjs +23 -150
  38. package/fesm2015/esolve-ng-esolve-connect.mjs.map +1 -1
  39. package/fesm2020/esolve-ng-esolve-connect-media.mjs +480 -0
  40. package/fesm2020/esolve-ng-esolve-connect-media.mjs.map +1 -0
  41. package/fesm2020/esolve-ng-esolve-connect.mjs +23 -148
  42. package/fesm2020/esolve-ng-esolve-connect.mjs.map +1 -1
  43. package/lib/account/address/esolve-address-record.interface.d.ts.map +1 -0
  44. package/lib/account/address/esolve-address-response.interface.d.ts.map +1 -0
  45. package/lib/account/address/esolve-address-result.model.d.ts.map +1 -0
  46. package/lib/account/address/esolve-address-set-data.interface.d.ts.map +1 -0
  47. package/lib/account/address/esolve-address-type.type.d.ts.map +1 -0
  48. package/lib/account/address/esolve-address.model.d.ts.map +1 -0
  49. package/lib/account/address/index.d.ts.map +1 -0
  50. package/lib/account/esolve-account.service.d.ts.map +1 -0
  51. package/lib/account/esolve-geocode-result.interface.d.ts.map +1 -0
  52. package/lib/account/esolve-location-update-result.model.d.ts.map +1 -0
  53. package/lib/account/index.d.ts.map +1 -0
  54. package/lib/account/password/esolve-change-password-result.model.d.ts.map +1 -0
  55. package/lib/account/password/esolve-forgot-password-get-result.interface.d.ts.map +1 -0
  56. package/lib/account/password/esolve-forgot-password-response.interface.d.ts.map +1 -0
  57. package/lib/account/password/esolve-reset-password-result.model.d.ts.map +1 -0
  58. package/lib/account/password/index.d.ts.map +1 -0
  59. package/lib/account/registration/esolve-registration-data.interface.d.ts.map +1 -0
  60. package/lib/account/registration/esolve-registration-post-response-item.interface.d.ts.map +1 -0
  61. package/lib/account/registration/esolve-registration-result.model.d.ts.map +1 -0
  62. package/lib/account/registration/index.d.ts.map +1 -0
  63. package/lib/account/transaction/esolve-transaction-address.model.d.ts.map +1 -0
  64. package/lib/account/transaction/esolve-transaction-client-record.interface.d.ts.map +1 -0
  65. package/lib/account/transaction/esolve-transaction-client.model.d.ts.map +1 -0
  66. package/lib/account/transaction/esolve-transaction-item-price.model.d.ts.map +1 -0
  67. package/lib/account/transaction/esolve-transaction-item-record.interface.d.ts.map +1 -0
  68. package/lib/account/transaction/esolve-transaction-item.model.d.ts.map +1 -0
  69. package/lib/account/transaction/esolve-transaction-list.model.d.ts.map +1 -0
  70. package/lib/account/transaction/esolve-transaction-location-record.interface.d.ts.map +1 -0
  71. package/lib/account/transaction/esolve-transaction-location.model.d.ts.map +1 -0
  72. package/lib/account/transaction/esolve-transaction-options.interface.d.ts.map +1 -0
  73. package/lib/account/transaction/esolve-transaction-payment-method-record.interface.d.ts.map +1 -0
  74. package/lib/account/transaction/esolve-transaction-payment-method.model.d.ts.map +1 -0
  75. package/lib/account/transaction/esolve-transaction-record.interface.d.ts.map +1 -0
  76. package/lib/account/transaction/esolve-transaction-shipping-method-record.interface.d.ts.map +1 -0
  77. package/lib/account/transaction/esolve-transaction-shipping-method.model.d.ts.map +1 -0
  78. package/lib/account/transaction/esolve-transaction-type.type.d.ts.map +1 -0
  79. package/lib/account/transaction/esolve-transaction-user-record.interface.d.ts.map +1 -0
  80. package/lib/account/transaction/esolve-transaction-user.model.d.ts.map +1 -0
  81. package/lib/account/transaction/esolve-transaction.model.d.ts.map +1 -0
  82. package/lib/account/transaction/index.d.ts.map +1 -0
  83. package/lib/account/user-account/esolve-user-account-business.model.d.ts.map +1 -0
  84. package/lib/account/user-account/esolve-user-account-contact.model.d.ts.map +1 -0
  85. package/lib/account/user-account/esolve-user-account-data.interface.d.ts.map +1 -0
  86. package/lib/account/user-account/esolve-user-account-record.interface.d.ts.map +1 -0
  87. package/lib/account/user-account/esolve-user-account-result.model.d.ts.map +1 -0
  88. package/lib/account/user-account/esolve-user-account.model.d.ts.map +1 -0
  89. package/lib/account/user-account/index.d.ts.map +1 -0
  90. package/lib/auth/esolve-auth-check-data.interface.d.ts.map +1 -0
  91. package/lib/auth/esolve-auth-check-response.interface.d.ts.map +1 -0
  92. package/lib/auth/esolve-auth-data.interface.d.ts.map +1 -0
  93. package/lib/auth/esolve-auth-get-data.interface.d.ts.map +1 -0
  94. package/lib/auth/esolve-auth-get-response.interface.d.ts.map +1 -0
  95. package/lib/auth/esolve-auth-interceptor.service.d.ts.map +1 -0
  96. package/lib/auth/esolve-auth-response-data.type.d.ts.map +1 -0
  97. package/lib/auth/esolve-auth-response.interface.d.ts.map +1 -0
  98. package/lib/auth/esolve-auth-result.type.d.ts.map +1 -0
  99. package/lib/auth/esolve-auth.service.d.ts.map +1 -0
  100. package/lib/auth/esolve-login-post-response-item.interface.d.ts.map +1 -0
  101. package/lib/auth/index.d.ts.map +1 -0
  102. package/lib/banners/esolve-banner-image-hotspot-coords.interface.d.ts.map +1 -0
  103. package/lib/banners/esolve-banner-image-hotspot-record.interface.d.ts.map +1 -0
  104. package/lib/banners/esolve-banner-image-hotspot.model.d.ts.map +1 -0
  105. package/lib/banners/esolve-banner-image-record.interface.d.ts.map +1 -0
  106. package/lib/banners/esolve-banner-image-set.interface.d.ts.map +1 -0
  107. package/lib/banners/esolve-banner-image-type.type.d.ts.map +1 -0
  108. package/lib/banners/esolve-banner-image.model.d.ts.map +1 -0
  109. package/lib/banners/esolve-banner-link.interface.d.ts.map +1 -0
  110. package/lib/banners/esolve-banner-record.interface.d.ts.map +1 -0
  111. package/lib/banners/esolve-banner-type.type.d.ts.map +1 -0
  112. package/lib/banners/esolve-banner.model.d.ts.map +1 -0
  113. package/lib/banners/esolve-banner.service.d.ts.map +1 -0
  114. package/lib/banners/index.d.ts.map +1 -0
  115. package/lib/cart/esolve-cart-additional-where.interface.d.ts.map +1 -0
  116. package/lib/cart/esolve-cart-empty-response.interface.d.ts.map +1 -0
  117. package/lib/cart/esolve-cart-item-record.interface.d.ts.map +1 -0
  118. package/lib/cart/esolve-cart-item-response.interface.d.ts.map +1 -0
  119. package/lib/cart/esolve-cart-item.model.d.ts +2 -1
  120. package/lib/cart/esolve-cart-item.model.d.ts.map +1 -0
  121. package/lib/cart/esolve-cart-set-action.type.d.ts.map +1 -0
  122. package/lib/cart/esolve-cart-set-item.interface.d.ts.map +1 -0
  123. package/lib/cart/esolve-cart-stock-item.model.d.ts.map +1 -0
  124. package/lib/cart/esolve-cart-totals-record.interface.d.ts.map +1 -0
  125. package/lib/cart/esolve-cart-totals.model.d.ts.map +1 -0
  126. package/lib/cart/esolve-cart.service.d.ts.map +1 -0
  127. package/lib/cart/esolve-cart.type.d.ts.map +1 -0
  128. package/lib/cart/esolve-checkout-response.interface.d.ts.map +1 -0
  129. package/lib/cart/esolve-checkout-result.model.d.ts.map +1 -0
  130. package/lib/cart/esolve-empty-cart-result.model.d.ts.map +1 -0
  131. package/lib/cart/esolve-tracking-code.interface.d.ts.map +1 -0
  132. package/lib/cart/index.d.ts.map +1 -0
  133. package/lib/category-tree/esolve-category-identifier.interface.d.ts.map +1 -0
  134. package/lib/category-tree/esolve-category-record.interface.d.ts.map +1 -0
  135. package/lib/category-tree/esolve-category-tree-item-options.interface.d.ts.map +1 -0
  136. package/lib/category-tree/esolve-category-tree-item-record.interface.d.ts.map +1 -0
  137. package/lib/category-tree/esolve-category-tree-item.model.d.ts.map +1 -0
  138. package/lib/category-tree/esolve-category-tree.service.d.ts.map +1 -0
  139. package/lib/category-tree/esolve-subcategory-record.interface.d.ts.map +1 -0
  140. package/lib/category-tree/index.d.ts.map +1 -0
  141. package/lib/enquiry/esolve-enquiry-response.interface.d.ts.map +1 -0
  142. package/lib/enquiry/esolve-enquiry-result.model.d.ts.map +1 -0
  143. package/lib/enquiry/esolve-enquiry.service.d.ts.map +1 -0
  144. package/lib/enquiry/index.d.ts.map +1 -0
  145. package/lib/esolve-connect-config.constant.d.ts.map +1 -0
  146. package/lib/esolve-connect.config.d.ts.map +1 -0
  147. package/lib/locations/esolve-location-address.model.d.ts.map +1 -0
  148. package/lib/locations/esolve-location-contact-info.model.d.ts.map +1 -0
  149. package/lib/locations/esolve-location-geo.model.d.ts.map +1 -0
  150. package/lib/locations/esolve-location-pobox-address.model.d.ts.map +1 -0
  151. package/lib/locations/esolve-location-record.interface.d.ts.map +1 -0
  152. package/lib/locations/esolve-location-trading-day.model.d.ts.map +1 -0
  153. package/lib/locations/esolve-location-trading-times.model.d.ts.map +1 -0
  154. package/lib/locations/esolve-location.model.d.ts.map +1 -0
  155. package/lib/locations/esolve-locations.service.d.ts +7 -2
  156. package/lib/locations/esolve-locations.service.d.ts.map +1 -0
  157. package/lib/locations/index.d.ts.map +1 -0
  158. package/lib/manufacturers/esolve-manufacturer-image-size.type.d.ts.map +1 -0
  159. package/lib/manufacturers/esolve-manufacturer-options.interface.d.ts.map +1 -0
  160. package/lib/manufacturers/esolve-manufacturer-record.interface.d.ts.map +1 -0
  161. package/lib/manufacturers/esolve-manufacturer.model.d.ts.map +1 -0
  162. package/lib/manufacturers/esolve-manufacturers.service.d.ts.map +1 -0
  163. package/lib/manufacturers/index.d.ts.map +1 -0
  164. package/lib/menu/esolve-menu-item.model.d.ts.map +1 -0
  165. package/lib/menu/esolve-menu-tree-record.interface.d.ts.map +1 -0
  166. package/lib/menu/esolve-menu.service.d.ts.map +1 -0
  167. package/lib/menu/esolve-menu.type.d.ts.map +1 -0
  168. package/lib/menu/index.d.ts.map +1 -0
  169. package/lib/news/esolve-news-article-author-record.interface.d.ts.map +1 -0
  170. package/lib/news/esolve-news-article-author.model.d.ts.map +1 -0
  171. package/lib/news/esolve-news-article-list.model.d.ts.map +1 -0
  172. package/lib/news/esolve-news-article-options.interface.d.ts.map +1 -0
  173. package/lib/news/esolve-news-article-record.interface.d.ts.map +1 -0
  174. package/lib/news/esolve-news-article.model.d.ts.map +1 -0
  175. package/lib/news/esolve-news-group-record.interface.d.ts.map +1 -0
  176. package/lib/news/esolve-news-group.model.d.ts.map +1 -0
  177. package/lib/news/esolve-news.service.d.ts.map +1 -0
  178. package/lib/news/index.d.ts.map +1 -0
  179. package/lib/ng-esolve-connect.module.d.ts.map +1 -0
  180. package/lib/payment/classes/esolve-banking-details.model.d.ts.map +1 -0
  181. package/lib/payment/classes/esolve-payment-method.model.d.ts.map +1 -0
  182. package/lib/payment/classes/esolve-payment-result.model.d.ts.map +1 -0
  183. package/lib/payment/classes/esolve-vault-item-result.model.d.ts.map +1 -0
  184. package/lib/payment/classes/esolve-vault-item.model.d.ts.map +1 -0
  185. package/lib/payment/classes/index.d.ts.map +1 -0
  186. package/lib/payment/esolve-payment.service.d.ts.map +1 -0
  187. package/lib/payment/index.d.ts.map +1 -0
  188. package/lib/payment/interfaces/esolve-card-data.interface.d.ts.map +1 -0
  189. package/lib/payment/interfaces/esolve-payment-form-input.interface.d.ts.map +1 -0
  190. package/lib/payment/interfaces/esolve-payment-method-options.interface.d.ts.map +1 -0
  191. package/lib/payment/interfaces/esolve-payment-method-record.interface.d.ts.map +1 -0
  192. package/lib/payment/interfaces/esolve-payment-response.interface.d.ts.map +1 -0
  193. package/lib/payment/interfaces/esolve-payment-set-body.interface.d.ts.map +1 -0
  194. package/lib/payment/interfaces/esolve-payment-status.interface.d.ts.map +1 -0
  195. package/lib/payment/interfaces/esolve-vault-record.interface.d.ts.map +1 -0
  196. package/lib/payment/interfaces/esolve-vault-response.interface.d.ts.map +1 -0
  197. package/lib/payment/interfaces/index.d.ts.map +1 -0
  198. package/lib/payment/types/esolve-integration-type.type.d.ts.map +1 -0
  199. package/lib/payment/types/esolve-service-provider.type.d.ts.map +1 -0
  200. package/lib/payment/types/index.d.ts.map +1 -0
  201. package/lib/ranges/esolve-range-options.interface.d.ts.map +1 -0
  202. package/lib/ranges/esolve-range-record.interface.d.ts.map +1 -0
  203. package/lib/ranges/esolve-range.model.d.ts.map +1 -0
  204. package/lib/ranges/esolve-ranges.service.d.ts.map +1 -0
  205. package/lib/ranges/index.d.ts.map +1 -0
  206. package/lib/session/esolve-session-data.interface.d.ts.map +1 -0
  207. package/lib/session/esolve-session.model.d.ts.map +1 -0
  208. package/lib/session/esolve-session.service.d.ts.map +1 -0
  209. package/lib/session/esolve-stored-session.interface.d.ts.map +1 -0
  210. package/lib/session/index.d.ts.map +1 -0
  211. package/lib/shared/assets/esolve-asset-list.type.d.ts.map +1 -0
  212. package/lib/shared/assets/esolve-asset-options.interface.d.ts.map +1 -0
  213. package/lib/shared/assets/esolve-asset-record.interface.d.ts.map +1 -0
  214. package/lib/shared/assets/esolve-asset-type.type.d.ts.map +1 -0
  215. package/lib/shared/assets/esolve-asset.model.d.ts.map +1 -0
  216. package/lib/shared/assets/esolve-assets.service.d.ts.map +1 -0
  217. package/lib/shared/assets/esolve-linked-asset-record.interface.d.ts.map +1 -0
  218. package/lib/shared/assets/esolve-linked-asset.model.d.ts.map +1 -0
  219. package/lib/shared/assets/index.d.ts.map +1 -0
  220. package/lib/shared/cookie/esolve-cookie.service.d.ts.map +1 -0
  221. package/lib/shared/custom-fields/esolve-custom-fields.type.d.ts.map +1 -0
  222. package/lib/shared/custom-fields/esolve-generic-custom-fields.interface.d.ts.map +1 -0
  223. package/lib/shared/custom-fields/index.d.ts.map +1 -0
  224. package/lib/shared/errors/esolve-error-handler.service.d.ts.map +1 -0
  225. package/lib/shared/errors/esolve-http-error.model.d.ts.map +1 -0
  226. package/lib/shared/errors/index.d.ts.map +1 -0
  227. package/lib/shared/esolve-list.model.d.ts.map +1 -0
  228. package/lib/shared/esolve-result.model.d.ts.map +1 -0
  229. package/lib/shared/esolve-url-target.type.d.ts.map +1 -0
  230. package/lib/shared/geocoder/esolve-geocode-address-record.interface.d.ts.map +1 -0
  231. package/lib/shared/geocoder/esolve-geocode-address-result.model.d.ts.map +1 -0
  232. package/lib/shared/geocoder/esolve-geocode-coords-result.model.d.ts.map +1 -0
  233. package/lib/shared/geocoder/esolve-geocode-result-record.interface.d.ts.map +1 -0
  234. package/lib/shared/geocoder/esolve-geocode-result.model.d.ts.map +1 -0
  235. package/lib/shared/geocoder/esolve-geocoder.service.d.ts.map +1 -0
  236. package/lib/shared/geocoder/index.d.ts.map +1 -0
  237. package/lib/shared/response/esolve-delete-response.interface.d.ts.map +1 -0
  238. package/lib/shared/response/esolve-delete-result.interface.d.ts.map +1 -0
  239. package/lib/shared/response/esolve-get-response.interface.d.ts.map +1 -0
  240. package/lib/shared/response/esolve-post-response-item.interface.d.ts.map +1 -0
  241. package/lib/shared/response/esolve-post-response-status.interface.d.ts.map +1 -0
  242. package/lib/shared/response/esolve-response-handler.service.d.ts.map +1 -0
  243. package/lib/shared/response/esolve-response-log-item.interface.d.ts.map +1 -0
  244. package/lib/shared/response/esolve-response-result.model.d.ts.map +1 -0
  245. package/lib/shared/response/esolve-response.interface.d.ts.map +1 -0
  246. package/lib/shared/response/esolve-set-response.interface.d.ts.map +1 -0
  247. package/lib/shared/response/index.d.ts.map +1 -0
  248. package/lib/shared/seo/esolve-seo-details.interface.d.ts.map +1 -0
  249. package/lib/shared/seo/esolve-seo-info.model.d.ts.map +1 -0
  250. package/lib/shared/seo/esolve-seo.service.d.ts.map +1 -0
  251. package/lib/shared/seo/index.d.ts.map +1 -0
  252. package/lib/shared/sort/esolve-sort-order.type.d.ts.map +1 -0
  253. package/lib/shared/sort/esolve-sort.interface.d.ts.map +1 -0
  254. package/lib/shared/sort/index.d.ts.map +1 -0
  255. package/lib/shipping/esolve-insurance-calculation-method.type.d.ts.map +1 -0
  256. package/lib/shipping/esolve-shipping-calculation-method.type.d.ts.map +1 -0
  257. package/lib/shipping/esolve-shipping-cost-record.interface.d.ts.map +1 -0
  258. package/lib/shipping/esolve-shipping-cost.model.d.ts.map +1 -0
  259. package/lib/shipping/esolve-shipping-location.type.d.ts.map +1 -0
  260. package/lib/shipping/esolve-shipping-method-options.interface.d.ts.map +1 -0
  261. package/lib/shipping/esolve-shipping-method-record.interface.d.ts.map +1 -0
  262. package/lib/shipping/esolve-shipping-method.model.d.ts.map +1 -0
  263. package/lib/shipping/esolve-shipping-totals.model.d.ts.map +1 -0
  264. package/lib/shipping/esolve-shipping.service.d.ts.map +1 -0
  265. package/lib/shipping/index.d.ts.map +1 -0
  266. package/lib/specials/esolve-special-image-collection-record.interface.d.ts.map +1 -0
  267. package/lib/specials/esolve-special-image-collection.model.d.ts.map +1 -0
  268. package/lib/specials/esolve-special-image-record.interface.d.ts.map +1 -0
  269. package/lib/specials/esolve-special-image.model.d.ts.map +1 -0
  270. package/lib/specials/esolve-special-options.interface.d.ts.map +1 -0
  271. package/lib/specials/esolve-special-record.interface.d.ts.map +1 -0
  272. package/lib/specials/esolve-special.model.d.ts.map +1 -0
  273. package/lib/specials/esolve-specials.service.d.ts.map +1 -0
  274. package/lib/specials/index.d.ts.map +1 -0
  275. package/lib/stock/classes/esolve-additional-stock-image.model.d.ts.map +1 -0
  276. package/lib/stock/classes/esolve-colour.model.d.ts.map +1 -0
  277. package/lib/stock/classes/esolve-linked-stock-item.model.d.ts.map +1 -0
  278. package/lib/stock/classes/esolve-media-stock-item.model.d.ts.map +1 -0
  279. package/lib/stock/classes/esolve-recipe-stock-item.model.d.ts.map +1 -0
  280. package/lib/stock/classes/esolve-stock-badge.model.d.ts.map +1 -0
  281. package/lib/stock/classes/esolve-stock-group-item.model.d.ts.map +1 -0
  282. package/lib/stock/classes/esolve-stock-group.model.d.ts.map +1 -0
  283. package/lib/stock/classes/esolve-stock-image-collection.model.d.ts.map +1 -0
  284. package/lib/stock/classes/esolve-stock-image.model.d.ts.map +1 -0
  285. package/lib/stock/classes/esolve-stock-item-base.model.d.ts +8 -0
  286. package/lib/stock/classes/esolve-stock-item-base.model.d.ts.map +1 -0
  287. package/lib/stock/classes/esolve-stock-item-list.model.d.ts.map +1 -0
  288. package/lib/stock/classes/esolve-stock-item.model.d.ts.map +1 -0
  289. package/lib/stock/classes/esolve-stock-lead-times.model.d.ts.map +1 -0
  290. package/lib/stock/classes/esolve-stock-price.model.d.ts.map +1 -0
  291. package/lib/stock/classes/index.d.ts.map +1 -0
  292. package/lib/stock/esolve-stock.service.d.ts.map +1 -0
  293. package/lib/stock/index.d.ts.map +1 -0
  294. package/lib/stock/interfaces/esolve-additional-stock-image-record.interface.d.ts.map +1 -0
  295. package/lib/stock/interfaces/esolve-colour-record.interface.d.ts.map +1 -0
  296. package/lib/stock/interfaces/esolve-linked-stock-record.interface.d.ts.map +1 -0
  297. package/lib/stock/interfaces/esolve-media-stock-item-options.interface.d.ts.map +1 -0
  298. package/lib/stock/interfaces/esolve-media-stock-item-record.interface.d.ts.map +1 -0
  299. package/lib/stock/interfaces/esolve-recipe-item-record.interface.d.ts.map +1 -0
  300. package/lib/stock/interfaces/esolve-recipe-stock-options.interface.d.ts.map +1 -0
  301. package/lib/stock/interfaces/esolve-stock-badge-record.interface.d.ts.map +1 -0
  302. package/lib/stock/interfaces/esolve-stock-base-record.interface.d.ts +1 -0
  303. package/lib/stock/interfaces/esolve-stock-base-record.interface.d.ts.map +1 -0
  304. package/lib/stock/interfaces/esolve-stock-group-item-record.interface.d.ts.map +1 -0
  305. package/lib/stock/interfaces/esolve-stock-image-collection-record.interface.d.ts.map +1 -0
  306. package/lib/stock/interfaces/esolve-stock-item-options.interface.d.ts.map +1 -0
  307. package/lib/stock/interfaces/esolve-stock-lead-times-record.interface.d.ts.map +1 -0
  308. package/lib/stock/interfaces/esolve-stock-linked-category-record.interface.d.ts.map +1 -0
  309. package/lib/stock/interfaces/esolve-stock-record.interface.d.ts.map +1 -0
  310. package/lib/stock/interfaces/index.d.ts.map +1 -0
  311. package/lib/stock/types/esolve-media-stock-item-list.type.d.ts.map +1 -0
  312. package/lib/stock/types/esolve-media-stock-sort-field.type.d.ts.map +1 -0
  313. package/lib/stock/types/esolve-stock-image-size.type.d.ts.map +1 -0
  314. package/lib/stock/types/esolve-stock-sort-field.type.d.ts.map +1 -0
  315. package/lib/stock/types/esolve-stock-unit-of-measure.type.d.ts.map +1 -0
  316. package/lib/stock/types/index.d.ts.map +1 -0
  317. package/lib/tags/esolve-tag-options.interface.d.ts.map +1 -0
  318. package/lib/tags/esolve-tag-phrase-match-mode.type.d.ts.map +1 -0
  319. package/lib/tags/esolve-tag-record.interface.d.ts.map +1 -0
  320. package/lib/tags/esolve-tag.model.d.ts.map +1 -0
  321. package/lib/tags/esolve-tags.service.d.ts.map +1 -0
  322. package/lib/tags/index.d.ts.map +1 -0
  323. package/lib/topics/esolve-topic-record.interface.d.ts.map +1 -0
  324. package/lib/topics/esolve-topic.model.d.ts.map +1 -0
  325. package/lib/topics/esolve-topic.service.d.ts.map +1 -0
  326. package/lib/topics/index.d.ts.map +1 -0
  327. package/media/classes/esolve-heading.model.d.ts +5 -0
  328. package/media/classes/esolve-heading.model.d.ts.map +1 -0
  329. package/media/classes/esolve-media-article.model.d.ts +19 -0
  330. package/media/classes/esolve-media-article.model.d.ts.map +1 -0
  331. package/media/classes/esolve-media-group.model.d.ts +8 -0
  332. package/media/classes/esolve-media-group.model.d.ts.map +1 -0
  333. package/media/classes/esolve-media-layout-section.model.d.ts +10 -0
  334. package/media/classes/esolve-media-layout-section.model.d.ts.map +1 -0
  335. package/media/classes/index.d.ts +4 -0
  336. package/media/classes/index.d.ts.map +1 -0
  337. package/media/components/index.d.ts +2 -0
  338. package/media/components/index.d.ts.map +1 -0
  339. package/media/components/media-layout/esolve-media-layout.component.d.ts +14 -0
  340. package/media/components/media-layout/esolve-media-layout.component.d.ts.map +1 -0
  341. package/media/components/media-section/esolve-media-section.component.d.ts +14 -0
  342. package/media/components/media-section/esolve-media-section.component.d.ts.map +1 -0
  343. package/media/esolve-connect-media-config.token.d.ts +3 -0
  344. package/media/esolve-connect-media-config.token.d.ts.map +1 -0
  345. package/media/esolve-connect-media.config.d.ts +6 -0
  346. package/media/esolve-connect-media.config.d.ts.map +1 -0
  347. package/media/esolve-ng-esolve-connect-media.d.ts +5 -0
  348. package/media/esolve-ng-esolve-connect-media.d.ts.map +1 -0
  349. package/media/esolve-section-data.token.d.ts +3 -0
  350. package/media/esolve-section-data.token.d.ts.map +1 -0
  351. package/media/interfaces/esolve-heading-record.interface.d.ts +5 -0
  352. package/media/interfaces/esolve-heading-record.interface.d.ts.map +1 -0
  353. package/media/interfaces/esolve-layout-config.interface.d.ts +9 -0
  354. package/media/interfaces/esolve-layout-config.interface.d.ts.map +1 -0
  355. package/media/interfaces/esolve-layout-section-config.interface.d.ts +7 -0
  356. package/media/interfaces/esolve-layout-section-config.interface.d.ts.map +1 -0
  357. package/media/interfaces/esolve-media-group-record.interface.d.ts +6 -0
  358. package/media/interfaces/esolve-media-group-record.interface.d.ts.map +1 -0
  359. package/media/interfaces/esolve-media-layout-section-record.interface.d.ts +7 -0
  360. package/media/interfaces/esolve-media-layout-section-record.interface.d.ts.map +1 -0
  361. package/media/interfaces/esolve-media-record.interface.d.ts +38 -0
  362. package/media/interfaces/esolve-media-record.interface.d.ts.map +1 -0
  363. package/media/interfaces/index.d.ts +6 -0
  364. package/media/interfaces/index.d.ts.map +1 -0
  365. package/media/ng-esolve-connect-media.module.d.ts +15 -0
  366. package/media/ng-esolve-connect-media.module.d.ts.map +1 -0
  367. package/media/package.json +10 -0
  368. package/media/public_api.d.ts +9 -0
  369. package/media/public_api.d.ts.map +1 -0
  370. package/media/services/esolve-media-layout.service.d.ts +23 -0
  371. package/media/services/esolve-media-layout.service.d.ts.map +1 -0
  372. package/media/services/esolve-media.service.d.ts +48 -0
  373. package/media/services/esolve-media.service.d.ts.map +1 -0
  374. package/media/services/index.d.ts +2 -0
  375. package/media/services/index.d.ts.map +1 -0
  376. package/media/types/esolve-media-layout-section-type.type.d.ts +1 -0
  377. package/media/types/esolve-media-layout-section-type.type.d.ts.map +1 -0
  378. package/media/types/index.d.ts +1 -0
  379. package/media/types/index.d.ts.map +1 -0
  380. package/package.json +18 -5
  381. package/public-api.d.ts +2 -2
  382. package/public-api.d.ts.map +1 -0
  383. package/schematics/collection.json +9 -0
  384. package/schematics/ng-add/index.d.ts +2 -0
  385. package/schematics/ng-add/index.js +30 -0
  386. package/schematics/ng-add/index.js.map +1 -0
@@ -1,8 +1,9 @@
1
1
  export class EsolveCartItem {
2
- constructor(id, stock_item, qty, type, price, discount, discount_interval, vat_rate, allow_quotes, allow_orders, must_collect, requested_assembly, price_incl, discount_price, discount_price_incl, discount_total, vat_total, total, total_incl) {
2
+ constructor(id, stock_item, qty, delivery_category, type, price, discount, discount_interval, vat_rate, allow_quotes, allow_orders, must_collect, requested_assembly, price_incl, discount_price, discount_price_incl, discount_total, vat_total, total, total_incl) {
3
3
  this.id = id;
4
4
  this.stock_item = stock_item;
5
5
  this.qty = qty;
6
+ this.delivery_category = delivery_category;
6
7
  this.type = type;
7
8
  this.price = price;
8
9
  this.discount = discount;
@@ -21,4 +22,4 @@ export class EsolveCartItem {
21
22
  this.total_incl = total_incl;
22
23
  }
23
24
  }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWNhcnQtaXRlbS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvY2FydC9lc29sdmUtY2FydC1pdGVtLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxjQUFjO0lBQ3ZCLFlBQ1csRUFBVSxFQUNWLFVBQStCLEVBQy9CLEdBQVcsRUFDWCxJQUFZLEVBRVosS0FBYSxFQUNiLFFBQWdCLEVBQ2hCLGlCQUF5QixFQUN6QixRQUFnQixFQUVoQixZQUFxQixFQUNyQixZQUFxQixFQUNyQixZQUFxQixFQUNyQixrQkFBMkIsRUFFM0IsVUFBa0IsRUFDbEIsY0FBc0IsRUFDdEIsbUJBQTJCLEVBQzNCLGNBQXNCLEVBQ3RCLFNBQWlCLEVBQ2pCLEtBQWEsRUFDYixVQUFrQjtRQXJCbEIsT0FBRSxHQUFGLEVBQUUsQ0FBUTtRQUNWLGVBQVUsR0FBVixVQUFVLENBQXFCO1FBQy9CLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFDWCxTQUFJLEdBQUosSUFBSSxDQUFRO1FBRVosVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGFBQVEsR0FBUixRQUFRLENBQVE7UUFDaEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFRO1FBQ3pCLGFBQVEsR0FBUixRQUFRLENBQVE7UUFFaEIsaUJBQVksR0FBWixZQUFZLENBQVM7UUFDckIsaUJBQVksR0FBWixZQUFZLENBQVM7UUFDckIsaUJBQVksR0FBWixZQUFZLENBQVM7UUFDckIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFTO1FBRTNCLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDbEIsbUJBQWMsR0FBZCxjQUFjLENBQVE7UUFDdEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFRO1FBQzNCLG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ3RCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGVBQVUsR0FBVixVQUFVLENBQVE7SUFDekIsQ0FBQztDQUNSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXNvbHZlQ2FydFN0b2NrSXRlbSB9IGZyb20gJy4vZXNvbHZlLWNhcnQtc3RvY2staXRlbS5tb2RlbCc7XHJcblxyXG5leHBvcnQgY2xhc3MgRXNvbHZlQ2FydEl0ZW0ge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIGlkOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIHN0b2NrX2l0ZW06IEVzb2x2ZUNhcnRTdG9ja0l0ZW0sXHJcbiAgICAgICAgcHVibGljIHF0eTogbnVtYmVyLFxyXG4gICAgICAgIHB1YmxpYyB0eXBlOiBzdHJpbmcsXHJcblxyXG4gICAgICAgIHB1YmxpYyBwcmljZTogbnVtYmVyLFxyXG4gICAgICAgIHB1YmxpYyBkaXNjb3VudDogbnVtYmVyLFxyXG4gICAgICAgIHB1YmxpYyBkaXNjb3VudF9pbnRlcnZhbDogbnVtYmVyLFxyXG4gICAgICAgIHB1YmxpYyB2YXRfcmF0ZTogbnVtYmVyLFxyXG5cclxuICAgICAgICBwdWJsaWMgYWxsb3dfcXVvdGVzOiBib29sZWFuLFxyXG4gICAgICAgIHB1YmxpYyBhbGxvd19vcmRlcnM6IGJvb2xlYW4sXHJcbiAgICAgICAgcHVibGljIG11c3RfY29sbGVjdDogYm9vbGVhbixcclxuICAgICAgICBwdWJsaWMgcmVxdWVzdGVkX2Fzc2VtYmx5OiBib29sZWFuLFxyXG5cclxuICAgICAgICBwdWJsaWMgcHJpY2VfaW5jbDogbnVtYmVyLFxyXG4gICAgICAgIHB1YmxpYyBkaXNjb3VudF9wcmljZTogbnVtYmVyLFxyXG4gICAgICAgIHB1YmxpYyBkaXNjb3VudF9wcmljZV9pbmNsOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGRpc2NvdW50X3RvdGFsOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIHZhdF90b3RhbDogbnVtYmVyLFxyXG4gICAgICAgIHB1YmxpYyB0b3RhbDogbnVtYmVyLFxyXG4gICAgICAgIHB1YmxpYyB0b3RhbF9pbmNsOiBudW1iZXIsXHJcbiAgICApIHsgfVxyXG59XHJcbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWNhcnQtaXRlbS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvY2FydC9lc29sdmUtY2FydC1pdGVtLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxjQUFjO0lBQ3ZCLFlBQ1csRUFBVSxFQUNWLFVBQStCLEVBQy9CLEdBQVcsRUFDWCxpQkFBeUIsRUFDekIsSUFBWSxFQUVaLEtBQWEsRUFDYixRQUFnQixFQUNoQixpQkFBeUIsRUFDekIsUUFBZ0IsRUFFaEIsWUFBcUIsRUFDckIsWUFBcUIsRUFDckIsWUFBcUIsRUFDckIsa0JBQTJCLEVBRTNCLFVBQWtCLEVBQ2xCLGNBQXNCLEVBQ3RCLG1CQUEyQixFQUMzQixjQUFzQixFQUN0QixTQUFpQixFQUNqQixLQUFhLEVBQ2IsVUFBa0I7UUF0QmxCLE9BQUUsR0FBRixFQUFFLENBQVE7UUFDVixlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQUMvQixRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQ1gsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFRO1FBQ3pCLFNBQUksR0FBSixJQUFJLENBQVE7UUFFWixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2IsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQVE7UUFDekIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUVoQixpQkFBWSxHQUFaLFlBQVksQ0FBUztRQUNyQixpQkFBWSxHQUFaLFlBQVksQ0FBUztRQUNyQixpQkFBWSxHQUFaLFlBQVksQ0FBUztRQUNyQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQVM7UUFFM0IsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUNsQixtQkFBYyxHQUFkLGNBQWMsQ0FBUTtRQUN0Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQVE7UUFDM0IsbUJBQWMsR0FBZCxjQUFjLENBQVE7UUFDdEIsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2IsZUFBVSxHQUFWLFVBQVUsQ0FBUTtJQUN6QixDQUFDO0NBQ1IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVDYXJ0U3RvY2tJdGVtIH0gZnJvbSAnLi9lc29sdmUtY2FydC1zdG9jay1pdGVtLm1vZGVsJztcclxuXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVDYXJ0SXRlbSB7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgaWQ6IG51bWJlcixcclxuICAgICAgICBwdWJsaWMgc3RvY2tfaXRlbTogRXNvbHZlQ2FydFN0b2NrSXRlbSxcclxuICAgICAgICBwdWJsaWMgcXR5OiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGRlbGl2ZXJ5X2NhdGVnb3J5OiBzdHJpbmcsXHJcbiAgICAgICAgcHVibGljIHR5cGU6IHN0cmluZyxcclxuXHJcbiAgICAgICAgcHVibGljIHByaWNlOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGRpc2NvdW50OiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGRpc2NvdW50X2ludGVydmFsOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIHZhdF9yYXRlOiBudW1iZXIsXHJcblxyXG4gICAgICAgIHB1YmxpYyBhbGxvd19xdW90ZXM6IGJvb2xlYW4sXHJcbiAgICAgICAgcHVibGljIGFsbG93X29yZGVyczogYm9vbGVhbixcclxuICAgICAgICBwdWJsaWMgbXVzdF9jb2xsZWN0OiBib29sZWFuLFxyXG4gICAgICAgIHB1YmxpYyByZXF1ZXN0ZWRfYXNzZW1ibHk6IGJvb2xlYW4sXHJcblxyXG4gICAgICAgIHB1YmxpYyBwcmljZV9pbmNsOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGRpc2NvdW50X3ByaWNlOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGRpc2NvdW50X3ByaWNlX2luY2w6IG51bWJlcixcclxuICAgICAgICBwdWJsaWMgZGlzY291bnRfdG90YWw6IG51bWJlcixcclxuICAgICAgICBwdWJsaWMgdmF0X3RvdGFsOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIHRvdGFsOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIHRvdGFsX2luY2w6IG51bWJlcixcclxuICAgICkgeyB9XHJcbn1cclxuIl19
@@ -169,7 +169,7 @@ export class EsolveCartService {
169
169
  if (cart_item_records) {
170
170
  for (const cart_item_record of cart_item_records) {
171
171
  const cart_stock_item = new EsolveCartStockItem(cart_item_record.code, cart_item_record.name, cart_item_record.sef_name, cart_item_record.description, cart_item_record.is_active, +cart_item_record.items_in_pack, cart_item_record.delivery_category, +cart_item_record.onhand, cart_item_record.image_name);
172
- cart_items.push(new EsolveCartItem(+cart_item_record.id, cart_stock_item, +cart_item_record.qty, cart_item_record.type, +cart_item_record.price, +cart_item_record.discount, +cart_item_record.discount_interval, cart_item_record.vat_rate, cart_item_record.allow_quotes, cart_item_record.allow_orders, cart_item_record.must_collect, cart_item_record.requested_assembly, +cart_item_record.price_incl, +cart_item_record.discount_price, +cart_item_record.discount_price_incl, +cart_item_record.discount_total, +cart_item_record.vat_total, +cart_item_record.line_total, +cart_item_record.line_total_incl));
172
+ cart_items.push(new EsolveCartItem(+cart_item_record.id, cart_stock_item, +cart_item_record.qty, cart_item_record.delivery_category, cart_item_record.type, +cart_item_record.price, +cart_item_record.discount, +cart_item_record.discount_interval, cart_item_record.vat_rate, cart_item_record.allow_quotes, cart_item_record.allow_orders, cart_item_record.must_collect, cart_item_record.requested_assembly, +cart_item_record.price_incl, +cart_item_record.discount_price, +cart_item_record.discount_price_incl, +cart_item_record.discount_total, +cart_item_record.vat_total, +cart_item_record.line_total, +cart_item_record.line_total_incl));
173
173
  }
174
174
  }
175
175
  return cart_items;
@@ -196,4 +196,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
196
196
  type: Inject,
197
197
  args: [ESOLVE_CONNECT_CONFIG]
198
198
  }] }, { type: i1.HttpClient }, { type: i2.EsolveErrorHandlerService }, { type: i3.EsolveResponseHandlerService }]; } });
199
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWNhcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvY2FydC9lc29sdmUtY2FydC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSW5ELE9BQU8sRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzVELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBVzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUcxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUlyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUd0RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7QUFNekUsTUFBTSxPQUFPLGlCQUFpQjtJQUcxQixZQUMyQyxNQUEyQixFQUMxRCxJQUFnQixFQUNoQixZQUF1QyxFQUN2QyxlQUE2QztRQUhkLFdBQU0sR0FBTixNQUFNLENBQXFCO1FBQzFELFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsaUJBQVksR0FBWixZQUFZLENBQTJCO1FBQ3ZDLG9CQUFlLEdBQWYsZUFBZSxDQUE4QjtRQU5qRCxxQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFPekIsQ0FBQztJQUVMOzs7O09BSUc7SUFDSSxPQUFPO1FBQ1YsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNYLEdBQUcsQ0FDQSxH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MEJBS1EsTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5cclxuaW1wb3J0IHsgaWlmLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZUNvbm5lY3RDb25maWcgfSBmcm9tICcuLi9lc29sdmUtY29ubmVjdC5jb25maWcnO1xyXG5pbXBvcnQgeyBFU09MVkVfQ09OTkVDVF9DT05GSUcgfSBmcm9tICcuLi9lc29sdmUtY29ubmVjdC1jb25maWcuY29uc3RhbnQnO1xyXG5pbXBvcnQgeyBFc29sdmVFcnJvckhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2Vycm9ycy9lc29sdmUtZXJyb3ItaGFuZGxlci5zZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuICAgIEVzb2x2ZVNldFJlc3BvbnNlLFxyXG4gICAgRXNvbHZlR2V0UmVzcG9uc2UsXHJcbiAgICBFc29sdmVSZXNwb25zZUhhbmRsZXJTZXJ2aWNlLFxyXG59IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZSc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVUcmFuc2FjdGlvblR5cGUgfSBmcm9tICcuLi9hY2NvdW50JztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZUNhcnQgfSBmcm9tICcuL2Vzb2x2ZS1jYXJ0LnR5cGUnO1xyXG5pbXBvcnQgeyBFc29sdmVDYXJ0SXRlbSB9IGZyb20gJy4vZXNvbHZlLWNhcnQtaXRlbS5tb2RlbCc7XHJcbmltcG9ydCB7IEVzb2x2ZUNhcnRTZXRJdGVtIH0gZnJvbSAnLi9lc29sdmUtY2FydC1zZXQtaXRlbS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBFc29sdmVDYXJ0U2V0QWN0aW9uIH0gZnJvbSAnLi9lc29sdmUtY2FydC1zZXQtYWN0aW9uLnR5cGUnO1xyXG5pbXBvcnQgeyBFc29sdmVDYXJ0U3RvY2tJdGVtIH0gZnJvbSAnLi9lc29sdmUtY2FydC1zdG9jay1pdGVtLm1vZGVsJztcclxuaW1wb3J0IHsgRXNvbHZlQ2FydEl0ZW1SZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS1jYXJ0LWl0ZW0tcmVjb3JkLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEVzb2x2ZUNhcnRJdGVtUmVzcG9uc2UgfSBmcm9tICcuL2Vzb2x2ZS1jYXJ0LWl0ZW0tcmVzcG9uc2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRXNvbHZlQ2FydFRvdGFsc1JlY29yZCB9IGZyb20gJy4vZXNvbHZlLWNhcnQtdG90YWxzLXJlY29yZC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBFc29sdmVDYXJ0VG90YWxzIH0gZnJvbSAnLi9lc29sdmUtY2FydC10b3RhbHMubW9kZWwnO1xyXG5pbXBvcnQgeyBFc29sdmVDaGVja291dFJlc3BvbnNlIH0gZnJvbSAnLi9lc29sdmUtY2hlY2tvdXQtcmVzcG9uc2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRXNvbHZlQ2hlY2tvdXRSZXN1bHQgfSBmcm9tICcuL2Vzb2x2ZS1jaGVja291dC1yZXN1bHQubW9kZWwnO1xyXG5pbXBvcnQgeyBFc29sdmVUcmFja2luZ0NvZGUgfSBmcm9tICcuL2Vzb2x2ZS10cmFja2luZy1jb2RlLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEVzb2x2ZUNhcnRFbXB0eVJlc3BvbnNlIH0gZnJvbSAnLi9lc29sdmUtY2FydC1lbXB0eS1yZXNwb25zZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBFc29sdmVFbXB0eUNhcnRSZXN1bHQgfSBmcm9tICcuL2Vzb2x2ZS1lbXB0eS1jYXJ0LXJlc3VsdC5tb2RlbCc7XHJcbmltcG9ydCB7IEVzb2x2ZUFkZGl0aW9uYWxXaGVyZSB9IGZyb20gJy4vZXNvbHZlLWNhcnQtYWRkaXRpb25hbC13aGVyZS5pbnRlcmZhY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXNvbHZlQ2FydFNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSBfY2FjaGVkX3RyYWNraW5nID0gMDtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBASW5qZWN0KEVTT0xWRV9DT05ORUNUX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IEVzb2x2ZUNvbm5lY3RDb25maWcsXHJcbiAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyOiBFc29sdmVFcnJvckhhbmRsZXJTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgcmVzcG9uc2VIYW5kbGVyOiBFc29sdmVSZXNwb25zZUhhbmRsZXJTZXJ2aWNlXHJcbiAgICApIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0cmlldmVzIHRoZSBjdXJyZW50IGNhcnRcclxuICAgICAqXHJcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCBhbiBhcnJheSBvZiBjYXJ0IGl0ZW1zXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRDYXJ0KCk6IE9ic2VydmFibGU8RXNvbHZlQ2FydD4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVDYXJ0SXRlbVJlY29yZFtdPj4oXHJcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtY2FydC5waHBgXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NDYXJ0KHJlc3BvbnNlLnJlY29yZHMpO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFVwZGF0ZXMgdGhlIGNhcnQgYnkgcHJlZm9ybWluZyB2YXJpb3VzIGFjdGlvbnMsIHN1Y2ggYXMgYWRkaW5nLCBlZGl0aW5nIG9yIHJlbW92aW5nIGl0ZW1zIGZyb20gdGhlIGNhcnQuXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIGl0ZW1zIEFuIGFycmF5IG9mIG9wdGlvbnMgdG8gdXBkYXRlIHRoZSBjYXJ0XHJcbiAgICAgKiBAcGFyYW0gYWN0aW9uIFRoZSBkZWZhdWx0IGFjdGlvbiB0byBwcmVmb3JtXHJcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCBhbiBhcnJheSBvZiByZXNwb25zZXMgdGhhdCBnaXZlcyBmZWVkYmFjayBvbiB0aGUgcmVxdWVzdGVkIGNoYW5nZXNcclxuICAgICAqL1xyXG4gICAgcHVibGljIHNldENhcnQoXHJcbiAgICAgICAgaXRlbXM6IEVzb2x2ZUNhcnRTZXRJdGVtW10sXHJcbiAgICAgICAgYWN0aW9uOiBFc29sdmVDYXJ0U2V0QWN0aW9uID0gJ2FkZCdcclxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlQ2FydEl0ZW1SZXNwb25zZVtdPiB7XHJcbiAgICAgICAgY29uc3QgYm9keSA9IHtcclxuICAgICAgICAgICAgaXRlbXMsXHJcbiAgICAgICAgICAgIGFjdGlvblxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLnBvc3Q8RXNvbHZlU2V0UmVzcG9uc2U8RXNvbHZlQ2FydEl0ZW1SZXNwb25zZT4+KFxyXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2V0LWNhcnQtaXRlbS5waHBgLFxyXG4gICAgICAgICAgICAgICAgYm9keSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTg7J1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXHJcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZXNwb25zZXMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5yZXNwb25zZXM7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZXRDYXJ0RW1wdHkodHlwZTogRXNvbHZlVHJhbnNhY3Rpb25UeXBlLCBhZGRpdGlvbmFsX3doZXJlOiBFc29sdmVBZGRpdGlvbmFsV2hlcmVbXSk6IE9ic2VydmFibGU8RXNvbHZlRW1wdHlDYXJ0UmVzdWx0PiB7XHJcbiAgICAgICAgY29uc3QgYm9keSA9IHtcclxuICAgICAgICAgICAgdHlwZSxcclxuICAgICAgICAgICAgYWRkaXRpb25hbF93aGVyZVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLnBvc3Q8RXNvbHZlU2V0UmVzcG9uc2U8RXNvbHZlQ2FydEVtcHR5UmVzcG9uc2U+PihcclxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NldC1jYXJ0LWVtcHR5LnBocGAsXHJcbiAgICAgICAgICAgICAgICBib2R5LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD11dGYtODsnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcclxuICAgICAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keScsXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBtYXAoKGh0dHBfcmVzcG9uc2UpID0+IHRoaXMucmVzcG9uc2VIYW5kbGVyLnZhbGlkYXRlU2luZ2xlSHR0cFJlc3BvbnNlKFxyXG4gICAgICAgICAgICAgICAgICAgIGh0dHBfcmVzcG9uc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2NhY2hlZF90cmFja2luZyA9IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEVzb2x2ZUVtcHR5Q2FydFJlc3VsdChyZXNwb25zZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgKSksXHJcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvclJlczogSHR0cEVycm9yUmVzcG9uc2UgfCBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lcnJvckhhbmRsZXIuaGFuZGxlSHR0cFBvc3RFcnJvcignc2V0LWNhcnQtZW1wdHknLCBlcnJvclJlcyk7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0cmlldmVzIHRoZSB0b3RhbHMgb2YgdGhlIGNhcnQgd2l0aCBhbGwgdGhlIHRvdGFscyBjYWxjdWxhdGVkXHJcbiAgICAgKlxyXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggYW4gb2JqZWN0IGNvbnRhaW5pbmcgY2FydCB0b3RhbHNcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldFRvdGFscyh0eXBlPzogRXNvbHZlVHJhbnNhY3Rpb25UeXBlKTogT2JzZXJ2YWJsZTxFc29sdmVDYXJ0VG90YWxzPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAgICAgICAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZUNhcnRUb3RhbHNSZWNvcmQ+PihcclxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1jYXJ0LXRvdGFscy5waHBgLFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiB0eXBlID8/ICcnLFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQ2FydFRvdGFscyhyZXNwb25zZS5yZWNvcmRzKTtcclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0cmlldmVzIGEgdHJhY2tpbmcgY29kZSBmb3IgdGhlIGNhcnRcclxuICAgICAqXHJcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCB0aGUgY2FydCB0cmFja2luZyBjb2RlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRUcmFja2luZ0NvZGUoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcclxuICAgICAgICByZXR1cm4gaWlmKFxyXG4gICAgICAgICAgICAoKSA9PiB0aGlzLl9jYWNoZWRfdHJhY2tpbmcgPiAwLFxyXG4gICAgICAgICAgICBvZih0aGlzLl9jYWNoZWRfdHJhY2tpbmcpLFxyXG4gICAgICAgICAgICB0aGlzLmh0dHBcclxuICAgICAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlVHJhY2tpbmdDb2RlPj4oXHJcbiAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LWNoZWNrb3V0LXRyYWNraW5nLnBocGBcclxuICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2NhY2hlZF90cmFja2luZyA9IHJlc3BvbnNlLnJlY29yZHMudHJhY2tpbmc7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UucmVjb3Jkcy50cmFja2luZztcclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBJbml0aWF0ZXMgY2hlY2tvdXQgb2YgdGhlIGNhcnQgaXRlbXNcclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gdHlwZSBUaGUgY2FydCB0eXBlIHRoYXQgbmVlZHMgdG8gYmUgY2hlY2tlZCBvdXRcclxuICAgICAqIEBwYXJhbSBhZGRyZXNzZXNfaWQgVGhlIElEIG9mIHRoZSBkZWxpdmVyeSBhZGRyZXNzXHJcbiAgICAgKiBAcGFyYW0gc2hpcHBpbmdfaWQgVGhlIElEIG9mIHRoZSBzaGlwcGluZyBtZXRob2RcclxuICAgICAqIEBwYXJhbSBwYXltZW50X21ldGhvZF9pZCBUaGUgSUQgb2YgdGhlIHNlbGVjdGVkIHBheW1lbnQgbWV0aG9kXHJcbiAgICAgKiBAcGFyYW0gbG9jYXRpb25faWQgVGhlIElEIG9mIHRoZSBzZWxlY3RlZCBicmFuY2ggZnJvbSB3aXRoIHNoaXBwaW5nIG5lZWRzIHRvIGJlIGNhbGN1bGF0ZWRcclxuICAgICAqIEBwYXJhbSBjb21tZW50cyBBZGRpdGlvbmFsIGNvbW1lbnRzIG9uIHRoZSBjYXJ0XHJcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCB0aGUgdHJhbnNhY3Rpb24gSURcclxuICAgICAqL1xyXG4gICAgcHVibGljIGNoZWNrb3V0KFxyXG4gICAgICAgIHR5cGU6IEVzb2x2ZVRyYW5zYWN0aW9uVHlwZSxcclxuICAgICAgICBhZGRyZXNzZXNfaWQ6IG51bWJlcixcclxuICAgICAgICBzaGlwcGluZ19pZDogbnVtYmVyLFxyXG4gICAgICAgIHBheW1lbnRfbWV0aG9kX2lkID0gMCxcclxuICAgICAgICBsb2NhdGlvbl9pZCA9IDAsXHJcbiAgICAgICAgY29tbWVudHMgPSAnJ1xyXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVDaGVja291dFJlc3VsdD4ge1xyXG4gICAgICAgIGNvbnN0IGJvZHkgPSB7XHJcbiAgICAgICAgICAgIHR5cGUsXHJcbiAgICAgICAgICAgIGFkZHJlc3Nlc19pZCxcclxuICAgICAgICAgICAgc2hpcHBpbmdfaWQsXHJcbiAgICAgICAgICAgIHBheW1lbnRfbWV0aG9kX2lkLFxyXG4gICAgICAgICAgICBsb2NhdGlvbl9pZCxcclxuICAgICAgICAgICAgY29tbWVudHMsXHJcbiAgICAgICAgICAgIHRyYWNraW5nOiAwXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhY2tpbmdDb2RlKCkucGlwZShcclxuICAgICAgICAgICAgc3dpdGNoTWFwKCh0cmFja2luZykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRyYWNraW5nIDw9IDApIHtcclxuICAgICAgICAgICAgICAgICAgICB0aHJvdyB0cmFja2luZztcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBib2R5LnRyYWNraW5nID0gdHJhY2tpbmc7XHJcblxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAgICAgICAgICAgICAgIC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPEVzb2x2ZUNoZWNrb3V0UmVzcG9uc2U+PihcclxuICAgICAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2V0LWNoZWNrb3V0LnBocGAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvZHksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04OydcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmU6ICdib2R5J1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAoKGh0dHBfcmVzcG9uc2UpID0+IHRoaXMucmVzcG9uc2VIYW5kbGVyLnZhbGlkYXRlU2luZ2xlSHR0cFJlc3BvbnNlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaHR0cF9yZXNwb25zZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2NhY2hlZF90cmFja2luZyA9IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlQ2hlY2tvdXRSZXN1bHQocmVzcG9uc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lcnJvckhhbmRsZXIuaGFuZGxlSHR0cFBvc3RFcnJvcignc2V0LWNoZWNrb3V0JywgZXJyb3JSZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFByb2Nlc3NlcyB0aGUgZVNvbHZlIHRyZWUgcmVjb3Jkc1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBjYXJ0X2l0ZW1fcmVjb3JkcyBSZWNvcmRzIHRvIHByb2Nlc3NcclxuICAgICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHByb2Nlc3NlZCBjYXJ0IGl0ZW1zXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgcHJvY2Vzc0NhcnQoY2FydF9pdGVtX3JlY29yZHM6IEVzb2x2ZUNhcnRJdGVtUmVjb3JkW10pOiBFc29sdmVDYXJ0IHtcclxuICAgICAgICBjb25zdCBjYXJ0X2l0ZW1zOiBFc29sdmVDYXJ0SXRlbVtdID0gW107XHJcblxyXG4gICAgICAgIGlmIChjYXJ0X2l0ZW1fcmVjb3Jkcykge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IGNhcnRfaXRlbV9yZWNvcmQgb2YgY2FydF9pdGVtX3JlY29yZHMpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGNhcnRfc3RvY2tfaXRlbSA9IG5ldyBFc29sdmVDYXJ0U3RvY2tJdGVtKFxyXG4gICAgICAgICAgICAgICAgICAgIGNhcnRfaXRlbV9yZWNvcmQuY29kZSxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLm5hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgY2FydF9pdGVtX3JlY29yZC5zZWZfbmFtZSxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLmRlc2NyaXB0aW9uLFxyXG4gICAgICAgICAgICAgICAgICAgIGNhcnRfaXRlbV9yZWNvcmQuaXNfYWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgICtjYXJ0X2l0ZW1fcmVjb3JkLml0ZW1zX2luX3BhY2ssXHJcbiAgICAgICAgICAgICAgICAgICAgY2FydF9pdGVtX3JlY29yZC5kZWxpdmVyeV9jYXRlZ29yeSxcclxuICAgICAgICAgICAgICAgICAgICArY2FydF9pdGVtX3JlY29yZC5vbmhhbmQsXHJcbiAgICAgICAgICAgICAgICAgICAgY2FydF9pdGVtX3JlY29yZC5pbWFnZV9uYW1lXHJcbiAgICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICAgIGNhcnRfaXRlbXMucHVzaChuZXcgRXNvbHZlQ2FydEl0ZW0oXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQuaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgY2FydF9zdG9ja19pdGVtLFxyXG4gICAgICAgICAgICAgICAgICAgICtjYXJ0X2l0ZW1fcmVjb3JkLnF0eSxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLnR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQucHJpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQuZGlzY291bnQsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQuZGlzY291bnRfaW50ZXJ2YWwsXHJcbiAgICAgICAgICAgICAgICAgICAgY2FydF9pdGVtX3JlY29yZC52YXRfcmF0ZSxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLmFsbG93X3F1b3RlcyxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLmFsbG93X29yZGVycyxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLm11c3RfY29sbGVjdCxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLnJlcXVlc3RlZF9hc3NlbWJseSxcclxuICAgICAgICAgICAgICAgICAgICArY2FydF9pdGVtX3JlY29yZC5wcmljZV9pbmNsLFxyXG4gICAgICAgICAgICAgICAgICAgICtjYXJ0X2l0ZW1fcmVjb3JkLmRpc2NvdW50X3ByaWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICtjYXJ0X2l0ZW1fcmVjb3JkLmRpc2NvdW50X3ByaWNlX2luY2wsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQuZGlzY291bnRfdG90YWwsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQudmF0X3RvdGFsLFxyXG4gICAgICAgICAgICAgICAgICAgICtjYXJ0X2l0ZW1fcmVjb3JkLmxpbmVfdG90YWwsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQubGluZV90b3RhbF9pbmNsXHJcbiAgICAgICAgICAgICAgICApKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGNhcnRfaXRlbXM7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBQcm9jZXNzZXMgdGhlIGVTb2x2ZSBjYXJ0IHRvdGFsc1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSByZWNvcmQgRGF0YSB0byBwcm9jZXNzXHJcbiAgICAgKiBAcmV0dXJucyBQcm9jZXNzZWQgY2FydCB0b3RhbHNcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBwcm9jZXNzQ2FydFRvdGFscyhyZWNvcmQ6IEVzb2x2ZUNhcnRUb3RhbHNSZWNvcmQpOiBFc29sdmVDYXJ0VG90YWxzIHtcclxuICAgICAgICBjb25zdCBjYXJ0X3RvdGFscyA9IG5ldyBFc29sdmVDYXJ0VG90YWxzKFxyXG4gICAgICAgICAgICArcmVjb3JkLnJlY29yZHMsXHJcbiAgICAgICAgICAgICtyZWNvcmQuaXRlbXMsXHJcbiAgICAgICAgICAgICtyZWNvcmQudG90YWwsXHJcbiAgICAgICAgICAgICtyZWNvcmQudmF0LFxyXG4gICAgICAgICAgICArcmVjb3JkLmRpc2NvdW50XHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGNhcnRfdG90YWxzO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
199
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWNhcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvY2FydC9lc29sdmUtY2FydC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSW5ELE9BQU8sRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzVELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBVzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUcxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUlyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUd0RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7QUFNekUsTUFBTSxPQUFPLGlCQUFpQjtJQUcxQixZQUMyQyxNQUEyQixFQUMxRCxJQUFnQixFQUNoQixZQUF1QyxFQUN2QyxlQUE2QztRQUhkLFdBQU0sR0FBTixNQUFNLENBQXFCO1FBQzFELFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsaUJBQVksR0FBWixZQUFZLENBQTJCO1FBQ3ZDLG9CQUFlLEdBQWYsZUFBZSxDQUE4QjtRQU5qRCxxQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFPekIsQ0FBQztJQUVMOzs7O09BSUc7SUFDSSxPQUFPO1FBQ1YsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNYLEdBQUcsQ0FDQSxH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UixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQUtRLE1BQU07MkJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwRXJyb3JSZXNwb25zZSwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuXHJcbmltcG9ydCB7IGlpZiwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVDb25uZWN0Q29uZmlnIH0gZnJvbSAnLi4vZXNvbHZlLWNvbm5lY3QuY29uZmlnJztcclxuaW1wb3J0IHsgRVNPTFZFX0NPTk5FQ1RfQ09ORklHIH0gZnJvbSAnLi4vZXNvbHZlLWNvbm5lY3QtY29uZmlnLmNvbnN0YW50JztcclxuaW1wb3J0IHsgRXNvbHZlRXJyb3JIYW5kbGVyU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9lcnJvcnMvZXNvbHZlLWVycm9yLWhhbmRsZXIuc2VydmljZSc7XHJcbmltcG9ydCB7XHJcbiAgICBFc29sdmVTZXRSZXNwb25zZSxcclxuICAgIEVzb2x2ZUdldFJlc3BvbnNlLFxyXG4gICAgRXNvbHZlUmVzcG9uc2VIYW5kbGVyU2VydmljZSxcclxufSBmcm9tICcuLi9zaGFyZWQvcmVzcG9uc2UnO1xyXG5cclxuaW1wb3J0IHsgRXNvbHZlVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnLi4vYWNjb3VudCc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVDYXJ0IH0gZnJvbSAnLi9lc29sdmUtY2FydC50eXBlJztcclxuaW1wb3J0IHsgRXNvbHZlQ2FydEl0ZW0gfSBmcm9tICcuL2Vzb2x2ZS1jYXJ0LWl0ZW0ubW9kZWwnO1xyXG5pbXBvcnQgeyBFc29sdmVDYXJ0U2V0SXRlbSB9IGZyb20gJy4vZXNvbHZlLWNhcnQtc2V0LWl0ZW0uaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRXNvbHZlQ2FydFNldEFjdGlvbiB9IGZyb20gJy4vZXNvbHZlLWNhcnQtc2V0LWFjdGlvbi50eXBlJztcclxuaW1wb3J0IHsgRXNvbHZlQ2FydFN0b2NrSXRlbSB9IGZyb20gJy4vZXNvbHZlLWNhcnQtc3RvY2staXRlbS5tb2RlbCc7XHJcbmltcG9ydCB7IEVzb2x2ZUNhcnRJdGVtUmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtY2FydC1pdGVtLXJlY29yZC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBFc29sdmVDYXJ0SXRlbVJlc3BvbnNlIH0gZnJvbSAnLi9lc29sdmUtY2FydC1pdGVtLXJlc3BvbnNlLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEVzb2x2ZUNhcnRUb3RhbHNSZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS1jYXJ0LXRvdGFscy1yZWNvcmQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRXNvbHZlQ2FydFRvdGFscyB9IGZyb20gJy4vZXNvbHZlLWNhcnQtdG90YWxzLm1vZGVsJztcclxuaW1wb3J0IHsgRXNvbHZlQ2hlY2tvdXRSZXNwb25zZSB9IGZyb20gJy4vZXNvbHZlLWNoZWNrb3V0LXJlc3BvbnNlLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEVzb2x2ZUNoZWNrb3V0UmVzdWx0IH0gZnJvbSAnLi9lc29sdmUtY2hlY2tvdXQtcmVzdWx0Lm1vZGVsJztcclxuaW1wb3J0IHsgRXNvbHZlVHJhY2tpbmdDb2RlIH0gZnJvbSAnLi9lc29sdmUtdHJhY2tpbmctY29kZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBFc29sdmVDYXJ0RW1wdHlSZXNwb25zZSB9IGZyb20gJy4vZXNvbHZlLWNhcnQtZW1wdHktcmVzcG9uc2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRXNvbHZlRW1wdHlDYXJ0UmVzdWx0IH0gZnJvbSAnLi9lc29sdmUtZW1wdHktY2FydC1yZXN1bHQubW9kZWwnO1xyXG5pbXBvcnQgeyBFc29sdmVBZGRpdGlvbmFsV2hlcmUgfSBmcm9tICcuL2Vzb2x2ZS1jYXJ0LWFkZGl0aW9uYWwtd2hlcmUuaW50ZXJmYWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVzb2x2ZUNhcnRTZXJ2aWNlIHtcclxuICAgIHByaXZhdGUgX2NhY2hlZF90cmFja2luZyA9IDA7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgQEluamVjdChFU09MVkVfQ09OTkVDVF9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBFc29sdmVDb25uZWN0Q29uZmlnLFxyXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgICAgICBwcml2YXRlIGVycm9ySGFuZGxlcjogRXNvbHZlRXJyb3JIYW5kbGVyU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlc3BvbnNlSGFuZGxlcjogRXNvbHZlUmVzcG9uc2VIYW5kbGVyU2VydmljZVxyXG4gICAgKSB7IH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldHJpZXZlcyB0aGUgY3VycmVudCBjYXJ0XHJcbiAgICAgKlxyXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggYW4gYXJyYXkgb2YgY2FydCBpdGVtc1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0Q2FydCgpOiBPYnNlcnZhYmxlPEVzb2x2ZUNhcnQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlQ2FydEl0ZW1SZWNvcmRbXT4+KFxyXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LWNhcnQucGhwYFxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQ2FydChyZXNwb25zZS5yZWNvcmRzKTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBVcGRhdGVzIHRoZSBjYXJ0IGJ5IHByZWZvcm1pbmcgdmFyaW91cyBhY3Rpb25zLCBzdWNoIGFzIGFkZGluZywgZWRpdGluZyBvciByZW1vdmluZyBpdGVtcyBmcm9tIHRoZSBjYXJ0LlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpdGVtcyBBbiBhcnJheSBvZiBvcHRpb25zIHRvIHVwZGF0ZSB0aGUgY2FydFxyXG4gICAgICogQHBhcmFtIGFjdGlvbiBUaGUgZGVmYXVsdCBhY3Rpb24gdG8gcHJlZm9ybVxyXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggYW4gYXJyYXkgb2YgcmVzcG9uc2VzIHRoYXQgZ2l2ZXMgZmVlZGJhY2sgb24gdGhlIHJlcXVlc3RlZCBjaGFuZ2VzXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzZXRDYXJ0KFxyXG4gICAgICAgIGl0ZW1zOiBFc29sdmVDYXJ0U2V0SXRlbVtdLFxyXG4gICAgICAgIGFjdGlvbjogRXNvbHZlQ2FydFNldEFjdGlvbiA9ICdhZGQnXHJcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZUNhcnRJdGVtUmVzcG9uc2VbXT4ge1xyXG4gICAgICAgIGNvbnN0IGJvZHkgPSB7XHJcbiAgICAgICAgICAgIGl0ZW1zLFxyXG4gICAgICAgICAgICBhY3Rpb25cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgICAgICAgIC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPEVzb2x2ZUNhcnRJdGVtUmVzcG9uc2U+PihcclxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NldC1jYXJ0LWl0ZW0ucGhwYCxcclxuICAgICAgICAgICAgICAgIGJvZHksXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04OydcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxyXG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmU6ICdib2R5J1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKHJlc3BvbnNlID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UucmVzcG9uc2VzID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UucmVzcG9uc2VzO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0Q2FydEVtcHR5KHR5cGU6IEVzb2x2ZVRyYW5zYWN0aW9uVHlwZSwgYWRkaXRpb25hbF93aGVyZTogRXNvbHZlQWRkaXRpb25hbFdoZXJlW10pOiBPYnNlcnZhYmxlPEVzb2x2ZUVtcHR5Q2FydFJlc3VsdD4ge1xyXG4gICAgICAgIGNvbnN0IGJvZHkgPSB7XHJcbiAgICAgICAgICAgIHR5cGUsXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxfd2hlcmVcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgICAgICAgIC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPEVzb2x2ZUNhcnRFbXB0eVJlc3BvbnNlPj4oXHJcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9zZXQtY2FydC1lbXB0eS5waHBgLFxyXG4gICAgICAgICAgICAgICAgYm9keSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTg7J1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXHJcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKChodHRwX3Jlc3BvbnNlKSA9PiB0aGlzLnJlc3BvbnNlSGFuZGxlci52YWxpZGF0ZVNpbmdsZUh0dHBSZXNwb25zZShcclxuICAgICAgICAgICAgICAgICAgICBodHRwX3Jlc3BvbnNlLFxyXG4gICAgICAgICAgICAgICAgICAgIChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZWRfdHJhY2tpbmcgPSAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBFc29sdmVFbXB0eUNhcnRSZXN1bHQocmVzcG9uc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICkpLFxyXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUh0dHBQb3N0RXJyb3IoJ3NldC1jYXJ0LWVtcHR5JywgZXJyb3JSZXMpO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldHJpZXZlcyB0aGUgdG90YWxzIG9mIHRoZSBjYXJ0IHdpdGggYWxsIHRoZSB0b3RhbHMgY2FsY3VsYXRlZFxyXG4gICAgICpcclxuICAgICAqIEByZXR1cm5zIEFuIGBPYnNlcnZhYmxlYCB3aXRoIGFuIG9iamVjdCBjb250YWluaW5nIGNhcnQgdG90YWxzXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRUb3RhbHModHlwZT86IEVzb2x2ZVRyYW5zYWN0aW9uVHlwZSk6IE9ic2VydmFibGU8RXNvbHZlQ2FydFRvdGFscz4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVDYXJ0VG90YWxzUmVjb3JkPj4oXHJcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtY2FydC10b3RhbHMucGhwYCxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogdHlwZSA/PyAnJyxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0NhcnRUb3RhbHMocmVzcG9uc2UucmVjb3Jkcyk7XHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldHJpZXZlcyBhIHRyYWNraW5nIGNvZGUgZm9yIHRoZSBjYXJ0XHJcbiAgICAgKlxyXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggdGhlIGNhcnQgdHJhY2tpbmcgY29kZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0VHJhY2tpbmdDb2RlKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XHJcbiAgICAgICAgcmV0dXJuIGlpZihcclxuICAgICAgICAgICAgKCkgPT4gdGhpcy5fY2FjaGVkX3RyYWNraW5nID4gMCxcclxuICAgICAgICAgICAgb2YodGhpcy5fY2FjaGVkX3RyYWNraW5nKSxcclxuICAgICAgICAgICAgdGhpcy5odHRwXHJcbiAgICAgICAgICAgICAgICAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZVRyYWNraW5nQ29kZT4+KFxyXG4gICAgICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1jaGVja291dC10cmFja2luZy5waHBgXHJcbiAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZWRfdHJhY2tpbmcgPSByZXNwb25zZS5yZWNvcmRzLnRyYWNraW5nO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLnJlY29yZHMudHJhY2tpbmc7XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIClcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSW5pdGlhdGVzIGNoZWNrb3V0IG9mIHRoZSBjYXJ0IGl0ZW1zXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHR5cGUgVGhlIGNhcnQgdHlwZSB0aGF0IG5lZWRzIHRvIGJlIGNoZWNrZWQgb3V0XHJcbiAgICAgKiBAcGFyYW0gYWRkcmVzc2VzX2lkIFRoZSBJRCBvZiB0aGUgZGVsaXZlcnkgYWRkcmVzc1xyXG4gICAgICogQHBhcmFtIHNoaXBwaW5nX2lkIFRoZSBJRCBvZiB0aGUgc2hpcHBpbmcgbWV0aG9kXHJcbiAgICAgKiBAcGFyYW0gcGF5bWVudF9tZXRob2RfaWQgVGhlIElEIG9mIHRoZSBzZWxlY3RlZCBwYXltZW50IG1ldGhvZFxyXG4gICAgICogQHBhcmFtIGxvY2F0aW9uX2lkIFRoZSBJRCBvZiB0aGUgc2VsZWN0ZWQgYnJhbmNoIGZyb20gd2l0aCBzaGlwcGluZyBuZWVkcyB0byBiZSBjYWxjdWxhdGVkXHJcbiAgICAgKiBAcGFyYW0gY29tbWVudHMgQWRkaXRpb25hbCBjb21tZW50cyBvbiB0aGUgY2FydFxyXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggdGhlIHRyYW5zYWN0aW9uIElEXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjaGVja291dChcclxuICAgICAgICB0eXBlOiBFc29sdmVUcmFuc2FjdGlvblR5cGUsXHJcbiAgICAgICAgYWRkcmVzc2VzX2lkOiBudW1iZXIsXHJcbiAgICAgICAgc2hpcHBpbmdfaWQ6IG51bWJlcixcclxuICAgICAgICBwYXltZW50X21ldGhvZF9pZCA9IDAsXHJcbiAgICAgICAgbG9jYXRpb25faWQgPSAwLFxyXG4gICAgICAgIGNvbW1lbnRzID0gJydcclxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlQ2hlY2tvdXRSZXN1bHQ+IHtcclxuICAgICAgICBjb25zdCBib2R5ID0ge1xyXG4gICAgICAgICAgICB0eXBlLFxyXG4gICAgICAgICAgICBhZGRyZXNzZXNfaWQsXHJcbiAgICAgICAgICAgIHNoaXBwaW5nX2lkLFxyXG4gICAgICAgICAgICBwYXltZW50X21ldGhvZF9pZCxcclxuICAgICAgICAgICAgbG9jYXRpb25faWQsXHJcbiAgICAgICAgICAgIGNvbW1lbnRzLFxyXG4gICAgICAgICAgICB0cmFja2luZzogMFxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmdldFRyYWNraW5nQ29kZSgpLnBpcGUoXHJcbiAgICAgICAgICAgIHN3aXRjaE1hcCgodHJhY2tpbmcpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh0cmFja2luZyA8PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgdHJhY2tpbmc7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgYm9keS50cmFja2luZyA9IHRyYWNraW5nO1xyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgICAgICAgICAucG9zdDxFc29sdmVTZXRSZXNwb25zZTxFc29sdmVDaGVja291dFJlc3BvbnNlPj4oXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NldC1jaGVja291dC5waHBgLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib2R5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD11dGYtODsnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keSdcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwKChodHRwX3Jlc3BvbnNlKSA9PiB0aGlzLnJlc3BvbnNlSGFuZGxlci52YWxpZGF0ZVNpbmdsZUh0dHBSZXNwb25zZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0dHBfcmVzcG9uc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZWRfdHJhY2tpbmcgPSAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEVzb2x2ZUNoZWNrb3V0UmVzdWx0KHJlc3BvbnNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgKSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yUmVzOiBIdHRwRXJyb3JSZXNwb25zZSB8IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZXJyb3JIYW5kbGVyLmhhbmRsZUh0dHBQb3N0RXJyb3IoJ3NldC1jaGVja291dCcsIGVycm9yUmVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBQcm9jZXNzZXMgdGhlIGVTb2x2ZSB0cmVlIHJlY29yZHNcclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gY2FydF9pdGVtX3JlY29yZHMgUmVjb3JkcyB0byBwcm9jZXNzXHJcbiAgICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBwcm9jZXNzZWQgY2FydCBpdGVtc1xyXG4gICAgICovXHJcbiAgICBwcml2YXRlIHByb2Nlc3NDYXJ0KGNhcnRfaXRlbV9yZWNvcmRzOiBFc29sdmVDYXJ0SXRlbVJlY29yZFtdKTogRXNvbHZlQ2FydCB7XHJcbiAgICAgICAgY29uc3QgY2FydF9pdGVtczogRXNvbHZlQ2FydEl0ZW1bXSA9IFtdO1xyXG5cclxuICAgICAgICBpZiAoY2FydF9pdGVtX3JlY29yZHMpIHtcclxuICAgICAgICAgICAgZm9yIChjb25zdCBjYXJ0X2l0ZW1fcmVjb3JkIG9mIGNhcnRfaXRlbV9yZWNvcmRzKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBjYXJ0X3N0b2NrX2l0ZW0gPSBuZXcgRXNvbHZlQ2FydFN0b2NrSXRlbShcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLmNvZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgY2FydF9pdGVtX3JlY29yZC5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgIGNhcnRfaXRlbV9yZWNvcmQuc2VmX25hbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgY2FydF9pdGVtX3JlY29yZC5kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLmlzX2FjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICArY2FydF9pdGVtX3JlY29yZC5pdGVtc19pbl9wYWNrLFxyXG4gICAgICAgICAgICAgICAgICAgIGNhcnRfaXRlbV9yZWNvcmQuZGVsaXZlcnlfY2F0ZWdvcnksXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQub25oYW5kLFxyXG4gICAgICAgICAgICAgICAgICAgIGNhcnRfaXRlbV9yZWNvcmQuaW1hZ2VfbmFtZVxyXG4gICAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1zLnB1c2gobmV3IEVzb2x2ZUNhcnRJdGVtKFxyXG4gICAgICAgICAgICAgICAgICAgICtjYXJ0X2l0ZW1fcmVjb3JkLmlkLFxyXG4gICAgICAgICAgICAgICAgICAgIGNhcnRfc3RvY2tfaXRlbSxcclxuICAgICAgICAgICAgICAgICAgICArY2FydF9pdGVtX3JlY29yZC5xdHksXHJcbiAgICAgICAgICAgICAgICAgICAgY2FydF9pdGVtX3JlY29yZC5kZWxpdmVyeV9jYXRlZ29yeSxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLnR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQucHJpY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQuZGlzY291bnQsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQuZGlzY291bnRfaW50ZXJ2YWwsXHJcbiAgICAgICAgICAgICAgICAgICAgY2FydF9pdGVtX3JlY29yZC52YXRfcmF0ZSxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLmFsbG93X3F1b3RlcyxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLmFsbG93X29yZGVycyxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLm11c3RfY29sbGVjdCxcclxuICAgICAgICAgICAgICAgICAgICBjYXJ0X2l0ZW1fcmVjb3JkLnJlcXVlc3RlZF9hc3NlbWJseSxcclxuICAgICAgICAgICAgICAgICAgICArY2FydF9pdGVtX3JlY29yZC5wcmljZV9pbmNsLFxyXG4gICAgICAgICAgICAgICAgICAgICtjYXJ0X2l0ZW1fcmVjb3JkLmRpc2NvdW50X3ByaWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICtjYXJ0X2l0ZW1fcmVjb3JkLmRpc2NvdW50X3ByaWNlX2luY2wsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQuZGlzY291bnRfdG90YWwsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQudmF0X3RvdGFsLFxyXG4gICAgICAgICAgICAgICAgICAgICtjYXJ0X2l0ZW1fcmVjb3JkLmxpbmVfdG90YWwsXHJcbiAgICAgICAgICAgICAgICAgICAgK2NhcnRfaXRlbV9yZWNvcmQubGluZV90b3RhbF9pbmNsXHJcbiAgICAgICAgICAgICAgICApKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGNhcnRfaXRlbXM7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBQcm9jZXNzZXMgdGhlIGVTb2x2ZSBjYXJ0IHRvdGFsc1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSByZWNvcmQgRGF0YSB0byBwcm9jZXNzXHJcbiAgICAgKiBAcmV0dXJucyBQcm9jZXNzZWQgY2FydCB0b3RhbHNcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBwcm9jZXNzQ2FydFRvdGFscyhyZWNvcmQ6IEVzb2x2ZUNhcnRUb3RhbHNSZWNvcmQpOiBFc29sdmVDYXJ0VG90YWxzIHtcclxuICAgICAgICBjb25zdCBjYXJ0X3RvdGFscyA9IG5ldyBFc29sdmVDYXJ0VG90YWxzKFxyXG4gICAgICAgICAgICArcmVjb3JkLnJlY29yZHMsXHJcbiAgICAgICAgICAgICtyZWNvcmQuaXRlbXMsXHJcbiAgICAgICAgICAgICtyZWNvcmQudG90YWwsXHJcbiAgICAgICAgICAgICtyZWNvcmQudmF0LFxyXG4gICAgICAgICAgICArcmVjb3JkLmRpc2NvdW50XHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGNhcnRfdG90YWxzO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -25,15 +25,22 @@ export class EsolveLocationsService {
25
25
  }));
26
26
  }
27
27
  /**
28
- * Retrieves a list of stock locations
28
+ * Retrieves a list of stock locations using the address_id as parameter or the latitude and longitude.
29
+ * Set the addresses_id to 0 and the gps coordinates in order to retrieve the locations list when the address isn't
30
+ * yet saved.
29
31
  *
32
+ * @param addresses_id if supplied, the address will be looked up and the latitude and longitude on the address will be used.
33
+ * @param latitude if supplied and address_id > 0, the value is ignored.
34
+ * @param longitude if supplied and address_id > 0, the value is ignored.
30
35
  * @returns An `Observable` with an array of stock locations
31
36
  */
32
- getStockLocationsGeo(addresses_id = 0) {
37
+ getStockLocationsGeo(addresses_id = 0, latitude = 0, longitude = 0) {
33
38
  return this.http
34
39
  .get(`${this.config.api_url}/get-locations-geo.php`, {
35
40
  params: {
36
41
  addresses_id,
42
+ latitude,
43
+ longitude
37
44
  },
38
45
  })
39
46
  .pipe(map((response) => {
@@ -70,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
70
77
  type: Inject,
71
78
  args: [ESOLVE_CONNECT_CONFIG]
72
79
  }] }, { type: i1.HttpClient }]; } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWxvY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi9sb2NhdGlvbnMvZXNvbHZlLWxvY2F0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUcxRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQU16RCxNQUFNLE9BQU8sc0JBQXNCO0lBQy9CLFlBQzJDLE1BQTJCLEVBQzFELElBQWdCO1FBRGUsV0FBTSxHQUFOLE1BQU0sQ0FBcUI7UUFDMUQsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN4QixDQUFDO0lBRUw7Ozs7T0FJRztJQUNJLGlCQUFpQjtRQUNwQixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsR0FBRyxDQUNBLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLG9CQUFvQixDQUM3QzthQUNBLElBQUksQ0FDRCxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNiLElBQUksUUFBUSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUU7Z0JBQ2hDLE1BQU0sUUFBUSxDQUFDO2FBQ2xCO1lBRUQsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDVixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLG9CQUFvQixDQUFDLGVBQXVCLENBQUM7UUFDaEQsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNYLEdBQUcsQ0FDQSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyx3QkFBd0IsRUFDOUM7WUFDSSxNQUFNLEVBQUU7Z0JBQ0wsWUFBWTthQUNkO1NBQ0osQ0FDSjthQUNBLElBQUksQ0FDRCxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNiLElBQUksUUFBUSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUU7Z0JBQ2hDLE1BQU0sUUFBUSxDQUFDO2FBQ2xCO1lBRUQsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDVixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxxQkFBcUIsQ0FBQyxPQUErQjtRQUN6RCxNQUFNLGVBQWUsR0FBcUIsRUFBRSxDQUFDO1FBRTdDLElBQUksT0FBTyxFQUFFO1lBQ1QsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7Z0JBQzFCLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQzthQUNwRDtTQUNKO1FBRUQsT0FBTyxlQUFlLENBQUM7SUFDM0IsQ0FBQzs7b0hBckVRLHNCQUFzQixrQkFFbkIscUJBQXFCO3dIQUZ4QixzQkFBc0IsY0FGbkIsTUFBTTs0RkFFVCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFHUSxNQUFNOzJCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVDb25uZWN0Q29uZmlnIH0gZnJvbSAnLi4vZXNvbHZlLWNvbm5lY3QuY29uZmlnJztcclxuaW1wb3J0IHsgRVNPTFZFX0NPTk5FQ1RfQ09ORklHIH0gZnJvbSAnLi4vZXNvbHZlLWNvbm5lY3QtY29uZmlnLmNvbnN0YW50JztcclxuaW1wb3J0IHsgRXNvbHZlR2V0UmVzcG9uc2UgfSBmcm9tICcuLi9zaGFyZWQvcmVzcG9uc2UnO1xyXG5cclxuaW1wb3J0IHsgRXNvbHZlTG9jYXRpb24gfSBmcm9tICcuL2Vzb2x2ZS1sb2NhdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IEVzb2x2ZUxvY2F0aW9uUmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtbG9jYXRpb24tcmVjb3JkLmludGVyZmFjZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVMb2NhdGlvbnNTZXJ2aWNlIHtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIEBJbmplY3QoRVNPTFZFX0NPTk5FQ1RfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogRXNvbHZlQ29ubmVjdENvbmZpZyxcclxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICApIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0cmlldmVzIGEgbGlzdCBvZiBzdG9jayBsb2NhdGlvbnNcclxuICAgICAqXHJcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCBhbiBhcnJheSBvZiBzdG9jayBsb2NhdGlvbnNcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldFN0b2NrTG9jYXRpb25zKCk6IE9ic2VydmFibGU8RXNvbHZlTG9jYXRpb25bXT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVMb2NhdGlvblJlY29yZFtdPj4oXHJcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtbG9jYXRpb25zLnBocGAsXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NTdG9ja0xvY2F0aW9ucyhyZXNwb25zZS5yZWNvcmRzKTtcclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0cmlldmVzIGEgbGlzdCBvZiBzdG9jayBsb2NhdGlvbnNcclxuICAgICAqXHJcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCBhbiBhcnJheSBvZiBzdG9jayBsb2NhdGlvbnNcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldFN0b2NrTG9jYXRpb25zR2VvKGFkZHJlc3Nlc19pZDogbnVtYmVyID0gMCk6IE9ic2VydmFibGU8RXNvbHZlTG9jYXRpb25bXT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVMb2NhdGlvblJlY29yZFtdPj4oXHJcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtbG9jYXRpb25zLWdlby5waHBgLFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgIGFkZHJlc3Nlc19pZCxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1N0b2NrTG9jYXRpb25zKHJlc3BvbnNlLnJlY29yZHMpO1xyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBQcm9jZXNzZXMgdGhlIGVTb2x2ZSBzdG9jayBsb2NhdGlvbiByZWNvcmRzLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSByZWNvcmRzIFJlY29yZHMgdG8gcHJvY2Vzc1xyXG4gICAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcHJvY2Vzc2VkIHN0b2NrIGxvY2F0aW9uIHJlY29yZHNcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBwcm9jZXNzU3RvY2tMb2NhdGlvbnMocmVjb3JkczogRXNvbHZlTG9jYXRpb25SZWNvcmRbXSk6IEVzb2x2ZUxvY2F0aW9uW10ge1xyXG4gICAgICAgIGNvbnN0IHN0b2NrX2xvY2F0aW9uczogRXNvbHZlTG9jYXRpb25bXSA9IFtdO1xyXG5cclxuICAgICAgICBpZiAocmVjb3Jkcykge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XHJcbiAgICAgICAgICAgICAgICBzdG9ja19sb2NhdGlvbnMucHVzaChuZXcgRXNvbHZlTG9jYXRpb24ocmVjb3JkKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBzdG9ja19sb2NhdGlvbnM7XHJcbiAgICB9XHJcbn1cclxuIl19
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWxvY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi9sb2NhdGlvbnMvZXNvbHZlLWxvY2F0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUcxRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQU16RCxNQUFNLE9BQU8sc0JBQXNCO0lBQy9CLFlBQzJDLE1BQTJCLEVBQzFELElBQWdCO1FBRGUsV0FBTSxHQUFOLE1BQU0sQ0FBcUI7UUFDMUQsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN4QixDQUFDO0lBRUw7Ozs7T0FJRztJQUNJLGlCQUFpQjtRQUNwQixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsR0FBRyxDQUNBLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLG9CQUFvQixDQUM3QzthQUNBLElBQUksQ0FDRCxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNiLElBQUksUUFBUSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUU7Z0JBQ2hDLE1BQU0sUUFBUSxDQUFDO2FBQ2xCO1lBRUQsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDVixDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0ksb0JBQW9CLENBQUMsZUFBdUIsQ0FBQyxFQUFFLFdBQW1CLENBQUMsRUFBRSxZQUFvQixDQUFDO1FBQzdGLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDWCxHQUFHLENBQ0EsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sd0JBQXdCLEVBQzlDO1lBQ0ksTUFBTSxFQUFFO2dCQUNMLFlBQVk7Z0JBQ1osUUFBUTtnQkFDUixTQUFTO2FBQ1g7U0FDSixDQUNKO2FBQ0EsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ2IsSUFBSSxRQUFRLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRTtnQkFDaEMsTUFBTSxRQUFRLENBQUM7YUFDbEI7WUFFRCxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEQsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNWLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNLLHFCQUFxQixDQUFDLE9BQStCO1FBQ3pELE1BQU0sZUFBZSxHQUFxQixFQUFFLENBQUM7UUFFN0MsSUFBSSxPQUFPLEVBQUU7WUFDVCxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtnQkFDMUIsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2FBQ3BEO1NBQ0o7UUFFRCxPQUFPLGVBQWUsQ0FBQztJQUMzQixDQUFDOztvSEE1RVEsc0JBQXNCLGtCQUVuQixxQkFBcUI7d0hBRnhCLHNCQUFzQixjQUZuQixNQUFNOzRGQUVULHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQUdRLE1BQU07MkJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZUNvbm5lY3RDb25maWcgfSBmcm9tICcuLi9lc29sdmUtY29ubmVjdC5jb25maWcnO1xyXG5pbXBvcnQgeyBFU09MVkVfQ09OTkVDVF9DT05GSUcgfSBmcm9tICcuLi9lc29sdmUtY29ubmVjdC1jb25maWcuY29uc3RhbnQnO1xyXG5pbXBvcnQgeyBFc29sdmVHZXRSZXNwb25zZSB9IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZSc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVMb2NhdGlvbiB9IGZyb20gJy4vZXNvbHZlLWxvY2F0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgRXNvbHZlTG9jYXRpb25SZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS1sb2NhdGlvbi1yZWNvcmQuaW50ZXJmYWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVzb2x2ZUxvY2F0aW9uc1NlcnZpY2Uge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgQEluamVjdChFU09MVkVfQ09OTkVDVF9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBFc29sdmVDb25uZWN0Q29uZmlnLFxyXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgICkgeyB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIHN0b2NrIGxvY2F0aW9uc1xyXG4gICAgICpcclxuICAgICAqIEByZXR1cm5zIEFuIGBPYnNlcnZhYmxlYCB3aXRoIGFuIGFycmF5IG9mIHN0b2NrIGxvY2F0aW9uc1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0U3RvY2tMb2NhdGlvbnMoKTogT2JzZXJ2YWJsZTxFc29sdmVMb2NhdGlvbltdPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAgICAgICAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZUxvY2F0aW9uUmVjb3JkW10+PihcclxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1sb2NhdGlvbnMucGhwYCxcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1N0b2NrTG9jYXRpb25zKHJlc3BvbnNlLnJlY29yZHMpO1xyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIHN0b2NrIGxvY2F0aW9ucyB1c2luZyB0aGUgYWRkcmVzc19pZCBhcyBwYXJhbWV0ZXIgb3IgdGhlIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUuXHJcbiAgICAgKiBTZXQgdGhlIGFkZHJlc3Nlc19pZCB0byAwIGFuZCB0aGUgZ3BzIGNvb3JkaW5hdGVzIGluIG9yZGVyIHRvIHJldHJpZXZlIHRoZSBsb2NhdGlvbnMgbGlzdCB3aGVuIHRoZSBhZGRyZXNzIGlzbid0XHJcbiAgICAgKiB5ZXQgc2F2ZWQuXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIGFkZHJlc3Nlc19pZCBpZiBzdXBwbGllZCwgdGhlIGFkZHJlc3Mgd2lsbCBiZSBsb29rZWQgdXAgYW5kIHRoZSBsYXRpdHVkZSBhbmQgbG9uZ2l0dWRlIG9uIHRoZSBhZGRyZXNzIHdpbGwgYmUgdXNlZC5cclxuICAgICAqIEBwYXJhbSBsYXRpdHVkZSBpZiBzdXBwbGllZCBhbmQgYWRkcmVzc19pZCA+IDAsIHRoZSB2YWx1ZSBpcyBpZ25vcmVkLlxyXG4gICAgICogQHBhcmFtIGxvbmdpdHVkZSBpZiBzdXBwbGllZCBhbmQgYWRkcmVzc19pZCA+IDAsIHRoZSB2YWx1ZSBpcyBpZ25vcmVkLlxyXG4gICAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGVgIHdpdGggYW4gYXJyYXkgb2Ygc3RvY2sgbG9jYXRpb25zXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRTdG9ja0xvY2F0aW9uc0dlbyhhZGRyZXNzZXNfaWQ6IG51bWJlciA9IDAsIGxhdGl0dWRlOiBudW1iZXIgPSAwLCBsb25naXR1ZGU6IG51bWJlciA9IDApOiBPYnNlcnZhYmxlPEVzb2x2ZUxvY2F0aW9uW10+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlTG9jYXRpb25SZWNvcmRbXT4+KFxyXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LWxvY2F0aW9ucy1nZW8ucGhwYCxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzZXNfaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgbGF0aXR1ZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgbG9uZ2l0dWRlXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NTdG9ja0xvY2F0aW9ucyhyZXNwb25zZS5yZWNvcmRzKTtcclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUHJvY2Vzc2VzIHRoZSBlU29sdmUgc3RvY2sgbG9jYXRpb24gcmVjb3Jkcy5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gcmVjb3JkcyBSZWNvcmRzIHRvIHByb2Nlc3NcclxuICAgICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHByb2Nlc3NlZCBzdG9jayBsb2NhdGlvbiByZWNvcmRzXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgcHJvY2Vzc1N0b2NrTG9jYXRpb25zKHJlY29yZHM6IEVzb2x2ZUxvY2F0aW9uUmVjb3JkW10pOiBFc29sdmVMb2NhdGlvbltdIHtcclxuICAgICAgICBjb25zdCBzdG9ja19sb2NhdGlvbnM6IEVzb2x2ZUxvY2F0aW9uW10gPSBbXTtcclxuXHJcbiAgICAgICAgaWYgKHJlY29yZHMpIHtcclxuICAgICAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgcmVjb3Jkcykge1xyXG4gICAgICAgICAgICAgICAgc3RvY2tfbG9jYXRpb25zLnB1c2gobmV3IEVzb2x2ZUxvY2F0aW9uKHJlY29yZCkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gc3RvY2tfbG9jYXRpb25zO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -28,7 +28,7 @@ NgEsolveConnectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", v
28
28
  HttpClientModule] });
29
29
  NgEsolveConnectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NgEsolveConnectModule, providers: [CookieService], imports: [[
30
30
  CommonModule,
31
- HttpClientModule
31
+ HttpClientModule,
32
32
  ]] });
33
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NgEsolveConnectModule, decorators: [{
34
34
  type: NgModule,
@@ -36,10 +36,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
36
36
  declarations: [],
37
37
  imports: [
38
38
  CommonModule,
39
- HttpClientModule
39
+ HttpClientModule,
40
40
  ],
41
41
  providers: [CookieService],
42
42
  exports: []
43
43
  }]
44
44
  }] });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctZXNvbHZlLWNvbm5lY3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi9uZy1lc29sdmUtY29ubmVjdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTNFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUduRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV6RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7QUFXdEYsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQTJCO1FBQ3RDLE9BQU87WUFDSCxRQUFRLEVBQUUscUJBQXFCO1lBQy9CLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUscUJBQXFCO29CQUM5QixRQUFRLEVBQUUsTUFBTTtpQkFDbkI7Z0JBQ0Q7b0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsS0FBSyxFQUFFLElBQUk7aUJBQ2Q7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDOzttSEFoQlEscUJBQXFCO29IQUFyQixxQkFBcUIsWUFOMUIsWUFBWTtRQUNaLGdCQUFnQjtvSEFLWCxxQkFBcUIsYUFIbkIsQ0FBQyxhQUFhLENBQUMsWUFKakI7WUFDTCxZQUFZO1lBQ1osZ0JBQWdCO1NBQ25COzRGQUlRLHFCQUFxQjtrQkFUakMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osZ0JBQWdCO3FCQUNuQjtvQkFDRCxTQUFTLEVBQUUsQ0FBQyxhQUFhLENBQUM7b0JBQzFCLE9BQU8sRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSwgSFRUUF9JTlRFUkNFUFRPUlMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnbmd4LWNvb2tpZS1zZXJ2aWNlJztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZUNvbm5lY3RDb25maWcgfSBmcm9tICcuL2Vzb2x2ZS1jb25uZWN0LmNvbmZpZyc7XHJcbmltcG9ydCB7IEVTT0xWRV9DT05ORUNUX0NPTkZJRyB9IGZyb20gJy4vZXNvbHZlLWNvbm5lY3QtY29uZmlnLmNvbnN0YW50JztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZUF1dGhJbnRlcmNlcHRvclNlcnZpY2UgfSBmcm9tICcuL2F1dGgvZXNvbHZlLWF1dGgtaW50ZXJjZXB0b3Iuc2VydmljZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbXSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgSHR0cENsaWVudE1vZHVsZVxyXG4gICAgXSxcclxuICAgIHByb3ZpZGVyczogW0Nvb2tpZVNlcnZpY2VdLFxyXG4gICAgZXhwb3J0czogW11cclxufSlcclxuZXhwb3J0IGNsYXNzIE5nRXNvbHZlQ29ubmVjdE1vZHVsZSB7XHJcbiAgICBzdGF0aWMgZm9yUm9vdChjb25maWc6IEVzb2x2ZUNvbm5lY3RDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5nRXNvbHZlQ29ubmVjdE1vZHVsZT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIG5nTW9kdWxlOiBOZ0Vzb2x2ZUNvbm5lY3RNb2R1bGUsXHJcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEVTT0xWRV9DT05ORUNUX0NPTkZJRyxcclxuICAgICAgICAgICAgICAgICAgICB1c2VWYWx1ZTogY29uZmlnXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZUNsYXNzOiBFc29sdmVBdXRoSW50ZXJjZXB0b3JTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctZXNvbHZlLWNvbm5lY3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi9uZy1lc29sdmUtY29ubmVjdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTNFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUduRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV6RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7QUFXdEYsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQTJCO1FBQ3RDLE9BQU87WUFDSCxRQUFRLEVBQUUscUJBQXFCO1lBQy9CLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUscUJBQXFCO29CQUM5QixRQUFRLEVBQUUsTUFBTTtpQkFDbkI7Z0JBQ0Q7b0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsS0FBSyxFQUFFLElBQUk7aUJBQ2Q7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDOzttSEFoQlEscUJBQXFCO29IQUFyQixxQkFBcUIsWUFOMUIsWUFBWTtRQUNaLGdCQUFnQjtvSEFLWCxxQkFBcUIsYUFIbkIsQ0FBQyxhQUFhLENBQUMsWUFKakI7WUFDTCxZQUFZO1lBQ1osZ0JBQWdCO1NBQ25COzRGQUlRLHFCQUFxQjtrQkFUakMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osZ0JBQWdCO3FCQUNuQjtvQkFDRCxTQUFTLEVBQUUsQ0FBQyxhQUFhLENBQUM7b0JBQzFCLE9BQU8sRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSwgSFRUUF9JTlRFUkNFUFRPUlMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnbmd4LWNvb2tpZS1zZXJ2aWNlJztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZUNvbm5lY3RDb25maWcgfSBmcm9tICcuL2Vzb2x2ZS1jb25uZWN0LmNvbmZpZyc7XHJcbmltcG9ydCB7IEVTT0xWRV9DT05ORUNUX0NPTkZJRyB9IGZyb20gJy4vZXNvbHZlLWNvbm5lY3QtY29uZmlnLmNvbnN0YW50JztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZUF1dGhJbnRlcmNlcHRvclNlcnZpY2UgfSBmcm9tICcuL2F1dGgvZXNvbHZlLWF1dGgtaW50ZXJjZXB0b3Iuc2VydmljZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbXSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgSHR0cENsaWVudE1vZHVsZSxcclxuICAgIF0sXHJcbiAgICBwcm92aWRlcnM6IFtDb29raWVTZXJ2aWNlXSxcclxuICAgIGV4cG9ydHM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOZ0Vzb2x2ZUNvbm5lY3RNb2R1bGUge1xyXG4gICAgc3RhdGljIGZvclJvb3QoY29uZmlnOiBFc29sdmVDb25uZWN0Q29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ0Vzb2x2ZUNvbm5lY3RNb2R1bGU+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuZ01vZHVsZTogTmdFc29sdmVDb25uZWN0TW9kdWxlLFxyXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBFU09MVkVfQ09OTkVDVF9DT05GSUcsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNlVmFsdWU6IGNvbmZpZ1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUyxcclxuICAgICAgICAgICAgICAgICAgICB1c2VDbGFzczogRXNvbHZlQXV0aEludGVyY2VwdG9yU2VydmljZSxcclxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBdXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -50,6 +50,14 @@ export class EsolveStockItemBase {
50
50
  * Orderable state
51
51
  */
52
52
  this.allow_orders = true;
53
+ /**
54
+ * Item must be collected, not delivery possible.
55
+ */
56
+ this.must_collect = false;
57
+ /**
58
+ * Item needs to be assembled after purchase
59
+ */
60
+ this.requires_assembly = false;
53
61
  /**
54
62
  * Number of stock available
55
63
  */
@@ -244,4 +252,4 @@ export class EsolveStockItemBase {
244
252
  return '';
245
253
  }
246
254
  }
247
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN0b2NrLWl0ZW0tYmFzZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvc3RvY2svY2xhc3Nlcy9lc29sdmUtc3RvY2staXRlbS1iYXNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBb0IsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFJM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXZFLE1BQU0sT0FBTyxtQkFBbUI7SUEwTDVCLFlBQVksU0FBNEMsRUFBRTtRQXpMMUQ7O1dBRUc7UUFDSSxPQUFFLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCOztXQUVHO1FBQ0ksU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUN6Qjs7V0FFRztRQUNJLFNBQUksR0FBVyxFQUFFLENBQUM7UUFDekI7O1dBRUc7UUFDSSxhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQzdCOztXQUVHO1FBQ0ksZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDaEM7O1dBRUc7UUFDSSx5QkFBb0IsR0FB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SUFBSSxhQUFhLENBQ2hDLFNBQVMsRUFDVCxJQUFJLENBQUMsV0FBVyxFQUNoQixZQUFZLENBQ2YsQ0FBQztJQUNOLENBQUM7SUF6TEQ7O09BRUc7SUFDSCxJQUFXLGNBQWM7UUFDckIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsbUJBQW1CO1FBQzFCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLGVBQWU7UUFDdEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsYUFBYTtRQUNwQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxrQkFBa0I7UUFDekIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDaEIsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQXNKTSxZQUFZLENBQUMsVUFBZ0M7UUFDaEQsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLEVBQUUsRUFBRTtZQUN4QixPQUFPLGlCQUFpQixVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQzNEO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVDdXN0b21GaWVsZHMsIEVzb2x2ZUdlbmVyaWNDdXN0b21GaWVsZHMgfSBmcm9tICcuLi8uLi9zaGFyZWQvY3VzdG9tLWZpZWxkcyc7XHJcbmltcG9ydCB7IEVzb2x2ZVNlb0RldGFpbHMsIEVzb2x2ZVNlb0luZm8gfSBmcm9tICcuLi8uLi9zaGFyZWQvc2VvJztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZUNhdGVnb3J5VHJlZUl0ZW0gfSBmcm9tICcuLi8uLi9jYXRlZ29yeS10cmVlJztcclxuaW1wb3J0IHsgRXNvbHZlTWFudWZhY3R1cmVyIH0gZnJvbSAnLi4vLi4vbWFudWZhY3R1cmVycyc7XHJcbmltcG9ydCB7IEVzb2x2ZVJhbmdlIH0gZnJvbSAnLi4vLi4vcmFuZ2VzJztcclxuaW1wb3J0IHsgRXNvbHZlVGFnIH0gZnJvbSAnLi4vLi4vdGFncyc7XHJcbmltcG9ydCB7IEVzb2x2ZVRvcGljIH0gZnJvbSAnLi4vLi4vdG9waWNzJztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZVN0b2NrSW1hZ2VTaXplLCBFc29sdmVTdG9ja1VuaXRPZk1lYXN1cmUgfSBmcm9tICcuLi90eXBlcyc7XHJcbmltcG9ydCB7IEVzb2x2ZVN0b2NrQmFzZVJlY29yZCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBFc29sdmVTdG9ja0JhZGdlIH0gZnJvbSAnLi9lc29sdmUtc3RvY2stYmFkZ2UubW9kZWwnO1xyXG5pbXBvcnQgeyBFc29sdmVTdG9ja1ByaWNlIH0gZnJvbSAnLi9lc29sdmUtc3RvY2stcHJpY2UubW9kZWwnO1xyXG5pbXBvcnQgeyBFc29sdmVDb2xvdXIgfSBmcm9tICcuL2Vzb2x2ZS1jb2xvdXIubW9kZWwnO1xyXG5pbXBvcnQgeyBFc29sdmVTdG9ja0xlYWRUaW1lcyB9IGZyb20gJy4vZXNvbHZlLXN0b2NrLWxlYWQtdGltZXMubW9kZWwnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEVzb2x2ZVN0b2NrSXRlbUJhc2U8VCA9IEVzb2x2ZUdlbmVyaWNDdXN0b21GaWVsZHM+IGltcGxlbWVudHMgRXNvbHZlU2VvRGV0YWlscyB7XHJcbiAgICAvKipcclxuICAgICAqIGVTb2x2ZSBHZW5lcmF0ZWQgSURcclxuICAgICAqL1xyXG4gICAgcHVibGljIGlkOiBudW1iZXIgPSAwO1xyXG4gICAgLyoqXHJcbiAgICAgKiBDb2RlIGlkZW50aWZ5aW5nIHRoZSBzdG9jayBpdGVtXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjb2RlOiBzdHJpbmcgPSAnJztcclxuICAgIC8qKlxyXG4gICAgICogTmFtZSBvZiB0aGUgc3RvY2sgaXRlbVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nID0gJyc7XHJcbiAgICAvKipcclxuICAgICAqIFNlYXJjaCBlbmdpbmUgZnJpZW5kbHkgbmFtZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc2VmX25hbWU6IHN0cmluZyA9ICcnO1xyXG4gICAgLyoqXHJcbiAgICAgKiBTaG9ydCBkZXNjcmlwdGlvbiBvZiBzdG9jayBpdGVtXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBkZXNjcmlwdGlvbjogc3RyaW5nID0gJyc7XHJcbiAgICAvKipcclxuICAgICAqIEZ1bGwgZGVzY3JpcHRpb24gb2Ygc3RvY2sgaXRlbVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZXh0ZW5kZWRfZGVzY3JpcHRpb246IHN0cmluZyA9ICcnO1xyXG4gICAgLyoqXHJcbiAgICAgKiBBY3RpdmUgc3RhdGVcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgLyoqXHJcbiAgICAgKiBGZWF0dXJlZCBzdGF0ZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZmVhdHVyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIC8qKlxyXG4gICAgICogUXVvdGFibGUgc3RhdGVcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFsbG93X3F1b3RlczogYm9vbGVhbiA9IHRydWU7XHJcbiAgICAvKipcclxuICAgICAqIE9yZGVyYWJsZSBzdGF0ZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWxsb3dfb3JkZXJzOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIC8qKlxyXG4gICAgICogTnVtYmVyIG9mIHN0b2NrIGF2YWlsYWJsZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYW1vdW50X2luX3N0b2NrOiBudW1iZXIgPSAwO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUb3RhbCBpdGVtcyBsaW5rZWQgdG8gdGhlIGl0ZW0gYXMgYSByZWNpcGVcclxuICAgICAqL1xyXG4gICAgcHVibGljIHRvdGFsX3JlY2lwZV9pdGVtczogbnVtYmVyID0gMDtcclxuICAgIC8qKlxyXG4gICAgICogSGVpZ2h0IG1lYXN1cmVkIGluIG1ldGVycyAobSlcclxuICAgICAqL1xyXG4gICAgcHVibGljIGhlaWdodDogbnVtYmVyID0gMDtcclxuICAgIC8qKlxyXG4gICAgICogV2lkdGggbWVhc3VyZWQgaW4gbWV0ZXJzIChtKVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgd2lkdGg6IG51bWJlciA9IDA7XHJcbiAgICAvKipcclxuICAgICAqIExlbmd0aCAvIGRlcHRoIG1lYXN1cmVkIGluIG1ldGVycyAobSlcclxuICAgICAqL1xyXG4gICAgcHVibGljIGxlbmd0aDogbnVtYmVyID0gMDtcclxuICAgIC8qKlxyXG4gICAgICogV2VpZ2h0IG1lYXN1cmVkIGluIGtpbG9ncmFtcyAoa2cpXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyB3ZWlnaHQ6IG51bWJlciA9IDA7XHJcbiAgICAvKipcclxuICAgICAqIFVuaXRzIHVzZWQgdG8gbWVhc3VyZSB0aGUgcXVhbnRpdHlcclxuICAgICAqL1xyXG4gICAgcHVibGljIHVuaXRfb2ZfbWVhc3VyZTogRXNvbHZlU3RvY2tVbml0T2ZNZWFzdXJlID0gJ3VuaXQnO1xyXG4gICAgLyoqXHJcbiAgICAgKiBJRCBvZiBkZWZhdWx0IGNhdGVnb3J5IGxpbmtlZCB0byB0aGUgc3RvY2sgaXRlbVxyXG4gICAgICpcclxuICAgICAqIEBkZXByZWNhdGVkIFVzZSBgY2F0ZWdvcnkuZXNvbHZlX2lkYCBmaWVsZCBpbnN0ZWFkXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjYXRlZ29yeV9pZDogc3RyaW5nID0gJyc7XHJcbiAgICAvKipcclxuICAgICAqIERlZmF1bHQgbGlua2VkIGNhdGVnb3J5XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjYXRlZ29yeT86IEVzb2x2ZUNhdGVnb3J5VHJlZUl0ZW07XHJcbiAgICAvKipcclxuICAgICAqIElEIG9mIGRlZmF1bHQgc3ViY2F0ZWdvcnkgbGlua2VkIHRvIHRoZSBzdG9jayBpdGVtXHJcbiAgICAgKlxyXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIGBzdWJjYXRlZ29yeS5lc29sdmVfaWRgIGZpZWxkIGluc3RlYWRcclxuICAgICAqL1xyXG4gICAgcHVibGljIHN1YmNhdGVnb3J5X2lkOiBudW1iZXIgPSAwO1xyXG4gICAgLyoqXHJcbiAgICAgKiBEZWZhdWx0IGxpbmtlZCBzdWJjYXRlZ29yeVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3ViY2F0ZWdvcnk/OiBFc29sdmVDYXRlZ29yeVRyZWVJdGVtO1xyXG4gICAgLyoqXHJcbiAgICAgKiBJRCBvZiBsaW5rZWQgbWFudWZhY3R1cmVyXHJcbiAgICAgKlxyXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIGBtYW51ZmFjdHVyZXIuaWRgIGZpZWxkIGluc3RlYWRcclxuICAgICAqL1xyXG4gICAgcHVibGljIG1hbnVmYWN0dXJlcnNfaWQ6IG51bWJlciA9IDA7XHJcbiAgICAvKipcclxuICAgICAqIExpbmtlZCBtYW51ZmFjdHVyZXJcclxuICAgICAqL1xyXG4gICAgcHVibGljIG1hbnVmYWN0dXJlcj86IEVzb2x2ZU1hbnVmYWN0dXJlcjtcclxuICAgIC8qKlxyXG4gICAgICogSUQgb2YgbGlua2VkIHJhbmdlXHJcbiAgICAgKlxyXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIGByYW5nZS5pZGAgZmllbGQgaW5zdGVhZFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgcmFuZ2VzX2lkOiBudW1iZXIgPSAwO1xyXG4gICAgLyoqXHJcbiAgICAgKiBMaW5rZWQgcmFuZ2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIHJhbmdlPzogRXNvbHZlUmFuZ2U7XHJcbiAgICAvKipcclxuICAgICAqIERlZmF1bHQgcHJpY2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIHByaWNlOiBFc29sdmVTdG9ja1ByaWNlO1xyXG4gICAgLyoqXHJcbiAgICAgKiBTRU8gcGFnZSBkZXRhaWxzXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzZW9fZGV0YWlsczogRXNvbHZlU2VvSW5mbztcclxuICAgIC8qKlxyXG4gICAgICogTGlua2VkIHRhZ3NcclxuICAgICAqL1xyXG4gICAgcHVibGljIHRhZ3M6IEVzb2x2ZVRhZ1tdID0gW107XHJcbiAgICAvKipcclxuICAgICAqIExpbmtlZCB0b3BpY3NcclxuICAgICAqL1xyXG4gICAgcHVibGljIHRvcGljczogRXNvbHZlVG9waWNbXSA9IFtdO1xyXG4gICAgLyoqXHJcbiAgICAgKiBTdG9jayBiYWRnZXNcclxuICAgICAqL1xyXG4gICAgcHVibGljIGJhZGdlczogRXNvbHZlU3RvY2tCYWRnZVtdID0gW107XHJcbiAgICAvKipcclxuICAgICAqIFN0b2NrIGl0ZW0gY3VzdG9tIGZpZWxkcy5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGN1c3RvbV9maWVsZHM/OiBFc29sdmVDdXN0b21GaWVsZHM8VD47XHJcbiAgICAvKipcclxuICAgICAqIENvbG91cnNcclxuICAgICAqL1xyXG4gICAgcHVibGljIGNvbG91cnM6IEVzb2x2ZUNvbG91cltdID0gW107XHJcbiAgICAvKipcclxuICAgICAqIFN0b2NrIEl0ZW0gTGVhZCBUaW1lcyBmb3Igc3VwcGx5XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBsZWFkX3RpbWVzPzogRXNvbHZlU3RvY2tMZWFkVGltZXM7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBJbWFnZSBmaWxlbmFtZVxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGltYWdlX25hbWU6IHN0cmluZyA9ICcnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogUGF0aCB0byB0aW55IHN0b2NrIGltYWdlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXQgdGlueV9pbWFnZV9zcmMoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5nZXRJbWFnZVBhdGgoJ3RpbnknKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFBhdGggdG8gdGh1bWJuYWlsIHN0b2NrIGltYWdlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXQgdGh1bWJuYWlsX2ltYWdlX3NyYygpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmdldEltYWdlUGF0aCgndGh1bWInKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFBhdGggdG8gc21hbGwgc3RvY2sgaW1hZ2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldCBzbWFsbF9pbWFnZV9zcmMoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5nZXRJbWFnZVBhdGgoJ3NtYWxsJyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBQYXRoIHRvIGJpZyBzdG9jayBpbWFnZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0IGJpZ19pbWFnZV9zcmMoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5nZXRJbWFnZVBhdGgoJ2JpZycpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUGF0aCB0byBvcmlnaW5hbCBzdG9jayBpbWFnZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0IG9yaWdpbmFsX2ltYWdlX3NyYygpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmdldEltYWdlUGF0aCgnb3JpZ2luYWwnKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IGF2YWlsYWJsZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMuYW1vdW50X2luX3N0b2NrID4gMCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IocmVjb3JkOiBQYXJ0aWFsPEVzb2x2ZVN0b2NrQmFzZVJlY29yZDxUPj4gPSB7fSkge1xyXG4gICAgICAgIGxldCBzZW9fdGl0bGUgPSAnJztcclxuICAgICAgICBsZXQgc2VvX2tleXdvcmRzID0gJyc7XHJcbiAgICAgICAgbGV0IGJhc2VfcHJpY2UgPSAwO1xyXG4gICAgICAgIGxldCBiYXNlX3ByaWNlX3dpdGhfdGF4ID0gMDtcclxuICAgICAgICBsZXQgc2VsbF9wcmljZSA9IDA7XHJcbiAgICAgICAgbGV0IHNlbGxfcHJpY2Vfd2l0aF90YXggPSAwO1xyXG5cclxuICAgICAgICBpZiAocmVjb3JkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaWQgPSArKHJlY29yZC5pZCA/PyAwKTtcclxuICAgICAgICAgICAgdGhpcy5jb2RlID0gcmVjb3JkLmNvZGUgPz8gJyc7XHJcbiAgICAgICAgICAgIHRoaXMubmFtZSA9IHJlY29yZC5uYW1lID8/ICcnO1xyXG4gICAgICAgICAgICB0aGlzLnNlZl9uYW1lID0gcmVjb3JkLnNlZl9uYW1lID8/ICcnO1xyXG4gICAgICAgICAgICB0aGlzLmRlc2NyaXB0aW9uID0gcmVjb3JkLmRlc2NyaXB0aW9uID8/ICcnO1xyXG4gICAgICAgICAgICB0aGlzLmV4dGVuZGVkX2Rlc2NyaXB0aW9uID0gcmVjb3JkLmV4dGVuZGVkX2Rlc2NyaXB0aW9uID8/ICcnO1xyXG4gICAgICAgICAgICB0aGlzLmltYWdlX25hbWUgPSByZWNvcmQuaW1hZ2VfbmFtZSA/PyAnJztcclxuICAgICAgICAgICAgdGhpcy5jYXRlZ29yeV9pZCA9IHJlY29yZC5jYXRlZ29yeV9pZCA/PyAnJztcclxuICAgICAgICAgICAgdGhpcy5zdWJjYXRlZ29yeV9pZCA9ICsocmVjb3JkLnN1YmNhdGVnb3J5X2lkID8/IDApO1xyXG4gICAgICAgICAgICB0aGlzLm1hbnVmYWN0dXJlcnNfaWQgPSArKHJlY29yZC5tYW51ZmFjdHVyZXJzX2lkID8/IDApO1xyXG4gICAgICAgICAgICB0aGlzLnJhbmdlc19pZCA9ICsocmVjb3JkLnJhbmdlc19pZCA/PyAwKTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlID0gISErKHJlY29yZC5pc19hY3RpdmUgPz8gZmFsc2UpO1xyXG4gICAgICAgICAgICB0aGlzLmZlYXR1cmVkID0gISErKHJlY29yZC5pc19mZWF0dXJlZCA/PyBmYWxzZSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxsb3dfcXVvdGVzID0gKHJlY29yZC5hbGxvd19xdW90ZXMgPz8gdHJ1ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxsb3dfb3JkZXJzID0gKHJlY29yZC5hbGxvd19vcmRlcnMgPz8gdHJ1ZSk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLmFtb3VudF9pbl9zdG9jayA9ICsocmVjb3JkLm9uaGFuZCA/PyAwKTtcclxuICAgICAgICAgICAgdGhpcy50b3RhbF9yZWNpcGVfaXRlbXMgPSArKHJlY29yZC50b3RhbF9yZWNpcGVfaXRlbXMgPz8gMCk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLmhlaWdodCA9ICsocmVjb3JkLmhlaWdodCA/PyAwKTtcclxuICAgICAgICAgICAgdGhpcy53aWR0aCA9ICsocmVjb3JkLndpZHRoID8/IDApO1xyXG4gICAgICAgICAgICB0aGlzLmxlbmd0aCA9ICsocmVjb3JkLmxlbmd0aCA/PyAwKTtcclxuICAgICAgICAgICAgdGhpcy53ZWlnaHQgPSArKHJlY29yZC53ZWlnaHQgPz8gMCk7XHJcblxyXG4gICAgICAgICAgICBpZiAocmVjb3JkLnVuaXRfb2ZfbWVhc3VyZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy51bml0X29mX21lYXN1cmUgPSByZWNvcmQudW5pdF9vZl9tZWFzdXJlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBiYXNlX3ByaWNlID0gKyhyZWNvcmQucmVndWxhcl9zZWxscHJpY2UgPz8gMCk7XHJcbiAgICAgICAgICAgIGJhc2VfcHJpY2Vfd2l0aF90YXggPSArKHJlY29yZC5yZWd1bGFyX3NlbGxwcmljZV9pbmNsdXNpdmUgPz8gMCk7XHJcbiAgICAgICAgICAgIHNlbGxfcHJpY2UgPSArKHJlY29yZC5zZWxscHJpY2UgPz8gMCk7XHJcbiAgICAgICAgICAgIHNlbGxfcHJpY2Vfd2l0aF90YXggPSArKHJlY29yZC5zZWxscHJpY2VfaW5jbHVzaXZlID8/IDApO1xyXG5cclxuICAgICAgICAgICAgaWYgKChyZWNvcmQudGFncykgJiYgKHJlY29yZC50YWdzLmxlbmd0aCA+IDApKSB7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHRhZyBvZiByZWNvcmQudGFncykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGFncy5wdXNoKG5ldyBFc29sdmVUYWcodGFnKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICgocmVjb3JkLnRvcGljcykgJiYgKHJlY29yZC50b3BpY3MubGVuZ3RoID4gMCkpIHtcclxuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgdG9waWMgb2YgcmVjb3JkLnRvcGljcykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9waWNzLnB1c2gobmV3IEVzb2x2ZVRvcGljKHRvcGljKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICgocmVjb3JkLmJhZGdlcykgJiYgKHJlY29yZC5iYWRnZXMubGVuZ3RoID4gMCkpIHtcclxuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgYmFkZ2Ugb2YgcmVjb3JkLmJhZGdlcykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFkZ2VzLnB1c2gobmV3IEVzb2x2ZVN0b2NrQmFkZ2UoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICtiYWRnZS5pZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFkZ2UudGV4dCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFkZ2UuaWRlbnRpZmllcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFkZ2UuZm9udF9jb2xvdXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhZGdlLmJhZGdlX2NvbG91cixcclxuICAgICAgICAgICAgICAgICAgICAgICAgK2JhZGdlLnNvcnRfcHJpb3JpdHksXHJcbiAgICAgICAgICAgICAgICAgICAgKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChyZWNvcmQuY2F0ZWdvcnkpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2F0ZWdvcnkgPSBuZXcgRXNvbHZlQ2F0ZWdvcnlUcmVlSXRlbShcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkudHlwZSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LnBhcmVudF9pZCxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LnNlZl9kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuc2hvcnRfZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LnNvcnRfcHJpb3JpdHksXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuZGlzcGxheV9vbmx5LFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5jYXRlZ29yeS5pbWFnZSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuc2VvX3BhZ2VfdGl0bGUsXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LnNlb19rZXl3b3JkcyxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuc2VvX2Rlc2NyaXB0aW9uLFxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHJlY29yZC5zdWJjYXRlZ29yeSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJjYXRlZ29yeSA9IG5ldyBFc29sdmVDYXRlZ29yeVRyZWVJdGVtKFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS50eXBlLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5pZCxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkucGFyZW50X2lkLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkuc2VmX2Rlc2NyaXB0aW9uLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5zaG9ydF9kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkuc29ydF9wcmlvcml0eSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkuYWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5kaXNwbGF5X29ubHksXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLnN1YmNhdGVnb3J5LmltYWdlLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5zZW9fcGFnZV90aXRsZSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkuc2VvX2tleXdvcmRzLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5zZW9fZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAocmVjb3JkLm1hbnVmYWN0dXJlcikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tYW51ZmFjdHVyZXIgPSBuZXcgRXNvbHZlTWFudWZhY3R1cmVyKHJlY29yZC5tYW51ZmFjdHVyZXIpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAocmVjb3JkLnJhbmdlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJhbmdlID0gbmV3IEVzb2x2ZVJhbmdlKHJlY29yZC5yYW5nZSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChyZWNvcmQuY29sb3VycyAmJiByZWNvcmQuY29sb3Vycy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGNvbG91ciBvZiByZWNvcmQuY29sb3Vycykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29sb3Vycy5wdXNoKG5ldyBFc29sdmVDb2xvdXIoY29sb3VyKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChyZWNvcmQubGVhZF90aW1lcykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sZWFkX3RpbWVzID0gbmV3IEVzb2x2ZVN0b2NrTGVhZFRpbWVzKHJlY29yZC5sZWFkX3RpbWVzKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHJlY29yZC5jdXN0b21fZmllbGRzKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbV9maWVsZHMgPSByZWNvcmQuY3VzdG9tX2ZpZWxkcztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc2VvX3RpdGxlID0gcmVjb3JkLnNlb19wYWdlX3RpdGxlID8/ICcnO1xyXG4gICAgICAgICAgICBzZW9fa2V5d29yZHMgPSByZWNvcmQuc2VvX2tleXdvcmRzID8/ICcnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5wcmljZSA9IG5ldyBFc29sdmVTdG9ja1ByaWNlKFxyXG4gICAgICAgICAgICBiYXNlX3ByaWNlLFxyXG4gICAgICAgICAgICBiYXNlX3ByaWNlX3dpdGhfdGF4LFxyXG4gICAgICAgICAgICBzZWxsX3ByaWNlLFxyXG4gICAgICAgICAgICBzZWxsX3ByaWNlX3dpdGhfdGF4LFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGlmIChzZW9fdGl0bGUudHJpbSgpID09PSAnJykge1xyXG4gICAgICAgICAgICBzZW9fdGl0bGUgPSB0aGlzLm5hbWU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnNlb19kZXRhaWxzID0gbmV3IEVzb2x2ZVNlb0luZm8oXHJcbiAgICAgICAgICAgIHNlb190aXRsZSxcclxuICAgICAgICAgICAgdGhpcy5kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgc2VvX2tleXdvcmRzLFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEltYWdlUGF0aChpbWFnZV9zaXplOiBFc29sdmVTdG9ja0ltYWdlU2l6ZSk6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKHRoaXMuaW1hZ2VfbmFtZSAhPT0gJycpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGAvaW1hZ2VzL3N0b2NrLyR7aW1hZ2Vfc2l6ZX0vJHt0aGlzLmltYWdlX25hbWV9YDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxufVxyXG4iXX0=
255
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN0b2NrLWl0ZW0tYmFzZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvc3RvY2svY2xhc3Nlcy9lc29sdmUtc3RvY2staXRlbS1iYXNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBb0IsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFJM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXZFLE1BQU0sT0FBTyxtQkFBbUI7SUFrTTVCLFlBQVksU0FBNEMsRUFBRTtRQWpNMUQ7O1dBRUc7UUFDSSxPQUFFLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCOztXQUVHO1FBQ0ksU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUN6Qjs7V0FFRztRQUNJLFNBQUksR0FBVyxFQUFFLENBQUM7UUFDekI7O1dBRUc7UUFDSSxhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQzdCOztXQUVHO1FBQ0ksZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDaEM7O1dBRUc7UUFDSSx5QkFBb0IsR0FB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RUFBRSxFQUFFO1lBQ3pCLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ3pCO1FBRUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLGFBQWEsQ0FDaEMsU0FBUyxFQUNULElBQUksQ0FBQyxXQUFXLEVBQ2hCLFlBQVksQ0FDZixDQUFDO0lBQ04sQ0FBQztJQXpMRDs7T0FFRztJQUNILElBQVcsY0FBYztRQUNyQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxtQkFBbUI7UUFDMUIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsZUFBZTtRQUN0QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxhQUFhO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLGtCQUFrQjtRQUN6QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELElBQVcsU0FBUztRQUNoQixPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBc0pNLFlBQVksQ0FBQyxVQUFnQztRQUNoRCxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssRUFBRSxFQUFFO1lBQ3hCLE9BQU8saUJBQWlCLFVBQVUsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDM0Q7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVzb2x2ZUN1c3RvbUZpZWxkcywgRXNvbHZlR2VuZXJpY0N1c3RvbUZpZWxkcyB9IGZyb20gJy4uLy4uL3NoYXJlZC9jdXN0b20tZmllbGRzJztcclxuaW1wb3J0IHsgRXNvbHZlU2VvRGV0YWlscywgRXNvbHZlU2VvSW5mbyB9IGZyb20gJy4uLy4uL3NoYXJlZC9zZW8nO1xyXG5cclxuaW1wb3J0IHsgRXNvbHZlQ2F0ZWdvcnlUcmVlSXRlbSB9IGZyb20gJy4uLy4uL2NhdGVnb3J5LXRyZWUnO1xyXG5pbXBvcnQgeyBFc29sdmVNYW51ZmFjdHVyZXIgfSBmcm9tICcuLi8uLi9tYW51ZmFjdHVyZXJzJztcclxuaW1wb3J0IHsgRXNvbHZlUmFuZ2UgfSBmcm9tICcuLi8uLi9yYW5nZXMnO1xyXG5pbXBvcnQgeyBFc29sdmVUYWcgfSBmcm9tICcuLi8uLi90YWdzJztcclxuaW1wb3J0IHsgRXNvbHZlVG9waWMgfSBmcm9tICcuLi8uLi90b3BpY3MnO1xyXG5cclxuaW1wb3J0IHsgRXNvbHZlU3RvY2tJbWFnZVNpemUsIEVzb2x2ZVN0b2NrVW5pdE9mTWVhc3VyZSB9IGZyb20gJy4uL3R5cGVzJztcclxuaW1wb3J0IHsgRXNvbHZlU3RvY2tCYXNlUmVjb3JkIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEVzb2x2ZVN0b2NrQmFkZ2UgfSBmcm9tICcuL2Vzb2x2ZS1zdG9jay1iYWRnZS5tb2RlbCc7XHJcbmltcG9ydCB7IEVzb2x2ZVN0b2NrUHJpY2UgfSBmcm9tICcuL2Vzb2x2ZS1zdG9jay1wcmljZS5tb2RlbCc7XHJcbmltcG9ydCB7IEVzb2x2ZUNvbG91ciB9IGZyb20gJy4vZXNvbHZlLWNvbG91ci5tb2RlbCc7XHJcbmltcG9ydCB7IEVzb2x2ZVN0b2NrTGVhZFRpbWVzIH0gZnJvbSAnLi9lc29sdmUtc3RvY2stbGVhZC10aW1lcy5tb2RlbCc7XHJcblxyXG5leHBvcnQgY2xhc3MgRXNvbHZlU3RvY2tJdGVtQmFzZTxUID0gRXNvbHZlR2VuZXJpY0N1c3RvbUZpZWxkcz4gaW1wbGVtZW50cyBFc29sdmVTZW9EZXRhaWxzIHtcclxuICAgIC8qKlxyXG4gICAgICogZVNvbHZlIEdlbmVyYXRlZCBJRFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaWQ6IG51bWJlciA9IDA7XHJcbiAgICAvKipcclxuICAgICAqIENvZGUgaWRlbnRpZnlpbmcgdGhlIHN0b2NrIGl0ZW1cclxuICAgICAqL1xyXG4gICAgcHVibGljIGNvZGU6IHN0cmluZyA9ICcnO1xyXG4gICAgLyoqXHJcbiAgICAgKiBOYW1lIG9mIHRoZSBzdG9jayBpdGVtXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBuYW1lOiBzdHJpbmcgPSAnJztcclxuICAgIC8qKlxyXG4gICAgICogU2VhcmNoIGVuZ2luZSBmcmllbmRseSBuYW1lXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzZWZfbmFtZTogc3RyaW5nID0gJyc7XHJcbiAgICAvKipcclxuICAgICAqIFNob3J0IGRlc2NyaXB0aW9uIG9mIHN0b2NrIGl0ZW1cclxuICAgICAqL1xyXG4gICAgcHVibGljIGRlc2NyaXB0aW9uOiBzdHJpbmcgPSAnJztcclxuICAgIC8qKlxyXG4gICAgICogRnVsbCBkZXNjcmlwdGlvbiBvZiBzdG9jayBpdGVtXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBleHRlbmRlZF9kZXNjcmlwdGlvbjogc3RyaW5nID0gJyc7XHJcbiAgICAvKipcclxuICAgICAqIEFjdGl2ZSBzdGF0ZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWN0aXZlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICAvKipcclxuICAgICAqIEZlYXR1cmVkIHN0YXRlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBmZWF0dXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgLyoqXHJcbiAgICAgKiBRdW90YWJsZSBzdGF0ZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWxsb3dfcXVvdGVzOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIC8qKlxyXG4gICAgICogT3JkZXJhYmxlIHN0YXRlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhbGxvd19vcmRlcnM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgLyoqXHJcbiAgICAgKiBJdGVtIG11c3QgYmUgY29sbGVjdGVkLCBub3QgZGVsaXZlcnkgcG9zc2libGUuXHJcbiAgICAgKi9cclxuICAgICBwdWJsaWMgbXVzdF9jb2xsZWN0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICAvKipcclxuICAgICAqIEl0ZW0gbmVlZHMgdG8gYmUgYXNzZW1ibGVkIGFmdGVyIHB1cmNoYXNlXHJcbiAgICAgKi9cclxuICAgICBwdWJsaWMgcmVxdWlyZXNfYXNzZW1ibHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIC8qKlxyXG4gICAgICogTnVtYmVyIG9mIHN0b2NrIGF2YWlsYWJsZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYW1vdW50X2luX3N0b2NrOiBudW1iZXIgPSAwO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUb3RhbCBpdGVtcyBsaW5rZWQgdG8gdGhlIGl0ZW0gYXMgYSByZWNpcGVcclxuICAgICAqL1xyXG4gICAgcHVibGljIHRvdGFsX3JlY2lwZV9pdGVtczogbnVtYmVyID0gMDtcclxuICAgIC8qKlxyXG4gICAgICogSGVpZ2h0IG1lYXN1cmVkIGluIG1ldGVycyAobSlcclxuICAgICAqL1xyXG4gICAgcHVibGljIGhlaWdodDogbnVtYmVyID0gMDtcclxuICAgIC8qKlxyXG4gICAgICogV2lkdGggbWVhc3VyZWQgaW4gbWV0ZXJzIChtKVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgd2lkdGg6IG51bWJlciA9IDA7XHJcbiAgICAvKipcclxuICAgICAqIExlbmd0aCAvIGRlcHRoIG1lYXN1cmVkIGluIG1ldGVycyAobSlcclxuICAgICAqL1xyXG4gICAgcHVibGljIGxlbmd0aDogbnVtYmVyID0gMDtcclxuICAgIC8qKlxyXG4gICAgICogV2VpZ2h0IG1lYXN1cmVkIGluIGtpbG9ncmFtcyAoa2cpXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyB3ZWlnaHQ6IG51bWJlciA9IDA7XHJcbiAgICAvKipcclxuICAgICAqIFVuaXRzIHVzZWQgdG8gbWVhc3VyZSB0aGUgcXVhbnRpdHlcclxuICAgICAqL1xyXG4gICAgcHVibGljIHVuaXRfb2ZfbWVhc3VyZTogRXNvbHZlU3RvY2tVbml0T2ZNZWFzdXJlID0gJ3VuaXQnO1xyXG4gICAgLyoqXHJcbiAgICAgKiBJRCBvZiBkZWZhdWx0IGNhdGVnb3J5IGxpbmtlZCB0byB0aGUgc3RvY2sgaXRlbVxyXG4gICAgICpcclxuICAgICAqIEBkZXByZWNhdGVkIFVzZSBgY2F0ZWdvcnkuZXNvbHZlX2lkYCBmaWVsZCBpbnN0ZWFkXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjYXRlZ29yeV9pZDogc3RyaW5nID0gJyc7XHJcbiAgICAvKipcclxuICAgICAqIERlZmF1bHQgbGlua2VkIGNhdGVnb3J5XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjYXRlZ29yeT86IEVzb2x2ZUNhdGVnb3J5VHJlZUl0ZW07XHJcbiAgICAvKipcclxuICAgICAqIElEIG9mIGRlZmF1bHQgc3ViY2F0ZWdvcnkgbGlua2VkIHRvIHRoZSBzdG9jayBpdGVtXHJcbiAgICAgKlxyXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIGBzdWJjYXRlZ29yeS5lc29sdmVfaWRgIGZpZWxkIGluc3RlYWRcclxuICAgICAqL1xyXG4gICAgcHVibGljIHN1YmNhdGVnb3J5X2lkOiBudW1iZXIgPSAwO1xyXG4gICAgLyoqXHJcbiAgICAgKiBEZWZhdWx0IGxpbmtlZCBzdWJjYXRlZ29yeVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3ViY2F0ZWdvcnk/OiBFc29sdmVDYXRlZ29yeVRyZWVJdGVtO1xyXG4gICAgLyoqXHJcbiAgICAgKiBJRCBvZiBsaW5rZWQgbWFudWZhY3R1cmVyXHJcbiAgICAgKlxyXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIGBtYW51ZmFjdHVyZXIuaWRgIGZpZWxkIGluc3RlYWRcclxuICAgICAqL1xyXG4gICAgcHVibGljIG1hbnVmYWN0dXJlcnNfaWQ6IG51bWJlciA9IDA7XHJcbiAgICAvKipcclxuICAgICAqIExpbmtlZCBtYW51ZmFjdHVyZXJcclxuICAgICAqL1xyXG4gICAgcHVibGljIG1hbnVmYWN0dXJlcj86IEVzb2x2ZU1hbnVmYWN0dXJlcjtcclxuICAgIC8qKlxyXG4gICAgICogSUQgb2YgbGlua2VkIHJhbmdlXHJcbiAgICAgKlxyXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIGByYW5nZS5pZGAgZmllbGQgaW5zdGVhZFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgcmFuZ2VzX2lkOiBudW1iZXIgPSAwO1xyXG4gICAgLyoqXHJcbiAgICAgKiBMaW5rZWQgcmFuZ2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIHJhbmdlPzogRXNvbHZlUmFuZ2U7XHJcbiAgICAvKipcclxuICAgICAqIERlZmF1bHQgcHJpY2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIHByaWNlOiBFc29sdmVTdG9ja1ByaWNlO1xyXG4gICAgLyoqXHJcbiAgICAgKiBTRU8gcGFnZSBkZXRhaWxzXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzZW9fZGV0YWlsczogRXNvbHZlU2VvSW5mbztcclxuICAgIC8qKlxyXG4gICAgICogTGlua2VkIHRhZ3NcclxuICAgICAqL1xyXG4gICAgcHVibGljIHRhZ3M6IEVzb2x2ZVRhZ1tdID0gW107XHJcbiAgICAvKipcclxuICAgICAqIExpbmtlZCB0b3BpY3NcclxuICAgICAqL1xyXG4gICAgcHVibGljIHRvcGljczogRXNvbHZlVG9waWNbXSA9IFtdO1xyXG4gICAgLyoqXHJcbiAgICAgKiBTdG9jayBiYWRnZXNcclxuICAgICAqL1xyXG4gICAgcHVibGljIGJhZGdlczogRXNvbHZlU3RvY2tCYWRnZVtdID0gW107XHJcbiAgICAvKipcclxuICAgICAqIFN0b2NrIGl0ZW0gY3VzdG9tIGZpZWxkcy5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGN1c3RvbV9maWVsZHM/OiBFc29sdmVDdXN0b21GaWVsZHM8VD47XHJcbiAgICAvKipcclxuICAgICAqIENvbG91cnNcclxuICAgICAqL1xyXG4gICAgcHVibGljIGNvbG91cnM6IEVzb2x2ZUNvbG91cltdID0gW107XHJcbiAgICAvKipcclxuICAgICAqIFN0b2NrIEl0ZW0gTGVhZCBUaW1lcyBmb3Igc3VwcGx5XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBsZWFkX3RpbWVzPzogRXNvbHZlU3RvY2tMZWFkVGltZXM7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBJbWFnZSBmaWxlbmFtZVxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGltYWdlX25hbWU6IHN0cmluZyA9ICcnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogUGF0aCB0byB0aW55IHN0b2NrIGltYWdlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXQgdGlueV9pbWFnZV9zcmMoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5nZXRJbWFnZVBhdGgoJ3RpbnknKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFBhdGggdG8gdGh1bWJuYWlsIHN0b2NrIGltYWdlXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXQgdGh1bWJuYWlsX2ltYWdlX3NyYygpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmdldEltYWdlUGF0aCgndGh1bWInKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFBhdGggdG8gc21hbGwgc3RvY2sgaW1hZ2VcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldCBzbWFsbF9pbWFnZV9zcmMoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5nZXRJbWFnZVBhdGgoJ3NtYWxsJyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBQYXRoIHRvIGJpZyBzdG9jayBpbWFnZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0IGJpZ19pbWFnZV9zcmMoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5nZXRJbWFnZVBhdGgoJ2JpZycpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUGF0aCB0byBvcmlnaW5hbCBzdG9jayBpbWFnZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0IG9yaWdpbmFsX2ltYWdlX3NyYygpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmdldEltYWdlUGF0aCgnb3JpZ2luYWwnKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IGF2YWlsYWJsZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMuYW1vdW50X2luX3N0b2NrID4gMCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IocmVjb3JkOiBQYXJ0aWFsPEVzb2x2ZVN0b2NrQmFzZVJlY29yZDxUPj4gPSB7fSkge1xyXG4gICAgICAgIGxldCBzZW9fdGl0bGUgPSAnJztcclxuICAgICAgICBsZXQgc2VvX2tleXdvcmRzID0gJyc7XHJcbiAgICAgICAgbGV0IGJhc2VfcHJpY2UgPSAwO1xyXG4gICAgICAgIGxldCBiYXNlX3ByaWNlX3dpdGhfdGF4ID0gMDtcclxuICAgICAgICBsZXQgc2VsbF9wcmljZSA9IDA7XHJcbiAgICAgICAgbGV0IHNlbGxfcHJpY2Vfd2l0aF90YXggPSAwO1xyXG5cclxuICAgICAgICBpZiAocmVjb3JkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaWQgPSArKHJlY29yZC5pZCA/PyAwKTtcclxuICAgICAgICAgICAgdGhpcy5jb2RlID0gcmVjb3JkLmNvZGUgPz8gJyc7XHJcbiAgICAgICAgICAgIHRoaXMubmFtZSA9IHJlY29yZC5uYW1lID8/ICcnO1xyXG4gICAgICAgICAgICB0aGlzLnNlZl9uYW1lID0gcmVjb3JkLnNlZl9uYW1lID8/ICcnO1xyXG4gICAgICAgICAgICB0aGlzLmRlc2NyaXB0aW9uID0gcmVjb3JkLmRlc2NyaXB0aW9uID8/ICcnO1xyXG4gICAgICAgICAgICB0aGlzLmV4dGVuZGVkX2Rlc2NyaXB0aW9uID0gcmVjb3JkLmV4dGVuZGVkX2Rlc2NyaXB0aW9uID8/ICcnO1xyXG4gICAgICAgICAgICB0aGlzLmltYWdlX25hbWUgPSByZWNvcmQuaW1hZ2VfbmFtZSA/PyAnJztcclxuICAgICAgICAgICAgdGhpcy5jYXRlZ29yeV9pZCA9IHJlY29yZC5jYXRlZ29yeV9pZCA/PyAnJztcclxuICAgICAgICAgICAgdGhpcy5zdWJjYXRlZ29yeV9pZCA9ICsocmVjb3JkLnN1YmNhdGVnb3J5X2lkID8/IDApO1xyXG4gICAgICAgICAgICB0aGlzLm1hbnVmYWN0dXJlcnNfaWQgPSArKHJlY29yZC5tYW51ZmFjdHVyZXJzX2lkID8/IDApO1xyXG4gICAgICAgICAgICB0aGlzLnJhbmdlc19pZCA9ICsocmVjb3JkLnJhbmdlc19pZCA/PyAwKTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlID0gISErKHJlY29yZC5pc19hY3RpdmUgPz8gZmFsc2UpO1xyXG4gICAgICAgICAgICB0aGlzLmZlYXR1cmVkID0gISErKHJlY29yZC5pc19mZWF0dXJlZCA/PyBmYWxzZSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxsb3dfcXVvdGVzID0gKHJlY29yZC5hbGxvd19xdW90ZXMgPz8gdHJ1ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxsb3dfb3JkZXJzID0gKHJlY29yZC5hbGxvd19vcmRlcnMgPz8gdHJ1ZSk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLmFtb3VudF9pbl9zdG9jayA9ICsocmVjb3JkLm9uaGFuZCA/PyAwKTtcclxuICAgICAgICAgICAgdGhpcy50b3RhbF9yZWNpcGVfaXRlbXMgPSArKHJlY29yZC50b3RhbF9yZWNpcGVfaXRlbXMgPz8gMCk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLmhlaWdodCA9ICsocmVjb3JkLmhlaWdodCA/PyAwKTtcclxuICAgICAgICAgICAgdGhpcy53aWR0aCA9ICsocmVjb3JkLndpZHRoID8/IDApO1xyXG4gICAgICAgICAgICB0aGlzLmxlbmd0aCA9ICsocmVjb3JkLmxlbmd0aCA/PyAwKTtcclxuICAgICAgICAgICAgdGhpcy53ZWlnaHQgPSArKHJlY29yZC53ZWlnaHQgPz8gMCk7XHJcblxyXG4gICAgICAgICAgICBpZiAocmVjb3JkLnVuaXRfb2ZfbWVhc3VyZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy51bml0X29mX21lYXN1cmUgPSByZWNvcmQudW5pdF9vZl9tZWFzdXJlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBiYXNlX3ByaWNlID0gKyhyZWNvcmQucmVndWxhcl9zZWxscHJpY2UgPz8gMCk7XHJcbiAgICAgICAgICAgIGJhc2VfcHJpY2Vfd2l0aF90YXggPSArKHJlY29yZC5yZWd1bGFyX3NlbGxwcmljZV9pbmNsdXNpdmUgPz8gMCk7XHJcbiAgICAgICAgICAgIHNlbGxfcHJpY2UgPSArKHJlY29yZC5zZWxscHJpY2UgPz8gMCk7XHJcbiAgICAgICAgICAgIHNlbGxfcHJpY2Vfd2l0aF90YXggPSArKHJlY29yZC5zZWxscHJpY2VfaW5jbHVzaXZlID8/IDApO1xyXG5cclxuICAgICAgICAgICAgaWYgKChyZWNvcmQudGFncykgJiYgKHJlY29yZC50YWdzLmxlbmd0aCA+IDApKSB7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHRhZyBvZiByZWNvcmQudGFncykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGFncy5wdXNoKG5ldyBFc29sdmVUYWcodGFnKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICgocmVjb3JkLnRvcGljcykgJiYgKHJlY29yZC50b3BpY3MubGVuZ3RoID4gMCkpIHtcclxuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgdG9waWMgb2YgcmVjb3JkLnRvcGljcykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9waWNzLnB1c2gobmV3IEVzb2x2ZVRvcGljKHRvcGljKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICgocmVjb3JkLmJhZGdlcykgJiYgKHJlY29yZC5iYWRnZXMubGVuZ3RoID4gMCkpIHtcclxuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgYmFkZ2Ugb2YgcmVjb3JkLmJhZGdlcykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYmFkZ2VzLnB1c2gobmV3IEVzb2x2ZVN0b2NrQmFkZ2UoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICtiYWRnZS5pZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFkZ2UudGV4dCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFkZ2UuaWRlbnRpZmllcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFkZ2UuZm9udF9jb2xvdXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhZGdlLmJhZGdlX2NvbG91cixcclxuICAgICAgICAgICAgICAgICAgICAgICAgK2JhZGdlLnNvcnRfcHJpb3JpdHksXHJcbiAgICAgICAgICAgICAgICAgICAgKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChyZWNvcmQuY2F0ZWdvcnkpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY2F0ZWdvcnkgPSBuZXcgRXNvbHZlQ2F0ZWdvcnlUcmVlSXRlbShcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkudHlwZSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LnBhcmVudF9pZCxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LnNlZl9kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuc2hvcnRfZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LnNvcnRfcHJpb3JpdHksXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuZGlzcGxheV9vbmx5LFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5jYXRlZ29yeS5pbWFnZSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuc2VvX3BhZ2VfdGl0bGUsXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmNhdGVnb3J5LnNlb19rZXl3b3JkcyxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuY2F0ZWdvcnkuc2VvX2Rlc2NyaXB0aW9uLFxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHJlY29yZC5zdWJjYXRlZ29yeSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJjYXRlZ29yeSA9IG5ldyBFc29sdmVDYXRlZ29yeVRyZWVJdGVtKFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS50eXBlLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5pZCxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkucGFyZW50X2lkLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkuc2VmX2Rlc2NyaXB0aW9uLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5zaG9ydF9kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkuc29ydF9wcmlvcml0eSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkuYWN0aXZlLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5kaXNwbGF5X29ubHksXHJcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkLnN1YmNhdGVnb3J5LmltYWdlLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5zZW9fcGFnZV90aXRsZSxcclxuICAgICAgICAgICAgICAgICAgICByZWNvcmQuc3ViY2F0ZWdvcnkuc2VvX2tleXdvcmRzLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY29yZC5zdWJjYXRlZ29yeS5zZW9fZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAocmVjb3JkLm1hbnVmYWN0dXJlcikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tYW51ZmFjdHVyZXIgPSBuZXcgRXNvbHZlTWFudWZhY3R1cmVyKHJlY29yZC5tYW51ZmFjdHVyZXIpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAocmVjb3JkLnJhbmdlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJhbmdlID0gbmV3IEVzb2x2ZVJhbmdlKHJlY29yZC5yYW5nZSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChyZWNvcmQuY29sb3VycyAmJiByZWNvcmQuY29sb3Vycy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGNvbG91ciBvZiByZWNvcmQuY29sb3Vycykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29sb3Vycy5wdXNoKG5ldyBFc29sdmVDb2xvdXIoY29sb3VyKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChyZWNvcmQubGVhZF90aW1lcykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sZWFkX3RpbWVzID0gbmV3IEVzb2x2ZVN0b2NrTGVhZFRpbWVzKHJlY29yZC5sZWFkX3RpbWVzKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHJlY29yZC5jdXN0b21fZmllbGRzKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbV9maWVsZHMgPSByZWNvcmQuY3VzdG9tX2ZpZWxkcztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc2VvX3RpdGxlID0gcmVjb3JkLnNlb19wYWdlX3RpdGxlID8/ICcnO1xyXG4gICAgICAgICAgICBzZW9fa2V5d29yZHMgPSByZWNvcmQuc2VvX2tleXdvcmRzID8/ICcnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5wcmljZSA9IG5ldyBFc29sdmVTdG9ja1ByaWNlKFxyXG4gICAgICAgICAgICBiYXNlX3ByaWNlLFxyXG4gICAgICAgICAgICBiYXNlX3ByaWNlX3dpdGhfdGF4LFxyXG4gICAgICAgICAgICBzZWxsX3ByaWNlLFxyXG4gICAgICAgICAgICBzZWxsX3ByaWNlX3dpdGhfdGF4LFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGlmIChzZW9fdGl0bGUudHJpbSgpID09PSAnJykge1xyXG4gICAgICAgICAgICBzZW9fdGl0bGUgPSB0aGlzLm5hbWU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnNlb19kZXRhaWxzID0gbmV3IEVzb2x2ZVNlb0luZm8oXHJcbiAgICAgICAgICAgIHNlb190aXRsZSxcclxuICAgICAgICAgICAgdGhpcy5kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgc2VvX2tleXdvcmRzLFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEltYWdlUGF0aChpbWFnZV9zaXplOiBFc29sdmVTdG9ja0ltYWdlU2l6ZSk6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKHRoaXMuaW1hZ2VfbmFtZSAhPT0gJycpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGAvaW1hZ2VzL3N0b2NrLyR7aW1hZ2Vfc2l6ZX0vJHt0aGlzLmltYWdlX25hbWV9YDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN0b2NrLWJhc2UtcmVjb3JkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvc3RvY2svaW50ZXJmYWNlcy9lc29sdmUtc3RvY2stYmFzZS1yZWNvcmQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgRXNvbHZlQ3VzdG9tRmllbGRzLFxyXG4gICAgRXNvbHZlR2VuZXJpY0N1c3RvbUZpZWxkcyxcclxufSBmcm9tICcuLi8uLi9zaGFyZWQvY3VzdG9tLWZpZWxkcyc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVDYXRlZ29yeVRyZWVJdGVtUmVjb3JkIH0gZnJvbSAnLi4vLi4vY2F0ZWdvcnktdHJlZSc7XHJcbmltcG9ydCB7IEVzb2x2ZU1hbnVmYWN0dXJlclJlY29yZCB9IGZyb20gJy4uLy4uL21hbnVmYWN0dXJlcnMnO1xyXG5pbXBvcnQgeyBFc29sdmVSYW5nZVJlY29yZCB9IGZyb20gJy4uLy4uL3Jhbmdlcyc7XHJcbmltcG9ydCB7IEVzb2x2ZVRhZ1JlY29yZCB9IGZyb20gJy4uLy4uL3RhZ3MnO1xyXG5pbXBvcnQgeyBFc29sdmVUb3BpY1JlY29yZCB9IGZyb20gJy4uLy4uL3RvcGljcyc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVTdG9ja1VuaXRPZk1lYXN1cmUgfSBmcm9tICcuLi90eXBlcyc7XHJcbmltcG9ydCB7IEVzb2x2ZVN0b2NrQmFkZ2VSZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS1zdG9jay1iYWRnZS1yZWNvcmQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRXNvbHZlQ29sb3VyUmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtY29sb3VyLXJlY29yZC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBFc29sdmVTdG9ja0xlYWRUaW1lc1JlY29yZCB9IGZyb20gJy4vZXNvbHZlLXN0b2NrLWxlYWQtdGltZXMtcmVjb3JkLmludGVyZmFjZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEVzb2x2ZVN0b2NrQmFzZVJlY29yZDxUID0gRXNvbHZlR2VuZXJpY0N1c3RvbUZpZWxkcz4ge1xyXG4gICAgaWQ6IG51bWJlcjtcclxuICAgIGNvZGU6IHN0cmluZztcclxuICAgIHN1cHBsaWVyX2NvZGU6IHN0cmluZztcclxuICAgIGV4dGVybmFsX3N5c3RlbV9jb2RlOiBzdHJpbmc7XHJcbiAgICBiYXJjb2RlOiBzdHJpbmc7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBzZWZfbmFtZTogc3RyaW5nO1xyXG4gICAgc2VvX3BhZ2VfdGl0bGU6IHN0cmluZztcclxuICAgIHNlb19rZXl3b3Jkczogc3RyaW5nO1xyXG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIGV4dGVuZGVkX2Rlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBjYXRlZ29yeV9pZDogc3RyaW5nO1xyXG4gICAgY2F0ZWdvcnlfZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIGNhdGVnb3J5OiBFc29sdmVDYXRlZ29yeVRyZWVJdGVtUmVjb3JkO1xyXG4gICAgc3ViY2F0ZWdvcnlfaWQ6IG51bWJlcjtcclxuICAgIHN1YmNhdGVnb3J5X2Rlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBzdWJjYXRlZ29yeTogRXNvbHZlQ2F0ZWdvcnlUcmVlSXRlbVJlY29yZDtcclxuICAgIG1hbnVmYWN0dXJlcnNfaWQ6IG51bWJlcjtcclxuICAgIG1hbnVmYWN0dXJlcjogRXNvbHZlTWFudWZhY3R1cmVyUmVjb3JkO1xyXG4gICAgcmFuZ2VzX2lkOiBudW1iZXI7XHJcbiAgICByYW5nZTogRXNvbHZlUmFuZ2VSZWNvcmQ7XHJcbiAgICBpbWFnZV9uYW1lOiBzdHJpbmc7XHJcbiAgICBpbWFnZV9jaGVja3N1bT86IHN0cmluZztcclxuICAgIGltYWdlX2xhc3RfbW9kaWZpZWQ/OiBzdHJpbmc7XHJcbiAgICBtdXN0X2NvbGxlY3Q6IGJvb2xlYW47XHJcbiAgICBkZWxpdmVyeV9jYXRlZ29yeTogc3RyaW5nO1xyXG4gICAgaXNfYWN0aXZlOiBib29sZWFuO1xyXG4gICAgaXNfZmVhdHVyZWQ6IGJvb2xlYW47XHJcbiAgICB2YXRfaXRlbTogYm9vbGVhbjtcclxuICAgIHZhdF9yYXRlOiBudW1iZXI7XHJcbiAgICB2YXRfcGVyY2VudGFnZTogbnVtYmVyO1xyXG4gICAgaXRlbXNfaW5fcGFjazogbnVtYmVyO1xyXG4gICAgcmVndWxhcl9zZWxscHJpY2U6IG51bWJlcjtcclxuICAgIHJlZ3VsYXJfc2VsbHByaWNlX2luY2x1c2l2ZTogbnVtYmVyO1xyXG4gICAgc2VsbHByaWNlOiBudW1iZXI7XHJcbiAgICBzZWxscHJpY2VfaW5jbHVzaXZlOiBudW1iZXI7XHJcbiAgICBkaXNjb3VudHNfb25fY29kZTogYW55W107XHJcbiAgICB0YWdzOiBFc29sdmVUYWdSZWNvcmRbXTtcclxuICAgIHRvcGljczogRXNvbHZlVG9waWNSZWNvcmRbXTtcclxuICAgIGJhZGdlczogRXNvbHZlU3RvY2tCYWRnZVJlY29yZFtdO1xyXG4gICAgbGVhZF90aW1lczogRXNvbHZlU3RvY2tMZWFkVGltZXNSZWNvcmQ7XHJcbiAgICBjb2xvdXJzOiBFc29sdmVDb2xvdXJSZWNvcmRbXTtcclxuICAgIGN1c3RvbV9maWVsZHM6IEVzb2x2ZUN1c3RvbUZpZWxkczxUPjtcclxuICAgIGhlaWdodDogbnVtYmVyO1xyXG4gICAgd2lkdGg6IG51bWJlcjtcclxuICAgIGxlbmd0aDogbnVtYmVyO1xyXG4gICAgd2VpZ2h0OiBudW1iZXI7XHJcbiAgICB1bml0X29mX21lYXN1cmU6IEVzb2x2ZVN0b2NrVW5pdE9mTWVhc3VyZTtcclxuICAgIG9uaGFuZDogbnVtYmVyO1xyXG4gICAgdG90YWxfcmVjaXBlX2l0ZW1zOiBudW1iZXI7XHJcbiAgICBhbGxvd19xdW90ZXM6IGJvb2xlYW47XHJcbiAgICBhbGxvd19vcmRlcnM6IGJvb2xlYW47XHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN0b2NrLWJhc2UtcmVjb3JkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvc3RvY2svaW50ZXJmYWNlcy9lc29sdmUtc3RvY2stYmFzZS1yZWNvcmQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgRXNvbHZlQ3VzdG9tRmllbGRzLFxyXG4gICAgRXNvbHZlR2VuZXJpY0N1c3RvbUZpZWxkcyxcclxufSBmcm9tICcuLi8uLi9zaGFyZWQvY3VzdG9tLWZpZWxkcyc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVDYXRlZ29yeVRyZWVJdGVtUmVjb3JkIH0gZnJvbSAnLi4vLi4vY2F0ZWdvcnktdHJlZSc7XHJcbmltcG9ydCB7IEVzb2x2ZU1hbnVmYWN0dXJlclJlY29yZCB9IGZyb20gJy4uLy4uL21hbnVmYWN0dXJlcnMnO1xyXG5pbXBvcnQgeyBFc29sdmVSYW5nZVJlY29yZCB9IGZyb20gJy4uLy4uL3Jhbmdlcyc7XHJcbmltcG9ydCB7IEVzb2x2ZVRhZ1JlY29yZCB9IGZyb20gJy4uLy4uL3RhZ3MnO1xyXG5pbXBvcnQgeyBFc29sdmVUb3BpY1JlY29yZCB9IGZyb20gJy4uLy4uL3RvcGljcyc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVTdG9ja1VuaXRPZk1lYXN1cmUgfSBmcm9tICcuLi90eXBlcyc7XHJcbmltcG9ydCB7IEVzb2x2ZVN0b2NrQmFkZ2VSZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS1zdG9jay1iYWRnZS1yZWNvcmQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRXNvbHZlQ29sb3VyUmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtY29sb3VyLXJlY29yZC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBFc29sdmVTdG9ja0xlYWRUaW1lc1JlY29yZCB9IGZyb20gJy4vZXNvbHZlLXN0b2NrLWxlYWQtdGltZXMtcmVjb3JkLmludGVyZmFjZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEVzb2x2ZVN0b2NrQmFzZVJlY29yZDxUID0gRXNvbHZlR2VuZXJpY0N1c3RvbUZpZWxkcz4ge1xyXG4gICAgaWQ6IG51bWJlcjtcclxuICAgIGNvZGU6IHN0cmluZztcclxuICAgIHN1cHBsaWVyX2NvZGU6IHN0cmluZztcclxuICAgIGV4dGVybmFsX3N5c3RlbV9jb2RlOiBzdHJpbmc7XHJcbiAgICBiYXJjb2RlOiBzdHJpbmc7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBzZWZfbmFtZTogc3RyaW5nO1xyXG4gICAgc2VvX3BhZ2VfdGl0bGU6IHN0cmluZztcclxuICAgIHNlb19rZXl3b3Jkczogc3RyaW5nO1xyXG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIGV4dGVuZGVkX2Rlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBjYXRlZ29yeV9pZDogc3RyaW5nO1xyXG4gICAgY2F0ZWdvcnlfZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIGNhdGVnb3J5OiBFc29sdmVDYXRlZ29yeVRyZWVJdGVtUmVjb3JkO1xyXG4gICAgc3ViY2F0ZWdvcnlfaWQ6IG51bWJlcjtcclxuICAgIHN1YmNhdGVnb3J5X2Rlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBzdWJjYXRlZ29yeTogRXNvbHZlQ2F0ZWdvcnlUcmVlSXRlbVJlY29yZDtcclxuICAgIG1hbnVmYWN0dXJlcnNfaWQ6IG51bWJlcjtcclxuICAgIG1hbnVmYWN0dXJlcjogRXNvbHZlTWFudWZhY3R1cmVyUmVjb3JkO1xyXG4gICAgcmFuZ2VzX2lkOiBudW1iZXI7XHJcbiAgICByYW5nZTogRXNvbHZlUmFuZ2VSZWNvcmQ7XHJcbiAgICBpbWFnZV9uYW1lOiBzdHJpbmc7XHJcbiAgICBpbWFnZV9jaGVja3N1bT86IHN0cmluZztcclxuICAgIGltYWdlX2xhc3RfbW9kaWZpZWQ/OiBzdHJpbmc7XHJcbiAgICBtdXN0X2NvbGxlY3Q6IGJvb2xlYW47XHJcbiAgICBkZWxpdmVyeV9jYXRlZ29yeTogc3RyaW5nO1xyXG4gICAgcmVxdWlyZXNfYXNzZW1ibHk6IGJvb2xlYW47XHJcbiAgICBpc19hY3RpdmU6IGJvb2xlYW47XHJcbiAgICBpc19mZWF0dXJlZDogYm9vbGVhbjtcclxuICAgIHZhdF9pdGVtOiBib29sZWFuO1xyXG4gICAgdmF0X3JhdGU6IG51bWJlcjtcclxuICAgIHZhdF9wZXJjZW50YWdlOiBudW1iZXI7XHJcbiAgICBpdGVtc19pbl9wYWNrOiBudW1iZXI7XHJcbiAgICByZWd1bGFyX3NlbGxwcmljZTogbnVtYmVyO1xyXG4gICAgcmVndWxhcl9zZWxscHJpY2VfaW5jbHVzaXZlOiBudW1iZXI7XHJcbiAgICBzZWxscHJpY2U6IG51bWJlcjtcclxuICAgIHNlbGxwcmljZV9pbmNsdXNpdmU6IG51bWJlcjtcclxuICAgIGRpc2NvdW50c19vbl9jb2RlOiBhbnlbXTtcclxuICAgIHRhZ3M6IEVzb2x2ZVRhZ1JlY29yZFtdO1xyXG4gICAgdG9waWNzOiBFc29sdmVUb3BpY1JlY29yZFtdO1xyXG4gICAgYmFkZ2VzOiBFc29sdmVTdG9ja0JhZGdlUmVjb3JkW107XHJcbiAgICBsZWFkX3RpbWVzOiBFc29sdmVTdG9ja0xlYWRUaW1lc1JlY29yZDtcclxuICAgIGNvbG91cnM6IEVzb2x2ZUNvbG91clJlY29yZFtdO1xyXG4gICAgY3VzdG9tX2ZpZWxkczogRXNvbHZlQ3VzdG9tRmllbGRzPFQ+O1xyXG4gICAgaGVpZ2h0OiBudW1iZXI7XHJcbiAgICB3aWR0aDogbnVtYmVyO1xyXG4gICAgbGVuZ3RoOiBudW1iZXI7XHJcbiAgICB3ZWlnaHQ6IG51bWJlcjtcclxuICAgIHVuaXRfb2ZfbWVhc3VyZTogRXNvbHZlU3RvY2tVbml0T2ZNZWFzdXJlO1xyXG4gICAgb25oYW5kOiBudW1iZXI7XHJcbiAgICB0b3RhbF9yZWNpcGVfaXRlbXM6IG51bWJlcjtcclxuICAgIGFsbG93X3F1b3RlczogYm9vbGVhbjtcclxuICAgIGFsbG93X29yZGVyczogYm9vbGVhbjtcclxufVxyXG4iXX0=
@@ -0,0 +1,7 @@
1
+ export class EsolveHeading {
2
+ constructor(identifier, value) {
3
+ this.identifier = identifier;
4
+ this.value = value;
5
+ }
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLWhlYWRpbmcubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lc29sdmUtY29ubmVjdC9tZWRpYS9zcmMvY2xhc3Nlcy9lc29sdmUtaGVhZGluZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTtJQUN0QixZQUNXLFVBQWtCLEVBQ2xCLEtBQWE7UUFEYixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ2xCLFVBQUssR0FBTCxLQUFLLENBQVE7SUFDcEIsQ0FBQztDQUNSIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEVzb2x2ZUhlYWRpbmcge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIGlkZW50aWZpZXI6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgdmFsdWU6IHN0cmluZyxcclxuICAgICkgeyB9XHJcbn1cclxuIl19
@@ -0,0 +1,54 @@
1
+ import { EsolveManufacturer, EsolveRange, EsolveSeoInfo, EsolveTag, EsolveTopic, } from '@esolve/ng-esolve-connect';
2
+ import { EsolveMediaGroup } from './esolve-media-group.model';
3
+ import { EsolveMediaLayoutSection } from './esolve-media-layout-section.model';
4
+ export class EsolveMediaArticle {
5
+ constructor(record) {
6
+ this.layout = '';
7
+ this.image_url = '';
8
+ this.tags = [];
9
+ this.topics = [];
10
+ this.identifier = record.identifier;
11
+ this.title = record.title;
12
+ this.article = record.article;
13
+ let seo_title = record.seo_page_title ?? '';
14
+ let seo_keywords = record.seo_keywords ?? '';
15
+ let seo_description = record.seo_description ?? '';
16
+ if (seo_title.trim() === '') {
17
+ seo_title = this.title;
18
+ }
19
+ this.seo_details = new EsolveSeoInfo(seo_title, seo_description, seo_keywords);
20
+ this.layout = record.layout ?? '';
21
+ this.image_url = record.image_url ?? '';
22
+ if ((record.tags) && (record.tags.length > 0)) {
23
+ for (const tag of record.tags) {
24
+ this.tags.push(new EsolveTag(tag));
25
+ }
26
+ }
27
+ if ((record.topics) && (record.topics.length > 0)) {
28
+ for (const topic of record.topics) {
29
+ this.topics.push(new EsolveTopic(topic));
30
+ }
31
+ }
32
+ if (record.media_group) {
33
+ this.group = new EsolveMediaGroup(record.media_group);
34
+ }
35
+ if (record.manufacturer) {
36
+ this.manufacturer = new EsolveManufacturer(record.manufacturer);
37
+ }
38
+ if (record.range) {
39
+ this.range = new EsolveRange(record.range);
40
+ }
41
+ if (record.sections) {
42
+ this.sections = new Map();
43
+ for (const key in record.sections) {
44
+ const section_list = [];
45
+ const section_records = record.sections[key];
46
+ for (const section_record of section_records) {
47
+ section_list.push(new EsolveMediaLayoutSection(section_record));
48
+ }
49
+ this.sections.set(key, section_list);
50
+ }
51
+ }
52
+ }
53
+ }
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLW1lZGlhLWFydGljbGUubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lc29sdmUtY29ubmVjdC9tZWRpYS9zcmMvY2xhc3Nlcy9lc29sdmUtbWVkaWEtYXJ0aWNsZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLFdBQVcsRUFFWCxhQUFhLEVBQ2IsU0FBUyxFQUNULFdBQVcsR0FDZCxNQUFNLDJCQUEyQixDQUFDO0FBSW5DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRS9FLE1BQU0sT0FBTyxrQkFBa0I7SUFjM0IsWUFBWSxNQUF5QjtRQVY5QixXQUFNLEdBQVcsRUFBRSxDQUFDO1FBQ3BCLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDdkIsU0FBSSxHQUFnQixFQUFFLENBQUM7UUFDdkIsV0FBTSxHQUFrQixFQUFFLENBQUM7UUFROUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFFOUIsSUFBSSxTQUFTLEdBQUcsTUFBTSxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUM7UUFDNUMsSUFBSSxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksSUFBSSxFQUFFLENBQUM7UUFDN0MsSUFBSSxlQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUM7UUFFbkQsSUFBSSxTQUFTLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ3pCLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQzFCO1FBRUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLGFBQWEsQ0FDaEMsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLENBQ2YsQ0FBQztRQUVGLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztRQUV4QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDM0MsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFO2dCQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ3RDO1NBQ0o7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDL0MsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFO2dCQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQzVDO1NBQ0o7UUFFRCxJQUFJLE1BQU0sQ0FBQyxXQUFXLEVBQUU7WUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUN6RDtRQUVELElBQUksTUFBTSxDQUFDLFlBQVksRUFBRTtZQUNyQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksa0JBQWtCLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ25FO1FBRUQsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDOUM7UUFFRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBc0MsQ0FBQztZQUU5RCxLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUU7Z0JBQy9CLE1BQU0sWUFBWSxHQUErQixFQUFFLENBQUM7Z0JBQ3BELE1BQU0sZUFBZSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBRTdDLEtBQUssTUFBTSxjQUFjLElBQUksZUFBZSxFQUFFO29CQUMxQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksd0JBQXdCLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztpQkFDbkU7Z0JBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO2FBQ3hDO1NBQ0o7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgRXNvbHZlTWFudWZhY3R1cmVyLFxyXG4gICAgRXNvbHZlUmFuZ2UsXHJcbiAgICBFc29sdmVTZW9EZXRhaWxzLFxyXG4gICAgRXNvbHZlU2VvSW5mbyxcclxuICAgIEVzb2x2ZVRhZyxcclxuICAgIEVzb2x2ZVRvcGljLFxyXG59IGZyb20gJ0Blc29sdmUvbmctZXNvbHZlLWNvbm5lY3QnO1xyXG5cclxuaW1wb3J0IHsgRXNvbHZlTWVkaWFSZWNvcmQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZU1lZGlhR3JvdXAgfSBmcm9tICcuL2Vzb2x2ZS1tZWRpYS1ncm91cC5tb2RlbCc7XHJcbmltcG9ydCB7IEVzb2x2ZU1lZGlhTGF5b3V0U2VjdGlvbiB9IGZyb20gJy4vZXNvbHZlLW1lZGlhLWxheW91dC1zZWN0aW9uLm1vZGVsJztcclxuXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVNZWRpYUFydGljbGUgaW1wbGVtZW50cyBFc29sdmVTZW9EZXRhaWxzIHtcclxuICAgIHB1YmxpYyBpZGVudGlmaWVyOiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgdGl0bGU6IHN0cmluZztcclxuICAgIHB1YmxpYyBhcnRpY2xlOiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgbGF5b3V0OiBzdHJpbmcgPSAnJztcclxuICAgIHB1YmxpYyBpbWFnZV91cmw6IHN0cmluZyA9ICcnO1xyXG4gICAgcHVibGljIHRhZ3M6IEVzb2x2ZVRhZ1tdID0gW107XHJcbiAgICBwdWJsaWMgdG9waWNzOiBFc29sdmVUb3BpY1tdID0gW107XHJcbiAgICBwdWJsaWMgc2VvX2RldGFpbHM6IEVzb2x2ZVNlb0luZm87XHJcbiAgICBwdWJsaWMgZ3JvdXA/OiBFc29sdmVNZWRpYUdyb3VwO1xyXG4gICAgcHVibGljIG1hbnVmYWN0dXJlcj86IEVzb2x2ZU1hbnVmYWN0dXJlcjtcclxuICAgIHB1YmxpYyByYW5nZT86IEVzb2x2ZVJhbmdlO1xyXG4gICAgcHVibGljIHNlY3Rpb25zPzogTWFwPHN0cmluZywgRXNvbHZlTWVkaWFMYXlvdXRTZWN0aW9uW10+O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHJlY29yZDogRXNvbHZlTWVkaWFSZWNvcmQpIHtcclxuICAgICAgICB0aGlzLmlkZW50aWZpZXIgPSByZWNvcmQuaWRlbnRpZmllcjtcclxuICAgICAgICB0aGlzLnRpdGxlID0gcmVjb3JkLnRpdGxlO1xyXG4gICAgICAgIHRoaXMuYXJ0aWNsZSA9IHJlY29yZC5hcnRpY2xlO1xyXG5cclxuICAgICAgICBsZXQgc2VvX3RpdGxlID0gcmVjb3JkLnNlb19wYWdlX3RpdGxlID8/ICcnO1xyXG4gICAgICAgIGxldCBzZW9fa2V5d29yZHMgPSByZWNvcmQuc2VvX2tleXdvcmRzID8/ICcnO1xyXG4gICAgICAgIGxldCBzZW9fZGVzY3JpcHRpb24gPSByZWNvcmQuc2VvX2Rlc2NyaXB0aW9uID8/ICcnO1xyXG5cclxuICAgICAgICBpZiAoc2VvX3RpdGxlLnRyaW0oKSA9PT0gJycpIHtcclxuICAgICAgICAgICAgc2VvX3RpdGxlID0gdGhpcy50aXRsZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuc2VvX2RldGFpbHMgPSBuZXcgRXNvbHZlU2VvSW5mbyhcclxuICAgICAgICAgICAgc2VvX3RpdGxlLFxyXG4gICAgICAgICAgICBzZW9fZGVzY3JpcHRpb24sXHJcbiAgICAgICAgICAgIHNlb19rZXl3b3JkcyxcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICB0aGlzLmxheW91dCA9IHJlY29yZC5sYXlvdXQgPz8gJyc7XHJcbiAgICAgICAgdGhpcy5pbWFnZV91cmwgPSByZWNvcmQuaW1hZ2VfdXJsID8/ICcnO1xyXG5cclxuICAgICAgICBpZiAoKHJlY29yZC50YWdzKSAmJiAocmVjb3JkLnRhZ3MubGVuZ3RoID4gMCkpIHtcclxuICAgICAgICAgICAgZm9yIChjb25zdCB0YWcgb2YgcmVjb3JkLnRhZ3MpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudGFncy5wdXNoKG5ldyBFc29sdmVUYWcodGFnKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICgocmVjb3JkLnRvcGljcykgJiYgKHJlY29yZC50b3BpY3MubGVuZ3RoID4gMCkpIHtcclxuICAgICAgICAgICAgZm9yIChjb25zdCB0b3BpYyBvZiByZWNvcmQudG9waWNzKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnRvcGljcy5wdXNoKG5ldyBFc29sdmVUb3BpYyh0b3BpYykpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAocmVjb3JkLm1lZGlhX2dyb3VwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JvdXAgPSBuZXcgRXNvbHZlTWVkaWFHcm91cChyZWNvcmQubWVkaWFfZ3JvdXApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHJlY29yZC5tYW51ZmFjdHVyZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5tYW51ZmFjdHVyZXIgPSBuZXcgRXNvbHZlTWFudWZhY3R1cmVyKHJlY29yZC5tYW51ZmFjdHVyZXIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHJlY29yZC5yYW5nZSkge1xyXG4gICAgICAgICAgICB0aGlzLnJhbmdlID0gbmV3IEVzb2x2ZVJhbmdlKHJlY29yZC5yYW5nZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAocmVjb3JkLnNlY3Rpb25zKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2VjdGlvbnMgPSBuZXcgTWFwPHN0cmluZywgRXNvbHZlTWVkaWFMYXlvdXRTZWN0aW9uW10+KCk7XHJcblxyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiByZWNvcmQuc2VjdGlvbnMpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHNlY3Rpb25fbGlzdDogRXNvbHZlTWVkaWFMYXlvdXRTZWN0aW9uW10gPSBbXTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHNlY3Rpb25fcmVjb3JkcyA9IHJlY29yZC5zZWN0aW9uc1trZXldO1xyXG5cclxuICAgICAgICAgICAgICAgIGZvciAoY29uc3Qgc2VjdGlvbl9yZWNvcmQgb2Ygc2VjdGlvbl9yZWNvcmRzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VjdGlvbl9saXN0LnB1c2gobmV3IEVzb2x2ZU1lZGlhTGF5b3V0U2VjdGlvbihzZWN0aW9uX3JlY29yZCkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuc2VjdGlvbnMuc2V0KGtleSwgc2VjdGlvbl9saXN0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,15 @@
1
+ export class EsolveMediaGroup {
2
+ constructor(record) {
3
+ this.id = 0;
4
+ this.name = '';
5
+ this.sef_name = '';
6
+ this.description = '';
7
+ if (record) {
8
+ this.id = +(record.id ?? 0);
9
+ this.name = record.name ?? '';
10
+ this.sef_name = record.sef_name ?? '';
11
+ this.description = record.description ?? '';
12
+ }
13
+ }
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLW1lZGlhLWdyb3VwLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZXNvbHZlLWNvbm5lY3QvbWVkaWEvc3JjL2NsYXNzZXMvZXNvbHZlLW1lZGlhLWdyb3VwLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxnQkFBZ0I7SUFNekIsWUFBWSxNQUErQjtRQUxwQyxPQUFFLEdBQVcsQ0FBQyxDQUFDO1FBQ2YsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUNsQixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBRzVCLElBQUksTUFBTSxFQUFFO1lBQ1IsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQTtZQUMzQixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztTQUMvQztJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVzb2x2ZU1lZGlhR3JvdXBSZWNvcmQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVNZWRpYUdyb3VwIHtcclxuICAgIHB1YmxpYyBpZDogbnVtYmVyID0gMDtcclxuICAgIHB1YmxpYyBuYW1lOiBzdHJpbmcgPSAnJztcclxuICAgIHB1YmxpYyBzZWZfbmFtZTogc3RyaW5nID0gJyc7XHJcbiAgICBwdWJsaWMgZGVzY3JpcHRpb246IHN0cmluZyA9ICcnO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHJlY29yZD86IEVzb2x2ZU1lZGlhR3JvdXBSZWNvcmQpIHtcclxuICAgICAgICBpZiAocmVjb3JkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaWQgPSArKHJlY29yZC5pZCA/PyAwKVxyXG4gICAgICAgICAgICB0aGlzLm5hbWUgPSByZWNvcmQubmFtZSA/PyAnJztcclxuICAgICAgICAgICAgdGhpcy5zZWZfbmFtZSA9IHJlY29yZC5zZWZfbmFtZSA/PyAnJztcclxuICAgICAgICAgICAgdGhpcy5kZXNjcmlwdGlvbiA9IHJlY29yZC5kZXNjcmlwdGlvbiA/PyAnJztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,18 @@
1
+ export class EsolveMediaLayoutSection {
2
+ constructor(record) {
3
+ this.sub_type = '';
4
+ this.type = record.type;
5
+ this.identifier = record.identifier;
6
+ this.sub_type = record.sub_type ?? '';
7
+ if (record.data) {
8
+ this.data = record.data;
9
+ }
10
+ }
11
+ getData() {
12
+ if (typeof this.data === 'undefined') {
13
+ return null;
14
+ }
15
+ return this.data;
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLW1lZGlhLWxheW91dC1zZWN0aW9uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZXNvbHZlLWNvbm5lY3QvbWVkaWEvc3JjL2NsYXNzZXMvZXNvbHZlLW1lZGlhLWxheW91dC1zZWN0aW9uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyx3QkFBd0I7SUFPakMsWUFBWSxNQUFzQztRQUwzQyxhQUFRLEdBQVcsRUFBRSxDQUFDO1FBTXpCLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDcEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUV0QyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUU7WUFDYixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7U0FDM0I7SUFDTCxDQUFDO0lBRU0sT0FBTztRQUNWLElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFdBQVcsRUFBRTtZQUNsQyxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsT0FBTyxJQUFJLENBQUMsSUFBUyxDQUFDO0lBQzFCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVzb2x2ZU1lZGlhTGF5b3V0U2VjdGlvblJlY29yZCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBFc29sdmVNZWRpYUxheW91dFNlY3Rpb25UeXBlIH0gZnJvbSAnLi4vdHlwZXMnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEVzb2x2ZU1lZGlhTGF5b3V0U2VjdGlvbiB7XHJcbiAgICBwdWJsaWMgdHlwZTogRXNvbHZlTWVkaWFMYXlvdXRTZWN0aW9uVHlwZTtcclxuICAgIHB1YmxpYyBzdWJfdHlwZTogc3RyaW5nID0gJyc7XHJcbiAgICBwdWJsaWMgaWRlbnRpZmllcjogc3RyaW5nO1xyXG5cclxuICAgIHByaXZhdGUgZGF0YT86IGFueTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihyZWNvcmQ6IEVzb2x2ZU1lZGlhTGF5b3V0U2VjdGlvblJlY29yZCkge1xyXG4gICAgICAgIHRoaXMudHlwZSA9IHJlY29yZC50eXBlO1xyXG4gICAgICAgIHRoaXMuaWRlbnRpZmllciA9IHJlY29yZC5pZGVudGlmaWVyO1xyXG4gICAgICAgIHRoaXMuc3ViX3R5cGUgPSByZWNvcmQuc3ViX3R5cGUgPz8gJyc7XHJcblxyXG4gICAgICAgIGlmIChyZWNvcmQuZGF0YSkge1xyXG4gICAgICAgICAgICB0aGlzLmRhdGEgPSByZWNvcmQuZGF0YTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldERhdGE8VD4oKTogVCB8IG51bGwge1xyXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kYXRhID09PSAndW5kZWZpbmVkJykge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmRhdGEgYXMgVDtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,5 @@
1
+ export * from './esolve-heading.model';
2
+ export * from './esolve-media-article.model';
3
+ export * from './esolve-media-group.model';
4
+ export * from './esolve-media-layout-section.model';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lc29sdmUtY29ubmVjdC9tZWRpYS9zcmMvY2xhc3Nlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9lc29sdmUtaGVhZGluZy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLW1lZGlhLWFydGljbGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2Vzb2x2ZS1tZWRpYS1ncm91cC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZXNvbHZlLW1lZGlhLWxheW91dC1zZWN0aW9uLm1vZGVsJztcclxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './media-layout/esolve-media-layout.component';
2
+ export * from './media-section/esolve-media-section.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lc29sdmUtY29ubmVjdC9tZWRpYS9zcmMvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsZ0RBQWdELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21lZGlhLWxheW91dC9lc29sdmUtbWVkaWEtbGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbWVkaWEtc2VjdGlvbi9lc29sdmUtbWVkaWEtc2VjdGlvbi5jb21wb25lbnQnO1xyXG4iXX0=
@@ -0,0 +1,41 @@
1
+ import { Component, Input, Injector, } from '@angular/core';
2
+ import { ComponentPortal } from '@angular/cdk/portal';
3
+ import { EsolveMediaLayoutService } from '../../services';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../services";
6
+ import * as i2 from "@angular/cdk/portal";
7
+ export class EsolveMediaLayoutComponent {
8
+ constructor(layoutService) {
9
+ this.layoutService = layoutService;
10
+ }
11
+ ngOnChanges() {
12
+ this.layoutService.setMedia(this.media);
13
+ const component = this.layoutService.getLayout();
14
+ const injector = Injector.create({
15
+ providers: [
16
+ {
17
+ provide: EsolveMediaLayoutService,
18
+ useValue: this.layoutService,
19
+ },
20
+ ],
21
+ });
22
+ this.portal = new ComponentPortal(component, null, injector);
23
+ }
24
+ }
25
+ EsolveMediaLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: EsolveMediaLayoutComponent, deps: [{ token: i1.EsolveMediaLayoutService }], target: i0.ɵɵFactoryTarget.Component });
26
+ EsolveMediaLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: EsolveMediaLayoutComponent, selector: "eslv-media-layout", inputs: { media: "media" }, providers: [
27
+ EsolveMediaLayoutService,
28
+ ], usesOnChanges: true, ngImport: i0, template: `<ng-template [cdkPortalOutlet]="portal"></ng-template>`, isInline: true, directives: [{ type: i2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: EsolveMediaLayoutComponent, decorators: [{
30
+ type: Component,
31
+ args: [{
32
+ selector: 'eslv-media-layout',
33
+ template: `<ng-template [cdkPortalOutlet]="portal"></ng-template>`,
34
+ providers: [
35
+ EsolveMediaLayoutService,
36
+ ],
37
+ }]
38
+ }], ctorParameters: function () { return [{ type: i1.EsolveMediaLayoutService }]; }, propDecorators: { media: [{
39
+ type: Input
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLW1lZGlhLWxheW91dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lc29sdmUtY29ubmVjdC9tZWRpYS9zcmMvY29tcG9uZW50cy9tZWRpYS1sYXlvdXQvZXNvbHZlLW1lZGlhLWxheW91dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxLQUFLLEVBQ0wsUUFBUSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUl0RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVMxRCxNQUFNLE9BQU8sMEJBQTBCO0lBS25DLFlBQ1csYUFBdUM7UUFBdkMsa0JBQWEsR0FBYixhQUFhLENBQTBCO0lBQzlDLENBQUM7SUFFRSxXQUFXO1FBQ2QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakQsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUM3QixTQUFTLEVBQUU7Z0JBQ1A7b0JBQ0ksT0FBTyxFQUFFLHdCQUF3QjtvQkFDakMsUUFBUSxFQUFFLElBQUksQ0FBQyxhQUFhO2lCQUMvQjthQUNKO1NBQ0osQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7O3dIQXRCUSwwQkFBMEI7NEdBQTFCLDBCQUEwQix3RUFKeEI7UUFDUCx3QkFBd0I7S0FDM0IsK0NBSFMsd0RBQXdEOzRGQUt6RCwwQkFBMEI7a0JBUHRDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsUUFBUSxFQUFFLHdEQUF3RDtvQkFDbEUsU0FBUyxFQUFFO3dCQUNQLHdCQUF3QjtxQkFDM0I7aUJBQ0o7K0dBRW1CLEtBQUs7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgT25DaGFuZ2VzLFxyXG4gICAgSW5wdXQsXHJcbiAgICBJbmplY3RvcixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcblxyXG5pbXBvcnQgeyBFc29sdmVNZWRpYUFydGljbGUgfSBmcm9tICcuLi8uLi9jbGFzc2VzJztcclxuXHJcbmltcG9ydCB7IEVzb2x2ZU1lZGlhTGF5b3V0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdlc2x2LW1lZGlhLWxheW91dCcsXHJcbiAgICB0ZW1wbGF0ZTogYDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cInBvcnRhbFwiPjwvbmctdGVtcGxhdGU+YCxcclxuICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIEVzb2x2ZU1lZGlhTGF5b3V0U2VydmljZSxcclxuICAgIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc29sdmVNZWRpYUxheW91dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcbiAgICBASW5wdXQoKSBwdWJsaWMgbWVkaWEhOiBFc29sdmVNZWRpYUFydGljbGU7XHJcblxyXG4gICAgcHVibGljIHBvcnRhbCE6IENvbXBvbmVudFBvcnRhbDxhbnk+O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHB1YmxpYyBsYXlvdXRTZXJ2aWNlOiBFc29sdmVNZWRpYUxheW91dFNlcnZpY2UsXHJcbiAgICApIHsgfVxyXG5cclxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmxheW91dFNlcnZpY2Uuc2V0TWVkaWEodGhpcy5tZWRpYSk7XHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50ID0gdGhpcy5sYXlvdXRTZXJ2aWNlLmdldExheW91dCgpO1xyXG4gICAgICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcclxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogRXNvbHZlTWVkaWFMYXlvdXRTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgIHVzZVZhbHVlOiB0aGlzLmxheW91dFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBdLFxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLnBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoY29tcG9uZW50LCBudWxsLCBpbmplY3Rvcik7XHJcbiAgICB9XHJcbn1cclxuIl19