@chat21/chat21-ionic 3.0.97-rc.1 → 3.0.97-rc.3

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 (124) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/Dockerfile +1 -1
  3. package/GoogleService-Info.plist +36 -0
  4. package/config.xml +6 -3
  5. package/google-services.json +40 -0
  6. package/package.json +8 -13
  7. package/resources/ios/icon/icon-1024.png +0 -0
  8. package/resources/ios/icon/icon-108@2x.png +0 -0
  9. package/resources/ios/icon/icon-20.png +0 -0
  10. package/resources/ios/icon/icon-20@2x.png +0 -0
  11. package/resources/ios/icon/icon-20@3x.png +0 -0
  12. package/resources/ios/icon/icon-24@2x.png +0 -0
  13. package/resources/ios/icon/icon-27.5@2x.png +0 -0
  14. package/resources/ios/icon/icon-29.png +0 -0
  15. package/resources/ios/icon/icon-29@2x.png +0 -0
  16. package/resources/ios/icon/icon-29@3x.png +0 -0
  17. package/resources/ios/icon/icon-40.png +0 -0
  18. package/resources/ios/icon/icon-40@2x.png +0 -0
  19. package/resources/ios/icon/icon-40@3x.png +0 -0
  20. package/resources/ios/icon/icon-44@2x.png +0 -0
  21. package/resources/ios/icon/icon-50.png +0 -0
  22. package/resources/ios/icon/icon-50@2x.png +0 -0
  23. package/resources/ios/icon/icon-60.png +0 -0
  24. package/resources/ios/icon/icon-60@2x.png +0 -0
  25. package/resources/ios/icon/icon-60@3x.png +0 -0
  26. package/resources/ios/icon/icon-72.png +0 -0
  27. package/resources/ios/icon/icon-72@2x.png +0 -0
  28. package/resources/ios/icon/icon-76.png +0 -0
  29. package/resources/ios/icon/icon-76@2x.png +0 -0
  30. package/resources/ios/icon/icon-83.5@2x.png +0 -0
  31. package/resources/ios/icon/icon-86@2x.png +0 -0
  32. package/resources/ios/icon/icon-98@2x.png +0 -0
  33. package/resources/ios/icon/icon.png +0 -0
  34. package/resources/ios/icon/icon@2x.png +0 -0
  35. package/resources/ios/icon.jpg +0 -0
  36. package/resources/ios/splash/Default-1792h~iphone.png +0 -0
  37. package/resources/ios/splash/Default-2436h.png +0 -0
  38. package/resources/ios/splash/Default-2688h~iphone.png +0 -0
  39. package/resources/ios/splash/Default-568h@2x~iphone.png +0 -0
  40. package/resources/ios/splash/Default-667h.png +0 -0
  41. package/resources/ios/splash/Default-736h.png +0 -0
  42. package/resources/ios/splash/Default-Landscape-1792h~iphone.png +0 -0
  43. package/resources/ios/splash/Default-Landscape-2436h.png +0 -0
  44. package/resources/ios/splash/Default-Landscape-2688h~iphone.png +0 -0
  45. package/resources/ios/splash/Default-Landscape-736h.png +0 -0
  46. package/resources/ios/splash/Default-Landscape@2x~ipad.png +0 -0
  47. package/resources/ios/splash/Default-Landscape@~ipadpro.png +0 -0
  48. package/resources/ios/splash/Default-Landscape~ipad.png +0 -0
  49. package/resources/ios/splash/Default-Portrait@2x~ipad.png +0 -0
  50. package/resources/ios/splash/Default-Portrait@~ipadpro.png +0 -0
  51. package/resources/ios/splash/Default-Portrait~ipad.png +0 -0
  52. package/resources/ios/splash/Default@2x~iphone.png +0 -0
  53. package/resources/ios/splash/Default@2x~universal~anyany.png +0 -0
  54. package/resources/ios/splash/Default~iphone.png +0 -0
  55. package/src/app/app-routing.module.ts +6 -5
  56. package/src/app/app.component.html +0 -1
  57. package/src/app/app.component.ts +58 -26
  58. package/src/app/app.module.ts +3 -7
  59. package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.spec.ts +0 -4
  60. package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.ts +0 -38
  61. package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.html +10 -11
  62. package/src/app/chatlib/conversation-detail/message/bubble-message/bubble-message.component.ts +1 -37
  63. package/src/app/chatlib/conversation-detail/message/image/image.component.html +0 -4
  64. package/src/app/chatlib/conversation-detail/message/image/image.component.ts +0 -21
  65. package/src/app/chatlib/conversation-detail/message/info-message/info-message.component.html +3 -3
  66. package/src/app/chatlib/conversation-detail/message/info-message/info-message.component.ts +0 -10
  67. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.html +14 -12
  68. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.scss +4 -0
  69. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.ts +13 -13
  70. package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.html +14 -9
  71. package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.scss +4 -0
  72. package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.ts +20 -14
  73. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.html +11 -13
  74. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.scss +12 -9
  75. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.ts +3 -24
  76. package/src/app/components/conversation-info/advanced-info-accordion/advanced-info-accordion.component.html +0 -13
  77. package/src/app/components/conversation-info/advanced-info-accordion/advanced-info-accordion.component.ts +0 -9
  78. package/src/app/components/conversation-info/conversation-info.module.ts +0 -2
  79. package/src/app/components/conversation-info/info-content/info-content.component.ts +0 -1
  80. package/src/app/components/conversation-info/info-group/info-group.component.ts +0 -11
  81. package/src/app/components/conversations-list/header-conversations-list/header-conversations-list.component.html +4 -10
  82. package/src/app/components/conversations-list/header-conversations-list/header-conversations-list.component.ts +1 -9
  83. package/src/app/components/project-item/project-item.component.html +2 -4
  84. package/src/app/components/project-item/project-item.component.ts +1 -19
  85. package/src/app/components/sidebar-user-details/sidebar-user-details.component.html +1 -1
  86. package/src/app/directives/tooltip.directive.spec.ts +20 -0
  87. package/src/app/directives/tooltip.directive.ts +134 -0
  88. package/src/app/pages/authentication/login/login.page.ts +1 -1
  89. package/src/app/pages/conversation-detail/conversation-detail.module.ts +0 -4
  90. package/src/app/pages/conversation-detail/conversation-detail.page.html +3 -3
  91. package/src/app/pages/conversation-detail/conversation-detail.page.ts +63 -33
  92. package/src/app/pages/conversations-list/conversations-list.page.scss +0 -1
  93. package/src/app/pages/conversations-list/conversations-list.page.ts +101 -19
  94. package/src/app/pages/profile-info/profile-info.module.ts +4 -2
  95. package/src/app/pages/profile-info/profile-info.page.html +76 -16
  96. package/src/app/pages/profile-info/profile-info.page.scss +71 -0
  97. package/src/app/pages/profile-info/profile-info.page.ts +89 -18
  98. package/src/app/shared/shared.module.ts +4 -4
  99. package/src/assets/chat21-logo.png +0 -0
  100. package/src/assets/images/channel_icons/chat21.svg +3 -0
  101. package/src/assets/images/channel_icons/direct.svg +3 -0
  102. package/src/assets/images/channel_icons/email-logo.svg +9 -0
  103. package/src/assets/images/channel_icons/form-logo_v2.svg +13 -0
  104. package/src/assets/images/channel_icons/group.svg +3 -0
  105. package/src/assets/images/channel_icons/messenger-logo.svg +8 -0
  106. package/src/assets/images/channel_icons/telegram-logo.svg +7 -0
  107. package/src/assets/images/channel_icons/whatsapp-logo.svg +12 -0
  108. package/src/assets/logo.png +0 -0
  109. package/src/assets/tiledesk-solo-logo.png +0 -0
  110. package/src/chat21-core/providers/firebase/firebase-auth-service.ts +1 -16
  111. package/src/chat21-core/providers/mqtt/mqtt-conversation-handler.ts +1 -0
  112. package/src/chat21-core/providers/mqtt/mqtt-notifications.ts +2 -2
  113. package/src/chat21-core/utils/constants.ts +7 -0
  114. package/src/chat21-core/utils/utils.ts +22 -12
  115. package/src/global.scss +134 -22
  116. package/src/index.html +1 -2
  117. package/resources/ios/icon.png +0 -0
  118. package/src/app/pages/details/details-routing.module.ts +0 -17
  119. package/src/app/pages/details/details.module.ts +0 -21
  120. package/src/app/pages/details/details.page.html +0 -28
  121. package/src/app/pages/details/details.page.scss +0 -23
  122. package/src/app/pages/details/details.page.spec.ts +0 -24
  123. package/src/app/pages/details/details.page.ts +0 -65
  124. package/src/assets/chat21-logo.svg +0 -78
