@smess/networking 1.0.25 → 1.0.28

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 (91) hide show
  1. package/dist/index.d.ts +2 -0
  2. package/dist/index.js +2 -0
  3. package/dist/services/customer.service.d.ts +157 -1
  4. package/dist/services/customer.service.js +35 -0
  5. package/dist/services/customer.service.test.js +330 -0
  6. package/dist/services/store.product.service.d.ts +1 -0
  7. package/package.json +1 -1
  8. package/dist/scripts/dev-test.d.ts +0 -1
  9. package/dist/scripts/dev-test.js +0 -803
  10. package/dist/scripts/real-test.d.ts +0 -1
  11. package/dist/scripts/real-test.js +0 -341
  12. package/dist/src/core/axios.d.ts +0 -51
  13. package/dist/src/core/axios.js +0 -65
  14. package/dist/src/core/axios.observable.d.ts +0 -11
  15. package/dist/src/core/axios.observable.js +0 -58
  16. package/dist/src/core/base.provider.advanced.test.d.ts +0 -1
  17. package/dist/src/core/base.provider.advanced.test.js +0 -29
  18. package/dist/src/core/base.provider.d.ts +0 -15
  19. package/dist/src/core/base.provider.js +0 -13
  20. package/dist/src/core/base.provider.test.d.ts +0 -1
  21. package/dist/src/core/base.provider.test.js +0 -36
  22. package/dist/src/core/base.service.wrapper.advanced.test.d.ts +0 -1
  23. package/dist/src/core/base.service.wrapper.advanced.test.js +0 -39
  24. package/dist/src/core/base.service.wrapper.d.ts +0 -7
  25. package/dist/src/core/base.service.wrapper.js +0 -11
  26. package/dist/src/core/base.service.wrapper.test.d.ts +0 -1
  27. package/dist/src/core/base.service.wrapper.test.js +0 -25
  28. package/dist/src/core/rx.http.service.d.ts +0 -51
  29. package/dist/src/core/rx.http.service.js +0 -65
  30. package/dist/src/index.d.ts +0 -19
  31. package/dist/src/index.js +0 -23
  32. package/dist/src/services/auth.service.d.ts +0 -65
  33. package/dist/src/services/auth.service.js +0 -197
  34. package/dist/src/services/auth.service.test.d.ts +0 -1
  35. package/dist/src/services/auth.service.test.js +0 -334
  36. package/dist/src/services/cache.service.d.ts +0 -31
  37. package/dist/src/services/cache.service.js +0 -77
  38. package/dist/src/services/cache.service.test.d.ts +0 -1
  39. package/dist/src/services/cache.service.test.js +0 -88
  40. package/dist/src/services/customer.service.d.ts +0 -71
  41. package/dist/src/services/customer.service.js +0 -114
  42. package/dist/src/services/customer.service.test.d.ts +0 -1
  43. package/dist/src/services/customer.service.test.js +0 -274
  44. package/dist/src/services/logger.service.d.ts +0 -31
  45. package/dist/src/services/logger.service.js +0 -93
  46. package/dist/src/services/logger.service.test.d.ts +0 -1
  47. package/dist/src/services/logger.service.test.js +0 -31
  48. package/dist/src/services/order.service.d.ts +0 -73
  49. package/dist/src/services/order.service.js +0 -97
  50. package/dist/src/services/order.service.test.d.ts +0 -1
  51. package/dist/src/services/order.service.test.js +0 -163
  52. package/dist/src/services/product.service.d.ts +0 -21
  53. package/dist/src/services/product.service.js +0 -42
  54. package/dist/src/services/product.service.test.d.ts +0 -1
  55. package/dist/src/services/product.service.test.js +0 -61
  56. package/dist/src/services/smess.service.d.ts +0 -36
  57. package/dist/src/services/smess.service.js +0 -128
  58. package/dist/src/services/smess.service.test.d.ts +0 -1
  59. package/dist/src/services/smess.service.test.js +0 -103
  60. package/dist/src/services/store.cart.service.d.ts +0 -158
  61. package/dist/src/services/store.cart.service.js +0 -177
  62. package/dist/src/services/store.cart.service.test.d.ts +0 -1
  63. package/dist/src/services/store.cart.service.test.js +0 -394
  64. package/dist/src/services/store.product.service.d.ts +0 -123
  65. package/dist/src/services/store.product.service.js +0 -102
  66. package/dist/src/services/store.product.service.test.d.ts +0 -1
  67. package/dist/src/services/store.product.service.test.js +0 -319
  68. package/dist/src/services/store.service.d.ts +0 -79
  69. package/dist/src/services/store.service.js +0 -235
  70. package/dist/src/services/store.service.test.d.ts +0 -1
  71. package/dist/src/services/store.service.test.js +0 -274
  72. package/dist/src/services/user.service.d.ts +0 -16
  73. package/dist/src/services/user.service.js +0 -37
  74. package/dist/src/services/user.service.test.d.ts +0 -1
  75. package/dist/src/services/user.service.test.js +0 -52
  76. package/dist/src/types/types.d.ts +0 -93
  77. package/dist/src/types/types.js +0 -82
  78. package/dist/src/types/types.test.d.ts +0 -1
  79. package/dist/src/types/types.test.js +0 -25
  80. package/dist/src/utils/cache-import.d.ts +0 -3
  81. package/dist/src/utils/cache-import.js +0 -2
  82. package/dist/src/utils/networking-import.d.ts +0 -4
  83. package/dist/src/utils/networking-import.js +0 -3
  84. package/dist/src/utils/rxjs-import.d.ts +0 -5
  85. package/dist/src/utils/rxjs-import.js +0 -5
  86. /package/dist/{src/services → services}/employee.service.d.ts +0 -0
  87. /package/dist/{src/services → services}/employee.service.js +0 -0
  88. /package/dist/{src/services → services}/employee.service.test.d.ts +0 -0
  89. /package/dist/{src/services → services}/employee.service.test.js +0 -0
  90. /package/dist/{src/services → services}/utils/withAuthReset.d.ts +0 -0
  91. /package/dist/{src/services → services}/utils/withAuthReset.js +0 -0
