@venizia/ardor-kernel 0.1.1-0

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 (139) hide show
  1. package/LICENSE.md +97 -0
  2. package/README.md +30 -0
  3. package/dist/base/applications/abstract.d.ts +21 -0
  4. package/dist/base/applications/abstract.d.ts.map +1 -0
  5. package/dist/base/applications/abstract.js +41 -0
  6. package/dist/base/applications/abstract.js.map +1 -0
  7. package/dist/base/applications/index.d.ts +2 -0
  8. package/dist/base/applications/index.d.ts.map +1 -0
  9. package/dist/base/applications/index.js +2 -0
  10. package/dist/base/applications/index.js.map +1 -0
  11. package/dist/base/decorators/api.d.ts +3 -0
  12. package/dist/base/decorators/api.d.ts.map +1 -0
  13. package/dist/base/decorators/api.js +17 -0
  14. package/dist/base/decorators/api.js.map +1 -0
  15. package/dist/base/decorators/index.d.ts +2 -0
  16. package/dist/base/decorators/index.d.ts.map +1 -0
  17. package/dist/base/decorators/index.js +2 -0
  18. package/dist/base/decorators/index.js.map +1 -0
  19. package/dist/base/index.d.ts +5 -0
  20. package/dist/base/index.d.ts.map +1 -0
  21. package/dist/base/index.js +5 -0
  22. package/dist/base/index.js.map +1 -0
  23. package/dist/base/providers/base.d.ts +6 -0
  24. package/dist/base/providers/base.d.ts.map +1 -0
  25. package/dist/base/providers/base.js +4 -0
  26. package/dist/base/providers/base.js.map +1 -0
  27. package/dist/base/providers/index.d.ts +2 -0
  28. package/dist/base/providers/index.d.ts.map +1 -0
  29. package/dist/base/providers/index.js +2 -0
  30. package/dist/base/providers/index.js.map +1 -0
  31. package/dist/base/services/api.d.ts +9 -0
  32. package/dist/base/services/api.d.ts.map +1 -0
  33. package/dist/base/services/api.js +8 -0
  34. package/dist/base/services/api.js.map +1 -0
  35. package/dist/base/services/auth.d.ts +20 -0
  36. package/dist/base/services/auth.d.ts.map +1 -0
  37. package/dist/base/services/auth.js +40 -0
  38. package/dist/base/services/auth.js.map +1 -0
  39. package/dist/base/services/base.d.ts +8 -0
  40. package/dist/base/services/base.d.ts.map +1 -0
  41. package/dist/base/services/base.js +7 -0
  42. package/dist/base/services/base.js.map +1 -0
  43. package/dist/base/services/index.d.ts +5 -0
  44. package/dist/base/services/index.d.ts.map +1 -0
  45. package/dist/base/services/index.js +5 -0
  46. package/dist/base/services/index.js.map +1 -0
  47. package/dist/base/services/network-request.d.ts +79 -0
  48. package/dist/base/services/network-request.d.ts.map +1 -0
  49. package/dist/base/services/network-request.js +383 -0
  50. package/dist/base/services/network-request.js.map +1 -0
  51. package/dist/common/constants.d.ts +92 -0
  52. package/dist/common/constants.d.ts.map +1 -0
  53. package/dist/common/constants.js +126 -0
  54. package/dist/common/constants.js.map +1 -0
  55. package/dist/common/index.d.ts +4 -0
  56. package/dist/common/index.d.ts.map +1 -0
  57. package/dist/common/index.js +4 -0
  58. package/dist/common/index.js.map +1 -0
  59. package/dist/common/keys.d.ts +17 -0
  60. package/dist/common/keys.d.ts.map +1 -0
  61. package/dist/common/keys.js +17 -0
  62. package/dist/common/keys.js.map +1 -0
  63. package/dist/common/types.d.ts +170 -0
  64. package/dist/common/types.d.ts.map +1 -0
  65. package/dist/common/types.js +2 -0
  66. package/dist/common/types.js.map +1 -0
  67. package/dist/helpers/base-helper.d.ts +8 -0
  68. package/dist/helpers/base-helper.d.ts.map +1 -0
  69. package/dist/helpers/base-helper.js +7 -0
  70. package/dist/helpers/base-helper.js.map +1 -0
  71. package/dist/helpers/index.d.ts +5 -0
  72. package/dist/helpers/index.d.ts.map +1 -0
  73. package/dist/helpers/index.js +5 -0
  74. package/dist/helpers/index.js.map +1 -0
  75. package/dist/helpers/logger.d.ts +43 -0
  76. package/dist/helpers/logger.d.ts.map +1 -0
  77. package/dist/helpers/logger.js +77 -0
  78. package/dist/helpers/logger.js.map +1 -0
  79. package/dist/helpers/networks/base-request.d.ts +42 -0
  80. package/dist/helpers/networks/base-request.d.ts.map +1 -0
  81. package/dist/helpers/networks/base-request.js +86 -0
  82. package/dist/helpers/networks/base-request.js.map +1 -0
  83. package/dist/helpers/networks/common/index.d.ts +2 -0
  84. package/dist/helpers/networks/common/index.d.ts.map +1 -0
  85. package/dist/helpers/networks/common/index.js +2 -0
  86. package/dist/helpers/networks/common/index.js.map +1 -0
  87. package/dist/helpers/networks/common/types.d.ts +5 -0
  88. package/dist/helpers/networks/common/types.d.ts.map +1 -0
  89. package/dist/helpers/networks/common/types.js +2 -0
  90. package/dist/helpers/networks/common/types.js.map +1 -0
  91. package/dist/helpers/networks/fetchers/abstract.d.ts +36 -0
  92. package/dist/helpers/networks/fetchers/abstract.d.ts.map +1 -0
  93. package/dist/helpers/networks/fetchers/abstract.js +36 -0
  94. package/dist/helpers/networks/fetchers/abstract.js.map +1 -0
  95. package/dist/helpers/networks/fetchers/axios.d.ts +19 -0
  96. package/dist/helpers/networks/fetchers/axios.d.ts.map +1 -0
  97. package/dist/helpers/networks/fetchers/axios.js +25 -0
  98. package/dist/helpers/networks/fetchers/axios.js.map +1 -0
  99. package/dist/helpers/networks/fetchers/index.d.ts +4 -0
  100. package/dist/helpers/networks/fetchers/index.d.ts.map +1 -0
  101. package/dist/helpers/networks/fetchers/index.js +4 -0
  102. package/dist/helpers/networks/fetchers/index.js.map +1 -0
  103. package/dist/helpers/networks/fetchers/node-fetch.d.ts +15 -0
  104. package/dist/helpers/networks/fetchers/node-fetch.d.ts.map +1 -0
  105. package/dist/helpers/networks/fetchers/node-fetch.js +45 -0
  106. package/dist/helpers/networks/fetchers/node-fetch.js.map +1 -0
  107. package/dist/helpers/networks/index.d.ts +4 -0
  108. package/dist/helpers/networks/index.d.ts.map +1 -0
  109. package/dist/helpers/networks/index.js +4 -0
  110. package/dist/helpers/networks/index.js.map +1 -0
  111. package/dist/helpers/socket-io-client.d.ts +37 -0
  112. package/dist/helpers/socket-io-client.d.ts.map +1 -0
  113. package/dist/helpers/socket-io-client.js +80 -0
  114. package/dist/helpers/socket-io-client.js.map +1 -0
  115. package/dist/index.d.ts +5 -0
  116. package/dist/index.d.ts.map +1 -0
  117. package/dist/index.js +5 -0
  118. package/dist/index.js.map +1 -0
  119. package/dist/utilities/boolean.d.ts +8 -0
  120. package/dist/utilities/boolean.d.ts.map +1 -0
  121. package/dist/utilities/boolean.js +35 -0
  122. package/dist/utilities/boolean.js.map +1 -0
  123. package/dist/utilities/file.d.ts +2 -0
  124. package/dist/utilities/file.d.ts.map +1 -0
  125. package/dist/utilities/file.js +9 -0
  126. package/dist/utilities/file.js.map +1 -0
  127. package/dist/utilities/index.d.ts +5 -0
  128. package/dist/utilities/index.d.ts.map +1 -0
  129. package/dist/utilities/index.js +5 -0
  130. package/dist/utilities/index.js.map +1 -0
  131. package/dist/utilities/parse.d.ts +15 -0
  132. package/dist/utilities/parse.d.ts.map +1 -0
  133. package/dist/utilities/parse.js +124 -0
  134. package/dist/utilities/parse.js.map +1 -0
  135. package/dist/utilities/url.d.ts +5 -0
  136. package/dist/utilities/url.d.ts.map +1 -0
  137. package/dist/utilities/url.js +27 -0
  138. package/dist/utilities/url.js.map +1 -0
  139. package/package.json +128 -0
