@progress/kendo-angular-filter 0.1.0

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 (94) hide show
  1. package/LICENSE.md +11 -0
  2. package/NOTICE.txt +654 -0
  3. package/README.md +31 -0
  4. package/dist/cdn/js/kendo-angular-filter.js +150 -0
  5. package/dist/cdn/main.js +5 -0
  6. package/dist/es/aria-label.directive.js +30 -0
  7. package/dist/es/editors/boolean-editor.component.js +41 -0
  8. package/dist/es/editors/date-editor.component.js +45 -0
  9. package/dist/es/editors/numeric-editor.component.js +45 -0
  10. package/dist/es/editors/text-editor.component.js +45 -0
  11. package/dist/es/filter-expression-operators.component.js +48 -0
  12. package/dist/es/filter-expression.component.js +121 -0
  13. package/dist/es/filter-group.component.js +69 -0
  14. package/dist/es/filter.component.js +185 -0
  15. package/dist/es/filter.module.js +91 -0
  16. package/dist/es/filter.service.js +84 -0
  17. package/dist/es/index.js +21 -0
  18. package/dist/es/localization/custom-messages.component.js +44 -0
  19. package/dist/es/localization/localized-messages.directive.js +35 -0
  20. package/dist/es/localization/messages.js +166 -0
  21. package/dist/es/main.js +6 -0
  22. package/dist/es/model/filter-expression.js +7 -0
  23. package/dist/es/package-metadata.js +15 -0
  24. package/dist/es/shared.module.js +37 -0
  25. package/dist/es/util.js +129 -0
  26. package/dist/es2015/aria-label.directive.d.ts +15 -0
  27. package/dist/es2015/aria-label.directive.js +29 -0
  28. package/dist/es2015/editors/boolean-editor.component.d.ts +25 -0
  29. package/dist/es2015/editors/boolean-editor.component.js +53 -0
  30. package/dist/es2015/editors/date-editor.component.d.ts +20 -0
  31. package/dist/es2015/editors/date-editor.component.js +56 -0
  32. package/dist/es2015/editors/numeric-editor.component.d.ts +20 -0
  33. package/dist/es2015/editors/numeric-editor.component.js +56 -0
  34. package/dist/es2015/editors/text-editor.component.d.ts +20 -0
  35. package/dist/es2015/editors/text-editor.component.js +52 -0
  36. package/dist/es2015/filter-expression-operators.component.d.ts +24 -0
  37. package/dist/es2015/filter-expression-operators.component.js +59 -0
  38. package/dist/es2015/filter-expression.component.d.ts +40 -0
  39. package/dist/es2015/filter-expression.component.js +160 -0
  40. package/dist/es2015/filter-group.component.d.ts +29 -0
  41. package/dist/es2015/filter-group.component.js +131 -0
  42. package/dist/es2015/filter.component.d.ts +80 -0
  43. package/dist/es2015/filter.component.js +298 -0
  44. package/dist/es2015/filter.module.d.ts +37 -0
  45. package/dist/es2015/filter.module.js +88 -0
  46. package/dist/es2015/filter.service.d.ts +43 -0
  47. package/dist/es2015/filter.service.js +66 -0
  48. package/dist/es2015/index.d.ts +21 -0
  49. package/dist/es2015/index.js +21 -0
  50. package/dist/es2015/index.metadata.json +1 -0
  51. package/dist/es2015/localization/custom-messages.component.d.ts +15 -0
  52. package/dist/es2015/localization/custom-messages.component.js +36 -0
  53. package/dist/es2015/localization/localized-messages.directive.d.ts +13 -0
  54. package/dist/es2015/localization/localized-messages.directive.js +31 -0
  55. package/dist/es2015/localization/messages.d.ts +158 -0
  56. package/dist/es2015/localization/messages.js +160 -0
  57. package/dist/es2015/main.d.ts +7 -0
  58. package/dist/es2015/main.js +6 -0
  59. package/dist/es2015/model/filter-expression.d.ts +60 -0
  60. package/dist/es2015/model/filter-expression.js +7 -0
  61. package/dist/es2015/package-metadata.d.ts +9 -0
  62. package/dist/es2015/package-metadata.js +15 -0
  63. package/dist/es2015/shared.module.d.ts +9 -0
  64. package/dist/es2015/shared.module.js +34 -0
  65. package/dist/es2015/util.d.ts +140 -0
  66. package/dist/es2015/util.js +129 -0
  67. package/dist/fesm2015/index.js +1282 -0
  68. package/dist/fesm5/index.js +1058 -0
  69. package/dist/npm/aria-label.directive.js +32 -0
  70. package/dist/npm/editors/boolean-editor.component.js +43 -0
  71. package/dist/npm/editors/date-editor.component.js +47 -0
  72. package/dist/npm/editors/numeric-editor.component.js +47 -0
  73. package/dist/npm/editors/text-editor.component.js +47 -0
  74. package/dist/npm/filter-expression-operators.component.js +50 -0
  75. package/dist/npm/filter-expression.component.js +123 -0
  76. package/dist/npm/filter-group.component.js +71 -0
  77. package/dist/npm/filter.component.js +187 -0
  78. package/dist/npm/filter.module.js +93 -0
  79. package/dist/npm/filter.service.js +86 -0
  80. package/dist/npm/index.js +37 -0
  81. package/dist/npm/localization/custom-messages.component.js +46 -0
  82. package/dist/npm/localization/localized-messages.directive.js +37 -0
  83. package/dist/npm/localization/messages.js +168 -0
  84. package/dist/npm/main.js +10 -0
  85. package/dist/npm/model/filter-expression.js +9 -0
  86. package/dist/npm/package-metadata.js +17 -0
  87. package/dist/npm/shared.module.js +39 -0
  88. package/dist/npm/util.js +131 -0
  89. package/dist/systemjs/kendo-angular-filter.js +5 -0
  90. package/package.json +158 -0
  91. package/schematics/collection.json +12 -0
  92. package/schematics/ngAdd/index.js +12 -0
  93. package/schematics/ngAdd/index.js.map +1 -0
  94. package/schematics/ngAdd/schema.json +28 -0
