@progress/kendo-theme-core 12.1.0 → 12.2.0-dev.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,7 +1,7 @@
1
1
  {
2
2
  "name": "@progress/kendo-theme-core",
3
3
  "description": "A collection of functions and mixins used for building themes for Kendo UI",
4
- "version": "12.1.0",
4
+ "version": "12.2.0-dev.0",
5
5
  "author": "Progress",
6
6
  "license": "Apache-2.0",
7
7
  "keywords": [
@@ -46,5 +46,5 @@
46
46
  "directories": {
47
47
  "doc": "docs"
48
48
  },
49
- "gitHead": "c21230377775b7e87f6c8c6590409f0c2d41d99f"
49
+ "gitHead": "5a687d60086d3e91f182d65b18f54f969d760af6"
50
50
  }
@@ -44,7 +44,7 @@
44
44
  $kendo-breadcrumb-link-focus-bg,
45
45
  $kendo-breadcrumb-link-focus-border
46
46
  );
47
- @include focus-indicator( $kendo-breadcrumb-link-focus-shadow );
47
+ @include focus-indicator( $kendo-breadcrumb-link-focus-shadow, true );
48
48
  }
49
49
  }
50
50
 
@@ -75,7 +75,7 @@
75
75
  $kendo-breadcrumb-root-link-focus-bg,
76
76
  $kendo-breadcrumb-root-link-focus-border
77
77
  );
78
- @include focus-indicator( $kendo-breadcrumb-root-link-focus-shadow );
78
+ @include focus-indicator( $kendo-breadcrumb-root-link-focus-shadow, true );
79
79
  }
80
80
  }
81
81
 
@@ -6,6 +6,7 @@
6
6
  @use "./variables.scss" as *;
7
7
  @use "../toolbar/_variables.scss" as *;
8
8
  @use "../bubble/_variables.scss" as *;
9
+ @use "../button/_variables.scss" as *;
9
10
  @use "../../color-system/_functions.import.scss" as *;
10
11
 
11
12
  @mixin kendo-chat--layout-base() {
@@ -27,6 +28,12 @@
27
28
  overflow: hidden;
28
29
  -webkit-touch-callout: none;
29
30
  -webkit-tap-highlight-color: $kendo-color-rgba-transparent;
31
+
32
+ .k-chat-file {
33
+ min-width: $kendo-chat-file-min-width;
34
+ max-width: $kendo-chat-file-max-width;
35
+ flex-shrink: 0;
36
+ }
30
37
  }
31
38
 
32
39
  // Chat header
@@ -46,7 +53,7 @@
46
53
  }
47
54
 
48
55
  .k-message-list-content {
49
- padding-block: $kendo-chat-message-list-padding-y;
56
+ padding-block: $kendo-chat-message-list-padding-y calc(#{$kendo-chat-message-list-padding-y} / 2);
50
57
  padding-inline: $kendo-chat-message-list-padding-x;
51
58
  width: 100%;
52
59
  box-sizing: border-box;
@@ -60,6 +67,13 @@
60
67
  > * + * {
61
68
  margin-block-start: $kendo-chat-message-list-spacing;
62
69
  }
70
+
71
+ &.k-message-list-content-empty {
72
+ flex: 1;
73
+ flex-flow: column wrap;
74
+ align-content: center;
75
+ justify-content: center;
76
+ }
63
77
  }
64
78
 
65
79
  // Message group
@@ -89,12 +103,28 @@
89
103
 
90
104
  .k-chat-file-wrapper {
91
105
  padding: 0;
92
- gap: 0;
93
106
  overflow: hidden;
94
107
  }
95
108
 
96
- .k-chat-file {
97
- width: 100%;
109
+ > .k-chat-user-status-wrapper {
110
+ position: relative;
111
+ align-self: flex-end;
112
+ overflow: hidden;
113
+ }
114
+
115
+ .k-chat-user-status {
116
+ display: flex;
117
+ width: auto;
118
+ min-width: $kendo-chat-status-min-size;
119
+ max-width: $kendo-chat-status-max-size;
120
+ height: auto;
121
+ min-height: $kendo-chat-status-min-size;
122
+ max-height: $kendo-chat-status-max-size;
123
+ overflow: hidden;
124
+ position: absolute;
125
+ bottom: 0;
126
+ inset-inline-end: 0;
127
+ border-radius: k-border-radius(full);
98
128
  }
99
129
  }
100
130
 
@@ -116,8 +146,6 @@
116
146
  .k-chat-download-button-wrapper {
117
147
  width: 100%;
118
148
  box-sizing: border-box;
119
- padding-inline: $kendo-chat-file-download-padding-x;
120
- padding-block-end: $kendo-chat-file-download-padding-y;
121
149
  border-radius: 0 0 $kendo-chat-file-border-radius $kendo-chat-file-border-radius;
122
150
  text-align: start;
123
151
  }
@@ -138,9 +166,21 @@
138
166
  align-self: flex-end;
139
167
  }
