ng-easycommerce 0.0.612 → 0.0.613

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 (595) hide show
  1. package/README.md +969 -964
  2. package/assets/bamboo.html +145 -145
  3. package/assets/bancardCatastro.html +49 -49
  4. package/assets/bancardFrameBase.html +104 -104
  5. package/assets/cecaFrameRedirectBase.html +172 -172
  6. package/assets/decidirFormEc.html +519 -519
  7. package/assets/docs/COOKIES.md +158 -158
  8. package/assets/docs/Parametros-Frontend.md +56 -56
  9. package/assets/ec-i18n/ct.json +295 -295
  10. package/assets/ec-i18n/en.json +8 -1
  11. package/assets/ec-i18n/es.json +411 -404
  12. package/assets/ec-i18n/fr.json +0 -0
  13. package/assets/ec-i18n/gl.json +295 -295
  14. package/assets/ec-i18n/pr.json +295 -295
  15. package/assets/images/whatsapp.png +0 -0
  16. package/assets/mpFrameRedirectBase.html +114 -114
  17. package/assets/recaptcha/recaptcha-site-keys.json +3 -3
  18. package/assets/recaptcha/recaptcha-sites-prod.json +38 -38
  19. package/assets/recaptcha/recaptcha-sites.json +52 -52
  20. package/assets/redirect.html +62 -62
  21. package/assets/redsysAuthVdosBase.html +78 -78
  22. package/assets/redsysAuthVunoBase.html +84 -84
  23. package/assets/redsysFrameRedirectBase.html +102 -102
  24. package/assets/redsysFrameRedirectOutBase.html +102 -102
  25. package/assets/redsysFrameSendBase.html +71 -71
  26. package/assets/redsysProBase.html +399 -399
  27. package/assets/redsysStateBase.html +63 -63
  28. package/assets/scss/_colors.scss +17 -17
  29. package/assets/scss/_styles.scss +22 -22
  30. package/assets/svg/chevron-left-black.svg +61 -61
  31. package/assets/svg/chevron-right-black.svg +61 -61
  32. package/bundles/ng-easycommerce.umd.js +19681 -19658
  33. package/bundles/ng-easycommerce.umd.js.map +1 -1
  34. package/bundles/ng-easycommerce.umd.min.js +1 -1
  35. package/bundles/ng-easycommerce.umd.min.js.map +1 -1
  36. package/esm2015/lib/api/connection.service.js +77 -77
  37. package/esm2015/lib/classes/checkout/step-service.js +39 -39
  38. package/esm2015/lib/classes/checkout/step.js +22 -22
  39. package/esm2015/lib/classes/checkout-process-state.js +2 -2
  40. package/esm2015/lib/classes/component-helper.js +16 -14
  41. package/esm2015/lib/classes/filters/AttributesFilter.js +61 -61
  42. package/esm2015/lib/classes/filters/CategoryFilter.js +54 -54
  43. package/esm2015/lib/classes/filters/DinamycsFilter.js +58 -58
  44. package/esm2015/lib/classes/filters/Filter.js +75 -75
  45. package/esm2015/lib/classes/filters/PriceRangeFilter.js +51 -51
  46. package/esm2015/lib/classes/filters/SortFilter.js +79 -79
  47. package/esm2015/lib/classes/user-role-type.js +1 -1
  48. package/esm2015/lib/classes/user.js +108 -108
  49. package/esm2015/lib/core.consts.js +414 -414
  50. package/esm2015/lib/ec-component/account-ec/account-ec.component.js +45 -45
  51. package/esm2015/lib/ec-component/account-ec/order-ec/order-ec.component.js +115 -115
  52. package/esm2015/lib/ec-component/account-ec/orders-list-ec/orders-list-ec.component.js +192 -192
  53. package/esm2015/lib/ec-component/auth-ec/auth-ec.component.js +115 -115
  54. package/esm2015/lib/ec-component/auth-ec/confirm-account-ec/confirm-account-ec.component.js +44 -44
  55. package/esm2015/lib/ec-component/auth-ec/forgot-password-ec/forgot-password-ec.component.js +58 -58
  56. package/esm2015/lib/ec-component/auth-ec/login-form-ec/login-form-ec.component.js +108 -108
  57. package/esm2015/lib/ec-component/auth-ec/register-form-ec/register-form-ec.component.js +168 -168
  58. package/esm2015/lib/ec-component/auth-ec/register-wholesaler-form-ec/register-wholesaler-form-ec.component.js +165 -165
  59. package/esm2015/lib/ec-component/auth-ec/select-channel-ec/select-channel-ec.component.js +78 -78
  60. package/esm2015/lib/ec-component/blocks-ec/block-banner-boxes-ec/block-banner-boxes-ec.component.js +140 -138
  61. package/esm2015/lib/ec-component/blocks-ec/block-banner-full-ec/block-banner-full-ec.component.js +110 -110
  62. package/esm2015/lib/ec-component/blocks-ec/block-form-contact-ec/block-form-contact-ec.component.js +138 -138
  63. package/esm2015/lib/ec-component/blocks-ec/block-html-ec/block-html-ec.component.js +38 -38
  64. package/esm2015/lib/ec-component/blocks-ec/block-newsletter-ec/contact-form-news-ec.component.js +152 -152
  65. package/esm2015/lib/ec-component/blocks-ec/block-products-ec/block-products-ec.component.js +119 -119
  66. package/esm2015/lib/ec-component/blocks-ec/blocks-ec.component.js +70 -70
  67. package/esm2015/lib/ec-component/build-your-ec/build-your-ec.component.js +305 -305
  68. package/esm2015/lib/ec-component/build-your-ec/product-found-ec/product-found-ec.component.js +85 -85
  69. package/esm2015/lib/ec-component/cart-ec/cart-ec.component.js +404 -404
  70. package/esm2015/lib/ec-component/checkout-ec/checkout-ec.component.js +152 -152
  71. package/esm2015/lib/ec-component/checkout-ec/dataform-ec/dataform-ec.component.js +424 -424
  72. package/esm2015/lib/ec-component/checkout-ec/detail-checkout-block-ec/detail-checkout-block-ec.component.js +103 -99
  73. package/esm2015/lib/ec-component/checkout-ec/payment-ec/payment-ec.component.js +146 -146
  74. package/esm2015/lib/ec-component/checkout-ec/shipment-ec/shipment-ec.component.js +112 -112
  75. package/esm2015/lib/ec-component/checkout-ec/step-ec/step-ec.component.js +53 -53
  76. package/esm2015/lib/ec-component/checkout-ec/success-ec/success-ec.component.js +66 -66
  77. package/esm2015/lib/ec-component/checkout-error-ec/checkout-error-ec.component.js +80 -80
  78. package/esm2015/lib/ec-component/collection-ec/collection-ec.component.js +220 -220
  79. package/esm2015/lib/ec-component/compared-products-ec/compared-products-ec.component.js +186 -186
  80. package/esm2015/lib/ec-component/cookies-ec/cookies-ec.component.js +109 -109
  81. package/esm2015/lib/ec-component/cookies-ec/modal-config-ec/modal-config-ec.component.js +32 -32
  82. package/esm2015/lib/ec-component/cookies-ec/modal-cookies-ec/modal-cookies-ec.component.js +34 -34
  83. package/esm2015/lib/ec-component/cookies-ec/sidebar-cookies-ec/sidebar-cookies-ec.component.js +34 -34
  84. package/esm2015/lib/ec-component/cookies-ec/toast-cookies-ec/toast-cookies-ec.component.js +35 -35
  85. package/esm2015/lib/ec-component/coupon-ec/coupon-ec.component.js +53 -53
  86. package/esm2015/lib/ec-component/faqs-content-ec/faqs-content-ec.component.js +49 -49
  87. package/esm2015/lib/ec-component/filters-ec/filters-ec.component.js +152 -152
  88. package/esm2015/lib/ec-component/filters-top-ec/filters-top-ec.component.js +102 -102
  89. package/esm2015/lib/ec-component/footer-ec/footer-ec.component.js +82 -80
  90. package/esm2015/lib/ec-component/header-ec/header-ec.component.js +199 -197
  91. package/esm2015/lib/ec-component/home-ec/home-ec.component.js +37 -37
  92. package/esm2015/lib/ec-component/index.js +244 -244
  93. package/esm2015/lib/ec-component/login-ec/login-ec.component.js +102 -102
  94. package/esm2015/lib/ec-component/multiple-items-to-cart-ec/multiple-items-to-cart-ec.component.js +90 -90
  95. package/esm2015/lib/ec-component/password-reset-ec/password-reset-ec.component.js +103 -103
  96. package/esm2015/lib/ec-component/product-detail-ec/product-detail-ec.component.js +172 -172
  97. package/esm2015/lib/ec-component/product-ec/product-ec.component.js +140 -140
  98. package/esm2015/lib/ec-component/related-products-ec/related-products-ec.component.js +94 -94
  99. package/esm2015/lib/ec-component/reviews-ec/reviews-ec.component.js +69 -69
  100. package/esm2015/lib/ec-component/reviews-form-ec/reviews-form-ec.component.js +138 -138
  101. package/esm2015/lib/ec-component/section-container-ec/section-container-ec.component.js +86 -86
  102. package/esm2015/lib/ec-component/seller-dashboard-container-ec/seller-dashboard-container-ec.component.js +130 -130
  103. package/esm2015/lib/ec-component/share-block-ec/share-block-ec.component.js +149 -149
  104. package/esm2015/lib/ec-component/sidebar-ec/sidebar-ec.component.js +133 -133
  105. package/esm2015/lib/ec-component/stores-ec/stores-ec.component.js +192 -192
  106. package/esm2015/lib/ec-component/variants-ec/variants-ec.component.js +56 -56
  107. package/esm2015/lib/ec-component/widgets-ec/bamboo-ec/bamboo-ec.component.js +205 -205
  108. package/esm2015/lib/ec-component/widgets-ec/bancard-catastro-ec/bancard-catastro-ec.component.js +296 -296
  109. package/esm2015/lib/ec-component/widgets-ec/bancard-ec/bancard-ec.component.js +154 -154
  110. package/esm2015/lib/ec-component/widgets-ec/bancard-redirect-ec/bancard-redirect-ec.component.js +144 -144
  111. package/esm2015/lib/ec-component/widgets-ec/cart-load-ec/cart-load-ec.component.js +49 -49
  112. package/esm2015/lib/ec-component/widgets-ec/ceca-redirect-ec/ceca-redirect-ec.component.js +133 -133
  113. package/esm2015/lib/ec-component/widgets-ec/culqi-ec/culqi-ec.component.js +152 -152
  114. package/esm2015/lib/ec-component/widgets-ec/decidir-ec/decidir-ec.component.js +175 -175
  115. package/esm2015/lib/ec-component/widgets-ec/loading-full-ec/loading-full-ec.component.js +30 -30
  116. package/esm2015/lib/ec-component/widgets-ec/loading-inline-ec/loading-inline-ec.component.js +26 -26
  117. package/esm2015/lib/ec-component/widgets-ec/loading-section-ec/loading-section-ec.component.js +21 -21
  118. package/esm2015/lib/ec-component/widgets-ec/mercadopago-ec/mp-redirect-ec/mp-redirect-ec.component.js +156 -156
  119. package/esm2015/lib/ec-component/widgets-ec/mercadopago-ec/mpcredit-ec/mpcredit-ec.component.js +368 -368
  120. package/esm2015/lib/ec-component/widgets-ec/mobbex-ec/mobbex-ec.component.js +151 -151
  121. package/esm2015/lib/ec-component/widgets-ec/paypal-express-ec/paypal-express-ec.component.js +178 -178
  122. package/esm2015/lib/ec-component/widgets-ec/place-to-pay-ec/place-to-pay-ec.component.js +125 -125
  123. package/esm2015/lib/ec-component/widgets-ec/price-ec/price-ec.component.js +99 -99
  124. package/esm2015/lib/ec-component/widgets-ec/rating-ec/rating-ec.component.js +83 -83
  125. package/esm2015/lib/ec-component/widgets-ec/re-captcha-ec/re-captcha-ec.component.js +50 -50
  126. package/esm2015/lib/ec-component/widgets-ec/redsys-catch-ec/redsys-catch-ec.component.js +90 -90
  127. package/esm2015/lib/ec-component/widgets-ec/redsys-pro-ec/redsys-pro-ec.component.js +143 -143
  128. package/esm2015/lib/ec-component/widgets-ec/redsys-redirect-ec/redsys-redirect-ec.component.js +128 -128
  129. package/esm2015/lib/ec-component/widgets-ec/redsys-redirect-out-ec/redsys-redirect-out-ec.component.js +145 -145
  130. package/esm2015/lib/ec-component/widgets-ec/zoom-ec/magnizoom.component.js +167 -167
  131. package/esm2015/lib/ec-directive/add-action-redirect.directive.js +85 -85
  132. package/esm2015/lib/ec-directive/auth-wholesaler.directive.js +54 -54
  133. package/esm2015/lib/ec-directive/index.js +36 -36
  134. package/esm2015/lib/ec-directive/product-mini-standard.directive.js +65 -65
  135. package/esm2015/lib/ec-directive/product-off.directive.js +144 -144
  136. package/esm2015/lib/ec-directive/product-stock.directive.js +75 -75
  137. package/esm2015/lib/ec-directive/reload-view.directive.js +34 -34
  138. package/esm2015/lib/ec-pipe/ec-currency-symbol.pipe.js +72 -72
  139. package/esm2015/lib/ec-pipe/ec-sanitizer-html.pipe.js +26 -26
  140. package/esm2015/lib/ec-pipe/ec-sanitizer-url.pipe.js +26 -26
  141. package/esm2015/lib/ec-pipe/index.js +13 -13
  142. package/esm2015/lib/guards/able-buyer-guard.service.js +36 -36
  143. package/esm2015/lib/guards/auth-guard.service.js +36 -36
  144. package/esm2015/lib/guards/checkout-ready.service.js +36 -36
  145. package/esm2015/lib/guards/loggedin-guard.service.js +36 -36
  146. package/esm2015/lib/guards/user-role-guard.service.js +38 -38
  147. package/esm2015/lib/interceptors/auth.interceptor.js +55 -55
  148. package/esm2015/lib/interceptors/customer.interceptor.js +48 -48
  149. package/esm2015/lib/interfaces/Script.js +1 -1
  150. package/esm2015/lib/interfaces/analytics/event-key.model.js +1 -1
  151. package/esm2015/lib/interfaces/analytics/facebook-pixel/facebook-pixel-model.js +1 -1
  152. package/esm2015/lib/interfaces/analytics/gtm-config.js +1 -1
  153. package/esm2015/lib/interfaces/analytics/metricool-pixel.js +1 -1
  154. package/esm2015/lib/interfaces/block.js +1 -1
  155. package/esm2015/lib/interfaces/cart/cart-affordable.js +1 -1
  156. package/esm2015/lib/interfaces/checkout/checkout-error.js +1 -1
  157. package/esm2015/lib/interfaces/checkout-data.js +1 -1
  158. package/esm2015/lib/interfaces/choose-options/filter-option.js +6 -6
  159. package/esm2015/lib/interfaces/choose-options/options-of-product-list.js +1 -1
  160. package/esm2015/lib/interfaces/cookies.js +1 -1
  161. package/esm2015/lib/interfaces/core.interfaces.js +1 -1
  162. package/esm2015/lib/interfaces/coupon.js +1 -1
  163. package/esm2015/lib/interfaces/deserializable.js +1 -1
  164. package/esm2015/lib/interfaces/faqs.js +1 -1
  165. package/esm2015/lib/interfaces/filter.js +1 -1
  166. package/esm2015/lib/interfaces/filterStep.js +1 -1
  167. package/esm2015/lib/interfaces/observable-error.interface.js +1 -1
  168. package/esm2015/lib/interfaces/paginate.js +1 -1
  169. package/esm2015/lib/interfaces/parameters.js +1 -1
  170. package/esm2015/lib/interfaces/selection.js +4 -4
  171. package/esm2015/lib/interfaces/step.js +1 -1
  172. package/esm2015/lib/interfaces/store.js +1 -1
  173. package/esm2015/lib/ng-easycommerce.module.js +181 -181
  174. package/esm2015/lib/pipes/order-by.pipe.js +101 -101
  175. package/esm2015/lib/services/account/orders.service.js +102 -102
  176. package/esm2015/lib/services/analytics.service.js +57 -57
  177. package/esm2015/lib/services/auth.service.js +352 -352
  178. package/esm2015/lib/services/banner.service.js +72 -72
  179. package/esm2015/lib/services/blocks/blocks-repository.service.js +62 -62
  180. package/esm2015/lib/services/blocks/blocks.service.js +71 -71
  181. package/esm2015/lib/services/captcha.service.js +130 -130
  182. package/esm2015/lib/services/cart.service.js +574 -573
  183. package/esm2015/lib/services/channel-config.service.js +105 -105
  184. package/esm2015/lib/services/checkout/addressing.service.js +222 -222
  185. package/esm2015/lib/services/checkout/checkout.service.js +233 -233
  186. package/esm2015/lib/services/checkout/error-handler.service.js +81 -81
  187. package/esm2015/lib/services/checkout/payment.service.js +79 -79
  188. package/esm2015/lib/services/checkout/shipment.service.js +183 -183
  189. package/esm2015/lib/services/concatenated-associations.service.js +120 -120
  190. package/esm2015/lib/services/cookies.service.js +208 -208
  191. package/esm2015/lib/services/currency.service.js +161 -161
  192. package/esm2015/lib/services/dataform.service.js +46 -46
  193. package/esm2015/lib/services/filters.service.js +122 -122
  194. package/esm2015/lib/services/gift-card.service.js +61 -61
  195. package/esm2015/lib/services/ip-address.service.js +34 -34
  196. package/esm2015/lib/services/options.service.js +275 -275
  197. package/esm2015/lib/services/pagination.service.js +73 -73
  198. package/esm2015/lib/services/parameters.service.js +72 -72
  199. package/esm2015/lib/services/products/product-detail.service.js +432 -432
  200. package/esm2015/lib/services/products/products.service.js +287 -287
  201. package/esm2015/lib/services/reviews.service.js +107 -107
  202. package/esm2015/lib/services/stores.service.js +37 -37
  203. package/esm2015/lib/services/windows.service.js +52 -52
  204. package/esm2015/lib/services/wishlist.service.js +70 -70
  205. package/esm2015/lib/strategies/standard.strategy.js +43 -43
  206. package/esm2015/lib/utils/analytics/doppler.service.js +37 -37
  207. package/esm2015/lib/utils/analytics/facebook-pixel.service.js +141 -141
  208. package/esm2015/lib/utils/analytics/google-analytics.service.js +265 -265
  209. package/esm2015/lib/utils/analytics/gtm.service.js +341 -341
  210. package/esm2015/lib/utils/analytics/metricool-pixel.service.js +48 -48
  211. package/esm2015/lib/utils/options-of-product-list-data.service.js +96 -96
  212. package/esm2015/lib/utils/order-util.service.js +72 -72
  213. package/esm2015/lib/utils/payment-utils.service.js +35 -35
  214. package/esm2015/lib/utils/shipment-transformer.service.js +66 -66
  215. package/esm2015/lib/utils/toast.service.js +42 -42
  216. package/esm2015/lib/utils/utils.service.js +20 -20
  217. package/esm2015/ng-easycommerce.js +34 -34
  218. package/esm2015/public-api.js +146 -146
  219. package/esm5/lib/api/connection.service.js +90 -90
  220. package/esm5/lib/classes/checkout/step-service.js +74 -74
  221. package/esm5/lib/classes/checkout/step.js +25 -25
  222. package/esm5/lib/classes/checkout-process-state.js +2 -2
  223. package/esm5/lib/classes/component-helper.js +22 -18
  224. package/esm5/lib/classes/filters/AttributesFilter.js +79 -79
  225. package/esm5/lib/classes/filters/CategoryFilter.js +72 -72
  226. package/esm5/lib/classes/filters/DinamycsFilter.js +76 -76
  227. package/esm5/lib/classes/filters/Filter.js +78 -78
  228. package/esm5/lib/classes/filters/PriceRangeFilter.js +68 -68
  229. package/esm5/lib/classes/filters/SortFilter.js +97 -97
  230. package/esm5/lib/classes/user-role-type.js +1 -1
  231. package/esm5/lib/classes/user.js +120 -120
  232. package/esm5/lib/core.consts.js +434 -434
  233. package/esm5/lib/ec-component/account-ec/account-ec.component.js +62 -62
  234. package/esm5/lib/ec-component/account-ec/order-ec/order-ec.component.js +169 -169
  235. package/esm5/lib/ec-component/account-ec/orders-list-ec/orders-list-ec.component.js +209 -209
  236. package/esm5/lib/ec-component/auth-ec/auth-ec.component.js +132 -132
  237. package/esm5/lib/ec-component/auth-ec/confirm-account-ec/confirm-account-ec.component.js +60 -60
  238. package/esm5/lib/ec-component/auth-ec/forgot-password-ec/forgot-password-ec.component.js +74 -74
  239. package/esm5/lib/ec-component/auth-ec/login-form-ec/login-form-ec.component.js +125 -125
  240. package/esm5/lib/ec-component/auth-ec/register-form-ec/register-form-ec.component.js +185 -185
  241. package/esm5/lib/ec-component/auth-ec/register-wholesaler-form-ec/register-wholesaler-form-ec.component.js +182 -182
  242. package/esm5/lib/ec-component/auth-ec/select-channel-ec/select-channel-ec.component.js +106 -106
  243. package/esm5/lib/ec-component/blocks-ec/block-banner-boxes-ec/block-banner-boxes-ec.component.js +170 -166
  244. package/esm5/lib/ec-component/blocks-ec/block-banner-full-ec/block-banner-full-ec.component.js +138 -138
  245. package/esm5/lib/ec-component/blocks-ec/block-form-contact-ec/block-form-contact-ec.component.js +165 -165
  246. package/esm5/lib/ec-component/blocks-ec/block-html-ec/block-html-ec.component.js +54 -54
  247. package/esm5/lib/ec-component/blocks-ec/block-newsletter-ec/contact-form-news-ec.component.js +180 -180
  248. package/esm5/lib/ec-component/blocks-ec/block-products-ec/block-products-ec.component.js +146 -146
  249. package/esm5/lib/ec-component/blocks-ec/blocks-ec.component.js +90 -90
  250. package/esm5/lib/ec-component/build-your-ec/build-your-ec.component.js +327 -327
  251. package/esm5/lib/ec-component/build-your-ec/product-found-ec/product-found-ec.component.js +112 -112
  252. package/esm5/lib/ec-component/cart-ec/cart-ec.component.js +488 -488
  253. package/esm5/lib/ec-component/checkout-ec/checkout-ec.component.js +169 -169
  254. package/esm5/lib/ec-component/checkout-ec/dataform-ec/dataform-ec.component.js +509 -509
  255. package/esm5/lib/ec-component/checkout-ec/detail-checkout-block-ec/detail-checkout-block-ec.component.js +120 -116
  256. package/esm5/lib/ec-component/checkout-ec/payment-ec/payment-ec.component.js +236 -236
  257. package/esm5/lib/ec-component/checkout-ec/shipment-ec/shipment-ec.component.js +162 -162
  258. package/esm5/lib/ec-component/checkout-ec/step-ec/step-ec.component.js +69 -69
  259. package/esm5/lib/ec-component/checkout-ec/success-ec/success-ec.component.js +83 -83
  260. package/esm5/lib/ec-component/checkout-error-ec/checkout-error-ec.component.js +97 -97
  261. package/esm5/lib/ec-component/collection-ec/collection-ec.component.js +261 -261
  262. package/esm5/lib/ec-component/compared-products-ec/compared-products-ec.component.js +209 -209
  263. package/esm5/lib/ec-component/cookies-ec/cookies-ec.component.js +126 -126
  264. package/esm5/lib/ec-component/cookies-ec/modal-config-ec/modal-config-ec.component.js +34 -34
  265. package/esm5/lib/ec-component/cookies-ec/modal-cookies-ec/modal-cookies-ec.component.js +36 -36
  266. package/esm5/lib/ec-component/cookies-ec/sidebar-cookies-ec/sidebar-cookies-ec.component.js +36 -36
  267. package/esm5/lib/ec-component/cookies-ec/toast-cookies-ec/toast-cookies-ec.component.js +37 -37
  268. package/esm5/lib/ec-component/coupon-ec/coupon-ec.component.js +71 -71
  269. package/esm5/lib/ec-component/faqs-content-ec/faqs-content-ec.component.js +66 -66
  270. package/esm5/lib/ec-component/filters-ec/filters-ec.component.js +168 -168
  271. package/esm5/lib/ec-component/filters-top-ec/filters-top-ec.component.js +118 -118
  272. package/esm5/lib/ec-component/footer-ec/footer-ec.component.js +113 -109
  273. package/esm5/lib/ec-component/header-ec/header-ec.component.js +260 -256
  274. package/esm5/lib/ec-component/home-ec/home-ec.component.js +53 -53
  275. package/esm5/lib/ec-component/index.js +244 -244
  276. package/esm5/lib/ec-component/login-ec/login-ec.component.js +118 -118
  277. package/esm5/lib/ec-component/multiple-items-to-cart-ec/multiple-items-to-cart-ec.component.js +106 -106
  278. package/esm5/lib/ec-component/password-reset-ec/password-reset-ec.component.js +119 -119
  279. package/esm5/lib/ec-component/product-detail-ec/product-detail-ec.component.js +199 -199
  280. package/esm5/lib/ec-component/product-ec/product-ec.component.js +158 -158
  281. package/esm5/lib/ec-component/related-products-ec/related-products-ec.component.js +111 -111
  282. package/esm5/lib/ec-component/reviews-ec/reviews-ec.component.js +85 -85
  283. package/esm5/lib/ec-component/reviews-form-ec/reviews-form-ec.component.js +155 -155
  284. package/esm5/lib/ec-component/section-container-ec/section-container-ec.component.js +103 -103
  285. package/esm5/lib/ec-component/seller-dashboard-container-ec/seller-dashboard-container-ec.component.js +149 -149
  286. package/esm5/lib/ec-component/share-block-ec/share-block-ec.component.js +166 -166
  287. package/esm5/lib/ec-component/sidebar-ec/sidebar-ec.component.js +136 -136
  288. package/esm5/lib/ec-component/stores-ec/stores-ec.component.js +214 -214
  289. package/esm5/lib/ec-component/variants-ec/variants-ec.component.js +72 -72
  290. package/esm5/lib/ec-component/widgets-ec/bamboo-ec/bamboo-ec.component.js +221 -221
  291. package/esm5/lib/ec-component/widgets-ec/bancard-catastro-ec/bancard-catastro-ec.component.js +313 -313
  292. package/esm5/lib/ec-component/widgets-ec/bancard-ec/bancard-ec.component.js +170 -170
  293. package/esm5/lib/ec-component/widgets-ec/bancard-redirect-ec/bancard-redirect-ec.component.js +160 -160
  294. package/esm5/lib/ec-component/widgets-ec/cart-load-ec/cart-load-ec.component.js +83 -83
  295. package/esm5/lib/ec-component/widgets-ec/ceca-redirect-ec/ceca-redirect-ec.component.js +149 -149
  296. package/esm5/lib/ec-component/widgets-ec/culqi-ec/culqi-ec.component.js +156 -156
  297. package/esm5/lib/ec-component/widgets-ec/decidir-ec/decidir-ec.component.js +192 -192
  298. package/esm5/lib/ec-component/widgets-ec/loading-full-ec/loading-full-ec.component.js +46 -46
  299. package/esm5/lib/ec-component/widgets-ec/loading-inline-ec/loading-inline-ec.component.js +42 -42
  300. package/esm5/lib/ec-component/widgets-ec/loading-section-ec/loading-section-ec.component.js +23 -23
  301. package/esm5/lib/ec-component/widgets-ec/mercadopago-ec/mp-redirect-ec/mp-redirect-ec.component.js +174 -174
  302. package/esm5/lib/ec-component/widgets-ec/mercadopago-ec/mpcredit-ec/mpcredit-ec.component.js +396 -396
  303. package/esm5/lib/ec-component/widgets-ec/mobbex-ec/mobbex-ec.component.js +167 -167
  304. package/esm5/lib/ec-component/widgets-ec/paypal-express-ec/paypal-express-ec.component.js +231 -231
  305. package/esm5/lib/ec-component/widgets-ec/place-to-pay-ec/place-to-pay-ec.component.js +143 -143
  306. package/esm5/lib/ec-component/widgets-ec/price-ec/price-ec.component.js +120 -120
  307. package/esm5/lib/ec-component/widgets-ec/rating-ec/rating-ec.component.js +100 -100
  308. package/esm5/lib/ec-component/widgets-ec/re-captcha-ec/re-captcha-ec.component.js +53 -53
  309. package/esm5/lib/ec-component/widgets-ec/redsys-catch-ec/redsys-catch-ec.component.js +124 -124
  310. package/esm5/lib/ec-component/widgets-ec/redsys-pro-ec/redsys-pro-ec.component.js +159 -159
  311. package/esm5/lib/ec-component/widgets-ec/redsys-redirect-ec/redsys-redirect-ec.component.js +144 -144
  312. package/esm5/lib/ec-component/widgets-ec/redsys-redirect-out-ec/redsys-redirect-out-ec.component.js +162 -162
  313. package/esm5/lib/ec-component/widgets-ec/zoom-ec/magnizoom.component.js +181 -181
  314. package/esm5/lib/ec-directive/add-action-redirect.directive.js +104 -104
  315. package/esm5/lib/ec-directive/auth-wholesaler.directive.js +60 -60
  316. package/esm5/lib/ec-directive/index.js +36 -36
  317. package/esm5/lib/ec-directive/product-mini-standard.directive.js +72 -72
  318. package/esm5/lib/ec-directive/product-off.directive.js +163 -163
  319. package/esm5/lib/ec-directive/product-stock.directive.js +81 -81
  320. package/esm5/lib/ec-directive/reload-view.directive.js +35 -35
  321. package/esm5/lib/ec-pipe/ec-currency-symbol.pipe.js +74 -74
  322. package/esm5/lib/ec-pipe/ec-sanitizer-html.pipe.js +27 -27
  323. package/esm5/lib/ec-pipe/ec-sanitizer-url.pipe.js +27 -27
  324. package/esm5/lib/ec-pipe/index.js +13 -13
  325. package/esm5/lib/guards/able-buyer-guard.service.js +37 -37
  326. package/esm5/lib/guards/auth-guard.service.js +37 -37
  327. package/esm5/lib/guards/checkout-ready.service.js +37 -37
  328. package/esm5/lib/guards/loggedin-guard.service.js +37 -37
  329. package/esm5/lib/guards/user-role-guard.service.js +39 -39
  330. package/esm5/lib/interceptors/auth.interceptor.js +57 -57
  331. package/esm5/lib/interceptors/customer.interceptor.js +50 -50
  332. package/esm5/lib/interfaces/Script.js +1 -1
  333. package/esm5/lib/interfaces/analytics/event-key.model.js +1 -1
  334. package/esm5/lib/interfaces/analytics/facebook-pixel/facebook-pixel-model.js +1 -1
  335. package/esm5/lib/interfaces/analytics/gtm-config.js +1 -1
  336. package/esm5/lib/interfaces/analytics/metricool-pixel.js +1 -1
  337. package/esm5/lib/interfaces/block.js +1 -1
  338. package/esm5/lib/interfaces/cart/cart-affordable.js +1 -1
  339. package/esm5/lib/interfaces/checkout/checkout-error.js +1 -1
  340. package/esm5/lib/interfaces/checkout-data.js +1 -1
  341. package/esm5/lib/interfaces/choose-options/filter-option.js +6 -6
  342. package/esm5/lib/interfaces/choose-options/options-of-product-list.js +1 -1
  343. package/esm5/lib/interfaces/cookies.js +1 -1
  344. package/esm5/lib/interfaces/core.interfaces.js +1 -1
  345. package/esm5/lib/interfaces/coupon.js +1 -1
  346. package/esm5/lib/interfaces/deserializable.js +1 -1
  347. package/esm5/lib/interfaces/faqs.js +1 -1
  348. package/esm5/lib/interfaces/filter.js +1 -1
  349. package/esm5/lib/interfaces/filterStep.js +1 -1
  350. package/esm5/lib/interfaces/observable-error.interface.js +1 -1
  351. package/esm5/lib/interfaces/paginate.js +1 -1
  352. package/esm5/lib/interfaces/parameters.js +1 -1
  353. package/esm5/lib/interfaces/selection.js +4 -4
  354. package/esm5/lib/interfaces/step.js +1 -1
  355. package/esm5/lib/interfaces/store.js +1 -1
  356. package/esm5/lib/ng-easycommerce.module.js +185 -185
  357. package/esm5/lib/pipes/order-by.pipe.js +106 -106
  358. package/esm5/lib/services/account/orders.service.js +120 -120
  359. package/esm5/lib/services/analytics.service.js +60 -60
  360. package/esm5/lib/services/auth.service.js +426 -426
  361. package/esm5/lib/services/banner.service.js +81 -81
  362. package/esm5/lib/services/blocks/blocks-repository.service.js +94 -94
  363. package/esm5/lib/services/blocks/blocks.service.js +79 -79
  364. package/esm5/lib/services/captcha.service.js +132 -132
  365. package/esm5/lib/services/cart.service.js +705 -702
  366. package/esm5/lib/services/channel-config.service.js +107 -107
  367. package/esm5/lib/services/checkout/addressing.service.js +280 -280
  368. package/esm5/lib/services/checkout/checkout.service.js +316 -316
  369. package/esm5/lib/services/checkout/error-handler.service.js +83 -83
  370. package/esm5/lib/services/checkout/payment.service.js +129 -129
  371. package/esm5/lib/services/checkout/shipment.service.js +265 -265
  372. package/esm5/lib/services/concatenated-associations.service.js +162 -162
  373. package/esm5/lib/services/cookies.service.js +222 -222
  374. package/esm5/lib/services/currency.service.js +205 -205
  375. package/esm5/lib/services/dataform.service.js +48 -48
  376. package/esm5/lib/services/filters.service.js +125 -125
  377. package/esm5/lib/services/gift-card.service.js +63 -63
  378. package/esm5/lib/services/ip-address.service.js +35 -35
  379. package/esm5/lib/services/options.service.js +376 -376
  380. package/esm5/lib/services/pagination.service.js +79 -79
  381. package/esm5/lib/services/parameters.service.js +74 -74
  382. package/esm5/lib/services/products/product-detail.service.js +497 -497
  383. package/esm5/lib/services/products/products.service.js +345 -345
  384. package/esm5/lib/services/reviews.service.js +116 -116
  385. package/esm5/lib/services/stores.service.js +39 -39
  386. package/esm5/lib/services/windows.service.js +79 -79
  387. package/esm5/lib/services/wishlist.service.js +71 -71
  388. package/esm5/lib/strategies/standard.strategy.js +44 -44
  389. package/esm5/lib/utils/analytics/doppler.service.js +39 -39
  390. package/esm5/lib/utils/analytics/facebook-pixel.service.js +145 -145
  391. package/esm5/lib/utils/analytics/google-analytics.service.js +280 -280
  392. package/esm5/lib/utils/analytics/gtm.service.js +358 -358
  393. package/esm5/lib/utils/analytics/metricool-pixel.service.js +40 -40
  394. package/esm5/lib/utils/options-of-product-list-data.service.js +98 -98
  395. package/esm5/lib/utils/order-util.service.js +75 -75
  396. package/esm5/lib/utils/payment-utils.service.js +37 -37
  397. package/esm5/lib/utils/shipment-transformer.service.js +78 -78
  398. package/esm5/lib/utils/toast.service.js +61 -61
  399. package/esm5/lib/utils/utils.service.js +22 -22
  400. package/esm5/ng-easycommerce.js +34 -34
  401. package/esm5/public-api.js +146 -146
  402. package/fesm2015/ng-easycommerce.js +16657 -16644
  403. package/fesm2015/ng-easycommerce.js.map +1 -1
  404. package/fesm5/ng-easycommerce.js +19685 -19662
  405. package/fesm5/ng-easycommerce.js.map +1 -1
  406. package/lib/api/connection.service.d.ts +28 -28
  407. package/lib/classes/checkout/step-service.d.ts +28 -28
  408. package/lib/classes/checkout/step.d.ts +14 -14
  409. package/lib/classes/checkout-process-state.d.ts +12 -12
  410. package/lib/classes/component-helper.d.ts +8 -8
  411. package/lib/classes/filters/AttributesFilter.d.ts +18 -18
  412. package/lib/classes/filters/CategoryFilter.d.ts +17 -17
  413. package/lib/classes/filters/DinamycsFilter.d.ts +15 -15
  414. package/lib/classes/filters/Filter.d.ts +19 -19
  415. package/lib/classes/filters/PriceRangeFilter.d.ts +18 -18
  416. package/lib/classes/filters/SortFilter.d.ts +15 -15
  417. package/lib/classes/user-role-type.d.ts +5 -5
  418. package/lib/classes/user.d.ts +68 -68
  419. package/lib/core.consts.d.ts +216 -216
  420. package/lib/ec-component/account-ec/account-ec.component.d.ts +13 -13
  421. package/lib/ec-component/account-ec/order-ec/order-ec.component.d.ts +33 -33
  422. package/lib/ec-component/account-ec/orders-list-ec/orders-list-ec.component.d.ts +84 -84
  423. package/lib/ec-component/auth-ec/auth-ec.component.d.ts +35 -35
  424. package/lib/ec-component/auth-ec/confirm-account-ec/confirm-account-ec.component.d.ts +13 -13
  425. package/lib/ec-component/auth-ec/forgot-password-ec/forgot-password-ec.component.d.ts +16 -16
  426. package/lib/ec-component/auth-ec/login-form-ec/login-form-ec.component.d.ts +26 -26
  427. package/lib/ec-component/auth-ec/register-form-ec/register-form-ec.component.d.ts +34 -34
  428. package/lib/ec-component/auth-ec/register-wholesaler-form-ec/register-wholesaler-form-ec.component.d.ts +42 -42
  429. package/lib/ec-component/auth-ec/select-channel-ec/select-channel-ec.component.d.ts +23 -23
  430. package/lib/ec-component/blocks-ec/block-banner-boxes-ec/block-banner-boxes-ec.component.d.ts +34 -34
  431. package/lib/ec-component/blocks-ec/block-banner-full-ec/block-banner-full-ec.component.d.ts +27 -27
  432. package/lib/ec-component/blocks-ec/block-form-contact-ec/block-form-contact-ec.component.d.ts +34 -34
  433. package/lib/ec-component/blocks-ec/block-html-ec/block-html-ec.component.d.ts +10 -10
  434. package/lib/ec-component/blocks-ec/block-newsletter-ec/contact-form-news-ec.component.d.ts +40 -40
  435. package/lib/ec-component/blocks-ec/block-products-ec/block-products-ec.component.d.ts +25 -25
  436. package/lib/ec-component/blocks-ec/blocks-ec.component.d.ts +24 -24
  437. package/lib/ec-component/build-your-ec/build-your-ec.component.d.ts +122 -122
  438. package/lib/ec-component/build-your-ec/product-found-ec/product-found-ec.component.d.ts +41 -41
  439. package/lib/ec-component/cart-ec/cart-ec.component.d.ts +59 -59
  440. package/lib/ec-component/checkout-ec/checkout-ec.component.d.ts +43 -43
  441. package/lib/ec-component/checkout-ec/dataform-ec/dataform-ec.component.d.ts +100 -100
  442. package/lib/ec-component/checkout-ec/detail-checkout-block-ec/detail-checkout-block-ec.component.d.ts +27 -26
  443. package/lib/ec-component/checkout-ec/payment-ec/payment-ec.component.d.ts +57 -57
  444. package/lib/ec-component/checkout-ec/shipment-ec/shipment-ec.component.d.ts +34 -34
  445. package/lib/ec-component/checkout-ec/step-ec/step-ec.component.d.ts +18 -18
  446. package/lib/ec-component/checkout-ec/success-ec/success-ec.component.d.ts +33 -33
  447. package/lib/ec-component/checkout-error-ec/checkout-error-ec.component.d.ts +25 -25
  448. package/lib/ec-component/collection-ec/collection-ec.component.d.ts +67 -67
  449. package/lib/ec-component/compared-products-ec/compared-products-ec.component.d.ts +70 -70
  450. package/lib/ec-component/cookies-ec/cookies-ec.component.d.ts +44 -44
  451. package/lib/ec-component/cookies-ec/modal-config-ec/modal-config-ec.component.d.ts +10 -10
  452. package/lib/ec-component/cookies-ec/modal-cookies-ec/modal-cookies-ec.component.d.ts +8 -8
  453. package/lib/ec-component/cookies-ec/sidebar-cookies-ec/sidebar-cookies-ec.component.d.ts +9 -9
  454. package/lib/ec-component/cookies-ec/toast-cookies-ec/toast-cookies-ec.component.d.ts +9 -9
  455. package/lib/ec-component/coupon-ec/coupon-ec.component.d.ts +17 -17
  456. package/lib/ec-component/faqs-content-ec/faqs-content-ec.component.d.ts +15 -15
  457. package/lib/ec-component/filters-ec/filters-ec.component.d.ts +33 -33
  458. package/lib/ec-component/filters-top-ec/filters-top-ec.component.d.ts +23 -23
  459. package/lib/ec-component/footer-ec/footer-ec.component.d.ts +30 -30
  460. package/lib/ec-component/header-ec/header-ec.component.d.ts +66 -66
  461. package/lib/ec-component/home-ec/home-ec.component.d.ts +13 -13
  462. package/lib/ec-component/index.d.ts +81 -81
  463. package/lib/ec-component/login-ec/login-ec.component.d.ts +26 -26
  464. package/lib/ec-component/multiple-items-to-cart-ec/multiple-items-to-cart-ec.component.d.ts +28 -28
  465. package/lib/ec-component/password-reset-ec/password-reset-ec.component.d.ts +27 -27
  466. package/lib/ec-component/product-detail-ec/product-detail-ec.component.d.ts +60 -60
  467. package/lib/ec-component/product-ec/product-ec.component.d.ts +52 -52
  468. package/lib/ec-component/related-products-ec/related-products-ec.component.d.ts +22 -22
  469. package/lib/ec-component/reviews-ec/reviews-ec.component.d.ts +29 -29
  470. package/lib/ec-component/reviews-form-ec/reviews-form-ec.component.d.ts +61 -61
  471. package/lib/ec-component/section-container-ec/section-container-ec.component.d.ts +22 -22
  472. package/lib/ec-component/seller-dashboard-container-ec/seller-dashboard-container-ec.component.d.ts +37 -37
  473. package/lib/ec-component/share-block-ec/share-block-ec.component.d.ts +26 -26
  474. package/lib/ec-component/sidebar-ec/sidebar-ec.component.d.ts +29 -29
  475. package/lib/ec-component/stores-ec/stores-ec.component.d.ts +54 -54
  476. package/lib/ec-component/variants-ec/variants-ec.component.d.ts +14 -14
  477. package/lib/ec-component/widgets-ec/bamboo-ec/bamboo-ec.component.d.ts +60 -60
  478. package/lib/ec-component/widgets-ec/bancard-catastro-ec/bancard-catastro-ec.component.d.ts +105 -105
  479. package/lib/ec-component/widgets-ec/bancard-ec/bancard-ec.component.d.ts +46 -46
  480. package/lib/ec-component/widgets-ec/bancard-redirect-ec/bancard-redirect-ec.component.d.ts +44 -44
  481. package/lib/ec-component/widgets-ec/cart-load-ec/cart-load-ec.component.d.ts +14 -14
  482. package/lib/ec-component/widgets-ec/ceca-redirect-ec/ceca-redirect-ec.component.d.ts +38 -38
  483. package/lib/ec-component/widgets-ec/culqi-ec/culqi-ec.component.d.ts +38 -38
  484. package/lib/ec-component/widgets-ec/decidir-ec/decidir-ec.component.d.ts +53 -53
  485. package/lib/ec-component/widgets-ec/loading-full-ec/loading-full-ec.component.d.ts +6 -6
  486. package/lib/ec-component/widgets-ec/loading-inline-ec/loading-inline-ec.component.d.ts +5 -5
  487. package/lib/ec-component/widgets-ec/loading-section-ec/loading-section-ec.component.d.ts +5 -5
  488. package/lib/ec-component/widgets-ec/mercadopago-ec/mp-redirect-ec/mp-redirect-ec.component.d.ts +43 -43
  489. package/lib/ec-component/widgets-ec/mercadopago-ec/mpcredit-ec/mpcredit-ec.component.d.ts +64 -64
  490. package/lib/ec-component/widgets-ec/mobbex-ec/mobbex-ec.component.d.ts +46 -46
  491. package/lib/ec-component/widgets-ec/paypal-express-ec/paypal-express-ec.component.d.ts +41 -41
  492. package/lib/ec-component/widgets-ec/place-to-pay-ec/place-to-pay-ec.component.d.ts +34 -34
  493. package/lib/ec-component/widgets-ec/price-ec/price-ec.component.d.ts +31 -31
  494. package/lib/ec-component/widgets-ec/rating-ec/rating-ec.component.d.ts +28 -28
  495. package/lib/ec-component/widgets-ec/re-captcha-ec/re-captcha-ec.component.d.ts +24 -24
  496. package/lib/ec-component/widgets-ec/redsys-catch-ec/redsys-catch-ec.component.d.ts +14 -14
  497. package/lib/ec-component/widgets-ec/redsys-pro-ec/redsys-pro-ec.component.d.ts +44 -44
  498. package/lib/ec-component/widgets-ec/redsys-redirect-ec/redsys-redirect-ec.component.d.ts +38 -38
  499. package/lib/ec-component/widgets-ec/redsys-redirect-out-ec/redsys-redirect-out-ec.component.d.ts +42 -42
  500. package/lib/ec-component/widgets-ec/zoom-ec/magnizoom.component.d.ts +66 -66
  501. package/lib/ec-directive/add-action-redirect.directive.d.ts +26 -26
  502. package/lib/ec-directive/auth-wholesaler.directive.d.ts +17 -17
  503. package/lib/ec-directive/index.d.ts +6 -6
  504. package/lib/ec-directive/product-mini-standard.directive.d.ts +19 -19
  505. package/lib/ec-directive/product-off.directive.d.ts +22 -22
  506. package/lib/ec-directive/product-stock.directive.d.ts +15 -15
  507. package/lib/ec-directive/reload-view.directive.d.ts +8 -8
  508. package/lib/ec-pipe/ec-currency-symbol.pipe.d.ts +19 -19
  509. package/lib/ec-pipe/ec-sanitizer-html.pipe.d.ts +7 -7
  510. package/lib/ec-pipe/ec-sanitizer-url.pipe.d.ts +7 -7
  511. package/lib/ec-pipe/index.d.ts +4 -4
  512. package/lib/guards/able-buyer-guard.service.d.ts +8 -8
  513. package/lib/guards/auth-guard.service.d.ts +8 -8
  514. package/lib/guards/checkout-ready.service.d.ts +8 -8
  515. package/lib/guards/loggedin-guard.service.d.ts +8 -8
  516. package/lib/guards/user-role-guard.service.d.ts +8 -8
  517. package/lib/interceptors/auth.interceptor.d.ts +9 -9
  518. package/lib/interceptors/customer.interceptor.d.ts +9 -9
  519. package/lib/interfaces/Script.d.ts +5 -5
  520. package/lib/interfaces/analytics/event-key.model.d.ts +1 -1
  521. package/lib/interfaces/analytics/facebook-pixel/facebook-pixel-model.d.ts +5 -5
  522. package/lib/interfaces/analytics/gtm-config.d.ts +6 -6
  523. package/lib/interfaces/analytics/metricool-pixel.d.ts +3 -3
  524. package/lib/interfaces/block.d.ts +33 -33
  525. package/lib/interfaces/cart/cart-affordable.d.ts +8 -8
  526. package/lib/interfaces/cart-item.d.ts +8 -8
  527. package/lib/interfaces/checkout/checkout-error.d.ts +7 -7
  528. package/lib/interfaces/checkout-data.d.ts +6 -6
  529. package/lib/interfaces/choose-options/filter-option.d.ts +16 -16
  530. package/lib/interfaces/choose-options/options-of-product-list.d.ts +5 -5
  531. package/lib/interfaces/cookies.d.ts +49 -49
  532. package/lib/interfaces/core.interfaces.d.ts +4 -4
  533. package/lib/interfaces/coupon.d.ts +5 -5
  534. package/lib/interfaces/currencyConfig.d.ts +10 -10
  535. package/lib/interfaces/deserializable.d.ts +3 -3
  536. package/lib/interfaces/faqs.d.ts +12 -12
  537. package/lib/interfaces/filter.d.ts +51 -51
  538. package/lib/interfaces/filterStep.d.ts +29 -29
  539. package/lib/interfaces/navbar-items.d.ts +9 -9
  540. package/lib/interfaces/observable-error.interface.d.ts +5 -5
  541. package/lib/interfaces/paginate.d.ts +1 -1
  542. package/lib/interfaces/parameters.d.ts +10 -10
  543. package/lib/interfaces/paramsInterfaces/paramsProductsWithUniqueVariant.d.ts +6 -6
  544. package/lib/interfaces/product.d.ts +46 -46
  545. package/lib/interfaces/selection.d.ts +10 -10
  546. package/lib/interfaces/step.d.ts +8 -8
  547. package/lib/interfaces/store.d.ts +17 -17
  548. package/lib/ng-easycommerce.module.d.ts +5 -5
  549. package/lib/pipes/order-by.pipe.d.ts +5 -5
  550. package/lib/services/account/orders.service.d.ts +29 -29
  551. package/lib/services/analytics.service.d.ts +21 -21
  552. package/lib/services/auth.service.d.ts +116 -116
  553. package/lib/services/banner.service.d.ts +26 -26
  554. package/lib/services/blocks/blocks-repository.service.d.ts +19 -19
  555. package/lib/services/blocks/blocks.service.d.ts +25 -25
  556. package/lib/services/captcha.service.d.ts +76 -76
  557. package/lib/services/cart.service.d.ts +140 -139
  558. package/lib/services/channel-config.service.d.ts +35 -35
  559. package/lib/services/checkout/addressing.service.d.ts +239 -239
  560. package/lib/services/checkout/checkout.service.d.ts +71 -71
  561. package/lib/services/checkout/error-handler.service.d.ts +19 -19
  562. package/lib/services/checkout/payment.service.d.ts +34 -34
  563. package/lib/services/checkout/shipment.service.d.ts +58 -58
  564. package/lib/services/concatenated-associations.service.d.ts +57 -57
  565. package/lib/services/cookies.service.d.ts +66 -66
  566. package/lib/services/currency.service.d.ts +65 -65
  567. package/lib/services/dataform.service.d.ts +13 -13
  568. package/lib/services/filters.service.d.ts +48 -48
  569. package/lib/services/gift-card.service.d.ts +19 -19
  570. package/lib/services/ip-address.service.d.ts +10 -10
  571. package/lib/services/options.service.d.ts +61 -61
  572. package/lib/services/pagination.service.d.ts +30 -30
  573. package/lib/services/parameters.service.d.ts +18 -18
  574. package/lib/services/products/product-detail.service.d.ts +115 -115
  575. package/lib/services/products/products.service.d.ts +101 -101
  576. package/lib/services/reviews.service.d.ts +71 -71
  577. package/lib/services/stores.service.d.ts +11 -11
  578. package/lib/services/windows.service.d.ts +13 -13
  579. package/lib/services/wishlist.service.d.ts +13 -13
  580. package/lib/strategies/standard.strategy.d.ts +12 -12
  581. package/lib/utils/analytics/doppler.service.d.ts +9 -9
  582. package/lib/utils/analytics/facebook-pixel.service.d.ts +23 -23
  583. package/lib/utils/analytics/google-analytics.service.d.ts +30 -30
  584. package/lib/utils/analytics/gtm.service.d.ts +34 -34
  585. package/lib/utils/analytics/metricool-pixel.service.d.ts +9 -9
  586. package/lib/utils/options-of-product-list-data.service.d.ts +5 -5
  587. package/lib/utils/order-util.service.d.ts +12 -12
  588. package/lib/utils/payment-utils.service.d.ts +5 -5
  589. package/lib/utils/shipment-transformer.service.d.ts +8 -8
  590. package/lib/utils/toast.service.d.ts +15 -15
  591. package/lib/utils/utils.service.d.ts +4 -4
  592. package/ng-easycommerce.d.ts +34 -34
  593. package/ng-easycommerce.metadata.json +1 -1
  594. package/package.json +1 -1
  595. package/public-api.d.ts +144 -144
