@progress/kendo-angular-spreadsheet 21.4.1 → 22.0.0-develop.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/progress-kendo-angular-spreadsheet.mjs +183 -183
- package/package.json +22 -30
- package/schematics/ngAdd/index.js +2 -2
- package/tools/shared/spreadsheet-command-base.d.ts +1 -1
- package/tools/shared/spreadsheet-dropdown-tools-base.d.ts +1 -1
- package/tools/shared/spreadsheet-dropdownlist.base.d.ts +1 -1
- package/esm2022/action-bar/formula-input.directive.mjs +0 -183
- package/esm2022/action-bar/list.component.mjs +0 -91
- package/esm2022/action-bar/namebox.component.mjs +0 -134
- package/esm2022/common/calendar-editor.component.mjs +0 -48
- package/esm2022/common/error-handling.service.mjs +0 -99
- package/esm2022/common/list-editor.component.mjs +0 -146
- package/esm2022/common/main-menu.directive.mjs +0 -30
- package/esm2022/common/sheet-changes.mjs +0 -5
- package/esm2022/common/spreadsheet.service.mjs +0 -49
- package/esm2022/directives.mjs +0 -94
- package/esm2022/filter-menu/filter-menu-item-content-template.directive.mjs +0 -26
- package/esm2022/filter-menu/filter-menu-item.component.mjs +0 -271
- package/esm2022/index.mjs +0 -14
- package/esm2022/localization/custom-messages.component.mjs +0 -52
- package/esm2022/localization/localized-messages.directive.mjs +0 -35
- package/esm2022/localization/messages.mjs +0 -884
- package/esm2022/localization/spreadsheet-localization.service.mjs +0 -31
- package/esm2022/models/cell-editor-action-args.mjs +0 -5
- package/esm2022/models/cell-editor-options.mjs +0 -5
- package/esm2022/models/events.mjs +0 -5
- package/esm2022/models/filter-menu-item.mjs +0 -5
- package/esm2022/models/index.mjs +0 -11
- package/esm2022/models/main-menu-item.mjs +0 -5
- package/esm2022/models/range-filter-value.mjs +0 -5
- package/esm2022/models/sheet-info.mjs +0 -5
- package/esm2022/package-metadata.mjs +0 -16
- package/esm2022/progress-kendo-angular-spreadsheet.mjs +0 -8
- package/esm2022/sheets-bar/action-dialog.component.mjs +0 -78
- package/esm2022/sheets-bar/sheets-bar.component.mjs +0 -433
- package/esm2022/sheets-bar/utils.mjs +0 -49
- package/esm2022/spreadsheet.component.mjs +0 -2408
- package/esm2022/spreadsheet.module.mjs +0 -72
- package/esm2022/tools/align/align-tool.directive.mjs +0 -62
- package/esm2022/tools/align/horizontal-align-tool.directive.mjs +0 -62
- package/esm2022/tools/align/vertical-align-tool.directive.mjs +0 -62
- package/esm2022/tools/colorpicker/spreadsheet-backcolor.component.mjs +0 -142
- package/esm2022/tools/colorpicker/spreadsheet-forecolor.component.mjs +0 -142
- package/esm2022/tools/data-validation-dialog.component.mjs +0 -481
- package/esm2022/tools/data-validation-tool.directive.mjs +0 -156
- package/esm2022/tools/decrease-decimal-tool.directive.mjs +0 -41
- package/esm2022/tools/filter-sort/filter-tool.directive.mjs +0 -89
- package/esm2022/tools/filter-sort/sort-tool.directive.mjs +0 -62
- package/esm2022/tools/font-family/font-family-dropdownlist.component.mjs +0 -59
- package/esm2022/tools/font-family/spreadsheet-fontfamily-tool.component.mjs +0 -114
- package/esm2022/tools/font-size/decrease-font-tool.directive.mjs +0 -52
- package/esm2022/tools/font-size/font-size-dropdownlist.component.mjs +0 -46
- package/esm2022/tools/font-size/increase-font-tool.directive.mjs +0 -52
- package/esm2022/tools/font-size/spreadsheet-fontsize-tool.component.mjs +0 -114
- package/esm2022/tools/format-tool.directive.mjs +0 -65
- package/esm2022/tools/gridlines-tool.directive.mjs +0 -47
- package/esm2022/tools/history/redo-tool.mjs +0 -37
- package/esm2022/tools/history/undo-tool.mjs +0 -37
- package/esm2022/tools/increase-decimal-tool.directive.mjs +0 -41
- package/esm2022/tools/index.mjs +0 -30
- package/esm2022/tools/insert/insert-link-dialog.component.mjs +0 -53
- package/esm2022/tools/insert/insert-link-tool.directive.mjs +0 -97
- package/esm2022/tools/load-file.component.mjs +0 -226
- package/esm2022/tools/save-file-tool.directive.mjs +0 -58
- package/esm2022/tools/shared/command-icons.mjs +0 -121
- package/esm2022/tools/shared/commands.mjs +0 -5
- package/esm2022/tools/shared/constants.mjs +0 -77
- package/esm2022/tools/shared/dialog-content.component.mjs +0 -130
- package/esm2022/tools/shared/spreadsheet-command-base.mjs +0 -73
- package/esm2022/tools/shared/spreadsheet-command-button.mjs +0 -31
- package/esm2022/tools/shared/spreadsheet-dropdown-tools-base.mjs +0 -194
- package/esm2022/tools/shared/spreadsheet-dropdownlist.base.mjs +0 -54
- package/esm2022/tools/tables/add-column-left-button.directive.mjs +0 -37
- package/esm2022/tools/tables/add-column-right-button.directive.mjs +0 -37
- package/esm2022/tools/tables/add-row-above-button.directive.mjs +0 -37
- package/esm2022/tools/tables/add-row-below-button.directive.mjs +0 -37
- package/esm2022/tools/tables/delete-column-button.directive.mjs +0 -35
- package/esm2022/tools/tables/delete-row-button.directive.mjs +0 -35
- package/esm2022/tools/tables/index.mjs +0 -11
- package/esm2022/tools/tables/merge-tool.directive.mjs +0 -72
- package/esm2022/tools/text-wrap-tool.directive.mjs +0 -48
- package/esm2022/tools/tools.service.mjs +0 -61
- package/esm2022/tools/typographical-emphasis/bold-tool.directive.mjs +0 -37
- package/esm2022/tools/typographical-emphasis/italic-tool.directive.mjs +0 -37
- package/esm2022/tools/typographical-emphasis/underline-tool.directive.mjs +0 -37
- package/esm2022/tools/utils.mjs +0 -35
- package/esm2022/utils.mjs +0 -32
|
@@ -1,58 +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 { Directive } from '@angular/core';
|
|
6
|
-
import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
|
|
7
|
-
import { SpreadsheetService } from '../common/spreadsheet.service';
|
|
8
|
-
import { commandIcons, commandSVGIcons } from './shared/command-icons';
|
|
9
|
-
import { Subscription } from 'rxjs';
|
|
10
|
-
import { saveAs } from '@progress/kendo-file-saver';
|
|
11
|
-
import { Workbook } from '@progress/kendo-ooxml';
|
|
12
|
-
import { SpreadsheetLocalizationService } from '../localization/spreadsheet-localization.service';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
import * as i1 from "@progress/kendo-angular-toolbar";
|
|
15
|
-
import * as i2 from "../localization/spreadsheet-localization.service";
|
|
16
|
-
import * as i3 from "../common/spreadsheet.service";
|
|
17
|
-
/**
|
|
18
|
-
* @hidden
|
|
19
|
-
*/
|
|
20
|
-
export class SpreadsheetSaveFileDirective {
|
|
21
|
-
button;
|
|
22
|
-
localization;
|
|
23
|
-
spreadsheetService;
|
|
24
|
-
subs = new Subscription();
|
|
25
|
-
constructor(button, localization, spreadsheetService) {
|
|
26
|
-
this.button = button;
|
|
27
|
-
this.localization = localization;
|
|
28
|
-
this.spreadsheetService = spreadsheetService;
|
|
29
|
-
}
|
|
30
|
-
ngOnInit() {
|
|
31
|
-
this.button.title = this.localization.get('saveFile');
|
|
32
|
-
this.button.icon = commandIcons['download'];
|
|
33
|
-
this.button.svgIcon = commandSVGIcons['download'];
|
|
34
|
-
this.button.fillMode = 'flat';
|
|
35
|
-
this.subs.add(this.button.click.subscribe(() => {
|
|
36
|
-
const spreadsheet = this.spreadsheetService.spreadsheet;
|
|
37
|
-
if (spreadsheet) {
|
|
38
|
-
spreadsheet.saveAsExcel({
|
|
39
|
-
...spreadsheet.options.excel,
|
|
40
|
-
saveAs,
|
|
41
|
-
Workbook
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
}));
|
|
45
|
-
}
|
|
46
|
-
ngOnDestroy() {
|
|
47
|
-
this.subs.unsubscribe();
|
|
48
|
-
}
|
|
49
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SpreadsheetSaveFileDirective, deps: [{ token: i1.ToolBarButtonComponent }, { token: i2.SpreadsheetLocalizationService }, { token: i3.SpreadsheetService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
50
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: SpreadsheetSaveFileDirective, isStandalone: true, selector: "[kendoSpreadsheetSaveFile]", ngImport: i0 });
|
|
51
|
-
}
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SpreadsheetSaveFileDirective, decorators: [{
|
|
53
|
-
type: Directive,
|
|
54
|
-
args: [{
|
|
55
|
-
selector: '[kendoSpreadsheetSaveFile]',
|
|
56
|
-
standalone: true
|
|
57
|
-
}]
|
|
58
|
-
}], ctorParameters: () => [{ type: i1.ToolBarButtonComponent }, { type: i2.SpreadsheetLocalizationService }, { type: i3.SpreadsheetService }] });
|
|
@@ -1,121 +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 { alignCenterIcon, alignJustifyIcon, alignLeftIcon, alignRightIcon, boldIcon, dropletIcon, foregroundColorIcon, italicIcon, tableColumnDeleteIcon, tableColumnInsertLeftIcon, tableColumnInsertRightIcon, tableRowDeleteIcon, tableRowInsertAboveIcon, tableRowInsertBelowIcon, underlineIcon, arrowRotateCcwIcon, arrowRotateCwIcon, bordersNoneIcon, alignTopIcon, alignMiddleIcon, alignBottomIcon, textWrapIcon, folderOpenIcon, downloadIcon, customFormatIcon, fontSizeIcon, fontFamilyIcon, cellsMergeHorizontallyIcon, cellsMergeIcon, cellsMergeVerticallyIcon, tableUnmergeIcon, linkIcon, fontGrowIcon, fontShrinkIcon, decimalDecreaseIcon, decimalIncreaseIcon, copyIcon, cutIcon, clipboardIcon, eyeSlashIcon, eyeIcon, exclamationCircleIcon, filterIcon, sortAscIcon, sortDescIcon, sortClearIcon } from '@progress/kendo-svg-icons';
|
|
6
|
-
/**
|
|
7
|
-
* @hidden
|
|
8
|
-
*/
|
|
9
|
-
export const commandIcons = {
|
|
10
|
-
alignCenter: 'align-center',
|
|
11
|
-
alignJustify: 'align-justify',
|
|
12
|
-
alignLeft: 'align-left',
|
|
13
|
-
alignRight: 'align-right',
|
|
14
|
-
alignTop: 'align-top',
|
|
15
|
-
alignMiddle: 'align-middle',
|
|
16
|
-
alignBottom: 'align-bottom',
|
|
17
|
-
align: 'align-left',
|
|
18
|
-
alignHorizontal: 'align-left',
|
|
19
|
-
alignVertical: 'align-middle',
|
|
20
|
-
background: 'droplet',
|
|
21
|
-
bold: 'bold',
|
|
22
|
-
color: 'foreground-color',
|
|
23
|
-
italic: 'italic',
|
|
24
|
-
redo: 'arrow-rotate-cw',
|
|
25
|
-
underline: 'underline',
|
|
26
|
-
undo: 'arrow-rotate-ccw',
|
|
27
|
-
wrap: 'text-wrap',
|
|
28
|
-
addColumnLeft: 'table-column-insert-left',
|
|
29
|
-
addColumnRight: 'table-column-insert-right',
|
|
30
|
-
addRowAbove: 'table-row-insert-above',
|
|
31
|
-
addRowBelow: 'table-row-insert-below',
|
|
32
|
-
deleteRow: 'table-row-delete',
|
|
33
|
-
deleteColumn: 'table-column-delete',
|
|
34
|
-
gridLines: 'borders-none',
|
|
35
|
-
folderOpen: 'folder-open',
|
|
36
|
-
download: 'download',
|
|
37
|
-
format: 'custom-format',
|
|
38
|
-
fontSize: 'font-size',
|
|
39
|
-
fontFamily: 'font-family',
|
|
40
|
-
merge: 'cells-merge',
|
|
41
|
-
mergeAll: 'cells-merge',
|
|
42
|
-
mergeHorizontally: 'cells-merge-horizontally',
|
|
43
|
-
mergeVertically: 'cells-merge-vertically',
|
|
44
|
-
unmerge: 'table-unmerge',
|
|
45
|
-
insertLink: 'hyperlink',
|
|
46
|
-
increaseFontSize: 'font-grow',
|
|
47
|
-
decreaseFontSize: 'font-shrink',
|
|
48
|
-
increaseDecimal: 'decimal-increase',
|
|
49
|
-
decreaseDecimal: 'decimal-decrease',
|
|
50
|
-
dataValidation: 'exclamation-circle',
|
|
51
|
-
copy: 'copy',
|
|
52
|
-
cut: 'cut',
|
|
53
|
-
paste: 'clipboard',
|
|
54
|
-
hideRow: 'eye-slash',
|
|
55
|
-
unhideRow: 'eye',
|
|
56
|
-
hideColumn: 'eye-slash',
|
|
57
|
-
unhideColumn: 'eye',
|
|
58
|
-
filter: 'filter',
|
|
59
|
-
sort: 'sort-asc',
|
|
60
|
-
sortAsc: 'sort-asc',
|
|
61
|
-
sortDesc: 'sort-desc',
|
|
62
|
-
unsort: 'sort-clear'
|
|
63
|
-
};
|
|
64
|
-
/**
|
|
65
|
-
* @hidden
|
|
66
|
-
*/
|
|
67
|
-
export const commandSVGIcons = {
|
|
68
|
-
alignCenter: alignCenterIcon,
|
|
69
|
-
alignJustify: alignJustifyIcon,
|
|
70
|
-
alignLeft: alignLeftIcon,
|
|
71
|
-
alignRight: alignRightIcon,
|
|
72
|
-
alignTop: alignTopIcon,
|
|
73
|
-
alignMiddle: alignMiddleIcon,
|
|
74
|
-
alignBottom: alignBottomIcon,
|
|
75
|
-
align: alignLeftIcon,
|
|
76
|
-
alignHorizontal: alignLeftIcon,
|
|
77
|
-
alignVertical: alignMiddleIcon,
|
|
78
|
-
background: dropletIcon,
|
|
79
|
-
bold: boldIcon,
|
|
80
|
-
color: foregroundColorIcon,
|
|
81
|
-
italic: italicIcon,
|
|
82
|
-
redo: arrowRotateCwIcon,
|
|
83
|
-
underline: underlineIcon,
|
|
84
|
-
undo: arrowRotateCcwIcon,
|
|
85
|
-
wrap: textWrapIcon,
|
|
86
|
-
addColumnLeft: tableColumnInsertLeftIcon,
|
|
87
|
-
addColumnRight: tableColumnInsertRightIcon,
|
|
88
|
-
addRowAbove: tableRowInsertAboveIcon,
|
|
89
|
-
addRowBelow: tableRowInsertBelowIcon,
|
|
90
|
-
deleteRow: tableRowDeleteIcon,
|
|
91
|
-
deleteColumn: tableColumnDeleteIcon,
|
|
92
|
-
gridLines: bordersNoneIcon,
|
|
93
|
-
folderOpen: folderOpenIcon,
|
|
94
|
-
download: downloadIcon,
|
|
95
|
-
format: customFormatIcon,
|
|
96
|
-
fontSize: fontSizeIcon,
|
|
97
|
-
fontFamily: fontFamilyIcon,
|
|
98
|
-
merge: cellsMergeIcon,
|
|
99
|
-
mergeAll: cellsMergeIcon,
|
|
100
|
-
mergeHorizontally: cellsMergeHorizontallyIcon,
|
|
101
|
-
mergeVertically: cellsMergeVerticallyIcon,
|
|
102
|
-
unmerge: tableUnmergeIcon,
|
|
103
|
-
insertLink: linkIcon,
|
|
104
|
-
increaseFontSize: fontGrowIcon,
|
|
105
|
-
decreaseFontSize: fontShrinkIcon,
|
|
106
|
-
decreaseDecimal: decimalDecreaseIcon,
|
|
107
|
-
dataValidation: exclamationCircleIcon,
|
|
108
|
-
increaseDecimal: decimalIncreaseIcon,
|
|
109
|
-
copy: copyIcon,
|
|
110
|
-
cut: cutIcon,
|
|
111
|
-
paste: clipboardIcon,
|
|
112
|
-
hideRow: eyeSlashIcon,
|
|
113
|
-
unhideRow: eyeIcon,
|
|
114
|
-
hideColumn: eyeSlashIcon,
|
|
115
|
-
unhideColumn: eyeIcon,
|
|
116
|
-
filter: filterIcon,
|
|
117
|
-
sort: sortAscIcon,
|
|
118
|
-
sortAsc: sortAscIcon,
|
|
119
|
-
sortDesc: sortDescIcon,
|
|
120
|
-
unsort: sortClearIcon
|
|
121
|
-
};
|
|
@@ -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,77 +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 { InjectionToken } from "@angular/core";
|
|
6
|
-
import { commandIcons, commandSVGIcons } from './command-icons';
|
|
7
|
-
const DEFAULT_FONT_FAMILY = 'Arial';
|
|
8
|
-
const DEFAULT_FONT_SIZE = 12;
|
|
9
|
-
/**
|
|
10
|
-
* @hidden
|
|
11
|
-
*/
|
|
12
|
-
export const DEFAULT_FONT_VALUES = {
|
|
13
|
-
fontSize: DEFAULT_FONT_SIZE,
|
|
14
|
-
fontFamily: DEFAULT_FONT_FAMILY
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* @hidden
|
|
18
|
-
*/
|
|
19
|
-
export const FONT_FAMILIES = ['Arial', 'Courier New', 'Georgia', 'Times New Roman', 'Trebuchet MS', 'Verdana'];
|
|
20
|
-
/**
|
|
21
|
-
* @hidden
|
|
22
|
-
*/
|
|
23
|
-
export const FONT_SIZES = [8, 9, 10, 11, 12, 13, 14, 16, 18, 20, 22, 24, 26, 28, 36, 48, 72];
|
|
24
|
-
/**
|
|
25
|
-
* @hidden
|
|
26
|
-
*/
|
|
27
|
-
export const FONT_DATA = {
|
|
28
|
-
fontFamily: FONT_FAMILIES,
|
|
29
|
-
fontSize: FONT_SIZES
|
|
30
|
-
};
|
|
31
|
-
/**
|
|
32
|
-
* @hidden
|
|
33
|
-
*/
|
|
34
|
-
export const FORMATS = [
|
|
35
|
-
{ text: 'Automatic', value: null },
|
|
36
|
-
{ text: 'Text', value: '@' },
|
|
37
|
-
{ text: 'Number', value: '#,0.00' },
|
|
38
|
-
{ text: 'Percent', value: '0.00%' },
|
|
39
|
-
{ text: 'Financial', value: '_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)' },
|
|
40
|
-
{ text: 'Currency', value: '$#,##0.00;[Red]$#,##0.00' },
|
|
41
|
-
{ text: 'Date', value: 'm/d/yyyy' },
|
|
42
|
-
{ text: 'Time', value: 'h:mm:ss AM/PM' },
|
|
43
|
-
{ text: 'Date time', value: 'm/d/yyyy h:mm' },
|
|
44
|
-
{ text: 'Duration', value: '[h]:mm:ss' }
|
|
45
|
-
];
|
|
46
|
-
/**
|
|
47
|
-
* @hidden
|
|
48
|
-
*/
|
|
49
|
-
export const ALIGNS = [
|
|
50
|
-
{ icon: commandIcons.alignLeft, svgIcon: commandSVGIcons.alignLeft, textKey: 'Align Left', commandName: 'textAlign', value: 'left', cssClass: '', commandId: 'alignLeft' },
|
|
51
|
-
{ icon: commandIcons.alignCenter, svgIcon: commandSVGIcons.alignCenter, textKey: 'Align Center', commandName: 'textAlign', value: 'center', cssClass: '', commandId: 'alignCenter' },
|
|
52
|
-
{ icon: commandIcons.alignRight, svgIcon: commandSVGIcons.alignRight, textKey: 'Align Right', commandName: 'textAlign', value: 'right', cssClass: '', commandId: 'alignRight' },
|
|
53
|
-
{ icon: commandIcons.alignJustify, svgIcon: commandSVGIcons.alignJustify, textKey: 'Align Justify', commandName: 'textAlign', value: 'justify', cssClass: '', commandId: 'alignJustify' },
|
|
54
|
-
{ icon: commandIcons.alignTop, svgIcon: commandSVGIcons.alignTop, textKey: 'Align Top', commandName: 'verticalAlign', value: 'top', cssClass: '', commandId: 'alignTop' },
|
|
55
|
-
{ icon: commandIcons.alignMiddle, svgIcon: commandSVGIcons.alignMiddle, textKey: 'Align Middle', commandName: 'verticalAlign', value: 'center', cssClass: '', commandId: 'alignMiddle' },
|
|
56
|
-
{ icon: commandIcons.alignBottom, svgIcon: commandSVGIcons.alignBottom, textKey: 'Align Bottom', commandName: 'verticalAlign', value: 'bottom', cssClass: '', commandId: 'alignBottom' }
|
|
57
|
-
];
|
|
58
|
-
/**
|
|
59
|
-
* @hidden
|
|
60
|
-
*/
|
|
61
|
-
export const MERGE = [
|
|
62
|
-
{ icon: commandIcons.mergeAll, svgIcon: commandSVGIcons.mergeAll, textKey: 'Merge all', commandName: 'cells', value: 'cells', disabled: false, commandId: 'mergeAll' },
|
|
63
|
-
{ icon: commandIcons.mergeHorizontally, svgIcon: commandSVGIcons.mergeHorizontally, textKey: 'Merge horizontally', commandName: 'horizontally', value: 'horizontally', disabled: false, commandId: 'mergeHorizontally' },
|
|
64
|
-
{ icon: commandIcons.mergeVertically, svgIcon: commandSVGIcons.mergeVertically, textKey: 'Merge vertically', commandName: 'vertically', value: 'vertically', disabled: false, commandId: 'mergeVertically' },
|
|
65
|
-
{ icon: commandIcons.unmerge, svgIcon: commandSVGIcons.unmerge, textKey: 'Unmerge', commandName: 'unmerge', value: 'unmerge', disabled: false, commandId: 'unmerge' }
|
|
66
|
-
];
|
|
67
|
-
/**
|
|
68
|
-
* @hidden
|
|
69
|
-
*/
|
|
70
|
-
export const SORT = [
|
|
71
|
-
{ icon: commandIcons.sortAsc, svgIcon: commandSVGIcons.sortAsc, textKey: 'Sort range A to Z', commandName: 'sortAsc', value: 'asc', disabled: false, commandId: 'sortAsc' },
|
|
72
|
-
{ icon: commandIcons.sortDesc, svgIcon: commandSVGIcons.sortDesc, textKey: 'Sort range Z to A', commandName: 'sortDesc', value: 'desc', disabled: false, commandId: 'sortDesc' }
|
|
73
|
-
];
|
|
74
|
-
/**
|
|
75
|
-
* @hidden
|
|
76
|
-
*/
|
|
77
|
-
export const MY_TOKEN = new InjectionToken('COMMAND_TOKEN');
|
|
@@ -1,130 +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 } from '@angular/core';
|
|
6
|
-
import { DialogRef, DialogContentBase } from '@progress/kendo-angular-dialog';
|
|
7
|
-
import { ColorPickerComponent } from '@progress/kendo-angular-inputs';
|
|
8
|
-
import { FontSizeDropDownListComponent } from '../font-size/font-size-dropdownlist.component';
|
|
9
|
-
import { FontFamilyDropDownListComponent } from '../font-family/font-family-dropdownlist.component';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "@progress/kendo-angular-dialog";
|
|
12
|
-
/**
|
|
13
|
-
* @hidden
|
|
14
|
-
*/
|
|
15
|
-
export class DialogContentComponent extends DialogContentBase {
|
|
16
|
-
dialog;
|
|
17
|
-
data = [];
|
|
18
|
-
value;
|
|
19
|
-
tabindex;
|
|
20
|
-
componentType;
|
|
21
|
-
title;
|
|
22
|
-
constructor(dialog) {
|
|
23
|
-
super(dialog);
|
|
24
|
-
this.dialog = dialog;
|
|
25
|
-
}
|
|
26
|
-
setData(args) {
|
|
27
|
-
this.data = args.data;
|
|
28
|
-
this.value = args.value;
|
|
29
|
-
this.tabindex = args.tabindex;
|
|
30
|
-
this.componentType = args.componentType;
|
|
31
|
-
}
|
|
32
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DialogContentComponent, deps: [{ token: i1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DialogContentComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
34
|
-
<div
|
|
35
|
-
class="k-d-flex k-align-items-center k-justify-content-center">
|
|
36
|
-
@switch (componentType) {
|
|
37
|
-
@case ('fontFamily') {
|
|
38
|
-
<kendo-spreadsheet-fontfamily-dropdownlist
|
|
39
|
-
[data]="data"
|
|
40
|
-
[(value)]="value"
|
|
41
|
-
[attr.title]="title"
|
|
42
|
-
[tabindex]="tabindex"
|
|
43
|
-
[style.width.em]="13"
|
|
44
|
-
></kendo-spreadsheet-fontfamily-dropdownlist>
|
|
45
|
-
}
|
|
46
|
-
@case ('fontSize') {
|
|
47
|
-
<kendo-spreadsheet-fontsize-dropdownlist
|
|
48
|
-
[data]="data"
|
|
49
|
-
[(value)]="value"
|
|
50
|
-
[attr.title]="title"
|
|
51
|
-
[tabindex]="tabindex"
|
|
52
|
-
[style.width.em]="13"
|
|
53
|
-
></kendo-spreadsheet-fontsize-dropdownlist>
|
|
54
|
-
}
|
|
55
|
-
@case ('color') {
|
|
56
|
-
<kendo-colorpicker
|
|
57
|
-
[attr.title]="title"
|
|
58
|
-
[format]="'hex'"
|
|
59
|
-
[(value)]="value"
|
|
60
|
-
[tabindex]="tabindex"
|
|
61
|
-
[clearButton]="false"
|
|
62
|
-
fillMode="flat"
|
|
63
|
-
></kendo-colorpicker>
|
|
64
|
-
}
|
|
65
|
-
@case ('background') {
|
|
66
|
-
<kendo-colorpicker
|
|
67
|
-
[attr.title]="title"
|
|
68
|
-
[format]="'hex'"
|
|
69
|
-
[(value)]="value"
|
|
70
|
-
[tabindex]="tabindex"
|
|
71
|
-
[clearButton]="false"
|
|
72
|
-
fillMode="flat"
|
|
73
|
-
></kendo-colorpicker>
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
</div>
|
|
77
|
-
`, isInline: true, dependencies: [{ kind: "component", type: FontFamilyDropDownListComponent, selector: "kendo-spreadsheet-fontfamily-dropdownlist" }, { kind: "component", type: FontSizeDropDownListComponent, selector: "kendo-spreadsheet-fontsize-dropdownlist" }, { kind: "component", type: ColorPickerComponent, selector: "kendo-colorpicker", inputs: ["views", "view", "adaptiveMode", "activeView", "readonly", "disabled", "format", "value", "popupSettings", "paletteSettings", "gradientSettings", "icon", "iconClass", "svgIcon", "adaptiveTitle", "adaptiveSubtitle", "clearButton", "tabindex", "preview", "actionsLayout", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur", "cancel", "activeColorClick", "clearButtonClick", "activeViewChange"], exportAs: ["kendoColorPicker"] }] });
|
|
78
|
-
}
|
|
79
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DialogContentComponent, decorators: [{
|
|
80
|
-
type: Component,
|
|
81
|
-
args: [{
|
|
82
|
-
template: `
|
|
83
|
-
<div
|
|
84
|
-
class="k-d-flex k-align-items-center k-justify-content-center">
|
|
85
|
-
@switch (componentType) {
|
|
86
|
-
@case ('fontFamily') {
|
|
87
|
-
<kendo-spreadsheet-fontfamily-dropdownlist
|
|
88
|
-
[data]="data"
|
|
89
|
-
[(value)]="value"
|
|
90
|
-
[attr.title]="title"
|
|
91
|
-
[tabindex]="tabindex"
|
|
92
|
-
[style.width.em]="13"
|
|
93
|
-
></kendo-spreadsheet-fontfamily-dropdownlist>
|
|
94
|
-
}
|
|
95
|
-
@case ('fontSize') {
|
|
96
|
-
<kendo-spreadsheet-fontsize-dropdownlist
|
|
97
|
-
[data]="data"
|
|
98
|
-
[(value)]="value"
|
|
99
|
-
[attr.title]="title"
|
|
100
|
-
[tabindex]="tabindex"
|
|
101
|
-
[style.width.em]="13"
|
|
102
|
-
></kendo-spreadsheet-fontsize-dropdownlist>
|
|
103
|
-
}
|
|
104
|
-
@case ('color') {
|
|
105
|
-
<kendo-colorpicker
|
|
106
|
-
[attr.title]="title"
|
|
107
|
-
[format]="'hex'"
|
|
108
|
-
[(value)]="value"
|
|
109
|
-
[tabindex]="tabindex"
|
|
110
|
-
[clearButton]="false"
|
|
111
|
-
fillMode="flat"
|
|
112
|
-
></kendo-colorpicker>
|
|
113
|
-
}
|
|
114
|
-
@case ('background') {
|
|
115
|
-
<kendo-colorpicker
|
|
116
|
-
[attr.title]="title"
|
|
117
|
-
[format]="'hex'"
|
|
118
|
-
[(value)]="value"
|
|
119
|
-
[tabindex]="tabindex"
|
|
120
|
-
[clearButton]="false"
|
|
121
|
-
fillMode="flat"
|
|
122
|
-
></kendo-colorpicker>
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
</div>
|
|
126
|
-
`,
|
|
127
|
-
standalone: true,
|
|
128
|
-
imports: [FontFamilyDropDownListComponent, FontSizeDropDownListComponent, ColorPickerComponent]
|
|
129
|
-
}]
|
|
130
|
-
}], ctorParameters: () => [{ type: i1.DialogRef }] });
|
|
@@ -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 { Subscription } from 'rxjs';
|
|
6
|
-
import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
|
|
7
|
-
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
8
|
-
import { SpreadsheetService } from '../../common/spreadsheet.service';
|
|
9
|
-
import { Directive, Inject } from '@angular/core';
|
|
10
|
-
import { SpreadsheetToolsService } from '../tools.service';
|
|
11
|
-
import { commandIcons, commandSVGIcons } from './command-icons';
|
|
12
|
-
import { MY_TOKEN } from './constants';
|
|
13
|
-
import { take } from 'rxjs/operators';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
import * as i1 from "@progress/kendo-angular-toolbar";
|
|
16
|
-
import * as i2 from "@progress/kendo-angular-l10n";
|
|
17
|
-
import * as i3 from "../../common/spreadsheet.service";
|
|
18
|
-
import * as i4 from "../tools.service";
|
|
19
|
-
/**
|
|
20
|
-
* @hidden
|
|
21
|
-
*/
|
|
22
|
-
export class SpreadsheetCommandBaseDirective {
|
|
23
|
-
command;
|
|
24
|
-
button;
|
|
25
|
-
localization;
|
|
26
|
-
spreadsheetService;
|
|
27
|
-
toolsService;
|
|
28
|
-
subs = new Subscription();
|
|
29
|
-
constructor(command, button, localization, spreadsheetService, toolsService) {
|
|
30
|
-
this.command = command;
|
|
31
|
-
this.button = button;
|
|
32
|
-
this.localization = localization;
|
|
33
|
-
this.spreadsheetService = spreadsheetService;
|
|
34
|
-
this.toolsService = toolsService;
|
|
35
|
-
const text = this.localization.get(this.command);
|
|
36
|
-
if (text) {
|
|
37
|
-
this.button.showText = 'menu';
|
|
38
|
-
this.button.showIcon = 'always';
|
|
39
|
-
this.button.text = text;
|
|
40
|
-
}
|
|
41
|
-
if (!this.button.toolbarOptions.icon) {
|
|
42
|
-
this.button.icon = commandIcons[this.command];
|
|
43
|
-
}
|
|
44
|
-
if (!this.button.toolbarOptions.svgIcon) {
|
|
45
|
-
this.button.svgIcon = commandSVGIcons[this.command];
|
|
46
|
-
}
|
|
47
|
-
this.button.title = text;
|
|
48
|
-
this.button.fillMode = 'flat';
|
|
49
|
-
this.subs.add(this.toolsService.stateChange.subscribe(state => {
|
|
50
|
-
this.toolsService.ngZone.onStable.pipe(take(1)).subscribe(() => this.button.selected = state[command]);
|
|
51
|
-
}));
|
|
52
|
-
}
|
|
53
|
-
ngOnInit() {
|
|
54
|
-
this.subs.add(this.button.click.subscribe((this.clickHandler.bind(this))));
|
|
55
|
-
this.subs.add(this.button.pointerdown.subscribe((this.pointerdownHandler.bind(this))));
|
|
56
|
-
}
|
|
57
|
-
ngOnDestroy() {
|
|
58
|
-
this.subs.unsubscribe();
|
|
59
|
-
}
|
|
60
|
-
clickHandler() { }
|
|
61
|
-
pointerdownHandler(_event) { }
|
|
62
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SpreadsheetCommandBaseDirective, deps: [{ token: MY_TOKEN }, { token: i1.ToolBarButtonComponent }, { token: i2.LocalizationService }, { token: i3.SpreadsheetService }, { token: i4.SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
63
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: SpreadsheetCommandBaseDirective, selector: "[kendoSpreadsheetCommandBase]", ngImport: i0 });
|
|
64
|
-
}
|
|
65
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SpreadsheetCommandBaseDirective, decorators: [{
|
|
66
|
-
type: Directive,
|
|
67
|
-
args: [{
|
|
68
|
-
selector: '[kendoSpreadsheetCommandBase]'
|
|
69
|
-
}]
|
|
70
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
71
|
-
type: Inject,
|
|
72
|
-
args: [MY_TOKEN]
|
|
73
|
-
}] }, { type: i1.ToolBarButtonComponent }, { type: i2.LocalizationService }, { type: i3.SpreadsheetService }, { type: i4.SpreadsheetToolsService }] });
|
|
@@ -1,31 +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 { SpreadsheetCommandBaseDirective } from './spreadsheet-command-base';
|
|
6
|
-
/**
|
|
7
|
-
* @hidden
|
|
8
|
-
*/
|
|
9
|
-
export class SpreadsheetCommandButton extends SpreadsheetCommandBaseDirective {
|
|
10
|
-
command;
|
|
11
|
-
button;
|
|
12
|
-
localization;
|
|
13
|
-
spreadsheetService;
|
|
14
|
-
toolsService;
|
|
15
|
-
commandOptions;
|
|
16
|
-
constructor(command, button, localization, spreadsheetService, toolsService, commandOptions) {
|
|
17
|
-
super(command, button, localization, spreadsheetService, toolsService);
|
|
18
|
-
this.command = command;
|
|
19
|
-
this.button = button;
|
|
20
|
-
this.localization = localization;
|
|
21
|
-
this.spreadsheetService = spreadsheetService;
|
|
22
|
-
this.toolsService = toolsService;
|
|
23
|
-
this.commandOptions = commandOptions;
|
|
24
|
-
}
|
|
25
|
-
clickHandler() {
|
|
26
|
-
if (this.commandOptions.command === 'PropertyChangeCommand') {
|
|
27
|
-
this.commandOptions.options.value = !this.toolsService.toolsState[this.command];
|
|
28
|
-
}
|
|
29
|
-
this.spreadsheetService.spreadsheet.executeCommand(this.commandOptions);
|
|
30
|
-
}
|
|
31
|
-
}
|