@progress/kendo-vue-dropdowns 3.11.0-dev.202305230623 → 3.11.0-dev.202305230751

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 (56) hide show
  1. package/dist/cdn/js/kendo-vue-dropdowns.js +1 -1
  2. package/dist/es/AutoComplete/AutoComplete.js +108 -12
  3. package/dist/es/AutoComplete/AutoCompleteProps.d.ts +12 -0
  4. package/dist/es/ComboBox/ComboBox.js +115 -16
  5. package/dist/es/ComboBox/ComboBoxProps.d.ts +12 -0
  6. package/dist/es/DropDownList/DropDownList.js +101 -14
  7. package/dist/es/DropDownList/DropDownListProps.d.ts +12 -0
  8. package/dist/es/MultiSelect/MultiSelect.js +116 -26
  9. package/dist/es/MultiSelect/MultiSelectProps.d.ts +12 -0
  10. package/dist/es/common/DropDownBase.d.ts +2 -0
  11. package/dist/es/common/DropDownBase.js +20 -0
  12. package/dist/es/common/GroupStickyHeader.d.ts +29 -0
  13. package/dist/es/common/GroupStickyHeader.js +59 -0
  14. package/dist/es/common/List.d.ts +2 -0
  15. package/dist/es/common/List.js +53 -25
  16. package/dist/es/common/ListGroupItem.d.ts +41 -0
  17. package/dist/es/common/ListGroupItem.js +71 -0
  18. package/dist/es/common/settings.d.ts +1 -0
  19. package/dist/es/package-metadata.js +1 -1
  20. package/dist/esm/AutoComplete/AutoComplete.js +108 -12
  21. package/dist/esm/AutoComplete/AutoCompleteProps.d.ts +12 -0
  22. package/dist/esm/ComboBox/ComboBox.js +115 -16
  23. package/dist/esm/ComboBox/ComboBoxProps.d.ts +12 -0
  24. package/dist/esm/DropDownList/DropDownList.js +101 -14
  25. package/dist/esm/DropDownList/DropDownListProps.d.ts +12 -0
  26. package/dist/esm/MultiSelect/MultiSelect.js +116 -26
  27. package/dist/esm/MultiSelect/MultiSelectProps.d.ts +12 -0
  28. package/dist/esm/common/DropDownBase.d.ts +2 -0
  29. package/dist/esm/common/DropDownBase.js +20 -0
  30. package/dist/esm/common/GroupStickyHeader.d.ts +29 -0
  31. package/dist/esm/common/GroupStickyHeader.js +59 -0
  32. package/dist/esm/common/List.d.ts +2 -0
  33. package/dist/esm/common/List.js +53 -25
  34. package/dist/esm/common/ListGroupItem.d.ts +41 -0
  35. package/dist/esm/common/ListGroupItem.js +71 -0
  36. package/dist/esm/common/settings.d.ts +1 -0
  37. package/dist/esm/package-metadata.js +1 -1
  38. package/dist/npm/AutoComplete/AutoComplete.js +108 -12
  39. package/dist/npm/AutoComplete/AutoCompleteProps.d.ts +12 -0
  40. package/dist/npm/ComboBox/ComboBox.js +115 -16
  41. package/dist/npm/ComboBox/ComboBoxProps.d.ts +12 -0
  42. package/dist/npm/DropDownList/DropDownList.js +101 -14
  43. package/dist/npm/DropDownList/DropDownListProps.d.ts +12 -0
  44. package/dist/npm/MultiSelect/MultiSelect.js +116 -26
  45. package/dist/npm/MultiSelect/MultiSelectProps.d.ts +12 -0
  46. package/dist/npm/common/DropDownBase.d.ts +2 -0
  47. package/dist/npm/common/DropDownBase.js +20 -0
  48. package/dist/npm/common/GroupStickyHeader.d.ts +29 -0
  49. package/dist/npm/common/GroupStickyHeader.js +66 -0
  50. package/dist/npm/common/List.d.ts +2 -0
  51. package/dist/npm/common/List.js +52 -24
  52. package/dist/npm/common/ListGroupItem.d.ts +41 -0
  53. package/dist/npm/common/ListGroupItem.js +78 -0
  54. package/dist/npm/common/settings.d.ts +1 -0
  55. package/dist/npm/package-metadata.js +1 -1
  56. package/package.json +9 -9
