@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,432 +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 { Input, ContentChild, ContentChildren, QueryList, Component, isDevMode } from '@angular/core';
|
|
6
|
-
import { HeaderTemplateDirective } from '../rendering/header/header-template.directive';
|
|
7
|
-
import { FooterTemplateDirective } from '../rendering/footer/footer-template.directive';
|
|
8
|
-
import { ColumnMenuTemplateDirective } from '../column-menu/column-menu-template.directive';
|
|
9
|
-
import { IdService } from '../common/id.service';
|
|
10
|
-
import { ColumnConfigurationErrorMessages } from '../common/error-messages';
|
|
11
|
-
import { defaultCellRowSpan } from '../utils';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
import * as i1 from "../common/id.service";
|
|
14
|
-
/**
|
|
15
|
-
* @hidden
|
|
16
|
-
*/
|
|
17
|
-
export const isSpanColumn = column => column?.isSpanColumn;
|
|
18
|
-
/**
|
|
19
|
-
* @hidden
|
|
20
|
-
*/
|
|
21
|
-
export const isCheckboxColumn = column => column?.isCheckboxColumn;
|
|
22
|
-
/**
|
|
23
|
-
* @hidden
|
|
24
|
-
*/
|
|
25
|
-
export const isRowReorderColumn = column => column?.isRowReorderColumn;
|
|
26
|
-
const isColumnContainer = column => column?.isColumnGroup || isSpanColumn(column);
|
|
27
|
-
/**
|
|
28
|
-
* The base class for the column components of the Grid.
|
|
29
|
-
*
|
|
30
|
-
* Use this class as a foundation for custom column implementations.
|
|
31
|
-
*/
|
|
32
|
-
export class ColumnBase {
|
|
33
|
-
parent;
|
|
34
|
-
/**
|
|
35
|
-
* @hidden
|
|
36
|
-
*/
|
|
37
|
-
isReordered;
|
|
38
|
-
/**
|
|
39
|
-
* @hidden
|
|
40
|
-
*/
|
|
41
|
-
initialMaxResizableWidth;
|
|
42
|
-
/**
|
|
43
|
-
* @hidden
|
|
44
|
-
*/
|
|
45
|
-
initialMinResizableWidth;
|
|
46
|
-
/**
|
|
47
|
-
* @hidden
|
|
48
|
-
*/
|
|
49
|
-
initiallyChecked;
|
|
50
|
-
/**
|
|
51
|
-
* @hidden
|
|
52
|
-
*/
|
|
53
|
-
currentlyChecked;
|
|
54
|
-
/**
|
|
55
|
-
* @hidden
|
|
56
|
-
*/
|
|
57
|
-
matchesMedia = true;
|
|
58
|
-
/**
|
|
59
|
-
* Gets the column index after reordering. The `orderIndex` property is read-only. Setting this field does not change the column order.
|
|
60
|
-
*
|
|
61
|
-
* @default 0
|
|
62
|
-
*/
|
|
63
|
-
orderIndex = 0;
|
|
64
|
-
/**
|
|
65
|
-
* @hidden
|
|
66
|
-
*/
|
|
67
|
-
set leafIndex(value) {
|
|
68
|
-
this._leafIndex = value;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* @hidden
|
|
72
|
-
*/
|
|
73
|
-
get leafIndex() {
|
|
74
|
-
return this._leafIndex;
|
|
75
|
-
}
|
|
76
|
-
_leafIndex;
|
|
77
|
-
/**
|
|
78
|
-
* @hidden
|
|
79
|
-
*/
|
|
80
|
-
isColumnGroup = false;
|
|
81
|
-
/**
|
|
82
|
-
* @hidden
|
|
83
|
-
*/
|
|
84
|
-
isSpanColumn = false;
|
|
85
|
-
/**
|
|
86
|
-
* Specifies if the column is resizable.
|
|
87
|
-
* @default true
|
|
88
|
-
*/
|
|
89
|
-
resizable = true;
|
|
90
|
-
/**
|
|
91
|
-
* Specifies if the column is reorderable.
|
|
92
|
-
* @default true
|
|
93
|
-
*/
|
|
94
|
-
reorderable = true;
|
|
95
|
-
/**
|
|
96
|
-
* Sets the minimum width (in pixels) for resizing the column by using the UI ([see example]({% slug resizing_columns_grid %}#toc-limiting-the-resizing)).
|
|
97
|
-
* The `autoFitColumn` and `autoFitColumns` methods have higher priority.
|
|
98
|
-
* @default 10
|
|
99
|
-
*/
|
|
100
|
-
minResizableWidth = 10;
|
|
101
|
-
/**
|
|
102
|
-
* Sets the maximum width (in pixels) for resizing the column by using the UI ([see example]({% slug resizing_columns_grid %}#toc-limiting-the-resizing)).
|
|
103
|
-
* By default, the maximum width is not restricted.
|
|
104
|
-
* The `autoFitColumn` and `autoFitColumns` methods have higher priority.
|
|
105
|
-
*/
|
|
106
|
-
maxResizableWidth;
|
|
107
|
-
/**
|
|
108
|
-
* Sets the column title.
|
|
109
|
-
*/
|
|
110
|
-
title;
|
|
111
|
-
/**
|
|
112
|
-
* Sets the column width (in pixels).
|
|
113
|
-
*/
|
|
114
|
-
set width(value) {
|
|
115
|
-
if (typeof value === 'string') {
|
|
116
|
-
const parsedValue = this._width = parseInt(value, 10);
|
|
117
|
-
if (isDevMode()) {
|
|
118
|
-
console.warn(ColumnConfigurationErrorMessages.width(value, parsedValue));
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
this._width = value;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
get width() { return this._width; }
|
|
126
|
-
/**
|
|
127
|
-
* Specifies if the column is automatically resized during initialization to fit its header and row content.
|
|
128
|
-
*/
|
|
129
|
-
autoSize;
|
|
130
|
-
/**
|
|
131
|
-
* Toggles the locked (frozen) state of the column ([more information and example]({% slug locked_columns_grid %})).
|
|
132
|
-
*
|
|
133
|
-
* @default false
|
|
134
|
-
*/
|
|
135
|
-
set locked(value) {
|
|
136
|
-
this._locked = value;
|
|
137
|
-
}
|
|
138
|
-
get locked() {
|
|
139
|
-
return this._locked;
|
|
140
|
-
}
|
|
141
|
-
_locked = false;
|
|
142
|
-
/**
|
|
143
|
-
* Specifies if the column is always visible when scrolling the Grid horizontally.
|
|
144
|
-
*
|
|
145
|
-
* @default false
|
|
146
|
-
*/
|
|
147
|
-
sticky = false;
|
|
148
|
-
/**
|
|
149
|
-
* Sets the visibility of the column ([see example](slug:hidden_columns_grid#toc-using-the-built-in-options)).
|
|
150
|
-
*
|
|
151
|
-
* @default false
|
|
152
|
-
*/
|
|
153
|
-
hidden;
|
|
154
|
-
/**
|
|
155
|
-
* Sets the condition for the column to remain visible ([see example]({% slug styling_responsive_grid %}#toc-columns)).
|
|
156
|
-
* If you set the `hidden` property, `media` is ignored.
|
|
157
|
-
*
|
|
158
|
-
* Accepts device identifiers from [Bootstrap 4](https://v4-alpha.getbootstrap.com/layout/grid/#grid-options)
|
|
159
|
-
* ([see example](slug:styling_responsive_grid)).
|
|
160
|
-
*/
|
|
161
|
-
media;
|
|
162
|
-
/**
|
|
163
|
-
* Specifies if the column can be locked or unlocked from the column menu or by reordering.
|
|
164
|
-
* @default true
|
|
165
|
-
*/
|
|
166
|
-
lockable = true;
|
|
167
|
-
/**
|
|
168
|
-
* Specifies if the column can be stuck or unstuck from the column menu.
|
|
169
|
-
* @default true
|
|
170
|
-
*/
|
|
171
|
-
stickable = true;
|
|
172
|
-
/**
|
|
173
|
-
* Specifies if the column menu is shown for the column.
|
|
174
|
-
* @default true
|
|
175
|
-
*/
|
|
176
|
-
columnMenu = true;
|
|
177
|
-
/**
|
|
178
|
-
* Specifies if the column is included in the column-chooser list.
|
|
179
|
-
* @default true
|
|
180
|
-
*/
|
|
181
|
-
includeInChooser = true;
|
|
182
|
-
/**
|
|
183
|
-
* Sets the `role` attribute for the table cells (excluding footer and header) of the column.
|
|
184
|
-
* @default "gridcell"
|
|
185
|
-
*/
|
|
186
|
-
tableCellsRole = 'gridcell';
|
|
187
|
-
/**
|
|
188
|
-
* Sets custom styles for the table cells (excluding footer and header) of the column.
|
|
189
|
-
* Uses the [`NgStyle`](link:site.data.urls.angular['ngstyleapi']) directive. [See example](slug:styling_grid_columns#toc-customizing-column-cells).
|
|
190
|
-
*/
|
|
191
|
-
style;
|
|
192
|
-
/**
|
|
193
|
-
* Sets custom styles for the header cell of the column.
|
|
194
|
-
* Uses the [`NgStyle`](link:site.data.urls.angular['ngstyleapi']) directive. [See example](slug:styling_grid_columns#toc-customizing-column-header).
|
|
195
|
-
*/
|
|
196
|
-
headerStyle;
|
|
197
|
-
/**
|
|
198
|
-
* Sets custom styles for the filter row cell.
|
|
199
|
-
* Uses the [`NgStyle`](link:site.data.urls.angular['ngstyleapi']) directive. [See example](slug:styling_grid_columns#toc-customizing-filter-row-cells).
|
|
200
|
-
*/
|
|
201
|
-
filterStyle;
|
|
202
|
-
/**
|
|
203
|
-
* Sets custom styles for the footer cell of the column.
|
|
204
|
-
* Uses the [`NgStyle`](link:site.data.urls.angular['ngstyleapi']) directive. [See example](slug:styling_grid_columns#toc-customizing-column-footer).
|
|
205
|
-
*/
|
|
206
|
-
footerStyle;
|
|
207
|
-
/**
|
|
208
|
-
* Sets custom CSS classes to the column cells.
|
|
209
|
-
* Uses the [`NgClass`](link:site.data.urls.angular['ngclassapi']) directive. [See example](slug:styling_grid_columns#toc-customizing-column-cells).
|
|
210
|
-
* To customize header and footer column cells, use the [headerClass]({% slug api_grid_columncomponent %}#toc-headerclass)
|
|
211
|
-
* and [footerClass]({% slug api_grid_columncomponent %}#toc-footerclass) inputs.
|
|
212
|
-
*/
|
|
213
|
-
cssClass;
|
|
214
|
-
/**
|
|
215
|
-
* Sets custom CSS classes to the column header cell.
|
|
216
|
-
* Uses the [`NgClass`](link:site.data.urls.angular['ngclassapi']) directive. [See example](slug:styling_grid_columns#toc-customizing-column-header).
|
|
217
|
-
*/
|
|
218
|
-
headerClass;
|
|
219
|
-
/**
|
|
220
|
-
* Sets custom CSS classes to the filter row cell.
|
|
221
|
-
* Uses the [`NgClass`](link:site.data.urls.angular['ngclassapi']) directive. [See example](slug:styling_grid_columns#toc-customizing-filter-row-cells).
|
|
222
|
-
*/
|
|
223
|
-
filterClass;
|
|
224
|
-
/**
|
|
225
|
-
* Sets custom CSS classes to the column footer cell.
|
|
226
|
-
* Uses the [`NgClass`](link:site.data.urls.angular['ngclassapi']) directive. [See example](slug:styling_grid_columns#toc-customizing-column-footer).
|
|
227
|
-
*/
|
|
228
|
-
footerClass;
|
|
229
|
-
/**
|
|
230
|
-
* Defines a function to determine the rowspan of each column cell.
|
|
231
|
-
* If you set this to `true`, a default function is used that spans adjacent cells with equal values.
|
|
232
|
-
* Cells have equal values when their data items' values for the respective field are equal.
|
|
233
|
-
*/
|
|
234
|
-
set cellRowspan(cellRowspan) {
|
|
235
|
-
if (isDevMode() && (this.isSpanColumn || this.isColumnGroup)) {
|
|
236
|
-
throw new Error(ColumnConfigurationErrorMessages.cellRowspanSpanGroupedColumns);
|
|
237
|
-
}
|
|
238
|
-
if (cellRowspan) {
|
|
239
|
-
const isFunction = typeof cellRowspan === 'function';
|
|
240
|
-
const isBoolean = typeof cellRowspan === 'boolean';
|
|
241
|
-
if (isDevMode() && !this.field && !isFunction) {
|
|
242
|
-
throw new Error(ColumnConfigurationErrorMessages.cellRowspanNonBoundColumns);
|
|
243
|
-
}
|
|
244
|
-
if (isDevMode() && !(isBoolean || isFunction)) {
|
|
245
|
-
throw new Error(ColumnConfigurationErrorMessages.cellRowspan);
|
|
246
|
-
}
|
|
247
|
-
this._cellRowspan = isBoolean ? defaultCellRowSpan : cellRowspan;
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
get cellRowspan() {
|
|
251
|
-
return this._cellRowspan;
|
|
252
|
-
}
|
|
253
|
-
/**
|
|
254
|
-
* @hidden
|
|
255
|
-
*/
|
|
256
|
-
headerTemplates = new QueryList();
|
|
257
|
-
/**
|
|
258
|
-
* @hidden
|
|
259
|
-
*/
|
|
260
|
-
footerTemplate;
|
|
261
|
-
/**
|
|
262
|
-
* @hidden
|
|
263
|
-
*/
|
|
264
|
-
columnMenuTemplates = new QueryList();
|
|
265
|
-
/**
|
|
266
|
-
* @hidden
|
|
267
|
-
*/
|
|
268
|
-
resizeStartWidth;
|
|
269
|
-
/**
|
|
270
|
-
* @hidden
|
|
271
|
-
*/
|
|
272
|
-
idService;
|
|
273
|
-
/**
|
|
274
|
-
* @hidden
|
|
275
|
-
*/
|
|
276
|
-
_cellRowspan;
|
|
277
|
-
/**
|
|
278
|
-
* @hidden
|
|
279
|
-
*/
|
|
280
|
-
implicitWidth;
|
|
281
|
-
/**
|
|
282
|
-
* @hidden
|
|
283
|
-
*/
|
|
284
|
-
get level() {
|
|
285
|
-
if (this.parent && isSpanColumn(this.parent)) {
|
|
286
|
-
return this.parent.level;
|
|
287
|
-
}
|
|
288
|
-
return this.parent ? this.parent.level + 1 : 0;
|
|
289
|
-
}
|
|
290
|
-
/**
|
|
291
|
-
* @hidden
|
|
292
|
-
*/
|
|
293
|
-
get isLocked() {
|
|
294
|
-
return this.parent ? this.parent.isLocked : this.locked;
|
|
295
|
-
}
|
|
296
|
-
_width;
|
|
297
|
-
/**
|
|
298
|
-
* @hidden
|
|
299
|
-
*/
|
|
300
|
-
get id() {
|
|
301
|
-
return this._id;
|
|
302
|
-
}
|
|
303
|
-
/**
|
|
304
|
-
* @hidden
|
|
305
|
-
*/
|
|
306
|
-
get colspan() {
|
|
307
|
-
return 1;
|
|
308
|
-
}
|
|
309
|
-
/**
|
|
310
|
-
* @hidden
|
|
311
|
-
*/
|
|
312
|
-
rowspan(totalColumnLevels) {
|
|
313
|
-
return this.level < totalColumnLevels ? (totalColumnLevels - this.level) + 1 : 1;
|
|
314
|
-
}
|
|
315
|
-
/**
|
|
316
|
-
* @hidden
|
|
317
|
-
*/
|
|
318
|
-
get headerTemplateRef() {
|
|
319
|
-
const template = this.headerTemplates.first;
|
|
320
|
-
return template ? template.templateRef : undefined;
|
|
321
|
-
}
|
|
322
|
-
/**
|
|
323
|
-
* @hidden
|
|
324
|
-
*/
|
|
325
|
-
get footerTemplateRef() {
|
|
326
|
-
return this.footerTemplate ? this.footerTemplate.templateRef : undefined;
|
|
327
|
-
}
|
|
328
|
-
/**
|
|
329
|
-
* @hidden
|
|
330
|
-
*/
|
|
331
|
-
get columnMenuTemplateRef() {
|
|
332
|
-
const template = this.columnMenuTemplates.first;
|
|
333
|
-
return template ? template.templateRef : null;
|
|
334
|
-
}
|
|
335
|
-
/**
|
|
336
|
-
* @hidden
|
|
337
|
-
*/
|
|
338
|
-
get displayTitle() {
|
|
339
|
-
return this.title;
|
|
340
|
-
}
|
|
341
|
-
/**
|
|
342
|
-
* @hidden
|
|
343
|
-
*/
|
|
344
|
-
get isVisible() {
|
|
345
|
-
return !this.hidden && this.matchesMedia;
|
|
346
|
-
}
|
|
347
|
-
_id;
|
|
348
|
-
/**
|
|
349
|
-
* @hidden
|
|
350
|
-
*/
|
|
351
|
-
constructor(parent, idService) {
|
|
352
|
-
this.parent = parent;
|
|
353
|
-
this.idService = idService;
|
|
354
|
-
if (parent && idService && parent.idService.gridId() === idService.gridId() && !isColumnContainer(parent)) {
|
|
355
|
-
throw new Error(ColumnConfigurationErrorMessages.columnNested);
|
|
356
|
-
}
|
|
357
|
-
this._id = this.idService?.nextColumnId();
|
|
358
|
-
}
|
|
359
|
-
ngAfterViewInit() {
|
|
360
|
-
this.initialMinResizableWidth = this.minResizableWidth || 10;
|
|
361
|
-
this.initialMaxResizableWidth = this.maxResizableWidth || Number.MAX_SAFE_INTEGER;
|
|
362
|
-
}
|
|
363
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnBase, deps: [{ token: ColumnBase }, { token: i1.IdService }], target: i0.ɵɵFactoryTarget.Component });
|
|
364
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ColumnBase, selector: "kendo-grid-column-base", inputs: { resizable: "resizable", reorderable: "reorderable", minResizableWidth: "minResizableWidth", maxResizableWidth: "maxResizableWidth", title: "title", width: "width", autoSize: "autoSize", locked: "locked", sticky: "sticky", hidden: "hidden", media: "media", lockable: "lockable", stickable: "stickable", columnMenu: "columnMenu", includeInChooser: "includeInChooser", tableCellsRole: "tableCellsRole", style: "style", headerStyle: "headerStyle", filterStyle: "filterStyle", footerStyle: "footerStyle", cssClass: ["class", "cssClass"], headerClass: "headerClass", filterClass: "filterClass", footerClass: "footerClass", cellRowspan: "cellRowspan" }, queries: [{ propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "headerTemplates", predicate: HeaderTemplateDirective }, { propertyName: "columnMenuTemplates", predicate: ColumnMenuTemplateDirective }], ngImport: i0, template: ``, isInline: true });
|
|
365
|
-
}
|
|
366
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnBase, decorators: [{
|
|
367
|
-
type: Component,
|
|
368
|
-
args: [{
|
|
369
|
-
selector: 'kendo-grid-column-base',
|
|
370
|
-
template: ``
|
|
371
|
-
}]
|
|
372
|
-
}], ctorParameters: () => [{ type: ColumnBase }, { type: i1.IdService }], propDecorators: { resizable: [{
|
|
373
|
-
type: Input
|
|
374
|
-
}], reorderable: [{
|
|
375
|
-
type: Input
|
|
376
|
-
}], minResizableWidth: [{
|
|
377
|
-
type: Input
|
|
378
|
-
}], maxResizableWidth: [{
|
|
379
|
-
type: Input
|
|
380
|
-
}], title: [{
|
|
381
|
-
type: Input
|
|
382
|
-
}], width: [{
|
|
383
|
-
type: Input
|
|
384
|
-
}], autoSize: [{
|
|
385
|
-
type: Input
|
|
386
|
-
}], locked: [{
|
|
387
|
-
type: Input
|
|
388
|
-
}], sticky: [{
|
|
389
|
-
type: Input
|
|
390
|
-
}], hidden: [{
|
|
391
|
-
type: Input
|
|
392
|
-
}], media: [{
|
|
393
|
-
type: Input
|
|
394
|
-
}], lockable: [{
|
|
395
|
-
type: Input
|
|
396
|
-
}], stickable: [{
|
|
397
|
-
type: Input
|
|
398
|
-
}], columnMenu: [{
|
|
399
|
-
type: Input
|
|
400
|
-
}], includeInChooser: [{
|
|
401
|
-
type: Input
|
|
402
|
-
}], tableCellsRole: [{
|
|
403
|
-
type: Input
|
|
404
|
-
}], style: [{
|
|
405
|
-
type: Input
|
|
406
|
-
}], headerStyle: [{
|
|
407
|
-
type: Input
|
|
408
|
-
}], filterStyle: [{
|
|
409
|
-
type: Input
|
|
410
|
-
}], footerStyle: [{
|
|
411
|
-
type: Input
|
|
412
|
-
}], cssClass: [{
|
|
413
|
-
type: Input,
|
|
414
|
-
args: ['class']
|
|
415
|
-
}], headerClass: [{
|
|
416
|
-
type: Input
|
|
417
|
-
}], filterClass: [{
|
|
418
|
-
type: Input
|
|
419
|
-
}], footerClass: [{
|
|
420
|
-
type: Input
|
|
421
|
-
}], cellRowspan: [{
|
|
422
|
-
type: Input
|
|
423
|
-
}], headerTemplates: [{
|
|
424
|
-
type: ContentChildren,
|
|
425
|
-
args: [HeaderTemplateDirective, { descendants: false }]
|
|
426
|
-
}], footerTemplate: [{
|
|
427
|
-
type: ContentChild,
|
|
428
|
-
args: [FooterTemplateDirective, { static: false }]
|
|
429
|
-
}], columnMenuTemplates: [{
|
|
430
|
-
type: ContentChildren,
|
|
431
|
-
args: [ColumnMenuTemplateDirective]
|
|
432
|
-
}] } });
|
|
@@ -1,73 +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 { isSpanColumnComponent } from "./span-column.component";
|
|
6
|
-
import { isNullOrEmptyString, isTruthy } from "../utils";
|
|
7
|
-
import { orderBy } from '@progress/kendo-data-query';
|
|
8
|
-
/**
|
|
9
|
-
* @hidden
|
|
10
|
-
*/
|
|
11
|
-
export const expandColumns = (columns) => (columns.reduce((acc, column) => acc.concat(isSpanColumnComponent(column) ? column.childrenArray : [column]), []));
|
|
12
|
-
/**
|
|
13
|
-
* @hidden
|
|
14
|
-
*/
|
|
15
|
-
export const expandColumnsWithSpan = (columns) => (columns.reduce((acc, column) => acc.concat(isSpanColumnComponent(column) ?
|
|
16
|
-
[column].concat(column.childrenArray) :
|
|
17
|
-
[column]), []));
|
|
18
|
-
/**
|
|
19
|
-
* @hidden
|
|
20
|
-
*/
|
|
21
|
-
export const columnsToRender = (columns) => (expandColumns(columns).filter(x => x.isVisible));
|
|
22
|
-
const sumProp = (prop) => (array) => (array || []).reduce((prev, curr) => prev + (curr[prop] || 0), 0);
|
|
23
|
-
/**
|
|
24
|
-
* @hidden
|
|
25
|
-
*/
|
|
26
|
-
export const sumColumnWidths = sumProp('width');
|
|
27
|
-
/**
|
|
28
|
-
* @hidden
|
|
29
|
-
*/
|
|
30
|
-
export const columnsSpan = sumProp('colspan');
|
|
31
|
-
const validField = new RegExp(`^[$A-Z\_a-z][$A-Z\_a-z0-9\\.]*$`);
|
|
32
|
-
/**
|
|
33
|
-
* @hidden
|
|
34
|
-
*/
|
|
35
|
-
export const isValidFieldName = (fieldName) => !isNullOrEmptyString(fieldName) && validField.test(fieldName) &&
|
|
36
|
-
fieldName[0] !== "." && fieldName[fieldName.length - 1] !== ".";
|
|
37
|
-
/**
|
|
38
|
-
* @hidden
|
|
39
|
-
*/
|
|
40
|
-
export const children = column => column.children.filter(child => child !== column);
|
|
41
|
-
/**
|
|
42
|
-
* @hidden
|
|
43
|
-
*/
|
|
44
|
-
export const leafColumns = columns => {
|
|
45
|
-
return columns.reduce((acc, column) => {
|
|
46
|
-
if (column.isColumnGroup) {
|
|
47
|
-
acc = acc.concat(leafColumns(children(column)));
|
|
48
|
-
}
|
|
49
|
-
else if (column.isSpanColumn) {
|
|
50
|
-
acc = acc.concat(column.childrenArray);
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
acc.push(column);
|
|
54
|
-
}
|
|
55
|
-
return acc;
|
|
56
|
-
}, []).filter(x => x.isVisible);
|
|
57
|
-
};
|
|
58
|
-
/**
|
|
59
|
-
* @hidden
|
|
60
|
-
*/
|
|
61
|
-
export const someLeafColumn = (callback, ...columns) => leafColumns(columns).some(callback);
|
|
62
|
-
/**
|
|
63
|
-
* @hidden
|
|
64
|
-
*/
|
|
65
|
-
export const resizableColumns = columns => columns.filter(column => isTruthy(column.resizable) && column.isVisible);
|
|
66
|
-
/**
|
|
67
|
-
* @hidden
|
|
68
|
-
*/
|
|
69
|
-
export const sortColumns = (columns) => orderBy(columns, [{ field: 'orderIndex', dir: 'asc' }]);
|
|
70
|
-
/**
|
|
71
|
-
* @hidden
|
|
72
|
-
*/
|
|
73
|
-
export const isInSpanColumn = (column) => isTruthy(column.parent) && isSpanColumnComponent(column.parent);
|
|
@@ -1,135 +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 { Component, forwardRef, SkipSelf, Host, Optional, QueryList, ContentChildren } from '@angular/core';
|
|
6
|
-
import { IdService } from '../common/id.service';
|
|
7
|
-
import { ColumnBase } from './column-base';
|
|
8
|
-
import { columnsSpan } from './column-common';
|
|
9
|
-
import { ColumnConfigurationErrorMessages } from '../common/error-messages';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "./column-base";
|
|
12
|
-
import * as i2 from "../common/id.service";
|
|
13
|
-
/**
|
|
14
|
-
* @hidden
|
|
15
|
-
*/
|
|
16
|
-
export function isColumnGroupComponent(column) {
|
|
17
|
-
return column.isColumnGroup;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Represents the column group header of the Grid ([more information and examples](slug:multicolumnheaders_columns_grid)).
|
|
21
|
-
*
|
|
22
|
-
* Use this component to group columns under a common header.
|
|
23
|
-
*
|
|
24
|
-
* @example
|
|
25
|
-
* ```html
|
|
26
|
-
* <kendo-grid [data]="gridData">
|
|
27
|
-
* <kendo-grid-column-group title="Product Info">
|
|
28
|
-
* <kendo-grid-column field="ProductID"></kendo-grid-column>
|
|
29
|
-
* <kendo-grid-column field="ProductName"></kendo-grid-column>
|
|
30
|
-
* </kendo-grid-column-group>
|
|
31
|
-
* <kendo-grid-column field="UnitPrice"></kendo-grid-column>
|
|
32
|
-
* </kendo-grid>
|
|
33
|
-
* ```
|
|
34
|
-
*/
|
|
35
|
-
export class ColumnGroupComponent extends ColumnBase {
|
|
36
|
-
parent;
|
|
37
|
-
/**
|
|
38
|
-
* @hidden
|
|
39
|
-
*/
|
|
40
|
-
includeInChooser = false;
|
|
41
|
-
/**
|
|
42
|
-
* @hidden
|
|
43
|
-
*/
|
|
44
|
-
isColumnGroup = true;
|
|
45
|
-
/**
|
|
46
|
-
* @hidden
|
|
47
|
-
*/
|
|
48
|
-
minResizableWidth = 10;
|
|
49
|
-
/**
|
|
50
|
-
* @hidden
|
|
51
|
-
*/
|
|
52
|
-
maxResizableWidth;
|
|
53
|
-
/**
|
|
54
|
-
* @hidden
|
|
55
|
-
*/
|
|
56
|
-
children;
|
|
57
|
-
constructor(parent, idService) {
|
|
58
|
-
super(parent, idService);
|
|
59
|
-
this.parent = parent;
|
|
60
|
-
if (parent && parent.isSpanColumn) {
|
|
61
|
-
throw new Error(ColumnConfigurationErrorMessages.nestedInside('ColumnGroupComponent', 'SpanColumnComponent'));
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* @hidden
|
|
66
|
-
*/
|
|
67
|
-
rowspan() {
|
|
68
|
-
return 1;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* @hidden
|
|
72
|
-
*
|
|
73
|
-
* Used to hide the cellRowspan property from the public API.
|
|
74
|
-
*/
|
|
75
|
-
set cellRowspan(cellRowSpan) {
|
|
76
|
-
super.cellRowspan = cellRowSpan;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* @hidden
|
|
80
|
-
*/
|
|
81
|
-
get colspan() {
|
|
82
|
-
if (!this.children) {
|
|
83
|
-
return 1;
|
|
84
|
-
}
|
|
85
|
-
return columnsSpan(this.children
|
|
86
|
-
.filter(child => child !== this && child.isVisible));
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* @hidden
|
|
90
|
-
*/
|
|
91
|
-
get leafIndex() {
|
|
92
|
-
return this.children ? (this.firstChild || {}).leafIndex : -1;
|
|
93
|
-
}
|
|
94
|
-
get childrenArray() {
|
|
95
|
-
return this.children.filter(c => c !== this);
|
|
96
|
-
}
|
|
97
|
-
get hasChildren() {
|
|
98
|
-
return Boolean(this.firstChild);
|
|
99
|
-
}
|
|
100
|
-
get firstChild() {
|
|
101
|
-
return this.children.find(column => column !== this);
|
|
102
|
-
}
|
|
103
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnGroupComponent, deps: [{ token: i1.ColumnBase, host: true, optional: true, skipSelf: true }, { token: i2.IdService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
104
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ColumnGroupComponent, isStandalone: true, selector: "kendo-grid-column-group", providers: [
|
|
105
|
-
{
|
|
106
|
-
provide: ColumnBase,
|
|
107
|
-
useExisting: forwardRef(() => ColumnGroupComponent)
|
|
108
|
-
}
|
|
109
|
-
], queries: [{ propertyName: "children", predicate: ColumnBase }], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
|
110
|
-
}
|
|
111
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnGroupComponent, decorators: [{
|
|
112
|
-
type: Component,
|
|
113
|
-
args: [{
|
|
114
|
-
providers: [
|
|
115
|
-
{
|
|
116
|
-
provide: ColumnBase,
|
|
117
|
-
useExisting: forwardRef(() => ColumnGroupComponent)
|
|
118
|
-
}
|
|
119
|
-
],
|
|
120
|
-
selector: 'kendo-grid-column-group',
|
|
121
|
-
template: ``,
|
|
122
|
-
standalone: true
|
|
123
|
-
}]
|
|
124
|
-
}], ctorParameters: () => [{ type: i1.ColumnBase, decorators: [{
|
|
125
|
-
type: SkipSelf
|
|
126
|
-
}, {
|
|
127
|
-
type: Host
|
|
128
|
-
}, {
|
|
129
|
-
type: Optional
|
|
130
|
-
}] }, { type: i2.IdService, decorators: [{
|
|
131
|
-
type: Optional
|
|
132
|
-
}] }], propDecorators: { children: [{
|
|
133
|
-
type: ContentChildren,
|
|
134
|
-
args: [ColumnBase]
|
|
135
|
-
}] } });
|