@@ -0,0 +1,383 @@
1
+ import { getError } from '@venizia/ignis-inversion';
2
+ import isEmpty from 'lodash/isEmpty';
3
+ import merge from 'lodash/merge';
4
+ import { App, HeaderConsts, LocalStorageKeys, RequestBodyTypes, RequestChannel, RequestCountData, RequestMethods, RequestTypes, } from '../../common';
5
+ import { NodeFetchNetworkRequest } from '../../helpers';
6
+ import { BaseService } from './base';
7
+ const parseFilenameFromContentDisposition = (header) => {
8
+ if (!header) {
9
+ return undefined;
10
+ }
11
+ const extMatch = header.match(/filename\*\s*=\s*([^']*)'[^']*'([^;]+)/i);
12
+ if (extMatch) {
13
+ try {
14
+ return decodeURIComponent(extMatch[2].trim());
15
+ }
16
+ catch {
17
+ return extMatch[2].trim();
18
+ }
19
+ }
20
+ const quotedMatch = header.match(/filename\s*=\s*"([^"]+)"/i);
21
+ if (quotedMatch) {
22
+ return quotedMatch[1];
23
+ }
24
+ const bareMatch = header.match(/filename\s*=\s*([^;]+)/i);
25
+ if (bareMatch) {
26
+ return bareMatch[1].trim();
27
+ }
28
+ return undefined;
29
+ };
30
+ const normalizeNoAuthPathRegex = (input) => {
31
+ if (!input) {
32
+ return [];
33
+ }
34
+ const patterns = Array.isArray(input) ? input : [input];
35
+ const rs = [];
36
+ for (const pattern of patterns) {
37
+ if (!pattern) {
38
+ continue;
39
+ }
40
+ if (pattern instanceof RegExp) {
41
+ rs.push(pattern);
42
+ continue;
43
+ }
44
+ try {
45
+ rs.push(new RegExp(pattern));
46
+ }
47
+ catch {
48
+ console.error('[DefaultNetworkRequestService][normalizeNoAuthPathRegex] Invalid noAuthPathRegex pattern: %s', pattern);
49
+ }
50
+ }
51
+ return rs;
52
+ };
53
+ /** `HeadersInit` admits a `Headers` instance and a tuple list; the service keeps a plain record. */
54
+ const toHeaderRecord = (headers) => {
55
+ if (!headers) {
56
+ return {};
57
+ }
58
+ if (headers instanceof Headers) {
59
+ return Object.fromEntries(headers.entries());
60
+ }
61
+ return Array.isArray(headers) ? Object.fromEntries(headers) : headers;
62
+ };
63
+ // `FileList` exists only in a DOM; the kernel also runs in Workers and on Bun, where the bare
64
+ // identifier throws. A type guard keeps the narrowing `instanceof` gave the branch below.
65
+ const isFileList = (value) => {
66
+ return typeof FileList !== 'undefined' && value instanceof FileList;
67
+ };
68
+ export class DefaultNetworkRequestService extends BaseService {
69
+ constructor(opts) {
70
+ super({ scope: DefaultNetworkRequestService.name });
71
+ this.refreshing = null;
72
+ const { name, baseUrl = '', headers = {}, useAuth = true, noAuthPaths, noAuthPathRegex, authRecovery, } = opts;
73
+ this.headers = toHeaderRecord(headers);
74
+ this.useAuth = useAuth;
75
+ this.noAuthPaths = noAuthPaths;
76
+ this.noAuthPathRegexes = normalizeNoAuthPathRegex(noAuthPathRegex);
77
+ this.baseUrl = baseUrl;
78
+ this.authRecovery = authRecovery;
79
+ this.networkRequest = new NodeFetchNetworkRequest({
80
+ name,
81
+ networkOptions: { baseUrl, headers },
82
+ });
83
+ }
84
+ isNoAuthPath(opts) {
85
+ if (!this.useAuth) {
86
+ return true;
87
+ }
88
+ const { resource, paths } = opts;
89
+ if (resource && this.noAuthPaths?.includes(resource)) {
90
+ return true;
91
+ }
92
+ if (!this.noAuthPathRegexes.length) {
93
+ return false;
94
+ }
95
+ const candidates = [resource, paths?.join('/')].filter((el) => !!el && !isEmpty(el));
96
+ if (!candidates.length) {
97
+ return false;
98
+ }
99
+ return this.noAuthPathRegexes.some((regex) => {
100
+ return candidates.some((candidate) => {
101
+ regex.lastIndex = 0;
102
+ return regex.test(candidate);
103
+ });
104
+ });
105
+ }
106
+ setUseAuth(useAuth) {
107
+ this.useAuth = useAuth;
108
+ }
109
+ setNoAuthPaths(noAuthPaths) {
110
+ this.noAuthPaths = noAuthPaths;
111
+ }
112
+ setNoAuthPathRegex(noAuthPathRegex) {
113
+ this.noAuthPathRegexes = normalizeNoAuthPathRegex(noAuthPathRegex);
114
+ }
115
+ ensureRefreshed() {
116
+ const rec = this.authRecovery;
117
+ const refreshToken = rec?.refreshToken;
118
+ if (!rec || !refreshToken) {
119
+ return Promise.resolve(false);
120
+ }
121
+ // `Promise.resolve().then(...)` so a refreshToken that throws synchronously is a failed
122
+ // refresh (onAuthFailure, original 401) rather than an unrelated exception out of doRequest.
123
+ this.refreshing ??= Promise.resolve()
124
+ .then(() => refreshToken())
125
+ .then(() => true)
126
+ .catch(async () => {
127
+ try {
128
+ await rec.onAuthFailure?.();
129
+ }
130
+ catch {
131
+ console.error('[DefaultNetworkRequestService][ensureRefreshed] onAuthFailure callback failed');
132
+ }
133
+ return false;
134
+ })
135
+ .finally(() => {
136
+ this.refreshing = null;
137
+ });
138
+ return this.refreshing;
139
+ }
140
+ canRecover(paths) {
141
+ const rec = this.authRecovery;
142
+ if (!rec?.refreshToken) {
143
+ return false;
144
+ }
145
+ if (this.isNoAuthPath({ resource: paths?.[0], paths })) {
146
+ return false;
147
+ }
148
+ if (rec.refreshTokenPath && paths?.join('/').includes(rec.refreshTokenPath)) {
149
+ return false;
150
+ }
151
+ return true;
152
+ }
153
+ getRequestAuthorizationHeader() {
154
+ const storedToken = localStorage.getItem(LocalStorageKeys.KEY_AUTH_TOKEN);
155
+ const authToken = this.authToken ?? JSON.parse(storedToken?.length ? storedToken : '{}');
156
+ if (!authToken?.value) {
157
+ throw getError({
158
+ message: '[dataProvider][getAuthHeader] Invalid auth token to fetch!',
159
+ statusCode: 401,
160
+ });
161
+ }
162
+ return {
163
+ provider: authToken?.provider,
164
+ token: `${authToken?.type?.length ? authToken.type : 'Bearer'} ${authToken.value}`,
165
+ };
166
+ }
167
+ setAuthToken(opts) {
168
+ const { type, value } = opts;
169
+ this.authToken = { type, value };
170
+ }
171
+ setAuthRecovery(authRecovery) {
172
+ this.authRecovery = { ...this.authRecovery, ...authRecovery };
173
+ }
174
+ getAuthRecovery() {
175
+ return this.authRecovery;
176
+ }
177
+ setHeaders(headers) {
178
+ this.headers = merge(this.headers, toHeaderRecord(headers));
179
+ }
180
+ removeHeaders(keys) {
181
+ if (!keys?.length) {
182
+ return;
183
+ }
184
+ for (const key of keys) {
185
+ delete this.headers[key];
186
+ }
187
+ }
188
+ getRequestHeader(opts) {
189
+ const { resource } = opts;
190
+ const defaultHeaders = {
191
+ [HeaderConsts.TIMEZONE]: App.TIMEZONE,
192
+ [HeaderConsts.TIMEZONE_OFFSET]: `${App.TIMEZONE_OFFSET}`,
193
+ ...this.headers,
194
+ };
195
+ if (this.isNoAuthPath({ resource })) {
196
+ return defaultHeaders;
197
+ }
198
+ const authHeader = this.getRequestAuthorizationHeader();
199
+ return {
200
+ ...defaultHeaders,
201
+ [HeaderConsts.X_AUTH_PROVIDER]: authHeader.provider,
202
+ [HeaderConsts.AUTHORIZATION]: authHeader.token,
203
+ };
204
+ }
205
+ getRequestProps(params) {
206
+ const { bodyType, body, resource, restDataProviderOptions, applicationInfo, requestCountData = RequestCountData.DATA_ONLY, } = params;
207
+ const requestTracingId = restDataProviderOptions.requestTracingId;
208
+ const channel = restDataProviderOptions.requestTracingChannel?.length
209
+ ? restDataProviderOptions.requestTracingChannel
210
+ : RequestChannel.WEB;
211
+ const headers = {
212
+ ...this.getRequestHeader({ resource }),
213
+ [HeaderConsts.REQUEST_CHANNEL]: channel,
214
+ [HeaderConsts.REQUEST_COUNT_DATA]: requestCountData,
215
+ [HeaderConsts.REQUEST_TRACING_ID]: requestTracingId instanceof Function
216
+ ? requestTracingId({ applicationInfo })
217
+ : `${applicationInfo.name}_${crypto.randomUUID()}`,
218
+ };
219
+ const rs = { headers, body };
220
+ switch (bodyType) {
221
+ case RequestBodyTypes.FORM_URL_ENCODED: {
222
+ rs.headers = {
223
+ ...headers,
224
+ [HeaderConsts.CONTENT_TYPE]: 'application/x-www-form-urlencoded',
225
+ };
226
+ const encoded = new URLSearchParams();
227
+ for (const key in body) {
228
+ if (!body[key]) {
229
+ continue;
230
+ }
231
+ encoded.append(key, String(body[key]));
232
+ }
233
+ rs.body = encoded;
234
+ break;
235
+ }
236
+ case RequestBodyTypes.FORM_DATA: {
237
+ rs.headers = headers;
238
+ const formData = new FormData();
239
+ for (const key in body) {
240
+ const val = body[key];
241
+ if (!val) {
242
+ continue;
243
+ }
244
+ if (isFileList(val)) {
245
+ Array.from(val).forEach((item) => {
246
+ formData.append(key, item, item.name);
247
+ });
248
+ continue;
249
+ }
250
+ if (Array.isArray(val)) {
251
+ val.forEach((item) => {
252
+ formData.append(key, item, item.name);
253
+ });
254
+ continue;
255
+ }
256
+ formData.append(key, val, val.name);
257
+ continue;
258
+ }
259
+ rs.body = formData;
260
+ break;
261
+ }
262
+ default: {
263
+ rs.headers = {
264
+ ...headers,
265
+ [HeaderConsts.CONTENT_TYPE]: 'application/json',
266
+ };
267
+ rs.body = body;
268
+ break;
269
+ }
270
+ }
271
+ return rs;
272
+ }
273
+ convertResponse(opts) {
274
+ const { response: { data, headers }, type, requestCountData, } = opts;
275
+ switch (type) {
276
+ case RequestTypes.GET_LIST:
277
+ case RequestTypes.GET_MANY_REFERENCE: {
278
+ if (requestCountData === RequestCountData.DATA_WITH_COUNT) {
279
+ if (!('data' in data) || !('count' in data)) {
280
+ throw getError({
281
+ message: `[convertResponse] Invalid response format for requestCountData=${RequestCountData.DATA_WITH_COUNT} !`,
282
+ });
283
+ }
284
+ const dataFormatted = data;
285
+ const normalizedData = !Array.isArray(dataFormatted.data)
286
+ ? [dataFormatted.data]
287
+ : dataFormatted.data;
288
+ const contentRange = headers?.get(HeaderConsts.CONTENT_RANGE) ?? `${normalizedData.length}`;
289
+ const total = parseInt(contentRange?.split('/').pop(), 10);
290
+ return {
291
+ data: normalizedData,
292
+ count: dataFormatted?.count ?? normalizedData.length,
293
+ total,
294
+ };
295
+ }
296
+ const normalizedData = !Array.isArray(data) ? [data] : data;
297
+ const contentRange = headers?.get(HeaderConsts.CONTENT_RANGE) ?? `${normalizedData.length}`;
298
+ const total = parseInt(contentRange?.split('/').pop(), 10);
299
+ return {
300
+ data: normalizedData,
301
+ total,
302
+ };
303
+ }
304
+ default: {
305
+ if (requestCountData === RequestCountData.DATA_WITH_COUNT) {
306
+ return data;
307
+ }
308
+ const responseCount = headers?.get(HeaderConsts.RESPONSE_COUNT_DATA);
309
+ return {
310
+ data: data,
311
+ count: parseInt(responseCount, 10),
312
+ };
313
+ }
314
+ }
315
+ }
316
+ async parseResponse(opts) {
317
+ const { response: rs, type, requestCountData } = opts;
318
+ if (rs.status === 204) {
319
+ return { data: {} };
320
+ }
321
+ const contentType = (rs.headers?.get(HeaderConsts.CONTENT_TYPE) ?? '').toLowerCase();
322
+ const contentDisposition = rs.headers?.get(HeaderConsts.CONTENT_DISPOSITION) ?? '';
323
+ const isAttachment = HeaderConsts.ATTACHMENT_CONTENT_DISPOSITION_RE.test(contentDisposition);
324
+ const isTextual = contentType !== '' && HeaderConsts.TEXTUAL_CONTENT_TYPE_RE.test(contentType);
325
+ if (isAttachment || !isTextual) {
326
+ const blob = await rs.blob();
327
+ const filename = parseFilenameFromContentDisposition(contentDisposition);
328
+ return {
329
+ data: blob,
330
+ ...(filename ? { filename } : {}),
331
+ ...(contentDisposition ? { contentDisposition } : {}),
332
+ };
333
+ }
334
+ const jsonRs = await rs.json();
335
+ return this.convertResponse({
336
+ type,
337
+ requestCountData,
338
+ response: {
339
+ headers: rs.headers ?? {},
340
+ data: jsonRs,
341
+ },
342
+ });
343
+ }
344
+ async doRequest(opts) {
345
+ const { baseUrl = this.baseUrl, type, method, paths, body, headers, query, requestCountData, } = opts;
346
+ if (!baseUrl || isEmpty(baseUrl)) {
347
+ throw getError({
348
+ message: '[doRequest] Invalid baseUrl to send request!',
349
+ });
350
+ }
351
+ const url = this.networkRequest.getRequestUrl({ baseUrl, paths });
352
+ const sendOnce = (sendHeaders) => {
353
+ return this.networkRequest.getNetworkService().send({
354
+ url,
355
+ method,
356
+ params: query,
357
+ body: method === RequestMethods.GET ? undefined : body,
358
+ headers: sendHeaders,
359
+ configs: {},
360
+ });
361
+ };
362
+ let rs = await sendOnce(headers);
363
+ if (rs.status === 401 && this.canRecover(paths)) {
364
+ const isRefreshed = await this.ensureRefreshed();
365
+ if (isRefreshed) {
366
+ const authHeader = this.getRequestAuthorizationHeader();
367
+ const retryHeaders = {
368
+ ...headers,
369
+ [HeaderConsts.AUTHORIZATION]: authHeader.token,
370
+ [HeaderConsts.X_AUTH_PROVIDER]: authHeader.provider,
371
+ };
372
+ rs = await sendOnce(retryHeaders);
373
+ }
374
+ }
375
+ const status = rs.status;
376
+ if (status < 200 || status >= 300) {
377
+ const jsonRs = await rs.json();
378
+ throw jsonRs?.error ?? jsonRs;
379
+ }
380
+ return this.parseResponse({ response: rs, type, requestCountData });
381
+ }
382
+ }
383
+ //# sourceMappingURL=network-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network-request.js","sourceRoot":"","sources":["../../../src/base/services/network-request.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ export declare class App {
2
+ static readonly TIMEZONE: string;
3
+ static readonly TIMEZONE_OFFSET: number;
4
+ static readonly DEFAULT_LOCALE = "en.UTF-8";
5
+ static readonly DEFAULT_DEBOUNCE_TIME = 500;
6
+ }
7
+ export declare class Authentication {
8
+ static readonly TYPE_BASIC = "Basic";
9
+ static readonly TYPE_BEARER = "Bearer";
10
+ static readonly STRATEGY_BASIC = "basic";
11
+ static readonly STRATEGY_JWT = "jwt";
12
+ }
13
+ export declare class RequestMethods {
14
+ static readonly HEAD = "HEAD";
15
+ static readonly OPTIONS = "OPTIONS";
16
+ static readonly GET = "GET";
17
+ static readonly POST = "POST";
18
+ static readonly PUT = "PUT";
19
+ static readonly PATCH = "PATCH";
20
+ static readonly DELETE = "DELETE";
21
+ static readonly SCHEME_SET: Set<string>;
22
+ static isValid(input: string): boolean;
23
+ }
24
+ export declare class RequestTypes {
25
+ static readonly SEND = "SEND";
26
+ static readonly GET_LIST = "GET_LIST";
27
+ static readonly GET_ONE = "GET_ONE";
28
+ static readonly GET_MANY = "GET_MANY";
29
+ static readonly GET_MANY_REFERENCE = "GET_MANY_REFERENCE";
30
+ static readonly CREATE = "CREATE";
31
+ static readonly UPDATE = "UPDATE";
32
+ static readonly UPDATE_MANY = "UPDATE_MANY";
33
+ static readonly DELETE = "DELETE";
34
+ static readonly DELETE_MANY = "DELETE_MANY";
35
+ static readonly SCHEME_SET: Set<string>;
36
+ static isValid(input: string): boolean;
37
+ }
38
+ export declare class RequestBodyTypes {
39
+ static readonly NONE = "none";
40
+ static readonly FORM_DATA = "form-data";
41
+ static readonly FORM_URL_ENCODED = "x-www-form-urlencoded";
42
+ static readonly JSON = "json";
43
+ static readonly BINARY = "binary";
44
+ static readonly SCHEME_SET: Set<string>;
45
+ static isValid(input: string): boolean;
46
+ }
47
+ export declare class Environments {
48
+ static readonly DEVELOPMENT = "development";
49
+ static readonly PRODUCTION = "production";
50
+ static readonly SCHEME_SET: Set<string>;
51
+ static isValid(input: string): boolean;
52
+ }
53
+ export declare class HeaderConsts {
54
+ static readonly CONTENT_TYPE = "content-type";
55
+ /**
56
+ * content-range: <unit> <range-start>-<range-end>/<size>
57
+ * @format unit start-end/total
58
+ * - unit: Usually bytes/items/records.
59
+ * - start: The zero-indexed position of the first byte/item/record in the range.
60
+ * - end: The zero-indexed position of the last byte/item/record in the range (inclusive).
61
+ * - total: The total length of the entity body (or * if unknown).
62
+ */
63
+ static readonly CONTENT_RANGE = "content-range";
64
+ static readonly CONTENT_DISPOSITION = "content-disposition";
65
+ static readonly AUTHORIZATION = "authorization";
66
+ static readonly X_AUTH_PROVIDER = "x-auth-provider";
67
+ static readonly X_LOCALE = "x-locale";
68
+ static readonly TIMEZONE = "Timezone";
69
+ static readonly TIMEZONE_OFFSET = "Timezone-Offset";
70
+ static readonly REQUEST_TRACING_ID = "x-request-id";
71
+ static readonly REQUEST_DEVICE_INFO = "x-device-info";
72
+ static readonly REQUEST_CHANNEL = "x-request-channel";
73
+ static readonly REQUEST_COUNT_DATA = "x-request-count";
74
+ static readonly RESPONSE_COUNT_DATA = "x-response-count";
75
+ static readonly RESPONSE_FORMAT = "x-response-format";
76
+ static readonly TEXTUAL_CONTENT_TYPE_RE: RegExp;
77
+ static readonly ATTACHMENT_CONTENT_DISPOSITION_RE: RegExp;
78
+ }
79
+ export declare class RequestChannel {
80
+ static readonly WEB = "100_WEB";
81
+ }
82
+ export declare class RequestCountData {
83
+ /**
84
+ * @description Only the data is returned in the response body
85
+ */
86
+ static readonly DATA_ONLY = "0";
87
+ /**
88
+ * @description Both data and count are returned in the response body
89
+ */
90
+ static readonly DATA_WITH_COUNT = "1";
91
+ }
92
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,126 @@
1
+ export class App {
2
+ static { this.TIMEZONE = Intl.DateTimeFormat().resolvedOptions().timeZone; }
3
+ static { this.TIMEZONE_OFFSET = -(new Date().getTimezoneOffset() / 60); }
4
+ static { this.DEFAULT_LOCALE = 'en.UTF-8'; }
5
+ static { this.DEFAULT_DEBOUNCE_TIME = 500; }
6
+ }
7
+ export class Authentication {
8
+ static { this.TYPE_BASIC = 'Basic'; }
9
+ static { this.TYPE_BEARER = 'Bearer'; }
10
+ static { this.STRATEGY_BASIC = 'basic'; }
11
+ static { this.STRATEGY_JWT = 'jwt'; }
12
+ }
13
+ export class RequestMethods {
14
+ static { this.HEAD = 'HEAD'; }
15
+ static { this.OPTIONS = 'OPTIONS'; }
16
+ static { this.GET = 'GET'; }
17
+ static { this.POST = 'POST'; }
18
+ static { this.PUT = 'PUT'; }
19
+ static { this.PATCH = 'PATCH'; }
20
+ static { this.DELETE = 'DELETE'; }
21
+ static { this.SCHEME_SET = new Set([
22
+ this.HEAD,
23
+ this.OPTIONS,
24
+ this.GET,
25
+ this.POST,
26
+ this.PUT,
27
+ this.PATCH,
28
+ this.DELETE,
29
+ ]); }
30
+ static isValid(input) {
31
+ return this.SCHEME_SET.has(input);
32
+ }
33
+ }
34
+ export class RequestTypes {
35
+ static { this.SEND = 'SEND'; }
36
+ // react-admin
37
+ static { this.GET_LIST = 'GET_LIST'; }
38
+ static { this.GET_ONE = 'GET_ONE'; }
39
+ static { this.GET_MANY = 'GET_MANY'; }
40
+ static { this.GET_MANY_REFERENCE = 'GET_MANY_REFERENCE'; }
41
+ static { this.CREATE = 'CREATE'; }
42
+ static { this.UPDATE = 'UPDATE'; }
43
+ static { this.UPDATE_MANY = 'UPDATE_MANY'; }
44
+ static { this.DELETE = 'DELETE'; }
45
+ static { this.DELETE_MANY = 'DELETE_MANY'; }
46
+ static { this.SCHEME_SET = new Set([
47
+ this.SEND,
48
+ this.GET_ONE,
49
+ this.GET_LIST,
50
+ this.GET_MANY,
51
+ this.GET_MANY_REFERENCE,
52
+ this.CREATE,
53
+ this.UPDATE,
54
+ this.UPDATE_MANY,
55
+ this.DELETE,
56
+ this.DELETE_MANY,
57
+ ]); }
58
+ static isValid(input) {
59
+ return this.SCHEME_SET.has(input);
60
+ }
61
+ }
62
+ export class RequestBodyTypes {
63
+ static { this.NONE = 'none'; }
64
+ static { this.FORM_DATA = 'form-data'; }
65
+ static { this.FORM_URL_ENCODED = 'x-www-form-urlencoded'; }
66
+ static { this.JSON = 'json'; }
67
+ static { this.BINARY = 'binary'; }
68
+ static { this.SCHEME_SET = new Set([
69
+ this.NONE,
70
+ this.FORM_DATA,
71
+ this.FORM_URL_ENCODED,
72
+ this.JSON,
73
+ this.BINARY,
74
+ ]); }
75
+ static isValid(input) {
76
+ return this.SCHEME_SET.has(input);
77
+ }
78
+ }
79
+ export class Environments {
80
+ static { this.DEVELOPMENT = 'development'; }
81
+ static { this.PRODUCTION = 'production'; }
82
+ static { this.SCHEME_SET = new Set([this.DEVELOPMENT, this.PRODUCTION]); }
83
+ static isValid(input) {
84
+ return this.SCHEME_SET.has(input);
85
+ }
86
+ }
87
+ export class HeaderConsts {
88
+ static { this.CONTENT_TYPE = 'content-type'; }
89
+ /**
90
+ * content-range: <unit> <range-start>-<range-end>/<size>
91
+ * @format unit start-end/total
92
+ * - unit: Usually bytes/items/records.
93
+ * - start: The zero-indexed position of the first byte/item/record in the range.
94
+ * - end: The zero-indexed position of the last byte/item/record in the range (inclusive).
95
+ * - total: The total length of the entity body (or * if unknown).
96
+ */
97
+ static { this.CONTENT_RANGE = 'content-range'; }
98
+ static { this.CONTENT_DISPOSITION = 'content-disposition'; }
99
+ static { this.AUTHORIZATION = 'authorization'; }
100
+ static { this.X_AUTH_PROVIDER = 'x-auth-provider'; }
101
+ static { this.X_LOCALE = 'x-locale'; }
102
+ static { this.TIMEZONE = 'Timezone'; }
103
+ static { this.TIMEZONE_OFFSET = 'Timezone-Offset'; }
104
+ static { this.REQUEST_TRACING_ID = 'x-request-id'; }
105
+ static { this.REQUEST_DEVICE_INFO = 'x-device-info'; }
106
+ static { this.REQUEST_CHANNEL = 'x-request-channel'; }
107
+ static { this.REQUEST_COUNT_DATA = 'x-request-count'; }
108
+ static { this.RESPONSE_COUNT_DATA = 'x-response-count'; }
109
+ static { this.RESPONSE_FORMAT = 'x-response-format'; }
110
+ static { this.TEXTUAL_CONTENT_TYPE_RE = /^(application\/(json|.*\+json|xml|.*\+xml|x-www-form-urlencoded|javascript|graphql)|text\/)/i; }
111
+ static { this.ATTACHMENT_CONTENT_DISPOSITION_RE = /^attachment/i; }
112
+ }
113
+ export class RequestChannel {
114
+ static { this.WEB = '100_WEB'; }
115
+ }
116
+ export class RequestCountData {
117
+ /**
118
+ * @description Only the data is returned in the response body
119
+ */
120
+ static { this.DATA_ONLY = '0'; }
121
+ /**
122
+ * @description Both data and count are returned in the response body
123
+ */
124
+ static { this.DATA_WITH_COUNT = '1'; }
125
+ }
126
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;aACE,aAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;aAC5D,oBAAe,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;aACzD,mBAAc,GAAG,UAAU,CAAC;aAC5B,0BAAqB,GAAG,GAAG,CAAC;;AAG9C,MAAM,OAAO,cAAc;aACT,eAAU,GAAG,OAAO,CAAC;aACrB,gBAAW,GAAG,QAAQ,CAAC;aAEvB,mBAAc,GAAG,OAAO,CAAC;aACzB,iBAAY,GAAG,KAAK,CAAC;;AAGvC,MAAM,OAAO,cAAc;aACT,SAAI,GAAG,MAAM,CAAC;aACd,YAAO,GAAG,SAAS,CAAC;aACpB,QAAG,GAAG,KAAK,CAAC;aACZ,SAAI,GAAG,MAAM,CAAC;aACd,QAAG,GAAG,KAAK,CAAC;aACZ,UAAK,GAAG,OAAO,CAAC;aAChB,WAAM,GAAG,QAAQ,CAAC;aAElB,eAAU,GAAG,IAAI,GAAG,CAAC;QACnC,IAAI,CAAC,IAAI;QACT,IAAI,CAAC,OAAO;QACZ,IAAI,CAAC,GAAG;QACR,IAAI,CAAC,IAAI;QACT,IAAI,CAAC,GAAG;QACR,IAAI,CAAC,KAAK;QACV,IAAI,CAAC,MAAM;KACZ,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AAGH,MAAM,OAAO,YAAY;aACP,SAAI,GAAG,MAAM,CAAC;IAE9B,cAAc;aACE,aAAQ,GAAG,UAAU,CAAC;aACtB,YAAO,GAAG,SAAS,CAAC;aACpB,aAAQ,GAAG,UAAU,CAAC;aACtB,uBAAkB,GAAG,oBAAoB,CAAC;aAC1C,WAAM,GAAG,QAAQ,CAAC;aAClB,WAAM,GAAG,QAAQ,CAAC;aAClB,gBAAW,GAAG,aAAa,CAAC;aAC5B,WAAM,GAAG,QAAQ,CAAC;aAClB,gBAAW,GAAG,aAAa,CAAC;aAE5B,eAAU,GAAG,IAAI,GAAG,CAAC;QACnC,IAAI,CAAC,IAAI;QACT,IAAI,CAAC,OAAO;QACZ,IAAI,CAAC,QAAQ;QACb,IAAI,CAAC,QAAQ;QACb,IAAI,CAAC,kBAAkB;QACvB,IAAI,CAAC,MAAM;QACX,IAAI,CAAC,MAAM;QACX,IAAI,CAAC,WAAW;QAChB,IAAI,CAAC,MAAM;QACX,IAAI,CAAC,WAAW;KACjB,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AAGH,MAAM,OAAO,gBAAgB;aACX,SAAI,GAAG,MAAM,CAAC;aACd,cAAS,GAAG,WAAW,CAAC;aACxB,qBAAgB,GAAG,uBAAuB,CAAC;aAC3C,SAAI,GAAG,MAAM,CAAC;aACd,WAAM,GAAG,QAAQ,CAAC;aAElB,eAAU,GAAG,IAAI,GAAG,CAAC;QACnC,IAAI,CAAC,IAAI;QACT,IAAI,CAAC,SAAS;QACd,IAAI,CAAC,gBAAgB;QACrB,IAAI,CAAC,IAAI;QACT,IAAI,CAAC,MAAM;KACZ,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AAGH,MAAM,OAAO,YAAY;aACP,gBAAW,GAAG,aAAa,CAAC;aAC5B,eAAU,GAAG,YAAY,CAAC;aAE1B,eAAU,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAE1E,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AAGH,MAAM,OAAO,YAAY;aACP,iBAAY,GAAG,cAAc,CAAC;IAE9C;;;;;;;OAOG;aACa,kBAAa,GAAG,eAAe,CAAC;aAChC,wBAAmB,GAAG,qBAAqB,CAAC;aAE5C,kBAAa,GAAG,eAAe,CAAC;aAChC,oBAAe,GAAG,iBAAiB,CAAC;aACpC,aAAQ,GAAG,UAAU,CAAC;aAEtB,aAAQ,GAAG,UAAU,CAAC;aACtB,oBAAe,GAAG,iBAAiB,CAAC;aAEpC,uBAAkB,GAAG,cAAc,CAAC;aACpC,wBAAmB,GAAG,eAAe,CAAC;aACtC,oBAAe,GAAG,mBAAmB,CAAC;aAEtC,uBAAkB,GAAG,iBAAiB,CAAC;aACvC,wBAAmB,GAAG,kBAAkB,CAAC;aAEzC,oBAAe,GAAG,mBAAmB,CAAC;aAEtC,4BAAuB,GACrC,8FAA8F,CAAC;aAEjF,sCAAiC,GAAG,cAAc,CAAC;;AAGrE,MAAM,OAAO,cAAc;aACT,QAAG,GAAG,SAAS,CAAC;;AAGlC,MAAM,OAAO,gBAAgB;IAC3B;;OAEG;aACa,cAAS,GAAG,GAAG,CAAC;IAEhC;;OAEG;aACa,oBAAe,GAAG,GAAG,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './constants';
2
+ export * from './keys';
3
+ export * from './types';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './constants';
2
+ export * from './keys';
3
+ export * from './types';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}