@esolve/ng-esolve-connect 0.35.1 → 0.37.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 (219) hide show
  1. package/esm2020/index.mjs +3 -1
  2. package/esm2020/lib/account/address/esolve-address-result.model.mjs +1 -1
  3. package/esm2020/lib/account/address/esolve-address.model.mjs +1 -1
  4. package/esm2020/lib/account/confirmation/esolve-account-confirmation-post-response-item.interface.mjs +1 -1
  5. package/esm2020/lib/account/confirmation/esolve-account-confirmation-result.model.mjs +1 -1
  6. package/esm2020/lib/account/esolve-account.service.mjs +46 -30
  7. package/esm2020/lib/account/index.mjs +2 -2
  8. package/esm2020/lib/account/location/classes/esolve-location-update-result.model.mjs +11 -0
  9. package/esm2020/lib/account/location/classes/index.mjs +2 -0
  10. package/esm2020/lib/account/location/index.mjs +3 -0
  11. package/esm2020/lib/account/location/interfaces/esolve-location-options.interface.mjs +2 -0
  12. package/esm2020/lib/account/location/interfaces/index.mjs +2 -0
  13. package/esm2020/lib/account/password/esolve-change-password-result.model.mjs +2 -2
  14. package/esm2020/lib/account/password/esolve-reset-password-result.model.mjs +1 -1
  15. package/esm2020/lib/account/registration/esolve-registration-post-response-item.interface.mjs +1 -1
  16. package/esm2020/lib/account/registration/esolve-registration-result.model.mjs +1 -1
  17. package/esm2020/lib/account/user-account/classes/esolve-statement-balances.model.mjs +3 -2
  18. package/esm2020/lib/account/user-account/classes/esolve-statement-transaction.model.mjs +1 -1
  19. package/esm2020/lib/account/user-account/classes/esolve-statement.model.mjs +3 -2
  20. package/esm2020/lib/account/user-account/classes/esolve-user-account-result.model.mjs +1 -1
  21. package/esm2020/lib/account/user-account/classes/esolve-user-account.model.mjs +2 -2
  22. package/esm2020/lib/account/user-account/classes/esolve-user-client-account-balances.model.mjs +1 -1
  23. package/esm2020/lib/account/user-account/classes/esolve-user-client-account.model.mjs +5 -3
  24. package/esm2020/lib/auth/esolve-auth.service.mjs +13 -15
  25. package/esm2020/lib/banners/esolve-banner-image-hotspot.model.mjs +1 -1
  26. package/esm2020/lib/banners/esolve-banner-image.model.mjs +1 -1
  27. package/esm2020/lib/banners/esolve-banner.service.mjs +3 -3
  28. package/esm2020/lib/cart/classes/esolve-cart-totals.model.mjs +1 -1
  29. package/esm2020/lib/cart/classes/esolve-empty-cart-result.model.mjs +1 -1
  30. package/esm2020/lib/cart/classes/esolve-transaction-analytics-data.model.mjs +1 -1
  31. package/esm2020/lib/cart/esolve-cart.service.mjs +1 -1
  32. package/esm2020/lib/cart/interfaces/esolve-transaction-analytics-data-record.interface.mjs +1 -1
  33. package/esm2020/lib/category-tree/esolve-category-tree-item.model.mjs +1 -1
  34. package/esm2020/lib/category-tree/esolve-category-tree.service.mjs +4 -4
  35. package/esm2020/lib/coupons/interfaces/esolve-coupon-validation-result.interface.mjs +1 -2
  36. package/esm2020/lib/enquiry/esolve-enquiry.service.mjs +2 -2
  37. package/esm2020/lib/esolve-connect-config.constant.mjs +1 -1
  38. package/esm2020/lib/locations/classes/esolve-location-address.model.mjs +1 -1
  39. package/esm2020/lib/locations/classes/esolve-location-contact-info.model.mjs +1 -1
  40. package/esm2020/lib/locations/classes/esolve-location-geo.model.mjs +1 -1
  41. package/esm2020/lib/locations/classes/esolve-location-pobox-address.model.mjs +1 -1
  42. package/esm2020/lib/locations/classes/esolve-location-trading-day.model.mjs +1 -1
  43. package/esm2020/lib/locations/classes/esolve-location-trading-times.model.mjs +1 -1
  44. package/esm2020/lib/locations/classes/esolve-location.model.mjs +3 -2
  45. package/esm2020/lib/locations/esolve-locations.service.mjs +1 -1
  46. package/esm2020/lib/manufacturers/esolve-manufacturer-image-size.type.mjs +1 -1
  47. package/esm2020/lib/manufacturers/esolve-manufacturers.service.mjs +3 -3
  48. package/esm2020/lib/menu/esolve-menu.service.mjs +2 -2
  49. package/esm2020/lib/news/esolve-news-article-author.model.mjs +1 -1
  50. package/esm2020/lib/news/esolve-news-article-list.model.mjs +1 -1
  51. package/esm2020/lib/news/esolve-news-group.model.mjs +1 -1
  52. package/esm2020/lib/news/esolve-news.service.mjs +6 -4
  53. package/esm2020/lib/ng-esolve-connect.module.mjs +4 -9
  54. package/esm2020/lib/payment/classes/esolve-banking-details.model.mjs +1 -1
  55. package/esm2020/lib/payment/classes/esolve-payment-method.model.mjs +3 -2
  56. package/esm2020/lib/payment/classes/esolve-vault-item-result.model.mjs +1 -1
  57. package/esm2020/lib/payment/types/esolve-service-provider.type.mjs +1 -1
  58. package/esm2020/lib/ranges/esolve-ranges.service.mjs +3 -3
  59. package/esm2020/lib/session/esolve-session.service.mjs +10 -6
  60. package/esm2020/lib/shared/assets/esolve-asset-type.type.mjs +1 -1
  61. package/esm2020/lib/shared/assets/esolve-assets.service.mjs +3 -3
  62. package/esm2020/lib/shared/errors/esolve-error-handler.service.mjs +16 -16
  63. package/esm2020/lib/shared/errors/esolve-http-error.model.mjs +1 -1
  64. package/esm2020/lib/shared/esolve-list.model.mjs +1 -1
  65. package/esm2020/lib/shared/esolve-result.model.mjs +1 -1
  66. package/esm2020/lib/shared/filters/classes/esolve-multiple-select-filter.model.mjs +1 -1
  67. package/esm2020/lib/shared/filters/classes/esolve-range-filter.model.mjs +3 -3
  68. package/esm2020/lib/shared/filters/classes/esolve-single-select-filter.model.mjs +1 -1
  69. package/esm2020/lib/shared/filters/classes/esolve-toggle-filter.model.mjs +1 -1
  70. package/esm2020/lib/shared/filters/classes/index.mjs +1 -1
  71. package/esm2020/lib/shared/filters/esolve-filter-factory.mjs +1 -1
  72. package/esm2020/lib/shared/filters/interfaces/esolve-filter-definitions.interface.mjs +1 -1
  73. package/esm2020/lib/shared/filters/interfaces/esolve-filter.interface.mjs +1 -1
  74. package/esm2020/lib/shared/filters/types/esolve-filter-list.type.mjs +1 -1
  75. package/esm2020/lib/shared/filters/types/esolve-filter-record-list.type.mjs +1 -1
  76. package/esm2020/lib/shared/filters/types/esolve-filter-toggle.type.mjs +1 -1
  77. package/esm2020/lib/shared/filters/types/esolve-filter-type.type.mjs +1 -1
  78. package/esm2020/lib/shared/geocoder/esolve-geocode-address-result.model.mjs +1 -1
  79. package/esm2020/lib/shared/geocoder/esolve-geocode-coords-result.model.mjs +1 -1
  80. package/esm2020/lib/shared/geocoder/esolve-geocode-result.model.mjs +1 -1
  81. package/esm2020/lib/shared/response/esolve-delete-response.interface.mjs +1 -1
  82. package/esm2020/lib/shared/response/esolve-response-handler.service.mjs +5 -5
  83. package/esm2020/lib/shared/response/esolve-response-result.model.mjs +1 -1
  84. package/esm2020/lib/shared/response/esolve-set-response.interface.mjs +1 -1
  85. package/esm2020/lib/shared/seo/esolve-seo-info.model.mjs +1 -1
  86. package/esm2020/lib/shared/seo/esolve-seo.service.mjs +8 -3
  87. package/esm2020/lib/shipping/types/esolve-insurance-calculation-method.type.mjs +1 -1
  88. package/esm2020/lib/shipping/types/esolve-shipping-calculation-method.type.mjs +1 -1
  89. package/esm2020/lib/shipping/types/esolve-shipping-location.type.mjs +1 -1
  90. package/esm2020/lib/specials/esolve-special-dates.model.mjs +1 -1
  91. package/esm2020/lib/specials/esolve-special.model.mjs +3 -5
  92. package/esm2020/lib/specials/esolve-specials.service.mjs +3 -3
  93. package/esm2020/lib/stock/classes/esolve-stock-badge.model.mjs +1 -1
  94. package/esm2020/lib/stock/classes/esolve-stock-group-item.model.mjs +1 -1
  95. package/esm2020/lib/stock/classes/esolve-stock-group.model.mjs +1 -1
  96. package/esm2020/lib/stock/classes/esolve-stock-image-collection.model.mjs +1 -2
  97. package/esm2020/lib/stock/classes/esolve-stock-item-list.model.mjs +1 -1
  98. package/esm2020/lib/stock/classes/esolve-stock-item.model.mjs +1 -1
  99. package/esm2020/lib/stock/classes/esolve-stock-price.model.mjs +3 -3
  100. package/esm2020/lib/stock/classes/esolve-stock-transaction-history.model.mjs +1 -1
  101. package/esm2020/lib/stock/interfaces/esolve-dependant-item-record.interface.mjs +1 -1
  102. package/esm2020/lib/stock/interfaces/esolve-linked-stock-record.interface.mjs +1 -1
  103. package/esm2020/lib/stock/interfaces/esolve-recipe-item-record.interface.mjs +1 -1
  104. package/esm2020/lib/stock/interfaces/esolve-stock-image-collection-record.interface.mjs +1 -2
  105. package/esm2020/lib/stock/interfaces/esolve-stock-record.interface.mjs +1 -1
  106. package/esm2020/lib/stock/types/esolve-media-stock-item-list.type.mjs +1 -1
  107. package/esm2020/lib/stock/types/esolve-stock-image-size.type.mjs +1 -1
  108. package/esm2020/lib/stock/types/esolve-stock-sort-field.type.mjs +1 -1
  109. package/esm2020/lib/suppliers/esolve-suppliers.service.mjs +3 -4
  110. package/esm2020/lib/suppliers/index.mjs +1 -1
  111. package/esm2020/lib/suppliers/interfaces/esolve-supplier-record.interface.mjs +1 -1
  112. package/esm2020/lib/tags/esolve-tags.service.mjs +1 -1
  113. package/esm2020/lib/topics/esolve-topic.service.mjs +1 -1
  114. package/esm2020/lib/transactions/classes/esolve-transaction-address.model.mjs +16 -0
  115. package/esm2020/lib/transactions/classes/esolve-transaction-client.model.mjs +13 -0
  116. package/esm2020/lib/transactions/classes/esolve-transaction-item-price.model.mjs +25 -0
  117. package/esm2020/lib/transactions/classes/esolve-transaction-item.model.mjs +72 -0
  118. package/esm2020/lib/transactions/classes/esolve-transaction-list.model.mjs +4 -0
  119. package/esm2020/lib/transactions/classes/esolve-transaction-location.model.mjs +4 -0
  120. package/esm2020/lib/transactions/classes/esolve-transaction-payment-method.model.mjs +10 -0
  121. package/esm2020/lib/transactions/classes/esolve-transaction-shipping-method.model.mjs +12 -0
  122. package/esm2020/lib/transactions/classes/esolve-transaction-user.model.mjs +11 -0
  123. package/esm2020/lib/transactions/classes/esolve-transaction.model.mjs +55 -0
  124. package/esm2020/lib/transactions/classes/index.mjs +11 -0
  125. package/esm2020/lib/transactions/esolve-transactions.service.mjs +137 -0
  126. package/esm2020/lib/transactions/index.mjs +5 -0
  127. package/esm2020/lib/transactions/interfaces/esolve-transaction-client-record.interface.mjs +2 -0
  128. package/esm2020/lib/transactions/interfaces/esolve-transaction-item-record.interface.mjs +2 -0
  129. package/esm2020/lib/transactions/interfaces/esolve-transaction-options.interface.mjs +2 -0
  130. package/esm2020/lib/transactions/interfaces/esolve-transaction-payment-method-record.interface.mjs +2 -0
  131. package/esm2020/lib/transactions/interfaces/esolve-transaction-record.interface.mjs +2 -0
  132. package/esm2020/lib/transactions/interfaces/esolve-transaction-shipping-method-record.interface.mjs +2 -0
  133. package/esm2020/lib/transactions/interfaces/esolve-transaction-user-record.interface.mjs +2 -0
  134. package/esm2020/lib/transactions/interfaces/index.mjs +8 -0
  135. package/esm2020/lib/transactions/types/esolve-transaction-location-record.type.mjs +2 -0
  136. package/esm2020/lib/transactions/types/esolve-transaction-type.type.mjs +2 -0
  137. package/esm2020/lib/transactions/types/index.mjs +3 -0
  138. package/esm2020/lib/wishlist/classes/esolve-empty-wishlist-result.model.mjs +1 -1
  139. package/esm2020/lib/wishlist/classes/esolve-wishlist-item.model.mjs +1 -1
  140. package/esm2020/lib/wishlist/esolve-wishlist.service.mjs +2 -2
  141. package/esm2020/lib/wishlist/interfaces/esolve-wishlist-item-record.interface.mjs +1 -1
  142. package/esm2020/media/lib/classes/esolve-heading.model.mjs +1 -1
  143. package/esm2020/media/lib/components/media-layout/esolve-media-layout.component.mjs +4 -8
  144. package/esm2020/media/lib/components/media-section/esolve-media-section.component.mjs +1 -1
  145. package/esm2020/media/lib/esolve-connect-media-config.token.mjs +1 -1
  146. package/esm2020/media/lib/ng-esolve-connect-media.module.mjs +6 -14
  147. package/esm2020/media/lib/services/esolve-media.service.mjs +7 -7
  148. package/esm2020/media/lib/types/esolve-media-layout-section-type.type.mjs +1 -1
  149. package/esm2020/survey/lib/types/esolve-survey-question-type.type.mjs +1 -1
  150. package/fesm2015/esolve-ng-esolve-connect-media.mjs +12 -24
  151. package/fesm2015/esolve-ng-esolve-connect-media.mjs.map +1 -1
  152. package/fesm2015/esolve-ng-esolve-connect.mjs +302 -155
  153. package/fesm2015/esolve-ng-esolve-connect.mjs.map +1 -1
  154. package/fesm2020/esolve-ng-esolve-connect-media.mjs +12 -24
  155. package/fesm2020/esolve-ng-esolve-connect-media.mjs.map +1 -1
  156. package/fesm2020/esolve-ng-esolve-connect.mjs +299 -155
  157. package/fesm2020/esolve-ng-esolve-connect.mjs.map +1 -1
  158. package/index.d.ts +1 -0
  159. package/lib/account/esolve-account.service.d.ts +10 -2
  160. package/lib/account/index.d.ts +1 -1
  161. package/lib/account/{esolve-location-update-result.model.d.ts → location/classes/esolve-location-update-result.model.d.ts} +1 -1
  162. package/lib/account/location/classes/index.d.ts +1 -0
  163. package/lib/account/{transaction → location}/index.d.ts +0 -1
  164. package/lib/account/location/interfaces/esolve-location-options.interface.d.ts +4 -0
  165. package/lib/account/location/interfaces/index.d.ts +1 -0
  166. package/lib/cart/classes/esolve-transaction-analytics-data.model.d.ts +1 -1
  167. package/lib/cart/esolve-cart.service.d.ts +1 -1
  168. package/lib/cart/interfaces/esolve-transaction-analytics-data-record.interface.d.ts +1 -1
  169. package/lib/payment/types/esolve-service-provider.type.d.ts +1 -1
  170. package/lib/session/esolve-session.service.d.ts +1 -1
  171. package/lib/{account/transaction → transactions}/classes/esolve-transaction-address.model.d.ts +1 -1
  172. package/lib/{account/transaction → transactions}/classes/esolve-transaction-item.model.d.ts +1 -1
  173. package/lib/{account/transaction → transactions}/classes/esolve-transaction-list.model.d.ts +1 -1
  174. package/lib/{account/transaction → transactions}/classes/esolve-transaction-location.model.d.ts +1 -1
  175. package/lib/transactions/esolve-transactions.service.d.ts +26 -0
  176. package/lib/transactions/index.d.ts +4 -0
  177. package/lib/{account/transaction → transactions}/interfaces/esolve-transaction-options.interface.d.ts +2 -1
  178. package/lib/{account/transaction → transactions}/interfaces/esolve-transaction-record.interface.d.ts +1 -1
  179. package/lib/{account/transaction → transactions}/types/esolve-transaction-location-record.type.d.ts +1 -1
  180. package/package.json +1 -1
  181. package/esm2020/lib/account/esolve-location-update-result.model.mjs +0 -8
  182. package/esm2020/lib/account/transaction/classes/esolve-transaction-address.model.mjs +0 -16
  183. package/esm2020/lib/account/transaction/classes/esolve-transaction-client.model.mjs +0 -13
  184. package/esm2020/lib/account/transaction/classes/esolve-transaction-item-price.model.mjs +0 -25
  185. package/esm2020/lib/account/transaction/classes/esolve-transaction-item.model.mjs +0 -72
  186. package/esm2020/lib/account/transaction/classes/esolve-transaction-list.model.mjs +0 -4
  187. package/esm2020/lib/account/transaction/classes/esolve-transaction-location.model.mjs +0 -4
  188. package/esm2020/lib/account/transaction/classes/esolve-transaction-payment-method.model.mjs +0 -10
  189. package/esm2020/lib/account/transaction/classes/esolve-transaction-shipping-method.model.mjs +0 -12
  190. package/esm2020/lib/account/transaction/classes/esolve-transaction-user.model.mjs +0 -11
  191. package/esm2020/lib/account/transaction/classes/esolve-transaction.model.mjs +0 -55
  192. package/esm2020/lib/account/transaction/classes/index.mjs +0 -11
  193. package/esm2020/lib/account/transaction/index.mjs +0 -4
  194. package/esm2020/lib/account/transaction/interfaces/esolve-transaction-client-record.interface.mjs +0 -2
  195. package/esm2020/lib/account/transaction/interfaces/esolve-transaction-item-record.interface.mjs +0 -2
  196. package/esm2020/lib/account/transaction/interfaces/esolve-transaction-options.interface.mjs +0 -2
  197. package/esm2020/lib/account/transaction/interfaces/esolve-transaction-payment-method-record.interface.mjs +0 -2
  198. package/esm2020/lib/account/transaction/interfaces/esolve-transaction-record.interface.mjs +0 -2
  199. package/esm2020/lib/account/transaction/interfaces/esolve-transaction-shipping-method-record.interface.mjs +0 -2
  200. package/esm2020/lib/account/transaction/interfaces/esolve-transaction-user-record.interface.mjs +0 -2
  201. package/esm2020/lib/account/transaction/interfaces/index.mjs +0 -8
  202. package/esm2020/lib/account/transaction/types/esolve-transaction-location-record.type.mjs +0 -2
  203. package/esm2020/lib/account/transaction/types/esolve-transaction-type.type.mjs +0 -2
  204. package/esm2020/lib/account/transaction/types/index.mjs +0 -3
  205. /package/lib/{account/transaction → transactions}/classes/esolve-transaction-client.model.d.ts +0 -0
  206. /package/lib/{account/transaction → transactions}/classes/esolve-transaction-item-price.model.d.ts +0 -0
  207. /package/lib/{account/transaction → transactions}/classes/esolve-transaction-payment-method.model.d.ts +0 -0
  208. /package/lib/{account/transaction → transactions}/classes/esolve-transaction-shipping-method.model.d.ts +0 -0
  209. /package/lib/{account/transaction → transactions}/classes/esolve-transaction-user.model.d.ts +0 -0
  210. /package/lib/{account/transaction → transactions}/classes/esolve-transaction.model.d.ts +0 -0
  211. /package/lib/{account/transaction → transactions}/classes/index.d.ts +0 -0
  212. /package/lib/{account/transaction → transactions}/interfaces/esolve-transaction-client-record.interface.d.ts +0 -0
  213. /package/lib/{account/transaction → transactions}/interfaces/esolve-transaction-item-record.interface.d.ts +0 -0
  214. /package/lib/{account/transaction → transactions}/interfaces/esolve-transaction-payment-method-record.interface.d.ts +0 -0
  215. /package/lib/{account/transaction → transactions}/interfaces/esolve-transaction-shipping-method-record.interface.d.ts +0 -0
  216. /package/lib/{account/transaction → transactions}/interfaces/esolve-transaction-user-record.interface.d.ts +0 -0
  217. /package/lib/{account/transaction → transactions}/interfaces/index.d.ts +0 -0
  218. /package/lib/{account/transaction → transactions}/types/esolve-transaction-type.type.d.ts +0 -0
  219. /package/lib/{account/transaction → transactions}/types/index.d.ts +0 -0
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN1cnZleS1xdWVzdGlvbi10eXBlLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3N1cnZleS9zcmMvbGliL3R5cGVzL2Vzb2x2ZS1zdXJ2ZXktcXVlc3Rpb24tdHlwZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVTdXJ2ZXlPcHRpb25zUXVlc3Rpb25UeXBlIH0gZnJvbSAnLi9lc29sdmUtc3VydmV5LW9wdGlvbnMtcXVlc3Rpb24tdHlwZS50eXBlJztcbmltcG9ydCB7IEVzb2x2ZVN1cnZleVRleHRRdWVzdGlvblR5cGUgfSBmcm9tICcuL2Vzb2x2ZS1zdXJ2ZXktdGV4dC1xdWVzdGlvbi10eXBlLnR5cGUnO1xuaW1wb3J0IHsgRXNvbHZlU3VydmV5VmFsdWVzUXVlc3Rpb25UeXBlIH0gZnJvbSAnLi9lc29sdmUtc3VydmV5LXZhbHVlcy1xdWVzdGlvbi10eXBlLnR5cGUnO1xuXG5leHBvcnQgdHlwZSBFc29sdmVTdXJ2ZXlRdWVzdGlvblR5cGUgPSBFc29sdmVTdXJ2ZXlUZXh0UXVlc3Rpb25UeXBlIHxcbiAgICBFc29sdmVTdXJ2ZXlPcHRpb25zUXVlc3Rpb25UeXBlIHxcbiAgICBFc29sdmVTdXJ2ZXlWYWx1ZXNRdWVzdGlvblR5cGU7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN1cnZleS1xdWVzdGlvbi10eXBlLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3N1cnZleS9zcmMvbGliL3R5cGVzL2Vzb2x2ZS1zdXJ2ZXktcXVlc3Rpb24tdHlwZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVTdXJ2ZXlPcHRpb25zUXVlc3Rpb25UeXBlIH0gZnJvbSAnLi9lc29sdmUtc3VydmV5LW9wdGlvbnMtcXVlc3Rpb24tdHlwZS50eXBlJztcbmltcG9ydCB7IEVzb2x2ZVN1cnZleVRleHRRdWVzdGlvblR5cGUgfSBmcm9tICcuL2Vzb2x2ZS1zdXJ2ZXktdGV4dC1xdWVzdGlvbi10eXBlLnR5cGUnO1xuaW1wb3J0IHsgRXNvbHZlU3VydmV5VmFsdWVzUXVlc3Rpb25UeXBlIH0gZnJvbSAnLi9lc29sdmUtc3VydmV5LXZhbHVlcy1xdWVzdGlvbi10eXBlLnR5cGUnO1xuXG5leHBvcnQgdHlwZSBFc29sdmVTdXJ2ZXlRdWVzdGlvblR5cGUgPVxuICAgIHwgRXNvbHZlU3VydmV5VGV4dFF1ZXN0aW9uVHlwZVxuICAgIHwgRXNvbHZlU3VydmV5T3B0aW9uc1F1ZXN0aW9uVHlwZVxuICAgIHwgRXNvbHZlU3VydmV5VmFsdWVzUXVlc3Rpb25UeXBlO1xuIl19
@@ -143,8 +143,8 @@ class EsolveMediaService {
143
143
  const params = new HttpParams({ fromObject: { identifier } });
144
144
  // TODO: Error Handling
145
145
  return this.getMediaRecords(params).pipe(map((response) => {
146
- if ((response.records === undefined) ||
147
- (response.records.length <= 0)) {
146
+ if (response.records === undefined ||
147
+ response.records.length <= 0) {
148
148
  throw response;
149
149
  }
150
150
  const mediaRecord = response.records[0];
@@ -165,8 +165,8 @@ class EsolveMediaService {
165
165
  });
166
166
  return this.getMediaRecords(params).pipe(map((response) => {
167
167
  const mediaArticles = [];
168
- if ((response.records !== undefined) &&
169
- (response.records.length > 0)) {
168
+ if (response.records !== undefined &&
169
+ response.records.length > 0) {
170
170
  for (const mediaRecord of response.records) {
171
171
  if (mediaRecord.active) {
172
172
  mediaArticles.push(this.processMediaRecord(mediaRecord));
@@ -190,8 +190,8 @@ class EsolveMediaService {
190
190
  })
191
191
  .pipe(map((response) => {
192
192
  const headings = [];
193
- if ((response.records !== undefined) &&
194
- (response.records.length > 0)) {
193
+ if (response.records !== undefined &&
194
+ response.records.length > 0) {
195
195
  for (const heading_record of response.records) {
196
196
  headings.push(this.processHeadingRecord(heading_record));
197
197
  }
@@ -403,14 +403,10 @@ class EsolveMediaLayoutComponent {
403
403
  }
404
404
  }
405
405
  EsolveMediaLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: EsolveMediaLayoutComponent, deps: [{ token: EsolveMediaLayoutService }], target: i0.ɵɵFactoryTarget.Component });
406
- EsolveMediaLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: EsolveMediaLayoutComponent, selector: "eslv-media-layout", inputs: { media: "media" }, providers: [
407
- EsolveMediaLayoutService,
408
- ], usesOnChanges: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n", dependencies: [{ kind: "directive", type: i2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] });
406
+ EsolveMediaLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: EsolveMediaLayoutComponent, selector: "eslv-media-layout", inputs: { media: "media" }, providers: [EsolveMediaLayoutService], usesOnChanges: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n", dependencies: [{ kind: "directive", type: i2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] });
409
407
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: EsolveMediaLayoutComponent, decorators: [{
410
408
  type: Component,
411
- args: [{ selector: 'eslv-media-layout', providers: [
412
- EsolveMediaLayoutService,
413
- ], template: "<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n" }]
409
+ args: [{ selector: 'eslv-media-layout', providers: [EsolveMediaLayoutService], template: "<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n" }]
414
410
  }], ctorParameters: function () { return [{ type: EsolveMediaLayoutService }]; }, propDecorators: { media: [{
415
411
  type: Input
416
412
  }] } });
@@ -467,12 +463,10 @@ class NgEsolveConnectMediaModule {
467
463
  }
468
464
  }
469
465
  NgEsolveConnectMediaModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgEsolveConnectMediaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
470
- NgEsolveConnectMediaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: NgEsolveConnectMediaModule, declarations: [EsolveMediaLayoutComponent,
471
- EsolveMediaSectionComponent], imports: [CommonModule,
466
+ NgEsolveConnectMediaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.7", ngImport: i0, type: NgEsolveConnectMediaModule, declarations: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent], imports: [CommonModule,
472
467
  HttpClientModule,
473
468
  PortalModule,
474
- NgEsolveConnectModule], exports: [EsolveMediaLayoutComponent,
475
- EsolveMediaSectionComponent] });
469
+ NgEsolveConnectModule], exports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent] });
476
470
  NgEsolveConnectMediaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgEsolveConnectMediaModule, imports: [CommonModule,
477
471
  HttpClientModule,
478
472
  PortalModule,
@@ -480,20 +474,14 @@ NgEsolveConnectMediaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.
480
474
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NgEsolveConnectMediaModule, decorators: [{
481
475
  type: NgModule,
482
476
  args: [{
483
- declarations: [
484
- EsolveMediaLayoutComponent,
485
- EsolveMediaSectionComponent,
486
- ],
477
+ declarations: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent],
487
478
  imports: [
488
479
  CommonModule,
489
480
  HttpClientModule,
490
481
  PortalModule,
491
482
  NgEsolveConnectModule,
492
483
  ],
493
- exports: [
494
- EsolveMediaLayoutComponent,
495
- EsolveMediaSectionComponent,
496
- ],
484
+ exports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent],
497
485
  }]
498
486
  }] });
