@esolve/ng-esolve-connect 0.11.1 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (601) hide show
  1. package/README.md +2 -2
  2. package/esm2020/lib/account/address/esolve-address-record.interface.mjs +2 -0
  3. package/esm2020/lib/account/address/esolve-address-response.interface.mjs +2 -0
  4. package/esm2020/lib/account/address/esolve-address-result.model.mjs +11 -0
  5. package/esm2020/lib/account/address/esolve-address-set-data.interface.mjs +2 -0
  6. package/esm2020/lib/account/address/esolve-address-type.type.mjs +2 -0
  7. package/esm2020/lib/account/address/esolve-address.model.mjs +19 -0
  8. package/esm2020/lib/account/address/index.mjs +7 -0
  9. package/esm2020/lib/account/esolve-account.service.mjs +35 -17
  10. package/esm2020/lib/account/esolve-geocode-result.interface.mjs +2 -0
  11. package/esm2020/lib/account/esolve-location-update-result.model.mjs +8 -0
  12. package/esm2020/lib/account/index.mjs +7 -0
  13. package/esm2020/lib/account/password/esolve-change-password-result.model.mjs +8 -0
  14. package/esm2020/lib/account/password/esolve-forgot-password-get-result.interface.mjs +2 -0
  15. package/esm2020/lib/account/password/esolve-forgot-password-response.interface.mjs +2 -0
  16. package/esm2020/lib/account/password/esolve-reset-password-result.model.mjs +11 -0
  17. package/esm2020/lib/account/password/index.mjs +5 -0
  18. package/esm2020/lib/account/registration/esolve-registration-data.interface.mjs +2 -0
  19. package/esm2020/lib/account/registration/esolve-registration-post-response-item.interface.mjs +2 -0
  20. package/esm2020/lib/account/registration/esolve-registration-result.model.mjs +12 -0
  21. package/esm2020/lib/account/registration/index.mjs +4 -0
  22. package/esm2020/lib/account/transaction/esolve-transaction-address.model.mjs +16 -0
  23. package/esm2020/lib/account/transaction/esolve-transaction-client-record.interface.mjs +2 -0
  24. package/esm2020/lib/account/transaction/esolve-transaction-client.model.mjs +13 -0
  25. package/esm2020/lib/account/transaction/esolve-transaction-item-price.model.mjs +25 -0
  26. package/esm2020/lib/account/transaction/esolve-transaction-item-record.interface.mjs +2 -0
  27. package/esm2020/lib/account/transaction/esolve-transaction-item.model.mjs +12 -0
  28. package/esm2020/lib/account/transaction/esolve-transaction-list.model.mjs +4 -0
  29. package/esm2020/lib/account/transaction/esolve-transaction-location-record.interface.mjs +2 -0
  30. package/esm2020/lib/account/transaction/esolve-transaction-location.model.mjs +4 -0
  31. package/esm2020/lib/account/transaction/esolve-transaction-options.interface.mjs +2 -0
  32. package/esm2020/lib/account/transaction/esolve-transaction-payment-method-record.interface.mjs +2 -0
  33. package/esm2020/lib/account/transaction/esolve-transaction-payment-method.model.mjs +10 -0
  34. package/esm2020/lib/account/transaction/esolve-transaction-record.interface.mjs +2 -0
  35. package/esm2020/lib/account/transaction/esolve-transaction-shipping-method-record.interface.mjs +2 -0
  36. package/esm2020/lib/account/transaction/esolve-transaction-shipping-method.model.mjs +12 -0
  37. package/esm2020/lib/account/transaction/esolve-transaction-type.type.mjs +2 -0
  38. package/esm2020/lib/account/transaction/esolve-transaction-user-record.interface.mjs +2 -0
  39. package/esm2020/lib/account/transaction/esolve-transaction-user.model.mjs +11 -0
  40. package/esm2020/lib/account/transaction/esolve-transaction.model.mjs +58 -0
  41. package/esm2020/lib/account/transaction/index.mjs +23 -0
  42. package/esm2020/lib/account/user-account/esolve-user-account-business.model.mjs +9 -0
  43. package/esm2020/lib/account/user-account/esolve-user-account-contact.model.mjs +8 -0
  44. package/esm2020/lib/account/user-account/esolve-user-account-data.interface.mjs +2 -0
  45. package/esm2020/lib/account/user-account/esolve-user-account-record.interface.mjs +2 -0
  46. package/esm2020/lib/account/user-account/esolve-user-account-result.model.mjs +9 -0
  47. package/esm2020/lib/account/user-account/esolve-user-account.model.mjs +14 -0
  48. package/esm2020/lib/account/user-account/index.mjs +7 -0
  49. package/esm2020/lib/auth/esolve-auth-check-data.interface.mjs +2 -0
  50. package/esm2020/lib/auth/esolve-auth-check-response.interface.mjs +2 -0
  51. package/esm2020/lib/auth/esolve-auth-data.interface.mjs +2 -0
  52. package/esm2020/lib/auth/esolve-auth-get-data.interface.mjs +2 -0
  53. package/esm2020/lib/auth/esolve-auth-get-response.interface.mjs +2 -0
  54. package/esm2020/lib/auth/esolve-auth-interceptor.service.mjs +4 -4
  55. package/esm2020/lib/auth/esolve-auth-response-data.type.mjs +2 -0
  56. package/esm2020/lib/auth/esolve-auth-response.interface.mjs +2 -0
  57. package/esm2020/lib/auth/esolve-auth-result.type.mjs +2 -0
  58. package/esm2020/lib/auth/esolve-auth.service.mjs +24 -11
  59. package/esm2020/lib/auth/esolve-login-post-response-item.interface.mjs +2 -0
  60. package/esm2020/lib/auth/index.mjs +4 -0
  61. package/esm2020/lib/banners/esolve-banner-image-hotspot-coords.interface.mjs +2 -0
  62. package/esm2020/lib/banners/esolve-banner-image-hotspot-record.interface.mjs +2 -0
  63. package/esm2020/lib/banners/esolve-banner-image-hotspot.model.mjs +9 -0
  64. package/esm2020/lib/banners/esolve-banner-image-record.interface.mjs +2 -0
  65. package/esm2020/lib/banners/esolve-banner-image-set.interface.mjs +2 -0
  66. package/esm2020/lib/banners/esolve-banner-image-type.type.mjs +2 -0
  67. package/esm2020/lib/banners/esolve-banner-image.model.mjs +14 -0
  68. package/esm2020/lib/banners/esolve-banner-link.interface.mjs +2 -0
  69. package/esm2020/lib/banners/esolve-banner-record.interface.mjs +2 -0
  70. package/esm2020/lib/banners/esolve-banner-type.type.mjs +2 -0
  71. package/esm2020/lib/banners/esolve-banner.model.mjs +25 -0
  72. package/esm2020/lib/banners/esolve-banner.service.mjs +5 -5
  73. package/esm2020/lib/banners/index.mjs +14 -0
  74. package/esm2020/lib/cart/esolve-cart-item-record.interface.mjs +2 -0
  75. package/esm2020/lib/cart/esolve-cart-item-response.interface.mjs +2 -0
  76. package/esm2020/lib/cart/esolve-cart-item.model.mjs +24 -0
  77. package/esm2020/lib/cart/esolve-cart-set-action.type.mjs +2 -0
  78. package/esm2020/lib/cart/esolve-cart-set-item.interface.mjs +2 -0
  79. package/esm2020/lib/cart/esolve-cart-stock-item.model.mjs +49 -0
  80. package/esm2020/lib/cart/esolve-cart-totals-record.interface.mjs +2 -0
  81. package/esm2020/lib/cart/esolve-cart-totals.model.mjs +39 -0
  82. package/esm2020/lib/cart/esolve-cart.service.mjs +8 -8
  83. package/esm2020/lib/cart/esolve-cart.type.mjs +2 -0
  84. package/esm2020/lib/cart/esolve-checkout-response.interface.mjs +2 -0
  85. package/esm2020/lib/cart/esolve-checkout-result.model.mjs +9 -0
  86. package/esm2020/lib/cart/esolve-tracking-code.interface.mjs +2 -0
  87. package/esm2020/lib/cart/index.mjs +14 -0
  88. package/esm2020/lib/category-tree/esolve-category-identifier.interface.mjs +2 -0
  89. package/esm2020/lib/category-tree/esolve-category-record.interface.mjs +2 -0
  90. package/esm2020/lib/category-tree/esolve-category-tree-item-options.interface.mjs +2 -0
  91. package/esm2020/lib/category-tree/esolve-category-tree-item-record.interface.mjs +2 -0
  92. package/esm2020/lib/category-tree/esolve-category-tree-item.model.mjs +48 -0
  93. package/esm2020/lib/category-tree/esolve-category-tree.service.mjs +3 -3
  94. package/esm2020/lib/category-tree/esolve-subcategory-record.interface.mjs +2 -0
  95. package/esm2020/lib/category-tree/index.mjs +7 -0
  96. package/esm2020/lib/esolve-connect-config.constant.mjs +3 -0
  97. package/esm2020/lib/esolve-connect.config.mjs +2 -10
  98. package/esm2020/lib/locations/esolve-location-address.model.mjs +13 -0
  99. package/esm2020/lib/locations/esolve-location-contact-info.model.mjs +9 -0
  100. package/esm2020/lib/locations/esolve-location-pobox-address.model.mjs +8 -0
  101. package/esm2020/lib/locations/esolve-location-record.interface.mjs +2 -0
  102. package/esm2020/lib/locations/esolve-location-trading-day.model.mjs +7 -0
  103. package/esm2020/lib/locations/esolve-location-trading-times.model.mjs +14 -0
  104. package/esm2020/lib/locations/esolve-location.model.mjs +43 -0
  105. package/esm2020/lib/locations/esolve-locations.service.mjs +4 -4
  106. package/esm2020/lib/locations/index.mjs +9 -0
  107. package/esm2020/lib/manufacturers/esolve-manufacturer-options.interface.mjs +2 -0
  108. package/esm2020/lib/manufacturers/esolve-manufacturer-record.interface.mjs +2 -0
  109. package/esm2020/lib/manufacturers/esolve-manufacturer.model.mjs +38 -0
  110. package/esm2020/lib/manufacturers/esolve-manufacturers.service.mjs +73 -0
  111. package/esm2020/lib/manufacturers/index.mjs +5 -0
  112. package/esm2020/lib/media/esolve-heading-record.interface.mjs +2 -0
  113. package/esm2020/lib/media/esolve-heading.model.mjs +7 -0
  114. package/esm2020/lib/media/esolve-media-article.model.mjs +16 -0
  115. package/esm2020/lib/media/esolve-media-record.interface.mjs +2 -0
  116. package/esm2020/lib/media/esolve-media.service.mjs +6 -6
  117. package/esm2020/lib/media/index.mjs +6 -0
  118. package/esm2020/lib/menu/esolve-menu-item.model.mjs +9 -0
  119. package/esm2020/lib/menu/esolve-menu-tree-record.interface.mjs +2 -0
  120. package/esm2020/lib/menu/esolve-menu.service.mjs +3 -3
  121. package/esm2020/lib/menu/esolve-menu.type.mjs +2 -0
  122. package/esm2020/lib/menu/index.mjs +5 -0
  123. package/esm2020/lib/news/esolve-news-article-author-record.interface.mjs +2 -0
  124. package/esm2020/lib/news/esolve-news-article-author.model.mjs +9 -0
  125. package/esm2020/lib/news/esolve-news-article-list.model.mjs +8 -0
  126. package/esm2020/lib/news/esolve-news-article-options.interface.mjs +2 -0
  127. package/esm2020/lib/news/esolve-news-article-record.interface.mjs +2 -0
  128. package/esm2020/lib/news/esolve-news-article.model.mjs +20 -0
  129. package/esm2020/lib/news/esolve-news-group-record.interface.mjs +2 -0
  130. package/esm2020/lib/news/esolve-news-group.model.mjs +9 -0
  131. package/esm2020/lib/news/esolve-news-manufacturer-record.interface.mjs +2 -0
  132. package/esm2020/lib/news/esolve-news-range-record.interface.mjs +2 -0
  133. package/esm2020/lib/news/esolve-news.service.mjs +6 -6
  134. package/esm2020/lib/news/index.mjs +12 -0
  135. package/esm2020/lib/ng-esolve-connect.module.mjs +2 -2
  136. package/esm2020/lib/payment/esolve-banking-details.model.mjs +11 -0
  137. package/esm2020/lib/payment/esolve-card-data.interface.mjs +2 -0
  138. package/esm2020/lib/payment/esolve-integration-type.type.mjs +2 -0
  139. package/esm2020/lib/payment/esolve-paygate-form-input.interface.mjs +2 -0
  140. package/esm2020/lib/payment/esolve-payment-method-options.interface.mjs +2 -0
  141. package/esm2020/lib/payment/esolve-payment-method-record.interface.mjs +2 -0
  142. package/esm2020/lib/payment/esolve-payment-method.model.mjs +36 -0
  143. package/esm2020/lib/payment/esolve-payment-response.interface.mjs +2 -0
  144. package/esm2020/lib/payment/esolve-payment-result.model.mjs +22 -0
  145. package/esm2020/lib/payment/esolve-payment-set-body.interface.mjs +2 -0
  146. package/esm2020/lib/payment/esolve-payment.service.mjs +13 -13
  147. package/esm2020/lib/payment/esolve-vault-item-result.model.mjs +20 -0
  148. package/esm2020/lib/payment/esolve-vault-item.model.mjs +20 -0
  149. package/esm2020/lib/payment/esolve-vault-record.interface.mjs +2 -0
  150. package/esm2020/lib/payment/esolve-vault-response.interface.mjs +2 -0
  151. package/esm2020/lib/payment/index.mjs +15 -0
  152. package/esm2020/lib/ranges/esolve-range-options.interface.mjs +2 -0
  153. package/esm2020/lib/ranges/esolve-range-record.interface.mjs +2 -0
  154. package/esm2020/lib/ranges/esolve-range.model.mjs +33 -0
  155. package/esm2020/lib/ranges/esolve-ranges.service.mjs +76 -0
  156. package/esm2020/lib/ranges/index.mjs +5 -0
  157. package/esm2020/lib/session/esolve-session-data.interface.mjs +2 -0
  158. package/esm2020/lib/session/esolve-session.model.mjs +28 -0
  159. package/esm2020/lib/session/esolve-session.service.mjs +24 -20
  160. package/esm2020/lib/session/esolve-stored-session.interface.mjs +2 -0
  161. package/esm2020/lib/session/index.mjs +5 -0
  162. package/esm2020/lib/shared/assets/esolve-asset-type.type.mjs +2 -0
  163. package/esm2020/lib/shared/assets/esolve-linked-asset-record.interface.mjs +2 -0
  164. package/esm2020/lib/shared/assets/esolve-linked-asset.model.mjs +10 -0
  165. package/esm2020/lib/shared/assets/index.mjs +4 -0
  166. package/esm2020/lib/shared/custom-fields/esolve-custom-fields.type.mjs +2 -0
  167. package/esm2020/lib/shared/custom-fields/esolve-generic-custom-fields.interface.mjs +2 -0
  168. package/esm2020/lib/shared/custom-fields/index.mjs +3 -0
  169. package/esm2020/lib/shared/errors/esolve-error-handler.service.mjs +91 -0
  170. package/esm2020/lib/shared/errors/esolve-http-error.model.mjs +8 -0
  171. package/esm2020/lib/shared/esolve-list.model.mjs +9 -0
  172. package/esm2020/lib/shared/esolve-result.model.mjs +8 -0
  173. package/esm2020/lib/shared/esolve-url-target.type.mjs +2 -0
  174. package/esm2020/lib/shared/geocoder/esolve-geocode-address-record.interface.mjs +2 -0
  175. package/esm2020/lib/shared/geocoder/esolve-geocode-address-result.model.mjs +12 -0
  176. package/esm2020/lib/shared/geocoder/esolve-geocode-coords-result.model.mjs +7 -0
  177. package/esm2020/lib/shared/geocoder/esolve-geocode-result-record.interface.mjs +2 -0
  178. package/esm2020/lib/shared/geocoder/esolve-geocode-result.model.mjs +11 -0
  179. package/esm2020/lib/shared/geocoder/esolve-geocoder.service.mjs +5 -5
  180. package/esm2020/lib/shared/geocoder/index.mjs +7 -0
  181. package/esm2020/lib/shared/response/esolve-delete-response.interface.mjs +2 -0
  182. package/esm2020/lib/shared/response/esolve-delete-result.interface.mjs +2 -0
  183. package/esm2020/lib/shared/response/esolve-get-response.interface.mjs +2 -0
  184. package/esm2020/lib/shared/response/esolve-post-response-item.interface.mjs +2 -0
  185. package/esm2020/lib/shared/response/esolve-post-response-status.interface.mjs +2 -0
  186. package/esm2020/lib/shared/response/esolve-response-handler.service.mjs +34 -0
  187. package/esm2020/lib/shared/response/esolve-response-log-item.interface.mjs +2 -0
  188. package/esm2020/lib/shared/response/esolve-response-result.model.mjs +9 -0
  189. package/esm2020/lib/shared/response/esolve-response.interface.mjs +2 -0
  190. package/esm2020/lib/shared/response/esolve-set-response.interface.mjs +2 -0
  191. package/esm2020/lib/shared/response/index.mjs +11 -0
  192. package/esm2020/lib/shared/seo/esolve-seo-details.interface.mjs +2 -0
  193. package/esm2020/lib/shared/seo/esolve-seo-info.model.mjs +11 -0
  194. package/esm2020/lib/shared/seo/esolve-seo.service.mjs +15 -15
  195. package/esm2020/lib/shared/seo/index.mjs +4 -0
  196. package/esm2020/lib/shipping/esolve-insurance-calculation-method.type.mjs +2 -0
  197. package/esm2020/lib/shipping/esolve-shipping-calculation-method.type.mjs +2 -0
  198. package/esm2020/lib/shipping/esolve-shipping-cost-record.interface.mjs +2 -0
  199. package/esm2020/lib/shipping/esolve-shipping-cost.model.mjs +12 -0
  200. package/esm2020/lib/shipping/esolve-shipping-location.type.mjs +2 -0
  201. package/esm2020/lib/shipping/esolve-shipping-method-options.interface.mjs +2 -0
  202. package/esm2020/lib/shipping/esolve-shipping-method-record.interface.mjs +2 -0
  203. package/esm2020/lib/shipping/esolve-shipping-method.model.mjs +33 -0
  204. package/esm2020/lib/shipping/esolve-shipping-totals.model.mjs +8 -0
  205. package/esm2020/lib/shipping/esolve-shipping.service.mjs +17 -6
  206. package/esm2020/lib/shipping/index.mjs +11 -0
  207. package/esm2020/lib/specials/esolve-special-image-collection-record.interface.mjs +2 -0
  208. package/esm2020/lib/specials/esolve-special-image-collection.model.mjs +25 -0
  209. package/esm2020/lib/specials/esolve-special-image-record.interface.mjs +2 -0
  210. package/esm2020/lib/specials/esolve-special-image.model.mjs +9 -0
  211. package/esm2020/lib/specials/esolve-special-options.interface.mjs +2 -0
  212. package/esm2020/lib/specials/esolve-special-record.interface.mjs +2 -0
  213. package/esm2020/lib/specials/esolve-special.model.mjs +38 -0
  214. package/esm2020/lib/specials/esolve-specials.service.mjs +82 -0
  215. package/esm2020/lib/specials/index.mjs +9 -0
  216. package/esm2020/lib/stock/esolve-linked-stock-item.model.mjs +9 -0
  217. package/esm2020/lib/stock/esolve-linked-stock-record.interface.mjs +2 -0
  218. package/esm2020/lib/stock/esolve-recipe-item-record.interface.mjs +2 -0
  219. package/esm2020/lib/stock/esolve-recipe-stock-item.model.mjs +9 -0
  220. package/esm2020/lib/stock/esolve-stock-badge-record.interface.mjs +2 -0
  221. package/esm2020/lib/stock/esolve-stock-badge.model.mjs +11 -0
  222. package/esm2020/lib/stock/esolve-stock-base-record.interface.mjs +2 -0
  223. package/esm2020/lib/stock/esolve-stock-group-item-record.interface.mjs +2 -0
  224. package/esm2020/lib/stock/esolve-stock-group-item.model.mjs +7 -0
  225. package/esm2020/lib/stock/esolve-stock-group.model.mjs +13 -0
  226. package/esm2020/lib/stock/esolve-stock-item-base.model.mjs +154 -0
  227. package/esm2020/lib/stock/esolve-stock-item-list.model.mjs +11 -0
  228. package/esm2020/lib/stock/esolve-stock-item-options.interface.mjs +2 -0
  229. package/esm2020/lib/stock/esolve-stock-item.model.mjs +17 -0
  230. package/esm2020/lib/stock/esolve-stock-linked-category-record.interface.mjs +2 -0
  231. package/esm2020/lib/stock/esolve-stock-price.model.mjs +43 -0
  232. package/esm2020/lib/stock/esolve-stock-record.interface.mjs +2 -0
  233. package/esm2020/lib/stock/esolve-stock.service.mjs +75 -25
  234. package/esm2020/lib/stock/index.mjs +19 -0
  235. package/esm2020/lib/tags/esolve-tag-record.interface.mjs +2 -0
  236. package/esm2020/lib/tags/esolve-tag.model.mjs +9 -0
  237. package/esm2020/lib/tags/index.mjs +3 -0
  238. package/esm2020/lib/topics/esolve-topic-record.interface.mjs +2 -0
  239. package/esm2020/lib/topics/esolve-topic.model.mjs +9 -0
  240. package/esm2020/lib/topics/esolve-topic.service.mjs +4 -4
  241. package/esm2020/lib/topics/index.mjs +4 -0
  242. package/esm2020/public-api.mjs +33 -78
  243. package/fesm2015/esolve-ng-esolve-connect.mjs +1351 -781
  244. package/fesm2015/esolve-ng-esolve-connect.mjs.map +1 -1
  245. package/fesm2020/esolve-ng-esolve-connect.mjs +1330 -769
  246. package/fesm2020/esolve-ng-esolve-connect.mjs.map +1 -1
  247. package/lib/account/{esolve-address-record.d.ts → address/esolve-address-record.interface.d.ts} +1 -1
  248. package/lib/account/{esolve-address-response.d.ts → address/esolve-address-response.interface.d.ts} +2 -2
  249. package/lib/account/{esolve-address-result.d.ts → address/esolve-address-result.model.d.ts} +3 -3
  250. package/lib/account/{esolve-address-set-data.d.ts → address/esolve-address-set-data.interface.d.ts} +1 -1
  251. package/lib/account/address/esolve-address-type.type.d.ts +1 -0
  252. package/lib/account/{esolve-address.d.ts → address/esolve-address.model.d.ts} +1 -1
  253. package/lib/account/address/index.d.ts +6 -0
  254. package/lib/account/esolve-account.service.d.ts +10 -16
  255. package/lib/account/{esolve-geocode-result.d.ts → esolve-geocode-result.interface.d.ts} +0 -0
  256. package/lib/account/esolve-location-update-result.model.d.ts +5 -0
  257. package/lib/account/index.d.ts +6 -0
  258. package/lib/account/password/esolve-change-password-result.model.d.ts +5 -0
  259. package/lib/account/password/esolve-forgot-password-get-result.interface.d.ts +3 -0
  260. package/lib/account/{esolve-forgot-password-response.d.ts → password/esolve-forgot-password-response.interface.d.ts} +3 -1
  261. package/lib/account/{esolve-reset-password-result.d.ts → password/esolve-reset-password-result.model.d.ts} +2 -2
  262. package/lib/account/password/index.d.ts +4 -0
  263. package/lib/account/{esolve-registration-data.d.ts → registration/esolve-registration-data.interface.d.ts} +0 -0
  264. package/lib/account/{esolve-registration-post-response-item.d.ts → registration/esolve-registration-post-response-item.interface.d.ts} +3 -1
  265. package/lib/account/{esolve-registration-result.d.ts → registration/esolve-registration-result.model.d.ts} +3 -2
  266. package/lib/account/registration/index.d.ts +3 -0
  267. package/lib/account/transaction/esolve-transaction-address.model.d.ts +15 -0
  268. package/lib/account/transaction/esolve-transaction-client-record.interface.d.ts +10 -0
  269. package/lib/account/transaction/esolve-transaction-client.model.d.ts +11 -0
  270. package/lib/account/transaction/esolve-transaction-item-price.model.d.ts +35 -0
  271. package/lib/account/transaction/esolve-transaction-item-record.interface.d.ts +16 -0
  272. package/lib/account/transaction/esolve-transaction-item.model.d.ts +11 -0
  273. package/lib/account/transaction/esolve-transaction-list.model.d.ts +4 -0
  274. package/lib/account/transaction/esolve-transaction-location-record.interface.d.ts +3 -0
  275. package/lib/account/transaction/esolve-transaction-location.model.d.ts +3 -0
  276. package/lib/account/{esolve-transaction-options.d.ts → transaction/esolve-transaction-options.interface.d.ts} +1 -1
  277. package/lib/account/transaction/esolve-transaction-payment-method-record.interface.d.ts +7 -0
  278. package/lib/account/transaction/esolve-transaction-payment-method.model.d.ts +8 -0
  279. package/lib/account/transaction/esolve-transaction-record.interface.d.ts +51 -0
  280. package/lib/account/transaction/esolve-transaction-shipping-method-record.interface.d.ts +9 -0
  281. package/lib/account/transaction/esolve-transaction-shipping-method.model.d.ts +10 -0
  282. package/lib/account/transaction/esolve-transaction-type.type.d.ts +1 -0
  283. package/lib/account/transaction/esolve-transaction-user-record.interface.d.ts +8 -0
  284. package/lib/account/transaction/esolve-transaction-user.model.d.ts +9 -0
  285. package/lib/account/transaction/esolve-transaction.model.d.ts +38 -0
  286. package/lib/account/transaction/index.d.ts +19 -0
  287. package/lib/account/user-account/esolve-user-account-business.model.d.ts +7 -0
  288. package/lib/account/user-account/esolve-user-account-contact.model.d.ts +6 -0
  289. package/lib/account/{esolve-user-account-data.d.ts → user-account/esolve-user-account-data.interface.d.ts} +0 -0
  290. package/lib/account/{esolve-user-account-record.d.ts → user-account/esolve-user-account-record.interface.d.ts} +0 -0
  291. package/lib/account/user-account/esolve-user-account-result.model.d.ts +5 -0
  292. package/lib/account/{esolve-user-account.d.ts → user-account/esolve-user-account.model.d.ts} +2 -13
  293. package/lib/account/user-account/index.d.ts +6 -0
  294. package/lib/auth/esolve-auth-check-data.interface.d.ts +3 -0
  295. package/lib/auth/esolve-auth-check-response.interface.d.ts +4 -0
  296. package/lib/auth/esolve-auth-data.interface.d.ts +5 -0
  297. package/lib/auth/esolve-auth-get-data.interface.d.ts +3 -0
  298. package/lib/auth/esolve-auth-get-response.interface.d.ts +4 -0
  299. package/lib/auth/esolve-auth-response-data.type.d.ts +3 -0
  300. package/lib/auth/esolve-auth-response.interface.d.ts +7 -0
  301. package/lib/auth/esolve-auth-result.type.d.ts +3 -0
  302. package/lib/auth/esolve-auth.service.d.ts +5 -17
  303. package/lib/auth/esolve-login-post-response-item.interface.d.ts +6 -0
  304. package/lib/auth/index.d.ts +3 -0
  305. package/lib/banners/esolve-banner-image-hotspot-coords.interface.d.ts +4 -0
  306. package/lib/banners/{esolve-banner-image-hotspot-record.d.ts → esolve-banner-image-hotspot-record.interface.d.ts} +2 -2
  307. package/lib/banners/{esolve-banner-image-hotspot.d.ts → esolve-banner-image-hotspot.model.d.ts} +2 -5
  308. package/lib/banners/{esolve-banner-image-record.d.ts → esolve-banner-image-record.interface.d.ts} +2 -2
  309. package/lib/banners/esolve-banner-image-set.interface.d.ts +6 -0
  310. package/lib/banners/esolve-banner-image-type.type.d.ts +1 -0
  311. package/lib/banners/{esolve-banner-image.d.ts → esolve-banner-image.model.d.ts} +2 -2
  312. package/lib/banners/esolve-banner-link.interface.d.ts +5 -0
  313. package/lib/banners/{esolve-banner-record.d.ts → esolve-banner-record.interface.d.ts} +3 -2
  314. package/lib/banners/esolve-banner-type.type.d.ts +1 -0
  315. package/lib/banners/{esolve-banner.d.ts → esolve-banner.model.d.ts} +4 -7
  316. package/lib/banners/esolve-banner.service.d.ts +1 -1
  317. package/lib/banners/index.d.ts +9 -0
  318. package/lib/cart/{esolve-cart-item-record.d.ts → esolve-cart-item-record.interface.d.ts} +0 -0
  319. package/lib/cart/{esolve-cart-item-response.d.ts → esolve-cart-item-response.interface.d.ts} +1 -1
  320. package/lib/cart/{esolve-cart-item.d.ts → esolve-cart-item.model.d.ts} +1 -9
  321. package/lib/cart/esolve-cart-set-action.type.d.ts +1 -0
  322. package/lib/cart/esolve-cart-set-item.interface.d.ts +7 -0
  323. package/lib/cart/{esolve-cart-stock-item.d.ts → esolve-cart-stock-item.model.d.ts} +2 -1
  324. package/lib/cart/{esolve-cart-totals-record.d.ts → esolve-cart-totals-record.interface.d.ts} +0 -0
  325. package/lib/cart/{esolve-cart-totals.d.ts → esolve-cart-totals.model.d.ts} +4 -4
  326. package/lib/cart/esolve-cart.service.d.ts +8 -6
  327. package/lib/cart/esolve-cart.type.d.ts +2 -0
  328. package/lib/cart/esolve-checkout-response.interface.d.ts +4 -0
  329. package/lib/cart/esolve-checkout-result.model.d.ts +6 -0
  330. package/lib/cart/esolve-tracking-code.interface.d.ts +3 -0
  331. package/lib/cart/index.d.ts +13 -0
  332. package/lib/category-tree/esolve-category-identifier.interface.d.ts +4 -0
  333. package/lib/category-tree/esolve-category-record.interface.d.ts +18 -0
  334. package/lib/category-tree/{esolve-category-tree-item-options.d.ts → esolve-category-tree-item-options.interface.d.ts} +0 -0
  335. package/lib/category-tree/esolve-category-tree-item-record.interface.d.ts +16 -0
  336. package/lib/category-tree/{esolve-category-tree-item.d.ts → esolve-category-tree-item.model.d.ts} +7 -6
  337. package/lib/category-tree/esolve-category-tree.service.d.ts +2 -2
  338. package/lib/category-tree/esolve-subcategory-record.interface.d.ts +18 -0
  339. package/lib/category-tree/index.d.ts +6 -0
  340. package/lib/esolve-connect-config.constant.d.ts +3 -0
  341. package/lib/esolve-connect.config.d.ts +0 -2
  342. package/lib/locations/esolve-location-address.model.d.ts +11 -0
  343. package/lib/locations/esolve-location-contact-info.model.d.ts +7 -0
  344. package/lib/locations/esolve-location-pobox-address.model.d.ts +6 -0
  345. package/lib/locations/{esolve-stock-location-record.d.ts → esolve-location-record.interface.d.ts} +1 -1
  346. package/lib/locations/esolve-location-trading-day.model.d.ts +5 -0
  347. package/lib/locations/esolve-location-trading-times.model.d.ts +13 -0
  348. package/lib/locations/esolve-location.model.d.ts +23 -0
  349. package/lib/locations/esolve-locations.service.d.ts +2 -2
  350. package/lib/locations/index.d.ts +8 -0
  351. package/lib/manufacturers/esolve-manufacturer-options.interface.d.ts +3 -0
  352. package/lib/manufacturers/esolve-manufacturer-record.interface.d.ts +16 -0
  353. package/lib/manufacturers/esolve-manufacturer.model.d.ts +20 -0
  354. package/lib/manufacturers/esolve-manufacturers.service.d.ts +19 -0
  355. package/lib/manufacturers/index.d.ts +4 -0
  356. package/lib/media/{esolve-heading-record.d.ts → esolve-heading-record.interface.d.ts} +0 -0
  357. package/lib/media/{esolve-heading.d.ts → esolve-heading.model.d.ts} +0 -0
  358. package/lib/media/esolve-media-article.model.d.ts +14 -0
  359. package/lib/media/{esolve-media-record.d.ts → esolve-media-record.interface.d.ts} +2 -2
  360. package/lib/media/esolve-media.service.d.ts +2 -2
  361. package/lib/media/index.d.ts +5 -0
  362. package/lib/menu/{esolve-menu-item.d.ts → esolve-menu-item.model.d.ts} +0 -1
  363. package/lib/menu/{esolve-menu-tree-record.d.ts → esolve-menu-tree-record.interface.d.ts} +0 -0
  364. package/lib/menu/esolve-menu.service.d.ts +1 -1
  365. package/lib/menu/esolve-menu.type.d.ts +2 -0
  366. package/lib/menu/index.d.ts +4 -0
  367. package/lib/news/{esolve-news-article-author-record.d.ts → esolve-news-article-author-record.interface.d.ts} +0 -0
  368. package/lib/news/{esolve-news-article-author.d.ts → esolve-news-article-author.model.d.ts} +0 -0
  369. package/lib/news/{esolve-news-article-list.d.ts → esolve-news-article-list.model.d.ts} +1 -1
  370. package/lib/news/{esolve-news-article-options.d.ts → esolve-news-article-options.interface.d.ts} +0 -0
  371. package/lib/news/{esolve-news-article-record.d.ts → esolve-news-article-record.interface.d.ts} +4 -4
  372. package/lib/news/{esolve-news-article.d.ts → esolve-news-article.model.d.ts} +5 -4
  373. package/lib/news/{esolve-news-group-record.d.ts → esolve-news-group-record.interface.d.ts} +0 -0
  374. package/lib/news/{esolve-news-group.d.ts → esolve-news-group.model.d.ts} +0 -0
  375. package/lib/news/{esolve-news-manufacturer-record.d.ts → esolve-news-manufacturer-record.interface.d.ts} +0 -0
  376. package/lib/news/{esolve-news-range-record.d.ts → esolve-news-range-record.interface.d.ts} +0 -0
  377. package/lib/news/esolve-news.service.d.ts +4 -4
  378. package/lib/news/index.d.ts +11 -0
  379. package/lib/payment/esolve-banking-details.model.d.ts +9 -0
  380. package/lib/payment/{esolve-card-data.d.ts → esolve-card-data.interface.d.ts} +0 -0
  381. package/lib/payment/esolve-integration-type.type.d.ts +1 -0
  382. package/lib/payment/esolve-paygate-form-input.interface.d.ts +4 -0
  383. package/lib/payment/{esolve-payment-method-options.d.ts → esolve-payment-method-options.interface.d.ts} +0 -0
  384. package/lib/payment/{esolve-payment-method-record.d.ts → esolve-payment-method-record.interface.d.ts} +1 -1
  385. package/lib/payment/{esolve-payment-method.d.ts → esolve-payment-method.model.d.ts} +3 -10
  386. package/lib/payment/{esolve-payment-response.d.ts → esolve-payment-response.interface.d.ts} +2 -5
  387. package/lib/payment/{esolve-payment-result.d.ts → esolve-payment-result.model.d.ts} +3 -2
  388. package/lib/payment/esolve-payment-set-body.interface.d.ts +13 -0
  389. package/lib/payment/esolve-payment.service.d.ts +9 -9
  390. package/lib/payment/{esolve-vault-item-result.d.ts → esolve-vault-item-result.model.d.ts} +2 -2
  391. package/lib/payment/{esolve-vault-item.d.ts → esolve-vault-item.model.d.ts} +0 -0
  392. package/lib/payment/{esolve-vault-record.d.ts → esolve-vault-record.interface.d.ts} +0 -0
  393. package/lib/payment/{esolve-vault-response.d.ts → esolve-vault-response.interface.d.ts} +1 -1
  394. package/lib/payment/index.d.ts +14 -0
  395. package/lib/ranges/esolve-range-options.interface.d.ts +4 -0
  396. package/lib/ranges/esolve-range-record.interface.d.ts +17 -0
  397. package/lib/ranges/esolve-range.model.d.ts +19 -0
  398. package/lib/ranges/esolve-ranges.service.d.ts +19 -0
  399. package/lib/ranges/index.d.ts +4 -0
  400. package/lib/session/esolve-session-data.interface.d.ts +3 -0
  401. package/lib/session/esolve-session.model.d.ts +13 -0
  402. package/lib/session/esolve-session.service.d.ts +10 -5
  403. package/lib/session/esolve-stored-session.interface.d.ts +6 -0
  404. package/lib/session/index.d.ts +4 -0
  405. package/lib/shared/assets/esolve-asset-type.type.d.ts +1 -0
  406. package/lib/shared/assets/esolve-linked-asset-record.interface.d.ts +8 -0
  407. package/lib/shared/assets/esolve-linked-asset.model.d.ts +10 -0
  408. package/lib/shared/assets/index.d.ts +3 -0
  409. package/lib/shared/custom-fields/esolve-custom-fields.type.d.ts +4 -0
  410. package/lib/shared/custom-fields/esolve-generic-custom-fields.interface.d.ts +3 -0
  411. package/lib/shared/custom-fields/index.d.ts +2 -0
  412. package/lib/shared/{error-handler → errors}/esolve-error-handler.service.d.ts +1 -1
  413. package/lib/shared/{error-handler/esolve-http-error.d.ts → errors/esolve-http-error.model.d.ts} +0 -0
  414. package/lib/shared/{esolve-list.d.ts → esolve-list.model.d.ts} +0 -0
  415. package/lib/shared/{esolve-result.d.ts → esolve-result.model.d.ts} +0 -0
  416. package/lib/shared/{esolve-url-target.d.ts → esolve-url-target.type.d.ts} +0 -0
  417. package/lib/shared/geocoder/{esolve-geocode-address-record.d.ts → esolve-geocode-address-record.interface.d.ts} +0 -0
  418. package/lib/shared/geocoder/{esolve-geocode-address-result.d.ts → esolve-geocode-address-result.model.d.ts} +0 -0
  419. package/lib/shared/geocoder/{esolve-geocode-coords-result.d.ts → esolve-geocode-coords-result.model.d.ts} +0 -0
  420. package/lib/shared/geocoder/{esolve-geocode-result-record.d.ts → esolve-geocode-result-record.interface.d.ts} +1 -1
  421. package/lib/shared/geocoder/{esolve-geocode-result.d.ts → esolve-geocode-result.model.d.ts} +2 -2
  422. package/lib/shared/geocoder/esolve-geocoder.service.d.ts +1 -1
  423. package/lib/shared/geocoder/index.d.ts +6 -0
  424. package/lib/shared/response/esolve-delete-response.interface.d.ts +5 -0
  425. package/lib/shared/response/esolve-delete-result.interface.d.ts +6 -0
  426. package/lib/shared/response/esolve-get-response.interface.d.ts +4 -0
  427. package/lib/shared/response/esolve-post-response-item.interface.d.ts +9 -0
  428. package/lib/shared/response/esolve-post-response-status.interface.d.ts +5 -0
  429. package/lib/shared/{response-handler → response}/esolve-response-handler.service.d.ts +5 -2
  430. package/lib/shared/response/esolve-response-log-item.interface.d.ts +5 -0
  431. package/lib/shared/{response-handler/esolve-response-result.d.ts → response/esolve-response-result.model.d.ts} +2 -1
  432. package/lib/shared/response/esolve-response.interface.d.ts +8 -0
  433. package/lib/shared/response/esolve-set-response.interface.d.ts +5 -0
  434. package/lib/shared/response/index.d.ts +10 -0
  435. package/lib/shared/seo/esolve-seo-details.interface.d.ts +4 -0
  436. package/lib/shared/seo/{esolve-seo-info.d.ts → esolve-seo-info.model.d.ts} +1 -4
  437. package/lib/shared/seo/esolve-seo.service.d.ts +6 -6
  438. package/lib/shared/seo/index.d.ts +3 -0
  439. package/lib/shipping/esolve-insurance-calculation-method.type.d.ts +1 -0
  440. package/lib/shipping/esolve-shipping-calculation-method.type.d.ts +1 -0
  441. package/lib/shipping/{esolve-shipping-cost-record.d.ts → esolve-shipping-cost-record.interface.d.ts} +0 -0
  442. package/lib/shipping/{esolve-shipping-cost.d.ts → esolve-shipping-cost.model.d.ts} +1 -7
  443. package/lib/shipping/esolve-shipping-location.type.d.ts +1 -0
  444. package/lib/shipping/{esolve-shipping-method-options.d.ts → esolve-shipping-method-options.interface.d.ts} +0 -0
  445. package/lib/shipping/{esolve-shipping-method-record.d.ts → esolve-shipping-method-record.interface.d.ts} +6 -6
  446. package/lib/shipping/esolve-shipping-method.model.d.ts +34 -0
  447. package/lib/shipping/esolve-shipping-totals.model.d.ts +6 -0
  448. package/lib/shipping/esolve-shipping.service.d.ts +16 -5
  449. package/lib/shipping/index.d.ts +10 -0
  450. package/lib/specials/esolve-special-image-collection-record.interface.d.ts +6 -0
  451. package/lib/specials/esolve-special-image-collection.model.d.ts +9 -0
  452. package/lib/specials/esolve-special-image-record.interface.d.ts +6 -0
  453. package/lib/specials/esolve-special-image.model.d.ts +8 -0
  454. package/lib/specials/esolve-special-options.interface.d.ts +6 -0
  455. package/lib/specials/esolve-special-record.interface.d.ts +24 -0
  456. package/lib/specials/esolve-special.model.d.ts +21 -0
  457. package/lib/specials/esolve-specials.service.d.ts +19 -0
  458. package/lib/specials/index.d.ts +8 -0
  459. package/lib/stock/esolve-linked-stock-item.model.d.ts +7 -0
  460. package/lib/stock/esolve-linked-stock-record.interface.d.ts +7 -0
  461. package/lib/stock/esolve-recipe-item-record.interface.d.ts +7 -0
  462. package/lib/stock/esolve-recipe-stock-item.model.d.ts +7 -0
  463. package/lib/stock/{esolve-stock-badge-record.d.ts → esolve-stock-badge-record.interface.d.ts} +0 -0
  464. package/lib/stock/{esolve-stock-badge.d.ts → esolve-stock-badge.model.d.ts} +0 -0
  465. package/lib/stock/{esolve-stock-record.d.ts → esolve-stock-base-record.interface.d.ts} +10 -13
  466. package/lib/stock/esolve-stock-group-item-record.interface.d.ts +4 -0
  467. package/lib/stock/esolve-stock-group-item.model.d.ts +6 -0
  468. package/lib/stock/esolve-stock-group.model.d.ts +8 -0
  469. package/lib/stock/esolve-stock-item-base.model.d.ts +98 -0
  470. package/lib/stock/esolve-stock-item-list.model.d.ts +11 -0
  471. package/lib/stock/{esolve-stock-item-options.d.ts → esolve-stock-item-options.interface.d.ts} +3 -0
  472. package/lib/stock/esolve-stock-item.model.d.ts +14 -0
  473. package/lib/stock/esolve-stock-linked-category-record.interface.d.ts +5 -0
  474. package/lib/stock/{esolve-stock-price.d.ts → esolve-stock-price.model.d.ts} +10 -10
  475. package/lib/stock/esolve-stock-record.interface.d.ts +9 -0
  476. package/lib/stock/esolve-stock.service.d.ts +41 -10
  477. package/lib/stock/index.d.ts +18 -0
  478. package/lib/tags/{esolve-tag-record.d.ts → esolve-tag-record.interface.d.ts} +0 -0
  479. package/lib/tags/{esolve-tag.d.ts → esolve-tag.model.d.ts} +0 -0
  480. package/lib/tags/index.d.ts +2 -0
  481. package/lib/topics/{esolve-topic-record.d.ts → esolve-topic-record.interface.d.ts} +0 -0
  482. package/lib/topics/{esolve-topic.d.ts → esolve-topic.model.d.ts} +0 -0
  483. package/lib/topics/esolve-topic.service.d.ts +1 -1
  484. package/lib/topics/index.d.ts +3 -0
  485. package/package.json +1 -1
  486. package/public-api.d.ts +26 -75
  487. package/esm2020/lib/account/esolve-address-record.mjs +0 -2
  488. package/esm2020/lib/account/esolve-address-response.mjs +0 -2
  489. package/esm2020/lib/account/esolve-address-result.mjs +0 -11
  490. package/esm2020/lib/account/esolve-address-set-data.mjs +0 -2
  491. package/esm2020/lib/account/esolve-address.mjs +0 -19
  492. package/esm2020/lib/account/esolve-change-password-result.mjs +0 -8
  493. package/esm2020/lib/account/esolve-forgot-password-response.mjs +0 -2
  494. package/esm2020/lib/account/esolve-geocode-result.mjs +0 -2
  495. package/esm2020/lib/account/esolve-registration-data.mjs +0 -2
  496. package/esm2020/lib/account/esolve-registration-post-response-item.mjs +0 -2
  497. package/esm2020/lib/account/esolve-registration-result.mjs +0 -11
  498. package/esm2020/lib/account/esolve-reset-password-result.mjs +0 -11
  499. package/esm2020/lib/account/esolve-transaction-list.mjs +0 -4
  500. package/esm2020/lib/account/esolve-transaction-options.mjs +0 -2
  501. package/esm2020/lib/account/esolve-transaction-record.mjs +0 -2
  502. package/esm2020/lib/account/esolve-transaction.mjs +0 -145
  503. package/esm2020/lib/account/esolve-user-account-data.mjs +0 -2
  504. package/esm2020/lib/account/esolve-user-account-record.mjs +0 -2
  505. package/esm2020/lib/account/esolve-user-account-result.mjs +0 -9
  506. package/esm2020/lib/account/esolve-user-account.mjs +0 -29
  507. package/esm2020/lib/banners/esolve-banner-image-hotspot-record.mjs +0 -2
  508. package/esm2020/lib/banners/esolve-banner-image-hotspot.mjs +0 -9
  509. package/esm2020/lib/banners/esolve-banner-image-record.mjs +0 -2
  510. package/esm2020/lib/banners/esolve-banner-image.mjs +0 -14
  511. package/esm2020/lib/banners/esolve-banner-record.mjs +0 -2
  512. package/esm2020/lib/banners/esolve-banner-type.mjs +0 -2
  513. package/esm2020/lib/banners/esolve-banner.mjs +0 -25
  514. package/esm2020/lib/cart/esolve-cart-item-record.mjs +0 -2
  515. package/esm2020/lib/cart/esolve-cart-item-response.mjs +0 -2
  516. package/esm2020/lib/cart/esolve-cart-item.mjs +0 -24
  517. package/esm2020/lib/cart/esolve-cart-stock-item.mjs +0 -43
  518. package/esm2020/lib/cart/esolve-cart-totals-record.mjs +0 -2
  519. package/esm2020/lib/cart/esolve-cart-totals.mjs +0 -39
  520. package/esm2020/lib/cart/esolve-checkout-result.mjs +0 -9
  521. package/esm2020/lib/cart/esolve-checkout.mjs +0 -2
  522. package/esm2020/lib/category-tree/esolve-category-tree-item-options.mjs +0 -2
  523. package/esm2020/lib/category-tree/esolve-category-tree-item-record.mjs +0 -2
  524. package/esm2020/lib/category-tree/esolve-category-tree-item.mjs +0 -48
  525. package/esm2020/lib/locations/esolve-stock-location-record.mjs +0 -2
  526. package/esm2020/lib/locations/esolve-stock-location.mjs +0 -76
  527. package/esm2020/lib/media/esolve-heading-record.mjs +0 -2
  528. package/esm2020/lib/media/esolve-heading.mjs +0 -7
  529. package/esm2020/lib/media/esolve-media-article.mjs +0 -16
  530. package/esm2020/lib/media/esolve-media-record.mjs +0 -2
  531. package/esm2020/lib/menu/esolve-menu-item.mjs +0 -9
  532. package/esm2020/lib/menu/esolve-menu-tree-record.mjs +0 -2
  533. package/esm2020/lib/news/esolve-news-article-author-record.mjs +0 -2
  534. package/esm2020/lib/news/esolve-news-article-author.mjs +0 -9
  535. package/esm2020/lib/news/esolve-news-article-list.mjs +0 -8
  536. package/esm2020/lib/news/esolve-news-article-options.mjs +0 -2
  537. package/esm2020/lib/news/esolve-news-article-record.mjs +0 -2
  538. package/esm2020/lib/news/esolve-news-article.mjs +0 -20
  539. package/esm2020/lib/news/esolve-news-group-record.mjs +0 -2
  540. package/esm2020/lib/news/esolve-news-group.mjs +0 -9
  541. package/esm2020/lib/news/esolve-news-manufacturer-record.mjs +0 -2
  542. package/esm2020/lib/news/esolve-news-range-record.mjs +0 -2
  543. package/esm2020/lib/payment/esolve-card-data.mjs +0 -2
  544. package/esm2020/lib/payment/esolve-payment-method-options.mjs +0 -2
  545. package/esm2020/lib/payment/esolve-payment-method-record.mjs +0 -2
  546. package/esm2020/lib/payment/esolve-payment-method.mjs +0 -45
  547. package/esm2020/lib/payment/esolve-payment-response.mjs +0 -2
  548. package/esm2020/lib/payment/esolve-payment-result.mjs +0 -22
  549. package/esm2020/lib/payment/esolve-vault-item-result.mjs +0 -20
  550. package/esm2020/lib/payment/esolve-vault-item.mjs +0 -20
  551. package/esm2020/lib/payment/esolve-vault-record.mjs +0 -2
  552. package/esm2020/lib/payment/esolve-vault-response.mjs +0 -2
  553. package/esm2020/lib/session/esolve-session.mjs +0 -24
  554. package/esm2020/lib/session/esolve-stored-session.mjs +0 -2
  555. package/esm2020/lib/shared/error-handler/esolve-error-handler.service.mjs +0 -91
  556. package/esm2020/lib/shared/error-handler/esolve-http-error.mjs +0 -8
  557. package/esm2020/lib/shared/esolve-list.mjs +0 -9
  558. package/esm2020/lib/shared/esolve-response.mjs +0 -2
  559. package/esm2020/lib/shared/esolve-result.mjs +0 -8
  560. package/esm2020/lib/shared/esolve-url-target.mjs +0 -2
  561. package/esm2020/lib/shared/geocoder/esolve-geocode-address-record.mjs +0 -2
  562. package/esm2020/lib/shared/geocoder/esolve-geocode-address-result.mjs +0 -12
  563. package/esm2020/lib/shared/geocoder/esolve-geocode-coords-result.mjs +0 -7
  564. package/esm2020/lib/shared/geocoder/esolve-geocode-result-record.mjs +0 -2
  565. package/esm2020/lib/shared/geocoder/esolve-geocode-result.mjs +0 -11
  566. package/esm2020/lib/shared/response-handler/esolve-response-handler.service.mjs +0 -32
  567. package/esm2020/lib/shared/response-handler/esolve-response-result.mjs +0 -9
  568. package/esm2020/lib/shared/seo/esolve-seo-info.mjs +0 -11
  569. package/esm2020/lib/shipping/esolve-shipping-cost-record.mjs +0 -2
  570. package/esm2020/lib/shipping/esolve-shipping-cost.mjs +0 -18
  571. package/esm2020/lib/shipping/esolve-shipping-method-options.mjs +0 -2
  572. package/esm2020/lib/shipping/esolve-shipping-method-record.mjs +0 -2
  573. package/esm2020/lib/shipping/esolve-shipping-method.mjs +0 -33
  574. package/esm2020/lib/stock/esolve-stock-badge-record.mjs +0 -2
  575. package/esm2020/lib/stock/esolve-stock-badge.mjs +0 -11
  576. package/esm2020/lib/stock/esolve-stock-item-list.mjs +0 -11
  577. package/esm2020/lib/stock/esolve-stock-item-options.mjs +0 -2
  578. package/esm2020/lib/stock/esolve-stock-item.mjs +0 -135
  579. package/esm2020/lib/stock/esolve-stock-price.mjs +0 -43
  580. package/esm2020/lib/stock/esolve-stock-record.mjs +0 -2
  581. package/esm2020/lib/tags/esolve-tag-record.mjs +0 -2
  582. package/esm2020/lib/tags/esolve-tag.mjs +0 -9
  583. package/esm2020/lib/topics/esolve-topic-record.mjs +0 -2
  584. package/esm2020/lib/topics/esolve-topic.mjs +0 -9
  585. package/lib/account/esolve-change-password-result.d.ts +0 -6
  586. package/lib/account/esolve-transaction-list.d.ts +0 -4
  587. package/lib/account/esolve-transaction-record.d.ts +0 -98
  588. package/lib/account/esolve-transaction.d.ts +0 -132
  589. package/lib/account/esolve-user-account-result.d.ts +0 -6
  590. package/lib/banners/esolve-banner-type.d.ts +0 -7
  591. package/lib/cart/esolve-checkout-result.d.ts +0 -6
  592. package/lib/cart/esolve-checkout.d.ts +0 -7
  593. package/lib/category-tree/esolve-category-tree-item-record.d.ts +0 -51
  594. package/lib/locations/esolve-stock-location.d.ts +0 -60
  595. package/lib/media/esolve-media-article.d.ts +0 -13
  596. package/lib/session/esolve-session.d.ts +0 -10
  597. package/lib/session/esolve-stored-session.d.ts +0 -5
  598. package/lib/shared/esolve-response.d.ts +0 -40
  599. package/lib/shipping/esolve-shipping-method.d.ts +0 -32
  600. package/lib/stock/esolve-stock-item-list.d.ts +0 -10
  601. package/lib/stock/esolve-stock-item.d.ts +0 -172
