@progress/kendo-angular-spreadsheet 13.6.0-develop.6
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/LICENSE.md +11 -0
- package/NOTICE.txt +654 -0
- package/README.md +32 -0
- package/action-bar/formula-input.directive.d.ts +33 -0
- package/action-bar/list.component.d.ts +23 -0
- package/action-bar/namebox.component.d.ts +30 -0
- package/common/main-menu.directive.d.ts +17 -0
- package/common/sheet-changes.d.ts +23 -0
- package/common/spreadsheet.service.d.ts +28 -0
- package/esm2020/action-bar/formula-input.directive.mjs +142 -0
- package/esm2020/action-bar/list.component.mjs +75 -0
- package/esm2020/action-bar/namebox.component.mjs +110 -0
- package/esm2020/common/main-menu.directive.mjs +25 -0
- package/esm2020/common/sheet-changes.mjs +5 -0
- package/esm2020/common/spreadsheet.service.mjs +42 -0
- package/esm2020/index.mjs +12 -0
- package/esm2020/localization/custom-messages.component.mjs +42 -0
- package/esm2020/localization/localized-messages.directive.mjs +33 -0
- package/esm2020/localization/messages.mjs +80 -0
- package/esm2020/localization/spreadsheet-localization.service.mjs +31 -0
- package/esm2020/models/events.mjs +5 -0
- package/esm2020/models/index.mjs +7 -0
- package/esm2020/models/main-menu-item.mjs +5 -0
- package/esm2020/models/sheet-info.mjs +5 -0
- package/esm2020/package-metadata.mjs +15 -0
- package/esm2020/progress-kendo-angular-spreadsheet.mjs +8 -0
- package/esm2020/sheets-bar/action-dialog.component.mjs +68 -0
- package/esm2020/sheets-bar/remove.directive.mjs +25 -0
- package/esm2020/sheets-bar/sheets-bar.component.mjs +278 -0
- package/esm2020/sheets-bar/utils.mjs +45 -0
- package/esm2020/spreadsheet.component.mjs +725 -0
- package/esm2020/spreadsheet.module.mjs +235 -0
- package/esm2020/tools/align-tool.directive.mjs +58 -0
- package/esm2020/tools/colorpicker/spreadsheet-backcolor.component.mjs +98 -0
- package/esm2020/tools/colorpicker/spreadsheet-forecolor.component.mjs +98 -0
- package/esm2020/tools/font-family/font-family-dropdownlist.component.mjs +57 -0
- package/esm2020/tools/font-family/spreadsheet-fontfamily-tool.component.mjs +92 -0
- package/esm2020/tools/font-size/font-size-dropdownlist.component.mjs +42 -0
- package/esm2020/tools/font-size/spreadsheet-fontsize-tool.component.mjs +92 -0
- package/esm2020/tools/format-tool.directive.mjs +61 -0
- package/esm2020/tools/gridlines-tool.directive.mjs +46 -0
- package/esm2020/tools/history/redo-tool.mjs +36 -0
- package/esm2020/tools/history/undo-tool.mjs +36 -0
- package/esm2020/tools/index.mjs +20 -0
- package/esm2020/tools/load-file.component.mjs +186 -0
- package/esm2020/tools/save-file-tool.directive.mjs +52 -0
- package/esm2020/tools/shared/command-icons.mjs +71 -0
- package/esm2020/tools/shared/commands.mjs +5 -0
- package/esm2020/tools/shared/constants.mjs +61 -0
- package/esm2020/tools/shared/dialog-content.component.mjs +114 -0
- package/esm2020/tools/shared/spreadsheet-command-base.mjs +75 -0
- package/esm2020/tools/shared/spreadsheet-command-button.mjs +25 -0
- package/esm2020/tools/shared/spreadsheet-dropdown-tools-base.mjs +184 -0
- package/esm2020/tools/shared/spreadsheet-dropdownlist.base.mjs +50 -0
- package/esm2020/tools/tables/add-column-left-button.directive.mjs +36 -0
- package/esm2020/tools/tables/add-column-right-button.directive.mjs +36 -0
- package/esm2020/tools/tables/add-row-above-button.directive.mjs +36 -0
- package/esm2020/tools/tables/add-row-below-button.directive.mjs +36 -0
- package/esm2020/tools/tables/delete-column-button.directive.mjs +34 -0
- package/esm2020/tools/tables/delete-row-button.directive.mjs +34 -0
- package/esm2020/tools/tables/index.mjs +10 -0
- package/esm2020/tools/text-wrap-tool.directive.mjs +47 -0
- package/esm2020/tools/tools.service.mjs +60 -0
- package/esm2020/tools/typographical-emphasis/bold-tool.directive.mjs +36 -0
- package/esm2020/tools/typographical-emphasis/italic-tool.directive.mjs +36 -0
- package/esm2020/tools/typographical-emphasis/underline-tool.directive.mjs +36 -0
- package/esm2020/tools/utils.mjs +13 -0
- package/esm2020/utils.mjs +25 -0
- package/fesm2015/progress-kendo-angular-spreadsheet.mjs +3372 -0
- package/fesm2020/progress-kendo-angular-spreadsheet.mjs +3382 -0
- package/index.d.ts +13 -0
- package/localization/custom-messages.component.d.ts +18 -0
- package/localization/localized-messages.directive.d.ts +16 -0
- package/localization/messages.d.ts +133 -0
- package/localization/spreadsheet-localization.service.d.ts +14 -0
- package/models/events.d.ts +65 -0
- package/models/index.d.ts +7 -0
- package/models/main-menu-item.d.ts +19 -0
- package/models/sheet-info.d.ts +26 -0
- package/package-metadata.d.ts +9 -0
- package/package.json +65 -0
- package/progress-kendo-angular-spreadsheet.d.ts +9 -0
- package/schematics/collection.json +12 -0
- package/schematics/ngAdd/index.js +13 -0
- package/schematics/ngAdd/schema.json +24 -0
- package/sheets-bar/action-dialog.component.d.ts +19 -0
- package/sheets-bar/remove.directive.d.ts +13 -0
- package/sheets-bar/sheets-bar.component.d.ts +53 -0
- package/sheets-bar/utils.d.ts +10 -0
- package/spreadsheet.component.d.ts +176 -0
- package/spreadsheet.module.d.ts +62 -0
- package/tools/align-tool.directive.d.ts +25 -0
- package/tools/colorpicker/spreadsheet-backcolor.component.d.ts +20 -0
- package/tools/colorpicker/spreadsheet-forecolor.component.d.ts +20 -0
- package/tools/font-family/font-family-dropdownlist.component.d.ts +13 -0
- package/tools/font-family/spreadsheet-fontfamily-tool.component.d.ts +24 -0
- package/tools/font-size/font-size-dropdownlist.component.d.ts +13 -0
- package/tools/font-size/spreadsheet-fontsize-tool.component.d.ts +24 -0
- package/tools/format-tool.directive.d.ts +36 -0
- package/tools/gridlines-tool.directive.d.ts +19 -0
- package/tools/history/redo-tool.d.ts +19 -0
- package/tools/history/undo-tool.d.ts +19 -0
- package/tools/index.d.ts +20 -0
- package/tools/load-file.component.d.ts +41 -0
- package/tools/save-file-tool.directive.d.ts +22 -0
- package/tools/shared/command-icons.d.ts +14 -0
- package/tools/shared/commands.d.ts +8 -0
- package/tools/shared/constants.d.ts +50 -0
- package/tools/shared/dialog-content.component.d.ts +21 -0
- package/tools/shared/spreadsheet-command-base.d.ts +29 -0
- package/tools/shared/spreadsheet-command-button.d.ts +23 -0
- package/tools/shared/spreadsheet-dropdown-tools-base.d.ts +76 -0
- package/tools/shared/spreadsheet-dropdownlist.base.d.ts +25 -0
- package/tools/tables/add-column-left-button.directive.d.ts +18 -0
- package/tools/tables/add-column-right-button.directive.d.ts +18 -0
- package/tools/tables/add-row-above-button.directive.d.ts +18 -0
- package/tools/tables/add-row-below-button.directive.d.ts +18 -0
- package/tools/tables/delete-column-button.directive.d.ts +18 -0
- package/tools/tables/delete-row-button.directive.d.ts +18 -0
- package/tools/tables/index.d.ts +10 -0
- package/tools/text-wrap-tool.directive.d.ts +19 -0
- package/tools/tools.service.d.ts +21 -0
- package/tools/typographical-emphasis/bold-tool.directive.d.ts +18 -0
- package/tools/typographical-emphasis/italic-tool.directive.d.ts +18 -0
- package/tools/typographical-emphasis/underline-tool.directive.d.ts +18 -0
- package/tools/utils.d.ts +8 -0
- package/utils.d.ts +9 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 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, forwardRef } from '@angular/core';
|
|
6
|
+
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
|
+
import { MessagesDirective } from './messages';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@progress/kendo-angular-l10n";
|
|
10
|
+
/**
|
|
11
|
+
* Custom component messages override default component messages
|
|
12
|
+
* ([see example]({% slug globalization_spreadsheet %}#toc-localization)).
|
|
13
|
+
*/
|
|
14
|
+
export class CustomMessagesComponent extends MessagesDirective {
|
|
15
|
+
constructor(service) {
|
|
16
|
+
super();
|
|
17
|
+
this.service = service;
|
|
18
|
+
}
|
|
19
|
+
get override() {
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
CustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
24
|
+
CustomMessagesComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: CustomMessagesComponent, selector: "kendo-spreadsheet-messages", providers: [
|
|
25
|
+
{
|
|
26
|
+
provide: MessagesDirective,
|
|
27
|
+
useExisting: forwardRef(() => CustomMessagesComponent)
|
|
28
|
+
}
|
|
29
|
+
], usesInheritance: true, ngImport: i0 });
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CustomMessagesComponent, decorators: [{
|
|
31
|
+
type: Directive,
|
|
32
|
+
args: [{
|
|
33
|
+
providers: [
|
|
34
|
+
{
|
|
35
|
+
provide: MessagesDirective,
|
|
36
|
+
useExisting: forwardRef(() => CustomMessagesComponent)
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
|
+
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
40
|
+
selector: 'kendo-spreadsheet-messages'
|
|
41
|
+
}]
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 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, forwardRef } from '@angular/core';
|
|
6
|
+
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
|
+
import { MessagesDirective } from './messages';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@progress/kendo-angular-l10n";
|
|
10
|
+
/**
|
|
11
|
+
* @hidden
|
|
12
|
+
*/
|
|
13
|
+
export class LocalizedMessagesDirective extends MessagesDirective {
|
|
14
|
+
constructor(service) {
|
|
15
|
+
super();
|
|
16
|
+
this.service = service;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
LocalizedMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
20
|
+
LocalizedMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: LocalizedMessagesDirective, selector: "[kendoSpreadsheetLocalizedMessages]", providers: [{
|
|
21
|
+
provide: MessagesDirective,
|
|
22
|
+
useExisting: forwardRef(() => LocalizedMessagesDirective)
|
|
23
|
+
}], usesInheritance: true, ngImport: i0 });
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LocalizedMessagesDirective, decorators: [{
|
|
25
|
+
type: Directive,
|
|
26
|
+
args: [{
|
|
27
|
+
providers: [{
|
|
28
|
+
provide: MessagesDirective,
|
|
29
|
+
useExisting: forwardRef(() => LocalizedMessagesDirective)
|
|
30
|
+
}],
|
|
31
|
+
selector: '[kendoSpreadsheetLocalizedMessages]'
|
|
32
|
+
}]
|
|
33
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 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, Input } from '@angular/core';
|
|
6
|
+
import { ComponentMessages } from '@progress/kendo-angular-l10n';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
/**
|
|
9
|
+
* @hidden
|
|
10
|
+
*/
|
|
11
|
+
export class MessagesDirective extends ComponentMessages {
|
|
12
|
+
}
|
|
13
|
+
MessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MessagesDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
14
|
+
MessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: MessagesDirective, selector: "[kendoSpreadsheetMessages]", inputs: { home: "home", file: "file", insert: "insert", saveFile: "saveFile", loadFile: "loadFile", bold: "bold", italic: "italic", underline: "underline", format: "format", fontFamily: "fontFamily", fontSize: "fontSize", undo: "undo", redo: "redo", background: "background", color: "color", gridLines: "gridLines", addColumnLeft: "addColumnLeft", addColumnRight: "addColumnRight", addRowBelow: "addRowBelow", addRowAbove: "addRowAbove", deleteColumn: "deleteColumn", deleteRow: "deleteRow", wrap: "wrap", align: "align", dialogApply: "dialogApply", dialogCancel: "dialogCancel", dialogDelete: "dialogDelete", dialogRename: "dialogRename", delete: "delete", rename: "rename" }, usesInheritance: true, ngImport: i0 });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MessagesDirective, decorators: [{
|
|
16
|
+
type: Directive,
|
|
17
|
+
args: [{
|
|
18
|
+
selector: '[kendoSpreadsheetMessages]'
|
|
19
|
+
}]
|
|
20
|
+
}], propDecorators: { home: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}], file: [{
|
|
23
|
+
type: Input
|
|
24
|
+
}], insert: [{
|
|
25
|
+
type: Input
|
|
26
|
+
}], saveFile: [{
|
|
27
|
+
type: Input
|
|
28
|
+
}], loadFile: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}], bold: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}], italic: [{
|
|
33
|
+
type: Input
|
|
34
|
+
}], underline: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], format: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}], fontFamily: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], fontSize: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], undo: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], redo: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], background: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], color: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], gridLines: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], addColumnLeft: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}], addColumnRight: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}], addRowBelow: [{
|
|
57
|
+
type: Input
|
|
58
|
+
}], addRowAbove: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], deleteColumn: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}], deleteRow: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}], wrap: [{
|
|
65
|
+
type: Input
|
|
66
|
+
}], align: [{
|
|
67
|
+
type: Input
|
|
68
|
+
}], dialogApply: [{
|
|
69
|
+
type: Input
|
|
70
|
+
}], dialogCancel: [{
|
|
71
|
+
type: Input
|
|
72
|
+
}], dialogDelete: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}], dialogRename: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}], delete: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}], rename: [{
|
|
79
|
+
type: Input
|
|
80
|
+
}] } });
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Inject, Injectable, Optional } from '@angular/core';
|
|
6
|
+
import { LocalizationService, L10N_PREFIX, MessageService, RTL } from '@progress/kendo-angular-l10n';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@progress/kendo-angular-l10n";
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
export class SpreadsheetLocalizationService extends LocalizationService {
|
|
13
|
+
constructor(prefix, messageService, _rtl) {
|
|
14
|
+
super(prefix, messageService, _rtl);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
SpreadsheetLocalizationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SpreadsheetLocalizationService, deps: [{ token: L10N_PREFIX }, { token: i1.MessageService, optional: true }, { token: RTL, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
18
|
+
SpreadsheetLocalizationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SpreadsheetLocalizationService });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SpreadsheetLocalizationService, decorators: [{
|
|
20
|
+
type: Injectable
|
|
21
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
22
|
+
type: Inject,
|
|
23
|
+
args: [L10N_PREFIX]
|
|
24
|
+
}] }, { type: i1.MessageService, decorators: [{
|
|
25
|
+
type: Optional
|
|
26
|
+
}] }, { type: undefined, decorators: [{
|
|
27
|
+
type: Optional
|
|
28
|
+
}, {
|
|
29
|
+
type: Inject,
|
|
30
|
+
args: [RTL]
|
|
31
|
+
}] }]; } });
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
export * from './sheet-info';
|
|
6
|
+
export * from './main-menu-item';
|
|
7
|
+
export * from './events';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 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 packageMetadata = {
|
|
9
|
+
name: '@progress/kendo-angular-spreadsheet',
|
|
10
|
+
productName: 'Kendo UI for Angular',
|
|
11
|
+
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
+
publishDate: 1695882759,
|
|
13
|
+
version: '13.6.0-develop.6',
|
|
14
|
+
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning',
|
|
15
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* Generated bundle index. Do not edit.
|
|
7
|
+
*/
|
|
8
|
+
export * from './index';
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 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 * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@progress/kendo-angular-dialog";
|
|
9
|
+
import * as i2 from "@progress/kendo-angular-inputs";
|
|
10
|
+
import * as i3 from "@angular/common";
|
|
11
|
+
/**
|
|
12
|
+
* @hidden
|
|
13
|
+
*/
|
|
14
|
+
export class ActionDialogComponent extends DialogContentBase {
|
|
15
|
+
constructor(dialog) {
|
|
16
|
+
super(dialog);
|
|
17
|
+
this.dialog = dialog;
|
|
18
|
+
}
|
|
19
|
+
setData(args) {
|
|
20
|
+
this.value = args.value;
|
|
21
|
+
this.tabindex = args.tabindex;
|
|
22
|
+
this.commandName = args.commandName;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
ActionDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ActionDialogComponent, deps: [{ token: i1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
26
|
+
ActionDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ActionDialogComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
27
|
+
<ng-container *ngIf="commandName === 'delete'">
|
|
28
|
+
<p>The deleted sheet data will be lost.</p>
|
|
29
|
+
<p>Are you sure you want to proceed?</p>
|
|
30
|
+
</ng-container>
|
|
31
|
+
|
|
32
|
+
<form class="k-form k-form-md" *ngIf="commandName === 'rename'">
|
|
33
|
+
<div class="k-form-field">
|
|
34
|
+
<label class="k-label k-form-label">Rename sheet</label>
|
|
35
|
+
<div class="k-form-field-wrap">
|
|
36
|
+
<kendo-textbox
|
|
37
|
+
autocomplete="off"
|
|
38
|
+
placeholder="Sheet name"
|
|
39
|
+
[(value)]="value">
|
|
40
|
+
</kendo-textbox>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
</form>
|
|
44
|
+
`, isInline: true, components: [{ type: i2.TextBoxComponent, selector: "kendo-textbox", inputs: ["focusableId", "title", "disabled", "readonly", "tabindex", "value", "selectOnFocus", "showSuccessIcon", "showErrorIcon", "clearButton", "successIcon", "successSvgIcon", "errorIcon", "errorSvgIcon", "clearButtonIcon", "clearButtonSvgIcon", "size", "rounded", "fillMode", "tabIndex", "placeholder", "maxlength"], outputs: ["valueChange", "inputFocus", "inputBlur", "focus", "blur"], exportAs: ["kendoTextBox"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ActionDialogComponent, decorators: [{
|
|
46
|
+
type: Component,
|
|
47
|
+
args: [{
|
|
48
|
+
template: `
|
|
49
|
+
<ng-container *ngIf="commandName === 'delete'">
|
|
50
|
+
<p>The deleted sheet data will be lost.</p>
|
|
51
|
+
<p>Are you sure you want to proceed?</p>
|
|
52
|
+
</ng-container>
|
|
53
|
+
|
|
54
|
+
<form class="k-form k-form-md" *ngIf="commandName === 'rename'">
|
|
55
|
+
<div class="k-form-field">
|
|
56
|
+
<label class="k-label k-form-label">Rename sheet</label>
|
|
57
|
+
<div class="k-form-field-wrap">
|
|
58
|
+
<kendo-textbox
|
|
59
|
+
autocomplete="off"
|
|
60
|
+
placeholder="Sheet name"
|
|
61
|
+
[(value)]="value">
|
|
62
|
+
</kendo-textbox>
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
65
|
+
</form>
|
|
66
|
+
`
|
|
67
|
+
}]
|
|
68
|
+
}], ctorParameters: function () { return [{ type: i1.DialogRef }]; } });
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 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, HostBinding } from '@angular/core';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
/**
|
|
8
|
+
* @hidden
|
|
9
|
+
*/
|
|
10
|
+
export class RemoveDirective {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.hostDisplay = 'none';
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
RemoveDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RemoveDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
16
|
+
RemoveDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: RemoveDirective, selector: "[kendoRemoveDirective]", host: { properties: { "style.display": "this.hostDisplay" } }, ngImport: i0 });
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RemoveDirective, decorators: [{
|
|
18
|
+
type: Directive,
|
|
19
|
+
args: [{
|
|
20
|
+
selector: '[kendoRemoveDirective]',
|
|
21
|
+
}]
|
|
22
|
+
}], propDecorators: { hostDisplay: [{
|
|
23
|
+
type: HostBinding,
|
|
24
|
+
args: ['style.display']
|
|
25
|
+
}] } });
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 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, ElementRef, HostBinding, Input, NgZone, Renderer2 } from '@angular/core';
|
|
6
|
+
import { caretAltDownIcon, menuIcon, plusIcon, caretAltLeftIcon, caretAltRightIcon, eyeIcon } from '@progress/kendo-svg-icons';
|
|
7
|
+
import { SpreadsheetService } from '../common/spreadsheet.service';
|
|
8
|
+
import { isDocumentAvailable, isPresent } from '@progress/kendo-angular-common';
|
|
9
|
+
import { DialogService } from '@progress/kendo-angular-dialog';
|
|
10
|
+
import { SpreadsheetLocalizationService } from '../localization/spreadsheet-localization.service';
|
|
11
|
+
import { take } from 'rxjs/operators';
|
|
12
|
+
import { ActionDialogComponent } from './action-dialog.component';
|
|
13
|
+
import { mapToSheetDescriptor } from '../utils';
|
|
14
|
+
import { getSheetActions } from './utils';
|
|
15
|
+
import * as i0 from "@angular/core";
|
|
16
|
+
import * as i1 from "../common/spreadsheet.service";
|
|
17
|
+
import * as i2 from "../localization/spreadsheet-localization.service";
|
|
18
|
+
import * as i3 from "@progress/kendo-angular-dialog";
|
|
19
|
+
import * as i4 from "@progress/kendo-angular-buttons";
|
|
20
|
+
import * as i5 from "@progress/kendo-angular-layout";
|
|
21
|
+
import * as i6 from "@progress/kendo-angular-common";
|
|
22
|
+
import * as i7 from "@angular/common";
|
|
23
|
+
/**
|
|
24
|
+
* @hidden
|
|
25
|
+
*/
|
|
26
|
+
export class SheetsBarComponent {
|
|
27
|
+
constructor(spreadsheetService, element, renderer, localization, dialogService, ngZone) {
|
|
28
|
+
this.spreadsheetService = spreadsheetService;
|
|
29
|
+
this.element = element;
|
|
30
|
+
this.renderer = renderer;
|
|
31
|
+
this.localization = localization;
|
|
32
|
+
this.dialogService = dialogService;
|
|
33
|
+
this.ngZone = ngZone;
|
|
34
|
+
this.hostClasses = true;
|
|
35
|
+
this.plusIcon = plusIcon;
|
|
36
|
+
this.menuIcon = menuIcon;
|
|
37
|
+
this.caretAltDownIcon = caretAltDownIcon;
|
|
38
|
+
this.caretAltLeftIcon = caretAltLeftIcon;
|
|
39
|
+
this.caretAltRightIcon = caretAltRightIcon;
|
|
40
|
+
this.selected = false;
|
|
41
|
+
this.openedDdb = null;
|
|
42
|
+
this.eyeIcon = eyeIcon;
|
|
43
|
+
this.onAddClick = () => {
|
|
44
|
+
if (this.spreadsheetService.spreadsheet) {
|
|
45
|
+
this.spreadsheetService.spreadsheet.view.sheetsbar.onAddSelect();
|
|
46
|
+
this.notifySheetsChange();
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
this.actionsCallback = {
|
|
50
|
+
copy: (sheetInfo) => {
|
|
51
|
+
sheetInfo.copies ? sheetInfo.copies += 1 : sheetInfo.copies = 1;
|
|
52
|
+
const sheetToCopy = this.spreadsheetService.spreadsheet.sheets().find(s => s.name() === sheetInfo.text);
|
|
53
|
+
const newName = `${sheetToCopy.name()} (${sheetInfo.copies})`;
|
|
54
|
+
this.spreadsheetService.spreadsheet.insertSheet({ data: { ...sheetToCopy.toJSON(), name: newName }, index: sheetInfo.index + 1 });
|
|
55
|
+
this.selectSheet(newName);
|
|
56
|
+
},
|
|
57
|
+
move: (sheetInfo, itemText) => {
|
|
58
|
+
const oldIndex = this.spreadsheetService.spreadsheet.sheets().findIndex(sheet => sheet.name() === sheetInfo.text);
|
|
59
|
+
const newIndex = itemText === 'Move Right' ? oldIndex + 1 : oldIndex - 1;
|
|
60
|
+
const sheetsBar = this.spreadsheetService.spreadsheet.view.sheetsbar;
|
|
61
|
+
sheetsBar.onSheetReorderEnd({ oldIndex, newIndex });
|
|
62
|
+
this.notifySheetsChange();
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
get activeSheet() {
|
|
67
|
+
return this.spreadsheetService.spreadsheet?.activeSheet()?.name();
|
|
68
|
+
}
|
|
69
|
+
get sheetsMenuList() {
|
|
70
|
+
return this.sheets?.map(sheet => ({ text: sheet.text, icon: 'eye', svgIcon: this.eyeIcon }));
|
|
71
|
+
}
|
|
72
|
+
ngAfterViewInit() {
|
|
73
|
+
if (!isDocumentAvailable() || !this.element.nativeElement) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
const prevBtn = this.element.nativeElement.querySelector('.k-tabstrip-prev');
|
|
77
|
+
const nextBtn = this.element.nativeElement.querySelector('.k-tabstrip-next');
|
|
78
|
+
this.renderer.addClass(prevBtn, 'k-order-1');
|
|
79
|
+
this.renderer.addClass(nextBtn, 'k-order-2');
|
|
80
|
+
}
|
|
81
|
+
onTabSelect(ev) {
|
|
82
|
+
if (ev.title !== this.activeSheet) {
|
|
83
|
+
this.selectSheet(ev.title);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
onOpen(ddb) {
|
|
87
|
+
if (isPresent(this.openedDdb) && this.openedDdb !== ddb) {
|
|
88
|
+
this.openedDdb.toggle(false);
|
|
89
|
+
}
|
|
90
|
+
this.openedDdb = ddb;
|
|
91
|
+
}
|
|
92
|
+
onClose() {
|
|
93
|
+
this.openedDdb = null;
|
|
94
|
+
}
|
|
95
|
+
onActionClick(dataItem, sheet) {
|
|
96
|
+
if (dataItem.disabled) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
if (dataItem.commandName === 'delete' || dataItem.commandName === 'rename') {
|
|
100
|
+
this.openDialog(dataItem, sheet);
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
this.actionsCallback[dataItem.commandName](sheet, dataItem.text);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
onMenuItemClick(item) {
|
|
107
|
+
const sheet = this.sheets.find(s => s.text === item.text);
|
|
108
|
+
this.selectSheet(sheet.text);
|
|
109
|
+
}
|
|
110
|
+
openDialog(dataItem, sheet) {
|
|
111
|
+
const dialogSettings = {
|
|
112
|
+
appendTo: this.spreadsheetService.dialogContainer,
|
|
113
|
+
title: this.localization.get(dataItem.commandName),
|
|
114
|
+
content: ActionDialogComponent,
|
|
115
|
+
actions: [{
|
|
116
|
+
text: this.localization.get(dataItem.dialogButton),
|
|
117
|
+
themeColor: 'primary'
|
|
118
|
+
}, {
|
|
119
|
+
text: this.localization.get('dialogCancel')
|
|
120
|
+
}],
|
|
121
|
+
actionsLayout: 'stretched',
|
|
122
|
+
autoFocusedElement: '.k-textbox .k-input-inner, .k-button-solid-primary'
|
|
123
|
+
};
|
|
124
|
+
const dialog = this.dialogService.open(dialogSettings);
|
|
125
|
+
const dialogInstance = dialog.dialog.instance;
|
|
126
|
+
const dialogContent = dialog.content.instance;
|
|
127
|
+
dialogInstance.action.pipe(take(1)).subscribe((event) => {
|
|
128
|
+
if (event.text === this.localization.get(dataItem.dialogButton)) {
|
|
129
|
+
const sheetsBar = this.spreadsheetService.spreadsheet.view.sheetsbar;
|
|
130
|
+
if (sheetsBar) {
|
|
131
|
+
dataItem.commandName === 'delete' ? sheetsBar.onSheetRemove(sheet.text) : sheetsBar.onSheetRename(dialogContent.value, this.sheets.indexOf(sheet));
|
|
132
|
+
this.notifySheetsChange();
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
dialogContent.setData({
|
|
137
|
+
value: sheet.text,
|
|
138
|
+
tabindex: -1,
|
|
139
|
+
commandName: dataItem.commandName
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
selectSheet(sheetName) {
|
|
143
|
+
const spreadsheetSheet = this.spreadsheetService.spreadsheet.sheets().find(s => s.name() === sheetName);
|
|
144
|
+
this.spreadsheetService.spreadsheet.activeSheet(spreadsheetSheet);
|
|
145
|
+
this.spreadsheetService.currentActiveSheet = sheetName;
|
|
146
|
+
this.spreadsheetService.activeSheetChanged.next(spreadsheetSheet);
|
|
147
|
+
this.notifySheetsChange();
|
|
148
|
+
}
|
|
149
|
+
notifySheetsChange() {
|
|
150
|
+
this.ngZone.run(() => {
|
|
151
|
+
const newSheets = this.spreadsheetService.spreadsheet.sheets();
|
|
152
|
+
const sheetDesc = mapToSheetDescriptor(newSheets);
|
|
153
|
+
console.log(newSheets, 'new');
|
|
154
|
+
this.sheets = sheetDesc.map((item, index, items) => ({
|
|
155
|
+
...item,
|
|
156
|
+
inEdit: false,
|
|
157
|
+
first: index === 0,
|
|
158
|
+
last: index === items.length - 1,
|
|
159
|
+
text: item.name,
|
|
160
|
+
active: (item.name === this.activeSheet) || items.length === 1,
|
|
161
|
+
index,
|
|
162
|
+
sheetActions: getSheetActions(index, items)
|
|
163
|
+
}));
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
SheetsBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SheetsBarComponent, deps: [{ token: i1.SpreadsheetService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.SpreadsheetLocalizationService }, { token: i3.DialogService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
168
|
+
SheetsBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SheetsBarComponent, selector: "[kendoSpreadsheetSheetsBar]", inputs: { sheets: "sheets", sheetDescriptors: "sheetDescriptors" }, host: { properties: { "class.k-spreadsheet-sheets-bar": "this.hostClasses" } }, ngImport: i0, template: `
|
|
169
|
+
<button kendoButton
|
|
170
|
+
title="Add new sheet"
|
|
171
|
+
type="button"
|
|
172
|
+
fillMode="flat"
|
|
173
|
+
class="k-spreadsheet-sheet-add"
|
|
174
|
+
icon="plus"
|
|
175
|
+
[svgIcon]="plusIcon"
|
|
176
|
+
[kendoEventsOutsideAngular]="{click: onAddClick}">
|
|
177
|
+
</button>
|
|
178
|
+
<kendo-dropdownbutton #menuDdb
|
|
179
|
+
fillMode="flat"
|
|
180
|
+
buttonClass="k-spreadsheet-sheets-menu"
|
|
181
|
+
icon="menu"
|
|
182
|
+
[svgIcon]="menuIcon"
|
|
183
|
+
[data]="sheetsMenuList"
|
|
184
|
+
(itemClick)="onMenuItemClick($event)"
|
|
185
|
+
(open)="onOpen(menuDdb)">
|
|
186
|
+
</kendo-dropdownbutton>
|
|
187
|
+
<kendo-tabstrip
|
|
188
|
+
[tabPosition]="'bottom'"
|
|
189
|
+
[showContentArea]="false"
|
|
190
|
+
[scrollable]="{prevButtonIcon: 'caret-alt-left', prevSVGButtonIcon: caretAltLeftIcon, nextButtonIcon: 'caret-alt-right', nextSVGButtonIcon: caretAltRightIcon}"
|
|
191
|
+
class="k-spreadsheet-sheets k-overflow-hidden"
|
|
192
|
+
(tabSelect)="onTabSelect($event)"
|
|
193
|
+
[keepTabContent]="true">
|
|
194
|
+
<ng-container *ngFor="let sheet of sheets">
|
|
195
|
+
<kendo-tabstrip-tab
|
|
196
|
+
[title]="sheet.text"
|
|
197
|
+
[selected]="sheet.text === activeSheet">
|
|
198
|
+
<ng-template kendoTabTemplate>
|
|
199
|
+
<span class="k-link">{{sheet.text}}</span>
|
|
200
|
+
<kendo-dropdownbutton #sheetDdb
|
|
201
|
+
fillMode="flat"
|
|
202
|
+
icon="caret-alt-down"
|
|
203
|
+
[svgIcon]="caretAltDownIcon"
|
|
204
|
+
buttonClass="k-menu-button"
|
|
205
|
+
[data]="sheet.sheetActions"
|
|
206
|
+
[buttonAttributes]="{'aria-hidden': 'true', 'tabindex': '-1', role: 'presentation'}"
|
|
207
|
+
(open)="onOpen(sheetDdb)"
|
|
208
|
+
(close)="onClose()"
|
|
209
|
+
(click)="$event.stopPropagation()"
|
|
210
|
+
(itemClick)="onActionClick($event, sheet)">
|
|
211
|
+
</kendo-dropdownbutton>
|
|
212
|
+
</ng-template>
|
|
213
|
+
</kendo-tabstrip-tab>
|
|
214
|
+
</ng-container>
|
|
215
|
+
</kendo-tabstrip>
|
|
216
|
+
`, isInline: true, components: [{ type: i4.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: i4.DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["arrowIcon", "icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor", "buttonAttributes"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }, { type: i5.TabStripComponent, selector: "kendo-tabstrip", inputs: ["height", "animate", "tabAlignment", "tabPosition", "keepTabContent", "closable", "scrollable", "closeIcon", "closeIconClass", "closeSVGIcon", "showContentArea"], outputs: ["tabSelect", "tabClose", "tabScroll"], exportAs: ["kendoTabStrip"] }, { type: i5.TabStripTabComponent, selector: "kendo-tabstrip-tab", inputs: ["title", "disabled", "cssClass", "cssStyle", "selected", "closable", "closeIcon", "closeIconClass", "closeSVGIcon"], exportAs: ["kendoTabStripTab"] }], directives: [{ type: i6.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.TabTemplateDirective, selector: "[kendoTabTemplate]" }] });
|
|
217
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SheetsBarComponent, decorators: [{
|
|
218
|
+
type: Component,
|
|
219
|
+
args: [{
|
|
220
|
+
selector: '[kendoSpreadsheetSheetsBar]',
|
|
221
|
+
template: `
|
|
222
|
+
<button kendoButton
|
|
223
|
+
title="Add new sheet"
|
|
224
|
+
type="button"
|
|
225
|
+
fillMode="flat"
|
|
226
|
+
class="k-spreadsheet-sheet-add"
|
|
227
|
+
icon="plus"
|
|
228
|
+
[svgIcon]="plusIcon"
|
|
229
|
+
[kendoEventsOutsideAngular]="{click: onAddClick}">
|
|
230
|
+
</button>
|
|
231
|
+
<kendo-dropdownbutton #menuDdb
|
|
232
|
+
fillMode="flat"
|
|
233
|
+
buttonClass="k-spreadsheet-sheets-menu"
|
|
234
|
+
icon="menu"
|
|
235
|
+
[svgIcon]="menuIcon"
|
|
236
|
+
[data]="sheetsMenuList"
|
|
237
|
+
(itemClick)="onMenuItemClick($event)"
|
|
238
|
+
(open)="onOpen(menuDdb)">
|
|
239
|
+
</kendo-dropdownbutton>
|
|
240
|
+
<kendo-tabstrip
|
|
241
|
+
[tabPosition]="'bottom'"
|
|
242
|
+
[showContentArea]="false"
|
|
243
|
+
[scrollable]="{prevButtonIcon: 'caret-alt-left', prevSVGButtonIcon: caretAltLeftIcon, nextButtonIcon: 'caret-alt-right', nextSVGButtonIcon: caretAltRightIcon}"
|
|
244
|
+
class="k-spreadsheet-sheets k-overflow-hidden"
|
|
245
|
+
(tabSelect)="onTabSelect($event)"
|
|
246
|
+
[keepTabContent]="true">
|
|
247
|
+
<ng-container *ngFor="let sheet of sheets">
|
|
248
|
+
<kendo-tabstrip-tab
|
|
249
|
+
[title]="sheet.text"
|
|
250
|
+
[selected]="sheet.text === activeSheet">
|
|
251
|
+
<ng-template kendoTabTemplate>
|
|
252
|
+
<span class="k-link">{{sheet.text}}</span>
|
|
253
|
+
<kendo-dropdownbutton #sheetDdb
|
|
254
|
+
fillMode="flat"
|
|
255
|
+
icon="caret-alt-down"
|
|
256
|
+
[svgIcon]="caretAltDownIcon"
|
|
257
|
+
buttonClass="k-menu-button"
|
|
258
|
+
[data]="sheet.sheetActions"
|
|
259
|
+
[buttonAttributes]="{'aria-hidden': 'true', 'tabindex': '-1', role: 'presentation'}"
|
|
260
|
+
(open)="onOpen(sheetDdb)"
|
|
261
|
+
(close)="onClose()"
|
|
262
|
+
(click)="$event.stopPropagation()"
|
|
263
|
+
(itemClick)="onActionClick($event, sheet)">
|
|
264
|
+
</kendo-dropdownbutton>
|
|
265
|
+
</ng-template>
|
|
266
|
+
</kendo-tabstrip-tab>
|
|
267
|
+
</ng-container>
|
|
268
|
+
</kendo-tabstrip>
|
|
269
|
+
`
|
|
270
|
+
}]
|
|
271
|
+
}], ctorParameters: function () { return [{ type: i1.SpreadsheetService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.SpreadsheetLocalizationService }, { type: i3.DialogService }, { type: i0.NgZone }]; }, propDecorators: { hostClasses: [{
|
|
272
|
+
type: HostBinding,
|
|
273
|
+
args: ['class.k-spreadsheet-sheets-bar']
|
|
274
|
+
}], sheets: [{
|
|
275
|
+
type: Input
|
|
276
|
+
}], sheetDescriptors: [{
|
|
277
|
+
type: Input
|
|
278
|
+
}] } });
|