@smess/networking 1.0.25 → 1.0.26
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.
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/services/customer.service.d.ts +29 -1
- package/dist/services/customer.service.js +35 -0
- package/dist/services/customer.service.test.js +174 -0
- package/package.json +1 -1
- package/dist/scripts/dev-test.d.ts +0 -1
- package/dist/scripts/dev-test.js +0 -803
- package/dist/scripts/real-test.d.ts +0 -1
- package/dist/scripts/real-test.js +0 -341
- package/dist/src/core/axios.d.ts +0 -51
- package/dist/src/core/axios.js +0 -65
- package/dist/src/core/axios.observable.d.ts +0 -11
- package/dist/src/core/axios.observable.js +0 -58
- package/dist/src/core/base.provider.advanced.test.d.ts +0 -1
- package/dist/src/core/base.provider.advanced.test.js +0 -29
- package/dist/src/core/base.provider.d.ts +0 -15
- package/dist/src/core/base.provider.js +0 -13
- package/dist/src/core/base.provider.test.d.ts +0 -1
- package/dist/src/core/base.provider.test.js +0 -36
- package/dist/src/core/base.service.wrapper.advanced.test.d.ts +0 -1
- package/dist/src/core/base.service.wrapper.advanced.test.js +0 -39
- package/dist/src/core/base.service.wrapper.d.ts +0 -7
- package/dist/src/core/base.service.wrapper.js +0 -11
- package/dist/src/core/base.service.wrapper.test.d.ts +0 -1
- package/dist/src/core/base.service.wrapper.test.js +0 -25
- package/dist/src/core/rx.http.service.d.ts +0 -51
- package/dist/src/core/rx.http.service.js +0 -65
- package/dist/src/index.d.ts +0 -19
- package/dist/src/index.js +0 -23
- package/dist/src/services/auth.service.d.ts +0 -65
- package/dist/src/services/auth.service.js +0 -197
- package/dist/src/services/auth.service.test.d.ts +0 -1
- package/dist/src/services/auth.service.test.js +0 -334
- package/dist/src/services/cache.service.d.ts +0 -31
- package/dist/src/services/cache.service.js +0 -77
- package/dist/src/services/cache.service.test.d.ts +0 -1
- package/dist/src/services/cache.service.test.js +0 -88
- package/dist/src/services/customer.service.d.ts +0 -71
- package/dist/src/services/customer.service.js +0 -114
- package/dist/src/services/customer.service.test.d.ts +0 -1
- package/dist/src/services/customer.service.test.js +0 -274
- package/dist/src/services/logger.service.d.ts +0 -31
- package/dist/src/services/logger.service.js +0 -93
- package/dist/src/services/logger.service.test.d.ts +0 -1
- package/dist/src/services/logger.service.test.js +0 -31
- package/dist/src/services/order.service.d.ts +0 -73
- package/dist/src/services/order.service.js +0 -97
- package/dist/src/services/order.service.test.d.ts +0 -1
- package/dist/src/services/order.service.test.js +0 -163
- package/dist/src/services/product.service.d.ts +0 -21
- package/dist/src/services/product.service.js +0 -42
- package/dist/src/services/product.service.test.d.ts +0 -1
- package/dist/src/services/product.service.test.js +0 -61
- package/dist/src/services/smess.service.d.ts +0 -36
- package/dist/src/services/smess.service.js +0 -128
- package/dist/src/services/smess.service.test.d.ts +0 -1
- package/dist/src/services/smess.service.test.js +0 -103
- package/dist/src/services/store.cart.service.d.ts +0 -158
- package/dist/src/services/store.cart.service.js +0 -177
- package/dist/src/services/store.cart.service.test.d.ts +0 -1
- package/dist/src/services/store.cart.service.test.js +0 -394
- package/dist/src/services/store.product.service.d.ts +0 -123
- package/dist/src/services/store.product.service.js +0 -102
- package/dist/src/services/store.product.service.test.d.ts +0 -1
- package/dist/src/services/store.product.service.test.js +0 -319
- package/dist/src/services/store.service.d.ts +0 -79
- package/dist/src/services/store.service.js +0 -235
- package/dist/src/services/store.service.test.d.ts +0 -1
- package/dist/src/services/store.service.test.js +0 -274
- package/dist/src/services/user.service.d.ts +0 -16
- package/dist/src/services/user.service.js +0 -37
- package/dist/src/services/user.service.test.d.ts +0 -1
- package/dist/src/services/user.service.test.js +0 -52
- package/dist/src/types/types.d.ts +0 -93
- package/dist/src/types/types.js +0 -82
- package/dist/src/types/types.test.d.ts +0 -1
- package/dist/src/types/types.test.js +0 -25
- package/dist/src/utils/cache-import.d.ts +0 -3
- package/dist/src/utils/cache-import.js +0 -2
- package/dist/src/utils/networking-import.d.ts +0 -4
- package/dist/src/utils/networking-import.js +0 -3
- package/dist/src/utils/rxjs-import.d.ts +0 -5
- package/dist/src/utils/rxjs-import.js +0 -5
- /package/dist/{src/services → services}/employee.service.d.ts +0 -0
- /package/dist/{src/services → services}/employee.service.js +0 -0
- /package/dist/{src/services → services}/employee.service.test.d.ts +0 -0
- /package/dist/{src/services → services}/employee.service.test.js +0 -0
- /package/dist/{src/services → services}/utils/withAuthReset.d.ts +0 -0
- /package/dist/{src/services → services}/utils/withAuthReset.js +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -5,9 +5,11 @@ export * from "./services/store.service";
|
|
|
5
5
|
export * from "./services/store.cart.service";
|
|
6
6
|
export * from "./services/store.product.service";
|
|
7
7
|
export * from "./services/customer.service";
|
|
8
|
+
export * from "./services/employee.service";
|
|
8
9
|
export * from "./services/order.service";
|
|
9
10
|
export * from "./services/cache.service";
|
|
10
11
|
export * from "./services/smess.service";
|
|
12
|
+
export * from "./services/utils/withAuthReset";
|
|
11
13
|
export * from "./core/base.provider";
|
|
12
14
|
export * from "./core/base.service.wrapper";
|
|
13
15
|
export * from "./core/axios.observable";
|
package/dist/index.js
CHANGED
|
@@ -5,9 +5,11 @@ export * from "./services/store.service";
|
|
|
5
5
|
export * from "./services/store.cart.service";
|
|
6
6
|
export * from "./services/store.product.service";
|
|
7
7
|
export * from "./services/customer.service";
|
|
8
|
+
export * from "./services/employee.service";
|
|
8
9
|
export * from "./services/order.service";
|
|
9
10
|
export * from "./services/cache.service";
|
|
10
11
|
export * from "./services/smess.service";
|
|
12
|
+
export * from "./services/utils/withAuthReset";
|
|
11
13
|
export * from "./core/base.provider";
|
|
12
14
|
export * from "./core/base.service.wrapper";
|
|
13
15
|
export * from "./core/axios.observable";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ProviderType, NetworkingConfig, NetworkingUIEventWrapped, HttpResponse } from "../types/types";
|
|
2
2
|
import { SmessService } from "./smess.service";
|
|
3
3
|
import { BehaviorSubject, Observable } from "rxjs";
|
|
4
|
-
export type CustomerTarget = "register" | "get-profile" | "update-profile";
|
|
4
|
+
export type CustomerTarget = "register" | "get-profile" | "update-profile" | "cart-collection" | "customer-product-collection" | "customer-product-create" | "customer-product-remove" | "customer-product-update-notes";
|
|
5
5
|
export interface CustomerRegisterRequest {
|
|
6
6
|
client_id?: string;
|
|
7
7
|
email: string;
|
|
@@ -21,6 +21,29 @@ export interface CustomerUpdateRequest {
|
|
|
21
21
|
contact_email: string | null;
|
|
22
22
|
phone_number: string | null;
|
|
23
23
|
}
|
|
24
|
+
export interface CustomerCartCollectionQuery {
|
|
25
|
+
page?: number;
|
|
26
|
+
per_page?: number;
|
|
27
|
+
status?: string;
|
|
28
|
+
search?: string;
|
|
29
|
+
sort_by?: string;
|
|
30
|
+
sort_order?: "asc" | "desc";
|
|
31
|
+
}
|
|
32
|
+
export interface CustomerProductCollectionQuery {
|
|
33
|
+
page?: number;
|
|
34
|
+
per_page?: number;
|
|
35
|
+
}
|
|
36
|
+
export interface CustomerProductCreateRequest {
|
|
37
|
+
product_id: string;
|
|
38
|
+
notes?: string;
|
|
39
|
+
}
|
|
40
|
+
export interface CustomerProductRemoveRequest {
|
|
41
|
+
product_id: string;
|
|
42
|
+
}
|
|
43
|
+
export interface CustomerProductUpdateNotesRequest {
|
|
44
|
+
product_id: string;
|
|
45
|
+
notes: string;
|
|
46
|
+
}
|
|
24
47
|
export declare class CustomerProvider implements ProviderType {
|
|
25
48
|
private readonly config;
|
|
26
49
|
private readonly target;
|
|
@@ -40,4 +63,9 @@ export declare class CustomerService {
|
|
|
40
63
|
register(payload: CustomerRegisterRequest): Observable<NetworkingUIEventWrapped<HttpResponse>>;
|
|
41
64
|
getProfile(): Observable<NetworkingUIEventWrapped<HttpResponse>>;
|
|
42
65
|
updateProfile(payload: CustomerUpdateRequest): Observable<NetworkingUIEventWrapped<HttpResponse>>;
|
|
66
|
+
getCartCollection(query?: CustomerCartCollectionQuery): Observable<NetworkingUIEventWrapped<HttpResponse>>;
|
|
67
|
+
getCustomerProductCollection(query?: CustomerProductCollectionQuery): Observable<NetworkingUIEventWrapped<HttpResponse>>;
|
|
68
|
+
createCustomerProduct(payload: CustomerProductCreateRequest): Observable<NetworkingUIEventWrapped<HttpResponse>>;
|
|
69
|
+
removeCustomerProduct(payload: CustomerProductRemoveRequest): Observable<NetworkingUIEventWrapped<HttpResponse>>;
|
|
70
|
+
updateCustomerProductNotes(payload: CustomerProductUpdateNotesRequest): Observable<NetworkingUIEventWrapped<HttpResponse>>;
|
|
43
71
|
}
|
|
@@ -18,6 +18,16 @@ export class CustomerProvider {
|
|
|
18
18
|
return "/authentication/customer/get-profile";
|
|
19
19
|
case "update-profile":
|
|
20
20
|
return "/authentication/customer/update";
|
|
21
|
+
case "cart-collection":
|
|
22
|
+
return "/store/cart/collection";
|
|
23
|
+
case "customer-product-collection":
|
|
24
|
+
return "/store/customer-product/collection";
|
|
25
|
+
case "customer-product-create":
|
|
26
|
+
return "/store/customer-product";
|
|
27
|
+
case "customer-product-remove":
|
|
28
|
+
return "/store/customer-product/remove";
|
|
29
|
+
case "customer-product-update-notes":
|
|
30
|
+
return "/store/customer-product/notes";
|
|
21
31
|
default:
|
|
22
32
|
return "/authentication/customer";
|
|
23
33
|
}
|
|
@@ -26,6 +36,16 @@ export class CustomerProvider {
|
|
|
26
36
|
switch (this.target) {
|
|
27
37
|
case "get-profile":
|
|
28
38
|
return "GET";
|
|
39
|
+
case "cart-collection":
|
|
40
|
+
return "GET";
|
|
41
|
+
case "customer-product-collection":
|
|
42
|
+
return "GET";
|
|
43
|
+
case "customer-product-create":
|
|
44
|
+
return "POST";
|
|
45
|
+
case "customer-product-remove":
|
|
46
|
+
return "DELETE";
|
|
47
|
+
case "customer-product-update-notes":
|
|
48
|
+
return "PATCH";
|
|
29
49
|
case "update-profile":
|
|
30
50
|
return "PUT";
|
|
31
51
|
default:
|
|
@@ -76,4 +96,19 @@ export class CustomerService {
|
|
|
76
96
|
updateProfile(payload) {
|
|
77
97
|
return this.provider("update-profile").request(payload);
|
|
78
98
|
}
|
|
99
|
+
getCartCollection(query) {
|
|
100
|
+
return this.provider("cart-collection").request(query);
|
|
101
|
+
}
|
|
102
|
+
getCustomerProductCollection(query) {
|
|
103
|
+
return this.provider("customer-product-collection").request(query);
|
|
104
|
+
}
|
|
105
|
+
createCustomerProduct(payload) {
|
|
106
|
+
return this.provider("customer-product-create").request(payload);
|
|
107
|
+
}
|
|
108
|
+
removeCustomerProduct(payload) {
|
|
109
|
+
return this.provider("customer-product-remove").request(payload);
|
|
110
|
+
}
|
|
111
|
+
updateCustomerProductNotes(payload) {
|
|
112
|
+
return this.provider("customer-product-update-notes").request(payload);
|
|
113
|
+
}
|
|
79
114
|
}
|
|
@@ -97,4 +97,178 @@ describe("CustomerService", () => {
|
|
|
97
97
|
expect(result?.hasFailed).toBe(true);
|
|
98
98
|
expect(result?.alertModel).toBeInstanceOf(AlertModel);
|
|
99
99
|
});
|
|
100
|
+
it("getCartCollection success", async () => {
|
|
101
|
+
const response = {
|
|
102
|
+
data: { items: [], page: 1, perPage: 24, total: 0 },
|
|
103
|
+
};
|
|
104
|
+
const requestMock = jest
|
|
105
|
+
.fn()
|
|
106
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.succeeded(response)));
|
|
107
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
108
|
+
request: requestMock,
|
|
109
|
+
});
|
|
110
|
+
const query = {
|
|
111
|
+
page: 1,
|
|
112
|
+
per_page: 24,
|
|
113
|
+
status: "confirmed",
|
|
114
|
+
};
|
|
115
|
+
const result = await service.getCartCollection(query).toPromise();
|
|
116
|
+
expect(requestMock).toHaveBeenCalledWith(query);
|
|
117
|
+
expect(result?.hasSuccess).toBe(true);
|
|
118
|
+
expect(result?.response).toEqual(response);
|
|
119
|
+
});
|
|
120
|
+
it("getCartCollection error", async () => {
|
|
121
|
+
const requestMock = jest
|
|
122
|
+
.fn()
|
|
123
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.failed(AlertModel.default())));
|
|
124
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
125
|
+
request: requestMock,
|
|
126
|
+
});
|
|
127
|
+
const query = {
|
|
128
|
+
page: 1,
|
|
129
|
+
per_page: 24,
|
|
130
|
+
};
|
|
131
|
+
const result = await service.getCartCollection(query).toPromise();
|
|
132
|
+
expect(requestMock).toHaveBeenCalledWith(query);
|
|
133
|
+
expect(result?.hasFailed).toBe(true);
|
|
134
|
+
expect(result?.alertModel).toBeInstanceOf(AlertModel);
|
|
135
|
+
});
|
|
136
|
+
it("getCustomerProductCollection success", async () => {
|
|
137
|
+
const response = {
|
|
138
|
+
data: { items: [], page: 1, perPage: 24, total: 0 },
|
|
139
|
+
};
|
|
140
|
+
const requestMock = jest
|
|
141
|
+
.fn()
|
|
142
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.succeeded(response)));
|
|
143
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
144
|
+
request: requestMock,
|
|
145
|
+
});
|
|
146
|
+
const query = {
|
|
147
|
+
page: 1,
|
|
148
|
+
per_page: 24,
|
|
149
|
+
};
|
|
150
|
+
const result = await service.getCustomerProductCollection(query).toPromise();
|
|
151
|
+
expect(requestMock).toHaveBeenCalledWith(query);
|
|
152
|
+
expect(result?.hasSuccess).toBe(true);
|
|
153
|
+
expect(result?.response).toEqual(response);
|
|
154
|
+
});
|
|
155
|
+
it("getCustomerProductCollection error", async () => {
|
|
156
|
+
const requestMock = jest
|
|
157
|
+
.fn()
|
|
158
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.failed(AlertModel.default())));
|
|
159
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
160
|
+
request: requestMock,
|
|
161
|
+
});
|
|
162
|
+
const query = {
|
|
163
|
+
page: 1,
|
|
164
|
+
per_page: 24,
|
|
165
|
+
};
|
|
166
|
+
const result = await service.getCustomerProductCollection(query).toPromise();
|
|
167
|
+
expect(requestMock).toHaveBeenCalledWith(query);
|
|
168
|
+
expect(result?.hasFailed).toBe(true);
|
|
169
|
+
expect(result?.alertModel).toBeInstanceOf(AlertModel);
|
|
170
|
+
});
|
|
171
|
+
it("createCustomerProduct success", async () => {
|
|
172
|
+
const response = {
|
|
173
|
+
data: { id: "favorite-id", productId: "product-123" },
|
|
174
|
+
};
|
|
175
|
+
const requestMock = jest
|
|
176
|
+
.fn()
|
|
177
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.succeeded(response)));
|
|
178
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
179
|
+
request: requestMock,
|
|
180
|
+
});
|
|
181
|
+
const payload = {
|
|
182
|
+
product_id: "product-123",
|
|
183
|
+
notes: "Customer note for this favorite product",
|
|
184
|
+
};
|
|
185
|
+
const result = await service.createCustomerProduct(payload).toPromise();
|
|
186
|
+
expect(requestMock).toHaveBeenCalledWith(payload);
|
|
187
|
+
expect(result?.hasSuccess).toBe(true);
|
|
188
|
+
expect(result?.response).toEqual(response);
|
|
189
|
+
});
|
|
190
|
+
it("createCustomerProduct error", async () => {
|
|
191
|
+
const requestMock = jest
|
|
192
|
+
.fn()
|
|
193
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.failed(AlertModel.default())));
|
|
194
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
195
|
+
request: requestMock,
|
|
196
|
+
});
|
|
197
|
+
const payload = {
|
|
198
|
+
product_id: "product-123",
|
|
199
|
+
notes: "Customer note for this favorite product",
|
|
200
|
+
};
|
|
201
|
+
const result = await service.createCustomerProduct(payload).toPromise();
|
|
202
|
+
expect(requestMock).toHaveBeenCalledWith(payload);
|
|
203
|
+
expect(result?.hasFailed).toBe(true);
|
|
204
|
+
expect(result?.alertModel).toBeInstanceOf(AlertModel);
|
|
205
|
+
});
|
|
206
|
+
it("removeCustomerProduct success", async () => {
|
|
207
|
+
const response = { data: { success: true } };
|
|
208
|
+
const requestMock = jest
|
|
209
|
+
.fn()
|
|
210
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.succeeded(response)));
|
|
211
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
212
|
+
request: requestMock,
|
|
213
|
+
});
|
|
214
|
+
const payload = {
|
|
215
|
+
product_id: "product-123",
|
|
216
|
+
};
|
|
217
|
+
const result = await service.removeCustomerProduct(payload).toPromise();
|
|
218
|
+
expect(requestMock).toHaveBeenCalledWith(payload);
|
|
219
|
+
expect(result?.hasSuccess).toBe(true);
|
|
220
|
+
expect(result?.response).toEqual(response);
|
|
221
|
+
});
|
|
222
|
+
it("removeCustomerProduct error", async () => {
|
|
223
|
+
const requestMock = jest
|
|
224
|
+
.fn()
|
|
225
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.failed(AlertModel.default())));
|
|
226
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
227
|
+
request: requestMock,
|
|
228
|
+
});
|
|
229
|
+
const payload = {
|
|
230
|
+
product_id: "product-123",
|
|
231
|
+
};
|
|
232
|
+
const result = await service.removeCustomerProduct(payload).toPromise();
|
|
233
|
+
expect(requestMock).toHaveBeenCalledWith(payload);
|
|
234
|
+
expect(result?.hasFailed).toBe(true);
|
|
235
|
+
expect(result?.alertModel).toBeInstanceOf(AlertModel);
|
|
236
|
+
});
|
|
237
|
+
it("updateCustomerProductNotes success", async () => {
|
|
238
|
+
const response = { data: { success: true } };
|
|
239
|
+
const requestMock = jest
|
|
240
|
+
.fn()
|
|
241
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.succeeded(response)));
|
|
242
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
243
|
+
request: requestMock,
|
|
244
|
+
});
|
|
245
|
+
const payload = {
|
|
246
|
+
product_id: "product-123",
|
|
247
|
+
notes: "Updated note for this favorite product",
|
|
248
|
+
};
|
|
249
|
+
const result = await service
|
|
250
|
+
.updateCustomerProductNotes(payload)
|
|
251
|
+
.toPromise();
|
|
252
|
+
expect(requestMock).toHaveBeenCalledWith(payload);
|
|
253
|
+
expect(result?.hasSuccess).toBe(true);
|
|
254
|
+
expect(result?.response).toEqual(response);
|
|
255
|
+
});
|
|
256
|
+
it("updateCustomerProductNotes error", async () => {
|
|
257
|
+
const requestMock = jest
|
|
258
|
+
.fn()
|
|
259
|
+
.mockReturnValue(of(NetworkingUIEventWrapped.failed(AlertModel.default())));
|
|
260
|
+
jest.spyOn(service, "provider").mockReturnValue({
|
|
261
|
+
request: requestMock,
|
|
262
|
+
});
|
|
263
|
+
const payload = {
|
|
264
|
+
product_id: "product-123",
|
|
265
|
+
notes: "Updated note for this favorite product",
|
|
266
|
+
};
|
|
267
|
+
const result = await service
|
|
268
|
+
.updateCustomerProductNotes(payload)
|
|
269
|
+
.toPromise();
|
|
270
|
+
expect(requestMock).toHaveBeenCalledWith(payload);
|
|
271
|
+
expect(result?.hasFailed).toBe(true);
|
|
272
|
+
expect(result?.alertModel).toBeInstanceOf(AlertModel);
|
|
273
|
+
});
|
|
100
274
|
});
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import "fake-indexeddb/auto";
|