@@ -12,6 +12,7 @@ var isV3 = allVue.version && allVue.version[0] === '3';
12
12
  var ref = allVue.ref;
13
13
  var inject = allVue.inject;
14
14
  var ListItem_1 = require("./ListItem");
15
+ var ListGroupItem_1 = require("./ListGroupItem");
15
16
  var utils_1 = require("./utils");
16
17
  var kendo_vue_common_1 = require("@progress/kendo-vue-common");
17
18
  var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
@@ -44,8 +45,10 @@ var ListVue2 = {
44
45
  default: true
45
46
  },
46
47
  itemRender: [String, Function, Object],
48
+ groupHeaderItemRender: [String, Function, Object],
47
49
  noDataRender: [String, Function, Object],
48
- scroller: Boolean
50
+ scroller: Boolean,
51
+ groupField: String
49
52
  },
50
53
  inject: {
51
54
  kendoLocalizationService: {
@@ -107,39 +110,64 @@ var ListVue2 = {
107
110
  focusedIndex = _a.focusedIndex,
108
111
  highlightSelected = _a.highlightSelected,
109
112
  value = _a.value,
110
- itemRender = _a.itemRender;
113
+ groupField = _a.groupField,
114
+ itemRender = _a.itemRender,
115
+ groupHeaderItemRender = _a.groupHeaderItemRender,
116
+ dataItems = _a.dataItems;
111
117
  var isArray = Array.isArray(value);
112
- return this.$props.dataItems.map(function (item, index) {
118
+ var groupCounter = 0;
119
+ return dataItems.map(function (item, index) {
113
120
  var realIndex = skip + index;
114
121
  var selected = highlightSelected && (!isArray && (0, utils_1.areSame)(item, value, valueField) || isArray && value.findIndex(function (i) {
115
122
  return (0, utils_1.areSame)(i, item, valueField);
116
123
  }) !== -1);
117
- return (
118
- // @ts-ignore
119
- h(ListItem_1.ListItem, {
124
+ var group = undefined;
125
+ var current, previous;
126
+ if (index > 0 && groupField !== undefined) {
127
+ current = (0, utils_1.getItemValue)(item, groupField);
128
+ previous = (0, utils_1.getItemValue)(dataItems[index - 1], groupField);
129
+ if (current && previous && current !== previous !== undefined) {
130
+ group = current;
131
+ }
132
+ }
133
+ if (group !== undefined && Object.keys(item).length === 1) {
134
+ groupCounter += 1;
135
+ }
136
+ return group !== undefined && item[groupField] !== undefined && Object.keys(item).length === 1 ? h(ListGroupItem_1.ListGroupItem, {
137
+ id: "option-".concat(optionsGuid, "-").concat(realIndex),
138
+ attrs: this.v3 ? undefined : {
139
+ id: "option-".concat(optionsGuid, "-").concat(realIndex),
140
+ group: group,
141
+ render: groupHeaderItemRender
142
+ },
143
+ key: realIndex + '-group-item',
144
+ group: group,
145
+ render: groupHeaderItemRender
146
+ }) : h(ListItem_1.ListItem, {
147
+ id: "option-".concat(optionsGuid, "-").concat(realIndex),
148
+ attrs: this.v3 ? undefined : {
120
149
  id: "option-".concat(optionsGuid, "-").concat(realIndex),
121
- attrs: this.v3 ? undefined : {
122
- id: "option-".concat(optionsGuid, "-").concat(realIndex),
123
- dataItem: item,
124
- selected: selected,
125
- focused: focusedIndex === index,
126
- index: realIndex,
127
- textField: textField,
128
- render: itemRender
129
- },
130
150
  dataItem: item,
131
151
  selected: selected,
132
- focused: focusedIndex === index,
133
- index: realIndex,
134
- key: realIndex,
135
- onItemclick: this.handleClick,
136
- on: this.v3 ? undefined : {
137
- "itemclick": this.handleClick
138
- },
152
+ focused: focusedIndex === realIndex - groupCounter,
153
+ index: realIndex - groupCounter,
139
154
  textField: textField,
155
+ group: group,
140
156
  render: itemRender
141
- })
142
- );
157
+ },
158
+ dataItem: item,
159
+ selected: selected,
160
+ focused: focusedIndex === realIndex - groupCounter,
161
+ index: realIndex - groupCounter,
162
+ key: realIndex - groupCounter,
163
+ onItemclick: this.handleClick,
164
+ on: this.v3 ? undefined : {
165
+ "itemclick": this.handleClick
166
+ },
167
+ textField: textField,
168
+ group: group,
169
+ render: itemRender
170
+ });
143
171
  }, this);
144
172
  };
145
173
  var items = renderItems.call(this);
@@ -0,0 +1,41 @@
1
+ import { DefineComponent, RecordPropsDefinition, ComponentOptions, Vue2type } from '../additionalTypes';
2
+ declare type DefaultData<V> = object | ((this: V) => {});
3
+ declare type DefaultMethods<V> = {
4
+ [key: string]: (this: V, ...args: any[]) => any;
5
+ };
6
+ /**
7
+ * Represents the props of the ListItem component.
8
+ */
9
+ export interface ListGroupItemProps {
10
+ /**
11
+ * Specifies the id that will be added to the group header item element.
12
+ */
13
+ id?: string;
14
+ /**
15
+ * The group that will be rendered.
16
+ */
17
+ group?: string;
18
+ /**
19
+ * @hidden
20
+ */
21
+ virtual?: boolean;
22
+ /**
23
+ * Fires when the group header item is about to be rendered. Used to override the default appearance of the group header item.
24
+ */
25
+ render?: any;
26
+ }
27
+ /**
28
+ * @hidden
29
+ */
30
+ export interface ListItemAll extends Vue2type {
31
+ itemClass: object;
32
+ }
33
+ /**
34
+ * @hidden
35
+ */
36
+ declare let ListGroupItemVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<ListItemAll>, {}, RecordPropsDefinition<ListGroupItemProps>>;
37
+ /**
38
+ * @hidden
39
+ */
40
+ declare const ListGroupItem: DefineComponent<ListGroupItemProps, any, {}, {}, {}, {}, {}, {}, string, ListGroupItemProps, ListGroupItemProps, {}>;
41
+ export { ListGroupItem, ListGroupItemVue2 };
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ var __assign = undefined && undefined.__assign || function () {
4
+ __assign = Object.assign || function (t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) {
8
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
9
+ }
10
+ }
11
+ return t;
12
+ };
13
+ return __assign.apply(this, arguments);
14
+ };
15
+ Object.defineProperty(exports, "__esModule", {
16
+ value: true
17
+ });
18
+ exports.ListGroupItemVue2 = exports.ListGroupItem = void 0;
19
+ // @ts-ignore
20
+ var Vue = require("vue");
21
+ var allVue = Vue;
22
+ var gh = allVue.h;
23
+ var isV3 = allVue.version && allVue.version[0] === '3';
24
+ var kendo_vue_common_1 = require("@progress/kendo-vue-common");
25
+ /**
26
+ * @hidden
27
+ */
28
+ var ListGroupItemVue2 = {
29
+ name: 'KendoListItem',
30
+ inheritAttrs: false,
31
+ props: {
32
+ id: String,
33
+ group: String,
34
+ render: Object
35
+ },
36
+ // @ts-ignore
37
+ setup: !isV3 ? undefined : function () {
38
+ var v3 = !!isV3;
39
+ return {
40
+ v3: v3
41
+ };
42
+ },
43
+ // @ts-ignore
44
+ render: function render(createElement) {
45
+ var h = gh || createElement;
46
+ var _a = this.$props,
47
+ id = _a.id,
48
+ group = _a.group,
49
+ virtual = _a.virtual,
50
+ renderer = _a.render;
51
+ var defaultRendering = h("li", {
52
+ id: id,
53
+ attrs: this.v3 ? undefined : {
54
+ id: id,
55
+ role: "group"
56
+ },
57
+ role: "group",
58
+ "class": 'k-list-group-item',
59
+ style: {
60
+ position: virtual ? 'relative' : 'unset'
61
+ }
62
+ }, [h("span", {
63
+ "class": !renderer ? 'k-list-item-text' : undefined
64
+ }, [group])]);
65
+ return kendo_vue_common_1.getTemplate.call(this, {
66
+ h: h,
67
+ template: this.$props.render,
68
+ defaultRendering: defaultRendering,
69
+ additionalProps: __assign({}, this.$props)
70
+ });
71
+ }
72
+ };
73
+ exports.ListGroupItemVue2 = ListGroupItemVue2;
74
+ /**
75
+ * @hidden
76
+ */
77
+ var ListGroupItem = ListGroupItemVue2;
78
+ exports.ListGroupItem = ListGroupItem;
@@ -92,6 +92,7 @@ export interface DropDownStateBase {
92
92
  value?: any;
93
93
  focused?: boolean;
94
94
  opened?: boolean;
95
+ group?: string;
95
96
  }
96
97
  /**
97
98
  * @hidden
@@ -8,7 +8,7 @@ exports.packageMetadata = {
8
8
  name: '@progress/kendo-vue-dropdowns',
9
9
  productName: 'Kendo UI for Vue',
10
10
  productCodes: ['KENDOUIVUE', 'KENDOUICOMPLETE'],
11
- publishDate: 1684822401,
11
+ publishDate: 1684827665,
12
12
  version: '',
13
13
  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'
14
14
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@progress/kendo-vue-dropdowns",
3
3
  "description": "Kendo UI for Vue Dropdowns package",
4
- "version": "3.11.0-dev.202305230623",
4
+ "version": "3.11.0-dev.202305230751",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/telerik/kendo-vue.git"
@@ -53,19 +53,19 @@
53
53
  "vue": "^2.6.12 || ^3.0.2"
54
54
  },
55
55
  "dependencies": {
56
- "@progress/kendo-vue-buttons": "3.11.0-dev.202305230623",
57
- "@progress/kendo-vue-common": "3.11.0-dev.202305230623",
58
- "@progress/kendo-vue-popup": "3.11.0-dev.202305230623"
56
+ "@progress/kendo-vue-buttons": "3.11.0-dev.202305230751",
57
+ "@progress/kendo-vue-common": "3.11.0-dev.202305230751",
58
+ "@progress/kendo-vue-popup": "3.11.0-dev.202305230751"
59
59
  },
60
60
  "devDependencies": {
61
61
  "@progress/kendo-data-query": "^1.5.4",
62
62
  "@progress/kendo-licensing": "^1.3.0",
63
63
  "@progress/kendo-svg-icons": "^1.0.0",
64
- "@progress/kendo-vue-data-tools": "3.11.0-dev.202305230623",
65
- "@progress/kendo-vue-inputs": "3.11.0-dev.202305230623",
66
- "@progress/kendo-vue-intl": "3.11.0-dev.202305230623",
67
- "@progress/kendo-vue-labels": "3.11.0-dev.202305230623",
68
- "@progress/kendo-vue-treeview": "3.11.0-dev.202305230623"
64
+ "@progress/kendo-vue-data-tools": "3.11.0-dev.202305230751",
65
+ "@progress/kendo-vue-inputs": "3.11.0-dev.202305230751",
66
+ "@progress/kendo-vue-intl": "3.11.0-dev.202305230751",
67
+ "@progress/kendo-vue-labels": "3.11.0-dev.202305230751",
68
+ "@progress/kendo-vue-treeview": "3.11.0-dev.202305230751"
69
69
  },
70
70
  "author": "Progress",
71
71
  "license": "SEE LICENSE IN LICENSE.md",