@progress/kendo-vue-data-tools 3.5.0 → 3.5.1-dev.202208150613

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 (116) hide show
  1. package/dist/cdn/js/kendo-vue-data-tools.js +1 -1
  2. package/dist/es/filter/FieldSettings.js +1 -0
  3. package/dist/es/filter/GroupToolbar.js +8 -12
  4. package/dist/es/filter/operators.js +12 -10
  5. package/dist/es/filteringCells/FilterCellProps.js +1 -0
  6. package/dist/es/filteringCells/FilterComponentProps.js +1 -0
  7. package/dist/es/filteringCells/FilterOperator.js +1 -0
  8. package/dist/es/navigation/TableKeyboardNavigation.js +7 -11
  9. package/dist/es/navigation/TableKeyboardNavigationContextType.js +1 -0
  10. package/dist/es/navigation/TableKeyboardNavigationStateType.js +1 -0
  11. package/dist/es/navigation/constants.js +8 -12
  12. package/dist/es/navigation/utils.d.ts +32 -4
  13. package/dist/es/navigation/utils.js +10 -10
  14. package/dist/es/package-metadata.js +1 -1
  15. package/dist/es/pager/Page.js +1 -0
  16. package/dist/es/pager/PagerInput.js +1 -1
  17. package/dist/es/virtualization/columns.js +9 -7
  18. package/dist/esm/additionalTypes.ts +21 -0
  19. package/dist/esm/filter/Expression.d.ts +73 -0
  20. package/dist/esm/filter/Expression.js +495 -0
  21. package/dist/esm/filter/FieldSettings.d.ts +22 -0
  22. package/dist/esm/filter/FieldSettings.js +1 -0
  23. package/dist/esm/filter/Filter.d.ts +83 -0
  24. package/dist/esm/filter/Filter.js +169 -0
  25. package/dist/esm/filter/GroupFilters.d.ts +72 -0
  26. package/dist/esm/filter/GroupFilters.js +166 -0
  27. package/dist/esm/filter/GroupToolbar.d.ts +74 -0
  28. package/dist/esm/filter/GroupToolbar.js +586 -0
  29. package/dist/esm/filter/filters/BooleanFilter.d.ts +61 -0
  30. package/dist/esm/filter/filters/BooleanFilter.js +75 -0
  31. package/dist/esm/filter/filters/DateFilter.d.ts +49 -0
  32. package/dist/esm/filter/filters/DateFilter.js +73 -0
  33. package/dist/esm/filter/filters/EnumFilter.d.ts +59 -0
  34. package/dist/esm/filter/filters/EnumFilter.js +102 -0
  35. package/dist/esm/filter/filters/NumericFilter.d.ts +48 -0
  36. package/dist/esm/filter/filters/NumericFilter.js +73 -0
  37. package/dist/esm/filter/filters/TextFilter.d.ts +60 -0
  38. package/dist/esm/filter/filters/TextFilter.js +72 -0
  39. package/dist/esm/filter/filters/index.d.ts +5 -0
  40. package/dist/esm/filter/filters/index.js +5 -0
  41. package/dist/esm/filter/index.d.ts +6 -0
  42. package/dist/esm/filter/index.js +6 -0
  43. package/dist/esm/filter/operators.d.ts +73 -0
  44. package/dist/esm/filter/operators.js +150 -0
  45. package/dist/esm/filteringCells/FilterCellProps.d.ts +35 -0
  46. package/dist/esm/filteringCells/FilterCellProps.js +1 -0
  47. package/dist/esm/filteringCells/FilterComponentProps.d.ts +11 -0
  48. package/dist/esm/filteringCells/FilterComponentProps.js +1 -0
  49. package/dist/esm/filteringCells/FilterOperator.d.ts +13 -0
  50. package/dist/esm/filteringCells/FilterOperator.js +1 -0
  51. package/dist/esm/filteringCells/index.d.ts +3 -0
  52. package/dist/esm/filteringCells/index.js +8 -0
  53. package/dist/esm/header/HeaderThElement.d.ts +42 -0
  54. package/dist/esm/header/HeaderThElement.js +110 -0
  55. package/dist/esm/main.d.ts +18 -0
  56. package/dist/esm/main.js +17 -0
  57. package/dist/esm/messages/index.d.ts +315 -0
  58. package/dist/esm/messages/index.js +316 -0
  59. package/dist/esm/navigation/TableKeyboardNavigation.d.ts +41 -0
  60. package/dist/esm/navigation/TableKeyboardNavigation.js +371 -0
  61. package/dist/esm/navigation/TableKeyboardNavigationContextType.d.ts +7 -0
  62. package/dist/esm/navigation/TableKeyboardNavigationContextType.js +1 -0
  63. package/dist/esm/navigation/TableKeyboardNavigationStateType.d.ts +10 -0
  64. package/dist/esm/navigation/TableKeyboardNavigationStateType.js +1 -0
  65. package/dist/esm/navigation/constants.d.ts +54 -0
  66. package/dist/esm/navigation/constants.js +75 -0
  67. package/dist/esm/navigation/utils.d.ts +161 -0
  68. package/dist/esm/navigation/utils.js +212 -0
  69. package/dist/esm/package-metadata.d.ts +5 -0
  70. package/dist/esm/package-metadata.js +11 -0
  71. package/dist/esm/package.json +3 -0
  72. package/dist/esm/pager/GridPagerSettings.d.ts +62 -0
  73. package/dist/esm/pager/GridPagerSettings.js +22 -0
  74. package/dist/esm/pager/Page.d.ts +13 -0
  75. package/dist/esm/pager/Page.js +1 -0
  76. package/dist/esm/pager/Pager.d.ts +98 -0
  77. package/dist/esm/pager/Pager.js +398 -0
  78. package/dist/esm/pager/PagerInfo.d.ts +51 -0
  79. package/dist/esm/pager/PagerInfo.js +59 -0
  80. package/dist/esm/pager/PagerInput.d.ts +50 -0
  81. package/dist/esm/pager/PagerInput.js +101 -0
  82. package/dist/esm/pager/PagerNavigationButton.d.ts +50 -0
  83. package/dist/esm/pager/PagerNavigationButton.js +67 -0
  84. package/dist/esm/pager/PagerNumericButtons.d.ts +50 -0
  85. package/dist/esm/pager/PagerNumericButtons.js +147 -0
  86. package/dist/esm/pager/PagerPageSizes.d.ts +51 -0
  87. package/dist/esm/pager/PagerPageSizes.js +85 -0
  88. package/dist/esm/virtualization/columns.d.ts +15 -0
  89. package/dist/esm/virtualization/columns.js +75 -0
  90. package/dist/esm/virtualization/index.d.ts +1 -0
  91. package/dist/esm/virtualization/index.js +1 -0
  92. package/dist/npm/filter/Expression.js +5 -5
  93. package/dist/npm/filter/Filter.js +1 -1
  94. package/dist/npm/filter/GroupFilters.js +1 -1
  95. package/dist/npm/filter/GroupToolbar.js +10 -14
  96. package/dist/npm/filter/filters/EnumFilter.js +1 -1
  97. package/dist/npm/filter/filters/index.js +6 -2
  98. package/dist/npm/filter/index.js +6 -2
  99. package/dist/npm/filter/operators.js +16 -12
  100. package/dist/npm/filteringCells/index.js +6 -2
  101. package/dist/npm/header/HeaderThElement.js +1 -1
  102. package/dist/npm/main.js +7 -3
  103. package/dist/npm/messages/index.js +2 -1
  104. package/dist/npm/navigation/TableKeyboardNavigation.js +15 -19
  105. package/dist/npm/navigation/constants.js +8 -12
  106. package/dist/npm/navigation/utils.d.ts +32 -4
  107. package/dist/npm/navigation/utils.js +53 -33
  108. package/dist/npm/package-metadata.js +1 -1
  109. package/dist/npm/pager/GridPagerSettings.js +2 -1
  110. package/dist/npm/pager/Pager.js +1 -1
  111. package/dist/npm/pager/PagerInfo.js +2 -2
  112. package/dist/npm/pager/PagerInput.js +3 -3
  113. package/dist/npm/pager/PagerPageSizes.js +1 -1
  114. package/dist/npm/virtualization/columns.js +9 -7
  115. package/dist/npm/virtualization/index.js +6 -2
  116. package/package.json +16 -10
