@progress/kendo-angular-filter 0.1.2 → 0.1.4

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.
@@ -13,6 +13,45 @@ import { LabelModule } from '@progress/kendo-angular-label';
13
13
  import { ButtonsModule } from '@progress/kendo-angular-buttons';
14
14
  import { DateInputsModule } from '@progress/kendo-angular-dateinputs';
15
15
 
16
+ /**
17
+ * @hidden
18
+ */
19
+ var FilterService = /** @class */ (function () {
20
+ function FilterService() {
21
+ this.value = { filters: [], logic: 'or' };
22
+ this.filters = [];
23
+ this.isEditorDisabled = false;
24
+ }
25
+ FilterService.prototype.addFilterGroup = function (item) {
26
+ var filterGroup = { logic: 'or', filters: [] };
27
+ item.filters.push(filterGroup);
28
+ };
29
+ FilterService.prototype.addFilterExpression = function (item) {
30
+ var filterExpression = { operator: 'eq', value: null, field: null };
31
+ item.filters.push(filterExpression);
32
+ };
33
+ FilterService.prototype.remove = function (item, positionIndex, parentItem) {
34
+ var _this = this;
35
+ if (!parentItem) {
36
+ parentItem = this.value;
37
+ }
38
+ if (item === parentItem) {
39
+ parentItem.filters = [];
40
+ return;
41
+ }
42
+ var index = parentItem.filters.indexOf(item);
43
+ if (index >= 0 && index === positionIndex) {
44
+ parentItem.filters = parentItem.filters.filter(function (i) { return i !== item; });
45
+ return;
46
+ }
47
+ parentItem.filters.forEach(function (filter) { return filter.filters && _this.remove(item, positionIndex, filter); });
48
+ };
49
+ FilterService = __decorate([
50
+ Injectable()
51
+ ], FilterService);
52
+ return FilterService;
53
+ }());
54
+
16
55
  /**
17
56
  * @hidden
18
57
  */
@@ -90,7 +129,6 @@ var isFilterEditor = function (editorType) {
90
129
  var supportedEditorTypes = ['string', 'number', 'boolean', 'date'];
91
130
  return supportedEditorTypes.indexOf(editorType) >= 0;
92
131
  };
93
-
94
132
  /**
95
133
  * @hidden
96
134
  */
@@ -98,74 +136,6 @@ var localizeOperators = function (operators) { return function (localization) {
98
136
  text: localization.get(key),
99
137
  value: operators[key]
100
138
  }); }); }; };
101
- /**
102
- * @hidden
103
- */
104
- var FilterService = /** @class */ (function () {
105
- function FilterService(localization) {
106
- this.localization = localization;
107
- this.value = { filters: [], logic: 'or' };
108
- this.filters = [];
109
- this.isEditorDisabled = false;
110
- }
111
- Object.defineProperty(FilterService.prototype, "defaultNumericOperators", {
112
- get: function () {
113
- return localizeOperators(defaultNumericOperators)(this.localization);
114
- },
115
- enumerable: true,
116
- configurable: true
117
- });
118
- Object.defineProperty(FilterService.prototype, "defaultStringOperators", {
119
- get: function () {
120
- return localizeOperators(defaultStringOperators)(this.localization);
121
- },
122
- enumerable: true,
123
- configurable: true
124
- });
125
- Object.defineProperty(FilterService.prototype, "defaultDateOperators", {
126
- get: function () {
127
- return localizeOperators(defaultDateOperators)(this.localization);
128
- },
129
- enumerable: true,
130
- configurable: true
131
- });
132
- Object.defineProperty(FilterService.prototype, "logicOperators", {
133
- get: function () {
134
- return localizeOperators(logicOperators)(this.localization);
135
- },
136
- enumerable: true,
137
- configurable: true
138
- });
139
- FilterService.prototype.addFilterGroup = function (item) {
140
- var filterGroup = { logic: 'or', filters: [] };
141
- item.filters.push(filterGroup);
142
- };
143
- FilterService.prototype.addFilterExpression = function (item) {
144
- var filterExpression = { operator: 'eq', value: null, field: null };
145
- item.filters.push(filterExpression);
146
- };
147
- FilterService.prototype.remove = function (item, positionIndex, parentItem) {
148
- var _this = this;
149
- if (!parentItem) {
150
- parentItem = this.value;
151
- }
152
- if (item === parentItem) {
153
- parentItem.filters = [];
154
- return;
155
- }
156
- var index = parentItem.filters.indexOf(item);
157
- if (index >= 0 && index === positionIndex) {
158
- parentItem.filters = parentItem.filters.filter(function (i) { return i !== item; });
159
- return;
160
- }
161
- parentItem.filters.forEach(function (filter) { return filter.filters && _this.remove(item, positionIndex, filter); });
162
- };
163
- FilterService = __decorate([
164
- Injectable(),
165
- __metadata("design:paramtypes", [LocalizationService])
166
- ], FilterService);
167
- return FilterService;
168
- }());
169
139
 
