@esolve/ng-esolve-connect 0.99.0 → 0.100.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 (34) hide show
  1. package/esm2022/lib/account/address/classes/esolve-session-address-update-result.model.mjs +11 -0
  2. package/esm2022/lib/account/address/classes/index.mjs +2 -2
  3. package/esm2022/lib/account/confirmation/esolve-account-confirmation-post-response-item.interface.mjs +1 -1
  4. package/esm2022/lib/account/esolve-account.service.mjs +55 -6
  5. package/esm2022/lib/account/esolve-session-client-update-result.model.mjs +11 -0
  6. package/esm2022/lib/account/esolve-session-shipping-update-result.model.mjs +11 -0
  7. package/esm2022/lib/account/index.mjs +3 -2
  8. package/esm2022/lib/account/user-account/classes/esolve-user-client-account.model.mjs +49 -5
  9. package/esm2022/lib/auth/esolve-auth.service.mjs +4 -1
  10. package/esm2022/lib/auth/interfaces/esolve-auth-data.interface.mjs +1 -1
  11. package/esm2022/lib/session/esolve-session.service.mjs +40 -25
  12. package/esm2022/lib/session/interfaces/esolve-session-data.interface.mjs +1 -1
  13. package/esm2022/lib/session/interfaces/esolve-session-update-options.interface.mjs +2 -0
  14. package/esm2022/lib/session/interfaces/esolve-session.interface.mjs +1 -1
  15. package/esm2022/lib/session/interfaces/index.mjs +2 -1
  16. package/fesm2022/esolve-ng-esolve-connect.mjs +176 -53
  17. package/fesm2022/esolve-ng-esolve-connect.mjs.map +1 -1
  18. package/lib/account/address/classes/index.d.ts +1 -1
  19. package/lib/account/confirmation/esolve-account-confirmation-post-response-item.interface.d.ts +1 -0
  20. package/lib/account/esolve-account.service.d.ts +6 -3
  21. package/lib/account/esolve-session-client-update-result.model.d.ts +5 -0
  22. package/lib/account/index.d.ts +2 -1
  23. package/lib/account/user-account/classes/esolve-user-client-account.model.d.ts +42 -38
  24. package/lib/auth/interfaces/esolve-auth-data.interface.d.ts +1 -0
  25. package/lib/session/esolve-session.service.d.ts +9 -13
  26. package/lib/session/interfaces/esolve-session-data.interface.d.ts +1 -0
  27. package/lib/session/interfaces/esolve-session-update-options.interface.d.ts +8 -0
  28. package/lib/session/interfaces/esolve-session.interface.d.ts +1 -0
  29. package/lib/session/interfaces/index.d.ts +1 -0
  30. package/package.json +1 -1
  31. package/esm2022/lib/account/address/classes/esolve-session-address-result.model.mjs +0 -11
  32. package/esm2022/lib/account/esolve-session-shipping-result.model.mjs +0 -11
  33. /package/lib/account/address/classes/{esolve-session-address-result.model.d.ts → esolve-session-address-update-result.model.d.ts} +0 -0
  34. /package/lib/account/{esolve-session-shipping-result.model.d.ts → esolve-session-shipping-update-result.model.d.ts} +0 -0
@@ -1,3 +1,3 @@
1
1
  export * from './esolve-address-result.model';
2
2
  export * from './esolve-address.model';
3
- export * from './esolve-session-address-result.model';
3
+ export * from './esolve-session-address-update-result.model';
@@ -4,6 +4,7 @@ export interface EsolveAccountConfirmationPostResponseItem extends EsolvePostRes
4
4
  location_id: number;
5
5
  shipping_id: number;
6
6
  addresses_id: number;
7
+ clients_id: number;
7
8
  recalculated_cart: boolean;
8
9
  auto_login: boolean;
9
10
  }
@@ -4,11 +4,11 @@ import { EsolveTransaction, EsolveTransactionOptions, EsolveTransactionList } fr
4
4
  import { EsolveRegistrationData, EsolveRegistrationResult } from './registration';