@@ -5,22 +5,16 @@ import * as i1$2 from '@angular/common/http';
5
5
  import { HttpParams, HTTP_INTERCEPTORS, HttpClientModule, HttpErrorResponse, HttpHeaders } from '@angular/common/http';
6
6
  import * as i1 from 'ngx-cookie-service';
7
7
  import { CookieService } from 'ngx-cookie-service';
8
- import { BehaviorSubject, throwError, iif, of } from 'rxjs';
8
+ import { BehaviorSubject, throwError, of, iif } from 'rxjs';
9
9
  import * as i1$1 from '@angular/platform-browser';
10
10
  import { map, tap, catchError, switchMap } from 'rxjs/operators';
11
11
 
12
- const ESOLVE_CONNECT_CONFIG = new InjectionToken('esolve.connect.config');
13
- // For future development
14
- // export const GLOBAL_CONFIG = {
15
- // images_url: '',
16
- // media_path: '/media',
17
- // stock_path: '/stock',
18
- // banner_path: '/banners'
19
- // };
12
+ const ESOLVE_CONNECT_CONFIG = new InjectionToken('esolve.connect.config');
20
13
 
21
14
  class EsolveSession {
22
- constructor(id = -1, key = '', expiration_date) {
15
+ constructor(id = -1, location_id = 0, key = '', expiration_date) {
23
16
  this.id = id;
17
+ this.location_id = location_id;
24
18
  this.key = key;
25
19
  this.expiration_date = expiration_date;
26
20
  }
@@ -40,6 +34,9 @@ class EsolveSession {
40
34
  updateUser(user_id) {
41
35
  this.id = user_id;
42
36
  }
37
+ updateLocation(location_id) {
38
+ this.location_id = location_id;
39
+ }
43
40
  }
44
41
 
45
42
  class EsolveCookieService {
@@ -147,7 +144,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
147
144
  }] }];
