sgh-navbar 0.0.36 → 0.0.37

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 (89) hide show
  1. package/karma.conf.js +44 -0
  2. package/ng-package.json +7 -0
  3. package/package.json +11 -31
  4. package/src/lib/sgh-navbar.component.spec.ts +23 -0
  5. package/src/lib/sgh-navbar.component.ts +20 -0
  6. package/src/lib/sgh-navbar.module.ts +48 -0
  7. package/src/lib/sgh-navbar.service.spec.ts +16 -0
  8. package/src/lib/sgh-navbar.service.ts +34 -0
  9. package/src/lib/sidenav/helper.ts +25 -0
  10. package/src/lib/sidenav/menu-list-item/item1/item1.component.html +1 -0
  11. package/src/lib/sidenav/menu-list-item/item1/item1.component.scss +0 -0
  12. package/src/lib/sidenav/menu-list-item/item1/item1.component.spec.ts +25 -0
  13. package/src/lib/sidenav/menu-list-item/item1/item1.component.ts +15 -0
  14. package/src/lib/sidenav/menu-list-item/item1/sub-item1/sub-item1.component.html +1 -0
  15. package/src/lib/sidenav/menu-list-item/item1/sub-item1/sub-item1.component.scss +0 -0
  16. package/src/lib/sidenav/menu-list-item/item1/sub-item1/sub-item1.component.spec.ts +25 -0
  17. package/src/lib/sidenav/menu-list-item/item1/sub-item1/sub-item1.component.ts +15 -0
  18. package/src/lib/sidenav/menu-list-item/item2/item2.component.html +1 -0
  19. package/src/lib/sidenav/menu-list-item/item2/item2.component.scss +0 -0
  20. package/src/lib/sidenav/menu-list-item/item2/item2.component.spec.ts +25 -0
  21. package/src/lib/sidenav/menu-list-item/item2/item2.component.ts +15 -0
  22. package/src/lib/sidenav/menu-list-item/item3/item3.component.html +1 -0
  23. package/src/lib/sidenav/menu-list-item/item3/item3.component.scss +0 -0
  24. package/src/lib/sidenav/menu-list-item/item3/item3.component.spec.ts +25 -0
  25. package/src/lib/sidenav/menu-list-item/item3/item3.component.ts +15 -0
  26. package/src/lib/sidenav/menu-list-item/menu-list-item.component.html +17 -0
  27. package/src/lib/sidenav/menu-list-item/menu-list-item.component.scss +128 -0
  28. package/src/lib/sidenav/menu-list-item/menu-list-item.component.spec.ts +25 -0
  29. package/src/lib/sidenav/menu-list-item/menu-list-item.component.ts +42 -0
  30. package/src/lib/sidenav/nav-data.ts +98 -0
  31. package/src/lib/sidenav/sidenav-data.ts +12 -0
  32. package/src/lib/sidenav/sidenav.component.html +34 -0
  33. package/src/lib/sidenav/sidenav.component.scss +173 -0
  34. package/src/lib/sidenav/sidenav.component.ts +84 -0
  35. package/src/lib/sidenav/sublevel-menu.component.ts +106 -0
  36. package/src/lib/toolbar/assets/Synergen_Logo-Large2.png +0 -0
  37. package/src/lib/toolbar/noftification-list/noftification-list.component.html +18 -0
  38. package/src/lib/toolbar/noftification-list/noftification-list.component.scss +67 -0
  39. package/src/lib/toolbar/noftification-list/noftification-list.component.spec.ts +25 -0
  40. package/src/lib/toolbar/noftification-list/noftification-list.component.ts +14 -0
  41. package/src/lib/toolbar/search.pipe.ts +18 -0
  42. package/src/lib/toolbar/sub-client-dialog/sub-client-dialog.component.html +14 -0
  43. package/src/lib/toolbar/sub-client-dialog/sub-client-dialog.component.scss +40 -0
  44. package/src/lib/toolbar/sub-client-dialog/sub-client-dialog.component.spec.ts +23 -0
  45. package/src/lib/toolbar/sub-client-dialog/sub-client-dialog.component.ts +41 -0
  46. package/src/lib/toolbar/toolbar-data.ts +35 -0
  47. package/src/lib/toolbar/toolbar.component.html +79 -0
  48. package/src/lib/toolbar/toolbar.component.scss +493 -0
  49. package/src/lib/toolbar/toolbar.component.ts +218 -0
  50. package/{public-api.d.ts → src/public-api.ts} +6 -0
  51. package/src/test.ts +15 -0
  52. package/tsconfig.lib.json +15 -0
  53. package/tsconfig.lib.prod.json +10 -0
  54. package/tsconfig.spec.json +17 -0
  55. package/esm2020/lib/sgh-navbar.component.mjs +0 -22
  56. package/esm2020/lib/sgh-navbar.module.mjs +0 -77
  57. package/esm2020/lib/sgh-navbar.service.mjs +0 -36
  58. package/esm2020/lib/sidenav/helper.mjs +0 -12
  59. package/esm2020/lib/sidenav/menu-list-item/menu-list-item.component.mjs +0 -46
  60. package/esm2020/lib/sidenav/nav-data.mjs +0 -97
  61. package/esm2020/lib/sidenav/sidenav-data.mjs +0 -3
  62. package/esm2020/lib/sidenav/sidenav.component.mjs +0 -92
  63. package/esm2020/lib/sidenav/sublevel-menu.component.mjs +0 -168
  64. package/esm2020/lib/toolbar/noftification-list/noftification-list.component.mjs +0 -14
  65. package/esm2020/lib/toolbar/search.pipe.mjs +0 -21
  66. package/esm2020/lib/toolbar/sub-client-dialog/sub-client-dialog.component.mjs +0 -47
  67. package/esm2020/lib/toolbar/toolbar-data.mjs +0 -9
  68. package/esm2020/lib/toolbar/toolbar.component.mjs +0 -214
  69. package/esm2020/public-api.mjs +0 -10
  70. package/esm2020/sgh-navbar.mjs +0 -5
  71. package/fesm2015/sgh-navbar.mjs +0 -817
  72. package/fesm2015/sgh-navbar.mjs.map +0 -1
  73. package/fesm2020/sgh-navbar.mjs +0 -809
  74. package/fesm2020/sgh-navbar.mjs.map +0 -1
  75. package/index.d.ts +0 -5
  76. package/lib/sgh-navbar.component.d.ts +0 -8
  77. package/lib/sgh-navbar.module.d.ts +0 -21
  78. package/lib/sgh-navbar.service.d.ts +0 -15
  79. package/lib/sidenav/helper.d.ts +0 -9
  80. package/lib/sidenav/menu-list-item/menu-list-item.component.d.ts +0 -16
  81. package/lib/sidenav/nav-data.d.ts +0 -2
  82. package/lib/sidenav/sidenav-data.d.ts +0 -11
  83. package/lib/sidenav/sidenav.component.d.ts +0 -24
  84. package/lib/sidenav/sublevel-menu.component.d.ts +0 -18
  85. package/lib/toolbar/noftification-list/noftification-list.component.d.ts +0 -8
  86. package/lib/toolbar/search.pipe.d.ts +0 -7
  87. package/lib/toolbar/sub-client-dialog/sub-client-dialog.component.d.ts +0 -19
  88. package/lib/toolbar/toolbar-data.d.ts +0 -32
  89. package/lib/toolbar/toolbar.component.d.ts +0 -41
