@progress/kendo-vue-buttons 3.7.4-dev.202211301436 → 3.7.4-dev.202212300853

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 (36) hide show
  1. package/README.md +1 -1
  2. package/dist/cdn/js/kendo-vue-buttons.js +1 -1
  3. package/dist/es/Button.js +10 -6
  4. package/dist/es/ButtonInterface.d.ts +5 -0
  5. package/dist/es/Chip/Chip.d.ts +4 -0
  6. package/dist/es/Chip/Chip.js +21 -11
  7. package/dist/es/FloatingActionButton/FloatingActionButton.js +10 -10
  8. package/dist/es/FloatingActionButton/FloatingActionButtonItem.d.ts +5 -0
  9. package/dist/es/FloatingActionButton/FloatingActionButtonItem.js +12 -6
  10. package/dist/es/FloatingActionButton/interfaces/FloatingActionButtonProps.d.ts +5 -0
  11. package/dist/es/ListButton/ButtonItem.js +11 -4
  12. package/dist/es/package-metadata.js +1 -1
  13. package/dist/es/toolbar/Toolbar.js +1 -1
  14. package/dist/esm/Button.js +10 -6
  15. package/dist/esm/ButtonInterface.d.ts +5 -0
  16. package/dist/esm/Chip/Chip.d.ts +4 -0
  17. package/dist/esm/Chip/Chip.js +21 -11
  18. package/dist/esm/FloatingActionButton/FloatingActionButton.js +10 -10
  19. package/dist/esm/FloatingActionButton/FloatingActionButtonItem.d.ts +5 -0
  20. package/dist/esm/FloatingActionButton/FloatingActionButtonItem.js +12 -6
  21. package/dist/esm/FloatingActionButton/interfaces/FloatingActionButtonProps.d.ts +5 -0
  22. package/dist/esm/ListButton/ButtonItem.js +11 -4
  23. package/dist/esm/package-metadata.js +1 -1
  24. package/dist/esm/toolbar/Toolbar.js +1 -1
  25. package/dist/npm/Button.js +9 -5
  26. package/dist/npm/ButtonInterface.d.ts +5 -0
  27. package/dist/npm/Chip/Chip.d.ts +4 -0
  28. package/dist/npm/Chip/Chip.js +20 -10
  29. package/dist/npm/FloatingActionButton/FloatingActionButton.js +9 -9
  30. package/dist/npm/FloatingActionButton/FloatingActionButtonItem.d.ts +5 -0
  31. package/dist/npm/FloatingActionButton/FloatingActionButtonItem.js +11 -5
  32. package/dist/npm/FloatingActionButton/interfaces/FloatingActionButtonProps.d.ts +5 -0
  33. package/dist/npm/ListButton/ButtonItem.js +10 -3
  34. package/dist/npm/package-metadata.js +1 -1
  35. package/dist/npm/toolbar/Toolbar.js +1 -1
  36. package/package.json +7 -6
package/dist/es/Button.js CHANGED
@@ -3,7 +3,7 @@ import * as Vue from 'vue';
3
3
  var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
- import { classNames, getDefaultSlots, validatePackage, kendoThemeMaps } from '@progress/kendo-vue-common';
6
+ import { classNames, getDefaultSlots, validatePackage, kendoThemeMaps, Icon } from '@progress/kendo-vue-common';
7
7
  import { packageMetadata } from './package-metadata';
8
8
  import util from './util';
9
9
  var styles = util.styles;
@@ -41,6 +41,7 @@ var ButtonVue2 = {
41
41
  return undefined;
42
42
  }
43
43
  },
