auto-code-generator-client-ts 1.0.0 → 1.0.1

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.
package/README.md CHANGED
@@ -1,11 +1,11 @@
1
- # auto-code-generator-client-ts
1
+ # omnia-client-api
2
2
 
3
- Generic API client library for auto-code generator projects.
3
+ TypeScript API client library with generic HTTP utilities for Omnia projects.
4
4
 
5
5
  ## Installation
6
6
 
7
7
  ```bash
8
- npm install auto-code-generator-client-ts
8
+ npm install omnia-client-api
9
9
  ```
10
10
 
11
11
  ## Usage
@@ -13,7 +13,7 @@ npm install auto-code-generator-client-ts
13
13
  ### Basic Usage
14
14
 
15
15
  ```typescript
16
- import { GenericApiClient } from 'auto-code-generator-client-ts';
16
+ import { GenericApiClient } from 'omnia-client-api';
17
17
 
18
18
  const client = new GenericApiClient('https://api.example.com');
19
19
 
@@ -33,7 +33,7 @@ await client.delete('/users/1');
33
33
  ### Using Utility Functions
34
34
 
35
35
  ```typescript
36
- import { formatDate, parseDate } from 'auto-code-generator-client-ts/utility';
36
+ import { formatDate, parseDate } from 'omnia-client-api/utility';
37
37
 
38
38
  const formattedDate = formatDate(new Date());
39
39
  const parsedDate = parseDate('2023-12-01');
