@esolve/ng-esolve-connect 0.16.1 → 0.17.1

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 (186) hide show
  1. package/esm2020/lib/auth/esolve-auth.service.mjs +15 -10
  2. package/esm2020/lib/payment/classes/esolve-banking-details.model.mjs +11 -0
  3. package/esm2020/lib/payment/classes/esolve-payment-method.model.mjs +36 -0
  4. package/esm2020/lib/payment/classes/esolve-payment-result.model.mjs +37 -0
  5. package/esm2020/lib/payment/classes/esolve-vault-item-result.model.mjs +20 -0
  6. package/esm2020/lib/payment/classes/esolve-vault-item.model.mjs +20 -0
  7. package/esm2020/lib/payment/classes/index.mjs +6 -0
  8. package/esm2020/lib/payment/esolve-payment.service.mjs +57 -16
  9. package/esm2020/lib/payment/index.mjs +4 -14
  10. package/esm2020/lib/payment/interfaces/esolve-card-data.interface.mjs +2 -0
  11. package/esm2020/lib/payment/interfaces/esolve-payment-form-input.interface.mjs +2 -0
  12. package/esm2020/lib/payment/interfaces/esolve-payment-method-options.interface.mjs +2 -0
  13. package/esm2020/lib/payment/interfaces/esolve-payment-method-record.interface.mjs +2 -0
  14. package/esm2020/lib/payment/interfaces/esolve-payment-response.interface.mjs +2 -0
  15. package/esm2020/lib/payment/interfaces/esolve-payment-set-body.interface.mjs +2 -0
  16. package/esm2020/lib/payment/interfaces/esolve-payment-status.interface.mjs +2 -0
  17. package/esm2020/lib/payment/interfaces/esolve-vault-record.interface.mjs +2 -0
  18. package/esm2020/lib/payment/interfaces/esolve-vault-response.interface.mjs +2 -0
  19. package/esm2020/lib/payment/interfaces/index.mjs +9 -0
  20. package/esm2020/lib/payment/types/esolve-integration-type.type.mjs +2 -0
  21. package/esm2020/lib/payment/types/esolve-service-provider.type.mjs +2 -0
  22. package/esm2020/lib/payment/types/index.mjs +3 -0
  23. package/esm2020/lib/shared/sort/esolve-sort-order.type.mjs +2 -0
  24. package/esm2020/lib/shared/sort/esolve-sort.interface.mjs +2 -0
  25. package/esm2020/lib/shared/sort/index.mjs +5 -0
  26. package/esm2020/lib/stock/classes/esolve-additional-stock-image.model.mjs +21 -0
  27. package/esm2020/lib/stock/classes/esolve-colour.model.mjs +8 -0
  28. package/esm2020/lib/stock/classes/esolve-linked-stock-item.model.mjs +9 -0
  29. package/esm2020/lib/stock/classes/esolve-media-stock-item.model.mjs +7 -0
  30. package/esm2020/lib/stock/classes/esolve-recipe-stock-item.model.mjs +9 -0
  31. package/esm2020/lib/stock/classes/esolve-stock-badge.model.mjs +11 -0
  32. package/esm2020/lib/stock/classes/esolve-stock-group-item.model.mjs +7 -0
  33. package/esm2020/lib/stock/classes/esolve-stock-group.model.mjs +13 -0
  34. package/esm2020/lib/stock/classes/esolve-stock-image-collection.model.mjs +26 -0
  35. package/esm2020/lib/stock/classes/esolve-stock-image.model.mjs +45 -0
  36. package/esm2020/lib/stock/classes/esolve-stock-item-base.model.mjs +237 -0
  37. package/esm2020/lib/stock/classes/esolve-stock-item-list.model.mjs +11 -0
  38. package/esm2020/lib/stock/classes/esolve-stock-item.model.mjs +17 -0
  39. package/esm2020/lib/stock/classes/esolve-stock-lead-times.model.mjs +9 -0
  40. package/esm2020/lib/stock/classes/esolve-stock-price.model.mjs +43 -0
  41. package/esm2020/lib/stock/classes/index.mjs +17 -0
  42. package/esm2020/lib/stock/esolve-stock.service.mjs +40 -9
  43. package/esm2020/lib/stock/index.mjs +4 -36
  44. package/esm2020/lib/stock/interfaces/esolve-additional-stock-image-record.interface.mjs +2 -0
  45. package/esm2020/lib/stock/interfaces/esolve-colour-record.interface.mjs +2 -0
  46. package/esm2020/lib/stock/interfaces/esolve-linked-stock-record.interface.mjs +2 -0
  47. package/esm2020/lib/stock/interfaces/esolve-media-stock-item-options.interface.mjs +2 -0
  48. package/esm2020/lib/stock/interfaces/esolve-media-stock-item-record.interface.mjs +2 -0
  49. package/esm2020/lib/stock/interfaces/esolve-recipe-item-record.interface.mjs +2 -0
  50. package/esm2020/lib/stock/interfaces/esolve-recipe-stock-options.interface.mjs +2 -0
  51. package/esm2020/lib/stock/interfaces/esolve-stock-badge-record.interface.mjs +2 -0
  52. package/esm2020/lib/stock/interfaces/esolve-stock-base-record.interface.mjs +2 -0
  53. package/esm2020/lib/stock/interfaces/esolve-stock-group-item-record.interface.mjs +2 -0
  54. package/esm2020/lib/stock/interfaces/esolve-stock-image-collection-record.interface.mjs +3 -0
  55. package/esm2020/lib/stock/interfaces/esolve-stock-item-options.interface.mjs +2 -0
  56. package/esm2020/lib/stock/interfaces/esolve-stock-lead-times-record.interface.mjs +2 -0
  57. package/esm2020/lib/stock/interfaces/esolve-stock-linked-category-record.interface.mjs +2 -0
  58. package/esm2020/lib/stock/interfaces/esolve-stock-record.interface.mjs +2 -0
  59. package/esm2020/lib/stock/interfaces/index.mjs +17 -0
  60. package/esm2020/lib/stock/types/esolve-media-stock-item-list.type.mjs +2 -0
  61. package/esm2020/lib/stock/types/esolve-media-stock-sort-field.type.mjs +2 -0
  62. package/esm2020/lib/stock/types/esolve-stock-image-size.type.mjs +2 -0
  63. package/esm2020/lib/stock/types/esolve-stock-sort-field.type.mjs +2 -0
  64. package/esm2020/lib/stock/types/esolve-stock-unit-of-measure.type.mjs +2 -0
  65. package/esm2020/lib/stock/types/index.mjs +7 -0
  66. package/esm2020/public-api.mjs +2 -1
  67. package/fesm2015/esolve-ng-esolve-connect.mjs +217 -92
  68. package/fesm2015/esolve-ng-esolve-connect.mjs.map +1 -1
  69. package/fesm2020/esolve-ng-esolve-connect.mjs +201 -80
  70. package/fesm2020/esolve-ng-esolve-connect.mjs.map +1 -1
  71. package/lib/payment/{esolve-banking-details.model.d.ts → classes/esolve-banking-details.model.d.ts} +0 -0
  72. package/lib/payment/{esolve-payment-method.model.d.ts → classes/esolve-payment-method.model.d.ts} +2 -2
  73. package/lib/payment/classes/esolve-payment-result.model.d.ts +28 -0
  74. package/lib/payment/{esolve-vault-item-result.model.d.ts → classes/esolve-vault-item-result.model.d.ts} +2 -2
  75. package/lib/payment/{esolve-vault-item.model.d.ts → classes/esolve-vault-item.model.d.ts} +0 -0
  76. package/lib/payment/classes/index.d.ts +5 -0
  77. package/lib/payment/esolve-payment.service.d.ts +36 -7
  78. package/lib/payment/index.d.ts +3 -13
  79. package/lib/payment/{esolve-card-data.interface.d.ts → interfaces/esolve-card-data.interface.d.ts} +0 -0
  80. package/lib/payment/interfaces/esolve-payment-form-input.interface.d.ts +4 -0
  81. package/lib/payment/{esolve-payment-method-options.interface.d.ts → interfaces/esolve-payment-method-options.interface.d.ts} +0 -0
  82. package/lib/payment/{esolve-payment-method-record.interface.d.ts → interfaces/esolve-payment-method-record.interface.d.ts} +1 -1
  83. package/lib/payment/interfaces/esolve-payment-response.interface.d.ts +28 -0
  84. package/lib/payment/{esolve-payment-set-body.interface.d.ts → interfaces/esolve-payment-set-body.interface.d.ts} +0 -0
  85. package/lib/payment/interfaces/esolve-payment-status.interface.d.ts +3 -0
  86. package/lib/payment/{esolve-vault-record.interface.d.ts → interfaces/esolve-vault-record.interface.d.ts} +0 -0
  87. package/lib/payment/{esolve-vault-response.interface.d.ts → interfaces/esolve-vault-response.interface.d.ts} +1 -1
  88. package/lib/payment/interfaces/index.d.ts +7 -0
  89. package/lib/payment/{esolve-integration-type.type.d.ts → types/esolve-integration-type.type.d.ts} +0 -0
  90. package/lib/payment/types/esolve-service-provider.type.d.ts +1 -0
  91. package/lib/payment/types/index.d.ts +2 -0
  92. package/lib/shared/sort/esolve-sort-order.type.d.ts +1 -0
  93. package/lib/shared/sort/esolve-sort.interface.d.ts +5 -0
  94. package/lib/shared/sort/index.d.ts +2 -0
  95. package/lib/stock/{esolve-additional-stock-image.model.d.ts → classes/esolve-additional-stock-image.model.d.ts} +1 -1
  96. package/lib/stock/{esolve-colour.model.d.ts → classes/esolve-colour.model.d.ts} +1 -1
  97. package/lib/stock/{esolve-linked-stock-item.model.d.ts → classes/esolve-linked-stock-item.model.d.ts} +2 -2
  98. package/lib/stock/{esolve-media-stock-item.model.d.ts → classes/esolve-media-stock-item.model.d.ts} +2 -2
  99. package/lib/stock/{esolve-recipe-stock-item.model.d.ts → classes/esolve-recipe-stock-item.model.d.ts} +2 -2
  100. package/lib/stock/{esolve-stock-badge.model.d.ts → classes/esolve-stock-badge.model.d.ts} +0 -0
  101. package/lib/stock/{esolve-stock-group-item.model.d.ts → classes/esolve-stock-group-item.model.d.ts} +2 -2
  102. package/lib/stock/{esolve-stock-group.model.d.ts → classes/esolve-stock-group.model.d.ts} +2 -2
  103. package/lib/stock/{esolve-stock-image-collection.model.d.ts → classes/esolve-stock-image-collection.model.d.ts} +1 -1
  104. package/lib/stock/{esolve-stock-image.model.d.ts → classes/esolve-stock-image.model.d.ts} +1 -1
  105. package/lib/stock/{esolve-stock-item-base.model.d.ts → classes/esolve-stock-item-base.model.d.ts} +18 -10
  106. package/lib/stock/{esolve-stock-item-list.model.d.ts → classes/esolve-stock-item-list.model.d.ts} +1 -1
  107. package/lib/stock/{esolve-stock-item.model.d.ts → classes/esolve-stock-item.model.d.ts} +2 -2
  108. package/lib/stock/{esolve-stock-lead-times.model.d.ts → classes/esolve-stock-lead-times.model.d.ts} +1 -1
  109. package/lib/stock/{esolve-stock-price.model.d.ts → classes/esolve-stock-price.model.d.ts} +0 -0
  110. package/lib/stock/classes/index.d.ts +15 -0
  111. package/lib/stock/esolve-stock.service.d.ts +4 -9
  112. package/lib/stock/index.d.ts +3 -32
  113. package/lib/stock/{esolve-additional-stock-image-record.interface.d.ts → interfaces/esolve-additional-stock-image-record.interface.d.ts} +0 -0
  114. package/lib/stock/{esolve-colour-record.interface.d.ts → interfaces/esolve-colour-record.interface.d.ts} +0 -0
  115. package/lib/stock/{esolve-linked-stock-record.interface.d.ts → interfaces/esolve-linked-stock-record.interface.d.ts} +1 -1
  116. package/lib/stock/{esolve-media-stock-item-options.interface.d.ts → interfaces/esolve-media-stock-item-options.interface.d.ts} +3 -0
  117. package/lib/stock/{esolve-media-stock-item-record.interface.d.ts → interfaces/esolve-media-stock-item-record.interface.d.ts} +1 -1
  118. package/lib/stock/{esolve-recipe-item-record.interface.d.ts → interfaces/esolve-recipe-item-record.interface.d.ts} +1 -1
  119. package/lib/stock/interfaces/esolve-recipe-stock-options.interface.d.ts +7 -0
  120. package/lib/stock/{esolve-stock-badge-record.interface.d.ts → interfaces/esolve-stock-badge-record.interface.d.ts} +0 -0
  121. package/lib/stock/{esolve-stock-base-record.interface.d.ts → interfaces/esolve-stock-base-record.interface.d.ts} +9 -7
  122. package/lib/stock/{esolve-stock-group-item-record.interface.d.ts → interfaces/esolve-stock-group-item-record.interface.d.ts} +1 -1
  123. package/lib/stock/{esolve-stock-image-collection-record.interface.d.ts → interfaces/esolve-stock-image-collection-record.interface.d.ts} +0 -0
  124. package/lib/stock/{esolve-stock-item-options.interface.d.ts → interfaces/esolve-stock-item-options.interface.d.ts} +3 -0
  125. package/lib/stock/{esolve-stock-lead-times-record.interface.d.ts → interfaces/esolve-stock-lead-times-record.interface.d.ts} +0 -0
  126. package/lib/stock/{esolve-stock-linked-category-record.interface.d.ts → interfaces/esolve-stock-linked-category-record.interface.d.ts} +0 -0
  127. package/lib/stock/{esolve-stock-record.interface.d.ts → interfaces/esolve-stock-record.interface.d.ts} +1 -1
  128. package/lib/stock/interfaces/index.d.ts +15 -0
  129. package/lib/stock/types/esolve-media-stock-item-list.type.d.ts +7 -0
  130. package/lib/stock/types/esolve-media-stock-sort-field.type.d.ts +2 -0
  131. package/lib/stock/{esolve-stock-image-size.type.d.ts → types/esolve-stock-image-size.type.d.ts} +0 -0
  132. package/lib/stock/types/esolve-stock-sort-field.type.d.ts +1 -0
  133. package/lib/stock/{esolve-stock-unit-of-measure.type.d.ts → types/esolve-stock-unit-of-measure.type.d.ts} +0 -0
  134. package/lib/stock/types/index.d.ts +5 -0
  135. package/package.json +1 -1
  136. package/public-api.d.ts +1 -0
  137. package/esm2020/lib/payment/esolve-banking-details.model.mjs +0 -11
  138. package/esm2020/lib/payment/esolve-card-data.interface.mjs +0 -2
  139. package/esm2020/lib/payment/esolve-integration-type.type.mjs +0 -2
  140. package/esm2020/lib/payment/esolve-paygate-form-input.interface.mjs +0 -2
  141. package/esm2020/lib/payment/esolve-payment-method-options.interface.mjs +0 -2
  142. package/esm2020/lib/payment/esolve-payment-method-record.interface.mjs +0 -2
  143. package/esm2020/lib/payment/esolve-payment-method.model.mjs +0 -36
  144. package/esm2020/lib/payment/esolve-payment-response.interface.mjs +0 -2
  145. package/esm2020/lib/payment/esolve-payment-result.model.mjs +0 -22
  146. package/esm2020/lib/payment/esolve-payment-set-body.interface.mjs +0 -2
  147. package/esm2020/lib/payment/esolve-vault-item-result.model.mjs +0 -20
  148. package/esm2020/lib/payment/esolve-vault-item.model.mjs +0 -20
  149. package/esm2020/lib/payment/esolve-vault-record.interface.mjs +0 -2
  150. package/esm2020/lib/payment/esolve-vault-response.interface.mjs +0 -2
  151. package/esm2020/lib/stock/esolve-additional-stock-image-record.interface.mjs +0 -2
  152. package/esm2020/lib/stock/esolve-additional-stock-image.model.mjs +0 -21
  153. package/esm2020/lib/stock/esolve-colour-record.interface.mjs +0 -2
  154. package/esm2020/lib/stock/esolve-colour.model.mjs +0 -8
  155. package/esm2020/lib/stock/esolve-linked-stock-item.model.mjs +0 -9
  156. package/esm2020/lib/stock/esolve-linked-stock-record.interface.mjs +0 -2
  157. package/esm2020/lib/stock/esolve-media-stock-item-list.type.mjs +0 -2
  158. package/esm2020/lib/stock/esolve-media-stock-item-options.interface.mjs +0 -2
  159. package/esm2020/lib/stock/esolve-media-stock-item-record.interface.mjs +0 -2
  160. package/esm2020/lib/stock/esolve-media-stock-item.model.mjs +0 -7
  161. package/esm2020/lib/stock/esolve-recipe-item-record.interface.mjs +0 -2
  162. package/esm2020/lib/stock/esolve-recipe-stock-item.model.mjs +0 -9
  163. package/esm2020/lib/stock/esolve-stock-badge-record.interface.mjs +0 -2
  164. package/esm2020/lib/stock/esolve-stock-badge.model.mjs +0 -11
  165. package/esm2020/lib/stock/esolve-stock-base-record.interface.mjs +0 -2
  166. package/esm2020/lib/stock/esolve-stock-group-item-record.interface.mjs +0 -2
  167. package/esm2020/lib/stock/esolve-stock-group-item.model.mjs +0 -7
  168. package/esm2020/lib/stock/esolve-stock-group.model.mjs +0 -13
  169. package/esm2020/lib/stock/esolve-stock-image-collection-record.interface.mjs +0 -3
  170. package/esm2020/lib/stock/esolve-stock-image-collection.model.mjs +0 -26
  171. package/esm2020/lib/stock/esolve-stock-image-size.type.mjs +0 -2
  172. package/esm2020/lib/stock/esolve-stock-image.model.mjs +0 -45
  173. package/esm2020/lib/stock/esolve-stock-item-base.model.mjs +0 -224
  174. package/esm2020/lib/stock/esolve-stock-item-list.model.mjs +0 -11
  175. package/esm2020/lib/stock/esolve-stock-item-options.interface.mjs +0 -2
  176. package/esm2020/lib/stock/esolve-stock-item.model.mjs +0 -17
  177. package/esm2020/lib/stock/esolve-stock-lead-times-record.interface.mjs +0 -2
  178. package/esm2020/lib/stock/esolve-stock-lead-times.model.mjs +0 -9
  179. package/esm2020/lib/stock/esolve-stock-linked-category-record.interface.mjs +0 -2
  180. package/esm2020/lib/stock/esolve-stock-price.model.mjs +0 -43
  181. package/esm2020/lib/stock/esolve-stock-record.interface.mjs +0 -2
  182. package/esm2020/lib/stock/esolve-stock-unit-of-measure.type.mjs +0 -2
  183. package/lib/payment/esolve-paygate-form-input.interface.d.ts +0 -4
  184. package/lib/payment/esolve-payment-response.interface.d.ts +0 -10
  185. package/lib/payment/esolve-payment-result.model.d.ts +0 -11
  186. package/lib/stock/esolve-media-stock-item-list.type.d.ts +0 -7