@@ -0,0 +1,5 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@angular/core"),require("tslib"),require("@progress/kendo-angular-l10n"),require("@progress/kendo-licensing"),require("@angular/common"),require("@progress/kendo-angular-dropdowns"),require("@progress/kendo-angular-inputs"),require("@progress/kendo-angular-label"),require("@progress/kendo-angular-buttons"),require("@progress/kendo-angular-dateinputs")):"function"==typeof define&&define.amd?define(["@angular/core","tslib","@progress/kendo-angular-l10n","@progress/kendo-licensing","@angular/common","@progress/kendo-angular-dropdowns","@progress/kendo-angular-inputs","@progress/kendo-angular-label","@progress/kendo-angular-buttons","@progress/kendo-angular-dateinputs"],t):"object"==typeof exports?exports.KendoAngularFilter=t(require("@angular/core"),require("tslib"),require("@progress/kendo-angular-l10n"),require("@progress/kendo-licensing"),require("@angular/common"),require("@progress/kendo-angular-dropdowns"),require("@progress/kendo-angular-inputs"),require("@progress/kendo-angular-label"),require("@progress/kendo-angular-buttons"),require("@progress/kendo-angular-dateinputs")):e.KendoAngularFilter=t(e["@angular/core"],e.tslib,e["@progress/kendo-angular-l10n"],e["@progress/kendo-licensing"],e["@angular/common"],e["@progress/kendo-angular-dropdowns"],e["@progress/kendo-angular-inputs"],e["@progress/kendo-angular-label"],e["@progress/kendo-angular-buttons"],e["@progress/kendo-angular-dateinputs"])}(window,(function(e,t,r,o,i,n,a,l,s,u){return function(e){var t={};function r(o){if(t[o])return t[o].exports;var i=t[o]={i:o,l:!1,exports:{}};return e[o].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,o){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(o,i,function(t){return e[t]}.bind(null,i));return o},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=7)}([function(t,r){t.exports=e},function(e,r){e.exports=t},function(e,t){e.exports=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(4);t.localizeOperators=function(e){return function(t){return Object.keys(e).map((function(r){return{text:t.get(r),value:e[r]}}))}};var l=function(){function e(e){this.localization=e,this.value={filters:[],logic:"or"},this.filters=[],this.isEditorDisabled=!1}return Object.defineProperty(e.prototype,"defaultNumericOperators",{get:function(){return t.localizeOperators(a.defaultNumericOperators)(this.localization)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"defaultStringOperators",{get:function(){return t.localizeOperators(a.defaultStringOperators)(this.localization)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"defaultDateOperators",{get:function(){return t.localizeOperators(a.defaultDateOperators)(this.localization)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"logicOperators",{get:function(){return t.localizeOperators(a.logicOperators)(this.localization)},enumerable:!0,configurable:!0}),e.prototype.addFilterGroup=function(e){e.filters.push({logic:"or",filters:[]})},e.prototype.addFilterExpression=function(e){e.filters.push({operator:"eq",value:null,field:null})},e.prototype.remove=function(e,t,r){var o=this;if(r||(r=this.value),e!==r){var i=r.filters.indexOf(e);i>=0&&i===t?r.filters=r.filters.filter((function(t){return t!==e})):r.filters.forEach((function(r){return r.filters&&o.remove(e,t,r)}))}else r.filters=[]},e=o.__decorate([i.Injectable(),o.__metadata("design:paramtypes",[n.LocalizationService])],e)}();t.FilterService=l},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(e,t){return Object.keys(e).find((function(r){return e[r]===t}))},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["string","number","boolean","date"].indexOf(e)>=0}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(3),l=r(4),s=r(0),u=r(8),d=r(9),p=function(){function e(e,t,r){this.filterService=e,this.localization=t,this.cdr=r,this.valueChange=new i.EventEmitter,u.validatePackage(d.packageMetadata),this.direction=t.rtl?"rtl":"ltr"}return Object.defineProperty(e.prototype,"filters",{get:function(){return this.filterService.filters},set:function(e){if(i.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){var t=Object.assign({},e);return t.title||(t.title=t.field),t}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"value",{get:function(){return this.filterService.value},set:function(e){var t=JSON.parse(JSON.stringify(e));this.normalizeValue(t),this.filterService.value=t},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=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(t){var r=t.rtl;e.direction=r?"rtl":"ltr",e.cdr.detectChanges()}))},e.prototype.ngOnDestroy=function(){this.localization.changes.unsubscribe()},e.prototype.getCurrentFilter=function(){return this.value},e.prototype.getCurrentFilterChildren=function(){return this.value.filters},e.prototype.onValueChange=function(){this.valueChange.emit(this.filterService.value)},e.prototype.normalizeFilter=function(e){var t=this.filterService.filters.find((function(t){return t.field===e.field}));if(i.isDevMode()&&!t)throw new Error("There is no user-defined filter with '"+e.field+"' field provided through the [filters] input property.");i.isDevMode()&&"boolean"===t.editor&&!e.value&&!1!==e.value&&console.warn("Provide a value for the boolean '"+e.field+"' user-defined filter as the operator is always set to 'eq'."),"boolean"===t.editor&&(e.operator="eq"),"date"===t.editor&&e.value&&(e.value=new Date(e.value)),e.value||!1===e.value||(e.value=null)},e.prototype.normalizeValue=function(e){var t=this;e.filters.forEach((function(e){e.filters?t.normalizeValue(e):t.normalizeFilter(e)}))},o.__decorate([i.HostBinding("attr.dir"),o.__metadata("design:type",String)],e.prototype,"direction",void 0),o.__decorate([i.Input(),o.__metadata("design:type",Array),o.__metadata("design:paramtypes",[Array])],e.prototype,"filters",null),o.__decorate([i.Input(),o.__metadata("design:type",Object),o.__metadata("design:paramtypes",[Object])],e.prototype,"value",null),o.__decorate([i.Output(),o.__metadata("design:type",i.EventEmitter)],e.prototype,"valueChange",void 0),e=o.__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-addExpression="kendo.filter.addExpression|The text of the Add Expression button"\n addExpression="Add Expression"\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'}),o.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService,s.ChangeDetectorRef])],e)}();t.FilterComponent=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterExpressionOperators",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterExpressionFilters",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"remove",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"addGroup",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"addExpression",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterAndLogic",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterOrLogic",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterEqOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterNotEqOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterIsNullOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterIsNotNullOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterIsEmptyOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterIsNotEmptyOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterStartsWithOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterContainsOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterNotContainsOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterEndsWithOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterGteOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterGtOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterLteOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterLtOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterIsTrue",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterIsFalse",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterBooleanAll",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterAfterOrEqualOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterAfterOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterBeforeOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterBeforeOrEqualOperator",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"editorNumericDecrement",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"editorNumericIncrement",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"editorDateTodayText",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"editorDateToggleText",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterFieldAriaLabel",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterOperatorAriaLabel",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterValueAriaLabel",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterAriaLabel",void 0),o.__decorate([i.Input(),o.__metadata("design:type",String)],t.prototype,"filterToolbarAriaLabel",void 0),t}(r(2).ComponentMessages);t.Messages=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(5);t.FilterComponent=o.FilterComponent;var i=r(10);t.FilterModule=i.FilterModule},function(e,t){e.exports=o},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:1642514456,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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(11),l=r(12),s=r(13),u=r(14),d=r(15),p=r(16),f=r(17),c=r(18),g=r(5),m=r(19),v=r(20),h=r(21),_=function(){function e(){}return e=o.__decorate([i.NgModule({imports:[h.SharedModule],declarations:[g.FilterComponent,u.FilterNumericEditorComponent,d.FilterTextEditorComponent,f.FilterExpressionComponent,c.FilterGroupComponent,p.FilterExpressionOperatorsComponent,l.FilterBooleanEditorComponent,s.FilterDateEditorComponent,v.LocalizedMessagesDirective,m.CustomMessagesComponent,a.AriaLabelValueDirective],exports:[g.FilterComponent,u.FilterNumericEditorComponent,d.FilterTextEditorComponent,f.FilterExpressionComponent,c.FilterGroupComponent,p.FilterExpressionOperatorsComponent,l.FilterBooleanEditorComponent,s.FilterDateEditorComponent,v.LocalizedMessagesDirective,m.CustomMessagesComponent,a.AriaLabelValueDirective],providers:[n.LocalizationService,{provide:n.L10N_PREFIX,useValue:"kendo.filter"}]})],e)}();t.FilterModule=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=function(){function e(e,t){this.hostElement=e,this.renderer=t}return e.prototype.ngOnChanges=function(){var e=this.hostElement.nativeElement.querySelector("input")||this.hostElement.nativeElement;this.renderer.setAttribute(e,"aria-label",this.ariaLabel)},o.__decorate([i.Input("kendoAriaLabelValue"),o.__metadata("design:type",String)],e.prototype,"ariaLabel",void 0),e=o.__decorate([i.Directive({selector:"[kendoAriaLabelValue]"}),o.__metadata("design:paramtypes",[i.ElementRef,i.Renderer2])],e)}();t.AriaLabelValueDirective=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=function(){function e(e){this.localization=e,this.valueChange=new i.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}}return e.prototype.messageFor=function(e){return this.localization.get(e)},o.__decorate([i.Input(),o.__metadata("design:type",Object)],e.prototype,"currentItem",void 0),o.__decorate([i.Output(),o.__metadata("design:type",i.EventEmitter)],e.prototype,"valueChange",void 0),e=o.__decorate([i.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 '}),o.__metadata("design:paramtypes",[n.LocalizationService])],e)}();t.FilterBooleanEditorComponent=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(3),l=function(){function e(e,t){this.localization=e,this.filterService=t,this.valueChange=new i.EventEmitter}return e.prototype.messageFor=function(e){return this.localization.get(e)},e.prototype.isDisabled=function(){var e=this.filterService.isEditorDisabled;return e&&(this.currentItem.value=null),e},o.__decorate([i.Input(),o.__metadata("design:type",Object)],e.prototype,"currentItem",void 0),o.__decorate([i.Output(),o.__metadata("design:type",i.EventEmitter)],e.prototype,"valueChange",void 0),e=o.__decorate([i.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 '}),o.__metadata("design:paramtypes",[n.LocalizationService,a.FilterService])],e)}();t.FilterDateEditorComponent=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(3),l=function(){function e(e,t){this.localization=e,this.filterService=t,this.valueChange=new i.EventEmitter}return e.prototype.messageFor=function(e){return this.localization.get(e)},e.prototype.isDisabled=function(){var e=this.filterService.isEditorDisabled;return e&&(this.currentItem.value=null),e},o.__decorate([i.Input(),o.__metadata("design:type",Object)],e.prototype,"currentItem",void 0),o.__decorate([i.Output(),o.__metadata("design:type",i.EventEmitter)],e.prototype,"valueChange",void 0),e=o.__decorate([i.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 '}),o.__metadata("design:paramtypes",[n.LocalizationService,a.FilterService])],e)}();t.FilterNumericEditorComponent=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(3),l=function(){function e(e,t){this.localization=e,this.filterService=t,this.valueChange=new i.EventEmitter}return e.prototype.isDisabled=function(){var e=this.filterService.isEditorDisabled;return e&&(this.currentItem.value=null),e},e.prototype.messageFor=function(e){return this.localization.get(e)},o.__decorate([i.Input(),o.__metadata("design:type",Object)],e.prototype,"currentItem",void 0),o.__decorate([i.Output(),o.__metadata("design:type",i.EventEmitter)],e.prototype,"valueChange",void 0),e=o.__decorate([i.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 '}),o.__metadata("design:paramtypes",[n.LocalizationService,a.FilterService])],e)}();t.FilterTextEditorComponent=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(3),l=r(4),s=function(){function e(e,t){this.filterService=e,this.localization=t,this.valueChange=new i.EventEmitter,this.operators=[]}return e.prototype.messageFor=function(e){return this.localization.get(e)},e.prototype.operatorValueChange=function(e){this.valueChange.emit(),this.filterService.isEditorDisabled=l.nullOperators.indexOf(e)>=0},o.__decorate([i.Input(),o.__metadata("design:type",Object)],e.prototype,"currentItem",void 0),o.__decorate([i.Output(),o.__metadata("design:type",i.EventEmitter)],e.prototype,"valueChange",void 0),o.__decorate([i.Input(),o.__metadata("design:type",Array)],e.prototype,"operators",void 0),e=o.__decorate([i.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 '}),o.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService])],e)}();t.FilterExpressionOperatorsComponent=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(3),l=r(4),s=function(){function e(e,t){this.filterService=e,this.localization=t,this.valueChange=new i.EventEmitter,this.operators=[],this.filters=[],this.isBoolean=!1,this.isEditorDisabled=!1}return e.prototype.ngOnInit=function(){if(this.filters=this.filterService.filters,this.currentItem.field){var e=this.getFilterExpressionByField(this.currentItem.field);this.setOperators(e)}if(!this.currentItem.field){this.currentItem.field=this.filterService.filters[0].field;var t=this.getFilterExpressionByField(this.filterService.filters[0].field);this.setOperators(t)}},e.prototype.normalizeOperators=function(e,t){for(var r=[],o=0;o<t.length;o++)l.isFilterEditor(e)&&r.push({value:t[o],text:this.localization.get(l.getKeyByValue(l.defaultOperators[e],t[o]))});return r},e.prototype.messageFor=function(e){return this.localization.get(e)},e.prototype.getFilterExpressionByField=function(e){var t=this.filterService.filters.find((function(t){return t.field===e}));return t||null},e.prototype.filterValueChange=function(e){this.currentItem.value=null,this.currentItem.field=e;var t=this.getFilterExpressionByField(this.currentItem.field);this.setOperators(t),this.valueChange.emit()},e.prototype.getDefaultOperators=function(e){switch(e){case"string":return this.filterService.defaultStringOperators;case"number":return this.filterService.defaultNumericOperators;case"date":return this.filterService.defaultDateOperators}},e.prototype.getEditorType=function(){var e=this;return this.filterService.filters.find((function(t){return t.field===e.currentItem.field})).editor},e.prototype.removeFilterExpression=function(){this.filterService.remove(this.currentItem,this.index),this.valueChange.emit()},e.prototype.setOperators=function(e){if(this.isBoolean="boolean"===e.editor,!this.isBoolean)if(e.operators){var t=this.normalizeOperators(e.editor,e.operators);this.operators=t,this.currentItem.operator=t[0].value}else this.operators=this.getDefaultOperators(e.editor),this.currentItem.operator=this.operators[0].value},o.__decorate([i.Input(),o.__metadata("design:type",Number)],e.prototype,"index",void 0),o.__decorate([i.Input(),o.__metadata("design:type",Object)],e.prototype,"currentItem",void 0),o.__decorate([i.Output(),o.__metadata("design:type",i.EventEmitter)],e.prototype,"valueChange",void 0),e=o.__decorate([i.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 look="flat"\n [title]="messageFor(\'remove\')"\n (click)="removeFilterExpression()">\n </button>\n </div>\n </div>\n </div>\n '}),o.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService])],e)}();t.FilterExpressionComponent=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(3),l=function(){function e(e,t){this.filterService=e,this.localization=t,this.index=0,this.currentItem={logic:"or",filters:[]},this.valueChange=new i.EventEmitter,this.logicOperators=[]}return e.prototype.ngOnInit=function(){this.logicOperators=this.filterService.logicOperators},e.prototype.messageFor=function(e){return this.localization.get(e)},e.prototype.selectedChange=function(e){this.currentItem.logic!==e&&(this.currentItem.logic=e,this.valueChange.emit())},e.prototype.addFilterExpression=function(){this.filterService.addFilterExpression(this.currentItem),this.valueChange.emit()},e.prototype.addFilterGroup=function(){this.filterService.addFilterGroup(this.currentItem),this.valueChange.emit()},e.prototype.removeFilterGroup=function(){this.filterService.remove(this.currentItem,this.index),this.valueChange.emit()},o.__decorate([i.Input(),o.__metadata("design:type",Number)],e.prototype,"index",void 0),o.__decorate([i.Input(),o.__metadata("design:type",Object)],e.prototype,"currentItem",void 0),o.__decorate([i.Output(),o.__metadata("design:type",i.EventEmitter)],e.prototype,"valueChange",void 0),e=o.__decorate([i.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(\'addExpression\')"\n icon="filter-add-expression"\n (click)="addFilterExpression()">\n {{messageFor(\'addExpression\')}}\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 look="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 '}),o.__metadata("design:paramtypes",[a.FilterService,n.LocalizationService])],e)}();t.FilterGroupComponent=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(6),l=function(e){function t(t){var r=e.call(this)||this;return r.service=t,r}var r;return o.__extends(t,e),r=t,Object.defineProperty(t.prototype,"override",{get:function(){return!0},enumerable:!0,configurable:!0}),t=r=o.__decorate([i.Component({providers:[{provide:a.Messages,useExisting:i.forwardRef((function(){return r}))}],selector:"kendo-filter-messages",template:""}),o.__metadata("design:paramtypes",[n.LocalizationService])],t)}(a.Messages);t.CustomMessagesComponent=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(0),n=r(2),a=r(6),l=function(e){function t(t){var r=e.call(this)||this;return r.service=t,r}var r;return o.__extends(t,e),r=t,t=r=o.__decorate([i.Directive({providers:[{provide:a.Messages,useExisting:i.forwardRef((function(){return r}))}],selector:"[kendoFilterLocalizedMessages]"}),o.__metadata("design:paramtypes",[n.LocalizationService])],t)}(a.Messages);t.LocalizedMessagesDirective=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=r(1),i=r(22),n=r(23),a=r(24),l=r(25),s=r(0),u=r(26),d=r(3),p=r(27),f=[i.CommonModule,a.InputsModule,l.LabelModule,n.DropDownsModule,u.ButtonsModule,p.DateInputsModule],c=function(){function e(){}return e=o.__decorate([s.NgModule({imports:f.slice(),exports:f.slice(),providers:[d.FilterService]})],e)}();t.SharedModule=c},function(e,t){e.exports=i},function(e,t){e.exports=n},function(e,t){e.exports=a},function(e,t){e.exports=l},function(e,t){e.exports=s},function(e,t){e.exports=u}])}));
@@ -0,0 +1,30 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Directive, ElementRef, Input, Renderer2 } from '@angular/core';
7
+ /**
8
+ * @hidden
9
+ */
10
+ var AriaLabelValueDirective = /** @class */ (function () {
11
+ function AriaLabelValueDirective(hostElement, renderer) {
12
+ this.hostElement = hostElement;
13
+ this.renderer = renderer;
14
+ }
15
+ AriaLabelValueDirective.prototype.ngOnChanges = function () {
16
+ var target = this.hostElement.nativeElement.querySelector('input') || this.hostElement.nativeElement;
17
+ this.renderer.setAttribute(target, 'aria-label', this.ariaLabel);
18
+ };
19
+ tslib_1.__decorate([
20
+ Input('kendoAriaLabelValue'),
21
+ tslib_1.__metadata("design:type", String)
22
+ ], AriaLabelValueDirective.prototype, "ariaLabel", void 0);
23
+ AriaLabelValueDirective = tslib_1.__decorate([
24
+ Directive({ selector: '[kendoAriaLabelValue]' }),
25
+ tslib_1.__metadata("design:paramtypes", [ElementRef,
26
+ Renderer2])
27
+ ], AriaLabelValueDirective);
28
+ return AriaLabelValueDirective;
29
+ }());
30
+ export { AriaLabelValueDirective };
@@ -0,0 +1,41 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
7
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
8
+ /**
9
+ * @hidden
10
+ */
11
+ var FilterBooleanEditorComponent = /** @class */ (function () {
12
+ function FilterBooleanEditorComponent(localization) {
13
+ this.localization = localization;
14
+ this.valueChange = new EventEmitter();
15
+ this.items = [
16
+ { text: this.localization.get("filterIsTrue"), value: true },
17
+ { text: this.localization.get("filterIsFalse"), value: false }
18
+ ];
19
+ this.defaultItem = { text: this.localization.get("filterBooleanAll"), value: null };
20
+ }
21
+ FilterBooleanEditorComponent.prototype.messageFor = function (key) {
22
+ return this.localization.get(key);
23
+ };
24
+ tslib_1.__decorate([
25
+ Input(),
26
+ tslib_1.__metadata("design:type", Object)
27
+ ], FilterBooleanEditorComponent.prototype, "currentItem", void 0);
28
+ tslib_1.__decorate([
29
+ Output(),
30
+ tslib_1.__metadata("design:type", EventEmitter)
31
+ ], FilterBooleanEditorComponent.prototype, "valueChange", void 0);
32
+ FilterBooleanEditorComponent = tslib_1.__decorate([
33
+ Component({
34
+ selector: 'kendo-filter-boolean-editor',
35
+ 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 "
36
+ }),
37
+ tslib_1.__metadata("design:paramtypes", [LocalizationService])
38
+ ], FilterBooleanEditorComponent);
39
+ return FilterBooleanEditorComponent;
40
+ }());
41
+ export { FilterBooleanEditorComponent };
@@ -0,0 +1,45 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
7
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
8
+ import { FilterService } from '../filter.service';
9
+ /**
10
+ * @hidden
11
+ */
12
+ var FilterDateEditorComponent = /** @class */ (function () {
13
+ function FilterDateEditorComponent(localization, filterService) {
14
+ this.localization = localization;
15
+ this.filterService = filterService;
16
+ this.valueChange = new EventEmitter();
17
+ }
18
+ FilterDateEditorComponent.prototype.messageFor = function (key) {
19
+ return this.localization.get(key);
20
+ };
21
+ FilterDateEditorComponent.prototype.isDisabled = function () {
22
+ var isDisabled = this.filterService.isEditorDisabled;
23
+ if (isDisabled) {
24
+ this.currentItem.value = null;
25
+ }
26
+ return isDisabled;
27
+ };
28
+ tslib_1.__decorate([
29
+ Input(),
30
+ tslib_1.__metadata("design:type", Object)
31
+ ], FilterDateEditorComponent.prototype, "currentItem", void 0);
32
+ tslib_1.__decorate([
33
+ Output(),
34
+ tslib_1.__metadata("design:type", EventEmitter)
35
+ ], FilterDateEditorComponent.prototype, "valueChange", void 0);
36
+ FilterDateEditorComponent = tslib_1.__decorate([
37
+ Component({
38
+ selector: 'kendo-filter-date-editor',
39
+ 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 "
40
+ }),
41
+ tslib_1.__metadata("design:paramtypes", [LocalizationService, FilterService])
42
+ ], FilterDateEditorComponent);
43
+ return FilterDateEditorComponent;
44
+ }());
45
+ export { FilterDateEditorComponent };
@@ -0,0 +1,45 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
7
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
8
+ import { FilterService } from '../filter.service';
9
+ /**
10
+ * @hidden
11
+ */
12
+ var FilterNumericEditorComponent = /** @class */ (function () {
13
+ function FilterNumericEditorComponent(localization, filterService) {
14
+ this.localization = localization;
15
+ this.filterService = filterService;
16
+ this.valueChange = new EventEmitter();
17
+ }
18
+ FilterNumericEditorComponent.prototype.messageFor = function (key) {
19
+ return this.localization.get(key);
20
+ };
21
+ FilterNumericEditorComponent.prototype.isDisabled = function () {
22
+ var isDisabled = this.filterService.isEditorDisabled;
23
+ if (isDisabled) {
24
+ this.currentItem.value = null;
25
+ }
26
+ return isDisabled;
27
+ };
28
+ tslib_1.__decorate([
29
+ Input(),
30
+ tslib_1.__metadata("design:type", Object)
31
+ ], FilterNumericEditorComponent.prototype, "currentItem", void 0);
32
+ tslib_1.__decorate([
33
+ Output(),
34
+ tslib_1.__metadata("design:type", EventEmitter)
35
+ ], FilterNumericEditorComponent.prototype, "valueChange", void 0);
36
+ FilterNumericEditorComponent = tslib_1.__decorate([
37
+ Component({
38
+ selector: 'kendo-filter-numeric-editor',
39
+ 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 "
40
+ }),
41
+ tslib_1.__metadata("design:paramtypes", [LocalizationService, FilterService])
42
+ ], FilterNumericEditorComponent);
43
+ return FilterNumericEditorComponent;
44
+ }());
45
+ export { FilterNumericEditorComponent };
@@ -0,0 +1,45 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
7
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
8
+ import { FilterService } from '../filter.service';
9
+ /**
10
+ * @hidden
11
+ */
12
+ var FilterTextEditorComponent = /** @class */ (function () {
13
+ function FilterTextEditorComponent(localization, filterService) {
14
+ this.localization = localization;
15
+ this.filterService = filterService;
16
+ this.valueChange = new EventEmitter();
17
+ }
18
+ FilterTextEditorComponent.prototype.isDisabled = function () {
19
+ var isDisabled = this.filterService.isEditorDisabled;
20
+ if (isDisabled) {
21
+ this.currentItem.value = null;
22
+ }
23
+ return isDisabled;
24
+ };
25
+ FilterTextEditorComponent.prototype.messageFor = function (key) {
26
+ return this.localization.get(key);
27
+ };
28
+ tslib_1.__decorate([
29
+ Input(),
30
+ tslib_1.__metadata("design:type", Object)
31
+ ], FilterTextEditorComponent.prototype, "currentItem", void 0);
32
+ tslib_1.__decorate([
33
+ Output(),
34
+ tslib_1.__metadata("design:type", EventEmitter)
35
+ ], FilterTextEditorComponent.prototype, "valueChange", void 0);
36
+ FilterTextEditorComponent = tslib_1.__decorate([
37
+ Component({
38
+ selector: 'kendo-filter-text-editor',
39
+ 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 "
40
+ }),
41
+ tslib_1.__metadata("design:paramtypes", [LocalizationService, FilterService])
42
+ ], FilterTextEditorComponent);
43
+ return FilterTextEditorComponent;
44
+ }());
45
+ export { FilterTextEditorComponent };
@@ -0,0 +1,48 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
7
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
8
+ import { FilterService } from './filter.service';
9
+ import { nullOperators } from './util';
10
+ /**
11
+ * @hidden
12
+ */
13
+ var FilterExpressionOperatorsComponent = /** @class */ (function () {
14
+ function FilterExpressionOperatorsComponent(filterService, localization) {
15
+ this.filterService = filterService;
16
+ this.localization = localization;
17
+ this.valueChange = new EventEmitter();
18
+ this.operators = [];
19
+ }
20
+ FilterExpressionOperatorsComponent.prototype.messageFor = function (key) {
21
+ return this.localization.get(key);
22
+ };
23
+ FilterExpressionOperatorsComponent.prototype.operatorValueChange = function (value) {
24
+ this.valueChange.emit();
25
+ this.filterService.isEditorDisabled = nullOperators.indexOf(value) >= 0;
26
+ };
27
+ tslib_1.__decorate([
28
+ Input(),
29
+ tslib_1.__metadata("design:type", Object)
30
+ ], FilterExpressionOperatorsComponent.prototype, "currentItem", void 0);
31
+ tslib_1.__decorate([
32
+ Output(),
33
+ tslib_1.__metadata("design:type", EventEmitter)
34
+ ], FilterExpressionOperatorsComponent.prototype, "valueChange", void 0);
35
+ tslib_1.__decorate([
36
+ Input(),
37
+ tslib_1.__metadata("design:type", Array)
38
+ ], FilterExpressionOperatorsComponent.prototype, "operators", void 0);
39
+ FilterExpressionOperatorsComponent = tslib_1.__decorate([
40
+ Component({
41
+ selector: 'kendo-filter-expression-operators',
42
+ 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 "
43
+ }),
44
+ tslib_1.__metadata("design:paramtypes", [FilterService, LocalizationService])
45
+ ], FilterExpressionOperatorsComponent);
46
+ return FilterExpressionOperatorsComponent;
47
+ }());
48
+ export { FilterExpressionOperatorsComponent };
@@ -0,0 +1,121 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
7
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
8
+ import { FilterService } from './filter.service';
9
+ import { defaultOperators, getKeyByValue, isFilterEditor } from './util';
10
+ /**
11
+ * @hidden
12
+ */
13
+ var FilterExpressionComponent = /** @class */ (function () {
14
+ function FilterExpressionComponent(filterService, localization) {
15
+ this.filterService = filterService;
16
+ this.localization = localization;
17
+ this.valueChange = new EventEmitter();
18
+ this.operators = [];
19
+ this.filters = [];
20
+ this.isBoolean = false;
21
+ this.isEditorDisabled = false;
22
+ }
23
+ FilterExpressionComponent.prototype.ngOnInit = function () {
24
+ this.filters = this.filterService.filters;
25
+ if (this.currentItem.field) {
26
+ var foundFilter = this.getFilterExpressionByField(this.currentItem.field);
27
+ this.setOperators(foundFilter);
28
+ }
29
+ if (!this.currentItem.field) {
30
+ this.currentItem.field = this.filterService.filters[0].field;
31
+ var defaultFilter = this.getFilterExpressionByField(this.filterService.filters[0].field);
32
+ this.setOperators(defaultFilter);
33
+ }
34
+ };
35
+ FilterExpressionComponent.prototype.normalizeOperators = function (filterEditor, operators) {
36
+ var result = [];
37
+ for (var j = 0; j < operators.length; j++) {
38
+ if (isFilterEditor(filterEditor)) {
39
+ result.push({
40
+ value: operators[j],
41
+ text: this.localization.get(getKeyByValue(defaultOperators[filterEditor], operators[j]))
42
+ });
43
+ }
44
+ }
45
+ return result;
46
+ };
47
+ FilterExpressionComponent.prototype.messageFor = function (key) {
48
+ return this.localization.get(key);
49
+ };
50
+ FilterExpressionComponent.prototype.getFilterExpressionByField = function (name) {
51
+ var foundFilter = this.filterService.filters.find(function (filter) { return filter.field === name; });
52
+ if (foundFilter) {
53
+ return foundFilter;
54
+ }
55
+ return null;
56
+ };
57
+ FilterExpressionComponent.prototype.filterValueChange = function (value) {
58
+ this.currentItem.value = null;
59
+ this.currentItem.field = value;
60
+ var foundFilter = this.getFilterExpressionByField(this.currentItem.field);
61
+ this.setOperators(foundFilter);
62
+ this.valueChange.emit();
63
+ };
64
+ FilterExpressionComponent.prototype.getDefaultOperators = function (operatorsType) {
65
+ switch (operatorsType) {
66
+ case 'string':
67
+ return this.filterService.defaultStringOperators;
68
+ case 'number':
69
+ return this.filterService.defaultNumericOperators;
70
+ case 'date':
71
+ return this.filterService.defaultDateOperators;
72
+ default:
73
+ break;
74
+ }
75
+ };
76
+ FilterExpressionComponent.prototype.getEditorType = function () {
77
+ var _this = this;
78
+ var item = this.filterService.filters.find(function (filterExpression) { return filterExpression.field === _this.currentItem.field; });
79
+ return item.editor;
80
+ };
81
+ FilterExpressionComponent.prototype.removeFilterExpression = function () {
82
+ this.filterService.remove(this.currentItem, this.index);
83
+ this.valueChange.emit();
84
+ };
85
+ FilterExpressionComponent.prototype.setOperators = function (filter) {
86
+ this.isBoolean = filter.editor === 'boolean';
87
+ if (this.isBoolean) {
88
+ return;
89
+ }
90
+ if (filter.operators) {
91
+ var localizedOperators = this.normalizeOperators(filter.editor, filter.operators);
92
+ this.operators = localizedOperators;
93
+ this.currentItem.operator = localizedOperators[0].value;
94
+ }
95
+ else {
96
+ this.operators = this.getDefaultOperators(filter.editor);
97
+ this.currentItem.operator = this.operators[0].value;
98
+ }
99
+ };
100
+ tslib_1.__decorate([
101
+ Input(),
102
+ tslib_1.__metadata("design:type", Number)
103
+ ], FilterExpressionComponent.prototype, "index", void 0);
104
+ tslib_1.__decorate([
105
+ Input(),
106
+ tslib_1.__metadata("design:type", Object)
107
+ ], FilterExpressionComponent.prototype, "currentItem", void 0);
108
+ tslib_1.__decorate([
109
+ Output(),
110
+ tslib_1.__metadata("design:type", EventEmitter)
111
+ ], FilterExpressionComponent.prototype, "valueChange", void 0);
112
+ FilterExpressionComponent = tslib_1.__decorate([
113
+ Component({
114
+ selector: 'kendo-filter-expression',
115
+ 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 look=\"flat\"\n [title]=\"messageFor('remove')\"\n (click)=\"removeFilterExpression()\">\n </button>\n </div>\n </div>\n </div>\n "
116
+ }),
117
+ tslib_1.__metadata("design:paramtypes", [FilterService, LocalizationService])
118
+ ], FilterExpressionComponent);
119
+ return FilterExpressionComponent;
120
+ }());
121
+ export { FilterExpressionComponent };
@@ -0,0 +1,69 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
7
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
8
+ import { FilterService } from './filter.service';
9
+ /**
10
+ * @hidden
11
+ */
12
+ var FilterGroupComponent = /** @class */ (function () {
13
+ function FilterGroupComponent(filterService, localization) {
14
+ this.filterService = filterService;
15
+ this.localization = localization;
16
+ this.index = 0;
17
+ this.currentItem = {
18
+ logic: 'or',
19
+ filters: []
20
+ };
21
+ this.valueChange = new EventEmitter();
22
+ this.logicOperators = [];
23
+ }
24
+ FilterGroupComponent.prototype.ngOnInit = function () {
25
+ this.logicOperators = this.filterService.logicOperators;
26
+ };
27
+ FilterGroupComponent.prototype.messageFor = function (key) {
28
+ return this.localization.get(key);
29
+ };
30
+ FilterGroupComponent.prototype.selectedChange = function (logicOperator) {
31
+ if (this.currentItem.logic !== logicOperator) {
32
+ this.currentItem.logic = logicOperator;
33
+ this.valueChange.emit();
34
+ }
35
+ };
36
+ FilterGroupComponent.prototype.addFilterExpression = function () {
37
+ this.filterService.addFilterExpression(this.currentItem);
38
+ this.valueChange.emit();
39
+ };
40
+ FilterGroupComponent.prototype.addFilterGroup = function () {
41
+ this.filterService.addFilterGroup(this.currentItem);
42
+ this.valueChange.emit();
43
+ };
44
+ FilterGroupComponent.prototype.removeFilterGroup = function () {
45
+ this.filterService.remove(this.currentItem, this.index);
46
+ this.valueChange.emit();
47
+ };
48
+ tslib_1.__decorate([
49
+ Input(),
50
+ tslib_1.__metadata("design:type", Number)
51
+ ], FilterGroupComponent.prototype, "index", void 0);
52
+ tslib_1.__decorate([
53
+ Input(),
54
+ tslib_1.__metadata("design:type", Object)
55
+ ], FilterGroupComponent.prototype, "currentItem", void 0);
56
+ tslib_1.__decorate([
57
+ Output(),
58
+ tslib_1.__metadata("design:type", EventEmitter)
59
+ ], FilterGroupComponent.prototype, "valueChange", void 0);
60
+ FilterGroupComponent = tslib_1.__decorate([
61
+ Component({
62
+ selector: 'kendo-filter-group',
63
+ 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('addExpression')\"\n icon=\"filter-add-expression\"\n (click)=\"addFilterExpression()\">\n {{messageFor('addExpression')}}\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 look=\"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 "
64
+ }),
65
+ tslib_1.__metadata("design:paramtypes", [FilterService, LocalizationService])
66
+ ], FilterGroupComponent);
67
+ return FilterGroupComponent;
68
+ }());
69
+ export { FilterGroupComponent };