@progress/kendo-angular-layout 6.3.6 → 6.4.1-dev.202201241447

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 (47) hide show
  1. package/LICENSE.md +1 -1
  2. package/NOTICE.txt +119 -79
  3. package/README.md +1 -1
  4. package/dist/cdn/js/kendo-angular-layout.js +2 -2
  5. package/dist/cdn/main.js +1 -1
  6. package/dist/es/avatar/avatar.component.js +120 -90
  7. package/dist/es/avatar/models/models.js +4 -0
  8. package/dist/es/avatar/models/rounded.js +4 -0
  9. package/dist/es/common/styling-classes.js +4 -0
  10. package/dist/es/common/util.js +40 -0
  11. package/dist/es/main.js +1 -0
  12. package/dist/es/package-metadata.js +1 -1
  13. package/dist/es/tabstrip/scrollable-button.component.js +6 -3
  14. package/dist/es2015/avatar/avatar.component.d.ts +30 -30
  15. package/dist/es2015/avatar/avatar.component.js +111 -81
  16. package/dist/es2015/avatar/models/fill.d.ts +2 -8
  17. package/dist/es2015/avatar/models/models.d.ts +9 -0
  18. package/dist/es2015/avatar/models/models.js +4 -0
  19. package/dist/es2015/avatar/models/rounded.d.ts +8 -0
  20. package/dist/es2015/avatar/models/rounded.js +4 -0
  21. package/dist/es2015/avatar/models/shape.d.ts +2 -8
  22. package/dist/es2015/avatar/models/size.d.ts +1 -8
  23. package/dist/es2015/avatar/models/theme-color.d.ts +2 -17
  24. package/dist/es2015/common/styling-classes.d.ts +11 -0
  25. package/dist/es2015/common/styling-classes.js +4 -0
  26. package/dist/es2015/common/util.d.ts +12 -0
  27. package/dist/es2015/common/util.js +40 -0
  28. package/dist/es2015/index.metadata.json +1 -1
  29. package/dist/es2015/main.d.ts +1 -4
  30. package/dist/es2015/main.js +1 -0
  31. package/dist/es2015/package-metadata.js +1 -1
  32. package/dist/es2015/tabstrip/scrollable-button.component.js +6 -3
  33. package/dist/es2015/tilelayout/tilelayout-item.component.d.ts +2 -2
  34. package/dist/es2015/tilelayout/tilelayout-resize-handle.directive.d.ts +2 -2
  35. package/dist/es2015/tilelayout/tilelayout.component.d.ts +2 -2
  36. package/dist/fesm2015/index.js +157 -85
  37. package/dist/fesm5/index.js +166 -94
  38. package/dist/npm/avatar/avatar.component.js +120 -90
  39. package/dist/npm/avatar/models/models.js +6 -0
  40. package/dist/npm/avatar/models/rounded.js +6 -0
  41. package/dist/npm/common/styling-classes.js +6 -0
  42. package/dist/npm/common/util.js +40 -0
  43. package/dist/npm/main.js +1 -0
  44. package/dist/npm/package-metadata.js +1 -1
  45. package/dist/npm/tabstrip/scrollable-button.component.js +6 -3
  46. package/dist/systemjs/kendo-angular-layout.js +1 -1
  47. package/package.json +13 -11
@@ -21,7 +21,7 @@ var packageMetadata = {
21
21
  name: '@progress/kendo-angular-layout',
22
22
  productName: 'Kendo UI for Angular',
23
23
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
24
- publishDate: 1636621149,
24
+ publishDate: 1643035523,
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
  };
@@ -147,6 +147,21 @@ var PanelBarItemTitleDirective = /** @class */ (function () {
147
147
  }());
148
148
 
149
149
  var nextId = 0;