140
168
 
169
+ .k-message:has(+.k-message) .k-chat-bubble {
170
+ border-end-end-radius: 0;
171
+ border-end-start-radius: $kendo-bubble-border-radius;
172
+ }
173
+
174
+ .k-message + .k-message .k-chat-bubble {
175
+ border-start-end-radius: 0;
176
+ border-start-start-radius: $kendo-bubble-border-radius;
177
+ border-end-start-radius: $kendo-bubble-border-radius;
178
+ }
179
+
141
180
  .k-message:last-of-type .k-chat-bubble {
142
181
  border-end-start-radius: $kendo-bubble-border-radius;
143
182
  border-end-end-radius: $kendo-bubble-border-radius-sm;
183
+ border-start-start-radius: $kendo-bubble-border-radius;
144
184
  }
145
185
  }
146
186
 
@@ -163,6 +203,15 @@
163
203
  border-end-start-radius: $kendo-bubble-border-radius;
164
204
  }
165
205
 
206
+ &:has(+.k-message) .k-chat-bubble {
207
+ border-end-start-radius: 0;
208
+ }
209
+
210
+ & + .k-message .k-chat-bubble {
211
+ border-start-start-radius: 0;
212
+ border-end-start-radius: 0;
213
+ }
214
+
166
215
  &:last-of-type .k-chat-bubble {
167
216
  border-end-start-radius: $kendo-bubble-border-radius-sm;
168
217
  }
@@ -186,8 +235,11 @@
186
235
  width: 100%;
187
236
  max-width: 100%;
188
237
 
189
- .k-message,
190
- .k-chat-bubble {
238
+ &.k-message-group-sender .k-message:has(.k-skeleton) {
239
+ align-self: stretch;
240
+ }
241
+
242
+ .k-chat-bubble:has(.k-skeleton) {
191
243
  width: 100%;
192
244
  }
193
245
  }
@@ -344,16 +396,20 @@
344
396
  font-weight: bold;
345
397
  }
346
398
 
