@progress/kendo-angular-layout 6.3.5-dev.202110290740 → 6.4.0-dev.202112211542
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/dist/cdn/js/kendo-angular-layout.js +2 -2
- package/dist/cdn/main.js +1 -1
- package/dist/es/avatar/avatar.component.js +120 -90
- package/dist/es/avatar/models/models.js +4 -0
- package/dist/es/avatar/models/rounded.js +4 -0
- package/dist/es/common/styling-classes.js +4 -0
- package/dist/es/common/util.js +40 -0
- package/dist/es/main.js +1 -0
- package/dist/es/package-metadata.js +1 -1
- package/dist/es/tabstrip/tabstrip.component.js +27 -1
- package/dist/es2015/avatar/avatar.component.d.ts +30 -30
- package/dist/es2015/avatar/avatar.component.js +111 -81
- package/dist/es2015/avatar/models/fill.d.ts +2 -8
- package/dist/es2015/avatar/models/models.d.ts +9 -0
- package/dist/es2015/avatar/models/models.js +4 -0
- package/dist/es2015/avatar/models/rounded.d.ts +8 -0
- package/dist/es2015/avatar/models/rounded.js +4 -0
- package/dist/es2015/avatar/models/shape.d.ts +2 -8
- package/dist/es2015/avatar/models/size.d.ts +1 -8
- package/dist/es2015/avatar/models/theme-color.d.ts +2 -17
- package/dist/es2015/common/styling-classes.d.ts +11 -0
- package/dist/es2015/common/styling-classes.js +4 -0
- package/dist/es2015/common/util.d.ts +12 -0
- package/dist/es2015/common/util.js +40 -0
- package/dist/es2015/index.metadata.json +1 -1
- package/dist/es2015/main.d.ts +1 -4
- package/dist/es2015/main.js +1 -0
- package/dist/es2015/package-metadata.js +1 -1
- package/dist/es2015/tabstrip/tabstrip.component.d.ts +8 -0
- package/dist/es2015/tabstrip/tabstrip.component.js +20 -0
- package/dist/es2015/tilelayout/tilelayout-item.component.d.ts +2 -2
- package/dist/es2015/tilelayout/tilelayout-resize-handle.directive.d.ts +2 -2
- package/dist/es2015/tilelayout/tilelayout.component.d.ts +2 -2
- package/dist/fesm2015/index.js +171 -82
- package/dist/fesm5/index.js +187 -92
- package/dist/npm/avatar/avatar.component.js +120 -90
- package/dist/npm/avatar/models/models.js +6 -0
- package/dist/npm/avatar/models/rounded.js +6 -0
- package/dist/npm/common/styling-classes.js +6 -0
- package/dist/npm/common/util.js +40 -0
- package/dist/npm/main.js +1 -0
- package/dist/npm/package-metadata.js +1 -1
- package/dist/npm/tabstrip/tabstrip.component.js +27 -1
- package/dist/systemjs/kendo-angular-layout.js +1 -1
- package/package.json +12 -10
package/dist/es2015/main.d.ts
CHANGED
|
@@ -36,10 +36,7 @@ export { LocalizedStepperMessagesDirective } from './stepper/localization/locali
|
|
|
36
36
|
export * from './stepper/template-directives';
|
|
37
37
|
export * from './stepper/types';
|
|
38
38
|
export { AvatarComponent } from './avatar/avatar.component';
|
|
39
|
-
export { AvatarShape, Shape } from './avatar/models/
|
|
40
|
-
export { AvatarSize } from './avatar/models/size';
|
|
41
|
-
export { AvatarFill } from './avatar/models/fill';
|
|
42
|
-
export { AvatarThemeColor } from './avatar/models/theme-color';
|
|
39
|
+
export { AvatarShape, Shape, AvatarRounded, AvatarFillMode, AvatarFillMode as AvatarFill, AvatarSize, AvatarThemeColor } from './avatar/models/models';
|
|
43
40
|
export { CardComponent } from './card/card.component';
|
|
44
41
|
export { CardHeaderComponent } from './card/card-header.component';
|
|
45
42
|
export { CardBodyComponent } from './card/card-body.component';
|
package/dist/es2015/main.js
CHANGED
|
@@ -29,6 +29,7 @@ export { StepperActivateEvent } from './stepper/events/activate-event';
|
|
|
29
29
|
export { StepperCustomMessagesComponent } from './stepper/localization/custom-messages.component';
|
|
30
30
|
export { LocalizedStepperMessagesDirective } from './stepper/localization/localized-messages.directive';
|
|
31
31
|
export * from './stepper/template-directives';
|
|
32
|
+
// Avatar exports
|
|
32
33
|
export { AvatarComponent } from './avatar/avatar.component';
|
|
33
34
|
// Card exports
|
|
34
35
|
export { CardComponent } from './card/card.component';
|
|
@@ -9,7 +9,7 @@ export const packageMetadata = {
|
|
|
9
9
|
name: '@progress/kendo-angular-layout',
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
-
publishDate:
|
|
12
|
+
publishDate: 1640101191,
|
|
13
13
|
version: '',
|
|
14
14
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
|
|
15
15
|
};
|
|
@@ -130,6 +130,14 @@ export declare class TabStripComponent implements AfterViewInit, OnDestroy {
|
|
|
130
130
|
* @hidden
|
|
131
131
|
*/
|
|
132
132
|
readonly tabsAlignmentStyles: string;
|
|
133
|
+
/**
|
|
134
|
+
* @hidden
|
|
135
|
+
*/
|
|
136
|
+
readonly tabListWidth: string;
|
|
137
|
+
/**
|
|
138
|
+
* @hidden
|
|
139
|
+
*/
|
|
140
|
+
readonly tabListHeight: string;
|
|
133
141
|
/**
|
|
134
142
|
* @hidden
|
|
135
143
|
*/
|
|
@@ -180,6 +180,24 @@ let TabStripComponent = class TabStripComponent {
|
|
|
180
180
|
justify: 'space-between'
|
|
181
181
|
}[this.tabAlignment];
|
|
182
182
|
}
|
|
183
|
+
/**
|
|
184
|
+
* @hidden
|
|
185
|
+
*/
|
|
186
|
+
get tabListWidth() {
|
|
187
|
+
if (this.tabPosition === 'top' || this.tabPosition === 'bottom') {
|
|
188
|
+
return '100%';
|
|
189
|
+
}
|
|
190
|
+
return null;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* @hidden
|
|
194
|
+
*/
|
|
195
|
+
get tabListHeight() {
|
|
196
|
+
if (this.tabPosition === 'left' || this.tabPosition === 'right') {
|
|
197
|
+
return '100%';
|
|
198
|
+
}
|
|
199
|
+
return null;
|
|
200
|
+
}
|
|
183
201
|
/**
|
|
184
202
|
* @hidden
|
|
185
203
|
*/
|
|
@@ -459,6 +477,8 @@ TabStripComponent = tslib_1.__decorate([
|
|
|
459
477
|
<ul role="tablist" #tablist
|
|
460
478
|
class="k-reset k-tabstrip-items"
|
|
461
479
|
[style.justifyContent]="tabsAlignmentStyles"
|
|
480
|
+
[style.width]="tabListWidth"
|
|
481
|
+
[style.height]="tabListHeight"
|
|
462
482
|
>
|
|
463
483
|
<ng-container *ngFor="let tab of tabs; let i = index;">
|
|
464
484
|
<li *ngIf="!tab.closed"
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ElementRef, Renderer2, SimpleChanges } from '@angular/core';
|
|
5
|
+
import { AfterViewInit, ElementRef, OnChanges, OnDestroy, Renderer2, SimpleChanges } from '@angular/core';
|
|
6
6
|
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
7
|
import { TileLayoutDraggingService } from './dragging-service';
|
|
8
8
|
/**
|
|
9
9
|
* Represents a tile item within the TileLayoutComponent.
|
|
10
10
|
*/
|
|
11
|
-
export declare class TileLayoutItemComponent {
|
|
11
|
+
export declare class TileLayoutItemComponent implements AfterViewInit, OnDestroy, OnChanges {
|
|
12
12
|
elem: ElementRef;
|
|
13
13
|
private renderer;
|
|
14
14
|
private localization;
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ElementRef, Renderer2 } from '@angular/core';
|
|
5
|
+
import { ElementRef, OnInit, Renderer2 } from '@angular/core';
|
|
6
6
|
/**
|
|
7
7
|
* @hidden
|
|
8
8
|
*/
|
|
9
|
-
export declare class TileLayoutResizeHandleDirective {
|
|
9
|
+
export declare class TileLayoutResizeHandleDirective implements OnInit {
|
|
10
10
|
private el;
|
|
11
11
|
private renderer;
|
|
12
12
|
resizeDirection: string;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { EventEmitter, QueryList, SimpleChanges, ElementRef, Renderer2, NgZone } from '@angular/core';
|
|
5
|
+
import { EventEmitter, QueryList, SimpleChanges, ElementRef, Renderer2, NgZone, OnInit, AfterViewInit, OnDestroy, AfterContentInit, OnChanges } from '@angular/core';
|
|
6
6
|
import { TileLayoutDraggingService } from './dragging-service';
|
|
7
7
|
import { TileLayoutResizeEvent } from './resize-event';
|
|
8
8
|
import { TileLayoutItemComponent } from './tilelayout-item.component';
|
|
@@ -13,7 +13,7 @@ import { TileLayoutFlowMode } from './models/flowmode.type';
|
|
|
13
13
|
/**
|
|
14
14
|
* Represents the [Kendo UI TileLayout component for Angular]({% slug overview_tilelayout %})
|
|
15
15
|
*/
|
|
16
|
-
export declare class TileLayoutComponent {
|
|
16
|
+
export declare class TileLayoutComponent implements OnInit, AfterViewInit, AfterContentInit, OnDestroy, OnChanges {
|
|
17
17
|
private elem;
|
|
18
18
|
private renderer;
|
|
19
19
|
private localization;
|
package/dist/fesm2015/index.js
CHANGED
|
@@ -21,7 +21,7 @@ const packageMetadata = {
|
|
|
21
21
|
name: '@progress/kendo-angular-layout',
|
|
22
22
|
productName: 'Kendo UI for Angular',
|
|
23
23
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
24
|
-
publishDate:
|
|
24
|
+
publishDate: 1640101191,
|
|
25
25
|
version: '',
|
|
26
26
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
|
|
27
27
|
};
|
|
@@ -144,6 +144,21 @@ PanelBarItemTitleDirective = __decorate([
|
|
|
144
144
|
], PanelBarItemTitleDirective);
|
|
145
145
|
|
|
146
146
|
let nextId = 0;
|
|
147
|
+
const SIZES = {
|
|
148
|
+
small: 'sm',
|
|
149
|
+
medium: 'md',
|
|
150
|
+
large: 'lg'
|
|
151
|
+
};
|
|
152
|
+
const ROUNDNESS = {
|
|
153
|
+
small: 'sm',
|
|
154
|
+
medium: 'md',
|
|
155
|
+
large: 'lg',
|
|
156
|
+
full: 'full'
|
|
157
|
+
};
|
|
158
|
+
const SHAPE_TO_ROUNDED = {
|
|
159
|
+
rounded: 'large',
|
|
160
|
+
circle: 'full'
|
|
161
|
+
};
|
|
147
162
|
const parsePanelBarItems = (data) => {
|
|
148
163
|
return data.map((item) => {
|
|
149
164
|
if (!item.id) {
|
|
@@ -179,6 +194,31 @@ const isArrowKey = keyCode => isHorizontalArrowKey(keyCode) || isVerticalArrowKe
|
|
|
179
194
|
*/
|
|
180
195
|
const isNavigationKey = keyCode => keyCode === Keys.PageUp || keyCode === Keys.PageDown ||
|
|
181
196
|
keyCode === Keys.Home || keyCode === Keys.End;
|
|
197
|
+
/**
|
|
198
|
+
* @hidden
|
|
199
|
+
*
|
|
200
|
+
* Returns the styling classes to be added and removed
|
|
201
|
+
*/
|
|
202
|
+
const getStylingClasses = (componentType, stylingOption, previousValue, newValue) => {
|
|
203
|
+
switch (stylingOption) {
|
|
204
|
+
case 'size':
|
|
205
|
+
return {
|
|
206
|
+
toRemove: `k-${componentType}-${SIZES[previousValue]}`,
|
|
207
|
+
toAdd: newValue ? `k-${componentType}-${SIZES[newValue]}` : null
|
|
208
|
+
};
|
|
209
|
+
case 'rounded':
|
|
210
|
+
return {
|
|
211
|
+
toRemove: `k-rounded-${ROUNDNESS[previousValue]}`,
|
|
212
|
+
toAdd: newValue ? `k-rounded-${ROUNDNESS[newValue]}` : null
|
|
213
|
+
};
|
|
214
|
+
default:
|
|
215
|
+
break;
|
|
216
|
+
}
|
|
217
|
+
};
|
|
218
|
+
/**
|
|
219
|
+
* @hidden
|
|
220
|
+
*/
|
|
221
|
+
const mapShapeToRounded = (shape) => SHAPE_TO_ROUNDED[shape] || null;
|
|
182
222
|
|
|
183
223
|
const focusableRegex = /^(?:a|input|select|option|textarea|button|object)$/i;
|
|
184
224
|
const toClassList = (classNames) => String(classNames).trim().split(' ');
|
|
@@ -2778,6 +2818,24 @@ let TabStripComponent = class TabStripComponent {
|
|
|
2778
2818
|
justify: 'space-between'
|
|
2779
2819
|
}[this.tabAlignment];
|
|
2780
2820
|
}
|
|
2821
|
+
/**
|
|
2822
|
+
* @hidden
|
|
2823
|
+
*/
|
|
2824
|
+
get tabListWidth() {
|
|
2825
|
+
if (this.tabPosition === 'top' || this.tabPosition === 'bottom') {
|
|
2826
|
+
return '100%';
|
|
2827
|
+
}
|
|
2828
|
+
return null;
|
|
2829
|
+
}
|
|
2830
|
+
/**
|
|
2831
|
+
* @hidden
|
|
2832
|
+
*/
|
|
2833
|
+
get tabListHeight() {
|
|
2834
|
+
if (this.tabPosition === 'left' || this.tabPosition === 'right') {
|
|
2835
|
+
return '100%';
|
|
2836
|
+
}
|
|
2837
|
+
return null;
|
|
2838
|
+
}
|
|
2781
2839
|
/**
|
|
2782
2840
|
* @hidden
|
|
2783
2841
|
*/
|
|
@@ -3057,6 +3115,8 @@ TabStripComponent = __decorate([
|
|
|
3057
3115
|
<ul role="tablist" #tablist
|
|
3058
3116
|
class="k-reset k-tabstrip-items"
|
|
3059
3117
|
[style.justifyContent]="tabsAlignmentStyles"
|
|
3118
|
+
[style.width]="tabListWidth"
|
|
3119
|
+
[style.height]="tabListHeight"
|
|
3060
3120
|
>
|
|
3061
3121
|
<ng-container *ngFor="let tab of tabs; let i = index;">
|
|
3062
3122
|
<li *ngIf="!tab.closed"
|
|
@@ -4512,17 +4572,6 @@ LocalizedStepperMessagesDirective = LocalizedStepperMessagesDirective_1 = __deco
|
|
|
4512
4572
|
__metadata("design:paramtypes", [LocalizationService])
|
|
4513
4573
|
], LocalizedStepperMessagesDirective);
|
|
4514
4574
|
|
|
4515
|
-
const SIZE_CLASSES = {
|
|
4516
|
-
'small': 'k-avatar-sm',
|
|
4517
|
-
'medium': 'k-avatar-md',
|
|
4518
|
-
'large': 'k-avatar-lg'
|
|
4519
|
-
};
|
|
4520
|
-
const SHAPE_CLASSES = {
|
|
4521
|
-
'circle': 'k-avatar-circle',
|
|
4522
|
-
'square': 'k-avatar-square',
|
|
4523
|
-
'rectangle': 'k-avatar-rectangle',
|
|
4524
|
-
'rounded': 'k-avatar-rounded'
|
|
4525
|
-
};
|
|
4526
4575
|
/**
|
|
4527
4576
|
* Displays images, icons or initials representing people or other entities.
|
|
4528
4577
|
*/
|
|
@@ -4531,37 +4580,16 @@ let AvatarComponent = class AvatarComponent {
|
|
|
4531
4580
|
this.renderer = renderer;
|
|
4532
4581
|
this.element = element;
|
|
4533
4582
|
this.hostClass = true;
|
|
4534
|
-
/**
|
|
4535
|
-
* Specifies the appearance fill style of the avatar.
|
|
4536
|
-
*
|
|
4537
|
-
* The possible values are:
|
|
4538
|
-
* * `solid` (Default)
|
|
4539
|
-
* * `outline`
|
|
4540
|
-
*
|
|
4541
|
-
*/
|
|
4542
|
-
this.fill = 'solid';
|
|
4543
4583
|
/**
|
|
4544
4584
|
* Sets a border to the avatar.
|
|
4545
4585
|
*/
|
|
4546
4586
|
this.border = false;
|
|
4547
4587
|
this._themeColor = 'primary';
|
|
4548
4588
|
this._size = 'medium';
|
|
4549
|
-
this.
|
|
4550
|
-
this.
|
|
4589
|
+
this._fillMode = 'solid';
|
|
4590
|
+
this._rounded = 'full';
|
|
4551
4591
|
validatePackage(packageMetadata);
|
|
4552
4592
|
}
|
|
4553
|
-
/**
|
|
4554
|
-
* @hidden
|
|
4555
|
-
*/
|
|
4556
|
-
get solidClass() {
|
|
4557
|
-
return this.fill === 'solid';
|
|
4558
|
-
}
|
|
4559
|
-
/**
|
|
4560
|
-
* @hidden
|
|
4561
|
-
*/
|
|
4562
|
-
get outlineClass() {
|
|
4563
|
-
return this.fill === 'outline';
|
|
4564
|
-
}
|
|
4565
4593
|
/**
|
|
4566
4594
|
* @hidden
|
|
4567
4595
|
*/
|
|
@@ -4576,21 +4604,10 @@ let AvatarComponent = class AvatarComponent {
|
|
|
4576
4604
|
}
|
|
4577
4605
|
/**
|
|
4578
4606
|
* Sets the shape for the avatar.
|
|
4579
|
-
*
|
|
4580
|
-
* Possible values are:
|
|
4581
|
-
* * (Default) `square`
|
|
4582
|
-
* * `circle`
|
|
4583
|
-
* * `rectangle`
|
|
4584
|
-
* * `rounded`
|
|
4585
|
-
*
|
|
4607
|
+
* @hidden
|
|
4586
4608
|
*/
|
|
4587
4609
|
set shape(shape) {
|
|
4588
|
-
this.
|
|
4589
|
-
this.renderer.addClass(this.avatar, SHAPE_CLASSES[shape]);
|
|
4590
|
-
this._shape = shape;
|
|
4591
|
-
}
|
|
4592
|
-
get shape() {
|
|
4593
|
-
return this._shape;
|
|
4610
|
+
this.rounded = mapShapeToRounded(shape);
|
|
4594
4611
|
}
|
|
4595
4612
|
/**
|
|
4596
4613
|
* Specifies the size of the avatar
|
|
@@ -4603,22 +4620,44 @@ let AvatarComponent = class AvatarComponent {
|
|
|
4603
4620
|
*
|
|
4604
4621
|
*/
|
|
4605
4622
|
set size(size) {
|
|
4606
|
-
|
|
4607
|
-
|
|
4608
|
-
|
|
4623
|
+
if (size !== this._size) {
|
|
4624
|
+
this.handleClasses('size', size);
|
|
4625
|
+
this._size = size === null ? null : size || 'medium';
|
|
4626
|
+
}
|
|
4609
4627
|
}
|
|
4610
4628
|
get size() {
|
|
4611
4629
|
return this._size;
|
|
4612
4630
|
}
|
|
4631
|
+
/**
|
|
4632
|
+
* Specifies the rounded styling of the avatar
|
|
4633
|
+
* ([see example]({% slug appearance_avatar %}#toc-rounded-corners)).
|
|
4634
|
+
*
|
|
4635
|
+
* The possible values are:
|
|
4636
|
+
* * `small`
|
|
4637
|
+
* * `medium`
|
|
4638
|
+
* * `large`
|
|
4639
|
+
* * `full` (Default)
|
|
4640
|
+
* * null
|
|
4641
|
+
*
|
|
4642
|
+
*/
|
|
4643
|
+
set rounded(rounded) {
|
|
4644
|
+
if (rounded !== this._rounded) {
|
|
4645
|
+
this.handleClasses('rounded', rounded);
|
|
4646
|
+
this._rounded = rounded === null ? null : rounded || 'full';
|
|
4647
|
+
}
|
|
4648
|
+
}
|
|
4649
|
+
get rounded() {
|
|
4650
|
+
return this._rounded;
|
|
4651
|
+
}
|
|
4613
4652
|
/**
|
|
4614
4653
|
* Specifies the theme color of the avatar.
|
|
4615
4654
|
* The theme color will be applied as background and border color, while also amending the text color accordingly.
|
|
4616
4655
|
*
|
|
4617
4656
|
* The possible values are:
|
|
4657
|
+
* * `base`— Applies the base coloring value.
|
|
4618
4658
|
* * `primary` (Default)—Applies coloring based on primary theme color.
|
|
4619
4659
|
* * `secondary`—Applies coloring based on secondary theme color.
|
|
4620
4660
|
* * `tertiary`— Applies coloring based on tertiary theme color.
|
|
4621
|
-
* * `inherit`— Applies inherited coloring value.
|
|
4622
4661
|
* * `info`—Applies coloring based on info theme color.
|
|
4623
4662
|
* * `success`— Applies coloring based on success theme color.
|
|
4624
4663
|
* * `warning`— Applies coloring based on warning theme color.
|
|
@@ -4626,40 +4665,65 @@ let AvatarComponent = class AvatarComponent {
|
|
|
4626
4665
|
* * `dark`— Applies coloring based on dark theme color.
|
|
4627
4666
|
* * `light`— Applies coloring based on light theme color.
|
|
4628
4667
|
* * `inverse`— Applies coloring based on inverted theme color.
|
|
4629
|
-
*
|
|
4630
4668
|
*/
|
|
4631
4669
|
set themeColor(themeColor) {
|
|
4632
|
-
|
|
4633
|
-
|
|
4634
|
-
|
|
4670
|
+
if (themeColor !== this._themeColor) {
|
|
4671
|
+
this._themeColor = themeColor === null ? null : (themeColor || 'primary');
|
|
4672
|
+
this.handleFillModeAndThemeColorClasses(this.fillMode, this.themeColor);
|
|
4673
|
+
}
|
|
4635
4674
|
}
|
|
4636
4675
|
get themeColor() {
|
|
4637
4676
|
return this._themeColor;
|
|
4638
4677
|
}
|
|
4639
4678
|
/**
|
|
4640
|
-
*
|
|
4679
|
+
* Specifies the appearance fill style of the avatar.
|
|
4680
|
+
*
|
|
4681
|
+
* The possible values are:
|
|
4682
|
+
* * `solid` (Default)
|
|
4683
|
+
* * `outline`
|
|
4684
|
+
* * null
|
|
4685
|
+
*
|
|
4641
4686
|
*/
|
|
4642
|
-
|
|
4643
|
-
|
|
4687
|
+
set fillMode(fillMode) {
|
|
4688
|
+
if (fillMode !== this.fillMode) {
|
|
4689
|
+
this._fillMode = fillMode === null ? null : (fillMode || 'solid');
|
|
4690
|
+
this.handleFillModeAndThemeColorClasses(this.fillMode, this.themeColor);
|
|
4691
|
+
}
|
|
4692
|
+
}
|
|
4693
|
+
get fillMode() {
|
|
4694
|
+
return this._fillMode;
|
|
4644
4695
|
}
|
|
4645
4696
|
/**
|
|
4697
|
+
* Specifies the appearance fill style of the avatar.
|
|
4698
|
+
* Deprecated, left for backward compatibility.
|
|
4699
|
+
*
|
|
4646
4700
|
* @hidden
|
|
4647
4701
|
*/
|
|
4648
|
-
|
|
4649
|
-
|
|
4702
|
+
set fill(fillMode) {
|
|
4703
|
+
this.fillMode = fillMode;
|
|
4650
4704
|
}
|
|
4651
|
-
|
|
4652
|
-
|
|
4705
|
+
/**
|
|
4706
|
+
* @hidden
|
|
4707
|
+
*/
|
|
4708
|
+
get avatarWidth() {
|
|
4709
|
+
return this.width;
|
|
4653
4710
|
}
|
|
4654
4711
|
/**
|
|
4655
4712
|
* @hidden
|
|
4656
4713
|
*/
|
|
4657
|
-
get
|
|
4658
|
-
return
|
|
4714
|
+
get avatarHeight() {
|
|
4715
|
+
return this.height;
|
|
4659
4716
|
}
|
|
4660
4717
|
ngOnInit() {
|
|
4661
4718
|
this.verifyProperties();
|
|
4662
4719
|
}
|
|
4720
|
+
ngAfterViewInit() {
|
|
4721
|
+
const stylingInputs = ['size', 'rounded'];
|
|
4722
|
+
stylingInputs.forEach(input => {
|
|
4723
|
+
this.handleClasses(input, this[input]);
|
|
4724
|
+
});
|
|
4725
|
+
this.handleFillModeAndThemeColorClasses(this.fillMode, this.themeColor);
|
|
4726
|
+
}
|
|
4663
4727
|
/**
|
|
4664
4728
|
* @hidden
|
|
4665
4729
|
*/
|
|
@@ -4691,26 +4755,38 @@ let AvatarComponent = class AvatarComponent {
|
|
|
4691
4755
|
`);
|
|
4692
4756
|
}
|
|
4693
4757
|
}
|
|
4694
|
-
|
|
4695
|
-
this.
|
|
4696
|
-
|
|
4697
|
-
|
|
4758
|
+
handleClasses(styleType, value) {
|
|
4759
|
+
const elem = this.element.nativeElement;
|
|
4760
|
+
const classes = getStylingClasses('avatar', styleType, this[styleType], value);
|
|
4761
|
+
if (classes.toRemove) {
|
|
4762
|
+
this.renderer.removeClass(elem, classes.toRemove);
|
|
4763
|
+
}
|
|
4764
|
+
if (classes.toAdd) {
|
|
4765
|
+
this.renderer.addClass(elem, classes.toAdd);
|
|
4766
|
+
}
|
|
4767
|
+
}
|
|
4768
|
+
handleFillModeAndThemeColorClasses(fill, themeColor) {
|
|
4769
|
+
const wrapperElement = this.element.nativeElement;
|
|
4770
|
+
// remove existing fill and theme color classes
|
|
4771
|
+
const currentClasses = Array.from(wrapperElement.classList);
|
|
4772
|
+
const classesToRemove = currentClasses.filter(cl => {
|
|
4773
|
+
return cl.startsWith('k-avatar-solid') || cl.startsWith('k-avatar-outline');
|
|
4774
|
+
});
|
|
4775
|
+
classesToRemove.forEach((cl => this.renderer.removeClass(wrapperElement, cl)));
|
|
4776
|
+
// add fill if needed
|
|
4777
|
+
if (fill !== null) {
|
|
4778
|
+
this.renderer.addClass(wrapperElement, `k-avatar-${fill}`);
|
|
4779
|
+
}
|
|
4780
|
+
// add theme color class if fill and theme color
|
|
4781
|
+
if (fill !== null && themeColor !== null) {
|
|
4782
|
+
this.renderer.addClass(wrapperElement, `k-avatar-${fill}-${themeColor}`);
|
|
4783
|
+
}
|
|
4698
4784
|
}
|
|
4699
4785
|
};
|
|
4700
4786
|
__decorate([
|
|
4701
4787
|
HostBinding('class.k-avatar'),
|
|
4702
4788
|
__metadata("design:type", Boolean)
|
|
4703
4789
|
], AvatarComponent.prototype, "hostClass", void 0);
|
|
4704
|
-
__decorate([
|
|
4705
|
-
HostBinding('class.k-avatar-solid'),
|
|
4706
|
-
__metadata("design:type", Boolean),
|
|
4707
|
-
__metadata("design:paramtypes", [])
|
|
4708
|
-
], AvatarComponent.prototype, "solidClass", null);
|
|
4709
|
-
__decorate([
|
|
4710
|
-
HostBinding('class.k-avatar-outline'),
|
|
4711
|
-
__metadata("design:type", Boolean),
|
|
4712
|
-
__metadata("design:paramtypes", [])
|
|
4713
|
-
], AvatarComponent.prototype, "outlineClass", null);
|
|
4714
4790
|
__decorate([
|
|
4715
4791
|
HostBinding('class.k-avatar-bordered'),
|
|
4716
4792
|
__metadata("design:type", Boolean),
|
|
@@ -4731,6 +4807,11 @@ __decorate([
|
|
|
4731
4807
|
__metadata("design:type", String),
|
|
4732
4808
|
__metadata("design:paramtypes", [String])
|
|
4733
4809
|
], AvatarComponent.prototype, "size", null);
|
|
4810
|
+
__decorate([
|
|
4811
|
+
Input(),
|
|
4812
|
+
__metadata("design:type", String),
|
|
4813
|
+
__metadata("design:paramtypes", [String])
|
|
4814
|
+
], AvatarComponent.prototype, "rounded", null);
|
|
4734
4815
|
__decorate([
|
|
4735
4816
|
Input(),
|
|
4736
4817
|
__metadata("design:type", String),
|
|
@@ -4738,8 +4819,14 @@ __decorate([
|
|
|
4738
4819
|
], AvatarComponent.prototype, "themeColor", null);
|
|
4739
4820
|
__decorate([
|
|
4740
4821
|
Input(),
|
|
4741
|
-
__metadata("design:type", String)
|
|
4742
|
-
|
|
4822
|
+
__metadata("design:type", String),
|
|
4823
|
+
__metadata("design:paramtypes", [String])
|
|
4824
|
+
], AvatarComponent.prototype, "fillMode", null);
|
|
4825
|
+
__decorate([
|
|
4826
|
+
Input(),
|
|
4827
|
+
__metadata("design:type", String),
|
|
4828
|
+
__metadata("design:paramtypes", [String])
|
|
4829
|
+
], AvatarComponent.prototype, "fill", null);
|
|
4743
4830
|
__decorate([
|
|
4744
4831
|
Input(),
|
|
4745
4832
|
__metadata("design:type", Boolean)
|
|
@@ -4789,7 +4876,9 @@ AvatarComponent = __decorate([
|
|
|
4789
4876
|
<ng-content *ngIf="customAvatar"></ng-content>
|
|
4790
4877
|
|
|
4791
4878
|
<ng-container *ngIf="imageSrc">
|
|
4792
|
-
<
|
|
4879
|
+
<span class="k-avatar-image">
|
|
4880
|
+
<img src="{{imageSrc}}" [ngStyle]="cssStyle" />
|
|
4881
|
+
</span>
|
|
4793
4882
|
</ng-container>
|
|
4794
4883
|
|
|
4795
4884
|
<ng-container *ngIf="initials">
|