@chat21/chat21-ionic 3.3.0 → 3.4.0-rc.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/CHANGELOG.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # chat21-ionic ver 3.0
2
2
 
3
+ ### 3.4.0-rc.1
4
+ - added: downloadURL in metadata obj while sending message from tiledesk
5
+
3
6
  ### 3.3.0 in PROD
4
7
 
5
8
  ### 3.3.0-rc.1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@chat21/chat21-ionic",
3
3
  "author": "Tiledesk SRL",
4
- "version": "3.3.0",
4
+ "version": "3.4.0-rc.1",
5
5
  "license": "MIT License",
6
6
  "homepage": "https://tiledesk.com/",
7
7
  "repository": {
@@ -362,10 +362,11 @@ export class MessageTextAreaComponent implements OnInit, AfterViewInit, OnChange
362
362
  this.logger.log('[CONVS-DETAIL][MSG-TEXT-AREA] FIREBASE-UPLOAD presentModal onDidDismiss currentUpload', currentUpload);
363
363
  this.logger.log('[CONVS-DETAIL][MSG-TEXT-AREA] FIREBASE-UPLOAD presentModal onDidDismiss detail.data', detail.data);
364
364
 
365
- that.uploadService.upload(that.loggedUser.uid, currentUpload).then(downloadURL => {
366
- metadata.src = downloadURL;
365
+ that.uploadService.upload(that.loggedUser.uid, currentUpload).then((data) => {
366
+ metadata.src = data.src;
367
+ metadata.downloadURL = data.downloadURL;
367
368
  this.logger.log('[CONVS-DETAIL][MSG-TEXT-AREA] FIREBASE-UPLOAD presentModal invio msg metadata::: ', metadata);
368
- this.logger.log('[CONVS-DETAIL][MSG-TEXT-AREA] FIREBASE-UPLOAD presentModal invio msg metadata downloadURL::: ', downloadURL);
369
+ this.logger.log('[CONVS-DETAIL][MSG-TEXT-AREA] FIREBASE-UPLOAD presentModal invio msg metadata downloadURL::: ', data);
369
370
  this.logger.log('[CONVS-DETAIL][MSG-TEXT-AREA] FIREBASE-UPLOAD presentModal invio msg type::: ', type);
370
371
  this.logger.log('[CONVS-DETAIL][MSG-TEXT-AREA] FIREBASE-UPLOAD presentModal invio msg message::: ', messageString);
371
372
  // send message
@@ -217,6 +217,7 @@ export class ProjectItemComponent implements OnInit {
217
217
  if (project) {
218
218
  const user_role = this.project.role
219
219
  this.logger.log('[PROJECT-ITEM] - user_role ', user_role)
220
+ //TODO: recuperare id da root project (DA VERIFICARE)
220
221
  this.projectIdEvent.emit(project.id_project._id)
221
222
 
222
223
  if (user_role === 'agent') {
@@ -228,6 +229,7 @@ export class ProjectItemComponent implements OnInit {
228
229
 
229
230
 
230
231
  this.logger.log('[PROJECT-ITEM] - LAST PROJECT PARSED > user_role ', user_role)
232
+ //TODO: recuperare project_user_ID da API --> aggiugere metodo
231
233
  this.wsService.subscriptionToWsCurrentProjectUserAvailability(project.id_project._id, this.project._id);
232
234
  this.listenTocurrentProjectUserUserAvailability$(project)
233
235
 
@@ -283,6 +283,7 @@ export class SidebarUserDetailsComponent implements OnInit, OnChanges {
283
283
  if (projectObjct && projectObjct !== 'undefined') {
284
284
  // console.log('[SIDEBAR-USER-DETAILS] - GET STORED PROJECT ', projectObjct)
285
285
 
286
+ //TODO: recuperare info da root e non da id_project
286
287
  this.project = {
287
288
  _id: projectObjct['id_project']['_id'],
288
289
  name: projectObjct['id_project']['name'],
@@ -65,13 +65,6 @@ export class CreateCannedResponsePage implements OnInit {
65
65
  this.logger.log('[CREATE-CANNED-RES] tiledeskToken ', this.tiledeskToken)
66
66
  this.getCurrentProjectId(this.conversationWith, this.tiledeskToken);
67
67
 
68
- // const stored_project = localStorage.getItem('last_project')
69
- // const storedPrjctObjct = JSON.parse(stored_project)
70
- // this.logger.log('[CREATE-CANNED-RES] storedPrjctObjct ', storedPrjctObjct)
71
- // if (storedPrjctObjct) {
72
- // this.prjctID = storedPrjctObjct.id_project.id
73
- // this.logger.log('[CREATE-CANNED-RES] this.prjctID ', this.prjctID)
74
- // }
75
68
 
76
69
  let keys= [
77
70
  'Title',
@@ -81,6 +81,7 @@ export class CreateTicketPage implements OnInit {
81
81
  const storedPrjctObjct = JSON.parse(stored_project)
82
82
  this.logger.log('[CREATE-TICKET] storedPrjctObjct ', storedPrjctObjct)
83
83
  if (storedPrjctObjct) {
84
+ //TODO: recuperare info da root e non da id_project
84
85
  this.prjctID = storedPrjctObjct.id_project.id
85
86
  this.logger.log('[CREATE-TICKET] this.prjctID ', this.prjctID)
86
87
  }
@@ -327,9 +327,9 @@ export class SendWhatsappTemplateModal implements OnInit {
327
327
  let file = e.target.files.item(0);
328
328
  const currentUpload = new UploadModel(file);
329
329
  this.logger.log('[SEND-TEMPLATE-MODAL] currentUpload -->', currentUpload);
330
- this.uploadService.upload(this.loggedUser.uid, currentUpload).then((downloadURL) => {
331
- this.logger.log('[SEND-TEMPLATE-MODAL] downloadURL -->', downloadURL);
332
- resolve(downloadURL);
330
+ this.uploadService.upload(this.loggedUser.uid, currentUpload).then((data) => {
331
+ this.logger.log('[SEND-TEMPLATE-MODAL] downloadURL -->', data);
332
+ resolve(data.downloadURL);
333
333
  }).catch((err) => {
334
334
  this.logger.log('[SEND-TEMPLATE-MODAL] uploading error ', err);
335
335
  reject(err);
@@ -474,6 +474,7 @@ export class ConversationListPage implements OnInit {
474
474
  if (projectObjct && projectObjct !== 'undefined') {
475
475
  // console.log('[CONVS-LIST-PAGE] - GET STORED PROJECT ', projectObjct)
476
476
 
477
+ //TODO: recuperare info da root e non da id_project
477
478
  this.project = {
478
479
  _id: projectObjct['id_project']['_id'],
479
480
  name: projectObjct['id_project']['name'],
@@ -38,6 +38,7 @@ export class CreateRequesterPage implements OnInit {
38
38
  const storedPrjctObjct = JSON.parse(stored_project)
39
39
  this.logger.log('[CREATE-REQUESTER] storedPrjctObjct ', storedPrjctObjct)
40
40
  if (storedPrjctObjct) {
41
+ //TODO: recuperare info da root e non da id_project
41
42
  this.prjctID = storedPrjctObjct.id_project.id
42
43
  this.logger.log('[CREATE-REQUESTER] this.prjctID ', this.prjctID)
43
44
  }
@@ -35,7 +35,7 @@ export abstract class UploadService {
35
35
 
36
36
  // functions
37
37
  abstract initialize(): void;
38
- abstract upload(userId: string, upload: UploadModel): Promise<any>;
38
+ abstract upload(userId: string, upload: UploadModel): Promise<{downloadURL: string, src: string}>;
39
39
  abstract uploadProfile(userId: string, upload: UploadModel): Promise<any>;
40
40
  abstract delete(userId: string, path: string): Promise<any>;
41
41
  abstract deleteProfile(userId: string, path: string): Promise<any>
@@ -46,7 +46,7 @@ export class FirebaseUploadService extends UploadService {
46
46
  this.logger.log('[FIREBASEUploadSERVICE] initialize');
47
47
  }
48
48
 
49
- public upload(userId: string, upload: UploadModel): Promise<any> {
49
+ public upload(userId: string, upload: UploadModel): Promise<{downloadURL: string, src: any}> {
50
50
  const that = this;
51
51
  const uid = this.createGuid();
52
52
  const urlImagesNodeFirebase = '/public/images/' + userId + '/' + uid + '/' + upload.file.name;
@@ -91,11 +91,12 @@ export class FirebaseUploadService extends UploadService {
91
91
  }, function error(error) {
92
92
  // Handle unsuccessful uploads
93
93
  reject(error)
94
- }, function complete() {
94
+ }, async function complete() {
95
95
  // Handle successful uploads on complete
96
96
  that.logger.debug('[FIREBASEUploadSERVICE] Upload is complete', upload);
97
-
98
- resolve(uploadTask.snapshot.ref.getDownloadURL())
97
+
98
+ const downloadURL = await uploadTask.snapshot.ref.getDownloadURL();
99
+ resolve({downloadURL: downloadURL, src: downloadURL})
99
100
  // that.BSStateUpload.next({upload: upload});
100
101
 
101
102
  });
@@ -151,7 +152,9 @@ export class FirebaseUploadService extends UploadService {
151
152
  // Handle successful uploads on complete
152
153
  that.logger.debug('[FIREBASEUploadSERVICE] Upload is complete', upload);
153
154
 
154
- resolve(uploadTask.snapshot.ref.getDownloadURL())
155
+ const downloadURL = uploadTask.snapshot.ref.getDownloadURL();
156
+ resolve({downloadURL : downloadURL, url: downloadURL})
157
+
155
158
  // that.BSStateUpload.next({upload: upload});
156
159
 
157
160
  });
@@ -33,7 +33,7 @@ export class NativeUploadService extends UploadService {
33
33
  }
34
34
 
35
35
 
36
- upload(userId: string, upload: UploadModel): Promise<any> {
36
+ upload(userId: string, upload: UploadModel): Promise<{ downloadURL: string, src: string}> {
37
37
  this.logger.log('[NATIVE UPLOAD] - upload new image/file ... upload', upload)
38
38
  const headers = new HttpHeaders({
39
39
  Authorization: this.tiledeskToken,
@@ -51,7 +51,7 @@ export class NativeUploadService extends UploadService {
51
51
  return new Promise((resolve, reject) => {
52
52
  that.http.post(url, formData, requestOptions).subscribe(data => {
53
53
  const downloadURL = this.URL_TILEDESK_IMAGES + '?path=' + data['filename'];
54
- resolve(downloadURL)
54
+ resolve({downloadURL : downloadURL, src: downloadURL})
55
55
  // that.BSStateUpload.next({upload: upload});
56
56
  }, (error) => {
57
57
  reject(error)
@@ -63,11 +63,9 @@ export class NativeUploadService extends UploadService {
63
63
  const url = this.URL_TILEDESK_FILE + '/users'
64
64
  return new Promise((resolve, reject) => {
65
65
  that.http.post(url, formData, requestOptions).subscribe(data => {
66
- let downloadURL = this.URL_TILEDESK_FILE + '/download' + '?path=' + encodeURI(data['filename']);
67
- if(upload.file.type.includes('pdf')){
68
- downloadURL = this.URL_TILEDESK_FILE + '?path=' + encodeURI(data['filename']);
69
- }
70
- resolve(downloadURL)
66
+ const src = this.URL_TILEDESK_FILE + '?path=' + encodeURI(data['filename']);
67
+ const downloadURL = this.URL_TILEDESK_FILE + '/download' + '?path=' + encodeURI(data['filename']);
68
+ resolve({downloadURL : downloadURL, src: src})
71
69
  // that.BSStateUpload.next({upload: upload});
72
70
  }, (error) => {
73
71
  this.logger.error('[NATIVE UPLOAD] - ERROR upload new file ', error)