5
5
  import { EsolveAddress, EsolveAddressResult, EsolveAddressPostData, EsolveSessionAddressUpdateResult } from './address';
6
6
  import { EsolveChangePasswordResult, EsolveResetPasswordResult } from './password';
7
- import { EsolveErpDocumentRequest, EsolveUserAccount, EsolveUserAccountData, EsolveUserAccountResult, EsolveUserClientAccountBalances } from './user-account';
7
+ import { EsolveErpDocumentRequest, EsolveUserAccount, EsolveUserAccountData, EsolveUserAccountResult, EsolveUserClientAccountBalances, EsolveErpDocumentsRequestResult, EsolveUserClientAccount } from './user-account';
8
8
  import { EsolveAccountConfirmationResult } from './confirmation';
9
9
  import { EsolveLocationUpdateResult } from './location';
10
- import { EsolveSessionShippingUpdateResult } from './esolve-session-shipping-result.model';
11
- import { EsolveErpDocumentsRequestResult } from './user-account/classes/esolve-erp-documents-request-result.model';
10
+ import { EsolveSessionShippingUpdateResult } from './esolve-session-shipping-update-result.model';
11
+ import { EsolveSessionClientUpdateResult } from './esolve-session-client-update-result.model';
12
12
  import * as i0 from "@angular/core";
