@chat21/chat21-ionic 3.0.98-rc.1 → 3.0.98

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.
Files changed (43) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +3 -1
  3. package/package.json +2 -1
  4. package/src/app/app-routing.module.ts +4 -7
  5. package/src/app/app.module.ts +7 -3
  6. package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.html +2 -4
  7. package/src/app/chatlib/conversation-detail/message/text/text.component.scss +12 -0
  8. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.html +1 -1
  9. package/src/app/components/authentication/login/login.component.scss +1 -0
  10. package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.html +6 -6
  11. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.ts +1 -0
  12. package/src/app/modals/maps/maps-routing.module.ts +17 -0
  13. package/src/app/modals/maps/maps.module.ts +22 -0
  14. package/src/app/modals/maps/maps.page.html +83 -0
  15. package/src/app/modals/maps/maps.page.scss +181 -0
  16. package/src/app/modals/maps/maps.page.spec.ts +24 -0
  17. package/src/app/modals/maps/maps.page.ts +189 -0
  18. package/src/app/modals/send-whatsapp-template/send-whatsapp-template.module.ts +6 -1
  19. package/src/app/modals/send-whatsapp-template/send-whatsapp-template.page.html +195 -13
  20. package/src/app/modals/send-whatsapp-template/send-whatsapp-template.page.scss +341 -70
  21. package/src/app/modals/send-whatsapp-template/send-whatsapp-template.page.spec.ts +5 -5
  22. package/src/app/modals/send-whatsapp-template/send-whatsapp-template.page.ts +216 -23
  23. package/src/app/pages/conversation-detail/conversation-detail.page.ts +7 -7
  24. package/src/assets/i18n/ar.json +1 -1
  25. package/src/assets/i18n/az.json +1 -1
  26. package/src/assets/i18n/de.json +1 -1
  27. package/src/assets/i18n/en.json +1 -1
  28. package/src/assets/i18n/es.json +1 -1
  29. package/src/assets/i18n/fr.json +1 -1
  30. package/src/assets/i18n/it.json +1 -1
  31. package/src/assets/i18n/kk.json +1 -1
  32. package/src/assets/i18n/pt.json +1 -1
  33. package/src/assets/i18n/ru.json +1 -1
  34. package/src/assets/i18n/sr.json +1 -1
  35. package/src/assets/i18n/sv.json +1 -1
  36. package/src/assets/i18n/tr.json +1 -1
  37. package/src/assets/i18n/uk.json +1 -1
  38. package/src/assets/i18n/uz.json +1 -1
  39. package/src/chat-config-template.json +2 -1
  40. package/src/chat-config.json +2 -1
  41. package/src/chat21-core/providers/mqtt/mqtt-conversation-handler.ts +1 -0
  42. package/src/chat21-core/utils/utils.ts +3 -3
  43. package/src/index.html +2 -1
@@ -1,12 +1,14 @@
1
1
  .error-container {
2
- margin-top: 50px;
2
+ margin-top: 70px;
3
3
  display: flex;
4
4
  justify-content: center;
5
5
  }
6
6
 
7
7
  .error-message {
8
+ white-space: pre-line;
8
9
  color: #bababa;
9
10
  font-style: italic;
11
+ text-align: center;
10
12
  }
11
13
 
12
14
  .label-container {
@@ -51,7 +53,6 @@
51
53
  }
52
54
 