@@ -0,0 +1,495 @@
1
+ var __assign = this && this.__assign || function () {
2
+ __assign = Object.assign || function (t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+
6
+ for (var p in s) {
7
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
8
+ }
9
+ }
10
+
11
+ return t;
12
+ };
13
+
14
+ return __assign.apply(this, arguments);
15
+ };
16
+
17
+ var __rest = this && this.__rest || function (s, e) {
18
+ var t = {};
19
+
20
+ for (var p in s) {
21
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
22
+ }
23
+
24
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
25
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
26
+ }
27
+ return t;
28
+ }; // @ts-ignore
29
+
30
+
31
+ import * as Vue from 'vue';
32
+ var allVue = Vue;
33
+ var gh = allVue.h;
34
+ var isV3 = allVue.version && allVue.version[0] === '3';
35
+ import { getTemplate } from '@progress/kendo-vue-common';
36
+ import { Button, Toolbar, ToolbarItem } from '@progress/kendo-vue-buttons';
37
+ import { DropDownList } from '@progress/kendo-vue-dropdowns';
38
+ import { provideLocalizationService } from '@progress/kendo-vue-intl';
39
+ import { unaryOperator, stringOperator } from './operators.js';
40
+ import { messages, filterClose } from '../messages.js';
41
+ import { TextFilter } from './filters/TextFilter.js';
42
+ import { NumericFilter } from './filters/NumericFilter.js';
43
+ import { BooleanFilter } from './filters/BooleanFilter.js';
44
+ import { DateFilter } from './filters/DateFilter.js';
45
+ /**
46
+ * @hidden
47
+ */
48
+
49
+ var ExpressionVue2 = {
50
+ name: 'KendoExpression',
51
+ // @ts-ignore
52
+ emits: {
53
+ change: null,
54
+ remove: null
55
+ },
56
+ props: {
57
+ filter: {
58
+ type: Object,
59
+ required: true
60
+ },
61
+ fields: {
62
+ type: Array,
63
+ required: true
64
+ }
65
+ },
66
+ inject: {
67
+ kendoLocalizationService: {
68
+ default: null
69
+ }
70
+ },
71
+ // @ts-ignore
72
+ setup: !isV3 ? undefined : function () {
73
+ var v3 = !!isV3;
74
+ return {
75
+ v3: v3
76
+ };
77
+ },
78
+ render: function render(createElement) {
79
+ var _this = this;
80
+
81
+ var h = gh || createElement;
82
+ var _a = this.$props,
83
+ fields = _a.fields,
84
+ filter = _a.filter;
85
+ var field = fields.find(function (f) {
86
+ return f.name === filter.field;
87
+ });
88
+ var locService = provideLocalizationService(this);
89
+ var operators = (field && field.operators || []).map(function (o) {
90
+ return __assign(__assign({}, o), {
91
+ text: locService.toLanguageString(o.text, messages[o.text] || o.text)
92
+ });
93
+ });
94
+ var defaultRendering = null;
95
+
96
+ var filterEditors = function filterEditors(filterName, filterRender) {
97
+ switch (filterName) {
98
+ case 'numeric':
99
+ defaultRendering = // @ts-ignore
100
+ h(NumericFilter, {
101
+ filter: filter,
102
+ attrs: this.v3 ? undefined : {
103
+ filter: filter
104
+ },
105
+ onFilterchange: this.onInputChange,
106
+ on: this.v3 ? undefined : {
107
+ "filterchange": this.onInputChange
108
+ }
109
+ });
110
+ break;
111
+
112
+ case 'date':
113
+ defaultRendering = // @ts-ignore
114
+ h(DateFilter, {
115
+ filter: filter,
116
+ attrs: this.v3 ? undefined : {
117
+ filter: filter
118
+ },
119
+ onFilterchange: this.onInputChange,
120
+ on: this.v3 ? undefined : {
121
+ "filterchange": this.onInputChange
122
+ }
123
+ });
124
+ break;
125
+
126
+ case 'boolean':
127
+ defaultRendering = // @ts-ignore
128
+ h(BooleanFilter, {
129
+ filter: filter,
130
+ attrs: this.v3 ? undefined : {
131
+ filter: filter
132
+ },
133
+ onFilterchange: this.onInputChange,
134
+ on: this.v3 ? undefined : {
135
+ "filterchange": this.onInputChange
136
+ }
137
+ });
138
+ break;
139
+
140
+ default:
141
+ defaultRendering = // @ts-ignore
142
+ h(TextFilter, {
143
+ filter: filter,
144
+ attrs: this.v3 ? undefined : {
145
+ filter: filter
146
+ },
147
+ onFilterchange: this.onInputChange,
148
+ on: this.v3 ? undefined : {
149
+ "filterchange": this.onInputChange
150
+ }
151
+ });
152
+ break;
153
+ }
154
+
155
+ return getTemplate.call(this, {
156
+ h: h,
157
+ template: filterRender,
158
+ defaultRendering: defaultRendering,
159
+ additionalProps: {
160
+ filter: filter
161
+ },
162
+ additionalListeners: {
163
+ filterchange: this.onInputChange
164
+ }
165
+ });
166
+ };
167
+
168
+ return h("div", {
169
+ "class": "k-filter-toolbar"
170
+ }, [// @ts-ignore function children
171
+ h(Toolbar, {
172
+ keyboardNavigation: false,
173
+ attrs: this.v3 ? undefined : {
174
+ keyboardNavigation: false
175
+ }
176
+ }, this.v3 ? function () {
177
+ return [// @ts-ignore function children
178
+ h(ToolbarItem, {
179
+ "class": "k-filter-field"
180
+ }, _this.v3 ? function () {
181
+ return [// @ts-ignore
182
+ h(DropDownList, {
183
+ "class": "k-filter-dropdown",
184
+ dataItems: fields,
185
+ attrs: _this.v3 ? undefined : {
186
+ dataItems: fields,
187
+ textField: "label",
188
+ value: fields.find(function (f) {
189
+ return f.name === filter.field;
190
+ })
191
+ },
192
+ textField: "label",
193
+ value: fields.find(function (f) {
194
+ return f.name === filter.field;
195
+ }),
196
+ onChange: _this.onFieldChange,
197
+ on: _this.v3 ? undefined : {
198
+ "change": _this.onFieldChange
199
+ }
200
+ })];
201
+ } : [h(DropDownList, {
202
+ "class": "k-filter-dropdown",
203
+ dataItems: fields,
204
+ attrs: _this.v3 ? undefined : {
205
+ dataItems: fields,
206
+ textField: "label",
207
+ value: fields.find(function (f) {
208
+ return f.name === filter.field;
209
+ })
210
+ },
211
+ textField: "label",
212
+ value: fields.find(function (f) {
213
+ return f.name === filter.field;
214
+ }),
215
+ onChange: _this.onFieldChange,
216
+ on: _this.v3 ? undefined : {
217
+ "change": _this.onFieldChange
218
+ }
219
+ })]), // @ts-ignore function children
220
+ h(ToolbarItem, {
221
+ "class": "k-filter-operator"
222
+ }, _this.v3 ? function () {
223
+ return [// @ts-ignore
224
+ h(DropDownList, {
225
+ dataItems: operators,
226
+ attrs: _this.v3 ? undefined : {
227
+ dataItems: operators,
228
+ textField: "text",
229
+ value: operators.find(function (o) {
230
+ return o.operator === filter.operator;
231
+ })
232
+ },
233
+ textField: "text",
234
+ value: operators.find(function (o) {
235
+ return o.operator === filter.operator;
236
+ }),
237
+ onChange: _this.onOperatorChange,
238
+ on: _this.v3 ? undefined : {
239
+ "change": _this.onOperatorChange
240
+ }
241
+ })];
242
+ } : [h(DropDownList, {
243
+ dataItems: operators,
244
+ attrs: _this.v3 ? undefined : {
245
+ dataItems: operators,
246
+ textField: "text",
247
+ value: operators.find(function (o) {
248
+ return o.operator === filter.operator;
249
+ })
250
+ },
251
+ textField: "text",
252
+ value: operators.find(function (o) {
253
+ return o.operator === filter.operator;
254
+ }),
255
+ onChange: _this.onOperatorChange,
256
+ on: _this.v3 ? undefined : {
257
+ "change": _this.onOperatorChange
258
+ }
259
+ })]), // @ts-ignore function children
260
+ h(ToolbarItem, {
261
+ "class": "k-filter-value"
262
+ }, _this.v3 ? function () {
263
+ return [field && filterEditors.call(_this, field.filter, field.filterRender)];
264
+ } : [field && filterEditors.call(_this, field.filter, field.filterRender)]), // @ts-ignore function children
265
+ h(ToolbarItem, _this.v3 ? function () {
266
+ return [// @ts-ignore
267
+ h(Button, {
268
+ title: locService.toLanguageString(filterClose, messages[filterClose]),
269
+ attrs: _this.v3 ? undefined : {
270
+ title: locService.toLanguageString(filterClose, messages[filterClose]),
271
+ icon: "close",
272
+ look: "flat",
273
+ type: "button"
274
+ },
275
+ icon: "close",
276
+ look: "flat",
277
+ type: "button",
278
+ onClick: _this.onFilterRemove,
279
+ on: _this.v3 ? undefined : {
280
+ "click": _this.onFilterRemove
281
+ }
282
+ })];
283
+ } : [h(Button, {
284
+ title: locService.toLanguageString(filterClose, messages[filterClose]),
285
+ attrs: _this.v3 ? undefined : {
286
+ title: locService.toLanguageString(filterClose, messages[filterClose]),
287
+ icon: "close",
288
+ look: "flat",
289
+ type: "button"
290
+ },
291
+ icon: "close",
292
+ look: "flat",
293
+ type: "button",
294
+ onClick: _this.onFilterRemove,
295
+ on: _this.v3 ? undefined : {
296
+ "click": _this.onFilterRemove
297
+ }
298
+ })])];
299
+ } : [h(ToolbarItem, {
300
+ "class": "k-filter-field"
301
+ }, _this.v3 ? function () {
302
+ return [h(DropDownList, {
303
+ "class": "k-filter-dropdown",
304
+ dataItems: fields,
305
+ attrs: _this.v3 ? undefined : {
306
+ dataItems: fields,
307
+ textField: "label",
308
+ value: fields.find(function (f) {
309
+ return f.name === filter.field;
310
+ })
311
+ },
312
+ textField: "label",
313
+ value: fields.find(function (f) {
314
+ return f.name === filter.field;
315
+ }),
316
+ onChange: _this.onFieldChange,
317
+ on: _this.v3 ? undefined : {
318
+ "change": _this.onFieldChange
319
+ }
320
+ })];
321
+ } : [h(DropDownList, {
322
+ "class": "k-filter-dropdown",
323
+ dataItems: fields,
324
+ attrs: _this.v3 ? undefined : {
325
+ dataItems: fields,
326
+ textField: "label",
327
+ value: fields.find(function (f) {
328
+ return f.name === filter.field;
329
+ })
330
+ },
331
+ textField: "label",
332
+ value: fields.find(function (f) {
333
+ return f.name === filter.field;
334
+ }),
335
+ onChange: _this.onFieldChange,
336
+ on: _this.v3 ? undefined : {
337
+ "change": _this.onFieldChange
338
+ }
339
+ })]), h(ToolbarItem, {
340
+ "class": "k-filter-operator"
341
+ }, _this.v3 ? function () {
342
+ return [h(DropDownList, {
343
+ dataItems: operators,
344
+ attrs: _this.v3 ? undefined : {
345
+ dataItems: operators,
346
+ textField: "text",
347
+ value: operators.find(function (o) {
348
+ return o.operator === filter.operator;
349
+ })
350
+ },
351
+ textField: "text",
352
+ value: operators.find(function (o) {
353
+ return o.operator === filter.operator;
354
+ }),
355
+ onChange: _this.onOperatorChange,
356
+ on: _this.v3 ? undefined : {
357
+ "change": _this.onOperatorChange
358
+ }
359
+ })];
360
+ } : [h(DropDownList, {
361
+ dataItems: operators,
362
+ attrs: _this.v3 ? undefined : {
363
+ dataItems: operators,
364
+ textField: "text",
365
+ value: operators.find(function (o) {
366
+ return o.operator === filter.operator;
367
+ })
368
+ },
369
+ textField: "text",
370
+ value: operators.find(function (o) {
371
+ return o.operator === filter.operator;
372
+ }),
373
+ onChange: _this.onOperatorChange,
374
+ on: _this.v3 ? undefined : {
375
+ "change": _this.onOperatorChange
376
+ }
377
+ })]), h(ToolbarItem, {
378
+ "class": "k-filter-value"
379
+ }, _this.v3 ? function () {
380
+ return [field && filterEditors.call(_this, field.filter, field.filterRender)];
381
+ } : [field && filterEditors.call(_this, field.filter, field.filterRender)]), h(ToolbarItem, _this.v3 ? function () {
382
+ return [h(Button, {
383
+ title: locService.toLanguageString(filterClose, messages[filterClose]),
384
+ attrs: _this.v3 ? undefined : {
385
+ title: locService.toLanguageString(filterClose, messages[filterClose]),
386
+ icon: "close",
387
+ look: "flat",
388
+ type: "button"
389
+ },
390
+ icon: "close",
391
+ look: "flat",
392
+ type: "button",
393
+ onClick: _this.onFilterRemove,
394
+ on: _this.v3 ? undefined : {
395
+ "click": _this.onFilterRemove
396
+ }
397
+ })];
398
+ } : [h(Button, {
399
+ title: locService.toLanguageString(filterClose, messages[filterClose]),
400
+ attrs: _this.v3 ? undefined : {
401
+ title: locService.toLanguageString(filterClose, messages[filterClose]),
402
+ icon: "close",
403
+ look: "flat",
404
+ type: "button"
405
+ },
406
+ icon: "close",
407
+ look: "flat",
408
+ type: "button",
409
+ onClick: _this.onFilterRemove,
410
+ on: _this.v3 ? undefined : {
411
+ "click": _this.onFilterRemove
412
+ }
413
+ })])])]);
414
+ },
415
+ methods: {
416
+ onFieldChange: function onFieldChange(event) {
417
+ var nextFieldName = event.value.name;
418
+ var nextField = this.$props.fields.find(function (f) {
419
+ return f.name === nextFieldName;
420
+ });
421
+ var prevFilter = this.$props.filter;
422
+ var operator = nextField && !nextField.operators.some(function (o) {
423
+ return o.operator === prevFilter.operator;
424
+ }) ? nextField.operators[0].operator : prevFilter.operator;
425
+ var nextFilter = {
426
+ field: nextFieldName,
427
+ operator: operator
428
+ };
429
+
430
+ if (!unaryOperator(operator)) {
431
+ nextFilter.value = stringOperator(operator) ? '' : null;
432
+ }
433
+
434
+ this.triggerOnFilterChange(prevFilter, nextFilter, event);
435
+ },
436
+ onOperatorChange: function onOperatorChange(event) {
437
+ var operator = event.value.operator;
438
+ var prevFilter = this.$props.filter;
439
+ var nextFilter;
440
+
441
+ if (unaryOperator(operator)) {
442
+ var value = prevFilter.value,
443
+ prevFilterNoValue = __rest(prevFilter, ["value"]);
444
+
445
+ nextFilter = __assign(__assign({}, prevFilterNoValue), {
446
+ operator: operator
447
+ });
448
+ } else {
449
+ nextFilter = __assign(__assign({}, prevFilter), {
450
+ operator: operator
451
+ });
452
+ }
453
+
454
+ this.triggerOnFilterChange(prevFilter, nextFilter, event);
455
+ },
456
+ onInputChange: function onInputChange(event) {
457
+ var prevFilter = this.$props.filter;
458
+ var nextFilter = event.nextFilter;
459
+
460
+ if (unaryOperator(nextFilter.operator)) {
461
+ var field = this.$props.fields.find(function (f) {
462
+ return f.name === nextFilter.field;
463
+ });
464
+ nextFilter = __assign(__assign({}, nextFilter), {
465
+ operator: field && field.operators[0].operator || nextFilter.operator
466
+ });
467
+ }
468
+
469
+ this.triggerOnFilterChange(prevFilter, nextFilter, event);
470
+ },
471
+ triggerOnFilterChange: function triggerOnFilterChange(prevFilter, nextFilter, event) {
472
+ var changeEvent = {
473
+ prevFilter: prevFilter,
474
+ nextFilter: nextFilter,
475
+ event: event.event,
476
+ target: this
477
+ };
478
+ this.$emit('change', changeEvent);
479
+ },
480
+ onFilterRemove: function onFilterRemove(event) {
481
+ var removeEvent = {
482
+ filter: this.$props.filter,
483
+ event: event.event,
484
+ target: this
485
+ };
486
+ this.$emit('remove', removeEvent);
487
+ }
488
+ }
489
+ };
490
+ /**
491
+ * @hidden
492
+ */
493
+
494
+ var Expression = ExpressionVue2;
495
+ export { Expression, ExpressionVue2 };
@@ -0,0 +1,22 @@
1
+ import { FilterOperator } from '../filteringCells';
2
+ /**
3
+ * The FieldSettings object.
4
+ */
5
+ export interface FieldSettings {
6
+ /**
7
+ * The field name.
8
+ */
9
+ name: string;
10
+ /**
11
+ * The field label, which will be shown in the fields DropDownList.
12
+ */
13
+ label: string;
14
+ /**
15
+ * The filter editor component. Could be any of the built-in TextFilter, NumericFilter, DateFilter, BooleanFilter or a custom component.
16
+ */
17
+ filter: any;
18
+ /**
19
+ * The collection of operators which will be passed to the operators DropDownList.
20
+ */
21
+ operators: Array<FilterOperator>;
22
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,83 @@
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
+ import { CompositeFilterDescriptor } from '@progress/kendo-data-query';
7
+ import { GroupChangeEvent, GroupRemoveEvent } from './GroupFilters';
8
+ import { FieldSettings } from './FieldSettings';
9
+ /**
10
+ * The FilterChangeEvent object.
11
+ */
12
+ export interface FilterChangeEvent {
13
+ target: any;
14
+ event: any;
15
+ /**
16
+ * The changed composite filter descriptor.
17
+ */
18
+ filter: CompositeFilterDescriptor;
19
+ }
20
+ /**
21
+ * The props of the Filter component.
22
+ */
23
+ export interface FilterProps {
24
+ /**
25
+ * The fields settings of the Filter.
26
+ */
27
+ fields: Array<FieldSettings>;
28
+ /**
29
+ * The composite filter descriptor value.
30
+ */
31
+ value: CompositeFilterDescriptor;
32
+ /**
33
+ * @hidden
34
+ */
35
+ modelValue?: any;
36
+ /**
37
+ * The Filter onChange event.
38
+ */
39
+ onChange?: (event: FilterChangeEvent) => void;
40
+ /**
41
+ * The initial composite filter descriptor which will be used when a new group is created.
42
+ */
43
+ defaultGroupFilter?: CompositeFilterDescriptor;
44
+ }
45
+ /**
46
+ * @hidden
47
+ */
48
+ export interface FilterState {
49
+ }
50
+ /**
51
+ * @hidden
52
+ */
53
+ export interface FilterComputed {
54
+ [key: string]: any;
55
+ computedValue: any;
56
+ }
57
+ /**
58
+ * @hidden
59
+ */
60
+ export interface FilterMethods {
61
+ [key: string]: any;
62
+ onFilterChange: (event: GroupChangeEvent) => void;
63
+ onGroupRemove: (event: GroupRemoveEvent) => void;
64
+ }
65
+ /**
66
+ * @hidden
67
+ */
68
+ export interface FilterData {
69
+ }
70
+ /**
71
+ * @hidden
72
+ */
73
+ export interface FilterAll extends Vue2type, FilterMethods, FilterData, FilterComputed, FilterState {
74
+ }
75
+ /**
76
+ * @hidden
77
+ */
78
+ declare let FilterVue2: ComponentOptions<FilterAll, DefaultData<FilterData>, DefaultMethods<FilterAll>, FilterComputed, RecordPropsDefinition<FilterProps>>;
79
+ /**
80
+ * @hidden
81
+ */
82
+ declare const Filter: DefineComponent<FilterProps, any, FilterData, FilterComputed, FilterMethods, {}, {}, {}, string, FilterProps, FilterProps, {}>;
83
+ export { Filter, FilterVue2 };