148
145
  } });
149
146
 
150
- // TODO: Rewrite session manager to use a pure rxjs solution.
151
147
  class EsolveSessionService {
152
148
  constructor(platformId, config, cookieService) {
153
149
  this.platformId = platformId;
@@ -162,17 +158,6 @@ class EsolveSessionService {
162
158
  get currentSession() {
163
159
  return this._session.value;
164
160
  }
165
- setStorageKey() {
166
- if ((typeof this.config.user_session_storage_key === 'string') &&
167
- (this.config.user_session_storage_key !== '')) {
168
- this.storage_key = this.config.user_session_storage_key;
169
- }
170
- }
171
- startTimer(callback, duration) {
172
- if (this.is_browser) {
173
- this.key_expiration_timer = setTimeout(callback, duration);
174
- }
175
- }
176
161
  clearTimer() {
177
162
  if (this.key_expiration_timer) {
178
163
  clearTimeout(this.key_expiration_timer);
@@ -189,7 +174,7 @@ class EsolveSessionService {
189
174
  return;
190
175
  }
191
176
  const expiration_date = new Date(stored_session.expiration_date);
192
- const loaded_session = new EsolveSession(stored_session.id, stored_session.key, expiration_date);
177
+ const loaded_session = new EsolveSession(stored_session.id, stored_session.location_id, stored_session.key, expiration_date);
193
178
  if (!loaded_session.expired) {
194
179
  this._session.next(loaded_session);
195
180
  const expiration_duration = expiration_date.getTime() - new Date().getTime();
@@ -199,22 +184,38 @@ class EsolveSessionService {
199
184
  expirationCallback(loaded_session);
200
185
  }
201
186
  }
202
- handleSession(user_id, key, expiry_time, expires, expirationCallback) {
187
+ handleSession(user_id, location_id, key, expiry_time, expires, expirationCallback) {
203
188
  const expiration_date = new Date(expiry_time * 1000);
204
- const session = new EsolveSession(user_id, key, expiration_date);
189
+ const session = new EsolveSession(user_id, location_id, key, expiration_date);
205
190
  this.cookieService.set(this.storage_key, JSON.stringify(session), expiration_date, '/');
206
191
  this._session.next(session);
207
192
  this.startTimer(expirationCallback, expires * 1000);
208
193
  }
209
- handleUpdateSession(user_id, callback) {
194
+ handleUpdateSession({ user_id, location_id, }, callback) {
210
195
  const current_session = this.currentSession;
211
- current_session.updateUser(user_id);
196
+ if (typeof user_id !== 'undefined') {
197
+ current_session.updateUser(user_id);
198
+ }
199
+ if (typeof location_id !== 'undefined') {
200
+ current_session.updateLocation(location_id);
201
+ }
212
202
  this.cookieService.set(this.storage_key, JSON.stringify(current_session), current_session.expiration_date, '/');
213
203
  this._session.next(current_session);
214
204
  if (typeof callback === 'function') {
215
205
  callback();
216
206
  }
217
207
  }
208
+ setStorageKey() {
209
+ if ((typeof this.config.user_session_storage_key === 'string') &&
210
+ (this.config.user_session_storage_key !== '')) {
211
+ this.storage_key = this.config.user_session_storage_key;
212
+ }
213
+ }
214
+ startTimer(callback, duration) {
215
+ if (this.is_browser) {
216
+ this.key_expiration_timer = setTimeout(callback, duration);
217
+ }
218
+ }
218
219
  }
219
220
  EsolveSessionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveSessionService, deps: [{ token: PLATFORM_ID }, { token: ESOLVE_CONNECT_CONFIG }, { token: EsolveCookieService }], target: i0.ɵɵFactoryTarget.Injectable });
220
221
  EsolveSessionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveSessionService, providedIn: 'root' });
@@ -256,7 +257,7 @@ class EsolveAuthInterceptorService {
256
257
  });
257
258
  const modified_req = req.clone({
258
259
  url: modified_url,
259
- params
260
+ params,
260
261
  });
261
262
  return next.handle(modified_req);
262
263
  }
@@ -329,6 +330,47 @@ class EsolveResult {
329
330
  }
330
331
  }
331
332
 
333
+ class EsolveResponseResult {
334
+ constructor(response) {
335
+ this.success_log = [];
336
+ this.error_log = [];
337
+ this.error_log.push(...response.log.filter(log_item => log_item.type === 'error'));
338
+ this.success_log.push(...response.log.filter(log_item => log_item.type === 'success'));
339
+ }
340
+ }
341
+
342
+ class EsolveResponseHandlerService {
343
+ constructor() { }
344
+ /**
345
+ * Parse single HTTP response
346
+ *
347
+ * @param http_response HTTP Response to eSolve service
348
+ * @param resultHandler Function to parse response to a result
349
+ *
350
+ * @returns Parsed result of response
351
+ */
352
+ validateSingleHttpResponse(http_response, resultHandler) {
353
+ if ((http_response.responses === undefined) ||
354
+ (http_response.responses.length <= 0)) {
355
+ throw http_response;
356
+ }
357
+ const response = http_response.responses[0];
358
+ if ((response.status.state === 'error') ||
359
+ (response.status.state === 'none')) {
360
+ throw response;
361
+ }
362
+ return resultHandler(response);
363
+ }
364
+ }
365
+ EsolveResponseHandlerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveResponseHandlerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
366
+ EsolveResponseHandlerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveResponseHandlerService, providedIn: 'root' });
367
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveResponseHandlerService, decorators: [{
368
+ type: Injectable,
369
+ args: [{
370
+ providedIn: 'root',
371
+ }]
372
+ }], ctorParameters: function () { return []; } });
373
+
332
374
  class EsolveHttpError {
333
375
  constructor(type, message, error_code) {
334
376
  this.type = type;
@@ -423,49 +465,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
423
465
  }]