@@ -0,0 +1,40 @@
1
+ .subclientlist-wrapper {
2
+
3
+ .subclientlist-header {
4
+ font-weight: 500;
5
+ line-height: 48px;
6
+ display: flex;
7
+ justify-content: center;
8
+ align-items: center;
9
+ padding-bottom: 0;
10
+ margin: 0;
11
+ }
12
+
13
+ .subclientlist-body {
14
+ font-weight: 400;
15
+ text-align: center;
16
+ color: black;
17
+ padding: 0 15px 15px 15px;
18
+ .subclientlist-radiogrp {
19
+ display: flex;
20
+ flex-direction: column;
21
+ justify-content: flex-start;
22
+ align-items: flex-start;
23
+ }
24
+ }
25
+
26
+ .subclientlist-btns {
27
+ padding: 0;
28
+ min-height: 48px
29
+ }
30
+
31
+ button {
32
+ width: 100%;
33
+ margin-bottom: 0;
34
+ }
35
+
36
+ .mat-mdc-dialog-actions .mat-mdc-button-base + .mat-mdc-button-base {
37
+ margin-left: 0
38
+ }
39
+ }
40
+
@@ -0,0 +1,23 @@
1
+ import { ComponentFixture, TestBed } from '@angular/core/testing';
2
+
3
+ import { SubClientDialogComponent } from './sub-client-dialog.component';
4
+
5
+ describe('SubclientDialogComponent', () => {
6
+ let component: SubClientDialogComponent;
7
+ let fixture: ComponentFixture<SubClientDialogComponent>;
8
+
9
+ beforeEach(async () => {
10
+ await TestBed.configureTestingModule({
11
+ declarations: [ SubClientDialogComponent ]
12
+ })
13
+ .compileComponents();
14
+
15
+ fixture = TestBed.createComponent(SubClientDialogComponent);
16
+ component = fixture.componentInstance;
17
+ fixture.detectChanges();
18
+ });
19
+
20
+ it('should create', () => {
21
+ expect(component).toBeTruthy();
22
+ });
23
+ });
@@ -0,0 +1,41 @@
1
+ import {Component, EventEmitter, Inject, Output} from '@angular/core';
2
+ import {MAT_DIALOG_DATA, MatDialogRef} from "@angular/material/dialog";
3
+ import {ClientListItem, SubClientListItem} from "../toolbar-data";
4
+ import {SghNavbarService} from "../../sgh-navbar.service";
5
+
6
+ @Component({
7
+ selector: 'lib-subclient-dialog',
8
+ templateUrl: './sub-client-dialog.component.html',
9
+ styleUrls: ['./sub-client-dialog.component.scss']
10
+ })
11
+ export class SubClientDialogComponent {
12
+ client: ClientListItem;
13
+ subClientList: SubClientListItem[];
14
+ @Output() subClient = new EventEmitter<any>();
15
+ selectedSubClient: SubClientListItem;
16
+
17
+ constructor(@Inject(MAT_DIALOG_DATA) public data: any, private dialogRef: MatDialogRef<SubClientDialogComponent>, private sghNavbarService: SghNavbarService) {
18
+ this.client = data.client;
19
+ this.subClientList = data.client.subClientList;
20
+ // find the selected sub client
21
+ let selectedSubClientIndex = this.subClientList.findIndex((subClient) => subClient.checked == true);
22
+ this.selectedSubClient = this.subClientList[selectedSubClientIndex];
23
+ }
24
+
25
+ onSubClientSelect(item: SubClientListItem) {
26
+
27
+ // update the sub client list with newly selected values
28
+ this.subClientList.forEach((subClient) => {
29
+ if (subClient == item) {
30
+ subClient.checked = true
31
+ } else {
32
+ subClient.checked = false;
33
+ }
34
+ });
35
+ this.selectedSubClient = item;
36
+ }
37
+
38
+ onSelectBtnClick() {
39
+ this.dialogRef.close({data: {selectedSubClient: this.selectedSubClient}});
40
+ }
41
+ }
@@ -0,0 +1,35 @@
1
+ export class ToolbarData {
2
+ themeOptions: ThemeOption[]
3
+ clientList?: ClientListItem[]
4
+ bgColor: string;
5
+ img: string;
6
+ searchEnable?: boolean;
7
+ notificationEnable?: boolean;
8
+ profileEnable?: boolean;
9
+ settingsEnable?: boolean;
10
+ profileView?: boolean;
11
+ profileContent?: any;
12
+ clientConfigurationEnable?: boolean;
13
+ applicationConfigurationEnable?: boolean;
14
+ isThemeCollapsed?: boolean;
15
+ isNotifNavCollapsed?: boolean;
16
+ }
17
+
18
+ export class ThemeOption {
19
+ name: string;
20
+ value: string;
21
+ checked: boolean;
22
+ }
23
+
24
+ export class ClientListItem {
25
+ text: string;
26
+ value: string;
27
+ selected: boolean;
28
+ subClientList?: SubClientListItem[]
29
+ }
30
+
31
+ export class SubClientListItem {
32
+ text: string;
33
+ value: string;
34
+ checked: boolean
35
+ }
@@ -0,0 +1,79 @@
1
+ <nav class="toolbar-main-wrapper" [style.background-color]="toolbarData.bgColor" id="toolBarWrapper">
2
+ <div class="logo-wrapper">
3
+ <img class="logo" [src]="toolbarData.img"/>
4
+ </div>
5
+ <div>
6
+ <button class="toggle-button" (click)="toggleSidebar()">
7
+ <i class="fa fa-lg fa-bars"></i>
8
+ </button>
9
+ </div>
10
+ <div class="search">
11
+ <div class="form" *ngIf="toolbarData.searchEnable">
12
+ <input type="text" name="text" autocomplete="off" required/>
13
+ <label class="label-name">
14
+ <span class="content-name">
15
+ Search
16
+ </span>
17
+ </label>
18
+ <button class="search-wrapper">
19
+ <i class="fa fa-search"></i>
20
+ </button>
21
+ </div>
22
+ </div>
23
+ <div *ngIf="toolbarData.notificationEnable" class="icon" id="bell" (click)="toggleNotificationList()">
24
+ <i class="fa fa-bell"></i>
25
+ </div>
26
+ <div *ngIf="toolbarData.profileEnable" class="icon" id="bell3" (click)="clickProfile()">
27
+ <i class="fa fa-user"></i>
28
+ </div>
29
+ <div *ngIf="toolbarData.settingsEnable" class="icon" id="bell2" [matMenuTriggerFor]="settingsMenu">
30
+ <i class="fa fa-gear"></i>
31
+ </div>
32
+ </nav>
33
+
34
+ <div *ngIf="toolbarData.profileView" class="notifications">
35
+ <div class="notifications-list-wrapper profile-list-wrapper">
36
+ <div class="notifications-list">
37
+ <div class="notifications-list-item">
38
+ <div [innerHTML]="toolbarData.profileContent"></div>
39
+ </div>
40
+ </div>
41
+ </div>
42
+ </div>
43
+
44
+ <!--Settings related menus start-->
45
+ <mat-menu #settingsMenu="matMenu" xPosition="before">
46
+ <button mat-menu-item [matMenuTriggerFor]="appConfig" *ngIf="toolbarData.applicationConfigurationEnable">Application Settings</button>
47
+ <button mat-menu-item [matMenuTriggerFor]="clientConfig" *ngIf="toolbarData.clientConfigurationEnable" #clientMenuTrigger>Client Settings</button>
48
+ </mat-menu>
49
+ <mat-menu #appConfig="matMenu" xPosition="after">
50
+ <div *ngFor="let themeoption of toolbarData.themeOptions">
51
+ <button mat-menu-item class="radio" (click)="onRadioClick(themeoption.value)">
52
+ <input value="{{themeoption.value}}" name="radio" type="radio" checked [ngModel]="selected"
53
+ (ngModelChange)="setClass($event)">
54
+ <span>{{themeoption.name}}</span>
55
+ </button>
56
+ </div>
57
+ </mat-menu>
58
+ <mat-menu #clientConfig="matMenu" xPosition="after">
59
+ <div style="width: 250px" class="client-menu-wrapper">
60
+ <div class="container-fluid">
61
+ <div class="row">
62
+ <div class="col-sm-12" (click)="$event.stopPropagation();">
63
+ <input type="text" class="search-input" placeholder="Search Client" [(ngModel)]="searchText"/>
64
+ </div>
65
+ <div class="col-sm-12">
66
+ <div class="mt-2 list-item-container">
67
+ <div class="list-item text-truncate" *ngFor="let item of toolbarData.clientList | search : searchText;let i = index"
68
+ [ngClass]="{'client-selected': item.selected}"
69
+ (click)="toggleSelect($event, item);" mat-ripple>{{item.text}}</div>
70
+ </div>
71
+ </div>
72
+ </div>
73
+ </div>
74
+ </div>
75
+ </mat-menu>
76
+
77
+ <!--Settings related menus end-->
78
+
79
+ <app-noftification-list *ngIf="toolbarData.isNotifNavCollapsed"></app-noftification-list>
@@ -0,0 +1,493 @@
1
+ .toolbar-main-wrapper {
2
+ background: url('./assets/Synergen_Logo-Large2.png') repeat-x;
3
+ background-size: 730px;
4
+ background-position: 0 -85px;
5
+ position: relative;
6
+ box-shadow: 0 1px 0px -1px rgb(0 0 0 / 0%), 0px 1px 1px 0px rgb(0 0 0 / 20%), 0px 1px 3px 0px rgb(0 0 0 / 12%);
7
+ z-index: 2;
8
+ }
9
+
10
+ nav {
11
+ display: flex;
12
+ align-items: center;
13
+ background: #494553;
14
+ height: 60px;
15
+ position: relative;
16
+ box-shadow: 0 1px 0 -1px #0000, 0 1px 1px #0003, 0 1px 3px #0000001f;
17
+ }
18
+
19
+ .logo-wrapper {
20
+ width: 15%;
21
+ }
22
+
23
+ .icon {
24
+ cursor: pointer;
25
+ margin-right: 34px;
26
+ border-radius: 20px;
27
+ padding: 0;
28
+
29
+ i {
30
+ color: #005860 !important;
31
+ }
32
+
33
+ }
34
+
35
+ .icon span {
36
+ background: #f00;
37
+ padding: 7px;
38
+ border-radius: 50%;
39
+ color: #fff;
40
+ vertical-align: top;
41
+ margin-left: -25px
42
+ }
43
+
44
+ .icon img {
45
+ display: inline-block;
46
+ width: 26px;
47
+ }
48
+
49
+ .icon:hover {
50
+ background: rgb(0 0 0 / 4%) !IMPORTANT;
51
+ }
52
+
53
+ .search {
54
+ flex: 1;
55
+ margin-left: 50px;
56
+ color: #eee;
57
+ font-size: 20px;
58
+ font-family: monospace
59
+ }
60
+
61
+
62
+ .notifications h2 {
63
+ font-size: 14px;
64
+ padding: 10px;
65
+ border-bottom: 1px solid #eee;
66
+ color: #999
67
+ }
68
+
69
+ .notifications h2 span {
70
+ color: #f00
71
+ }
72
+
73
+ .notifications-item {
74
+ display: flex;
75
+ border-bottom: 1px solid #eee;
76
+ padding: 6px 9px;
77
+ margin-bottom: 0;
78
+ cursor: pointer
79
+ }
80
+
81
+ .notifications-item:hover {
82
+ background-color: #eee
83
+ }
84
+
85
+ .notifications-item img {
86
+ display: block;
87
+ width: 50px;
88
+ height: 50px;
89
+ margin-right: 9px;
90
+ border-radius: 50%;
91
+ margin-top: 2px
92
+ }
93
+
94
+ .notifications-item .text h4 {
95
+ color: #777;
96
+ font-size: 16px;
97
+ margin-top: 3px
98
+ }
99
+
100
+ .notifications-item .text p {
101
+ color: #aaa;
102
+ font-size: 12px
103
+ }
104
+
105
+
106
+ .box {
107
+ width: 280px;
108
+ height: auto;
109
+ background-color: white;
110
+ border-radius: 0;
111
+ display: flex;
112
+ align-items: center;
113
+ padding: 0;
114
+ border-bottom: 2px solid #005860;
115
+ }
116
+
117
+ .box > i {
118
+ font-size: 20px;
119
+ color: #777;
120
+ }
121
+
122
+ .box > input {
123
+ flex: 1;
124
+ height: 35px;
125
+ border: none;
126
+ outline: none;
127
+ font-size: 14px;
128
+ padding-left: 10px;
129
+ }
130
+
131
+ .box > button {
132
+ background: transparent;
133
+ border: none;
134
+ cursor: pointer;
135
+ }
136
+
137
+ .toggle-button {
138
+ background: transparent;
139
+ border: none;
140
+ cursor: pointer;
141
+
142
+ i {
143
+ color: #005860 !important;
144
+ }
145
+ }
146
+
147
+ .search-wrapper {
148
+ border-radius: 20px;
149
+ padding: 13px;
150
+ border: none;
151
+ background: transparent;
152
+ cursor: pointer;
153
+
154
+ i {
155
+ color: #005860 !important;
156
+ }
157
+ }
158
+
159
+ .search-wrapper:hover {
160
+ background: rgb(0 0 0 / 4%) !IMPORTANT;
161
+ }
162
+
163
+ .logo {
164
+ width: 49% !important;
165
+ padding: 0px 19px;
166
+ }
167
+
168
+ $border-bottom-color: #f1f1f3;
169
+ $sgh-color-palette-50: #e0eced;
170
+ $sgh-color-palette-500: #006068;
171
+ $text-color: rgba(0, 0, 0, 0.87);
172
+ .theme-list-wrapper {
173
+ width: 300px !important;
174
+ }
175
+
176
+ .profile-list-wrapper {
177
+ width: 300px !important;
178
+ }
179
+
180
+ .notifications-list-wrapper {
181
+ padding: 10px;
182
+ position: absolute;
183
+ right: 10px;
184
+ top: 45px;
185
+ z-index: 2;
186
+ color: $text-color;
187
+ width: 450px;
188
+
189
+ .notifications-list {
190
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
191
+ position: relative;
192
+
193
+ .notifications-title {
194
+ background-color: #ffffff;
195
+ text-align: center;
196
+ padding: 20px 10px;
197
+ border-bottom: 1px solid $border-bottom-color;
198
+ }
199
+
200
+ .notifications-list-item {
201
+ padding: 10px 10px 10px 10px;
202
+ background-color: #ffffff;
203
+ border-bottom: 1px solid $border-bottom-color;
204
+ font-size: 14px;
205
+
206
+ .item-title {
207
+ margin: 0;
208
+ white-space: normal;
209
+ }
210
+
211
+ .item-description {
212
+ margin: 0;
213
+ color: $text-color;
214
+ opacity: 0.5;
215
+ white-space: normal;
216
+ }
217
+ }
218
+
219
+ .see-all {
220
+ background-color: #ffffff;
221
+ color: $sgh-color-palette-500;
222
+ font-weight: 500;
223
+ }
224
+ }
225
+ }
226
+
227
+ @media screen and (max-width: 599px) {
228
+ .notifications-list-wrapper {
229
+ width: auto;
230
+ }
231
+ }
232
+
233
+ .notifications-list-wrapper {
234
+ -webkit-animation: cardAnim 1s cubic-bezier(0.33, 1, 0.68, 1) 0s 1 normal none;
235
+ animation: cardAnim 1s cubic-bezier(0.33, 1, 0.68, 1) 0s 1 normal none;
236
+ }
237
+
238
+ @keyframes cardAnim {
239
+ 0% {
240
+ opacity: 0;
241
+ transform: rotateX(-100deg);
242
+ transform-origin: top;
243
+ }
244
+
245
+ 100% {
246
+ opacity: 1;
247
+ transform: rotateX(0deg);
248
+ transform-origin: top;
249
+ }
250
+ }
251
+
252
+ select {
253
+ padding: 10px 20px;
254
+ border-radius: 5px;
255
+ width: 100%;
256
+ margin: 3% 10%;
257
+ border: 1px solid #005860;
258
+ }
259
+
260
+ select:focus {
261
+ outline: none;
262
+ }
263
+
264
+
265
+ //additional css
266
+ .form {
267
+ width: 30%;
268
+ position: relative;
269
+ height: 40px;
270
+ overflow: hidden;
271
+ display: flex;
272
+ }
273
+
274
+ .form input {
275
+ width: 100%;
276
+ height: 100%;
277
+ color: #000000;
278
+ padding-top: 10px;
279
+ border: none;
280
+ background-color: #ffffff;
281
+ }
282
+
283
+ .form label {
284
+ position: absolute;
285
+ bottom: 0;
286
+ left: 0;
287
+ width: 100%;
288
+ height: 100%;
289
+ pointer-events: none;
290
+ border-bottom: 1px solid rgba(0, 88, 96, 0.58);
291
+
292
+ }
293
+
294
+ .form label::after {
295
+ content: "";
296
+ position: absolute;
297
+ bottom: -1px;
298
+ left: 0;
299
+ width: 100%;
300
+ height: 100%;
301
+ border-bottom: 3px solid #005860bd;
302
+ transform: translateX(-100%);
303
+ transition: all 0.3s ease;
304
+ }
305
+
306
+ .content-name {
307
+ position: absolute;
308
+ bottom: 0;
309
+ left: 0;
310
+ padding-bottom: 5px;
311
+ font-size: 13px;
312
+ color: #005860bd;
313
+ transition: all 0.3s ease;
314
+ font-family: sans-serif;
315
+ }
316
+
317
+ .form input:focus {
318
+ outline: none;
319
+ }
320
+
321
+ .form input:focus + .label-name .content-name,
322
+ .form input:valid + .label-name .content-name {
323
+ transform: translateY(-80%);
324
+ font-size: 12px;
325
+ left: 0;
326
+ color: #005860;
327
+ }
328
+
329
+ .form input:focus + .label-name::after,
330
+ .form input:valid + .label-name::after {
331
+ transform: translateX(0%);
332
+ }
333
+
334
+ .radio {
335
+ display: block;
336
+ cursor: pointer;
337
+ user-select: none;
338
+ text-align: left;
339
+
340
+ & + .radio {
341
+ margin-top: 12px;
342
+ }
343
+
344
+ input {
345
+ display: none;
346
+
347
+ & + span {
348
+ display: inline-block;
349
+ position: relative;
350
+ padding-left: 30px;
351
+
352
+ &:before {
353
+ content: '';
354
+ display: block;
355
+ position: absolute;
356
+ top: 0;
357
+ left: 0;
358
+ border-radius: 50%;
359
+ margin-right: 5px;
360
+ width: 16px;
361
+ height: 16px;
362
+ border: 1px solid #ccc;
363
+ background: #fff;
364
+ }
365
+
366
+ &:after {
367
+ content: '';
368
+ display: block;
369
+ width: 11px;
370
+ height: 11px;
371
+ background: #005860;
372
+ position: absolute;
373
+ border-radius: 50%;
374
+ top: 3px;
375
+ left: 3px;
376
+ opacity: 0;
377
+ transform: scale(0, 0);
378
+ transition: all .2s cubic-bezier(0.64, 0.57, 0.67, 1.53);
379
+ }
380
+ }
381
+
382
+ &:checked + span:after {
383
+ opacity: 1;
384
+ transform: scale(1, 1);
385
+ }
386
+ }
387
+ }
388
+
389
+
390
+ .client-menu-wrapper{
391
+ .container-fluid{
392
+ padding-right: 15px;
393
+ padding-left: 15px;
394
+ margin: 10px;
395
+ .row{
396
+ display: flex;
397
+ flex-wrap: wrap;
398
+ margin-right: -15px;
399
+ margin-left: -15px;
400
+ flex-direction: column;
401
+ .search-input{
402
+ width: 100%;
403
+ display: block;
404
+ padding: 0.375rem 0.75rem;
405
+ font-size: 12px;
406
+ font-weight: 400;
407
+ line-height: 1.5;
408
+ color: #495057;
409
+ background-color: #fff;
410
+ background-clip: padding-box;
411
+ border: 1px solid #ced4da;
412
+ border-radius: 0.25rem;
413
+ transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
414
+
415
+ }
416
+ .search-input:focus{
417
+ color: #495057;
418
+ background-color: #fff;
419
+ border-color: #80bdff;
420
+ outline: 0;
421
+ box-shadow: 0 0 0 0.2rem #007bff40;
422
+ }
423
+ .list-item-container{
424
+ border: 0.5px rgba(0, 0, 0, 0.12) solid;
425
+ margin-top: 5px;
426
+ border-radius: 5px;
427
+ overflow: hidden;
428
+ .mat-ripple{
429
+ padding: 8px;
430
+ font-size: 12px;
431
+ }
432
+ .mat-ripple:hover{
433
+ background:rgba(118,118,118,.26) ;
434
+ cursor: pointer;
435
+ transition: all .3s ease 0s;
436
+ }
437
+ .client-selected {
438
+ color: white;
439
+ background-color: #005860;
440
+ }
441
+ }
442
+ }
443
+ }
444
+ }
445
+
446
+ //media queries
447
+ @media screen and (max-width: 600px) {
448
+ .search {
449
+ display: none;
450
+ }
451
+ .logo-wrapper {
452
+ width: 30%;
453
+
454
+ .logo {
455
+ width: 78% !important;
456
+ padding: 9px;
457
+ }
458
+ }
459
+ .sgh-sidebar {
460
+ z-index: 1 !important;
461
+ position: absolute !important;
462
+ background: #fff !important;
463
+ }
464
+ .icon {
465
+ cursor: pointer;
466
+ margin-right: 0;
467
+ margin-left: 34px;
468
+ }
469
+ .toggle-button {
470
+ order: -1;
471
+ }
472
+ .logo-wrapper {
473
+ order: 1;
474
+ }
475
+ .icon {
476
+ order: 1;
477
+ }
478
+ #toolBarWrapper {
479
+ padding: 0 15px;
480
+ justify-content: space-between;
481
+ }
482
+ }
483
+
484
+
485
+ @media screen and (min-width: 1900px) {
486
+ .logo {
487
+ width: 29% !important;
488
+ padding: 0 35px;
489
+ }
490
+ }
491
+
492
+
493
+