347
- // Timestamp
348
- .k-timestamp {
399
+ // Timestamp and event
400
+ .k-timestamp,
401
+ .k-chat-event {
349
402
  font-size: $kendo-chat-timestamp-font-size;
350
403
  line-height: $kendo-chat-timestamp-line-height;
351
- text-transform: $kendo-chat-timestamp-transform;
352
- text-align: center;
353
- align-self: stretch;
354
404
  display: flex;
355
405
  align-items: center;
356
406
  gap: $kendo-chat-timestamp-separator-spacing;
407
+ }
408
+
409
+ // Timestamp
410
+ .k-timestamp {
411
+ text-transform: $kendo-chat-timestamp-transform;
412
+ align-self: stretch;
357
413
 
358
414
  &::before,
359
415
  &::after {
@@ -364,15 +420,23 @@
364
420
  }
365
421
  }
366
422
 
423
+ // Events
424
+ .k-chat-event {
425
+ width: 100%;
426
+ justify-content: center;
427
+ }
428
+
367
429
  .k-message-box-wrapper {
368
430
  padding-inline: $kendo-chat-padding-x;
369
- padding-block-end: $kendo-chat-padding-y;
431
+ padding-block: calc( #{$kendo-chat-padding-y} / 2 ) $kendo-chat-padding-y;
370
432
  display: flex;
371
433
  flex-direction: column;
372
434
  gap: $kendo-chat-padding-y;
373
435
 
374
436
  .k-chat-file-wrapper {
375
- flex-direction: row;
437
+ flex-flow: row nowrap;
438
+ overflow-x: auto;
439
+ scrollbar-width: none;
376
440
  }
377
441
  }
378
442
 
@@ -420,6 +484,20 @@
420
484
  width: 100%;
421
485
  max-width: 100%;
422
486
  overflow: hidden;
487
+
488
+ &.k-chat-files-horizontal {
489
+ overflow-x: auto;
490
+ scrollbar-width: none;
491
+ }
492
+ }
493
+
494
+ .k-chat-files-horizontal,
495
+ .k-chat-files-wrap {
496
+ flex-direction: row;
497
+ }
498
+
499
+ .k-chat-files-horizontal {
500
+ flex-wrap: nowrap;
423
501
  }
424
502
 
425
503
  .k-chat-file {
@@ -434,6 +512,7 @@
434
512
  padding-inline: $kendo-chat-file-padding-x;
435
513
  padding-block: $kendo-chat-file-padding-y;
436
514
  border-radius: $kendo-chat-file-border-radius;
515
+ min-width: 0;
437
516
 
438
517
  >.k-icon {
439
518
  flex-shrink: 0;
@@ -453,7 +532,8 @@
453
532
 
454
533
  .k-chat-file-name {
455
534
  font-weight: bold;
456
- font-size: var( --kendo-font-size-sm, inherit);
535
+ font-size: $kendo-chat-file-name-font-size;
536
+ line-height: $kendo-chat-file-name-line-height;
457
537
  width: 100%;
458
538
  white-space: nowrap;
459
539
  overflow: hidden;
@@ -462,13 +542,12 @@
462
542
 
463
543
  .k-chat-file-size,
464
544
  .k-chat-file-status {
465
- font-size: var( --kendo-font-size-xs, inherit);
545
+ font-size: $kendo-chat-file-size-font-size;
546
+ line-height: $kendo-chat-file-size-line-height;
466
547
  }
467
- }
468
548
 
469
- .k-message-group {
470
- .k-chat-file + .k-chat-file:not(.k-chat-file-deleted) {
471
- padding-block-start: 0;
549
+ &.k-chat-file-deleted {
550
+ min-height: calc( #{$kendo-button-md-calc-size} + 2 * #{$kendo-chat-file-padding-y} + 2 * #{$kendo-chat-file-border-width});
472
551
  }
473
552
  }
474
553
 
@@ -477,14 +556,6 @@
477
556
  flex-direction: column;
478
557
  }
479
558
 
480
- .k-message-box-wrapper,
481
- .k-message-group-full-width,
482
- .k-message:has(.k-bubble-expandable) + .k-chat-file-wrapper {
483
- .k-chat-file {
484
- width: $kendo-chat-file-width;
485
- }
486
- }
487
-
488
559
  // Card list
489
560
  .k-chat .k-card-list {
490
561
  margin: $kendo-chat-bubble-spacing 0 0;
@@ -72,15 +72,15 @@
72
72
 
73
73
  // Chat attachment
74
74
  .k-chat-file {
75
- border-color: transparent;
75
+ background-color: $kendo-chat-file-bg;
76
+ color: $kendo-chat-file-text;
77
+ border-color: $kendo-chat-file-border;
76
78
  }
77
79
 
78
- .k-chat-file-deleted {
79
- @include fill(
80
- k-color(error-on-subtle),
81
- k-color(error-subtle),
82
- k-color(error-subtle)
83
- );
80
+ .k-message-group-sender .k-chat-file {
81
+ background-color: $kendo-chat-sender-file-bg;
82
+ color: $kendo-chat-sender-file-text;
83
+ border-color: $kendo-chat-sender-file-border;
84
84
  }
85
85
 
86
86
  // Attachment within Textarea prefix
@@ -19,6 +19,8 @@ $kendo-chat-message-list-padding-x: null !default;
19
19
  $kendo-chat-message-list-padding-y: null !default;
20
20
  $kendo-chat-message-list-spacing: null !default;
21
21
 
22
+ $kendo-chat-status-min-size: null !default;
23
+ $kendo-chat-status-max-size: null !default;
22
24
  $kendo-chat-message-status-gap: null !default;
23
25
 
24
26
  $kendo-chat-timestamp-font-size: null !default;
@@ -61,7 +63,12 @@ $kendo-chat-alt-bubble-focus-shadow: null !default;
61
63
 
62
64
  $kendo-chat-typing-indicator-text: null !default;
63
65
 
64
- $kendo-chat-file-width: null !default;
66
+ $kendo-chat-file-min-width: null !default;
67
+ $kendo-chat-file-max-width: null !default;
68
+ $kendo-chat-file-name-font-size: null !default;
69
+ $kendo-chat-file-name-line-height: null !default;
70
+ $kendo-chat-file-size-font-size: null !default;
71
+ $kendo-chat-file-size-line-height: null !default;
65
72
  $kendo-chat-file-padding-x: null !default;
66
73
  $kendo-chat-file-padding-y: null !default;
67
74
  $kendo-chat-file-gap: null !default;
@@ -74,6 +81,10 @@ $kendo-chat-file-border-radius: null !default;
74
81
  $kendo-chat-file-download-padding-x: null !default;
75
82
  $kendo-chat-file-download-padding-y: null !default;
76
83
 
84
+ $kendo-chat-sender-file-bg: null !default;
85
+ $kendo-chat-sender-file-text: null !default;
86
+ $kendo-chat-sender-file-border: null !default;
87
+
77
88
  $kendo-chat-message-pinned-border-width: null !default;
78
89
  $kendo-chat-message-pinned-border-style: null !default;
79
90
  $kendo-chat-message-pinned-border-color: null !default;
@@ -98,26 +98,6 @@
98
98
  $bg: $kendo-chip-outline-selected-bg
99
99
  );
100
100
  }
101
- } @else if ($name == "warning") {
102
- @include fill(
103
- k-color(on-#{$name}),
104
- transparent,
105
- k-color(#{$name}-on-surface)
106
- );
107
-
108
- &:focus,
109
- &.k-focus {
110
- @include focus-indicator( 0 0 0 2px color-mix(in srgb, k-color(#{$name}-on-surface) 16%, transparent));
111
- }
112
-
113
- &:hover,
114
- &.k-hover,
115
- &.k-selected {
116
- @include fill(
117
- $color: k-color(on-#{$name}),
118
- $bg: k-color(#{$name}-on-surface)
119
- );
120
- }
121
101
  } @else {
122
102
  @include fill(
123
103
  k-color(#{$name}-on-surface),
@@ -27,8 +27,23 @@
27
27
  display: flex;
28
28
  flex-wrap: wrap;
29
29
  gap: $kendo-suggestion-spacing;
30
+ align-self: normal;
30
31
 
32
+ &.k-suggestion-group-scrollable {
33
+ flex-wrap: nowrap;
34
+ overflow-x: auto;
35
+ scrollbar-width: none;
36
+ }
37
+ }
38
+
39
+ .k-suggestion-group-scrollable,
40
+ .k-suggestion-scrollwrap {
41
+ .k-suggestion {
42
+ white-space: nowrap;
43
+ max-width: none;
44
+ }
31
45
  }
46
+
32
47
  .k-suggestion {
33
48
  @include border-radius( $kendo-suggestion-border-radius );
34
49
  max-width: 100%;
@@ -44,6 +59,7 @@
44
59
  transition-timing-function: ease-in-out;
45
60
  cursor: pointer;
46
61
  outline: none;
62
+ white-space: normal;
47
63
  }
48
64
 
49
65