424
466
  }], ctorParameters: function () { return []; } });
425
467
 
426
- class EsolveResponseResult {
427
- constructor(response) {
428
- this.success_log = [];
429
- this.error_log = [];
430
- this.error_log.push(...response.log.filter(log_item => log_item.type === 'error'));
431
- this.success_log.push(...response.log.filter(log_item => log_item.type === 'success'));
432
- }
433
- }
434
-
435
- class EsolveResponseHandlerService {
436
- constructor() { }
437
- /**
438
- * Parse single HTTP response
439
- * @param http_response HTTP Response to eSolve service
440
- * @param resultHandler Function to parse response to a result
441
- * @returns Parsed result of response
442
- */
443
- validateSingleHttpResponse(http_response, resultHandler) {
444
- if ((http_response.responses === undefined) ||
445
- (http_response.responses.length <= 0)) {
446
- throw http_response;
447
- }
448
- const response = http_response.responses[0];
449
- if ((response.status.state === 'error') ||
450
- (response.status.state === 'none')) {
451
- throw response;
452
- }
453
- return resultHandler(response);
454
- }
455
- }
456
- EsolveResponseHandlerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveResponseHandlerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
457
- EsolveResponseHandlerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveResponseHandlerService, providedIn: 'root' });
458
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveResponseHandlerService, decorators: [{
459
- type: Injectable,
460
- args: [{
461
- providedIn: 'root'
462
- }]
463
- }], ctorParameters: function () { return []; } });
464
-
465
468
  /**
466
469
  * Search Engine Optimization information.
467
470
  */
468
- class EsolveSEOInfo {
471
+ class EsolveSeoInfo {
469
472
  constructor(title = '', description = '', keywords = '') {
470
473
  this.title = title;
471
474
  this.description = description;
@@ -486,6 +489,16 @@ class EsolveSeoService {
486
489
  this.default_seo_keywords = '';
487
490
  this.init();
488
491
  }
492
+ /**
493
+ * Sets SEO tags for page
494
+ * @param seoInfo SEO object
495
+ */
496
+ setTags(seoInfo) {
497
+ seoInfo = this.validateAndSanitizeSeoInfo(seoInfo);
498
+ this.setPageTitleTags(seoInfo.title);
499
+ this.setPageDescriptionTags(seoInfo.description);
500
+ this.setPageKeywordsTags(seoInfo.keywords);
501
+ }
489
502
  init() {
490
503
  if (typeof this.config.title_prefix !== 'undefined') {
491
504
  this.title_prefix = this.config.title_prefix;
@@ -518,7 +531,7 @@ class EsolveSeoService {
518
531
  this.meta.updateTag({ name: 'keywords', content: keywords });
519
532
  }
520
533
  validateAndSanitizeSeoInfo(seoInfo) {
521
- const pageSeo = new EsolveSEOInfo(this.default_seo_title, this.default_seo_description, this.default_seo_keywords);
534
+ const pageSeo = new EsolveSeoInfo(this.default_seo_title, this.default_seo_description, this.default_seo_keywords);
522
535
  if (seoInfo.description.trim() !== '') {
523
536
  pageSeo.description = seoInfo.description;
524
537
  }
@@ -559,23 +572,13 @@ class EsolveSeoService {
559
572
  }
560
573
  return pageSeo;
561
574
  }
562
- /**
563
- * Sets SEO tags for page
564
- * @param seoInfo SEO object
565
- */
566
- setTags(seoInfo) {
567
- seoInfo = this.validateAndSanitizeSeoInfo(seoInfo);
568
- this.setPageTitleTags(seoInfo.title);
569
- this.setPageDescriptionTags(seoInfo.description);
570
- this.setPageKeywordsTags(seoInfo.keywords);
571
- }
572
575
  }
573
576
  EsolveSeoService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveSeoService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$1.Title }, { token: i1$1.Meta }], target: i0.ɵɵFactoryTarget.Injectable });
574
577
  EsolveSeoService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveSeoService, providedIn: 'root' });
575
578
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveSeoService, decorators: [{
576
579
  type: Injectable,
577
580
  args: [{
578
- providedIn: 'root'
581
+ providedIn: 'root',
579
582
  }]
580
583
  }], ctorParameters: function () {
581
584
  return [{ type: undefined, decorators: [{
@@ -677,6 +680,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
677
680
  }] }, { type: i1$2.HttpClient }];
678
681
  } });
679
682
 
683
+ class EsolveLinkedAsset {
684
+ constructor(record) {
685
+ this.id = +record.id;
686
+ this.name = record.name;
687
+ this.type = record.type;
688
+ this.description = record.description;
689
+ this.src = record.src;
690
+ }
691
+ }
692
+
680
693
  class EsolveAuthService {
681
694
  constructor(config, http, session, errorHandler, cookieService) {
682
695
  this.config = config;
@@ -709,7 +722,7 @@ class EsolveAuthService {
709
722
  throw responseData;
710
723
  }
711
724
  }), catchError(this.handleError), tap((responseData) => {
712
- this.handleAuthentication(responseData);
725
+ this.handleAuthentication(responseData.additional_data);
713
726
  }));
714
727
  }
715
728
  autoLogin() {
@@ -747,8 +760,14 @@ class EsolveAuthService {
747
760
  for (const response_log of login_response.log) {
748
761
  if ((response_log.type === 'success') &&
749
762
  (response_log.message_code === 'login_success')) {
750
- this.session.handleUpdateSession(login_response.esolve_id);
751
- return login_response.esolve_id;
763
+ const session_data = login_response.session_data;
764
+ const user_id = +login_response.esolve_id;
765
+ const location_id = +session_data.location_id;
766
+ this.session.handleUpdateSession({
767
+ user_id: user_id,
768
+ location_id: location_id
769
+ });
770
+ return user_id;
752
771
  }
753
772
  }
754
773
  throw login_response;
@@ -778,8 +797,15 @@ class EsolveAuthService {
778
797
  (!responseData.additional_data.key_okay)) {
779
798
  throw responseData;
780
799
  }
781
- responseData.additional_data.key = token;
782
- return responseData;
800
+ const additional_data = responseData.additional_data;
801
+ const result = {
802
+ key: token,
803
+ expires: additional_data.expires,
804
+ expiry_time: additional_data.expiry_time,
805
+ location_id: additional_data.location_id,
806
+ user_id: additional_data.user_id,
807
+ };
808
+ return result;
783
809
  }))
784
810
  .toPromise();
785
811
  }
@@ -793,11 +819,11 @@ class EsolveAuthService {
793
819
  });
794
820
  };
795
821
  }