@@ -0,0 +1,22 @@
1
+ import { AxiosRequestConfig, AxiosResponse } from 'axios';
2
+ import { PaginationDTO, IListQDTO } from './types/types';
3
+ export declare class GenericApiClient<Type, CursorType, Preview, Search = any, Write = any, Update = any> {
4
+ private client;
5
+ constructor(baseUrl: string, controllerPath: string, gatewaySecret: string, bearerToken: string, httpsAgent?: any);
6
+ private createClient;
7
+ setBearerToken(newBearer: string): void;
8
+ protected safeRequest<T>(config: AxiosRequestConfig): Promise<AxiosResponse<T>>;
9
+ insert(entity: Write): Promise<AxiosResponse<Type>>;
10
+ update(preview: Update): Promise<AxiosResponse<Type>>;
11
+ get(id: CursorType): Promise<AxiosResponse<Type>>;
12
+ delete(id: CursorType): Promise<AxiosResponse<Type>>;
13
+ insertFromList(entities: Write[]): Promise<AxiosResponse<Type[]>>;
14
+ updateFromList(previews: Update[]): Promise<AxiosResponse<Type[]>>;
15
+ getFromList(ids: CursorType[]): Promise<AxiosResponse<Type[]>>;
16
+ deleteFromList(ids: CursorType[]): Promise<AxiosResponse<Type[]>>;
17
+ getList(id: CursorType, limit: number): Promise<AxiosResponse<PaginationDTO<Preview[], CursorType>>>;
18
+ getListFiltered(id: CursorType, limit: number): Promise<AxiosResponse<PaginationDTO<Preview[], CursorType>>>;
19
+ search(filter: Search, id: CursorType, limit: number): Promise<AxiosResponse<Preview[]>>;
20
+ searchWithQuery(query: IListQDTO<Search>, id: CursorType, limit: number): Promise<AxiosResponse<Preview[]>>;
21
+ }
22
+ //# sourceMappingURL=GenericApiClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericApiClient.d.ts","sourceRoot":"","sources":["../src/GenericApiClient.ts"],"names":[],"mappings":"AAAA,OAAc,EAA2C,kBAAkB,EAAE,aAAa,EAA8B,MAAM,OAAO,CAAC;AACtI,OAAO,EAAY,aAAa,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AASnE,qBAAa,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,GAAG,EAAE,KAAK,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG;IAC5F,OAAO,CAAC,MAAM,CAAgB;gBAElB,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,GAAG;IAIjH,OAAO,CAAC,YAAY;IAgBb,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;cAI9B,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAoC/E,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAInD,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAIrD,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAIjD,MAAM,CAAC,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAKpD,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IAQjE,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IAQlE,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IAQ9D,cAAc,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IASjE,OAAO,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;IAQpG,eAAe,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;IAQ5G,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IASxF,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;CAQpH"}
@@ -0,0 +1,137 @@
1
+ import axios, { AxiosHeaders } from 'axios';
2
+ import { toCamelCase } from './utility/ToCamelCase';
3
+ import { extractFirstItem } from './utility/ResponseHandler';
4
+ import qs from 'qs';
5
+ function normalizeHeaders(headers) {
6
+ return new AxiosHeaders(headers || {});
7
+ }
8
+ export class GenericApiClient {
9
+ constructor(baseUrl, controllerPath, gatewaySecret, bearerToken, httpsAgent) {
10
+ this.client = this.createClient(baseUrl, controllerPath, gatewaySecret, bearerToken, httpsAgent);
11
+ }
12
+ createClient(baseUrl, controllerPath, gatewaySecret, bearerToken, httpsAgent) {
13
+ return axios.create({
14
+ baseURL: `${baseUrl}/${controllerPath}`,
15
+ timeout: 5000,
16
+ httpsAgent,
17
+ headers: {
18
+ 'X-Gateway-Secret': gatewaySecret,
19
+ Authorization: `Bearer ${bearerToken}`
20
+ },
21
+ paramsSerializer: {
22
+ // "repeat" genera ?ids=a&ids=b
23
+ serialize: params => qs.stringify(params, { arrayFormat: 'repeat' })
24
+ }
25
+ });
26
+ }
27
+ setBearerToken(newBearer) {
28
+ this.client.defaults.headers['Authorization'] = `Bearer ${newBearer}`;
29
+ }
30
+ async safeRequest(config) {
31
+ if (config.data) {
32
+ config.data = toCamelCase(config.data);
33
+ }
34
+ if (config.baseURL)
35
+ this.client.defaults.baseURL = config.baseURL;
36
+ try {
37
+ return await this.client.request(config);
38
+ }
39
+ catch (error) {
40
+ const axiosError = error;
41
+ const fallbackConfig = {
42
+ ...config,
43
+ headers: normalizeHeaders(config.headers),
44
+ method: config.method || 'GET',
45
+ url: config.url || '',
46
+ transformRequest: [],
47
+ transformResponse: [],
48
+ timeout: config.timeout ?? 0,
49
+ adapter: config.adapter,
50
+ transitional: config.transitional ?? {},
51
+ data: config.data,
52
+ params: config.params
53
+ };
54
+ return {
55
+ data: null,
56
+ status: axiosError.response?.status ?? 0,
57
+ statusText: axiosError.message || 'Unknown error',
58
+ headers: axiosError.response?.headers ?? {},
59
+ config: fallbackConfig,
60
+ };
61
+ }
62
+ }
63
+ // Single entity operations
64
+ async insert(entity) {
65
+ return extractFirstItem(this.insertFromList([entity]));
66
+ }
67
+ async update(preview) {
68
+ return extractFirstItem(this.updateFromList([preview]));
69
+ }
70
+ async get(id) {
71
+ return extractFirstItem(this.getFromList([id]));
72
+ }
73
+ async delete(id) {
74
+ return extractFirstItem(this.deleteFromList([id]));
75
+ }
76
+ // List operations
77
+ async insertFromList(entities) {
78
+ return this.safeRequest({
79
+ method: 'POST',
80
+ url: '/insert/',
81
+ data: entities
82
+ });
83
+ }
84
+ async updateFromList(previews) {
85
+ return this.safeRequest({
86
+ method: 'PUT',
87
+ url: '/update/',
88
+ data: previews
89
+ });
90
+ }
91
+ async getFromList(ids) {
92
+ return this.safeRequest({
93
+ method: 'GET',
94
+ url: '/get',
95
+ params: { ids }
96
+ });
97
+ }
98
+ async deleteFromList(ids) {
99
+ return this.safeRequest({
100
+ method: 'DELETE',
101
+ url: '/delete',
102
+ params: { ids }
103
+ });
104
+ }
105
+ // Pagination and filtering
106
+ async getList(id, limit) {
107
+ return this.safeRequest({
108
+ method: 'GET',
109
+ url: '/get-list',
110
+ params: { id, limit }
111
+ });
112
+ }
113
+ async getListFiltered(id, limit) {
114
+ return this.safeRequest({
115
+ method: 'GET',
116
+ url: '/get-list-filtered',
117
+ params: { id, limit }
118
+ });
119
+ }
120
+ async search(filter, id, limit) {
121
+ return this.safeRequest({
122
+ method: 'POST',
123
+ url: '/search',
124
+ data: filter,
125
+ params: { id, limit }
126
+ });
127
+ }
128
+ async searchWithQuery(query, id, limit) {
129
+ return this.safeRequest({
130
+ method: 'POST',
131
+ url: '/search-queried',
132
+ data: query,
133
+ params: { id, limit }
134
+ });
135
+ }
136
+ }
137
+ //# sourceMappingURL=GenericApiClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericApiClient.js","sourceRoot":"","sources":["../src/GenericApiClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export { GenericApiClient } from './GenericApiClient';
2
+ export * from './types/types';
3
+ export * from './utility/index';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,cAAc,eAAe,CAAC;AAG9B,cAAc,iBAAiB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,7 @@
1
+ // Export client
2
+ export { GenericApiClient } from './GenericApiClient';
3
+ // Export types
4
+ export * from './types/types';
5
+ // Export utility functions
6
+ export * from './utility/index';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gBAAgB;AAChB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,eAAe;AACf,cAAc,eAAe,CAAC;AAE9B,2BAA2B;AAC3B,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,45 @@
1
+ export declare class PaginationDTO<ListType, Number> {
2
+ list: ListType[];
3
+ cursor: Number;
4
+ constructor(list: ListType[], cursor: Number);
5
+ }
6
+ export declare class FileInputAPI {
7
+ file: File | Blob | Buffer | NodeJS.ReadableStream;
8
+ fileName: string;
9
+ contentType: string;
10
+ constructor(file: Buffer | NodeJS.ReadableStream, fileName: string, contentType: string);
11
+ toFormData(): FormData;
12
+ }
13
+ export declare enum LogicalRelationalType {
14
+ Greater = 0,// per ">"
15
+ Less = 1,// per "<"
16
+ Equal = 2,// per "="
17
+ GreaterEqual = 3,// per ">="
18
+ LessEqual = 4,// per "<="
19
+ StrictEqual = 5,// per "strict‐equal"
20
+ Not = 6
21
+ }
22
+ export declare enum LogicalOperatorType {
23
+ And = 0,// per "and"
24
+ Or = 1,// per "or"
25
+ None = 2
26
+ }
27
+ export interface IQDTO<T> {
28
+ dataQuery: T;
29
+ logicalOperator: LogicalOperatorType;
30
+ relationalOperator: LogicalRelationalType;
31
+ }
32
+ export declare class QDTO<T> implements IQDTO<T> {
33
+ dataQuery: T;
34
+ logicalOperator: LogicalOperatorType;
35
+ relationalOperator: LogicalRelationalType;
36
+ constructor(dataQuery: T, logicalOperator: LogicalOperatorType, relationalOperator: LogicalRelationalType);
37
+ }
38
+ export interface IListQDTO<T> {
39
+ qdtoList: IQDTO<T>[];
40
+ }
41
+ export declare class ListQDTO<T> implements IListQDTO<T> {
42
+ qdtoList: QDTO<T>[];
43
+ constructor(qdtoList: QDTO<T>[]);
44
+ }
45
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types/types.ts"],"names":[],"mappings":"AAAA,qBAAa,aAAa,CAAC,QAAQ,EAAE,MAAM;IACvC,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;gBAEH,IAAI,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM;CAI/C;AAED,qBAAa,YAAY;IAErB,IAAI,EAAE,IAAI,GAAG,IAAI,GAAE,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;gBAER,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAOvF,UAAU,IAAI,QAAQ;CAQvB;AAGH,oBAAY,qBAAqB;IAC/B,OAAO,IAAW,CAAG,UAAU;IAC/B,IAAI,IAAc,CAAG,UAAU;IAC/B,KAAK,IAAa,CAAG,UAAU;IAC/B,YAAY,IAAM,CAAG,WAAW;IAChC,SAAS,IAAS,CAAG,WAAW;IAChC,WAAW,IAAO,CAAG,qBAAqB;IAC1C,GAAG,IAAe;CACnB;AAED,oBAAY,mBAAmB;IAC7B,GAAG,IAAM,CAAG,YAAY;IACxB,EAAE,IAAO,CAAG,WAAW;IACvB,IAAI,IAAK;CACV;AAID,MAAM,WAAW,KAAK,CAAC,CAAC;IACtB,SAAS,EAAE,CAAC,CAAC;IACb,eAAe,EAAE,mBAAmB,CAAC;IACrC,kBAAkB,EAAE,qBAAqB,CAAC;CAC3C;AAID,qBAAa,IAAI,CAAC,CAAC,CAAE,YAAW,KAAK,CAAC,CAAC,CAAC;IAE7B,SAAS,EAAE,CAAC;IACZ,eAAe,EAAE,mBAAmB;IACpC,kBAAkB,EAAE,qBAAqB;gBAFzC,SAAS,EAAE,CAAC,EACZ,eAAe,EAAE,mBAAmB,EACpC,kBAAkB,EAAE,qBAAqB;CAEnD;AAID,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;CACtB;AAID,qBAAa,QAAQ,CAAC,CAAC,CAAE,YAAW,SAAS,CAAC,CAAC,CAAC;IAErC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;gBAAnB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;CAE7B"}
@@ -0,0 +1,54 @@
1
+ export class PaginationDTO {
2
+ constructor(list, cursor) {
3
+ this.list = list;
4
+ this.cursor = cursor;
5
+ }
6
+ }
7
+ export class FileInputAPI {
8
+ constructor(file, fileName, contentType) {
9
+ this.file = file;
10
+ this.fileName = fileName;
11
+ this.contentType = contentType;
12
+ }
13
+ // Converte l'oggetto in FormData usando il pacchetto "form-data"
14
+ toFormData() {
15
+ const formData = new FormData();
16
+ // Il terzo parametro è un oggetto di opzioni che permette di specificare il nome del file e il content type.
17
+ formData.append('file', this.file, { filename: this.fileName, contentType: this.contentType });
18
+ formData.append('fileName', this.fileName);
19
+ formData.append('contentType', this.contentType);
20
+ return formData;
21
+ }
22
+ }
23
+ // 1) Gli enum
24
+ export var LogicalRelationalType;
25
+ (function (LogicalRelationalType) {
26
+ LogicalRelationalType[LogicalRelationalType["Greater"] = 0] = "Greater";
27
+ LogicalRelationalType[LogicalRelationalType["Less"] = 1] = "Less";
28
+ LogicalRelationalType[LogicalRelationalType["Equal"] = 2] = "Equal";
29
+ LogicalRelationalType[LogicalRelationalType["GreaterEqual"] = 3] = "GreaterEqual";
30
+ LogicalRelationalType[LogicalRelationalType["LessEqual"] = 4] = "LessEqual";
31
+ LogicalRelationalType[LogicalRelationalType["StrictEqual"] = 5] = "StrictEqual";
32
+ LogicalRelationalType[LogicalRelationalType["Not"] = 6] = "Not"; // per "negate"
33
+ })(LogicalRelationalType || (LogicalRelationalType = {}));
34
+ export var LogicalOperatorType;
35
+ (function (LogicalOperatorType) {
36
+ LogicalOperatorType[LogicalOperatorType["And"] = 0] = "And";
37
+ LogicalOperatorType[LogicalOperatorType["Or"] = 1] = "Or";
38
+ LogicalOperatorType[LogicalOperatorType["None"] = 2] = "None";
39
+ })(LogicalOperatorType || (LogicalOperatorType = {}));
40
+ // 3) La classe QDTO<T>
41
+ export class QDTO {
42
+ constructor(dataQuery, logicalOperator, relationalOperator) {
43
+ this.dataQuery = dataQuery;
44
+ this.logicalOperator = logicalOperator;
45
+ this.relationalOperator = relationalOperator;
46
+ }
47
+ }
48
+ // 5) La classe ListQDTO<T>
49
+ export class ListQDTO {
50
+ constructor(qdtoList) {
51
+ this.qdtoList = qdtoList;
52
+ }
53
+ }
54
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types/types.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,aAAa;IAItB,YAAY,IAAgB,EAAE,MAAc;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;CACJ;AAED,MAAM,OAAO,YAAY;IAMrB,YAAY,IAAoC,EAAE,QAAgB,EAAE,WAAmB;QACrF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,iEAAiE;IACjE,UAAU;QACR,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAChC,6GAA6G;QAC7G,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAS,CAAC,CAAC;QAC7G,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3C,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACjD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED,cAAc;AAChB,MAAM,CAAN,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,uEAAkB,CAAA;IAClB,iEAAkB,CAAA;IAClB,mEAAkB,CAAA;IAClB,iFAAkB,CAAA;IAClB,2EAAkB,CAAA;IAClB,+EAAkB,CAAA;IAClB,+DAAkB,CAAA,CAAG,eAAe;AACtC,CAAC,EARW,qBAAqB,KAArB,qBAAqB,QAQhC;AAED,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,2DAAS,CAAA;IACT,yDAAS,CAAA;IACT,6DAAS,CAAA;AACX,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAWD,uBAAuB;AACvB,MAAM,OAAO,IAAI;IACf,YACS,SAAY,EACZ,eAAoC,EACpC,kBAAyC;QAFzC,cAAS,GAAT,SAAS,CAAG;QACZ,oBAAe,GAAf,eAAe,CAAqB;QACpC,uBAAkB,GAAlB,kBAAkB,CAAuB;IAC/C,CAAC;CACL;AASD,2BAA2B;AAC3B,MAAM,OAAO,QAAQ;IACnB,YACS,QAAmB;QAAnB,aAAQ,GAAR,QAAQ,CAAW;IACzB,CAAC;CACL"}
@@ -0,0 +1,3 @@
1
+ export declare function convertToDateOnly(date: Date): string;
2
+ export declare function convertToTimeOnly(date: Date): string;
3
+ //# sourceMappingURL=DateFunctions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateFunctions.d.ts","sourceRoot":"","sources":["../../src/utility/DateFunctions.ts"],"names":[],"mappings":"AAEA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAEpD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAEpD"}
@@ -0,0 +1,8 @@
1
+ import { format } from 'date-fns';
2
+ export function convertToDateOnly(date) {
3
+ return format(date, 'yyyy-MM-dd');
4
+ }
5
+ export function convertToTimeOnly(date) {
6
+ return format(date, 'HH:mm:ss');
7
+ }
8
+ //# sourceMappingURL=DateFunctions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateFunctions.js","sourceRoot":"","sources":["../../src/utility/DateFunctions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,UAAU,iBAAiB,CAAC,IAAU;IACxC,OAAO,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAU;IACxC,OAAO,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AACpC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { AxiosResponse } from "axios";
2
+ export declare function extractFirstItem<Type>(responsePromise: Promise<AxiosResponse<Type[]>>): Promise<AxiosResponse<Type>>;
3
+ //# sourceMappingURL=ResponseHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseHandler.d.ts","sourceRoot":"","sources":["../../src/utility/ResponseHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtC,wBAAgB,gBAAgB,CAAC,IAAI,EACjC,eAAe,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,GAC9C,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAQ9B"}
@@ -0,0 +1,10 @@
1
+ export function extractFirstItem(responsePromise) {
2
+ return responsePromise.then((response) => {
3
+ const firstItem = response.data[0];
4
+ return {
5
+ ...response,
6
+ data: firstItem
7
+ };
8
+ });
9
+ }
10
+ //# sourceMappingURL=ResponseHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseHandler.js","sourceRoot":"","sources":["../../src/utility/ResponseHandler.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAC5B,eAA+C;IAE/C,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACvC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,OAAO;YACL,GAAG,QAAQ;YACX,IAAI,EAAE,SAAS;SAChB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function toCamelCase(obj: any): any;
2
+ //# sourceMappingURL=ToCamelCase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToCamelCase.d.ts","sourceRoot":"","sources":["../../src/utility/ToCamelCase.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAczC"}
@@ -0,0 +1,14 @@
1
+ export function toCamelCase(obj) {
2
+ if (Array.isArray(obj)) {
3
+ return obj.map(toCamelCase);
4
+ }
5
+ if (obj !== null && typeof obj === 'object') {
6
+ return Object.entries(obj).reduce((acc, [key, value]) => {
7
+ const camelKey = key.replace(/_([a-z])/g, (_, g) => g.toUpperCase());
8
+ acc[camelKey] = toCamelCase(value);
9
+ return acc;
10
+ }, {});
11
+ }
12
+ return obj;
13
+ }
14
+ //# sourceMappingURL=ToCamelCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToCamelCase.js","sourceRoot":"","sources":["../../src/utility/ToCamelCase.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,WAAW,CAAC,GAAQ;IAClC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACtD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;YACrE,GAAG,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YACnC,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAyB,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function toPascalCase(obj: any): any;
2
+ //# sourceMappingURL=ToPascalCase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToPascalCase.d.ts","sourceRoot":"","sources":["../../src/utility/ToPascalCase.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAiB1C"}
@@ -0,0 +1,17 @@
1
+ export function toPascalCase(obj) {
2
+ if (Array.isArray(obj)) {
3
+ return obj.map(toPascalCase);
4
+ }
5
+ if (obj !== null && typeof obj === 'object') {
6
+ return Object.entries(obj).reduce((acc, [key, value]) => {
7
+ const pascalKey = key
8
+ .split('_')
9
+ .map(word => word.charAt(0).toUpperCase() + word.slice(1))
10
+ .join('');
11
+ acc[pascalKey] = toPascalCase(value);
12
+ return acc;
13
+ }, {});
14
+ }
15
+ return obj;
16
+ }
17
+ //# sourceMappingURL=ToPascalCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToPascalCase.js","sourceRoot":"","sources":["../../src/utility/ToPascalCase.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,YAAY,CAAC,GAAQ;IACnC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACtD,MAAM,SAAS,GAAG,GAAG;iBAClB,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;iBACzD,IAAI,CAAC,EAAE,CAAC,CAAC;YACZ,GAAG,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YACrC,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAyB,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { toCamelCase } from './ToCamelCase';
2
+ export { toPascalCase } from './ToPascalCase';
3
+ export { convertToDateOnly, convertToTimeOnly } from './DateFunctions';
4
+ export { extractFirstItem } from './ResponseHandler';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utility/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,6 @@
1
+ // Export utilities
2
+ export { toCamelCase } from './ToCamelCase';
3
+ export { toPascalCase } from './ToPascalCase';
4
+ export { convertToDateOnly, convertToTimeOnly } from './DateFunctions';
5
+ export { extractFirstItem } from './ResponseHandler';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utility/index.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
package/package.json CHANGED
@@ -1,9 +1,12 @@
1
1
  {
2
2
  "name": "auto-code-generator-client-ts",
3
- "version": "1.0.0",
4
- "description": "Generic API client for auto-code",
3
+ "version": "1.0.1",
4
+ "description": "TypeScript API client library with generic HTTP utilities for Omnia projects",
5
5
  "license": "LGPL-3.0-or-later",
6
6
  "author": "Luca Gualandi",
7
+ "engines": {
8
+ "node": ">=16.0.0"
9
+ },
7
10
  "type": "module",
8
11
  "main": "dist/index.js",
9
12
  "types": "dist/index.d.ts",