@colijnit/extendedcomponents 12.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/README.md +24 -0
  2. package/bundles/colijnit-extendedcomponents.umd.js +1420 -0
  3. package/bundles/colijnit-extendedcomponents.umd.js.map +1 -0
  4. package/colijnit-extendedcomponents.d.ts +5 -0
  5. package/esm2015/colijnit-extendedcomponents.js +5 -0
  6. package/esm2015/lib/components/grid/base/base-grid.component.js +71 -0
  7. package/esm2015/lib/components/grid/base/base-inline-edit-grid.component.js +86 -0
  8. package/esm2015/lib/components/grid/base/base-selection-grid.component.js +100 -0
  9. package/esm2015/lib/components/grid/base/base-toolbar-grid.component.js +74 -0
  10. package/esm2015/lib/components/grid/co-grid.component.js +102 -0
  11. package/esm2015/lib/components/grid/co-grid.module.js +59 -0
  12. package/esm2015/lib/components/grid/enum/grid-lines.enum.js +9 -0
  13. package/esm2015/lib/components/grid/interface/grid-menu-event-args.js +2 -0
  14. package/esm2015/lib/components/grid/interface/grid-row-drag-event-args.js +2 -0
  15. package/esm2015/lib/components/grid/interface/grid-row-drop-event-args.js +2 -0
  16. package/esm2015/lib/components/kanban/co-kanban.component.js +127 -0
  17. package/esm2015/lib/components/kanban/co-kanban.module.js +30 -0
  18. package/esm2015/lib/components/pivot/co-pivot.component.js +195 -0
  19. package/esm2015/lib/components/pivot/co-pivot.module.js +30 -0
  20. package/esm2015/lib/components/schedule/co-schedule.component.js +99 -0
  21. package/esm2015/lib/components/schedule/co-schedule.module.js +30 -0
  22. package/esm2015/lib/core/enum/schedule-view.enum.js +16 -0
  23. package/esm2015/lib/translation/dictionary.service.js +32 -0
  24. package/esm2015/lib/translation/extended-components-translation.module.js +37 -0
  25. package/esm2015/lib/translation/extended-components-translation.service.js +17 -0
  26. package/esm2015/lib/translation/localize.pipe.js +27 -0
  27. package/esm2015/public-api.js +14 -0
  28. package/fesm2015/colijnit-extendedcomponents.js +1086 -0
  29. package/fesm2015/colijnit-extendedcomponents.js.map +1 -0
  30. package/lib/bin/postinstall.js +3 -0
  31. package/lib/components/grid/base/base-grid.component.d.ts +30 -0
  32. package/lib/components/grid/base/base-inline-edit-grid.component.d.ts +21 -0
  33. package/lib/components/grid/base/base-selection-grid.component.d.ts +34 -0
  34. package/lib/components/grid/base/base-toolbar-grid.component.d.ts +20 -0
  35. package/lib/components/grid/co-grid.component.d.ts +9 -0
  36. package/lib/components/grid/co-grid.module.d.ts +10 -0
  37. package/lib/components/grid/enum/grid-lines.enum.d.ts +7 -0
  38. package/lib/components/grid/interface/grid-menu-event-args.d.ts +3 -0
  39. package/lib/components/grid/interface/grid-row-drag-event-args.d.ts +3 -0
  40. package/lib/components/grid/interface/grid-row-drop-event-args.d.ts +3 -0
  41. package/lib/components/grid/style/_layout.scss +36 -0
  42. package/lib/components/grid/style/_material-definition.scss +8 -0
  43. package/lib/components/grid/style/_theme.scss +3 -0
  44. package/lib/components/grid/style/material.scss +4 -0
  45. package/lib/components/kanban/co-kanban.component.d.ts +31 -0
  46. package/lib/components/kanban/co-kanban.module.d.ts +9 -0
  47. package/lib/components/kanban/style/_layout.scss +52 -0
  48. package/lib/components/kanban/style/_material-definition.scss +27 -0
  49. package/lib/components/kanban/style/_theme.scss +3 -0
  50. package/lib/components/kanban/style/material.scss +5 -0
  51. package/lib/components/pivot/co-pivot.component.d.ts +43 -0
  52. package/lib/components/pivot/co-pivot.module.d.ts +9 -0
  53. package/lib/components/pivot/style/_layout.scss +92 -0
  54. package/lib/components/pivot/style/_material-definition.scss +1 -0
  55. package/lib/components/pivot/style/_theme.scss +3 -0
  56. package/lib/components/pivot/style/material.scss +4 -0
  57. package/lib/components/schedule/co-schedule.component.d.ts +22 -0
  58. package/lib/components/schedule/co-schedule.module.d.ts +9 -0
  59. package/lib/components/schedule/style/_layout.scss +4 -0
  60. package/lib/components/schedule/style/_material-definition.scss +0 -0
  61. package/lib/components/schedule/style/_theme.scss +4 -0
  62. package/lib/components/schedule/style/material.scss +4 -0
  63. package/lib/core/enum/schedule-view.enum.d.ts +14 -0
  64. package/lib/style/_input.mixins.scss +142 -0
  65. package/lib/style/_mixin.scss +16 -0
  66. package/lib/style/_variables.scss +96 -0
  67. package/lib/style/extendedcomponents-globals.scss +114 -0
  68. package/lib/style/material2/_core.scss +17 -0
  69. package/lib/style/material2/_material2-scss-barrel.scss +16 -0
  70. package/lib/style/material2/ripple/_co-ripple.scss +68 -0
  71. package/lib/style/material2/style/_elevation.scss +176 -0
  72. package/lib/style/material2/style/_list-common.scss +51 -0
  73. package/lib/style/material2/style/_variables.scss +61 -0
  74. package/lib/style/material2/theming/_palette.scss +708 -0
  75. package/lib/style/material2/theming/_theming.scss +80 -0
  76. package/lib/style/material2/typography/_typography.scss +8 -0
  77. package/lib/translation/dictionary.service.d.ts +15 -0
  78. package/lib/translation/extended-components-translation.module.d.ts +9 -0
  79. package/lib/translation/extended-components-translation.service.d.ts +9 -0
  80. package/lib/translation/localize.pipe.d.ts +10 -0
  81. package/package.json +29 -0
  82. package/public-api.d.ts +10 -0