796
- handleAuthentication(responseData) {
797
- if (!responseData.additional_data.key) {
822
+ handleAuthentication(result) {
823
+ if (!result.key) {
798
824
  return;
799
825
  }
800
- this.session.handleSession(responseData.additional_data.user_id, responseData.additional_data.key, +responseData.additional_data.expiry_time, +responseData.additional_data.expires, this.handleExpiration());
826
+ this.session.handleSession(+result.user_id, +result.location_id, result.key, +result.expiry_time, +result.expires, this.handleExpiration());
801
827
  }
802
828
  handleError(errorRes) {
803
829
  const error = {
@@ -873,7 +899,16 @@ class EsolveUserAccount {
873
899
  this.gender = gender;
874
900
  this.identification_number = identification_number;
875
901
  }
876
- }
902
+ }
903
+
904
+ class EsolveUserAccountResult extends EsolveResponseResult {
905
+ constructor(response) {
906
+ super(response);
907
+ this.id = 0;
908
+ this.id = +response.esolve_id;
909
+ }
910
+ }
911
+
877
912
  class EsolveUserAccountBusiness {
878
913
  constructor(name, vat_number, description, type) {
879
914
  this.name = name;
@@ -881,7 +916,8 @@ class EsolveUserAccountBusiness {
881
916
  this.description = description;
882
917
  this.type = type;
883
918
  }
884
- }
919
+ }
920
+
885
921
  class EsolveUserAccountContact {
886
922
  constructor(tel_number, cell_number, fax_number) {
887
923
  this.tel_number = tel_number;
@@ -890,44 +926,73 @@ class EsolveUserAccountContact {
890
926
  }
891
927
  }
892
928
 
893
- class EsolveUserAccountResult extends EsolveResponseResult {
894
- constructor(response) {
895
- super(response);
896
- this.id = 0;
897
- this.id = +response.esolve_id;
929
+ class EsolveTransactionAddress {
930
+ constructor(recipient, address_type, address_description, street_number, street, suburb, city, province, country, postal_code, pobox) {
931
+ this.recipient = recipient;
932
+ this.address_type = address_type;
933
+ this.address_description = address_description;
934
+ this.street_number = street_number;
935
+ this.street = street;
936
+ this.suburb = suburb;
937
+ this.city = city;
938
+ this.province = province;
939
+ this.country = country;
940
+ this.postal_code = postal_code;
941
+ this.pobox = pobox;
898
942
  }
899
943
  }
900
944
 
901
- class EsolveStockLocation {
902
- constructor(record) {
903
- this.id = +record.id;
904
- this.identifier = record.identifier;
905
- this.description = record.description;
906
- this.head_office = record.head_office;
907
- this.erp_identifier = record.erp_identifier;
908
- this.external_system_code = record.external_system_code;
909
- this.default_location_for_payment_methods = record.default_location_for_payment_methods;
910
- this.userid = +record.userid;
911
- this.importance = +record.importance;
912
- this.active = record.is_active;
913
- this.website_url = record.website_url;
914
- this.address = new EsolveStockLocationAddress(record.street, record.suburb, record.city, record.province, record.country, record.postal_code, +record.latitude, +record.longitude);
915
- this.pobox_address = new EsolveStockLocationPOBoxAddress(record.pobox, record.pobox_city, record.pobox_postal_code);
916
- const telnumbers = [];
917
- if (record.branch_telnumber.length > 0) {
918
- telnumbers.push(record.branch_telnumber);
919
- }
920
- if (record.branch_telnumber_2.length > 0) {
921
- telnumbers.push(record.branch_telnumber_2);
922
- }
923
- if (record.branch_telnumber_3.length > 0) {
924
- telnumbers.push(record.branch_telnumber_3);
925
- }
926
- this.contact_info = new EsolveStockLocationContactInfo(telnumbers, record.branch_cellnumber, record.branch_email, record.branch_fax);
927
- this.trading_times = new EsolveStockLocationTradingTimes(new EsolveStockLocationTradingTimesDay(record.monday_open_time, record.monday_close_time), new EsolveStockLocationTradingTimesDay(record.tuesday_open_time, record.tuesday_close_time), new EsolveStockLocationTradingTimesDay(record.wednesday_open_time, record.wednesday_close_time), new EsolveStockLocationTradingTimesDay(record.thursday_open_time, record.thursday_close_time), new EsolveStockLocationTradingTimesDay(record.friday_open_time, record.friday_close_time), new EsolveStockLocationTradingTimesDay(record.saturday_open_time, record.saturday_close_time), new EsolveStockLocationTradingTimesDay(record.sunday_open_time, record.sunday_close_time), new EsolveStockLocationTradingTimesDay(record.public_holiday_open_time, record.public_holiday_close_time), record.trading_hours_additional_info);
945
+ class EsolveTransactionClient {
946
+ constructor(id, account, company_name, branch_code, email, first_name, last_name, contact_number) {
947
+ this.id = id;
948
+ this.account = account;
949
+ this.company_name = company_name;
950
+ this.branch_code = branch_code;
951
+ this.email = email;
952
+ this.first_name = first_name;
953
+ this.last_name = last_name;
954
+ this.contact_number = contact_number;
928
955
  }
929
- }
930
- class EsolveStockLocationAddress {
956
+ }
957
+
958
+ class EsolveTransactionItem {
959
+ constructor(code, name, qty, discount, vat_rate, price, line_total) {
960
+ this.code = code;
961
+ this.name = name;
962
+ this.qty = qty;
963
+ this.discount = discount;
964
+ this.vat_rate = vat_rate;
965
+ this.price = price;
966
+ this.line_total = line_total;
967
+ }
968
+ }
969
+
970
+ class EsolveTransactionItemPrice {
971
+ constructor(
972
+ /**
973
+ * Price without tax
974
+ */
975
+ price,
976
+ /**
977
+ * Price with tax
978
+ */
979
+ price_with_tax,
980
+ /**
981
+ * Price without tax and with discounts applied if applicable
982
+ */
983
+ price_discounted,
984
+ /**
985
+ * Price with tax and with discounts applied if applicable
986
+ */
987
+ price_with_tax_discounted) {
988
+ this.price = price;
989
+ this.price_with_tax = price_with_tax;
990
+ this.price_discounted = price_discounted;
991
+ this.price_with_tax_discounted = price_with_tax_discounted;
992
+ }
993
+ }
994
+
995
+ class EsolveLocationAddress {
931
996
  constructor(street, suburb, city, province, country, postal_code, latitude, longitude) {
932
997
  this.street = street;
933
998
  this.suburb = suburb;
@@ -938,42 +1003,170 @@ class EsolveStockLocationAddress {
938
1003
  this.latitude = latitude;
939
1004
  this.longitude = longitude;
940
1005
  }
941
- }
942
- class EsolveStockLocationPOBoxAddress {
943
- constructor(pobox, city, postal_code) {
944
- this.pobox = pobox;
945
- this.city = city;
946
- this.postal_code = postal_code;
947
- }
948
- }
949
- class EsolveStockLocationContactInfo {
1006
+ }
1007
+
1008
+ class EsolveLocationContactInfo {
950
1009
  constructor(telnumber, cellnumber, email, fax) {
951
1010
  this.telnumber = telnumber;
952
1011
  this.cellnumber = cellnumber;
953
1012
  this.email = email;
954
1013
  this.fax = fax;
955
1014
  }
956
- }
957
- class EsolveStockLocationTradingTimes {
958
- constructor(monday, tuesday, wednesday, thursday, friday, saturday, sunday, public_holiday, trading_hours_additional_info = '') {
959
- this.monday = monday;
960
- this.tuesday = tuesday;
961
- this.wednesday = wednesday;
962
- this.thursday = thursday;
963
- this.friday = friday;
964
- this.saturday = saturday;
965
- this.sunday = sunday;
1015
+ }
1016
+
1017
+ class EsolveLocationPOBoxAddress {
1018
+ constructor(pobox, city, postal_code) {
1019
+ this.pobox = pobox;
1020
+ this.city = city;
1021
+ this.postal_code = postal_code;
1022
+ }
1023
+ }
1024
+
1025
+ class EsolveLocationTradingTimes {
1026
+ constructor(monday, tuesday, wednesday, thursday, friday, saturday, sunday, public_holiday, trading_hours_additional_info = '') {
1027
+ this.monday = monday;
1028
+ this.tuesday = tuesday;
1029
+ this.wednesday = wednesday;
1030
+ this.thursday = thursday;
1031
+ this.friday = friday;
1032
+ this.saturday = saturday;
1033
+ this.sunday = sunday;
966
1034
  this.public_holiday = public_holiday;
967
1035
  this.trading_hours_additional_info = trading_hours_additional_info;
968
1036
  }
969
- }
970
- class EsolveStockLocationTradingTimesDay {
1037
+ }
1038
+
1039
+ class EsolveLocationTradingDay {
971
1040
  constructor(open, close) {
972
1041
  this.open = open;
973
1042
  this.close = close;
974
1043
  }
975
1044
  }
976
1045
 
1046
+ class EsolveLocation {
1047
+ constructor(record) {
1048
+ this.id = +record.id;
1049
+ this.identifier = record.identifier;
1050
+ this.description = record.description;
1051
+ this.head_office = record.head_office;
1052
+ this.erp_identifier = record.erp_identifier;
1053
+ this.external_system_code = record.external_system_code;
1054
+ this.default_location_for_payment_methods = record.default_location_for_payment_methods;
1055
+ this.userid = +record.userid;
1056
+ this.importance = +record.importance;
1057
+ this.active = record.is_active;
1058
+ this.website_url = record.website_url;
1059
+ this.address = new EsolveLocationAddress(record.street, record.suburb, record.city, record.province, record.country, record.postal_code, +record.latitude, +record.longitude);
1060
+ this.pobox_address = new EsolveLocationPOBoxAddress(record.pobox, record.pobox_city, record.pobox_postal_code);
1061
+ const telnumbers = [];
1062
+ if (record.branch_telnumber.length > 0) {
1063
+ telnumbers.push(record.branch_telnumber);
1064
+ }
1065
+ if (record.branch_telnumber_2.length > 0) {
1066
+ telnumbers.push(record.branch_telnumber_2);
1067
+ }
1068
+ if (record.branch_telnumber_3.length > 0) {
1069
+ telnumbers.push(record.branch_telnumber_3);
1070
+ }
1071
+ this.contact_info = new EsolveLocationContactInfo(telnumbers, record.branch_cellnumber, record.branch_email, record.branch_fax);
1072
+ const monday = new EsolveLocationTradingDay(record.monday_open_time, record.monday_close_time);
1073
+ const tuesday = new EsolveLocationTradingDay(record.tuesday_open_time, record.tuesday_close_time);
1074
+ const wednesday = new EsolveLocationTradingDay(record.wednesday_open_time, record.wednesday_close_time);
1075
+ const thursday = new EsolveLocationTradingDay(record.thursday_open_time, record.thursday_close_time);
1076
+ const friday = new EsolveLocationTradingDay(record.friday_open_time, record.friday_close_time);
1077
+ const saturday = new EsolveLocationTradingDay(record.saturday_open_time, record.saturday_close_time);
1078
+ const sunday = new EsolveLocationTradingDay(record.sunday_open_time, record.sunday_close_time);
1079
+ const public_holiday = new EsolveLocationTradingDay(record.public_holiday_open_time, record.public_holiday_close_time);
1080
+ this.trading_times = new EsolveLocationTradingTimes(monday, tuesday, wednesday, thursday, friday, saturday, sunday, public_holiday, record.trading_hours_additional_info);
1081
+ }
1082
+ }
1083
+
1084
+ class EsolveLocationsService {
1085
+ constructor(config, http) {
1086
+ this.config = config;
1087
+ this.http = http;
1088
+ }
1089
+ /**
1090
+ * Retrieves a list of stock locations
1091
+ *
1092
+ * @returns An `Observable` with an array of stock locations
1093
+ */
1094
+ getStockLocations() {
1095
+ return this.http
1096
+ .get(`${this.config.api_url}/get-locations.php`)
1097
+ .pipe(map((response) => {
1098
+ if (response.records === undefined) {
1099
+ throw response;
1100
+ }
1101
+ return this.processStockLocations(response.records);
1102
+ }));
1103
+ }
1104
+ /**
1105
+ * Processes the eSolve stock location records.
1106
+ *
1107
+ * @param records Records to process
1108
+ * @returns An array of processed stock location records
1109
+ */
1110
+ processStockLocations(records) {
1111
+ const stock_locations = [];
1112
+ if (records) {
1113
+ for (const record of records) {
1114
+ stock_locations.push(new EsolveLocation(record));
1115
+ }
1116
+ }
1117
+ return stock_locations;
1118
+ }
1119
+ }
1120
+ EsolveLocationsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveLocationsService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1121
+ EsolveLocationsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveLocationsService, providedIn: 'root' });
1122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveLocationsService, decorators: [{
1123
+ type: Injectable,
1124
+ args: [{
1125
+ providedIn: 'root',
1126
+ }]
1127
+ }], ctorParameters: function () {
1128
+ return [{ type: undefined, decorators: [{
1129
+ type: Inject,
1130
+ args: [ESOLVE_CONNECT_CONFIG]
1131
+ }] }, { type: i1$2.HttpClient }];
1132
+ } });
1133
+
1134
+ class EsolveTransactionLocation extends EsolveLocation {
1135
+ }
1136
+
1137
+ class EsolveTransactionPaymentMethod {
1138
+ constructor(id, name, description, integration_type, service_provider) {
1139
+ this.id = id;
1140
+ this.name = name;
1141
+ this.description = description;
1142
+ this.integration_type = integration_type;
1143
+ this.service_provider = service_provider;
1144
+ }
1145
+ }
1146
+
1147
+ class EsolveTransactionShippingMethod {
1148
+ constructor(id, name, delivery_category, location, description, pricing, client_to_collect) {
1149
+ this.id = id;
1150
+ this.name = name;
1151
+ this.delivery_category = delivery_category;
1152
+ this.location = location;
1153
+ this.description = description;
1154
+ this.pricing = pricing;
1155
+ this.client_to_collect = client_to_collect;
1156
+ }
1157
+ }
1158
+
1159
+ class EsolveTransactionUser {
1160
+ constructor(id, email, first_name, last_name, tel_number, cell_number) {
1161
+ this.id = id;
1162
+ this.email = email;
1163
+ this.first_name = first_name;
1164
+ this.last_name = last_name;
1165
+ this.tel_number = tel_number;
1166
+ this.cell_number = cell_number;
1167
+ }
1168
+ }
1169
+
977
1170
  class EsolveTransaction {
978
1171
  constructor(record) {
979
1172
  // Transaction Items
@@ -1022,114 +1215,12 @@ class EsolveTransaction {
1022
1215
  this.items.push(item);
1023
1216
  }
1024
1217
  }
1025
- }
1026
- class EsolveTransactionClient {
1027
- constructor(id, account, company_name, branch_code, email, first_name, last_name, contact_number) {
1028
- this.id = id;
1029
- this.account = account;
1030
- this.company_name = company_name;
1031
- this.branch_code = branch_code;
1032
- this.email = email;
1033
- this.first_name = first_name;
1034
- this.last_name = last_name;
1035
- this.contact_number = contact_number;
1036
- }
1037
- }
1038
- class EsolveTransactionUser {
1039
- constructor(id, email, first_name, last_name, tel_number, cell_number) {
1040
- this.id = id;
1041
- this.email = email;
1042
- this.first_name = first_name;
1043
- this.last_name = last_name;
1044
- this.tel_number = tel_number;
1045
- this.cell_number = cell_number;
1046
- }
1047
- }
1048
- class EsolveTransactionLocation extends EsolveStockLocation {
1049
- }
1050
- class EsolveTransactionPaymentMethod {
1051
- constructor(id, name, description, integration_type, service_provider) {
1052
- this.id = id;
1053
- this.name = name;
1054
- this.description = description;
1055
- this.integration_type = integration_type;
1056
- this.service_provider = service_provider;
1057
- }
1058
- }
1059
- class EsolveTransactionShippingMethod {
1060
- constructor(id, name, delivery_category, location, description, pricing, client_to_collect) {
1061
- this.id = id;
1062
- this.name = name;
1063
- this.delivery_category = delivery_category;
1064
- this.location = location;
1065
- this.description = description;
1066
- this.pricing = pricing;
1067
- this.client_to_collect = client_to_collect;
1068
- }
1069
- }
1070
- class EsolveTransactionAddress {
1071
- constructor(recipient, address_type, address_description, street_number, street, suburb, city, province, country, postal_code, pobox) {
1072
- this.recipient = recipient;
1073
- this.address_type = address_type;
1074
- this.address_description = address_description;
1075
- this.street_number = street_number;
1076
- this.street = street;
1077
- this.suburb = suburb;
1078
- this.city = city;
1079
- this.province = province;
1080
- this.country = country;
1081
- this.postal_code = postal_code;
1082
- this.pobox = pobox;
1083
- }
1084
- }
1085
- class EsolveTransactionItem {
1086
- constructor(code, name, qty, discount, vat_rate, price, line_total) {
1087
- this.code = code;
1088
- this.name = name;
1089
- this.qty = qty;
1090
- this.discount = discount;
1091
- this.vat_rate = vat_rate;
1092
- this.price = price;
1093
- this.line_total = line_total;
1094
- }
1095
- }
1096
- class EsolveTransactionItemPrice {
1097
- constructor(
1098
- /**
1099
- * Price without tax
1100
- */
1101
- price,
1102
- /**
1103
- * Price with tax
1104
- */
1105
- price_with_tax,
1106
- /**
1107
- * Price without tax and with discounts applied if appilcable
1108
- */
1109
- price_discounted,
1110
- /**
1111
- * Price with tax and with discounts applied if appilcable
1112
- */
1113
- price_with_tax_discounted) {
1114
- this.price = price;
1115
- this.price_with_tax = price_with_tax;
1116
- this.price_discounted = price_discounted;
1117
- this.price_with_tax_discounted = price_with_tax_discounted;
1118
- }
1119
1218
  }
1120
1219
 
1121
1220
  class EsolveTransactionList extends EsolveList {
1122
1221
  }
1123
1222
 
1124
- class EsolveRegistrationResult extends EsolveResponseResult {
1125
- constructor(response) {
1126
- super(response);
1127
- this.user_id = response.esolve_id;
1128
- this.guest = response.guest;
1129
- this.auto_login = response.auto_login;
1130
- this.authentication_required = response.authentication_required;
1131
- }
1132
- }
1223
+ // Classes
1133
1224
 
1134
1225
  class EsolveChangePasswordResult extends EsolveResponseResult {
1135
1226
  constructor(response) {
@@ -1148,6 +1239,24 @@ class EsolveResetPasswordResult extends EsolveResponseResult {
1148
1239
  }
1149
1240
  }
1150
1241
 
1242
+ class EsolveRegistrationResult extends EsolveResponseResult {
1243
+ constructor(response) {
1244
+ super(response);
1245
+ this.user_id = response.esolve_id;
1246
+ this.guest = response.guest;
1247
+ this.auto_login = response.auto_login;
1248
+ this.authentication_required = response.authentication_required;
1249
+ this.location_id = response.session_data.location_id;
1250
+ }
1251
+ }
1252
+
1253
+ class EsolveLocationUpdateResult extends EsolveResponseResult {
1254
+ constructor(response) {
1255
+ super(response);
1256
+ this.location_updated = (response.esolve_id > 0);
1257
+ }
1258
+ }
1259
+
1151
1260
  class EsolveAccountService {
1152
1261
  constructor(config, http, sessionService, errorHandler, responseHandler) {
1153
1262
  this.config = config;
@@ -1265,7 +1374,10 @@ class EsolveAccountService {
1265
1374
  })
1266
1375
  .pipe(map((http_response) => this.responseHandler.validateSingleHttpResponse(http_response, (response) => {
1267
1376
  if (response.auto_login) {
1268
- this.sessionService.handleUpdateSession(response.esolve_id);
1377
+ this.sessionService.handleUpdateSession({
1378
+ user_id: +response.esolve_id,
1379
+ location_id: +response.session_data.location_id,
1380
+ });
1269
1381
  }
1270
1382
  return new EsolveRegistrationResult(response);
1271
1383
  })), catchError((errorRes) => {
@@ -1318,13 +1430,31 @@ class EsolveAccountService {
1318
1430
  })
1319
1431
  .pipe(map((http_response) => this.responseHandler.validateSingleHttpResponse(http_response, (response) => {
1320
1432
  if (!response.login_required) {
1321
- this.sessionService.handleUpdateSession(response.esolve_id);
1433
+ this.sessionService.handleUpdateSession({
1434
+ user_id: +response.esolve_id,
1435
+ location_id: +response.session_data.location_id,
1436
+ });
1322
1437
  }
1323
1438
  return new EsolveResetPasswordResult(response);
1324
1439
  })), catchError((errorRes) => {
1325
1440
  return this.errorHandler.handleHttpPostError('set-forgot-password', errorRes);
1326
1441
  }));
1327
1442
  }
1443
+ updateLocation(location_id) {
1444
+ const body = { location_id };
1445
+ return this.http
1446
+ .post(`${this.config.api_url}/set-session-location.php`, body, {
1447
+ headers: {
1448
+ 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8;'
1449
+ },
1450
+ responseType: 'json',
1451
+ observe: 'body',
1452
+ })
1453
+ .pipe(map((http_response) => this.responseHandler.validateSingleHttpResponse(http_response, (response) => {
1454
+ this.sessionService.handleUpdateSession({ location_id });
1455
+ return new EsolveLocationUpdateResult(response);
1456
+ })));
1457
+ }
1328
1458
  getTransactions(options = {}) {
1329
1459
  try {
1330
1460
  this.loginGuard();
@@ -1417,7 +1547,7 @@ EsolveAccountService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0",
1417
1547
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveAccountService, decorators: [{
1418
1548
  type: Injectable,
1419
1549
  args: [{
1420
- providedIn: 'root'
1550
+ providedIn: 'root',
1421
1551
  }]
1422
1552
  }], ctorParameters: function () {
1423
1553
  return [{ type: undefined, decorators: [{
@@ -1426,6 +1556,152 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
1426
1556
  }] }, { type: i1$2.HttpClient }, { type: EsolveSessionService }, { type: EsolveErrorHandlerService }, { type: EsolveResponseHandlerService }];
1427
1557
  } });
1428
1558
 
1559
+ class EsolveBanner {
1560
+ constructor(id, banner_display_container, identifier, type, title, article, sort_priority, link, images) {
1561
+ this.id = id;
1562
+ this.banner_display_container = banner_display_container;
1563
+ this.identifier = identifier;
1564
+ this.type = type;
1565
+ this.title = title;
1566
+ this.article = article;
1567
+ this.sort_priority = sort_priority;
1568
+ this.link = link;
1569
+ this.desktop_images = [];
1570
+ this.mobile_images = [];
1571
+ this.sub_images = [];
1572
+ if (images.desktop) {
1573
+ this.desktop_images = images.desktop;
1574
+ }
1575
+ if (images.mobile) {
1576
+ this.mobile_images = images.mobile;
1577
+ }
1578
+ if (images.sub) {
1579
+ this.sub_images = images.sub;
1580
+ }
1581
+ }
1582
+ }
1583
+
1584
+ class EsolveBannerImage {
1585
+ constructor(id, image_type, width, height, filename, hotspots) {
1586
+ this.id = id;
1587
+ this.image_type = image_type;
1588
+ this.width = width;
1589
+ this.height = height;
1590
+ this.filename = filename;
1591
+ this.hotspots = hotspots;
1592
+ }
1593
+ get src() {
1594
+ return '/images/banners/' + this.filename;
1595
+ }
1596
+ }
1597
+
1598
+ class EsolveBannerImageHotspot {
1599
+ constructor(url, target, coords, coords_string) {
1600
+ this.url = url;
1601
+ this.target = target;
1602
+ this.coords = coords;
1603
+ this.coords_string = coords_string;
1604
+ }
1605
+ }
1606
+
1607
+ class EsolveBannerService {
1608
+ constructor(config, http) {
1609
+ this.config = config;
1610
+ this.http = http;
1611
+ }
1612
+ /**
1613
+ * Retrieves banners records from eSolve instance
1614
+ *
1615
+ * @returns An observable of eSolve banners.
1616
+ */
1617
+ getBanners(identifier, banner_display_container, enable_date_filter = false) {
1618
+ let params = new HttpParams({
1619
+ fromObject: { enable_date_filter }
1620
+ });
1621
+ if (identifier) {
1622
+ params = params.set('identifier', identifier);
1623
+ }
1624
+ if (banner_display_container) {
1625
+ params = params.set('banner_display_container', banner_display_container);
1626
+ }
1627
+ return this.http
1628
+ .get(`${this.config.api_url}/get-banners.php`, { params })
1629
+ .pipe(map((response) => {
1630
+ if (response.records === undefined) {
1631
+ throw response;
1632
+ }
1633
+ return this.processBanners(response.records);
1634
+ }));
1635
+ }
1636
+ processBannerImageHotspots(hotspot_records) {
1637
+ const hotspots = [];
1638
+ if (hotspot_records.length > 0) {
1639
+ for (const hotspot_record of hotspot_records) {
1640
+ const hotspot = new EsolveBannerImageHotspot(hotspot_record.url, hotspot_record.target, hotspot_record.coords, hotspot_record.coords_string);
1641
+ hotspots.push(hotspot);
1642
+ }
1643
+ }
1644
+ return hotspots;
1645
+ }
1646
+ processBannerImages(image_records, banner_type) {
1647
+ const images = [];
1648
+ if (image_records.length > 0) {
1649
+ for (const image_record of image_records) {
1650
+ const image = new EsolveBannerImage(+image_record.id, image_record.image_type, +image_record.width, +image_record.height, image_record.filename);
1651
+ if ((banner_type === 'hotspot') && (image_record.hotspots)) {
1652
+ const hotspots = this.processBannerImageHotspots(image_record.hotspots);
1653
+ image.hotspots = hotspots;
1654
+ }
1655
+ images.push(image);
1656
+ }
1657
+ }
1658
+ return images;
1659
+ }
1660
+ /**
1661
+ * Process banner records into banner objects
1662
+ * @param records Array of records
1663
+ * @returns List of banners
1664
+ */
1665
+ processBanners(records) {
1666
+ const banners = [];
1667
+ if ((records) && (records.length > 0)) {
1668
+ for (const record of records) {
1669
+ const image_sets = {};
1670
+ if (record.images.desktop) {
1671
+ image_sets.desktop = this.processBannerImages(record.images.desktop, record.type);
1672
+ }
1673
+ if (record.images.mobile) {
1674
+ image_sets.mobile = this.processBannerImages(record.images.mobile, record.type);
1675
+ }
1676
+ if (record.images.sub) {
1677
+ image_sets.sub = this.processBannerImages(record.images.sub, record.type);
1678
+ }
1679
+ const banner = new EsolveBanner(+record.id, record.banner_display_container, record.identifier, record.type, record.title, record.article, +record.sort_priority, {
1680
+ url: record.link.url,
1681
+ target: record.link.target
1682
+ }, image_sets);
1683
+ banners.push(banner);
1684
+ }
1685
+ }
1686
+ return banners;
1687
+ }
1688
+ }
1689
+ EsolveBannerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveBannerService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1690
+ EsolveBannerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveBannerService, providedIn: 'root' });
1691
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveBannerService, decorators: [{
1692
+ type: Injectable,
1693
+ args: [{
1694
+ providedIn: 'root',
1695
+ }]
1696
+ }], ctorParameters: function () {
1697
+ return [{ type: undefined, decorators: [{
1698
+ type: Inject,
1699
+ args: [ESOLVE_CONNECT_CONFIG]
1700
+ }] }, { type: i1$2.HttpClient }];
1701
+ } });
1702
+
1703
+ // Types
1704
+
1429
1705
  class EsolveHeading {
1430
1706
  constructor(identifier, value) {
1431
1707
  this.identifier = identifier;
@@ -1444,7 +1720,7 @@ class EsolveMediaArticle {
1444
1720
  if (seo_title.trim() === '') {
1445
1721
  seo_title = this.title;
1446
1722
  }
1447
- this.seo_details = new EsolveSEOInfo(seo_title, seo_description, seo_keywords);
1723
+ this.seo_details = new EsolveSeoInfo(seo_title, seo_description, seo_keywords);
1448
1724
  }
1449
1725
  }
1450
1726
 
@@ -1466,6 +1742,54 @@ class EsolveTopic {
1466
1742
  }
1467
1743
  }
1468
1744
 
1745
+ class EsolveTopicService {
1746
+ constructor(config, http) {
1747
+ this.config = config;
1748
+ this.http = http;
1749
+ }
1750
+ /**
1751
+ * Retrieves active topics from the list of topic ID's. Note that inactive or expired
1752
+ * topics will not be retrieved.
1753
+ *
1754
+ * @param topic_id_list List of topic ID's that need to be retrieved
1755
+ */
1756
+ getTopics(topic_id_list = []) {
1757
+ let params = new HttpParams();
1758
+ if (topic_id_list.length > 0) {
1759
+ params = params.append('topic_id', topic_id_list.join(','));
1760
+ }
1761
+ return this.http.get(`${this.config.api_url}/get-topics.php`, { params }).pipe(map(response => {
1762
+ if (response.records === undefined) {
1763
+ throw response;
1764
+ }
1765
+ return this.processTopics(response.records);
1766
+ }));
1767
+ }
1768
+ processTopics(records) {
1769
+ const topics = [];
1770
+ if (records) {
1771
+ for (const record of records) {
1772
+ const topic = new EsolveTopic(+record.id, record.name, record.short_description, +record.sort_priority);
1773
+ topics.push(topic);
1774
+ }
1775
+ }
1776
+ return topics;
1777
+ }
1778
+ }
1779
+ EsolveTopicService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveTopicService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1780
+ EsolveTopicService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveTopicService, providedIn: 'root' });
1781
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveTopicService, decorators: [{
1782
+ type: Injectable,
1783
+ args: [{
1784
+ providedIn: 'root',
1785
+ }]
1786
+ }], ctorParameters: function () {
1787
+ return [{ type: undefined, decorators: [{
1788
+ type: Inject,
1789
+ args: [ESOLVE_CONNECT_CONFIG]
1790
+ }] }, { type: i1$2.HttpClient }];
1791
+ } });
1792
+
1469
1793
  class EsolveMediaService {
1470
1794
  constructor(config, http) {
1471
1795
  this.config = config;
@@ -1587,6 +1911,57 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
1587
1911
  }] }, { type: i1$2.HttpClient }];
1588
1912
  } });
1589
1913
 
1914
+ class EsolveMenuItem {
1915
+ constructor(url, name, target, children = []) {
1916
+ this.url = url;
1917
+ this.name = name;
1918
+ this.target = target;
1919
+ this.children = children;
1920
+ }
1921
+ }
1922
+
1923
+ class EsolveMenuService {
1924
+ constructor(config, http) {
1925
+ this.config = config;
1926
+ this.http = http;
1927
+ }
1928
+ getMenuTree(identifier) {
1929
+ return this.http
1930
+ .get(`${this.config.api_url}/get-menu-tree.php`, { params: { identifier } })
1931
+ .pipe(map((response) => {
1932
+ if ((!response) || (response.records === undefined)) {
1933
+ throw response;
1934
+ }
1935
+ else if (response.records.length === 0) {
1936
+ return [];
1937
+ }
1938
+ return this.handleMenu(response.records);
1939
+ }));
1940
+ }
1941
+ handleMenu(records) {
1942
+ const menu = [];
1943
+ if (typeof records !== 'undefined') {
1944
+ for (const menuTreeRecord of records) {
1945
+ menu.push(new EsolveMenuItem(menuTreeRecord.sef_url, menuTreeRecord.name, menuTreeRecord.target, this.handleMenu(menuTreeRecord.children)));
1946
+ }
1947
+ }
1948
+ return menu;
1949
+ }
1950
+ }
1951
+ EsolveMenuService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveMenuService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1952
+ EsolveMenuService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveMenuService, providedIn: 'root' });
1953
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveMenuService, decorators: [{
1954
+ type: Injectable,
1955
+ args: [{
1956
+ providedIn: 'root',
1957
+ }]
1958
+ }], ctorParameters: function () {
1959
+ return [{ type: undefined, decorators: [{
1960
+ type: Inject,
1961
+ args: [ESOLVE_CONNECT_CONFIG]
1962
+ }] }, { type: i1$2.HttpClient }];
1963
+ } });
1964
+
1590
1965
  class EsolveNewsGroup {
1591
1966
  constructor(id, name, description, sef_name) {
1592
1967
  this.id = id;
@@ -1611,7 +1986,7 @@ class EsolveNewsArticle {
1611
1986
  if (seo_title.trim() === '') {
1612
1987
  seo_title = this.title;
1613
1988
  }
1614
- this.seo_details = new EsolveSEOInfo(seo_title, short_description, seo_keywords);
1989
+ this.seo_details = new EsolveSeoInfo(seo_title, short_description, seo_keywords);
1615
1990
  }
1616
1991
  }
1617
1992
 
@@ -1727,256 +2102,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
1727
2102
  }] }, { type: i1$2.HttpClient }];
1728
2103
  } });
1729
2104
 