package/src/global.scss CHANGED
@@ -607,24 +607,29 @@ select:-webkit-autofill:focus {
607
607
 
608
608
  // select teammate status in user detail drawer
609
609
  .teammate-status-in-drawer {
610
-
610
+ &.sidebar{
611
+ --background-color: #2d323e;
612
+ }
613
+ &.profile-info{
614
+ --background-color: #1e2129;
615
+ }
611
616
  &.ng-select {
612
617
 
613
618
  .ng-select-container {
614
- background-color: #2d323e;
619
+ background-color: var(--background-color);
615
620
  color: #fff;
616
- border: 1px solid #2d323e;
621
+ border: 1px solid var(--background-color);
617
622
  }
618
623
  &.ng-select-opened{
619
624
  .ng-select-container {
620
- background-color: #2d323e;
621
- border: 1px solid #2d323e;
625
+ background-color: var(--background-color);
626
+ border: 1px solid var(--background-color);
622
627
  }
623
628
  }
624
629
 
625
630
  &.ng-select-focused:not(.ng-select-opened){
626
631
  >.ng-select-container{
627
- border: 1px solid #2d323e;
632
+ border: 1px solid var(--background-color);
628
633
  box-shadow: unset;
629
634
  }
630
635
  }
@@ -633,11 +638,11 @@ select:-webkit-autofill:focus {
633
638
  }
634
639
 
635
640
  .ng-dropdown-panel {
636
- background-color: #2d323e;
637
- border: 1px solid #2d323e;
641
+ background-color: var(--background-color);
642
+ border: 1px solid var(--background-color);
638
643
 
639
644
  &.ng-select-bottom {
640
- border: 1px solid #2d323e;
645
+ border: 1px solid var(--background-color);
641
646
  margin-top: 8px;
642
647
  border-top-right-radius: 4px;
643
648
  border-top-left-radius: 4px;
@@ -645,7 +650,7 @@ select:-webkit-autofill:focus {
645
650
 
646
651
  .ng-dropdown-panel-items {
647
652
  .ng-option {
648
- background-color: #2d323e;
653
+ background-color: var(--background-color);
649
654
  color: #fff;
650
655
 
651
656
  &.ng-option-marked {
@@ -654,7 +659,7 @@ select:-webkit-autofill:focus {
654
659
  }
655
660
 
656
661
  &.ng-option-selected {
657
- background-color: #2d323e;
662
+ background-color: var(--background-color);
658
663
  color: #fff;
659
664
  }
660
665
 
@@ -756,20 +761,27 @@ ul.dropdown-menu > li > a {
756
761
 
757
762
 
758
763
  //MODALS
759
- .modal-wrapper{
760
- border-radius: 16px !important;
764
+ //is desktop computers, laptops, and smartphones with a stylus
765
+ @media (hover: hover) {
766
+ .modal-wrapper{
767
+ border-radius: 16px !important;
768
+ }
761
769
 
770
+ .json-modal-class .modal-wrapper{
771
+ --height: 90%;
772
+ --width: 70%;
773
+ span.key{ color: red; }
774
+ span.number { color:#6eb4bc; }
775
+ span.boolean { color:#a693e0; }
776
+ span.null { color:#e09393; }
777
+ span.key { color: #a9d18f; }
778
+ }
762
779
  }
780
+ // .modal-wrapper{
781
+ // border-radius: 16px !important;
782
+ // }
783
+
763
784
 
764
- .json-modal-class .modal-wrapper{
765
- --height: 90%;
766
- --width: 70%;
767
- span.key{ color: red; }
768
- span.number { color:#6eb4bc; }
769
- span.boolean { color:#a693e0; }
770
- span.null { color:#e09393; }
771
- span.key { color: #a9d18f; }
772
- }
773
785
 
774
786
 
775
787
  //TOAST
@@ -788,3 +800,103 @@ ul.dropdown-menu > li > a {
788
800
  width: 250px;
789
801
  }
790
802
  }
803
+
804
+
805
+ //TOOLTIP
806
+ .tooltip-container {
807
+ font-family: 'Roboto','Google Sans', Helvetica, Arial, sans-serif;
808
+ font-size: 12px;
809
+ font-style: normal;
810
+ letter-spacing: normal;
811
+ font-stretch: normal;
812
+ font-variant: normal;
813
+ font-weight: 300;
814
+ z-index: 100;
815
+ position: fixed;
816
+ padding: 6px 12px;
817
+ line-height: initial;
818
+ color: black;
819
+ width: auto;
820
+ background:rgb(255, 255, 255);
821
+ border-radius: 10px;
822
+ -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
823
+ box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
824
+ box-sizing: border-box;
825
+ opacity: 0;
826
+ transform: translate(-80%, -70%);
827
+ animation: tooltip-slide 0.18s ease-out 0.5s;
828
+ animation-fill-mode: forwards;
829
+ pointer-events: none;
830
+ }
831
+
832
+ @keyframes tooltip-slide {
833
+ 0% {
834
+ opacity: 0;
835
+ transform: translate(-50%, -70%);
836
+ }
837
+ 100% {
838
+ opacity: 1;
839
+ transform: translate(-50%, -50%);
840
+ }
841
+ }
842
+
843
+
844
+ .ng-tooltip {
845
+ position: absolute;
846
+ max-width: 150px;
847
+ font-size: 14px;
848
+ text-align: center;
849
+ color: black;
850
+ padding: 3px 8px;
851
+ background:rgb(255, 255, 255);
852
+ -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
853
+ box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
854
+ border-radius: 10px;
855
+ z-index: 1000;
856
+ opacity: 0;
857
+
858
+ font-family: 'Roboto','Google Sans', Helvetica, Arial, sans-serif;
859
+ font-size: 12px;
860
+ font-style: normal;
861
+ letter-spacing: normal;
862
+ font-stretch: normal;
863
+ font-variant: normal;
864
+ font-weight: 300;
865
+
866
+ }
867
+ .ng-tooltip:after {
868
+ content: "";
869
+ position: absolute;
870
+ border-style: solid;
871
+ }
872
+ .ng-tooltip-top:after {
873
+ top: 100%;
874
+ left: 50%;
875
+ margin-left: -5px;
876
+ border-width: 5px;
877
+ border-color: rgb(255, 255, 255) transparent transparent transparent;
878
+ }
879
+ .ng-tooltip-bottom:after {
880
+ bottom: 100%;
881
+ left: 50%;
882
+ margin-left: -5px;
883
+ border-width: 5px;
884
+ border-color: transparent transparent rgb(255, 255, 255) transparent;
885
+ }
886
+ .ng-tooltip-left:after {
887
+ top: 50%;
888
+ left: 100%;
889
+ margin-top: -5px;
890
+ border-width: 5px;
891
+ border-color: transparent transparent transparent rgb(255, 255, 255);
892
+ }
893
+ .ng-tooltip-right:after {
894
+ top: 50%;
895
+ right: 100%;
896
+ margin-top: -5px;
897
+ border-width: 5px;
898
+ border-color: transparent rgb(255, 255, 255) transparent transparent;
899
+ }
900
+ .ng-tooltip-show {
901
+ opacity: 1;
902
+ }
package/src/index.html CHANGED
@@ -11,8 +11,7 @@
11
11
 
12
12
  <!-- <meta name="color-scheme" content="light dark" /> disable dark mode: Note in theme/variable.scss is also commented all the code that referts to dark-mode -->
13
13
  <meta name="color-scheme" content="light" />
14
- <meta name="viewport"
15
- content="viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" />
14
+ <meta name="viewport" content="width=device-width, height=device-height ,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" />
16
15
  <meta name="format-detection" content="telephone=no" />
17
16
  <meta name="msapplication-tap-highlight" content="no" />
18
17
 
Binary file
@@ -1,17 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { Routes, RouterModule } from '@angular/router';
3
-
4
- import { DetailsPage } from './details.page';
5
-
6
- const routes: Routes = [
7
- {
8
- path: '',
9
- component: DetailsPage
10
- }
11
- ];
12
-
13
- @NgModule({
14
- imports: [RouterModule.forChild(routes)],
15
- exports: [RouterModule],
16
- })
17
- export class DetailsPageRoutingModule {}
@@ -1,21 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { FormsModule } from '@angular/forms';
4
-
5
- import { IonicModule } from '@ionic/angular';
6
-
7
- import { DetailsPageRoutingModule } from './details-routing.module';
8
-
9
- import { DetailsPage } from './details.page';
10
-
11
- @NgModule({
12
- imports: [
13
- CommonModule,
14
- FormsModule,
15
- IonicModule,
16
- DetailsPageRoutingModule
17
- ],
18
- declarations: [
19
- DetailsPage]
20
- })
21
- export class DetailsPageModule {}
@@ -1,28 +0,0 @@
1
- <ion-header class="ion-no-border">
2
- <ion-toolbar>
3
-
4
- <!-- <ion-buttons slot="start">
5
- <ion-button ion-button icon-only fill="clear" (click)="onOpenContactsDirectory($event)">
6
- <ion-icon slot="icon-only" name="reorder-three-outline"></ion-icon>
7
- </ion-button>
8
- </ion-buttons> -->
9
-
10
- <ion-title>
11
- conversation
12
- </ion-title>
13
-
14
- <!-- <ion-buttons slot="end">
15
- <ion-button ion-button fill="clear" (click)="onClose()">
16
- <ion-icon slot="icon-only" name="alert-circle-outline"></ion-icon>
17
- </ion-button>
18
- <ion-button ion-button fill="clear" (click)="onClose()">
19
- <ion-icon slot="icon-only" name="alert-circle-outline"></ion-icon>
20
- </ion-button>
21
- </ion-buttons> -->
22
-
23
- </ion-toolbar>
24
- </ion-header>
25
-
26
- <ion-content>
27
- detail
28
- </ion-content>
@@ -1,23 +0,0 @@
1
- ion-header {
2
- border-bottom-style: solid;
3
- border-color: var(--light-gray);
4
- border-bottom-width: thin;
5
- }
6
- ion-grid {
7
- height: 100%;
8
- background-color: gainsboro;
9
- }
10
- .content {
11
- height: 100%;
12
- }
13
- .chat{
14
- height: calc(100% - 40px);
15
- }
16
- .insert{
17
- height: 40px;
18
- background-color: red;
19
- }
20
- .info {
21
- max-width: 250px;
22
- background-color: yellow;
23
- }
@@ -1,24 +0,0 @@
1
- import { async, ComponentFixture, TestBed } from '@angular/core/testing';
2
- import { IonicModule } from '@ionic/angular';
3
-
4
- import { DetailsPage } from './details.page';
5
-
6
- describe('DetailsPage', () => {
7
- let component: DetailsPage;
8
- let fixture: ComponentFixture<DetailsPage>;
9
-
10
- beforeEach(async(() => {
11
- TestBed.configureTestingModule({
12
- declarations: [ DetailsPage ],
13
- imports: [IonicModule.forRoot()]
14
- }).compileComponents();
15
-
16
- fixture = TestBed.createComponent(DetailsPage);
17
- component = fixture.componentInstance;
18
- fixture.detectChanges();
19
- }));
20
-
21
- it('should create', () => {
22
- expect(component).toBeTruthy();
23
- });
24
- });
@@ -1,65 +0,0 @@
1
- import { Component, OnInit, OnDestroy, HostListener } from '@angular/core';
2
- import { ActivatedRoute, Router } from '@angular/router';
3
-
4
- // Logger
5
- import { LoggerService } from 'src/chat21-core/providers/abstract/logger.service';
6
- import { LoggerInstance } from 'src/chat21-core/providers/logger/loggerInstance';
7
-
8
- @Component({
9
- selector: 'app-details',
10
- templateUrl: './details.page.html',
11
- styleUrls: ['./details.page.scss'],
12
- })
13
- export class DetailsPage implements OnInit, OnDestroy {
14
-
15
- conversationWith: string;
16
- conversationWithFullname: string;
17
- private logger: LoggerService = LoggerInstance.getInstance();
18
- constructor(
19
- private route: ActivatedRoute,
20
- private router: Router
21
-
22
- ) {
23
- this.conversationWith = this.route.snapshot.paramMap.get('IDConv');
24
- this.conversationWithFullname = this.route.snapshot.paramMap.get('FullNameConv');
25
- this.logger.log('constructor DetailsPage: ', this.conversationWith, this.conversationWithFullname);
26
- }
27
-
28
- ngOnInit() {
29
- this.conversationWith = this.route.snapshot.paramMap.get('IDConv');
30
- this.conversationWithFullname = this.route.snapshot.paramMap.get('FullNameConv');
31
- this.logger.log('ngOnInit DetailsPage: ', this.conversationWith, this.conversationWithFullname);
32
- }
33
-
34
- // ngOnDestroy() {
35
- // this.conversationWith = this.route.snapshot.paramMap.get('IDConv');
36
- // this.conversationWithFullname = this.route.snapshot.paramMap.get('FullNameConv');
37
- // this.logger.log('ngOnDestroy DetailsPage: ', this.conversationWith, this.conversationWithFullname);
38
- // // this.destroyParent();
39
- // }
40
-
41
- @HostListener("window:beforeunload")
42
- ngOnDestroy() {
43
- this.logger.log("Parent component destroyed")
44
- }
45
-
46
- ionViewWillEnter() {
47
- this.conversationWith = this.route.snapshot.paramMap.get('IDConv');
48
- this.conversationWithFullname = this.route.snapshot.paramMap.get('FullNameConv');
49
- this.logger.log('ionViewWillEnter DetailsPage: ', this.conversationWith, this.conversationWithFullname);
50
- }
51
-
52
- /** */
53
- ionViewDidEnter() {
54
- this.conversationWith = this.route.snapshot.paramMap.get('IDConv');
55
- this.conversationWithFullname = this.route.snapshot.paramMap.get('FullNameConv');
56
- this.logger.log('ionViewDidEnter DetailsPage: ', this.conversationWith, this.conversationWithFullname);
57
- }
58
-
59
- ionViewWillLeave() {
60
- this.conversationWith = this.route.snapshot.paramMap.get('IDConv');
61
- this.conversationWithFullname = this.route.snapshot.paramMap.get('FullNameConv');
62
- this.logger.log('ionViewWillLeave DetailsPage: ', this.conversationWith, this.conversationWithFullname);
63
- }
64
-
65
- }
@@ -1,78 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
- <svg
3
- xmlns:dc="http://purl.org/dc/elements/1.1/"
4
- xmlns:cc="http://creativecommons.org/ns#"
5
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
6
- xmlns:svg="http://www.w3.org/2000/svg"
7
- xmlns="http://www.w3.org/2000/svg"
8
- id="svg30"
9
- version="1.1"
10
- viewBox="0 0 412 132">
11
- <metadata
12
- id="metadata34">
13
- <rdf:RDF>
14
- <cc:Work
15
- rdf:about="">
16
- <dc:format>image/svg+xml</dc:format>
17
- <dc:type
18
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
19
- </cc:Work>
20
- </rdf:RDF>
21
- </metadata>
22
- <defs
23
- id="defs4">
24
- <style
25
- id="style2">.cls-1{fill:#3c3c3b;}.cls-2{fill:#ef806e;}.cls-3{fill:none;}</style>
26
- </defs>
27
- <title
28
- id="title6">tiledesk-logo</title>
29
- <g
30
- data-name="Livello 2"
31
- id="Livello_2">
32
- <g
33
- data-name="Livello 1"
34
- id="Livello_1-2">
35
- <path
36
- id="path8"
37
- d="M88.09,58.83h11V41.69h7V58.83h10.93v6.52H106.14v37.59h-7V65.35h-11Z"
38
- class="cls-1" />
39
- <path
40
- id="path10"
41
- d="M135,46.75a4.45,4.45,0,1,1-1.3-3.16A4.3,4.3,0,0,1,135,46.75Zm-7.92,56.19V58.83h7v44.11Z"
42
- class="cls-1" />
43
- <path
44
- id="path12"
45
- d="M149.54,102.94V27.75h7v75.19Z"
46
- class="cls-1" />
47
- <path
48
- id="path14"
49
- d="M214.71,83.59h-38.8a15,15,0,0,0,5.51,9.32,15.94,15.94,0,0,0,17.49,2A16.22,16.22,0,0,0,204.68,90h8a22.46,22.46,0,0,1-8.47,10,21,21,0,0,1-11.53,3.66,25.12,25.12,0,0,1-10-1.8,23.88,23.88,0,0,1-7.32-4.91,21.92,21.92,0,0,1-6.77-16.24,23.1,23.1,0,0,1,23.06-23.06,22.57,22.57,0,0,1,16.09,6.52,21,21,0,0,1,7,15.74ZM201.62,68.26a15.18,15.18,0,0,0-10-3.61q-8.57,0-13.53,7.77A15.58,15.58,0,0,0,176,77.58h31.28A16.21,16.21,0,0,0,201.62,68.26Z"
50
- class="cls-1" />
51
- <path
52
- id="path16"
53
- d="M261.32,102.94V95.41q-.59.77-1.25,1.52a20.38,20.38,0,0,1-30.78,0,24.24,24.24,0,0,1,0-32.08,20.38,20.38,0,0,1,30.78,0q.66.74,1.25,1.52V27.75h7v75.19Zm-4.46-33.28a15.16,15.16,0,0,0-22.16,0,16.36,16.36,0,0,0,0,22.46,15.16,15.16,0,0,0,22.16,0,16.36,16.36,0,0,0,0-22.46Z"
54
- class="cls-1" />
55
- <path
56
- id="path18"
57
- d="M326.49,83.59h-38.8a15,15,0,0,0,5.51,9.32,15.94,15.94,0,0,0,17.49,2A16.22,16.22,0,0,0,316.46,90h8A22.46,22.46,0,0,1,316,100a21,21,0,0,1-11.53,3.66,25.12,25.12,0,0,1-10-1.8,23.88,23.88,0,0,1-7.32-4.91,21.92,21.92,0,0,1-6.77-16.24,23.1,23.1,0,0,1,23.06-23.06,22.57,22.57,0,0,1,16.09,6.52,21,21,0,0,1,7,15.74ZM313.4,68.26a15.18,15.18,0,0,0-10-3.61q-8.58,0-13.53,7.77a15.58,15.58,0,0,0-2.11,5.16h31.28A16.21,16.21,0,0,0,313.4,68.26Z"
58
- class="cls-1" />
59
- <path
60
- id="path20"
61
- d="M351.22,98.43q9.63,0,9.63-7.2,0-4.2-6.9-6.44-2.91-1-6.26-1.77a34,34,0,0,1-6.3-2.16,12.35,12.35,0,0,1-5.11-4,9.67,9.67,0,0,1-1.7-5.7q0-6.57,4.62-10a18.18,18.18,0,0,1,11-3.39,20,20,0,0,1,10.66,2.64q4.23,2.6,5.64,9.29H359q-1.12-3.69-3.42-4.9A11.72,11.72,0,0,0,350,63.64a10.66,10.66,0,0,0-5.63,1.42,4.8,4.8,0,0,0-2.4,4.42,5,5,0,0,0,2,4.36,17.61,17.61,0,0,0,4.87,2.28q2.91.91,6.26,1.66A29.59,29.59,0,0,1,361.46,80q6.81,3.25,6.81,10.37t-5.1,10.52a19.46,19.46,0,0,1-5.67,2.55,25.09,25.09,0,0,1-6.67.85q-15.34,0-17.62-13.63h7.42q1.12,4.29,3.78,6A12,12,0,0,0,351.22,98.43Z"
62
- class="cls-1" />
63
- <path
64
- id="path22"
65
- d="M378.32,102.94V27.75h7V78.58l16.14-19.85h9.32L392.65,80.19,412,102.94h-9.32L385.33,81.78v21.17Z"
66
- class="cls-1" />
67
- <polygon
68
- id="polygon24"
69
- points="38.24 27.75 0 27.75 0 104.25 76.49 104.25 76.49 66 38.24 66 38.24 27.75"
70
- class="cls-2" />
71
- <rect
72
- id="rect26"
73
- height="132"
74
- width="412"
75
- class="cls-3" />
76
- </g>
77
- </g>
78
- </svg>