totalum-api-sdk 2.0.11 → 2.0.13

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
@@ -3,7 +3,7 @@
3
3
  This library wraps the totalum public api, so you can easy call all endpoints.
4
4
 
5
5
 
6
- ## Usage:
6
+ ## Installation:
7
7
 
8
8
  ```bash
9
9
  npm i totalum-api-sdk
@@ -16,21 +16,20 @@ Totalum allows you to use the SDK to perform actions such as creating users, cre
16
16
 
17
17
  Basically the Totalum sdk is a wrapper of the Totalum api, so if you want you can use the api directly if you prefer.
18
18
 
19
-
20
19
  ## Authentication
21
20
 
21
+ **Note:** If you use totalumSdk inside a totalum plugin, you don't need to authenticate, you can start using totalum like this: modules.totalumSdk.your.function();-> example: modules.totalumSdk.crud.getItems('your_item', {})
22
+
22
23
  You can choose to use one of the two authentication methods offered by Totalum Sdk:
23
24
 
24
25
  - **Token**: You can use an access token to authenticate. This token can be obtained from the localStorage of your browser from the web https://web.totalum.app
25
26
 
26
27
  - **ApiKey**: (RECOMMENDED OPTION) You can use an ApiKey to authenticate. This ApiKey can be obtained in the **Api Keys** section of the **Configuration** section of Totalum.
27
28
 
28
- **In Typescript:**
29
+ **ES Module Import:**
29
30
 
30
31
  ```typescript
31
32
 
32
- // IN TYPESCRIPT
33
-
34
33
  import {AuthOptions, TotalumApiSdk} from 'totalum-api-sdk';
35
34
 
36
35
  // CHOISE FROM USE accessToken OR apiKey (API KEY IS RECOMMENDED)