150
+ var SIZES = {
151
+ small: 'sm',
152
+ medium: 'md',
153
+ large: 'lg'
154
+ };
155
+ var ROUNDNESS = {
156
+ small: 'sm',
157
+ medium: 'md',
158
+ large: 'lg',
159
+ full: 'full'
160
+ };
161
+ var SHAPE_TO_ROUNDED = {
162
+ rounded: 'large',
163
+ circle: 'full'
164
+ };
150
165
  var parsePanelBarItems = function (data) {
151
166
  return data.map(function (item) {
152
167
  if (!item.id) {
@@ -186,6 +201,31 @@ var isNavigationKey = function (keyCode) {
186
201
  return keyCode === Keys.PageUp || keyCode === Keys.PageDown ||
187
202
  keyCode === Keys.Home || keyCode === Keys.End;
188
203
  };
204
+ /**
205
+ * @hidden
206
+ *
207
+ * Returns the styling classes to be added and removed
208
+ */
209
+ var getStylingClasses = function (componentType, stylingOption, previousValue, newValue) {
210
+ switch (stylingOption) {
211
+ case 'size':
212
+ return {
213
+ toRemove: "k-" + componentType + "-" + SIZES[previousValue],
214
+ toAdd: newValue ? "k-" + componentType + "-" + SIZES[newValue] : null
215
+ };
216
+ case 'rounded':
217
+ return {
218
+ toRemove: "k-rounded-" + ROUNDNESS[previousValue],
219
+ toAdd: newValue ? "k-rounded-" + ROUNDNESS[newValue] : null
220
+ };
221
+ default:
222
+ break;
223
+ }
224
+ };
225
+ /**
226
+ * @hidden
227
+ */
228
+ var mapShapeToRounded = function (shape) { return SHAPE_TO_ROUNDED[shape] || null; };
189
229
 
190
230
  var focusableRegex = /^(?:a|input|select|option|textarea|button|object)$/i;
191
231
  var toClassList = function (classNames) { return String(classNames).trim().split(' '); };
@@ -2690,8 +2730,11 @@ var TabStripScrollableButtonComponent = /** @class */ (function () {
2690
2730
  };
2691
2731
  __decorate([
2692
2732
  HostBinding('class.k-button'),
2693
- HostBinding('class.k-button-icon'),
2694
- HostBinding('class.k-flat'),
2733
+ HostBinding('class.k-button-md'),
2734
+ HostBinding('class.k-icon-button'),
2735
+ HostBinding('class.k-rounded-md'),
2736
+ HostBinding('class.k-button-flat'),
2737
+ HostBinding('class.k-button-flat-base'),
2695
2738
  __metadata("design:type", Boolean)
2696
2739
  ], TabStripScrollableButtonComponent.prototype, "btnClasses", void 0);
2697
2740
  __decorate([
@@ -2715,7 +2758,7 @@ var TabStripScrollableButtonComponent = /** @class */ (function () {
2715
2758
  ], TabStripScrollableButtonComponent.prototype, "prev", void 0);
2716
2759
  TabStripScrollableButtonComponent = __decorate([
2717
2760
  Component({
2718
- template: "\n <span class=\"k-icon\" [ngClass]=\"iconClass\"></span>\n ",
2761
+ template: "\n <span class=\"k-icon k-button-icon\" [ngClass]=\"iconClass\"></span>\n ",
2719
2762
  selector: '[kendoTabStripScrollableButton]'
2720
2763
  }),
2721
2764
  __metadata("design:paramtypes", [ElementRef,
@@ -4729,17 +4772,6 @@ var LocalizedStepperMessagesDirective = /** @class */ (function (_super) {
4729
4772
  return LocalizedStepperMessagesDirective;
4730
4773
  }(StepperMessages));
4731
4774
 
4732
- var SIZE_CLASSES = {
4733
- 'small': 'k-avatar-sm',
4734
- 'medium': 'k-avatar-md',
4735
- 'large': 'k-avatar-lg'
4736
- };
4737
- var SHAPE_CLASSES = {
4738
- 'circle': 'k-avatar-circle',
4739
- 'square': 'k-avatar-square',
4740
- 'rectangle': 'k-avatar-rectangle',
4741
- 'rounded': 'k-avatar-rounded'
4742
- };
4743
4775
  /**
4744
4776
  * Displays images, icons or initials representing people or other entities.
4745
4777
  */
@@ -4748,45 +4780,16 @@ var AvatarComponent = /** @class */ (function () {
4748
4780
  this.renderer = renderer;
4749
4781
  this.element = element;
4750
4782
  this.hostClass = true;
4751
- /**
4752
- * Specifies the appearance fill style of the avatar.
4753
- *
4754
- * The possible values are:
4755
- * * `solid` (Default)
4756
- * * `outline`
4757
- *
4758
- */
4759
- this.fill = 'solid';
4760
4783
  /**
4761
4784
  * Sets a border to the avatar.
4762
4785
  */
4763
4786
  this.border = false;
4764
4787
  this._themeColor = 'primary';
4765
4788
  this._size = 'medium';
4766
- this._shape = 'square';
4767
- this.avatar = this.element.nativeElement;
4789
+ this._fillMode = 'solid';
4790
+ this._rounded = 'full';
4768
4791
  validatePackage(packageMetadata);
4769
4792
  }
4770
- Object.defineProperty(AvatarComponent.prototype, "solidClass", {
4771
- /**
4772
- * @hidden
4773
- */
4774
- get: function () {
4775
- return this.fill === 'solid';
4776
- },
4777
- enumerable: true,
4778
- configurable: true
4779
- });
4780
- Object.defineProperty(AvatarComponent.prototype, "outlineClass", {
4781
- /**
4782
- * @hidden
4783
- */
4784
- get: function () {
4785
- return this.fill === 'outline';
4786
- },
4787
- enumerable: true,
4788
- configurable: true
4789
- });
4790
4793
  Object.defineProperty(AvatarComponent.prototype, "borderClass", {
4791
4794
  /**
4792
4795
  * @hidden
@@ -4808,23 +4811,12 @@ var AvatarComponent = /** @class */ (function () {
4808
4811
  configurable: true
4809
4812
  });
4810
4813
  Object.defineProperty(AvatarComponent.prototype, "shape", {
4811
- get: function () {
4812
- return this._shape;
4813
- },
4814
4814
  /**
4815
4815
  * Sets the shape for the avatar.
4816
- *
4817
- * Possible values are:
4818
- * * (Default) `square`
4819
- * * `circle`
4820
- * * `rectangle`
4821
- * * `rounded`
4822
- *
4816
+ * @hidden
4823
4817
  */
4824
4818
  set: function (shape) {
4825
- this.renderer.removeClass(this.avatar, SHAPE_CLASSES[this.shape]);
4826
- this.renderer.addClass(this.avatar, SHAPE_CLASSES[shape]);
4827
- this._shape = shape;
4819
+ this.rounded = mapShapeToRounded(shape);
4828
4820
  },
4829
4821
  enumerable: true,
4830
4822
  configurable: true
@@ -4844,9 +4836,35 @@ var AvatarComponent = /** @class */ (function () {
4844
4836
  *
4845
4837
  */
4846
4838
  set: function (size) {
4847
- this.renderer.removeClass(this.avatar, SIZE_CLASSES[this.size]);
4848
- this.renderer.addClass(this.avatar, SIZE_CLASSES[size]);
4849
- this._size = size;
4839
+ if (size !== this._size) {
4840
+ this.handleClasses('size', size);
4841
+ this._size = size === null ? null : size || 'medium';
4842
+ }
4843
+ },
4844
+ enumerable: true,
4845
+ configurable: true
4846
+ });
4847
+ Object.defineProperty(AvatarComponent.prototype, "rounded", {
4848
+ get: function () {
4849
+ return this._rounded;
4850
+ },
4851
+ /**
4852
+ * Specifies the rounded styling of the avatar
4853
+ * ([see example]({% slug appearance_avatar %}#toc-rounded-corners)).
4854
+ *
4855
+ * The possible values are:
4856
+ * * `small`
4857
+ * * `medium`
4858
+ * * `large`
4859
+ * * `full` (Default)
4860
+ * * null
4861
+ *
4862
+ */
4863
+ set: function (rounded) {
4864
+ if (rounded !== this._rounded) {
4865
+ this.handleClasses('rounded', rounded);
4866
+ this._rounded = rounded === null ? null : rounded || 'full';
4867
+ }
4850
4868
  },
4851
4869
  enumerable: true,
4852
4870
  configurable: true
@@ -4860,10 +4878,10 @@ var AvatarComponent = /** @class */ (function () {
4860
4878
  * The theme color will be applied as background and border color, while also amending the text color accordingly.
4861
4879
  *
4862
4880
  * The possible values are:
4881
+ * * `base`&mdash; Applies the base coloring value.
4863
4882
  * * `primary` (Default)&mdash;Applies coloring based on primary theme color.
4864
4883
  * * `secondary`&mdash;Applies coloring based on secondary theme color.
4865
4884
  * * `tertiary`&mdash; Applies coloring based on tertiary theme color.
4866
- * * `inherit`&mdash; Applies inherited coloring value.
4867
4885
  * * `info`&mdash;Applies coloring based on info theme color.
4868
4886
  * * `success`&mdash; Applies coloring based on success theme color.
4869
4887
  * * `warning`&mdash; Applies coloring based on warning theme color.
@@ -4871,45 +4889,67 @@ var AvatarComponent = /** @class */ (function () {
4871
4889
  * * `dark`&mdash; Applies coloring based on dark theme color.
4872
4890
  * * `light`&mdash; Applies coloring based on light theme color.
4873
4891
  * * `inverse`&mdash; Applies coloring based on inverted theme color.
4874
- *
4875
4892
  */
4876
4893
  set: function (themeColor) {
4877
- this.renderer.removeClass(this.avatar, "k-avatar-" + this.themeColor);
4878
- this.renderer.addClass(this.avatar, "k-avatar-" + themeColor);
4879
- this._themeColor = themeColor;
4894
+ if (themeColor !== this._themeColor) {
4895
+ this._themeColor = themeColor === null ? null : (themeColor || 'primary');
4896
+ this.handleFillModeAndThemeColorClasses(this.fillMode, this.themeColor);
4897
+ }
4880
4898
  },
4881
4899
  enumerable: true,
4882
4900
  configurable: true
4883
4901
  });
4884
- Object.defineProperty(AvatarComponent.prototype, "avatarWidth", {
4902
+ Object.defineProperty(AvatarComponent.prototype, "fillMode", {
4903
+ get: function () {
4904
+ return this._fillMode;
4905
+ },
4906
+ /**
4907
+ * Specifies the appearance fill style of the avatar.
4908
+ *
4909
+ * The possible values are:
4910
+ * * `solid` (Default)
4911
+ * * `outline`
4912
+ * * null
4913
+ *
4914
+ */
4915
+ set: function (fillMode) {
4916
+ if (fillMode !== this.fillMode) {
4917
+ this._fillMode = fillMode === null ? null : (fillMode || 'solid');
4918
+ this.handleFillModeAndThemeColorClasses(this.fillMode, this.themeColor);
4919
+ }
4920
+ },
4921
+ enumerable: true,
4922
+ configurable: true
4923
+ });
4924
+ Object.defineProperty(AvatarComponent.prototype, "fill", {
4885
4925
  /**
4926
+ * Specifies the appearance fill style of the avatar.
4927
+ * Deprecated, left for backward compatibility.
4928
+ *
4886
4929
  * @hidden
4887
4930
  */
4888
- get: function () {
4889
- return this.width;
4931
+ set: function (fillMode) {
4932
+ this.fillMode = fillMode;
4890
4933
  },
4891
4934
  enumerable: true,
4892
4935
  configurable: true
4893
4936
  });
4894
- Object.defineProperty(AvatarComponent.prototype, "avatarHeight", {
4937
+ Object.defineProperty(AvatarComponent.prototype, "avatarWidth", {
4895
4938
  /**
4896
4939
  * @hidden
4897
4940
  */
4898
4941
  get: function () {
4899
- return this.height;
4942
+ return this.width;
4900
4943
  },
4901
4944
  enumerable: true,
4902
4945
  configurable: true
4903
4946
  });
4904
- AvatarComponent.prototype.ngAfterViewInit = function () {
4905
- this.setAvatarClasses();
4906
- };
4907
- Object.defineProperty(AvatarComponent.prototype, "imageUrl", {
4947
+ Object.defineProperty(AvatarComponent.prototype, "avatarHeight", {
4908
4948
  /**
4909
4949
  * @hidden
4910
4950
  */
4911
4951
  get: function () {
4912
- return "url(" + this.imageSrc + ")";
4952
+ return this.height;
4913
4953
  },
4914
4954
  enumerable: true,
4915
4955
  configurable: true
@@ -4917,6 +4957,14 @@ var AvatarComponent = /** @class */ (function () {
4917
4957
  AvatarComponent.prototype.ngOnInit = function () {
4918
4958
  this.verifyProperties();
4919
4959
  };
4960
+ AvatarComponent.prototype.ngAfterViewInit = function () {
4961
+ var _this = this;
4962
+ var stylingInputs = ['size', 'rounded'];
4963
+ stylingInputs.forEach(function (input) {
4964
+ _this.handleClasses(input, _this[input]);
4965
+ });
4966
+ this.handleFillModeAndThemeColorClasses(this.fillMode, this.themeColor);
4967
+ };
4920
4968
  /**
4921
4969
  * @hidden
4922
4970
  */
@@ -4948,25 +4996,38 @@ var AvatarComponent = /** @class */ (function () {
4948
4996
  throw new Error("\n Invalid property configuration given.\n The kendo-avatar component can accept only one of:\n icon, imageSrc or initials properties.\n ");
4949
4997
  }
4950
4998
  };
4951
- AvatarComponent.prototype.setAvatarClasses = function () {
4952
- this.renderer.addClass(this.avatar, SHAPE_CLASSES[this.shape]);
4953
- this.renderer.addClass(this.avatar, "k-avatar-" + this.themeColor);
4954
- this.renderer.addClass(this.avatar, SIZE_CLASSES[this.size]);
4999
+ AvatarComponent.prototype.handleClasses = function (styleType, value) {
5000
+ var elem = this.element.nativeElement;
5001
+ var classes = getStylingClasses('avatar', styleType, this[styleType], value);
5002
+ if (classes.toRemove) {
5003
+ this.renderer.removeClass(elem, classes.toRemove);
5004
+ }
5005
+ if (classes.toAdd) {
5006
+ this.renderer.addClass(elem, classes.toAdd);
5007
+ }
5008
+ };
5009
+ AvatarComponent.prototype.handleFillModeAndThemeColorClasses = function (fill, themeColor) {
5010
+ var _this = this;
5011
+ var wrapperElement = this.element.nativeElement;
5012
+ // remove existing fill and theme color classes
5013
+ var currentClasses = Array.from(wrapperElement.classList);
5014
+ var classesToRemove = currentClasses.filter(function (cl) {
5015
+ return cl.startsWith('k-avatar-solid') || cl.startsWith('k-avatar-outline');
5016
+ });
5017
+ classesToRemove.forEach((function (cl) { return _this.renderer.removeClass(wrapperElement, cl); }));
5018
+ // add fill if needed
5019
+ if (fill !== null) {
5020
+ this.renderer.addClass(wrapperElement, "k-avatar-" + fill);
5021
+ }
5022
+ // add theme color class if fill and theme color
5023
+ if (fill !== null && themeColor !== null) {
5024
+ this.renderer.addClass(wrapperElement, "k-avatar-" + fill + "-" + themeColor);
5025
+ }
4955
5026
  };
4956
5027
  __decorate([
4957
5028
  HostBinding('class.k-avatar'),
4958
5029
  __metadata("design:type", Boolean)
4959
5030
  ], AvatarComponent.prototype, "hostClass", void 0);
4960
- __decorate([
4961
- HostBinding('class.k-avatar-solid'),
4962
- __metadata("design:type", Boolean),
4963
- __metadata("design:paramtypes", [])
4964
- ], AvatarComponent.prototype, "solidClass", null);
4965
- __decorate([
4966
- HostBinding('class.k-avatar-outline'),
4967
- __metadata("design:type", Boolean),
4968
- __metadata("design:paramtypes", [])
4969
- ], AvatarComponent.prototype, "outlineClass", null);
4970
5031
  __decorate([
4971
5032
  HostBinding('class.k-avatar-bordered'),
4972
5033
  __metadata("design:type", Boolean),
@@ -4987,6 +5048,11 @@ var AvatarComponent = /** @class */ (function () {
4987
5048
  __metadata("design:type", String),
4988
5049
  __metadata("design:paramtypes", [String])
4989
5050
  ], AvatarComponent.prototype, "size", null);
5051
+ __decorate([
5052
+ Input(),
5053
+ __metadata("design:type", String),
5054
+ __metadata("design:paramtypes", [String])
5055
+ ], AvatarComponent.prototype, "rounded", null);
4990
5056
  __decorate([
4991
5057
  Input(),
4992
5058
  __metadata("design:type", String),
@@ -4994,8 +5060,14 @@ var AvatarComponent = /** @class */ (function () {
4994
5060
  ], AvatarComponent.prototype, "themeColor", null);
4995
5061
  __decorate([
4996
5062
  Input(),
4997
- __metadata("design:type", String)
4998
- ], AvatarComponent.prototype, "fill", void 0);
5063
+ __metadata("design:type", String),
5064
+ __metadata("design:paramtypes", [String])
5065
+ ], AvatarComponent.prototype, "fillMode", null);
5066
+ __decorate([
5067
+ Input(),
5068
+ __metadata("design:type", String),
5069
+ __metadata("design:paramtypes", [String])
5070
+ ], AvatarComponent.prototype, "fill", null);
4999
5071
  __decorate([
5000
5072
  Input(),
5001
5073
  __metadata("design:type", Boolean)
@@ -5041,7 +5113,7 @@ var AvatarComponent = /** @class */ (function () {
5041
5113
  AvatarComponent = __decorate([
5042
5114
  Component({
5043
5115
  selector: 'kendo-avatar',
5044
- template: "\n <ng-content *ngIf=\"customAvatar\"></ng-content>\n\n <ng-container *ngIf=\"imageSrc\">\n <div class=\"k-avatar-image\" [ngStyle]=\"cssStyle\" [style.backgroundImage]=\"imageUrl\"></div>\n </ng-container>\n\n <ng-container *ngIf=\"initials\">\n <span class=\"k-avatar-text\" [ngStyle]=\"cssStyle\">{{ initials.substring(0, 2) }}</span>\n </ng-container>\n\n <ng-container *ngIf=\"icon || iconClass\">\n <span class=\"k-avatar-icon\" [ngStyle]=\"cssStyle\" [ngClass]=\"iconClasses()\"></span>\n </ng-container>\n "
5116
+ template: "\n <ng-content *ngIf=\"customAvatar\"></ng-content>\n\n <ng-container *ngIf=\"imageSrc\">\n <span class=\"k-avatar-image\">\n <img src=\"{{imageSrc}}\" [ngStyle]=\"cssStyle\" />\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"initials\">\n <span class=\"k-avatar-text\" [ngStyle]=\"cssStyle\">{{ initials.substring(0, 2) }}</span>\n </ng-container>\n\n <ng-container *ngIf=\"icon || iconClass\">\n <span class=\"k-avatar-icon\" [ngStyle]=\"cssStyle\" [ngClass]=\"iconClasses()\"></span>\n </ng-container>\n "
5045
5117
  }),
5046
5118
  __metadata("design:paramtypes", [Renderer2, ElementRef])
5047
5119
  ], AvatarComponent);