170
140
  /**
171
141
  * @hidden
@@ -174,7 +144,7 @@ var packageMetadata = {
174
144
  name: '@progress/kendo-angular-filter',
175
145
  productName: 'Kendo UI for Angular',
176
146
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
177
- publishDate: 1642687129,
147
+ publishDate: 1644849909,
178
148
  version: '',
179
149
  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'
180
150
  };
@@ -266,14 +236,16 @@ var FilterComponent = /** @class */ (function () {
266
236
  if (this.filters.length === 0) {
267
237
  throw new Error("Pass at least one user-defined filter through the [filters] input property. See http://www.telerik.com/kendo-angular-ui/components/filter/#data-binding");
268
238
  }
269
- this.localization.changes.subscribe(function (_a) {
239
+ this.localizationSubscription = this.localization.changes.subscribe(function (_a) {
270
240
  var rtl = _a.rtl;
271
241
  _this.direction = rtl ? 'rtl' : 'ltr';
272
242
  _this.cdr.detectChanges();
273
243
  });
274
244
  };
275
245
  FilterComponent.prototype.ngOnDestroy = function () {
276
- this.localization.changes.unsubscribe();
246
+ if (this.localizationSubscription) {
247
+ this.localizationSubscription.unsubscribe();
248
+ }
277
249
  };
278
250
  /**
279
251
  * @hidden
@@ -617,11 +589,11 @@ var FilterExpressionComponent = /** @class */ (function () {
617
589
  FilterExpressionComponent.prototype.getDefaultOperators = function (operatorsType) {
618
590
  switch (operatorsType) {
619
591
  case 'string':
620
- return this.filterService.defaultStringOperators;
592
+ return localizeOperators(defaultDateOperators)(this.localization);
621
593
  case 'number':
622
- return this.filterService.defaultNumericOperators;
594
+ return localizeOperators(defaultNumericOperators)(this.localization);
623
595
  case 'date':
624
- return this.filterService.defaultDateOperators;
596
+ return localizeOperators(defaultDateOperators)(this.localization);
625
597
  default:
626
598
  break;
627
599
  }
@@ -685,11 +657,14 @@ var FilterGroupComponent = /** @class */ (function () {
685
657
  filters: []
686
658
  };
687
659
  this.valueChange = new EventEmitter();
688
- this.logicOperators = [];
689
660
  }
690
- FilterGroupComponent.prototype.ngOnInit = function () {
691
- this.logicOperators = this.filterService.logicOperators;
692
- };
661
+ Object.defineProperty(FilterGroupComponent.prototype, "logicOperators", {
662
+ get: function () {
663
+ return localizeOperators(logicOperators)(this.localization);
664
+ },
665
+ enumerable: true,
666
+ configurable: true
667
+ });
693
668
  FilterGroupComponent.prototype.messageFor = function (key) {
694
669
  return this.localization.get(key);
695
670
  };
@@ -66,11 +66,11 @@ var FilterExpressionComponent = /** @class */ (function () {
66
66
  FilterExpressionComponent.prototype.getDefaultOperators = function (operatorsType) {
67
67
  switch (operatorsType) {
68
68
  case 'string':
69
- return this.filterService.defaultStringOperators;
69
+ return util_1.localizeOperators(util_1.defaultDateOperators)(this.localization);
70
70
  case 'number':
71
- return this.filterService.defaultNumericOperators;
71
+ return util_1.localizeOperators(util_1.defaultNumericOperators)(this.localization);
72
72
  case 'date':
73
- return this.filterService.defaultDateOperators;
73
+ return util_1.localizeOperators(util_1.defaultDateOperators)(this.localization);
74
74
  default:
75
75
  break;
76
76
  }
@@ -8,6 +8,7 @@ var tslib_1 = require("tslib");
8
8
  var core_1 = require("@angular/core");
9
9
  var kendo_angular_l10n_1 = require("@progress/kendo-angular-l10n");
10
10
  var filter_service_1 = require("./filter.service");
11
+ var util_1 = require("./util");
11
12
  /**
12
13
  * @hidden
13
14
  */
@@ -21,11 +22,14 @@ var FilterGroupComponent = /** @class */ (function () {
21
22
  filters: []
22
23
  };
23
24
  this.valueChange = new core_1.EventEmitter();
24
- this.logicOperators = [];
25
25
  }
26
- FilterGroupComponent.prototype.ngOnInit = function () {
27
- this.logicOperators = this.filterService.logicOperators;
28
- };
26
+ Object.defineProperty(FilterGroupComponent.prototype, "logicOperators", {
27
+ get: function () {
28
+ return util_1.localizeOperators(util_1.logicOperators)(this.localization);
29
+ },
30
+ enumerable: true,
31
+ configurable: true
32
+ });
29
33
  FilterGroupComponent.prototype.messageFor = function (key) {
30
34
  return this.localization.get(key);
31
35
  };
@@ -99,14 +99,16 @@ var FilterComponent = /** @class */ (function () {
99
99
  if (this.filters.length === 0) {
100
100
  throw new Error("Pass at least one user-defined filter through the [filters] input property. See http://www.telerik.com/kendo-angular-ui/components/filter/#data-binding");
101
101
  }
102
- this.localization.changes.subscribe(function (_a) {
102
+ this.localizationSubscription = this.localization.changes.subscribe(function (_a) {
103
103
  var rtl = _a.rtl;
104
104
  _this.direction = rtl ? 'rtl' : 'ltr';
105
105
  _this.cdr.detectChanges();
106
106
  });
107
107
  };
108
108
  FilterComponent.prototype.ngOnDestroy = function () {
109
- this.localization.changes.unsubscribe();
109
+ if (this.localizationSubscription) {
110
+ this.localizationSubscription.unsubscribe();
111
+ }
110
112
  };
111
113
  /**
112
114
  * @hidden
@@ -6,53 +6,15 @@
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  var tslib_1 = require("tslib");
8
8
  var core_1 = require("@angular/core");
9
- var kendo_angular_l10n_1 = require("@progress/kendo-angular-l10n");
10
- var util_1 = require("./util");
11
- /**
12
- * @hidden
13
- */
14
- exports.localizeOperators = function (operators) { return function (localization) { return Object.keys(operators).map(function (key) { return ({
15
- text: localization.get(key),
16
- value: operators[key]
17
- }); }); }; };
18
9
  /**
19
10
  * @hidden
20
11
  */
21
12
  var FilterService = /** @class */ (function () {
22
- function FilterService(localization) {
23
- this.localization = localization;
13
+ function FilterService() {
24
14
  this.value = { filters: [], logic: 'or' };
25
15
  this.filters = [];
26
16
  this.isEditorDisabled = false;
27
17
  }
28
- Object.defineProperty(FilterService.prototype, "defaultNumericOperators", {
29
- get: function () {
30
- return exports.localizeOperators(util_1.defaultNumericOperators)(this.localization);
31
- },
32
- enumerable: true,
33
- configurable: true
34
- });
35
- Object.defineProperty(FilterService.prototype, "defaultStringOperators", {
36
- get: function () {
37
- return exports.localizeOperators(util_1.defaultStringOperators)(this.localization);
38
- },
39
- enumerable: true,
40
- configurable: true
41
- });
42
- Object.defineProperty(FilterService.prototype, "defaultDateOperators", {
43
- get: function () {
44
- return exports.localizeOperators(util_1.defaultDateOperators)(this.localization);
45
- },
46
- enumerable: true,
47
- configurable: true
48
- });
49
- Object.defineProperty(FilterService.prototype, "logicOperators", {
50
- get: function () {
51
- return exports.localizeOperators(util_1.logicOperators)(this.localization);
52
- },
53
- enumerable: true,
54
- configurable: true
55
- });
56
18
  FilterService.prototype.addFilterGroup = function (item) {
57
19
  var filterGroup = { logic: 'or', filters: [] };
58
20
  item.filters.push(filterGroup);
@@ -78,8 +40,7 @@ var FilterService = /** @class */ (function () {
78
40
  parentItem.filters.forEach(function (filter) { return filter.filters && _this.remove(item, positionIndex, filter); });
79
41
  };
80
42
  FilterService = tslib_1.__decorate([
81
- core_1.Injectable(),
82
- tslib_1.__metadata("design:paramtypes", [kendo_angular_l10n_1.LocalizationService])
43
+ core_1.Injectable()
83
44
  ], FilterService);
84
45
  return FilterService;
85
46
  }());
@@ -11,7 +11,7 @@ exports.packageMetadata = {
11
11
  name: '@progress/kendo-angular-filter',
12
12
  productName: 'Kendo UI for Angular',
13
13
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
14
- publishDate: 1642687129,
14
+ publishDate: 1644849909,
15
15
  version: '',
16
16
  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'
17
17
  };
package/dist/npm/util.js CHANGED
@@ -129,3 +129,10 @@ exports.isFilterEditor = function (editorType) {
129
129
  var supportedEditorTypes = ['string', 'number', 'boolean', 'date'];
130
130
  return supportedEditorTypes.indexOf(editorType) >= 0;
131
131
  };
132
+ /**
133
+ * @hidden
134
+ */
135
+ exports.localizeOperators = function (operators) { return function (localization) { return Object.keys(operators).map(function (key) { return ({
136
+ text: localization.get(key),
137
+ value: operators[key]
138
+ }); }); }; };
@@ -2,4 +2,4 @@
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
- System.register("@progress/kendo-angular-filter",["@angular/core","tslib","@progress/kendo-angular-l10n","@progress/kendo-licensing","@angular/common","@progress/kendo-angular-dropdowns","@progress/kendo-angular-label","@progress/kendo-angular-inputs","@progress/kendo-angular-buttons","@progress/kendo-angular-dateinputs"],function(n){var a,l,s,d,u,p,f,c,m,g;function t(e){return e.__useDefault?e.default:e}return{setters:[function(e){a=t(e)},function(e){l=t(e)},function(e){s=t(e)},function(e){d=t(e)},function(e){u=t(e)},function(e){p=t(e)},function(e){f=t(e)},function(e){c=t(e)},function(e){m=t(e)},function(e){g=t(e)}],execute:function(){function i(e){if(o[e])return o[e].exports;var t=o[e]={i:e,l:!1,exports:{}};return r[e].call(t.exports,t,t.exports,i),t.l=!0,t.exports}var r,o;o={},i.m=r=[function(e,t){e.exports=a},function(e,t){e.exports=l},function(e,t){e.exports=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),a=r(4);t.localizeOperators=function(r){return function(t){return Object.keys(r).map(function(e){return{text:t.get(e),value:r[e]}})}};Object.defineProperty(l.prototype,"defaultNumericOperators",{get:function(){return t.localizeOperators(a.defaultNumericOperators)(this.localization)},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"defaultStringOperators",{get:function(){return t.localizeOperators(a.defaultStringOperators)(this.localization)},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"defaultDateOperators",{get:function(){return t.localizeOperators(a.defaultDateOperators)(this.localization)},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"logicOperators",{get:function(){return t.localizeOperators(a.logicOperators)(this.localization)},enumerable:!0,configurable:!0}),l.prototype.addFilterGroup=function(e){e.filters.push({logic:"or",filters:[]})},l.prototype.addFilterExpression=function(e){e.filters.push({operator:"eq",value:null,field:null})},l.prototype.remove=function(t,r,e){var i,o=this;e=e||this.value,t!==e?0<=(i=e.filters.indexOf(t))&&i===r?e.filters=e.filters.filter(function(e){return e!==t}):e.filters.forEach(function(e){return e.filters&&o.remove(t,r,e)}):e.filters=[]},n=i.__decorate([o.Injectable(),i.__metadata("design:paramtypes",[n.LocalizationService])],l);function l(e){this.localization=e,this.value={filters:[],logic:"or"},this.filters=[],this.isEditorDisabled=!1}t.FilterService=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.nullOperators=["isnull","isnotnull","isempty","isnotempty"],t.numericOperators=[{text:"Is equal to",value:"eq"},{text:"Not equal to",value:"neq"},{text:"Greater than or equal to",value:"gte"},{text:"Greater than",value:"gt"},{text:"Less than or equal to",value:"lte"},{text:"Less than",value:"lt"},{text:"Is null",value:"isnull"},{text:"Is not null",value:"isnotnull"}],t.stringOperators=[{text:"Is equal to",value:"eq"},{text:"Not equal to",value:"neq"},{text:"Contains",value:"contains"},{text:"Does not contain",value:"doesnotcontain"},{text:"Starts with",value:"startswith"},{text:"Ends with",value:"endswith"},{text:"Is null",value:"isnull"},{text:"Is not null",value:"isnotnull"},{text:"Is empty",value:"isempty"},{text:"Is not empty",value:"isnotempty"}],t.booleanOperators=[{text:"Is equal to",value:"eq"},{text:"Is not equal to",value:"neq"}],t.dateOperators=[{text:"Is equal to",value:"eq"},{text:"Not equal to",value:"neq"},{text:"Greater than or equal to",value:"gte"},{text:"Greater than",value:"gt"},{text:"Less than or equal to",value:"lte"},{text:"Less than",value:"lt"},{text:"Is null",value:"isnull"},{text:"Is not null",value:"isnotnull"}],t.isArray=function(e){return Array.isArray(e)},t.getKeyByValue=function(t,r){return Object.keys(t).find(function(e){return t[e]===r})},t.defaultStringOperators={filterEqOperator:"eq",filterNotEqOperator:"neq",filterContainsOperator:"contains",filterNotContainsOperator:"doesnotcontain",filterStartsWithOperator:"startswith",filterEndsWithOperator:"endswith",filterIsNullOperator:"isnull",filterIsNotNullOperator:"isnotnull",filterIsEmptyOperator:"isempty",filterIsNotEmptyOperator:"isnotempty"},t.defaultNumericOperators={filterEqOperator:"eq",filterNotEqOperator:"neq",filterGteOperator:"gte",filterGtOperator:"gt",filterLteOperator:"lte",filterLtOperator:"lt",filterIsNullOperator:"isnull",filterIsNotNullOperator:"isnotnull"},t.defaultDateOperators={filterEqOperator:"eq",filterNotEqOperator:"neq",filterAfterOrEqualOperator:"gte",filterAfterOperator:"gt",filterBeforeOrEqualOperator:"lte",filterBeforeOperator:"lt",filterIsNullOperator:"isnull",filterIsNotNullOperator:"isnotnull"},t.defaultOperators={string:t.defaultStringOperators,number:t.defaultNumericOperators,date:t.defaultDateOperators},t.logicOperators={filterAndLogic:"and",filterOrLogic:"or"},t.isFilterEditor=function(e){return 0<=["string","number","boolean","date"].indexOf(e)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,o=r(1),n=r(0),o=(i=r(2).ComponentMessages,o.__extends(a,i),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterExpressionOperators",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterExpressionFilters",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"remove",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"addGroup",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"addFilter",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterAndLogic",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterOrLogic",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterEqOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterNotEqOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsNullOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsNotNullOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsEmptyOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsNotEmptyOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterStartsWithOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterContainsOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterNotContainsOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterEndsWithOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterGteOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterGtOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterLteOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterLtOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsTrue",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsFalse",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterBooleanAll",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterAfterOrEqualOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterAfterOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterBeforeOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterBeforeOrEqualOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"editorNumericDecrement",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"editorNumericIncrement",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"editorDateTodayText",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"editorDateToggleText",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterFieldAriaLabel",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterOperatorAriaLabel",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterValueAriaLabel",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterAriaLabel",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterToolbarAriaLabel",void 0),a);function a(){return null!==i&&i.apply(this,arguments)||this}t.Messages=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),a=r(3),l=r(4),s=r(0),d=r(26),u=r(25),s=(Object.defineProperty(p.prototype,"filters",{get:function(){return this.filterService.filters},set:function(e){if(o.isDevMode()&&(!l.isArray(e)||0===e.length))throw new Error("Pass at least one user-defined filter through the [filters] input property. See http://www.telerik.com/kendo-angular-ui/components/filter/#data-binding");this.filterService.filters=e.map(function(e){e=Object.assign({},e);return e.title||(e.title=e.field),e})},enumerable:!0,configurable:!0}),Object.defineProperty(p.prototype,"value",{get:function(){return this.filterService.value},set:function(e){e=JSON.parse(JSON.stringify(e));this.normalizeValue(e),this.filterService.value=e},enumerable:!0,configurable:!0}),p.prototype.ngOnInit=function(){var t=this;if(0===this.filters.length)throw new Error("Pass at least one user-defined filter through the [filters] input property. See http://www.telerik.com/kendo-angular-ui/components/filter/#data-binding");this.localization.changes.subscribe(function(e){e=e.rtl;t.direction=e?"rtl":"ltr",t.cdr.detectChanges()})},p.prototype.ngOnDestroy=function(){this.localization.changes.unsubscribe()},p.prototype.getCurrentFilter=function(){return this.value},p.prototype.getCurrentFilterChildren=function(){return this.value.filters},p.prototype.onValueChange=function(){this.valueChange.emit(this.filterService.value)},p.prototype.normalizeFilter=function(t){var e=this.filterService.filters.find(function(e){return e.field===t.field});if(o.isDevMode()&&!e)throw new Error("There is no user-defined filter with '"+t.field+"' field provided through the [filters] input property.");o.isDevMode()&&"boolean"===e.editor&&!t.value&&!1!==t.value&&console.warn("Provide a value for the boolean '"+t.field+"' user-defined filter as the operator is always set to 'eq'."),"boolean"===e.editor&&(t.operator="eq"),"date"===e.editor&&t.value&&(t.value=new Date(t.value)),t.value||!1===t.value||(t.value=null)},p.prototype.normalizeValue=function(e){var t=this;e.filters.forEach(function(e){e.filters?t.normalizeValue(e):t.normalizeFilter(e)})},i.__decorate([o.HostBinding("attr.dir"),i.__metadata("design:type",String)],p.prototype,"direction",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Array),i.__metadata("design:paramtypes",[Array])],p.prototype,"filters",null),i.__decorate([o.Input(),i.__metadata("design:type",Object),i.__metadata("design:paramtypes",[Object])],p.prototype,"value",null),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],p.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter",template:'\n <ng-container kendoFilterLocalizedMessages\n i18n-editorDateTodayText="kendo.filter.editorDateTodayText|The text of the Today button of the Date editor"\n editorDateTodayText="Today"\n\n i18n-editorDateToggleText="kendo.filter.editorDateToggleText|The title of the Toggle button of the Date editor."\n editorDateToggleText="Toggle calendar"\n\n i18n-editorNumericDecrement="kendo.filter.editorNumericDecrement|The title of the Decrement button of the Numeric editor"\n editorNumericDecrement="Decrement"\n\n i18n-editorNumericIncrement="kendo.filter.editorNumericIncrement|The title of the Increment button of the Numeric editor"\n editorNumericIncrement="Increment"\n\n i18n-filterExpressionOperators="kendo.filter.filterExpressionOperators|The text of the Filter Expression Operators drop down"\n filterExpressionOperators="Operators"\n\n i18n-filterExpressionFilters="kendo.filter.filterExpressionFilters|The text of the Filter Expression filters drop down"\n filterExpressionFilters="Fields"\n\n i18n-remove="kendo.filter.remove|The text of the Remove button"\n remove="Remove"\n\n i18n-addFilter="kendo.filter.addFilter|The text of the Add Filter button"\n addFilter="Add Filter"\n\n i18n-addGroup="kendo.filter.addGroup|The text of the Add Group button"\n addGroup="Add Group"\n\n i18n-filterAndLogic="kendo.filter.filterAndLogic|The text of the And filter logic"\n filterAndLogic="And"\n\n i18n-filterOrLogic="kendo.filter.filterOrLogic|The text of the Or filter logic"\n filterOrLogic="Or"\n\n i18n-filterEqOperator="kendo.filter.filterEqOperator|The text of the equal filter operator"\n filterEqOperator="Is equal to"\n\n i18n-filterNotEqOperator="kendo.filter.filterNotEqOperator|The text of the not equal filter operator"\n filterNotEqOperator="Is not equal to"\n\n i18n-filterIsNullOperator="kendo.filter.filterIsNullOperator|The text of the is null filter operator"\n filterIsNullOperator="Is null"\n\n i18n-filterIsNotNullOperator="kendo.filter.filterIsNotNullOperator|The text of the is not null filter operator"\n filterIsNotNullOperator="Is not null"\n\n i18n-filterIsEmptyOperator="kendo.filter.filterIsEmptyOperator|The text of the is empty filter operator"\n filterIsEmptyOperator="Is empty"\n\n i18n-filterIsNotEmptyOperator="kendo.filter.filterIsNotEmptyOperator|The text of the is not empty filter operator"\n filterIsNotEmptyOperator="Is not empty"\n\n i18n-filterStartsWithOperator="kendo.filter.filterStartsWithOperator|The text of the starts with filter operator"\n filterStartsWithOperator="Starts with"\n\n i18n-filterContainsOperator="kendo.filter.filterContainsOperator|The text of the contains filter operator"\n filterContainsOperator="Contains"\n\n i18n-filterNotContainsOperator="kendo.filter.filterNotContainsOperator|The text of the does not contain filter operator"\n filterNotContainsOperator="Does not contain"\n\n i18n-filterEndsWithOperator="kendo.filter.filterEndsWithOperator|The text of the ends with filter operator"\n filterEndsWithOperator="Ends with"\n\n i18n-filterGteOperator="kendo.filter.filterGteOperator|The text of the greater than or equal filter operator"\n filterGteOperator="Is greater than or equal to"\n\n i18n-filterGtOperator="kendo.filter.filterGtOperator|The text of the greater than filter operator"\n filterGtOperator="Is greater than"\n\n i18n-filterLteOperator="kendo.filter.filterLteOperator|The text of the less than or equal filter operator"\n filterLteOperator="Is less than or equal to"\n\n i18n-filterLtOperator="kendo.filter.filterLtOperator|The text of the less than filter operator"\n filterLtOperator="Is less than"\n\n i18n-filterIsTrue="kendo.filter.filterIsTrue|The text of the IsTrue boolean filter option"\n filterIsTrue="Is True"\n\n i18n-filterIsFalse="kendo.filter.filterIsFalse|The text of the IsFalse boolean filter option"\n filterIsFalse="Is False"\n\n i18n-filterBooleanAll="kendo.filter.filterBooleanAll|The text of the (All) boolean filter option"\n filterBooleanAll="(All)"\n\n i18n-filterAfterOrEqualOperator="kendo.filter.filterAfterOrEqualOperator|The text of the after or equal date filter operator"\n filterAfterOrEqualOperator="Is after or equal to"\n\n i18n-filterAfterOperator="kendo.filter.filterAfterOperator|The text of the after date filter operator"\n filterAfterOperator="Is after"\n\n i18n-filterBeforeOperator="kendo.filter.filterBeforeOperator|The text of the before date filter operator"\n filterBeforeOperator="Is before"\n\n i18n-filterBeforeOrEqualOperator="kendo.filter.filterBeforeOrEqualOperator|The text of the before or equal date filter operator"\n filterBeforeOrEqualOperator="Is before or equal to"\n\n i18n-filterFieldAriaLabel="kendo.filter.filterFieldAriaLabel|The text of the filter field aria label"\n filterFieldAriaLabel="field"\n\n i18n-filterOperatorAriaLabel="kendo.filter.filterOperatorAriaLabel|The text of the filter operator aria label"\n filterOperatorAriaLabel="operator"\n\n i18n-filterValueAriaLabel="kendo.filter.filterValueAriaLabel|The text of the filter value aria label"\n filterValueAriaLabel="value"\n\n i18n-filterAriaLabel="kendo.filter.filterAriaLabel|The text of the filter row aria label"\n filterAriaLabel="filter"\n\n i18n-filterToolbarAriaLabel="kendo.filter.filterToolbarAriaLabel|The text of the filter toolbar aria label"\n filterToolbarAriaLabel="filter settings"\n >\n </ng-container>\n <div class="k-widget k-filter" [attr.dir]="direction">\n <ul class=\'k-filter-container\'>\n <li class=\'k-filter-group-main\'>\n <kendo-filter-group\n [currentItem]="getCurrentFilter()"\n (valueChange)="onValueChange()"\n >\n </kendo-filter-group>\n </li>\n </ul>\n </div>\n'}),i.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService,s.ChangeDetectorRef])],p));function p(e,t,r){this.filterService=e,this.localization=t,this.cdr=r,this.valueChange=new o.EventEmitter,d.validatePackage(u.packageMetadata),this.direction=t.rtl?"rtl":"ltr"}t.FilterComponent=s},function(e,t){e.exports=g},function(e,t){e.exports=m},function(e,t){e.exports=f},function(e,t){e.exports=c},function(e,t){e.exports=p},function(e,t){e.exports=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(12),n=r(11),a=r(10),l=r(9),s=r(0),d=r(8),u=r(3),r=r(7),r=[o.CommonModule,a.InputsModule,l.LabelModule,n.DropDownsModule,d.ButtonsModule,r.DateInputsModule],u=i.__decorate([s.NgModule({imports:r.slice(),exports:r.slice(),providers:[u.FilterService]})],p);function p(){}t.SharedModule=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,o,n=r(1),a=r(0),l=r(2),r=r(5),l=(i=r.Messages,n.__extends(s,i),o=s,o=n.__decorate([a.Directive({providers:[{provide:r.Messages,useExisting:a.forwardRef(function(){return o})}],selector:"[kendoFilterLocalizedMessages]"}),n.__metadata("design:paramtypes",[l.LocalizationService])],s));function s(e){var t=i.call(this)||this;return t.service=e,t}t.LocalizedMessagesDirective=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,o,n=r(1),a=r(0),l=r(2),r=r(5),l=(i=r.Messages,n.__extends(s,i),o=s,Object.defineProperty(s.prototype,"override",{get:function(){return!0},enumerable:!0,configurable:!0}),o=n.__decorate([a.Component({providers:[{provide:r.Messages,useExisting:a.forwardRef(function(){return o})}],selector:"kendo-filter-messages",template:""}),n.__metadata("design:paramtypes",[l.LocalizationService])],s));function s(e){var t=i.call(this)||this;return t.service=e,t}t.CustomMessagesComponent=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),r=r(3),n=(a.prototype.ngOnInit=function(){this.logicOperators=this.filterService.logicOperators},a.prototype.messageFor=function(e){return this.localization.get(e)},a.prototype.selectedChange=function(e){this.currentItem.logic!==e&&(this.currentItem.logic=e,this.valueChange.emit())},a.prototype.addFilterExpression=function(){this.filterService.addFilterExpression(this.currentItem),this.valueChange.emit()},a.prototype.addFilterGroup=function(){this.filterService.addFilterGroup(this.currentItem),this.valueChange.emit()},a.prototype.removeFilterGroup=function(){this.filterService.remove(this.currentItem,this.index),this.valueChange.emit()},i.__decorate([o.Input(),i.__metadata("design:type",Number)],a.prototype,"index",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Object)],a.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],a.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-group",template:'\n <div class="k-filter-toolbar" role="toolbar" [attr.aria-label]="messageFor(\'filterToolbarAriaLabel\')">\n <div class="k-toolbar">\n <div class="k-filter-toolbar-item">\n <div class="k-widget k-button-group" role="group">\n <button\n *ngFor="let operator of logicOperators"\n kendoButton\n [ngClass]="{\'k-group-start\': operator.value === \'and\', \'k-group-end\': operator.value === \'or\'}"\n [selected]="currentItem.logic === operator.value"\n [title]="operator.text"\n (click)="selectedChange(operator.value)"\n >\n {{operator.text}}\n </button>\n </div>\n </div>\n <div class="k-filter-toolbar-item">\n <button\n kendoButton\n [title]="messageFor(\'addFilter\')"\n icon="filter-add-expression"\n (click)="addFilterExpression()">\n {{messageFor(\'addFilter\')}}\n </button>\n </div>\n <div class="k-filter-toolbar-item">\n <button\n kendoButton\n [title]="messageFor(\'addGroup\')"\n icon="filter-add-group"\n (click)="addFilterGroup()">\n {{messageFor(\'addGroup\')}}\n </button>\n </div>\n <div class="k-filter-toolbar-item">\n <button\n kendoButton\n icon="close"\n fillMode="flat"\n [title]="messageFor(\'remove\')"\n (click)="removeFilterGroup()">\n </button>\n </div>\n </div>\n </div>\n\n <ul class="k-filter-lines" *ngIf="currentItem.filters">\n <ng-container *ngFor="let item of currentItem.filters; let i = index;">\n <li class="k-filter-item" *ngIf="!item.filters">\n <kendo-filter-expression (valueChange)="valueChange.emit()" [currentItem]="item" [index]="i">\n </kendo-filter-expression>\n </li>\n <li class="k-filter-item" *ngIf="item.filters" >\n <kendo-filter-group\n (valueChange)="valueChange.emit()"\n [currentItem]="item"\n [index]="i"\n >\n </kendo-filter-group>\n </li>\n </ng-container>\n </ul>\n '}),i.__metadata("design:paramtypes",[r.FilterService,n.LocalizationService])],a));function a(e,t){this.filterService=e,this.localization=t,this.index=0,this.currentItem={logic:"or",filters:[]},this.valueChange=new o.EventEmitter,this.logicOperators=[]}t.FilterGroupComponent=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),a=r(3),l=r(4),n=(s.prototype.ngOnInit=function(){var e;this.filters=this.filterService.filters,this.currentItem.field&&(e=this.getFilterExpressionByField(this.currentItem.field),this.setOperators(e)),this.currentItem.field||(this.currentItem.field=this.filterService.filters[0].field,e=this.getFilterExpressionByField(this.filterService.filters[0].field),this.setOperators(e))},s.prototype.normalizeOperators=function(e,t){for(var r=[],i=0;i<t.length;i++)l.isFilterEditor(e)&&r.push({value:t[i],text:this.localization.get(l.getKeyByValue(l.defaultOperators[e],t[i]))});return r},s.prototype.messageFor=function(e){return this.localization.get(e)},s.prototype.getFilterExpressionByField=function(t){return this.filterService.filters.find(function(e){return e.field===t})||null},s.prototype.filterValueChange=function(e){this.currentItem.value=null,this.currentItem.field=e;e=this.getFilterExpressionByField(this.currentItem.field);this.setOperators(e),this.valueChange.emit()},s.prototype.getDefaultOperators=function(e){switch(e){case"string":return this.filterService.defaultStringOperators;case"number":return this.filterService.defaultNumericOperators;case"date":return this.filterService.defaultDateOperators}},s.prototype.getEditorType=function(){var t=this;return this.filterService.filters.find(function(e){return e.field===t.currentItem.field}).editor},s.prototype.removeFilterExpression=function(){this.filterService.remove(this.currentItem,this.index),this.valueChange.emit()},s.prototype.setOperators=function(e){var t;this.isBoolean="boolean"===e.editor,this.isBoolean||(e.operators?(t=this.normalizeOperators(e.editor,e.operators),this.operators=t,this.currentItem.operator=t[0].value):(this.operators=this.getDefaultOperators(e.editor),this.currentItem.operator=this.operators[0].value))},i.__decorate([o.Input(),i.__metadata("design:type",Number)],s.prototype,"index",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Object)],s.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],s.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-expression",template:'\n <div class="k-filter-toolbar" role="group" [attr.aria-label]="messageFor(\'filterAriaLabel\')">\n <div class="k-toolbar">\n <div class="k-filter-toolbar-item k-filter-field">\n <kendo-dropdownlist\n [kendoAriaLabelValue]="messageFor(\'filterFieldAriaLabel\')"\n [title]="messageFor(\'filterExpressionFilters\')"\n [data]="filters"\n textField="title"\n valueField="field"\n [value]="currentItem.field"\n [valuePrimitive]="true"\n (valueChange)="filterValueChange($event)">\n </kendo-dropdownlist>\n </div>\n <div *ngIf="!isBoolean" class="k-filter-toolbar-item k-filter-operator">\n <kendo-filter-expression-operators\n [currentItem]="currentItem"\n [operators]="operators"\n (valueChange)="valueChange.emit();">\n </kendo-filter-expression-operators>\n </div>\n\n <ng-container [ngSwitch]="getEditorType()">\n <kendo-filter-text-editor *ngSwitchCase="\'string\'" [currentItem]="currentItem" (valueChange)="valueChange.emit()"></kendo-filter-text-editor>\n <kendo-filter-numeric-editor *ngSwitchCase="\'number\'" [currentItem]="currentItem" (valueChange)="valueChange.emit()"></kendo-filter-numeric-editor>\n <kendo-filter-boolean-editor *ngSwitchCase="\'boolean\'" [currentItem]="currentItem" (valueChange)="valueChange.emit()"></kendo-filter-boolean-editor>\n <kendo-filter-date-editor *ngSwitchCase="\'date\'" [currentItem]="currentItem" (valueChange)="valueChange.emit()"></kendo-filter-date-editor>\n </ng-container>\n\n <div class="k-filter-toolbar-item">\n <button\n kendoButton\n icon="close"\n fillMode="flat"\n [title]="messageFor(\'remove\')"\n (click)="removeFilterExpression()">\n </button>\n </div>\n </div>\n </div>\n '}),i.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService])],s));function s(e,t){this.filterService=e,this.localization=t,this.valueChange=new o.EventEmitter,this.operators=[],this.filters=[],this.isBoolean=!1,this.isEditorDisabled=!1}t.FilterExpressionComponent=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),a=r(3),l=r(4),n=(s.prototype.messageFor=function(e){return this.localization.get(e)},s.prototype.operatorValueChange=function(e){this.valueChange.emit(),this.filterService.isEditorDisabled=0<=l.nullOperators.indexOf(e)},i.__decorate([o.Input(),i.__metadata("design:type",Object)],s.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],s.prototype,"valueChange",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Array)],s.prototype,"operators",void 0),i.__decorate([o.Component({selector:"kendo-filter-expression-operators",template:'\n <kendo-dropdownlist\n [kendoAriaLabelValue]="messageFor(\'filterOperatorAriaLabel\')"\n [data]="operators"\n [title]="messageFor(\'filterExpressionOperators\')"\n [(value)]="currentItem.operator"\n (valueChange)="operatorValueChange($event)"\n [valuePrimitive]="true"\n textField="text"\n valueField="value"\n >\n </kendo-dropdownlist>\n '}),i.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService])],s));function s(e,t){this.filterService=e,this.localization=t,this.valueChange=new o.EventEmitter,this.operators=[]}t.FilterExpressionOperatorsComponent=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),r=r(3),r=(a.prototype.isDisabled=function(){var e=this.filterService.isEditorDisabled;return e&&(this.currentItem.value=null),e},a.prototype.messageFor=function(e){return this.localization.get(e)},i.__decorate([o.Input(),i.__metadata("design:type",Object)],a.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],a.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-text-editor",template:'\n <kendo-textbox\n [kendoAriaLabelValue]="messageFor(\'filterValueAriaLabel\')"\n class="k-filter-toolbar-item k-filter-value"\n [(value)]="currentItem.value"\n (valueChange)="valueChange.emit()"\n [disabled]="isDisabled()">\n </kendo-textbox>\n '}),i.__metadata("design:paramtypes",[n.LocalizationService,r.FilterService])],a));function a(e,t){this.localization=e,this.filterService=t,this.valueChange=new o.EventEmitter}t.FilterTextEditorComponent=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),r=r(3),r=(a.prototype.messageFor=function(e){return this.localization.get(e)},a.prototype.isDisabled=function(){var e=this.filterService.isEditorDisabled;return e&&(this.currentItem.value=null),e},i.__decorate([o.Input(),i.__metadata("design:type",Object)],a.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],a.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-numeric-editor",template:'\n <kendo-numerictextbox\n [kendoAriaLabelValue]="messageFor(\'filterValueAriaLabel\')"\n class="k-filter-toolbar-item k-filter-value"\n [(value)]="currentItem.value"\n (valueChange)="valueChange.emit()"\n [disabled]="isDisabled()">\n <kendo-numerictextbox-messages\n [increment]="messageFor(\'editorNumericIncrement\')"\n [decrement]="messageFor(\'editorNumericDecrement\')">\n </kendo-numerictextbox-messages>\n </kendo-numerictextbox>\n '}),i.__metadata("design:paramtypes",[n.LocalizationService,r.FilterService])],a));function a(e,t){this.localization=e,this.filterService=t,this.valueChange=new o.EventEmitter}t.FilterNumericEditorComponent=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),r=r(3),r=(a.prototype.messageFor=function(e){return this.localization.get(e)},a.prototype.isDisabled=function(){var e=this.filterService.isEditorDisabled;return e&&(this.currentItem.value=null),e},i.__decorate([o.Input(),i.__metadata("design:type",Object)],a.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],a.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-date-editor",template:'\n <kendo-datepicker\n [kendoAriaLabelValue]="messageFor(\'filterValueAriaLabel\')"\n class="k-filter-toolbar-item k-filter-value"\n [(value)]="currentItem.value"\n (valueChange)="valueChange.emit()"\n [disabled]="isDisabled()">\n <kendo-datepicker-messages\n [toggle]="messageFor(\'editorDateToggleText\')"\n [today]="messageFor(\'editorDateTodayText\')">\n </kendo-datepicker-messages>\n </kendo-datepicker>\n '}),i.__metadata("design:paramtypes",[n.LocalizationService,r.FilterService])],a));function a(e,t){this.localization=e,this.filterService=t,this.valueChange=new o.EventEmitter}t.FilterDateEditorComponent=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),r=r(2),r=(n.prototype.messageFor=function(e){return this.localization.get(e)},i.__decorate([o.Input(),i.__metadata("design:type",Object)],n.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],n.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-boolean-editor",template:'\n <kendo-dropdownlist\n [kendoAriaLabelValue]="messageFor(\'filterValueAriaLabel\')"\n class="k-filter-toolbar-item k-filter-value"\n [(value)]="currentItem.value"\n (valueChange)="valueChange.emit()"\n [data]="items"\n [defaultItem]="defaultItem"\n [valuePrimitive]="true"\n textField="text"\n valueField="value"\n >\n </kendo-dropdownlist>\n '}),i.__metadata("design:paramtypes",[r.LocalizationService])],n));function n(e){this.localization=e,this.valueChange=new o.EventEmitter,this.items=[{text:this.localization.get("filterIsTrue"),value:!0},{text:this.localization.get("filterIsFalse"),value:!1}],this.defaultItem={text:this.localization.get("filterBooleanAll"),value:null}}t.FilterBooleanEditorComponent=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),r=r(0),r=(o.prototype.ngOnChanges=function(){var e=this.hostElement.nativeElement.querySelector("input")||this.hostElement.nativeElement;this.renderer.setAttribute(e,"aria-label",this.ariaLabel)},i.__decorate([r.Input("kendoAriaLabelValue"),i.__metadata("design:type",String)],o.prototype,"ariaLabel",void 0),i.__decorate([r.Directive({selector:"[kendoAriaLabelValue]"}),i.__metadata("design:paramtypes",[r.ElementRef,r.Renderer2])],o));function o(e,t){this.hostElement=e,this.renderer=t}t.AriaLabelValueDirective=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),a=r(23),l=r(22),s=r(21),d=r(20),u=r(19),p=r(18),f=r(17),c=r(16),m=r(6),g=r(15),v=r(14),r=r(13),n=i.__decorate([o.NgModule({imports:[r.SharedModule],declarations:[m.FilterComponent,d.FilterNumericEditorComponent,u.FilterTextEditorComponent,f.FilterExpressionComponent,c.FilterGroupComponent,p.FilterExpressionOperatorsComponent,l.FilterBooleanEditorComponent,s.FilterDateEditorComponent,v.LocalizedMessagesDirective,g.CustomMessagesComponent,a.AriaLabelValueDirective],exports:[m.FilterComponent,d.FilterNumericEditorComponent,u.FilterTextEditorComponent,f.FilterExpressionComponent,c.FilterGroupComponent,p.FilterExpressionOperatorsComponent,l.FilterBooleanEditorComponent,s.FilterDateEditorComponent,v.LocalizedMessagesDirective,g.CustomMessagesComponent,a.AriaLabelValueDirective],providers:[n.LocalizationService,{provide:n.L10N_PREFIX,useValue:"kendo.filter"}]})],h);function h(){}t.FilterModule=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.packageMetadata={name:"@progress/kendo-angular-filter",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1642687129,version:"",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"}},function(e,t){e.exports=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(6);t.FilterComponent=i.FilterComponent;r=r(24);t.FilterModule=r.FilterModule,function(e){for(var t in e)n(t,e[t])}(t)}],i.c=o,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},i.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s=27)}}});
5
+ System.register("@progress/kendo-angular-filter",["tslib","@angular/core","@progress/kendo-angular-l10n","@progress/kendo-licensing","@angular/common","@progress/kendo-angular-dropdowns","@progress/kendo-angular-dateinputs","@progress/kendo-angular-inputs","@progress/kendo-angular-buttons","@progress/kendo-angular-label"],function(m){var n,a,l,s,d,u,p,f,c,g;function t(e){return e.__useDefault?e.default:e}return{setters:[function(e){n=t(e)},function(e){a=t(e)},function(e){l=t(e)},function(e){s=t(e)},function(e){d=t(e)},function(e){u=t(e)},function(e){p=t(e)},function(e){f=t(e)},function(e){c=t(e)},function(e){g=t(e)}],execute:function(){function i(e){if(o[e])return o[e].exports;var t=o[e]={i:e,l:!1,exports:{}};return r[e].call(t.exports,t,t.exports,i),t.l=!0,t.exports}var r,o;r=[function(e,t){e.exports=a},function(e,t){e.exports=n},function(e,t){e.exports=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),r=r(0),i=(o.prototype.addFilterGroup=function(e){e.filters.push({logic:"or",filters:[]})},o.prototype.addFilterExpression=function(e){e.filters.push({operator:"eq",value:null,field:null})},o.prototype.remove=function(t,r,e){var i,o=this;e=e||this.value,t!==e?0<=(i=e.filters.indexOf(t))&&i===r?e.filters=e.filters.filter(function(e){return e!==t}):e.filters.forEach(function(e){return e.filters&&o.remove(t,r,e)}):e.filters=[]},i.__decorate([r.Injectable()],o));function o(){this.value={filters:[],logic:"or"},this.filters=[],this.isEditorDisabled=!1}t.FilterService=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.nullOperators=["isnull","isnotnull","isempty","isnotempty"],t.numericOperators=[{text:"Is equal to",value:"eq"},{text:"Not equal to",value:"neq"},{text:"Greater than or equal to",value:"gte"},{text:"Greater than",value:"gt"},{text:"Less than or equal to",value:"lte"},{text:"Less than",value:"lt"},{text:"Is null",value:"isnull"},{text:"Is not null",value:"isnotnull"}],t.stringOperators=[{text:"Is equal to",value:"eq"},{text:"Not equal to",value:"neq"},{text:"Contains",value:"contains"},{text:"Does not contain",value:"doesnotcontain"},{text:"Starts with",value:"startswith"},{text:"Ends with",value:"endswith"},{text:"Is null",value:"isnull"},{text:"Is not null",value:"isnotnull"},{text:"Is empty",value:"isempty"},{text:"Is not empty",value:"isnotempty"}],t.booleanOperators=[{text:"Is equal to",value:"eq"},{text:"Is not equal to",value:"neq"}],t.dateOperators=[{text:"Is equal to",value:"eq"},{text:"Not equal to",value:"neq"},{text:"Greater than or equal to",value:"gte"},{text:"Greater than",value:"gt"},{text:"Less than or equal to",value:"lte"},{text:"Less than",value:"lt"},{text:"Is null",value:"isnull"},{text:"Is not null",value:"isnotnull"}],t.isArray=function(e){return Array.isArray(e)},t.getKeyByValue=function(t,r){return Object.keys(t).find(function(e){return t[e]===r})},t.defaultStringOperators={filterEqOperator:"eq",filterNotEqOperator:"neq",filterContainsOperator:"contains",filterNotContainsOperator:"doesnotcontain",filterStartsWithOperator:"startswith",filterEndsWithOperator:"endswith",filterIsNullOperator:"isnull",filterIsNotNullOperator:"isnotnull",filterIsEmptyOperator:"isempty",filterIsNotEmptyOperator:"isnotempty"},t.defaultNumericOperators={filterEqOperator:"eq",filterNotEqOperator:"neq",filterGteOperator:"gte",filterGtOperator:"gt",filterLteOperator:"lte",filterLtOperator:"lt",filterIsNullOperator:"isnull",filterIsNotNullOperator:"isnotnull"},t.defaultDateOperators={filterEqOperator:"eq",filterNotEqOperator:"neq",filterAfterOrEqualOperator:"gte",filterAfterOperator:"gt",filterBeforeOrEqualOperator:"lte",filterBeforeOperator:"lt",filterIsNullOperator:"isnull",filterIsNotNullOperator:"isnotnull"},t.defaultOperators={string:t.defaultStringOperators,number:t.defaultNumericOperators,date:t.defaultDateOperators},t.logicOperators={filterAndLogic:"and",filterOrLogic:"or"},t.isFilterEditor=function(e){return 0<=["string","number","boolean","date"].indexOf(e)},t.localizeOperators=function(r){return function(t){return Object.keys(r).map(function(e){return{text:t.get(e),value:r[e]}})}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,o=r(1),n=r(0),r=(i=r(2).ComponentMessages,o.__extends(a,i),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterExpressionOperators",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterExpressionFilters",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"remove",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"addGroup",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"addFilter",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterAndLogic",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterOrLogic",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterEqOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterNotEqOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsNullOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsNotNullOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsEmptyOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsNotEmptyOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterStartsWithOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterContainsOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterNotContainsOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterEndsWithOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterGteOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterGtOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterLteOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterLtOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsTrue",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterIsFalse",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterBooleanAll",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterAfterOrEqualOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterAfterOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterBeforeOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterBeforeOrEqualOperator",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"editorNumericDecrement",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"editorNumericIncrement",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"editorDateTodayText",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"editorDateToggleText",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterFieldAriaLabel",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterOperatorAriaLabel",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterValueAriaLabel",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterAriaLabel",void 0),o.__decorate([n.Input(),o.__metadata("design:type",String)],a.prototype,"filterToolbarAriaLabel",void 0),a);function a(){return null!==i&&i.apply(this,arguments)||this}t.Messages=r},function(u,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=t(1),i=t(0),o=t(2),n=t(3),a=t(4),l=t(0),s=t(26),p=t(25),t=(Object.defineProperty(d.prototype,"filters",{get:function(){return this.filterService.filters},set:function(e){if(i.isDevMode()&&(!a.isArray(e)||0===e.length))throw new Error("Pass at least one user-defined filter through the [filters] input property. See http://www.telerik.com/kendo-angular-ui/components/filter/#data-binding");this.filterService.filters=e.map(function(e){e=Object.assign({},e);return e.title||(e.title=e.field),e})},enumerable:!0,configurable:!0}),Object.defineProperty(d.prototype,"value",{get:function(){return this.filterService.value},set:function(e){e=JSON.parse(JSON.stringify(e));this.normalizeValue(e),this.filterService.value=e},enumerable:!0,configurable:!0}),d.prototype.ngOnInit=function(){var t=this;if(0===this.filters.length)throw new Error("Pass at least one user-defined filter through the [filters] input property. See http://www.telerik.com/kendo-angular-ui/components/filter/#data-binding");this.localizationSubscription=this.localization.changes.subscribe(function(e){e=e.rtl;t.direction=e?"rtl":"ltr",t.cdr.detectChanges()})},d.prototype.ngOnDestroy=function(){this.localizationSubscription&&this.localizationSubscription.unsubscribe()},d.prototype.getCurrentFilter=function(){return this.value},d.prototype.getCurrentFilterChildren=function(){return this.value.filters},d.prototype.onValueChange=function(){this.valueChange.emit(this.filterService.value)},d.prototype.normalizeFilter=function(t){var e=this.filterService.filters.find(function(e){return e.field===t.field});if(i.isDevMode()&&!e)throw new Error("There is no user-defined filter with '"+t.field+"' field provided through the [filters] input property.");i.isDevMode()&&"boolean"===e.editor&&!t.value&&!1!==t.value&&console.warn("Provide a value for the boolean '"+t.field+"' user-defined filter as the operator is always set to 'eq'."),"boolean"===e.editor&&(t.operator="eq"),"date"===e.editor&&t.value&&(t.value=new Date(t.value)),t.value||!1===t.value||(t.value=null)},d.prototype.normalizeValue=function(e){var t=this;e.filters.forEach(function(e){e.filters?t.normalizeValue(e):t.normalizeFilter(e)})},r.__decorate([i.HostBinding("attr.dir"),r.__metadata("design:type",String)],d.prototype,"direction",void 0),r.__decorate([i.Input(),r.__metadata("design:type",Array),r.__metadata("design:paramtypes",[Array])],d.prototype,"filters",null),r.__decorate([i.Input(),r.__metadata("design:type",Object),r.__metadata("design:paramtypes",[Object])],d.prototype,"value",null),r.__decorate([i.Output(),r.__metadata("design:type",i.EventEmitter)],d.prototype,"valueChange",void 0),r.__decorate([i.Component({selector:"kendo-filter",template:'\n <ng-container kendoFilterLocalizedMessages\n i18n-editorDateTodayText="kendo.filter.editorDateTodayText|The text of the Today button of the Date editor"\n editorDateTodayText="Today"\n\n i18n-editorDateToggleText="kendo.filter.editorDateToggleText|The title of the Toggle button of the Date editor."\n editorDateToggleText="Toggle calendar"\n\n i18n-editorNumericDecrement="kendo.filter.editorNumericDecrement|The title of the Decrement button of the Numeric editor"\n editorNumericDecrement="Decrement"\n\n i18n-editorNumericIncrement="kendo.filter.editorNumericIncrement|The title of the Increment button of the Numeric editor"\n editorNumericIncrement="Increment"\n\n i18n-filterExpressionOperators="kendo.filter.filterExpressionOperators|The text of the Filter Expression Operators drop down"\n filterExpressionOperators="Operators"\n\n i18n-filterExpressionFilters="kendo.filter.filterExpressionFilters|The text of the Filter Expression filters drop down"\n filterExpressionFilters="Fields"\n\n i18n-remove="kendo.filter.remove|The text of the Remove button"\n remove="Remove"\n\n i18n-addFilter="kendo.filter.addFilter|The text of the Add Filter button"\n addFilter="Add Filter"\n\n i18n-addGroup="kendo.filter.addGroup|The text of the Add Group button"\n addGroup="Add Group"\n\n i18n-filterAndLogic="kendo.filter.filterAndLogic|The text of the And filter logic"\n filterAndLogic="And"\n\n i18n-filterOrLogic="kendo.filter.filterOrLogic|The text of the Or filter logic"\n filterOrLogic="Or"\n\n i18n-filterEqOperator="kendo.filter.filterEqOperator|The text of the equal filter operator"\n filterEqOperator="Is equal to"\n\n i18n-filterNotEqOperator="kendo.filter.filterNotEqOperator|The text of the not equal filter operator"\n filterNotEqOperator="Is not equal to"\n\n i18n-filterIsNullOperator="kendo.filter.filterIsNullOperator|The text of the is null filter operator"\n filterIsNullOperator="Is null"\n\n i18n-filterIsNotNullOperator="kendo.filter.filterIsNotNullOperator|The text of the is not null filter operator"\n filterIsNotNullOperator="Is not null"\n\n i18n-filterIsEmptyOperator="kendo.filter.filterIsEmptyOperator|The text of the is empty filter operator"\n filterIsEmptyOperator="Is empty"\n\n i18n-filterIsNotEmptyOperator="kendo.filter.filterIsNotEmptyOperator|The text of the is not empty filter operator"\n filterIsNotEmptyOperator="Is not empty"\n\n i18n-filterStartsWithOperator="kendo.filter.filterStartsWithOperator|The text of the starts with filter operator"\n filterStartsWithOperator="Starts with"\n\n i18n-filterContainsOperator="kendo.filter.filterContainsOperator|The text of the contains filter operator"\n filterContainsOperator="Contains"\n\n i18n-filterNotContainsOperator="kendo.filter.filterNotContainsOperator|The text of the does not contain filter operator"\n filterNotContainsOperator="Does not contain"\n\n i18n-filterEndsWithOperator="kendo.filter.filterEndsWithOperator|The text of the ends with filter operator"\n filterEndsWithOperator="Ends with"\n\n i18n-filterGteOperator="kendo.filter.filterGteOperator|The text of the greater than or equal filter operator"\n filterGteOperator="Is greater than or equal to"\n\n i18n-filterGtOperator="kendo.filter.filterGtOperator|The text of the greater than filter operator"\n filterGtOperator="Is greater than"\n\n i18n-filterLteOperator="kendo.filter.filterLteOperator|The text of the less than or equal filter operator"\n filterLteOperator="Is less than or equal to"\n\n i18n-filterLtOperator="kendo.filter.filterLtOperator|The text of the less than filter operator"\n filterLtOperator="Is less than"\n\n i18n-filterIsTrue="kendo.filter.filterIsTrue|The text of the IsTrue boolean filter option"\n filterIsTrue="Is True"\n\n i18n-filterIsFalse="kendo.filter.filterIsFalse|The text of the IsFalse boolean filter option"\n filterIsFalse="Is False"\n\n i18n-filterBooleanAll="kendo.filter.filterBooleanAll|The text of the (All) boolean filter option"\n filterBooleanAll="(All)"\n\n i18n-filterAfterOrEqualOperator="kendo.filter.filterAfterOrEqualOperator|The text of the after or equal date filter operator"\n filterAfterOrEqualOperator="Is after or equal to"\n\n i18n-filterAfterOperator="kendo.filter.filterAfterOperator|The text of the after date filter operator"\n filterAfterOperator="Is after"\n\n i18n-filterBeforeOperator="kendo.filter.filterBeforeOperator|The text of the before date filter operator"\n filterBeforeOperator="Is before"\n\n i18n-filterBeforeOrEqualOperator="kendo.filter.filterBeforeOrEqualOperator|The text of the before or equal date filter operator"\n filterBeforeOrEqualOperator="Is before or equal to"\n\n i18n-filterFieldAriaLabel="kendo.filter.filterFieldAriaLabel|The text of the filter field aria label"\n filterFieldAriaLabel="field"\n\n i18n-filterOperatorAriaLabel="kendo.filter.filterOperatorAriaLabel|The text of the filter operator aria label"\n filterOperatorAriaLabel="operator"\n\n i18n-filterValueAriaLabel="kendo.filter.filterValueAriaLabel|The text of the filter value aria label"\n filterValueAriaLabel="value"\n\n i18n-filterAriaLabel="kendo.filter.filterAriaLabel|The text of the filter row aria label"\n filterAriaLabel="filter"\n\n i18n-filterToolbarAriaLabel="kendo.filter.filterToolbarAriaLabel|The text of the filter toolbar aria label"\n filterToolbarAriaLabel="filter settings"\n >\n </ng-container>\n <div class="k-widget k-filter" [attr.dir]="direction">\n <ul class=\'k-filter-container\'>\n <li class=\'k-filter-group-main\'>\n <kendo-filter-group\n [currentItem]="getCurrentFilter()"\n (valueChange)="onValueChange()"\n >\n </kendo-filter-group>\n </li>\n </ul>\n </div>\n'}),r.__metadata("design:paramtypes",[n.FilterService,o.LocalizationService,l.ChangeDetectorRef])],d));function d(e,t,r){this.filterService=e,this.localization=t,this.cdr=r,this.valueChange=new i.EventEmitter,s.validatePackage(p.packageMetadata),this.direction=t.rtl?"rtl":"ltr"}e.FilterComponent=t},function(e,t){e.exports=p},function(e,t){e.exports=c},function(e,t){e.exports=g},function(e,t){e.exports=f},function(e,t){e.exports=u},function(e,t){e.exports=d},function(u,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=t(1),i=t(12),o=t(11),n=t(10),a=t(9),l=t(0),s=t(8),d=t(3),t=t(7),i=[i.CommonModule,n.InputsModule,a.LabelModule,o.DropDownsModule,s.ButtonsModule,t.DateInputsModule],n=r.__decorate([l.NgModule({imports:i.slice(),exports:i.slice(),providers:[d.FilterService]})],p);function p(){}e.SharedModule=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,o,n=r(1),a=r(0),l=r(2),r=r(5),r=(i=r.Messages,n.__extends(s,i),o=s,o=n.__decorate([a.Directive({providers:[{provide:r.Messages,useExisting:a.forwardRef(function(){return o})}],selector:"[kendoFilterLocalizedMessages]"}),n.__metadata("design:paramtypes",[l.LocalizationService])],s));function s(e){var t=i.call(this)||this;return t.service=e,t}t.LocalizedMessagesDirective=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,o,n=r(1),a=r(0),l=r(2),r=r(5),r=(i=r.Messages,n.__extends(s,i),o=s,Object.defineProperty(s.prototype,"override",{get:function(){return!0},enumerable:!0,configurable:!0}),o=n.__decorate([a.Component({providers:[{provide:r.Messages,useExisting:a.forwardRef(function(){return o})}],selector:"kendo-filter-messages",template:""}),n.__metadata("design:paramtypes",[l.LocalizationService])],s));function s(e){var t=i.call(this)||this;return t.service=e,t}t.CustomMessagesComponent=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),a=r(3),l=r(4),r=(Object.defineProperty(s.prototype,"logicOperators",{get:function(){return l.localizeOperators(l.logicOperators)(this.localization)},enumerable:!0,configurable:!0}),s.prototype.messageFor=function(e){return this.localization.get(e)},s.prototype.selectedChange=function(e){this.currentItem.logic!==e&&(this.currentItem.logic=e,this.valueChange.emit())},s.prototype.addFilterExpression=function(){this.filterService.addFilterExpression(this.currentItem),this.valueChange.emit()},s.prototype.addFilterGroup=function(){this.filterService.addFilterGroup(this.currentItem),this.valueChange.emit()},s.prototype.removeFilterGroup=function(){this.filterService.remove(this.currentItem,this.index),this.valueChange.emit()},i.__decorate([o.Input(),i.__metadata("design:type",Number)],s.prototype,"index",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Object)],s.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],s.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-group",template:'\n <div class="k-filter-toolbar" role="toolbar" [attr.aria-label]="messageFor(\'filterToolbarAriaLabel\')">\n <div class="k-toolbar">\n <div class="k-filter-toolbar-item">\n <div class="k-widget k-button-group" role="group">\n <button\n *ngFor="let operator of logicOperators"\n kendoButton\n [ngClass]="{\'k-group-start\': operator.value === \'and\', \'k-group-end\': operator.value === \'or\'}"\n [selected]="currentItem.logic === operator.value"\n [title]="operator.text"\n (click)="selectedChange(operator.value)"\n >\n {{operator.text}}\n </button>\n </div>\n </div>\n <div class="k-filter-toolbar-item">\n <button\n kendoButton\n [title]="messageFor(\'addFilter\')"\n icon="filter-add-expression"\n (click)="addFilterExpression()">\n {{messageFor(\'addFilter\')}}\n </button>\n </div>\n <div class="k-filter-toolbar-item">\n <button\n kendoButton\n [title]="messageFor(\'addGroup\')"\n icon="filter-add-group"\n (click)="addFilterGroup()">\n {{messageFor(\'addGroup\')}}\n </button>\n </div>\n <div class="k-filter-toolbar-item">\n <button\n kendoButton\n icon="close"\n fillMode="flat"\n [title]="messageFor(\'remove\')"\n (click)="removeFilterGroup()">\n </button>\n </div>\n </div>\n </div>\n\n <ul class="k-filter-lines" *ngIf="currentItem.filters">\n <ng-container *ngFor="let item of currentItem.filters; let i = index;">\n <li class="k-filter-item" *ngIf="!item.filters">\n <kendo-filter-expression (valueChange)="valueChange.emit()" [currentItem]="item" [index]="i">\n </kendo-filter-expression>\n </li>\n <li class="k-filter-item" *ngIf="item.filters" >\n <kendo-filter-group\n (valueChange)="valueChange.emit()"\n [currentItem]="item"\n [index]="i"\n >\n </kendo-filter-group>\n </li>\n </ng-container>\n </ul>\n '}),i.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService])],s));function s(e,t){this.filterService=e,this.localization=t,this.index=0,this.currentItem={logic:"or",filters:[]},this.valueChange=new o.EventEmitter}t.FilterGroupComponent=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),a=r(3),l=r(4),r=(s.prototype.ngOnInit=function(){var e;this.filters=this.filterService.filters,this.currentItem.field&&(e=this.getFilterExpressionByField(this.currentItem.field),this.setOperators(e)),this.currentItem.field||(this.currentItem.field=this.filterService.filters[0].field,e=this.getFilterExpressionByField(this.filterService.filters[0].field),this.setOperators(e))},s.prototype.normalizeOperators=function(e,t){for(var r=[],i=0;i<t.length;i++)l.isFilterEditor(e)&&r.push({value:t[i],text:this.localization.get(l.getKeyByValue(l.defaultOperators[e],t[i]))});return r},s.prototype.messageFor=function(e){return this.localization.get(e)},s.prototype.getFilterExpressionByField=function(t){return this.filterService.filters.find(function(e){return e.field===t})||null},s.prototype.filterValueChange=function(e){this.currentItem.value=null,this.currentItem.field=e;e=this.getFilterExpressionByField(this.currentItem.field);this.setOperators(e),this.valueChange.emit()},s.prototype.getDefaultOperators=function(e){switch(e){case"string":return l.localizeOperators(l.defaultDateOperators)(this.localization);case"number":return l.localizeOperators(l.defaultNumericOperators)(this.localization);case"date":return l.localizeOperators(l.defaultDateOperators)(this.localization)}},s.prototype.getEditorType=function(){var t=this;return this.filterService.filters.find(function(e){return e.field===t.currentItem.field}).editor},s.prototype.removeFilterExpression=function(){this.filterService.remove(this.currentItem,this.index),this.valueChange.emit()},s.prototype.setOperators=function(e){var t;this.isBoolean="boolean"===e.editor,this.isBoolean||(e.operators?(t=this.normalizeOperators(e.editor,e.operators),this.operators=t,this.currentItem.operator=t[0].value):(this.operators=this.getDefaultOperators(e.editor),this.currentItem.operator=this.operators[0].value))},i.__decorate([o.Input(),i.__metadata("design:type",Number)],s.prototype,"index",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Object)],s.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],s.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-expression",template:'\n <div class="k-filter-toolbar" role="group" [attr.aria-label]="messageFor(\'filterAriaLabel\')">\n <div class="k-toolbar">\n <div class="k-filter-toolbar-item k-filter-field">\n <kendo-dropdownlist\n [kendoAriaLabelValue]="messageFor(\'filterFieldAriaLabel\')"\n [title]="messageFor(\'filterExpressionFilters\')"\n [data]="filters"\n textField="title"\n valueField="field"\n [value]="currentItem.field"\n [valuePrimitive]="true"\n (valueChange)="filterValueChange($event)">\n </kendo-dropdownlist>\n </div>\n <div *ngIf="!isBoolean" class="k-filter-toolbar-item k-filter-operator">\n <kendo-filter-expression-operators\n [currentItem]="currentItem"\n [operators]="operators"\n (valueChange)="valueChange.emit();">\n </kendo-filter-expression-operators>\n </div>\n\n <ng-container [ngSwitch]="getEditorType()">\n <kendo-filter-text-editor *ngSwitchCase="\'string\'" [currentItem]="currentItem" (valueChange)="valueChange.emit()"></kendo-filter-text-editor>\n <kendo-filter-numeric-editor *ngSwitchCase="\'number\'" [currentItem]="currentItem" (valueChange)="valueChange.emit()"></kendo-filter-numeric-editor>\n <kendo-filter-boolean-editor *ngSwitchCase="\'boolean\'" [currentItem]="currentItem" (valueChange)="valueChange.emit()"></kendo-filter-boolean-editor>\n <kendo-filter-date-editor *ngSwitchCase="\'date\'" [currentItem]="currentItem" (valueChange)="valueChange.emit()"></kendo-filter-date-editor>\n </ng-container>\n\n <div class="k-filter-toolbar-item">\n <button\n kendoButton\n icon="close"\n fillMode="flat"\n [title]="messageFor(\'remove\')"\n (click)="removeFilterExpression()">\n </button>\n </div>\n </div>\n </div>\n '}),i.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService])],s));function s(e,t){this.filterService=e,this.localization=t,this.valueChange=new o.EventEmitter,this.operators=[],this.filters=[],this.isBoolean=!1,this.isEditorDisabled=!1}t.FilterExpressionComponent=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),a=r(3),l=r(4),r=(s.prototype.messageFor=function(e){return this.localization.get(e)},s.prototype.operatorValueChange=function(e){this.valueChange.emit(),this.filterService.isEditorDisabled=0<=l.nullOperators.indexOf(e)},i.__decorate([o.Input(),i.__metadata("design:type",Object)],s.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],s.prototype,"valueChange",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Array)],s.prototype,"operators",void 0),i.__decorate([o.Component({selector:"kendo-filter-expression-operators",template:'\n <kendo-dropdownlist\n [kendoAriaLabelValue]="messageFor(\'filterOperatorAriaLabel\')"\n [data]="operators"\n [title]="messageFor(\'filterExpressionOperators\')"\n [(value)]="currentItem.operator"\n (valueChange)="operatorValueChange($event)"\n [valuePrimitive]="true"\n textField="text"\n valueField="value"\n >\n </kendo-dropdownlist>\n '}),i.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService])],s));function s(e,t){this.filterService=e,this.localization=t,this.valueChange=new o.EventEmitter,this.operators=[]}t.FilterExpressionOperatorsComponent=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),r=r(3),i=(a.prototype.isDisabled=function(){var e=this.filterService.isEditorDisabled;return e&&(this.currentItem.value=null),e},a.prototype.messageFor=function(e){return this.localization.get(e)},i.__decorate([o.Input(),i.__metadata("design:type",Object)],a.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],a.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-text-editor",template:'\n <kendo-textbox\n [kendoAriaLabelValue]="messageFor(\'filterValueAriaLabel\')"\n class="k-filter-toolbar-item k-filter-value"\n [(value)]="currentItem.value"\n (valueChange)="valueChange.emit()"\n [disabled]="isDisabled()">\n </kendo-textbox>\n '}),i.__metadata("design:paramtypes",[n.LocalizationService,r.FilterService])],a));function a(e,t){this.localization=e,this.filterService=t,this.valueChange=new o.EventEmitter}t.FilterTextEditorComponent=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),r=r(3),i=(a.prototype.messageFor=function(e){return this.localization.get(e)},a.prototype.isDisabled=function(){var e=this.filterService.isEditorDisabled;return e&&(this.currentItem.value=null),e},i.__decorate([o.Input(),i.__metadata("design:type",Object)],a.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],a.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-numeric-editor",template:'\n <kendo-numerictextbox\n [kendoAriaLabelValue]="messageFor(\'filterValueAriaLabel\')"\n class="k-filter-toolbar-item k-filter-value"\n [(value)]="currentItem.value"\n (valueChange)="valueChange.emit()"\n [disabled]="isDisabled()">\n <kendo-numerictextbox-messages\n [increment]="messageFor(\'editorNumericIncrement\')"\n [decrement]="messageFor(\'editorNumericDecrement\')">\n </kendo-numerictextbox-messages>\n </kendo-numerictextbox>\n '}),i.__metadata("design:paramtypes",[n.LocalizationService,r.FilterService])],a));function a(e,t){this.localization=e,this.filterService=t,this.valueChange=new o.EventEmitter}t.FilterNumericEditorComponent=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),n=r(2),r=r(3),i=(a.prototype.messageFor=function(e){return this.localization.get(e)},a.prototype.isDisabled=function(){var e=this.filterService.isEditorDisabled;return e&&(this.currentItem.value=null),e},i.__decorate([o.Input(),i.__metadata("design:type",Object)],a.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],a.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-date-editor",template:'\n <kendo-datepicker\n [kendoAriaLabelValue]="messageFor(\'filterValueAriaLabel\')"\n class="k-filter-toolbar-item k-filter-value"\n [(value)]="currentItem.value"\n (valueChange)="valueChange.emit()"\n [disabled]="isDisabled()">\n <kendo-datepicker-messages\n [toggle]="messageFor(\'editorDateToggleText\')"\n [today]="messageFor(\'editorDateTodayText\')">\n </kendo-datepicker-messages>\n </kendo-datepicker>\n '}),i.__metadata("design:paramtypes",[n.LocalizationService,r.FilterService])],a));function a(e,t){this.localization=e,this.filterService=t,this.valueChange=new o.EventEmitter}t.FilterDateEditorComponent=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),o=r(0),r=r(2),i=(n.prototype.messageFor=function(e){return this.localization.get(e)},i.__decorate([o.Input(),i.__metadata("design:type",Object)],n.prototype,"currentItem",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],n.prototype,"valueChange",void 0),i.__decorate([o.Component({selector:"kendo-filter-boolean-editor",template:'\n <kendo-dropdownlist\n [kendoAriaLabelValue]="messageFor(\'filterValueAriaLabel\')"\n class="k-filter-toolbar-item k-filter-value"\n [(value)]="currentItem.value"\n (valueChange)="valueChange.emit()"\n [data]="items"\n [defaultItem]="defaultItem"\n [valuePrimitive]="true"\n textField="text"\n valueField="value"\n >\n </kendo-dropdownlist>\n '}),i.__metadata("design:paramtypes",[r.LocalizationService])],n));function n(e){this.localization=e,this.valueChange=new o.EventEmitter,this.items=[{text:this.localization.get("filterIsTrue"),value:!0},{text:this.localization.get("filterIsFalse"),value:!1}],this.defaultItem={text:this.localization.get("filterBooleanAll"),value:null}}t.FilterBooleanEditorComponent=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=r(1),r=r(0),i=(o.prototype.ngOnChanges=function(){var e=this.hostElement.nativeElement.querySelector("input")||this.hostElement.nativeElement;this.renderer.setAttribute(e,"aria-label",this.ariaLabel)},i.__decorate([r.Input("kendoAriaLabelValue"),i.__metadata("design:type",String)],o.prototype,"ariaLabel",void 0),i.__decorate([r.Directive({selector:"[kendoAriaLabelValue]"}),i.__metadata("design:paramtypes",[r.ElementRef,r.Renderer2])],o));function o(e,t){this.hostElement=e,this.renderer=t}t.AriaLabelValueDirective=i},function(u,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=t(1),p=t(0),i=t(2),o=t(23),n=t(22),a=t(21),l=t(20),s=t(19),d=t(18),f=t(17),c=t(16),m=t(6),g=t(15),v=t(14),t=t(13),r=r.__decorate([p.NgModule({imports:[t.SharedModule],declarations:[m.FilterComponent,l.FilterNumericEditorComponent,s.FilterTextEditorComponent,f.FilterExpressionComponent,c.FilterGroupComponent,d.FilterExpressionOperatorsComponent,n.FilterBooleanEditorComponent,a.FilterDateEditorComponent,v.LocalizedMessagesDirective,g.CustomMessagesComponent,o.AriaLabelValueDirective],exports:[m.FilterComponent,l.FilterNumericEditorComponent,s.FilterTextEditorComponent,f.FilterExpressionComponent,c.FilterGroupComponent,d.FilterExpressionOperatorsComponent,n.FilterBooleanEditorComponent,a.FilterDateEditorComponent,v.LocalizedMessagesDirective,g.CustomMessagesComponent,o.AriaLabelValueDirective],providers:[i.LocalizationService,{provide:i.L10N_PREFIX,useValue:"kendo.filter"}]})],h);function h(){}e.FilterModule=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.packageMetadata={name:"@progress/kendo-angular-filter",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1644849909,version:"",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"}},function(e,t){e.exports=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,o=r(6),o=(t.FilterComponent=o.FilterComponent,r(24)),n=(t.FilterModule=o.FilterModule,t);for(i in n)m(i,n[i])}],o={},i.m=r,i.c=o,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},i.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s=27)}}});
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Kendo UI Angular Filter",
4
4
  "author": "Progress",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
- "version": "0.1.2",
6
+ "version": "0.1.4",
7
7
  "main": "dist/npm/index.js",
8
8
  "module": "dist/fesm5/index.js",
9
9
  "es2015": "dist/fesm2015/index.js",
@@ -19,6 +19,7 @@
19
19
  "test:watch": "jest --watch",
20
20
  "test:ci": "ci-angular-test",
21
21
  "e2e:ci": "ci-angular-e2e",
22
+ "e2e": "gulp e2e",
22
23
  "start": "gulp start",
23
24
  "lint": "gulp lint && gulp lint-docs && tsc --noEmit",
24
25
  "api-check": "gulp api-check",