@@ -54,14 +53,13 @@ const options: AuthOptions = {
54
53
  const totalumClient = new TotalumApiSdk(options);
55
54
 
56
55
  // execute some TotalumApiSdk function
57
- const result = await totalumClient.crud.getItems('your_item', {});
56
+ const result = await totalumClient.crud.getItems('your_element_table_name', {});
58
57
 
59
58
  ```
60
59
 
61
- **In Javascript:**
60
+ **CommonJS Require:**
62
61
 
63
62
  ```javascript
64
- // IN JAVASCRIPT
65
63
 
66
64
  const totalum = require('totalum-api-sdk');
67
65
 
@@ -75,7 +73,7 @@ const options = {
75
73
  }
76
74
 
77
75
  // the auth using api key
78
- const options: AuthOptions = {
76
+ const options = {
79
77
  apiKey:{
80
78
  'api-key': 'your_api_key', //the api key secret that is shown only once
81
79
  'api-key-name': 'your_api_key_name', // the name of the api key that you can see in the api keys section
@@ -86,6 +84,361 @@ const options: AuthOptions = {
86
84
  const totalumClient = new totalum.TotalumApiSdk(options);
87
85
 
88
86
  // execute some TotalumApiSdk function
89
- const result = await totalumClient.crud.getItems('your_item', {});
87
+ const result = await totalumClient.crud.getItems('your_element_table_name', {});
90
88
 
91
- ```
89
+ ```
90
+
91
+
92
+ ## Functions for create, read, filter, update, delete. (CRUD)
93
+
94
+
95
+ ### Get item by id
96
+
97
+
98
+ ```javascript
99
+
100
+ // get item by id from your_element_table_name
101
+ const tableElementName = 'your_element_table_name'; // replace 'your_element_table_name' with the name of your element table
102
+ let your_item_id = 'your_item_id'; // replace 'your_item_id' with the id of the item object
103
+ const result = await totalumClient.crud.getItemById(tableElementName, your_item_id);
104
+ const item = result.data.data;
105
+
106
+ ```
107
+
108
+ ### Get items
109
+
110
+ ```javascript
111
+
112
+ // get items from your_element_table_name (for default 50 items per page)
113
+ const tableElementName = 'your_element_table_name'; // replace 'your_element_table_name' with the name of your element table
114
+ const result = await totalumClient.crud.getItems(tableElementName, {});
115
+ const items = result.data.data;
116
+
117
+ ```
118
+
119
+ ### delete item by id
120
+
121
+ ```javascript
122
+ // delete item by id from your_element_table_name
123
+ const tableElementName = 'your_element_table_name'; // replace 'your_element_table_name' with the name of your element table
124
+ let your_item_id = 'your_item_id'; // replace 'your_item_id' with the id of the item object
125
+ const result = await totalumClient.crud.deleteItemById(tableElementName, your_item_id);
126
+
127
+ ```
128
+
129
+ ### edit item by id
130
+
131
+ ```javascript
132
+ // edit item by id from your_element_table_name, you can edit 1 or multiple properties at the same time (like a patch)
133
+ const tableElementName = 'your_element_table_name'; // replace 'your_element_table_name' with the name of your element table
134
+ let your_item_id = 'your_item_id'; // replace 'your_item_id' with the id of the item object
135
+ const result = await totalumClient.crud.editItemById(tableElementName, your_item_id, {your_item_property: 'new value'});
136
+
137
+ ```
138
+
139
+ ### create item
140
+
141
+ ```javascript
142
+ // create item from your_element_table_name, you need to pass at least the required properties
143
+ const tableElementName = 'your_element_table_name'; // replace 'your_element_table_name' with the name of your element table
144
+ const result = await totalumClient.crud.createItem(tableElementName, {your_item_property: 'new value'});
145
+
146
+ ```
147
+
148
+
149
+
150
+ ## Functions for filter data
151
+
152
+ ### Filter data using totalum AND filter
153
+
154
+ ```javascript
155
+
156
+ const tableElementName = 'your_element_table_name'; // replace 'your_element_table_name' with the name of your element table
157
+
158
+ // get items from your_element_table_name (for default 50 items per page) applying a filter AND query (all conditions must be true)
159
+ const filter: FilterSearchQueryI = {
160
+ filter: [
161
+ {
162
+ 'your_property_name': 'value' // it matches the value exactly
163
+ },
164
+ {
165
+ 'your_other_property_name': {regex: 'your regex query', options: 'i'} // it matches a value using a regex query and options: i for case insensitive (ignore if it is uppercase or lowercase)
166
+ },
167
+ // PD: gte and lte operators are only allowed for properties of type date or number
168
+ {
169
+ 'your_other_property_name': {gte: new Date('your date')} // it matches a value greater than or equal to the date
170
+ },
171
+ {
172
+ 'your_other_property_name': {lte: new Date('your date')} // it matches a value less than or equal to the date
173
+ },
174
+ {
175
+ 'your_other_property_name': {gte: 10} // it matches a value greater than or equal to 10
176
+ },
177
+ {
178
+ 'your_other_property_name': {lte: 100} // it matches a value less than or equal to 100
179
+ }
180
+ ],
181
+ sort:{
182
+ 'your_property_name': 1 // 1 for asc, -1 for desc
183
+ },
184
+ pagination: {
185
+ limit: 50,
186
+ page: 0,
187
+ }
188
+ };
189
+
190
+ const result = await totalumClient.crud.getItems(tableElementName, filter);
191
+ const items = result.data.data;
192
+
193
+ ```
194
+
195
+ ### Filter data using totalum OR filter
196
+
197
+ ```javascript
198
+
199
+ // get items from your_element_table_name (for default 50 items per page) applying a filter OR query (at least one condition must be true)
200
+ const filter: FilterSearchQueryI = {
201
+ filter: [
202
+ {
203
+ or: [
204
+ {
205
+ 'your_property_name': 'value' // it matches the value exactly
206
+ },
207
+ {
208
+ 'your_other_property_name': {regex: 'your regex query', options: 'i'} // it matches a value using a regex query and options: i for case insensitive (ignore if it is uppercase or lowercase)
209
+ },
210
+ {
211
+ 'your_other_property_name': {gte: new Date('your date')} // it matches a value greater than or equal to the date
212
+ },
213
+ ]
214
+ }
215
+ ],
216
+ sort: {
217
+ 'your_property_name': 1 // 1 for asc, -1 for desc
218
+ },
219
+ pagination: {
220
+ limit: 50,
221
+ page: 0,
222
+ }
223
+ };
224
+
225
+ const result = await totalumClient.crud.getItems(tableElementName, filter);
226
+ const items = result.data.data;
227
+
228
+ ```
229
+
230
+ ### Filter data using totalum AND and OR filter
231
+
232
+ ```javascript
233
+
234
+ // get items from your_element_table_name (for default 50 items per page) applying a filter OR and AND
235
+ const filter: FilterSearchQueryI = {
236
+ filter: [
237
+ {
238
+ or: [
239
+ {
240
+ 'your_property_name_in_or': 'value' // it matches the value exactly
241
+ },
242
+ {
243
+ 'your_other_property_name_in_or': {regex: 'your regex query', options: 'i'} // it matches a value using a regex query and options: i for case insensitive (ignore if it is uppercase or lowercase)
244
+ },
245
+ ],
246
+ {
247
+ 'your_other_property_name': 'value' // it matches the value exactly
248
+ },
249
+ }
250
+ ],
251
+ sort: {
252
+ 'your_property_name': 1 // 1 for asc, -1 for desc
253
+ },
254
+ pagination: {
255
+ limit: 50,
256
+ page: 0,
257
+ }
258
+ };
259
+
260
+ const result = await totalumClient.crud.getItems(tableElementName, filter);
261
+ const items = result.data.data;
262
+
263
+
264
+ ```
265
+
266
+ ### Filter using your custom mongoDb aggregation query
267
+
268
+ ```javascript
269
+
270
+ // filter results from your_element_table_name applying a filter query (a custom mongodb aggregation query)
271
+ const customMongoDbAggregationQueryInString = `
272
+
273
+ your custom mongo aggregation query in string, for more info:
274
+ https://docs.mongodb.com/manual/aggregation/
275
+
276
+ or ask to chatgpt, he is very good writing mongo aggregation queries ;)
277
+
278
+ `;
279
+
280
+ const result = await totalumClient.filter.runCustomMongoAggregationQuery(tableElementName, customMongoDbAggregationQueryInString);
281
+
282
+ ```
283
+
284
+ ## Functions for create download and manipulate files
285
+
286
+
287
+ ### Upload a file to Totalum (you can upload any file type)
288
+
289
+ ```javascript
290
+
291
+ // this example is using axios for get a file, and then transform it to a blob before upload it to totalum
292
+ // you can get the file from any source, like a file input, or a url, or a base64 string, etc. Then you need to transform it to a blob before upload it to totalum
293
+ let imageUrl = 'https://www.totalum.app/img/logoT.png'; //an example test file
294
+ const response = await modules.axios.get(imageUrl, { responseType: 'blob' });
295
+ // The response is a blob
296
+ const yourFileBlob = new Blob([response.data], { type: response.headers['content-type'] });
297
+
298
+ const fileName = 'your_file_name.png'; // replace 'your_file_name' with the name of your file, replace .png with the extension of your file
299
+ const file = yourFileBlob // replace yourFile with your file object binary blob (in blob format)
300
+ const formData = new FormData();
301
+ formData.append('file', file, fileName);
302
+ const result = await totalumClient.files.uploadFile(formData);
303
+ const fileNameId = result.data.data;
304
+
305
+ //if you want to link this file to an item, you need to add the fileNameId to the item property of type file
306
+ const result2 = await totalumClient.crud.editItemById('your_element_table_name', 'your_item_id', {'your_file_property_name': {name: fileNameId}});
307
+ // now the file is linked to the item property, and you can see it in the totalum panel.
308
+
309
+
310
+ ```
311
+
312
+ ### Get the download url of a file
313
+
314
+ ```javascript
315
+
316
+ // you can get the fileNameId from the result of the upload file function
317
+ const fileNameId = 'your_file_name.png'; // replace 'your_file_name' with the name id of your file, replace .png with the extension of your file
318
+
319
+ //optional options
320
+ const options = {
321
+ // the default expiration time is 128 hours, but you can set it to whatever you want, after the expiration time the url will not return the file
322
+ expirationTime: Date.now() + (128 * 60 * 60 * 1000); // Set to expire in 128 hours, how it works is, set the current date in miliseconds + the miliseconds you want the url to expire
323
+ }
324
+
325
+ const result = await totalumClient.files.getDownloadUrl(fileNameId, options);
326
+ let [fileUrl] = result.data.data;
327
+ // the result will be a full url that you can use to download the file
328
+
329
+ ```
330
+
331
+ ### Generate a pdf from a template
332
+
333
+ ```javascript
334
+
335
+ const templateId = 'your_template_id'; // replace 'your_template_id' with the id of your template id, go to totalum -> configuration -> pdf templates
336
+
337
+ // the variables will be replaced in your template with handlebars
338
+ const variablesExample = { // replace the variables with your variables, can contain nested objects of n deep, can contain strings, numbers, dates, etc.
339
+ 'your_variable_name': 'your_variable_value',
340
+ 'your_other_variable_name': {
341
+ 'your_other_variable_name': 'your_other_variable_value'
342
+ 'your_other_variable_name': 10,
343
+ 'your_other_variable_name': new Date('your date'),
344
+ },
345
+ }
346
+
347
+ const fileName = 'your_pdf_name.pdf'; // replace 'your_pdf_name' with the name of your pdf
348
+ //CAUTION: if you use the same name for multiple pdfs, the pdfs will be overwritten
349
+ const result = await totalumClient.files.generatePdfByTemplate(templateId, variablesExample, name);
350
+ const fileUrl = result.data.data;
351
+ // with the fileUrl you can download the pdf
352
+
353
+ //if you want to link this pdf to an item, you need to add the fileName to the item property of type file
354
+ const result2 = await totalumClient.crud.editItemById('your_element_table_name', 'your_item_id', {'your_pdf_property_name': {name: fileName}});
355
+
356
+ ```
357
+
358
+ ### get OCR of an image (get the text of an image)
359
+
360
+ ```javascript
361
+
362
+ // you can only do ocr of a file that is previously uploaded to totalum (see the upload file function)
363
+ // then you can do ocr of the file using the file name of the file uploaded
364
+ const fileNameId = 'your_file_name_id.png'; // replace 'your_file_name' with the name of your file, replace .png with the extension of your image
365
+ const result = await totalumClient.files.ocrOfImage(fileNameId);
366
+ const ocrResult = result.data.data;
367
+ // ocrResult.text will contain all text of the image
368
+ // ocrResult.fullDetails will contain all details of the image, like the language, the position of the text, etc.
369
+
370
+ ```
371
+
372
+ ### get OCR of a pdf (get the text of a pdf)
373
+
374
+ ```javascript
375
+
376
+ // you can only do ocr of a file that is previously uploaded to totalum (see the upload file function)
377
+ // then you can do ocr of the file using the file name of the file uploaded
378
+ const fileName = 'your_file_name_id.pdf'; // replace 'your_file_name' with the name of your file
379
+ const result = await totalumClient.files.ocrOfPdf(fileName);
380
+ const ocrResult = result.data.data;
381
+ // ocrResult.text will contain all text of the pdf
382
+ // ocrResult.fullDetails will contain all details of the pdf, like the language, in which page is the text, the position of the text, etc.
383
+
384
+ ```
385
+
386
+
387
+ ## Functions for call OpenAI API without need to have an OpenAI account
388
+
389
+
390
+ ### Create a completion (deprecated, use createChatCompletion instead)
391
+
392
+ ```javascript
393
+
394
+ //body the openai completion body, more info here: https://platform.openai.com/docs/api-reference/completions/create
395
+ const body={
396
+ // see the openai api docs for more info
397
+ }
398
+
399
+ const result = await totalumClient.openai.createCompletion(body);
400
+ const gptCompletion = result.data.data;
401
+
402
+ // returns the completion provided by openai api
403
+
404
+ ```
405
+
406
+ ### Create a chat completion
407
+
408
+ ```javascript
409
+
410
+ //body the openai chat completion body, more info here: https://platform.openai.com/docs/api-reference/chat/create
411
+ const bodyExample={
412
+ // see the openai api docs for more info
413
+ messages: [
414
+ {content: 'You are a math specialist assistant', role: 'system'},
415
+ {content: 'how I can resolve a matrix', role: 'user'}
416
+ //etc...
417
+ ],
418
+ model: 'gpt-3.5-turbo',
419
+ max_tokens: 30,
420
+ }
421
+
422
+ const result = await totalumClient.openai.createChatCompletion(bodyExample);
423
+ const chatCompletion = result.data.data;
424
+ // returns the completion provided by openai api
425
+
426
+ ```
427
+
428
+ ### Generate an image
429
+
430
+ ```javascript
431
+
432
+ //body the openai chat completion body, more info here: https://platform.openai.com/docs/api-reference/chat/create
433
+ const bodyExample={
434
+ prompt:'your prompt',
435
+ size: '256x256' | '512x512' | '1024x1024',
436
+ fileName: 'file-name-of-file-saved.png' // CAUTION: if you use the same name for multiple images, the images will be overwritten
437
+ }
438
+
439
+ const result = await totalumClient.openai.generateImage(bodyExample);
440
+ const imageCompletion = result.data.data;
441
+ // returns the file name with the file generated by openai, if is not an url, you can download it using files.getDownloadUrl(imageCompletion);
442
+
443
+ ```
444
+
@@ -0,0 +1 @@
1
+ (()=>{"use strict";var e={429:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.endpoints=void 0,t.endpoints={crud:{getObjectById:"api/v1/crud/:typeId/:id",getObjects:"api/v1/crud/:typeId",createObject:"api/v1/crud/:typeId",editObjectProperties:"api/v1/crud/:typeId/:id",deleteObject:"api/v1/crud/:typeId/:id",deleteObjectAndSubElements:"api/v1/crud/:typeId/:id/:pageId/subelements",updateLastUsersActions:"api/v1/crud/:typeId/:id/lastUsersActions"},files:{uploadFile:"api/v1/files/upload",getDownloadUrl:"api/v1/files/download/:fileName",deleteFile:"api/v1/files/:fileName",ocrOfImage:"api/v1/files/ocr/image",ocrOfPdf:"api/v1/files/ocr/pdf"},filter:{lookUpFilter:"api/v1/filter/:idPage",customMongoFilter:"api/v1/filter/custom-mongo-filter",runCustomAggregationQuery:"api/v1/filter/custom-mongo-aggregation-query"},pdfTemplate:{generatePdfByTemplate:"api/v1/pdf-template/generatePdfByTemplate/:id"},googleIntegration:{getEmails:"api/v1/google-integration/get-emails",sendEmail:"api/v1/google-integration/send-email",getCalendarEvents:"api/v1/google-integration/get-calendar-events",createCalendarEvent:"api/v1/google-integration/create-calendar-event"},openai:{createCompletion:"api/v1/openai/completion",createChatCompletion:"api/v1/openai/chat-completion",generateImage:"api/v1/openai/image"}}},999:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0})},492:function(e,t,n){var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.TotalumApiSdk=void 0;const i=n(730),s=n(721),a=n(675),c=n(589),u=n(882);o(n(999),t),t.TotalumApiSdk=class{constructor(e){var t,n,r;if(this._baseUrl="https://api.totalum.app/",this.authOptions=e,null===(t=this.authOptions.token)||void 0===t?void 0:t.accessToken)this._headers={authorization:this.authOptions.token.accessToken};else{if(!(null===(n=this.authOptions.apiKey)||void 0===n?void 0:n.apiKey)||!(null===(r=this.authOptions.apiKey)||void 0===r?void 0:r.organizationId))throw new Error("Error: invalid auth options");this._headers={"api-key":this.authOptions.apiKey.apiKey,"organization-id":this.authOptions.apiKey.organizationId,"api-key-name":this.authOptions.apiKey.apiKeyName}}this.authOptions.baseUrl&&(this._baseUrl=this.authOptions.baseUrl),this.setRequestData()}changeBaseUrl(e){this._baseUrl=e,this.setRequestData()}setRequestData(){this.crud=new u.CrudService(this._baseUrl,this._headers),this.openai=new i.OpenaiService(this._baseUrl,this._headers),this.files=new c.FilesService(this._baseUrl,this._headers),this.google=new s.GoogleService(this._baseUrl,this._headers),this.filter=new a.FilterService(this._baseUrl,this._headers)}}},882:function(e,t,n){var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.CrudService=void 0;const i=o(n(218)),s=n(591),a=n(429);t.CrudService=class{constructor(e,t){this.headers=t,this.baseUrl=e}getItemById(e,t){return r(this,void 0,void 0,(function*(){const n=s.UtilsService.getUrl(this.baseUrl,a.endpoints.crud.getObjectById,{typeId:e,id:t});return i.default.get(n,{headers:this.headers})}))}getItems(e,t){const n=s.UtilsService.getUrl(this.baseUrl,a.endpoints.crud.getObjects,{typeId:e});return i.default.get(n,{params:t,headers:this.headers})}deleteItemById(e,t){return r(this,void 0,void 0,(function*(){const n=s.UtilsService.getUrl(this.baseUrl,a.endpoints.crud.deleteObject,{typeId:e,id:t});return i.default.delete(n,{headers:this.headers})}))}editItemById(e,t,n){return r(this,void 0,void 0,(function*(){const r=s.UtilsService.getUrl(this.baseUrl,a.endpoints.crud.editObjectProperties,{typeId:e,id:t});return i.default.patch(r,n,{headers:this.headers})}))}createItem(e,t){return r(this,void 0,void 0,(function*(){const n=s.UtilsService.getUrl(this.baseUrl,a.endpoints.crud.createObject,{typeId:e});return i.default.post(n,t,{headers:this.headers})}))}}},589:function(e,t,n){var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FilesService=void 0;const i=o(n(218)),s=n(591),a=n(429);t.FilesService=class{constructor(e,t){this.headers=t,this.baseUrl=e}uploadFile(e){return r(this,void 0,void 0,(function*(){const t=s.UtilsService.getUrl(this.baseUrl,a.endpoints.files.uploadFile);return i.default.post(t,e,{headers:this.headers})}))}getDownloadUrl(e,t){return r(this,void 0,void 0,(function*(){const n=s.UtilsService.getUrl(this.baseUrl,a.endpoints.files.getDownloadUrl,{fileName:e});return i.default.get(n,{headers:this.headers,params:t})}))}generatePdfByTemplate(e,t,n){return r(this,void 0,void 0,(function*(){const r=s.UtilsService.getUrl(this.baseUrl,a.endpoints.pdfTemplate.generatePdfByTemplate,{id:e});return i.default.post(r,{templateId:e,variables:t,name:n},{headers:this.headers})}))}ocrOfImage(e){return r(this,void 0,void 0,(function*(){const t=s.UtilsService.getUrl(this.baseUrl,a.endpoints.files.ocrOfImage);return i.default.post(t,{fileName:e},{headers:this.headers})}))}ocrOfPdf(e){return r(this,void 0,void 0,(function*(){const t=s.UtilsService.getUrl(this.baseUrl,a.endpoints.files.ocrOfPdf);return i.default.post(t,{fileName:e},{headers:this.headers})}))}}},675:function(e,t,n){var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FilterService=void 0;const i=o(n(218)),s=n(429),a=n(591);t.FilterService=class{constructor(e,t){this.headers=t,this.baseUrl=e}lookUpFilter(e,t,n,o){return r(this,void 0,void 0,(function*(){const r=a.UtilsService.getUrl(this.baseUrl,s.endpoints.filter.lookUpFilter,{idPage:e}),c={query:encodeURIComponent(JSON.stringify(t)),idsOfMultipleNodesToSearch:encodeURIComponent(JSON.stringify(n)),returnCount:o};return i.default.get(r,{params:c,headers:this.headers})}))}runCustomMongoAggregationQuery(e,t){return r(this,void 0,void 0,(function*(){const n=a.UtilsService.getUrl(this.baseUrl,s.endpoints.filter.runCustomAggregationQuery),r={customMongoQuery:t,type:e};return i.default.post(n,r,{headers:this.headers})}))}}},721:function(e,t,n){var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.GoogleService=void 0;const i=o(n(218)),s=n(429),a=n(591);t.GoogleService=class{constructor(e,t){this.headers=t,this.baseUrl=e}getGoogleAccountEmails(e){return r(this,void 0,void 0,(function*(){const t=a.UtilsService.getUrl(this.baseUrl,s.endpoints.googleIntegration.getEmails,{}),n={userEmail:e};return i.default.get(t,{params:n,headers:this.headers})}))}googleAccountSendEmail(e,t){return r(this,void 0,void 0,(function*(){const n=a.UtilsService.getUrl(this.baseUrl,s.endpoints.googleIntegration.sendEmail,{}),r={userEmail:e};return i.default.post(n,t,{params:r,headers:this.headers})}))}getGoogleCalendarEvents(e){return r(this,void 0,void 0,(function*(){const t=a.UtilsService.getUrl(this.baseUrl,s.endpoints.googleIntegration.getCalendarEvents,{}),n={userEmail:e};return i.default.get(t,{params:n,headers:this.headers})}))}createCalendarEvent(e,t){return r(this,void 0,void 0,(function*(){const n=a.UtilsService.getUrl(this.baseUrl,s.endpoints.googleIntegration.createCalendarEvent,{}),r={userEmail:e};return i.default.post(n,t,{params:r,headers:this.headers})}))}}},730:function(e,t,n){var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.OpenaiService=void 0;const i=o(n(218)),s=n(591),a=n(429);t.OpenaiService=class{constructor(e,t){this.headers=t,this.baseUrl=e}createCompletion(e){return r(this,void 0,void 0,(function*(){const t=s.UtilsService.getUrl(this.baseUrl,a.endpoints.openai.createCompletion),n=e;return i.default.post(t,n,{headers:this.headers})}))}createChatCompletion(e){return r(this,void 0,void 0,(function*(){const t=s.UtilsService.getUrl(this.baseUrl,a.endpoints.openai.createChatCompletion),n=e;return i.default.post(t,n,{headers:this.headers})}))}generateImage(e){return r(this,void 0,void 0,(function*(){const t=s.UtilsService.getUrl(this.baseUrl,a.endpoints.openai.generateImage),n=e;return i.default.post(t,n,{headers:this.headers})}))}}},591:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UtilsService=void 0,t.UtilsService=class{static getUrl(e,t,n){let r=e+t;for(const e in n)r=r.replace(`:${e}`,n[e]);return r}}},218:(e,t,n)=>{function r(e,t){return function(){return e.apply(t,arguments)}}const{toString:o}=Object.prototype,{getPrototypeOf:i}=Object,s=(a=Object.create(null),e=>{const t=o.call(e);return a[t]||(a[t]=t.slice(8,-1).toLowerCase())});var a;const c=e=>(e=e.toLowerCase(),t=>s(t)===e),u=e=>t=>typeof t===e,{isArray:l}=Array,d=u("undefined"),f=c("ArrayBuffer"),h=u("string"),p=u("function"),m=u("number"),g=e=>null!==e&&"object"==typeof e,y=e=>{if("object"!==s(e))return!1;const t=i(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},v=c("Date"),b=c("File"),w=c("Blob"),O=c("FileList"),E=c("URLSearchParams");function S(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,o;if("object"!=typeof e&&(e=[e]),l(e))for(r=0,o=e.length;r<o;r++)t.call(null,e[r],r,e);else{const o=n?Object.getOwnPropertyNames(e):Object.keys(e),i=o.length;let s;for(r=0;r<i;r++)s=o[r],t.call(null,e[s],s,e)}}function U(e,t){t=t.toLowerCase();const n=Object.keys(e);let r,o=n.length;for(;o-- >0;)if(r=n[o],t===r.toLowerCase())return r;return null}const _="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:n.g,R=e=>!d(e)&&e!==_,A=(T="undefined"!=typeof Uint8Array&&i(Uint8Array),e=>T&&e instanceof T);var T;const j=c("HTMLFormElement"),P=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),C=c("RegExp"),x=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};S(n,((n,o)=>{!1!==t(n,o,e)&&(r[o]=n)})),Object.defineProperties(e,r)},N="abcdefghijklmnopqrstuvwxyz",F="0123456789",B={DIGIT:F,ALPHA:N,ALPHA_DIGIT:N+N.toUpperCase()+F},D=c("AsyncFunction");var I={isArray:l,isArrayBuffer:f,isBuffer:function(e){return null!==e&&!d(e)&&null!==e.constructor&&!d(e.constructor)&&p(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||p(e.append)&&("formdata"===(t=s(e))||"object"===t&&p(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&f(e.buffer),t},isString:h,isNumber:m,isBoolean:e=>!0===e||!1===e,isObject:g,isPlainObject:y,isUndefined:d,isDate:v,isFile:b,isBlob:w,isRegExp:C,isFunction:p,isStream:e=>g(e)&&p(e.pipe),isURLSearchParams:E,isTypedArray:A,isFileList:O,forEach:S,merge:function e(){const{caseless:t}=R(this)&&this||{},n={},r=(r,o)=>{const i=t&&U(n,o)||o;y(n[i])&&y(r)?n[i]=e(n[i],r):y(r)?n[i]=e({},r):l(r)?n[i]=r.slice():n[i]=r};for(let e=0,t=arguments.length;e<t;e++)arguments[e]&&S(arguments[e],r);return n},extend:(e,t,n,{allOwnKeys:o}={})=>(S(t,((t,o)=>{n&&p(t)?e[o]=r(t,n):e[o]=t}),{allOwnKeys:o}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let o,s,a;const c={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)a=o[s],r&&!r(a,e,t)||c[a]||(t[a]=e[a],c[a]=!0);e=!1!==n&&i(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:s,kindOfTest:c,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(l(e))return e;let t=e.length;if(!m(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:j,hasOwnProperty:P,hasOwnProp:P,reduceDescriptors:x,freezeMethods:e=>{x(e,((t,n)=>{if(p(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];p(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return l(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:U,global:_,isContextDefined:R,ALPHABET:B,generateString:(e=16,t=B.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n},isSpecCompliantForm:function(e){return!!(e&&p(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(g(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const o=l(e)?[]:{};return S(e,((e,t)=>{const i=n(e,r+1);!d(i)&&(o[t]=i)})),t[r]=void 0,o}}return e};return n(e,0)},isAsyncFn:D,isThenable:e=>e&&(g(e)||p(e))&&p(e.then)&&p(e.catch)};function L(e,t,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o)}I.inherits(L,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:I.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const k=L.prototype,M={};function q(e){return I.isPlainObject(e)||I.isArray(e)}function z(e){return I.endsWith(e,"[]")?e.slice(0,-2):e}function H(e,t,n){return e?e.concat(t).map((function(e,t){return e=z(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{M[e]={value:e}})),Object.defineProperties(L,M),Object.defineProperty(k,"isAxiosError",{value:!0}),L.from=(e,t,n,r,o,i)=>{const s=Object.create(k);return I.toFlatObject(e,s,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),L.call(s,e.message,t,n,r,o),s.cause=e,s.name=e.name,i&&Object.assign(s,i),s};const J=I.toFlatObject(I,{},null,(function(e){return/^is[A-Z]/.test(e)}));function K(e,t,n){if(!I.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=I.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!I.isUndefined(t[e])}))).metaTokens,o=n.visitor||u,i=n.dots,s=n.indexes,a=(n.Blob||"undefined"!=typeof Blob&&Blob)&&I.isSpecCompliantForm(t);if(!I.isFunction(o))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(I.isDate(e))return e.toISOString();if(!a&&I.isBlob(e))throw new L("Blob is not supported. Use a Buffer instead.");return I.isArrayBuffer(e)||I.isTypedArray(e)?a&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,n,o){let a=e;if(e&&!o&&"object"==typeof e)if(I.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(I.isArray(e)&&function(e){return I.isArray(e)&&!e.some(q)}(e)||(I.isFileList(e)||I.endsWith(n,"[]"))&&(a=I.toArray(e)))return n=z(n),a.forEach((function(e,r){!I.isUndefined(e)&&null!==e&&t.append(!0===s?H([n],r,i):null===s?n:n+"[]",c(e))})),!1;return!!q(e)||(t.append(H(o,n,i),c(e)),!1)}const l=[],d=Object.assign(J,{defaultVisitor:u,convertValue:c,isVisitable:q});if(!I.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!I.isUndefined(n)){if(-1!==l.indexOf(n))throw Error("Circular reference detected in "+r.join("."));l.push(n),I.forEach(n,(function(n,i){!0===(!(I.isUndefined(n)||null===n)&&o.call(t,n,I.isString(i)?i.trim():i,r,d))&&e(n,r?r.concat(i):[i])})),l.pop()}}(e),t}function W(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function V(e,t){this._pairs=[],e&&K(e,this,t)}const G=V.prototype;function $(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Q(e,t,n){if(!t)return e;const r=n&&n.encode||$,o=n&&n.serialize;let i;if(i=o?o(t,n):I.isURLSearchParams(t)?t.toString():new V(t,n).toString(r),i){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}G.append=function(e,t){this._pairs.push([e,t])},G.toString=function(e){const t=e?function(t){return e.call(this,t,W)}:W;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};var X=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){I.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},Z={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Y={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:V,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},isStandardBrowserEnv:(()=>{let e;return("undefined"==typeof navigator||"ReactNative"!==(e=navigator.product)&&"NativeScript"!==e&&"NS"!==e)&&"undefined"!=typeof window&&"undefined"!=typeof document})(),isStandardBrowserWebWorkerEnv:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,protocols:["http","https","file","blob","url","data"]};function ee(e){function t(e,n,r,o){let i=e[o++];const s=Number.isFinite(+i),a=o>=e.length;return i=!i&&I.isArray(r)?r.length:i,a?(I.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!s):(r[i]&&I.isObject(r[i])||(r[i]=[]),t(e,n,r[i],o)&&I.isArray(r[i])&&(r[i]=function(e){const t={},n=Object.keys(e);let r;const o=n.length;let i;for(r=0;r<o;r++)i=n[r],t[i]=e[i];return t}(r[i])),!s)}if(I.isFormData(e)&&I.isFunction(e.entries)){const n={};return I.forEachEntry(e,((e,r)=>{t(function(e){return I.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null}const te={"Content-Type":void 0},ne={transitional:Z,adapter:["xhr","http"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,o=I.isObject(e);if(o&&I.isHTMLForm(e)&&(e=new FormData(e)),I.isFormData(e))return r&&r?JSON.stringify(ee(e)):e;if(I.isArrayBuffer(e)||I.isBuffer(e)||I.isStream(e)||I.isFile(e)||I.isBlob(e))return e;if(I.isArrayBufferView(e))return e.buffer;if(I.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let i;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return K(e,new Y.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return Y.isNode&&I.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((i=I.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return K(i?{"files[]":e}:e,t&&new t,this.formSerializer)}}return o||r?(t.setContentType("application/json",!1),function(e,t,n){if(I.isString(e))try{return(0,JSON.parse)(e),I.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(0,JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||ne.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(e&&I.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(e){if(n){if("SyntaxError"===e.name)throw L.from(e,L.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Y.classes.FormData,Blob:Y.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};I.forEach(["delete","get","head"],(function(e){ne.headers[e]={}})),I.forEach(["post","put","patch"],(function(e){ne.headers[e]=I.merge(te)}));var re=ne;const oe=I.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ie=Symbol("internals");function se(e){return e&&String(e).trim().toLowerCase()}function ae(e){return!1===e||null==e?e:I.isArray(e)?e.map(ae):String(e)}function ce(e,t,n,r,o){return I.isFunction(r)?r.call(this,t,n):(o&&(t=n),I.isString(t)?I.isString(r)?-1!==t.indexOf(r):I.isRegExp(r)?r.test(t):void 0:void 0)}class ue{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function o(e,t,n){const o=se(t);if(!o)throw new Error("header name must be a non-empty string");const i=I.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||t]=ae(e))}const i=(e,t)=>I.forEach(e,((e,n)=>o(e,n,t)));return I.isPlainObject(e)||e instanceof this.constructor?i(e,t):I.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?i((e=>{const t={};let n,r,o;return e&&e.split("\n").forEach((function(e){o=e.indexOf(":"),n=e.substring(0,o).trim().toLowerCase(),r=e.substring(o+1).trim(),!n||t[n]&&oe[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t):null!=e&&o(t,e,n),this}get(e,t){if(e=se(e)){const n=I.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(I.isFunction(t))return t.call(this,e,n);if(I.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=se(e)){const n=I.findKey(this,e);return!(!n||void 0===this[n]||t&&!ce(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function o(e){if(e=se(e)){const o=I.findKey(n,e);!o||t&&!ce(0,n[o],o,t)||(delete n[o],r=!0)}}return I.isArray(e)?e.forEach(o):o(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const o=t[n];e&&!ce(0,this[o],o,e,!0)||(delete this[o],r=!0)}return r}normalize(e){const t=this,n={};return I.forEach(this,((r,o)=>{const i=I.findKey(n,o);if(i)return t[i]=ae(r),void delete t[o];const s=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(o):String(o).trim();s!==o&&delete t[o],t[s]=ae(r),n[s]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return I.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&I.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[ie]=this[ie]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=se(e);t[r]||(function(e,t){const n=I.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,o){return this[r].call(this,t,e,n,o)},configurable:!0})}))}(n,e),t[r]=!0)}return I.isArray(e)?e.forEach(r):r(e),this}}ue.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),I.freezeMethods(ue.prototype),I.freezeMethods(ue);var le=ue;function de(e,t){const n=this||re,r=t||n,o=le.from(r.headers);let i=r.data;return I.forEach(e,(function(e){i=e.call(n,i,o.normalize(),t?t.status:void 0)})),o.normalize(),i}function fe(e){return!(!e||!e.__CANCEL__)}function he(e,t,n){L.call(this,null==e?"canceled":e,L.ERR_CANCELED,t,n),this.name="CanceledError"}I.inherits(he,L,{__CANCEL__:!0});var pe=Y.isStandardBrowserEnv?{write:function(e,t,n,r,o,i){const s=[];s.push(e+"="+encodeURIComponent(t)),I.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),I.isString(r)&&s.push("path="+r),I.isString(o)&&s.push("domain="+o),!0===i&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}};function me(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}var ge=Y.isStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let n;function r(n){let r=n;return e&&(t.setAttribute("href",r),r=t.href),t.setAttribute("href",r),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return n=r(window.location.href),function(e){const t=I.isString(e)?r(e):e;return t.protocol===n.protocol&&t.host===n.host}}():function(){return!0};function ye(e,t){let n=0;const r=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o,i=0,s=0;return t=void 0!==t?t:1e3,function(a){const c=Date.now(),u=r[s];o||(o=c),n[i]=a,r[i]=c;let l=s,d=0;for(;l!==i;)d+=n[l++],l%=e;if(i=(i+1)%e,i===s&&(s=(s+1)%e),c-o<t)return;const f=u&&c-u;return f?Math.round(1e3*d/f):void 0}}(50,250);return o=>{const i=o.loaded,s=o.lengthComputable?o.total:void 0,a=i-n,c=r(a);n=i;const u={loaded:i,total:s,progress:s?i/s:void 0,bytes:a,rate:c||void 0,estimated:c&&s&&i<=s?(s-i)/c:void 0,event:o};u[t?"download":"upload"]=!0,e(u)}}const ve={http:null,xhr:"undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){let r=e.data;const o=le.from(e.headers).normalize(),i=e.responseType;let s;function a(){e.cancelToken&&e.cancelToken.unsubscribe(s),e.signal&&e.signal.removeEventListener("abort",s)}I.isFormData(r)&&(Y.isStandardBrowserEnv||Y.isStandardBrowserWebWorkerEnv?o.setContentType(!1):o.setContentType("multipart/form-data;",!1));let c=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",n=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";o.set("Authorization","Basic "+btoa(t+":"+n))}const u=me(e.baseURL,e.url);function l(){if(!c)return;const r=le.from("getAllResponseHeaders"in c&&c.getAllResponseHeaders());!function(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new L("Request failed with status code "+n.status,[L.ERR_BAD_REQUEST,L.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}((function(e){t(e),a()}),(function(e){n(e),a()}),{data:i&&"text"!==i&&"json"!==i?c.response:c.responseText,status:c.status,statusText:c.statusText,headers:r,config:e,request:c}),c=null}if(c.open(e.method.toUpperCase(),Q(u,e.params,e.paramsSerializer),!0),c.timeout=e.timeout,"onloadend"in c?c.onloadend=l:c.onreadystatechange=function(){c&&4===c.readyState&&(0!==c.status||c.responseURL&&0===c.responseURL.indexOf("file:"))&&setTimeout(l)},c.onabort=function(){c&&(n(new L("Request aborted",L.ECONNABORTED,e,c)),c=null)},c.onerror=function(){n(new L("Network Error",L.ERR_NETWORK,e,c)),c=null},c.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const r=e.transitional||Z;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(new L(t,r.clarifyTimeoutError?L.ETIMEDOUT:L.ECONNABORTED,e,c)),c=null},Y.isStandardBrowserEnv){const t=(e.withCredentials||ge(u))&&e.xsrfCookieName&&pe.read(e.xsrfCookieName);t&&o.set(e.xsrfHeaderName,t)}void 0===r&&o.setContentType(null),"setRequestHeader"in c&&I.forEach(o.toJSON(),(function(e,t){c.setRequestHeader(t,e)})),I.isUndefined(e.withCredentials)||(c.withCredentials=!!e.withCredentials),i&&"json"!==i&&(c.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&c.addEventListener("progress",ye(e.onDownloadProgress,!0)),"function"==typeof e.onUploadProgress&&c.upload&&c.upload.addEventListener("progress",ye(e.onUploadProgress)),(e.cancelToken||e.signal)&&(s=t=>{c&&(n(!t||t.type?new he(null,e,c):t),c.abort(),c=null)},e.cancelToken&&e.cancelToken.subscribe(s),e.signal&&(e.signal.aborted?s():e.signal.addEventListener("abort",s)));const d=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(u);d&&-1===Y.protocols.indexOf(d)?n(new L("Unsupported protocol "+d+":",L.ERR_BAD_REQUEST,e)):c.send(r||null)}))}};I.forEach(ve,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));function be(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new he(null,e)}function we(e){return be(e),e.headers=le.from(e.headers),e.data=de.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),(e=>{e=I.isArray(e)?e:[e];const{length:t}=e;let n,r;for(let o=0;o<t&&(n=e[o],!(r=I.isString(n)?ve[n.toLowerCase()]:n));o++);if(!r){if(!1===r)throw new L(`Adapter ${n} is not supported by the environment`,"ERR_NOT_SUPPORT");throw new Error(I.hasOwnProp(ve,n)?`Adapter '${n}' is not available in the build`:`Unknown adapter '${n}'`)}if(!I.isFunction(r))throw new TypeError("adapter is not a function");return r})(e.adapter||re.adapter)(e).then((function(t){return be(e),t.data=de.call(e,e.transformResponse,t),t.headers=le.from(t.headers),t}),(function(t){return fe(t)||(be(e),t&&t.response&&(t.response.data=de.call(e,e.transformResponse,t.response),t.response.headers=le.from(t.response.headers))),Promise.reject(t)}))}const Oe=e=>e instanceof le?e.toJSON():e;function Ee(e,t){t=t||{};const n={};function r(e,t,n){return I.isPlainObject(e)&&I.isPlainObject(t)?I.merge.call({caseless:n},e,t):I.isPlainObject(t)?I.merge({},t):I.isArray(t)?t.slice():t}function o(e,t,n){return I.isUndefined(t)?I.isUndefined(e)?void 0:r(void 0,e,n):r(e,t,n)}function i(e,t){if(!I.isUndefined(t))return r(void 0,t)}function s(e,t){return I.isUndefined(t)?I.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function a(n,o,i){return i in t?r(n,o):i in e?r(void 0,n):void 0}const c={url:i,method:i,data:i,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(e,t)=>o(Oe(e),Oe(t),!0)};return I.forEach(Object.keys(Object.assign({},e,t)),(function(r){const i=c[r]||o,s=i(e[r],t[r],r);I.isUndefined(s)&&i!==a||(n[r]=s)})),n}const Se={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{Se[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const Ue={};Se.transitional=function(e,t,n){function r(e,t){return"[Axios v1.4.0] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,o,i)=>{if(!1===e)throw new L(r(o," has been removed"+(t?" in "+t:"")),L.ERR_DEPRECATED);return t&&!Ue[o]&&(Ue[o]=!0,console.warn(r(o," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,o,i)}};var _e={assertOptions:function(e,t,n){if("object"!=typeof e)throw new L("options must be an object",L.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const i=r[o],s=t[i];if(s){const t=e[i],n=void 0===t||s(t,i,e);if(!0!==n)throw new L("option "+i+" must be "+n,L.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new L("Unknown option "+i,L.ERR_BAD_OPTION)}},validators:Se};const Re=_e.validators;class Ae{constructor(e){this.defaults=e,this.interceptors={request:new X,response:new X}}request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=Ee(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:o}=t;let i;void 0!==n&&_e.assertOptions(n,{silentJSONParsing:Re.transitional(Re.boolean),forcedJSONParsing:Re.transitional(Re.boolean),clarifyTimeoutError:Re.transitional(Re.boolean)},!1),null!=r&&(I.isFunction(r)?t.paramsSerializer={serialize:r}:_e.assertOptions(r,{encode:Re.function,serialize:Re.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase(),i=o&&I.merge(o.common,o[t.method]),i&&I.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete o[e]})),t.headers=le.concat(i,o);const s=[];let a=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(a=a&&e.synchronous,s.unshift(e.fulfilled,e.rejected))}));const c=[];let u;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let l,d=0;if(!a){const e=[we.bind(this),void 0];for(e.unshift.apply(e,s),e.push.apply(e,c),l=e.length,u=Promise.resolve(t);d<l;)u=u.then(e[d++],e[d++]);return u}l=s.length;let f=t;for(d=0;d<l;){const e=s[d++],t=s[d++];try{f=e(f)}catch(e){t.call(this,e);break}}try{u=we.call(this,f)}catch(e){return Promise.reject(e)}for(d=0,l=c.length;d<l;)u=u.then(c[d++],c[d++]);return u}getUri(e){return Q(me((e=Ee(this.defaults,e)).baseURL,e.url),e.params,e.paramsSerializer)}}I.forEach(["delete","get","head","options"],(function(e){Ae.prototype[e]=function(t,n){return this.request(Ee(n||{},{method:e,url:t,data:(n||{}).data}))}})),I.forEach(["post","put","patch"],(function(e){function t(t){return function(n,r,o){return this.request(Ee(o||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}Ae.prototype[e]=t(),Ae.prototype[e+"Form"]=t(!0)}));var Te=Ae;class je{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise((function(e){t=e}));const n=this;this.promise.then((e=>{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,o){n.reason||(n.reason=new he(e,r,o),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;return{token:new je((function(t){e=t})),cancel:e}}}var Pe=je;const Ce={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ce).forEach((([e,t])=>{Ce[t]=e}));var xe=Ce;const Ne=function e(t){const n=new Te(t),o=r(Te.prototype.request,n);return I.extend(o,Te.prototype,n,{allOwnKeys:!0}),I.extend(o,n,null,{allOwnKeys:!0}),o.create=function(n){return e(Ee(t,n))},o}(re);Ne.Axios=Te,Ne.CanceledError=he,Ne.CancelToken=Pe,Ne.isCancel=fe,Ne.VERSION="1.4.0",Ne.toFormData=K,Ne.AxiosError=L,Ne.Cancel=Ne.CanceledError,Ne.all=function(e){return Promise.all(e)},Ne.spread=function(e){return function(t){return e.apply(null,t)}},Ne.isAxiosError=function(e){return I.isObject(e)&&!0===e.isAxiosError},Ne.mergeConfig=Ee,Ne.AxiosHeaders=le,Ne.formToJSON=e=>ee(I.isHTMLForm(e)?new FormData(e):e),Ne.HttpStatusCode=xe,Ne.default=Ne,e.exports=Ne}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r].call(i.exports,i,i.exports,n),i.exports}n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n(492)})();
package/package.json CHANGED
@@ -1,18 +1,23 @@
1
1
  {
2
2
  "name": "totalum-api-sdk",
3
- "version": "2.0.11",
3
+ "version": "2.0.13",
4
4
  "description": "Totalum sdk wrapper and utils of totalum api",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
7
- "files": ["dist"],
7
+ "files": [
8
+ "dist"
9
+ ],
8
10
  "scripts": {
9
- "build": "tsc"
11
+ "build": "tsc; npx webpack"
10
12
  },
11
13
  "author": "Totalum",
12
14
  "license": "ISC",
13
15
  "devDependencies": {
14
16
  "@types/qs": "^6.9.7",
15
- "typescript": "^5.1.3"
17
+ "ts-loader": "^9.5.0",
18
+ "typescript": "^5.1.3",
19
+ "webpack": "^5.89.0",
20
+ "webpack-cli": "^5.1.4"
16
21
  },
17
22
  "dependencies": {
18
23
  "@types/axios": "^0.14.0",