1730
- class EsolveBanner {
1731
- constructor(id, banner_display_container, identifier, type, title, article, sort_priority, link, images) {
2105
+ class EsolveStockBadge {
2106
+ constructor(id, text, identifier, font_colour, badge_colour, sort_priority) {
1732
2107
  this.id = id;
1733
- this.banner_display_container = banner_display_container;
2108
+ this.text = text;
1734
2109
  this.identifier = identifier;
1735
- this.type = type;
1736
- this.title = title;
1737
- this.article = article;
1738
- this.sort_priority = sort_priority;
1739
- this.link = link;
1740
- this.desktop_images = [];
1741
- this.mobile_images = [];
1742
- this.sub_images = [];
1743
- if (images.desktop) {
1744
- this.desktop_images = images.desktop;
1745
- }
1746
- if (images.mobile) {
1747
- this.mobile_images = images.mobile;
1748
- }
1749
- if (images.sub) {
1750
- this.sub_images = images.sub;
1751
- }
1752
- }
1753
- }
1754
-
1755
- class EsolveBannerImage {
1756
- constructor(id, image_type, width, height, filename, hotspots) {
1757
- this.id = id;
1758
- this.image_type = image_type;
1759
- this.width = width;
1760
- this.height = height;
1761
- this.filename = filename;
1762
- this.hotspots = hotspots;
1763
- }
1764
- get src() {
1765
- return '/images/banners/' + this.filename;
1766
- }
1767
- }
1768
-
1769
- class EsolveBannerImageHotspot {
1770
- constructor(url, target, coords, coords_string) {
1771
- this.url = url;
1772
- this.target = target;
1773
- this.coords = coords;
1774
- this.coords_string = coords_string;
1775
- }
1776
- }
1777
-
1778
- class EsolveBannerService {
1779
- constructor(config, http) {
1780
- this.config = config;
1781
- this.http = http;
1782
- }
1783
- /**
1784
- * Retrieves banners records from eSolve instance
1785
- *
1786
- * @returns An observable of eSolve banners.
1787
- */
1788
- getBanners(identifier, banner_display_container, enable_date_filter = false) {
1789
- let params = new HttpParams({
1790
- fromObject: { enable_date_filter }
1791
- });
1792
- if (identifier) {
1793
- params = params.set('identifier', identifier);
1794
- }
1795
- if (banner_display_container) {
1796
- params = params.set('banner_display_container', banner_display_container);
1797
- }
1798
- return this.http
1799
- .get(`${this.config.api_url}/get-banners.php`, { params })
1800
- .pipe(map((response) => {
1801
- if (response.records === undefined) {
1802
- throw response;
1803
- }
1804
- return this.processBanners(response.records);
1805
- }));
1806
- }
1807
- processBannerImageHotspots(hotspot_records) {
1808
- const hotspots = [];
1809
- if (hotspot_records.length > 0) {
1810
- for (const hotspot_record of hotspot_records) {
1811
- const hotspot = new EsolveBannerImageHotspot(hotspot_record.url, hotspot_record.target, hotspot_record.coords, hotspot_record.coords_string);
1812
- hotspots.push(hotspot);
1813
- }
1814
- }
1815
- return hotspots;
1816
- }
1817
- processBannerImages(image_records, banner_type) {
1818
- const images = [];
1819
- if (image_records.length > 0) {
1820
- for (const image_record of image_records) {
1821
- const image = new EsolveBannerImage(+image_record.id, image_record.image_type, +image_record.width, +image_record.height, image_record.filename);
1822
- if ((banner_type === 'hotspot') && (image_record.hotspots)) {
1823
- const hotspots = this.processBannerImageHotspots(image_record.hotspots);
1824
- image.hotspots = hotspots;
1825
- }
1826
- images.push(image);
1827
- }
1828
- }
1829
- return images;
1830
- }
1831
- /**
1832
- * Process banner records into banner objects
1833
- * @param records Array of records
1834
- * @returns List of banners
1835
- */
1836
- processBanners(records) {
1837
- const banners = [];
1838
- if ((records) && (records.length > 0)) {
1839
- for (const record of records) {
1840
- const image_sets = {};
1841
- if (record.images.desktop) {
1842
- image_sets.desktop = this.processBannerImages(record.images.desktop, record.type);
1843
- }
1844
- if (record.images.mobile) {
1845
- image_sets.mobile = this.processBannerImages(record.images.mobile, record.type);
1846
- }
1847
- if (record.images.sub) {
1848
- image_sets.sub = this.processBannerImages(record.images.sub, record.type);
1849
- }
1850
- const banner = new EsolveBanner(+record.id, record.banner_display_container, record.identifier, record.type, record.title, record.article, +record.sort_priority, {
1851
- url: record.link.url,
1852
- target: record.link.target
1853
- }, image_sets);
1854
- banners.push(banner);
1855
- }
1856
- }
1857
- return banners;
1858
- }
1859
- }
1860
- EsolveBannerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveBannerService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1861
- EsolveBannerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveBannerService, providedIn: 'root' });
1862
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveBannerService, decorators: [{
1863
- type: Injectable,
1864
- args: [{
1865
- providedIn: 'root',
1866
- }]
1867
- }], ctorParameters: function () {
1868
- return [{ type: undefined, decorators: [{
1869
- type: Inject,
1870
- args: [ESOLVE_CONNECT_CONFIG]
1871
- }] }, { type: i1$2.HttpClient }];
1872
- } });
1873
-
1874
- class EsolveMenuItem {
1875
- constructor(url, name, target, children = []) {
1876
- this.url = url;
1877
- this.name = name;
1878
- this.target = target;
1879
- this.children = children;
1880
- }
1881
- }
1882
-
1883
- class EsolveMenuService {
1884
- constructor(config, http) {
1885
- this.config = config;
1886
- this.http = http;
1887
- }
1888
- getMenuTree(identifier) {
1889
- return this.http
1890
- .get(`${this.config.api_url}/get-menu-tree.php`, { params: { identifier } })
1891
- .pipe(map((response) => {
1892
- if ((!response) || (response.records === undefined)) {
1893
- throw response;
1894
- }
1895
- else if (response.records.length === 0) {
1896
- return [];
1897
- }
1898
- return this.handleMenu(response.records);
1899
- }));
1900
- }
1901
- handleMenu(records) {
1902
- const menu = [];
1903
- if (typeof records !== 'undefined') {
1904
- for (const menuTreeRecord of records) {
1905
- menu.push(new EsolveMenuItem(menuTreeRecord.sef_url, menuTreeRecord.name, menuTreeRecord.target, this.handleMenu(menuTreeRecord.children)));
1906
- }
1907
- }
1908
- return menu;
1909
- }
1910
- }
1911
- EsolveMenuService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveMenuService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1912
- EsolveMenuService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveMenuService, providedIn: 'root' });
1913
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveMenuService, decorators: [{
1914
- type: Injectable,
1915
- args: [{
1916
- providedIn: 'root',
1917
- }]
1918
- }], ctorParameters: function () {
1919
- return [{ type: undefined, decorators: [{
1920
- type: Inject,
1921
- args: [ESOLVE_CONNECT_CONFIG]
1922
- }] }, { type: i1$2.HttpClient }];
1923
- } });
1924
-
1925
- class EsolveTopicService {
1926
- constructor(config, http) {
1927
- this.config = config;
1928
- this.http = http;
1929
- }
1930
- /**
1931
- * Retrieves active topics from the list of topic ID's. Note that inactive or expired
1932
- * topics will not be retrieved.
1933
- *
1934
- * @param topic_id_list List of topic ID's that need to be retrieved
1935
- */
1936
- getTopics(topic_id_list = []) {
1937
- let params = new HttpParams();
1938
- if (topic_id_list.length > 0) {
1939
- params = params.append('topic_id', topic_id_list.join(','));
1940
- }
1941
- return this.http.get(`${this.config.api_url}/get-topics.php`, { params }).pipe(map(response => {
1942
- if (response.records === undefined) {
1943
- throw response;
1944
- }
1945
- return this.processTopics(response.records);
1946
- }));
1947
- }
1948
- processTopics(records) {
1949
- const topics = [];
1950
- if (records) {
1951
- for (const record of records) {
1952
- const topic = new EsolveTopic(+record.id, record.name, record.short_description, +record.sort_priority);
1953
- topics.push(topic);
1954
- }
1955
- }
1956
- return topics;
1957
- }
1958
- }
1959
- EsolveTopicService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveTopicService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1960
- EsolveTopicService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveTopicService, providedIn: 'root' });
1961
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveTopicService, decorators: [{
1962
- type: Injectable,
1963
- args: [{
1964
- providedIn: 'root'
1965
- }]
1966
- }], ctorParameters: function () {
1967
- return [{ type: undefined, decorators: [{
1968
- type: Inject,
1969
- args: [ESOLVE_CONNECT_CONFIG]
1970
- }] }, { type: i1$2.HttpClient }];
1971
- } });
1972
-
1973
- class EsolveStockBadge {
1974
- constructor(id, text, identifier, font_colour, badge_colour, sort_priority) {
1975
- this.id = id;
1976
- this.text = text;
1977
- this.identifier = identifier;
1978
- this.font_colour = font_colour;
1979
- this.badge_colour = badge_colour;
2110
+ this.font_colour = font_colour;
2111
+ this.badge_colour = badge_colour;
1980
2112
  this.sort_priority = sort_priority;
1981
2113
  }
1982
2114
  }