13
13
  export declare class EsolveAccountService {
14
14
  private readonly config;
@@ -25,6 +25,7 @@ export declare class EsolveAccountService {
25
25
  deleteUserAccount(): Observable<EsolveResult>;
26
26
  setAddress(address_post_data: EsolveAddressPostData): Observable<EsolveAddressResult>;
27
27
  getAddresses(): Observable<EsolveAddress[]>;
28
+ getClients(): Observable<EsolveUserClientAccount[]>;
28
29
  deleteAddress(id: number): Observable<EsolveResult>;
29
30
  register(user_registration: EsolveRegistrationData, guest?: boolean): Observable<EsolveRegistrationResult>;
30
31
  changePassword(password: string, confirm_password: string): Observable<EsolveChangePasswordResult>;
@@ -41,6 +42,7 @@ export declare class EsolveAccountService {
41
42
  resetPassword(reset_key: string, password: string, confirm_password: string, auto_login?: boolean): Observable<EsolveResetPasswordResult>;
42
43
  updateLocation(location_id: number): Observable<EsolveLocationUpdateResult>;
43
44
  updateLocationOnErp(erp: string): Observable<EsolveLocationUpdateResult>;
45
+ updateSessionClient(clients_id: number): Observable<EsolveSessionClientUpdateResult>;
44
46
  updateSessionAddress(addresses_id: number): Observable<EsolveSessionAddressUpdateResult>;
45
47
  updateSessionShipping(shipping_id: number): Observable<EsolveSessionShippingUpdateResult>;
46
48
  /**
@@ -57,6 +59,7 @@ export declare class EsolveAccountService {
57
59
  getErpDocumentRequests(clients_id: number, type?: string): Observable<EsolveErpDocumentRequest[]>;
58
60
  private processUserAccount;
59
61
  private processUserAddress;
62
+ private processUserClients;
60
63
  private processTransactions;
61
64
  private processClientBalances;
62
65
  private loginGuard;
@@ -0,0 +1,5 @@
1
+ import { EsolvePostResponseItem, EsolveResponseResult } from '../shared';
2
+ export declare class EsolveSessionClientUpdateResult extends EsolveResponseResult {
3
+ client_updated: boolean;
4
+ constructor(response: EsolvePostResponseItem);
5
+ }
@@ -6,4 +6,5 @@ export * from './confirmation';
6
6
  export * from './location';
7
7
  export * from './esolve-geocode-response.interface';
8
8
  export * from './esolve-account.service';
9
- export * from './esolve-session-shipping-result.model';
9
+ export * from './esolve-session-shipping-update-result.model';
10
+ export * from './esolve-session-client-update-result.model';
@@ -1,44 +1,48 @@
1
1
  import { EsolveUserClientAccountRecord } from '../interfaces';
2
2
  import { EsolveStatement } from './esolve-statement.model';
3
3
  export declare class EsolveUserClientAccount {
4
- esolve_id?: number;
5
- account?: string;
6
- branch_code?: string;
7
- account_group?: string;
8
- pricing_group?: string;
9
- company_name?: string;
10
- client_contact_person?: string;
11
- client_firstname?: string;
12
- client_surname?: string;
13
- client_email?: string;
14
- client_contact_number?: string;
15
- client_fax_number?: string;
16
- client_cellphone_number?: string;
17
- client_id_number?: string;
18
- address_description?: string;
19
- street?: string;
20
- suburb?: string;
21
- city?: string;
22
- province?: string;
23
- country?: string;
24
- postal_code?: string;
25
- postal_address?: string;
26
- delivery_address?: string;
27
- vat_number?: string;
28
- ageing?: string;
29
- balance_last_updated?: string;
30
- client_classification?: string;
31
- override_stock_listing_identifiers?: string;
32
- requires_transaction_approval?: string;
33
- latitude?: number;
34
- longitude?: number;
35
- price_list?: number;
36
- loyalty_classification_id?: number;
37
- credit_limit?: number;
38
- pending_invoice_balance?: number;
39
- external_account_balance?: number;
40
- default_sellprice?: number;
41
- is_active?: boolean;
4
+ id: number;
5
+ /**
6
+ * @deprecated Use field id` instead
7
+ */
8
+ get esolve_id(): number;
9
+ account: string;
10
+ branch_code: string;
11
+ account_group: string;
12
+ pricing_group: string;
13
+ company_name: string;
14
+ client_contact_person: string;
15
+ client_firstname: string;
16
+ client_surname: string;
17
+ client_email: string;
18
+ client_contact_number: string;
19
+ client_fax_number: string;
20
+ client_cellphone_number: string;
21
+ client_id_number: string;
22
+ address_description: string;
23
+ street: string;
24
+ suburb: string;
25
+ city: string;
26
+ province: string;
27
+ country: string;
28
+ postal_code: string;
29
+ postal_address: string;
30
+ delivery_address: string;
31
+ latitude: number;
32
+ longitude: number;
33
+ vat_number: string;
34
+ ageing: string;
35
+ balance_last_updated: string;
36
+ client_classification: string;
37
+ override_stock_listing_identifiers: string;
38
+ requires_transaction_approval: string;
39
+ price_list: number;
40
+ loyalty_classification_id: number;
41
+ credit_limit: number;
42
+ pending_invoice_balance: number;
43
+ external_account_balance: number;
44
+ default_sellprice: number;
45
+ is_active: boolean;
42
46
  external_statement?: EsolveStatement;
43
47
  constructor(record?: Partial<EsolveUserClientAccountRecord>);
44
48
  }
@@ -7,4 +7,5 @@ export interface EsolveAuthData {
7
7
  location_id: number;
8
8
  addresses_id: number;
9
9
  shipping_id: number;
10
+ clients_id: number;
10
11
  }
@@ -1,13 +1,6 @@
1
1
  import { Observable } from 'rxjs';
2
- import { EsolveSession } from './interfaces';
2
+ import { EsolveSession, EsolveSessionUpdateOptions } from './interfaces';
3
3
  import * as i0 from "@angular/core";
4
- interface SessionUpdateOptions {
5
- user_id?: number;
6
- location_id?: number;
7
- addresses_id?: number;
8
- shipping_id?: number;
9
- token?: string;
10
- }
11
4
  export declare class EsolveSessionService {
12
5
  private readonly is_browser;
13
6
  private readonly config;
@@ -18,6 +11,7 @@ export declare class EsolveSessionService {
18
11
  private location_id$;
19
12
  private addresses_id$;
20
13
  private shipping_id$;
14
+ private clients_id$;
21
15
  private state_hash;
22
16
  private _session;
23
17
  private storage_key;
@@ -26,7 +20,6 @@ export declare class EsolveSessionService {
26
20
  private expire;
27
21
  private session_end;
28
22
  constructor();
29
- private initSession;
30
23
  isValid(): boolean;
31
24
  getSession(): Observable<EsolveSession>;
32
25
  getSessionValue(): EsolveSession;
@@ -37,10 +30,10 @@ export declare class EsolveSessionService {
37
30
  onTokenUpdate(): Observable<string>;
38
31
  updateToken(token: string): void;
39
32
  getUserId(): number;
40
- getAccessLevel(): number;
41
33
  onUserIdUpdate(): Observable<number>;
42
- onAccessLevelUpdate(): Observable<number>;
43
34
  updateUserId(user_id: number): void;
35
+ getAccessLevel(): number;
36
+ onAccessLevelUpdate(): Observable<number>;
44
37
  updateAccessLevel(access_level: number): void;
45
38
  getLocationId(): number;
46
39
  onLocationIdUpdate(): Observable<number>;
@@ -51,13 +44,17 @@ export declare class EsolveSessionService {
51
44
  getShippingId(): number;
52
45
  onShippingIdUpdate(): Observable<number>;
53
46
  updateShippingId(shipping_id: number): void;
47
+ getClientsId(): number;
48
+ onClientsIdUpdate(): Observable<number>;
49
+ updateClientsId(clients_id: number): void;
54
50
  getStateHash(): string;
55
51
  stopTimer(): void;
56
52
  startTimer(time: number | Date): void;
57
53
  getCachedSession(): string | null;
58
54
  reset(): void;
59
55
  handleSession(session: EsolveSession, expiry_date_unix: number, grace_unix: number): void;
60
- handleUpdateSession({ user_id, location_id, addresses_id, shipping_id, token, }: SessionUpdateOptions): void;
56
+ handleUpdateSession({ user_id, location_id, addresses_id, shipping_id, clients_id, token, }: EsolveSessionUpdateOptions): void;
57
+ private initSession;
61
58
  private setStorageKey;
62
59
  private getCache;
63
60
  private setCache;
@@ -65,4 +62,3 @@ export declare class EsolveSessionService {
65
62
  static ɵfac: i0.ɵɵFactoryDeclaration<EsolveSessionService, never>;
66
63
  static ɵprov: i0.ɵɵInjectableDeclaration<EsolveSessionService>;
67
64
  }
68
- export {};
@@ -2,4 +2,5 @@ export interface EsolveSessionData {
2
2
  addresses_id: number;
3
3
  location_id: number;
4
4
  shipping_id: number;
5
+ clients_id: number;
5
6
  }
@@ -0,0 +1,8 @@
1
+ export interface EsolveSessionUpdateOptions {
2
+ user_id?: number;
3
+ location_id?: number;
4
+ addresses_id?: number;
5
+ shipping_id?: number;
6
+ clients_id?: number;
7
+ token?: string;
8
+ }
@@ -5,4 +5,5 @@ export interface EsolveSession {
5
5
  location_id: number;
6
6
  addresses_id: number;
7
7
  shipping_id: number;
8
+ clients_id: number;
8
9
  }
@@ -1,2 +1,3 @@
1
1
  export * from './esolve-session-data.interface';
2
2
  export * from './esolve-session.interface';
3
+ export * from './esolve-session-update-options.interface';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esolve/ng-esolve-connect",
3
- "version": "0.99.0",
3
+ "version": "0.100.1",
4
4
  "homepage": "https://www.esolve.co.za/",
5
5
  "description": "An Angular library that speaks to an eSolve instance's API",
6
6
  "peerDependencies": {
@@ -1,11 +0,0 @@
1
- import { EsolveResponseResult } from '../../../shared';
2
- export class EsolveSessionAddressUpdateResult extends EsolveResponseResult {
3
- constructor(response) {
4
- super(response);
5
- if (typeof response.esolve_id === 'string') {
6
- throw new Error('Invalid response id.');
7
- }
8
- this.address_updated = response.esolve_id > 0;
9
- }
10
- }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXNlc3Npb24tYWRkcmVzcy1yZXN1bHQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvYWNjb3VudC9hZGRyZXNzL2NsYXNzZXMvZXNvbHZlLXNlc3Npb24tYWRkcmVzcy1yZXN1bHQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEwQixvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9FLE1BQU0sT0FBTyxnQ0FBaUMsU0FBUSxvQkFBb0I7SUFHdEUsWUFBWSxRQUFnQztRQUN4QyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFaEIsSUFBSSxPQUFPLFFBQVEsQ0FBQyxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQzVDLENBQUM7UUFFRCxJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO0lBQ2xELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVzb2x2ZVBvc3RSZXNwb25zZUl0ZW0sIEVzb2x2ZVJlc3BvbnNlUmVzdWx0IH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkJztcblxuZXhwb3J0IGNsYXNzIEVzb2x2ZVNlc3Npb25BZGRyZXNzVXBkYXRlUmVzdWx0IGV4dGVuZHMgRXNvbHZlUmVzcG9uc2VSZXN1bHQge1xuICAgIHB1YmxpYyBhZGRyZXNzX3VwZGF0ZWQ6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihyZXNwb25zZTogRXNvbHZlUG9zdFJlc3BvbnNlSXRlbSkge1xuICAgICAgICBzdXBlcihyZXNwb25zZSk7XG5cbiAgICAgICAgaWYgKHR5cGVvZiByZXNwb25zZS5lc29sdmVfaWQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcmVzcG9uc2UgaWQuJyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFkZHJlc3NfdXBkYXRlZCA9IHJlc3BvbnNlLmVzb2x2ZV9pZCA+IDA7XG4gICAgfVxufVxuIl19
@@ -1,11 +0,0 @@
1
- import { EsolveResponseResult } from '../shared';
2
- export class EsolveSessionShippingUpdateResult extends EsolveResponseResult {
3
- constructor(response) {
4
- super(response);
5
- if (typeof response.esolve_id === 'string') {
6
- throw new Error('Invalid response id.');
7
- }
8
- this.shipping_updated = response.esolve_id > 0;
9
- }
10
- }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXNlc3Npb24tc2hpcHBpbmctcmVzdWx0Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL2FjY291bnQvZXNvbHZlLXNlc3Npb24tc2hpcHBpbmctcmVzdWx0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBMEIsb0JBQW9CLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFekUsTUFBTSxPQUFPLGlDQUFrQyxTQUFRLG9CQUFvQjtJQUd2RSxZQUFZLFFBQWdDO1FBQ3hDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVoQixJQUFJLE9BQU8sUUFBUSxDQUFDLFNBQVMsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUVELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNuRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFc29sdmVQb3N0UmVzcG9uc2VJdGVtLCBFc29sdmVSZXNwb25zZVJlc3VsdCB9IGZyb20gJy4uL3NoYXJlZCc7XG5cbmV4cG9ydCBjbGFzcyBFc29sdmVTZXNzaW9uU2hpcHBpbmdVcGRhdGVSZXN1bHQgZXh0ZW5kcyBFc29sdmVSZXNwb25zZVJlc3VsdCB7XG4gICAgcHVibGljIHNoaXBwaW5nX3VwZGF0ZWQ6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihyZXNwb25zZTogRXNvbHZlUG9zdFJlc3BvbnNlSXRlbSkge1xuICAgICAgICBzdXBlcihyZXNwb25zZSk7XG5cbiAgICAgICAgaWYgKHR5cGVvZiByZXNwb25zZS5lc29sdmVfaWQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcmVzcG9uc2UgaWQuJyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNoaXBwaW5nX3VwZGF0ZWQgPSByZXNwb25zZS5lc29sdmVfaWQgPiAwO1xuICAgIH1cbn1cbiJdfQ==