@putkoff/abstract-utilities 0.1.102 → 0.1.104

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.
@@ -0,0 +1,8 @@
1
+ /** Runtime-loaded JSON (config.json) shape */
2
+ export interface RuntimeConfig {
3
+ API_BASE_URL: string;
4
+ }
5
+ /** Call once, early in app startup (e.g. in index.tsx) */
6
+ export declare function load(): Promise<void>;
7
+ /** Get the base (after `load()`), or '' if not loaded yet */
8
+ export declare function apiBase(): string;
@@ -4,5 +4,4 @@ export { stripPrefixes } from './../string_utils';
4
4
  export { alertit } from './../rndm_utils';
5
5
  export { ensure_list } from './../type_utils';
6
6
  export { eatInner } from './../string_utils';
7
- export { AppConfig } from './../../utils/src/config';
8
7
  export type { LogoutButtonProps, FetchVariables } from './../../types';
@@ -10,6 +10,6 @@
10
10
  export declare function get_app_config_url(endpoint: any): string;
11
11
  export declare function fetchIt(endpoint: string, body?: unknown, method?: string | null, headers?: Record<string, string> | null, blob?: boolean | null, no_api?: boolean, requireAuth?: boolean): Promise<unknown>;
12
12
  export declare function secureFetchIt<T>(endpoint: string, body?: unknown, method?: string, headers?: Record<string, string> | null, blob?: false, noApi?: boolean, requireAuth?: boolean): Promise<T>;
13
- export declare function secureFetchIt(endpoint: string, body?: unknown, method?: string, headers?: Record<string, string> | null, blob?: boolean, noApi?: boolean, withCredentials?: boolean, returnJson?: boolean): Promise<Blob>;
13
+ export declare function secureFetchIt(endpoint: string, body?: unknown, method?: string, headers?: Record<string, string> | null, blob?: boolean, noApi?: boolean, withCredentials?: boolean, returnJson?: boolean, returnReult?: boolean): Promise<Blob>;
14
14
  export declare function requestPatch(url: string, body?: unknown): Promise<Response>;
15
15
  export declare function fetchSharePatch(file: unknown): Promise<void>;
@@ -4,8 +4,6 @@ export declare function ensureAbstractUrl(endpoint: string, slices?: string[]):
4
4
  * Unwraps nested { result } fields until you hit a non-object or no more "result" keys.
5
5
  */
6
6
  export declare function getResult<T>(obj: unknown): T;
7
- /** Pulls base-URL from AppConfig.API_BASE_URL, strips trailing slashes */
8
- export declare function getRawConfigUrl(): any;
9
7
  export declare function api(endpoint: string): string;
10
8
  export declare function checkResponse(res: Response): any;
11
9
  export declare function parseResult(res: Response): Promise<unknown>;
package/dist/cjs/index.js CHANGED
@@ -1111,15 +1111,8 @@ function getFetchVars(headers = null, method = null, body = null) {
1111
1111
  }
1112
1112
 
1113
1113
  function getAppConfig(endpoint) {
1114
- var _a;
1115
- const rawBase = (_a = void 0 ) !== null && _a !== void 0 ? _a : "";
1116
- const base = rawBase.replace(/\/+$/, "");
1117
- // strip any leading slashes on endpoint, then prefix “/api/”
1118
- const cleanEndpoint = endpoint.replace(/^\/+/, "");
1119
- const url = base
1120
- ? `${base}/${cleanEndpoint}`
1121
- : `/api/${cleanEndpoint}`;
1122
- return url;
1114
+ const clean = endpoint.replace(/^\/+/, '');
1115
+ return `/api/${clean}`;
1123
1116
  }
1124
1117
 
1125
1118
  /**
@@ -1149,10 +1142,10 @@ function fetchIt(endpoint_1) {
1149
1142
  });
1150
1143
  }
1151
1144
  function secureFetchIt(endpoint_1) {
1152
- return __awaiter(this, arguments, void 0, function* (endpoint, body = null, method = null, customHeaders = null, blob = false, noApi = false, withCredentials = true, returnJson = true) {
1145
+ return __awaiter(this, arguments, void 0, function* (endpoint, body = null, method = null, customHeaders = null, blob = false, noApi = false, withCredentials = true, returnJson = true, returnReult = true) {
1153
1146
  // strip leading slashes off the endpoint
1154
1147
  method = method || "GET";
1155
- let url = endpoint.replace(/^\/+/, "");
1148
+ let url = endpoint;
1156
1149
  if (!noApi) {
1157
1150
  url = get_app_config_url(url);
1158
1151
  }
@@ -1176,8 +1169,10 @@ function secureFetchIt(endpoint_1) {
1176
1169
  }
1177
1170
  if (blob)
1178
1171
  return res.blob();
1179
- if (returnJson)
1172
+ if (returnReult)
1180
1173
  return getResult(res.json());
1174
+ if (returnJson)
1175
+ return res.json();
1181
1176
  return res;
1182
1177
  });
1183
1178
  }
@@ -1388,7 +1383,7 @@ function uploadFiles(file_1) {
1388
1383
  formData.append('file', file);
1389
1384
  formData.append('subdir', subdir.trim());
1390
1385
  try {
1391
- const json = yield secureFetchIt('upload', formData, 'POST', null, false, true);
1386
+ const json = yield secureFetchIt('upload', formData, 'POST', null, false, false);
1392
1387
  if (!json || typeof json !== 'object') {
1393
1388
  throw new Error('Invalid response from server.');
1394
1389
  }