@@ -1,43 +1,43 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __param = (this && this.__param) || function (paramIndex, decorator) {
8
- return function (target, key) { decorator(target, key, paramIndex); }
9
- };
10
- import { Inject, Injectable } from '@angular/core';
11
- let StandardReuseStrategy = class StandardReuseStrategy {
12
- constructor(env) {
13
- this.env = env;
14
- this.routes = [];
15
- this.storedRoutes = new Map();
16
- }
17
- shouldDetach(route) {
18
- this.routes = (this.routes.length && this.routes) || (this.env.routes || []);
19
- let result = route.data.key && this.routes.includes(route.data.key);
20
- return result;
21
- }
22
- store(route, handle) {
23
- this.storedRoutes.set(route.data.key, handle);
24
- }
25
- shouldAttach(route) {
26
- return !!this.storedRoutes.get(route.data.key);
27
- }
28
- retrieve(route) {
29
- return this.storedRoutes.get(route.data.key);
30
- }
31
- shouldReuseRoute(future, curr) {
32
- return future.routeConfig === curr.routeConfig;
33
- }
34
- };
35
- StandardReuseStrategy.ctorParameters = () => [
36
- { type: undefined, decorators: [{ type: Inject, args: ['env',] }] }
37
- ];
38
- StandardReuseStrategy = __decorate([
39
- Injectable(),
40
- __param(0, Inject('env'))
41
- ], StandardReuseStrategy);
42
- export { StandardReuseStrategy };
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQuc3RyYXRlZ3kuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy1lYXN5Y29tbWVyY2UvIiwic291cmNlcyI6WyJsaWIvc3RyYXRlZ2llcy9zdGFuZGFyZC5zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUt6RCxJQUFhLHFCQUFxQixHQUFsQyxNQUFhLHFCQUFxQjtJQUs5QixZQUFrQyxHQUFHO1FBQUgsUUFBRyxHQUFILEdBQUcsQ0FBQTtRQUg3QixXQUFNLEdBQWMsRUFBRSxDQUFDO1FBQ3ZCLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQStCLENBQUM7SUFFdEIsQ0FBQztJQUV6QyxZQUFZLENBQUMsS0FBOEI7UUFDdkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzdFLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEUsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUE4QixFQUFFLE1BQTRCO1FBQzlELElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBOEI7UUFDdkMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQThCO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBK0IsRUFBRSxJQUE2QjtRQUMzRSxPQUFPLE1BQU0sQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUNuRCxDQUFDO0NBQ0osQ0FBQTs7NENBdkJnQixNQUFNLFNBQUMsS0FBSzs7QUFMaEIscUJBQXFCO0lBRGpDLFVBQVUsRUFBRTtJQU1JLFdBQUEsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO0dBTGpCLHFCQUFxQixDQTRCakM7U0E1QlkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGUsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1JvdXRlUmV1c2VTdHJhdGVneSwgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgRGV0YWNoZWRSb3V0ZUhhbmRsZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7Q29uc3RhbnRzfSBmcm9tICcuLi9jb3JlLmNvbnN0cyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdGFuZGFyZFJldXNlU3RyYXRlZ3kgaW1wbGVtZW50cyBSb3V0ZVJldXNlU3RyYXRlZ3kge1xuXG4gICAgcHJpdmF0ZSByb3V0ZXMgOiBzdHJpbmdbXSA9IFtdO1xuICAgIHByaXZhdGUgc3RvcmVkUm91dGVzID0gbmV3IE1hcDxzdHJpbmcsIERldGFjaGVkUm91dGVIYW5kbGU+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KCdlbnYnKXByaXZhdGUgZW52KSB7fVxuXG4gICAgc2hvdWxkRGV0YWNoKHJvdXRlIDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IGJvb2xlYW4ge1xuICAgICAgICB0aGlzLnJvdXRlcyA9ICh0aGlzLnJvdXRlcy5sZW5ndGggJiYgdGhpcy5yb3V0ZXMpIHx8ICh0aGlzLmVudi5yb3V0ZXMgfHwgW10pO1xuICAgICAgICBsZXQgcmVzdWx0ID0gcm91dGUuZGF0YS5rZXkgJiYgdGhpcy5yb3V0ZXMuaW5jbHVkZXMocm91dGUuZGF0YS5rZXkpO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHN0b3JlKHJvdXRlIDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgaGFuZGxlIDogRGV0YWNoZWRSb3V0ZUhhbmRsZSk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlZFJvdXRlcy5zZXQocm91dGUuZGF0YS5rZXksIGhhbmRsZSk7XG4gICAgfVxuXG4gICAgc2hvdWxkQXR0YWNoKHJvdXRlIDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnN0b3JlZFJvdXRlcy5nZXQocm91dGUuZGF0YS5rZXkpO1xuICAgIH1cblxuICAgIHJldHJpZXZlKHJvdXRlIDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IERldGFjaGVkUm91dGVIYW5kbGUge1xuICAgICAgICByZXR1cm4gdGhpcy5zdG9yZWRSb3V0ZXMuZ2V0KHJvdXRlLmRhdGEua2V5KTtcbiAgICB9XG5cbiAgICBzaG91bGRSZXVzZVJvdXRlKGZ1dHVyZSA6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIGN1cnIgOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmdXR1cmUucm91dGVDb25maWcgPT09IGN1cnIucm91dGVDb25maWc7XG4gICAgfVxufVxuIl19
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
+ return function (target, key) { decorator(target, key, paramIndex); }
9
+ };
10
+ import { Inject, Injectable } from '@angular/core';
11
+ let StandardReuseStrategy = class StandardReuseStrategy {
12
+ constructor(env) {
13
+ this.env = env;
14
+ this.routes = [];
15
+ this.storedRoutes = new Map();
16
+ }
17
+ shouldDetach(route) {
18
+ this.routes = (this.routes.length && this.routes) || (this.env.routes || []);
19
+ let result = route.data.key && this.routes.includes(route.data.key);
20
+ return result;
21
+ }
22
+ store(route, handle) {
23
+ this.storedRoutes.set(route.data.key, handle);
24
+ }
25
+ shouldAttach(route) {
26
+ return !!this.storedRoutes.get(route.data.key);
27
+ }
28
+ retrieve(route) {
29
+ return this.storedRoutes.get(route.data.key);
30
+ }
31
+ shouldReuseRoute(future, curr) {
32
+ return future.routeConfig === curr.routeConfig;
33
+ }
34
+ };
35
+ StandardReuseStrategy.ctorParameters = () => [
36
+ { type: undefined, decorators: [{ type: Inject, args: ['env',] }] }
37
+ ];
38
+ StandardReuseStrategy = __decorate([
39
+ Injectable(),
40
+ __param(0, Inject('env'))
41
+ ], StandardReuseStrategy);
42
+ export { StandardReuseStrategy };
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQuc3RyYXRlZ3kuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy1lYXN5Y29tbWVyY2UvIiwic291cmNlcyI6WyJsaWIvc3RyYXRlZ2llcy9zdGFuZGFyZC5zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUt6RCxJQUFhLHFCQUFxQixHQUFsQyxNQUFhLHFCQUFxQjtJQUs5QixZQUFrQyxHQUFHO1FBQUgsUUFBRyxHQUFILEdBQUcsQ0FBQTtRQUg3QixXQUFNLEdBQWMsRUFBRSxDQUFDO1FBQ3ZCLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQStCLENBQUM7SUFFdEIsQ0FBQztJQUV6QyxZQUFZLENBQUMsS0FBOEI7UUFDdkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzdFLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEUsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUE4QixFQUFFLE1BQTRCO1FBQzlELElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBOEI7UUFDdkMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQThCO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBK0IsRUFBRSxJQUE2QjtRQUMzRSxPQUFPLE1BQU0sQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUNuRCxDQUFDO0NBQ0osQ0FBQTs7NENBdkJnQixNQUFNLFNBQUMsS0FBSzs7QUFMaEIscUJBQXFCO0lBRGpDLFVBQVUsRUFBRTtJQU1JLFdBQUEsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO0dBTGpCLHFCQUFxQixDQTRCakM7U0E1QlkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGUsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Um91dGVSZXVzZVN0cmF0ZWd5LCBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBEZXRhY2hlZFJvdXRlSGFuZGxlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQge0NvbnN0YW50c30gZnJvbSAnLi4vY29yZS5jb25zdHMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRSZXVzZVN0cmF0ZWd5IGltcGxlbWVudHMgUm91dGVSZXVzZVN0cmF0ZWd5IHtcclxuXHJcbiAgICBwcml2YXRlIHJvdXRlcyA6IHN0cmluZ1tdID0gW107XHJcbiAgICBwcml2YXRlIHN0b3JlZFJvdXRlcyA9IG5ldyBNYXA8c3RyaW5nLCBEZXRhY2hlZFJvdXRlSGFuZGxlPigpO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoJ2VudicpcHJpdmF0ZSBlbnYpIHt9XHJcblxyXG4gICAgc2hvdWxkRGV0YWNoKHJvdXRlIDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHRoaXMucm91dGVzID0gKHRoaXMucm91dGVzLmxlbmd0aCAmJiB0aGlzLnJvdXRlcykgfHwgKHRoaXMuZW52LnJvdXRlcyB8fCBbXSk7XHJcbiAgICAgICAgbGV0IHJlc3VsdCA9IHJvdXRlLmRhdGEua2V5ICYmIHRoaXMucm91dGVzLmluY2x1ZGVzKHJvdXRlLmRhdGEua2V5KTtcclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG5cclxuICAgIHN0b3JlKHJvdXRlIDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgaGFuZGxlIDogRGV0YWNoZWRSb3V0ZUhhbmRsZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc3RvcmVkUm91dGVzLnNldChyb3V0ZS5kYXRhLmtleSwgaGFuZGxlKTtcclxuICAgIH1cclxuXHJcbiAgICBzaG91bGRBdHRhY2gocm91dGUgOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICEhdGhpcy5zdG9yZWRSb3V0ZXMuZ2V0KHJvdXRlLmRhdGEua2V5KTtcclxuICAgIH1cclxuXHJcbiAgICByZXRyaWV2ZShyb3V0ZSA6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBEZXRhY2hlZFJvdXRlSGFuZGxlIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zdG9yZWRSb3V0ZXMuZ2V0KHJvdXRlLmRhdGEua2V5KTtcclxuICAgIH1cclxuXHJcbiAgICBzaG91bGRSZXVzZVJvdXRlKGZ1dHVyZSA6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIGN1cnIgOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIGZ1dHVyZS5yb3V0ZUNvbmZpZyA9PT0gY3Vyci5yb3V0ZUNvbmZpZztcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,37 +1,37 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __param = (this && this.__param) || function (paramIndex, decorator) {
8
- return function (target, key) { decorator(target, key, paramIndex); }
9
- };
10
- import { Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';
11
- import { DOCUMENT } from '@angular/common';
12
- let DopplerService = class DopplerService {
13
- constructor(rendererFactory, document) {
14
- this.rendererFactory = rendererFactory;
15
- this.document = document;
16
- this.isLoaded = false;
17
- this.initialize = (pixelSrc) => {
18
- this.isLoaded = true;
19
- let scriptInsert = this.renderer.createElement("script");
20
- this.renderer.setAttribute(scriptInsert, 'type', 'text/javascript');
21
- this.renderer.setAttribute(scriptInsert, 'async', 'async');
22
- this.renderer.setAttribute(scriptInsert, 'src', pixelSrc);
23
- this.renderer.appendChild(this.document.body, scriptInsert);
24
- };
25
- this.renderer = this.rendererFactory.createRenderer(null, null);
26
- }
27
- };
28
- DopplerService.ctorParameters = () => [
29
- { type: RendererFactory2 },
30
- { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
31
- ];
32
- DopplerService = __decorate([
33
- Injectable(),
34
- __param(1, Inject(DOCUMENT))
35
- ], DopplerService);
36
- export { DopplerService };
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9wcGxlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctZWFzeWNvbW1lcmNlLyIsInNvdXJjZXMiOlsibGliL3V0aWxzL2FuYWx5dGljcy9kb3BwbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUczQyxJQUFhLGNBQWMsR0FBM0IsTUFBYSxjQUFjO0lBS3ZCLFlBQW9CLGVBQWlDLEVBQTRCLFFBQWE7UUFBMUUsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQUs7UUFIdEYsYUFBUSxHQUFHLEtBQUssQ0FBQztRQU96QixlQUFVLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQTtZQUNwQixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6RCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixDQUFDLENBQUM7WUFDcEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ2hFLENBQUMsQ0FBQTtRQVZHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0FXSixDQUFBOztZQWJ3QyxnQkFBZ0I7NENBQUcsTUFBTSxTQUFDLFFBQVE7O0FBTDlELGNBQWM7SUFEMUIsVUFBVSxFQUFFO0lBTStDLFdBQUEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0dBTC9ELGNBQWMsQ0FrQjFCO1NBbEJZLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIFJlbmRlcmVyMiwgUmVuZGVyZXJGYWN0b3J5MiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRG9wcGxlclNlcnZpY2Uge1xuXG4gICAgcHJpdmF0ZSBpc0xvYWRlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyLCBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBhbnkpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlciA9IHRoaXMucmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xuICAgIH1cblxuICAgIGluaXRpYWxpemUgPSAocGl4ZWxTcmMpID0+IHtcbiAgICAgICAgdGhpcy5pc0xvYWRlZCA9IHRydWVcbiAgICAgICAgbGV0IHNjcmlwdEluc2VydCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudChcInNjcmlwdFwiKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoc2NyaXB0SW5zZXJ0LCAndHlwZScsICd0ZXh0L2phdmFzY3JpcHQnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoc2NyaXB0SW5zZXJ0LCAnYXN5bmMnLCAnYXN5bmMnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoc2NyaXB0SW5zZXJ0LCAnc3JjJywgcGl4ZWxTcmMpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZG9jdW1lbnQuYm9keSwgc2NyaXB0SW5zZXJ0KTtcbiAgICB9XG5cbn1cbiJdfQ==
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
+ return function (target, key) { decorator(target, key, paramIndex); }
9
+ };
10
+ import { Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';
11
+ import { DOCUMENT } from '@angular/common';
12
+ let DopplerService = class DopplerService {
13
+ constructor(rendererFactory, document) {
14
+ this.rendererFactory = rendererFactory;
15
+ this.document = document;
16
+ this.isLoaded = false;
17
+ this.initialize = (pixelSrc) => {
18
+ this.isLoaded = true;
19
+ let scriptInsert = this.renderer.createElement("script");
20
+ this.renderer.setAttribute(scriptInsert, 'type', 'text/javascript');
21
+ this.renderer.setAttribute(scriptInsert, 'async', 'async');
22
+ this.renderer.setAttribute(scriptInsert, 'src', pixelSrc);
23
+ this.renderer.appendChild(this.document.body, scriptInsert);
24
+ };
25
+ this.renderer = this.rendererFactory.createRenderer(null, null);
26
+ }
27
+ };
28
+ DopplerService.ctorParameters = () => [
29
+ { type: RendererFactory2 },
30
+ { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
31
+ ];
32
+ DopplerService = __decorate([
33
+ Injectable(),
34
+ __param(1, Inject(DOCUMENT))
35
+ ], DopplerService);
36
+ export { DopplerService };
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9wcGxlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctZWFzeWNvbW1lcmNlLyIsInNvdXJjZXMiOlsibGliL3V0aWxzL2FuYWx5dGljcy9kb3BwbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUczQyxJQUFhLGNBQWMsR0FBM0IsTUFBYSxjQUFjO0lBS3ZCLFlBQW9CLGVBQWlDLEVBQTRCLFFBQWE7UUFBMUUsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQUs7UUFIdEYsYUFBUSxHQUFHLEtBQUssQ0FBQztRQU96QixlQUFVLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQTtZQUNwQixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6RCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixDQUFDLENBQUM7WUFDcEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ2hFLENBQUMsQ0FBQTtRQVZHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0FXSixDQUFBOztZQWJ3QyxnQkFBZ0I7NENBQUcsTUFBTSxTQUFDLFFBQVE7O0FBTDlELGNBQWM7SUFEMUIsVUFBVSxFQUFFO0lBTStDLFdBQUEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0dBTC9ELGNBQWMsQ0FrQjFCO1NBbEJZLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIFJlbmRlcmVyMiwgUmVuZGVyZXJGYWN0b3J5MiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEb3BwbGVyU2VydmljZSB7XHJcblxyXG4gICAgcHJpdmF0ZSBpc0xvYWRlZCA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyLCBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBhbnkpIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyID0gdGhpcy5yZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIobnVsbCwgbnVsbCk7XHJcbiAgICB9XHJcblxyXG4gICAgaW5pdGlhbGl6ZSA9IChwaXhlbFNyYykgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNMb2FkZWQgPSB0cnVlXHJcbiAgICAgICAgbGV0IHNjcmlwdEluc2VydCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudChcInNjcmlwdFwiKTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShzY3JpcHRJbnNlcnQsICd0eXBlJywgJ3RleHQvamF2YXNjcmlwdCcpO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHNjcmlwdEluc2VydCwgJ2FzeW5jJywgJ2FzeW5jJyk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoc2NyaXB0SW5zZXJ0LCAnc3JjJywgcGl4ZWxTcmMpO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5kb2N1bWVudC5ib2R5LCBzY3JpcHRJbnNlcnQpO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=
@@ -1,141 +1,141 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __param = (this && this.__param) || function (paramIndex, decorator) {
8
- return function (target, key) { decorator(target, key, paramIndex); }
9
- };
10
- import { DOCUMENT } from '@angular/common';
11
- import { Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';
12
- let FacebookPixelService = class FacebookPixelService {
13
- constructor(rendererFactory, document) {
14
- this.rendererFactory = rendererFactory;
15
- this.document = document;
16
- this.enabled = false;
17
- this.initialize = (pixel_id) => {
18
- if (!this.document.getElementById('facebook_pixel')) {
19
- let new_analityc_script = this.renderer.createElement('script');
20
- new_analityc_script.id = "facebook_pixel";
21
- new_analityc_script.type = 'text/javascript';
22
- new_analityc_script.text = `!function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window, document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', ${pixel_id});`;
23
- this.renderer.appendChild(this.document.body, new_analityc_script);
24
- this.enabled = true;
25
- }
26
- setTimeout(() => this.callEvent('initialize'), 1000);
27
- };
28
- this.callEvent = (event_name, data = {}) => {
29
- if (!this.enabled)
30
- return;
31
- let event = this.translateEventName(event_name);
32
- event && fbq('track', this.translateEventName(event_name), this.evalEvent(event_name, data));
33
- };
34
- this.translateEventName = (event_name) => {
35
- switch (event_name) {
36
- case 'initialize': return 'PageView';
37
- case 'view_item': return 'ViewContent';
38
- case 'checkout_init': return 'InitiateCheckout';
39
- case 'payment_info': return 'AddPaymentInfo';
40
- case 'purchase': return 'Purchase';
41
- case 'add_to_cart': return 'AddToCart';
42
- default: return null;
43
- }
44
- };
45
- this.evalEvent = (event_name, data) => {
46
- switch (event_name) {
47
- case 'initialize': return data;
48
- case 'view_item': return this.toViewContent(data);
49
- case 'checkout_init': return this.toCheckoutInit(data);
50
- case 'payment_info': return this.toPaymentInfo(data);
51
- case 'purchase': return this.toPurchase(data);
52
- case 'add_to_cart': return this.toAddToCart(data);
53
- default: return data;
54
- }
55
- };
56
- this.callCustomEvent = (event_name, data = {}) => {
57
- if (!this.enabled)
58
- return;
59
- fbq('trackCustom', event_name, data);
60
- };
61
- this.disable = () => this.enabled = false;
62
- this.toViewContent = (data) => {
63
- var _a, _b, _c, _d;
64
- let lastProduct = ((_a = data) === null || _a === void 0 ? void 0 : _a.name) || 'not-product';
65
- return {
66
- content_type: 'product',
67
- content_name: lastProduct,
68
- content_ids: [(_b = data.variants[0]) === null || _b === void 0 ? void 0 : _b.code],
69
- currency: data.currency || "USD",
70
- value: ((_c = data.variants[0]) === null || _c === void 0 ? void 0 : _c.saleprice) || ((_d = data.variants[0]) === null || _d === void 0 ? void 0 : _d.price),
71
- };
72
- };
73
- this.toPurchase = (data) => {
74
- var _a;
75
- return {
76
- currency: data.currency || "USD",
77
- value: ((_a = data.totals) === null || _a === void 0 ? void 0 : _a.total) || 0,
78
- content_type: 'product_group',
79
- contents: this.getContents(data),
80
- };
81
- };
82
- this.toCheckoutInit = (data) => {
83
- var _a, _b;
84
- return {
85
- //content_category : "inicio checkout",
86
- content_type: 'product_group',
87
- contents: this.getContents(data),
88
- content_ids: this.getContentIds(data),
89
- currency: data.currency || "USD",
90
- num_items: ((_a = data.items) === null || _a === void 0 ? void 0 : _a.length) || 0,
91
- value: ((_b = data.totals) === null || _b === void 0 ? void 0 : _b.total) || 0,
92
- };
93
- };
94
- this.toPaymentInfo = (data) => {
95
- var _a;
96
- return {
97
- //content_category : "inicio checkout",
98
- content_type: 'product_group',
99
- contents: this.getContents(data),
100
- content_ids: this.getContentIds(data),
101
- currency: data.currency || "USD",
102
- value: ((_a = data.totals) === null || _a === void 0 ? void 0 : _a.total) || 0,
103
- };
104
- };
105
- this.toAddToCart = (data) => {
106
- var _a, _b, _c, _d;
107
- let lastProduct = ((_a = data.items) === null || _a === void 0 ? void 0 : _a.length) && ((_c = (_b = data.items[data.items.length - 1]) === null || _b === void 0 ? void 0 : _b.product) === null || _c === void 0 ? void 0 : _c.name) || 'not-product';
108
- return {
109
- content_name: lastProduct,
110
- content_type: 'product',
111
- contents: this.getContents(data),
112
- content_ids: this.getContentIds(data),
113
- currency: data.currency || "USD",
114
- value: ((_d = data.totals) === null || _d === void 0 ? void 0 : _d.total) || 0,
115
- };
116
- };
117
- this.getContents = (data) => {
118
- return data.items.map(item => {
119
- var _a;
120
- return {
121
- id: (_a = item.product.variants[0]) === null || _a === void 0 ? void 0 : _a.code,
122
- quantity: item.quantity
123
- };
124
- });
125
- };
126
- this.getContentIds = (data) => {
127
- return data.items.map(item => { var _a; return (_a = item.product.variants[0]) === null || _a === void 0 ? void 0 : _a.code; });
128
- };
129
- this.renderer = this.rendererFactory.createRenderer(null, null);
130
- }
131
- };
132
- FacebookPixelService.ctorParameters = () => [
133
- { type: RendererFactory2 },
134
- { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
135
- ];
136
- FacebookPixelService = __decorate([
137
- Injectable(),
138
- __param(1, Inject(DOCUMENT))
139
- ], FacebookPixelService);
140
- export { FacebookPixelService };
141
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjZWJvb2stcGl4ZWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLWVhc3ljb21tZXJjZS8iLCJzb3VyY2VzIjpbImxpYi91dGlscy9hbmFseXRpY3MvZmFjZWJvb2stcGl4ZWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBT2hGLElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0lBSzdCLFlBQW9CLGVBQWlDLEVBQTRCLFFBQWE7UUFBMUUsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQUs7UUFGdEYsWUFBTyxHQUFHLEtBQUssQ0FBQztRQU14QixlQUFVLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtnQkFDakQsSUFBSSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDaEUsbUJBQW1CLENBQUMsRUFBRSxHQUFHLGdCQUFnQixDQUFBO2dCQUN6QyxtQkFBbUIsQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUM7Z0JBQzdDLG1CQUFtQixDQUFDLElBQUksR0FBRyxnWkFBZ1osUUFBUSxJQUFJLENBQUM7Z0JBQ3hiLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO2FBQ3ZCO1lBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUFBO1FBRUQsY0FBUyxHQUFHLENBQUMsVUFBNEIsRUFBRSxJQUFJLEdBQUcsRUFBRSxFQUFFLEVBQUU7WUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO2dCQUFFLE9BQU87WUFDMUIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2hELEtBQUssSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2pHLENBQUMsQ0FBQTtRQUVELHVCQUFrQixHQUFHLENBQUMsVUFBNEIsRUFBRSxFQUFFO1lBQ2xELFFBQVEsVUFBVSxFQUFFO2dCQUNoQixLQUFLLFlBQVksQ0FBQyxDQUFDLE9BQU8sVUFBVSxDQUFDO2dCQUNyQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLE9BQU8sYUFBYSxDQUFDO2dCQUN2QyxLQUFLLGVBQWUsQ0FBQyxDQUFDLE9BQU8sa0JBQWtCLENBQUM7Z0JBQ2hELEtBQUssY0FBYyxDQUFDLENBQUMsT0FBTyxnQkFBZ0IsQ0FBQztnQkFDN0MsS0FBSyxVQUFVLENBQUMsQ0FBQyxPQUFPLFVBQVUsQ0FBQztnQkFDbkMsS0FBSyxhQUFhLENBQUMsQ0FBQyxPQUFPLFdBQVcsQ0FBQztnQkFDdkMsT0FBTyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUM7YUFDeEI7UUFDTCxDQUFDLENBQUE7UUFFRCxjQUFTLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDN0IsUUFBUSxVQUFVLEVBQUU7Z0JBQ2hCLEtBQUssWUFBWSxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUM7Z0JBQy9CLEtBQUssV0FBVyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNsRCxLQUFLLGVBQWUsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdkQsS0FBSyxjQUFjLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3JELEtBQUssVUFBVSxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM5QyxLQUFLLGFBQWEsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEQsT0FBTyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUM7YUFDeEI7UUFDTCxDQUFDLENBQUE7UUFFRCxvQkFBZSxHQUFHLENBQUMsVUFBVSxFQUFFLE9BQTBCLEVBQUUsRUFBRSxFQUFFO1lBQzNELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztnQkFBRSxPQUFPO1lBQzFCLEdBQUcsQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQTtRQUVELFlBQU8sR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUU3QixrQkFBYSxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUU7O1lBQzdCLElBQUksV0FBVyxHQUFHLE9BQUEsSUFBSSwwQ0FBRSxJQUFJLEtBQUksYUFBYSxDQUFBO1lBQzdDLE9BQU87Z0JBQ0gsWUFBWSxFQUFFLFNBQVM7Z0JBQ3ZCLFlBQVksRUFBRSxXQUFXO2dCQUN6QixXQUFXLEVBQUUsT0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQywwQ0FBRSxJQUFJLENBQUM7Z0JBQ3JDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUs7Z0JBQ2hDLEtBQUssRUFBRSxPQUFBLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLDBDQUFFLFNBQVMsWUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQywwQ0FBRSxLQUFLLENBQUE7YUFFaEUsQ0FBQTtRQUNMLENBQUMsQ0FBQTtRQUVPLGVBQVUsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFOztZQUMxQixPQUFPO2dCQUNILFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUs7Z0JBQ2hDLEtBQUssRUFBRSxPQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLEtBQUssS0FBSSxDQUFDO2dCQUM5QixZQUFZLEVBQUUsZUFBZTtnQkFDN0IsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO2FBRW5DLENBQUE7UUFDTCxDQUFDLENBQUE7UUFFTyxtQkFBYyxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUU7O1lBQzlCLE9BQU87Z0JBQ0gsdUNBQXVDO2dCQUN2QyxZQUFZLEVBQUUsZUFBZTtnQkFDN0IsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO2dCQUNoQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUM7Z0JBQ3JDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUs7Z0JBQ2hDLFNBQVMsRUFBRSxPQUFBLElBQUksQ0FBQyxLQUFLLDBDQUFFLE1BQU0sS0FBSSxDQUFDO2dCQUNsQyxLQUFLLEVBQUUsT0FBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxLQUFLLEtBQUksQ0FBQzthQUNqQyxDQUFBO1FBQ0wsQ0FBQyxDQUFBO1FBRU8sa0JBQWEsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFOztZQUM3QixPQUFPO2dCQUNILHVDQUF1QztnQkFDdkMsWUFBWSxFQUFFLGVBQWU7Z0JBQzdCLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztnQkFDaEMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO2dCQUNyQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsSUFBSSxLQUFLO2dCQUNoQyxLQUFLLEVBQUUsT0FBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxLQUFLLEtBQUksQ0FBQzthQUNqQyxDQUFBO1FBQ0wsQ0FBQyxDQUFBO1FBRU8sZ0JBQVcsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFOztZQUMzQixJQUFJLFdBQVcsR0FBRyxPQUFBLElBQUksQ0FBQyxLQUFLLDBDQUFFLE1BQU0sa0JBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsMENBQUUsT0FBTywwQ0FBRSxJQUFJLENBQUEsSUFBSSxhQUFhLENBQUE7WUFDekcsT0FBTztnQkFDSCxZQUFZLEVBQUUsV0FBVztnQkFDekIsWUFBWSxFQUFFLFNBQVM7Z0JBQ3ZCLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztnQkFDaEMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO2dCQUNyQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsSUFBSSxLQUFLO2dCQUNoQyxLQUFLLEVBQUUsT0FBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxLQUFLLEtBQUksQ0FBQzthQUdqQyxDQUFBO1FBQ0wsQ0FBQyxDQUFBO1FBRU8sZ0JBQVcsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzNCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQ2pCLElBQUksQ0FBQyxFQUFFOztnQkFDSCxPQUFPO29CQUNILEVBQUUsUUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsMENBQUUsSUFBSTtvQkFDbEMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO2lCQUMxQixDQUFBO1lBQ0wsQ0FBQyxDQUNKLENBQUE7UUFDTCxDQUFDLENBQUE7UUFFTyxrQkFBYSxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDakIsSUFBSSxDQUFDLEVBQUUsd0JBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLDBDQUFFLElBQUksR0FBQSxDQUN6QyxDQUFBO1FBQ0wsQ0FBQyxDQUFBO1FBOUhHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0E4SEosQ0FBQTs7WUFoSXdDLGdCQUFnQjs0Q0FBRyxNQUFNLFNBQUMsUUFBUTs7QUFMOUQsb0JBQW9CO0lBRGhDLFVBQVUsRUFBRTtJQU0rQyxXQUFBLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtHQUwvRCxvQkFBb0IsQ0FxSWhDO1NBcklZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbmFseXRpY0V2ZW50S2V5IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hbmFseXRpY3MvZXZlbnQta2V5Lm1vZGVsJztcbmltcG9ydCB7IEZhY2Vib29rUGl4ZWxEYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hbmFseXRpY3MvZmFjZWJvb2stcGl4ZWwvZmFjZWJvb2stcGl4ZWwtbW9kZWwnO1xuXG5kZWNsYXJlIGxldCBmYnE6IEZ1bmN0aW9uO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRmFjZWJvb2tQaXhlbFNlcnZpY2Uge1xuXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyO1xuICAgIHByaXZhdGUgZW5hYmxlZCA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTIsIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IGFueSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyID0gdGhpcy5yZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIobnVsbCwgbnVsbCk7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZSA9IChwaXhlbF9pZCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZhY2Vib29rX3BpeGVsJykpIHtcbiAgICAgICAgICAgIGxldCBuZXdfYW5hbGl0eWNfc2NyaXB0ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgICAgICAgIG5ld19hbmFsaXR5Y19zY3JpcHQuaWQgPSBcImZhY2Vib29rX3BpeGVsXCJcbiAgICAgICAgICAgIG5ld19hbmFsaXR5Y19zY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgICAgICAgICAgbmV3X2FuYWxpdHljX3NjcmlwdC50ZXh0ID0gYCFmdW5jdGlvbihmLGIsZSx2LG4sdCxzKSB7aWYoZi5mYnEpcmV0dXJuO249Zi5mYnE9ZnVuY3Rpb24oKXtuLmNhbGxNZXRob2Q/IG4uY2FsbE1ldGhvZC5hcHBseShuLGFyZ3VtZW50cyk6bi5xdWV1ZS5wdXNoKGFyZ3VtZW50cyl9OyBpZighZi5fZmJxKWYuX2ZicT1uO24ucHVzaD1uO24ubG9hZGVkPSEwO24udmVyc2lvbj0nMi4wJzsgbi5xdWV1ZT1bXTt0PWIuY3JlYXRlRWxlbWVudChlKTt0LmFzeW5jPSEwOyB0LnNyYz12O3M9Yi5nZXRFbGVtZW50c0J5VGFnTmFtZShlKVswXTsgcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZSh0LHMpfSh3aW5kb3csIGRvY3VtZW50LCdzY3JpcHQnLCAnaHR0cHM6Ly9jb25uZWN0LmZhY2Vib29rLm5ldC9lbl9VUy9mYmV2ZW50cy5qcycpOyBmYnEoJ2luaXQnLCAke3BpeGVsX2lkfSk7YDtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5kb2N1bWVudC5ib2R5LCBuZXdfYW5hbGl0eWNfc2NyaXB0KTtcbiAgICAgICAgICAgIHRoaXMuZW5hYmxlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNhbGxFdmVudCgnaW5pdGlhbGl6ZScpLCAxMDAwKTtcbiAgICB9XG5cbiAgICBjYWxsRXZlbnQgPSAoZXZlbnRfbmFtZTogQW5hbHl0aWNFdmVudEtleSwgZGF0YSA9IHt9KSA9PiB7XG4gICAgICAgIGlmICghdGhpcy5lbmFibGVkKSByZXR1cm47XG4gICAgICAgIGxldCBldmVudCA9IHRoaXMudHJhbnNsYXRlRXZlbnROYW1lKGV2ZW50X25hbWUpO1xuICAgICAgICBldmVudCAmJiBmYnEoJ3RyYWNrJywgdGhpcy50cmFuc2xhdGVFdmVudE5hbWUoZXZlbnRfbmFtZSksIHRoaXMuZXZhbEV2ZW50KGV2ZW50X25hbWUsIGRhdGEpKTtcbiAgICB9XG5cbiAgICB0cmFuc2xhdGVFdmVudE5hbWUgPSAoZXZlbnRfbmFtZTogQW5hbHl0aWNFdmVudEtleSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKGV2ZW50X25hbWUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2luaXRpYWxpemUnOiByZXR1cm4gJ1BhZ2VWaWV3JztcbiAgICAgICAgICAgIGNhc2UgJ3ZpZXdfaXRlbSc6IHJldHVybiAnVmlld0NvbnRlbnQnO1xuICAgICAgICAgICAgY2FzZSAnY2hlY2tvdXRfaW5pdCc6IHJldHVybiAnSW5pdGlhdGVDaGVja291dCc7XG4gICAgICAgICAgICBjYXNlICdwYXltZW50X2luZm8nOiByZXR1cm4gJ0FkZFBheW1lbnRJbmZvJztcbiAgICAgICAgICAgIGNhc2UgJ3B1cmNoYXNlJzogcmV0dXJuICdQdXJjaGFzZSc7XG4gICAgICAgICAgICBjYXNlICdhZGRfdG9fY2FydCc6IHJldHVybiAnQWRkVG9DYXJ0JztcbiAgICAgICAgICAgIGRlZmF1bHQ6IHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZXZhbEV2ZW50ID0gKGV2ZW50X25hbWUsIGRhdGEpID0+IHtcbiAgICAgICAgc3dpdGNoIChldmVudF9uYW1lKSB7XG4gICAgICAgICAgICBjYXNlICdpbml0aWFsaXplJzogcmV0dXJuIGRhdGE7XG4gICAgICAgICAgICBjYXNlICd2aWV3X2l0ZW0nOiByZXR1cm4gdGhpcy50b1ZpZXdDb250ZW50KGRhdGEpO1xuICAgICAgICAgICAgY2FzZSAnY2hlY2tvdXRfaW5pdCc6IHJldHVybiB0aGlzLnRvQ2hlY2tvdXRJbml0KGRhdGEpO1xuICAgICAgICAgICAgY2FzZSAncGF5bWVudF9pbmZvJzogcmV0dXJuIHRoaXMudG9QYXltZW50SW5mbyhkYXRhKTtcbiAgICAgICAgICAgIGNhc2UgJ3B1cmNoYXNlJzogcmV0dXJuIHRoaXMudG9QdXJjaGFzZShkYXRhKTtcbiAgICAgICAgICAgIGNhc2UgJ2FkZF90b19jYXJ0JzogcmV0dXJuIHRoaXMudG9BZGRUb0NhcnQoZGF0YSk7XG4gICAgICAgICAgICBkZWZhdWx0OiByZXR1cm4gZGF0YTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBjYWxsQ3VzdG9tRXZlbnQgPSAoZXZlbnRfbmFtZSwgZGF0YTogRmFjZWJvb2tQaXhlbERhdGEgPSB7fSkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuZW5hYmxlZCkgcmV0dXJuO1xuICAgICAgICBmYnEoJ3RyYWNrQ3VzdG9tJywgZXZlbnRfbmFtZSwgZGF0YSk7XG4gICAgfVxuICAgIFxuICAgIGRpc2FibGUgPSAoKSA9PiB0aGlzLmVuYWJsZWQgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgdG9WaWV3Q29udGVudCA9IChkYXRhKSA9PiB7XG4gICAgICAgIGxldCBsYXN0UHJvZHVjdCA9IGRhdGE/Lm5hbWUgfHwgJ25vdC1wcm9kdWN0J1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY29udGVudF90eXBlOiAncHJvZHVjdCcsXG4gICAgICAgICAgICBjb250ZW50X25hbWU6IGxhc3RQcm9kdWN0LFxuICAgICAgICAgICAgY29udGVudF9pZHM6IFtkYXRhLnZhcmlhbnRzWzBdPy5jb2RlXSxcbiAgICAgICAgICAgIGN1cnJlbmN5OiBkYXRhLmN1cnJlbmN5IHx8IFwiVVNEXCIsXG4gICAgICAgICAgICB2YWx1ZTogZGF0YS52YXJpYW50c1swXT8uc2FsZXByaWNlIHx8IGRhdGEudmFyaWFudHNbMF0/LnByaWNlLFxuICAgICAgICAgICAgLy9wcm9kdWN0X2NhdGFsb2dfaWQ6ICdURVNUJ1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIHByaXZhdGUgdG9QdXJjaGFzZSA9IChkYXRhKSA9PiB7XG4gICAgICAgIHJldHVybiB7IFxuICAgICAgICAgICAgY3VycmVuY3k6IGRhdGEuY3VycmVuY3kgfHwgXCJVU0RcIixcbiAgICAgICAgICAgIHZhbHVlOiBkYXRhLnRvdGFscz8udG90YWwgfHwgMCAsXG4gICAgICAgICAgICBjb250ZW50X3R5cGU6ICdwcm9kdWN0X2dyb3VwJyxcbiAgICAgICAgICAgIGNvbnRlbnRzOiB0aGlzLmdldENvbnRlbnRzKGRhdGEpLFxuICAgICAgICAgICAgLy9wcm9kdWN0X2NhdGFsb2dfaWQ6ICdURVNUJ1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0b0NoZWNrb3V0SW5pdCA9IChkYXRhKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAvL2NvbnRlbnRfY2F0ZWdvcnkgOiBcImluaWNpbyBjaGVja291dFwiLFxuICAgICAgICAgICAgY29udGVudF90eXBlOiAncHJvZHVjdF9ncm91cCcsXG4gICAgICAgICAgICBjb250ZW50czogdGhpcy5nZXRDb250ZW50cyhkYXRhKSxcbiAgICAgICAgICAgIGNvbnRlbnRfaWRzOiB0aGlzLmdldENvbnRlbnRJZHMoZGF0YSksXG4gICAgICAgICAgICBjdXJyZW5jeTogZGF0YS5jdXJyZW5jeSB8fCBcIlVTRFwiLFxuICAgICAgICAgICAgbnVtX2l0ZW1zOiBkYXRhLml0ZW1zPy5sZW5ndGggfHwgMCxcbiAgICAgICAgICAgIHZhbHVlOiBkYXRhLnRvdGFscz8udG90YWwgfHwgMCAsXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHRvUGF5bWVudEluZm8gPSAoZGF0YSkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLy9jb250ZW50X2NhdGVnb3J5IDogXCJpbmljaW8gY2hlY2tvdXRcIixcbiAgICAgICAgICAgIGNvbnRlbnRfdHlwZTogJ3Byb2R1Y3RfZ3JvdXAnLFxuICAgICAgICAgICAgY29udGVudHM6IHRoaXMuZ2V0Q29udGVudHMoZGF0YSksXG4gICAgICAgICAgICBjb250ZW50X2lkczogdGhpcy5nZXRDb250ZW50SWRzKGRhdGEpLFxuICAgICAgICAgICAgY3VycmVuY3k6IGRhdGEuY3VycmVuY3kgfHwgXCJVU0RcIixcbiAgICAgICAgICAgIHZhbHVlOiBkYXRhLnRvdGFscz8udG90YWwgfHwgMCxcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdG9BZGRUb0NhcnQgPSAoZGF0YSkgPT4ge1xuICAgICAgICBsZXQgbGFzdFByb2R1Y3QgPSBkYXRhLml0ZW1zPy5sZW5ndGggJiYgZGF0YS5pdGVtc1tkYXRhLml0ZW1zLmxlbmd0aCAtIDFdPy5wcm9kdWN0Py5uYW1lIHx8ICdub3QtcHJvZHVjdCdcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbnRlbnRfbmFtZTogbGFzdFByb2R1Y3QsXG4gICAgICAgICAgICBjb250ZW50X3R5cGU6ICdwcm9kdWN0JyxcbiAgICAgICAgICAgIGNvbnRlbnRzOiB0aGlzLmdldENvbnRlbnRzKGRhdGEpLFxuICAgICAgICAgICAgY29udGVudF9pZHM6IHRoaXMuZ2V0Q29udGVudElkcyhkYXRhKSxcbiAgICAgICAgICAgIGN1cnJlbmN5OiBkYXRhLmN1cnJlbmN5IHx8IFwiVVNEXCIsXG4gICAgICAgICAgICB2YWx1ZTogZGF0YS50b3RhbHM/LnRvdGFsIHx8IDAsXG4gICAgICAgICAgICAvL3Byb2R1Y3RfY2F0YWxvZ19pZDogJ1RFU1QnXG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q29udGVudHMgPSAoZGF0YSkgPT4ge1xuICAgICAgICByZXR1cm4gZGF0YS5pdGVtcy5tYXAoXG4gICAgICAgICAgICBpdGVtID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBpZDogaXRlbS5wcm9kdWN0LnZhcmlhbnRzWzBdPy5jb2RlLFxuICAgICAgICAgICAgICAgICAgICBxdWFudGl0eTogaXRlbS5xdWFudGl0eVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgKVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q29udGVudElkcyA9IChkYXRhKSA9PiB7XG4gICAgICAgIHJldHVybiBkYXRhLml0ZW1zLm1hcChcbiAgICAgICAgICAgIGl0ZW0gPT4gaXRlbS5wcm9kdWN0LnZhcmlhbnRzWzBdPy5jb2RlXG4gICAgICAgIClcbiAgICB9XG59Il19
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
+ return function (target, key) { decorator(target, key, paramIndex); }
9
+ };
10
+ import { DOCUMENT } from '@angular/common';
11
+ import { Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';
12
+ let FacebookPixelService = class FacebookPixelService {
13
+ constructor(rendererFactory, document) {
14
+ this.rendererFactory = rendererFactory;
15
+ this.document = document;
16
+ this.enabled = false;
17
+ this.initialize = (pixel_id) => {
18
+ if (!this.document.getElementById('facebook_pixel')) {
19
+ let new_analityc_script = this.renderer.createElement('script');
20
+ new_analityc_script.id = "facebook_pixel";
21
+ new_analityc_script.type = 'text/javascript';
22
+ new_analityc_script.text = `!function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window, document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', ${pixel_id});`;
23
+ this.renderer.appendChild(this.document.body, new_analityc_script);
24
+ this.enabled = true;
25
+ }
26
+ setTimeout(() => this.callEvent('initialize'), 1000);
27
+ };
28
+ this.callEvent = (event_name, data = {}) => {
29
+ if (!this.enabled)
30
+ return;
31
+ let event = this.translateEventName(event_name);
32
+ event && fbq('track', this.translateEventName(event_name), this.evalEvent(event_name, data));
33
+ };
34
+ this.translateEventName = (event_name) => {
35
+ switch (event_name) {
36
+ case 'initialize': return 'PageView';
37
+ case 'view_item': return 'ViewContent';
38
+ case 'checkout_init': return 'InitiateCheckout';
39
+ case 'payment_info': return 'AddPaymentInfo';
40
+ case 'purchase': return 'Purchase';
41
+ case 'add_to_cart': return 'AddToCart';
42
+ default: return null;
43
+ }
44
+ };
45
+ this.evalEvent = (event_name, data) => {
46
+ switch (event_name) {
47
+ case 'initialize': return data;
48
+ case 'view_item': return this.toViewContent(data);
49
+ case 'checkout_init': return this.toCheckoutInit(data);
50
+ case 'payment_info': return this.toPaymentInfo(data);
51
+ case 'purchase': return this.toPurchase(data);
52
+ case 'add_to_cart': return this.toAddToCart(data);
53
+ default: return data;
54
+ }
55
+ };
56
+ this.callCustomEvent = (event_name, data = {}) => {
57
+ if (!this.enabled)
58
+ return;
59
+ fbq('trackCustom', event_name, data);
60
+ };
61
+ this.disable = () => this.enabled = false;
62
+ this.toViewContent = (data) => {
63
+ var _a, _b, _c, _d;
64
+ let lastProduct = ((_a = data) === null || _a === void 0 ? void 0 : _a.name) || 'not-product';
65
+ return {
66
+ content_type: 'product',
67
+ content_name: lastProduct,
68
+ content_ids: [(_b = data.variants[0]) === null || _b === void 0 ? void 0 : _b.code],
69
+ currency: data.currency || "USD",
70
+ value: ((_c = data.variants[0]) === null || _c === void 0 ? void 0 : _c.saleprice) || ((_d = data.variants[0]) === null || _d === void 0 ? void 0 : _d.price),
71
+ };
72
+ };
73
+ this.toPurchase = (data) => {
74
+ var _a;
75
+ return {
76
+ currency: data.currency || "USD",
77
+ value: ((_a = data.totals) === null || _a === void 0 ? void 0 : _a.total) || 0,
78
+ content_type: 'product_group',
79
+ contents: this.getContents(data),
80
+ };
81
+ };
82
+ this.toCheckoutInit = (data) => {
83
+ var _a, _b;
84
+ return {
85
+ //content_category : "inicio checkout",
86
+ content_type: 'product_group',
87
+ contents: this.getContents(data),
88
+ content_ids: this.getContentIds(data),
89
+ currency: data.currency || "USD",
90
+ num_items: ((_a = data.items) === null || _a === void 0 ? void 0 : _a.length) || 0,
91
+ value: ((_b = data.totals) === null || _b === void 0 ? void 0 : _b.total) || 0,
92
+ };
93
+ };
94
+ this.toPaymentInfo = (data) => {
95
+ var _a;
96
+ return {
97
+ //content_category : "inicio checkout",
98
+ content_type: 'product_group',
99
+ contents: this.getContents(data),
100
+ content_ids: this.getContentIds(data),
101
+ currency: data.currency || "USD",
102
+ value: ((_a = data.totals) === null || _a === void 0 ? void 0 : _a.total) || 0,
103
+ };
104
+ };
105
+ this.toAddToCart = (data) => {
106
+ var _a, _b, _c, _d;
107
+ let lastProduct = ((_a = data.items) === null || _a === void 0 ? void 0 : _a.length) && ((_c = (_b = data.items[data.items.length - 1]) === null || _b === void 0 ? void 0 : _b.product) === null || _c === void 0 ? void 0 : _c.name) || 'not-product';
108
+ return {
109
+ content_name: lastProduct,
110
+ content_type: 'product',
111
+ contents: this.getContents(data),
112
+ content_ids: this.getContentIds(data),
113
+ currency: data.currency || "USD",
114
+ value: ((_d = data.totals) === null || _d === void 0 ? void 0 : _d.total) || 0,
115
+ };
116
+ };
117
+ this.getContents = (data) => {
118
+ return data.items.map(item => {
119
+ var _a;
120
+ return {
121
+ id: (_a = item.product.variants[0]) === null || _a === void 0 ? void 0 : _a.code,
122
+ quantity: item.quantity
123
+ };
124
+ });
125
+ };
126
+ this.getContentIds = (data) => {
127
+ return data.items.map(item => { var _a; return (_a = item.product.variants[0]) === null || _a === void 0 ? void 0 : _a.code; });
128
+ };
129
+ this.renderer = this.rendererFactory.createRenderer(null, null);
130
+ }
131
+ };
132
+ FacebookPixelService.ctorParameters = () => [
133
+ { type: RendererFactory2 },
134
+ { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
135
+ ];
136
+ FacebookPixelService = __decorate([
137
+ Injectable(),
138
+ __param(1, Inject(DOCUMENT))
139
+ ], FacebookPixelService);
140
+ export { FacebookPixelService };
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjZWJvb2stcGl4ZWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLWVhc3ljb21tZXJjZS8iLCJzb3VyY2VzIjpbImxpYi91dGlscy9hbmFseXRpY3MvZmFjZWJvb2stcGl4ZWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBT2hGLElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0lBSzdCLFlBQW9CLGVBQWlDLEVBQTRCLFFBQWE7UUFBMUUsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQUs7UUFGdEYsWUFBTyxHQUFHLEtBQUssQ0FBQztRQU14QixlQUFVLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtnQkFDakQsSUFBSSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDaEUsbUJBQW1CLENBQUMsRUFBRSxHQUFHLGdCQUFnQixDQUFBO2dCQUN6QyxtQkFBbUIsQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUM7Z0JBQzdDLG1CQUFtQixDQUFDLElBQUksR0FBRyxnWkFBZ1osUUFBUSxJQUFJLENBQUM7Z0JBQ3hiLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO2FBQ3ZCO1lBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUks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LENBQUMsQ0FBQyxDQUFDLDBDQUFFLElBQUksR0FBQSxDQUN6QyxDQUFBO1FBQ0wsQ0FBQyxDQUFBO1FBOUhHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0E4SEosQ0FBQTs7WUFoSXdDLGdCQUFnQjs0Q0FBRyxNQUFNLFNBQUMsUUFBUTs7QUFMOUQsb0JBQW9CO0lBRGhDLFVBQVUsRUFBRTtJQU0rQyxXQUFBLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtHQUwvRCxvQkFBb0IsQ0FxSWhDO1NBcklZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBSZW5kZXJlcjIsIFJlbmRlcmVyRmFjdG9yeTIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQW5hbHl0aWNFdmVudEtleSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYW5hbHl0aWNzL2V2ZW50LWtleS5tb2RlbCc7XHJcbmltcG9ydCB7IEZhY2Vib29rUGl4ZWxEYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hbmFseXRpY3MvZmFjZWJvb2stcGl4ZWwvZmFjZWJvb2stcGl4ZWwtbW9kZWwnO1xyXG5cclxuZGVjbGFyZSBsZXQgZmJxOiBGdW5jdGlvbjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEZhY2Vib29rUGl4ZWxTZXJ2aWNlIHtcclxuXHJcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjI7XHJcbiAgICBwcml2YXRlIGVuYWJsZWQgPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5MiwgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogYW55KSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlciA9IHRoaXMucmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRpYWxpemUgPSAocGl4ZWxfaWQpID0+IHtcclxuICAgICAgICBpZiAoIXRoaXMuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZhY2Vib29rX3BpeGVsJykpIHtcclxuICAgICAgICAgICAgbGV0IG5ld19hbmFsaXR5Y19zY3JpcHQgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xyXG4gICAgICAgICAgICBuZXdfYW5hbGl0eWNfc2NyaXB0LmlkID0gXCJmYWNlYm9va19waXhlbFwiXHJcbiAgICAgICAgICAgIG5ld19hbmFsaXR5Y19zY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xyXG4gICAgICAgICAgICBuZXdfYW5hbGl0eWNfc2NyaXB0LnRleHQgPSBgIWZ1bmN0aW9uKGYsYixlLHYsbix0LHMpIHtpZihmLmZicSlyZXR1cm47bj1mLmZicT1mdW5jdGlvbigpe24uY2FsbE1ldGhvZD8gbi5jYWxsTWV0aG9kLmFwcGx5KG4sYXJndW1lbnRzKTpuLnF1ZXVlLnB1c2goYXJndW1lbnRzKX07IGlmKCFmLl9mYnEpZi5fZmJxPW47bi5wdXNoPW47bi5sb2FkZWQ9ITA7bi52ZXJzaW9uPScyLjAnOyBuLnF1ZXVlPVtdO3Q9Yi5jcmVhdGVFbGVtZW50KGUpO3QuYXN5bmM9ITA7IHQuc3JjPXY7cz1iLmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpWzBdOyBzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHQscyl9KHdpbmRvdywgZG9jdW1lbnQsJ3NjcmlwdCcsICdodHRwczovL2Nvbm5lY3QuZmFjZWJvb2submV0L2VuX1VTL2ZiZXZlbnRzLmpzJyk7IGZicSgnaW5pdCcsICR7cGl4ZWxfaWR9KTtgO1xyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZG9jdW1lbnQuYm9keSwgbmV3X2FuYWxpdHljX3NjcmlwdCk7XHJcbiAgICAgICAgICAgIHRoaXMuZW5hYmxlZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jYWxsRXZlbnQoJ2luaXRpYWxpemUnKSwgMTAwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgY2FsbEV2ZW50ID0gKGV2ZW50X25hbWU6IEFuYWx5dGljRXZlbnRLZXksIGRhdGEgPSB7fSkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5lbmFibGVkKSByZXR1cm47XHJcbiAgICAgICAgbGV0IGV2ZW50ID0gdGhpcy50cmFuc2xhdGVFdmVudE5hbWUoZXZlbnRfbmFtZSk7XHJcbiAgICAgICAgZXZlbnQgJiYgZmJxKCd0cmFjaycsIHRoaXMudHJhbnNsYXRlRXZlbnROYW1lKGV2ZW50X25hbWUpLCB0aGlzLmV2YWxFdmVudChldmVudF9uYW1lLCBkYXRhKSk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNsYXRlRXZlbnROYW1lID0gKGV2ZW50X25hbWU6IEFuYWx5dGljRXZlbnRLZXkpID0+IHtcclxuICAgICAgICBzd2l0Y2ggKGV2ZW50X25hbWUpIHtcclxuICAgICAgICAgICAgY2FzZSAnaW5pdGlhbGl6ZSc6IHJldHVybiAnUGFnZVZpZXcnO1xyXG4gICAgICAgICAgICBjYXNlICd2aWV3X2l0ZW0nOiByZXR1cm4gJ1ZpZXdDb250ZW50JztcclxuICAgICAgICAgICAgY2FzZSAnY2hlY2tvdXRfaW5pdCc6IHJldHVybiAnSW5pdGlhdGVDaGVja291dCc7XHJcbiAgICAgICAgICAgIGNhc2UgJ3BheW1lbnRfaW5mbyc6IHJldHVybiAnQWRkUGF5bWVudEluZm8nO1xyXG4gICAgICAgICAgICBjYXNlICdwdXJjaGFzZSc6IHJldHVybiAnUHVyY2hhc2UnO1xyXG4gICAgICAgICAgICBjYXNlICdhZGRfdG9fY2FydCc6IHJldHVybiAnQWRkVG9DYXJ0JztcclxuICAgICAgICAgICAgZGVmYXVsdDogcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGV2YWxFdmVudCA9IChldmVudF9uYW1lLCBkYXRhKSA9PiB7XHJcbiAgICAgICAgc3dpdGNoIChldmVudF9uYW1lKSB7XHJcbiAgICAgICAgICAgIGNhc2UgJ2luaXRpYWxpemUnOiByZXR1cm4gZGF0YTtcclxuICAgICAgICAgICAgY2FzZSAndmlld19pdGVtJzogcmV0dXJuIHRoaXMudG9WaWV3Q29udGVudChkYXRhKTtcclxuICAgICAgICAgICAgY2FzZSAnY2hlY2tvdXRfaW5pdCc6IHJldHVybiB0aGlzLnRvQ2hlY2tvdXRJbml0KGRhdGEpO1xyXG4gICAgICAgICAgICBjYXNlICdwYXltZW50X2luZm8nOiByZXR1cm4gdGhpcy50b1BheW1lbnRJbmZvKGRhdGEpO1xyXG4gICAgICAgICAgICBjYXNlICdwdXJjaGFzZSc6IHJldHVybiB0aGlzLnRvUHVyY2hhc2UoZGF0YSk7XHJcbiAgICAgICAgICAgIGNhc2UgJ2FkZF90b19jYXJ0JzogcmV0dXJuIHRoaXMudG9BZGRUb0NhcnQoZGF0YSk7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6IHJldHVybiBkYXRhO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgY2FsbEN1c3RvbUV2ZW50ID0gKGV2ZW50X25hbWUsIGRhdGE6IEZhY2Vib29rUGl4ZWxEYXRhID0ge30pID0+IHtcclxuICAgICAgICBpZiAoIXRoaXMuZW5hYmxlZCkgcmV0dXJuO1xyXG4gICAgICAgIGZicSgndHJhY2tDdXN0b20nLCBldmVudF9uYW1lLCBkYXRhKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgZGlzYWJsZSA9ICgpID0+IHRoaXMuZW5hYmxlZCA9IGZhbHNlO1xyXG5cclxuICAgIHByaXZhdGUgdG9WaWV3Q29udGVudCA9IChkYXRhKSA9PiB7XHJcbiAgICAgICAgbGV0IGxhc3RQcm9kdWN0ID0gZGF0YT8ubmFtZSB8fCAnbm90LXByb2R1Y3QnXHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgY29udGVudF90eXBlOiAncHJvZHVjdCcsXHJcbiAgICAgICAgICAgIGNvbnRlbnRfbmFtZTogbGFzdFByb2R1Y3QsXHJcbiAgICAgICAgICAgIGNvbnRlbnRfaWRzOiBbZGF0YS52YXJpYW50c1swXT8uY29kZV0sXHJcbiAgICAgICAgICAgIGN1cnJlbmN5OiBkYXRhLmN1cnJlbmN5IHx8IFwiVVNEXCIsXHJcbiAgICAgICAgICAgIHZhbHVlOiBkYXRhLnZhcmlhbnRzWzBdPy5zYWxlcHJpY2UgfHwgZGF0YS52YXJpYW50c1swXT8ucHJpY2UsXHJcbiAgICAgICAgICAgIC8vcHJvZHVjdF9jYXRhbG9nX2lkOiAnVEVTVCdcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHByaXZhdGUgdG9QdXJjaGFzZSA9IChkYXRhKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHsgXHJcbiAgICAgICAgICAgIGN1cnJlbmN5OiBkYXRhLmN1cnJlbmN5IHx8IFwiVVNEXCIsXHJcbiAgICAgICAgICAgIHZhbHVlOiBkYXRhLnRvdGFscz8udG90YWwgfHwgMCAsXHJcbiAgICAgICAgICAgIGNvbnRlbnRfdHlwZTogJ3Byb2R1Y3RfZ3JvdXAnLFxyXG4gICAgICAgICAgICBjb250ZW50czogdGhpcy5nZXRDb250ZW50cyhkYXRhKSxcclxuICAgICAgICAgICAgLy9wcm9kdWN0X2NhdGFsb2dfaWQ6ICdURVNUJ1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHRvQ2hlY2tvdXRJbml0ID0gKGRhdGEpID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAvL2NvbnRlbnRfY2F0ZWdvcnkgOiBcImluaWNpbyBjaGVja291dFwiLFxyXG4gICAgICAgICAgICBjb250ZW50X3R5cGU6ICdwcm9kdWN0X2dyb3VwJyxcclxuICAgICAgICAgICAgY29udGVudHM6IHRoaXMuZ2V0Q29udGVudHMoZGF0YSksXHJcbiAgICAgICAgICAgIGNvbnRlbnRfaWRzOiB0aGlzLmdldENvbnRlbnRJZHMoZGF0YSksXHJcbiAgICAgICAgICAgIGN1cnJlbmN5OiBkYXRhLmN1cnJlbmN5IHx8IFwiVVNEXCIsXHJcbiAgICAgICAgICAgIG51bV9pdGVtczogZGF0YS5pdGVtcz8ubGVuZ3RoIHx8IDAsXHJcbiAgICAgICAgICAgIHZhbHVlOiBkYXRhLnRvdGFscz8udG90YWwgfHwgMCAsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgdG9QYXltZW50SW5mbyA9IChkYXRhKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgLy9jb250ZW50X2NhdGVnb3J5IDogXCJpbmljaW8gY2hlY2tvdXRcIixcclxuICAgICAgICAgICAgY29udGVudF90eXBlOiAncHJvZHVjdF9ncm91cCcsXHJcbiAgICAgICAgICAgIGNvbnRlbnRzOiB0aGlzLmdldENvbnRlbnRzKGRhdGEpLFxyXG4gICAgICAgICAgICBjb250ZW50X2lkczogdGhpcy5nZXRDb250ZW50SWRzKGRhdGEpLFxyXG4gICAgICAgICAgICBjdXJyZW5jeTogZGF0YS5jdXJyZW5jeSB8fCBcIlVTRFwiLFxyXG4gICAgICAgICAgICB2YWx1ZTogZGF0YS50b3RhbHM/LnRvdGFsIHx8IDAsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgdG9BZGRUb0NhcnQgPSAoZGF0YSkgPT4ge1xyXG4gICAgICAgIGxldCBsYXN0UHJvZHVjdCA9IGRhdGEuaXRlbXM/Lmxlbmd0aCAmJiBkYXRhLml0ZW1zW2RhdGEuaXRlbXMubGVuZ3RoIC0gMV0/LnByb2R1Y3Q/Lm5hbWUgfHwgJ25vdC1wcm9kdWN0J1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGNvbnRlbnRfbmFtZTogbGFzdFByb2R1Y3QsXHJcbiAgICAgICAgICAgIGNvbnRlbnRfdHlwZTogJ3Byb2R1Y3QnLFxyXG4gICAgICAgICAgICBjb250ZW50czogdGhpcy5nZXRDb250ZW50cyhkYXRhKSxcclxuICAgICAgICAgICAgY29udGVudF9pZHM6IHRoaXMuZ2V0Q29udGVudElkcyhkYXRhKSxcclxuICAgICAgICAgICAgY3VycmVuY3k6IGRhdGEuY3VycmVuY3kgfHwgXCJVU0RcIixcclxuICAgICAgICAgICAgdmFsdWU6IGRhdGEudG90YWxzPy50b3RhbCB8fCAwLFxyXG4gICAgICAgICAgICAvL3Byb2R1Y3RfY2F0YWxvZ19pZDogJ1RFU1QnXHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldENvbnRlbnRzID0gKGRhdGEpID0+IHtcclxuICAgICAgICByZXR1cm4gZGF0YS5pdGVtcy5tYXAoXHJcbiAgICAgICAgICAgIGl0ZW0gPT4ge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgICBpZDogaXRlbS5wcm9kdWN0LnZhcmlhbnRzWzBdPy5jb2RlLFxyXG4gICAgICAgICAgICAgICAgICAgIHF1YW50aXR5OiBpdGVtLnF1YW50aXR5XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApXHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRDb250ZW50SWRzID0gKGRhdGEpID0+IHtcclxuICAgICAgICByZXR1cm4gZGF0YS5pdGVtcy5tYXAoXHJcbiAgICAgICAgICAgIGl0ZW0gPT4gaXRlbS5wcm9kdWN0LnZhcmlhbnRzWzBdPy5jb2RlXHJcbiAgICAgICAgKVxyXG4gICAgfVxyXG59Il19