53
55
  ion-footer {
54
-
55
56
  display: flex;
56
57
  flex-direction: row;
57
58
  justify-content: flex-end;
@@ -91,16 +92,17 @@ ion-footer {
91
92
 
92
93
  .message-cloud {
93
94
  background-color: #fff;
94
- width: auto;
95
- max-width: 50%;
96
- padding: 8px 10px;
95
+ // width: auto;
96
+ width: 260px;
97
+ //max-width: 50%;
98
+ padding: 8px 10px 2px 10px;
97
99
  //border-radius: 8px 0 8px 8px;
98
100
  border-radius: 8px;
99
- box-shadow: 0 1px 0.5px rgba(0, 0, 0, .15);
101
+ box-shadow: 0 1px 0.5px rgba(0, 0, 0, 0.15);
100
102
  font-size: 12px;
101
103
 
102
104
  .header-preview {
103
- color: rgba(0, 0, 0, .76);
105
+ color: rgba(0, 0, 0, 0.76);
104
106
  font-size: 15px;
105
107
  font-weight: bold;
106
108
  line-height: 19px;
@@ -115,10 +117,49 @@ ion-footer {
115
117
 
116
118
  .footer-preview {
117
119
  padding-top: 6px;
118
- color: rgba(0, 0, 0, .45);
120
+ color: #00000073;
119
121
  font-size: 13px;
120
122
  line-height: 17px;
121
123
  }
124
+
125
+ .whatsapp-call-to-action {
126
+ background-color: #fff;
127
+ color: #00a5f4;
128
+ width: 100%;
129
+ height: 26px;
130
+ font-size: 14px;
131
+ text-transform: none;
132
+ min-width: calc(50% - 2px);
133
+ }
134
+ }
135
+
136
+ .message-cloud-buttons-container {
137
+ max-width: 260px;
138
+ }
139
+
140
+ .message-cloud-buttons {
141
+ margin: 0 -1.5px;
142
+ border: none;
143
+ box-sizing: border-box;
144
+ display: flex;
145
+ flex-wrap: wrap;
146
+ width: 260px;
147
+
148
+ }
149
+
150
+ .message-cloud-button {
151
+ margin: 3px 1.5px 0;
152
+ border-radius: 7.5px;
153
+ padding: 6px 7px 8px 9px;
154
+ min-width: calc(50% - 3px);
155
+ height: 36px;
156
+ flex-grow: 1;
157
+ background-color: white;
158
+ color: #00a5f4;
159
+ box-shadow: 0 1px 0.5px rgba(0, 0, 0, 0.15);
160
+ font-size: 14px;
161
+ font-weight: 500;
162
+ letter-spacing: 0px;
122
163
  }
123
164
 
124
165
  // .message-cloud::after {
@@ -134,33 +175,72 @@ ion-footer {
134
175
  // clear: both;
135
176
  // }
136
177
 
137
- .message-cloud-buttons {
138
- width: calc(50% + 2px);
139
- //max-width: 50%;
140
- display: flex;
141
- flex-direction: row;
142
- margin-left: -2px;
143
-
144
- .whatsapp-button {
145
- background-color:#fff;
146
- color: #00a5f4;;
147
- width: 100%;
148
- height: 34px;
149
- border-radius: 7.5px;
150
- font-size: 14px;
151
- text-transform: none;
152
- box-shadow: 0 1px 0.5px rgba(0, 0, 0, .15);
153
- margin: 2px 0 0 2px;
154
- min-width: calc(50% - 2px);
155
-
156
- }
157
-
158
- // ion-button {
159
- // width: 100%;
160
- // color: #00a5f4;
161
- // }
178
+ // out of ion-grid
179
+ // .whatsapp-button {
180
+ // background-color:#fff;
181
+ // color: #00a5f4;;
182
+ // width: 100%;
183
+ // height: 34px;
184
+ // border-radius: 7.5px;
185
+ // font-size: 14px;
186
+ // text-transform: none;
187
+ // box-shadow: 0 1px 0.5px rgba(0, 0, 0, .15);
188
+ // margin: 2px 0 0 2px;
189
+ // min-width: calc(50% - 2px);
190
+ // }
162
191
 
192
+ // in ion-grid
193
+ .whatsapp-button {
194
+ background-color: #fff;
195
+ color: #00a5f4;
196
+ width: 100%;
197
+ height: 34px;
198
+ border-radius: 7.5px;
199
+ font-size: 14px;
200
+ text-transform: none;
201
+ box-shadow: 0 1px 0.5px rgba(0, 0, 0, 0.15);
202
+ margin: 0px;
163
203
  }
204
+
205
+ // .message-cloud-buttons {
206
+ // width: calc(50% + 2px);
207
+ // //max-width: 50%;
208
+ // display: flex;
209
+ // flex-direction: row;
210
+ // margin-left: -2px;
211
+
212
+ // // out of ion-grid
213
+ // // .whatsapp-button {
214
+ // // background-color:#fff;
215
+ // // color: #00a5f4;;
216
+ // // width: 100%;
217
+ // // height: 34px;
218
+ // // border-radius: 7.5px;
219
+ // // font-size: 14px;
220
+ // // text-transform: none;
221
+ // // box-shadow: 0 1px 0.5px rgba(0, 0, 0, .15);
222
+ // // margin: 2px 0 0 2px;
223
+ // // min-width: calc(50% - 2px);
224
+ // // }
225
+
226
+ // // in ion-grid
227
+ // .whatsapp-button {
228
+ // background-color: #fff;
229
+ // color: #00a5f4;
230
+ // width: 100%;
231
+ // height: 34px;
232
+ // border-radius: 7.5px;
233
+ // font-size: 14px;
234
+ // text-transform: none;
235
+ // box-shadow: 0 1px 0.5px rgba(0, 0, 0, 0.15);
236
+ // margin: 0px;
237
+ // }
238
+
239
+ // // ion-button {
240
+ // // width: 100%;
241
+ // // color: #00a5f4;
242
+ // // }
243
+ // }
164
244
  }
165
245
 
166
246
  .title-back {
@@ -173,12 +253,19 @@ ion-footer {
173
253
  }
174
254
 
175
255
  .parameters-container {
176
- padding: 0px 22px;
256
+ padding: 0px 22px 12px 22px;
177
257
 
178
258
  .parameters-title {
179
259
  font-weight: 500;
180
260
  }
181
261
 
262
+ .parameters-subtitle {
263
+ margin-bottom: 4px;
264
+ font-size: 14px;
265
+ color: #959494;
266
+ margin-top: -12px;
267
+ }
268
+
182
269
  .parameter {
183
270
  display: flex;
184
271
  flex-direction: row;
@@ -214,11 +301,31 @@ ion-footer {
214
301
  }
215
302
  }
216
303
 
304
+ .large {
305
+ width: 80%;
306
+ }
307
+
308
+ .whatsapp-call-to-action {
309
+ background-color: #fff;
310
+ color: #00a5f4;
311
+ width: 200px;
312
+ height: 26px;
313
+ font-size: 14px;
314
+ text-transform: none;
315
+ border-radius: 6px;
316
+ margin-bottom: 4px;
317
+ }
318
+
319
+ .call-to-action-icon {
320
+ font-size: 16px;
321
+ margin-right: 6px;
322
+ }
323
+
217
324
  .field-wrapper input,
218
325
  .field-wrapper textarea {
219
326
  border-style: solid;
220
327
  border-width: 2px;
221
- border-color: rgb(211, 219, 229);
328
+ border-color: #d3dbe5;
222
329
  border-radius: 4px;
223
330
  padding: 15px;
224
331
  border-radius: 4px;
@@ -261,90 +368,103 @@ ion-footer {
261
368
  .loader {
262
369
  height: 310px;
263
370
 
264
- .box{
371
+ .box {
265
372
  top: 50%;
266
373
  left: 50%;
267
374
  transform: translate(-50%, -50%);
268
375
  position: absolute;
269
376
  }
270
377
 
271
- .container{
378
+ .container {
272
379
  height: 15px;
273
380
  width: 105px;
274
381
  display: flex;
275
382
  position: relative;
276
383
 
277
- .circle{
384
+ .circle {
278
385
  width: 15px;
279
386
  height: 15px;
280
387
  border-radius: 50%;
281
388
  background-color: var(--basic-blue);
282
389
  animation: move 500ms linear 0ms infinite;
283
390
  margin-right: 30px;
284
-
285
- &:first-child{
286
- position: absolute;
287
- top:0;
288
- left:0;
289
- animation: grow 500ms linear 0ms infinite;
391
+
392
+ &:first-child {
393
+ position: absolute;
394
+ top: 0;
395
+ left: 0;
396
+ animation: grow 500ms linear 0ms infinite;
290
397
  }
291
-
292
- &:last-child{
293
- position: absolute;
294
- top: 0;
295
- right: 0;
296
- margin-right: 0;
297
- animation: grow 500ms linear 0s infinite reverse;
398
+
399
+ &:last-child {
400
+ position: absolute;
401
+ top: 0;
402
+ right: 0;
403
+ margin-right: 0;
404
+ animation: grow 500ms linear 0s infinite reverse;
298
405
  }
299
406
  }
300
-
301
407
  }
302
408
 
303
409
  .spinner {
304
410
  margin: auto;
305
- border: 8px solid #EAF0F6;
411
+ border: 8px solid #eaf0f6;
306
412
  border-radius: 50%;
307
413
  border-top: 8px solid var(--basic-blue);
308
414
  width: 50px;
309
415
  height: 50px;
310
416
  animation: spinner 1s linear infinite;
311
417
  }
312
-
418
+
313
419
  @keyframes spinner {
314
- 0% { transform: rotate(0deg); }
315
- 100% { transform: rotate(360deg); }
420
+ 0% {
421
+ transform: rotate(0deg);
422
+ }
423
+ 100% {
424
+ transform: rotate(360deg);
425
+ }
316
426
  }
317
427
 
318
- .label{
428
+ .label {
319
429
  text-align: center;
320
430
  margin-top: 10px;
321
431
  animation: blinker 1s linear infinite;
322
432
  }
323
-
433
+
324
434
  @keyframes grow {
325
- from {transform: scale(0,0); opacity: 0;}
326
- to {transform: scale(1,1); opacity: 1;}
435
+ from {
436
+ transform: scale(0, 0);
437
+ opacity: 0;
438
+ }
439
+ to {
440
+ transform: scale(1, 1);
441
+ opacity: 1;
442
+ }
327
443
  }
328
-
444
+
329
445
  @keyframes move {
330
- from {transform: translateX(0px)}
331
- to {transform: translateX(45px)}
446
+ from {
447
+ transform: translateX(0px);
448
+ }
449
+ to {
450
+ transform: translateX(45px);
451
+ }
332
452
  }
333
453
 
334
454
  @keyframes blinker {
335
455
  50% {
336
- opacity: 0;
456
+ opacity: 0;
337
457
  }
338
- }
458
+ }
339
459
  }
340
460
 
341
- ion-toolbar{
342
- &.beta:after{
461
+ ion-toolbar {
462
+ &.beta:after {
343
463
  content: "beta";
344
464
  position: fixed;
345
465
  width: 80px;
346
466
  height: 25px;
347
- background: #EE8E4A;
467
+ background: #ee8e4a;
348
468
  top: 7px;
349
469
  left: -20px;
350
470
  text-align: center;
@@ -354,13 +474,164 @@ ion-toolbar{
354
474
  font-weight: bold;
355
475
  color: #fff;
356
476
  line-height: 27px;
357
- transform:rotate(-45deg);
477
+ transform: rotate(-45deg);
358
478
  }
359
479
 
360
- ion-title{
480
+ ion-title {
361
481
  margin-left: 30px;
362
482
  }
363
483
  }
364
484
 
485
+ .url-button-previsioning {
486
+ padding: 8px 8px;
487
+ border-radius: 4px;
488
+ background-color: #1877f21a;
489
+
490
+ .previsioning-url {
491
+ margin: 0px;
492
+ }
493
+ }
365
494
 
495
+ iframe {
496
+ pointer-events: none;
497
+ }
366
498
 
499
+ ion-button.icon-only {
500
+ height: 40px;
501
+ border: 2px solid #d3dbe5;
502
+ border-radius: 6px;
503
+ }
504
+
505
+ .first-button {
506
+ margin: 0px;
507
+ padding: 0px;
508
+ }
509
+
510
+ // .first-button-mr {
511
+ // margin-right: 1px;
512
+ // }
513
+
514
+ .second-button {
515
+ margin: 0px;
516
+ padding: 0px;
517
+ }
518
+
519
+ // .second-button-ml {
520
+ // margin-left: 1px;
521
+ // }
522
+
523
+ .pdf-preview {
524
+ width: 100%;
525
+ height: 100%;
526
+ background-color: #d3dbe5;
527
+ border-radius: 6px;
528
+ padding: 26px;
529
+ display: flex;
530
+ justify-content: center;
531
+
532
+ p {
533
+ padding: 10px;
534
+ color: white;
535
+ background-color: #80868b;
536
+ border-radius: 12px;
537
+ width: 70px;
538
+ text-align: center;
539
+ }
540
+ }
541
+
542
+ .location-preview {
543
+ width: 100%;
544
+ height: 100%;
545
+ background-color: #d3dbe5;
546
+ border-radius: 6px;
547
+ padding: 26px;
548
+ display: flex;
549
+ justify-content: center;
550
+ background-image: url("https://media.istockphoto.com/id/1306807452/vector/map-city-vector-illustration.jpg?s=612x612&w=0&k=20&c=8efOIy-Ft3trEzeDk3PY2WRjWws8mvKXgkLqCZ2cP5A=");
551
+ background-size: contain;
552
+
553
+ p {
554
+ padding: 10px;
555
+ color: white;
556
+ background-color: #80868b;
557
+ border-radius: 12px;
558
+ width: 100px;
559
+ text-align: center;
560
+ }
561
+ }
562
+
563
+ capacitor-google-map {
564
+ display: inline-block;
565
+ width: 275px;
566
+ height: 400px;
567
+ }
568
+
569
+ .selected-place {
570
+
571
+ background-color: #f3f3f3;
572
+ padding: 8px 8px;
573
+ border-radius: 6px;
574
+ margin-top: 20px;
575
+
576
+ .share-location-header {
577
+ width: 100%;
578
+ display: flex;
579
+ flex-direction: row;
580
+ justify-content: space-between;
581
+ align-items: center;
582
+ }
583
+
584
+ .share-location-title {
585
+ display: flex;
586
+ flex-direction: row;
587
+ align-items: center;
588
+ color: #006a9b;
589
+
590
+ ion-icon {
591
+ margin-right: 4px;
592
+ }
593
+
594
+ p {
595
+ font-size: 14px;
596
+ font-weight: 600;
597
+ }
598
+ }
599
+
600
+ p {
601
+ margin: 0px;
602
+ font-size: 14px;
603
+ }
604
+
605
+ .place-info {
606
+ padding-left: 20px;
607
+
608
+ .place-name {
609
+ font-weight: 500;
610
+ }
611
+
612
+ .place-address {
613
+ font-style: italic;
614
+ }
615
+
616
+ .place-coords {
617
+ font-size: 12px;
618
+ font-weight: 500;
619
+ color: #aaa;
620
+ }
621
+ }
622
+
623
+ ion-button.small {
624
+ background-color: transparent;
625
+ color: #006a9b;
626
+ border-radius: 6px;
627
+ border: solid 1px #006a9b;
628
+ font-size: 14px;
629
+ height: 24px;
630
+ line-height: 23px;
631
+ min-width: 60px;
632
+ }
633
+
634
+ ion-icon {
635
+ margin-right: 6px;
636
+ }
637
+ }
@@ -1,19 +1,19 @@
1
1
  import { async, ComponentFixture, TestBed } from '@angular/core/testing';
2
2
  import { IonicModule } from '@ionic/angular';
3
3
 
4
- import { SendWhatsappTemplatePage } from './send-whatsapp-template.page';
4
+ import { SendWhatsappTemplateModal } from './send-whatsapp-template.page';
5
5
 
6
6
  describe('SendWhatsappTemplatePage', () => {
7
- let component: SendWhatsappTemplatePage;
8
- let fixture: ComponentFixture<SendWhatsappTemplatePage>;
7
+ let component: SendWhatsappTemplateModal;
8
+ let fixture: ComponentFixture<SendWhatsappTemplateModal>;
9
9
 
10
10
  beforeEach(async(() => {
11
11
  TestBed.configureTestingModule({
12
- declarations: [ SendWhatsappTemplatePage ],
12
+ declarations: [ SendWhatsappTemplateModal ],
13
13
  imports: [IonicModule.forRoot()]
14
14
  }).compileComponents();
15
15
 
16
- fixture = TestBed.createComponent(SendWhatsappTemplatePage);
16
+ fixture = TestBed.createComponent(SendWhatsappTemplateModal);
17
17
  component = fixture.componentInstance;
18
18
  fixture.detectChanges();
19
19
  }));