499
487
 
@@ -1 +1 @@
1
- {"version":3,"file":"esolve-ng-esolve-connect-media.mjs","sources":["../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-heading.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-group.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-layout-section.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-link.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-article.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/services/esolve-media.service.ts","../../../../libs/ng-esolve-connect/media/src/lib/esolve-connect-media-config.token.ts","../../../../libs/ng-esolve-connect/media/src/lib/services/esolve-media-layout.service.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-layout/esolve-media-layout.component.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-layout/esolve-media-layout.component.html","../../../../libs/ng-esolve-connect/media/src/lib/components/media-section/esolve-media-section.component.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-section/esolve-media-section.component.html","../../../../libs/ng-esolve-connect/media/src/lib/ng-esolve-connect-media.module.ts","../../../../libs/ng-esolve-connect/media/src/esolve-ng-esolve-connect-media.ts"],"sourcesContent":["export class EsolveHeading {\n constructor(\n public identifier: string,\n public value: string,\n ) { }\n}\n","import { EsolveMediaGroupRecord } from '../interfaces';\n\nexport class EsolveMediaGroup {\n public id = 0;\n public name = '';\n public sef_name = '';\n public description = '';\n\n constructor(record?: EsolveMediaGroupRecord) {\n if (record) {\n this.id = +(record.id ?? 0);\n this.name = record.name ?? '';\n this.sef_name = record.sef_name ?? '';\n this.description = record.description ?? '';\n }\n }\n}\n","import { EsolveMediaLayoutSectionRecord } from '../interfaces';\nimport { EsolveMediaLayoutSectionType } from '../types';\n\nexport class EsolveMediaLayoutSection {\n public type: EsolveMediaLayoutSectionType;\n public sub_type = '';\n public identifier: string;\n\n private data?: any;\n\n constructor(record: EsolveMediaLayoutSectionRecord) {\n this.type = record.type;\n this.identifier = record.identifier;\n this.sub_type = record.sub_type ?? '';\n\n if (record.data) {\n this.data = record.data;\n }\n }\n\n public getData<T>(): T | null {\n if (typeof this.data === 'undefined') {\n return null;\n }\n\n return this.data as T;\n }\n}\n","import { EsolveUrlTarget } from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaLinkRecord } from '../interfaces';\n\nexport class EsolveMediaLink {\n public caption: string;\n public url: string;\n public target: EsolveUrlTarget;\n\n constructor(record: EsolveMediaLinkRecord) {\n this.url = record.url;\n this.caption = record.caption ?? 'Read more...';\n this.target = record.target ?? '_self';\n }\n}\n","import {\n EsolveSeoDetails,\n EsolveTag,\n EsolveTopic,\n EsolveSeoInfo,\n EsolveManufacturer,\n EsolveRange,\n EsolveCustomFields,\n} from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaRecord } from '../interfaces';\n\nimport { EsolveMediaGroup } from './esolve-media-group.model';\nimport { EsolveMediaLayoutSection } from './esolve-media-layout-section.model';\nimport { EsolveMediaLink } from './esolve-media-link.model';\n\nexport class EsolveMediaArticle implements EsolveSeoDetails {\n public identifier: string;\n public title: string;\n public sub_title: string;\n public article: string;\n public layout = '';\n public image_url = '';\n public tags: EsolveTag[] = [];\n public topics: EsolveTopic[] = [];\n public seo_details: EsolveSeoInfo;\n public group?: EsolveMediaGroup;\n public manufacturer?: EsolveManufacturer;\n public range?: EsolveRange;\n public sections?: Map<string, EsolveMediaLayoutSection[]>;\n public link?: EsolveMediaLink;\n public custom_fields?: EsolveCustomFields;\n\n constructor(record: EsolveMediaRecord) {\n this.identifier = record.identifier;\n this.title = record.title;\n this.sub_title = record.sub_title;\n this.article = record.article;\n\n let seo_title = record.seo_page_title ?? '';\n const seo_keywords = record.seo_keywords ?? '';\n const seo_description = record.seo_description ?? '';\n\n if (seo_title.trim() === '') {\n seo_title = this.title;\n }\n\n this.seo_details = new EsolveSeoInfo(\n seo_title,\n seo_description,\n seo_keywords,\n );\n\n this.image_url = record.image_url ?? '';\n\n if (record.tags && record.tags.length > 0) {\n for (const tag of record.tags) {\n this.tags.push(new EsolveTag(tag));\n }\n }\n\n if (record.topics && record.topics.length > 0) {\n for (const topic of record.topics) {\n this.topics.push(new EsolveTopic(topic));\n }\n }\n\n if (record.media_group) {\n this.group = new EsolveMediaGroup(record.media_group);\n }\n\n if (record.manufacturer) {\n this.manufacturer = new EsolveManufacturer(record.manufacturer);\n }\n\n if (record.range) {\n this.range = new EsolveRange(record.range);\n }\n\n if (\n record.is_both_master_and_minor_article ||\n !record.is_minor_article\n ) {\n this.layout = record.layout ?? '';\n\n if (record.sections) {\n this.sections = new Map<string, EsolveMediaLayoutSection[]>();\n\n for (const key in record.sections) {\n const section_list: EsolveMediaLayoutSection[] = [];\n const section_records = record.sections[key];\n\n for (const section_record of section_records) {\n section_list.push(\n new EsolveMediaLayoutSection(section_record),\n );\n }\n\n this.sections.set(key, section_list);\n }\n }\n }\n\n if (\n record.is_both_master_and_minor_article ||\n record.is_minor_article\n ) {\n if (record.sef_url) {\n this.link = new EsolveMediaLink({\n url: record.sef_url,\n caption: record.link_caption,\n target: record.target,\n });\n }\n }\n\n if (record.custom_fields) {\n this.custom_fields = record.custom_fields;\n }\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\n\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport {\n EsolveConnectConfig,\n EsolveGetResponse,\n ESOLVE_CONNECT_CONFIG,\n} from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaArticle, EsolveHeading } from '../classes';\nimport { EsolveMediaRecord, EsolveHeadingRecord } from '../interfaces';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EsolveMediaService {\n constructor(\n @Inject(ESOLVE_CONNECT_CONFIG) private config: EsolveConnectConfig,\n private http: HttpClient,\n ) { }\n\n /**\n * Retrieves the media record from the eSolve instance using the identifier\n *\n * @param identifier String representing the eSolve media identifier\n */\n public getMediaArticle(identifier: string): Observable<EsolveMediaArticle> {\n const params = new HttpParams({ fromObject: { identifier } });\n\n // TODO: Error Handling\n return this.getMediaRecords(params).pipe(\n map((response) => {\n if (\n (response.records === undefined) ||\n (response.records.length <= 0)\n ) {\n throw response;\n }\n\n const mediaRecord = response.records[0];\n\n if (!mediaRecord.active) {\n throw response;\n }\n\n return this.processMediaRecord(mediaRecord);\n }),\n );\n }\n\n /**\n * Retrieves a group of media records from the eSolve instance linked to a group\n *\n * @param media_group String representing the eSolve media group\n */\n public getGroupedMediaArticles(media_group: string): Observable<EsolveMediaArticle[]> {\n const params = new HttpParams({\n fromObject: { media_group_sef: media_group },\n });\n\n return this.getMediaRecords(params).pipe(\n map((response) => {\n const mediaArticles: EsolveMediaArticle[] = [];\n\n if (\n (response.records !== undefined) &&\n (response.records.length > 0)\n ) {\n for (const mediaRecord of response.records) {\n if (mediaRecord.active) {\n mediaArticles.push(this.processMediaRecord(mediaRecord));\n }\n }\n }\n\n return mediaArticles;\n }),\n );\n }\n\n /**\n * Retrieves the media heading records from the eSolve instance using the identifiers\n *\n * @param identifiers Array of strings representing the eSolve heading identifiers\n */\n public getHeadings(identifiers: string[]): Observable<EsolveHeading[]> {\n return this.http\n .get<EsolveGetResponse<EsolveHeadingRecord[]>>(\n `${this.config.api_url}/get-headings.php`,\n {\n params: {\n identifier: identifiers.join(','),\n },\n },\n )\n .pipe(\n map((response) => {\n const headings: EsolveHeading[] = [];\n\n if (\n (response.records !== undefined) &&\n (response.records.length > 0)\n ) {\n for (const heading_record of response.records) {\n headings.push(this.processHeadingRecord(heading_record));\n }\n }\n\n return headings;\n }),\n );\n }\n\n /**\n * Processes media article record\n *\n * @param record Record from eSolve instance\n */\n private processMediaRecord(record: EsolveMediaRecord): EsolveMediaArticle {\n return new EsolveMediaArticle(record);\n }\n\n /**\n * Processes media heading record\n *\n * @param record Record from eSolve instance\n */\n private processHeadingRecord(record: EsolveHeadingRecord): EsolveHeading {\n return new EsolveHeading(\n record.identifier,\n record.value,\n );\n }\n\n /**\n * Retrieves media records from eSolve instance.\n *\n * @param params HTTP params\n */\n private getMediaRecords(params: HttpParams): Observable<EsolveGetResponse<EsolveMediaRecord[]>> {\n return this.http.get<EsolveGetResponse<EsolveMediaRecord[]>>(\n `${this.config.api_url}/get-media.php`,\n { params },\n );\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { EsolveConnectMediaConfig } from './esolve-connect-media.config';\n\nexport const ESOLVE_CONNECT_MEDIA_CONFIG =\n new InjectionToken<EsolveConnectMediaConfig>(\n 'esolve.connect.media.config',\n );\n","import { ComponentType } from '@angular/cdk/portal';\nimport { Inject, Injectable } from '@angular/core';\n\nimport { EsolveMediaArticle, EsolveMediaLayoutSection } from '../classes';\nimport { EsolveMediaLayoutSectionType } from '../types';\n\nimport { ESOLVE_CONNECT_MEDIA_CONFIG } from '../esolve-connect-media-config.token';\nimport { EsolveConnectMediaConfig } from '../esolve-connect-media.config';\n\ntype ComponentMap = Map<string, ComponentType<any>>;\n\ntype SectionKeyOptions = {\n type: EsolveMediaLayoutSectionType;\n sub_type?: string;\n layout?: string;\n group?: string;\n};\n\n@Injectable()\nexport class EsolveMediaLayoutService {\n private readonly section_key_delimiter = '>>>';\n\n private media?: EsolveMediaArticle;\n private layout_map: ComponentMap = new Map();\n private section_map: ComponentMap = new Map();\n private default_layout: string;\n\n constructor(\n @Inject(ESOLVE_CONNECT_MEDIA_CONFIG) config: EsolveConnectMediaConfig,\n ) {\n if (config.layouts.length === 0) {\n throw new Error('No layouts have been defined');\n }\n\n for (const layout of config.layouts) {\n this.setLayout(layout.key, layout.component);\n\n if (layout.sections) {\n for (const section_group_key in layout.sections) {\n const sections = layout.sections[section_group_key];\n\n for (const section of sections) {\n const key_options: SectionKeyOptions = {\n type: section.key,\n sub_type: section.sub_key,\n layout: layout.key,\n };\n\n if (section_group_key !== '__default') {\n key_options.group = section_group_key;\n }\n\n this.setSection(section.component, key_options);\n }\n }\n }\n }\n\n const default_layout = config.default_layout;\n\n if (default_layout) {\n this.default_layout = default_layout;\n } else {\n this.default_layout = config.layouts[0].key;\n }\n\n if (config.sections.length > 0) {\n for (const section of config.sections) {\n const key_options: SectionKeyOptions = {\n type: section.key,\n sub_type: section.sub_key,\n };\n\n this.setSection(section.component, key_options);\n }\n }\n }\n\n public getMedia() {\n if (!this.media) {\n throw new Error('Media not declared');\n }\n\n return this.media;\n }\n\n public setMedia(media: EsolveMediaArticle) {\n this.media = media;\n }\n\n public getLayout() {\n const media = this.getMedia();\n\n let layout_key = media.layout;\n\n if (layout_key === '') {\n layout_key = this.default_layout;\n }\n\n return this.searchLayout(layout_key);\n }\n\n public getSectionContent(key: string) {\n const media = this.getMedia();\n\n if (media.sections) {\n const section = media.sections.get(key);\n\n if (section) {\n return section;\n }\n }\n\n return [];\n }\n\n public getSectionComponent(key: string, section: EsolveMediaLayoutSection) {\n const type = section.type;\n const sub_type = section.sub_type;\n const { layout } = this.getMedia();\n\n const section_key = this.createSectionMapKey({\n type,\n sub_type,\n layout,\n group: key,\n });\n\n let component = this.section_map.get(section_key);\n\n if (component) {\n return component;\n }\n\n const layout_key = this.createSectionMapKey({\n type,\n sub_type,\n layout,\n });\n\n component = this.section_map.get(layout_key);\n\n if (component) {\n return component;\n }\n\n const base_key = this.createSectionMapKey({\n type,\n sub_type,\n });\n\n component = this.section_map.get(base_key);\n\n if (component) {\n return component;\n }\n\n throw new Error('Section component not defined');\n }\n\n private searchLayout(layout_key: string) {\n const component = this.layout_map.get(layout_key);\n\n if (!component) {\n throw new Error('Layout not declared');\n }\n\n return component;\n }\n\n private setLayout(key: string, component: ComponentType<any>) {\n this.layout_map.set(key, component);\n }\n\n private setSection(\n component: ComponentType<any>,\n key_options: SectionKeyOptions,\n ) {\n const key = this.createSectionMapKey(key_options);\n\n this.section_map.set(key, component);\n }\n\n private createSectionMapKey(key_options: SectionKeyOptions) {\n const { type, sub_type, layout, group } = key_options;\n\n const key_array: string[] = [type];\n\n if (sub_type) {\n key_array.push(sub_type);\n }\n\n if (layout) {\n key_array.push(layout);\n\n if (group) {\n key_array.push(group);\n }\n }\n\n return key_array.join(this.section_key_delimiter);\n }\n}\n","import {\n Component,\n OnChanges,\n Input,\n Injector,\n} from '@angular/core';\nimport { ComponentPortal } from '@angular/cdk/portal';\n\nimport { EsolveMediaArticle } from '../../classes';\nimport { EsolveMediaLayoutService } from '../../services';\n\n@Component({\n selector: 'eslv-media-layout',\n templateUrl: 'esolve-media-layout.component.html',\n providers: [\n EsolveMediaLayoutService,\n ],\n})\nexport class EsolveMediaLayoutComponent implements OnChanges {\n @Input() public media!: EsolveMediaArticle;\n\n public portal!: ComponentPortal<any>;\n\n constructor(\n public layoutService: EsolveMediaLayoutService,\n ) { }\n\n public ngOnChanges(): void {\n this.layoutService.setMedia(this.media);\n const component = this.layoutService.getLayout();\n const injector = Injector.create({\n providers: [\n {\n provide: EsolveMediaLayoutService,\n useValue: this.layoutService,\n },\n ],\n });\n\n this.portal = new ComponentPortal(component, null, injector);\n }\n}\n","<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n","import { Component, OnChanges, Input, Injector } from '@angular/core';\nimport { ComponentPortal } from '@angular/cdk/portal';\n\nimport { EsolveMediaLayoutSection } from '../../classes';\nimport { EsolveMediaLayoutService } from '../../services';\n\n@Component({\n selector: 'eslv-media-section',\n templateUrl: './esolve-media-section.component.html',\n})\nexport class EsolveMediaSectionComponent implements OnChanges {\n @Input() public key!: string;\n\n public portals: ComponentPortal<any>[] = [];\n\n constructor(\n public layoutService: EsolveMediaLayoutService,\n ) { }\n\n public ngOnChanges(): void {\n const sections = this.layoutService.getSectionContent(this.key);\n this.processPortals(sections);\n }\n\n private processPortals(sections: EsolveMediaLayoutSection[]) {\n for (const section of sections) {\n const injector = Injector.create({\n providers: [\n {\n provide: EsolveMediaLayoutSection,\n useValue: section,\n },\n {\n provide: EsolveMediaLayoutService,\n useValue: this.layoutService,\n },\n ],\n });\n\n const component = this.layoutService.getSectionComponent(\n this.key,\n section,\n );\n\n const portal = new ComponentPortal(component, null, injector);\n this.portals.push(portal);\n }\n }\n}\n","<ng-container *ngIf=\"portals.length > 0\">\n <ng-container *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </ng-container>\n</ng-container>\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { HttpClientModule } from '@angular/common/http';\nimport { PortalModule } from '@angular/cdk/portal';\n\nimport { NgEsolveConnectModule } from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaLayoutComponent, EsolveMediaSectionComponent } from './components';\nimport { EsolveConnectMediaConfig } from './esolve-connect-media.config';\nimport { ESOLVE_CONNECT_MEDIA_CONFIG } from './esolve-connect-media-config.token';\n\n@NgModule({\n declarations: [\n EsolveMediaLayoutComponent,\n EsolveMediaSectionComponent,\n ],\n imports: [\n CommonModule,\n HttpClientModule,\n PortalModule,\n NgEsolveConnectModule,\n ],\n exports: [\n EsolveMediaLayoutComponent,\n EsolveMediaSectionComponent,\n ],\n})\nexport class NgEsolveConnectMediaModule {\n public static withConfig(\n config: EsolveConnectMediaConfig,\n ): ModuleWithProviders<NgEsolveConnectMediaModule> {\n return {\n ngModule: NgEsolveConnectMediaModule,\n providers: [\n {\n provide: ESOLVE_CONNECT_MEDIA_CONFIG,\n useValue: config,\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.EsolveMediaLayoutService","i2","i3"],"mappings":"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"}
1
+ {"version":3,"file":"esolve-ng-esolve-connect-media.mjs","sources":["../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-heading.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-group.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-layout-section.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-link.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/classes/esolve-media-article.model.ts","../../../../libs/ng-esolve-connect/media/src/lib/services/esolve-media.service.ts","../../../../libs/ng-esolve-connect/media/src/lib/esolve-connect-media-config.token.ts","../../../../libs/ng-esolve-connect/media/src/lib/services/esolve-media-layout.service.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-layout/esolve-media-layout.component.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-layout/esolve-media-layout.component.html","../../../../libs/ng-esolve-connect/media/src/lib/components/media-section/esolve-media-section.component.ts","../../../../libs/ng-esolve-connect/media/src/lib/components/media-section/esolve-media-section.component.html","../../../../libs/ng-esolve-connect/media/src/lib/ng-esolve-connect-media.module.ts","../../../../libs/ng-esolve-connect/media/src/esolve-ng-esolve-connect-media.ts"],"sourcesContent":["export class EsolveHeading {\n constructor(public identifier: string, public value: string) {}\n}\n","import { EsolveMediaGroupRecord } from '../interfaces';\n\nexport class EsolveMediaGroup {\n public id = 0;\n public name = '';\n public sef_name = '';\n public description = '';\n\n constructor(record?: EsolveMediaGroupRecord) {\n if (record) {\n this.id = +(record.id ?? 0);\n this.name = record.name ?? '';\n this.sef_name = record.sef_name ?? '';\n this.description = record.description ?? '';\n }\n }\n}\n","import { EsolveMediaLayoutSectionRecord } from '../interfaces';\nimport { EsolveMediaLayoutSectionType } from '../types';\n\nexport class EsolveMediaLayoutSection {\n public type: EsolveMediaLayoutSectionType;\n public sub_type = '';\n public identifier: string;\n\n private data?: any;\n\n constructor(record: EsolveMediaLayoutSectionRecord) {\n this.type = record.type;\n this.identifier = record.identifier;\n this.sub_type = record.sub_type ?? '';\n\n if (record.data) {\n this.data = record.data;\n }\n }\n\n public getData<T>(): T | null {\n if (typeof this.data === 'undefined') {\n return null;\n }\n\n return this.data as T;\n }\n}\n","import { EsolveUrlTarget } from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaLinkRecord } from '../interfaces';\n\nexport class EsolveMediaLink {\n public caption: string;\n public url: string;\n public target: EsolveUrlTarget;\n\n constructor(record: EsolveMediaLinkRecord) {\n this.url = record.url;\n this.caption = record.caption ?? 'Read more...';\n this.target = record.target ?? '_self';\n }\n}\n","import {\n EsolveSeoDetails,\n EsolveTag,\n EsolveTopic,\n EsolveSeoInfo,\n EsolveManufacturer,\n EsolveRange,\n EsolveCustomFields,\n} from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaRecord } from '../interfaces';\n\nimport { EsolveMediaGroup } from './esolve-media-group.model';\nimport { EsolveMediaLayoutSection } from './esolve-media-layout-section.model';\nimport { EsolveMediaLink } from './esolve-media-link.model';\n\nexport class EsolveMediaArticle implements EsolveSeoDetails {\n public identifier: string;\n public title: string;\n public sub_title: string;\n public article: string;\n public layout = '';\n public image_url = '';\n public tags: EsolveTag[] = [];\n public topics: EsolveTopic[] = [];\n public seo_details: EsolveSeoInfo;\n public group?: EsolveMediaGroup;\n public manufacturer?: EsolveManufacturer;\n public range?: EsolveRange;\n public sections?: Map<string, EsolveMediaLayoutSection[]>;\n public link?: EsolveMediaLink;\n public custom_fields?: EsolveCustomFields;\n\n constructor(record: EsolveMediaRecord) {\n this.identifier = record.identifier;\n this.title = record.title;\n this.sub_title = record.sub_title;\n this.article = record.article;\n\n let seo_title = record.seo_page_title ?? '';\n const seo_keywords = record.seo_keywords ?? '';\n const seo_description = record.seo_description ?? '';\n\n if (seo_title.trim() === '') {\n seo_title = this.title;\n }\n\n this.seo_details = new EsolveSeoInfo(\n seo_title,\n seo_description,\n seo_keywords,\n );\n\n this.image_url = record.image_url ?? '';\n\n if (record.tags && record.tags.length > 0) {\n for (const tag of record.tags) {\n this.tags.push(new EsolveTag(tag));\n }\n }\n\n if (record.topics && record.topics.length > 0) {\n for (const topic of record.topics) {\n this.topics.push(new EsolveTopic(topic));\n }\n }\n\n if (record.media_group) {\n this.group = new EsolveMediaGroup(record.media_group);\n }\n\n if (record.manufacturer) {\n this.manufacturer = new EsolveManufacturer(record.manufacturer);\n }\n\n if (record.range) {\n this.range = new EsolveRange(record.range);\n }\n\n if (\n record.is_both_master_and_minor_article ||\n !record.is_minor_article\n ) {\n this.layout = record.layout ?? '';\n\n if (record.sections) {\n this.sections = new Map<string, EsolveMediaLayoutSection[]>();\n\n for (const key in record.sections) {\n const section_list: EsolveMediaLayoutSection[] = [];\n const section_records = record.sections[key];\n\n for (const section_record of section_records) {\n section_list.push(\n new EsolveMediaLayoutSection(section_record),\n );\n }\n\n this.sections.set(key, section_list);\n }\n }\n }\n\n if (\n record.is_both_master_and_minor_article ||\n record.is_minor_article\n ) {\n if (record.sef_url) {\n this.link = new EsolveMediaLink({\n url: record.sef_url,\n caption: record.link_caption,\n target: record.target,\n });\n }\n }\n\n if (record.custom_fields) {\n this.custom_fields = record.custom_fields;\n }\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\n\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport {\n EsolveConnectConfig,\n EsolveGetResponse,\n ESOLVE_CONNECT_CONFIG,\n} from '@esolve/ng-esolve-connect';\n\nimport { EsolveMediaArticle, EsolveHeading } from '../classes';\nimport { EsolveMediaRecord, EsolveHeadingRecord } from '../interfaces';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EsolveMediaService {\n constructor(\n @Inject(ESOLVE_CONNECT_CONFIG) private config: EsolveConnectConfig,\n private http: HttpClient,\n ) {}\n\n /**\n * Retrieves the media record from the eSolve instance using the identifier\n *\n * @param identifier String representing the eSolve media identifier\n */\n public getMediaArticle(identifier: string): Observable<EsolveMediaArticle> {\n const params = new HttpParams({ fromObject: { identifier } });\n\n // TODO: Error Handling\n return this.getMediaRecords(params).pipe(\n map((response) => {\n if (\n response.records === undefined ||\n response.records.length <= 0\n ) {\n throw response;\n }\n\n const mediaRecord = response.records[0];\n\n if (!mediaRecord.active) {\n throw response;\n }\n\n return this.processMediaRecord(mediaRecord);\n }),\n );\n }\n\n /**\n * Retrieves a group of media records from the eSolve instance linked to a group\n *\n * @param media_group String representing the eSolve media group\n */\n public getGroupedMediaArticles(\n media_group: string,\n ): Observable<EsolveMediaArticle[]> {\n const params = new HttpParams({\n fromObject: { media_group_sef: media_group },\n });\n\n return this.getMediaRecords(params).pipe(\n map((response) => {\n const mediaArticles: EsolveMediaArticle[] = [];\n\n if (\n response.records !== undefined &&\n response.records.length > 0\n ) {\n for (const mediaRecord of response.records) {\n if (mediaRecord.active) {\n mediaArticles.push(\n this.processMediaRecord(mediaRecord),\n );\n }\n }\n }\n\n return mediaArticles;\n }),\n );\n }\n\n /**\n * Retrieves the media heading records from the eSolve instance using the identifiers\n *\n * @param identifiers Array of strings representing the eSolve heading identifiers\n */\n public getHeadings(identifiers: string[]): Observable<EsolveHeading[]> {\n return this.http\n .get<EsolveGetResponse<EsolveHeadingRecord[]>>(\n `${this.config.api_url}/get-headings.php`,\n {\n params: {\n identifier: identifiers.join(','),\n },\n },\n )\n .pipe(\n map((response) => {\n const headings: EsolveHeading[] = [];\n\n if (\n response.records !== undefined &&\n response.records.length > 0\n ) {\n for (const heading_record of response.records) {\n headings.push(\n this.processHeadingRecord(heading_record),\n );\n }\n }\n\n return headings;\n }),\n );\n }\n\n /**\n * Processes media article record\n *\n * @param record Record from eSolve instance\n */\n private processMediaRecord(record: EsolveMediaRecord): EsolveMediaArticle {\n return new EsolveMediaArticle(record);\n }\n\n /**\n * Processes media heading record\n *\n * @param record Record from eSolve instance\n */\n private processHeadingRecord(record: EsolveHeadingRecord): EsolveHeading {\n return new EsolveHeading(record.identifier, record.value);\n }\n\n /**\n * Retrieves media records from eSolve instance.\n *\n * @param params HTTP params\n */\n private getMediaRecords(\n params: HttpParams,\n ): Observable<EsolveGetResponse<EsolveMediaRecord[]>> {\n return this.http.get<EsolveGetResponse<EsolveMediaRecord[]>>(\n `${this.config.api_url}/get-media.php`,\n { params },\n );\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { EsolveConnectMediaConfig } from './esolve-connect-media.config';\n\nexport const ESOLVE_CONNECT_MEDIA_CONFIG =\n new InjectionToken<EsolveConnectMediaConfig>('esolve.connect.media.config');\n","import { ComponentType } from '@angular/cdk/portal';\nimport { Inject, Injectable } from '@angular/core';\n\nimport { EsolveMediaArticle, EsolveMediaLayoutSection } from '../classes';\nimport { EsolveMediaLayoutSectionType } from '../types';\n\nimport { ESOLVE_CONNECT_MEDIA_CONFIG } from '../esolve-connect-media-config.token';\nimport { EsolveConnectMediaConfig } from '../esolve-connect-media.config';\n\ntype ComponentMap = Map<string, ComponentType<any>>;\n\ntype SectionKeyOptions = {\n type: EsolveMediaLayoutSectionType;\n sub_type?: string;\n layout?: string;\n group?: string;\n};\n\n@Injectable()\nexport class EsolveMediaLayoutService {\n private readonly section_key_delimiter = '>>>';\n\n private media?: EsolveMediaArticle;\n private layout_map: ComponentMap = new Map();\n private section_map: ComponentMap = new Map();\n private default_layout: string;\n\n constructor(\n @Inject(ESOLVE_CONNECT_MEDIA_CONFIG) config: EsolveConnectMediaConfig,\n ) {\n if (config.layouts.length === 0) {\n throw new Error('No layouts have been defined');\n }\n\n for (const layout of config.layouts) {\n this.setLayout(layout.key, layout.component);\n\n if (layout.sections) {\n for (const section_group_key in layout.sections) {\n const sections = layout.sections[section_group_key];\n\n for (const section of sections) {\n const key_options: SectionKeyOptions = {\n type: section.key,\n sub_type: section.sub_key,\n layout: layout.key,\n };\n\n if (section_group_key !== '__default') {\n key_options.group = section_group_key;\n }\n\n this.setSection(section.component, key_options);\n }\n }\n }\n }\n\n const default_layout = config.default_layout;\n\n if (default_layout) {\n this.default_layout = default_layout;\n } else {\n this.default_layout = config.layouts[0].key;\n }\n\n if (config.sections.length > 0) {\n for (const section of config.sections) {\n const key_options: SectionKeyOptions = {\n type: section.key,\n sub_type: section.sub_key,\n };\n\n this.setSection(section.component, key_options);\n }\n }\n }\n\n public getMedia() {\n if (!this.media) {\n throw new Error('Media not declared');\n }\n\n return this.media;\n }\n\n public setMedia(media: EsolveMediaArticle) {\n this.media = media;\n }\n\n public getLayout() {\n const media = this.getMedia();\n\n let layout_key = media.layout;\n\n if (layout_key === '') {\n layout_key = this.default_layout;\n }\n\n return this.searchLayout(layout_key);\n }\n\n public getSectionContent(key: string) {\n const media = this.getMedia();\n\n if (media.sections) {\n const section = media.sections.get(key);\n\n if (section) {\n return section;\n }\n }\n\n return [];\n }\n\n public getSectionComponent(key: string, section: EsolveMediaLayoutSection) {\n const type = section.type;\n const sub_type = section.sub_type;\n const { layout } = this.getMedia();\n\n const section_key = this.createSectionMapKey({\n type,\n sub_type,\n layout,\n group: key,\n });\n\n let component = this.section_map.get(section_key);\n\n if (component) {\n return component;\n }\n\n const layout_key = this.createSectionMapKey({\n type,\n sub_type,\n layout,\n });\n\n component = this.section_map.get(layout_key);\n\n if (component) {\n return component;\n }\n\n const base_key = this.createSectionMapKey({\n type,\n sub_type,\n });\n\n component = this.section_map.get(base_key);\n\n if (component) {\n return component;\n }\n\n throw new Error('Section component not defined');\n }\n\n private searchLayout(layout_key: string) {\n const component = this.layout_map.get(layout_key);\n\n if (!component) {\n throw new Error('Layout not declared');\n }\n\n return component;\n }\n\n private setLayout(key: string, component: ComponentType<any>) {\n this.layout_map.set(key, component);\n }\n\n private setSection(\n component: ComponentType<any>,\n key_options: SectionKeyOptions,\n ) {\n const key = this.createSectionMapKey(key_options);\n\n this.section_map.set(key, component);\n }\n\n private createSectionMapKey(key_options: SectionKeyOptions) {\n const { type, sub_type, layout, group } = key_options;\n\n const key_array: string[] = [type];\n\n if (sub_type) {\n key_array.push(sub_type);\n }\n\n if (layout) {\n key_array.push(layout);\n\n if (group) {\n key_array.push(group);\n }\n }\n\n return key_array.join(this.section_key_delimiter);\n }\n}\n","import { Component, OnChanges, Input, Injector } from '@angular/core';\nimport { ComponentPortal } from '@angular/cdk/portal';\n\nimport { EsolveMediaArticle } from '../../classes';\nimport { EsolveMediaLayoutService } from '../../services';\n\n@Component({\n selector: 'eslv-media-layout',\n templateUrl: 'esolve-media-layout.component.html',\n providers: [EsolveMediaLayoutService],\n})\nexport class EsolveMediaLayoutComponent implements OnChanges {\n @Input() public media!: EsolveMediaArticle;\n\n public portal!: ComponentPortal<any>;\n\n constructor(public layoutService: EsolveMediaLayoutService) {}\n\n public ngOnChanges(): void {\n this.layoutService.setMedia(this.media);\n const component = this.layoutService.getLayout();\n const injector = Injector.create({\n providers: [\n {\n provide: EsolveMediaLayoutService,\n useValue: this.layoutService,\n },\n ],\n });\n\n this.portal = new ComponentPortal(component, null, injector);\n }\n}\n","<ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n","import { Component, OnChanges, Input, Injector } from '@angular/core';\nimport { ComponentPortal } from '@angular/cdk/portal';\n\nimport { EsolveMediaLayoutSection } from '../../classes';\nimport { EsolveMediaLayoutService } from '../../services';\n\n@Component({\n selector: 'eslv-media-section',\n templateUrl: './esolve-media-section.component.html',\n})\nexport class EsolveMediaSectionComponent implements OnChanges {\n @Input() public key!: string;\n\n public portals: ComponentPortal<any>[] = [];\n\n constructor(public layoutService: EsolveMediaLayoutService) {}\n\n public ngOnChanges(): void {\n const sections = this.layoutService.getSectionContent(this.key);\n this.processPortals(sections);\n }\n\n private processPortals(sections: EsolveMediaLayoutSection[]) {\n for (const section of sections) {\n const injector = Injector.create({\n providers: [\n {\n provide: EsolveMediaLayoutSection,\n useValue: section,\n },\n {\n provide: EsolveMediaLayoutService,\n useValue: this.layoutService,\n },\n ],\n });\n\n const component = this.layoutService.getSectionComponent(\n this.key,\n section,\n );\n\n const portal = new ComponentPortal(component, null, injector);\n this.portals.push(portal);\n }\n }\n}\n","<ng-container *ngIf=\"portals.length > 0\">\n <ng-container *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </ng-container>\n</ng-container>\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { HttpClientModule } from '@angular/common/http';\nimport { PortalModule } from '@angular/cdk/portal';\n\nimport { NgEsolveConnectModule } from '@esolve/ng-esolve-connect';\n\nimport {\n EsolveMediaLayoutComponent,\n EsolveMediaSectionComponent,\n} from './components';\nimport { EsolveConnectMediaConfig } from './esolve-connect-media.config';\nimport { ESOLVE_CONNECT_MEDIA_CONFIG } from './esolve-connect-media-config.token';\n\n@NgModule({\n declarations: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent],\n imports: [\n CommonModule,\n HttpClientModule,\n PortalModule,\n NgEsolveConnectModule,\n ],\n exports: [EsolveMediaLayoutComponent, EsolveMediaSectionComponent],\n})\nexport class NgEsolveConnectMediaModule {\n public static withConfig(\n config: EsolveConnectMediaConfig,\n ): ModuleWithProviders<NgEsolveConnectMediaModule> {\n return {\n ngModule: NgEsolveConnectMediaModule,\n providers: [\n {\n provide: ESOLVE_CONNECT_MEDIA_CONFIG,\n useValue: config,\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.EsolveMediaLayoutService","i2","i3"],"mappings":"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"}