@@ -0,0 +1,1086 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, Component, ViewEncapsulation, ViewChild, Input, Output, HostBinding, NgModule, ChangeDetectionStrategy, Directive, Injectable, Pipe } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import * as i1 from '@syncfusion/ej2-angular-kanban';
5
+ import { KanbanModule } from '@syncfusion/ej2-angular-kanban';
6
+ import * as i1$1 from '@syncfusion/ej2-angular-schedule';
7
+ import { DayService, WeekService, WorkWeekService, MonthService, AgendaService, MonthAgendaService, TimelineViewsService, TimelineMonthService, ScheduleModule } from '@syncfusion/ej2-angular-schedule';
8
+ import { FormsModule } from '@angular/forms';
9
+ import * as i1$2 from '@syncfusion/ej2-angular-grids';
10
+ import { RowDDService, GridModule, PageService, SortService, FilterService, GroupService, ReorderService, ResizeService, ExcelExportService, PdfExportService, EditService, ToolbarService, ColumnChooserService, ColumnMenuService, ContextMenuService } from '@syncfusion/ej2-angular-grids';
11
+ import { __awaiter } from 'tslib';
12
+ import { Observable, Subscription, fromEvent } from 'rxjs';
13
+ import * as i1$3 from '@syncfusion/ej2-angular-pivotview';
14
+ import { GroupingBarService, GroupingService, ToolbarService as ToolbarService$1, ConditionalFormattingService, FieldListService, NumberFormattingService, PivotViewModule } from '@syncfusion/ej2-angular-pivotview';
15
+
16
+ class CoKanbanComponent {
17
+ constructor() {
18
+ this.allowDragAndDrop = true;
19
+ this.allowKeyboard = true;
20
+ this.enablePersistence = false;
21
+ this.enableTooltip = false;
22
+ this.keyField = "";
23
+ this.showEmptyColumn = false;
24
+ this.cardClickEvent = new EventEmitter();
25
+ this.cardDoubleClickEvent = new EventEmitter();
26
+ this.dragStartEvent = new EventEmitter();
27
+ this.dragStopEvent = new EventEmitter();
28
+ }
29
+ showClass() {
30
+ return true;
31
+ }
32
+ ngOnInit() {
33
+ }
34
+ ngAfterViewInit() {
35
+ if (this.columns) {
36
+ this.kanban.columns = this.columns;
37
+ }
38
+ }
39
+ dialogOpen(args) {
40
+ args.cancel = true;
41
+ }
42
+ handleCardClick(args) {
43
+ this.cardClickEvent.next(args);
44
+ }
45
+ handleCardDoubleClick(args) {
46
+ this.cardDoubleClickEvent.next(args);
47
+ }
48
+ handleDragStart(args) {
49
+ this.dragStartEvent.next(args);
50
+ }
51
+ handleDragStop(args) {
52
+ this.dragStopEvent.next(args);
53
+ }
54
+ }
55
+ CoKanbanComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoKanbanComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
56
+ CoKanbanComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CoKanbanComponent, selector: "co-kanban", inputs: { allowDragAndDrop: "allowDragAndDrop", allowKeyboard: "allowKeyboard", cardSettings: "cardSettings", enablePersistence: "enablePersistence", enableTooltip: "enableTooltip", keyField: "keyField", showEmptyColumn: "showEmptyColumn", swimlaneSettings: "swimlaneSettings", columns: "columns", data: "data" }, outputs: { cardClickEvent: "cardClickEvent", cardDoubleClickEvent: "cardDoubleClickEvent", dragStartEvent: "dragStartEvent", dragStopEvent: "dragStopEvent" }, host: { properties: { "class.co-kanban": "this.showClass" } }, viewQueries: [{ propertyName: "kanban", first: true, predicate: ["kanban"], descendants: true }], ngImport: i0, template: `
57
+ <ejs-kanban
58
+ #kanban
59
+ id="kanban"
60
+ [allowDragAndDrop]="allowDragAndDrop"
61
+ [allowKeyboard]="allowKeyboard"
62
+ [cardSettings]="cardSettings"
63
+ [enablePersistence]="enablePersistence"
64
+ [enableTooltip]="enableTooltip"
65
+ [keyField]="keyField"
66
+ [showEmptyColumn]="showEmptyColumn"
67
+ [swimlaneSettings]="swimlaneSettings"
68
+ [dataSource]="data"
69
+ (cardClick)="handleCardClick($event)"
70
+ (cardDoubleClick)="handleCardDoubleClick($event)"
71
+ (dialogOpen)="dialogOpen($event)"
72
+ (dragStart)="handleDragStart($event)"
73
+ (dragStop)="handleDragStop($event)"
74
+ >
75
+ </ejs-kanban>
76
+ `, isInline: true, components: [{ type: i1.KanbanComponent, selector: "ejs-kanban", inputs: ["allowDragAndDrop", "allowKeyboard", "cardSettings", "columns", "constraintType", "cssClass", "dataSource", "dialogSettings", "enableHtmlSanitizer", "enablePersistence", "enableRtl", "enableTooltip", "externalDropId", "height", "keyField", "locale", "query", "showEmptyColumn", "sortSettings", "stackedHeaders", "swimlaneSettings", "tooltipTemplate", "width"], outputs: ["actionBegin", "actionComplete", "actionFailure", "cardClick", "cardDoubleClick", "cardRendered", "created", "dataBinding", "dataBound", "dataSourceChanged", "dataStateChange", "dialogClose", "dialogOpen", "drag", "dragStart", "dragStop", "queryCellInfo"] }], encapsulation: i0.ViewEncapsulation.None });
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoKanbanComponent, decorators: [{
78
+ type: Component,
79
+ args: [{
80
+ selector: 'co-kanban',
81
+ template: `
82
+ <ejs-kanban
83
+ #kanban
84
+ id="kanban"
85
+ [allowDragAndDrop]="allowDragAndDrop"
86
+ [allowKeyboard]="allowKeyboard"
87
+ [cardSettings]="cardSettings"
88
+ [enablePersistence]="enablePersistence"
89
+ [enableTooltip]="enableTooltip"
90
+ [keyField]="keyField"
91
+ [showEmptyColumn]="showEmptyColumn"
92
+ [swimlaneSettings]="swimlaneSettings"
93
+ [dataSource]="data"
94
+ (cardClick)="handleCardClick($event)"
95
+ (cardDoubleClick)="handleCardDoubleClick($event)"
96
+ (dialogOpen)="dialogOpen($event)"
97
+ (dragStart)="handleDragStart($event)"
98
+ (dragStop)="handleDragStop($event)"
99
+ >
100
+ </ejs-kanban>
101
+ `,
102
+ encapsulation: ViewEncapsulation.None
103
+ }]
104
+ }], ctorParameters: function () { return []; }, propDecorators: { kanban: [{
105
+ type: ViewChild,
106
+ args: ['kanban', { static: false }]
107
+ }], allowDragAndDrop: [{
108
+ type: Input
109
+ }], allowKeyboard: [{
110
+ type: Input
111
+ }], cardSettings: [{
112
+ type: Input
113
+ }], enablePersistence: [{
114
+ type: Input
115
+ }], enableTooltip: [{
116
+ type: Input
117
+ }], keyField: [{
118
+ type: Input
119
+ }], showEmptyColumn: [{
120
+ type: Input
121
+ }], swimlaneSettings: [{
122
+ type: Input
123
+ }], columns: [{
124
+ type: Input
125
+ }], data: [{
126
+ type: Input
127
+ }], cardClickEvent: [{
128
+ type: Output
129
+ }], cardDoubleClickEvent: [{
130
+ type: Output
131
+ }], dragStartEvent: [{
132
+ type: Output
133
+ }], dragStopEvent: [{
134
+ type: Output
135
+ }], showClass: [{
136
+ type: HostBinding,
137
+ args: ["class.co-kanban"]
138
+ }] } });
139
+
140
+ class CoKanbanModule {
141
+ }
142
+ CoKanbanModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoKanbanModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
143
+ CoKanbanModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoKanbanModule, declarations: [CoKanbanComponent], imports: [CommonModule,
144
+ KanbanModule], exports: [CoKanbanComponent] });
145
+ CoKanbanModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoKanbanModule, imports: [[
146
+ CommonModule,
147
+ KanbanModule
148
+ ]] });
149
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoKanbanModule, decorators: [{
150
+ type: NgModule,
151
+ args: [{
152
+ imports: [
153
+ CommonModule,
154
+ KanbanModule
155
+ ],
156
+ declarations: [
157
+ CoKanbanComponent
158
+ ],
159
+ exports: [
160
+ CoKanbanComponent
161
+ ]
162
+ }]
163
+ }] });
164
+
165
+ class CoScheduleComponent {
166
+ constructor() {
167
+ this.enablePersistence = false;
168
+ this.actionBegin = new EventEmitter();
169
+ this.actionComplete = new EventEmitter();
170
+ this.actionFailure = new EventEmitter();
171
+ this.showClass = true;
172
+ }
173
+ ngOnInit() {
174
+ }
175
+ onActionBegin(args) {
176
+ this.actionBegin.emit(args);
177
+ }
178
+ onActionComplete(args) {
179
+ this.actionComplete.emit(args);
180
+ }
181
+ onActionFailure(args) {
182
+ this.actionFailure.emit(args);
183
+ }
184
+ }
185
+ CoScheduleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoScheduleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
186
+ CoScheduleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CoScheduleComponent, selector: "co-schedule", inputs: { selectedDate: "selectedDate", currentView: "currentView", eventSettings: "eventSettings", enablePersistence: "enablePersistence" }, outputs: { actionBegin: "actionBegin", actionComplete: "actionComplete", actionFailure: "actionFailure" }, host: { properties: { "class.co-schedule": "this.showClass" } }, providers: [
187
+ DayService,
188
+ WeekService,
189
+ WorkWeekService,
190
+ MonthService,
191
+ AgendaService,
192
+ MonthAgendaService,
193
+ TimelineViewsService,
194
+ TimelineMonthService
195
+ ], viewQueries: [{ propertyName: "scheduleObj", first: true, predicate: ["ejsSchedule"], descendants: true, static: true }], ngImport: i0, template: `
196
+ <ejs-schedule
197
+ #ejsSchedule
198
+ [selectedDate]="selectedDate"
199
+ [currentView]="currentView"
200
+ [eventSettings]="eventSettings"
201
+ [enablePersistence]="enablePersistence"
202
+ (actionBegin)="onActionBegin($event)"
203
+ (actionComplete)="onActionComplete($event)"
204
+ (actionFailure)="onActionFailure($event)"
205
+ ><ng-content></ng-content>
206
+ </ejs-schedule>
207
+ `, isInline: true, components: [{ type: i1$1.ScheduleComponent, selector: "ejs-schedule", inputs: ["agendaDaysCount", "allowDragAndDrop", "allowInline", "allowKeyboardInteraction", "allowMultiCellSelection", "allowMultiDrag", "allowMultiRowSelection", "allowResizing", "allowSwiping", "calendarMode", "cellHeaderTemplate", "cellTemplate", "cssClass", "currentView", "dateFormat", "dateHeaderTemplate", "dateRangeTemplate", "dayHeaderTemplate", "editorTemplate", "enableAdaptiveUI", "enableAllDayScroll", "enableHtmlSanitizer", "enablePersistence", "enableRecurrenceValidation", "enableRtl", "endHour", "eventDragArea", "eventSettings", "firstDayOfWeek", "firstMonthOfYear", "group", "headerIndentTemplate", "headerRows", "height", "hideEmptyAgendaDays", "locale", "maxDate", "minDate", "monthHeaderTemplate", "monthsCount", "quickInfoOnSelectionEnd", "quickInfoTemplates", "readonly", "resourceHeaderTemplate", "resources", "rowAutoHeight", "selectedDate", "showHeaderBar", "showQuickInfo", "showTimeIndicator", "showWeekNumber", "showWeekend", "startHour", "timeFormat", "timeScale", "timezone", "timezoneDataSource", "views", "weekRule", "width", "workDays", "workHours"], outputs: ["actionBegin", "actionComplete", "actionFailure", "cellClick", "cellDoubleClick", "created", "dataBinding", "dataBound", "destroyed", "drag", "dragStart", "dragStop", "eventClick", "eventRendered", "hover", "moreEventsClick", "navigating", "popupClose", "popupOpen", "renderCell", "resizeStart", "resizeStop", "resizing", "select", "currentViewChange", "selectedDateChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoScheduleComponent, decorators: [{
209
+ type: Component,
210
+ args: [{
211
+ selector: 'co-schedule',
212
+ template: `
213
+ <ejs-schedule
214
+ #ejsSchedule
215
+ [selectedDate]="selectedDate"
216
+ [currentView]="currentView"
217
+ [eventSettings]="eventSettings"
218
+ [enablePersistence]="enablePersistence"
219
+ (actionBegin)="onActionBegin($event)"
220
+ (actionComplete)="onActionComplete($event)"
221
+ (actionFailure)="onActionFailure($event)"
222
+ ><ng-content></ng-content>
223
+ </ejs-schedule>
224
+ `,
225
+ providers: [
226
+ DayService,
227
+ WeekService,
228
+ WorkWeekService,
229
+ MonthService,
230
+ AgendaService,
231
+ MonthAgendaService,
232
+ TimelineViewsService,
233
+ TimelineMonthService
234
+ ],
235
+ encapsulation: ViewEncapsulation.None,
236
+ changeDetection: ChangeDetectionStrategy.OnPush
237
+ }]
238
+ }], ctorParameters: function () { return []; }, propDecorators: { scheduleObj: [{
239
+ type: ViewChild,
240
+ args: ['ejsSchedule', { static: true }]
241
+ }], selectedDate: [{
242
+ type: Input
243
+ }], currentView: [{
244
+ type: Input
245
+ }], eventSettings: [{
246
+ type: Input
247
+ }], enablePersistence: [{
248
+ type: Input
249
+ }], actionBegin: [{
250
+ type: Output
251
+ }], actionComplete: [{
252
+ type: Output
253
+ }], actionFailure: [{
254
+ type: Output
255
+ }], showClass: [{
256
+ type: HostBinding,
257
+ args: ['class.co-schedule']
258
+ }] } });
259
+
260
+ class CoScheduleModule {
261
+ }
262
+ CoScheduleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoScheduleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
263
+ CoScheduleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoScheduleModule, declarations: [CoScheduleComponent], imports: [CommonModule,
264
+ ScheduleModule], exports: [CoScheduleComponent] });
265
+ CoScheduleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoScheduleModule, imports: [[
266
+ CommonModule,
267
+ ScheduleModule
268
+ ]] });
269
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoScheduleModule, decorators: [{
270
+ type: NgModule,
271
+ args: [{
272
+ declarations: [
273
+ CoScheduleComponent
274
+ ],
275
+ imports: [
276
+ CommonModule,
277
+ ScheduleModule
278
+ ],
279
+ exports: [
280
+ CoScheduleComponent
281
+ ]
282
+ }]
283
+ }] });
284
+
285
+ var GridLines;
286
+ (function (GridLines) {
287
+ GridLines["None"] = "None";
288
+ GridLines["Horizontal"] = "Horizontal";
289
+ GridLines["Vertical"] = "Vertical";
290
+ GridLines["Both"] = "Both";
291
+ GridLines["Default"] = "Default";
292
+ })(GridLines || (GridLines = {}));
293
+
294
+ class BaseGridComponent {
295
+ constructor(element) {
296
+ this.element = element;
297
+ this.gridLines = GridLines.None;
298
+ this.contextMenuItems = [];
299
+ this.sortingEnabled = false;
300
+ this.filteringEnabled = false;
301
+ this.pagingEnabled = false;
302
+ this.groupingEnabled = false;
303
+ this.reorderingEnabled = false;
304
+ this.rowDragAndDropEnabled = false;
305
+ this.resizingEnabled = false;
306
+ this.showColumnMenu = false;
307
+ this.pageSettings = {};
308
+ }
309
+ set maxNumberOfRows(value) {
310
+ if (value) {
311
+ this.pageSettings.pageSize = value;
312
+ }
313
+ }
314
+ set columns(value) {
315
+ this._columns = value;
316
+ }
317
+ get columns() {
318
+ return this._columns;
319
+ }
320
+ }
321
+ BaseGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseGridComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
322
+ BaseGridComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: BaseGridComponent, inputs: { data: "data", gridLines: "gridLines", contextMenuItems: "contextMenuItems", frozenColumns: "frozenColumns", frozenRows: "frozenRows", sortingEnabled: "sortingEnabled", filteringEnabled: "filteringEnabled", pagingEnabled: "pagingEnabled", groupingEnabled: "groupingEnabled", reorderingEnabled: "reorderingEnabled", rowDragAndDropEnabled: "rowDragAndDropEnabled", rowDropSettings: "rowDropSettings", resizingEnabled: "resizingEnabled", showColumnMenu: "showColumnMenu", maxNumberOfRows: "maxNumberOfRows", columns: "columns" }, viewQueries: [{ propertyName: "grid", first: true, predicate: ["grid"], descendants: true }], ngImport: i0 });
323
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseGridComponent, decorators: [{
324
+ type: Directive
325
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { grid: [{
326
+ type: ViewChild,
327
+ args: ['grid', { static: false }]
328
+ }], data: [{
329
+ type: Input
330
+ }], gridLines: [{
331
+ type: Input
332
+ }], contextMenuItems: [{
333
+ type: Input
334
+ }], frozenColumns: [{
335
+ type: Input
336
+ }], frozenRows: [{
337
+ type: Input
338
+ }], sortingEnabled: [{
339
+ type: Input
340
+ }], filteringEnabled: [{
341
+ type: Input
342
+ }], pagingEnabled: [{
343
+ type: Input
344
+ }], groupingEnabled: [{
345
+ type: Input
346
+ }], reorderingEnabled: [{
347
+ type: Input
348
+ }], rowDragAndDropEnabled: [{
349
+ type: Input
350
+ }], rowDropSettings: [{
351
+ type: Input
352
+ }], resizingEnabled: [{
353
+ type: Input
354
+ }], showColumnMenu: [{
355
+ type: Input
356
+ }], maxNumberOfRows: [{
357
+ type: Input
358
+ }], columns: [{
359
+ type: Input
360
+ }] } });
361
+
362
+ class BaseToolbarGridComponent extends BaseGridComponent {
363
+ constructor() {
364
+ super(...arguments);
365
+ this._exportExcelEnabled = false;
366
+ this._exportPdfEnabled = false;
367
+ this._showColumnChooser = false;
368
+ }
369
+ set showColumnChooser(value) {
370
+ this._showColumnChooser = value;
371
+ this.updateToolbar("ColumnChooser", this._showColumnChooser);
372
+ }
373
+ get showColumnChooser() {
374
+ return this._showColumnChooser;
375
+ }
376
+ set exportExcelEnabled(value) {
377
+ this._exportExcelEnabled = value;
378
+ this.updateToolbar("ExcelExport", this._exportExcelEnabled);
379
+ }
380
+ get exportExcelEnabled() {
381
+ return this._exportExcelEnabled;
382
+ }
383
+ set exportPdfEnabled(value) {
384
+ this._exportPdfEnabled = value;
385
+ this.updateToolbar("PdfExport", this._exportPdfEnabled);
386
+ }
387
+ get exportPdfEnabled() {
388
+ return this._exportPdfEnabled;
389
+ }
390
+ toolbarClick(args) {
391
+ if (this.grid) {
392
+ if (args.item.id === 'grid_excelexport') {
393
+ this.grid.excelExport();
394
+ }
395
+ else if (args.item.id === 'grid_pdfexport') {
396
+ this.grid.pdfExport();
397
+ }
398
+ }
399
+ }
400
+ updateToolbar(option, add) {
401
+ if (add) {
402
+ if (!this.toolbarOptions) {
403
+ this.toolbarOptions = [];
404
+ }
405
+ this.toolbarOptions.push(option);
406
+ }
407
+ else {
408
+ if (this.toolbarOptions) {
409
+ let index = this.toolbarOptions.indexOf(option);
410
+ this.toolbarOptions.splice(index, 1);
411
+ }
412
+ }
413
+ if (this.toolbarOptions && this.toolbarOptions.length > 0) {
414
+ this.toolbarOptions = this.toolbarOptions.slice();
415
+ }
416
+ else {
417
+ this.toolbarOptions = undefined;
418
+ }
419
+ }
420
+ }
421
+ BaseToolbarGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseToolbarGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
422
+ BaseToolbarGridComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: BaseToolbarGridComponent, inputs: { showColumnChooser: "showColumnChooser", exportExcelEnabled: "exportExcelEnabled", exportPdfEnabled: "exportPdfEnabled" }, usesInheritance: true, ngImport: i0 });
423
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseToolbarGridComponent, decorators: [{
424
+ type: Directive
425
+ }], propDecorators: { showColumnChooser: [{
426
+ type: Input
427
+ }], exportExcelEnabled: [{
428
+ type: Input
429
+ }], exportPdfEnabled: [{
430
+ type: Input
431
+ }] } });
432
+
433
+ class BaseInlineEditGridComponent extends BaseToolbarGridComponent {
434
+ constructor() {
435
+ super(...arguments);
436
+ this.rowSaved = new EventEmitter();
437
+ this.beforeRowDelete = new EventEmitter(false);
438
+ this.rowDeleted = new EventEmitter();
439
+ this.actionBeginObservable$ = new Observable();
440
+ this.actionBeginObservableSub = new Subscription();
441
+ }
442
+ set inlineEdit(value) {
443
+ if (value) {
444
+ this.editSettings = { allowEditing: true, allowAdding: true, allowDeleting: true };
445
+ }
446
+ else {
447
+ this.editSettings = {};
448
+ }
449
+ this.updateToolbar("Add", value);
450
+ this.updateToolbar("Edit", value);
451
+ this.updateToolbar("Delete", value);
452
+ this.updateToolbar("Update", value);
453
+ this.updateToolbar("Cancel", value);
454
+ }
455
+ ngAfterViewInit() {
456
+ if (this.grid) {
457
+ this.actionBeginObservable$ = fromEvent(this.grid, 'actionBegin');
458
+ this.actionBeginObservableSub = this.actionBeginObservable$.subscribe((action) => {
459
+ this.handleActionBegin(action);
460
+ });
461
+ }
462
+ }
463
+ ngOnDestroy() {
464
+ this.actionBeginObservableSub.unsubscribe();
465
+ }
466
+ handleActionBegin(action) {
467
+ return __awaiter(this, void 0, void 0, function* () {
468
+ if (action) {
469
+ if (action.requestType === "delete") {
470
+ yield this.waitForBeforeDelete(action);
471
+ }
472
+ if (action.requestType === "save") {
473
+ this.rowSaved.next(action.data);
474
+ }
475
+ }
476
+ });
477
+ }
478
+ handleActionComplete(action) {
479
+ if (action) {
480
+ if (action.requestType === "delete") {
481
+ this.rowDeleted.next(action.data);
482
+ }
483
+ if (action.requestType === "save") {
484
+ this.rowSaved.next(action.data);
485
+ }
486
+ }
487
+ }
488
+ waitForBeforeDelete(action) {
489
+ // @ts-ignore
490
+ const beforeRowDelete$ = fromEvent(this.element, 'beforeRowDelete');
491
+ return new Promise((resolve) => {
492
+ beforeRowDelete$.subscribe((result) => {
493
+ action = result;
494
+ return resolve(action);
495
+ }).unsubscribe();
496
+ this.beforeRowDelete.next(action);
497
+ });
498
+ }
499
+ }
500
+ BaseInlineEditGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseInlineEditGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
501
+ BaseInlineEditGridComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: BaseInlineEditGridComponent, inputs: { inlineEdit: "inlineEdit" }, outputs: { rowSaved: "rowSaved", beforeRowDelete: "beforeRowDelete", rowDeleted: "rowDeleted" }, usesInheritance: true, ngImport: i0 });
502
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseInlineEditGridComponent, decorators: [{
503
+ type: Directive
504
+ }], propDecorators: { inlineEdit: [{
505
+ type: Input
506
+ }], rowSaved: [{
507
+ type: Output
508
+ }], beforeRowDelete: [{
509
+ type: Output
510
+ }], rowDeleted: [{
511
+ type: Output
512
+ }] } });
513
+
514
+ const defaultColumn = `<div class="detail-wrapper"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><polygon points="34.55 26.18 34.55 37.49 12.44 37.49 12.44 15.38 24.68 15.38 25.59 14.48 24.05 12.94 10 12.94 10 39.94 36.99 39.94 36.99 25.88 35.92 24.81 34.55 26.18" fill="#484f60"/><polygon points="40 10.4 27.92 10.4 32 14.48 22.24 26.23 24.16 28.15 35.92 18.4 40 22.48 40 10.4" fill="#484f60"/></svg></div>`;
515
+ class BaseSelectionGridComponent extends BaseInlineEditGridComponent {
516
+ constructor() {
517
+ super(...arguments);
518
+ this.includeDetailColumn = false;
519
+ this.rowsSelected = new EventEmitter();
520
+ this.rowDoubleClick = new EventEmitter();
521
+ this.detailColumnClick = new EventEmitter();
522
+ this.contextMenuItemClick = new EventEmitter();
523
+ this.rowDragStartEvent = new EventEmitter();
524
+ this.rowDropEvent = new EventEmitter();
525
+ this.beforeRowsDelete = new EventEmitter();
526
+ this.rowsDeleted = new EventEmitter();
527
+ this.selectionOptions = { type: "Single" };
528
+ }
529
+ set multipleSelect(value) {
530
+ this.selectionOptions = { type: value ? "Multiple" : "Single" };
531
+ }
532
+ ngOnInit() {
533
+ if (this.includeDetailColumn) {
534
+ this.columns.unshift({
535
+ field: "", headerText: "", lockColumn: true, maxWidth: 30, width: 30,
536
+ allowFiltering: false, allowResizing: false, allowReordering: false, allowEditing: false, allowSearching: false,
537
+ showColumnMenu: false, showInColumnChooser: false,
538
+ template: this.detailColumnTemplate ? this.detailColumnTemplate : defaultColumn,
539
+ headerTemplate: this.detailColumnTemplate ? this.detailColumnTemplate : defaultColumn
540
+ });
541
+ }
542
+ }
543
+ handleRowSelected(rowData) {
544
+ if (this.grid) {
545
+ const rows = this.grid.getSelectedRecords();
546
+ this.rowsSelected.next(rows);
547
+ }
548
+ }
549
+ handleDoubleClick(clickData) {
550
+ this.rowDoubleClick.next(clickData.rowData);
551
+ }
552
+ handleRecordClick(clickData) {
553
+ if (clickData && this.includeDetailColumn && clickData.cellIndex === 0) {
554
+ this.detailColumnClick.next(clickData.rowData);
555
+ }
556
+ }
557
+ selectRow(index) {
558
+ if (this.grid) {
559
+ const rowIndexes = [];
560
+ rowIndexes.push(index);
561
+ this.grid.selectionModule.selectRows(rowIndexes);
562
+ }
563
+ }
564
+ contextMenuClick(args) {
565
+ this.contextMenuItemClick.next(args);
566
+ }
567
+ rowDragStartClick(args) {
568
+ this.rowDragStartEvent.next(args);
569
+ }
570
+ rowDropClick(args) {
571
+ this.rowDropEvent.next(args);
572
+ }
573
+ handleBeforeBatchDelete(args) {
574
+ this.beforeRowsDelete.next(args);
575
+ }
576
+ handleBatchDelete(rows) {
577
+ this.rowsDeleted.next(rows);
578
+ }
579
+ }
580
+ BaseSelectionGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseSelectionGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
581
+ BaseSelectionGridComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: BaseSelectionGridComponent, inputs: { multipleSelect: "multipleSelect", includeDetailColumn: "includeDetailColumn", detailColumnTemplate: "detailColumnTemplate" }, outputs: { rowsSelected: "rowsSelected", rowDoubleClick: "rowDoubleClick", detailColumnClick: "detailColumnClick", contextMenuItemClick: "contextMenuItemClick", rowDragStartEvent: "rowDragStartEvent", rowDropEvent: "rowDropEvent", beforeRowsDelete: "beforeRowsDelete", rowsDeleted: "rowsDeleted" }, host: { properties: { "class.detail-column": "this.includeDetailColumn" } }, usesInheritance: true, ngImport: i0 });
582
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseSelectionGridComponent, decorators: [{
583
+ type: Directive
584
+ }], propDecorators: { multipleSelect: [{
585
+ type: Input
586
+ }], includeDetailColumn: [{
587
+ type: HostBinding,
588
+ args: ["class.detail-column"]
589
+ }, {
590
+ type: Input
591
+ }], detailColumnTemplate: [{
592
+ type: Input
593
+ }], rowsSelected: [{
594
+ type: Output
595
+ }], rowDoubleClick: [{
596
+ type: Output
597
+ }], detailColumnClick: [{
598
+ type: Output
599
+ }], contextMenuItemClick: [{
600
+ type: Output
601
+ }], rowDragStartEvent: [{
602
+ type: Output
603
+ }], rowDropEvent: [{
604
+ type: Output
605
+ }], beforeRowsDelete: [{
606
+ type: Output
607
+ }], rowsDeleted: [{
608
+ type: Output
609
+ }] } });
610
+
611
+ class CoGridComponent extends BaseSelectionGridComponent {
612
+ showClass() {
613
+ return true;
614
+ }
615
+ ngOnInit() {
616
+ super.ngOnInit();
617
+ }
618
+ }
619
+ CoGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
620
+ CoGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CoGridComponent, selector: "co-grid", host: { properties: { "class.co-grid": "this.showClass" } }, providers: [
621
+ RowDDService
622
+ ], usesInheritance: true, ngImport: i0, template: `
623
+ <ejs-grid #grid id="grid"
624
+ [dataSource]="data"
625
+ [columns]="columns"
626
+ [contextMenuItems]="contextMenuItems"
627
+ [pageSettings]="pageSettings"
628
+ [toolbar]="toolbarOptions"
629
+ [gridLines]="gridLines"
630
+ [frozenColumns]="frozenColumns"
631
+ [frozenRows]="frozenRows"
632
+ [selectionSettings]="selectionOptions"
633
+ [editSettings]="editSettings"
634
+ [allowPaging]="pagingEnabled"
635
+ [allowSorting]="sortingEnabled"
636
+ [allowFiltering]="filteringEnabled"
637
+ [allowGrouping]="groupingEnabled"
638
+ [allowReordering]="reorderingEnabled"
639
+ [allowResizing]="resizingEnabled"
640
+ [allowRowDragAndDrop]="rowDragAndDropEnabled"
641
+ [showColumnMenu]="showColumnMenu"
642
+ [showColumnChooser]="showColumnChooser"
643
+ [allowExcelExport]="exportExcelEnabled"
644
+ [allowPdfExport]="exportPdfEnabled"
645
+ (toolbarClick)="toolbarClick($event)"
646
+ (rowSelected)="handleRowSelected($event)"
647
+ (recordDoubleClick)="handleDoubleClick($event)"
648
+ (recordClick)="handleRecordClick($event)"
649
+ (actionComplete)="handleActionComplete($event)"
650
+ (contextMenuClick)="contextMenuClick($event)"
651
+ (rowDragStart)="rowDragStartClick($event)"
652
+ (rowDrop)="rowDropClick($event)"
653
+ (beforeBatchDelete)="handleBeforeBatchDelete($event)"
654
+ (batchDelete)="handleBatchDelete($event)"
655
+ >
656
+ </ejs-grid>
657
+ `, isInline: true, components: [{ type: i1$2.GridComponent, selector: "ejs-grid", inputs: ["aggregates", "allowExcelExport", "allowFiltering", "allowGrouping", "allowKeyboard", "allowMultiSorting", "allowPaging", "allowPdfExport", "allowReordering", "allowResizing", "allowRowDragAndDrop", "allowSelection", "allowSorting", "allowTextWrap", "autoFit", "childGrid", "clipMode", "columnChooserSettings", "columnMenuItems", "columnQueryMode", "columns", "contextMenuItems", "cssClass", "currencyCode", "currentAction", "currentViewData", "dataSource", "detailTemplate", "editSettings", "ej2StatePersistenceVersion", "enableAdaptiveUI", "enableAltRow", "enableAutoFill", "enableColumnVirtualization", "enableHeaderFocus", "enableHover", "enableHtmlSanitizer", "enableImmutableMode", "enableInfiniteScrolling", "enablePersistence", "enableRtl", "enableStickyHeader", "enableVirtualMaskRow", "enableVirtualization", "filterSettings", "frozenColumns", "frozenRows", "gridLines", "groupSettings", "height", "hierarchyPrintMode", "infiniteScrollSettings", "loadingIndicator", "locale", "pageSettings", "pagerTemplate", "parentDetails", "printMode", "query", "queryString", "resizeSettings", "rowDropSettings", "rowHeight", "rowRenderingMode", "rowTemplate", "searchSettings", "selectedRowIndex", "selectionSettings", "showColumnChooser", "showColumnMenu", "showHider", "sortSettings", "textWrapSettings", "toolbar", "toolbarTemplate", "width"], outputs: ["actionBegin", "actionComplete", "actionFailure", "batchAdd", "batchCancel", "batchDelete", "beforeAutoFill", "beforeBatchAdd", "beforeBatchDelete", "beforeBatchSave", "beforeCopy", "beforeDataBound", "beforeExcelExport", "beforeOpenAdaptiveDialog", "beforeOpenColumnChooser", "beforePaste", "beforePdfExport", "beforePrint", "beginEdit", "cellDeselected", "cellDeselecting", "cellEdit", "cellSave", "cellSaved", "cellSelected", "cellSelecting", "checkBoxChange", "columnDataStateChange", "columnDeselected", "columnDeselecting", "columnDrag", "columnDragStart", "columnDrop", "columnMenuClick", "columnMenuOpen", "columnSelected", "columnSelecting", "commandClick", "contextMenuClick", "contextMenuOpen", "created", "dataBound", "dataSourceChanged", "dataStateChange", "destroyed", "detailDataBound", "excelAggregateQueryCellInfo", "excelExportComplete", "excelHeaderQueryCellInfo", "excelQueryCellInfo", "exportDetailDataBound", "exportGroupCaption", "headerCellInfo", "keyPressed", "lazyLoadGroupCollapse", "lazyLoadGroupExpand", "load", "pdfAggregateQueryCellInfo", "pdfExportComplete", "pdfHeaderQueryCellInfo", "pdfQueryCellInfo", "printComplete", "queryCellInfo", "recordClick", "recordDoubleClick", "resizeStart", "resizeStop", "resizing", "rowDataBound", "rowDeselected", "rowDeselecting", "rowDrag", "rowDragStart", "rowDragStartHelper", "rowDrop", "rowSelected", "rowSelecting", "toolbarClick", "dataSourceChange"] }], encapsulation: i0.ViewEncapsulation.None });
658
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoGridComponent, decorators: [{
659
+ type: Component,
660
+ args: [{
661
+ selector: 'co-grid',
662
+ template: `
663
+ <ejs-grid #grid id="grid"
664
+ [dataSource]="data"
665
+ [columns]="columns"
666
+ [contextMenuItems]="contextMenuItems"
667
+ [pageSettings]="pageSettings"
668
+ [toolbar]="toolbarOptions"
669
+ [gridLines]="gridLines"
670
+ [frozenColumns]="frozenColumns"
671
+ [frozenRows]="frozenRows"
672
+ [selectionSettings]="selectionOptions"
673
+ [editSettings]="editSettings"
674
+ [allowPaging]="pagingEnabled"
675
+ [allowSorting]="sortingEnabled"
676
+ [allowFiltering]="filteringEnabled"
677
+ [allowGrouping]="groupingEnabled"
678
+ [allowReordering]="reorderingEnabled"
679
+ [allowResizing]="resizingEnabled"
680
+ [allowRowDragAndDrop]="rowDragAndDropEnabled"
681
+ [showColumnMenu]="showColumnMenu"
682
+ [showColumnChooser]="showColumnChooser"
683
+ [allowExcelExport]="exportExcelEnabled"
684
+ [allowPdfExport]="exportPdfEnabled"
685
+ (toolbarClick)="toolbarClick($event)"
686
+ (rowSelected)="handleRowSelected($event)"
687
+ (recordDoubleClick)="handleDoubleClick($event)"
688
+ (recordClick)="handleRecordClick($event)"
689
+ (actionComplete)="handleActionComplete($event)"
690
+ (contextMenuClick)="contextMenuClick($event)"
691
+ (rowDragStart)="rowDragStartClick($event)"
692
+ (rowDrop)="rowDropClick($event)"
693
+ (beforeBatchDelete)="handleBeforeBatchDelete($event)"
694
+ (batchDelete)="handleBatchDelete($event)"
695
+ >
696
+ </ejs-grid>
697
+ `,
698
+ providers: [
699
+ RowDDService
700
+ ],
701
+ encapsulation: ViewEncapsulation.None
702
+ }]
703
+ }], propDecorators: { showClass: [{
704
+ type: HostBinding,
705
+ args: ['class.co-grid']
706
+ }] } });
707
+
708
+ class CoGridModule {
709
+ }
710
+ CoGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
711
+ CoGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoGridModule, declarations: [CoGridComponent], imports: [CommonModule,
712
+ FormsModule,
713
+ GridModule], exports: [CoGridComponent] });
714
+ CoGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoGridModule, providers: [
715
+ PageService,
716
+ SortService,
717
+ FilterService,
718
+ GroupService,
719
+ ReorderService,
720
+ ResizeService,
721
+ ExcelExportService,
722
+ PdfExportService,
723
+ EditService,
724
+ ToolbarService,
725
+ ColumnChooserService,
726
+ ColumnMenuService,
727
+ ContextMenuService
728
+ ], imports: [[
729
+ CommonModule,
730
+ FormsModule,
731
+ GridModule
732
+ ]] });
733
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoGridModule, decorators: [{
734
+ type: NgModule,
735
+ args: [{
736
+ imports: [
737
+ CommonModule,
738
+ FormsModule,
739
+ GridModule
740
+ ],
741
+ declarations: [CoGridComponent],
742
+ exports: [CoGridComponent],
743
+ providers: [
744
+ PageService,
745
+ SortService,
746
+ FilterService,
747
+ GroupService,
748
+ ReorderService,
749
+ ResizeService,
750
+ ExcelExportService,
751
+ PdfExportService,
752
+ EditService,
753
+ ToolbarService,
754
+ ColumnChooserService,
755
+ ColumnMenuService,
756
+ ContextMenuService
757
+ ]
758
+ }]
759
+ }] });
760
+
761
+ class CoPivotComponent {
762
+ constructor() {
763
+ this.showGroupingBar = false;
764
+ this.allowGrouping = false;
765
+ this.enablePersistence = false;
766
+ this.showFieldList = false;
767
+ this.showToolbar = false;
768
+ this.allowExcelExport = false;
769
+ this.allowPdfExport = false;
770
+ this.allowConditionalFormatting = true;
771
+ this.allowNumberFormatting = true;
772
+ this.allowCalculatedField = false;
773
+ this.height = "100%";
774
+ this.saveReportClick = new EventEmitter();
775
+ this.loadReportClick = new EventEmitter();
776
+ this.fetchReportClick = new EventEmitter();
777
+ this.renameReportClick = new EventEmitter();
778
+ this.removeReportClick = new EventEmitter();
779
+ this.newReportClick = new EventEmitter();
780
+ this.beforeToolbarRenderClick = new EventEmitter();
781
+ this.enginePopulated = new EventEmitter();
782
+ }
783
+ showClass() {
784
+ return true;
785
+ }
786
+ ngOnInit() {
787
+ }
788
+ ngAfterViewInit() {
789
+ setTimeout(() => {
790
+ this.pivot.refresh();
791
+ this.pivot.refreshData();
792
+ this.pivot.layoutRefresh();
793
+ }, 3000);
794
+ }
795
+ saveReport(args) {
796
+ if (args) {
797
+ this.saveReportClick.next(args);
798
+ }
799
+ }
800
+ loadReport(args) {
801
+ if (args) {
802
+ this.loadReportClick.next(args);
803
+ }
804
+ }
805
+ fetchReport(args) {
806
+ if (args) {
807
+ this.fetchReportClick.next(args);
808
+ }
809
+ }
810
+ renameReport(args) {
811
+ if (args) {
812
+ this.renameReportClick.next(args);
813
+ }
814
+ }
815
+ removeReport(args) {
816
+ if (args) {
817
+ this.removeReportClick.next(args);
818
+ }
819
+ }
820
+ newReport() {
821
+ this.newReportClick.next();
822
+ }
823
+ beforeToolbarRender(args) {
824
+ if (args) {
825
+ this.beforeToolbarRenderClick.next(args);
826
+ }
827
+ }
828
+ hanldeEnginePopulated(args) {
829
+ if (args) {
830
+ this.enginePopulated.next(args);
831
+ }
832
+ }
833
+ }
834
+ CoPivotComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoPivotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
835
+ CoPivotComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CoPivotComponent, selector: "co-pivot", inputs: { dataSourceSettings: "dataSourceSettings", gridSettings: "gridSettings", toolbarOptions: "toolbarOptions", showGroupingBar: "showGroupingBar", allowGrouping: "allowGrouping", enablePersistence: "enablePersistence", showFieldList: "showFieldList", showToolbar: "showToolbar", allowExcelExport: "allowExcelExport", allowPdfExport: "allowPdfExport", allowConditionalFormatting: "allowConditionalFormatting", allowNumberFormatting: "allowNumberFormatting", allowCalculatedField: "allowCalculatedField", height: "height" }, outputs: { saveReportClick: "saveReportClick", loadReportClick: "loadReportClick", fetchReportClick: "fetchReportClick", renameReportClick: "renameReportClick", removeReportClick: "removeReportClick", newReportClick: "newReportClick", beforeToolbarRenderClick: "beforeToolbarRenderClick", enginePopulated: "enginePopulated" }, host: { properties: { "class.co-pivot": "this.showClass" } }, providers: [GroupingBarService, GroupingService, ToolbarService$1, ConditionalFormattingService, FieldListService, NumberFormattingService], viewQueries: [{ propertyName: "pivot", first: true, predicate: ["pivot"], descendants: true }], ngImport: i0, template: `
836
+ <ejs-pivotview
837
+ #pivot
838
+ id="Pivot"
839
+ [dataSourceSettings]="dataSourceSettings"
840
+ [gridSettings]="gridSettings"
841
+ [showGroupingBar]="showGroupingBar"
842
+ [allowGrouping]="allowGrouping"
843
+ [enablePersistence]="enablePersistence"
844
+ [showFieldList]="showFieldList"
845
+ [showToolbar]="showToolbar"
846
+ [toolbar]="toolbarOptions"
847
+ [allowExcelExport]="allowExcelExport"
848
+ [allowConditionalFormatting]="allowConditionalFormatting"
849
+ [allowNumberFormatting]="allowNumberFormatting"
850
+ [allowPdfExport]="allowPdfExport"
851
+ [allowCalculatedField]="allowCalculatedField"
852
+ [height]="height"
853
+ (saveReport)="saveReport($event)"
854
+ (loadReport)="loadReport($event)"
855
+ (fetchReport)="fetchReport($event)"
856
+ (renameReport)="renameReport($event)"
857
+ (removeReport)="removeReport($event)"
858
+ (newReport)="newReport()"
859
+ (toolbarRender)="beforeToolbarRender($event)"
860
+ (enginePopulated)="hanldeEnginePopulated($event)"
861
+ >
862
+ </ejs-pivotview>
863
+ `, isInline: true, components: [{ type: i1$3.PivotViewComponent, selector: "ejs-pivotview", inputs: ["aggregateTypes", "allowCalculatedField", "allowConditionalFormatting", "allowDataCompression", "allowDeferLayoutUpdate", "allowDrillThrough", "allowExcelExport", "allowGrouping", "allowNumberFormatting", "allowPdfExport", "cellTemplate", "chartSettings", "chartTypes", "cssClass", "dataSourceSettings", "displayOption", "editSettings", "enableFieldSearching", "enableHtmlSanitizer", "enablePaging", "enablePersistence", "enableRtl", "enableValueSorting", "enableVirtualization", "exportAllPages", "gridSettings", "groupingBarSettings", "height", "hyperlinkSettings", "loadOnDemandInMemberEditor", "locale", "maxNodeLimitInMemberEditor", "maxRowsInDrillThrough", "pageSettings", "pagerSettings", "pivotValues", "showFieldList", "showGroupingBar", "showToolbar", "showTooltip", "showValuesButton", "spinnerTemplate", "toolbar", "toolbarTemplate", "tooltipTemplate", "width"], outputs: ["actionBegin", "actionComplete", "actionFailure", "aggregateCellInfo", "aggregateMenuOpen", "beforeExport", "beforeServiceInvoke", "beginDrillThrough", "calculatedFieldCreate", "cellClick", "cellSelected", "cellSelecting", "chartSeriesCreated", "conditionalFormatting", "created", "dataBound", "destroyed", "drill", "drillThrough", "editCompleted", "enginePopulated", "enginePopulating", "exportComplete", "fetchReport", "fieldDragStart", "fieldDrop", "fieldListRefreshed", "fieldRemove", "hyperlinkCellClick", "load", "loadReport", "memberEditorOpen", "memberFiltering", "newReport", "numberFormatting", "onFieldDropped", "onHeadersSort", "onPdfCellRender", "removeReport", "renameReport", "saveReport", "toolbarClick", "toolbarRender"] }], encapsulation: i0.ViewEncapsulation.None });
864
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoPivotComponent, decorators: [{
865
+ type: Component,
866
+ args: [{
867
+ selector: 'co-pivot',
868
+ template: `
869
+ <ejs-pivotview
870
+ #pivot
871
+ id="Pivot"
872
+ [dataSourceSettings]="dataSourceSettings"
873
+ [gridSettings]="gridSettings"
874
+ [showGroupingBar]="showGroupingBar"
875
+ [allowGrouping]="allowGrouping"
876
+ [enablePersistence]="enablePersistence"
877
+ [showFieldList]="showFieldList"
878
+ [showToolbar]="showToolbar"
879
+ [toolbar]="toolbarOptions"
880
+ [allowExcelExport]="allowExcelExport"
881
+ [allowConditionalFormatting]="allowConditionalFormatting"
882
+ [allowNumberFormatting]="allowNumberFormatting"
883
+ [allowPdfExport]="allowPdfExport"
884
+ [allowCalculatedField]="allowCalculatedField"
885
+ [height]="height"
886
+ (saveReport)="saveReport($event)"
887
+ (loadReport)="loadReport($event)"
888
+ (fetchReport)="fetchReport($event)"
889
+ (renameReport)="renameReport($event)"
890
+ (removeReport)="removeReport($event)"
891
+ (newReport)="newReport()"
892
+ (toolbarRender)="beforeToolbarRender($event)"
893
+ (enginePopulated)="hanldeEnginePopulated($event)"
894
+ >
895
+ </ejs-pivotview>
896
+ `,
897
+ providers: [GroupingBarService, GroupingService, ToolbarService$1, ConditionalFormattingService, FieldListService, NumberFormattingService],
898
+ encapsulation: ViewEncapsulation.None
899
+ }]
900
+ }], ctorParameters: function () { return []; }, propDecorators: { pivot: [{
901
+ type: ViewChild,
902
+ args: ['pivot', { static: false }]
903
+ }], dataSourceSettings: [{
904
+ type: Input
905
+ }], gridSettings: [{
906
+ type: Input
907
+ }], toolbarOptions: [{
908
+ type: Input
909
+ }], showGroupingBar: [{
910
+ type: Input
911
+ }], allowGrouping: [{
912
+ type: Input
913
+ }], enablePersistence: [{
914
+ type: Input
915
+ }], showFieldList: [{
916
+ type: Input
917
+ }], showToolbar: [{
918
+ type: Input
919
+ }], allowExcelExport: [{
920
+ type: Input
921
+ }], allowPdfExport: [{
922
+ type: Input
923
+ }], allowConditionalFormatting: [{
924
+ type: Input
925
+ }], allowNumberFormatting: [{
926
+ type: Input
927
+ }], allowCalculatedField: [{
928
+ type: Input
929
+ }], height: [{
930
+ type: Input
931
+ }], saveReportClick: [{
932
+ type: Output
933
+ }], loadReportClick: [{
934
+ type: Output
935
+ }], fetchReportClick: [{
936
+ type: Output
937
+ }], renameReportClick: [{
938
+ type: Output
939
+ }], removeReportClick: [{
940
+ type: Output
941
+ }], newReportClick: [{
942
+ type: Output
943
+ }], beforeToolbarRenderClick: [{
944
+ type: Output
945
+ }], enginePopulated: [{
946
+ type: Output
947
+ }], showClass: [{
948
+ type: HostBinding,
949
+ args: ["class.co-pivot"]
950
+ }] } });
951
+
952
+ class CoPivotModule {
953
+ }
954
+ CoPivotModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoPivotModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
955
+ CoPivotModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoPivotModule, declarations: [CoPivotComponent], imports: [CommonModule,
956
+ PivotViewModule], exports: [CoPivotComponent] });
957
+ CoPivotModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoPivotModule, imports: [[
958
+ CommonModule,
959
+ PivotViewModule
960
+ ]] });
961
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CoPivotModule, decorators: [{
962
+ type: NgModule,
963
+ args: [{
964
+ imports: [
965
+ CommonModule,
966
+ PivotViewModule
967
+ ],
968
+ declarations: [
969
+ CoPivotComponent
970
+ ],
971
+ exports: [
972
+ CoPivotComponent
973
+ ]
974
+ }]
975
+ }] });
976
+
977
+ // The localization service, providing peers with text translation functionality.
978
+ class DictionaryService {
979
+ constructor() {
980
+ // Some dictionary values have one or more '|~' texts in them, meant to be replaced with client-side given texts.
981
+ this._placeholder = "|~";
982
+ }
983
+ /**
984
+ * Returns the localized text for the given dictionary key.
985
+ * @param {string} key
986
+ * @param {boolean} [upperCaseFirst = true] False for first letter lowercase, true for first letter uppercase for returned dict val
987
+ * @param {string[]} replacementTexts Rest params for replacement of '|~' in returned dict value
988
+ * @returns {string} The translated text for given dictionary key
989
+ */
990
+ get(key, upperCaseFirst = true, ...replacementTexts) {
991
+ let text = key;
992
+ if (this.translation && this.translation.hasOwnProperty(key)) {
993
+ text = this.translation[key].toLowerCase();
994
+ if (upperCaseFirst) {
995
+ text = text.charAt(0).toUpperCase() + text.slice(1);
996
+ }
997
+ }
998
+ return text;
999
+ }
1000
+ }
1001
+ DictionaryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DictionaryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1002
+ DictionaryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DictionaryService });
1003
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DictionaryService, decorators: [{
1004
+ type: Injectable
1005
+ }] });
1006
+
1007
+ class ExtendedComponentsTranslationService {
1008
+ constructor(_dictionaryService) {
1009
+ this._dictionaryService = _dictionaryService;
1010
+ }
1011
+ setTranslation(translation) {
1012
+ this._dictionaryService.translation = translation;
1013
+ }
1014
+ }
1015
+ ExtendedComponentsTranslationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ExtendedComponentsTranslationService, deps: [{ token: DictionaryService }], target: i0.ɵɵFactoryTarget.Injectable });
1016
+ ExtendedComponentsTranslationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ExtendedComponentsTranslationService });
1017
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ExtendedComponentsTranslationService, decorators: [{
1018
+ type: Injectable
1019
+ }], ctorParameters: function () { return [{ type: DictionaryService }]; } });
1020
+
1021
+ class LocalizePipe {
1022
+ constructor(_dictionaryService) {
1023
+ this._dictionaryService = _dictionaryService;
1024
+ }
1025
+ transform(value, upperCaseFirst = true, replace = []) {
1026
+ if (!value) {
1027
+ return "";
1028
+ }
1029
+ replace = (replace !== undefined && replace !== null) ? replace : [];
1030
+ if (!Array.isArray(replace)) {
1031
+ replace = [replace];
1032
+ }
1033
+ return this._dictionaryService.get(value, upperCaseFirst, ...replace);
1034
+ }
1035
+ }
1036
+ LocalizePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LocalizePipe, deps: [{ token: DictionaryService }], target: i0.ɵɵFactoryTarget.Pipe });
1037
+ LocalizePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LocalizePipe, name: "localize" });
1038
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LocalizePipe, decorators: [{
1039
+ type: Pipe,
1040
+ args: [{
1041
+ name: "localize"
1042
+ }]
1043
+ }], ctorParameters: function () { return [{ type: DictionaryService }]; } });
1044
+
1045
+ class ExtendedComponentsTranslationModule {
1046
+ static forRoot() {
1047
+ return {
1048
+ ngModule: ExtendedComponentsTranslationModule,
1049
+ providers: [
1050
+ ExtendedComponentsTranslationService
1051
+ ]
1052
+ };
1053
+ }
1054
+ }
1055
+ ExtendedComponentsTranslationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ExtendedComponentsTranslationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1056
+ ExtendedComponentsTranslationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ExtendedComponentsTranslationModule, declarations: [LocalizePipe] });
1057
+ ExtendedComponentsTranslationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ExtendedComponentsTranslationModule, providers: [
1058
+ ExtendedComponentsTranslationService,
1059
+ DictionaryService
1060
+ ] });
1061
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ExtendedComponentsTranslationModule, decorators: [{
1062
+ type: NgModule,
1063
+ args: [{
1064
+ declarations: [
1065
+ LocalizePipe
1066
+ ],
1067
+ providers: [
1068
+ ExtendedComponentsTranslationService,
1069
+ DictionaryService
1070
+ ],
1071
+ exports: [
1072
+ // LocalizePipe
1073
+ ]
1074
+ }]
1075
+ }] });
1076
+
1077
+ /*
1078
+ * Public API Surface of extendedcomponents
1079
+ */
1080
+
1081
+ /**
1082
+ * Generated bundle index. Do not edit.
1083
+ */
1084
+
1085
+ export { CoGridComponent, CoGridModule, CoKanbanComponent, CoKanbanModule, CoPivotComponent, CoPivotModule, CoScheduleComponent, CoScheduleModule, ExtendedComponentsTranslationModule, ExtendedComponentsTranslationService };
1086
+ //# sourceMappingURL=colijnit-extendedcomponents.js.map