@beacon-interactive-systems-llc/beacon-platform-ui 17.7.1 → 17.8.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@beacon-interactive-systems-llc/beacon-platform-ui",
3
- "version": "17.7.1",
3
+ "version": "17.8.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^17.3.0",
6
6
  "@angular/core": "^17.3.0",
@@ -418,6 +418,13 @@ button.platform-btn {
418
418
  }
419
419
  }
420
420
 
421
+ mat-icon.button-icon {
422
+ @include themify($platform_button_contrasts) {
423
+ color: apply('buttonBlue');
424
+ }
425
+ cursor: pointer;
426
+ }
427
+
421
428
  input[type="search"]::-webkit-search-cancel-button {
422
429
  -webkit-appearance: none;
423
430
  height: 1em;
@@ -169,3 +169,11 @@ $platform_form_contrasts: (
169
169
  }
170
170
  }
171
171
  }
172
+
173
+ .drawer-file-upload {
174
+ @include themify($platform_form_contrasts) {
175
+ border: 1px dashed apply('formInputBorderActive');
176
+ }
177
+ border-radius: 5px;
178
+ padding: 0.25rem;
179
+ }
@@ -0,0 +1,388 @@
1
+ $platform_fullcalendar_contrasts: (
2
+ light: (
3
+ fullcalendarBorder: $beacon-gray-300,
4
+ fullcalendarToolbar: $beacon-white,
5
+ fullcalendarTodayMonthBackground: $beacon-gray-100,
6
+ fullcalendarToolbarText: $beacon-dark-blue-600,
7
+ fullcalendarToolbarSecondaryText: $beacon-gray-600,
8
+ fullcalendarToolbarScroll: $beacon-dark-blue-300,
9
+ fullcalendarToolbarListview: $beacon-dark-blue-400,
10
+ fullcalendarDateLabel: $beacon-dark-blue-400,
11
+ fullcalendarOutsideDateBackground: $beacon-gray-100,
12
+ fullcalendarOutsideDateLabel: $beacon-gray-300,
13
+ fullcalendarWeekendDateBackground: $beacon-gray-200,
14
+ fullcalendarWeekendDateLabel: $beacon-gray-300,
15
+ fullcalendarTopEventBackground: $beacon-cyan-100,
16
+ fullcalendarTopEventAccent: $beacon-cyan-600,
17
+ fullcalendarTopEventList: $beacon-gray-100,
18
+ fullcalendarSubEventBackground: $beacon-orange-100,
19
+ fullcalendarSubEventAccent: $beacon-orange-500,
20
+ fullcalendarSubEventList: $beacon-gray-50
21
+ ),
22
+ dark: (
23
+ fullcalendarBorder: $beacon-gray-200,
24
+ fullcalendarToolbar: $beacon-gray-600,
25
+ fullcalendarTodayMonthBackground: $beacon-gray-500,
26
+ fullcalendarToolbarText: $beacon-dark-blue-200,
27
+ fullcalendarToolbarSecondaryText: $beacon-gray-300,
28
+ fullcalendarToolbarScroll: $beacon-dark-blue-200,
29
+ fullcalendarToolbarListview: $beacon-dark-blue-300,
30
+ fullcalendarDateLabel: $beacon-dark-blue-300,
31
+ fullcalendarOutsideDateBackground: $beacon-gray-500,
32
+ fullcalendarOutsideDateLabel: $beacon-gray-200,
33
+ fullcalendarWeekendDateBackground: $beacon-gray-600,
34
+ fullcalendarWeekendDateLabel: $beacon-gray-300,
35
+ fullcalendarTopEventBackground: $beacon-dark-blue-300,
36
+ fullcalendarTopEventAccent: $beacon-dark-blue-500,
37
+ fullcalendarTopEventList: $beacon-gray-700,
38
+ fullcalendarSubEventBackground: $beacon-orange-200,
39
+ fullcalendarSubEventAccent: $beacon-orange-600,
40
+ fullcalendarSubEventList: $beacon-gray-600,
41
+ ),
42
+ highcontrast: (
43
+ fullcalendarBorder: $beacon-white,
44
+ fullcalendarToolbar: $beacon-black,
45
+ fullcalendarTodayMonthBackground: $beacon-gray-700,
46
+ fullcalendarToolbarText: $beacon-white,
47
+ fullcalendarToolbarSecondaryText: $beacon-dark-blue-100,
48
+ fullcalendarToolbarScroll: $beacon-dark-blue-200,
49
+ fullcalendarToolbarListview: $highcontrast-bright-blue-300,
50
+ fullcalendarDateLabel: $highcontrast-bright-blue-100,
51
+ fullcalendarOutsideDateBackground: $beacon-gray-700,
52
+ fullcalendarOutsideDateLabel: $beacon-white,
53
+ fullcalendarWeekendDateBackground: $beacon-gray-600,
54
+ fullcalendarWeekendDateLabel: $beacon-white,
55
+ fullcalendarTopEventBackground: $highcontrast-bright-blue-100,
56
+ fullcalendarTopEventAccent: $beacon-cyan-600,
57
+ fullcalendarTopEventList: $beacon-black,
58
+ fullcalendarSubEventBackground: $highcontrast-bright-orange-100,
59
+ fullcalendarSubEventAccent: $highcontrast-bright-orange-300,
60
+ fullcalendarSubEventList: $beacon-gray-700,
61
+ )
62
+ );
63
+
64
+ .fullcalendar-toolbar {
65
+ @include themify($platform_fullcalendar_contrasts) {
66
+ background: apply('fullcalendarToolbar');
67
+ border-top: 1px solid apply('fullcalendarBorder');
68
+ border-left: 1px solid apply('fullcalendarBorder');
69
+ border-right: 1px solid apply('fullcalendarBorder');
70
+ color: apply('fullcalendarToolbarText');
71
+ }
72
+ border-top-right-radius: 8px;
73
+ border-top-left-radius: 8px;
74
+ font-size: 14px;
75
+ display: flex;
76
+ align-items: center;
77
+ min-height: 64px;
78
+ padding: 11px 16px;
79
+
80
+ .today-container {
81
+ @include themify($platform_fullcalendar_contrasts) {
82
+ border: 0.5px solid apply('fullcalendarBorder');
83
+ }
84
+ border-radius: 5px;
85
+ min-width: 48px;
86
+ text-align: center;
87
+
88
+ .today-month {
89
+ @include themify($platform_fullcalendar_contrasts) {
90
+ background: apply('fullcalendarTodayMonthBackground');
91
+ color: apply('fullcalendarToolbarSecondaryText');
92
+ }
93
+ border-top-right-radius: 8px;
94
+ border-top-left-radius: 8px;
95
+ font-size: 10px;
96
+ }
97
+
98
+ &:hover {
99
+ cursor: pointer;
100
+ }
101
+ }
102
+
103
+ .scroll-container {
104
+ display: flex;
105
+
106
+ .scroller {
107
+ display: flex;
108
+ align-items: center;
109
+ height: 32px;
110
+
111
+ mat-icon {
112
+ @include themify($platform_fullcalendar_contrasts) {
113
+ color: apply('fullcalendarToolbarScroll');
114
+ }
115
+ height: 24px;
116
+ margin-left: 4px;
117
+ width: 24px;
118
+ }
119
+
120
+ &--left {
121
+ @include themify($platform_fullcalendar_contrasts) {
122
+ border-top: 0.5px solid apply('fullcalendarBorder');
123
+ border-left: 0.5px solid apply('fullcalendarBorder');
124
+ border-bottom: 0.5px solid apply('fullcalendarBorder');
125
+ }
126
+ border-top-left-radius: 5px;
127
+ border-bottom-left-radius: 5px;
128
+ width: 32px;
129
+ }
130
+
131
+ &--label {
132
+ @include themify($platform_fullcalendar_contrasts) {
133
+ border: 0.5px solid apply('fullcalendarBorder');
134
+ }
135
+ padding: 0px 12px;
136
+ }
137
+
138
+ &--right {
139
+ @include themify($platform_fullcalendar_contrasts) {
140
+ border-top: 0.5px solid apply('fullcalendarBorder');
141
+ border-right: 0.5px solid apply('fullcalendarBorder');
142
+ border-bottom: 0.5px solid apply('fullcalendarBorder');
143
+ }
144
+ border-top-right-radius: 5px;
145
+ border-bottom-right-radius: 5px;
146
+ width: 32px;
147
+ }
148
+ }
149
+ }
150
+
151
+ .listview-indicator {
152
+ @include themify($platform_fullcalendar_contrasts) {
153
+ border: 0.5px solid apply('fullcalendarBorder');
154
+ background: transparent;
155
+ color: apply('fullcalendarToolbarSecondaryText');
156
+ }
157
+ border-radius: 5px;
158
+ padding: 4px 8px;
159
+
160
+ &.active {
161
+ @include themify($platform_fullcalendar_contrasts) {
162
+ background: apply('fullcalendarToolbarListview');
163
+ color: apply('fullcalendarToolbar');
164
+ }
165
+ border: none;
166
+ }
167
+ }
168
+ }
169
+
170
+ .fc-theme-standard td, .fc-theme-standard th,
171
+ .fc-theme-standard .fc-scrollgrid {
172
+ @include themify($platform_fullcalendar_contrasts) {
173
+ border-color: apply('fullcalendarBorder');
174
+ }
175
+ }
176
+
177
+ // Styling for text header day labels (SUN, MON, etc) and date numbers
178
+ .fc-col-header-cell-cushion, .fc-daygrid-day-number {
179
+ @include themify($platform_fullcalendar_contrasts) {
180
+ color: apply('fullcalendarDateLabel');
181
+ }
182
+ font-size: 14px;
183
+ font-weight: bold;
184
+ text-decoration: none;
185
+ }
186
+
187
+ // Right align day numbers
188
+ .fc .fc-daygrid-day-top, .fc .fc-day-other .fc-daygrid-day-top {
189
+ display: flex;
190
+ flex-direction: row;
191
+ opacity: 1;
192
+ }
193
+
194
+ // Style the date boxes
195
+ .fc .fc-daygrid-day-frame {
196
+ min-height: 144px;
197
+ padding: 8px;
198
+ }
199
+
200
+ .fc .fc-day.fc-day-other, .fc .fc-day.fc-day-past {
201
+ @include themify($platform_fullcalendar_contrasts) {
202
+ background: apply('fullcalendarOutsideDateBackground');
203
+
204
+ .fc-daygrid-day-number {
205
+ color: apply('fullcalendarOutsideDateLabel');
206
+ }
207
+ }
208
+
209
+ .fc-event {
210
+ opacity: 0.6;
211
+ }
212
+ }
213
+
214
+ .fc .fc-day.fc-day-today {
215
+ background: transparent;
216
+
217
+ .fc-daygrid-day-top {
218
+ display: flex;
219
+ justify-content: space-between;
220
+
221
+ &:after {
222
+ @include themify($platform_fullcalendar_contrasts) {
223
+ color: apply('fullcalendarDateLabel');
224
+ }
225
+ content: "Today";
226
+ font-size: 14px;
227
+ }
228
+ }
229
+ }
230
+
231
+ .fc .fc-day.fc-day-sat:not(.fc-col-header-cell) , .fc .fc-day.fc-day-sun:not(.fc-col-header-cell) {
232
+ @include themify($platform_fullcalendar_contrasts) {
233
+ background: apply('fullcalendarWeekendDateBackground');
234
+
235
+ .fc-daygrid-day-number {
236
+ color: apply('fullcalendarWeekendDateLabel');
237
+ }
238
+ }
239
+
240
+ .fc-non-business {
241
+ background: transparent;
242
+ }
243
+ }
244
+
245
+ // Style events on calendar view
246
+ .fc .fc-event.use-platform-spacing {
247
+ margin-bottom: 8px;
248
+ }
249
+
250
+ .fc .fc-event.is-subevent {
251
+ margin-left: 12px;
252
+ }
253
+
254
+ .fc-daygrid-event {
255
+ @include themify($platform_fullcalendar_contrasts) {
256
+ background: apply('fullcalendarTopEventBackground');
257
+ border: 1px solid apply('fullcalendarTopEventAccent');
258
+
259
+ &.is-subevent {
260
+ background: apply('fullcalendarSubEventBackground');
261
+ border: 1px solid apply('fullcalendarSubEventAccent');
262
+
263
+ span {
264
+ color: apply('fullcalendarSubEventAccent');
265
+ }
266
+ }
267
+ }
268
+ padding: 2px 8px;
269
+
270
+ &:not(.fc-daygrid-block-event) {
271
+ display: flex;
272
+ justify-content: space-between;
273
+ }
274
+
275
+ &.is-subevent::before {
276
+ @include themify($platform_fullcalendar_contrasts) {
277
+ border-left: 3px dotted apply('fullcalendarBorder');
278
+ border-bottom: 3px dotted apply('fullcalendarBorder');
279
+ }
280
+ content: "";
281
+ border-bottom-left-radius: 8px;
282
+ height: 18px;
283
+ width: 12px;
284
+ position: absolute;
285
+ left: -16px;
286
+ top: -6px;
287
+ }
288
+
289
+ span {
290
+ @include themify($platform_fullcalendar_contrasts) {
291
+ color: apply('fullcalendarTopEventAccent');
292
+ }
293
+ font-size: 12px;
294
+
295
+ &.event-title {
296
+ font-weight: bold;
297
+ overflow: hidden;
298
+ text-overflow: ellipsis;
299
+ text-wrap: nowrap;
300
+ justify-self: start;
301
+ }
302
+ }
303
+
304
+ .fc-event-main {
305
+ @include themify($platform_fullcalendar_contrasts) {
306
+ color: apply('fullcalendarTopEventAccent');
307
+ }
308
+ display: flex;
309
+ justify-content: space-between;
310
+ font-size: 12px;
311
+ }
312
+ }
313
+
314
+ // Other elements on calendar view
315
+ .cal-popover-container {
316
+ .popover-arrow {
317
+ display: none;
318
+ }
319
+
320
+ .popover-body {
321
+ padding: 8px;
322
+ }
323
+
324
+ .calendar-popover {
325
+ min-width: 238px;
326
+ }
327
+ }
328
+
329
+ @mixin calendar-row-label-styles {
330
+ border-top-right-radius: 5px;
331
+ border-bottom-left-radius: 5px;
332
+ font-size: 10px;
333
+ padding: 2px;
334
+ position: absolute;
335
+ right: -1px;
336
+ top: -1px;
337
+ }
338
+
339
+ .calendar-list-container {
340
+ @include themify($platform_fullcalendar_contrasts) {
341
+ border: 1px solid apply('fullcalendarBorder');
342
+ }
343
+ border-radius: 8px;
344
+ max-height: calc(100vh - 100px);
345
+ overflow-y: scroll;
346
+ padding: 11px 16px;
347
+
348
+ .calendar-list-header {
349
+ font-weight: 500;
350
+ margin-bottom: 16px;
351
+ }
352
+
353
+ .calendar-event-row {
354
+ @include themify($platform_fullcalendar_contrasts) {
355
+ background: apply('fullcalendarTopEventList');
356
+ border: 1px solid apply('fullcalendarBorder');
357
+ }
358
+ border-radius: 5px;
359
+ margin-bottom: 8px;
360
+ padding: 8px;
361
+ position: relative;
362
+
363
+ .calendar-event-title::after {
364
+ @include themify($platform_fullcalendar_contrasts) {
365
+ background: apply('fullcalendarTopEventBackground');
366
+ color: apply('fullcalendarTopEventAccent');
367
+ }
368
+ content: "Event";
369
+ @include calendar-row-label-styles();
370
+ }
371
+
372
+ &.calendar-subevent-row {
373
+ @include themify($platform_fullcalendar_contrasts) {
374
+ background: apply('fullcalendarSubEventList');
375
+ }
376
+ margin-left: 12px;
377
+
378
+ .calendar-subevent-title::after {
379
+ @include themify($platform_fullcalendar_contrasts) {
380
+ background: apply('fullcalendarSubEventBackground');
381
+ color: apply('fullcalendarSubEventAccent');
382
+ }
383
+ content: "Mission";
384
+ @include calendar-row-label-styles();
385
+ }
386
+ }
387
+ }
388
+ }
@@ -4,7 +4,7 @@ $platform_layout_contrasts: (
4
4
  containerHeaderBackground: $beacon-gray-100,
5
5
  containerInfoBackground: $beacon-white,
6
6
  containerSidebarBackground: $beacon-dark-blue-50,
7
- containerBorder: $beacon-dark-blue-300,
7
+ containerBorder: $beacon-dark-blue-200,
8
8
  containerShadow: inset 3px 0px 5px 0px $beacon-dark-blue-300,
9
9
  headerBackground: linear-gradient(180deg, $beacon-dark-blue-700, $beacon-dark-blue-500),
10
10
  headerText: $beacon-white,
@@ -299,7 +299,6 @@ $detail-view-width-expanded: calc(100vw - $leftnav-collapsed-width);
299
299
  border: 1px solid apply('containerBorder');
300
300
  }