44
+ svgIcon: Object,
44
45
  iconClass: {
45
46
  type: String,
46
47
  default: function _default() {
@@ -194,6 +195,7 @@ var ButtonVue2 = {
194
195
  var _a = this.$props,
195
196
  togglable = _a.togglable,
196
197
  icon = _a.icon,
198
+ svgIcon = _a.svgIcon,
197
199
  iconClass = _a.iconClass,
198
200
  imageUrl = _a.imageUrl,
199
201
  imageAlt = _a.imageAlt;
@@ -211,13 +213,15 @@ var ButtonVue2 = {
211
213
  alt: imageAlt,
212
214
  src: imageUrl
213
215
  });
214
- } else if (icon) {
215
- var iconClasses = classNames('k-icon', 'k-button-icon', 'k-i-' + icon, iconClass);
216
- return h("span", {
217
- role: "presentation",
216
+ } else if (icon || svgIcon) {
217
+ var iconClasses = classNames('k-button-icon', iconClass);
218
+ return h(Icon, {
219
+ name: icon,
218
220
  attrs: this.v3 ? undefined : {
219
- role: "presentation"
221
+ name: icon,
222
+ icon: svgIcon
220
223
  },
224
+ icon: svgIcon,
221
225
  "class": iconClasses
222
226
  });
223
227
  } else if (iconClass) {
@@ -1,3 +1,4 @@
1
+ import { SVGIcon } from '@progress/kendo-vue-common';
1
2
  /**
2
3
  * Inherits the native HTML Button. Represents the properties which can be set to a Button.
3
4
  */
@@ -41,6 +42,10 @@ export interface ButtonInterface {
41
42
  * Defines the name for an existing icon in a Kendo UI for Vue theme ([see example]({% slug icons_button %})). The icon is rendered inside the Button by a `span.k-icon` element.
42
43
  */
43
44
  icon?: string;
45
+ /**
46
+ * Defines the svg icon in a Kendo UI for Vue theme.
47
+ */
48
+ svgIcon?: SVGIcon;
44
49
  /**
45
50
  * Defines a CSS class—or multiple classes separated by spaces—which are applied to a `span` element inside the Button ([see example]({% slug icons_button %})). Allows the usage of custom icons.
46
51
  */
@@ -56,6 +56,10 @@ export interface ChipProps {
56
56
  * Determines if the Chip style is `filled` or `outlined`.
57
57
  */
58
58
  look?: string;
59
+ /**
60
+ * Defines the avatar template that will be shown. Accepts a slot name, a `render` function, or a Vue component.
61
+ */
62
+ avatar?: string | Function | Object;
59
63
  /**
60
64
  * Configures the `size` of the Chip.
61
65
  *
@@ -4,7 +4,7 @@ var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
6
  var ref = allVue.ref;
7
- import { classNames, getTabIndex, Keys, noop, validatePackage, kendoThemeMaps, setRef, getRef } from '@progress/kendo-vue-common';
7
+ import { classNames, getTabIndex, Keys, noop, validatePackage, kendoThemeMaps, setRef, getRef, templateRendering, getListeners, getTemplate, Icon } from '@progress/kendo-vue-common';
8
8
  import { FOCUS_ACTION } from './focus-reducer';
9
9
  import { DATA_ACTION } from './data-reducer';
10
10
  import { SELECTION_ACTION } from './selection-reducer';
@@ -17,6 +17,7 @@ var ChipVue2 = {
17
17
  props: {
18
18
  id: String,
19
19
  text: String,
20
+ avatar: [String, Function, Object],
20
21
  value: [String, Object],
21
22
  type: String,
22
23
  dir: {
@@ -254,7 +255,14 @@ var ChipVue2 = {
254
255
  themeColor = _b.themeColor,
255
256
  fillMode = _b.fillMode,
256
257
  look = _b.look,
257
- type = _b.type;
258
+ type = _b.type,
259
+ avatar = _b.avatar,
260
+ icon = _b.icon;
261
+ var avatarTemplate = templateRendering.call(this, avatar, getListeners.call(this));
262
+ var avatarRender = getTemplate.call(this, {
263
+ h: h,
264
+ template: avatarTemplate
265
+ });
258
266
  return h("div", {
259
267
  role: this.$props.role,
260
268
  attrs: this.v3 ? undefined : {
@@ -262,7 +270,8 @@ var ChipVue2 = {
262
270
  id: this.$props.value,
263
271
  dir: this.currentDir,
264
272
  tabindex: getTabIndex(this.$props.tabIndex, this.$props.disabled, undefined),
265
- "aria-checked": this.currentSelected,
273
+ "aria-pressed": this.$props.role === 'button' ? this.currentSelected : undefined,
274
+ "aria-selected": this.$props.role === 'option' ? this.currentSelected : undefined,
266
275
  "aria-disabled": this.$props.disabled,
267
276
  "aria-describedby": this.$props.ariaDescribedBy
268
277
  },
@@ -276,7 +285,8 @@ var ChipVue2 = {
276
285
  'k-selected': this.currentSelected,
277
286
  'k-focus': this.computedFocused()
278
287
  }, _a["k-chip-".concat(kendoThemeMaps.sizeMap[size] || size)] = size, _a["k-rounded-".concat(kendoThemeMaps.roundedMap[rounded] || rounded)] = rounded, _a["k-chip-".concat(fillMode)] = fillMode, _a["k-chip-".concat(fillMode, "-").concat(themeColor)] = Boolean(fillMode && themeColor), _a['k-chip-success'] = type === 'success', _a['k-chip-warning'] = type === 'warning', _a['k-chip-error'] = type === 'error', _a['k-chip-info'] = type === 'info', _a['k-chip-outline'] = look === 'outline' || look === 'outlined', _a['k-chip-solid'] = look === 'solid' || look === 'filled', _a)),
279
- "aria-checked": this.currentSelected,
288
+ "aria-pressed": this.$props.role === 'button' ? this.currentSelected : undefined,
289
+ "aria-selected": this.$props.role === 'option' ? this.currentSelected : undefined,
280
290
  "aria-disabled": this.$props.disabled,
281
291
  "aria-describedby": this.$props.ariaDescribedBy,
282
292
  onFocus: this.handleFocus,
@@ -289,11 +299,11 @@ var ChipVue2 = {
289
299
  onBlur: this.handleBlur,
290
300
  onClick: this.handleClick,
291
301
  onKeydown: this.handleKeyDown
292
- }, [this.currentSelected && this.$props.selectedIcon && h("span", {
293
- "class": classNames('k-chip-icon', 'k-icon', this.$props.selectedIcon)
294
- }), this.$props.icon && h("span", {
295
- "class": classNames('k-chip-icon', 'k-icon', this.$props.icon)
296
- }), h("span", {
302
+ }, [this.currentSelected && this.$props.selectedIcon && h(Icon, {
303
+ "class": classNames('k-chip-icon', this.$props.selectedIcon)
304
+ }), icon && h(Icon, {
305
+ "class": classNames('k-chip-icon', icon)
306
+ }), avatar && avatarRender, h("span", {
297
307
  "class": 'k-chip-content'
298
308
  }, [this.$props.text && h("span", {
299
309
  "aria-label": this.$props.text,
@@ -305,8 +315,8 @@ var ChipVue2 = {
305
315
  "class": "k-chip-actions"
306
316
  }, [h("span", {
307
317
  "class": "k-chip-action k-chip-remove-action"
308
- }, [h("span", {
309
- "class": classNames('k-icon', this.$props.removeIcon),
318
+ }, [h(Icon, {
319
+ "class": this.$props.removeIcon,
310
320
  onClick: this.handleRemove,
311
321
  on: this.v3 ? undefined : {
312
322
  "click": this.handleRemove
@@ -4,7 +4,7 @@ var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
6
  var ref = allVue.ref;
7
- import { classNames, guid, Keys, getTabIndex, templateRendering, getListeners, validatePackage, canUseDOM, kendoThemeMaps, setRef, getRef } from '@progress/kendo-vue-common';
7
+ import { classNames, guid, Keys, getTabIndex, templateRendering, getListeners, validatePackage, canUseDOM, kendoThemeMaps, setRef, getRef, Icon } from '@progress/kendo-vue-common';
8
8
  import { FloatingActionButtonItem } from './FloatingActionButtonItem';
9
9
  import { packageMetadata } from '../package-metadata';
10
10
  import { position, getAnchorAlign, getPopupAlign, getTextDirectionClass } from './utils';
@@ -21,6 +21,7 @@ var FloatingActionButtonVue2 = {
21
21
  accessKey: String,
22
22
  disabled: Boolean,
23
23
  icon: String,
24
+ svgIcon: Object,
24
25
  iconClass: String,
25
26
  items: [Object, Array],
26
27
  item: [String, Function, Object],
@@ -292,6 +293,7 @@ var FloatingActionButtonVue2 = {
292
293
  align = _a.align,
293
294
  disabled = _a.disabled,
294
295
  icon = _a.icon,
296
+ svgIcon = _a.svgIcon,
295
297
  iconClass = _a.iconClass,
296
298
  id = _a.id,
297
299
  items = _a.items,
@@ -384,17 +386,15 @@ var FloatingActionButtonVue2 = {
384
386
  onFocusin: this.handleFocus,
385
387
  onBlur: this.handleBlur,
386
388
  onKeydown: this.handleKeyDown
387
- }, [icon ? h("span", {
388
- role: "presentation",
389
+ }, [icon || svgIcon ? h(Icon, {
390
+ name: icon,
389
391
  attrs: this.v3 ? undefined : {
390
- role: "presentation"
391
- },
392
- "class": classNames("k-fab-icon k-icon k-i-".concat(icon))
393
- }) : iconClass ? h("span", {
394
- role: "presentation",
395
- attrs: this.v3 ? undefined : {
396
- role: "presentation"
392
+ name: icon,
393
+ svgIcon: svgIcon
397
394
  },
395
+ svgIcon: svgIcon,
396
+ "class": 'k-fab-icon'
397
+ }) : iconClass ? h(Icon, {
398
398
  "class": iconClass
399
399
  }) : null, text && h("span", {
400
400
  "class": "k-fab-text"
@@ -3,6 +3,7 @@ declare type DefaultData<V> = object | ((this: V) => {});
3
3
  declare type DefaultMethods<V> = {
4
4
  [key: string]: (this: V, ...args: any[]) => any;
5
5
  };
6
+ import { SVGIcon } from '@progress/kendo-vue-common';
6
7
  /**
7
8
  * The FloatingActionButtonItemHandle ref.
8
9
  */
@@ -36,6 +37,10 @@ export interface FloatingActionButtonItemProps {
36
37
  * [see example]({% slug databinding_floatingactionbutton %}).
37
38
  */
38
39
  icon?: string;
40
+ /**
41
+ * Defines the svg icon in a Kendo UI for Vue theme.
42
+ */
43
+ svgIcon?: SVGIcon;
39
44
  /**
40
45
  * Specifies the text of the FloatingActionButtonItem
41
46
  * [see example]({% slug databinding_floatingactionbutton %}).
@@ -4,7 +4,7 @@ var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
6
  var ref = allVue.ref;
7
- import { classNames, getRef, getTabIndex, getTemplate, setRef } from '@progress/kendo-vue-common';
7
+ import { classNames, getRef, getTabIndex, getTemplate, Icon, setRef } from '@progress/kendo-vue-common';
8
8
  /**
9
9
  * @hidden
10
10
  */
@@ -67,10 +67,10 @@ var FloatingActionButtonItemVue2 = {
67
67
  disabled = _a.disabled,
68
68
  id = _a.id,
69
69
  tabIndex = _a.tabIndex,
70
- dataItem = _a.dataItem,
71
- customProp = _a.customProp;
70
+ dataItem = _a.dataItem;
72
71
  var text = dataItem.text,
73
- icon = dataItem.icon;
72
+ icon = dataItem.icon,
73
+ svgIcon = dataItem.svgIcon;
74
74
  var item;
75
75
  var itemDefaultRendering = h("li", {
76
76
  ref: setRef(this, 'element'),
@@ -97,8 +97,14 @@ var FloatingActionButtonItemVue2 = {
97
97
  onPointerdown: this.onDown
98
98
  }, [text && h("span", {
99
99
  "class": "k-fab-item-text"
100
- }, [text]), icon && h("span", {
101
- "class": classNames("k-fab-item-icon k-icon k-i-".concat(icon))
100
+ }, [text]), icon && h(Icon, {
101
+ name: icon,
102
+ attrs: this.v3 ? undefined : {
103
+ name: icon,
104
+ svgIcon: svgIcon
105
+ },
106
+ svgIcon: svgIcon,
107
+ "class": "k-fab-item-icon"
102
108
  })]);
103
109
  item = getTemplate.call(this, {
104
110
  h: h,
@@ -5,6 +5,7 @@ import { FloatingActionButtonEvent, FloatingActionButtonItemEvent } from '../mod
5
5
  import { FloatingActionButtonPositionMode } from '../models/position-mode';
6
6
  import { FloatingActionButtonSize } from '../models/size';
7
7
  import { FloatingActionButtonThemeColor } from '../models/theme-color';
8
+ import { SVGIcon } from '@progress/kendo-vue-common';
8
9
  /**
9
10
  * @hidden
10
11
  */
@@ -41,6 +42,10 @@ export interface FloatingActionButtonProps extends Omit<any, 'onBlur' | 'onFocus
41
42
  * Button [see example]({% slug contenttypes_floatingactionbutton %}).
42
43
  */
43
44
  icon?: string;
45
+ /**
46
+ * Defines the svg icon in a Kendo UI for Vue theme.
47
+ */
48
+ svgIcon?: SVGIcon;
44
49
  /**
45
50
  * Defines a CSS class or multiple classes separated by spaces which are applied
46
51
  * to a `span` element inside the Floating Action Button. Allows the usage of custom icons.
@@ -3,7 +3,7 @@ import * as Vue from 'vue';
3
3
  var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
- import { getTemplate } from '@progress/kendo-vue-common';
6
+ import { getTemplate, Icon } from '@progress/kendo-vue-common';
7
7
  /**
8
8
  * @hidden
9
9
  */
@@ -65,7 +65,6 @@ var ButtonItemVue2 = {
65
65
  textField = _a.textField,
66
66
  index = _a.index;
67
67
  var text = dataItem.text !== undefined ? dataItem.text : textField ? dataItem[textField] : dataItem;
68
- var iconClass = dataItem.icon ? "k-icon k-i-".concat(dataItem.icon) : dataItem.iconClass;
69
68
  var itemContent = h("span", {
70
69
  tabindex: -1,
71
70
  attrs: this.v3 ? undefined : {
@@ -73,8 +72,16 @@ var ButtonItemVue2 = {
73
72
  },
74
73
  "class": this.innerClass,
75
74
  key: "icon"
76
- }, [iconClass && h("span", {
77
- "class": iconClass,
75
+ }, [dataItem.icon || dataItem.svgIcon ? h(Icon, {
76
+ name: dataItem.icon,
77
+ attrs: this.v3 ? undefined : {
78
+ name: dataItem.icon,
79
+ svgIcon: dataItem.svgIcon
80
+ },
81
+ svgIcon: dataItem.svgIcon,
82
+ "class": dataItem.iconClass
83
+ }) : dataItem.iconClass && h("span", {
84
+ "class": dataItem.iconClass,
78
85
  role: "presentation",
79
86
  attrs: this.v3 ? undefined : {
80
87
  role: "presentation"
@@ -5,7 +5,7 @@ export var packageMetadata = {
5
5
  name: '@progress/kendo-vue-buttons',
6
6
  productName: 'Kendo UI for Vue',
7
7
  productCodes: ['KENDOUIVUE', 'KENDOUICOMPLETE'],
8
- publishDate: 1669818159,
8
+ publishDate: 1672389521,
9
9
  version: '',
10
10
  licensingDocsUrl: 'https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning'
11
11
  };
@@ -94,7 +94,7 @@ var ToolbarVue2 = {
94
94
  var h = gh || createElement;
95
95
  var defaultSlot = getDefaultSlots(this);
96
96
  return h("div", {
97
- "class": 'k-widget k-toolbar',
97
+ "class": 'k-toolbar',
98
98
  role: "toolbar",
99
99
  attrs: this.v3 ? undefined : {
100
100
  role: "toolbar",
@@ -3,7 +3,7 @@ import * as Vue from 'vue';
3
3
  var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
- import { classNames, getDefaultSlots, validatePackage, kendoThemeMaps } from '@progress/kendo-vue-common';
6
+ import { classNames, getDefaultSlots, validatePackage, kendoThemeMaps, Icon } from '@progress/kendo-vue-common';
7
7
  import { packageMetadata } from './package-metadata.js';
8
8
  import util from './util.js';
9
9
  var styles = util.styles;
@@ -41,6 +41,7 @@ var ButtonVue2 = {
41
41
  return undefined;
42
42
  }
43
43
  },
44
+ svgIcon: Object,
44
45
  iconClass: {
45
46
  type: String,
46
47
  default: function _default() {
@@ -194,6 +195,7 @@ var ButtonVue2 = {
194
195
  var _a = this.$props,
195
196
  togglable = _a.togglable,
196
197
  icon = _a.icon,
198
+ svgIcon = _a.svgIcon,
197
199
  iconClass = _a.iconClass,
198
200
  imageUrl = _a.imageUrl,
199
201
  imageAlt = _a.imageAlt;
@@ -211,13 +213,15 @@ var ButtonVue2 = {
211
213
  alt: imageAlt,
212
214
  src: imageUrl
213
215
  });
214
- } else if (icon) {
215
- var iconClasses = classNames('k-icon', 'k-button-icon', 'k-i-' + icon, iconClass);
216
- return h("span", {
217
- role: "presentation",
216
+ } else if (icon || svgIcon) {
217
+ var iconClasses = classNames('k-button-icon', iconClass);
218
+ return h(Icon, {
219
+ name: icon,
218
220
  attrs: this.v3 ? undefined : {
219
- role: "presentation"
221
+ name: icon,
222
+ icon: svgIcon
220
223
  },
224
+ icon: svgIcon,
221
225
  "class": iconClasses
222
226
  });
223
227
  } else if (iconClass) {
@@ -1,3 +1,4 @@
1
+ import { SVGIcon } from '@progress/kendo-vue-common';
1
2
  /**
2
3
  * Inherits the native HTML Button. Represents the properties which can be set to a Button.
3
4
  */
@@ -41,6 +42,10 @@ export interface ButtonInterface {
41
42
  * Defines the name for an existing icon in a Kendo UI for Vue theme ([see example]({% slug icons_button %})). The icon is rendered inside the Button by a `span.k-icon` element.
42
43
  */
43
44
  icon?: string;
45
+ /**
46
+ * Defines the svg icon in a Kendo UI for Vue theme.
47
+ */
48
+ svgIcon?: SVGIcon;
44
49
  /**
45
50
  * Defines a CSS class&mdash;or multiple classes separated by spaces&mdash;which are applied to a `span` element inside the Button ([see example]({% slug icons_button %})). Allows the usage of custom icons.
46
51
  */
@@ -56,6 +56,10 @@ export interface ChipProps {
56
56
  * Determines if the Chip style is `filled` or `outlined`.
57
57
  */
58
58
  look?: string;
59
+ /**
60
+ * Defines the avatar template that will be shown. Accepts a slot name, a `render` function, or a Vue component.
61
+ */
62
+ avatar?: string | Function | Object;
59
63
  /**
60
64
  * Configures the `size` of the Chip.
61
65
  *
@@ -4,7 +4,7 @@ var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
6
  var ref = allVue.ref;
7
- import { classNames, getTabIndex, Keys, noop, validatePackage, kendoThemeMaps, setRef, getRef } from '@progress/kendo-vue-common';
7
+ import { classNames, getTabIndex, Keys, noop, validatePackage, kendoThemeMaps, setRef, getRef, templateRendering, getListeners, getTemplate, Icon } from '@progress/kendo-vue-common';
8
8
  import { FOCUS_ACTION } from './focus-reducer.js';
9
9
  import { DATA_ACTION } from './data-reducer.js';
10
10
  import { SELECTION_ACTION } from './selection-reducer.js';
@@ -17,6 +17,7 @@ var ChipVue2 = {
17
17
  props: {
18
18
  id: String,
19
19
  text: String,
20
+ avatar: [String, Function, Object],
20
21
  value: [String, Object],
21
22
  type: String,
22
23
  dir: {
@@ -254,7 +255,14 @@ var ChipVue2 = {
254
255
  themeColor = _b.themeColor,
255
256
  fillMode = _b.fillMode,
256
257
  look = _b.look,
257
- type = _b.type;
258
+ type = _b.type,
259
+ avatar = _b.avatar,
260
+ icon = _b.icon;
261
+ var avatarTemplate = templateRendering.call(this, avatar, getListeners.call(this));
262
+ var avatarRender = getTemplate.call(this, {
263
+ h: h,
264
+ template: avatarTemplate
265
+ });
258
266
  return h("div", {
259
267
  role: this.$props.role,
260
268
  attrs: this.v3 ? undefined : {
@@ -262,7 +270,8 @@ var ChipVue2 = {
262
270
  id: this.$props.value,
263
271
  dir: this.currentDir,
264
272
  tabindex: getTabIndex(this.$props.tabIndex, this.$props.disabled, undefined),
265
- "aria-checked": this.currentSelected,
273
+ "aria-pressed": this.$props.role === 'button' ? this.currentSelected : undefined,
274
+ "aria-selected": this.$props.role === 'option' ? this.currentSelected : undefined,
266
275
  "aria-disabled": this.$props.disabled,
267
276
  "aria-describedby": this.$props.ariaDescribedBy
268
277
  },
@@ -276,7 +285,8 @@ var ChipVue2 = {
276
285
  'k-selected': this.currentSelected,
277
286
  'k-focus': this.computedFocused()
278
287
  }, _a["k-chip-".concat(kendoThemeMaps.sizeMap[size] || size)] = size, _a["k-rounded-".concat(kendoThemeMaps.roundedMap[rounded] || rounded)] = rounded, _a["k-chip-".concat(fillMode)] = fillMode, _a["k-chip-".concat(fillMode, "-").concat(themeColor)] = Boolean(fillMode && themeColor), _a['k-chip-success'] = type === 'success', _a['k-chip-warning'] = type === 'warning', _a['k-chip-error'] = type === 'error', _a['k-chip-info'] = type === 'info', _a['k-chip-outline'] = look === 'outline' || look === 'outlined', _a['k-chip-solid'] = look === 'solid' || look === 'filled', _a)),
279
- "aria-checked": this.currentSelected,
288
+ "aria-pressed": this.$props.role === 'button' ? this.currentSelected : undefined,
289
+ "aria-selected": this.$props.role === 'option' ? this.currentSelected : undefined,
280
290
  "aria-disabled": this.$props.disabled,
281
291
  "aria-describedby": this.$props.ariaDescribedBy,
282
292
  onFocus: this.handleFocus,
@@ -289,11 +299,11 @@ var ChipVue2 = {
289
299
  onBlur: this.handleBlur,
290
300
  onClick: this.handleClick,
291
301
  onKeydown: this.handleKeyDown
292
- }, [this.currentSelected && this.$props.selectedIcon && h("span", {
293
- "class": classNames('k-chip-icon', 'k-icon', this.$props.selectedIcon)
294
- }), this.$props.icon && h("span", {
295
- "class": classNames('k-chip-icon', 'k-icon', this.$props.icon)
296
- }), h("span", {
302
+ }, [this.currentSelected && this.$props.selectedIcon && h(Icon, {
303
+ "class": classNames('k-chip-icon', this.$props.selectedIcon)
304
+ }), icon && h(Icon, {
305
+ "class": classNames('k-chip-icon', icon)
306
+ }), avatar && avatarRender, h("span", {
297
307
  "class": 'k-chip-content'
298
308
  }, [this.$props.text && h("span", {
299
309
  "aria-label": this.$props.text,
@@ -305,8 +315,8 @@ var ChipVue2 = {
305
315
  "class": "k-chip-actions"
306
316
  }, [h("span", {
307
317
  "class": "k-chip-action k-chip-remove-action"
308
- }, [h("span", {
309
- "class": classNames('k-icon', this.$props.removeIcon),
318
+ }, [h(Icon, {
319
+ "class": this.$props.removeIcon,
310
320
  onClick: this.handleRemove,
311
321
  on: this.v3 ? undefined : {
312
322
  "click": this.handleRemove
@@ -4,7 +4,7 @@ var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
6
  var ref = allVue.ref;
7
- import { classNames, guid, Keys, getTabIndex, templateRendering, getListeners, validatePackage, canUseDOM, kendoThemeMaps, setRef, getRef } from '@progress/kendo-vue-common';
7
+ import { classNames, guid, Keys, getTabIndex, templateRendering, getListeners, validatePackage, canUseDOM, kendoThemeMaps, setRef, getRef, Icon } from '@progress/kendo-vue-common';
8
8
  import { FloatingActionButtonItem } from './FloatingActionButtonItem.js';
9
9
  import { packageMetadata } from '../package-metadata.js';
10
10
  import { position, getAnchorAlign, getPopupAlign, getTextDirectionClass } from './utils.js';
@@ -21,6 +21,7 @@ var FloatingActionButtonVue2 = {
21
21
  accessKey: String,
22
22
  disabled: Boolean,
23
23
  icon: String,
24
+ svgIcon: Object,
24
25
  iconClass: String,
25
26
  items: [Object, Array],
26
27
  item: [String, Function, Object],
@@ -292,6 +293,7 @@ var FloatingActionButtonVue2 = {
292
293
  align = _a.align,
293
294
  disabled = _a.disabled,
294
295
  icon = _a.icon,
296
+ svgIcon = _a.svgIcon,
295
297
  iconClass = _a.iconClass,
296
298
  id = _a.id,
297
299
  items = _a.items,
@@ -384,17 +386,15 @@ var FloatingActionButtonVue2 = {
384
386
  onFocusin: this.handleFocus,
385
387
  onBlur: this.handleBlur,
386
388
  onKeydown: this.handleKeyDown
387
- }, [icon ? h("span", {
388
- role: "presentation",
389
+ }, [icon || svgIcon ? h(Icon, {
390
+ name: icon,
389
391
  attrs: this.v3 ? undefined : {
390
- role: "presentation"
391
- },
392
- "class": classNames("k-fab-icon k-icon k-i-".concat(icon))
393
- }) : iconClass ? h("span", {
394
- role: "presentation",
395
- attrs: this.v3 ? undefined : {
396
- role: "presentation"
392
+ name: icon,
393
+ svgIcon: svgIcon
397
394
  },
395
+ svgIcon: svgIcon,
396
+ "class": 'k-fab-icon'
397
+ }) : iconClass ? h(Icon, {
398
398
  "class": iconClass
399
399
  }) : null, text && h("span", {
400
400
  "class": "k-fab-text"
@@ -3,6 +3,7 @@ declare type DefaultData<V> = object | ((this: V) => {});
3
3
  declare type DefaultMethods<V> = {
4
4
  [key: string]: (this: V, ...args: any[]) => any;
5
5
  };
6
+ import { SVGIcon } from '@progress/kendo-vue-common';
6
7
  /**
7
8
  * The FloatingActionButtonItemHandle ref.
8
9
  */
@@ -36,6 +37,10 @@ export interface FloatingActionButtonItemProps {
36
37
  * [see example]({% slug databinding_floatingactionbutton %}).
37
38
  */
38
39
  icon?: string;
40
+ /**
41
+ * Defines the svg icon in a Kendo UI for Vue theme.
42
+ */
43
+ svgIcon?: SVGIcon;
39
44
  /**
40
45
  * Specifies the text of the FloatingActionButtonItem
41
46
  * [see example]({% slug databinding_floatingactionbutton %}).
@@ -4,7 +4,7 @@ var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
6
  var ref = allVue.ref;
7
- import { classNames, getRef, getTabIndex, getTemplate, setRef } from '@progress/kendo-vue-common';
7
+ import { classNames, getRef, getTabIndex, getTemplate, Icon, setRef } from '@progress/kendo-vue-common';
8
8
  /**
9
9
  * @hidden
10
10
  */
@@ -67,10 +67,10 @@ var FloatingActionButtonItemVue2 = {
67
67
  disabled = _a.disabled,
68
68
  id = _a.id,
69
69
  tabIndex = _a.tabIndex,
70
- dataItem = _a.dataItem,
71
- customProp = _a.customProp;
70
+ dataItem = _a.dataItem;
72
71
  var text = dataItem.text,
73
- icon = dataItem.icon;
72
+ icon = dataItem.icon,
73
+ svgIcon = dataItem.svgIcon;
74
74
  var item;
75
75
  var itemDefaultRendering = h("li", {
76
76
  ref: setRef(this, 'element'),
@@ -97,8 +97,14 @@ var FloatingActionButtonItemVue2 = {
97
97
  onPointerdown: this.onDown
98
98
  }, [text && h("span", {
99
99
  "class": "k-fab-item-text"
100
- }, [text]), icon && h("span", {
101
- "class": classNames("k-fab-item-icon k-icon k-i-".concat(icon))
100
+ }, [text]), icon && h(Icon, {
101
+ name: icon,
102
+ attrs: this.v3 ? undefined : {
103
+ name: icon,
104
+ svgIcon: svgIcon
105
+ },
106
+ svgIcon: svgIcon,
107
+ "class": "k-fab-item-icon"
102
108
  })]);
103
109
  item = getTemplate.call(this, {
104
110
  h: h,
@@ -5,6 +5,7 @@ import { FloatingActionButtonEvent, FloatingActionButtonItemEvent } from '../mod
5
5
  import { FloatingActionButtonPositionMode } from '../models/position-mode';
6
6
  import { FloatingActionButtonSize } from '../models/size';
7
7
  import { FloatingActionButtonThemeColor } from '../models/theme-color';
8
+ import { SVGIcon } from '@progress/kendo-vue-common';
8
9
  /**
9
10
  * @hidden
10
11
  */
@@ -41,6 +42,10 @@ export interface FloatingActionButtonProps extends Omit<any, 'onBlur' | 'onFocus
41
42
  * Button [see example]({% slug contenttypes_floatingactionbutton %}).
42
43
  */
43
44
  icon?: string;
45
+ /**
46
+ * Defines the svg icon in a Kendo UI for Vue theme.
47
+ */
48
+ svgIcon?: SVGIcon;
44
49
  /**
45
50
  * Defines a CSS class or multiple classes separated by spaces which are applied
46
51
  * to a `span` element inside the Floating Action Button. Allows the usage of custom icons.
@@ -3,7 +3,7 @@ import * as Vue from 'vue';
3
3
  var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var isV3 = allVue.version && allVue.version[0] === '3';
6
- import { getTemplate } from '@progress/kendo-vue-common';
6
+ import { getTemplate, Icon } from '@progress/kendo-vue-common';
7
7
  /**
8
8
  * @hidden
9
9
  */
@@ -65,7 +65,6 @@ var ButtonItemVue2 = {
65
65
  textField = _a.textField,
66
66
  index = _a.index;
67
67
  var text = dataItem.text !== undefined ? dataItem.text : textField ? dataItem[textField] : dataItem;
68
- var iconClass = dataItem.icon ? "k-icon k-i-".concat(dataItem.icon) : dataItem.iconClass;
69
68
  var itemContent = h("span", {
70
69
  tabindex: -1,
71
70
  attrs: this.v3 ? undefined : {
@@ -73,8 +72,16 @@ var ButtonItemVue2 = {
73
72
  },
74
73
  "class": this.innerClass,
75
74
  key: "icon"
76
- }, [iconClass && h("span", {
77
- "class": iconClass,
75
+ }, [dataItem.icon || dataItem.svgIcon ? h(Icon, {
76
+ name: dataItem.icon,
77
+ attrs: this.v3 ? undefined : {
78
+ name: dataItem.icon,
79
+ svgIcon: dataItem.svgIcon
80
+ },
81
+ svgIcon: dataItem.svgIcon,
82
+ "class": dataItem.iconClass
83
+ }) : dataItem.iconClass && h("span", {
84
+ "class": dataItem.iconClass,
78
85
  role: "presentation",
79
86
  attrs: this.v3 ? undefined : {
80
87
  role: "presentation"