@@ -1,114 +0,0 @@
1
- import { Accept, SMESSHeader, SmessService } from "./smess.service";
2
- export class CustomerProvider {
3
- constructor(config, target, $authToken) {
4
- this.config = config;
5
- this.target = target;
6
- this.$authToken = $authToken;
7
- }
8
- get baseURL() {
9
- return this.config.version
10
- ? `${this.config.baseUrl}/${this.config.version}`
11
- : this.config.baseUrl;
12
- }
13
- get path() {
14
- switch (this.target) {
15
- case "register":
16
- return "/authentication/customer/register";
17
- case "get-profile":
18
- return "/authentication/customer/get-profile";
19
- case "update-profile":
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";
31
- default:
32
- return "/authentication/customer";
33
- }
34
- }
35
- get method() {
36
- switch (this.target) {
37
- case "get-profile":
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";
49
- case "update-profile":
50
- return "PUT";
51
- default:
52
- return "POST";
53
- }
54
- }
55
- get headers() {
56
- let headers = SmessService.getHeaders(Accept.V1, this.$authToken.value);
57
- switch (this.target) {
58
- case "register":
59
- headers = SmessService.getHeaders(Accept.V1);
60
- break;
61
- default:
62
- headers = SmessService.getHeaders(Accept.V1, this.$authToken.value);
63
- }
64
- if (this.config.clientId) {
65
- headers[SMESSHeader.ClientId] = this.config.clientId;
66
- }
67
- if (this.config.apiKey) {
68
- headers[SMESSHeader.ApiKey] = this.config.apiKey;
69
- }
70
- return SmessService.filterHeaders(headers);
71
- }
72
- getPath(...queryParams) {
73
- let definedPath = this.path;
74
- const params = definedPath.match(/\$\{(.+?)\}/g);
75
- params?.forEach((value, index) => {
76
- definedPath = definedPath.replace(value, String(queryParams[index]));
77
- });
78
- return definedPath;
79
- }
80
- }
81
- export class CustomerService {
82
- constructor(config, $authToken) {
83
- this.config = config;
84
- this.$authToken = $authToken;
85
- }
86
- provider(target) {
87
- const targetWrapper = new CustomerProvider(this.config, target, this.$authToken);
88
- return new SmessService(targetWrapper);
89
- }
90
- register(payload) {
91
- return this.provider("register").request(payload);
92
- }
93
- getProfile() {
94
- return this.provider("get-profile").request();
95
- }
96
- updateProfile(payload) {
97
- return this.provider("update-profile").request(payload);
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
- }
114
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,274 +0,0 @@
1
- import { CustomerService, } from "./customer.service";
2
- import { NetworkingUIEventWrapped, AlertModel, } from "../types/types";
3
- import { of, BehaviorSubject } from "rxjs";
4
- describe("CustomerService", () => {
5
- const config = {
6
- baseUrl: "https://api.example.com",
7
- isProd: false,
8
- clientId: "test-client-id",
9
- apiKey: "test-api-key",
10
- };
11
- let service;
12
- let $authToken;
13
- beforeEach(() => {
14
- $authToken = new BehaviorSubject(null);
15
- service = new CustomerService(config, $authToken);
16
- });
17
- it("register success", async () => {
18
- const payload = {
19
- email: "test@example.com",
20
- password: "pass",
21
- };
22
- const response = {
23
- data: { id: 1, email: "test@example.com" },
24
- };
25
- jest.spyOn(service, "provider").mockReturnValue({
26
- request: () => of(NetworkingUIEventWrapped.succeeded(response)),
27
- });
28
- const result = await service.register(payload).toPromise();
29
- expect(result?.hasSuccess).toBe(true);
30
- expect(result?.response).toEqual(response);
31
- });
32
- it("register error", async () => {
33
- const payload = {
34
- email: "test@example.com",
35
- password: "pass",
36
- };
37
- jest.spyOn(service, "provider").mockReturnValue({
38
- request: () => of(NetworkingUIEventWrapped.failed(AlertModel.default())),
39
- });
40
- const result = await service.register(payload).toPromise();
41
- expect(result?.hasFailed).toBe(true);
42
- expect(result?.alertModel).toBeInstanceOf(AlertModel);
43
- });
44
- it("getProfile success", async () => {
45
- const response = {
46
- data: { id: 1, email: "test@example.com" },
47
- };
48
- jest.spyOn(service, "provider").mockReturnValue({
49
- request: () => of(NetworkingUIEventWrapped.succeeded(response)),
50
- });
51
- const result = await service.getProfile().toPromise();
52
- expect(result?.hasSuccess).toBe(true);
53
- expect(result?.response).toEqual(response);
54
- });
55
- it("getProfile error", async () => {
56
- jest.spyOn(service, "provider").mockReturnValue({
57
- request: () => of(NetworkingUIEventWrapped.failed(AlertModel.default())),
58
- });
59
- const result = await service.getProfile().toPromise();
60
- expect(result?.hasFailed).toBe(true);
61
- expect(result?.alertModel).toBeInstanceOf(AlertModel);
62
- });
63
- it("updateProfile success", async () => {
64
- const payload = {
65
- name: "Test",
66
- address: "123 Main St",
67
- postal_code: "12345",
68
- city: "City",
69
- state: null,
70
- country: null,
71
- contact_email: null,
72
- phone_number: null,
73
- };
74
- const response = { data: { id: 1, name: "Test" } };
75
- jest.spyOn(service, "provider").mockReturnValue({
76
- request: () => of(NetworkingUIEventWrapped.succeeded(response)),
77
- });
78
- const result = await service.updateProfile(payload).toPromise();
79
- expect(result?.hasSuccess).toBe(true);
80
- expect(result?.response).toEqual(response);
81
- });
82
- it("updateProfile error", async () => {
83
- const payload = {
84
- name: "Test",
85
- address: "123 Main St",
86
- postal_code: "12345",
87
- city: "City",
88
- state: null,
89
- country: null,
90
- contact_email: null,
91
- phone_number: null,
92
- };
93
- jest.spyOn(service, "provider").mockReturnValue({
94
- request: () => of(NetworkingUIEventWrapped.failed(AlertModel.default())),
95
- });
96
- const result = await service.updateProfile(payload).toPromise();
97
- expect(result?.hasFailed).toBe(true);
98
- expect(result?.alertModel).toBeInstanceOf(AlertModel);
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
- });
274
- });
@@ -1,31 +0,0 @@
1
- export declare enum LogLevel {
2
- DEBUG = 0,
3
- INFO = 1,
4
- WARN = 2,
5
- ERROR = 3,
6
- NONE = 4
7
- }
8
- export interface LogEntry {
9
- level: LogLevel;
10
- message: string;
11
- data?: unknown;
12
- timestamp: number;
13
- context?: string;
14
- }
15
- export declare class LoggerService {
16
- private currentLevel;
17
- private logs;
18
- private maxLogs;
19
- setLogLevel(level: LogLevel): void;
20
- private shouldLog;
21
- private formatMessage;
22
- private getEmojiForLevel;
23
- private log;
24
- debug(message: string, data?: unknown, context?: string): void;
25
- info(message: string, data?: unknown, context?: string): void;
26
- warn(message: string, data?: unknown, context?: string): void;
27
- error(message: string, data?: unknown, context?: string): void;
28
- getLogs(): LogEntry[];
29
- clearLogs(): void;
30
- }
31
- export declare const $logger: LoggerService;
@@ -1,93 +0,0 @@
1
- export var LogLevel;
2
- (function (LogLevel) {
3
- LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG";
4
- LogLevel[LogLevel["INFO"] = 1] = "INFO";
5
- LogLevel[LogLevel["WARN"] = 2] = "WARN";
6
- LogLevel[LogLevel["ERROR"] = 3] = "ERROR";
7
- LogLevel[LogLevel["NONE"] = 4] = "NONE";
8
- })(LogLevel || (LogLevel = {}));
9
- export class LoggerService {
10
- constructor() {
11
- this.currentLevel = LogLevel.DEBUG;
12
- this.logs = [];
13
- this.maxLogs = 1000;
14
- }
15
- setLogLevel(level) {
16
- this.currentLevel = level;
17
- }
18
- shouldLog(level) {
19
- return level >= this.currentLevel;
20
- }
21
- formatMessage(level, message, context) {
22
- const emoji = this.getEmojiForLevel(level);
23
- const levelName = LogLevel[level];
24
- const contextStr = context ? ` [${context}]` : "";
25
- return `${emoji} ${levelName}${contextStr}: ${message}`;
26
- }
27
- getEmojiForLevel(level) {
28
- switch (level) {
29
- case LogLevel.DEBUG:
30
- return "🔍";
31
- case LogLevel.INFO:
32
- return "ℹ️";
33
- case LogLevel.WARN:
34
- return "⚠️";
35
- case LogLevel.ERROR:
36
- return "❌";
37
- default:
38
- return "📝";
39
- }
40
- }
41
- log(level, message, data, context) {
42
- if (!this.shouldLog(level))
43
- return;
44
- const logEntry = {
45
- level,
46
- message,
47
- data,
48
- timestamp: Date.now(),
49
- context,
50
- };
51
- // Store log entry
52
- this.logs.push(logEntry);
53
- if (this.logs.length > this.maxLogs) {
54
- this.logs.shift();
55
- }
56
- // Console output
57
- const formattedMessage = this.formatMessage(level, message, context);
58
- switch (level) {
59
- case LogLevel.DEBUG:
60
- console.debug(formattedMessage, data || "");
61
- break;
62
- case LogLevel.INFO:
63
- console.info(formattedMessage, data || "");
64
- break;
65
- case LogLevel.WARN:
66
- console.warn(formattedMessage, data || "");
67
- break;
68
- case LogLevel.ERROR:
69
- console.error(formattedMessage, data || "");
70
- break;
71
- }
72
- }
73
- debug(message, data, context) {
74
- this.log(LogLevel.DEBUG, message, data, context);
75
- }
76
- info(message, data, context) {
77
- this.log(LogLevel.INFO, message, data, context);
78
- }
79
- warn(message, data, context) {
80
- this.log(LogLevel.WARN, message, data, context);
81
- }
82
- error(message, data, context) {
83
- this.log(LogLevel.ERROR, message, data, context);
84
- }
85
- getLogs() {
86
- return [...this.logs];
87
- }
88
- clearLogs() {
89
- this.logs = [];
90
- }
91
- }
92
- // Export singleton instance
93
- export const $logger = new LoggerService();
@@ -1 +0,0 @@
1
- export {};
@@ -1,31 +0,0 @@
1
- import { $logger, LogLevel } from "./logger.service";
2
- describe("LoggerService", () => {
3
- beforeEach(() => {
4
- $logger.clearLogs();
5
- $logger.setLogLevel(LogLevel.DEBUG);
6
- });
7
- it("should log info", () => {
8
- $logger.info("info message", { foo: 1 }, "test");
9
- const logs = $logger.getLogs();
10
- expect(logs[0].level).toBe(LogLevel.INFO);
11
- expect(logs[0].message).toBe("info message");
12
- expect(logs[0].data).toEqual({ foo: 1 });
13
- expect(logs[0].context).toBe("test");
14
- });
15
- it("should log warn and error", () => {
16
- $logger.warn("warn message");
17
- $logger.error("error message", { bar: 2 });
18
- const logs = $logger.getLogs();
19
- expect(logs[0].level).toBe(LogLevel.WARN);
20
- expect(logs[1].level).toBe(LogLevel.ERROR);
21
- expect(logs[1].data).toEqual({ bar: 2 });
22
- });
23
- it("should respect log level", () => {
24
- $logger.setLogLevel(LogLevel.ERROR);
25
- $logger.info("should not log");
26
- $logger.error("should log");
27
- const logs = $logger.getLogs();
28
- expect(logs.length).toBe(1);
29
- expect(logs[0].level).toBe(LogLevel.ERROR);
30
- });
31
- });
@@ -1,73 +0,0 @@
1
- import { ProviderType, NetworkingConfig, NetworkingUIEventWrapped, HttpResponse } from "../types/types";
2
- import { SmessService } from "./smess.service";
3
- import { BehaviorSubject, Observable } from "rxjs";
4
- export type OrderTarget = "order-list" | "order-create" | "order-delete" | "order-get-draft" | "order-update" | "order-get" | "order-collection";
5
- export interface CreateOrderRequest extends UpdateOrderRequest {
6
- }
7
- export interface UpdateOrderRequest {
8
- external_id?: string;
9
- order_date: string;
10
- type?: string;
11
- status?: string;
12
- payment_status?: string;
13
- delivery_note?: string;
14
- delivery_fee?: number;
15
- delivery_address?: string;
16
- payment_method?: string;
17
- payment_period?: string;
18
- discount_in_percent?: number;
19
- due_payment_amount?: number;
20
- total_gst?: number;
21
- total_exclude_gst?: number;
22
- total_include_gst?: number;
23
- order_items: OrderItemRequest[];
24
- }
25
- export interface OrderItemRequest {
26
- product_name: string;
27
- product_category: string;
28
- supplier?: string;
29
- supplier_code?: string;
30
- supplier_item_name?: string;
31
- unit: string;
32
- quantity: number;
33
- price_include_taxes: number;
34
- vat_in_percent: number;
35
- discount_in_percent?: number;
36
- page_number?: number;
37
- item_row_in_page?: number;
38
- }
39
- export interface OrderCollectionRequest {
40
- page?: number;
41
- per_page?: number;
42
- search?: string;
43
- status?: string;
44
- payment_status?: string;
45
- order_date_from?: string;
46
- order_date_to?: string;
47
- sort_by?: string;
48
- sort_order?: 'asc' | 'desc';
49
- }
50
- export declare class OrderProvider implements ProviderType {
51
- private readonly config;
52
- private readonly target;
53
- private readonly $authToken;
54
- constructor(config: NetworkingConfig, target: OrderTarget, $authToken: BehaviorSubject<string | null>);
55
- get baseURL(): string;
56
- get path(): string;
57
- get method(): string;
58
- get headers(): Record<string, string>;
59
- getPath(...queryParams: unknown[]): string;
60
- }
61
- export declare class OrderService {
62
- private readonly config;
63
- private readonly $authToken;
64
- constructor(config: NetworkingConfig, $authToken: BehaviorSubject<string | null>);
65
- provider(target: OrderTarget): SmessService<OrderProvider>;
66
- list(): Observable<NetworkingUIEventWrapped<HttpResponse>>;
67
- create(payload: CreateOrderRequest): Observable<NetworkingUIEventWrapped<HttpResponse>>;
68
- delete(id: string): Observable<NetworkingUIEventWrapped<HttpResponse>>;
69
- getDraft(): Observable<NetworkingUIEventWrapped<HttpResponse>>;
70
- update(id: string, payload: UpdateOrderRequest): Observable<NetworkingUIEventWrapped<HttpResponse>>;
71
- get(id: string): Observable<NetworkingUIEventWrapped<HttpResponse>>;
72
- collection(payload: OrderCollectionRequest): Observable<NetworkingUIEventWrapped<HttpResponse>>;
73
- }