@apia/api2 5.0.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.
@@ -0,0 +1,47 @@
1
+ import * as _apia_util from '@apia/util';
2
+ import { ILabelsContainer, NotificationDefinition, T__LEGACY_SERVER__MessagesPayload } from '@apia/util';
3
+ import QueryString from 'qs';
4
+ import { AxiosRequestConfig, AxiosResponse } from 'axios';
5
+
6
+ type TApiaApiAxiosResponse<LoadType> = AxiosResponse<LoadType | null> & {
7
+ hasError: boolean;
8
+ hasMessages: boolean;
9
+ };
10
+ type TApiaApiResult<LoadType> = Promise<TApiaApiAxiosResponse<(LoadType & T__LEGACY_SERVER__MessagesPayload) | null> | null>;
11
+ interface IApiaApiRequestConfig {
12
+ axiosConfig?: AxiosRequestConfig;
13
+ }
14
+ interface IUrlBuildOptions {
15
+ action?: string;
16
+ ajaxUrl?: string;
17
+ queryString?: string;
18
+ stringifyOptions?: QueryString.IStringifyOptions;
19
+ tabId?: string | number;
20
+ preventAsXmlParameter?: boolean;
21
+ avoidTabId?: boolean;
22
+ [key: string]: unknown;
23
+ }
24
+ interface ApiContext {
25
+ labels: ILabelsContainer;
26
+ killSession: () => unknown;
27
+ notify: (notification: NotificationDefinition) => unknown;
28
+ /**
29
+ * The Apia Context (The relative uri of the application)
30
+ */
31
+ CONTEXT: string;
32
+ URL_REQUEST_AJAX: string;
33
+ TAB_ID_REQUEST: string;
34
+ }
35
+
36
+ declare const ApiaApi: {
37
+ get: <ResponseType extends Record<string, unknown> = Record<string, unknown>>(context: ApiContext, url: string | IUrlBuildOptions, config?: IApiaApiRequestConfig) => Promise<TApiaApiAxiosResponse<(ResponseType & _apia_util.T__LEGACY_SERVER__MessagesPayload) | null> | null>;
38
+ post: <ResponseType extends Record<string, unknown>>(context: ApiContext, url: string | IUrlBuildOptions, config?: IApiaApiRequestConfig & {
39
+ postData?: any;
40
+ postDataTreatement?: "stringify";
41
+ postDataStringifyOptions?: QueryString.IStringifyOptions;
42
+ }) => Promise<TApiaApiResult<ResponseType>>;
43
+ makeUrl(context: ApiContext, props?: IUrlBuildOptions): string;
44
+ };
45
+
46
+ export { type ApiContext, ApiaApi, type IApiaApiRequestConfig, type IUrlBuildOptions, type TApiaApiAxiosResponse, type TApiaApiResult };
47
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
package/dist/index.js ADDED
@@ -0,0 +1,240 @@
1
+ import axios, { AxiosError } from 'axios';
2
+ import QueryString from 'qs';
3
+ import { session } from '@apia/session';
4
+ import { parseXmlAsync, arrayOrArray } from '@apia/util';
5
+
6
+ var __defProp = Object.defineProperty;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __publicField = (obj, key, value) => {
9
+ __defNormalProp(obj, key + "" , value);
10
+ return value;
11
+ };
12
+ function isJsonResponse(response) {
13
+ return response.headers["content-type"].match("application/json");
14
+ }
15
+ function isXmlResponse(response) {
16
+ return response.headers["content-type"].match(
17
+ /(?:application|text)?\/xml/
18
+ );
19
+ }
20
+ function isHtmlResponse(response) {
21
+ return response.headers["content-type"].match(
22
+ /(?:application|text)?\/html/
23
+ );
24
+ }
25
+ class ApiaApiClass {
26
+ constructor(context) {
27
+ this.context = context;
28
+ __publicField(this, "parseSuccessfulResponse", async (response) => {
29
+ let parsedObj = void 0;
30
+ if (isJsonResponse(response)) {
31
+ if (typeof response.data === "string")
32
+ parsedObj = JSON.parse(
33
+ response.data.trim()
34
+ );
35
+ else if (typeof response.data === "object" && response.data)
36
+ parsedObj = response.data;
37
+ } else if (isXmlResponse(response)) {
38
+ parsedObj = await parseXmlAsync(response.data).catch(
39
+ (e) => {
40
+ this.handleWrongResponse(new Error(e));
41
+ }
42
+ );
43
+ } else if (isHtmlResponse(response)) {
44
+ console.error(
45
+ "El contenido devuelto es Html, no se esperaba esa respuesta"
46
+ );
47
+ return null;
48
+ }
49
+ if (parsedObj) {
50
+ const {
51
+ actions,
52
+ onClose,
53
+ exceptions,
54
+ sysExceptions,
55
+ sysMessages,
56
+ messages,
57
+ load,
58
+ ...rest
59
+ } = parsedObj;
60
+ if (rest.code === "-1" && exceptions) {
61
+ session.invalidate();
62
+ return null;
63
+ }
64
+ if (messages) {
65
+ this.parseMessages(
66
+ arrayOrArray(messages?.message)
67
+ );
68
+ }
69
+ if (sysMessages) {
70
+ this.parseMessages(
71
+ arrayOrArray(
72
+ sysMessages?.message
73
+ ),
74
+ "warning"
75
+ );
76
+ }
77
+ if (sysExceptions) {
78
+ this.parseMessages(
79
+ arrayOrArray(
80
+ sysExceptions?.exception
81
+ ).map((c) => ({
82
+ ...c,
83
+ stack: c.content
84
+ })),
85
+ "error"
86
+ );
87
+ }
88
+ return {
89
+ ...rest,
90
+ ...load,
91
+ sysMessages,
92
+ exceptions,
93
+ sysExceptions
94
+ };
95
+ }
96
+ return null;
97
+ });
98
+ }
99
+ handleWrongResponse(error) {
100
+ if (error instanceof AxiosError && (error.status === 403 || error.response?.status === 403)) {
101
+ this.context.killSession();
102
+ return;
103
+ }
104
+ this.context.notify({
105
+ type: "error",
106
+ message: error.message.replaceAll("AxiosError", "Error")
107
+ });
108
+ }
109
+ parseMessages(messages, type) {
110
+ for (const m of messages) {
111
+ this.context.notify({
112
+ message: m.text,
113
+ title: m.title,
114
+ stackTrace: m.stack,
115
+ type: type ?? m.type
116
+ });
117
+ }
118
+ }
119
+ async handleResponse(result) {
120
+ try {
121
+ if (!result || result.data === void 0) {
122
+ console.error(`%cApiaApi wrong response`, `color: red`);
123
+ } else {
124
+ const parsedResponse = await this.parseSuccessfulResponse(result);
125
+ return {
126
+ ...result,
127
+ data: parsedResponse,
128
+ hasError: !!parsedResponse?.exceptions || !!parsedResponse?.sysExceptions,
129
+ hasMessages: !!parsedResponse?.sysMessages
130
+ };
131
+ }
132
+ } catch (e) {
133
+ this.handleWrongResponse(new Error(e));
134
+ return null;
135
+ }
136
+ return null;
137
+ }
138
+ async get(url, config) {
139
+ if (typeof url !== "string") {
140
+ url = this.makeUrl(url);
141
+ }
142
+ const response = await axios.get(url, config?.axiosConfig).catch((e) => {
143
+ this.handleWrongResponse(
144
+ e instanceof AxiosError ? e : new Error(e)
145
+ );
146
+ });
147
+ if (response) {
148
+ const result = await this.handleResponse(response);
149
+ return result;
150
+ }
151
+ return null;
152
+ }
153
+ async post(url, config) {
154
+ let postData = config?.postData;
155
+ if (postData !== void 0) {
156
+ postData = config?.postDataTreatement === "stringify" ? QueryString.stringify(postData, config.postDataStringifyOptions) : postData;
157
+ }
158
+ if (typeof url !== "string") {
159
+ url = this.makeUrl(url);
160
+ }
161
+ const response = await axios.post(url, postData, config?.axiosConfig).catch((e) => {
162
+ this.handleWrongResponse(
163
+ e instanceof AxiosError ? e : new Error(e)
164
+ );
165
+ });
166
+ if (response) {
167
+ const result = await this.handleResponse(response);
168
+ return result;
169
+ }
170
+ return null;
171
+ }
172
+ makeUrl(props) {
173
+ let actualQueryData = {};
174
+ if (props) {
175
+ const {
176
+ ajaxUrl,
177
+ queryString: queryString2,
178
+ stringifyOptions,
179
+ shouldAvoidTabId,
180
+ preventAsXmlParameter,
181
+ avoidTabId,
182
+ tabId: outerTabId,
183
+ ...rest
184
+ } = props;
185
+ actualQueryData = { ...rest };
186
+ }
187
+ const queryString = QueryString.stringify(
188
+ actualQueryData,
189
+ props?.stringifyOptions ?? {
190
+ arrayFormat: "repeat",
191
+ encodeValuesOnly: false
192
+ }
193
+ );
194
+ let actualAjaxUrl = props?.ajaxUrl ?? this.context.URL_REQUEST_AJAX;
195
+ if (actualAjaxUrl.indexOf("?") === actualAjaxUrl.length - 1) {
196
+ actualAjaxUrl = actualAjaxUrl.slice(0, actualAjaxUrl.length - 1);
197
+ }
198
+ if (!actualAjaxUrl.startsWith("/")) {
199
+ actualAjaxUrl = `/${actualAjaxUrl}`;
200
+ }
201
+ const match = this.context.TAB_ID_REQUEST.match(/tokenId=(\w+)/);
202
+ const currentTokenId = (match ?? [])[1];
203
+ let tabId = (props?.tabId ? `&tabId=${props.tabId}&tokenId=${currentTokenId}` : this.context.TAB_ID_REQUEST).slice(1);
204
+ if (props?.avoidTabId) {
205
+ tabId = "";
206
+ }
207
+ if (this.context.CONTEXT?.endsWith("/")) {
208
+ this.context.CONTEXT += this.context.CONTEXT.slice(
209
+ 0,
210
+ this.context.CONTEXT.length - 1
211
+ );
212
+ }
213
+ let timestamp = `timestamp=${Date.now()}&`;
214
+ if (props?.queryString && props.queryString.includes("timestamp=") || queryString?.includes("timestamp=")) {
215
+ timestamp = "";
216
+ }
217
+ const contextWord = this.context.CONTEXT.replace(/^\/?(.+?)\/?$/, "$1");
218
+ actualAjaxUrl = actualAjaxUrl.match(
219
+ new RegExp(`^(?:(?:/?${contextWord})?/)?(.+)$`)
220
+ )?.[1];
221
+ return `${contextWord ? "/" : ""}${contextWord}/${actualAjaxUrl}?${timestamp}${!props?.preventAsXmlParameter ? "asXml=true&" : ""}${props?.queryString ? `${props.queryString}&` : ""}${queryString ? `${queryString}&` : ""}${tabId}`;
222
+ }
223
+ }
224
+ const ApiaApi = {
225
+ get: async (context, url, config) => {
226
+ const i = new ApiaApiClass(context);
227
+ return i.get(url, config);
228
+ },
229
+ post: (context, url, config) => {
230
+ const i = new ApiaApiClass(context);
231
+ return i.post(url, config);
232
+ },
233
+ makeUrl(context, props) {
234
+ const i = new ApiaApiClass(context);
235
+ return i.makeUrl(props);
236
+ }
237
+ };
238
+
239
+ export { ApiaApi };
240
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../src/ApiaApi.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-invalid-void-type */\nimport axios, { AxiosError, AxiosResponse } from 'axios';\nimport QueryString from 'qs';\nimport { session } from '@apia/session';\nimport {\n arrayOrArray,\n NotificationType,\n parseXmlAsync,\n T__LEGACY_SERVER__ApiaSystemMessageObj,\n T__LEGACY_SERVER__Message,\n} from '@apia/util';\nimport {\n IApiaApiRequestConfig,\n TApiaApiAxiosResponse,\n IUrlBuildOptions,\n ApiContext,\n TApiaApiResult,\n} from './types';\n\nfunction isJsonResponse(response: AxiosResponse<unknown>) {\n return (response.headers['content-type'] as string).match('application/json');\n}\nfunction isXmlResponse(response: AxiosResponse<unknown>) {\n return (response.headers['content-type'] as string).match(\n /(?:application|text)?\\/xml/,\n );\n}\nfunction isHtmlResponse(response: AxiosResponse<unknown>) {\n return (response.headers['content-type'] as string).match(\n /(?:application|text)?\\/html/,\n );\n}\n\nclass ApiaApiClass {\n constructor(private context: ApiContext) {}\n\n handleWrongResponse(error: Error) {\n if (\n error instanceof AxiosError &&\n (error.status === 403 || error.response?.status === 403)\n ) {\n this.context.killSession();\n return;\n }\n\n this.context.notify({\n type: 'error',\n message: error.message.replaceAll('AxiosError', 'Error'),\n });\n }\n\n parseMessages(\n messages: T__LEGACY_SERVER__Message[],\n type?: NotificationType,\n ) {\n for (const m of messages) {\n this.context.notify({\n message: m.text,\n title: m.title,\n stackTrace: m.stack,\n type: type ?? (m.type as 'error'),\n });\n }\n }\n\n parseSuccessfulResponse = async <LoadType extends Record<string, unknown>>(\n response: AxiosResponse<string>,\n ) => {\n let parsedObj:\n | T__LEGACY_SERVER__ApiaSystemMessageObj<LoadType>\n | void\n | undefined = undefined;\n if (isJsonResponse(response)) {\n if (typeof response.data === 'string')\n parsedObj = JSON.parse(\n response.data.trim(),\n ) as T__LEGACY_SERVER__ApiaSystemMessageObj<LoadType> | void;\n else if (typeof response.data === 'object' && response.data)\n parsedObj = response.data;\n } else if (isXmlResponse(response)) {\n parsedObj = await parseXmlAsync<LoadType>(response.data).catch(\n (e: unknown) => {\n this.handleWrongResponse(new Error(e as string));\n },\n );\n } else if (isHtmlResponse(response)) {\n console.error(\n 'El contenido devuelto es Html, no se esperaba esa respuesta',\n );\n return null;\n }\n\n if (parsedObj) {\n const {\n actions,\n onClose,\n exceptions,\n sysExceptions,\n sysMessages,\n messages,\n load,\n ...rest\n } = parsedObj; // Session handling\n if (rest.code === '-1' && exceptions) {\n session.invalidate();\n return null;\n }\n\n if (messages) {\n this.parseMessages(\n arrayOrArray((messages as any)?.message as T__LEGACY_SERVER__Message),\n );\n }\n if (sysMessages) {\n this.parseMessages(\n arrayOrArray(\n (sysMessages as any)?.message as T__LEGACY_SERVER__Message,\n ),\n 'warning',\n );\n }\n if (sysExceptions) {\n this.parseMessages(\n arrayOrArray(\n (sysExceptions as any)?.exception as T__LEGACY_SERVER__Message,\n ).map((c) => ({\n ...c,\n stack: c.content,\n })),\n 'error',\n );\n }\n\n return {\n ...(rest as LoadType),\n ...load,\n sysMessages,\n exceptions,\n sysExceptions,\n };\n }\n\n return null;\n };\n\n private async handleResponse<ResponseType extends Record<string, unknown>>(\n result: AxiosResponse<string> | void,\n ): Promise<TApiaApiAxiosResponse<ResponseType> | null> {\n try {\n if (!result || result.data === undefined) {\n console.error(`%cApiaApi wrong response`, `color: red`);\n } else {\n const parsedResponse =\n await this.parseSuccessfulResponse<ResponseType>(result);\n\n return {\n ...result,\n data: parsedResponse,\n hasError:\n !!parsedResponse?.exceptions || !!parsedResponse?.sysExceptions,\n hasMessages: !!parsedResponse?.sysMessages,\n };\n }\n } catch (e: unknown) {\n this.handleWrongResponse(new Error(e as string));\n return null;\n }\n\n return null;\n }\n\n public async get<ResponseType extends Record<string, unknown>>(\n url: string | IUrlBuildOptions,\n config?: IApiaApiRequestConfig,\n ): Promise<TApiaApiResult<ResponseType>> {\n if (typeof url !== 'string') {\n url = this.makeUrl(url);\n }\n\n const response = await axios\n .get<ResponseType, AxiosResponse<string>>(url, config?.axiosConfig)\n .catch((e: unknown) => {\n this.handleWrongResponse(\n e instanceof AxiosError ? e : new Error(e as string),\n );\n });\n\n if (response) {\n const result = await this.handleResponse<ResponseType>(response);\n return result;\n }\n return null;\n }\n\n public async post<ResponseType extends Record<string, unknown>>(\n url: string | IUrlBuildOptions,\n config?: IApiaApiRequestConfig & {\n postData?: any;\n postDataTreatement?: 'stringify';\n postDataStringifyOptions?: QueryString.IStringifyOptions;\n },\n ): Promise<TApiaApiResult<ResponseType>> {\n let postData = config?.postData;\n if (postData !== undefined) {\n postData =\n config?.postDataTreatement === 'stringify'\n ? QueryString.stringify(postData, config.postDataStringifyOptions)\n : postData;\n }\n\n if (typeof url !== 'string') {\n url = this.makeUrl(url);\n }\n\n const response = await axios\n .post<\n ResponseType,\n AxiosResponse<string>\n >(url, postData, config?.axiosConfig)\n .catch((e: unknown) => {\n this.handleWrongResponse(\n e instanceof AxiosError ? e : new Error(e as string),\n );\n });\n\n if (response) {\n const result = await this.handleResponse<ResponseType>(response);\n return result;\n }\n return null;\n }\n\n public makeUrl(props?: IUrlBuildOptions) {\n let actualQueryData: Record<string, unknown> | unknown = {};\n\n if (props) {\n const {\n ajaxUrl,\n queryString,\n stringifyOptions,\n shouldAvoidTabId,\n preventAsXmlParameter,\n avoidTabId,\n tabId: outerTabId,\n ...rest\n } = props;\n actualQueryData = { ...rest };\n }\n\n const queryString = QueryString.stringify(\n actualQueryData,\n props?.stringifyOptions ?? {\n arrayFormat: 'repeat',\n encodeValuesOnly: false,\n },\n );\n\n let actualAjaxUrl = props?.ajaxUrl ?? this.context.URL_REQUEST_AJAX;\n if (actualAjaxUrl.indexOf('?') === actualAjaxUrl.length - 1) {\n actualAjaxUrl = actualAjaxUrl.slice(0, actualAjaxUrl.length - 1);\n }\n if (!actualAjaxUrl.startsWith('/')) {\n actualAjaxUrl = `/${actualAjaxUrl}`;\n }\n\n const match = this.context.TAB_ID_REQUEST.match(/tokenId=(\\w+)/);\n const currentTokenId = (match ?? [])[1];\n\n let tabId = (\n props?.tabId\n ? `&tabId=${props.tabId}&tokenId=${currentTokenId}`\n : this.context.TAB_ID_REQUEST\n ).slice(1);\n if (props?.avoidTabId) {\n tabId = '';\n }\n\n if (this.context.CONTEXT?.endsWith('/')) {\n this.context.CONTEXT += this.context.CONTEXT.slice(\n 0,\n this.context.CONTEXT.length - 1,\n );\n }\n\n let timestamp = `timestamp=${Date.now()}&`;\n if (\n (props?.queryString && props.queryString.includes('timestamp=')) ||\n queryString?.includes('timestamp=')\n ) {\n timestamp = '';\n }\n\n const contextWord = this.context.CONTEXT.replace(/^\\/?(.+?)\\/?$/, '$1');\n actualAjaxUrl = actualAjaxUrl.match(\n new RegExp(`^(?:(?:/?${contextWord})?/)?(.+)$`),\n )?.[1] as string;\n\n return `${\n contextWord ? '/' : ''\n }${contextWord}/${actualAjaxUrl}?${timestamp}${\n !props?.preventAsXmlParameter ? 'asXml=true&' : ''\n }${props?.queryString ? `${props.queryString}&` : ''}${\n queryString ? `${queryString}&` : ''\n }${tabId}`;\n }\n}\n\nexport const ApiaApi = {\n get: async <\n ResponseType extends Record<string, unknown> = Record<string, unknown>,\n >(\n context: ApiContext,\n url: string | IUrlBuildOptions,\n config?: IApiaApiRequestConfig,\n ) => {\n const i = new ApiaApiClass(context);\n return i.get<ResponseType>(url, config);\n },\n\n post: <ResponseType extends Record<string, unknown>>(\n context: ApiContext,\n url: string | IUrlBuildOptions,\n config?: IApiaApiRequestConfig & {\n postData?: any;\n postDataTreatement?: 'stringify';\n postDataStringifyOptions?: QueryString.IStringifyOptions;\n },\n ) => {\n const i = new ApiaApiClass(context);\n return i.post<ResponseType>(url, config);\n },\n\n makeUrl(context: ApiContext, props?: IUrlBuildOptions): string {\n const i = new ApiaApiClass(context);\n return i.makeUrl(props);\n },\n};\n"],"names":["queryString"],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "@apia/api2",
3
+ "version": "5.0.0",
4
+ "sideEffects": false,
5
+ "author": "Alexis Leite <alexisleite@live.com>",
6
+ "main": "dist/index.js",
7
+ "module": "dist/index.js",
8
+ "type": "module",
9
+ "typings": "dist/index.d.ts",
10
+ "scripts": {
11
+ "libDev": "rollup --config ../../config/rollup.common.mjs --environment MODE:development,ENTRY:index.ts",
12
+ "libBuild": "rollup --config ../../config/rollup.common.mjs --environment MODE:production,ENTRY:index.ts",
13
+ "libWatch": "rollup --watch --config ../../config/rollup.common.mjs --environment MODE:development,ENTRY:index.ts,WATCH:true",
14
+ "libWatchForExecution": "rollup --watch --config ../../config/rollup.common.mjs --environment MODE:development,ENTRY:index.ts,WATCH:true,DEV_SERVER_MODULE:execution",
15
+ "libWatchForDashboards": "rollup --watch --config ../../config/rollup.common.mjs --environment MODE:development,ENTRY:index.ts,WATCH:true,DEV_SERVER_MODULE:dashboards"
16
+ },
17
+ "devDependencies": {
18
+ "@types/react": "^18.2.43",
19
+ "@types/react-dom": "^18.2.17",
20
+ "@typescript-eslint/eslint-plugin": "^6.14.0",
21
+ "axios": "^1.11.0",
22
+ "typescript": "5.4.2"
23
+ },
24
+ "peerDependencies": {
25
+ "react": "^18.2.0",
26
+ "react-dom": "^18.2.0"
27
+ },
28
+ "publishConfig": {
29
+ "access": "public",
30
+ "registry": "https://registry.npmjs.org/"
31
+ },
32
+ "dependencies": {
33
+ "@apia/session": "^5.0.0",
34
+ "@apia/util": "^5.0.0",
35
+ "qs": "^6.14.0"
36
+ },
37
+ "gitHead": "985b675635fb9d3dc5e26a90a6d9898864418b84"
38
+ }