@progress/kendo-angular-grid 21.4.1 → 22.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/column-menu/column-menu-item-base.d.ts +1 -1
- package/columns/column-base.d.ts +1 -1
- package/common/toolbar-tool-base.directive.d.ts +1 -1
- package/editing/toolbar-editing-tool-base.directive.d.ts +1 -1
- package/editing-directives/editing-directive-base.d.ts +1 -1
- package/editing-directives/row-editing-directive-base.d.ts +1 -1
- package/fesm2022/progress-kendo-angular-grid.mjs +666 -666
- package/filtering/base-filter-cell.component.d.ts +1 -1
- package/filtering/boolean-filter.component.d.ts +1 -1
- package/filtering/date-filter.component.d.ts +1 -1
- package/filtering/filter-host.directive.d.ts +1 -1
- package/filtering/filter-input-wrapper.component.d.ts +1 -1
- package/filtering/numeric-filter.component.d.ts +1 -1
- package/filtering/operators/filter-operator.base.d.ts +1 -1
- package/filtering/string-filter.component.d.ts +1 -1
- package/localization/messages.d.ts +1 -1
- package/package.json +28 -36
- package/schematics/ngAdd/index.js +7 -7
- package/selection/selection-default.d.ts +1 -1
- package/esm2022/adaptiveness/adaptive-mode.mjs +0 -5
- package/esm2022/adaptiveness/adaptive-renderer.component.mjs +0 -1270
- package/esm2022/aggregates/aggregate-types.mjs +0 -5
- package/esm2022/aggregates/selection-aggregate.service.mjs +0 -200
- package/esm2022/aggregates/status-bar-template.directive.mjs +0 -30
- package/esm2022/aggregates/status-bar.component.mjs +0 -70
- package/esm2022/column-menu/column-chooser-content.component.mjs +0 -318
- package/esm2022/column-menu/column-chooser.component.mjs +0 -230
- package/esm2022/column-menu/column-list-kb-nav.service.mjs +0 -40
- package/esm2022/column-menu/column-list.component.mjs +0 -478
- package/esm2022/column-menu/column-locked-change-event.mjs +0 -19
- package/esm2022/column-menu/column-menu-autosize-all.component.mjs +0 -89
- package/esm2022/column-menu/column-menu-autosize.component.mjs +0 -97
- package/esm2022/column-menu/column-menu-chooser.component.mjs +0 -151
- package/esm2022/column-menu/column-menu-container.component.mjs +0 -67
- package/esm2022/column-menu/column-menu-expandable-item.interface.mjs +0 -5
- package/esm2022/column-menu/column-menu-filter.component.mjs +0 -152
- package/esm2022/column-menu/column-menu-item-base.mjs +0 -44
- package/esm2022/column-menu/column-menu-item-content-template.directive.mjs +0 -45
- package/esm2022/column-menu/column-menu-item.component.mjs +0 -514
- package/esm2022/column-menu/column-menu-item.directive.mjs +0 -164
- package/esm2022/column-menu/column-menu-lock.component.mjs +0 -118
- package/esm2022/column-menu/column-menu-position.component.mjs +0 -196
- package/esm2022/column-menu/column-menu-settings.interface.mjs +0 -5
- package/esm2022/column-menu/column-menu-sort.component.mjs +0 -119
- package/esm2022/column-menu/column-menu-stick.component.mjs +0 -120
- package/esm2022/column-menu/column-menu-template.directive.mjs +0 -47
- package/esm2022/column-menu/column-menu.component.mjs +0 -839
- package/esm2022/column-menu/column-menu.service.mjs +0 -71
- package/esm2022/column-menu/column-sticky-change-event.mjs +0 -19
- package/esm2022/column-menu/column-visibility-change-event.mjs +0 -19
- package/esm2022/column-menu/utils.mjs +0 -52
- package/esm2022/column-resizing/column-handle.directive.mjs +0 -499
- package/esm2022/column-resizing/column-resize.interface.mjs +0 -5
- package/esm2022/column-resizing/column-resizing.service.mjs +0 -214
- package/esm2022/column-resizing/table.directive.mjs +0 -141
- package/esm2022/columns/cell-rowspan.mjs +0 -5
- package/esm2022/columns/checkbox-column.component.mjs +0 -106
- package/esm2022/columns/column-base.mjs +0 -432
- package/esm2022/columns/column-common.mjs +0 -73
- package/esm2022/columns/column-group.component.mjs +0 -135
- package/esm2022/columns/column-list.mjs +0 -94
- package/esm2022/columns/column.component.mjs +0 -198
- package/esm2022/columns/columns-container.mjs +0 -101
- package/esm2022/columns/command-column.component.mjs +0 -80
- package/esm2022/columns/reorder-column.component.mjs +0 -114
- package/esm2022/columns/sort-settings.mjs +0 -18
- package/esm2022/columns/span-column.component.mjs +0 -195
- package/esm2022/common/adaptiveness.service.mjs +0 -72
- package/esm2022/common/cell-click-event-args.interface.mjs +0 -5
- package/esm2022/common/clipboard-types.mjs +0 -5
- package/esm2022/common/clipboard.directive.mjs +0 -197
- package/esm2022/common/clipboard.service.mjs +0 -221
- package/esm2022/common/column-info.service.mjs +0 -92
- package/esm2022/common/create-form-group.mjs +0 -5
- package/esm2022/common/data-layout-mode.mjs +0 -5
- package/esm2022/common/default-track-by.mjs +0 -13
- package/esm2022/common/dom-events.service.mjs +0 -27
- package/esm2022/common/error-messages.mjs +0 -64
- package/esm2022/common/event-emitter.mjs +0 -39
- package/esm2022/common/fetch-data-callback.mjs +0 -5
- package/esm2022/common/field-datatype.mjs +0 -5
- package/esm2022/common/filter-descriptor-differ.mjs +0 -69
- package/esm2022/common/filter-operator.interface.mjs +0 -5
- package/esm2022/common/grid-col-size.mjs +0 -5
- package/esm2022/common/id.service.mjs +0 -59
- package/esm2022/common/pager-settings.mjs +0 -20
- package/esm2022/common/preventable-event.mjs +0 -24
- package/esm2022/common/provider.service.mjs +0 -42
- package/esm2022/common/remove-confirmation.mjs +0 -5
- package/esm2022/common/resizable-settings.mjs +0 -9
- package/esm2022/common/single-popup.service.mjs +0 -158
- package/esm2022/common/size-options.mjs +0 -5
- package/esm2022/common/sort.service.mjs +0 -14
- package/esm2022/common/toolbar-tool-base.directive.mjs +0 -85
- package/esm2022/constants.mjs +0 -16
- package/esm2022/data/change-event-args.interface.mjs +0 -5
- package/esm2022/data/change-notification.service.mjs +0 -30
- package/esm2022/data/data-item.interface.mjs +0 -5
- package/esm2022/data/data-mapping.service.mjs +0 -136
- package/esm2022/data/data.collection.mjs +0 -87
- package/esm2022/data/data.iterators.mjs +0 -221
- package/esm2022/data/grid-item.interface.mjs +0 -5
- package/esm2022/data/group-footer-item.interface.mjs +0 -5
- package/esm2022/data/group-item.interface.mjs +0 -5
- package/esm2022/databinding.directive.mjs +0 -233
- package/esm2022/directives.mjs +0 -504
- package/esm2022/dragdrop/column-reorder-config.mjs +0 -5
- package/esm2022/dragdrop/column-reorder-event.mjs +0 -31
- package/esm2022/dragdrop/column-reorder.service.mjs +0 -20
- package/esm2022/dragdrop/common.mjs +0 -69
- package/esm2022/dragdrop/context-types.mjs +0 -5
- package/esm2022/dragdrop/drag-and-drop.service.mjs +0 -65
- package/esm2022/dragdrop/drag-hint.service.mjs +0 -137
- package/esm2022/dragdrop/draggable-column.directive.mjs +0 -137
- package/esm2022/dragdrop/drop-cue.service.mjs +0 -46
- package/esm2022/dragdrop/drop-target.directive.mjs +0 -71
- package/esm2022/editing/add-command-tool.directive.mjs +0 -59
- package/esm2022/editing/add-command.directive.mjs +0 -93
- package/esm2022/editing/add-event-args.interface.mjs +0 -5
- package/esm2022/editing/cancel-command-tool.directive.mjs +0 -64
- package/esm2022/editing/cancel-command.directive.mjs +0 -127
- package/esm2022/editing/cancel-event-args.interface.mjs +0 -5
- package/esm2022/editing/cell-close-event.mjs +0 -38
- package/esm2022/editing/edit-command-tool.directive.mjs +0 -60
- package/esm2022/editing/edit-command.directive.mjs +0 -124
- package/esm2022/editing/edit-event-args.interface.mjs +0 -5
- package/esm2022/editing/edit-row-options.interface.mjs +0 -5
- package/esm2022/editing/edit-template.directive.mjs +0 -43
- package/esm2022/editing/edit.service.mjs +0 -182
- package/esm2022/editing/form/dialog-form.component.mjs +0 -102
- package/esm2022/editing/form/form-formfield.component.mjs +0 -188
- package/esm2022/editing/form/form.component.mjs +0 -169
- package/esm2022/editing/form/index.mjs +0 -8
- package/esm2022/editing/form/models.mjs +0 -5
- package/esm2022/editing/local-data-changes.service.mjs +0 -18
- package/esm2022/editing/remove-command-tool.directive.mjs +0 -61
- package/esm2022/editing/remove-command.directive.mjs +0 -123
- package/esm2022/editing/remove-event-args.interface.mjs +0 -5
- package/esm2022/editing/save-command-tool.directive.mjs +0 -65
- package/esm2022/editing/save-command.directive.mjs +0 -126
- package/esm2022/editing/save-event-args.interface.mjs +0 -5
- package/esm2022/editing/toolbar-editing-tool-base.directive.mjs +0 -99
- package/esm2022/editing-directives/create-form-group-args.interface.mjs +0 -5
- package/esm2022/editing-directives/edit-service.interface.mjs +0 -5
- package/esm2022/editing-directives/editing-directive-base.mjs +0 -167
- package/esm2022/editing-directives/external-editing.directive.mjs +0 -151
- package/esm2022/editing-directives/in-cell-editing.directive.mjs +0 -97
- package/esm2022/editing-directives/local-edit.service.mjs +0 -64
- package/esm2022/editing-directives/local-row-edit.service.mjs +0 -13
- package/esm2022/editing-directives/reactive-editing.directive.mjs +0 -60
- package/esm2022/editing-directives/row-editing-directive-base.mjs +0 -53
- package/esm2022/editing-directives/template-editing.directive.mjs +0 -72
- package/esm2022/editing-directives/utils.mjs +0 -18
- package/esm2022/excel/excel-command-tool.directive.mjs +0 -58
- package/esm2022/excel/excel-command.directive.mjs +0 -98
- package/esm2022/excel/excel-export-event.mjs +0 -18
- package/esm2022/excel/excel.component.mjs +0 -223
- package/esm2022/excel/excel.module.mjs +0 -45
- package/esm2022/excel/excel.service.mjs +0 -29
- package/esm2022/filtering/base-filter-cell.component.mjs +0 -174
- package/esm2022/filtering/boolean-filter.component.mjs +0 -83
- package/esm2022/filtering/cell/autocomplete-filter-cell.component.mjs +0 -114
- package/esm2022/filtering/cell/boolean-filter-cell.component.mjs +0 -113
- package/esm2022/filtering/cell/date-filter-cell.component.mjs +0 -141
- package/esm2022/filtering/cell/filter-cell-component.factory.mjs +0 -19
- package/esm2022/filtering/cell/filter-cell-host.directive.mjs +0 -33
- package/esm2022/filtering/cell/filter-cell-operators.component.mjs +0 -242
- package/esm2022/filtering/cell/filter-cell-template.directive.mjs +0 -46
- package/esm2022/filtering/cell/filter-cell-wrapper.component.mjs +0 -74
- package/esm2022/filtering/cell/filter-cell.component.mjs +0 -91
- package/esm2022/filtering/cell/numeric-filter-cell.component.mjs +0 -155
- package/esm2022/filtering/cell/string-filter-cell.component.mjs +0 -127
- package/esm2022/filtering/date-filter.component.mjs +0 -172
- package/esm2022/filtering/filter-component.interface.mjs +0 -5
- package/esm2022/filtering/filter-host.directive.mjs +0 -58
- package/esm2022/filtering/filter-input-wrapper.component.mjs +0 -119
- package/esm2022/filtering/filter-input.directive.mjs +0 -123
- package/esm2022/filtering/filter-row.component.mjs +0 -131
- package/esm2022/filtering/filter.service.mjs +0 -44
- package/esm2022/filtering/filterable.mjs +0 -16
- package/esm2022/filtering/menu/boolean-filter-menu.component.mjs +0 -167
- package/esm2022/filtering/menu/date-filter-menu-input.component.mjs +0 -179
- package/esm2022/filtering/menu/date-filter-menu.component.mjs +0 -212
- package/esm2022/filtering/menu/filter-menu-component.factory.mjs +0 -19
- package/esm2022/filtering/menu/filter-menu-container.component.mjs +0 -418
- package/esm2022/filtering/menu/filter-menu-dropdownlist.directive.mjs +0 -44
- package/esm2022/filtering/menu/filter-menu-host.directive.mjs +0 -46
- package/esm2022/filtering/menu/filter-menu-input-wrapper.component.mjs +0 -158
- package/esm2022/filtering/menu/filter-menu-template.directive.mjs +0 -48
- package/esm2022/filtering/menu/filter-menu.component.mjs +0 -221
- package/esm2022/filtering/menu/filter-radio-button.directive.mjs +0 -34
- package/esm2022/filtering/menu/menu-tabbing.service.mjs +0 -22
- package/esm2022/filtering/menu/numeric-filter-menu-input.component.mjs +0 -184
- package/esm2022/filtering/menu/numeric-filter-menu.component.mjs +0 -230
- package/esm2022/filtering/menu/string-filter-menu-input.component.mjs +0 -107
- package/esm2022/filtering/menu/string-filter-menu.component.mjs +0 -198
- package/esm2022/filtering/multicheckbox-filter.component.mjs +0 -324
- package/esm2022/filtering/numeric-filter.component.mjs +0 -145
- package/esm2022/filtering/operators/after-eq-filter-operator.component.mjs +0 -72
- package/esm2022/filtering/operators/after-filter-operator.component.mjs +0 -72
- package/esm2022/filtering/operators/before-eq-filter-operator.component.mjs +0 -72
- package/esm2022/filtering/operators/before-filter-operator.component.mjs +0 -72
- package/esm2022/filtering/operators/contains-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/operators/ends-with-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/operators/eq-filter-operator.component.mjs +0 -111
- package/esm2022/filtering/operators/filter-operator.base.mjs +0 -101
- package/esm2022/filtering/operators/gt-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/operators/gte-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/operators/is-empty-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/operators/is-not-empty-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/operators/is-not-null-filter-operator.component.mjs +0 -110
- package/esm2022/filtering/operators/isnull-filter-operator.component.mjs +0 -110
- package/esm2022/filtering/operators/lt-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/operators/lte-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/operators/neq-filter-operator.component.mjs +0 -110
- package/esm2022/filtering/operators/not-contains-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/operators/starts-with-filter-operator.component.mjs +0 -63
- package/esm2022/filtering/string-filter.component.mjs +0 -90
- package/esm2022/grid.component.mjs +0 -4598
- package/esm2022/grid.module.mjs +0 -241
- package/esm2022/grouping/group-footer-template.directive.mjs +0 -44
- package/esm2022/grouping/group-header-column-template.directive.mjs +0 -45
- package/esm2022/grouping/group-header-template.directive.mjs +0 -46
- package/esm2022/grouping/group-header.component.mjs +0 -351
- package/esm2022/grouping/group-info.service.mjs +0 -43
- package/esm2022/grouping/group-key.interface.mjs +0 -5
- package/esm2022/grouping/group-panel.component.mjs +0 -487
- package/esm2022/grouping/group-rows-args.interface.mjs +0 -5
- package/esm2022/grouping/group-settings.mjs +0 -5
- package/esm2022/grouping/groups.service.mjs +0 -69
- package/esm2022/grouping/utils.mjs +0 -14
- package/esm2022/highlight/highlight-item.mjs +0 -5
- package/esm2022/highlight/highlight.directive.mjs +0 -132
- package/esm2022/index.mjs +0 -221
- package/esm2022/layout/browser-support.service.mjs +0 -94
- package/esm2022/layout/resizable.directive.mjs +0 -83
- package/esm2022/layout/resize.service.mjs +0 -29
- package/esm2022/layout/responsive.service.mjs +0 -34
- package/esm2022/layout/row-sync.mjs +0 -47
- package/esm2022/layout/sizing-options.service.mjs +0 -18
- package/esm2022/localization/custom-messages.component.mjs +0 -54
- package/esm2022/localization/localized-messages.directive.mjs +0 -39
- package/esm2022/localization/messages.mjs +0 -895
- package/esm2022/navigation/default-focusable-element.mjs +0 -50
- package/esm2022/navigation/focus-group.mjs +0 -73
- package/esm2022/navigation/focus-root.mjs +0 -50
- package/esm2022/navigation/focusable-element.interface.mjs +0 -5
- package/esm2022/navigation/focusable.directive.mjs +0 -150
- package/esm2022/navigation/grid-focusable-element.mjs +0 -28
- package/esm2022/navigation/item-map.mjs +0 -59
- package/esm2022/navigation/logical-cell.directive.mjs +0 -224
- package/esm2022/navigation/logical-cell.interface.mjs +0 -5
- package/esm2022/navigation/logical-row.directive.mjs +0 -131
- package/esm2022/navigation/logical-row.interface.mjs +0 -5
- package/esm2022/navigation/navigable-settings.mjs +0 -5
- package/esm2022/navigation/navigation-cell.interface.mjs +0 -5
- package/esm2022/navigation/navigation-change.interface.mjs +0 -5
- package/esm2022/navigation/navigation-cursor.mjs +0 -224
- package/esm2022/navigation/navigation-metadata.mjs +0 -35
- package/esm2022/navigation/navigation-mode.mjs +0 -5
- package/esm2022/navigation/navigation-model.mjs +0 -138
- package/esm2022/navigation/navigation-row.interface.mjs +0 -5
- package/esm2022/navigation/navigation.service.mjs +0 -998
- package/esm2022/navigation/toolbar-tool-name.mjs +0 -18
- package/esm2022/package-metadata.mjs +0 -16
- package/esm2022/pdf/export-element.mjs +0 -135
- package/esm2022/pdf/grid-query.mjs +0 -45
- package/esm2022/pdf/pdf-command-tool.directive.mjs +0 -60
- package/esm2022/pdf/pdf-command.directive.mjs +0 -98
- package/esm2022/pdf/pdf-export-event.mjs +0 -16
- package/esm2022/pdf/pdf-margin.component.mjs +0 -38
- package/esm2022/pdf/pdf-margin.interface.mjs +0 -5
- package/esm2022/pdf/pdf-template.directive.mjs +0 -43
- package/esm2022/pdf/pdf.component.mjs +0 -331
- package/esm2022/pdf/pdf.module.mjs +0 -47
- package/esm2022/pdf/pdf.service.mjs +0 -42
- package/esm2022/progress-kendo-angular-grid.mjs +0 -8
- package/esm2022/rendering/cell-loading.template.directive.mjs +0 -39
- package/esm2022/rendering/cell-template.directive.mjs +0 -44
- package/esm2022/rendering/cell.component.mjs +0 -717
- package/esm2022/rendering/common/cell-context.mjs +0 -13
- package/esm2022/rendering/common/col-group.component.mjs +0 -98
- package/esm2022/rendering/common/dom-queries.mjs +0 -162
- package/esm2022/rendering/common/field-accessor.pipe.mjs +0 -48
- package/esm2022/rendering/common/format.pipe.mjs +0 -37
- package/esm2022/rendering/common/loading.component.mjs +0 -60
- package/esm2022/rendering/common/row-args.mjs +0 -5
- package/esm2022/rendering/common/row-class.mjs +0 -5
- package/esm2022/rendering/common/spacer.component.mjs +0 -62
- package/esm2022/rendering/constants.mjs +0 -20
- package/esm2022/rendering/details/detail-collapse-event.mjs +0 -27
- package/esm2022/rendering/details/detail-expand-event.mjs +0 -27
- package/esm2022/rendering/details/detail-template.directive.mjs +0 -61
- package/esm2022/rendering/details/details.service.mjs +0 -56
- package/esm2022/rendering/details-expand.directive.mjs +0 -136
- package/esm2022/rendering/footer/footer-template.directive.mjs +0 -48
- package/esm2022/rendering/footer/footer.component.mjs +0 -266
- package/esm2022/rendering/grid-table.directive.mjs +0 -52
- package/esm2022/rendering/groups-expand.directive.mjs +0 -149
- package/esm2022/rendering/header/header-template.directive.mjs +0 -45
- package/esm2022/rendering/header/header.component.mjs +0 -1055
- package/esm2022/rendering/list.component.mjs +0 -1176
- package/esm2022/rendering/loading-template.directive.mjs +0 -38
- package/esm2022/rendering/no-records-template.directive.mjs +0 -38
- package/esm2022/rendering/rowspan.service.mjs +0 -24
- package/esm2022/rendering/table-body.component.mjs +0 -1250
- package/esm2022/rendering/toolbar/toolbar-focusable.directive.mjs +0 -83
- package/esm2022/rendering/toolbar/toolbar-navigation.service.mjs +0 -58
- package/esm2022/rendering/toolbar/toolbar-position.mjs +0 -5
- package/esm2022/rendering/toolbar/toolbar-template.directive.mjs +0 -55
- package/esm2022/rendering/toolbar/toolbar.component.mjs +0 -159
- package/esm2022/rendering/toolbar/tools/ai-assistant/ai-assistant.component.mjs +0 -272
- package/esm2022/rendering/toolbar/tools/ai-assistant/ai-request-response.service.mjs +0 -624
- package/esm2022/rendering/toolbar/tools/ai-assistant/ai-tool.directive.mjs +0 -273
- package/esm2022/rendering/toolbar/tools/ai-assistant/models.mjs +0 -43
- package/esm2022/rendering/toolbar/tools/ai-assistant/utils.mjs +0 -92
- package/esm2022/rendering/toolbar/tools/column-chooser-tool.directive.mjs +0 -238
- package/esm2022/rendering/toolbar/tools/filter-command-tool.directive.mjs +0 -219
- package/esm2022/rendering/toolbar/tools/filter-tool-wrapper.component.mjs +0 -151
- package/esm2022/rendering/toolbar/tools/filter-toolbar-tool.component.mjs +0 -223
- package/esm2022/rendering/toolbar/tools/group-command-tool.directive.mjs +0 -208
- package/esm2022/rendering/toolbar/tools/group-toolbar-tool.component.mjs +0 -451
- package/esm2022/rendering/toolbar/tools/select-all-command-tool.directive.mjs +0 -93
- package/esm2022/rendering/toolbar/tools/sort-command-tool.directive.mjs +0 -222
- package/esm2022/rendering/toolbar/tools/sort-toolbar-tool.component.mjs +0 -245
- package/esm2022/row-reordering/drag-handle-template.directive.mjs +0 -44
- package/esm2022/row-reordering/drag-hint-template.directive.mjs +0 -42
- package/esm2022/row-reordering/row-reorder.service.mjs +0 -280
- package/esm2022/row-reordering/types.mjs +0 -5
- package/esm2022/row-reordering/utils.mjs +0 -88
- package/esm2022/scrolling/content-scroll-event.mjs +0 -5
- package/esm2022/scrolling/row-height.service.mjs +0 -55
- package/esm2022/scrolling/scroll-bottom-event.mjs +0 -5
- package/esm2022/scrolling/scroll-request.service.mjs +0 -24
- package/esm2022/scrolling/scroll-sync.service.mjs +0 -80
- package/esm2022/scrolling/scroller.service.mjs +0 -254
- package/esm2022/scrolling/scrollmode.mjs +0 -5
- package/esm2022/scrolling/suspend.service.mjs +0 -17
- package/esm2022/selection/cell-selection.service.mjs +0 -349
- package/esm2022/selection/marquee.directive.mjs +0 -188
- package/esm2022/selection/pair-set.mjs +0 -158
- package/esm2022/selection/selectall-checkbox.directive.mjs +0 -143
- package/esm2022/selection/selection-checkbox.directive.mjs +0 -132
- package/esm2022/selection/selection-default.mjs +0 -208
- package/esm2022/selection/selection.directive.mjs +0 -53
- package/esm2022/selection/selection.service.mjs +0 -466
- package/esm2022/selection/types.mjs +0 -5
- package/esm2022/state-management/grid-state.models.mjs +0 -26
- package/esm2022/state-management/redo-command-tool.mjs +0 -74
- package/esm2022/state-management/undo-command-tool.mjs +0 -74
- package/esm2022/state-management/undo-redo.directive.mjs +0 -249
- package/esm2022/state-management/undo-redo.service.mjs +0 -21
- package/esm2022/state-management/undo-redo.stack.mjs +0 -238
- package/esm2022/utils.mjs +0 -216
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
/**
|
|
6
|
-
* @hidden
|
|
7
|
-
*/
|
|
8
|
-
export class PreventableEvent {
|
|
9
|
-
prevented = false;
|
|
10
|
-
/**
|
|
11
|
-
* Prevents the default action for a specified event.
|
|
12
|
-
* In this way, the source component suppresses the built-in behavior that follows the event.
|
|
13
|
-
*/
|
|
14
|
-
preventDefault() {
|
|
15
|
-
this.prevented = true;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Returns whether the default action for a specified event was prevented.
|
|
19
|
-
* @returns `true` if the default action was prevented. Otherwise, returns `false`.
|
|
20
|
-
*/
|
|
21
|
-
isDefaultPrevented() {
|
|
22
|
-
return this.prevented;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Injectable, Renderer2 } from '@angular/core';
|
|
6
|
-
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
|
-
import { GridToolbarNavigationService } from '../rendering/toolbar/toolbar-navigation.service';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@progress/kendo-angular-l10n";
|
|
10
|
-
/**
|
|
11
|
-
* @hidden
|
|
12
|
-
*
|
|
13
|
-
* The Context service is used to provide common
|
|
14
|
-
* services and DI tokens for a Grid instance.
|
|
15
|
-
*
|
|
16
|
-
* This keeps the constructor parameters stable
|
|
17
|
-
* and a avoids dependency cycles between components.
|
|
18
|
-
*/
|
|
19
|
-
export class ContextService {
|
|
20
|
-
renderer;
|
|
21
|
-
localization;
|
|
22
|
-
grid;
|
|
23
|
-
topToolbarNavigation;
|
|
24
|
-
bottomToolbarNavigation;
|
|
25
|
-
navigable;
|
|
26
|
-
scroller;
|
|
27
|
-
dataBindingDirective;
|
|
28
|
-
highlightDirective;
|
|
29
|
-
excelComponent;
|
|
30
|
-
pdfComponent;
|
|
31
|
-
constructor(renderer, localization) {
|
|
32
|
-
this.renderer = renderer;
|
|
33
|
-
this.localization = localization;
|
|
34
|
-
this.topToolbarNavigation = new GridToolbarNavigationService(this.renderer);
|
|
35
|
-
this.bottomToolbarNavigation = new GridToolbarNavigationService(this.renderer);
|
|
36
|
-
}
|
|
37
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContextService, deps: [{ token: i0.Renderer2 }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
38
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContextService });
|
|
39
|
-
}
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ContextService, decorators: [{
|
|
41
|
-
type: Injectable
|
|
42
|
-
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i1.LocalizationService }] });
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
/**
|
|
6
|
-
* Configures size restrictions for a resizable Grid.
|
|
7
|
-
* Use this interface to set min and max width and height for the Grid.
|
|
8
|
-
*/
|
|
9
|
-
export {};
|
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { PopupService } from '@progress/kendo-angular-popup';
|
|
6
|
-
import { Injectable, Renderer2, NgZone } from '@angular/core';
|
|
7
|
-
import { isPresent } from '../utils';
|
|
8
|
-
import { PreventableEvent } from './preventable-event';
|
|
9
|
-
import { Subject, Subscription } from 'rxjs';
|
|
10
|
-
import { ScrollSyncService } from '../scrolling/scroll-sync.service';
|
|
11
|
-
import { isDocumentAvailable } from '@progress/kendo-angular-common';
|
|
12
|
-
import { ContextService } from './provider.service';
|
|
13
|
-
import { skip } from 'rxjs/operators';
|
|
14
|
-
import { AdaptiveGridService } from './adaptiveness.service';
|
|
15
|
-
import * as i0 from "@angular/core";
|
|
16
|
-
import * as i1 from "@progress/kendo-angular-popup";
|
|
17
|
-
import * as i2 from "../scrolling/scroll-sync.service";
|
|
18
|
-
import * as i3 from "./provider.service";
|
|
19
|
-
import * as i4 from "./adaptiveness.service";
|
|
20
|
-
const contains = (node, predicate) => {
|
|
21
|
-
while (node) {
|
|
22
|
-
if (predicate(node)) {
|
|
23
|
-
return true;
|
|
24
|
-
}
|
|
25
|
-
node = node.parentNode;
|
|
26
|
-
}
|
|
27
|
-
return false;
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* Arguments for the `close` event of the filter and column-menu popup.
|
|
31
|
-
*/
|
|
32
|
-
export class PopupCloseEvent extends PreventableEvent {
|
|
33
|
-
/**
|
|
34
|
-
* The original DOM event that causes the popup to close.
|
|
35
|
-
*/
|
|
36
|
-
originalEvent;
|
|
37
|
-
/**
|
|
38
|
-
* @hidden
|
|
39
|
-
*/
|
|
40
|
-
constructor(e) {
|
|
41
|
-
super();
|
|
42
|
-
this.originalEvent = e;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
const DEFAULT_POPUP_CLASS = 'k-grid-filter-popup';
|
|
46
|
-
/**
|
|
47
|
-
* Provides popup management for filter and column menus.
|
|
48
|
-
* Use this service to open and close popups for the Grid filter and column menus ([see example]({% slug filter_menu %}#toc-filter-menu-with-popup)).
|
|
49
|
-
*/
|
|
50
|
-
export class SinglePopupService {
|
|
51
|
-
popupService;
|
|
52
|
-
renderer;
|
|
53
|
-
ngZone;
|
|
54
|
-
ctx;
|
|
55
|
-
adaptiveGridService;
|
|
56
|
-
/**
|
|
57
|
-
* Emits when the filter or column menu popup is about to close because the user clicked outside.
|
|
58
|
-
* Use this event to prevent the popup from closing.
|
|
59
|
-
*/
|
|
60
|
-
onClose = new Subject();
|
|
61
|
-
removeClick;
|
|
62
|
-
pointerEventsSub = new Subscription();
|
|
63
|
-
popupRef;
|
|
64
|
-
scrollSubscription;
|
|
65
|
-
canClosePopup = true;
|
|
66
|
-
/**
|
|
67
|
-
* @hidden
|
|
68
|
-
*/
|
|
69
|
-
constructor(popupService, renderer, ngZone, scrollSyncService, ctx, adaptiveGridService) {
|
|
70
|
-
this.popupService = popupService;
|
|
71
|
-
this.renderer = renderer;
|
|
72
|
-
this.ngZone = ngZone;
|
|
73
|
-
this.ctx = ctx;
|
|
74
|
-
this.adaptiveGridService = adaptiveGridService;
|
|
75
|
-
this.scrollSubscription = scrollSyncService.changes.pipe(skip(1)).subscribe(() => this.destroy());
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* @hidden
|
|
79
|
-
*/
|
|
80
|
-
open(anchor, template, popupRef, popupClass = DEFAULT_POPUP_CLASS) {
|
|
81
|
-
const toggle = isPresent(popupRef) && this.popupRef === popupRef;
|
|
82
|
-
this.destroy();
|
|
83
|
-
if (!toggle) {
|
|
84
|
-
const direction = this.ctx.localization.rtl ? 'right' : 'left';
|
|
85
|
-
this.popupRef = this.popupService.open({
|
|
86
|
-
anchorAlign: { vertical: 'bottom', horizontal: direction },
|
|
87
|
-
popupAlign: { vertical: 'top', horizontal: direction },
|
|
88
|
-
anchor: anchor,
|
|
89
|
-
popupClass: popupClass,
|
|
90
|
-
content: template,
|
|
91
|
-
positionMode: "absolute"
|
|
92
|
-
});
|
|
93
|
-
this.adaptiveGridService.popupRef = this.popupRef;
|
|
94
|
-
this.renderer.setAttribute(this.popupRef.popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
|
|
95
|
-
this.attachClose(anchor);
|
|
96
|
-
}
|
|
97
|
-
const popupEl = this.popupRef?.popupElement;
|
|
98
|
-
if (popupEl) {
|
|
99
|
-
this.attachMouseListeners(popupEl);
|
|
100
|
-
}
|
|
101
|
-
return this.popupRef;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* @hidden
|
|
105
|
-
*/
|
|
106
|
-
destroy() {
|
|
107
|
-
if (this.popupRef) {
|
|
108
|
-
this.detachClose();
|
|
109
|
-
this.pointerEventsSub.unsubscribe();
|
|
110
|
-
this.pointerEventsSub = null;
|
|
111
|
-
this.popupRef.close();
|
|
112
|
-
this.popupRef = null;
|
|
113
|
-
this.adaptiveGridService.popupRef = null;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
ngOnDestroy() {
|
|
117
|
-
this.destroy();
|
|
118
|
-
this.scrollSubscription.unsubscribe();
|
|
119
|
-
}
|
|
120
|
-
detachClose() {
|
|
121
|
-
if (this.removeClick) {
|
|
122
|
-
this.removeClick();
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
attachClose(skipElement) {
|
|
126
|
-
if (!isDocumentAvailable()) {
|
|
127
|
-
return;
|
|
128
|
-
}
|
|
129
|
-
this.detachClose();
|
|
130
|
-
this.ngZone.runOutsideAngular(() => this.removeClick = this.renderer.listen('document', 'click', (e) => {
|
|
131
|
-
if (!contains(e.target, x => this.popupRef.popupElement === x || x === skipElement)) {
|
|
132
|
-
const args = new PopupCloseEvent(e);
|
|
133
|
-
this.onClose.next(args);
|
|
134
|
-
if (!args.isDefaultPrevented() && this.canClosePopup) {
|
|
135
|
-
this.destroy();
|
|
136
|
-
}
|
|
137
|
-
this.canClosePopup = true;
|
|
138
|
-
}
|
|
139
|
-
}));
|
|
140
|
-
}
|
|
141
|
-
attachMouseListeners(el) {
|
|
142
|
-
this.pointerEventsSub = new Subscription();
|
|
143
|
-
this.ngZone.runOutsideAngular(() => {
|
|
144
|
-
this.pointerEventsSub.add(this.renderer.listen(el, 'pointerdown', (e) => {
|
|
145
|
-
e.stopImmediatePropagation();
|
|
146
|
-
this.canClosePopup = false;
|
|
147
|
-
}));
|
|
148
|
-
this.pointerEventsSub.add(this.renderer.listen(el, 'pointerup', () => {
|
|
149
|
-
this.canClosePopup = true;
|
|
150
|
-
}));
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SinglePopupService, deps: [{ token: i1.PopupService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i2.ScrollSyncService }, { token: i3.ContextService }, { token: i4.AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
154
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SinglePopupService });
|
|
155
|
-
}
|
|
156
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SinglePopupService, decorators: [{
|
|
157
|
-
type: Injectable
|
|
158
|
-
}], ctorParameters: () => [{ type: i1.PopupService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i2.ScrollSyncService }, { type: i3.ContextService }, { type: i4.AdaptiveGridService }] });
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Subject } from 'rxjs';
|
|
6
|
-
/**
|
|
7
|
-
* @hidden
|
|
8
|
-
*/
|
|
9
|
-
export class SortService {
|
|
10
|
-
changes = new Subject();
|
|
11
|
-
sort(value) {
|
|
12
|
-
this.changes.next(value);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ChangeDetectorRef, Directive, Inject, NgZone } from '@angular/core';
|
|
6
|
-
import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
|
|
7
|
-
import { Subscription } from 'rxjs';
|
|
8
|
-
import { cancelIcon, columnsIcon, fileExcelIcon, filePdfIcon, pencilIcon, plusIcon, saveIcon, sparklesIcon, trashIcon } from '@progress/kendo-svg-icons';
|
|
9
|
-
import { isPresent } from '@progress/kendo-angular-common';
|
|
10
|
-
import { ContextService } from './provider.service';
|
|
11
|
-
import { ToolbarToolName } from '../navigation/toolbar-tool-name';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
import * as i1 from "@progress/kendo-angular-toolbar";
|
|
14
|
-
import * as i2 from "./provider.service";
|
|
15
|
-
const ICONS_MAP = {
|
|
16
|
-
edit: { svgIcon: pencilIcon, icon: 'pencil' },
|
|
17
|
-
save: { svgIcon: saveIcon, icon: 'save' },
|
|
18
|
-
cancel: { svgIcon: cancelIcon, icon: 'cancel' },
|
|
19
|
-
remove: { svgIcon: trashIcon, icon: 'trash' },
|
|
20
|
-
add: { svgIcon: plusIcon, icon: 'plus' },
|
|
21
|
-
excelExport: { svgIcon: fileExcelIcon, icon: 'file-excel' },
|
|
22
|
-
pdfExport: { svgIcon: filePdfIcon, icon: 'file-pdf' },
|
|
23
|
-
columns: { svgIcon: columnsIcon, icon: 'columns' },
|
|
24
|
-
aiAssistant: { svgIcon: sparklesIcon, icon: 'sparkles' }
|
|
25
|
-
};
|
|
26
|
-
/**
|
|
27
|
-
* @hidden
|
|
28
|
-
*/
|
|
29
|
-
export class ToolbarToolBase {
|
|
30
|
-
host;
|
|
31
|
-
commandName;
|
|
32
|
-
ctx;
|
|
33
|
-
zone;
|
|
34
|
-
cdr;
|
|
35
|
-
clickSub = new Subscription();
|
|
36
|
-
constructor(host, commandName, ctx, zone, cdr) {
|
|
37
|
-
this.host = host;
|
|
38
|
-
this.commandName = commandName;
|
|
39
|
-
this.ctx = ctx;
|
|
40
|
-
this.zone = zone;
|
|
41
|
-
this.cdr = cdr;
|
|
42
|
-
}
|
|
43
|
-
ngOnInit() {
|
|
44
|
-
this.clickSub = this.host.click.subscribe(e => this.onClick(e));
|
|
45
|
-
const hasIcon = (isPresent(this.host.toolbarOptions.icon) && this.host.toolbarOptions.icon !== '') &&
|
|
46
|
-
(isPresent(this.host.overflowOptions.icon) && this.host.overflowOptions.icon !== '');
|
|
47
|
-
const hasSvgIcon = isPresent(this.host.toolbarOptions.svgIcon) && isPresent(this.host.overflowOptions.svgIcon);
|
|
48
|
-
if (!hasIcon) {
|
|
49
|
-
this.host.icon = ICONS_MAP[this.commandName].icon;
|
|
50
|
-
}
|
|
51
|
-
if (!hasSvgIcon) {
|
|
52
|
-
this.host.svgIcon = ICONS_MAP[this.commandName].svgIcon;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
ngAfterViewInit() {
|
|
56
|
-
const hasText = isPresent(this.host.text);
|
|
57
|
-
if (!hasText) {
|
|
58
|
-
this.zone.runOutsideAngular(() => {
|
|
59
|
-
setTimeout(() => {
|
|
60
|
-
const messageKey = this.commandName === ToolbarToolName.columns ? 'columns' : `${this.commandName}ToolbarToolText`;
|
|
61
|
-
this.host.text = this.ctx.localization.get(messageKey);
|
|
62
|
-
this.zone.run(() => {
|
|
63
|
-
this.cdr.markForCheck();
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
ngOnDestroy() {
|
|
70
|
-
this.clickSub.unsubscribe();
|
|
71
|
-
}
|
|
72
|
-
onClick(_e) { }
|
|
73
|
-
get buttonElement() {
|
|
74
|
-
return this.host.getButton();
|
|
75
|
-
}
|
|
76
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ToolbarToolBase, deps: [{ token: i1.ToolBarButtonComponent }, { token: 'command' }, { token: i2.ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
77
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ToolbarToolBase, ngImport: i0 });
|
|
78
|
-
}
|
|
79
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ToolbarToolBase, decorators: [{
|
|
80
|
-
type: Directive,
|
|
81
|
-
args: [{}]
|
|
82
|
-
}], ctorParameters: () => [{ type: i1.ToolBarButtonComponent }, { type: undefined, decorators: [{
|
|
83
|
-
type: Inject,
|
|
84
|
-
args: ['command']
|
|
85
|
-
}] }, { type: i2.ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
package/esm2022/constants.mjs
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
/**
|
|
6
|
-
* @hidden
|
|
7
|
-
*/
|
|
8
|
-
export const GROUP_CELL_WIDTH = 32; // this should be the value of group-cell inside the theme!
|
|
9
|
-
/**
|
|
10
|
-
* @hidden
|
|
11
|
-
*/
|
|
12
|
-
export const RESPONSIVE_BREAKPOINT_MEDIUM = 600;
|
|
13
|
-
/**
|
|
14
|
-
* @hidden
|
|
15
|
-
*/
|
|
16
|
-
export const RESPONSIVE_BREAKPOINT_LARGE = 768;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { EventEmitter, NgZone, Injectable } from '@angular/core';
|
|
6
|
-
import { take } from 'rxjs/operators';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* @hidden
|
|
10
|
-
*/
|
|
11
|
-
export class ChangeNotificationService {
|
|
12
|
-
ngZone;
|
|
13
|
-
changes = new EventEmitter();
|
|
14
|
-
subscription;
|
|
15
|
-
constructor(ngZone) {
|
|
16
|
-
this.ngZone = ngZone;
|
|
17
|
-
}
|
|
18
|
-
notify() {
|
|
19
|
-
if (!this.subscription || this.subscription.closed) {
|
|
20
|
-
this.subscription = this.ngZone.onStable
|
|
21
|
-
.asObservable().pipe(take(1))
|
|
22
|
-
.subscribe(() => this.changes.emit());
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChangeNotificationService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
26
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChangeNotificationService });
|
|
27
|
-
}
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChangeNotificationService, decorators: [{
|
|
29
|
-
type: Injectable
|
|
30
|
-
}], ctorParameters: () => [{ type: i0.NgZone }] });
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Injectable } from '@angular/core';
|
|
6
|
-
import { RowspanService } from '../rendering/rowspan.service';
|
|
7
|
-
import { GroupsService } from '../grouping/groups.service';
|
|
8
|
-
import { DetailsService } from '../rendering/details/details.service';
|
|
9
|
-
import { ContextService } from '../common/provider.service';
|
|
10
|
-
import { isPresent } from '@progress/kendo-angular-common';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
import * as i1 from "../rendering/rowspan.service";
|
|
13
|
-
import * as i2 from "../grouping/groups.service";
|
|
14
|
-
import * as i3 from "../rendering/details/details.service";
|
|
15
|
-
import * as i4 from "../common/provider.service";
|
|
16
|
-
/**
|
|
17
|
-
* @hidden
|
|
18
|
-
*/
|
|
19
|
-
export class DataMappingService {
|
|
20
|
-
rowspanService;
|
|
21
|
-
groupsService;
|
|
22
|
-
detailsService;
|
|
23
|
-
ctx;
|
|
24
|
-
recalculateRowspan = true;
|
|
25
|
-
dataArray = null;
|
|
26
|
-
constructor(rowspanService, groupsService, detailsService, ctx) {
|
|
27
|
-
this.rowspanService = rowspanService;
|
|
28
|
-
this.groupsService = groupsService;
|
|
29
|
-
this.detailsService = detailsService;
|
|
30
|
-
this.ctx = ctx;
|
|
31
|
-
}
|
|
32
|
-
isGroup(item) {
|
|
33
|
-
return item.type === 'group';
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Maps the data to the Grid row items, applying rowspan and detail row logic.
|
|
37
|
-
*/
|
|
38
|
-
dataMapper(data, nonLockedColumnsToRender, lockedLeafColumns, detailTemplate, showFooter) {
|
|
39
|
-
const result = [];
|
|
40
|
-
if (!data || !nonLockedColumnsToRender && !lockedLeafColumns) {
|
|
41
|
-
return [];
|
|
42
|
-
}
|
|
43
|
-
let dataIndex = 0;
|
|
44
|
-
for (const item of data) {
|
|
45
|
-
if (this.shouldRenderItem(item, detailTemplate, showFooter)) {
|
|
46
|
-
if (item.type === 'data') {
|
|
47
|
-
item.cells = [];
|
|
48
|
-
for (let i = 0; i < (lockedLeafColumns.length + nonLockedColumnsToRender.length); i++) {
|
|
49
|
-
const column = i < lockedLeafColumns.length ? lockedLeafColumns.get(i) : nonLockedColumnsToRender.get(i - lockedLeafColumns.length);
|
|
50
|
-
const cell = {};
|
|
51
|
-
if (column.cellRowspan && this.shouldSkipCell(dataIndex, i)) {
|
|
52
|
-
cell.skip = true;
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
cell.rowspan = column.cellRowspan ? this.getRowspan({
|
|
56
|
-
index: dataIndex,
|
|
57
|
-
dataItem: item
|
|
58
|
-
}, column, i, data) : 1;
|
|
59
|
-
}
|
|
60
|
-
if (isPresent(this.ctx.highlightDirective)) {
|
|
61
|
-
cell.isHighlighted = this.ctx.highlightDirective.isCellHighlighted(item, column, i);
|
|
62
|
-
}
|
|
63
|
-
item.cells.push(cell);
|
|
64
|
-
}
|
|
65
|
-
if (isPresent(this.ctx.highlightDirective)) {
|
|
66
|
-
item.isHighlighted = this.ctx.highlightDirective.isRowHighlighted(item);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
result.push(item);
|
|
70
|
-
}
|
|
71
|
-
dataIndex++;
|
|
72
|
-
}
|
|
73
|
-
this.recalculateRowspan = true;
|
|
74
|
-
this.rowspanService.reset();
|
|
75
|
-
return result;
|
|
76
|
-
}
|
|
77
|
-
isDataItem(item) {
|
|
78
|
-
return !this.isGroup(item) && !this.isFooter(item);
|
|
79
|
-
}
|
|
80
|
-
isFooter(item) {
|
|
81
|
-
return item.type === 'footer';
|
|
82
|
-
}
|
|
83
|
-
isFooterItemInExpandedGroup(item) {
|
|
84
|
-
const footerItem = { data: item.data, index: item.groupIndex, parentGroup: item.group.parentGroup };
|
|
85
|
-
return this.isInExpandedGroup(footerItem);
|
|
86
|
-
}
|
|
87
|
-
isDataItemInExpandedGroup(item) {
|
|
88
|
-
const dataItem = { data: item.group.data, index: item.groupIndex, parentGroup: item.group.parentGroup };
|
|
89
|
-
return this.isInExpandedGroup(dataItem);
|
|
90
|
-
}
|
|
91
|
-
isInExpandedGroup(item) {
|
|
92
|
-
return this.groupsService.isInExpandedGroup(item);
|
|
93
|
-
}
|
|
94
|
-
isParentGroupExpanded(item) {
|
|
95
|
-
return this.groupsService.isInExpandedGroup(item.parentGroup);
|
|
96
|
-
}
|
|
97
|
-
isExpanded(viewItem) {
|
|
98
|
-
return this.detailsService.isExpanded(viewItem.index, viewItem.data);
|
|
99
|
-
}
|
|
100
|
-
shouldRenderItem(item, detailTemplate, showFooter) {
|
|
101
|
-
const renderGroupHeader = this.isGroup(item) && this.isParentGroupExpanded(item);
|
|
102
|
-
const renderDataItem = this.isDataItem(item) && (!item.group || this.isDataItemInExpandedGroup(item));
|
|
103
|
-
const renderDetailTemplate = renderDataItem && detailTemplate?.templateRef && detailTemplate.showIf(item.data, item.index) && this.isExpanded(item);
|
|
104
|
-
const isVisibleFooter = this.isFooter(item) && item.group && (this.isFooterItemInExpandedGroup(item) || (showFooter && this.isParentGroupExpanded(item.group)));
|
|
105
|
-
const renderFooter = isVisibleFooter && !item.data.hideFooter;
|
|
106
|
-
item.showDataItem = renderDataItem;
|
|
107
|
-
item.showDetailRow = renderDataItem && renderDetailTemplate;
|
|
108
|
-
item.isExpanded = this.isExpanded(item);
|
|
109
|
-
return renderGroupHeader || renderDataItem || renderDetailTemplate || renderFooter;
|
|
110
|
-
}
|
|
111
|
-
shouldSkipCell(rowIndex, colIndex) {
|
|
112
|
-
return this.rowspanService.shouldSkip(rowIndex, colIndex);
|
|
113
|
-
}
|
|
114
|
-
cachedDataArray(data) {
|
|
115
|
-
if (!this.dataArray) {
|
|
116
|
-
this.dataArray = data.map(item => item);
|
|
117
|
-
}
|
|
118
|
-
return this.dataArray;
|
|
119
|
-
}
|
|
120
|
-
getRowspan(row, column, colIndex, data) {
|
|
121
|
-
if (this.recalculateRowspan) {
|
|
122
|
-
this.dataArray = null;
|
|
123
|
-
this.recalculateRowspan = false;
|
|
124
|
-
}
|
|
125
|
-
const rowspan = column.cellRowspan(row, column, this.cachedDataArray(data));
|
|
126
|
-
if (rowspan > 1) {
|
|
127
|
-
this.rowspanService.addCells(row.index, colIndex, rowspan);
|
|
128
|
-
}
|
|
129
|
-
return rowspan;
|
|
130
|
-
}
|
|
131
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DataMappingService, deps: [{ token: i1.RowspanService }, { token: i2.GroupsService }, { token: i3.DetailsService }, { token: i4.ContextService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
132
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DataMappingService });
|
|
133
|
-
}
|
|
134
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DataMappingService, decorators: [{
|
|
135
|
-
type: Injectable
|
|
136
|
-
}], ctorParameters: () => [{ type: i1.RowspanService }, { type: i2.GroupsService }, { type: i3.DetailsService }, { type: i4.ContextService }] });
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { iterator } from '../utils';
|
|
6
|
-
import { getIterator, itemAt } from './data.iterators';
|
|
7
|
-
/**
|
|
8
|
-
* @hidden
|
|
9
|
-
*/
|
|
10
|
-
export class DataResultIterator {
|
|
11
|
-
source;
|
|
12
|
-
skip;
|
|
13
|
-
groupFooters;
|
|
14
|
-
isObject;
|
|
15
|
-
constructor(source, skip = 0, groupFooters = false) {
|
|
16
|
-
this.source = source;
|
|
17
|
-
this.skip = skip;
|
|
18
|
-
this.groupFooters = groupFooters;
|
|
19
|
-
this.source = this.source ? this.source : [];
|
|
20
|
-
this.isObject = this.isGridDataResult(this.source);
|
|
21
|
-
}
|
|
22
|
-
isGridDataResult(source) {
|
|
23
|
-
return source.total !== undefined && source.data !== undefined;
|
|
24
|
-
}
|
|
25
|
-
get total() {
|
|
26
|
-
return this.isObject ? this.source.total : this.source.length;
|
|
27
|
-
}
|
|
28
|
-
get data() {
|
|
29
|
-
return this.isObject ? this.source.data : this.source;
|
|
30
|
-
}
|
|
31
|
-
map(fn) {
|
|
32
|
-
return this.data.map(fn);
|
|
33
|
-
}
|
|
34
|
-
filter(fn) {
|
|
35
|
-
return this.data.filter(fn);
|
|
36
|
-
}
|
|
37
|
-
reduce(fn, init) {
|
|
38
|
-
return this.data.reduce(fn, init);
|
|
39
|
-
}
|
|
40
|
-
forEach(fn) {
|
|
41
|
-
this.data.forEach(fn);
|
|
42
|
-
}
|
|
43
|
-
some(fn) {
|
|
44
|
-
return this.data.some(fn);
|
|
45
|
-
}
|
|
46
|
-
[iterator]() {
|
|
47
|
-
return getIterator(this.data, {
|
|
48
|
-
dataIndex: this.skip,
|
|
49
|
-
footers: this.groupFooters,
|
|
50
|
-
groupIndex: this.skip
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
toString() { return this.data.toString(); }
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* @hidden
|
|
57
|
-
*/
|
|
58
|
-
export class DataCollection {
|
|
59
|
-
accessor;
|
|
60
|
-
constructor(accessor) {
|
|
61
|
-
this.accessor = accessor;
|
|
62
|
-
}
|
|
63
|
-
get total() { return this.accessor().total; }
|
|
64
|
-
get length() { return this.accessor().data.length; }
|
|
65
|
-
get first() { return this.accessor().data[0]; }
|
|
66
|
-
get last() { return this.accessor().data[this.length - 1]; }
|
|
67
|
-
at(index) {
|
|
68
|
-
return itemAt(this.accessor().data, index);
|
|
69
|
-
}
|
|
70
|
-
map(fn) { return this.accessor().map(fn); }
|
|
71
|
-
filter(fn) {
|
|
72
|
-
return this.accessor().filter(fn);
|
|
73
|
-
}
|
|
74
|
-
reduce(fn, init) {
|
|
75
|
-
return this.accessor().reduce(fn, init);
|
|
76
|
-
}
|
|
77
|
-
forEach(fn) {
|
|
78
|
-
this.accessor().forEach(fn);
|
|
79
|
-
}
|
|
80
|
-
some(fn) {
|
|
81
|
-
return this.accessor().some(fn);
|
|
82
|
-
}
|
|
83
|
-
[iterator]() {
|
|
84
|
-
return this.accessor()[iterator]();
|
|
85
|
-
}
|
|
86
|
-
toString() { return this.accessor().toString(); }
|
|
87
|
-
}
|