diff --git a/README.md b/README.md
index fe58c129f..2459af774 100644
--- a/README.md
+++ b/README.md
@@ -33,6 +33,7 @@ This is a work in progress, but so far here are some of the features that `angul
- input text also support operators at the beginning of the input text:
- `<`, `<=`, `>`, `>=`, `<>`, `!=`, `==`, `*`
- `*` can be used for startsWith and endsWith
+- Grouping & Aggregators
- Support all the SlickGrid [Controls](https://github.com/6pac/SlickGrid/tree/master/controls) and [Plugins](https://github.com/6pac/SlickGrid/tree/master/plugins)
- Row(s) Selection
- Server side (backend) Services (filtering, sorting, pagination)
@@ -50,13 +51,10 @@ This is a work in progress, but so far here are some of the features that `angul
- support Unicode as well, even unicorn emoji shows up in the export and it even works with IE11.
- ... more to come
-## Missing features (planned items, not necessarily in order of execution)
-The following are SlickGrid features which are not yet included in this library but will be in the eventual future.
+## Missing features
+What if `Angular-Slickgrid` is missing feature(s) versus the original `SlickGrid`?
-- Grouping
-
-**NOTE**
-What if `Angular-Slickgrid` is missing feature(s) versus the original `SlickGrid`? Fear not and directly use the `SlickGrid` and `DataView` objects that are expose from the start through Event Emitters. For more info continue reading on [Wiki - SlickGrid & DataView objects](/ghiscoding/Angular-Slickgrid/wiki/SlickGrid-&-DataView-Objects) and [Wiki - Grid & DataView Events](https://github.com/ghiscoding/Angular-Slickgrid/wiki/Grid-&-DataView-Events)
+Fear not and directly use the `SlickGrid` and `DataView` objects that are expose from the start through Event Emitters. For more info continue reading on [Wiki - SlickGrid & DataView objects](/ghiscoding/Angular-Slickgrid/wiki/SlickGrid-&-DataView-Objects) and [Wiki - Grid & DataView Events](https://github.com/ghiscoding/Angular-Slickgrid/wiki/Grid-&-DataView-Events)
### License
[MIT License](LICENSE)
@@ -82,4 +80,4 @@ Screenshots from the demo app with the `Bootstrap` theme (that is the only avail
### Slickgrid Example with Server Side (Filter/Sort/Pagination)
-![Slickgrid Server Side](/screenshots/pagination.png)
\ No newline at end of file
+![Slickgrid Server Side](/screenshots/pagination.png)
diff --git a/dist/README.md b/dist/README.md
index fe58c129f..2459af774 100644
--- a/dist/README.md
+++ b/dist/README.md
@@ -33,6 +33,7 @@ This is a work in progress, but so far here are some of the features that `angul
- input text also support operators at the beginning of the input text:
- `<`, `<=`, `>`, `>=`, `<>`, `!=`, `==`, `*`
- `*` can be used for startsWith and endsWith
+- Grouping & Aggregators
- Support all the SlickGrid [Controls](https://github.com/6pac/SlickGrid/tree/master/controls) and [Plugins](https://github.com/6pac/SlickGrid/tree/master/plugins)
- Row(s) Selection
- Server side (backend) Services (filtering, sorting, pagination)
@@ -50,13 +51,10 @@ This is a work in progress, but so far here are some of the features that `angul
- support Unicode as well, even unicorn emoji shows up in the export and it even works with IE11.
- ... more to come
-## Missing features (planned items, not necessarily in order of execution)
-The following are SlickGrid features which are not yet included in this library but will be in the eventual future.
+## Missing features
+What if `Angular-Slickgrid` is missing feature(s) versus the original `SlickGrid`?
-- Grouping
-
-**NOTE**
-What if `Angular-Slickgrid` is missing feature(s) versus the original `SlickGrid`? Fear not and directly use the `SlickGrid` and `DataView` objects that are expose from the start through Event Emitters. For more info continue reading on [Wiki - SlickGrid & DataView objects](/ghiscoding/Angular-Slickgrid/wiki/SlickGrid-&-DataView-Objects) and [Wiki - Grid & DataView Events](https://github.com/ghiscoding/Angular-Slickgrid/wiki/Grid-&-DataView-Events)
+Fear not and directly use the `SlickGrid` and `DataView` objects that are expose from the start through Event Emitters. For more info continue reading on [Wiki - SlickGrid & DataView objects](/ghiscoding/Angular-Slickgrid/wiki/SlickGrid-&-DataView-Objects) and [Wiki - Grid & DataView Events](https://github.com/ghiscoding/Angular-Slickgrid/wiki/Grid-&-DataView-Events)
### License
[MIT License](LICENSE)
@@ -82,4 +80,4 @@ Screenshots from the demo app with the `Bootstrap` theme (that is the only avail
### Slickgrid Example with Server Side (Filter/Sort/Pagination)
-![Slickgrid Server Side](/screenshots/pagination.png)
\ No newline at end of file
+![Slickgrid Server Side](/screenshots/pagination.png)
diff --git a/dist/angular-slickgrid.d.ts b/dist/angular-slickgrid.d.ts
index 4552784f9..6b6513e79 100644
--- a/dist/angular-slickgrid.d.ts
+++ b/dist/angular-slickgrid.d.ts
@@ -2,60 +2,60 @@
* Generated bundle index. Do not edit.
*/
export * from './public_api';
-export { CheckboxEditor as ɵa } from './src/app/modules/angular-slickgrid/editors/checkboxEditor';
-export { DateEditor as ɵb } from './src/app/modules/angular-slickgrid/editors/dateEditor';
-export { FloatEditor as ɵc } from './src/app/modules/angular-slickgrid/editors/floatEditor';
-export { IntegerEditor as ɵd } from './src/app/modules/angular-slickgrid/editors/integerEditor';
-export { LongTextEditor as ɵe } from './src/app/modules/angular-slickgrid/editors/longTextEditor';
-export { MultipleSelectEditor as ɵf } from './src/app/modules/angular-slickgrid/editors/multipleSelectEditor';
-export { SingleSelectEditor as ɵg } from './src/app/modules/angular-slickgrid/editors/singleSelectEditor';
-export { TextEditor as ɵh } from './src/app/modules/angular-slickgrid/editors/textEditor';
-export { booleanFilterCondition as ɵj } from './src/app/modules/angular-slickgrid/filter-conditions/booleanFilterCondition';
-export { collectionSearchFilterCondition as ɵk } from './src/app/modules/angular-slickgrid/filter-conditions/collectionSearchFilterCondition';
-export { dateFilterCondition as ɵl } from './src/app/modules/angular-slickgrid/filter-conditions/dateFilterCondition';
-export { dateIsoFilterCondition as ɵm } from './src/app/modules/angular-slickgrid/filter-conditions/dateIsoFilterCondition';
-export { dateUsFilterCondition as ɵo } from './src/app/modules/angular-slickgrid/filter-conditions/dateUsFilterCondition';
-export { dateUsShortFilterCondition as ɵp } from './src/app/modules/angular-slickgrid/filter-conditions/dateUsShortFilterCondition';
-export { dateUtcFilterCondition as ɵn } from './src/app/modules/angular-slickgrid/filter-conditions/dateUtcFilterCondition';
-export { executeMappedCondition as ɵi } from './src/app/modules/angular-slickgrid/filter-conditions/executeMappedCondition';
-export { testFilterCondition as ɵs } from './src/app/modules/angular-slickgrid/filter-conditions/filterUtilities';
-export { numberFilterCondition as ɵq } from './src/app/modules/angular-slickgrid/filter-conditions/numberFilterCondition';
-export { stringFilterCondition as ɵr } from './src/app/modules/angular-slickgrid/filter-conditions/stringFilterCondition';
-export { CompoundDateFilter as ɵx } from './src/app/modules/angular-slickgrid/filters/compoundDateFilter';
-export { CompoundInputFilter as ɵy } from './src/app/modules/angular-slickgrid/filters/compoundInputFilter';
-export { InputFilter as ɵt } from './src/app/modules/angular-slickgrid/filters/inputFilter';
-export { MultipleSelectFilter as ɵu } from './src/app/modules/angular-slickgrid/filters/multipleSelectFilter';
-export { SelectFilter as ɵw } from './src/app/modules/angular-slickgrid/filters/selectFilter';
-export { SingleSelectFilter as ɵv } from './src/app/modules/angular-slickgrid/filters/singleSelectFilter';
-export { arrayToCsvFormatter as ɵz } from './src/app/modules/angular-slickgrid/formatters/arrayToCsvFormatter';
-export { checkboxFormatter as ɵba } from './src/app/modules/angular-slickgrid/formatters/checkboxFormatter';
-export { checkmarkFormatter as ɵbb } from './src/app/modules/angular-slickgrid/formatters/checkmarkFormatter';
-export { collectionFormatter as ɵbd } from './src/app/modules/angular-slickgrid/formatters/collectionFormatter';
-export { complexObjectFormatter as ɵbc } from './src/app/modules/angular-slickgrid/formatters/complexObjectFormatter';
-export { dateIsoFormatter as ɵbe } from './src/app/modules/angular-slickgrid/formatters/dateIsoFormatter';
-export { dateTimeIsoAmPmFormatter as ɵbg } from './src/app/modules/angular-slickgrid/formatters/dateTimeIsoAmPmFormatter';
-export { dateTimeIsoFormatter as ɵbf } from './src/app/modules/angular-slickgrid/formatters/dateTimeIsoFormatter';
-export { dateTimeUsAmPmFormatter as ɵbj } from './src/app/modules/angular-slickgrid/formatters/dateTimeUsAmPmFormatter';
-export { dateTimeUsFormatter as ɵbi } from './src/app/modules/angular-slickgrid/formatters/dateTimeUsFormatter';
-export { dateUsFormatter as ɵbh } from './src/app/modules/angular-slickgrid/formatters/dateUsFormatter';
-export { deleteIconFormatter as ɵbk } from './src/app/modules/angular-slickgrid/formatters/deleteIconFormatter';
-export { editIconFormatter as ɵbl } from './src/app/modules/angular-slickgrid/formatters/editIconFormatter';
-export { hyperlinkFormatter as ɵbm } from './src/app/modules/angular-slickgrid/formatters/hyperlinkFormatter';
-export { hyperlinkUriPrefixFormatter as ɵbn } from './src/app/modules/angular-slickgrid/formatters/hyperlinkUriPrefixFormatter';
-export { infoIconFormatter as ɵbo } from './src/app/modules/angular-slickgrid/formatters/infoIconFormatter';
-export { lowercaseFormatter as ɵbp } from './src/app/modules/angular-slickgrid/formatters/lowercaseFormatter';
-export { multipleFormatter as ɵbq } from './src/app/modules/angular-slickgrid/formatters/multipleFormatter';
-export { percentCompleteBarFormatter as ɵbs } from './src/app/modules/angular-slickgrid/formatters/percentCompleteBarFormatter';
-export { percentCompleteFormatter as ɵbr } from './src/app/modules/angular-slickgrid/formatters/percentCompleteFormatter';
-export { progressBarFormatter as ɵbt } from './src/app/modules/angular-slickgrid/formatters/progressBarFormatter';
-export { translateBooleanFormatter as ɵbv } from './src/app/modules/angular-slickgrid/formatters/translateBooleanFormatter';
-export { translateFormatter as ɵbu } from './src/app/modules/angular-slickgrid/formatters/translateFormatter';
-export { uppercaseFormatter as ɵbw } from './src/app/modules/angular-slickgrid/formatters/uppercaseFormatter';
-export { yesNoFormatter as ɵbx } from './src/app/modules/angular-slickgrid/formatters/yesNoFormatter';
-export { SharedService as ɵce } from './src/app/modules/angular-slickgrid/services/shared.service';
-export { dateIsoSorter as ɵbz } from './src/app/modules/angular-slickgrid/sorters/dateIsoSorter';
-export { dateSorter as ɵby } from './src/app/modules/angular-slickgrid/sorters/dateSorter';
-export { dateUsShortSorter as ɵcb } from './src/app/modules/angular-slickgrid/sorters/dateUsShortSorter';
-export { dateUsSorter as ɵca } from './src/app/modules/angular-slickgrid/sorters/dateUsSorter';
-export { numericSorter as ɵcc } from './src/app/modules/angular-slickgrid/sorters/numericSorter';
-export { stringSorter as ɵcd } from './src/app/modules/angular-slickgrid/sorters/stringSorter';
+export { CheckboxEditor as ɵb } from './src/app/modules/angular-slickgrid/editors/checkboxEditor';
+export { DateEditor as ɵc } from './src/app/modules/angular-slickgrid/editors/dateEditor';
+export { FloatEditor as ɵd } from './src/app/modules/angular-slickgrid/editors/floatEditor';
+export { IntegerEditor as ɵe } from './src/app/modules/angular-slickgrid/editors/integerEditor';
+export { LongTextEditor as ɵf } from './src/app/modules/angular-slickgrid/editors/longTextEditor';
+export { MultipleSelectEditor as ɵg } from './src/app/modules/angular-slickgrid/editors/multipleSelectEditor';
+export { SingleSelectEditor as ɵh } from './src/app/modules/angular-slickgrid/editors/singleSelectEditor';
+export { TextEditor as ɵi } from './src/app/modules/angular-slickgrid/editors/textEditor';
+export { booleanFilterCondition as ɵk } from './src/app/modules/angular-slickgrid/filter-conditions/booleanFilterCondition';
+export { collectionSearchFilterCondition as ɵl } from './src/app/modules/angular-slickgrid/filter-conditions/collectionSearchFilterCondition';
+export { dateFilterCondition as ɵm } from './src/app/modules/angular-slickgrid/filter-conditions/dateFilterCondition';
+export { dateIsoFilterCondition as ɵn } from './src/app/modules/angular-slickgrid/filter-conditions/dateIsoFilterCondition';
+export { dateUsFilterCondition as ɵp } from './src/app/modules/angular-slickgrid/filter-conditions/dateUsFilterCondition';
+export { dateUsShortFilterCondition as ɵq } from './src/app/modules/angular-slickgrid/filter-conditions/dateUsShortFilterCondition';
+export { dateUtcFilterCondition as ɵo } from './src/app/modules/angular-slickgrid/filter-conditions/dateUtcFilterCondition';
+export { executeMappedCondition as ɵj } from './src/app/modules/angular-slickgrid/filter-conditions/executeMappedCondition';
+export { testFilterCondition as ɵt } from './src/app/modules/angular-slickgrid/filter-conditions/filterUtilities';
+export { numberFilterCondition as ɵr } from './src/app/modules/angular-slickgrid/filter-conditions/numberFilterCondition';
+export { stringFilterCondition as ɵs } from './src/app/modules/angular-slickgrid/filter-conditions/stringFilterCondition';
+export { CompoundDateFilter as ɵy } from './src/app/modules/angular-slickgrid/filters/compoundDateFilter';
+export { CompoundInputFilter as ɵz } from './src/app/modules/angular-slickgrid/filters/compoundInputFilter';
+export { InputFilter as ɵu } from './src/app/modules/angular-slickgrid/filters/inputFilter';
+export { MultipleSelectFilter as ɵv } from './src/app/modules/angular-slickgrid/filters/multipleSelectFilter';
+export { SelectFilter as ɵx } from './src/app/modules/angular-slickgrid/filters/selectFilter';
+export { SingleSelectFilter as ɵw } from './src/app/modules/angular-slickgrid/filters/singleSelectFilter';
+export { arrayToCsvFormatter as ɵba } from './src/app/modules/angular-slickgrid/formatters/arrayToCsvFormatter';
+export { checkboxFormatter as ɵbb } from './src/app/modules/angular-slickgrid/formatters/checkboxFormatter';
+export { checkmarkFormatter as ɵbc } from './src/app/modules/angular-slickgrid/formatters/checkmarkFormatter';
+export { collectionFormatter as ɵbe } from './src/app/modules/angular-slickgrid/formatters/collectionFormatter';
+export { complexObjectFormatter as ɵbd } from './src/app/modules/angular-slickgrid/formatters/complexObjectFormatter';
+export { dateIsoFormatter as ɵbf } from './src/app/modules/angular-slickgrid/formatters/dateIsoFormatter';
+export { dateTimeIsoAmPmFormatter as ɵbh } from './src/app/modules/angular-slickgrid/formatters/dateTimeIsoAmPmFormatter';
+export { dateTimeIsoFormatter as ɵbg } from './src/app/modules/angular-slickgrid/formatters/dateTimeIsoFormatter';
+export { dateTimeUsAmPmFormatter as ɵbk } from './src/app/modules/angular-slickgrid/formatters/dateTimeUsAmPmFormatter';
+export { dateTimeUsFormatter as ɵbj } from './src/app/modules/angular-slickgrid/formatters/dateTimeUsFormatter';
+export { dateUsFormatter as ɵbi } from './src/app/modules/angular-slickgrid/formatters/dateUsFormatter';
+export { deleteIconFormatter as ɵbl } from './src/app/modules/angular-slickgrid/formatters/deleteIconFormatter';
+export { editIconFormatter as ɵbm } from './src/app/modules/angular-slickgrid/formatters/editIconFormatter';
+export { hyperlinkFormatter as ɵbn } from './src/app/modules/angular-slickgrid/formatters/hyperlinkFormatter';
+export { hyperlinkUriPrefixFormatter as ɵbo } from './src/app/modules/angular-slickgrid/formatters/hyperlinkUriPrefixFormatter';
+export { infoIconFormatter as ɵbp } from './src/app/modules/angular-slickgrid/formatters/infoIconFormatter';
+export { lowercaseFormatter as ɵbq } from './src/app/modules/angular-slickgrid/formatters/lowercaseFormatter';
+export { multipleFormatter as ɵbr } from './src/app/modules/angular-slickgrid/formatters/multipleFormatter';
+export { percentCompleteBarFormatter as ɵbt } from './src/app/modules/angular-slickgrid/formatters/percentCompleteBarFormatter';
+export { percentCompleteFormatter as ɵbs } from './src/app/modules/angular-slickgrid/formatters/percentCompleteFormatter';
+export { progressBarFormatter as ɵbu } from './src/app/modules/angular-slickgrid/formatters/progressBarFormatter';
+export { translateBooleanFormatter as ɵbw } from './src/app/modules/angular-slickgrid/formatters/translateBooleanFormatter';
+export { translateFormatter as ɵbv } from './src/app/modules/angular-slickgrid/formatters/translateFormatter';
+export { uppercaseFormatter as ɵbx } from './src/app/modules/angular-slickgrid/formatters/uppercaseFormatter';
+export { yesNoFormatter as ɵby } from './src/app/modules/angular-slickgrid/formatters/yesNoFormatter';
+export { SharedService as ɵa } from './src/app/modules/angular-slickgrid/services/shared.service';
+export { dateIsoSorter as ɵca } from './src/app/modules/angular-slickgrid/sorters/dateIsoSorter';
+export { dateSorter as ɵbz } from './src/app/modules/angular-slickgrid/sorters/dateSorter';
+export { dateUsShortSorter as ɵcc } from './src/app/modules/angular-slickgrid/sorters/dateUsShortSorter';
+export { dateUsSorter as ɵcb } from './src/app/modules/angular-slickgrid/sorters/dateUsSorter';
+export { numericSorter as ɵcd } from './src/app/modules/angular-slickgrid/sorters/numericSorter';
+export { stringSorter as ɵce } from './src/app/modules/angular-slickgrid/sorters/stringSorter';
diff --git a/dist/angular-slickgrid.metadata.json b/dist/angular-slickgrid.metadata.json
index f69fba294..1898dbe16 100644
--- a/dist/angular-slickgrid.metadata.json
+++ b/dist/angular-slickgrid.metadata.json
@@ -1 +1 @@
-{"__symbolic":"module","version":4,"metadata":{"AutoResizeOption":{"__symbolic":"interface"},"BackendService":{"__symbolic":"interface"},"BackendEventChanged":{"__symbolic":"interface"},"BackendServiceApi":{"__symbolic":"interface"},"BackendServiceOption":{"__symbolic":"interface"},"CaseType":{"camelCase":0,"pascalCase":1,"snakeCase":2},"CellArgs":{"__symbolic":"interface"},"CheckboxSelector":{"__symbolic":"interface"},"Column":{"__symbolic":"interface"},"ColumnFilter":{"__symbolic":"interface"},"ColumnFilters":{"__symbolic":"interface"},"ColumnPicker":{"__symbolic":"interface"},"CurrentFilter":{"__symbolic":"interface"},"CurrentPagination":{"__symbolic":"interface"},"CurrentSorter":{"__symbolic":"interface"},"DelimiterType":{"colon":":","comma":",","equalSign":"=","pipe":"|","semicolon":";","space":" ","tab":"\t","doubleColon":"::","doublePipe":"||","doubleSemicolon":";;"},"EditCommand":{"__symbolic":"interface"},"Editor":{"__symbolic":"interface"},"ExportOption":{"__symbolic":"interface"},"FieldType":{"unknown":0,"string":1,"boolean":2,"integer":3,"float":4,"number":5,"date":6,"dateIso":7,"dateUtc":8,"dateTime":9,"dateTimeIso":10,"dateTimeIsoAmPm":11,"dateTimeIsoAM_PM":12,"dateUs":13,"dateUsShort":14,"dateTimeUs":15,"dateTimeUsAmPm":16,"dateTimeUsAM_PM":17,"dateTimeUsShort":18,"dateTimeUsShortAmPm":19,"dateTimeUsShortAM_PM":20},"FileType":{"csv":"csv","doc":"doc","docx":"docx","pdf":"pdf","txt":"txt","xls":"xls","xlsx":"xlsx"},"Filter":{"__symbolic":"interface"},"FilterArguments":{"__symbolic":"interface"},"FilterCallbackArg":{"__symbolic":"interface"},"FilterCallback":{"__symbolic":"interface"},"FilterChangedArgs":{"__symbolic":"interface"},"FilterCondition":{"__symbolic":"interface"},"FilterConditionOption":{"__symbolic":"interface"},"FilterType":{"input":0,"select":1,"multipleSelect":2,"singleSelect":3,"custom":4,"compoundDate":5,"compoundInput":6},"Formatter":{"__symbolic":"interface"},"FormElementType":{"input":0,"select":1,"multipleSelect":2,"singleSelect":3,"custom":4,"inputNoPlaceholder":5,"textarea":6},"GraphqlDatasetFilter":{"__symbolic":"interface"},"GraphqlCursorPaginationOption":{"__symbolic":"interface"},"GraphqlFilteringOption":{"__symbolic":"interface"},"GraphqlPaginationOption":{"__symbolic":"interface"},"GraphqlResult":{"__symbolic":"interface"},"GraphqlServiceOption":{"__symbolic":"interface"},"GraphqlSortingOption":{"__symbolic":"interface"},"CustomGridMenu":{"__symbolic":"interface"},"GridMenu":{"__symbolic":"interface"},"GridOption":{"__symbolic":"interface"},"GridState":{"__symbolic":"interface"},"GridStateType":{"filter":"filter","pagination":"pagination","sorter":"sorter"},"GridStateChange":{"__symbolic":"interface"},"HeaderButton":{"__symbolic":"interface"},"HeaderButtonItem":{"__symbolic":"interface"},"HeaderButtonOnCommandArgs":{"__symbolic":"interface"},"HeaderMenu":{"__symbolic":"interface"},"HeaderMenuItem":{"__symbolic":"interface"},"HeaderMenuOnCommandArgs":{"__symbolic":"interface"},"MenuOption":{"__symbolic":"interface"},"HeaderMenuOnBeforeMenuShowArgs":{"__symbolic":"interface"},"HtmlElementPosition":{"__symbolic":"interface"},"KeyCode":{"BACKSPACE":8,"DELETE":46,"DOWN":40,"END":35,"ENTER":13,"ESCAPE":27,"HOME":36,"INSERT":45,"LEFT":37,"PAGE_DOWN":34,"PAGE_UP":33,"RIGHT":39,"TAB":9,"UP":38},"MultipleSelectOption":{"__symbolic":"interface"},"OdataOption":{"__symbolic":"interface"},"OnEventArgs":{"__symbolic":"interface"},"OperatorString":{"__symbolic":"interface"},"OperatorType":{"contains":"Contains","lessThan":"LT","lessThanOrEqual":"LE","greaterThan":"GT","greaterThanOrEqual":"GE","notEqual":"NE","equal":"EQ","endsWith":"EndsWith","startsWith":"StartsWith","in":"IN","notIn":"NIN"},"Pagination":{"__symbolic":"interface"},"PaginationChangedArgs":{"__symbolic":"interface"},"SearchTerm":{"__symbolic":"interface"},"SelectOption":{"__symbolic":"interface"},"SlickEvent":{"__symbolic":"interface"},"SortChanged":{"__symbolic":"interface"},"SortChangedArgs":{"__symbolic":"interface"},"SortDirection":{"asc":"asc","ASC":"ASC","desc":"desc","DESC":"DESC"},"SortDirectionString":{"__symbolic":"interface"},"Sorter":{"__symbolic":"interface"},"ControlAndPluginService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExportService"},{"__symbolic":"reference","name":"FilterService"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"attachDifferentControlOrPlugins":[{"__symbolic":"method"}],"createColumnPicker":[{"__symbolic":"method"}],"createGridMenu":[{"__symbolic":"method"}],"hideColumn":[{"__symbolic":"method"}],"removeColumnByIndex":[{"__symbolic":"method"}],"autoResizeColumns":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"addGridMenuCustomCommands":[{"__symbolic":"method"}],"getDefaultGridMenuOptions":[{"__symbolic":"method"}],"refreshBackendDataset":[{"__symbolic":"method"}],"resetGridMenuTranslations":[{"__symbolic":"method"}],"translateColumnPicker":[{"__symbolic":"method"}],"translateGridMenu":[{"__symbolic":"method"}],"translateHeaders":[{"__symbolic":"method"}],"createPluginBeforeGridCreation":[{"__symbolic":"method"}]}},"ExportColumnHeader":{"__symbolic":"interface"},"ExportService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"exportToFile":[{"__symbolic":"method"}],"getDataOutput":[{"__symbolic":"method"}],"getAllGridRowData":[{"__symbolic":"method"}],"getAllSlickGridAggregators":[{"__symbolic":"method"}],"getColumnHeaders":[{"__symbolic":"method"}],"readRegularRowData":[{"__symbolic":"method"}],"readGroupedTitleRow":[{"__symbolic":"method"}],"readGroupedTotalRow":[{"__symbolic":"method"}],"getGroupedColumnTitles":[{"__symbolic":"method"}],"startDownloadFile":[{"__symbolic":"method"}]}},"FilterService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"attachBackendOnFilter":[{"__symbolic":"method"}],"attachBackendOnFilterSubscribe":[{"__symbolic":"method"}],"attachLocalOnFilter":[{"__symbolic":"method"}],"clearFilters":[{"__symbolic":"method"}],"customLocalFilter":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"disposeColumnFilters":[{"__symbolic":"method"}],"getColumnFilters":[{"__symbolic":"method"}],"getCurrentLocalFilters":[{"__symbolic":"method"}],"callbackSearchEvent":[{"__symbolic":"method"}],"addFilterTemplateToHeaderRow":[{"__symbolic":"method"}],"emitFilterChanged":[{"__symbolic":"method"}],"populateColumnFilterSearchTerms":[{"__symbolic":"method"}],"updateColumnFilters":[{"__symbolic":"method"}],"triggerEvent":[{"__symbolic":"method"}]}},"GraphqlQueryBuilder":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"error","message":"Expression form not supported","line":14,"character":68,"module":"./src/app/modules/angular-slickgrid/services/graphqlQueryBuilder"}]}],"filter":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"setAlias":[{"__symbolic":"method"}],"toString":[{"__symbolic":"method"}],"parceFind":[{"__symbolic":"method"}],"getGraphQLValue":[{"__symbolic":"method"}],"objectToString":[{"__symbolic":"method"}]}},"GraphqlService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"buildQuery":[{"__symbolic":"method"}],"buildFilterQuery":[{"__symbolic":"method"}],"init":[{"__symbolic":"method"}],"getInitPaginationOptions":[{"__symbolic":"method"}],"getDatasetName":[{"__symbolic":"method"}],"getCurrentFilters":[{"__symbolic":"method"}],"getCurrentPagination":[{"__symbolic":"method"}],"getCurrentSorters":[{"__symbolic":"method"}],"resetPaginationOptions":[{"__symbolic":"method"}],"updateOptions":[{"__symbolic":"method"}],"onFilterChanged":[{"__symbolic":"method"}],"onPaginationChanged":[{"__symbolic":"method"}],"onSortChanged":[{"__symbolic":"method"}],"updateFilters":[{"__symbolic":"method"}],"updatePagination":[{"__symbolic":"method"}],"updateSorters":[{"__symbolic":"method"}],"trimDoubleQuotesOnEnumField":[{"__symbolic":"method"}],"castFilterToColumnFilter":[{"__symbolic":"method"}]}},"GridOdataService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"OdataService"}]}],"buildQuery":[{"__symbolic":"method"}],"init":[{"__symbolic":"method"}],"updateOptions":[{"__symbolic":"method"}],"removeColumnFilter":[{"__symbolic":"method"}],"getCurrentFilters":[{"__symbolic":"method"}],"getCurrentPagination":[{"__symbolic":"method"}],"getCurrentSorters":[{"__symbolic":"method"}],"resetPaginationOptions":[{"__symbolic":"method"}],"saveColumnFilter":[{"__symbolic":"method"}],"onFilterChanged":[{"__symbolic":"method"}],"onPaginationChanged":[{"__symbolic":"method"}],"onSortChanged":[{"__symbolic":"method"}],"updateFilters":[{"__symbolic":"method"}],"updatePagination":[{"__symbolic":"method"}],"updateSorters":[{"__symbolic":"method"}],"castFilterToColumnFilter":[{"__symbolic":"method"}],"mapOdataOperator":[{"__symbolic":"method"}]}},"GridEventService":{"__symbolic":"class","members":{"attachOnCellChange":[{"__symbolic":"method"}],"attachOnClick":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}]}},"GridExtraService":{"__symbolic":"class","members":{"init":[{"__symbolic":"method"}],"getDataItemByRowNumber":[{"__symbolic":"method"}],"getItemRowMetadata":[{"__symbolic":"method"}],"highlightRow":[{"__symbolic":"method"}],"getSelectedRows":[{"__symbolic":"method"}],"setSelectedRow":[{"__symbolic":"method"}],"setSelectedRows":[{"__symbolic":"method"}],"renderGrid":[{"__symbolic":"method"}],"addItemToDatagrid":[{"__symbolic":"method"}],"updateDataGridItem":[{"__symbolic":"method"}]}},"GridExtraUtils":{"__symbolic":"class","members":{}},"GridStateService":{"__symbolic":"class","members":{"init":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"getCurrentGridState":[{"__symbolic":"method"}],"getCurrentFilters":[{"__symbolic":"method"}],"getCurrentPagination":[{"__symbolic":"method"}],"getCurrentSorters":[{"__symbolic":"method"}]}},"OdataService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"buildQuery":[{"__symbolic":"method"}],"getFilterByColumn":[{"__symbolic":"method"}],"getFilterCount":[{"__symbolic":"method"}],"removeColumnFilter":[{"__symbolic":"method"}],"saveColumnFilter":[{"__symbolic":"method"}],"updateFilterFromListTerms":[{"__symbolic":"method"}],"updateFilterFromTerm":[{"__symbolic":"method"}],"updateOptions":[{"__symbolic":"method"}]}},"ResizerService":{"__symbolic":"class","members":{"init":[{"__symbolic":"method"}],"attachAutoResizeDataGrid":[{"__symbolic":"method"}],"calculateGridNewDimensions":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"resizeGrid":[{"__symbolic":"method"}]}},"SortService":{"__symbolic":"class","members":{"attachBackendOnSort":[{"__symbolic":"method"}],"attachBackendOnSortSubscribe":[{"__symbolic":"method"}],"attachLocalOnSort":[{"__symbolic":"method"}],"getCurrentLocalSorters":[{"__symbolic":"method"}],"loadLocalPresets":[{"__symbolic":"method"}],"onLocalSortChanged":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"emitSortChanged":[{"__symbolic":"method"}]}},"addWhiteSpaces":{"__symbolic":"function"},"htmlEntityDecode":{"__symbolic":"function","parameters":["input"],"value":{"__symbolic":"error","message":"Expression form not supported","line":26,"character":23,"module":"./src/app/modules/angular-slickgrid/services/utilities"}},"htmlEntityEncode":{"__symbolic":"function"},"arraysEqual":{"__symbolic":"function"},"castToPromise":{"__symbolic":"function"},"findOrDefault":{"__symbolic":"function","parameters":["array","logic","defaultVal"],"defaults":[null,null,{}],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"array"},"member":"find"},"arguments":[{"__symbolic":"reference","name":"logic"}]},"right":{"__symbolic":"reference","name":"defaultVal"}}},"mapMomentDateFormatWithFieldType":{"__symbolic":"function"},"mapFlatpickrDateFormatWithFieldType":{"__symbolic":"function"},"mapOperatorType":{"__symbolic":"function"},"mapOperatorByFieldType":{"__symbolic":"function"},"mapOperatorByFilterType":{"__symbolic":"function"},"parseUtcDate":{"__symbolic":"function"},"toCamelCase":{"__symbolic":"function","parameters":["str"],"value":{"__symbolic":"error","message":"Expression form not supported","line":389,"character":21,"module":"./src/app/modules/angular-slickgrid/services/utilities"}},"toKebabCase":{"__symbolic":"function","parameters":["str"],"value":{"__symbolic":"error","message":"Expression form not supported","line":405,"character":34,"module":"./src/app/modules/angular-slickgrid/services/utilities"}},"Editors":{"checkbox":{"__symbolic":"reference","name":"ɵa"},"date":{"__symbolic":"reference","name":"ɵb"},"float":{"__symbolic":"reference","name":"ɵc"},"integer":{"__symbolic":"reference","name":"ɵd"},"longText":{"__symbolic":"reference","name":"ɵe"},"multipleSelect":{"__symbolic":"reference","name":"ɵf"},"singleSelect":{"__symbolic":"reference","name":"ɵg"},"text":{"__symbolic":"reference","name":"ɵh"}},"FilterConditions":{"executeMappedCondition":{"__symbolic":"reference","name":"ɵi"},"booleanFilter":{"__symbolic":"reference","name":"ɵj"},"collectionSearchFilter":{"__symbolic":"reference","name":"ɵk"},"dateFilter":{"__symbolic":"reference","name":"ɵl"},"dateIsoFilter":{"__symbolic":"reference","name":"ɵm"},"dateUtcFilter":{"__symbolic":"reference","name":"ɵn"},"dateUsFilter":{"__symbolic":"reference","name":"ɵo"},"dateUsShortFilter":{"__symbolic":"reference","name":"ɵp"},"numberFilter":{"__symbolic":"reference","name":"ɵq"},"stringFilter":{"__symbolic":"reference","name":"ɵr"},"testFilter":{"__symbolic":"reference","name":"ɵs"}},"Filters":{"input":{"__symbolic":"reference","name":"ɵt"},"multipleSelect":{"__symbolic":"reference","name":"ɵu"},"singleSelect":{"__symbolic":"reference","name":"ɵv"},"select":{"__symbolic":"reference","name":"ɵw"},"compoundDate":{"__symbolic":"reference","name":"ɵx"},"compoundInput":{"__symbolic":"reference","name":"ɵy"}},"Formatters":{"arrayToCsv":{"__symbolic":"reference","name":"ɵz"},"checkbox":{"__symbolic":"reference","name":"ɵba"},"checkmark":{"__symbolic":"reference","name":"ɵbb"},"complexObject":{"__symbolic":"reference","name":"ɵbc"},"collection":{"__symbolic":"reference","name":"ɵbd"},"dateIso":{"__symbolic":"reference","name":"ɵbe"},"dateTimeIso":{"__symbolic":"reference","name":"ɵbf"},"dateTimeIsoAmPm":{"__symbolic":"reference","name":"ɵbg"},"dateUs":{"__symbolic":"reference","name":"ɵbh"},"dateTimeUs":{"__symbolic":"reference","name":"ɵbi"},"dateTimeUsAmPm":{"__symbolic":"reference","name":"ɵbj"},"deleteIcon":{"__symbolic":"reference","name":"ɵbk"},"editIcon":{"__symbolic":"reference","name":"ɵbl"},"hyperlink":{"__symbolic":"reference","name":"ɵbm"},"hyperlinkUriPrefix":{"__symbolic":"reference","name":"ɵbn"},"infoIcon":{"__symbolic":"reference","name":"ɵbo"},"lowercase":{"__symbolic":"reference","name":"ɵbp"},"multiple":{"__symbolic":"reference","name":"ɵbq"},"percentComplete":{"__symbolic":"reference","name":"ɵbr"},"percentCompleteBar":{"__symbolic":"reference","name":"ɵbs"},"progressBar":{"__symbolic":"reference","name":"ɵbt"},"translate":{"__symbolic":"reference","name":"ɵbu"},"translateBoolean":{"__symbolic":"reference","name":"ɵbv"},"uppercase":{"__symbolic":"reference","name":"ɵbw"},"yesNo":{"__symbolic":"reference","name":"ɵbx"}},"Sorters":{"date":{"__symbolic":"reference","name":"ɵby"},"dateIso":{"__symbolic":"reference","name":"ɵbz"},"dateUs":{"__symbolic":"reference","name":"ɵca"},"dateUsShort":{"__symbolic":"reference","name":"ɵcb"},"numeric":{"__symbolic":"reference","name":"ɵcc"},"string":{"__symbolic":"reference","name":"ɵcd"}},"SlickPaginationComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"slick-pagination","template":"
\n"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"onPaginationChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"gridPaginationOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"grid":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FilterService"},{"__symbolic":"reference","name":"SortService"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ceil":[{"__symbolic":"method"}],"changeToFirstPage":[{"__symbolic":"method"}],"changeToLastPage":[{"__symbolic":"method"}],"changeToNextPage":[{"__symbolic":"method"}],"changeToPreviousPage":[{"__symbolic":"method"}],"changeToCurrentPage":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"onChangeItemPerPage":[{"__symbolic":"method"}],"refreshPagination":[{"__symbolic":"method"}],"onPageChanged":[{"__symbolic":"method"}],"recalculateFromToIndexes":[{"__symbolic":"method"}]}},"AngularSlickgridComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"angular-slickgrid","template":"\n"}]}],"members":{"onDataviewCreated":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onGridCreated":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onGridInitialized":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onBeforeGridCreate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onBeforeGridDestroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onAfterGridDestroyed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onGridStateServiceChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"gridId":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"gridOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"gridHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"gridWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"columnDefinitions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"dataset":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,null,null,null,null,null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":["config"]}]],"parameters":[{"__symbolic":"reference","name":"ControlAndPluginService"},{"__symbolic":"reference","name":"ExportService"},{"__symbolic":"reference","name":"FilterService"},{"__symbolic":"reference","name":"GridExtraService"},{"__symbolic":"reference","name":"GridEventService"},{"__symbolic":"reference","name":"GridStateService"},{"__symbolic":"reference","name":"ResizerService"},{"__symbolic":"reference","name":"ɵce"},{"__symbolic":"reference","name":"SortService"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"},{"__symbolic":"reference","name":"GridOption"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"initialization":[{"__symbolic":"method"}],"createBackendApiInternalPostProcessCallback":[{"__symbolic":"method"}],"attachDifferentHooks":[{"__symbolic":"method"}],"attachBackendCallbackFunctions":[{"__symbolic":"method"}],"attachResizeHook":[{"__symbolic":"method"}],"mergeGridOptions":[{"__symbolic":"method"}],"paginationChanged":[{"__symbolic":"method"}],"refreshGridData":[{"__symbolic":"method"}],"updateColumnDefinitionsList":[{"__symbolic":"method"}],"showHeaderRow":[{"__symbolic":"method"}],"toggleHeaderRow":[{"__symbolic":"method"}]}},"AngularSlickgridModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateModule"}],"declarations":[{"__symbolic":"reference","name":"AngularSlickgridComponent"},{"__symbolic":"reference","name":"SlickPaginationComponent"}],"exports":[{"__symbolic":"reference","name":"AngularSlickgridComponent"},{"__symbolic":"reference","name":"SlickPaginationComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"defaults":[{}],"value":{"ngModule":{"__symbolic":"reference","name":"AngularSlickgridModule"},"providers":[{"provide":"config","useValue":{"__symbolic":"reference","name":"config"}},{"__symbolic":"reference","name":"ControlAndPluginService"},{"__symbolic":"reference","name":"ExportService"},{"__symbolic":"reference","name":"FilterService"},{"__symbolic":"reference","name":"GraphqlService"},{"__symbolic":"reference","name":"GridEventService"},{"__symbolic":"reference","name":"GridExtraService"},{"__symbolic":"reference","name":"GridOdataService"},{"__symbolic":"reference","name":"GridStateService"},{"__symbolic":"reference","name":"OdataService"},{"__symbolic":"reference","name":"ResizerService"},{"__symbolic":"reference","name":"ɵce"},{"__symbolic":"reference","name":"SortService"}]}}}},"ɵa":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"preClick":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"getCurrentLocale":[{"__symbolic":"method"}],"loadFlatpickrLocale":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"getDecimalPlaces":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"handleKeyDown":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"cancel":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"position":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}],"setValue":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵi":{"__symbolic":"error","message":"Function call not supported","line":13,"character":55,"module":"./src/app/modules/angular-slickgrid/filter-conditions/executeMappedCondition"},"ɵj":{"__symbolic":"error","message":"Function call not supported","line":6,"character":55,"module":"./src/app/modules/angular-slickgrid/filter-conditions/booleanFilterCondition"},"ɵk":{"__symbolic":"error","message":"Function call not supported","line":3,"character":64,"module":"./src/app/modules/angular-slickgrid/filter-conditions/collectionSearchFilterCondition"},"ɵl":{"__symbolic":"error","message":"Function call not supported","line":6,"character":52,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateFilterCondition"},"ɵm":{"__symbolic":"error","message":"Function call not supported","line":7,"character":55,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateIsoFilterCondition"},"ɵn":{"__symbolic":"error","message":"Function call not supported","line":6,"character":55,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateUtcFilterCondition"},"ɵo":{"__symbolic":"error","message":"Function call not supported","line":7,"character":54,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateUsFilterCondition"},"ɵp":{"__symbolic":"error","message":"Function call not supported","line":7,"character":59,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateUsShortFilterCondition"},"ɵq":{"__symbolic":"error","message":"Function call not supported","line":3,"character":54,"module":"./src/app/modules/angular-slickgrid/filter-conditions/numberFilterCondition"},"ɵr":{"__symbolic":"error","message":"Function call not supported","line":3,"character":54,"module":"./src/app/modules/angular-slickgrid/filter-conditions/stringFilterCondition"},"ɵs":{"__symbolic":"error","message":"Function call not supported","line":0,"character":35,"module":"./src/app/modules/angular-slickgrid/filter-conditions/filterUtilities"},"ɵt":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}]}},"ɵu":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"findValueInSearchTerms":[{"__symbolic":"method"}]}},"ɵv":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}]}},"ɵw":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}]}},"ɵx":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildDatePickerInput":[{"__symbolic":"method"}],"buildSelectOperatorHtmlString":[{"__symbolic":"method"}],"getOptionValues":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"getCurrentLocale":[{"__symbolic":"method"}],"loadFlatpickrLocale":[{"__symbolic":"method"}],"onTriggerEvent":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}]}},"ɵy":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildInputHtmlString":[{"__symbolic":"method"}],"buildSelectOperatorHtmlString":[{"__symbolic":"method"}],"getOptionValues":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"onTriggerEvent":[{"__symbolic":"method"}]}},"ɵz":{"__symbolic":"error","message":"Function call not supported","line":3,"character":46,"module":"./src/app/modules/angular-slickgrid/formatters/arrayToCsvFormatter"},"ɵba":{"__symbolic":"error","message":"Function call not supported","line":3,"character":44,"module":"./src/app/modules/angular-slickgrid/formatters/checkboxFormatter"},"ɵbb":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/checkmarkFormatter"},"ɵbc":{"__symbolic":"error","message":"Function call not supported","line":3,"character":49,"module":"./src/app/modules/angular-slickgrid/formatters/complexObjectFormatter"},"ɵbd":{"__symbolic":"error","message":"Function call not supported","line":7,"character":46,"module":"./src/app/modules/angular-slickgrid/formatters/collectionFormatter"},"ɵbe":{"__symbolic":"error","message":"Function call not supported","line":6,"character":43,"module":"./src/app/modules/angular-slickgrid/formatters/dateIsoFormatter"},"ɵbf":{"__symbolic":"error","message":"Function call not supported","line":6,"character":47,"module":"./src/app/modules/angular-slickgrid/formatters/dateTimeIsoFormatter"},"ɵbg":{"__symbolic":"error","message":"Function call not supported","line":6,"character":51,"module":"./src/app/modules/angular-slickgrid/formatters/dateTimeIsoAmPmFormatter"},"ɵbh":{"__symbolic":"error","message":"Function call not supported","line":6,"character":42,"module":"./src/app/modules/angular-slickgrid/formatters/dateUsFormatter"},"ɵbi":{"__symbolic":"error","message":"Function call not supported","line":6,"character":46,"module":"./src/app/modules/angular-slickgrid/formatters/dateTimeUsFormatter"},"ɵbj":{"__symbolic":"error","message":"Function call not supported","line":6,"character":50,"module":"./src/app/modules/angular-slickgrid/formatters/dateTimeUsAmPmFormatter"},"ɵbk":{"__symbolic":"error","message":"Function call not supported","line":3,"character":46,"module":"./src/app/modules/angular-slickgrid/formatters/deleteIconFormatter"},"ɵbl":{"__symbolic":"error","message":"Function call not supported","line":3,"character":44,"module":"./src/app/modules/angular-slickgrid/formatters/editIconFormatter"},"ɵbm":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/hyperlinkFormatter"},"ɵbn":{"__symbolic":"error","message":"Function call not supported","line":3,"character":54,"module":"./src/app/modules/angular-slickgrid/formatters/hyperlinkUriPrefixFormatter"},"ɵbo":{"__symbolic":"error","message":"Function call not supported","line":3,"character":44,"module":"./src/app/modules/angular-slickgrid/formatters/infoIconFormatter"},"ɵbp":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/lowercaseFormatter"},"ɵbq":{"__symbolic":"error","message":"Function call not supported","line":2,"character":44,"module":"./src/app/modules/angular-slickgrid/formatters/multipleFormatter"},"ɵbr":{"__symbolic":"error","message":"Function call not supported","line":3,"character":51,"module":"./src/app/modules/angular-slickgrid/formatters/percentCompleteFormatter"},"ɵbs":{"__symbolic":"error","message":"Function call not supported","line":3,"character":54,"module":"./src/app/modules/angular-slickgrid/formatters/percentCompleteBarFormatter"},"ɵbt":{"__symbolic":"error","message":"Function call not supported","line":3,"character":47,"module":"./src/app/modules/angular-slickgrid/formatters/progressBarFormatter"},"ɵbu":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/translateFormatter"},"ɵbv":{"__symbolic":"error","message":"Function call not supported","line":3,"character":52,"module":"./src/app/modules/angular-slickgrid/formatters/translateBooleanFormatter"},"ɵbw":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/uppercaseFormatter"},"ɵbx":{"__symbolic":"error","message":"Function call not supported","line":3,"character":41,"module":"./src/app/modules/angular-slickgrid/formatters/yesNoFormatter"},"ɵby":{"__symbolic":"error","message":"Function call not supported","line":4,"character":34,"module":"./src/app/modules/angular-slickgrid/sorters/dateSorter"},"ɵbz":{"__symbolic":"error","message":"Function call not supported","line":6,"character":37,"module":"./src/app/modules/angular-slickgrid/sorters/dateIsoSorter"},"ɵca":{"__symbolic":"error","message":"Function call not supported","line":6,"character":36,"module":"./src/app/modules/angular-slickgrid/sorters/dateUsSorter"},"ɵcb":{"__symbolic":"error","message":"Function call not supported","line":6,"character":41,"module":"./src/app/modules/angular-slickgrid/sorters/dateUsShortSorter"},"ɵcc":{"__symbolic":"error","message":"Function call not supported","line":2,"character":37,"module":"./src/app/modules/angular-slickgrid/sorters/numericSorter"},"ɵcd":{"__symbolic":"error","message":"Function call not supported","line":2,"character":36,"module":"./src/app/modules/angular-slickgrid/sorters/stringSorter"},"ɵce":{"__symbolic":"class","members":{"init":[{"__symbolic":"method"}]}}},"origins":{"AutoResizeOption":"./src/app/modules/angular-slickgrid/models/autoResizeOption.interface","BackendService":"./src/app/modules/angular-slickgrid/models/backendService.interface","BackendEventChanged":"./src/app/modules/angular-slickgrid/models/backendEventChanged.interface","BackendServiceApi":"./src/app/modules/angular-slickgrid/models/backendServiceApi.interface","BackendServiceOption":"./src/app/modules/angular-slickgrid/models/backendServiceOption.interface","CaseType":"./src/app/modules/angular-slickgrid/models/caseType","CellArgs":"./src/app/modules/angular-slickgrid/models/cellArgs.interface","CheckboxSelector":"./src/app/modules/angular-slickgrid/models/checkboxSelector.interface","Column":"./src/app/modules/angular-slickgrid/models/column.interface","ColumnFilter":"./src/app/modules/angular-slickgrid/models/columnFilter.interface","ColumnFilters":"./src/app/modules/angular-slickgrid/models/columnFilters.interface","ColumnPicker":"./src/app/modules/angular-slickgrid/models/columnPicker.interface","CurrentFilter":"./src/app/modules/angular-slickgrid/models/currentFilter.interface","CurrentPagination":"./src/app/modules/angular-slickgrid/models/currentPagination.interface","CurrentSorter":"./src/app/modules/angular-slickgrid/models/currentSorter.interface","DelimiterType":"./src/app/modules/angular-slickgrid/models/delimiterType.enum","EditCommand":"./src/app/modules/angular-slickgrid/models/editCommand.interface","Editor":"./src/app/modules/angular-slickgrid/models/editor.interface","ExportOption":"./src/app/modules/angular-slickgrid/models/exportOption.interface","FieldType":"./src/app/modules/angular-slickgrid/models/fieldType","FileType":"./src/app/modules/angular-slickgrid/models/fileType.enum","Filter":"./src/app/modules/angular-slickgrid/models/filter.interface","FilterArguments":"./src/app/modules/angular-slickgrid/models/filterArguments.interface","FilterCallbackArg":"./src/app/modules/angular-slickgrid/models/filterCallback.interface","FilterCallback":"./src/app/modules/angular-slickgrid/models/filterCallback.interface","FilterChangedArgs":"./src/app/modules/angular-slickgrid/models/filterChangedArgs.interface","FilterCondition":"./src/app/modules/angular-slickgrid/models/filterCondition.interface","FilterConditionOption":"./src/app/modules/angular-slickgrid/models/filterConditionOption.interface","FilterType":"./src/app/modules/angular-slickgrid/models/filterType","Formatter":"./src/app/modules/angular-slickgrid/models/formatter.interface","FormElementType":"./src/app/modules/angular-slickgrid/models/formElementType","GraphqlDatasetFilter":"./src/app/modules/angular-slickgrid/models/graphqlDatasetFilter.interface","GraphqlCursorPaginationOption":"./src/app/modules/angular-slickgrid/models/graphqlCursorPaginationOption.interface","GraphqlFilteringOption":"./src/app/modules/angular-slickgrid/models/graphqlFilteringOption.interface","GraphqlPaginationOption":"./src/app/modules/angular-slickgrid/models/graphqlPaginationOption.interface","GraphqlResult":"./src/app/modules/angular-slickgrid/models/graphqlResult.interface","GraphqlServiceOption":"./src/app/modules/angular-slickgrid/models/graphqlServiceOption.interface","GraphqlSortingOption":"./src/app/modules/angular-slickgrid/models/graphqlSortingOption.interface","CustomGridMenu":"./src/app/modules/angular-slickgrid/models/customGridMenu.interface","GridMenu":"./src/app/modules/angular-slickgrid/models/gridMenu.interface","GridOption":"./src/app/modules/angular-slickgrid/models/gridOption.interface","GridState":"./src/app/modules/angular-slickgrid/models/gridState.interface","GridStateType":"./src/app/modules/angular-slickgrid/models/gridStateType.enum","GridStateChange":"./src/app/modules/angular-slickgrid/models/gridStateChange.interface","HeaderButton":"./src/app/modules/angular-slickgrid/models/headerButton.interface","HeaderButtonItem":"./src/app/modules/angular-slickgrid/models/headerButtonItem.interface","HeaderButtonOnCommandArgs":"./src/app/modules/angular-slickgrid/models/headerButtonOnCommandArgs.interface","HeaderMenu":"./src/app/modules/angular-slickgrid/models/headerMenu.interface","HeaderMenuItem":"./src/app/modules/angular-slickgrid/models/headerMenuItem.interface","HeaderMenuOnCommandArgs":"./src/app/modules/angular-slickgrid/models/headerMenuOnCommandArgs.interface","MenuOption":"./src/app/modules/angular-slickgrid/models/headerMenuOnBeforeMenuShowArgs.interface","HeaderMenuOnBeforeMenuShowArgs":"./src/app/modules/angular-slickgrid/models/headerMenuOnBeforeMenuShowArgs.interface","HtmlElementPosition":"./src/app/modules/angular-slickgrid/models/htmlElementPosition.interface","KeyCode":"./src/app/modules/angular-slickgrid/models/keyCode.enum","MultipleSelectOption":"./src/app/modules/angular-slickgrid/models/multipleSelectOption.interface","OdataOption":"./src/app/modules/angular-slickgrid/models/odataOption.interface","OnEventArgs":"./src/app/modules/angular-slickgrid/models/onEventArgs.interface","OperatorString":"./src/app/modules/angular-slickgrid/models/operatorString","OperatorType":"./src/app/modules/angular-slickgrid/models/operatorType.enum","Pagination":"./src/app/modules/angular-slickgrid/models/pagination.interface","PaginationChangedArgs":"./src/app/modules/angular-slickgrid/models/paginationChangedArgs.interface","SearchTerm":"./src/app/modules/angular-slickgrid/models/searchTerm.type","SelectOption":"./src/app/modules/angular-slickgrid/models/selectOption.interface","SlickEvent":"./src/app/modules/angular-slickgrid/models/slickEvent.interface","SortChanged":"./src/app/modules/angular-slickgrid/models/sortChanged.interface","SortChangedArgs":"./src/app/modules/angular-slickgrid/models/sortChangedArgs.interface","SortDirection":"./src/app/modules/angular-slickgrid/models/sortDirection.enum","SortDirectionString":"./src/app/modules/angular-slickgrid/models/sortDirectionString","Sorter":"./src/app/modules/angular-slickgrid/models/sorter.interface","ControlAndPluginService":"./src/app/modules/angular-slickgrid/services/controlAndPlugin.service","ExportColumnHeader":"./src/app/modules/angular-slickgrid/services/export.service","ExportService":"./src/app/modules/angular-slickgrid/services/export.service","FilterService":"./src/app/modules/angular-slickgrid/services/filter.service","GraphqlQueryBuilder":"./src/app/modules/angular-slickgrid/services/graphqlQueryBuilder","GraphqlService":"./src/app/modules/angular-slickgrid/services/graphql.service","GridOdataService":"./src/app/modules/angular-slickgrid/services/grid-odata.service","GridEventService":"./src/app/modules/angular-slickgrid/services/gridEvent.service","GridExtraService":"./src/app/modules/angular-slickgrid/services/gridExtra.service","GridExtraUtils":"./src/app/modules/angular-slickgrid/services/gridExtraUtils","GridStateService":"./src/app/modules/angular-slickgrid/services/gridState.service","OdataService":"./src/app/modules/angular-slickgrid/services/odata.service","ResizerService":"./src/app/modules/angular-slickgrid/services/resizer.service","SortService":"./src/app/modules/angular-slickgrid/services/sort.service","addWhiteSpaces":"./src/app/modules/angular-slickgrid/services/utilities","htmlEntityDecode":"./src/app/modules/angular-slickgrid/services/utilities","htmlEntityEncode":"./src/app/modules/angular-slickgrid/services/utilities","arraysEqual":"./src/app/modules/angular-slickgrid/services/utilities","castToPromise":"./src/app/modules/angular-slickgrid/services/utilities","findOrDefault":"./src/app/modules/angular-slickgrid/services/utilities","mapMomentDateFormatWithFieldType":"./src/app/modules/angular-slickgrid/services/utilities","mapFlatpickrDateFormatWithFieldType":"./src/app/modules/angular-slickgrid/services/utilities","mapOperatorType":"./src/app/modules/angular-slickgrid/services/utilities","mapOperatorByFieldType":"./src/app/modules/angular-slickgrid/services/utilities","mapOperatorByFilterType":"./src/app/modules/angular-slickgrid/services/utilities","parseUtcDate":"./src/app/modules/angular-slickgrid/services/utilities","toCamelCase":"./src/app/modules/angular-slickgrid/services/utilities","toKebabCase":"./src/app/modules/angular-slickgrid/services/utilities","Editors":"./src/app/modules/angular-slickgrid/editors/index","FilterConditions":"./src/app/modules/angular-slickgrid/filter-conditions/index","Filters":"./src/app/modules/angular-slickgrid/filters/index","Formatters":"./src/app/modules/angular-slickgrid/formatters/index","Sorters":"./src/app/modules/angular-slickgrid/sorters/index","SlickPaginationComponent":"./src/app/modules/angular-slickgrid/components/slick-pagination.component","AngularSlickgridComponent":"./src/app/modules/angular-slickgrid/components/angular-slickgrid.component","AngularSlickgridModule":"./src/app/modules/angular-slickgrid/modules/angular-slickgrid.module","ɵa":"./src/app/modules/angular-slickgrid/editors/checkboxEditor","ɵb":"./src/app/modules/angular-slickgrid/editors/dateEditor","ɵc":"./src/app/modules/angular-slickgrid/editors/floatEditor","ɵd":"./src/app/modules/angular-slickgrid/editors/integerEditor","ɵe":"./src/app/modules/angular-slickgrid/editors/longTextEditor","ɵf":"./src/app/modules/angular-slickgrid/editors/multipleSelectEditor","ɵg":"./src/app/modules/angular-slickgrid/editors/singleSelectEditor","ɵh":"./src/app/modules/angular-slickgrid/editors/textEditor","ɵi":"./src/app/modules/angular-slickgrid/filter-conditions/executeMappedCondition","ɵj":"./src/app/modules/angular-slickgrid/filter-conditions/booleanFilterCondition","ɵk":"./src/app/modules/angular-slickgrid/filter-conditions/collectionSearchFilterCondition","ɵl":"./src/app/modules/angular-slickgrid/filter-conditions/dateFilterCondition","ɵm":"./src/app/modules/angular-slickgrid/filter-conditions/dateIsoFilterCondition","ɵn":"./src/app/modules/angular-slickgrid/filter-conditions/dateUtcFilterCondition","ɵo":"./src/app/modules/angular-slickgrid/filter-conditions/dateUsFilterCondition","ɵp":"./src/app/modules/angular-slickgrid/filter-conditions/dateUsShortFilterCondition","ɵq":"./src/app/modules/angular-slickgrid/filter-conditions/numberFilterCondition","ɵr":"./src/app/modules/angular-slickgrid/filter-conditions/stringFilterCondition","ɵs":"./src/app/modules/angular-slickgrid/filter-conditions/filterUtilities","ɵt":"./src/app/modules/angular-slickgrid/filters/inputFilter","ɵu":"./src/app/modules/angular-slickgrid/filters/multipleSelectFilter","ɵv":"./src/app/modules/angular-slickgrid/filters/singleSelectFilter","ɵw":"./src/app/modules/angular-slickgrid/filters/selectFilter","ɵx":"./src/app/modules/angular-slickgrid/filters/compoundDateFilter","ɵy":"./src/app/modules/angular-slickgrid/filters/compoundInputFilter","ɵz":"./src/app/modules/angular-slickgrid/formatters/arrayToCsvFormatter","ɵba":"./src/app/modules/angular-slickgrid/formatters/checkboxFormatter","ɵbb":"./src/app/modules/angular-slickgrid/formatters/checkmarkFormatter","ɵbc":"./src/app/modules/angular-slickgrid/formatters/complexObjectFormatter","ɵbd":"./src/app/modules/angular-slickgrid/formatters/collectionFormatter","ɵbe":"./src/app/modules/angular-slickgrid/formatters/dateIsoFormatter","ɵbf":"./src/app/modules/angular-slickgrid/formatters/dateTimeIsoFormatter","ɵbg":"./src/app/modules/angular-slickgrid/formatters/dateTimeIsoAmPmFormatter","ɵbh":"./src/app/modules/angular-slickgrid/formatters/dateUsFormatter","ɵbi":"./src/app/modules/angular-slickgrid/formatters/dateTimeUsFormatter","ɵbj":"./src/app/modules/angular-slickgrid/formatters/dateTimeUsAmPmFormatter","ɵbk":"./src/app/modules/angular-slickgrid/formatters/deleteIconFormatter","ɵbl":"./src/app/modules/angular-slickgrid/formatters/editIconFormatter","ɵbm":"./src/app/modules/angular-slickgrid/formatters/hyperlinkFormatter","ɵbn":"./src/app/modules/angular-slickgrid/formatters/hyperlinkUriPrefixFormatter","ɵbo":"./src/app/modules/angular-slickgrid/formatters/infoIconFormatter","ɵbp":"./src/app/modules/angular-slickgrid/formatters/lowercaseFormatter","ɵbq":"./src/app/modules/angular-slickgrid/formatters/multipleFormatter","ɵbr":"./src/app/modules/angular-slickgrid/formatters/percentCompleteFormatter","ɵbs":"./src/app/modules/angular-slickgrid/formatters/percentCompleteBarFormatter","ɵbt":"./src/app/modules/angular-slickgrid/formatters/progressBarFormatter","ɵbu":"./src/app/modules/angular-slickgrid/formatters/translateFormatter","ɵbv":"./src/app/modules/angular-slickgrid/formatters/translateBooleanFormatter","ɵbw":"./src/app/modules/angular-slickgrid/formatters/uppercaseFormatter","ɵbx":"./src/app/modules/angular-slickgrid/formatters/yesNoFormatter","ɵby":"./src/app/modules/angular-slickgrid/sorters/dateSorter","ɵbz":"./src/app/modules/angular-slickgrid/sorters/dateIsoSorter","ɵca":"./src/app/modules/angular-slickgrid/sorters/dateUsSorter","ɵcb":"./src/app/modules/angular-slickgrid/sorters/dateUsShortSorter","ɵcc":"./src/app/modules/angular-slickgrid/sorters/numericSorter","ɵcd":"./src/app/modules/angular-slickgrid/sorters/stringSorter","ɵce":"./src/app/modules/angular-slickgrid/services/shared.service"},"importAs":"angular-slickgrid"}
\ No newline at end of file
+{"__symbolic":"module","version":4,"metadata":{"AutoResizeOption":{"__symbolic":"interface"},"BackendService":{"__symbolic":"interface"},"BackendEventChanged":{"__symbolic":"interface"},"BackendServiceApi":{"__symbolic":"interface"},"BackendServiceOption":{"__symbolic":"interface"},"CaseType":{"camelCase":0,"pascalCase":1,"snakeCase":2},"CellArgs":{"__symbolic":"interface"},"CheckboxSelector":{"__symbolic":"interface"},"Column":{"__symbolic":"interface"},"ColumnFilter":{"__symbolic":"interface"},"ColumnFilters":{"__symbolic":"interface"},"ColumnPicker":{"__symbolic":"interface"},"CurrentFilter":{"__symbolic":"interface"},"CurrentPagination":{"__symbolic":"interface"},"CurrentSorter":{"__symbolic":"interface"},"DelimiterType":{"colon":":","comma":",","equalSign":"=","pipe":"|","semicolon":";","space":" ","tab":"\t","doubleColon":"::","doublePipe":"||","doubleSemicolon":";;"},"EditCommand":{"__symbolic":"interface"},"Editor":{"__symbolic":"interface"},"ExportOption":{"__symbolic":"interface"},"FieldType":{"unknown":0,"string":1,"boolean":2,"integer":3,"float":4,"number":5,"date":6,"dateIso":7,"dateUtc":8,"dateTime":9,"dateTimeIso":10,"dateTimeIsoAmPm":11,"dateTimeIsoAM_PM":12,"dateUs":13,"dateUsShort":14,"dateTimeUs":15,"dateTimeUsAmPm":16,"dateTimeUsAM_PM":17,"dateTimeUsShort":18,"dateTimeUsShortAmPm":19,"dateTimeUsShortAM_PM":20},"FileType":{"csv":"csv","doc":"doc","docx":"docx","pdf":"pdf","txt":"txt","xls":"xls","xlsx":"xlsx"},"Filter":{"__symbolic":"interface"},"FilterArguments":{"__symbolic":"interface"},"FilterCallbackArg":{"__symbolic":"interface"},"FilterCallback":{"__symbolic":"interface"},"FilterChangedArgs":{"__symbolic":"interface"},"FilterCondition":{"__symbolic":"interface"},"FilterConditionOption":{"__symbolic":"interface"},"FilterType":{"input":0,"select":1,"multipleSelect":2,"singleSelect":3,"custom":4,"compoundDate":5,"compoundInput":6},"Formatter":{"__symbolic":"interface"},"FormElementType":{"input":0,"select":1,"multipleSelect":2,"singleSelect":3,"custom":4,"inputNoPlaceholder":5,"textarea":6},"GraphqlDatasetFilter":{"__symbolic":"interface"},"GraphqlCursorPaginationOption":{"__symbolic":"interface"},"GraphqlFilteringOption":{"__symbolic":"interface"},"GraphqlPaginationOption":{"__symbolic":"interface"},"GraphqlResult":{"__symbolic":"interface"},"GraphqlServiceOption":{"__symbolic":"interface"},"GraphqlSortingOption":{"__symbolic":"interface"},"GroupFormatter":{"__symbolic":"interface"},"CustomGridMenu":{"__symbolic":"interface"},"GridMenu":{"__symbolic":"interface"},"GridOption":{"__symbolic":"interface"},"GridState":{"__symbolic":"interface"},"GridStateType":{"filter":"filter","pagination":"pagination","sorter":"sorter"},"GridStateChange":{"__symbolic":"interface"},"HeaderButton":{"__symbolic":"interface"},"HeaderButtonItem":{"__symbolic":"interface"},"HeaderButtonOnCommandArgs":{"__symbolic":"interface"},"HeaderMenu":{"__symbolic":"interface"},"HeaderMenuItem":{"__symbolic":"interface"},"HeaderMenuOnCommandArgs":{"__symbolic":"interface"},"MenuOption":{"__symbolic":"interface"},"HeaderMenuOnBeforeMenuShowArgs":{"__symbolic":"interface"},"HtmlElementPosition":{"__symbolic":"interface"},"KeyCode":{"BACKSPACE":8,"DELETE":46,"DOWN":40,"END":35,"ENTER":13,"ESCAPE":27,"HOME":36,"INSERT":45,"LEFT":37,"PAGE_DOWN":34,"PAGE_UP":33,"RIGHT":39,"TAB":9,"UP":38},"MultipleSelectOption":{"__symbolic":"interface"},"OdataOption":{"__symbolic":"interface"},"OnEventArgs":{"__symbolic":"interface"},"OperatorString":{"__symbolic":"interface"},"OperatorType":{"contains":"Contains","lessThan":"LT","lessThanOrEqual":"LE","greaterThan":"GT","greaterThanOrEqual":"GE","notEqual":"NE","equal":"EQ","endsWith":"EndsWith","startsWith":"StartsWith","in":"IN","notIn":"NIN"},"Pagination":{"__symbolic":"interface"},"PaginationChangedArgs":{"__symbolic":"interface"},"SearchTerm":{"__symbolic":"interface"},"SelectOption":{"__symbolic":"interface"},"SlickEvent":{"__symbolic":"interface"},"SortChanged":{"__symbolic":"interface"},"SortChangedArgs":{"__symbolic":"interface"},"SortDirection":{"asc":"asc","ASC":"ASC","desc":"desc","DESC":"DESC"},"SortDirectionString":{"__symbolic":"interface"},"Sorter":{"__symbolic":"interface"},"ControlAndPluginService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExportService"},{"__symbolic":"reference","name":"FilterService"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"attachDifferentControlOrPlugins":[{"__symbolic":"method"}],"createColumnPicker":[{"__symbolic":"method"}],"createGridMenu":[{"__symbolic":"method"}],"hideColumn":[{"__symbolic":"method"}],"removeColumnByIndex":[{"__symbolic":"method"}],"autoResizeColumns":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"addGridMenuCustomCommands":[{"__symbolic":"method"}],"getDefaultGridMenuOptions":[{"__symbolic":"method"}],"refreshBackendDataset":[{"__symbolic":"method"}],"resetGridMenuTranslations":[{"__symbolic":"method"}],"translateColumnPicker":[{"__symbolic":"method"}],"translateGridMenu":[{"__symbolic":"method"}],"translateHeaders":[{"__symbolic":"method"}],"createPluginBeforeGridCreation":[{"__symbolic":"method"}]}},"ExportColumnHeader":{"__symbolic":"interface"},"ExportService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"exportToFile":[{"__symbolic":"method"}],"getDataOutput":[{"__symbolic":"method"}],"getAllGridRowData":[{"__symbolic":"method"}],"getAllSlickGridAggregators":[{"__symbolic":"method"}],"getColumnHeaders":[{"__symbolic":"method"}],"readRegularRowData":[{"__symbolic":"method"}],"readGroupedTitleRow":[{"__symbolic":"method"}],"readGroupedTotalRow":[{"__symbolic":"method"}],"getGroupedColumnTitles":[{"__symbolic":"method"}],"startDownloadFile":[{"__symbolic":"method"}]}},"FilterService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"attachBackendOnFilter":[{"__symbolic":"method"}],"attachBackendOnFilterSubscribe":[{"__symbolic":"method"}],"attachLocalOnFilter":[{"__symbolic":"method"}],"clearFilters":[{"__symbolic":"method"}],"customLocalFilter":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"disposeColumnFilters":[{"__symbolic":"method"}],"getColumnFilters":[{"__symbolic":"method"}],"getCurrentLocalFilters":[{"__symbolic":"method"}],"callbackSearchEvent":[{"__symbolic":"method"}],"addFilterTemplateToHeaderRow":[{"__symbolic":"method"}],"emitFilterChanged":[{"__symbolic":"method"}],"populateColumnFilterSearchTerms":[{"__symbolic":"method"}],"updateColumnFilters":[{"__symbolic":"method"}],"triggerEvent":[{"__symbolic":"method"}]}},"GraphqlQueryBuilder":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"error","message":"Expression form not supported","line":14,"character":68,"module":"./src/app/modules/angular-slickgrid/services/graphqlQueryBuilder"}]}],"filter":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"setAlias":[{"__symbolic":"method"}],"toString":[{"__symbolic":"method"}],"parceFind":[{"__symbolic":"method"}],"getGraphQLValue":[{"__symbolic":"method"}],"objectToString":[{"__symbolic":"method"}]}},"GraphqlService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"buildQuery":[{"__symbolic":"method"}],"buildFilterQuery":[{"__symbolic":"method"}],"init":[{"__symbolic":"method"}],"getInitPaginationOptions":[{"__symbolic":"method"}],"getDatasetName":[{"__symbolic":"method"}],"getCurrentFilters":[{"__symbolic":"method"}],"getCurrentPagination":[{"__symbolic":"method"}],"getCurrentSorters":[{"__symbolic":"method"}],"resetPaginationOptions":[{"__symbolic":"method"}],"updateOptions":[{"__symbolic":"method"}],"onFilterChanged":[{"__symbolic":"method"}],"onPaginationChanged":[{"__symbolic":"method"}],"onSortChanged":[{"__symbolic":"method"}],"updateFilters":[{"__symbolic":"method"}],"updatePagination":[{"__symbolic":"method"}],"updateSorters":[{"__symbolic":"method"}],"trimDoubleQuotesOnEnumField":[{"__symbolic":"method"}],"castFilterToColumnFilter":[{"__symbolic":"method"}]}},"GridOdataService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"OdataService"}]}],"buildQuery":[{"__symbolic":"method"}],"init":[{"__symbolic":"method"}],"updateOptions":[{"__symbolic":"method"}],"removeColumnFilter":[{"__symbolic":"method"}],"getCurrentFilters":[{"__symbolic":"method"}],"getCurrentPagination":[{"__symbolic":"method"}],"getCurrentSorters":[{"__symbolic":"method"}],"resetPaginationOptions":[{"__symbolic":"method"}],"saveColumnFilter":[{"__symbolic":"method"}],"onFilterChanged":[{"__symbolic":"method"}],"onPaginationChanged":[{"__symbolic":"method"}],"onSortChanged":[{"__symbolic":"method"}],"updateFilters":[{"__symbolic":"method"}],"updatePagination":[{"__symbolic":"method"}],"updateSorters":[{"__symbolic":"method"}],"castFilterToColumnFilter":[{"__symbolic":"method"}],"mapOdataOperator":[{"__symbolic":"method"}]}},"GridEventService":{"__symbolic":"class","members":{"attachOnCellChange":[{"__symbolic":"method"}],"attachOnClick":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}]}},"GridExtraService":{"__symbolic":"class","members":{"init":[{"__symbolic":"method"}],"getDataItemByRowNumber":[{"__symbolic":"method"}],"getItemRowMetadata":[{"__symbolic":"method"}],"highlightRow":[{"__symbolic":"method"}],"getSelectedRows":[{"__symbolic":"method"}],"setSelectedRow":[{"__symbolic":"method"}],"setSelectedRows":[{"__symbolic":"method"}],"renderGrid":[{"__symbolic":"method"}],"addItemToDatagrid":[{"__symbolic":"method"}],"updateDataGridItem":[{"__symbolic":"method"}]}},"GridExtraUtils":{"__symbolic":"class","members":{}},"GridStateService":{"__symbolic":"class","members":{"init":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"getCurrentGridState":[{"__symbolic":"method"}],"getCurrentFilters":[{"__symbolic":"method"}],"getCurrentPagination":[{"__symbolic":"method"}],"getCurrentSorters":[{"__symbolic":"method"}]}},"OdataService":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"buildQuery":[{"__symbolic":"method"}],"getFilterByColumn":[{"__symbolic":"method"}],"getFilterCount":[{"__symbolic":"method"}],"removeColumnFilter":[{"__symbolic":"method"}],"saveColumnFilter":[{"__symbolic":"method"}],"updateFilterFromListTerms":[{"__symbolic":"method"}],"updateFilterFromTerm":[{"__symbolic":"method"}],"updateOptions":[{"__symbolic":"method"}]}},"ResizerService":{"__symbolic":"class","members":{"init":[{"__symbolic":"method"}],"attachAutoResizeDataGrid":[{"__symbolic":"method"}],"calculateGridNewDimensions":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"resizeGrid":[{"__symbolic":"method"}]}},"SortService":{"__symbolic":"class","members":{"attachBackendOnSort":[{"__symbolic":"method"}],"attachBackendOnSortSubscribe":[{"__symbolic":"method"}],"attachLocalOnSort":[{"__symbolic":"method"}],"getCurrentLocalSorters":[{"__symbolic":"method"}],"loadLocalPresets":[{"__symbolic":"method"}],"onLocalSortChanged":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"emitSortChanged":[{"__symbolic":"method"}]}},"addWhiteSpaces":{"__symbolic":"function"},"htmlEntityDecode":{"__symbolic":"function","parameters":["input"],"value":{"__symbolic":"error","message":"Expression form not supported","line":26,"character":23,"module":"./src/app/modules/angular-slickgrid/services/utilities"}},"htmlEntityEncode":{"__symbolic":"function"},"arraysEqual":{"__symbolic":"function"},"castToPromise":{"__symbolic":"function"},"findOrDefault":{"__symbolic":"function","parameters":["array","logic","defaultVal"],"defaults":[null,null,{}],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"array"},"member":"find"},"arguments":[{"__symbolic":"reference","name":"logic"}]},"right":{"__symbolic":"reference","name":"defaultVal"}}},"mapMomentDateFormatWithFieldType":{"__symbolic":"function"},"mapFlatpickrDateFormatWithFieldType":{"__symbolic":"function"},"mapOperatorType":{"__symbolic":"function"},"mapOperatorByFieldType":{"__symbolic":"function"},"mapOperatorByFilterType":{"__symbolic":"function"},"parseUtcDate":{"__symbolic":"function"},"toCamelCase":{"__symbolic":"function","parameters":["str"],"value":{"__symbolic":"error","message":"Expression form not supported","line":389,"character":21,"module":"./src/app/modules/angular-slickgrid/services/utilities"}},"toKebabCase":{"__symbolic":"function","parameters":["str"],"value":{"__symbolic":"error","message":"Expression form not supported","line":405,"character":34,"module":"./src/app/modules/angular-slickgrid/services/utilities"}},"Editors":{"checkbox":{"__symbolic":"reference","name":"ɵb"},"date":{"__symbolic":"reference","name":"ɵc"},"float":{"__symbolic":"reference","name":"ɵd"},"integer":{"__symbolic":"reference","name":"ɵe"},"longText":{"__symbolic":"reference","name":"ɵf"},"multipleSelect":{"__symbolic":"reference","name":"ɵg"},"singleSelect":{"__symbolic":"reference","name":"ɵh"},"text":{"__symbolic":"reference","name":"ɵi"}},"FilterConditions":{"executeMappedCondition":{"__symbolic":"reference","name":"ɵj"},"booleanFilter":{"__symbolic":"reference","name":"ɵk"},"collectionSearchFilter":{"__symbolic":"reference","name":"ɵl"},"dateFilter":{"__symbolic":"reference","name":"ɵm"},"dateIsoFilter":{"__symbolic":"reference","name":"ɵn"},"dateUtcFilter":{"__symbolic":"reference","name":"ɵo"},"dateUsFilter":{"__symbolic":"reference","name":"ɵp"},"dateUsShortFilter":{"__symbolic":"reference","name":"ɵq"},"numberFilter":{"__symbolic":"reference","name":"ɵr"},"stringFilter":{"__symbolic":"reference","name":"ɵs"},"testFilter":{"__symbolic":"reference","name":"ɵt"}},"Filters":{"input":{"__symbolic":"reference","name":"ɵu"},"multipleSelect":{"__symbolic":"reference","name":"ɵv"},"singleSelect":{"__symbolic":"reference","name":"ɵw"},"select":{"__symbolic":"reference","name":"ɵx"},"compoundDate":{"__symbolic":"reference","name":"ɵy"},"compoundInput":{"__symbolic":"reference","name":"ɵz"}},"Formatters":{"arrayToCsv":{"__symbolic":"reference","name":"ɵba"},"checkbox":{"__symbolic":"reference","name":"ɵbb"},"checkmark":{"__symbolic":"reference","name":"ɵbc"},"complexObject":{"__symbolic":"reference","name":"ɵbd"},"collection":{"__symbolic":"reference","name":"ɵbe"},"dateIso":{"__symbolic":"reference","name":"ɵbf"},"dateTimeIso":{"__symbolic":"reference","name":"ɵbg"},"dateTimeIsoAmPm":{"__symbolic":"reference","name":"ɵbh"},"dateUs":{"__symbolic":"reference","name":"ɵbi"},"dateTimeUs":{"__symbolic":"reference","name":"ɵbj"},"dateTimeUsAmPm":{"__symbolic":"reference","name":"ɵbk"},"deleteIcon":{"__symbolic":"reference","name":"ɵbl"},"editIcon":{"__symbolic":"reference","name":"ɵbm"},"hyperlink":{"__symbolic":"reference","name":"ɵbn"},"hyperlinkUriPrefix":{"__symbolic":"reference","name":"ɵbo"},"infoIcon":{"__symbolic":"reference","name":"ɵbp"},"lowercase":{"__symbolic":"reference","name":"ɵbq"},"multiple":{"__symbolic":"reference","name":"ɵbr"},"percentComplete":{"__symbolic":"reference","name":"ɵbs"},"percentCompleteBar":{"__symbolic":"reference","name":"ɵbt"},"progressBar":{"__symbolic":"reference","name":"ɵbu"},"translate":{"__symbolic":"reference","name":"ɵbv"},"translateBoolean":{"__symbolic":"reference","name":"ɵbw"},"uppercase":{"__symbolic":"reference","name":"ɵbx"},"yesNo":{"__symbolic":"reference","name":"ɵby"}},"Sorters":{"date":{"__symbolic":"reference","name":"ɵbz"},"dateIso":{"__symbolic":"reference","name":"ɵca"},"dateUs":{"__symbolic":"reference","name":"ɵcb"},"dateUsShort":{"__symbolic":"reference","name":"ɵcc"},"numeric":{"__symbolic":"reference","name":"ɵcd"},"string":{"__symbolic":"reference","name":"ɵce"}},"SlickPaginationComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"slick-pagination","template":"\n"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"onPaginationChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"gridPaginationOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"grid":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"FilterService"},{"__symbolic":"reference","name":"SortService"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ceil":[{"__symbolic":"method"}],"changeToFirstPage":[{"__symbolic":"method"}],"changeToLastPage":[{"__symbolic":"method"}],"changeToNextPage":[{"__symbolic":"method"}],"changeToPreviousPage":[{"__symbolic":"method"}],"changeToCurrentPage":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"onChangeItemPerPage":[{"__symbolic":"method"}],"refreshPagination":[{"__symbolic":"method"}],"onPageChanged":[{"__symbolic":"method"}],"recalculateFromToIndexes":[{"__symbolic":"method"}]}},"AngularSlickgridComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"angular-slickgrid","template":"\n"}]}],"members":{"onDataviewCreated":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onGridCreated":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onGridInitialized":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onBeforeGridCreate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onBeforeGridDestroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onAfterGridDestroyed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onGridStateServiceChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"gridId":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"gridOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"gridHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"gridWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"columnDefinitions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"dataset":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,null,null,null,null,null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":["config"]}]],"parameters":[{"__symbolic":"reference","name":"ControlAndPluginService"},{"__symbolic":"reference","name":"ExportService"},{"__symbolic":"reference","name":"FilterService"},{"__symbolic":"reference","name":"GridExtraService"},{"__symbolic":"reference","name":"GridEventService"},{"__symbolic":"reference","name":"GridStateService"},{"__symbolic":"reference","name":"ResizerService"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"SortService"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"},{"__symbolic":"reference","name":"GridOption"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"initialization":[{"__symbolic":"method"}],"createBackendApiInternalPostProcessCallback":[{"__symbolic":"method"}],"attachDifferentHooks":[{"__symbolic":"method"}],"attachBackendCallbackFunctions":[{"__symbolic":"method"}],"attachResizeHook":[{"__symbolic":"method"}],"mergeGridOptions":[{"__symbolic":"method"}],"paginationChanged":[{"__symbolic":"method"}],"refreshGridData":[{"__symbolic":"method"}],"updateColumnDefinitionsList":[{"__symbolic":"method"}],"showHeaderRow":[{"__symbolic":"method"}],"toggleHeaderRow":[{"__symbolic":"method"}]}},"AngularSlickgridModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateModule"}],"declarations":[{"__symbolic":"reference","name":"AngularSlickgridComponent"},{"__symbolic":"reference","name":"SlickPaginationComponent"}],"exports":[{"__symbolic":"reference","name":"AngularSlickgridComponent"},{"__symbolic":"reference","name":"SlickPaginationComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"defaults":[{}],"value":{"ngModule":{"__symbolic":"reference","name":"AngularSlickgridModule"},"providers":[{"provide":"config","useValue":{"__symbolic":"reference","name":"config"}},{"__symbolic":"reference","name":"ControlAndPluginService"},{"__symbolic":"reference","name":"ExportService"},{"__symbolic":"reference","name":"FilterService"},{"__symbolic":"reference","name":"GraphqlService"},{"__symbolic":"reference","name":"GridEventService"},{"__symbolic":"reference","name":"GridExtraService"},{"__symbolic":"reference","name":"GridOdataService"},{"__symbolic":"reference","name":"GridStateService"},{"__symbolic":"reference","name":"OdataService"},{"__symbolic":"reference","name":"ResizerService"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"SortService"}]}}}},"ɵa":{"__symbolic":"class","members":{"init":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"preClick":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"getCurrentLocale":[{"__symbolic":"method"}],"loadFlatpickrLocale":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"getDecimalPlaces":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"handleKeyDown":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"cancel":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"position":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"refresh":[{"__symbolic":"method"}]}},"ɵi":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"getValue":[{"__symbolic":"method"}],"setValue":[{"__symbolic":"method"}],"loadValue":[{"__symbolic":"method"}],"serializeValue":[{"__symbolic":"method"}],"applyValue":[{"__symbolic":"method"}],"isValueChanged":[{"__symbolic":"method"}],"validate":[{"__symbolic":"method"}]}},"ɵj":{"__symbolic":"error","message":"Function call not supported","line":13,"character":55,"module":"./src/app/modules/angular-slickgrid/filter-conditions/executeMappedCondition"},"ɵk":{"__symbolic":"error","message":"Function call not supported","line":6,"character":55,"module":"./src/app/modules/angular-slickgrid/filter-conditions/booleanFilterCondition"},"ɵl":{"__symbolic":"error","message":"Function call not supported","line":3,"character":64,"module":"./src/app/modules/angular-slickgrid/filter-conditions/collectionSearchFilterCondition"},"ɵm":{"__symbolic":"error","message":"Function call not supported","line":6,"character":52,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateFilterCondition"},"ɵn":{"__symbolic":"error","message":"Function call not supported","line":7,"character":55,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateIsoFilterCondition"},"ɵo":{"__symbolic":"error","message":"Function call not supported","line":6,"character":55,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateUtcFilterCondition"},"ɵp":{"__symbolic":"error","message":"Function call not supported","line":7,"character":54,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateUsFilterCondition"},"ɵq":{"__symbolic":"error","message":"Function call not supported","line":7,"character":59,"module":"./src/app/modules/angular-slickgrid/filter-conditions/dateUsShortFilterCondition"},"ɵr":{"__symbolic":"error","message":"Function call not supported","line":3,"character":54,"module":"./src/app/modules/angular-slickgrid/filter-conditions/numberFilterCondition"},"ɵs":{"__symbolic":"error","message":"Function call not supported","line":3,"character":54,"module":"./src/app/modules/angular-slickgrid/filter-conditions/stringFilterCondition"},"ɵt":{"__symbolic":"error","message":"Function call not supported","line":0,"character":35,"module":"./src/app/modules/angular-slickgrid/filter-conditions/filterUtilities"},"ɵu":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}]}},"ɵv":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"findValueInSearchTerms":[{"__symbolic":"method"}]}},"ɵw":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}]}},"ɵx":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildTemplateHtmlString":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}]}},"ɵy":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildDatePickerInput":[{"__symbolic":"method"}],"buildSelectOperatorHtmlString":[{"__symbolic":"method"}],"getOptionValues":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"getCurrentLocale":[{"__symbolic":"method"}],"loadFlatpickrLocale":[{"__symbolic":"method"}],"onTriggerEvent":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}]}},"ɵz":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService"}]}],"init":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setValues":[{"__symbolic":"method"}],"buildInputHtmlString":[{"__symbolic":"method"}],"buildSelectOperatorHtmlString":[{"__symbolic":"method"}],"getOptionValues":[{"__symbolic":"method"}],"createDomElement":[{"__symbolic":"method"}],"onTriggerEvent":[{"__symbolic":"method"}]}},"ɵba":{"__symbolic":"error","message":"Function call not supported","line":3,"character":46,"module":"./src/app/modules/angular-slickgrid/formatters/arrayToCsvFormatter"},"ɵbb":{"__symbolic":"error","message":"Function call not supported","line":3,"character":44,"module":"./src/app/modules/angular-slickgrid/formatters/checkboxFormatter"},"ɵbc":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/checkmarkFormatter"},"ɵbd":{"__symbolic":"error","message":"Function call not supported","line":3,"character":49,"module":"./src/app/modules/angular-slickgrid/formatters/complexObjectFormatter"},"ɵbe":{"__symbolic":"error","message":"Function call not supported","line":7,"character":46,"module":"./src/app/modules/angular-slickgrid/formatters/collectionFormatter"},"ɵbf":{"__symbolic":"error","message":"Function call not supported","line":6,"character":43,"module":"./src/app/modules/angular-slickgrid/formatters/dateIsoFormatter"},"ɵbg":{"__symbolic":"error","message":"Function call not supported","line":6,"character":47,"module":"./src/app/modules/angular-slickgrid/formatters/dateTimeIsoFormatter"},"ɵbh":{"__symbolic":"error","message":"Function call not supported","line":6,"character":51,"module":"./src/app/modules/angular-slickgrid/formatters/dateTimeIsoAmPmFormatter"},"ɵbi":{"__symbolic":"error","message":"Function call not supported","line":6,"character":42,"module":"./src/app/modules/angular-slickgrid/formatters/dateUsFormatter"},"ɵbj":{"__symbolic":"error","message":"Function call not supported","line":6,"character":46,"module":"./src/app/modules/angular-slickgrid/formatters/dateTimeUsFormatter"},"ɵbk":{"__symbolic":"error","message":"Function call not supported","line":6,"character":50,"module":"./src/app/modules/angular-slickgrid/formatters/dateTimeUsAmPmFormatter"},"ɵbl":{"__symbolic":"error","message":"Function call not supported","line":3,"character":46,"module":"./src/app/modules/angular-slickgrid/formatters/deleteIconFormatter"},"ɵbm":{"__symbolic":"error","message":"Function call not supported","line":3,"character":44,"module":"./src/app/modules/angular-slickgrid/formatters/editIconFormatter"},"ɵbn":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/hyperlinkFormatter"},"ɵbo":{"__symbolic":"error","message":"Function call not supported","line":3,"character":54,"module":"./src/app/modules/angular-slickgrid/formatters/hyperlinkUriPrefixFormatter"},"ɵbp":{"__symbolic":"error","message":"Function call not supported","line":3,"character":44,"module":"./src/app/modules/angular-slickgrid/formatters/infoIconFormatter"},"ɵbq":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/lowercaseFormatter"},"ɵbr":{"__symbolic":"error","message":"Function call not supported","line":2,"character":44,"module":"./src/app/modules/angular-slickgrid/formatters/multipleFormatter"},"ɵbs":{"__symbolic":"error","message":"Function call not supported","line":3,"character":51,"module":"./src/app/modules/angular-slickgrid/formatters/percentCompleteFormatter"},"ɵbt":{"__symbolic":"error","message":"Function call not supported","line":3,"character":54,"module":"./src/app/modules/angular-slickgrid/formatters/percentCompleteBarFormatter"},"ɵbu":{"__symbolic":"error","message":"Function call not supported","line":3,"character":47,"module":"./src/app/modules/angular-slickgrid/formatters/progressBarFormatter"},"ɵbv":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/translateFormatter"},"ɵbw":{"__symbolic":"error","message":"Function call not supported","line":3,"character":52,"module":"./src/app/modules/angular-slickgrid/formatters/translateBooleanFormatter"},"ɵbx":{"__symbolic":"error","message":"Function call not supported","line":3,"character":45,"module":"./src/app/modules/angular-slickgrid/formatters/uppercaseFormatter"},"ɵby":{"__symbolic":"error","message":"Function call not supported","line":3,"character":41,"module":"./src/app/modules/angular-slickgrid/formatters/yesNoFormatter"},"ɵbz":{"__symbolic":"error","message":"Function call not supported","line":4,"character":34,"module":"./src/app/modules/angular-slickgrid/sorters/dateSorter"},"ɵca":{"__symbolic":"error","message":"Function call not supported","line":6,"character":37,"module":"./src/app/modules/angular-slickgrid/sorters/dateIsoSorter"},"ɵcb":{"__symbolic":"error","message":"Function call not supported","line":6,"character":36,"module":"./src/app/modules/angular-slickgrid/sorters/dateUsSorter"},"ɵcc":{"__symbolic":"error","message":"Function call not supported","line":6,"character":41,"module":"./src/app/modules/angular-slickgrid/sorters/dateUsShortSorter"},"ɵcd":{"__symbolic":"error","message":"Function call not supported","line":2,"character":37,"module":"./src/app/modules/angular-slickgrid/sorters/numericSorter"},"ɵce":{"__symbolic":"error","message":"Function call not supported","line":2,"character":36,"module":"./src/app/modules/angular-slickgrid/sorters/stringSorter"}},"origins":{"AutoResizeOption":"./src/app/modules/angular-slickgrid/models/autoResizeOption.interface","BackendService":"./src/app/modules/angular-slickgrid/models/backendService.interface","BackendEventChanged":"./src/app/modules/angular-slickgrid/models/backendEventChanged.interface","BackendServiceApi":"./src/app/modules/angular-slickgrid/models/backendServiceApi.interface","BackendServiceOption":"./src/app/modules/angular-slickgrid/models/backendServiceOption.interface","CaseType":"./src/app/modules/angular-slickgrid/models/caseType","CellArgs":"./src/app/modules/angular-slickgrid/models/cellArgs.interface","CheckboxSelector":"./src/app/modules/angular-slickgrid/models/checkboxSelector.interface","Column":"./src/app/modules/angular-slickgrid/models/column.interface","ColumnFilter":"./src/app/modules/angular-slickgrid/models/columnFilter.interface","ColumnFilters":"./src/app/modules/angular-slickgrid/models/columnFilters.interface","ColumnPicker":"./src/app/modules/angular-slickgrid/models/columnPicker.interface","CurrentFilter":"./src/app/modules/angular-slickgrid/models/currentFilter.interface","CurrentPagination":"./src/app/modules/angular-slickgrid/models/currentPagination.interface","CurrentSorter":"./src/app/modules/angular-slickgrid/models/currentSorter.interface","DelimiterType":"./src/app/modules/angular-slickgrid/models/delimiterType.enum","EditCommand":"./src/app/modules/angular-slickgrid/models/editCommand.interface","Editor":"./src/app/modules/angular-slickgrid/models/editor.interface","ExportOption":"./src/app/modules/angular-slickgrid/models/exportOption.interface","FieldType":"./src/app/modules/angular-slickgrid/models/fieldType","FileType":"./src/app/modules/angular-slickgrid/models/fileType.enum","Filter":"./src/app/modules/angular-slickgrid/models/filter.interface","FilterArguments":"./src/app/modules/angular-slickgrid/models/filterArguments.interface","FilterCallbackArg":"./src/app/modules/angular-slickgrid/models/filterCallback.interface","FilterCallback":"./src/app/modules/angular-slickgrid/models/filterCallback.interface","FilterChangedArgs":"./src/app/modules/angular-slickgrid/models/filterChangedArgs.interface","FilterCondition":"./src/app/modules/angular-slickgrid/models/filterCondition.interface","FilterConditionOption":"./src/app/modules/angular-slickgrid/models/filterConditionOption.interface","FilterType":"./src/app/modules/angular-slickgrid/models/filterType","Formatter":"./src/app/modules/angular-slickgrid/models/formatter.interface","FormElementType":"./src/app/modules/angular-slickgrid/models/formElementType","GraphqlDatasetFilter":"./src/app/modules/angular-slickgrid/models/graphqlDatasetFilter.interface","GraphqlCursorPaginationOption":"./src/app/modules/angular-slickgrid/models/graphqlCursorPaginationOption.interface","GraphqlFilteringOption":"./src/app/modules/angular-slickgrid/models/graphqlFilteringOption.interface","GraphqlPaginationOption":"./src/app/modules/angular-slickgrid/models/graphqlPaginationOption.interface","GraphqlResult":"./src/app/modules/angular-slickgrid/models/graphqlResult.interface","GraphqlServiceOption":"./src/app/modules/angular-slickgrid/models/graphqlServiceOption.interface","GraphqlSortingOption":"./src/app/modules/angular-slickgrid/models/graphqlSortingOption.interface","GroupFormatter":"./src/app/modules/angular-slickgrid/models/groupFormatter.interface","CustomGridMenu":"./src/app/modules/angular-slickgrid/models/customGridMenu.interface","GridMenu":"./src/app/modules/angular-slickgrid/models/gridMenu.interface","GridOption":"./src/app/modules/angular-slickgrid/models/gridOption.interface","GridState":"./src/app/modules/angular-slickgrid/models/gridState.interface","GridStateType":"./src/app/modules/angular-slickgrid/models/gridStateType.enum","GridStateChange":"./src/app/modules/angular-slickgrid/models/gridStateChange.interface","HeaderButton":"./src/app/modules/angular-slickgrid/models/headerButton.interface","HeaderButtonItem":"./src/app/modules/angular-slickgrid/models/headerButtonItem.interface","HeaderButtonOnCommandArgs":"./src/app/modules/angular-slickgrid/models/headerButtonOnCommandArgs.interface","HeaderMenu":"./src/app/modules/angular-slickgrid/models/headerMenu.interface","HeaderMenuItem":"./src/app/modules/angular-slickgrid/models/headerMenuItem.interface","HeaderMenuOnCommandArgs":"./src/app/modules/angular-slickgrid/models/headerMenuOnCommandArgs.interface","MenuOption":"./src/app/modules/angular-slickgrid/models/headerMenuOnBeforeMenuShowArgs.interface","HeaderMenuOnBeforeMenuShowArgs":"./src/app/modules/angular-slickgrid/models/headerMenuOnBeforeMenuShowArgs.interface","HtmlElementPosition":"./src/app/modules/angular-slickgrid/models/htmlElementPosition.interface","KeyCode":"./src/app/modules/angular-slickgrid/models/keyCode.enum","MultipleSelectOption":"./src/app/modules/angular-slickgrid/models/multipleSelectOption.interface","OdataOption":"./src/app/modules/angular-slickgrid/models/odataOption.interface","OnEventArgs":"./src/app/modules/angular-slickgrid/models/onEventArgs.interface","OperatorString":"./src/app/modules/angular-slickgrid/models/operatorString","OperatorType":"./src/app/modules/angular-slickgrid/models/operatorType.enum","Pagination":"./src/app/modules/angular-slickgrid/models/pagination.interface","PaginationChangedArgs":"./src/app/modules/angular-slickgrid/models/paginationChangedArgs.interface","SearchTerm":"./src/app/modules/angular-slickgrid/models/searchTerm.type","SelectOption":"./src/app/modules/angular-slickgrid/models/selectOption.interface","SlickEvent":"./src/app/modules/angular-slickgrid/models/slickEvent.interface","SortChanged":"./src/app/modules/angular-slickgrid/models/sortChanged.interface","SortChangedArgs":"./src/app/modules/angular-slickgrid/models/sortChangedArgs.interface","SortDirection":"./src/app/modules/angular-slickgrid/models/sortDirection.enum","SortDirectionString":"./src/app/modules/angular-slickgrid/models/sortDirectionString","Sorter":"./src/app/modules/angular-slickgrid/models/sorter.interface","ControlAndPluginService":"./src/app/modules/angular-slickgrid/services/controlAndPlugin.service","ExportColumnHeader":"./src/app/modules/angular-slickgrid/services/export.service","ExportService":"./src/app/modules/angular-slickgrid/services/export.service","FilterService":"./src/app/modules/angular-slickgrid/services/filter.service","GraphqlQueryBuilder":"./src/app/modules/angular-slickgrid/services/graphqlQueryBuilder","GraphqlService":"./src/app/modules/angular-slickgrid/services/graphql.service","GridOdataService":"./src/app/modules/angular-slickgrid/services/grid-odata.service","GridEventService":"./src/app/modules/angular-slickgrid/services/gridEvent.service","GridExtraService":"./src/app/modules/angular-slickgrid/services/gridExtra.service","GridExtraUtils":"./src/app/modules/angular-slickgrid/services/gridExtraUtils","GridStateService":"./src/app/modules/angular-slickgrid/services/gridState.service","OdataService":"./src/app/modules/angular-slickgrid/services/odata.service","ResizerService":"./src/app/modules/angular-slickgrid/services/resizer.service","SortService":"./src/app/modules/angular-slickgrid/services/sort.service","addWhiteSpaces":"./src/app/modules/angular-slickgrid/services/utilities","htmlEntityDecode":"./src/app/modules/angular-slickgrid/services/utilities","htmlEntityEncode":"./src/app/modules/angular-slickgrid/services/utilities","arraysEqual":"./src/app/modules/angular-slickgrid/services/utilities","castToPromise":"./src/app/modules/angular-slickgrid/services/utilities","findOrDefault":"./src/app/modules/angular-slickgrid/services/utilities","mapMomentDateFormatWithFieldType":"./src/app/modules/angular-slickgrid/services/utilities","mapFlatpickrDateFormatWithFieldType":"./src/app/modules/angular-slickgrid/services/utilities","mapOperatorType":"./src/app/modules/angular-slickgrid/services/utilities","mapOperatorByFieldType":"./src/app/modules/angular-slickgrid/services/utilities","mapOperatorByFilterType":"./src/app/modules/angular-slickgrid/services/utilities","parseUtcDate":"./src/app/modules/angular-slickgrid/services/utilities","toCamelCase":"./src/app/modules/angular-slickgrid/services/utilities","toKebabCase":"./src/app/modules/angular-slickgrid/services/utilities","Editors":"./src/app/modules/angular-slickgrid/editors/index","FilterConditions":"./src/app/modules/angular-slickgrid/filter-conditions/index","Filters":"./src/app/modules/angular-slickgrid/filters/index","Formatters":"./src/app/modules/angular-slickgrid/formatters/index","Sorters":"./src/app/modules/angular-slickgrid/sorters/index","SlickPaginationComponent":"./src/app/modules/angular-slickgrid/components/slick-pagination.component","AngularSlickgridComponent":"./src/app/modules/angular-slickgrid/components/angular-slickgrid.component","AngularSlickgridModule":"./src/app/modules/angular-slickgrid/modules/angular-slickgrid.module","ɵa":"./src/app/modules/angular-slickgrid/services/shared.service","ɵb":"./src/app/modules/angular-slickgrid/editors/checkboxEditor","ɵc":"./src/app/modules/angular-slickgrid/editors/dateEditor","ɵd":"./src/app/modules/angular-slickgrid/editors/floatEditor","ɵe":"./src/app/modules/angular-slickgrid/editors/integerEditor","ɵf":"./src/app/modules/angular-slickgrid/editors/longTextEditor","ɵg":"./src/app/modules/angular-slickgrid/editors/multipleSelectEditor","ɵh":"./src/app/modules/angular-slickgrid/editors/singleSelectEditor","ɵi":"./src/app/modules/angular-slickgrid/editors/textEditor","ɵj":"./src/app/modules/angular-slickgrid/filter-conditions/executeMappedCondition","ɵk":"./src/app/modules/angular-slickgrid/filter-conditions/booleanFilterCondition","ɵl":"./src/app/modules/angular-slickgrid/filter-conditions/collectionSearchFilterCondition","ɵm":"./src/app/modules/angular-slickgrid/filter-conditions/dateFilterCondition","ɵn":"./src/app/modules/angular-slickgrid/filter-conditions/dateIsoFilterCondition","ɵo":"./src/app/modules/angular-slickgrid/filter-conditions/dateUtcFilterCondition","ɵp":"./src/app/modules/angular-slickgrid/filter-conditions/dateUsFilterCondition","ɵq":"./src/app/modules/angular-slickgrid/filter-conditions/dateUsShortFilterCondition","ɵr":"./src/app/modules/angular-slickgrid/filter-conditions/numberFilterCondition","ɵs":"./src/app/modules/angular-slickgrid/filter-conditions/stringFilterCondition","ɵt":"./src/app/modules/angular-slickgrid/filter-conditions/filterUtilities","ɵu":"./src/app/modules/angular-slickgrid/filters/inputFilter","ɵv":"./src/app/modules/angular-slickgrid/filters/multipleSelectFilter","ɵw":"./src/app/modules/angular-slickgrid/filters/singleSelectFilter","ɵx":"./src/app/modules/angular-slickgrid/filters/selectFilter","ɵy":"./src/app/modules/angular-slickgrid/filters/compoundDateFilter","ɵz":"./src/app/modules/angular-slickgrid/filters/compoundInputFilter","ɵba":"./src/app/modules/angular-slickgrid/formatters/arrayToCsvFormatter","ɵbb":"./src/app/modules/angular-slickgrid/formatters/checkboxFormatter","ɵbc":"./src/app/modules/angular-slickgrid/formatters/checkmarkFormatter","ɵbd":"./src/app/modules/angular-slickgrid/formatters/complexObjectFormatter","ɵbe":"./src/app/modules/angular-slickgrid/formatters/collectionFormatter","ɵbf":"./src/app/modules/angular-slickgrid/formatters/dateIsoFormatter","ɵbg":"./src/app/modules/angular-slickgrid/formatters/dateTimeIsoFormatter","ɵbh":"./src/app/modules/angular-slickgrid/formatters/dateTimeIsoAmPmFormatter","ɵbi":"./src/app/modules/angular-slickgrid/formatters/dateUsFormatter","ɵbj":"./src/app/modules/angular-slickgrid/formatters/dateTimeUsFormatter","ɵbk":"./src/app/modules/angular-slickgrid/formatters/dateTimeUsAmPmFormatter","ɵbl":"./src/app/modules/angular-slickgrid/formatters/deleteIconFormatter","ɵbm":"./src/app/modules/angular-slickgrid/formatters/editIconFormatter","ɵbn":"./src/app/modules/angular-slickgrid/formatters/hyperlinkFormatter","ɵbo":"./src/app/modules/angular-slickgrid/formatters/hyperlinkUriPrefixFormatter","ɵbp":"./src/app/modules/angular-slickgrid/formatters/infoIconFormatter","ɵbq":"./src/app/modules/angular-slickgrid/formatters/lowercaseFormatter","ɵbr":"./src/app/modules/angular-slickgrid/formatters/multipleFormatter","ɵbs":"./src/app/modules/angular-slickgrid/formatters/percentCompleteFormatter","ɵbt":"./src/app/modules/angular-slickgrid/formatters/percentCompleteBarFormatter","ɵbu":"./src/app/modules/angular-slickgrid/formatters/progressBarFormatter","ɵbv":"./src/app/modules/angular-slickgrid/formatters/translateFormatter","ɵbw":"./src/app/modules/angular-slickgrid/formatters/translateBooleanFormatter","ɵbx":"./src/app/modules/angular-slickgrid/formatters/uppercaseFormatter","ɵby":"./src/app/modules/angular-slickgrid/formatters/yesNoFormatter","ɵbz":"./src/app/modules/angular-slickgrid/sorters/dateSorter","ɵca":"./src/app/modules/angular-slickgrid/sorters/dateIsoSorter","ɵcb":"./src/app/modules/angular-slickgrid/sorters/dateUsSorter","ɵcc":"./src/app/modules/angular-slickgrid/sorters/dateUsShortSorter","ɵcd":"./src/app/modules/angular-slickgrid/sorters/numericSorter","ɵce":"./src/app/modules/angular-slickgrid/sorters/stringSorter"},"importAs":"angular-slickgrid"}
\ No newline at end of file
diff --git a/dist/bundles/angular-slickgrid.umd.js b/dist/bundles/angular-slickgrid.umd.js
index 9691523b5..a25b7b16f 100644
--- a/dist/bundles/angular-slickgrid.umd.js
+++ b/dist/bundles/angular-slickgrid.umd.js
@@ -1,8 +1,8 @@
(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('rxjs/Observable'), require('rxjs/add/operator/first'), require('rxjs/add/operator/take'), require('rxjs/add/operator/toPromise'), require('moment-mini'), require('@angular/core'), require('@ngx-translate/core'), require('text-encoding-utf-8'), require('rxjs/Subject'), require('slickgrid/lib/jquery-ui-1.11.3'), require('slickgrid/lib/jquery.event.drag-2.3.0'), require('slickgrid/slick.core'), require('slickgrid/slick.dataview'), require('slickgrid/slick.grid'), require('slickgrid/controls/slick.columnpicker'), require('slickgrid/controls/slick.gridmenu'), require('slickgrid/controls/slick.pager'), require('slickgrid/plugins/slick.autotooltips'), require('slickgrid/plugins/slick.cellcopymanager'), require('slickgrid/plugins/slick.cellexternalcopymanager'), require('slickgrid/plugins/slick.cellrangedecorator'), require('slickgrid/plugins/slick.cellrangeselector'), require('slickgrid/plugins/slick.cellselectionmodel'), require('slickgrid/plugins/slick.checkboxselectcolumn'), require('slickgrid/plugins/slick.headerbuttons'), require('slickgrid/plugins/slick.headermenu'), require('slickgrid/plugins/slick.rowmovemanager'), require('slickgrid/plugins/slick.rowselectionmodel'), require('@angular/common')) :
- typeof define === 'function' && define.amd ? define(['exports', 'rxjs/Observable', 'rxjs/add/operator/first', 'rxjs/add/operator/take', 'rxjs/add/operator/toPromise', 'moment-mini', '@angular/core', '@ngx-translate/core', 'text-encoding-utf-8', 'rxjs/Subject', 'slickgrid/lib/jquery-ui-1.11.3', 'slickgrid/lib/jquery.event.drag-2.3.0', 'slickgrid/slick.core', 'slickgrid/slick.dataview', 'slickgrid/slick.grid', 'slickgrid/controls/slick.columnpicker', 'slickgrid/controls/slick.gridmenu', 'slickgrid/controls/slick.pager', 'slickgrid/plugins/slick.autotooltips', 'slickgrid/plugins/slick.cellcopymanager', 'slickgrid/plugins/slick.cellexternalcopymanager', 'slickgrid/plugins/slick.cellrangedecorator', 'slickgrid/plugins/slick.cellrangeselector', 'slickgrid/plugins/slick.cellselectionmodel', 'slickgrid/plugins/slick.checkboxselectcolumn', 'slickgrid/plugins/slick.headerbuttons', 'slickgrid/plugins/slick.headermenu', 'slickgrid/plugins/slick.rowmovemanager', 'slickgrid/plugins/slick.rowselectionmodel', '@angular/common'], factory) :
- (factory((global['angular-slickgrid'] = {}),global.Rx,global.Rx.Observable.prototype,global.Rx.Observable.prototype,global.Rx.Observable.prototype,global.moment,global.ng.core,global['ngx-translate-core'],global.textEncodingUtf8,global.Rx,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,global.ng.common));
-}(this, (function (exports,Observable,first,take,toPromise,moment_,core,core$1,textEncodingUtf8,Subject,jqueryUi1_11_3,jquery_event_drag2_3_0,slick_core,slick_dataview,slick_grid,slick_columnpicker,slick_gridmenu,slick_pager,slick_autotooltips,slick_cellcopymanager,slick_cellexternalcopymanager,slick_cellrangedecorator,slick_cellrangeselector,slick_cellselectionmodel,slick_checkboxselectcolumn,slick_headerbuttons,slick_headermenu,slick_rowmovemanager,slick_rowselectionmodel,common) { 'use strict';
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('rxjs/Observable'), require('rxjs/add/operator/first'), require('rxjs/add/operator/take'), require('rxjs/add/operator/toPromise'), require('moment-mini'), require('@angular/core'), require('@ngx-translate/core'), require('text-encoding-utf-8'), require('rxjs/Subject'), require('jquery-ui-dist/jquery-ui'), require('slickgrid/lib/jquery.event.drag-2.3.0'), require('slickgrid/slick.core'), require('slickgrid/slick.dataview'), require('slickgrid/slick.grid'), require('slickgrid/slick.groupitemmetadataprovider.js'), require('slickgrid/controls/slick.columnpicker'), require('slickgrid/controls/slick.gridmenu'), require('slickgrid/controls/slick.pager'), require('slickgrid/plugins/slick.autotooltips'), require('slickgrid/plugins/slick.cellcopymanager'), require('slickgrid/plugins/slick.cellexternalcopymanager'), require('slickgrid/plugins/slick.cellrangedecorator'), require('slickgrid/plugins/slick.cellrangeselector'), require('slickgrid/plugins/slick.cellselectionmodel'), require('slickgrid/plugins/slick.checkboxselectcolumn'), require('slickgrid/plugins/slick.headerbuttons'), require('slickgrid/plugins/slick.headermenu'), require('slickgrid/plugins/slick.rowmovemanager'), require('slickgrid/plugins/slick.rowselectionmodel'), require('@angular/common')) :
+ typeof define === 'function' && define.amd ? define(['exports', 'rxjs/Observable', 'rxjs/add/operator/first', 'rxjs/add/operator/take', 'rxjs/add/operator/toPromise', 'moment-mini', '@angular/core', '@ngx-translate/core', 'text-encoding-utf-8', 'rxjs/Subject', 'jquery-ui-dist/jquery-ui', 'slickgrid/lib/jquery.event.drag-2.3.0', 'slickgrid/slick.core', 'slickgrid/slick.dataview', 'slickgrid/slick.grid', 'slickgrid/slick.groupitemmetadataprovider.js', 'slickgrid/controls/slick.columnpicker', 'slickgrid/controls/slick.gridmenu', 'slickgrid/controls/slick.pager', 'slickgrid/plugins/slick.autotooltips', 'slickgrid/plugins/slick.cellcopymanager', 'slickgrid/plugins/slick.cellexternalcopymanager', 'slickgrid/plugins/slick.cellrangedecorator', 'slickgrid/plugins/slick.cellrangeselector', 'slickgrid/plugins/slick.cellselectionmodel', 'slickgrid/plugins/slick.checkboxselectcolumn', 'slickgrid/plugins/slick.headerbuttons', 'slickgrid/plugins/slick.headermenu', 'slickgrid/plugins/slick.rowmovemanager', 'slickgrid/plugins/slick.rowselectionmodel', '@angular/common'], factory) :
+ (factory((global['angular-slickgrid'] = {}),global.Rx,global.Rx.Observable.prototype,global.Rx.Observable.prototype,global.Rx.Observable.prototype,global.moment,global.ng.core,global['ngx-translate-core'],global.textEncodingUtf8,global.Rx,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,global.ng.common));
+}(this, (function (exports,Observable,first,take,toPromise,moment_,core,core$1,textEncodingUtf8,Subject,jqueryUi,jquery_event_drag2_3_0,slick_core,slick_dataview,slick_grid,slick_groupitemmetadataprovider_js,slick_columnpicker,slick_gridmenu,slick_pager,slick_autotooltips,slick_cellcopymanager,slick_cellexternalcopymanager,slick_cellrangedecorator,slick_cellrangeselector,slick_cellselectionmodel,slick_checkboxselectcolumn,slick_headerbuttons,slick_headermenu,slick_rowmovemanager,slick_rowselectionmodel,common) { 'use strict';
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
@@ -1960,73 +1960,90 @@ FilterService.decorators = [
FilterService.ctorParameters = function () { return [
{ type: core$1.TranslateService, },
]; };
+var SharedService = /** @class */ (function () {
+ function SharedService() {
+ }
+ SharedService.prototype.init = function (grid, dataView, gridOptions, columnDefinitions) {
+ this.grid = grid;
+ this.dataView = dataView;
+ this.gridOptions = gridOptions;
+ this.columnDefinitions = columnDefinitions;
+ };
+ return SharedService;
+}());
var ControlAndPluginService = /** @class */ (function () {
- function ControlAndPluginService(exportService, filterService, translate) {
+ function ControlAndPluginService(exportService, filterService, sharedService, translate) {
this.exportService = exportService;
this.filterService = filterService;
+ this.sharedService = sharedService;
this.translate = translate;
}
- ControlAndPluginService.prototype.attachDifferentControlOrPlugins = function (grid, columnDefinitions, options, dataView) {
- this._grid = grid;
- this._gridOptions = options;
- this._dataView = dataView;
- this._columnDefinitions = columnDefinitions;
- this.visibleColumns = columnDefinitions;
- if (options.enableColumnPicker) {
- this.columnPickerControl = this.createColumnPicker(grid, columnDefinitions, options);
- }
- if (options.enableGridMenu) {
- this.gridMenuControl = this.createGridMenu(grid, columnDefinitions, options);
- }
- if (options.enableAutoTooltip) {
- this.autoTooltipPlugin = new Slick.AutoTooltips(options.autoTooltipOptions || {});
- grid.registerPlugin(this.autoTooltipPlugin);
- }
- if (options.enableCheckboxSelector) {
- grid.registerPlugin(this.checkboxSelectorPlugin);
+ ControlAndPluginService.prototype.attachDifferentControlOrPlugins = function () {
+ var _this = this;
+ this._grid = this.sharedService.grid;
+ this._gridOptions = this.sharedService.gridOptions;
+ this._dataView = this.sharedService.dataView;
+ this._columnDefinitions = this.sharedService.columnDefinitions;
+ this.visibleColumns = this.sharedService.columnDefinitions;
+ if (this._gridOptions.enableColumnPicker) {
+ this.columnPickerControl = this.createColumnPicker(this._grid, this._columnDefinitions, this._gridOptions);
+ }
+ if (this._gridOptions.enableGridMenu) {
+ this.gridMenuControl = this.createGridMenu(this._grid, this._columnDefinitions, this._gridOptions);
+ }
+ if (this._gridOptions.enableAutoTooltip) {
+ this.autoTooltipPlugin = new Slick.AutoTooltips(this._gridOptions.autoTooltipOptions || {});
+ this._grid.registerPlugin(this.autoTooltipPlugin);
+ }
+ if (this._gridOptions.enableGrouping) {
+ var groupItemMetaProvider = this.sharedService.groupItemMetadataProvider || {};
+ this._grid.registerPlugin(groupItemMetaProvider);
+ }
+ if (this._gridOptions.enableCheckboxSelector) {
+ this._grid.registerPlugin(this.checkboxSelectorPlugin);
if (!this.rowSelectionPlugin) {
- this.rowSelectionPlugin = new Slick.RowSelectionModel(options.rowSelectionOptions || {});
- grid.setSelectionModel(this.rowSelectionPlugin);
+ this.rowSelectionPlugin = new Slick.RowSelectionModel(this._gridOptions.rowSelectionOptions || {});
+ this._grid.setSelectionModel(this.rowSelectionPlugin);
}
}
- if (options.enableRowSelection) {
- this.rowSelectionPlugin = new Slick.RowSelectionModel(options.rowSelectionOptions || {});
- grid.setSelectionModel(this.rowSelectionPlugin);
+ if (this._gridOptions.enableRowSelection) {
+ this.rowSelectionPlugin = new Slick.RowSelectionModel(this._gridOptions.rowSelectionOptions || {});
+ this._grid.setSelectionModel(this.rowSelectionPlugin);
}
- if (options.enableHeaderButton) {
- this.headerButtonsPlugin = new Slick.Plugins.HeaderButtons(options.headerButton || {});
- grid.registerPlugin(this.headerButtonsPlugin);
+ if (this._gridOptions.enableHeaderButton) {
+ this.headerButtonsPlugin = new Slick.Plugins.HeaderButtons(this._gridOptions.headerButton || {});
+ this._grid.registerPlugin(this.headerButtonsPlugin);
this.headerButtonsPlugin.onCommand.subscribe(function (e, args) {
- if (options.headerButton && typeof options.headerButton.onCommand === 'function') {
- options.headerButton.onCommand(e, args);
+ if (_this._gridOptions.headerButton && typeof _this._gridOptions.headerButton.onCommand === 'function') {
+ _this._gridOptions.headerButton.onCommand(e, args);
}
});
}
- if (options.enableHeaderMenu) {
- var headerMenuOptions = options.headerMenu || {};
+ if (this._gridOptions.enableHeaderMenu) {
+ var headerMenuOptions = this._gridOptions.headerMenu || {};
headerMenuOptions.minWidth = headerMenuOptions.minWidth || 140;
headerMenuOptions.autoAlignOffset = headerMenuOptions.autoAlignOffset || 12;
this.headerMenuPlugin = new Slick.Plugins.HeaderMenu(headerMenuOptions);
- grid.registerPlugin(this.headerMenuPlugin);
+ this._grid.registerPlugin(this.headerMenuPlugin);
this.headerMenuPlugin.onCommand.subscribe(function (e, args) {
- if (options.headerMenu && typeof options.headerMenu.onCommand === 'function') {
- options.headerMenu.onCommand(e, args);
+ if (_this._gridOptions.headerMenu && typeof _this._gridOptions.headerMenu.onCommand === 'function') {
+ _this._gridOptions.headerMenu.onCommand(e, args);
}
});
this.headerMenuPlugin.onCommand.subscribe(function (e, args) {
- if (options.headerMenu && typeof options.headerMenu.onBeforeMenuShow === 'function') {
- options.headerMenu.onBeforeMenuShow(e, args);
+ if (_this._gridOptions.headerMenu && typeof _this._gridOptions.headerMenu.onBeforeMenuShow === 'function') {
+ _this._gridOptions.headerMenu.onBeforeMenuShow(e, args);
}
});
}
- if (options.registerPlugins !== undefined) {
- if (Array.isArray(options.registerPlugins)) {
- options.registerPlugins.forEach(function (plugin) {
- grid.registerPlugin(plugin);
+ if (this._gridOptions.registerPlugins !== undefined) {
+ if (Array.isArray(this._gridOptions.registerPlugins)) {
+ this._gridOptions.registerPlugins.forEach(function (plugin) {
+ _this._grid.registerPlugin(plugin);
});
}
else {
- grid.registerPlugin(options.registerPlugins);
+ this._grid.registerPlugin(this._gridOptions.registerPlugins);
}
}
};
@@ -2332,6 +2349,7 @@ ControlAndPluginService.decorators = [
ControlAndPluginService.ctorParameters = function () { return [
{ type: ExportService, },
{ type: FilterService, },
+ { type: SharedService, },
{ type: core$1.TranslateService, },
]; };
var GraphqlQueryBuilder = /** @class */ (function () {
@@ -4994,17 +5012,6 @@ var GlobalGridOptions = {
showHeaderRow: false,
topPanelHeight: 35
};
-var SharedService = /** @class */ (function () {
- function SharedService() {
- }
- SharedService.prototype.init = function (grid, dataView, gridOptions, columnDefinitions) {
- this.grid = grid;
- this.dataView = dataView;
- this.gridOptions = gridOptions;
- this.columnDefinitions = columnDefinitions;
- };
- return SharedService;
-}());
var AngularSlickgridComponent = /** @class */ (function () {
function AngularSlickgridComponent(controlAndPluginService, exportService, filterService, gridExtraService, gridEventService, gridStateService, resizer, sharedService, sortService, translate, forRootConfig) {
this.controlAndPluginService = controlAndPluginService;
@@ -5092,10 +5099,21 @@ var AngularSlickgridComponent = /** @class */ (function () {
this._dataset = this._dataset || [];
this.gridOptions = this.mergeGridOptions(this.gridOptions);
this.createBackendApiInternalPostProcessCallback(this.gridOptions);
- this._dataView = new Slick.Data.DataView();
+ if (this.gridOptions.enableGrouping) {
+ this.groupItemMetadataProvider = new Slick.Data.GroupItemMetadataProvider();
+ this.sharedService.groupItemMetadataProvider = this.groupItemMetadataProvider;
+ this._dataView = new Slick.Data.DataView({
+ groupItemMetadataProvider: this.groupItemMetadataProvider,
+ inlineFilters: true
+ });
+ }
+ else {
+ this._dataView = new Slick.Data.DataView();
+ }
this.controlAndPluginService.createPluginBeforeGridCreation(this._columnDefinitions, this.gridOptions);
this.grid = new Slick.Grid("#" + this.gridId, this._dataView, this._columnDefinitions, this.gridOptions);
- this.controlAndPluginService.attachDifferentControlOrPlugins(this.grid, this._columnDefinitions, this.gridOptions, this._dataView);
+ this.sharedService.init(this.grid, this._dataView, this.gridOptions, this._columnDefinitions);
+ this.controlAndPluginService.attachDifferentControlOrPlugins();
this.attachDifferentHooks(this.grid, this.gridOptions, this._dataView);
this.onGridCreated.emit(this.grid);
this.onDataviewCreated.emit(this._dataView);
@@ -5103,7 +5121,6 @@ var AngularSlickgridComponent = /** @class */ (function () {
this._dataView.beginUpdate();
this._dataView.setItems(this._dataset, this.gridOptions.datasetIdPropertyName);
this._dataView.endUpdate();
- this.sharedService.init(this.grid, this._dataView, this.gridOptions, this._columnDefinitions);
this.attachResizeHook(this.grid, this.gridOptions);
this.gridExtraService.init(this.grid, this._columnDefinitions, this.gridOptions, this._dataView);
if (this.gridOptions.enableTranslate) {
@@ -5420,63 +5437,63 @@ exports.FilterConditions = FilterConditions;
exports.Filters = Filters;
exports.Formatters = Formatters;
exports.Sorters = Sorters;
-exports.ɵa = CheckboxEditor;
-exports.ɵb = DateEditor;
-exports.ɵc = FloatEditor;
-exports.ɵd = IntegerEditor;
-exports.ɵe = LongTextEditor;
-exports.ɵf = MultipleSelectEditor;
-exports.ɵg = SingleSelectEditor;
-exports.ɵh = TextEditor;
-exports.ɵj = booleanFilterCondition;
-exports.ɵk = collectionSearchFilterCondition;
-exports.ɵl = dateFilterCondition;
-exports.ɵm = dateIsoFilterCondition;
-exports.ɵo = dateUsFilterCondition;
-exports.ɵp = dateUsShortFilterCondition;
-exports.ɵn = dateUtcFilterCondition;
-exports.ɵi = executeMappedCondition;
-exports.ɵs = testFilterCondition;
-exports.ɵq = numberFilterCondition;
-exports.ɵr = stringFilterCondition;
-exports.ɵx = CompoundDateFilter;
-exports.ɵy = CompoundInputFilter;
-exports.ɵt = InputFilter;
-exports.ɵu = MultipleSelectFilter;
-exports.ɵw = SelectFilter;
-exports.ɵv = SingleSelectFilter;
-exports.ɵz = arrayToCsvFormatter;
-exports.ɵba = checkboxFormatter;
-exports.ɵbb = checkmarkFormatter;
-exports.ɵbd = collectionFormatter;
-exports.ɵbc = complexObjectFormatter;
-exports.ɵbe = dateIsoFormatter;
-exports.ɵbg = dateTimeIsoAmPmFormatter;
-exports.ɵbf = dateTimeIsoFormatter;
-exports.ɵbj = dateTimeUsAmPmFormatter;
-exports.ɵbi = dateTimeUsFormatter;
-exports.ɵbh = dateUsFormatter;
-exports.ɵbk = deleteIconFormatter;
-exports.ɵbl = editIconFormatter;
-exports.ɵbm = hyperlinkFormatter;
-exports.ɵbn = hyperlinkUriPrefixFormatter;
-exports.ɵbo = infoIconFormatter;
-exports.ɵbp = lowercaseFormatter;
-exports.ɵbq = multipleFormatter;
-exports.ɵbs = percentCompleteBarFormatter;
-exports.ɵbr = percentCompleteFormatter;
-exports.ɵbt = progressBarFormatter;
-exports.ɵbv = translateBooleanFormatter;
-exports.ɵbu = translateFormatter;
-exports.ɵbw = uppercaseFormatter;
-exports.ɵbx = yesNoFormatter;
-exports.ɵce = SharedService;
-exports.ɵbz = dateIsoSorter;
-exports.ɵby = dateSorter;
-exports.ɵcb = dateUsShortSorter;
-exports.ɵca = dateUsSorter;
-exports.ɵcc = numericSorter;
-exports.ɵcd = stringSorter;
+exports.ɵb = CheckboxEditor;
+exports.ɵc = DateEditor;
+exports.ɵd = FloatEditor;
+exports.ɵe = IntegerEditor;
+exports.ɵf = LongTextEditor;
+exports.ɵg = MultipleSelectEditor;
+exports.ɵh = SingleSelectEditor;
+exports.ɵi = TextEditor;
+exports.ɵk = booleanFilterCondition;
+exports.ɵl = collectionSearchFilterCondition;
+exports.ɵm = dateFilterCondition;
+exports.ɵn = dateIsoFilterCondition;
+exports.ɵp = dateUsFilterCondition;
+exports.ɵq = dateUsShortFilterCondition;
+exports.ɵo = dateUtcFilterCondition;
+exports.ɵj = executeMappedCondition;
+exports.ɵt = testFilterCondition;
+exports.ɵr = numberFilterCondition;
+exports.ɵs = stringFilterCondition;
+exports.ɵy = CompoundDateFilter;
+exports.ɵz = CompoundInputFilter;
+exports.ɵu = InputFilter;
+exports.ɵv = MultipleSelectFilter;
+exports.ɵx = SelectFilter;
+exports.ɵw = SingleSelectFilter;
+exports.ɵba = arrayToCsvFormatter;
+exports.ɵbb = checkboxFormatter;
+exports.ɵbc = checkmarkFormatter;
+exports.ɵbe = collectionFormatter;
+exports.ɵbd = complexObjectFormatter;
+exports.ɵbf = dateIsoFormatter;
+exports.ɵbh = dateTimeIsoAmPmFormatter;
+exports.ɵbg = dateTimeIsoFormatter;
+exports.ɵbk = dateTimeUsAmPmFormatter;
+exports.ɵbj = dateTimeUsFormatter;
+exports.ɵbi = dateUsFormatter;
+exports.ɵbl = deleteIconFormatter;
+exports.ɵbm = editIconFormatter;
+exports.ɵbn = hyperlinkFormatter;
+exports.ɵbo = hyperlinkUriPrefixFormatter;
+exports.ɵbp = infoIconFormatter;
+exports.ɵbq = lowercaseFormatter;
+exports.ɵbr = multipleFormatter;
+exports.ɵbt = percentCompleteBarFormatter;
+exports.ɵbs = percentCompleteFormatter;
+exports.ɵbu = progressBarFormatter;
+exports.ɵbw = translateBooleanFormatter;
+exports.ɵbv = translateFormatter;
+exports.ɵbx = uppercaseFormatter;
+exports.ɵby = yesNoFormatter;
+exports.ɵa = SharedService;
+exports.ɵca = dateIsoSorter;
+exports.ɵbz = dateSorter;
+exports.ɵcc = dateUsShortSorter;
+exports.ɵcb = dateUsSorter;
+exports.ɵcd = numericSorter;
+exports.ɵce = stringSorter;
Object.defineProperty(exports, '__esModule', { value: true });
diff --git a/dist/bundles/angular-slickgrid.umd.js.map b/dist/bundles/angular-slickgrid.umd.js.map
index 905f10d0d..9428f4d2d 100644
--- a/dist/bundles/angular-slickgrid.umd.js.map
+++ b/dist/bundles/angular-slickgrid.umd.js.map
@@ -4,7 +4,6 @@
"sources": [
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/modules/angular-slickgrid.module.ts",
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/components/angular-slickgrid.component.ts",
- "ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/services/shared.service.ts",
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/global-grid-options.ts",
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/components/slick-pagination.component.ts",
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/formatters/index.ts",
@@ -61,6 +60,7 @@
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/services/graphql.service.ts",
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/services/graphqlQueryBuilder.ts",
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/services/controlAndPlugin.service.ts",
+ "ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/services/shared.service.ts",
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/services/filter.service.ts",
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/filters/index.ts",
"ng://angular-slickgrid/out/src/app/modules/angular-slickgrid/filters/singleSelectFilter.ts",
@@ -92,8 +92,7 @@
],
"sourcesContent": [
"import { SharedService } from './../services/shared.service';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { AngularSlickgridComponent } from './../components/angular-slickgrid.component';\r\nimport { ControlAndPluginService } from '../services/controlAndPlugin.service';\r\nimport { ExportService } from '../services/export.service';\r\nimport { FilterService } from './../services/filter.service';\r\nimport { GridOdataService } from './../services/grid-odata.service';\r\nimport { GridOption } from './../models/gridOption.interface';\r\nimport { GridEventService } from './../services/gridEvent.service';\r\nimport { GridExtraService } from './../services/gridExtra.service';\r\nimport { GridStateService } from './../services/gridState.service';\r\nimport { GraphqlService } from './../services/graphql.service';\r\nimport { OdataService } from './../services/odata.service';\r\nimport { ResizerService } from './../services/resizer.service';\r\nimport { SlickPaginationComponent } from './../components/slick-pagination.component';\r\nimport { SortService } from './../services/sort.service';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n TranslateModule\r\n ],\r\n declarations: [\r\n AngularSlickgridComponent,\r\n SlickPaginationComponent\r\n ],\r\n exports: [\r\n AngularSlickgridComponent,\r\n SlickPaginationComponent\r\n ]\r\n})\r\nexport class AngularSlickgridModule {\r\n static forRoot(config: GridOption = {}) {\r\n return {\r\n ngModule: AngularSlickgridModule,\r\n providers: [\r\n {provide: 'config', useValue: config},\r\n ControlAndPluginService,\r\n ExportService,\r\n FilterService,\r\n GraphqlService,\r\n GridEventService,\r\n GridExtraService,\r\n GridOdataService,\r\n GridStateService,\r\n OdataService,\r\n ResizerService,\r\n SharedService,\r\n SortService\r\n ]\r\n };\r\n }\r\n}\r\n",
- "import { Pagination } from './../models/pagination.interface';\r\n// import 3rd party vendor libs\r\nimport 'slickgrid/lib/jquery-ui-1.11.3';\r\nimport 'slickgrid/lib/jquery.event.drag-2.3.0';\r\nimport 'slickgrid/slick.core';\r\nimport 'slickgrid/slick.dataview';\r\nimport 'slickgrid/slick.grid';\r\nimport 'slickgrid/slick.dataview';\r\nimport 'slickgrid/controls/slick.columnpicker';\r\nimport 'slickgrid/controls/slick.gridmenu';\r\nimport 'slickgrid/controls/slick.pager';\r\nimport 'slickgrid/plugins/slick.autotooltips';\r\nimport 'slickgrid/plugins/slick.cellcopymanager';\r\nimport 'slickgrid/plugins/slick.cellexternalcopymanager';\r\nimport 'slickgrid/plugins/slick.cellrangedecorator';\r\nimport 'slickgrid/plugins/slick.cellrangeselector';\r\nimport 'slickgrid/plugins/slick.cellselectionmodel';\r\nimport 'slickgrid/plugins/slick.checkboxselectcolumn';\r\nimport 'slickgrid/plugins/slick.headerbuttons';\r\nimport 'slickgrid/plugins/slick.headermenu';\r\nimport 'slickgrid/plugins/slick.rowmovemanager';\r\nimport 'slickgrid/plugins/slick.rowselectionmodel';\r\nimport { AfterViewInit, Component, EventEmitter, Inject, Injectable, Input, Output, OnDestroy, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { castToPromise } from './../services/utilities';\r\nimport { GlobalGridOptions } from './../global-grid-options';\r\nimport { BackendServiceOption, Column, GridOption, GridStateChange, GridStateType } from './../models/index';\r\nimport { ControlAndPluginService } from './../services/controlAndPlugin.service';\r\nimport { ExportService } from './../services/export.service';\r\nimport { FilterService } from './../services/filter.service';\r\nimport { GraphqlService } from './../services/graphql.service';\r\nimport { GridEventService } from './../services/gridEvent.service';\r\nimport { GridExtraService } from './../services/gridExtra.service';\r\nimport { GridStateService } from './../services/gridState.service';\r\nimport { ResizerService } from './../services/resizer.service';\r\nimport { SharedService } from '../services/shared.service';\r\nimport { SortService } from './../services/sort.service';\r\nimport { Subscription } from 'rxjs/Subscription';\r\n\r\n// using external non-typed js libraries\r\ndeclare var Slick: any;\r\ndeclare var $: any;\r\n\r\nconst eventPrefix = 'sg';\r\n\r\n@Injectable()\r\n@Component({\r\n selector: 'angular-slickgrid',\r\n template: `\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n`\r\n})\r\nexport class AngularSlickgridComponent implements AfterViewInit, OnDestroy, OnInit {\r\n private _dataset: any[];\r\n private _columnDefinitions: Column[];\r\n private _dataView: any;\r\n private _eventHandler: any = new Slick.EventHandler();\r\n private _translateSubscriber: Subscription;\r\n private _gridStateSubscriber: Subscription;\r\n grid: any;\r\n gridPaginationOptions: GridOption;\r\n gridHeightString: string;\r\n gridWidthString: string;\r\n groupingDefinition: any = {};\r\n showPagination = false;\r\n isGridInitialized = false;\r\n\r\n @Output() onDataviewCreated = new EventEmitter();\r\n @Output() onGridCreated = new EventEmitter();\r\n @Output() onGridInitialized = new EventEmitter();\r\n @Output() onBeforeGridCreate = new EventEmitter();\r\n @Output() onBeforeGridDestroy = new EventEmitter();\r\n @Output() onAfterGridDestroyed = new EventEmitter();\r\n @Output() onGridStateServiceChanged = new EventEmitter();\r\n @Input() gridId: string;\r\n @Input() gridOptions: GridOption;\r\n @Input() gridHeight = 100;\r\n @Input() gridWidth = 600;\r\n\r\n @Input()\r\n set columnDefinitions(columnDefinitions: Column[]) {\r\n this._columnDefinitions = columnDefinitions;\r\n if (this.isGridInitialized) {\r\n this.updateColumnDefinitionsList(columnDefinitions);\r\n }\r\n }\r\n get columnDefinitions(): Column[] {\r\n return this._columnDefinitions;\r\n }\r\n @Input()\r\n set dataset(dataset: any[]) {\r\n this._dataset = dataset;\r\n this.refreshGridData(dataset);\r\n }\r\n get dataset(): any[] {\r\n return this._dataView.getItems();\r\n }\r\n\r\n constructor(\r\n private controlAndPluginService: ControlAndPluginService,\r\n private exportService: ExportService,\r\n private filterService: FilterService,\r\n private gridExtraService: GridExtraService,\r\n private gridEventService: GridEventService,\r\n private gridStateService: GridStateService,\r\n private resizer: ResizerService,\r\n private sharedService: SharedService,\r\n private sortService: SortService,\r\n private translate: TranslateService,\r\n @Inject('config') private forRootConfig: GridOption\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.onBeforeGridCreate.emit(true);\r\n this.gridHeightString = `${this.gridHeight}px`;\r\n this.gridWidthString = `${this.gridWidth}px`;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.onBeforeGridDestroy.emit(this.grid);\r\n this.destroy();\r\n this.onAfterGridDestroyed.emit(true);\r\n }\r\n\r\n destroy() {\r\n this._dataView = [];\r\n this.gridOptions = {};\r\n this._eventHandler.unsubscribeAll();\r\n this.controlAndPluginService.dispose();\r\n this.filterService.dispose();\r\n this.gridEventService.dispose();\r\n this.gridStateService.dispose();\r\n this.resizer.dispose();\r\n this.sortService.dispose();\r\n this.grid.destroy();\r\n if (this._translateSubscriber) {\r\n this._translateSubscriber.unsubscribe();\r\n }\r\n if (this._gridStateSubscriber) {\r\n this._gridStateSubscriber.unsubscribe();\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.initialization();\r\n this.isGridInitialized = true;\r\n }\r\n\r\n initialization() {\r\n // make sure the dataset is initialized (if not it will throw an error that it cannot getLength of null)\r\n this._dataset = this._dataset || [];\r\n this.gridOptions = this.mergeGridOptions(this.gridOptions);\r\n this.createBackendApiInternalPostProcessCallback(this.gridOptions);\r\n\r\n this._dataView = new Slick.Data.DataView();\r\n this.controlAndPluginService.createPluginBeforeGridCreation(this._columnDefinitions, this.gridOptions);\r\n this.grid = new Slick.Grid(`#${this.gridId}`, this._dataView, this._columnDefinitions, this.gridOptions);\r\n\r\n this.controlAndPluginService.attachDifferentControlOrPlugins(this.grid, this._columnDefinitions, this.gridOptions, this._dataView);\r\n this.attachDifferentHooks(this.grid, this.gridOptions, this._dataView);\r\n\r\n // emit the Grid & DataView object to make them available in parent component\r\n this.onGridCreated.emit(this.grid);\r\n this.onDataviewCreated.emit(this._dataView);\r\n\r\n this.grid.init();\r\n this._dataView.beginUpdate();\r\n this._dataView.setItems(this._dataset, this.gridOptions.datasetIdPropertyName);\r\n this._dataView.endUpdate();\r\n\r\n // pass all necessary options to the shared service\r\n this.sharedService.init(this.grid, this._dataView, this.gridOptions, this._columnDefinitions);\r\n\r\n // attach resize ONLY after the dataView is ready\r\n this.attachResizeHook(this.grid, this.gridOptions);\r\n\r\n // attach grid extra service\r\n this.gridExtraService.init(this.grid, this._columnDefinitions, this.gridOptions, this._dataView);\r\n\r\n // when user enables translation, we need to translate Headers on first pass & subsequently in the attachDifferentHooks\r\n if (this.gridOptions.enableTranslate) {\r\n this.controlAndPluginService.translateHeaders();\r\n }\r\n\r\n // if Export is enabled, initialize the service with the necessary grid and other objects\r\n if (this.gridOptions.enableExport) {\r\n this.exportService.init(this.grid, this.gridOptions, this._dataView);\r\n }\r\n\r\n // once all hooks are in placed and the grid is initialized, we can emit an event\r\n this.onGridInitialized.emit(this.grid);\r\n\r\n // attach the Backend Service API callback functions only after the grid is initialized\r\n // because the preProcess() and onInit() might get triggered\r\n if (this.gridOptions && (this.gridOptions.backendServiceApi || this.gridOptions.onBackendEventApi)) {\r\n this.attachBackendCallbackFunctions(this.gridOptions);\r\n }\r\n\r\n this.gridStateService.init(this.grid, this.filterService, this.sortService);\r\n }\r\n\r\n /**\r\n * Define what our internal Post Process callback, it will execute internally after we get back result from the Process backend call\r\n * For now, this is GraphQL Service only feautre and it will basically refresh the Dataset & Pagination without having the user to create his own PostProcess every time\r\n */\r\n createBackendApiInternalPostProcessCallback(gridOptions: GridOption) {\r\n if (gridOptions && (gridOptions.backendServiceApi || gridOptions.onBackendEventApi)) {\r\n const backendApi = gridOptions.backendServiceApi || gridOptions.onBackendEventApi;\r\n\r\n // internalPostProcess only works with a GraphQL Service, so make sure it is that type\r\n if (backendApi && backendApi.service && backendApi.service instanceof GraphqlService) {\r\n backendApi.internalPostProcess = (processResult: any) => {\r\n const datasetName = (backendApi && backendApi.service && typeof backendApi.service.getDatasetName === 'function') ? backendApi.service.getDatasetName() : '';\r\n if (!processResult || !processResult.data || !processResult.data[datasetName]) {\r\n throw new Error(`Your GraphQL result is invalid and/or does not follow the required result structure. Please check the result and/or review structure to use in Angular-Slickgrid Wiki in the GraphQL section.`);\r\n }\r\n this._dataset = processResult.data[datasetName].nodes;\r\n this.refreshGridData(this._dataset, processResult.data[datasetName].totalCount);\r\n };\r\n }\r\n }\r\n }\r\n\r\n attachDifferentHooks(grid: any, gridOptions: GridOption, dataView: any) {\r\n // on locale change, we have to manually translate the Headers, GridMenu\r\n this._translateSubscriber = this.translate.onLangChange.subscribe((event) => {\r\n if (gridOptions.enableTranslate) {\r\n this.controlAndPluginService.translateHeaders();\r\n this.controlAndPluginService.translateColumnPicker();\r\n this.controlAndPluginService.translateGridMenu();\r\n }\r\n });\r\n\r\n // attach external sorting (backend) when available or default onSort (dataView)\r\n if (gridOptions.enableSorting) {\r\n (gridOptions.backendServiceApi || gridOptions.onBackendEventApi) ? this.sortService.attachBackendOnSort(grid, gridOptions) : this.sortService.attachLocalOnSort(grid, gridOptions, this._dataView, this._columnDefinitions);\r\n }\r\n\r\n // attach external filter (backend) when available or default onFilter (dataView)\r\n if (gridOptions.enableFiltering) {\r\n this.filterService.init(grid, gridOptions, this._columnDefinitions);\r\n\r\n // if user entered some \"presets\", we need to reflect them all in the DOM\r\n if (gridOptions.presets && gridOptions.presets.filters) {\r\n this.filterService.populateColumnFilterSearchTerms(gridOptions, this._columnDefinitions);\r\n }\r\n (gridOptions.backendServiceApi || gridOptions.onBackendEventApi) ? this.filterService.attachBackendOnFilter(grid, gridOptions) : this.filterService.attachLocalOnFilter(grid, gridOptions, this._dataView);\r\n }\r\n\r\n // if user set an onInit Backend, we'll run it right away (and if so, we also need to run preProcess, internalPostProcess & postProcess)\r\n if (gridOptions.backendServiceApi || gridOptions.onBackendEventApi) {\r\n const backendApi = gridOptions.backendServiceApi || gridOptions.onBackendEventApi;\r\n if (gridOptions.onBackendEventApi) {\r\n console.warn(`\"onBackendEventApi\" has been DEPRECATED, please consider using \"backendServiceApi\" in the short term since \"onBackendEventApi\" will be removed in future versions. You can take look at the Angular-Slickgrid Wikis for OData/GraphQL Services implementation`);\r\n }\r\n\r\n if (backendApi && backendApi.service && backendApi.service.init) {\r\n backendApi.service.init(backendApi.options, gridOptions.pagination, this.grid);\r\n }\r\n }\r\n\r\n // expose GridState Service changes event through dispatch\r\n this._gridStateSubscriber = this.gridStateService.onGridStateChanged.subscribe((gridStateChange: GridStateChange) => {\r\n this.onGridStateServiceChanged.emit(gridStateChange);\r\n });\r\n\r\n\r\n // on cell click, mainly used with the columnDef.action callback\r\n this.gridEventService.attachOnCellChange(grid, this.gridOptions, dataView);\r\n this.gridEventService.attachOnClick(grid, this.gridOptions, dataView);\r\n\r\n this._eventHandler.subscribe(dataView.onRowCountChanged, (e: any, args: any) => {\r\n grid.updateRowCount();\r\n grid.render();\r\n });\r\n this._eventHandler.subscribe(dataView.onRowsChanged, (e: any, args: any) => {\r\n grid.invalidateRows(args.rows);\r\n grid.render();\r\n });\r\n }\r\n\r\n attachBackendCallbackFunctions(gridOptions: GridOption) {\r\n const backendApi = gridOptions.backendServiceApi || gridOptions.onBackendEventApi;\r\n const serviceOptions: BackendServiceOption = (backendApi && backendApi.service && backendApi.service.options) ? backendApi.service.options : {};\r\n const isExecuteCommandOnInit = (!serviceOptions) ? false : ((serviceOptions && serviceOptions.hasOwnProperty('executeProcessCommandOnInit')) ? serviceOptions['executeProcessCommandOnInit'] : true);\r\n\r\n // update backend filters (if need be) before the query runs\r\n if (backendApi) {\r\n const backendService = backendApi.service;\r\n if (gridOptions && gridOptions.presets) {\r\n if (backendService && backendService.updateFilters && gridOptions.presets.filters) {\r\n backendService.updateFilters(gridOptions.presets.filters, true);\r\n }\r\n if (backendService && backendService.updateSorters && gridOptions.presets.sorters) {\r\n backendService.updateSorters(undefined, gridOptions.presets.sorters);\r\n }\r\n if (backendService && backendService.updatePagination && gridOptions.presets.pagination) {\r\n backendService.updatePagination(gridOptions.presets.pagination.pageNumber, gridOptions.presets.pagination.pageSize);\r\n }\r\n } else {\r\n const columnFilters = this.filterService.getColumnFilters();\r\n if (columnFilters && backendService && backendService.updateFilters) {\r\n backendService.updateFilters(columnFilters, false);\r\n }\r\n }\r\n }\r\n\r\n if (backendApi && backendApi.service && (backendApi.onInit || isExecuteCommandOnInit)) {\r\n const query = (typeof backendApi.service.buildQuery === 'function') ? backendApi.service.buildQuery() : '';\r\n const observableOrPromise = (isExecuteCommandOnInit) ? backendApi.process(query) : backendApi.onInit(query);\r\n\r\n // wrap this inside a setTimeout to avoid timing issue since the gridOptions needs to be ready before running this onInit\r\n setTimeout(async () => {\r\n if (backendApi.preProcess) {\r\n backendApi.preProcess();\r\n }\r\n\r\n // the process could be an Observable (like HttpClient) or a Promise\r\n // in any case, we need to have a Promise so that we can await on it (if an Observable, convert it to Promise)\r\n const processResult = await castToPromise(observableOrPromise);\r\n\r\n // define what our internal Post Process callback, only available for GraphQL Service for now\r\n // it will basically refresh the Dataset & Pagination without having the user to create his own PostProcess every time\r\n if (processResult && backendApi && backendApi.service instanceof GraphqlService && backendApi.internalPostProcess) {\r\n backendApi.internalPostProcess(processResult);\r\n }\r\n\r\n // send the response process to the postProcess callback\r\n if (backendApi.postProcess) {\r\n backendApi.postProcess(processResult);\r\n }\r\n });\r\n }\r\n }\r\n\r\n attachResizeHook(grid: any, options: GridOption) {\r\n // expand/autofit columns on first page load\r\n if (grid && options.autoFitColumnsOnFirstLoad) {\r\n grid.autosizeColumns();\r\n }\r\n\r\n // auto-resize grid on browser resize\r\n this.resizer.init(grid, options);\r\n if (options.enableAutoResize) {\r\n this.resizer.attachAutoResizeDataGrid();\r\n if (grid && options.autoFitColumnsOnFirstLoad) {\r\n grid.autosizeColumns();\r\n }\r\n } else {\r\n this.resizer.resizeGrid(0, { height: this.gridHeight, width: this.gridWidth });\r\n }\r\n }\r\n\r\n mergeGridOptions(gridOptions): GridOption {\r\n gridOptions.gridId = this.gridId;\r\n gridOptions.gridContainerId = `slickGridContainer-${this.gridId}`;\r\n if (gridOptions.enableFiltering || this.forRootConfig.enableFiltering) {\r\n gridOptions.showHeaderRow = true;\r\n }\r\n // use jquery extend to deep merge and avoid immutable properties changed in GlobalGridOptions after route change\r\n return $.extend(true, {}, GlobalGridOptions, this.forRootConfig, gridOptions);\r\n }\r\n\r\n paginationChanged(pagination: Pagination) {\r\n this.gridStateService.onGridStateChanged.next({\r\n change: { newValues: pagination, type: GridStateType.pagination },\r\n gridState: this.gridStateService.getCurrentGridState()\r\n });\r\n }\r\n\r\n /**\r\n * When dataset changes, we need to refresh the entire grid UI & possibly resize it as well\r\n * @param dataset\r\n */\r\n refreshGridData(dataset: any[], totalCount?: number) {\r\n if (dataset && this.grid && this._dataView && typeof this._dataView.setItems === 'function') {\r\n this._dataView.setItems(dataset, this.gridOptions.datasetIdPropertyName);\r\n\r\n // this.grid.setData(dataset);\r\n this.grid.invalidate();\r\n this.grid.render();\r\n\r\n if (this.gridOptions.enablePagination || this.gridOptions.backendServiceApi) {\r\n // do we want to show pagination?\r\n // if we have a backendServiceApi and the enablePagination is undefined, we'll assume that we do want to see it, else get that defined value\r\n this.showPagination = ((this.gridOptions.backendServiceApi && this.gridOptions.enablePagination === undefined) ? true : this.gridOptions.enablePagination) || false;\r\n\r\n // before merging the grid options, make sure that it has the totalItems count\r\n // once we have that, we can merge and pass all these options to the pagination component\r\n if (!this.gridOptions.pagination) {\r\n this.gridOptions.pagination = (this.gridOptions.pagination) ? this.gridOptions.pagination : undefined;\r\n }\r\n if (this.gridOptions.pagination && totalCount) {\r\n this.gridOptions.pagination.totalItems = totalCount;\r\n }\r\n if (this.gridOptions.presets && this.gridOptions.presets.pagination && this.gridOptions.pagination) {\r\n this.gridOptions.pagination.pageSize = this.gridOptions.presets.pagination.pageSize;\r\n this.gridOptions.pagination.pageNumber = this.gridOptions.presets.pagination.pageNumber;\r\n }\r\n this.gridPaginationOptions = this.mergeGridOptions(this.gridOptions);\r\n }\r\n if (this.grid && this.gridOptions.enableAutoResize) {\r\n // resize the grid inside a slight timeout, in case other DOM element changed prior to the resize (like a filter/pagination changed)\r\n this.resizer.resizeGrid(10);\r\n // this.grid.autosizeColumns();\r\n }\r\n }\r\n }\r\n\r\n updateColumnDefinitionsList(dynamicColumns) {\r\n this.grid.setColumns(dynamicColumns);\r\n if (this.gridOptions.enableTranslate) {\r\n this.controlAndPluginService.translateHeaders();\r\n }\r\n }\r\n\r\n /** Toggle the filter row displayed on first row\r\n * @param isShowing\r\n */\r\n showHeaderRow(isShowing: boolean) {\r\n this.grid.setHeaderRowVisibility(isShowing);\r\n return isShowing;\r\n }\r\n\r\n /** Toggle the filter row displayed on first row */\r\n toggleHeaderRow() {\r\n const isShowing = !this.grid.getOptions().showHeaderRow;\r\n this.grid.setHeaderRowVisibility(isShowing);\r\n return isShowing;\r\n }\r\n}\r\n",
- "import { GridOption, Column } from './../models/index';\r\n\r\nexport class SharedService {\r\n dataView: any;\r\n grid: any;\r\n gridOptions: GridOption;\r\n columnDefinitions: Column[];\r\n\r\n init(grid: any, dataView: any, gridOptions: GridOption, columnDefinitions: Column[]) {\r\n this.grid = grid;\r\n this.dataView = dataView;\r\n this.gridOptions = gridOptions;\r\n this.columnDefinitions = columnDefinitions;\r\n }\r\n}\r\n",
+ "import { Pagination } from './../models/pagination.interface';\r\n// import 3rd party vendor libs\r\nimport 'jquery-ui-dist/jquery-ui';\r\nimport 'slickgrid/lib/jquery.event.drag-2.3.0';\r\nimport 'slickgrid/slick.core';\r\nimport 'slickgrid/slick.dataview';\r\nimport 'slickgrid/slick.grid';\r\nimport 'slickgrid/slick.dataview';\r\nimport 'slickgrid/slick.groupitemmetadataprovider.js';\r\nimport 'slickgrid/controls/slick.columnpicker';\r\nimport 'slickgrid/controls/slick.gridmenu';\r\nimport 'slickgrid/controls/slick.pager';\r\nimport 'slickgrid/plugins/slick.autotooltips';\r\nimport 'slickgrid/plugins/slick.cellcopymanager';\r\nimport 'slickgrid/plugins/slick.cellexternalcopymanager';\r\nimport 'slickgrid/plugins/slick.cellrangedecorator';\r\nimport 'slickgrid/plugins/slick.cellrangeselector';\r\nimport 'slickgrid/plugins/slick.cellselectionmodel';\r\nimport 'slickgrid/plugins/slick.checkboxselectcolumn';\r\nimport 'slickgrid/plugins/slick.headerbuttons';\r\nimport 'slickgrid/plugins/slick.headermenu';\r\nimport 'slickgrid/plugins/slick.rowmovemanager';\r\nimport 'slickgrid/plugins/slick.rowselectionmodel';\r\nimport { AfterViewInit, Component, EventEmitter, Inject, Injectable, Input, Output, OnDestroy, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { castToPromise } from './../services/utilities';\r\nimport { GlobalGridOptions } from './../global-grid-options';\r\nimport { BackendServiceOption, Column, GridOption, GridStateChange, GridStateType } from './../models/index';\r\nimport { ControlAndPluginService } from './../services/controlAndPlugin.service';\r\nimport { ExportService } from './../services/export.service';\r\nimport { FilterService } from './../services/filter.service';\r\nimport { GraphqlService } from './../services/graphql.service';\r\nimport { GridEventService } from './../services/gridEvent.service';\r\nimport { GridExtraService } from './../services/gridExtra.service';\r\nimport { GridStateService } from './../services/gridState.service';\r\nimport { ResizerService } from './../services/resizer.service';\r\nimport { SharedService } from '../services/shared.service';\r\nimport { SortService } from './../services/sort.service';\r\nimport { Subscription } from 'rxjs/Subscription';\r\n\r\n// using external non-typed js libraries\r\ndeclare var Slick: any;\r\ndeclare var $: any;\r\n\r\nconst eventPrefix = 'sg';\r\n\r\n@Injectable()\r\n@Component({\r\n selector: 'angular-slickgrid',\r\n template: `\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n`\r\n})\r\nexport class AngularSlickgridComponent implements AfterViewInit, OnDestroy, OnInit {\r\n private _dataset: any[];\r\n private _columnDefinitions: Column[];\r\n private _dataView: any;\r\n private _eventHandler: any = new Slick.EventHandler();\r\n private _translateSubscriber: Subscription;\r\n private _gridStateSubscriber: Subscription;\r\n grid: any;\r\n gridPaginationOptions: GridOption;\r\n gridHeightString: string;\r\n gridWidthString: string;\r\n groupingDefinition: any = {};\r\n groupItemMetadataProvider: any;\r\n showPagination = false;\r\n isGridInitialized = false;\r\n\r\n @Output() onDataviewCreated = new EventEmitter();\r\n @Output() onGridCreated = new EventEmitter();\r\n @Output() onGridInitialized = new EventEmitter();\r\n @Output() onBeforeGridCreate = new EventEmitter();\r\n @Output() onBeforeGridDestroy = new EventEmitter();\r\n @Output() onAfterGridDestroyed = new EventEmitter();\r\n @Output() onGridStateServiceChanged = new EventEmitter();\r\n @Input() gridId: string;\r\n @Input() gridOptions: GridOption;\r\n @Input() gridHeight = 100;\r\n @Input() gridWidth = 600;\r\n\r\n @Input()\r\n set columnDefinitions(columnDefinitions: Column[]) {\r\n this._columnDefinitions = columnDefinitions;\r\n if (this.isGridInitialized) {\r\n this.updateColumnDefinitionsList(columnDefinitions);\r\n }\r\n }\r\n get columnDefinitions(): Column[] {\r\n return this._columnDefinitions;\r\n }\r\n @Input()\r\n set dataset(dataset: any[]) {\r\n this._dataset = dataset;\r\n this.refreshGridData(dataset);\r\n }\r\n get dataset(): any[] {\r\n return this._dataView.getItems();\r\n }\r\n\r\n constructor(\r\n private controlAndPluginService: ControlAndPluginService,\r\n private exportService: ExportService,\r\n private filterService: FilterService,\r\n private gridExtraService: GridExtraService,\r\n private gridEventService: GridEventService,\r\n private gridStateService: GridStateService,\r\n private resizer: ResizerService,\r\n private sharedService: SharedService,\r\n private sortService: SortService,\r\n private translate: TranslateService,\r\n @Inject('config') private forRootConfig: GridOption\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.onBeforeGridCreate.emit(true);\r\n this.gridHeightString = `${this.gridHeight}px`;\r\n this.gridWidthString = `${this.gridWidth}px`;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.onBeforeGridDestroy.emit(this.grid);\r\n this.destroy();\r\n this.onAfterGridDestroyed.emit(true);\r\n }\r\n\r\n destroy() {\r\n this._dataView = [];\r\n this.gridOptions = {};\r\n this._eventHandler.unsubscribeAll();\r\n this.controlAndPluginService.dispose();\r\n this.filterService.dispose();\r\n this.gridEventService.dispose();\r\n this.gridStateService.dispose();\r\n this.resizer.dispose();\r\n this.sortService.dispose();\r\n this.grid.destroy();\r\n if (this._translateSubscriber) {\r\n this._translateSubscriber.unsubscribe();\r\n }\r\n if (this._gridStateSubscriber) {\r\n this._gridStateSubscriber.unsubscribe();\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.initialization();\r\n this.isGridInitialized = true;\r\n }\r\n\r\n initialization() {\r\n // make sure the dataset is initialized (if not it will throw an error that it cannot getLength of null)\r\n this._dataset = this._dataset || [];\r\n this.gridOptions = this.mergeGridOptions(this.gridOptions);\r\n this.createBackendApiInternalPostProcessCallback(this.gridOptions);\r\n\r\n if (this.gridOptions.enableGrouping) {\r\n this.groupItemMetadataProvider = new Slick.Data.GroupItemMetadataProvider();\r\n this.sharedService.groupItemMetadataProvider = this.groupItemMetadataProvider;\r\n this._dataView = new Slick.Data.DataView({\r\n groupItemMetadataProvider: this.groupItemMetadataProvider,\r\n inlineFilters: true\r\n });\r\n } else {\r\n this._dataView = new Slick.Data.DataView();\r\n }\r\n this.controlAndPluginService.createPluginBeforeGridCreation(this._columnDefinitions, this.gridOptions);\r\n this.grid = new Slick.Grid(`#${this.gridId}`, this._dataView, this._columnDefinitions, this.gridOptions);\r\n\r\n // pass all necessary options to the shared service\r\n this.sharedService.init(this.grid, this._dataView, this.gridOptions, this._columnDefinitions);\r\n\r\n this.controlAndPluginService.attachDifferentControlOrPlugins();\r\n this.attachDifferentHooks(this.grid, this.gridOptions, this._dataView);\r\n\r\n // emit the Grid & DataView object to make them available in parent component\r\n this.onGridCreated.emit(this.grid);\r\n this.onDataviewCreated.emit(this._dataView);\r\n\r\n this.grid.init();\r\n this._dataView.beginUpdate();\r\n this._dataView.setItems(this._dataset, this.gridOptions.datasetIdPropertyName);\r\n this._dataView.endUpdate();\r\n\r\n // attach resize ONLY after the dataView is ready\r\n this.attachResizeHook(this.grid, this.gridOptions);\r\n\r\n // attach grid extra service\r\n this.gridExtraService.init(this.grid, this._columnDefinitions, this.gridOptions, this._dataView);\r\n\r\n // when user enables translation, we need to translate Headers on first pass & subsequently in the attachDifferentHooks\r\n if (this.gridOptions.enableTranslate) {\r\n this.controlAndPluginService.translateHeaders();\r\n }\r\n\r\n // if Export is enabled, initialize the service with the necessary grid and other objects\r\n if (this.gridOptions.enableExport) {\r\n this.exportService.init(this.grid, this.gridOptions, this._dataView);\r\n }\r\n\r\n // once all hooks are in placed and the grid is initialized, we can emit an event\r\n this.onGridInitialized.emit(this.grid);\r\n\r\n // attach the Backend Service API callback functions only after the grid is initialized\r\n // because the preProcess() and onInit() might get triggered\r\n if (this.gridOptions && (this.gridOptions.backendServiceApi || this.gridOptions.onBackendEventApi)) {\r\n this.attachBackendCallbackFunctions(this.gridOptions);\r\n }\r\n\r\n this.gridStateService.init(this.grid, this.filterService, this.sortService);\r\n }\r\n\r\n /**\r\n * Define what our internal Post Process callback, it will execute internally after we get back result from the Process backend call\r\n * For now, this is GraphQL Service only feautre and it will basically refresh the Dataset & Pagination without having the user to create his own PostProcess every time\r\n */\r\n createBackendApiInternalPostProcessCallback(gridOptions: GridOption) {\r\n if (gridOptions && (gridOptions.backendServiceApi || gridOptions.onBackendEventApi)) {\r\n const backendApi = gridOptions.backendServiceApi || gridOptions.onBackendEventApi;\r\n\r\n // internalPostProcess only works with a GraphQL Service, so make sure it is that type\r\n if (backendApi && backendApi.service && backendApi.service instanceof GraphqlService) {\r\n backendApi.internalPostProcess = (processResult: any) => {\r\n const datasetName = (backendApi && backendApi.service && typeof backendApi.service.getDatasetName === 'function') ? backendApi.service.getDatasetName() : '';\r\n if (!processResult || !processResult.data || !processResult.data[datasetName]) {\r\n throw new Error(`Your GraphQL result is invalid and/or does not follow the required result structure. Please check the result and/or review structure to use in Angular-Slickgrid Wiki in the GraphQL section.`);\r\n }\r\n this._dataset = processResult.data[datasetName].nodes;\r\n this.refreshGridData(this._dataset, processResult.data[datasetName].totalCount);\r\n };\r\n }\r\n }\r\n }\r\n\r\n attachDifferentHooks(grid: any, gridOptions: GridOption, dataView: any) {\r\n // on locale change, we have to manually translate the Headers, GridMenu\r\n this._translateSubscriber = this.translate.onLangChange.subscribe((event) => {\r\n if (gridOptions.enableTranslate) {\r\n this.controlAndPluginService.translateHeaders();\r\n this.controlAndPluginService.translateColumnPicker();\r\n this.controlAndPluginService.translateGridMenu();\r\n }\r\n });\r\n\r\n // attach external sorting (backend) when available or default onSort (dataView)\r\n if (gridOptions.enableSorting) {\r\n (gridOptions.backendServiceApi || gridOptions.onBackendEventApi) ? this.sortService.attachBackendOnSort(grid, gridOptions) : this.sortService.attachLocalOnSort(grid, gridOptions, this._dataView, this._columnDefinitions);\r\n }\r\n\r\n // attach external filter (backend) when available or default onFilter (dataView)\r\n if (gridOptions.enableFiltering) {\r\n this.filterService.init(grid, gridOptions, this._columnDefinitions);\r\n\r\n // if user entered some \"presets\", we need to reflect them all in the DOM\r\n if (gridOptions.presets && gridOptions.presets.filters) {\r\n this.filterService.populateColumnFilterSearchTerms(gridOptions, this._columnDefinitions);\r\n }\r\n (gridOptions.backendServiceApi || gridOptions.onBackendEventApi) ? this.filterService.attachBackendOnFilter(grid, gridOptions) : this.filterService.attachLocalOnFilter(grid, gridOptions, this._dataView);\r\n }\r\n\r\n // if user set an onInit Backend, we'll run it right away (and if so, we also need to run preProcess, internalPostProcess & postProcess)\r\n if (gridOptions.backendServiceApi || gridOptions.onBackendEventApi) {\r\n const backendApi = gridOptions.backendServiceApi || gridOptions.onBackendEventApi;\r\n if (gridOptions.onBackendEventApi) {\r\n console.warn(`\"onBackendEventApi\" has been DEPRECATED, please consider using \"backendServiceApi\" in the short term since \"onBackendEventApi\" will be removed in future versions. You can take look at the Angular-Slickgrid Wikis for OData/GraphQL Services implementation`);\r\n }\r\n\r\n if (backendApi && backendApi.service && backendApi.service.init) {\r\n backendApi.service.init(backendApi.options, gridOptions.pagination, this.grid);\r\n }\r\n }\r\n\r\n // expose GridState Service changes event through dispatch\r\n this._gridStateSubscriber = this.gridStateService.onGridStateChanged.subscribe((gridStateChange: GridStateChange) => {\r\n this.onGridStateServiceChanged.emit(gridStateChange);\r\n });\r\n\r\n\r\n // on cell click, mainly used with the columnDef.action callback\r\n this.gridEventService.attachOnCellChange(grid, this.gridOptions, dataView);\r\n this.gridEventService.attachOnClick(grid, this.gridOptions, dataView);\r\n\r\n this._eventHandler.subscribe(dataView.onRowCountChanged, (e: any, args: any) => {\r\n grid.updateRowCount();\r\n grid.render();\r\n });\r\n this._eventHandler.subscribe(dataView.onRowsChanged, (e: any, args: any) => {\r\n grid.invalidateRows(args.rows);\r\n grid.render();\r\n });\r\n }\r\n\r\n attachBackendCallbackFunctions(gridOptions: GridOption) {\r\n const backendApi = gridOptions.backendServiceApi || gridOptions.onBackendEventApi;\r\n const serviceOptions: BackendServiceOption = (backendApi && backendApi.service && backendApi.service.options) ? backendApi.service.options : {};\r\n const isExecuteCommandOnInit = (!serviceOptions) ? false : ((serviceOptions && serviceOptions.hasOwnProperty('executeProcessCommandOnInit')) ? serviceOptions['executeProcessCommandOnInit'] : true);\r\n\r\n // update backend filters (if need be) before the query runs\r\n if (backendApi) {\r\n const backendService = backendApi.service;\r\n if (gridOptions && gridOptions.presets) {\r\n if (backendService && backendService.updateFilters && gridOptions.presets.filters) {\r\n backendService.updateFilters(gridOptions.presets.filters, true);\r\n }\r\n if (backendService && backendService.updateSorters && gridOptions.presets.sorters) {\r\n backendService.updateSorters(undefined, gridOptions.presets.sorters);\r\n }\r\n if (backendService && backendService.updatePagination && gridOptions.presets.pagination) {\r\n backendService.updatePagination(gridOptions.presets.pagination.pageNumber, gridOptions.presets.pagination.pageSize);\r\n }\r\n } else {\r\n const columnFilters = this.filterService.getColumnFilters();\r\n if (columnFilters && backendService && backendService.updateFilters) {\r\n backendService.updateFilters(columnFilters, false);\r\n }\r\n }\r\n }\r\n\r\n if (backendApi && backendApi.service && (backendApi.onInit || isExecuteCommandOnInit)) {\r\n const query = (typeof backendApi.service.buildQuery === 'function') ? backendApi.service.buildQuery() : '';\r\n const observableOrPromise = (isExecuteCommandOnInit) ? backendApi.process(query) : backendApi.onInit(query);\r\n\r\n // wrap this inside a setTimeout to avoid timing issue since the gridOptions needs to be ready before running this onInit\r\n setTimeout(async () => {\r\n if (backendApi.preProcess) {\r\n backendApi.preProcess();\r\n }\r\n\r\n // the process could be an Observable (like HttpClient) or a Promise\r\n // in any case, we need to have a Promise so that we can await on it (if an Observable, convert it to Promise)\r\n const processResult = await castToPromise(observableOrPromise);\r\n\r\n // define what our internal Post Process callback, only available for GraphQL Service for now\r\n // it will basically refresh the Dataset & Pagination without having the user to create his own PostProcess every time\r\n if (processResult && backendApi && backendApi.service instanceof GraphqlService && backendApi.internalPostProcess) {\r\n backendApi.internalPostProcess(processResult);\r\n }\r\n\r\n // send the response process to the postProcess callback\r\n if (backendApi.postProcess) {\r\n backendApi.postProcess(processResult);\r\n }\r\n });\r\n }\r\n }\r\n\r\n attachResizeHook(grid: any, options: GridOption) {\r\n // expand/autofit columns on first page load\r\n if (grid && options.autoFitColumnsOnFirstLoad) {\r\n grid.autosizeColumns();\r\n }\r\n\r\n // auto-resize grid on browser resize\r\n this.resizer.init(grid, options);\r\n if (options.enableAutoResize) {\r\n this.resizer.attachAutoResizeDataGrid();\r\n if (grid && options.autoFitColumnsOnFirstLoad) {\r\n grid.autosizeColumns();\r\n }\r\n } else {\r\n this.resizer.resizeGrid(0, { height: this.gridHeight, width: this.gridWidth });\r\n }\r\n }\r\n\r\n mergeGridOptions(gridOptions): GridOption {\r\n gridOptions.gridId = this.gridId;\r\n gridOptions.gridContainerId = `slickGridContainer-${this.gridId}`;\r\n if (gridOptions.enableFiltering || this.forRootConfig.enableFiltering) {\r\n gridOptions.showHeaderRow = true;\r\n }\r\n // use jquery extend to deep merge and avoid immutable properties changed in GlobalGridOptions after route change\r\n return $.extend(true, {}, GlobalGridOptions, this.forRootConfig, gridOptions);\r\n }\r\n\r\n paginationChanged(pagination: Pagination) {\r\n this.gridStateService.onGridStateChanged.next({\r\n change: { newValues: pagination, type: GridStateType.pagination },\r\n gridState: this.gridStateService.getCurrentGridState()\r\n });\r\n }\r\n\r\n /**\r\n * When dataset changes, we need to refresh the entire grid UI & possibly resize it as well\r\n * @param dataset\r\n */\r\n refreshGridData(dataset: any[], totalCount?: number) {\r\n if (dataset && this.grid && this._dataView && typeof this._dataView.setItems === 'function') {\r\n this._dataView.setItems(dataset, this.gridOptions.datasetIdPropertyName);\r\n\r\n // this.grid.setData(dataset);\r\n this.grid.invalidate();\r\n this.grid.render();\r\n\r\n if (this.gridOptions.enablePagination || this.gridOptions.backendServiceApi) {\r\n // do we want to show pagination?\r\n // if we have a backendServiceApi and the enablePagination is undefined, we'll assume that we do want to see it, else get that defined value\r\n this.showPagination = ((this.gridOptions.backendServiceApi && this.gridOptions.enablePagination === undefined) ? true : this.gridOptions.enablePagination) || false;\r\n\r\n // before merging the grid options, make sure that it has the totalItems count\r\n // once we have that, we can merge and pass all these options to the pagination component\r\n if (!this.gridOptions.pagination) {\r\n this.gridOptions.pagination = (this.gridOptions.pagination) ? this.gridOptions.pagination : undefined;\r\n }\r\n if (this.gridOptions.pagination && totalCount) {\r\n this.gridOptions.pagination.totalItems = totalCount;\r\n }\r\n if (this.gridOptions.presets && this.gridOptions.presets.pagination && this.gridOptions.pagination) {\r\n this.gridOptions.pagination.pageSize = this.gridOptions.presets.pagination.pageSize;\r\n this.gridOptions.pagination.pageNumber = this.gridOptions.presets.pagination.pageNumber;\r\n }\r\n this.gridPaginationOptions = this.mergeGridOptions(this.gridOptions);\r\n }\r\n if (this.grid && this.gridOptions.enableAutoResize) {\r\n // resize the grid inside a slight timeout, in case other DOM element changed prior to the resize (like a filter/pagination changed)\r\n this.resizer.resizeGrid(10);\r\n // this.grid.autosizeColumns();\r\n }\r\n }\r\n }\r\n\r\n updateColumnDefinitionsList(dynamicColumns) {\r\n this.grid.setColumns(dynamicColumns);\r\n if (this.gridOptions.enableTranslate) {\r\n this.controlAndPluginService.translateHeaders();\r\n }\r\n }\r\n\r\n /** Toggle the filter row displayed on first row\r\n * @param isShowing\r\n */\r\n showHeaderRow(isShowing: boolean) {\r\n this.grid.setHeaderRowVisibility(isShowing);\r\n return isShowing;\r\n }\r\n\r\n /** Toggle the filter row displayed on first row */\r\n toggleHeaderRow() {\r\n const isShowing = !this.grid.getOptions().showHeaderRow;\r\n this.grid.setHeaderRowVisibility(isShowing);\r\n return isShowing;\r\n }\r\n}\r\n",
"import { DelimiterType, FileType, FilterType, GridOption } from './models/index';\r\n\r\n/**\r\n * Options that can be passed to the Bootstrap-Datetimepicker directly\r\n */\r\nexport const GlobalGridOptions: GridOption = {\r\n autoEdit: false,\r\n asyncEditorLoading: false,\r\n autoFitColumnsOnFirstLoad: true,\r\n autoResize: {\r\n bottomPadding: 20,\r\n minHeight: 180,\r\n minWidth: 300,\r\n sidePadding: 0\r\n },\r\n cellHighlightCssClass: 'slick-cell-modified',\r\n checkboxSelector: {\r\n cssClass: 'slick-cell-checkboxsel'\r\n },\r\n columnPicker: {\r\n hideForceFitButton: false,\r\n hideSyncResizeButton: true\r\n },\r\n datasetIdPropertyName: 'id',\r\n defaultFilterPlaceholder: '🔍',\r\n defaultFilterType: FilterType.input,\r\n editable: false,\r\n enableAutoResize: true,\r\n enableCellNavigation: false,\r\n enableColumnPicker: true,\r\n enableColumnReorder: true,\r\n enableExport: true,\r\n enableGridMenu: true,\r\n enableMouseHoverHighlightRow: true,\r\n enableSorting: true,\r\n enableTextSelectionOnCells: true,\r\n explicitInitialization: true,\r\n exportWithFormatter: false,\r\n forceFitColumns: false,\r\n gridMenu: {\r\n hideForceFitButton: false,\r\n hideSyncResizeButton: true,\r\n iconCssClass: 'fa fa-bars',\r\n menuWidth: 16,\r\n resizeOnShowHeaderRow: false,\r\n showClearAllFiltersCommand: true,\r\n showExportCsvCommand: true,\r\n showRefreshDatasetCommand: true,\r\n showToggleFilterCommand: true\r\n },\r\n headerRowHeight: 35,\r\n multiColumnSort: true,\r\n pagination: {\r\n pageSizes: [10, 15, 20, 25, 30, 40, 50, 75, 100],\r\n pageSize: 25,\r\n totalItems: 0\r\n },\r\n rowHeight: 35,\r\n showHeaderRow: false,\r\n topPanelHeight: 35\r\n};\r\n",
"import { Pagination } from './../models/pagination.interface';\r\nimport { AfterViewInit, Component, EventEmitter, Injectable, Input, OnDestroy, Output } from '@angular/core';\r\nimport { castToPromise } from './../services/utilities';\r\nimport { GridOption } from './../models/index';\r\nimport { FilterService, SortService } from './../services/index';\r\nimport { Subscription } from 'rxjs/Subscription';\r\n\r\n@Component({\r\n selector: 'slick-pagination',\r\n template: `\r\n`\r\n})\r\n@Injectable()\r\nexport class SlickPaginationComponent implements AfterViewInit, OnDestroy {\r\n private _filterSubcription: Subscription;\r\n private _gridPaginationOptions: GridOption;\r\n private _isFirstRender = true;\r\n @Output() onPaginationChanged = new EventEmitter();\r\n\r\n @Input()\r\n set gridPaginationOptions(gridPaginationOptions: GridOption) {\r\n this._gridPaginationOptions = gridPaginationOptions;\r\n if (this._isFirstRender || !gridPaginationOptions || !gridPaginationOptions.pagination || (gridPaginationOptions.pagination.totalItems !== this.totalItems)) {\r\n this.refreshPagination();\r\n this._isFirstRender = false;\r\n }\r\n }\r\n get gridPaginationOptions(): GridOption {\r\n return this._gridPaginationOptions;\r\n }\r\n @Input() grid: any;\r\n dataFrom = 1;\r\n dataTo = 1;\r\n itemsPerPage: number;\r\n pageCount = 0;\r\n pageNumber = 1;\r\n totalItems = 0;\r\n paginationCallback: Function;\r\n paginationPageSizes = [25, 75, 100];\r\n fromToParams: any = { from: this.dataFrom, to: this.dataTo, totalItems: this.totalItems };\r\n\r\n /** Constructor */\r\n constructor(private filterService: FilterService, private sortService: SortService) { }\r\n\r\n ngOnDestroy() {\r\n this.dispose();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this._gridPaginationOptions = this._gridPaginationOptions;\r\n if (!this._gridPaginationOptions || !this._gridPaginationOptions.pagination || (this._gridPaginationOptions.pagination.totalItems !== this.totalItems)) {\r\n this.refreshPagination();\r\n }\r\n\r\n // Subscribe to Event Emitter of Filter & Sort changed, go back to page 1 when that happen\r\n this._filterSubcription = this.filterService.onFilterChanged.subscribe((data) => {\r\n this.refreshPagination(true);\r\n });\r\n }\r\n\r\n ceil(number: number) {\r\n return Math.ceil(number);\r\n }\r\n\r\n changeToFirstPage(event: any) {\r\n this.pageNumber = 1;\r\n this.onPageChanged(event, this.pageNumber);\r\n }\r\n\r\n changeToLastPage(event: any) {\r\n this.pageNumber = this.pageCount;\r\n this.onPageChanged(event, this.pageNumber);\r\n }\r\n\r\n changeToNextPage(event: any) {\r\n if (this.pageNumber < this.pageCount) {\r\n this.pageNumber++;\r\n this.onPageChanged(event, this.pageNumber);\r\n }\r\n }\r\n\r\n changeToPreviousPage(event: any) {\r\n if (this.pageNumber > 0) {\r\n this.pageNumber--;\r\n this.onPageChanged(event, this.pageNumber);\r\n }\r\n }\r\n\r\n changeToCurrentPage(event: any) {\r\n this.pageNumber = event.currentTarget.value;\r\n if (this.pageNumber < 1) {\r\n this.pageNumber = 1;\r\n } else if (this.pageNumber > this.pageCount) {\r\n this.pageNumber = this.pageCount;\r\n }\r\n\r\n this.onPageChanged(event, this.pageNumber);\r\n }\r\n\r\n dispose() {\r\n this.onPaginationChanged.unsubscribe();\r\n if (this._filterSubcription) {\r\n this._filterSubcription.unsubscribe();\r\n }\r\n }\r\n\r\n onChangeItemPerPage(event: any) {\r\n const itemsPerPage = +event.target.value;\r\n this.pageCount = Math.ceil(this.totalItems / itemsPerPage);\r\n this.pageNumber = 1;\r\n this.itemsPerPage = itemsPerPage;\r\n this.onPageChanged(event, this.pageNumber);\r\n }\r\n\r\n refreshPagination(isPageNumberReset: boolean = false) {\r\n const backendApi = this._gridPaginationOptions.backendServiceApi || this._gridPaginationOptions.onBackendEventApi;\r\n if (!backendApi || !backendApi.service || !backendApi.process) {\r\n throw new Error(`BackendServiceApi requires at least a \"process\" function and a \"service\" defined`);\r\n }\r\n\r\n if (this._gridPaginationOptions && this._gridPaginationOptions.pagination) {\r\n const pagination = this._gridPaginationOptions.pagination;\r\n // set the number of items per page if not already set\r\n if (!this.itemsPerPage) {\r\n this.itemsPerPage = +((backendApi && backendApi.options && backendApi.options.paginationOptions && backendApi.options.paginationOptions.first) ? backendApi.options.paginationOptions.first : this._gridPaginationOptions.pagination.pageSize);\r\n }\r\n\r\n // if totalItems changed, we should always go back to the first page and recalculation the From-To indexes\r\n if (isPageNumberReset || this.totalItems !== pagination.totalItems) {\r\n if (this._isFirstRender && pagination.pageNumber && pagination.pageNumber > 1) {\r\n this.pageNumber = pagination.pageNumber || 1;\r\n } else {\r\n this.pageNumber = 1;\r\n }\r\n\r\n // when page number is set to 1 then also reset the \"offset\" of backend service\r\n if (this.pageNumber === 1) {\r\n backendApi.service.resetPaginationOptions();\r\n }\r\n }\r\n\r\n // calculate and refresh the multiple properties of the pagination UI\r\n this.paginationPageSizes = this._gridPaginationOptions.pagination.pageSizes;\r\n this.totalItems = this._gridPaginationOptions.pagination.totalItems;\r\n this.recalculateFromToIndexes();\r\n }\r\n this.pageCount = Math.ceil(this.totalItems / this.itemsPerPage);\r\n }\r\n\r\n async onPageChanged(event: Event | undefined, pageNumber: number) {\r\n this.recalculateFromToIndexes();\r\n\r\n const backendApi = this._gridPaginationOptions.backendServiceApi || this._gridPaginationOptions.onBackendEventApi;\r\n if (!backendApi || !backendApi.service || !backendApi.process) {\r\n throw new Error(`BackendServiceApi requires at least a \"process\" function and a \"service\" defined`);\r\n }\r\n\r\n if (this.dataTo > this.totalItems) {\r\n this.dataTo = this.totalItems;\r\n } else if (this.totalItems < this.itemsPerPage) {\r\n this.dataTo = this.totalItems;\r\n }\r\n if (backendApi) {\r\n const itemsPerPage = +this.itemsPerPage;\r\n\r\n if (backendApi.preProcess) {\r\n backendApi.preProcess();\r\n }\r\n\r\n const query = backendApi.service.onPaginationChanged(event, { newPage: pageNumber, pageSize: itemsPerPage });\r\n\r\n // the process could be an Observable (like HttpClient) or a Promise\r\n // in any case, we need to have a Promise so that we can await on it (if an Observable, convert it to Promise)\r\n const observableOrPromise = backendApi.process(query);\r\n const processResult = await castToPromise(observableOrPromise);\r\n\r\n // from the result, call our internal post process to update the Dataset and Pagination info\r\n if (processResult && backendApi.internalPostProcess) {\r\n backendApi.internalPostProcess(processResult);\r\n }\r\n\r\n // send the response process to the postProcess callback\r\n if (backendApi.postProcess) {\r\n backendApi.postProcess(processResult);\r\n }\r\n } else {\r\n throw new Error('Pagination with a backend service requires \"BackendServiceApi\" to be defined in your grid options');\r\n }\r\n\r\n // emit the changes to the parent component\r\n this.onPaginationChanged.emit({\r\n pageNumber: this.pageNumber,\r\n pageSizes: this.paginationPageSizes,\r\n pageSize: this.itemsPerPage,\r\n totalItems: this.totalItems\r\n });\r\n }\r\n\r\n recalculateFromToIndexes() {\r\n this.dataFrom = (this.pageNumber * this.itemsPerPage) - this.itemsPerPage + 1;\r\n this.dataTo = (this.totalItems < this.itemsPerPage) ? this.totalItems : (this.pageNumber * this.itemsPerPage);\r\n }\r\n}\r\n",
"import { Column } from './../models/index';\n// import { Group, GroupTotals } from '../core'\n// import { Item } from '../dataview'\nimport { arrayToCsvFormatter } from './arrayToCsvFormatter';\nimport { checkboxFormatter } from './checkboxFormatter';\nimport { checkmarkFormatter } from './checkmarkFormatter';\nimport { collectionFormatter } from './collectionFormatter';\nimport { complexObjectFormatter } from './complexObjectFormatter';\nimport { dateIsoFormatter } from './dateIsoFormatter';\nimport { dateTimeIsoFormatter } from './dateTimeIsoFormatter';\nimport { dateTimeIsoAmPmFormatter } from './dateTimeIsoAmPmFormatter';\nimport { dateTimeUsAmPmFormatter } from './dateTimeUsAmPmFormatter';\nimport { dateTimeUsFormatter } from './dateTimeUsFormatter';\nimport { dateUsFormatter } from './dateUsFormatter';\nimport { deleteIconFormatter } from './deleteIconFormatter';\nimport { editIconFormatter } from './editIconFormatter';\nimport { hyperlinkFormatter } from './hyperlinkFormatter';\nimport { hyperlinkUriPrefixFormatter } from './hyperlinkUriPrefixFormatter';\nimport { infoIconFormatter } from './infoIconFormatter';\nimport { lowercaseFormatter } from './lowercaseFormatter';\nimport { multipleFormatter } from './multipleFormatter';\nimport { percentCompleteFormatter } from './percentCompleteFormatter';\nimport { percentCompleteBarFormatter } from './percentCompleteBarFormatter';\nimport { progressBarFormatter } from './progressBarFormatter';\nimport { translateFormatter } from './translateFormatter';\nimport { translateBooleanFormatter } from './translateBooleanFormatter';\nimport { uppercaseFormatter } from './uppercaseFormatter';\nimport { yesNoFormatter } from './yesNoFormatter';\n\n/*\nexport interface GroupFormatter {\n (row: number, cell: number, value: any, columnDef: Column, dataContext: Group): string\n}\nexport interface GroupTotalsFormatter {\n (row: number, cell: number, value: any, columnDef: Column, dataContext: GroupTotals): string\n}\n*/\n\n/** Provides a list of different Formatters that will change the cell value displayed in the UI */\nexport const Formatters = {\n /** Takes an array of string and converts it to a comma delimited string */\n arrayToCsv: arrayToCsvFormatter,\n\n /** When value is filled (true), it will display a checkbox Unicode icon */\n checkbox: checkboxFormatter,\n\n /** When value is filled (true), it will display a Font-Awesome icon (fa-check) */\n checkmark: checkmarkFormatter,\n\n /** Takes a complex data object and return the data under that property (for example: \"user.firstName\" will return the first name \"John\") */\n complexObject: complexObjectFormatter,\n\n /**\n * Looks up values from the columnDefinition.params.collection property and displays the label in CSV or string format\n * @example\n * // the grid will display 'foo' and 'bar' and not 1 and 2 from your dataset\n * { params: { collection: [{ value: 1, label: 'foo'}, {value: 2, label: 'bar' }] }}\n * const dataset = [{ value: 1 },{ value: 2 }];\n */\n collection: collectionFormatter,\n\n /** Takes a Date object and displays it as an ISO Date format */\n dateIso: dateIsoFormatter,\n\n /** Takes a Date object and displays it as an ISO Date+Time format */\n dateTimeIso: dateTimeIsoFormatter,\n\n /** Takes a Date object and displays it as an ISO Date+Time+(am/pm) format */\n dateTimeIsoAmPm: dateTimeIsoAmPmFormatter,\n\n /** Takes a Date object and displays it as an US Date format */\n dateUs: dateUsFormatter,\n\n /** Takes a Date object and displays it as an US Date+Time format */\n dateTimeUs: dateTimeUsFormatter,\n\n /** Takes a Date object and displays it as an US Date+Time+(am/pm) format */\n dateTimeUsAmPm: dateTimeUsAmPmFormatter,\n\n /** Displays a Font-Awesome delete icon (fa-trash) */\n deleteIcon: deleteIconFormatter,\n\n /** Displays a Font-Awesome edit icon (fa-pencil) */\n editIcon: editIconFormatter,\n\n /** Takes an hyperlink cell value and transforms it into a real hyperlink, given that the value starts with 1 of these (http|ftp|https). The structure will be \"hyperlink\" */\n hyperlink: hyperlinkFormatter,\n\n /** Takes an hyperlink URI prefix (passed in column definition \"params.uriPrefix\") and adds the cell value. The structure will be \"value\" */\n hyperlinkUriPrefix: hyperlinkUriPrefixFormatter,\n\n /** Displays a Font-Awesome edit icon (fa-info-circle) */\n infoIcon: infoIconFormatter,\n\n /** Takes a value and displays it all lowercase */\n lowercase: lowercaseFormatter,\n\n /**\n * You can pipe multiple formatters (executed in sequence), use params to pass the list of formatters. For example::\n * { field: 'title', formatter: Formatters.multiple, params: { formatters: [ Formatters.lowercase, Formatters.uppercase ] }\n */\n multiple: multipleFormatter,\n\n /** Takes a cell value number (between 0-100) and displays a red (<50) or green (>=50) bar */\n percentComplete: percentCompleteFormatter,\n\n /** Takes a cell value number (between 0-100) and displays Bootstrap \"percent-complete-bar\" a red (<30), silver (>30 & <70) or green (>=70) bar */\n percentCompleteBar: percentCompleteBarFormatter,\n\n /** Takes a cell value number (between 0-100) and displays Bootstrap \"progress-bar\" a red (<30), silver (>30 & <70) or green (>=70) bar */\n progressBar: progressBarFormatter,\n\n /** Takes a cell value and translates it (i18n). Requires an instance of the Translate Service:: `params: { i18n: this.translate } */\n translate: translateFormatter,\n\n /** Takes a boolean value, cast it to upperCase string and finally translates it (i18n). */\n translateBoolean: translateBooleanFormatter,\n\n /** Takes a value and displays it all uppercase */\n uppercase: uppercaseFormatter,\n\n /** Takes a boolean value and display a string 'Yes' or 'No' */\n yesNo: yesNoFormatter\n};\n",
@@ -129,7 +128,7 @@
"import { Editor, HtmlElementPosition, KeyCode } from './../models/index';\r\n\r\n// using external non-typed js libraries\r\ndeclare var $: any;\r\n\r\n/*\r\n * An example of a 'detached' editor.\r\n * The UI is added onto document BODY and .position(), .show() and .hide() are implemented.\r\n * KeyDown events are also handled to provide handling for Tab, Shift-Tab, Esc and Ctrl-Enter.\r\n */\r\nexport class LongTextEditor implements Editor {\r\n $input: any;\r\n $wrapper: any;\r\n defaultValue: any;\r\n\r\n constructor(private args: any) {\r\n this.init();\r\n }\r\n\r\n init(): void {\r\n const $container = $('body');\r\n\r\n this.$wrapper = $(``).appendTo($container);\r\n this.$input = $(`