@@ -1989,26 +2121,26 @@ class EsolveStockPrice {
1989
2121
  * Create stock price instance
1990
2122
  * @param base_price Price without tax
1991
2123
  * @param base_price_with_tax Price with tax
1992
- * @param sell_price Price without tax and with discounts applied if appilcable
1993
- * @param sell_price_with_tax Price with tax and with discounts applied if appilcable
2124
+ * @param sell_price Price without tax and with discounts applied if applicable
2125
+ * @param sell_price_with_tax Price with tax and with discounts applied if applicable
1994
2126
  */
1995
2127
  constructor(
1996
2128
  /**
1997
2129
  * Price without tax
1998
2130
  */
1999
- base_price,
2131
+ base_price = 0,
2000
2132
  /**
2001
2133
  * Price with tax
2002
2134
  */
2003
- base_price_with_tax,
2135
+ base_price_with_tax = 0,
2004
2136
  /**
2005
- * Price without tax and with discounts applied if appilcable
2137
+ * Price without tax and with discounts applied if applicable
2006
2138
  */
2007
- sell_price,
2139
+ sell_price = 0,
2008
2140
  /**
2009
- * Price with tax and with discounts applied if appilcable
2141
+ * Price with tax and with discounts applied if applicable
2010
2142
  */
2011
- sell_price_with_tax) {
2143
+ sell_price_with_tax = 0) {
2012
2144
  this.base_price = base_price;
2013
2145
  this.base_price_with_tax = base_price_with_tax;
2014
2146
  this.sell_price = sell_price;
@@ -2024,137 +2156,186 @@ class EsolveStockPrice {
2024
2156
  }
2025
2157
  }
2026
2158
 
2027
- /**
2028
- * Stock Item object. It can be a service or a product (physical and/or digital).
2029
- */
2030
- class EsolveStockItem {
2031
- /**
2032
- * Constructs an instance of EsolveStockItem
2033
- *
2034
- * @param id eSolve Generated ID
2035
- * @param code Code identifying the stock item
2036
- * @param name Name of the stock item
2037
- * @param sef_name Search engine friendly name
2038
- * @param description Short description of stock item
2039
- * @param active Active state
2040
- * @param featured Featured state
2041
- * @param image_name Image filename
2042
- * @param price Default price
2043
- * @param tags Linked tags
2044
- * @param topics Linked topics
2045
- * @param seo_title SEO page title
2046
- * @param seo_keywords SEO page keywords
2047
- */
2048
- constructor(
2049
- /**
2050
- * eSolve Generated ID
2051
- */
2052
- id,
2053
- /**
2054
- * Code identifying the stock item
2055
- */
2056
- code,
2057
- /**
2058
- * Name of the stock item
2059
- */
2060
- name,
2061
- /**
2062
- * Search engine friendly name
2063
- */
2064
- sef_name,
2065
- /**
2066
- * Short description of stock item
2067
- */
2068
- description,
2069
- /**
2070
- * Full description of stock item
2071
- */
2072
- extended_description,
2073
- /**
2074
- * Active state
2075
- */
2076
- active,
2077
- /**
2078
- * Featured state
2079
- */
2080
- featured,
2081
- /**
2082
- * Image filename
2083
- */
2084
- image_name,
2085
- /**
2086
- * Default price
2087
- */
2088
- price,
2089
- /**
2090
- * Linked tags
2091
- */
2092
- tags,
2093
- /**
2094
- * Linked topics
2095
- */
2096
- topics,
2097
- /**
2098
- * Stock badges
2099
- */
2100
- badges,
2101
- /**
2102
- * ID of default category linked to the stock item
2103
- */
2104
- category_id,
2105
- /**
2106
- * ID of default subcategory linked to the stock item
2107
- */
2108
- subcategory_id, seo_title = '', seo_keywords = '') {
2109
- this.id = id;
2110
- this.code = code;
2111
- this.name = name;
2112
- this.sef_name = sef_name;
2113
- this.description = description;
2114
- this.extended_description = extended_description;
2115
- this.active = active;
2116
- this.featured = featured;
2117
- this.image_name = image_name;
2118
- this.price = price;
2119
- this.tags = tags;
2120
- this.topics = topics;
2121
- this.badges = badges;
2122
- this.category_id = category_id;
2123
- this.subcategory_id = subcategory_id;
2159
+ class EsolveStockItemBase {
2160
+ constructor(record = {}) {
2161
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
2162
+ /**
2163
+ * eSolve Generated ID
2164
+ */
2165
+ this.id = 0;
2166
+ /**
2167
+ * Code identifying the stock item
2168
+ */
2169
+ this.code = '';
2170
+ /**
2171
+ * Name of the stock item
2172
+ */
2173
+ this.name = '';
2174
+ /**
2175
+ * Search engine friendly name
2176
+ */
2177
+ this.sef_name = '';
2178
+ /**
2179
+ * Short description of stock item
2180
+ */
2181
+ this.description = '';
2182
+ /**
2183
+ * Full description of stock item
2184
+ */
2185
+ this.extended_description = '';
2186
+ /**
2187
+ * Active state
2188
+ */
2189
+ this.active = false;
2190
+ /**
2191
+ * Featured state
2192
+ */
2193
+ this.featured = false;
2194
+ /**
2195
+ * ID of default category linked to the stock item
2196
+ */
2197
+ this.category_id = '';
2198
+ /**
2199
+ * ID of default subcategory linked to the stock item
2200
+ */
2201
+ this.subcategory_id = 0;
2202
+ this.manufacturers_id = 0;
2203
+ this.ranges_id = 0;
2204
+ /**
2205
+ * Linked tags
2206
+ */
2207
+ this.tags = [];
2208
+ /**
2209
+ * Linked topics
2210
+ */
2211
+ this.topics = [];
2212
+ /**
2213
+ * Stock badges
2214
+ */
2215
+ this.badges = [];
2216
+ /**
2217
+ * Image filename
2218
+ */
2219
+ this.image_name = '';
2220
+ let seo_title = '';
2221
+ let seo_keywords = '';
2222
+ let base_price = 0;
2223
+ let base_price_with_tax = 0;
2224
+ let sell_price = 0;
2225
+ let sell_price_with_tax = 0;
2226
+ if (record) {
2227
+ this.id = +((_a = record.id) !== null && _a !== void 0 ? _a : 0);
2228
+ this.code = (_b = record.code) !== null && _b !== void 0 ? _b : '';
2229
+ this.name = (_c = record.name) !== null && _c !== void 0 ? _c : '';
2230
+ this.sef_name = (_d = record.sef_name) !== null && _d !== void 0 ? _d : '';
2231
+ this.description = (_e = record.description) !== null && _e !== void 0 ? _e : '';
2232
+ this.extended_description = (_f = record.extended_description) !== null && _f !== void 0 ? _f : '';
2233
+ this.image_name = (_g = record.image_name) !== null && _g !== void 0 ? _g : '';
2234
+ this.category_id = (_h = record.category_id) !== null && _h !== void 0 ? _h : '';
2235
+ this.subcategory_id = +((_j = record.subcategory_id) !== null && _j !== void 0 ? _j : 0);
2236
+ this.manufacturers_id = +((_k = record.manufacturers_id) !== null && _k !== void 0 ? _k : 0);
2237
+ this.ranges_id = +((_l = record.ranges_id) !== null && _l !== void 0 ? _l : 0);
2238
+ this.active = !!+((_m = record.is_active) !== null && _m !== void 0 ? _m : false);
2239
+ this.featured = !!+((_o = record.is_featured) !== null && _o !== void 0 ? _o : false);
2240
+ base_price = +((_p = record.regular_sellprice) !== null && _p !== void 0 ? _p : 0);
2241
+ base_price_with_tax = +((_q = record.regular_sellprice_inclusive) !== null && _q !== void 0 ? _q : 0);
2242
+ sell_price = +((_r = record.sellprice) !== null && _r !== void 0 ? _r : 0);
2243
+ sell_price_with_tax = +((_s = record.sellprice_inclusive) !== null && _s !== void 0 ? _s : 0);
2244
+ if ((record.tags) && (record.tags.length > 0)) {
2245
+ for (const tag of record.tags) {
2246
+ this.tags.push(new EsolveTag(+tag.id, tag.tag_phrase, +tag.tag_weight, tag.description));
2247
+ }
2248
+ }
2249
+ if ((record.topics) && (record.topics.length > 0)) {
2250
+ for (const topic of record.topics) {
2251
+ this.topics.push(new EsolveTopic(+topic.id, topic.name, topic.short_description, +topic.sort_priority));
2252
+ }
2253
+ }
2254
+ if ((record.badges) && (record.badges.length > 0)) {
2255
+ for (const badge of record.badges) {
2256
+ this.badges.push(new EsolveStockBadge(+badge.id, badge.text, badge.identifier, badge.font_colour, badge.badge_colour, +badge.sort_priority));
2257
+ }
2258
+ }
2259
+ if (record.custom_fields) {
2260
+ this.custom_fields = record.custom_fields;
2261
+ }
2262
+ seo_title = (_t = record.seo_page_title) !== null && _t !== void 0 ? _t : '';
2263
+ seo_keywords = (_u = record.seo_keywords) !== null && _u !== void 0 ? _u : '';
2264
+ }
2265
+ this.price = new EsolveStockPrice(base_price, base_price_with_tax, sell_price, sell_price_with_tax);
2124
2266
  if (seo_title.trim() === '') {
2125
2267
  seo_title = this.name;
2126
2268
  }
2127
- this.seo_details = new EsolveSEOInfo(seo_title, description, seo_keywords);
2269
+ this.seo_details = new EsolveSeoInfo(seo_title, this.description, seo_keywords);
2128
2270
  }
2129
2271
  /**
2130
2272
  * Path to tiny stock image
2131
2273
  */
2132
2274
  get tiny_image_src() {
2133
- return '/images/' + (this.image_name ? 'stock/tiny/' + this.image_name : 'no_image.jpg');
2275
+ return this.generateImagePath('tiny');
2134
2276
  }
2135
2277
  /**
2136
2278
  * Path to thumbnail stock image
2137
2279
  */
2138
2280
  get thumbnail_image_src() {
2139
- return '/images/' + (this.image_name ? 'stock/thumb/' + this.image_name : 'no_image.jpg');
2281
+ return this.generateImagePath('thumb');
2140
2282
  }
2141
2283
  /**
2142
2284
  * Path to small stock image
2143
2285
  */
2144
2286
  get small_image_src() {
2145
- return '/images/' + (this.image_name ? 'stock/small/' + this.image_name : 'no_image.jpg');
2287
+ return this.generateImagePath('small');
2288
+ }
2289
+ /**
2290
+ * Path to big stock image
2291
+ */
2292
+ get big_image_src() {
2293
+ return this.generateImagePath('big');
2294
+ }
2295
+ /**
2296
+ * Path to original stock image
2297
+ */
2298
+ get original_image_src() {
2299
+ return this.generateImagePath('original');
2300
+ }
2301
+ generateImagePath(image_size) {
2302
+ if (this.image_name !== '') {
2303
+ return `/images/stock/${image_size}/${this.image_name}`;
2304
+ }
2305
+ return '';
2306
+ }
2307
+ }
2308
+
2309
+ class EsolveStockGroupItem extends EsolveStockItemBase {
2310
+ constructor(record) {
2311
+ super(record);
2146
2312
  }
2147
- /**
2148
- * Path to big stock image
2149
- */
2150
- get big_image_src() {
2151
- return '/images/' + (this.image_name ? 'stock/big/' + this.image_name : 'no_image.jpg');
2313
+ }
2314
+
2315
+ class EsolveStockGroup {
2316
+ constructor(group, records = []) {
2317
+ this.group = group;
2318
+ this.items = [];
2319
+ if (records.length > 0) {
2320
+ for (const record of records) {
2321
+ this.items.push(new EsolveStockGroupItem(record));
2322
+ }
2323
+ }
2152
2324
  }
2325
+ }
2326
+
2327
+ /**
2328
+ * Stock Item object. It can be a service or a product (physical and/or digital).
2329
+ */
2330
+ class EsolveStockItem extends EsolveStockItemBase {
2153
2331
  /**
2154
- * Path to original stock image
2332
+ * Constructs an instance of EsolveStockItem
2155
2333
  */
2156
- get original_image_src() {
2157
- return '/images/' + (this.image_name ? 'stock/original/' + this.image_name : 'no_image.jpg');
2334
+ constructor(record) {
2335
+ super(record);
2336
+ if ((record === null || record === void 0 ? void 0 : record.group) && record.grouped_items) {
2337
+ this.group = new EsolveStockGroup(record.group, record.grouped_items);
2338
+ }
2158
2339
  }
2159
2340
  }
2160
2341
 
@@ -2169,6 +2350,24 @@ class EsolveStockItemList {
2169
2350
  }
2170
2351
  }
2171
2352
 
2353
+ class EsolveRecipeStockItem extends EsolveStockItemBase {
2354
+ constructor(record) {
2355
+ var _a;
2356
+ super(record);
2357
+ this.qty = 0;
2358
+ this.qty = +((_a = record === null || record === void 0 ? void 0 : record.qty) !== null && _a !== void 0 ? _a : 0);
2359
+ }
2360
+ }
2361
+
2362
+ class EsolveLinkedStockItem extends EsolveStockItemBase {
2363
+ constructor(record) {
2364
+ var _a;
2365
+ super(record);
2366
+ this.qty = 0;
2367
+ this.qty = +((_a = record === null || record === void 0 ? void 0 : record.qty) !== null && _a !== void 0 ? _a : 0);
2368
+ }
2369
+ }
2370
+
2172
2371
  class EsolveStockService {
2173
2372
  constructor(config, http) {
2174
2373
  this.config = config;
@@ -2176,6 +2375,7 @@ class EsolveStockService {
2176
2375
  }
2177
2376
  /**
2178
2377
  * Retrieves the stock record from the eSolve instance using the code.
2378
+ *
2179
2379
  * @param code eSolve stock code
2180
2380
  */
2181
2381
  getStockItem(code) {
@@ -2194,6 +2394,7 @@ class EsolveStockService {
2194
2394
  }
2195
2395
  /**
2196
2396
  * Retrieves the stock record from the eSolve instance using the SEF name.
2397
+ *
2197
2398
  * @param sef_name SEF name of the stock item
2198
2399
  */
2199
2400
  getStockItemFromSEF(sef_name) {
@@ -2212,6 +2413,7 @@ class EsolveStockService {
2212
2413
  }
2213
2414
  /**
2214
2415
  * Retrieves list of stock from the eSolve instance using info provided
2416
+ *
2215
2417
  * @param options Stock filter options
2216
2418
  */
2217
2419
  getStockItems(options) {
@@ -2237,6 +2439,15 @@ class EsolveStockService {
2237
2439
  if (options.subcategory_id) {
2238
2440
  params = params.set('subcategory_id', options.subcategory_id);
2239
2441
  }
2442
+ if (options.manufacturers_id) {
2443
+ params = params.set('manufacturers_id', options.manufacturers_id);
2444
+ }
2445
+ if (options.ranges_id) {
2446
+ params = params.set('ranges_id', options.ranges_id);
2447
+ }
2448
+ if (options.specials_id) {
2449
+ params = params.set('specials_id', options.specials_id);
2450
+ }
2240
2451
  if (options.tag_id_list) {
2241
2452
  if (options.tag_id_list.length > 0) {
2242
2453
  params = params.set('tag_id', options.tag_id_list.join(','));
@@ -2260,30 +2471,70 @@ class EsolveStockService {
2260
2471
  }));
2261
2472
  }
2262
2473
  /**
2263
- * Processes the eSolve stock item record and converts it to StockItem object.
2474
+ * Retrieve list of stock items linked to a stock item from the eSolve API
2475
+ *
2476
+ * @param code Stock item code
2477
+ */
2478
+ getLinkedItems(code) {
2479
+ return this.http
2480
+ .get(`${this.config.api_url}/get-linked-items.php`, { params: { code } })
2481
+ .pipe(map((response) => {
2482
+ if ((response.records === undefined) || (response.records.length <= 0)) {
2483
+ throw response;
2484
+ }
2485
+ return this.processLinkedItems(response.records);
2486
+ }));
2487
+ }
2488
+ /**
2489
+ * Retrieve list of stock items on a recipe from the eSolve API
2490
+ *
2491
+ * @param code Stock item code
2492
+ */
2493
+ getRecipeItems(code) {
2494
+ return this.http
2495
+ .get(`${this.config.api_url}/get-recipe-items.php`, { params: { code } })
2496
+ .pipe(map((response) => {
2497
+ if ((response.records === undefined) || (response.records.length <= 0)) {
2498
+ throw response;
2499
+ }
2500
+ return this.processRecipeItems(response.records);
2501
+ }));
2502
+ }
2503
+ /**
2504
+ * Processes the eSolve stock item record and converts it to an object.
2505
+ *
2264
2506
  * @param record eSolve stock item record
2265
2507
  */
2266
2508
  processStockItem(record) {
2267
- const tags = [];
2268
- const topics = [];
2269
- const badges = [];
2270
- if ((record.tags) && (record.tags.length > 0)) {
2271
- for (const tag of record.tags) {
2272
- tags.push(new EsolveTag(+tag.id, tag.tag_phrase, +tag.tag_weight, tag.description));
2273
- }
2274
- }
2275
- if ((record.topics) && (record.topics.length > 0)) {
2276
- for (const topic of record.topics) {
2277
- topics.push(new EsolveTopic(+topic.id, topic.name, topic.short_description, +topic.sort_priority));
2509
+ return new EsolveStockItem(record);
2510
+ }
2511
+ /**
2512
+ * Processes the linked eSolve stock item records and converts them to objects.
2513
+ *
2514
+ * @param records Linked eSolve stock item records
2515
+ */
2516
+ processLinkedItems(records) {
2517
+ const items = [];
2518
+ if (records.length > 0) {
2519
+ for (const record of records) {
2520
+ items.push(new EsolveLinkedStockItem(record));
2278
2521
  }
2279
2522
  }
2280
- if ((record.badges) && (record.badges.length > 0)) {
2281
- for (const badge of record.badges) {
2282
- badges.push(new EsolveStockBadge(+badge.id, badge.text, badge.identifier, badge.font_colour, badge.badge_colour, +badge.sort_priority));
2523
+ return items;
2524
+ }
2525
+ /**
2526
+ * Processes the recipe eSolve stock item records and converts them to objects.
2527
+ *
2528
+ * @param records Recipe eSolve stock item records
2529
+ */
2530
+ processRecipeItems(records) {
2531
+ const items = [];
2532
+ if (records.length > 0) {
2533
+ for (const record of records) {
2534
+ items.push(new EsolveRecipeStockItem(record));
2283
2535
  }
2284
2536
  }
2285
- const price = new EsolveStockPrice(record.regular_sellprice, record.regular_sellprice_inclusive, record.sellprice, record.sellprice_inclusive);
2286
- return new EsolveStockItem(+record.id, record.code, record.name, record.sef_name, record.description, record.extended_description, !!+record.is_active, !!+record.is_featured, record.image_name, price, tags, topics, badges, record.category_id, +record.subcategory_id, record.seo_page_title, record.seo_keywords);
2537
+ return items;
2287
2538
  }
2288
2539
  /**
2289
2540
  * Retrieves stock records from HTTP params.
@@ -2319,8 +2570,8 @@ class EsolveCategoryTreeItem {
2319
2570
  this.active = active;
2320
2571
  this.display_only = display_only;
2321
2572
  this.image_name = image_name;
2322
- this.image_path = '';
2323
2573
  this.id = '';
2574
+ this.image_path = '';
2324
2575
  if (this.type === 'category') {
2325
2576
  this.id = `<<CAT>>${this.esolve_id}`;
2326
2577
  if (children != null) {
@@ -2335,13 +2586,7 @@ class EsolveCategoryTreeItem {
2335
2586
  if (seo_title.trim() === '') {
2336
2587
  seo_title = this.description;
2337
2588
  }
2338
- this.seo_details = new EsolveSEOInfo(seo_title, seo_description, seo_keywords);
2339
- }
2340
- generateImagePath(image_size) {
2341
- if (this.image_name !== '') {
2342
- return `${this.image_path}${image_size}/${this.image_name}`;
2343
- }
2344
- return '';
2589
+ this.seo_details = new EsolveSeoInfo(seo_title, seo_description, seo_keywords);
2345
2590
  }
2346
2591
  get small_image_src() {
2347
2592
  return this.generateImagePath('small');
@@ -2352,6 +2597,12 @@ class EsolveCategoryTreeItem {
2352
2597
  get tiny_image_src() {
2353
2598
  return this.generateImagePath('tiny');
2354
2599
  }
2600
+ generateImagePath(image_size) {
2601
+ if (this.image_name !== '') {
2602
+ return `${this.image_path}${image_size}/${this.image_name}`;
2603
+ }
2604
+ return '';
2605
+ }
2355
2606
  }
2356
2607
 
2357
2608
  class EsolveCategoryTreeService {
@@ -2443,34 +2694,384 @@ class EsolveCategoryTreeService {
2443
2694
  tree_items.push(new EsolveCategoryTreeItem(tree_record.type, esolve_id, parent_id, tree_record.description, tree_record.sef_description, tree_record.seo_description, tree_record.sort_priority, tree_record.active, tree_record.display_only, tree_record.image, tree_record.seo_page_title, tree_record.seo_keywords, tree_record.short_description, children));
2444
2695
  }
2445
2696
  }
2446
- return tree_items;
2697
+ return tree_items;
2698
+ }
2699
+ processTreeItem(record) {
2700
+ return new EsolveCategoryTreeItem(record.type, record.id, record.parent_id, record.description, record.sef_description, record.short_description, record.sort_priority, record.active, record.display_only, '', record.seo_page_title, record.seo_keywords, record.seo_description);
2701
+ }
2702
+ processID(id) {
2703
+ let type;
2704
+ let esolve_id;
2705
+ const type_code_regex = /^\<\<(CAT|SUB)\>\>/g;
2706
+ const match_results = id.match(type_code_regex);
2707
+ if (match_results) {
2708
+ const type_code = match_results[0];
2709
+ type = (type_code === '<<CAT>>' ? 'category' : 'subcategory');
2710
+ esolve_id = id.replace(type_code_regex, '');
2711
+ return {
2712
+ type,
2713
+ esolve_id
2714
+ };
2715
+ }
2716
+ return null;
2717
+ }
2718
+ }
2719
+ EsolveCategoryTreeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveCategoryTreeService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2720
+ EsolveCategoryTreeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveCategoryTreeService, providedIn: 'root' });
2721
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveCategoryTreeService, decorators: [{
2722
+ type: Injectable,
2723
+ args: [{
2724
+ providedIn: 'root',
2725
+ }]
2726
+ }], ctorParameters: function () {
2727
+ return [{ type: undefined, decorators: [{
2728
+ type: Inject,
2729
+ args: [ESOLVE_CONNECT_CONFIG]
2730
+ }] }, { type: i1$2.HttpClient }];
2731
+ } });
2732
+
2733
+ class EsolveManufacturer {
2734
+ constructor(id, manufacturer, sef_manufacturer, title, article, sort_priority, is_active, featured, image_name, seo_title = '', seo_keywords = '', seo_description = '') {
2735
+ this.id = id;
2736
+ this.manufacturer = manufacturer;
2737
+ this.sef_manufacturer = sef_manufacturer;
2738
+ this.title = title;
2739
+ this.article = article;
2740
+ this.sort_priority = sort_priority;
2741
+ this.is_active = is_active;
2742
+ this.featured = featured;
2743
+ this.image_name = image_name;
2744
+ this.image_path = '/images/manufacturers/';
2745
+ if (this.title.trim() === '') {
2746
+ this.title = this.manufacturer;
2747
+ }
2748
+ if (seo_title.trim() === '') {
2749
+ seo_title = this.title;
2750
+ }
2751
+ this.seo_details = new EsolveSeoInfo(seo_title, seo_description, seo_keywords);
2752
+ }
2753
+ get small_image_src() {
2754
+ return this.generateImagePath('small');
2755
+ }
2756
+ get thumbnail_image_src() {
2757
+ return this.generateImagePath('thumb');
2758
+ }
2759
+ get tiny_image_src() {
2760
+ return this.generateImagePath('tiny');
2761
+ }
2762
+ generateImagePath(image_size) {
2763
+ if (this.image_name !== '') {
2764
+ return `${this.image_path}${image_size}/${this.image_name}`;
2765
+ }
2766
+ return '';
2767
+ }
2768
+ }
2769
+
2770
+ class EsolveManufacturersService {
2771
+ constructor(config, http) {
2772
+ this.config = config;
2773
+ this.http = http;
2774
+ }
2775
+ getManufacturer(id) {
2776
+ const params = new HttpParams({
2777
+ fromObject: { manufacturers_id: id }
2778
+ });
2779
+ return this.getManufacturerSingle(params);
2780
+ }
2781
+ getManufacturerFromSEF(sef_manufacturer) {
2782
+ const params = new HttpParams({
2783
+ fromObject: { sef_manufacturer }
2784
+ });
2785
+ return this.getManufacturerSingle(params);
2786
+ }
2787
+ getManufacturers(options) {
2788
+ let params = new HttpParams();
2789
+ if (options === null || options === void 0 ? void 0 : options.featured_only) {
2790
+ params = params.set('featured_only', options.featured_only);
2791
+ }
2792
+ return this.getManufacturerRecords(params).pipe(map((records) => {
2793
+ const manufacturers = [];
2794
+ for (const record of records) {
2795
+ manufacturers.push(this.processManufacturer(record));
2796
+ }
2797
+ return manufacturers;
2798
+ }), catchError(() => {
2799
+ return of([]);
2800
+ }));
2801
+ }
2802
+ getManufacturerSingle(params) {
2803
+ return this.getManufacturerRecords(params).pipe(map((records) => {
2804
+ const record = records[0];
2805
+ return this.processManufacturer(record);
2806
+ }));
2807
+ }
2808
+ getManufacturerRecords(params) {
2809
+ return this.http
2810
+ .get(`${this.config.api_url}/get-manufacturers.php`, { params })
2811
+ .pipe(map((response) => {
2812
+ if ((response.records === undefined) ||
2813
+ (response.records.length <= 0)) {
2814
+ throw response;
2815
+ }
2816
+ return response.records;
2817
+ }));
2818
+ }
2819
+ processManufacturer(record) {
2820
+ return new EsolveManufacturer(+record.id, record.manufacturer, record.sef_manufacturer, record.title, record.article, +record.sort_priority, !!+record.is_active, !!+record.featured, record.image_name, record.seo_page_title, record.seo_keywords, record.seo_description);
2821
+ }
2822
+ }
2823
+ EsolveManufacturersService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveManufacturersService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2824
+ EsolveManufacturersService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveManufacturersService, providedIn: 'root' });
2825
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveManufacturersService, decorators: [{
2826
+ type: Injectable,
2827
+ args: [{
2828
+ providedIn: 'root',
2829
+ }]
2830
+ }], ctorParameters: function () {
2831
+ return [{ type: undefined, decorators: [{
2832
+ type: Inject,
2833
+ args: [ESOLVE_CONNECT_CONFIG]
2834
+ }] }, { type: i1$2.HttpClient }];
2835
+ } });
2836
+
2837
+ class EsolveRange {
2838
+ constructor(id, range, sef_range, manufacturers_id, title, article, is_active, featured, sort_priority, image_name, seo_title = '', seo_keywords = '', seo_description = '') {
2839
+ this.id = id;
2840
+ this.range = range;
2841
+ this.sef_range = sef_range;
2842
+ this.manufacturers_id = manufacturers_id;
2843
+ this.title = title;
2844
+ this.article = article;
2845
+ this.is_active = is_active;
2846
+ this.featured = featured;
2847
+ this.sort_priority = sort_priority;
2848
+ this.image_name = image_name;
2849
+ this.image_path = '/images/ranges/';
2850
+ if (this.title.trim() === '') {
2851
+ this.title = this.range;
2852
+ }
2853
+ if (seo_title.trim() === '') {
2854
+ seo_title = this.title;
2855
+ }
2856
+ this.seo_details = new EsolveSeoInfo(seo_title, seo_description, seo_keywords);
2857
+ }
2858
+ get image_src() {
2859
+ return this.generateImagePath();
2860
+ }
2861
+ generateImagePath() {
2862
+ if (this.image_name !== '') {
2863
+ return `${this.image_path}${this.image_name}`;
2864
+ }
2865
+ return '';
2866
+ }
2867
+ }
2868
+
2869
+ class EsolveRangesService {
2870
+ constructor(config, http) {
2871
+ this.config = config;
2872
+ this.http = http;
2873
+ }
2874
+ getRange(id) {
2875
+ const params = new HttpParams({
2876
+ fromObject: { ranges_id: id }
2877
+ });
2878
+ return this.getRangeSingle(params);
2879
+ }
2880
+ getRangeFromSEF(sef_range) {
2881
+ const params = new HttpParams({
2882
+ fromObject: { sef_range }
2883
+ });
2884
+ return this.getRangeSingle(params);
2885
+ }
2886
+ getRanges(options) {
2887
+ let params = new HttpParams();
2888
+ if (options === null || options === void 0 ? void 0 : options.featured_only) {
2889
+ params = params.set('featured_only', options.featured_only);
2890
+ }
2891
+ if (options === null || options === void 0 ? void 0 : options.manufacturers_id) {
2892
+ params = params.set('manufacturers_id', options.manufacturers_id);
2893
+ }
2894
+ return this.getRangeRecords(params).pipe(map((records) => {
2895
+ const ranges = [];
2896
+ for (const record of records) {
2897
+ ranges.push(this.processRange(record));
2898
+ }
2899
+ return ranges;
2900
+ }), catchError(() => {
2901
+ return of([]);
2902
+ }));
2903
+ }
2904
+ getRangeSingle(params) {
2905
+ return this.getRangeRecords(params).pipe(map((records) => {
2906
+ const record = records[0];
2907
+ return this.processRange(record);
2908
+ }));
2909
+ }
2910
+ getRangeRecords(params) {
2911
+ return this.http
2912
+ .get(`${this.config.api_url}/get-ranges.php`, { params })
2913
+ .pipe(map((response) => {
2914
+ if ((response.records === undefined) ||
2915
+ (response.records.length <= 0)) {
2916
+ throw response;
2917
+ }
2918
+ return response.records;
2919
+ }));
2920
+ }
2921
+ processRange(record) {
2922
+ return new EsolveRange(+record.id, record.range, record.sef_range, record.manufacturers_id, record.title, record.article, !!+record.is_active, !!+record.featured, +record.sort_priority, record.image_name, record.seo_page_title, record.seo_keywords, record.seo_description);
2923
+ }
2924
+ }
2925
+ EsolveRangesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveRangesService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2926
+ EsolveRangesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveRangesService, providedIn: 'root' });
2927
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveRangesService, decorators: [{
2928
+ type: Injectable,
2929
+ args: [{
2930
+ providedIn: 'root',
2931
+ }]
2932
+ }], ctorParameters: function () {
2933
+ return [{ type: undefined, decorators: [{
2934
+ type: Inject,
2935
+ args: [ESOLVE_CONNECT_CONFIG]
2936
+ }] }, { type: i1$2.HttpClient }];
2937
+ } });
2938
+
2939
+ class EsolveSpecialImage {
2940
+ constructor(record) {
2941
+ this.id = +record.id;
2942
+ this.width = +record.width;
2943
+ this.height = +record.height;
2944
+ this.src = record.src;
2945
+ }
2946
+ }
2947
+
2948
+ class EsolveSpecialImageCollection {
2949
+ constructor(image_container, images) {
2950
+ this.image_container = image_container;
2951
+ if (images.thumb && images.thumb.length > 0) {
2952
+ this.thumb = [];
2953
+ for (const image_record of images.thumb) {
2954
+ this.thumb.push(new EsolveSpecialImage(image_record));
2955
+ }
2956
+ }
2957
+ if (images.banner && images.banner.length > 0) {
2958
+ this.banner = [];
2959
+ for (const image_record of images.banner) {
2960
+ this.banner.push(new EsolveSpecialImage(image_record));
2961
+ }
2962
+ }
2963
+ if (images.banner_mobile && images.banner_mobile.length > 0) {
2964
+ this.banner_mobile = [];
2965
+ for (const image_record of images.banner_mobile) {
2966
+ this.banner_mobile.push(new EsolveSpecialImage(image_record));
2967
+ }
2968
+ }
2447
2969
  }
2448
- processTreeItem(record) {
2449
- return new EsolveCategoryTreeItem(record.type, record.id, record.parent_id, record.description, record.sef_description, record.short_description, record.sort_priority, record.active, record.display_only, '', record.seo_page_title, record.seo_keywords, record.seo_description);
2970
+ }
2971
+
2972
+ class EsolveSpecial {
2973
+ constructor(record) {
2974
+ this.id = +record.id;
2975
+ this.identifier = record.identifier;
2976
+ this.sort_priority = +record.sort_priority;
2977
+ this.name = record.name;
2978
+ this.description = record.description;
2979
+ this.discount_type = +record.discount_type;
2980
+ this.special_type = record.special_type;
2981
+ this.location_id = +record.location_id;
2982
+ this.active = !!+record.active;
2983
+ this.featured = !!+record.featured;
2984
+ this.assets = [];
2985
+ if (record.assets.length > 0) {
2986
+ for (const asset_record of record.assets) {
2987
+ this.assets.push(new EsolveLinkedAsset(asset_record));
2988
+ }
2989
+ }
2990
+ if (record.images &&
2991
+ ((record.images.thumb &&
2992
+ record.images.thumb.length > 0) ||
2993
+ (record.images.banner &&
2994
+ record.images.banner.length > 0) ||
2995
+ (record.images.banner_mobile &&
2996
+ record.images.banner_mobile.length > 0)) &&
2997
+ record.image_container.trim() !== '') {
2998
+ this.images = new EsolveSpecialImageCollection(record.image_container, record.images);
2999
+ }
3000
+ if (record.seo_page_title.trim() === '') {
3001
+ record.seo_page_title = this.name;
3002
+ }
3003
+ this.seo_details = new EsolveSeoInfo(record.seo_page_title, record.seo_description, record.seo_keywords);
2450
3004
  }
2451
- processID(id) {
2452
- let type;
2453
- let esolve_id;
2454
- const type_code_regex = /^\<\<(CAT|SUB)\>\>/g;
2455
- const match_results = id.match(type_code_regex);
2456
- if (match_results) {
2457
- const type_code = match_results[0];
2458
- type = (type_code === '<<CAT>>' ? 'category' : 'subcategory');
2459
- esolve_id = id.replace(type_code_regex, '');
2460
- return {
2461
- type,
2462
- esolve_id
2463
- };
3005
+ }
3006
+
3007
+ class EsolveSpecialsService {
3008
+ constructor(config, http) {
3009
+ this.config = config;
3010
+ this.http = http;
3011
+ }
3012
+ getSpecial(specials_id) {
3013
+ const params = new HttpParams({
3014
+ fromObject: { specials_id }
3015
+ });
3016
+ return this.getSpecialSingle(params);
3017
+ }
3018
+ getSpecialFromIdentifier(identifier) {
3019
+ const params = new HttpParams({
3020
+ fromObject: { identifier }
3021
+ });
3022
+ return this.getSpecialSingle(params);
3023
+ }
3024
+ getSpecials(options) {
3025
+ let params = new HttpParams();
3026
+ if (options === null || options === void 0 ? void 0 : options.featured_only) {
3027
+ params = params.set('featured_only', options.featured_only);
2464
3028
  }
2465
- return null;
3029
+ if (options === null || options === void 0 ? void 0 : options.image_container) {
3030
+ params = params.set('image_container', options.image_container);
3031
+ }
3032
+ if (options === null || options === void 0 ? void 0 : options.location_id) {
3033
+ params = params.set('location_id', options.location_id);
3034
+ }
3035
+ if (options === null || options === void 0 ? void 0 : options.special_type) {
3036
+ params = params.set('special_type', options.special_type);
3037
+ }
3038
+ return this.getSpecialRecords(params).pipe(map((records) => {
3039
+ const specials = [];
3040
+ for (const record of records) {
3041
+ specials.push(this.processSpecial(record));
3042
+ }
3043
+ return specials;
3044
+ }), catchError(() => {
3045
+ return of([]);
3046
+ }));
3047
+ }
3048
+ getSpecialSingle(params) {
3049
+ return this.getSpecialRecords(params).pipe(map((records) => {
3050
+ const record = records[0];
3051
+ return this.processSpecial(record);
3052
+ }));
3053
+ }
3054
+ getSpecialRecords(params) {
3055
+ return this.http
3056
+ .get(`${this.config.api_url}/get-specials.php`, { params })
3057
+ .pipe(map((response) => {
3058
+ if ((response.records === undefined) ||
3059
+ (response.records.length <= 0)) {
3060
+ throw response;
3061
+ }
3062
+ return response.records;
3063
+ }));
3064
+ }
3065
+ processSpecial(record) {
3066
+ return new EsolveSpecial(record);
2466
3067
  }
2467
3068
  }
2468
- EsolveCategoryTreeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveCategoryTreeService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
2469
- EsolveCategoryTreeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveCategoryTreeService, providedIn: 'root' });
2470
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveCategoryTreeService, decorators: [{
3069
+ EsolveSpecialsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveSpecialsService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
3070
+ EsolveSpecialsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveSpecialsService, providedIn: 'root' });
3071
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveSpecialsService, decorators: [{
2471
3072
  type: Injectable,
2472
3073
  args: [{
2473
- providedIn: 'root',
3074
+ providedIn: 'root'
2474
3075
  }]
2475
3076
  }], ctorParameters: function () {
2476
3077
  return [{ type: undefined, decorators: [{
@@ -2511,6 +3112,55 @@ class EsolveCartItem {
2511
3112
  }
2512
3113
  }
2513
3114
 
3115
+ class EsolveCartStockItem {
3116
+ constructor(code, name, sef_name, description, active, items_in_pack, delivery_category, image_name) {
3117
+ this.code = code;
3118
+ this.name = name;
3119
+ this.sef_name = sef_name;
3120
+ this.description = description;
3121
+ this.active = active;
3122
+ this.items_in_pack = items_in_pack;
3123
+ this.delivery_category = delivery_category;
3124
+ this.image_name = image_name;
3125
+ }
3126
+ /**
3127
+ * Path to tiny stock image
3128
+ */
3129
+ get tiny_image_src() {
3130
+ return this.generateImagePath('tiny');
3131
+ }
3132
+ /**
3133
+ * Path to thumbnail stock image
3134
+ */
3135
+ get thumbnail_image_src() {
3136
+ return this.generateImagePath('thumb');
3137
+ }
3138
+ /**
3139
+ * Path to small stock image
3140
+ */
3141
+ get small_image_src() {
3142
+ return this.generateImagePath('small');
3143
+ }
3144
+ /**
3145
+ * Path to big stock image
3146
+ */
3147
+ get big_image_src() {
3148
+ return this.generateImagePath('big');
3149
+ }
3150
+ /**
3151
+ * Path to original stock image
3152
+ */
3153
+ get original_image_src() {
3154
+ return this.generateImagePath('original');
3155
+ }
3156
+ generateImagePath(image_size) {
3157
+ if (this.image_name !== '') {
3158
+ return `/images/stock/${image_size}/${this.image_name}`;
3159
+ }
3160
+ return '';
3161
+ }
3162
+ }
3163
+
2514
3164
  /**
2515
3165
  * Totals in cart
2516
3166
  */
@@ -2550,49 +3200,6 @@ class EsolveCartTotals {
2550
3200
  }
2551
3201
  }
2552
3202
 
2553
- class EsolveCartStockItem {
2554
- constructor(code, name, sef_name, description, active, items_in_pack, delivery_category, image_name) {
2555
- this.code = code;
2556
- this.name = name;
2557
- this.sef_name = sef_name;
2558
- this.description = description;
2559
- this.active = active;
2560
- this.items_in_pack = items_in_pack;
2561
- this.delivery_category = delivery_category;
2562
- this.image_name = image_name;
2563
- }
2564
- /**
2565
- * Path to tiny stock image
2566
- */
2567
- get tiny_image_src() {
2568
- return '/images/' + (this.image_name ? 'stock/tiny/' + this.image_name : 'no_image.jpg');
2569
- }
2570
- /**
2571
- * Path to thumbnail stock image
2572
- */
2573
- get thumbnail_image_src() {
2574
- return '/images/' + (this.image_name ? 'stock/thumb/' + this.image_name : 'no_image.jpg');
2575
- }
2576
- /**
2577
- * Path to small stock image
2578
- */
2579
- get small_image_src() {
2580
- return '/images/' + (this.image_name ? 'stock/small/' + this.image_name : 'no_image.jpg');
2581
- }
2582
- /**
2583
- * Path to big stock image
2584
- */
2585
- get big_image_src() {
2586
- return '/images/' + (this.image_name ? 'stock/big/' + this.image_name : 'no_image.jpg');
2587
- }
2588
- /**
2589
- * Path to original stock image
2590
- */
2591
- get original_image_src() {
2592
- return 'images/' + (this.image_name ? 'stock/original/' + this.image_name : 'no_image.jpg');
2593
- }
2594
- }
2595
-
2596
3203
  class EsolveCartService {
2597
3204
  constructor(config, http, errorHandler, responseHandler) {
2598
3205
  this.config = config;
@@ -2757,6 +3364,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
2757
3364
  }] }, { type: i1$2.HttpClient }, { type: EsolveErrorHandlerService }, { type: EsolveResponseHandlerService }];
2758
3365
  } });
2759
3366
 
3367
+ class EsolveBankingDetails {
3368
+ constructor(bank_name, account_holder, account, account_type, swift_number, branch_code) {
3369
+ this.bank_name = bank_name;
3370
+ this.account_holder = account_holder;
3371
+ this.account = account;
3372
+ this.account_type = account_type;
3373
+ this.swift_number = swift_number;
3374
+ this.branch_code = branch_code;
3375
+ }
3376
+ }
3377
+
2760
3378
  class EsolveVaultItemResult extends EsolveResponseResult {
2761
3379
  constructor(response) {
2762
3380
  super(response);
@@ -2850,16 +3468,6 @@ class EsolvePaymentMethod {
2850
3468
  this.image_url = record.image_url;
2851
3469
  this.banking_details = new EsolveBankingDetails(record.bank_name, record.account_holder, record.account, record.account_type, record.swift_number, record.branch_code);
2852
3470
  }
2853
- }
2854
- class EsolveBankingDetails {
2855
- constructor(bank_name, account_holder, account, account_type, swift_number, branch_code) {
2856
- this.bank_name = bank_name;
2857
- this.account_holder = account_holder;
2858
- this.account = account;
2859
- this.account_type = account_type;
2860
- this.swift_number = swift_number;
2861
- this.branch_code = branch_code;
2862
- }
2863
3471
  }
2864
3472
 
2865
3473
  class EsolvePaymentService {
@@ -2916,8 +3524,8 @@ class EsolvePaymentService {
2916
3524
  card_number: card_data.card_number,
2917
3525
  card_name: card_data.name,
2918
3526
  card_cvv: card_data.cvv,
2919
- card_expiry: this.generateExpiry(card_data)
2920
- }
3527
+ card_expiry: this.generateExpiry(card_data),
3528
+ },
2921
3529
  };
2922
3530
  return this.http
2923
3531
  .post(`${this.config.api_url}/set-vault.php`, body, {
@@ -2963,7 +3571,7 @@ class EsolvePaymentService {
2963
3571
  payment: {
2964
3572
  cart_id: transaction_id,
2965
3573
  payment_methods_id
2966
- }
3574
+ },
2967
3575
  };
2968
3576
  if (typeof card === 'number') {
2969
3577
  body.payment.user_vault_id = card;
@@ -2973,7 +3581,7 @@ class EsolvePaymentService {
2973
3581
  card_number: card.card_number,
2974
3582
  card_name: card.name,
2975
3583
  card_cvv: card.cvv,
2976
- card_expiry: this.generateExpiry(card)
3584
+ card_expiry: this.generateExpiry(card),
2977
3585
  };
2978
3586
  }
2979
3587
  return this.http
@@ -3071,6 +3679,14 @@ class EsolveShippingMethod {
3071
3679
  }
3072
3680
  }
3073
3681
 
3682
+ class EsolveShippingTotals {
3683
+ constructor(total, vat, savings) {
3684
+ this.total = total;
3685
+ this.vat = vat;
3686
+ this.savings = savings;
3687
+ }
3688
+ }
3689
+
3074
3690
  class EsolveShippingCost {
3075
3691
  constructor(
3076
3692
  // Shipping
@@ -3080,13 +3696,6 @@ class EsolveShippingCost {
3080
3696
  this.shipping = new EsolveShippingTotals(shipping_total, shipping_vat, shipping_total_savings);
3081
3697
  this.insurance = new EsolveShippingTotals(insurance_total, insurance_vat, insurance_total_savings);
3082
3698
  }
3083
- }
3084
- class EsolveShippingTotals {
3085
- constructor(total, vat, savings) {
3086
- this.total = total;
3087
- this.vat = vat;
3088
- this.savings = savings;
3089
- }
3090
3699
  }
3091
3700
 
3092
3701
  class EsolveShippingService {
@@ -3096,6 +3705,9 @@ class EsolveShippingService {
3096
3705
  }
3097
3706
  /**
3098
3707
  * Retrieves a list of shipping methods
3708
+ *
3709
+ * @param options Filter options
3710
+ *
3099
3711
  * @returns An `Observable` with an array of shipping methods
3100
3712
  */
3101
3713
  getShippingMethods(options) {
@@ -3117,7 +3729,11 @@ class EsolveShippingService {
3117
3729
  }
3118
3730
  /**
3119
3731
  * Retrieves the shipping costs
3120
- * @param options Shipping cost options
3732
+ *
3733
+ * @param shipping_id
3734
+ * @param addresses_id
3735
+ * @param location_id
3736
+ *
3121
3737
  * @returns An `Observable` with the shipping costs
3122
3738
  */
3123
3739
  getShippingCost(shipping_id, addresses_id, location_id) {
@@ -3153,7 +3769,9 @@ class EsolveShippingService {
3153
3769
  }
3154
3770
  /**
3155
3771
  * Processes the eSolve shipping method records.
3772
+ *
3156
3773
  * @param records Records to process
3774
+ *
3157
3775
  * @returns An array of processed shipping methods
3158
3776
  */
3159
3777
  processShippingMethods(records) {
@@ -3167,8 +3785,10 @@ class EsolveShippingService {
3167
3785
  return shipping_methods;
3168
3786
  }
3169
3787
  /**
3170
- * Processes the eSolve shipping costs record.
3788
+ * Processes the eSolve shipping costs record.+
3789
+ *
3171
3790
  * @param record Data to process
3791
+ *
3172
3792
  * @returns Processed shipping costs
3173
3793
  */
3174
3794
  processShippingCost(record) {
@@ -3190,56 +3810,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
3190
3810
  }] }, { type: i1$2.HttpClient }];
3191
3811
  } });
3192
3812
 
3193
- class EsolveLocationsService {
3194
- constructor(config, http) {
3195
- this.config = config;
3196
- this.http = http;
3197
- }
3198
- /**
3199
- * Retrieves a list of stock locations
3200
- *
3201
- * @returns An `Observable` with an array of stock locations
3202
- */
3203
- getStockLocations() {
3204
- return this.http
3205
- .get(`${this.config.api_url}/get-locations.php`)
3206
- .pipe(map((response) => {
3207
- if (response.records === undefined) {
3208
- throw response;
3209
- }
3210
- return this.processStockLocations(response.records);
3211
- }));
3212
- }
3213
- /**
3214
- * Processes the eSolve stock location records.
3215
- *
3216
- * @param records Records to process
3217
- * @returns An array of processed stock location records
3218
- */
3219
- processStockLocations(records) {
3220
- const stock_locations = [];
3221
- if (records) {
3222
- for (const record of records) {
3223
- stock_locations.push(new EsolveStockLocation(record));
3224
- }
3225
- }
3226
- return stock_locations;
3227
- }
3228
- }
3229
- EsolveLocationsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveLocationsService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
3230
- EsolveLocationsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveLocationsService, providedIn: 'root' });
3231
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsolveLocationsService, decorators: [{
3232
- type: Injectable,
3233
- args: [{
3234
- providedIn: 'root',
3235
- }]
3236
- }], ctorParameters: function () {
3237
- return [{ type: undefined, decorators: [{
3238
- type: Inject,
3239
- args: [ESOLVE_CONNECT_CONFIG]
3240
- }] }, { type: i1$2.HttpClient }];
3241
- } });
3242
-
3243
3813
  /*
3244
3814
  * Public API Surface of ng-esolve-connect
3245
3815
  */
@@ -3248,5 +3818,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
3248
3818
  * Generated bundle index. Do not edit.
3249
3819
  */
3250
3820
 
3251
- export { EsolveAccountService, EsolveAddress, EsolveAddressResult, EsolveAuthService, EsolveBankingDetails, EsolveBanner, EsolveBannerImage, EsolveBannerImageHotspot, EsolveBannerService, EsolveCartItem, EsolveCartService, EsolveCartTotals, EsolveCategoryTreeItem, EsolveCategoryTreeService, EsolveChangePasswordResult, EsolveCheckoutResult, EsolveCookieService, EsolveErrorHandlerService, EsolveGeocodeAddressResult, EsolveGeocodeCoordsResult, EsolveGeocodeResult, EsolveGeocoderService, EsolveHeading, EsolveHttpError, EsolveList, EsolveLocationsService, EsolveMediaArticle, EsolveMediaService, EsolveMenuItem, EsolveMenuService, EsolveNewsArticle, EsolveNewsArticleAuthor, EsolveNewsArticleList, EsolveNewsGroup, EsolveNewsService, EsolvePaymentMethod, EsolvePaymentResult, EsolvePaymentService, EsolveRegistrationResult, EsolveResetPasswordResult, EsolveResponseHandlerService, EsolveResponseResult, EsolveResult, EsolveSEOInfo, EsolveSeoService, EsolveSession, EsolveSessionService, EsolveShippingCost, EsolveShippingMethod, EsolveShippingService, EsolveStockBadge, EsolveStockItem, EsolveStockItemList, EsolveStockLocation, EsolveStockLocationAddress, EsolveStockLocationContactInfo, EsolveStockLocationPOBoxAddress, EsolveStockLocationTradingTimes, EsolveStockLocationTradingTimesDay, EsolveStockPrice, EsolveStockService, EsolveTag, EsolveTopic, EsolveTopicService, EsolveTransaction, EsolveTransactionAddress, EsolveTransactionClient, EsolveTransactionItem, EsolveTransactionItemPrice, EsolveTransactionList, EsolveTransactionLocation, EsolveTransactionPaymentMethod, EsolveTransactionShippingMethod, EsolveTransactionUser, EsolveUserAccount, EsolveUserAccountBusiness, EsolveUserAccountContact, EsolveUserAccountResult, EsolveVaultItem, EsolveVaultItemResult, NgEsolveConnectModule };
3821
+ export { EsolveAccountService, EsolveAddress, EsolveAddressResult, EsolveAuthService, EsolveBankingDetails, EsolveBanner, EsolveBannerImage, EsolveBannerImageHotspot, EsolveBannerService, EsolveCartItem, EsolveCartService, EsolveCartStockItem, EsolveCartTotals, EsolveCategoryTreeItem, EsolveCategoryTreeService, EsolveChangePasswordResult, EsolveCheckoutResult, EsolveCookieService, EsolveErrorHandlerService, EsolveGeocodeAddressResult, EsolveGeocodeCoordsResult, EsolveGeocodeResult, EsolveGeocoderService, EsolveHeading, EsolveHttpError, EsolveLinkedAsset, EsolveLinkedStockItem, EsolveList, EsolveLocation, EsolveLocationAddress, EsolveLocationContactInfo, EsolveLocationPOBoxAddress, EsolveLocationTradingDay, EsolveLocationTradingTimes, EsolveLocationsService, EsolveManufacturer, EsolveManufacturersService, EsolveMediaArticle, EsolveMediaService, EsolveMenuItem, EsolveMenuService, EsolveNewsArticle, EsolveNewsArticleAuthor, EsolveNewsArticleList, EsolveNewsGroup, EsolveNewsService, EsolvePaymentMethod, EsolvePaymentResult, EsolvePaymentService, EsolveRange, EsolveRangesService, EsolveRecipeStockItem, EsolveRegistrationResult, EsolveResetPasswordResult, EsolveResponseHandlerService, EsolveResponseResult, EsolveResult, EsolveSeoInfo, EsolveSeoService, EsolveSession, EsolveSessionService, EsolveShippingCost, EsolveShippingMethod, EsolveShippingService, EsolveShippingTotals, EsolveSpecial, EsolveSpecialImage, EsolveSpecialImageCollection, EsolveSpecialsService, EsolveStockBadge, EsolveStockGroup, EsolveStockGroupItem, EsolveStockItem, EsolveStockItemBase, EsolveStockItemList, EsolveStockPrice, EsolveStockService, EsolveTag, EsolveTopic, EsolveTopicService, EsolveTransaction, EsolveTransactionAddress, EsolveTransactionClient, EsolveTransactionItem, EsolveTransactionItemPrice, EsolveTransactionList, EsolveTransactionLocation, EsolveTransactionPaymentMethod, EsolveTransactionShippingMethod, EsolveTransactionUser, EsolveUserAccount, EsolveUserAccountBusiness, EsolveUserAccountContact, EsolveUserAccountResult, EsolveVaultItem, EsolveVaultItemResult, NgEsolveConnectModule };
3252
3822
  //# sourceMappingURL=esolve-ng-esolve-connect.mjs.map