jpf 5.0.28 → 5.0.30

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.
@@ -1,11 +1,12 @@
1
- export type ResponseType = "void" | "json" | "blob" | "arrayBuffer";
2
- export interface IResponseHanderResult {
1
+ type ResponseType = "void" | "json" | "blob" | "arrayBuffer";
2
+ interface IResponseHanderResult {
3
3
  handled: boolean;
4
4
  value: any;
5
5
  }
6
6
  export declare function setIsTestRun(value: boolean): void;
7
7
  export declare function setTestSecret(secret: string): void;
8
8
  export declare function setTestUserId(userId: number): void;
9
- export declare function initialize(preFetchHandler?: (input: RequestInfo, data: any, authorized: boolean, responseType: ResponseType, init: RequestInit) => Promise<boolean>, responseHandler?: (input: RequestInfo, data: any, authorized: boolean, responseType: ResponseType, init: RequestInit, response: Response) => Promise<IResponseHanderResult>): void;
10
- export declare function get(input: RequestInfo, authorized: boolean, responseType: ResponseType, init?: RequestInit): Promise<any>;
9
+ export declare function initialize(preFetchHandler?: (info: RequestInfo, init: RequestInit, authorized: boolean, responseType: ResponseType, data: any) => Promise<boolean>, customResponseHandler?: (info: RequestInfo, init: RequestInit, authorized: boolean, responseType: ResponseType, data: any, response: Response) => Promise<IResponseHanderResult>): void;
10
+ export declare function get(info: RequestInfo, authorized: boolean, responseType: ResponseType, init?: RequestInit): Promise<any>;
11
11
  export declare function post(input: RequestInfo, data: any, authorized: boolean, responseType: ResponseType, init: RequestInit): Promise<any>;
12
+ export {};
@@ -12,45 +12,29 @@ export function setTestUserId(userId) {
12
12
  testUserId = userId;
13
13
  }
14
14
  let preFetch;
15
- let alternativeResponseHandler;
16
- export function initialize(preFetchHandler, responseHandler) {
15
+ let responseHandler;
16
+ export function initialize(preFetchHandler, customResponseHandler) {
17
17
  preFetch = preFetchHandler;
18
- alternativeResponseHandler = responseHandler;
18
+ responseHandler = customResponseHandler;
19
19
  }
20
- export async function get(input, authorized, responseType, init) {
21
- if (!init) {
22
- init = {};
23
- }
24
- if (preFetch) {
25
- var canFetch = await preFetch(input, null, authorized, responseType, init);
26
- if (!canFetch) {
27
- return null;
28
- }
29
- }
30
- await setGetInitValues(init, authorized, responseType);
31
- const response = await fetch(input, init);
32
- if (alternativeResponseHandler) {
33
- var result = await alternativeResponseHandler(input, null, authorized, responseType, init, response);
34
- if (result.handled) {
35
- return result.value;
36
- }
37
- }
38
- return await getResponseValue(response, responseType);
20
+ export async function get(info, authorized, responseType, init) {
21
+ init = getRequestInit(init, authorized, responseType);
22
+ return executeFetch(info, init, authorized, responseType, null);
39
23
  }
40
24
  export async function post(input, data, authorized, responseType, init) {
41
- if (!init) {
42
- init = {};
43
- }
25
+ init = postRequestInit(init, authorized, responseType, data);
26
+ return executeFetch(input, init, authorized, responseType, data);
27
+ }
28
+ async function executeFetch(info, init, authorized, responseType, data) {
44
29
  if (preFetch) {
45
- var canFetch = await preFetch(input, null, authorized, responseType, init);
30
+ var canFetch = await preFetch(info, init, authorized, responseType, data);
46
31
  if (!canFetch) {
47
32
  return null;
48
33
  }
49
34
  }
50
- await setPostInitValues(init, authorized, responseType, data);
51
- const response = await fetch(input, init);
52
- if (alternativeResponseHandler) {
53
- var result = await alternativeResponseHandler(input, null, authorized, responseType, init, response);
35
+ const response = await fetch(info, init);
36
+ if (responseHandler) {
37
+ var result = await responseHandler(info, null, authorized, responseType, init, response);
54
38
  if (result.handled) {
55
39
  return result.value;
56
40
  }
@@ -102,11 +86,21 @@ async function getResponseValue(response, responseType) {
102
86
  }
103
87
  throw new Error(errorMessage);
104
88
  }
105
- async function setGetInitValues(init, authorized, responseType) {
106
- await setHeaders(init, authorized, responseType);
89
+ function getRequestInit(init, authorized, responseType) {
90
+ if (!init) {
91
+ init = {};
92
+ }
93
+ setHeaders(init, authorized, responseType);
94
+ if (!init.method) {
95
+ init.method = "GET";
96
+ }
97
+ return init;
107
98
  }
108
- async function setPostInitValues(init, authorized, responseType, data) {
109
- await setHeaders(init, authorized, responseType);
99
+ function postRequestInit(init, authorized, responseType, data) {
100
+ if (!init) {
101
+ init = {};
102
+ }
103
+ setHeaders(init, authorized, responseType);
110
104
  if (!init.method) {
111
105
  init.method = "POST";
112
106
  }
@@ -142,8 +136,9 @@ async function setPostInitValues(init, authorized, responseType, data) {
142
136
  init.body = JSON.stringify(data);
143
137
  }
144
138
  }
139
+ return init;
145
140
  }
146
- async function setHeaders(init, authorized, responsetype) {
141
+ function setHeaders(init, authorized, responsetype) {
147
142
  if (!init.headers) {
148
143
  init.headers = {};
149
144
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/utilities/fetch/fetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/utilities/fetch/fetch.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jpf",
3
- "version": "5.0.28",
3
+ "version": "5.0.30",
4
4
  "description": "Javascript Presentation Foundation base classes and interfaces",
5
5
  "keywords": [
6
6
  "mvvm",
@@ -1,8 +1,8 @@
1
1
  import { newGuid } from "../uniqueId/uniqueId";
2
2
 
3
- export type ResponseType = "void" | "json" | "blob" | "arrayBuffer";
3
+ type ResponseType = "void" | "json" | "blob" | "arrayBuffer";
4
4
 
5
- export interface IResponseHanderResult {
5
+ interface IResponseHanderResult {
6
6
  handled: boolean;
7
7
  value: any;
8
8
  }
@@ -27,77 +27,60 @@ export function setTestUserId(userId: number) {
27
27
  testUserId = userId;
28
28
  }
29
29
 
30
- let preFetch: (input: RequestInfo, data: any, authorized: boolean, responseType: ResponseType, init: RequestInit) => Promise<boolean>;
31
- let alternativeResponseHandler: (input: RequestInfo, data: any, authorized: boolean, responseType: ResponseType, init: RequestInit, response: Response) => Promise<IResponseHanderResult>;
30
+ let preFetch: (info: RequestInfo, init: RequestInit, authorized: boolean, responseType: ResponseType, data: any) => Promise<boolean>;
31
+ let responseHandler: (info: RequestInfo, init: RequestInit, authorized: boolean, responseType: ResponseType, data: any, response: Response) => Promise<IResponseHanderResult>;
32
32
 
33
33
  export function initialize(
34
- preFetchHandler?: (input: RequestInfo, data: any, authorized: boolean, responseType: ResponseType, init: RequestInit) => Promise<boolean>,
35
- responseHandler?: (input: RequestInfo, data: any, authorized: boolean, responseType: ResponseType, init: RequestInit, response: Response) => Promise<IResponseHanderResult>
34
+ preFetchHandler?: (info: RequestInfo, init: RequestInit, authorized: boolean, responseType: ResponseType, data: any) => Promise<boolean>,
35
+ customResponseHandler?: (info: RequestInfo, init: RequestInit, authorized: boolean, responseType: ResponseType, data: any, response: Response) => Promise<IResponseHanderResult>
36
36
  ) {
37
37
  preFetch = preFetchHandler;
38
- alternativeResponseHandler = responseHandler;
38
+ responseHandler = customResponseHandler;
39
39
  }
40
40
 
41
- export async function get(input: RequestInfo, authorized: boolean, responseType: ResponseType, init?: RequestInit): Promise<any> {
42
- if (!init) {
43
- init = {}
44
- }
45
-
46
- if (preFetch) {
47
- var canFetch = await preFetch(input, null, authorized, responseType, init);
48
- if (!canFetch) {
49
- //Abort the fetch
50
- return null;
51
- }
52
- }
53
-
54
- await setGetInitValues(init, authorized, responseType);
41
+ export async function get(info: RequestInfo, authorized: boolean, responseType: ResponseType, init?: RequestInit): Promise<any> {
42
+ //Get a RequestInit for a GET request
43
+ init = getRequestInit(init, authorized, responseType);
55
44
 
56
- const response = await fetch(input, init);
57
-
58
- if (alternativeResponseHandler) {
59
- //Execute the alternative response handler
60
- var result = await alternativeResponseHandler(input, null, authorized, responseType, init, response);
61
-
62
- //Check if the response was handled
63
- if (result.handled) {
64
- //Return the value from the alternative response handler
65
- return result.value;
66
- }
67
- }
68
-
69
- return await getResponseValue(response, responseType);
45
+ return executeFetch(info, init, authorized, responseType, null);
70
46
  }
71
47
 
72
48
  export async function post(input: RequestInfo, data: any, authorized: boolean, responseType: ResponseType, init: RequestInit): Promise<any> {
73
- if (!init) {
74
- init = {};
75
- }
49
+ //Get a RequestInit for a POST request
50
+ init = postRequestInit(init, authorized, responseType, data);
76
51
 
52
+ return executeFetch(input, init, authorized, responseType, data);
53
+ }
54
+
55
+ async function executeFetch(info: RequestInfo, init: RequestInit, authorized: boolean, responseType: ResponseType, data: any): Promise<any> {
56
+ //Check if the preFetch handler is set
77
57
  if (preFetch) {
78
- var canFetch = await preFetch(input, null, authorized, responseType, init);
58
+
59
+ //Execute the preFetch handler to find out if we can proceed with the fetch
60
+ var canFetch = await preFetch(info, init, authorized, responseType, data);
79
61
  if (!canFetch) {
80
62
  //Abort the fetch
81
63
  return null;
82
64
  }
83
65
  }
84
66
 
85
- await setPostInitValues(init, authorized, responseType, data);
67
+ //Execute the fetch
68
+ const response = await fetch(info, init);
86
69
 
87
- const response = await fetch(input, init);
88
70
 
89
-
90
- if (alternativeResponseHandler) {
91
- //Execute the alternative response handler
92
- var result = await alternativeResponseHandler(input, null, authorized, responseType, init, response);
71
+ //Check if a custom response handler is set
72
+ if (responseHandler) {
73
+ //Execute the custom response handler
74
+ var result = await responseHandler(info, null, authorized, responseType, init, response);
93
75
 
94
76
  //Check if the response was handled
95
77
  if (result.handled) {
96
- //Return the value from the alternative response handler
78
+ //Return the value from the custom response handler
97
79
  return result.value;
98
80
  }
99
81
  }
100
82
 
83
+ //Execute the default response handler
101
84
  return await getResponseValue(response, responseType);
102
85
  }
103
86
 
@@ -160,12 +143,27 @@ async function getResponseValue(response: Response, responseType: ResponseType):
160
143
  throw new Error(errorMessage);
161
144
  }
162
145
 
163
- async function setGetInitValues(init: RequestInit, authorized: boolean, responseType: ResponseType) {
164
- await setHeaders(init, authorized, responseType);
146
+ function getRequestInit(init: RequestInit, authorized: boolean, responseType: ResponseType): RequestInit {
147
+ if (!init) {
148
+ init = {}
149
+ }
150
+
151
+ setHeaders(init, authorized, responseType);
152
+
153
+ if (!init.method) {
154
+ init.method = "GET";
155
+ }
156
+
157
+ return init;
165
158
  }
166
159
 
167
- async function setPostInitValues(init: RequestInit, authorized: boolean, responseType: ResponseType, data: any,) {
168
- await setHeaders(init, authorized, responseType);
160
+ function postRequestInit(init: RequestInit, authorized: boolean, responseType: ResponseType, data: any): RequestInit {
161
+ if (!init) {
162
+ init = {};
163
+ }
164
+
165
+ setHeaders(init, authorized, responseType);
166
+
169
167
  if (!init.method) {
170
168
  init.method = "POST";
171
169
  }
@@ -200,9 +198,11 @@ async function setPostInitValues(init: RequestInit, authorized: boolean, respons
200
198
  init.body = JSON.stringify(data);
201
199
  }
202
200
  }
201
+
202
+ return init;
203
203
  }
204
204
 
205
- async function setHeaders(init: RequestInit, authorized: boolean, responsetype: ResponseType): Promise<void> {
205
+ function setHeaders(init: RequestInit, authorized: boolean, responsetype: ResponseType): void {
206
206
  if (!init.headers) {
207
207
  init.headers = {};
208
208
  }