301
301
  background: $beacon-white;
302
- border: 1px solid $beacon-dark-blue-200;
303
302
  border-radius: 10px;
304
303
  margin-bottom: 16px;
305
304
  min-height: 80px;
@@ -13,6 +13,7 @@ $beacon-dark-blue-500: #1C3775;
13
13
  $beacon-dark-blue-600: #142A64;
14
14
  $beacon-dark-blue-700: #0E1F54;
15
15
 
16
+ $beacon-gray-50: #FBFBFB;
16
17
  $beacon-gray-100: #F4F4F4;
17
18
  $beacon-gray-150: #FAFDFF;
18
19
  $beacon-gray-200: #E4E4E4;
@@ -303,10 +303,15 @@ table.platform-table {
303
303
  }
304
304
 
305
305
  .with-status-dot {
306
+ &.outlined {
307
+ &::before {
308
+ font-family: "Material Icons Outlined" !important;
309
+ }
310
+ }
311
+
306
312
  &.gray {
307
313
  &::before {
308
314
  @include status-dot-positioning();
309
- font-family: "Material Icons Outlined";
310
315
  @include themify($platform_table_contrasts) {
311
316
  color: apply('tableDotGray');
312
317
  }
@@ -27,6 +27,8 @@ $platform_contrasts: (
27
27
  accentOrangeText: $beacon-black,
28
28
  accentLightOrange: $beacon-orange-100,
29
29
  accentLightOrangeText: $beacon-black,
30
+ accentDarkOrange: $beacon-orange-500,
31
+ accentDarkOrangeText: $beacon-white,
30
32
  accentCyan: $beacon-cyan-300,
31
33
  accentCyanText: $beacon-black,
32
34
  ),
@@ -58,6 +60,8 @@ $platform_contrasts: (
58
60
  accentOrangeText: $beacon-black,
59
61
  accentLightOrange: $beacon-orange-400,
60
62
  accentLightOrangeText: $beacon-gray-200,
63
+ accentDarkOrange: $beacon-orange-500,
64
+ accentDarkOrangeText: $beacon-gray-200,
61
65
  accentCyan: $beacon-cyan-300,
62
66
  accentCyanText: $beacon-black
63
67
  ),
@@ -89,6 +93,8 @@ $platform_contrasts: (
89
93
  accentOrangeText: $beacon-black,
90
94
  accentLightOrange: $highcontrast-bright-orange-100,
91
95
  accentLightOrangeText: $beacon-black,
96
+ accentDarkOrange: $highcontrast-bright-orange-200,
97
+ accentDarkOrangeText: $beacon-white,
92
98
  accentCyan: $beacon-cyan-300,
93
99
  accentCyanText: $beacon-black
94
100
  )
@@ -16,6 +16,7 @@ $platform_text_contrasts: (
16
16
  textRed: $beacon-orange-600,
17
17
  textYellow: $beacon-yellow-600,
18
18
  textOrange: $beacon-orange-300,
19
+ textOrangeDark: $beacon-orange-500,
19
20
  textDarkBackground: $beacon-gray-100,
20
21
  ),
21
22
  dark: (
@@ -33,6 +34,7 @@ $platform_text_contrasts: (
33
34
  textRed: $beacon-orange-500,
34
35
  textYellow: $beacon-yellow-500,
35
36
  textOrange: $beacon-orange-400,
37
+ textOrangeDark: $beacon-orange-500,
36
38
  textDarkBackground: $beacon-gray-300,
37
39
  ),
38
40
  highcontrast: (
@@ -50,10 +52,19 @@ $platform_text_contrasts: (
50
52
  textRed: $highcontrast-bright-orange-300,
51
53
  textYellow: $highcontrast-bright-yellow-200,
52
54
  textOrange: $highcontrast-bright-orange-100,
55
+ textOrangeDark: $highcontrast-bright-orange-200,
53
56
  textDarkBackground: $beacon-white,
54
57
  )
55
58
  );
56
59
 
60
+ $font-sizes: 8px, 10px, 12px, 14px, 16px, 18px, 20px, 24px, 32px;
61
+
62
+ .font-size {
63
+ @each $size in $font-sizes {
64
+ &--#{$size} { font-size: $size; }
65
+ }
66
+ }
67
+
57
68
  @mixin font-weight--extrabold { font-family: roboto-black !important }
58
69
  @mixin font-weight--bold { font-family: roboto-bold !important }
59
70
  @mixin font-weight--semibold { font-family: roboto-medium !important }
@@ -101,6 +112,7 @@ $platform_text_contrasts: (
101
112
  &--red { color:apply('textRed') !important; }
102
113
  &--yellow { color:apply('textYellow') !important; }
103
114
  &--orange { color:apply('textOrange') !important; }
115
+ &--dark-orange { color:apply('textOrangeDark') !important; }
104
116
 
105
117
  &--dark-background { color:apply('textDarkBackground') !important; }
106
118
  }
@@ -14,6 +14,7 @@
14
14
  @import "checkboxes";
15
15
  @import "forms";
16
16
  @import "filters";
17
+ @import "fullcalendar";
17
18
  @import "layout";
18
19
  @import "leftnav";
19
20
  @import "material-tabs";
@@ -183,3 +184,13 @@ button, a {
183
184
  filter: invert(100%) sepia(100%) saturate(14%) hue-rotate(88deg) brightness(100%) contrast(100%);
184
185
  }
185
186
  }
187
+
188
+ $icon-sizes: 10px, 12px, 14px, 16px, 18px, 20px, 24px, 32px;
189
+
190
+ @each $size in $icon-sizes {
191
+ mat-icon.size--#{$size} {
192
+ font-size: $size;
193
+ height: $size;
194
+ width: $size;
195
+ }
196
+ }