@@ -1,6 +1,6 @@
1
- import { EsolvePaymentMethodRecord } from './esolve-payment-method-record.interface';
1
+ import { EsolveIntegrationType } from '../types';
2
+ import { EsolvePaymentMethodRecord } from '../interfaces';
2
3
  import { EsolveBankingDetails } from './esolve-banking-details.model';
3
- import { EsolveIntegrationType } from './esolve-integration-type.type';
4
4
  export declare class EsolvePaymentMethod {
5
5
  id: number;
6
6
  location_id: number;
@@ -0,0 +1,28 @@
1
+ import { EsolveResponseResult } from '../../shared/response';
2
+ import { EsolveServiceProvider } from '../types';
3
+ import { EsolvePaymentResponse, EsolvePaymentFormInput } from '../interfaces';
4
+ export declare class EsolvePaymentResult extends EsolveResponseResult {
5
+ gateway_error_message: string;
6
+ redirect_required: boolean;
7
+ service_provider?: EsolveServiceProvider;
8
+ redirect_url?: string;
9
+ /**
10
+ * Form post variables
11
+ *
12
+ * Not available to SnapScan
13
+ */
14
+ form_inputs?: EsolvePaymentFormInput[];
15
+ /**
16
+ * Form post content type
17
+ *
18
+ * Not available to SnapScan
19
+ */
20
+ form_enctype?: string;
21
+ /**
22
+ * QR code image url
23
+ *
24
+ * Only available to SnapScan integrations
25
+ */
26
+ qr_code_url?: string;
27
+ constructor(response: EsolvePaymentResponse);
28
+ }
@@ -1,5 +1,5 @@
1
- import { EsolveResponseResult } from '../shared/response';
2
- import { EsolveVaultResponse } from './esolve-vault-response.interface';
1
+ import { EsolveResponseResult } from '../../shared/response';
2
+ import { EsolveVaultResponse } from '../interfaces';
3
3
  export declare class EsolveVaultItemResult extends EsolveResponseResult {
4
4
  id: number;
5
5
  token?: string;
@@ -0,0 +1,5 @@
1
+ export * from './esolve-banking-details.model';
2
+ export * from './esolve-payment-method.model';
3
+ export * from './esolve-payment-result.model';
4
+ export * from './esolve-vault-item-result.model';
5
+ export * from './esolve-vault-item.model';
@@ -4,12 +4,8 @@ import { EsolveConnectConfig } from '../esolve-connect.config';
4
4
  import { EsolveErrorHandlerService } from '../shared/errors/esolve-error-handler.service';
5
5
  import { EsolveResult } from '../shared/esolve-result.model';
6
6
  import { EsolveResponseHandlerService } from '../shared/response';
7
- import { EsolvePaymentMethod } from './esolve-payment-method.model';
8
- import { EsolvePaymentMethodOptions } from './esolve-payment-method-options.interface';
9
- import { EsolveCardData } from './esolve-card-data.interface';
10
- import { EsolveVaultItem } from './esolve-vault-item.model';
11
- import { EsolveVaultItemResult } from './esolve-vault-item-result.model';
12
- import { EsolvePaymentResult } from './esolve-payment-result.model';
7
+ import { EsolvePaymentMethod, EsolvePaymentResult, EsolveVaultItem, EsolveVaultItemResult } from './classes';
8
+ import { EsolveCardData, EsolvePaymentMethodOptions } from './interfaces';
13
9
  import * as i0 from "@angular/core";
14
10
  export declare class EsolvePaymentService {
15
11
  private config;
@@ -19,23 +15,44 @@ export declare class EsolvePaymentService {
19
15
  constructor(config: EsolveConnectConfig, http: HttpClient, errorHandler: EsolveErrorHandlerService, responseHandler: EsolveResponseHandlerService);
20
16
  /**
21
17
  * Retrieves a list of payment methods.
18
+ *
22
19
  * @param options Filter options
20
+ *
23
21
  * @returns An `Observable` with an array of payment methods
24
22
  */
25
23
  getPaymentMethods(options?: EsolvePaymentMethodOptions): Observable<EsolvePaymentMethod[]>;
24
+ /**
25
+ * Retrieve the payment status of the specified transaction
26
+ *
27
+ * @param transaction_id ID of the transaction
28
+ *
29
+ * @returns An `Observable` with the success status of the payment
30
+ */
31
+ getPaymentStatus(transaction_id: number): Observable<boolean>;
26
32
  /**
27
33
  * Retrieves a list of saved cards from the vault.
34
+ *
28
35
  * @param payment_methods_id eSolve ID of a payment method
36
+ *
29
37
  * @returns An `Observable` with an array of saved bank cards
30
38
  */
31
39
  getVault(payment_methods_id?: number): Observable<EsolveVaultItem[]>;
32
40
  /**
33
41
  * Sets a new card in the vault OR updates an existing one.
42
+ *
34
43
  * @param payment_methods_id Selected payment method
35
44
  * @param card_data Information of bank card
45
+ *
36
46
  * @returns An `Observable` with the result of the vault set.
37
47
  */
38
48
  setVaultItem(payment_methods_id: number, card_data: EsolveCardData): Observable<EsolveVaultItemResult>;
49
+ /**
50
+ * Delete a card in the vault
51
+ *
52
+ * @param id ID of the vault item
53
+ *
54
+ * @returns An `Observable` with the result of the vault delete.
55
+ */
39
56
  deleteVaultItem(id: number): Observable<EsolveResult>;
40
57
  /**
41
58
  * Sets the payment for the specified transaction using selected payment
@@ -44,21 +61,33 @@ export declare class EsolvePaymentService {
44
61
  * @param transaction_id eSolve ID to the transaction
45
62
  * @param payment_methods_id eSolve ID to the selected payment method
46
63
  * @param card ID of selected card from the vault or information to a brand new card
64
+ *
47
65
  * @returns An `Observable` with the result of the payment
48
66
  */
49
- setPayment(transaction_id: number, payment_methods_id: number, card: EsolveCardData | number): Observable<EsolvePaymentResult>;
67
+ setPayment(transaction_id: number, payment_methods_id: number, card?: EsolveCardData | number): Observable<EsolvePaymentResult>;
50
68
  /**
51
69
  * Processes the eSolve payment method records.
70
+ *
52
71
  * @param records Records to process
72
+ *
53
73
  * @returns An array of processed payment methods.
54
74
  */
55
75
  private processPaymentMethods;
56
76
  /**
57
77
  * Processes the eSolve vault records.
78
+ *
58
79
  * @param records Records to process
80
+ *
59
81
  * @returns An array of processed vault items (a.k.a. cards)
60
82
  */
61
83
  private processVaultItems;
84
+ /**
85
+ * Generate a concatenated string with the expiry month and year
86
+ *
87
+ * @param card_data Credit card data
88
+ *
89
+ * @returns Expiry string
90
+ */
62
91
  private generateExpiry;
63
92
  static ɵfac: i0.ɵɵFactoryDeclaration<EsolvePaymentService, never>;
64
93
  static ɵprov: i0.ɵɵInjectableDeclaration<EsolvePaymentService>;
@@ -1,14 +1,4 @@
1
- export * from './esolve-banking-details.model';
2
- export * from './esolve-card-data.interface';
3
- export * from './esolve-integration-type.type';
4
- export * from './esolve-paygate-form-input.interface';
5
- export * from './esolve-vault-item-result.model';
6
- export * from './esolve-vault-response.interface';
7
- export * from './esolve-vault-record.interface';
8
- export * from './esolve-vault-item.model';
9
- export * from './esolve-payment-result.model';
10
- export * from './esolve-payment-response.interface';
11
- export * from './esolve-payment-method-options.interface';
12
- export * from './esolve-payment-method-record.interface';
13
- export * from './esolve-payment-method.model';
1
+ export * from './types';
2
+ export * from './interfaces';
3
+ export * from './classes';
14
4
  export * from './esolve-payment.service';
@@ -0,0 +1,4 @@
1
+ export interface EsolvePaymentFormInput {
2
+ key: string;
3
+ value: string;
4
+ }
@@ -1,4 +1,4 @@
1
- import { EsolveIntegrationType } from './esolve-integration-type.type';
1
+ import { EsolveIntegrationType } from '../types';
2
2
  export interface EsolvePaymentMethodRecord {
3
3
  id: number;
4
4
  location_id: number;
@@ -0,0 +1,28 @@
1
+ import { EsolvePostResponseItem } from '../../shared/response';
2
+ import { EsolveServiceProvider } from '../types';
3
+ import { EsolvePaymentFormInput } from './esolve-payment-form-input.interface';
4
+ export interface EsolvePaymentResponse extends EsolvePostResponseItem {
5
+ esolve_id: number;
6
+ gateway_error_message?: string;
7
+ redirect_required?: boolean;
8
+ service_provider?: EsolveServiceProvider;
9
+ redirect_url?: string;
10
+ /**
11
+ * Form post variables
12
+ *
13
+ * Not available to SnapScan
14
+ */
15
+ form_inputs?: EsolvePaymentFormInput[];
16
+ /**
17
+ * Form post content type
18
+ *
19
+ * Not available to SnapScan
20
+ */
21
+ form_enctype?: string;
22
+ /**
23
+ * QR code image url
24
+ *
25
+ * Only available to SnapScan integrations
26
+ */
27
+ qr_code_url?: string;
28
+ }
@@ -0,0 +1,3 @@
1
+ export interface EsolvePaymentStatus {
2
+ success: boolean;
3
+ }
@@ -1,4 +1,4 @@
1
- import { EsolvePostResponseItem } from '../shared/response';
1
+ import { EsolvePostResponseItem } from '../../shared/response';
2
2
  export interface EsolveVaultResponse extends EsolvePostResponseItem {
3
3
  esolve_id: number;
4
4
  card_valid?: boolean;
@@ -0,0 +1,7 @@
1
+ export * from './esolve-card-data.interface';
2
+ export * from './esolve-payment-form-input.interface';
3
+ export * from './esolve-vault-response.interface';
4
+ export * from './esolve-vault-record.interface';
5
+ export * from './esolve-payment-response.interface';
6
+ export * from './esolve-payment-method-options.interface';
7
+ export * from './esolve-payment-method-record.interface';
@@ -0,0 +1 @@
1
+ export declare type EsolveServiceProvider = 'paygate' | 'payfast' | 'snapscan' | 'ozow';
@@ -0,0 +1,2 @@
1
+ export * from './esolve-integration-type.type';
2
+ export * from './esolve-service-provider.type';
@@ -0,0 +1 @@
1
+ export declare type EsolveSortOrder = 'asc' | 'desc';
@@ -0,0 +1,5 @@
1
+ import { EsolveSortOrder } from './esolve-sort-order.type';
2
+ export interface EsolveSort<T extends string = string> {
3
+ field?: T;
4
+ order?: EsolveSortOrder;
5
+ }
@@ -0,0 +1,2 @@
1
+ export * from './esolve-sort-order.type';
2
+ export * from './esolve-sort.interface';
@@ -1,4 +1,4 @@
1
- import { EsolveAdditionalStockImageRecord } from './esolve-additional-stock-image-record.interface';
1
+ import { EsolveAdditionalStockImageRecord } from '../interfaces';
2
2
  export declare class EsolveAdditionalStockImage {
3
3
  id: number;
4
4
  type: string;
@@ -1,4 +1,4 @@
1
- import { EsolveColourRecord } from './esolve-colour-record.interface';
1
+ import { EsolveColourRecord } from '../interfaces';
2
2
  export declare class EsolveColour {
3
3
  id: number;
4
4
  colour: string;
@@ -1,5 +1,5 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
2
- import { EsolveLinkedStockRecord } from './esolve-linked-stock-record.interface';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
+ import { EsolveLinkedStockRecord } from '../interfaces';
3
3
  import { EsolveStockItemBase } from './esolve-stock-item-base.model';
4
4
  export declare class EsolveLinkedStockItem<T = EsolveGenericCustomFields> extends EsolveStockItemBase<T> {
5
5
  qty: number;
@@ -1,6 +1,6 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
+ import { EsolveMediaStockItemRecord } from '../interfaces';
2
3
  import { EsolveStockItemBase } from './esolve-stock-item-base.model';
3
- import { EsolveMediaStockItemRecord } from './esolve-media-stock-item-record.interface';
4
4
  export declare class EsolveMediaStockItem<T = EsolveGenericCustomFields> extends EsolveStockItemBase<T> {
5
5
  constructor(record?: Partial<EsolveMediaStockItemRecord<T>>);
6
6
  }
@@ -1,5 +1,5 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
2
- import { EsolveRecipeItemRecord } from './esolve-recipe-item-record.interface';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
+ import { EsolveRecipeItemRecord } from '../interfaces';
3
3
  import { EsolveStockItemBase } from './esolve-stock-item-base.model';
4
4
  export declare class EsolveRecipeStockItem<T = EsolveGenericCustomFields> extends EsolveStockItemBase<T> {
5
5
  qty: number;
@@ -1,6 +1,6 @@
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
+ import { EsolveStockGroupItemRecord } from '../interfaces';
1
3
  import { EsolveStockItemBase } from './esolve-stock-item-base.model';
2
- import { EsolveStockGroupItemRecord } from './esolve-stock-group-item-record.interface';
3
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
4
4
  export declare class EsolveStockGroupItem<T = EsolveGenericCustomFields> extends EsolveStockItemBase<T> {
5
5
  constructor(record?: Partial<EsolveStockGroupItemRecord<T>>);
6
6
  }
@@ -1,5 +1,5 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
2
- import { EsolveStockGroupItemRecord } from './esolve-stock-group-item-record.interface';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
+ import { EsolveStockGroupItemRecord } from '../interfaces';
3
3
  import { EsolveStockGroupItem } from './esolve-stock-group-item.model';
4
4
  export declare class EsolveStockGroup<T = EsolveGenericCustomFields> {
5
5
  group: string;
@@ -1,5 +1,5 @@
1
+ import { EsolveStockImageCollectionRecord } from '../interfaces';
1
2
  import { EsolveAdditionalStockImage } from './esolve-additional-stock-image.model';
2
- import { EsolveStockImageCollectionRecord } from './esolve-stock-image-collection-record.interface';
3
3
  import { EsolveStockImage } from './esolve-stock-image.model';
4
4
  export declare class EsolveStockImageCollection {
5
5
  default_image: EsolveStockImage;
@@ -1,4 +1,4 @@
1
- import { EsolveStockImageSize } from './esolve-stock-image-size.type';
1
+ import { EsolveStockImageSize } from '../types';
2
2
  export declare class EsolveStockImage {
3
3
  private image_name;
4
4
  /**
@@ -1,17 +1,16 @@
1
- import { EsolveCustomFields, EsolveGenericCustomFields } from '../shared/custom-fields';
2
- import { EsolveSeoDetails, EsolveSeoInfo } from '../shared/seo';
3
- import { EsolveCategoryTreeItem } from '../category-tree';
4
- import { EsolveManufacturer } from '../manufacturers';
5
- import { EsolveRange } from '../ranges';
6
- import { EsolveTag } from '../tags';
7
- import { EsolveTopic } from '../topics';
1
+ import { EsolveCustomFields, EsolveGenericCustomFields } from '../../shared/custom-fields';
2
+ import { EsolveSeoDetails, EsolveSeoInfo } from '../../shared/seo';
3
+ import { EsolveCategoryTreeItem } from '../../category-tree';
4
+ import { EsolveManufacturer } from '../../manufacturers';
5
+ import { EsolveRange } from '../../ranges';
6
+ import { EsolveTag } from '../../tags';
7
+ import { EsolveTopic } from '../../topics';
8
+ import { EsolveStockImageSize, EsolveStockUnitOfMeasure } from '../types';
9
+ import { EsolveStockBaseRecord } from '../interfaces';
8
10
  import { EsolveStockBadge } from './esolve-stock-badge.model';
9
- import { EsolveStockBaseRecord } from './esolve-stock-base-record.interface';
10
11
  import { EsolveStockPrice } from './esolve-stock-price.model';
11
12
  import { EsolveColour } from './esolve-colour.model';
12
13
  import { EsolveStockLeadTimes } from './esolve-stock-lead-times.model';
13
- import { EsolveStockImageSize } from './esolve-stock-image-size.type';
14
- import { EsolveStockUnitOfMeasure } from './esolve-stock-unit-of-measure.type';
15
14
  export declare class EsolveStockItemBase<T = EsolveGenericCustomFields> implements EsolveSeoDetails {
16
15
  /**
17
16
  * eSolve Generated ID
@@ -45,6 +44,14 @@ export declare class EsolveStockItemBase<T = EsolveGenericCustomFields> implemen
45
44
  * Featured state
46
45
  */
47
46
  featured: boolean;
47
+ /**
48
+ * Number of stock available
49
+ */
50
+ amount_in_stock: number;
51
+ /**
52
+ * Total items linked to the item as a recipe
53
+ */
54
+ total_recipe_items: number;
48
55
  /**
49
56
  * Height measured in meters (m)
50
57
  */
@@ -161,6 +168,7 @@ export declare class EsolveStockItemBase<T = EsolveGenericCustomFields> implemen
161
168
  * Path to original stock image
162
169
  */
163
170
  get original_image_src(): string;
171
+ get available(): boolean;
164
172
  constructor(record?: Partial<EsolveStockBaseRecord<T>>);
165
173
  getImagePath(image_size: EsolveStockImageSize): string;
166
174
  }
@@ -1,4 +1,4 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
2
  import { EsolveStockItem } from './esolve-stock-item.model';
3
3
  /**
4
4
  * Stock item object list
@@ -1,5 +1,5 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
2
- import { EsolveStockRecord } from './esolve-stock-record.interface';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
+ import { EsolveStockRecord } from '../interfaces';
3
3
  import { EsolveStockItemBase } from './esolve-stock-item-base.model';
4
4
  import { EsolveStockGroup } from './esolve-stock-group.model';
5
5
  /**
@@ -1,4 +1,4 @@
1
- import { EsolveStockLeadTimesRecord } from "./esolve-stock-lead-times-record.interface";
1
+ import { EsolveStockLeadTimesRecord } from '../interfaces';
2
2
  export declare class EsolveStockLeadTimes {
3
3
  min: number;
4
4
  max: number;
@@ -0,0 +1,15 @@
1
+ export * from './esolve-colour.model';
2
+ export * from './esolve-stock-item.model';
3
+ export * from './esolve-stock-price.model';
4
+ export * from './esolve-stock-badge.model';
5
+ export * from './esolve-stock-group.model';
6
+ export * from './esolve-stock-item-base.model';
7
+ export * from './esolve-stock-item-list.model';
8
+ export * from './esolve-stock-group-item.model';
9
+ export * from './esolve-recipe-stock-item.model';
10
+ export * from './esolve-linked-stock-item.model';
11
+ export * from './esolve-stock-lead-times.model';
12
+ export * from './esolve-media-stock-item.model';
13
+ export * from './esolve-stock-image.model';
14
+ export * from './esolve-stock-image-collection.model';
15
+ export * from './esolve-additional-stock-image.model';
@@ -2,14 +2,9 @@ import { HttpClient } from '@angular/common/http';
2
2
  import { Observable } from 'rxjs';
3
3
  import { EsolveConnectConfig } from '../esolve-connect.config';
4
4
  import { EsolveGenericCustomFields } from '../shared/custom-fields';
5
- import { EsolveStockItem } from './esolve-stock-item.model';
6
- import { EsolveStockItemList } from './esolve-stock-item-list.model';
7
- import { EsolveRecipeStockItem } from './esolve-recipe-stock-item.model';
8
- import { EsolveLinkedStockItem } from './esolve-linked-stock-item.model';
9
- import { EsolveStockItemOptions } from './esolve-stock-item-options.interface';
10
- import { EsolveMediaStockItemOptions } from './esolve-media-stock-item-options.interface';
11
- import { EsolveMediaStockItemList } from './esolve-media-stock-item-list.type';
12
- import { EsolveStockImageCollection } from './esolve-stock-image-collection.model';
5
+ import { EsolveMediaStockItemList } from './types';
6
+ import { EsolveStockItemOptions, EsolveRecipeStockOptions, EsolveMediaStockItemOptions } from './interfaces';
7
+ import { EsolveStockItem, EsolveStockItemList, EsolveRecipeStockItem, EsolveLinkedStockItem, EsolveStockImageCollection } from './classes';
13
8
  import * as i0 from "@angular/core";
14
9
  export declare class EsolveStockService<T = EsolveGenericCustomFields> {
15
10
  private config;
@@ -44,7 +39,7 @@ export declare class EsolveStockService<T = EsolveGenericCustomFields> {
44
39
  *
45
40
  * @param code Stock item code
46
41
  */
47
- getRecipeItems(code: string): Observable<EsolveRecipeStockItem<T>[]>;
42
+ getRecipeItems(code: string, options?: EsolveRecipeStockOptions): Observable<EsolveRecipeStockItem<T>[]>;
48
43
  /**
49
44
  * Retrieve list of stock items linked to a stock item from the eSolve API
50
45
  *
@@ -1,33 +1,4 @@
1
- export * from './esolve-stock-image-size.type';
2
- export * from './esolve-media-stock-item-list.type';
3
- export * from './esolve-stock-unit-of-measure.type';
4
- export * from './esolve-colour.model';
5
- export * from './esolve-stock-item.model';
6
- export * from './esolve-stock-price.model';
7
- export * from './esolve-stock-badge.model';
8
- export * from './esolve-stock-group.model';
9
- export * from './esolve-stock-item-base.model';
10
- export * from './esolve-stock-item-list.model';
11
- export * from './esolve-stock-group-item.model';
12
- export * from './esolve-recipe-stock-item.model';
13
- export * from './esolve-linked-stock-item.model';
14
- export * from './esolve-stock-lead-times.model';
15
- export * from './esolve-media-stock-item.model';
16
- export * from './esolve-stock-image.model';
17
- export * from './esolve-stock-image-collection.model';
18
- export * from './esolve-additional-stock-image.model';
19
- export * from './esolve-stock-record.interface';
20
- export * from './esolve-colour-record.interface';
21
- export * from './esolve-stock-base-record.interface';
22
- export * from './esolve-stock-item-options.interface';
23
- export * from './esolve-stock-badge-record.interface';
24
- export * from './esolve-recipe-item-record.interface';
25
- export * from './esolve-linked-stock-record.interface';
26
- export * from './esolve-stock-group-item-record.interface';
27
- export * from './esolve-stock-linked-category-record.interface';
28
- export * from './esolve-stock-lead-times-record.interface';
29
- export * from './esolve-stock-image-collection-record.interface';
30
- export * from './esolve-additional-stock-image-record.interface';
31
- export * from './esolve-media-stock-item-record.interface';
32
- export * from './esolve-media-stock-item-options.interface';
1
+ export * from './types';
2
+ export * from './classes';
3
+ export * from './interfaces';
33
4
  export * from './esolve-stock.service';
@@ -1,4 +1,4 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
2
  import { EsolveStockBaseRecord } from './esolve-stock-base-record.interface';
3
3
  import { EsolveStockLinkedCategoryRecord } from './esolve-stock-linked-category-record.interface';
4
4
  export interface EsolveLinkedStockRecord<T = EsolveGenericCustomFields> extends EsolveStockBaseRecord<T> {
@@ -1,3 +1,5 @@
1
+ import { EsolveSort } from '../../shared/sort';
2
+ import { EsolveMediaStockSortField } from '../types';
1
3
  export interface EsolveMediaStockItemOptions {
2
4
  media_id?: number;
3
5
  media_identifier?: string;
@@ -7,4 +9,5 @@ export interface EsolveMediaStockItemOptions {
7
9
  ranges_id?: number;
8
10
  is_active?: boolean;
9
11
  display_only?: boolean;
12
+ sort?: EsolveSort<EsolveMediaStockSortField>;
10
13
  }
@@ -1,4 +1,4 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
2
  import { EsolveStockBaseRecord } from './esolve-stock-base-record.interface';
3
3
  export interface EsolveMediaStockItemRecord<T = EsolveGenericCustomFields> extends EsolveStockBaseRecord<T> {
4
4
  }
@@ -1,4 +1,4 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
2
  import { EsolveStockBaseRecord } from './esolve-stock-base-record.interface';
3
3
  import { EsolveStockLinkedCategoryRecord } from './esolve-stock-linked-category-record.interface';
4
4
  export interface EsolveRecipeItemRecord<T = EsolveGenericCustomFields> extends EsolveStockBaseRecord<T> {
@@ -0,0 +1,7 @@
1
+ import { EsolveSort } from '../../shared/sort';
2
+ import { EsolveStockSortField } from '../types';
3
+ export interface EsolveRecipeStockOptions {
4
+ page?: number;
5
+ rows?: number;
6
+ sort?: EsolveSort<EsolveStockSortField>;
7
+ }
@@ -1,13 +1,13 @@
1
- import { EsolveCustomFields, EsolveGenericCustomFields } from '../shared/custom-fields';
2
- import { EsolveCategoryTreeItemRecord } from '../category-tree';
3
- import { EsolveManufacturerRecord } from '../manufacturers';
4
- import { EsolveRangeRecord } from '../ranges';
5
- import { EsolveTagRecord } from '../tags';
6
- import { EsolveTopicRecord } from '../topics';
1
+ import { EsolveCustomFields, EsolveGenericCustomFields } from '../../shared/custom-fields';
2
+ import { EsolveCategoryTreeItemRecord } from '../../category-tree';
3
+ import { EsolveManufacturerRecord } from '../../manufacturers';
4
+ import { EsolveRangeRecord } from '../../ranges';
5
+ import { EsolveTagRecord } from '../../tags';
6
+ import { EsolveTopicRecord } from '../../topics';
7
+ import { EsolveStockUnitOfMeasure } from '../types';
7
8
  import { EsolveStockBadgeRecord } from './esolve-stock-badge-record.interface';
8
9
  import { EsolveColourRecord } from './esolve-colour-record.interface';
9
10
  import { EsolveStockLeadTimesRecord } from './esolve-stock-lead-times-record.interface';
10
- import { EsolveStockUnitOfMeasure } from './esolve-stock-unit-of-measure.type';
11
11
  export interface EsolveStockBaseRecord<T = EsolveGenericCustomFields> {
12
12
  id: number;
13
13
  code: string;
@@ -57,4 +57,6 @@ export interface EsolveStockBaseRecord<T = EsolveGenericCustomFields> {
57
57
  length: number;
58
58
  weight: number;
59
59
  unit_of_measure: EsolveStockUnitOfMeasure;
60
+ onhand: number;
61
+ total_recipe_items: number;
60
62
  }
@@ -1,4 +1,4 @@
1
- import { EsolveGenericCustomFields } from '../shared/custom-fields';
1
+ import { EsolveGenericCustomFields } from '../../shared/custom-fields';
2
2
  import { EsolveStockBaseRecord } from './esolve-stock-base-record.interface';
3
3
  export interface EsolveStockGroupItemRecord<T = EsolveGenericCustomFields> extends EsolveStockBaseRecord<T> {
4
4
  }
@@ -1,3 +1,5 @@
1
+ import { EsolveSort } from '../../shared/sort';
2
+ import { EsolveStockSortField } from '../types';
1
3
  export interface EsolveStockItemOptions {
2
4
  rows?: number;
3
5
  page?: number;
@@ -11,4 +13,5 @@ export interface EsolveStockItemOptions {
11
13
  topic_id_list?: number[];
12
14
  search_phrase?: string;
13
15
  specials_id?: number;
16
+ sort?: EsolveSort<EsolveStockSortField>;
14
17
  }