@progress/kendo-angular-spreadsheet 16.5.0-develop.6 → 16.6.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.
Files changed (95) hide show
  1. package/action-bar/formula-input.directive.d.ts +1 -1
  2. package/action-bar/list.component.d.ts +1 -1
  3. package/action-bar/namebox.component.d.ts +2 -2
  4. package/common/main-menu.directive.d.ts +1 -1
  5. package/directives.d.ts +39 -0
  6. package/esm2020/action-bar/formula-input.directive.mjs +2 -1
  7. package/esm2020/action-bar/list.component.mjs +8 -6
  8. package/esm2020/action-bar/namebox.component.mjs +7 -6
  9. package/esm2020/common/main-menu.directive.mjs +5 -2
  10. package/esm2020/directives.mjs +71 -0
  11. package/esm2020/localization/custom-messages.component.mjs +3 -2
  12. package/esm2020/localization/localized-messages.directive.mjs +3 -2
  13. package/esm2020/localization/messages.mjs +3 -2
  14. package/esm2020/package-metadata.mjs +2 -2
  15. package/esm2020/sheets-bar/action-dialog.component.mjs +8 -6
  16. package/esm2020/sheets-bar/sheets-bar.component.mjs +12 -13
  17. package/esm2020/spreadsheet.component.mjs +46 -47
  18. package/esm2020/spreadsheet.module.mjs +42 -255
  19. package/esm2020/tools/align/align-tool.directive.mjs +2 -1
  20. package/esm2020/tools/align/horizontal-align-tool.directive.mjs +2 -1
  21. package/esm2020/tools/align/vertical-align-tool.directive.mjs +2 -1
  22. package/esm2020/tools/colorpicker/spreadsheet-backcolor.component.mjs +10 -8
  23. package/esm2020/tools/colorpicker/spreadsheet-forecolor.component.mjs +11 -9
  24. package/esm2020/tools/decrease-decimal-tool.directive.mjs +3 -2
  25. package/esm2020/tools/font-family/font-family-dropdownlist.component.mjs +7 -5
  26. package/esm2020/tools/font-family/spreadsheet-fontfamily-tool.component.mjs +11 -9
  27. package/esm2020/tools/font-size/decrease-font-tool.directive.mjs +3 -2
  28. package/esm2020/tools/font-size/font-size-dropdownlist.component.mjs +6 -4
  29. package/esm2020/tools/font-size/increase-font-tool.directive.mjs +3 -2
  30. package/esm2020/tools/font-size/spreadsheet-fontsize-tool.component.mjs +11 -9
  31. package/esm2020/tools/format-tool.directive.mjs +2 -1
  32. package/esm2020/tools/gridlines-tool.directive.mjs +3 -2
  33. package/esm2020/tools/history/redo-tool.mjs +3 -2
  34. package/esm2020/tools/history/undo-tool.mjs +3 -2
  35. package/esm2020/tools/increase-decimal-tool.directive.mjs +3 -2
  36. package/esm2020/tools/insert/insert-link-dialog.component.mjs +7 -5
  37. package/esm2020/tools/insert/insert-link-tool.directive.mjs +3 -2
  38. package/esm2020/tools/load-file.component.mjs +9 -8
  39. package/esm2020/tools/save-file-tool.directive.mjs +5 -2
  40. package/esm2020/tools/shared/dialog-content.component.mjs +9 -7
  41. package/esm2020/tools/tables/add-column-left-button.directive.mjs +3 -2
  42. package/esm2020/tools/tables/add-column-right-button.directive.mjs +3 -2
  43. package/esm2020/tools/tables/add-row-above-button.directive.mjs +3 -2
  44. package/esm2020/tools/tables/add-row-below-button.directive.mjs +3 -2
  45. package/esm2020/tools/tables/delete-column-button.directive.mjs +3 -2
  46. package/esm2020/tools/tables/delete-row-button.directive.mjs +3 -2
  47. package/esm2020/tools/tables/merge-tool.directive.mjs +2 -1
  48. package/esm2020/tools/text-wrap-tool.directive.mjs +3 -2
  49. package/esm2020/tools/typographical-emphasis/bold-tool.directive.mjs +3 -2
  50. package/esm2020/tools/typographical-emphasis/italic-tool.directive.mjs +3 -2
  51. package/esm2020/tools/typographical-emphasis/underline-tool.directive.mjs +3 -2
  52. package/fesm2015/progress-kendo-angular-spreadsheet.mjs +1445 -1549
  53. package/fesm2020/progress-kendo-angular-spreadsheet.mjs +1445 -1549
  54. package/localization/custom-messages.component.d.ts +1 -1
  55. package/localization/localized-messages.directive.d.ts +1 -1
  56. package/localization/messages.d.ts +1 -1
  57. package/package.json +15 -15
  58. package/schematics/ngAdd/index.js +2 -2
  59. package/sheets-bar/action-dialog.component.d.ts +1 -1
  60. package/sheets-bar/sheets-bar.component.d.ts +5 -5
  61. package/spreadsheet.component.d.ts +4 -4
  62. package/spreadsheet.module.d.ts +31 -56
  63. package/tools/align/align-tool.directive.d.ts +1 -1
  64. package/tools/align/horizontal-align-tool.directive.d.ts +1 -1
  65. package/tools/align/vertical-align-tool.directive.d.ts +1 -1
  66. package/tools/colorpicker/spreadsheet-backcolor.component.d.ts +1 -1
  67. package/tools/colorpicker/spreadsheet-forecolor.component.d.ts +2 -2
  68. package/tools/decrease-decimal-tool.directive.d.ts +1 -1
  69. package/tools/font-family/font-family-dropdownlist.component.d.ts +1 -1
  70. package/tools/font-family/spreadsheet-fontfamily-tool.component.d.ts +2 -2
  71. package/tools/font-size/decrease-font-tool.directive.d.ts +1 -1
  72. package/tools/font-size/font-size-dropdownlist.component.d.ts +1 -1
  73. package/tools/font-size/increase-font-tool.directive.d.ts +1 -1
  74. package/tools/font-size/spreadsheet-fontsize-tool.component.d.ts +2 -2
  75. package/tools/format-tool.directive.d.ts +1 -1
  76. package/tools/gridlines-tool.directive.d.ts +1 -1
  77. package/tools/history/redo-tool.d.ts +1 -1
  78. package/tools/history/undo-tool.d.ts +1 -1
  79. package/tools/increase-decimal-tool.directive.d.ts +1 -1
  80. package/tools/insert/insert-link-dialog.component.d.ts +1 -1
  81. package/tools/insert/insert-link-tool.directive.d.ts +1 -1
  82. package/tools/load-file.component.d.ts +2 -2
  83. package/tools/save-file-tool.directive.d.ts +1 -1
  84. package/tools/shared/dialog-content.component.d.ts +1 -1
  85. package/tools/tables/add-column-left-button.directive.d.ts +1 -1
  86. package/tools/tables/add-column-right-button.directive.d.ts +1 -1
  87. package/tools/tables/add-row-above-button.directive.d.ts +1 -1
  88. package/tools/tables/add-row-below-button.directive.d.ts +1 -1
  89. package/tools/tables/delete-column-button.directive.d.ts +1 -1
  90. package/tools/tables/delete-row-button.directive.d.ts +1 -1
  91. package/tools/tables/merge-tool.directive.d.ts +1 -1
  92. package/tools/text-wrap-tool.directive.d.ts +1 -1
  93. package/tools/typographical-emphasis/bold-tool.directive.d.ts +1 -1
  94. package/tools/typographical-emphasis/italic-tool.directive.d.ts +1 -1
  95. package/tools/typographical-emphasis/underline-tool.directive.d.ts +1 -1
@@ -3,40 +3,31 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as i0 from '@angular/core';
6
- import { Injectable, EventEmitter, Output, Inject, Optional, Component, HostBinding, Input, Directive, forwardRef, HostListener, ViewChild, ElementRef, ViewChildren, InjectionToken, ViewContainerRef, NgModule } from '@angular/core';
6
+ import { Injectable, EventEmitter, Output, Inject, Optional, Component, HostBinding, Input, Directive, ElementRef, ViewChild, ViewChildren, HostListener, InjectionToken, forwardRef, ViewContainerRef, NgModule } from '@angular/core';
7
+ import { NgFor, NgIf, NgStyle, NgSwitch, NgSwitchCase } from '@angular/common';
8
+ import { Subject, Subscription } from 'rxjs';
9
+ import { take, map } from 'rxjs/operators';
7
10
  import { validatePackage } from '@progress/kendo-licensing';
8
11
  import { SpreadsheetWidget } from '@progress/kendo-spreadsheet-common';
9
12
  import * as i1$3 from '@progress/kendo-angular-intl';
10
- import { localeData, IntlModule } from '@progress/kendo-angular-intl';
13
+ import { localeData } from '@progress/kendo-angular-intl';
11
14
  import { formulaFxIcon, trashIcon, copyIcon, pencilIcon, eyeSlashIcon, arrowRightIcon, arrowLeftIcon, alignCenterIcon, alignJustifyIcon, alignLeftIcon, alignRightIcon, alignTopIcon, alignMiddleIcon, alignBottomIcon, dropletIcon, boldIcon, foregroundColorIcon, italicIcon, arrowRotateCwIcon, underlineIcon, arrowRotateCcwIcon, textWrapIcon, tableColumnInsertLeftIcon, tableColumnInsertRightIcon, tableRowInsertAboveIcon, tableRowInsertBelowIcon, tableRowDeleteIcon, tableColumnDeleteIcon, bordersNoneIcon, folderOpenIcon, downloadIcon, customFormatIcon, fontSizeIcon, fontFamilyIcon, cellsMergeIcon, cellsMergeHorizontallyIcon, cellsMergeVerticallyIcon, tableUnmergeIcon, linkIcon, fontGrowIcon, fontShrinkIcon, decimalDecreaseIcon, decimalIncreaseIcon, cutIcon, clipboardIcon, eyeIcon, plusIcon, menuIcon, caretAltDownIcon, caretAltLeftIcon, caretAltRightIcon } from '@progress/kendo-svg-icons';
12
- import { Subject, Subscription } from 'rxjs';
13
15
  import * as i2 from '@progress/kendo-angular-l10n';
14
16
  import { LocalizationService, L10N_PREFIX, RTL, ComponentMessages } from '@progress/kendo-angular-l10n';
15
- import * as i3 from '@progress/kendo-angular-common';
16
- import { isDocumentAvailable, isPresent, Keys, hasObservers, shouldShowValidationUI, EventsModule, WatermarkModule } from '@progress/kendo-angular-common';
17
17
  import * as i1 from '@progress/kendo-angular-popup';
18
- import { PopupService, PopupModule } from '@progress/kendo-angular-popup';
19
- import * as i2$1 from '@angular/common';
20
- import { CommonModule } from '@angular/common';
21
- import * as i6 from '@progress/kendo-angular-icons';
22
- import { IconsModule } from '@progress/kendo-angular-icons';
23
- import { take, map } from 'rxjs/operators';
24
- import * as i1$1 from '@progress/kendo-angular-dialog';
25
- import { DialogContentBase, DialogModule } from '@progress/kendo-angular-dialog';
26
- import * as i3$1 from '@progress/kendo-angular-inputs';
27
- import { InputsModule } from '@progress/kendo-angular-inputs';
28
- import * as i3$2 from '@progress/kendo-angular-label';
29
- import { LabelModule } from '@progress/kendo-angular-label';
30
- import * as i9 from '@progress/kendo-angular-menu';
31
- import { MenusModule } from '@progress/kendo-angular-menu';
18
+ import { PopupService } from '@progress/kendo-angular-popup';
19
+ import { MenuComponent, MenuItemComponent, ContextMenuComponent } from '@progress/kendo-angular-menu';
20
+ import { EventsOutsideAngularDirective, isDocumentAvailable, isPresent, Keys, hasObservers, shouldShowValidationUI, WatermarkOverlayComponent, ResizeBatchService } from '@progress/kendo-angular-common';
21
+ import { IconWrapperComponent, IconsService } from '@progress/kendo-angular-icons';
32
22
  import * as i1$2 from '@progress/kendo-angular-toolbar';
33
- import { ToolBarToolComponent, ToolBarComponent, ToolBarModule } from '@progress/kendo-angular-toolbar';
34
- import * as i2$2 from '@progress/kendo-angular-dropdowns';
35
- import { DropDownListComponent, ComboBoxModule, DropDownListModule } from '@progress/kendo-angular-dropdowns';
36
- import * as i5 from '@progress/kendo-angular-buttons';
37
- import { ButtonsModule } from '@progress/kendo-angular-buttons';
38
- import * as i7 from '@progress/kendo-angular-layout';
39
- import { TabStripModule } from '@progress/kendo-angular-layout';
23
+ import { ToolBarToolComponent, ToolBarComponent, ToolBarButtonComponent, ToolBarButtonGroupComponent, ToolBarSeparatorComponent, ToolBarDropDownButtonComponent } from '@progress/kendo-angular-toolbar';
24
+ import * as i1$1 from '@progress/kendo-angular-dialog';
25
+ import { DialogContentBase, DialogContainerService, DialogService, WindowService, WindowContainerService } from '@progress/kendo-angular-dialog';
26
+ import { TextBoxComponent, ColorPickerComponent } from '@progress/kendo-angular-inputs';
27
+ import { LabelComponent } from '@progress/kendo-angular-label';
28
+ import { ButtonComponent, DropDownButtonComponent } from '@progress/kendo-angular-buttons';
29
+ import { TabStripComponent, TabStripTabComponent, TabTemplateDirective } from '@progress/kendo-angular-layout';
30
+ import { ComboBoxComponent, DropDownListComponent, ItemTemplateDirective } from '@progress/kendo-angular-dropdowns';
40
31
  import { saveAs } from '@progress/kendo-file-saver';
41
32
  import { Workbook } from '@progress/kendo-ooxml';
42
33
 
@@ -47,8 +38,8 @@ const packageMetadata = {
47
38
  name: '@progress/kendo-angular-spreadsheet',
48
39
  productName: 'Kendo UI for Angular',
49
40
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
50
- publishDate: 1721766180,
51
- version: '16.5.0-develop.6',
41
+ publishDate: 1721827825,
42
+ version: '16.6.0-develop.1',
52
43
  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',
53
44
  };
54
45
 
@@ -215,7 +206,7 @@ class FormulaListComponent {
215
206
  }
216
207
  }
217
208
  FormulaListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormulaListComponent, deps: [{ token: i0.ElementRef }, { token: SpreadsheetService }], target: i0.ɵɵFactoryTarget.Component });
218
- FormulaListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormulaListComponent, selector: "kendo-spreadsheet-formula-list", inputs: { maxHeight: "maxHeight", data: "data", itemClick: "itemClick" }, host: { properties: { "attr.id": "this.id" } }, ngImport: i0, template: `
209
+ FormulaListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormulaListComponent, isStandalone: true, selector: "kendo-spreadsheet-formula-list", inputs: { maxHeight: "maxHeight", data: "data", itemClick: "itemClick" }, host: { properties: { "attr.id": "this.id" } }, ngImport: i0, template: `
219
210
  <ul #ulRef
220
211
  class="k-spreadsheet-formula-list k-list-ul k-list-md k-group k-reset"
221
212
  role="menu"
@@ -233,7 +224,7 @@ FormulaListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
233
224
  <span className="k-list-item-text">{{item.text}}</span>
234
225
  </li>
235
226
  </ul>
236
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: i6.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
227
+ `, isInline: true, dependencies: [{ kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
237
228
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormulaListComponent, decorators: [{
238
229
  type: Component,
239
230
  args: [{
@@ -256,7 +247,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
256
247
  <span className="k-list-item-text">{{item.text}}</span>
257
248
  </li>
258
249
  </ul>
259
- `
250
+ `,
251
+ standalone: true,
252
+ imports: [EventsOutsideAngularDirective, NgFor, IconWrapperComponent]
260
253
  }]
261
254
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: SpreadsheetService }]; }, propDecorators: { id: [{
262
255
  type: HostBinding,
@@ -408,11 +401,12 @@ class FormulaInputDirective {
408
401
  }
409
402
  }
410
403
  FormulaInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormulaInputDirective, deps: [{ token: i0.ElementRef }, { token: i1.PopupService }, { token: SpreadsheetService }, { token: SpreadsheetLocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
411
- FormulaInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FormulaInputDirective, selector: "[kendoSpreadsheetFormulaInput]", inputs: { formulaListMaxHeight: "formulaListMaxHeight" }, host: { properties: { "class.k-spreadsheet-formula-input": "this.hostClasses", "attr.title": "this.title", "attr.role": "this.role", "attr.aria-haspopup": "this.ariaHasPopup", "attr.aria-expanded": "this.ariaExpanded", "attr.aria-controls": "this.ariaControls" } }, ngImport: i0 });
404
+ FormulaInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FormulaInputDirective, isStandalone: true, selector: "[kendoSpreadsheetFormulaInput]", inputs: { formulaListMaxHeight: "formulaListMaxHeight" }, host: { properties: { "class.k-spreadsheet-formula-input": "this.hostClasses", "attr.title": "this.title", "attr.role": "this.role", "attr.aria-haspopup": "this.ariaHasPopup", "attr.aria-expanded": "this.ariaExpanded", "attr.aria-controls": "this.ariaControls" } }, ngImport: i0 });
412
405
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormulaInputDirective, decorators: [{
413
406
  type: Directive,
414
407
  args: [{
415
408
  selector: '[kendoSpreadsheetFormulaInput]',
409
+ standalone: true
416
410
  }]
417
411
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.PopupService }, { type: SpreadsheetService }, { type: SpreadsheetLocalizationService }]; }, propDecorators: { hostClasses: [{
418
412
  type: HostBinding,
@@ -675,7 +669,7 @@ class InsertLinkDialogComponent extends DialogContentBase {
675
669
  }
676
670
  }
677
671
  InsertLinkDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: InsertLinkDialogComponent, deps: [{ token: i1$1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
678
- InsertLinkDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: InsertLinkDialogComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
672
+ InsertLinkDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: InsertLinkDialogComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
679
673
  <form class="k-form k-form-md" method="dialog">
680
674
  <div class="k-form-field">
681
675
  <kendo-label [for]="textbox" text="URL"></kendo-label>
@@ -684,7 +678,7 @@ InsertLinkDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
684
678
  </kendo-textbox>
685
679
  </div>
686
680
  </form>
687
- `, isInline: true, dependencies: [{ kind: "component", type: i3$1.TextBoxComponent, selector: "kendo-textbox", inputs: ["focusableId", "title", "type", "disabled", "readonly", "tabindex", "value", "selectOnFocus", "showSuccessIcon", "showErrorIcon", "clearButton", "successIcon", "successSvgIcon", "errorIcon", "errorSvgIcon", "clearButtonIcon", "clearButtonSvgIcon", "size", "rounded", "fillMode", "tabIndex", "placeholder", "maxlength", "inputAttributes"], outputs: ["valueChange", "inputFocus", "inputBlur", "focus", "blur"], exportAs: ["kendoTextBox"] }, { kind: "component", type: i3$2.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }] });
681
+ `, isInline: true, dependencies: [{ kind: "component", type: LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }, { kind: "component", type: TextBoxComponent, selector: "kendo-textbox", inputs: ["focusableId", "title", "type", "disabled", "readonly", "tabindex", "value", "selectOnFocus", "showSuccessIcon", "showErrorIcon", "clearButton", "successIcon", "successSvgIcon", "errorIcon", "errorSvgIcon", "clearButtonIcon", "clearButtonSvgIcon", "size", "rounded", "fillMode", "tabIndex", "placeholder", "maxlength", "inputAttributes"], outputs: ["valueChange", "inputFocus", "inputBlur", "focus", "blur"], exportAs: ["kendoTextBox"] }] });
688
682
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: InsertLinkDialogComponent, decorators: [{
689
683
  type: Component,
690
684
  args: [{
@@ -697,383 +691,80 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
697
691
  </kendo-textbox>
698
692
  </div>
699
693
  </form>
700
- `
694
+ `,
695
+ standalone: true,
696
+ imports: [LabelComponent, TextBoxComponent]
701
697
  }]
702
698
  }], ctorParameters: function () { return [{ type: i1$1.DialogRef }]; } });
703
699
 
704
700
  /**
705
701
  * @hidden
706
702
  */
707
- class MessagesDirective extends ComponentMessages {
708
- }
709
- MessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MessagesDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
710
- MessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: MessagesDirective, selector: "[kendoSpreadsheetMessages]", inputs: { home: "home", file: "file", insert: "insert", formatTab: "formatTab", 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", alignHorizontal: "alignHorizontal", alignVertical: "alignVertical", alignLeft: "alignLeft", alignCenter: "alignCenter", alignRight: "alignRight", alignJustify: "alignJustify", alignTop: "alignTop", alignMiddle: "alignMiddle", alignBottom: "alignBottom", dialogApply: "dialogApply", dialogCancel: "dialogCancel", dialogDelete: "dialogDelete", dialogRename: "dialogRename", dialogInsert: "dialogInsert", dialogRemoveLink: "dialogRemoveLink", delete: "delete", rename: "rename", nameBox: "nameBox", formulaInput: "formulaInput", addSheet: "addSheet", sheetsMenu: "sheetsMenu", view: "view", merge: "merge", mergeHorizontally: "mergeHorizontally", mergeVertically: "mergeVertically", mergeAll: "mergeAll", unmerge: "unmerge", insertLink: "insertLink", increaseDecimal: "increaseDecimal", decreaseDecimal: "decreaseDecimal", increaseFontSize: "increaseFontSize", decreaseFontSize: "decreaseFontSize", openUnsupported: "openUnsupported", modifyMerged: "modifyMerged", cannotModifyDisabled: "cannotModifyDisabled", dialogOk: "dialogOk", dialogError: "dialogError", duplicateSheetName: "duplicateSheetName", copy: "copy", cut: "cut", paste: "paste", hideRow: "hideRow", unhideRow: "unhideRow", hideColumn: "hideColumn", unhideColumn: "unhideColumn", sheetDelete: "sheetDelete", sheetRename: "sheetRename", sheetHide: "sheetHide", sheetDuplicate: "sheetDuplicate", sheetMoveLeft: "sheetMoveLeft", sheetMoveRight: "sheetMoveRight", invalidNameError: "invalidNameError" }, usesInheritance: true, ngImport: i0 });
711
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MessagesDirective, decorators: [{
712
- type: Directive,
713
- args: [{
714
- selector: '[kendoSpreadsheetMessages]'
715
- }]
716
- }], propDecorators: { home: [{
717
- type: Input
718
- }], file: [{
719
- type: Input
720
- }], insert: [{
721
- type: Input
722
- }], formatTab: [{
723
- type: Input
724
- }], saveFile: [{
725
- type: Input
726
- }], loadFile: [{
727
- type: Input
728
- }], bold: [{
729
- type: Input
730
- }], italic: [{
731
- type: Input
732
- }], underline: [{
733
- type: Input
734
- }], format: [{
735
- type: Input
736
- }], fontFamily: [{
737
- type: Input
738
- }], fontSize: [{
739
- type: Input
740
- }], undo: [{
741
- type: Input
742
- }], redo: [{
743
- type: Input
744
- }], background: [{
745
- type: Input
746
- }], color: [{
747
- type: Input
748
- }], gridLines: [{
749
- type: Input
750
- }], addColumnLeft: [{
751
- type: Input
752
- }], addColumnRight: [{
753
- type: Input
754
- }], addRowBelow: [{
755
- type: Input
756
- }], addRowAbove: [{
757
- type: Input
758
- }], deleteColumn: [{
759
- type: Input
760
- }], deleteRow: [{
761
- type: Input
762
- }], wrap: [{
763
- type: Input
764
- }], align: [{
765
- type: Input
766
- }], alignHorizontal: [{
767
- type: Input
768
- }], alignVertical: [{
769
- type: Input
770
- }], alignLeft: [{
771
- type: Input
772
- }], alignCenter: [{
773
- type: Input
774
- }], alignRight: [{
775
- type: Input
776
- }], alignJustify: [{
777
- type: Input
778
- }], alignTop: [{
779
- type: Input
780
- }], alignMiddle: [{
781
- type: Input
782
- }], alignBottom: [{
783
- type: Input
784
- }], dialogApply: [{
785
- type: Input
786
- }], dialogCancel: [{
787
- type: Input
788
- }], dialogDelete: [{
789
- type: Input
790
- }], dialogRename: [{
791
- type: Input
792
- }], dialogInsert: [{
793
- type: Input
794
- }], dialogRemoveLink: [{
795
- type: Input
796
- }], delete: [{
797
- type: Input
798
- }], rename: [{
799
- type: Input
800
- }], nameBox: [{
801
- type: Input
802
- }], formulaInput: [{
803
- type: Input
804
- }], addSheet: [{
805
- type: Input
806
- }], sheetsMenu: [{
807
- type: Input
808
- }], view: [{
809
- type: Input
810
- }], merge: [{
811
- type: Input
812
- }], mergeHorizontally: [{
813
- type: Input
814
- }], mergeVertically: [{
815
- type: Input
816
- }], mergeAll: [{
817
- type: Input
818
- }], unmerge: [{
819
- type: Input
820
- }], insertLink: [{
821
- type: Input
822
- }], increaseDecimal: [{
823
- type: Input
824
- }], decreaseDecimal: [{
825
- type: Input
826
- }], increaseFontSize: [{
827
- type: Input
828
- }], decreaseFontSize: [{
829
- type: Input
830
- }], openUnsupported: [{
831
- type: Input
832
- }], modifyMerged: [{
833
- type: Input
834
- }], cannotModifyDisabled: [{
835
- type: Input
836
- }], dialogOk: [{
837
- type: Input
838
- }], dialogError: [{
839
- type: Input
840
- }], duplicateSheetName: [{
841
- type: Input
842
- }], copy: [{
843
- type: Input
844
- }], cut: [{
845
- type: Input
846
- }], paste: [{
847
- type: Input
848
- }], hideRow: [{
849
- type: Input
850
- }], unhideRow: [{
851
- type: Input
852
- }], hideColumn: [{
853
- type: Input
854
- }], unhideColumn: [{
855
- type: Input
856
- }], sheetDelete: [{
857
- type: Input
858
- }], sheetRename: [{
859
- type: Input
860
- }], sheetHide: [{
861
- type: Input
862
- }], sheetDuplicate: [{
863
- type: Input
864
- }], sheetMoveLeft: [{
865
- type: Input
866
- }], sheetMoveRight: [{
867
- type: Input
868
- }], invalidNameError: [{
869
- type: Input
870
- }] } });
871
-
872
- /**
873
- * @hidden
874
- */
875
- class LocalizedMessagesDirective extends MessagesDirective {
876
- constructor(service) {
877
- super();
878
- this.service = service;
703
+ class ActionDialogComponent extends DialogContentBase {
704
+ constructor(dialog) {
705
+ super(dialog);
706
+ this.dialog = dialog;
707
+ }
708
+ setData(args) {
709
+ this.value = args.value;
710
+ this.tabindex = args.tabindex;
711
+ this.commandName = args.commandName;
879
712
  }
880
713
  }
881
- LocalizedMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i2.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
882
- LocalizedMessagesDirectivedir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: LocalizedMessagesDirective, selector: "[kendoSpreadsheetLocalizedMessages]", providers: [{
883
- provide: MessagesDirective,
884
- useExisting: forwardRef(() => LocalizedMessagesDirective)
885
- }], usesInheritance: true, ngImport: i0 });
886
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedMessagesDirective, decorators: [{
887
- type: Directive,
714
+ ActionDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ActionDialogComponent, deps: [{ token: i1$1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
715
+ ActionDialogComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ActionDialogComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
716
+ <ng-container *ngIf="commandName === 'delete'">
717
+ <p>The deleted sheet data will be lost.</p>
718
+ <p>Are you sure you want to proceed?</p>
719
+ </ng-container>
720
+
721
+ <form class="k-form k-form-md" *ngIf="commandName === 'rename'" method="dialog">
722
+ <div class="k-form-field">
723
+ <kendo-label [for]="textbox" text="Rename sheet"></kendo-label>
724
+ <div class="k-form-field-wrap">
725
+ <kendo-textbox #textbox
726
+ autocomplete="off"
727
+ placeholder="Sheet name"
728
+ [(value)]="value">
729
+ </kendo-textbox>
730
+ </div>
731
+ </div>
732
+ </form>
733
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }, { kind: "component", type: TextBoxComponent, selector: "kendo-textbox", inputs: ["focusableId", "title", "type", "disabled", "readonly", "tabindex", "value", "selectOnFocus", "showSuccessIcon", "showErrorIcon", "clearButton", "successIcon", "successSvgIcon", "errorIcon", "errorSvgIcon", "clearButtonIcon", "clearButtonSvgIcon", "size", "rounded", "fillMode", "tabIndex", "placeholder", "maxlength", "inputAttributes"], outputs: ["valueChange", "inputFocus", "inputBlur", "focus", "blur"], exportAs: ["kendoTextBox"] }] });
734
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ActionDialogComponent, decorators: [{
735
+ type: Component,
888
736
  args: [{
889
- providers: [{
890
- provide: MessagesDirective,
891
- useExisting: forwardRef(() => LocalizedMessagesDirective)
892
- }],
893
- selector: '[kendoSpreadsheetLocalizedMessages]'
737
+ template: `
738
+ <ng-container *ngIf="commandName === 'delete'">
739
+ <p>The deleted sheet data will be lost.</p>
740
+ <p>Are you sure you want to proceed?</p>
741
+ </ng-container>
742
+
743
+ <form class="k-form k-form-md" *ngIf="commandName === 'rename'" method="dialog">
744
+ <div class="k-form-field">
745
+ <kendo-label [for]="textbox" text="Rename sheet"></kendo-label>
746
+ <div class="k-form-field-wrap">
747
+ <kendo-textbox #textbox
748
+ autocomplete="off"
749
+ placeholder="Sheet name"
750
+ [(value)]="value">
751
+ </kendo-textbox>
752
+ </div>
753
+ </div>
754
+ </form>
755
+ `,
756
+ standalone: true,
757
+ imports: [NgIf, LabelComponent, TextBoxComponent]
894
758
  }]
895
- }], ctorParameters: function () { return [{ type: i2.LocalizationService }]; } });
759
+ }], ctorParameters: function () { return [{ type: i1$1.DialogRef }]; } });
896
760
 
897
761
  /**
898
762
  * @hidden
899
763
  */
900
- class NameBoxComponent {
901
- constructor(ngZone, host, localization, renderer) {
902
- this.ngZone = ngZone;
903
- this.host = host;
904
- this.localization = localization;
905
- this.renderer = renderer;
906
- this.hostClass = true;
907
- this.valueNormalizer = (text) => text.pipe(map((content) => ({ name: content })));
908
- }
909
- keyDownHandler() {
910
- const editor = this.spreadsheetWidget.view.nameEditor;
911
- if (editor) {
912
- const name = this.inputElement.value;
913
- editor.trigger('enter', { value: name });
914
- }
915
- }
916
- ngAfterViewInit() {
917
- this.renderer.setAttribute(this.inputElement, 'title', this.title);
918
- this.renderer.setAttribute(this.inputElement, 'aria-label', this.title);
919
- }
920
- get inputElement() {
921
- return this.host.nativeElement.querySelector('.k-input-inner');
922
- }
923
- get current() {
924
- return {
925
- value: (val) => {
926
- if (val === undefined) {
927
- const item = this.combobox && this.combobox.value;
928
- return item ? (item.name || item) : item;
929
- }
930
- else {
931
- this.ngZone.run(() => {
932
- this.value = { name: val } || null;
933
- });
934
- }
935
- }
936
- };
937
- }
938
- get title() {
939
- return this.localization.get('nameBox');
940
- }
941
- onSelectionChange(value) {
942
- const editor = this.spreadsheetWidget.view.nameEditor;
943
- if (editor && value) {
944
- const name = value.name;
945
- if (name !== this.value.name) {
946
- editor.trigger('select', { name });
947
- this.value = { name };
948
- }
949
- }
950
- }
951
- onOpen() {
952
- const editor = this.spreadsheetWidget.view.nameEditor;
953
- if (editor) {
954
- this.data = editor.readData();
955
- }
956
- }
957
- }
958
- NameBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NameBoxComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: SpreadsheetLocalizationService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
959
- NameBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: NameBoxComponent, selector: "[kendoSpreadsheetNameBox]", inputs: { data: "data", spreadsheetWidget: "spreadsheetWidget" }, host: { listeners: { "keydown.enter": "keyDownHandler()" }, properties: { "class.k-spreadsheet-name-editor": "this.hostClass" } }, viewQueries: [{ propertyName: "combobox", first: true, predicate: ["combobox"], descendants: true }], ngImport: i0, template: `
960
- <kendo-combobox #combobox
961
- [popupSettings]="{popupClass: 'k-spreadsheet-names-popup'}"
962
- fillMode="flat"
963
- [clearButton]="false"
964
- textField="name"
965
- valueField="name"
966
- [data]="data"
967
- [allowCustom]="true"
968
- (selectionChange)="onSelectionChange($event)"
969
- [value]="value"
970
- (open)="onOpen()"
971
- [valueNormalizer]="valueNormalizer"
972
- [attr.title]="title"
973
- ></kendo-combobox>
974
- `, isInline: true, dependencies: [{ kind: "component", type: i2$2.ComboBoxComponent, selector: "kendo-combobox", inputs: ["icon", "svgIcon", "inputAttributes", "showStickyHeader", "focusableId", "allowCustom", "data", "value", "textField", "valueField", "valuePrimitive", "valueNormalizer", "placeholder", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "loading", "suggest", "clearButton", "disabled", "itemDisabled", "readonly", "tabindex", "tabIndex", "filterable", "virtual", "size", "rounded", "fillMode"], outputs: ["valueChange", "selectionChange", "filterChange", "open", "opened", "close", "closed", "focus", "blur", "inputFocus", "inputBlur", "escape"], exportAs: ["kendoComboBox"] }] });
975
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NameBoxComponent, decorators: [{
976
- type: Component,
977
- args: [{
978
- selector: '[kendoSpreadsheetNameBox]',
979
- template: `
980
- <kendo-combobox #combobox
981
- [popupSettings]="{popupClass: 'k-spreadsheet-names-popup'}"
982
- fillMode="flat"
983
- [clearButton]="false"
984
- textField="name"
985
- valueField="name"
986
- [data]="data"
987
- [allowCustom]="true"
988
- (selectionChange)="onSelectionChange($event)"
989
- [value]="value"
990
- (open)="onOpen()"
991
- [valueNormalizer]="valueNormalizer"
992
- [attr.title]="title"
993
- ></kendo-combobox>
994
- `
995
- }]
996
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ElementRef }, { type: SpreadsheetLocalizationService }, { type: i0.Renderer2 }]; }, propDecorators: { hostClass: [{
997
- type: HostBinding,
998
- args: ['class.k-spreadsheet-name-editor']
999
- }], keyDownHandler: [{
1000
- type: HostListener,
1001
- args: ['keydown.enter']
1002
- }], combobox: [{
1003
- type: ViewChild,
1004
- args: ['combobox']
1005
- }], data: [{
1006
- type: Input
1007
- }], spreadsheetWidget: [{
1008
- type: Input
1009
- }] } });
1010
-
1011
- /**
1012
- * @hidden
1013
- */
1014
- class ActionDialogComponent extends DialogContentBase {
1015
- constructor(dialog) {
1016
- super(dialog);
1017
- this.dialog = dialog;
1018
- }
1019
- setData(args) {
1020
- this.value = args.value;
1021
- this.tabindex = args.tabindex;
1022
- this.commandName = args.commandName;
1023
- }
1024
- }
1025
- ActionDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ActionDialogComponent, deps: [{ token: i1$1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
1026
- ActionDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ActionDialogComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1027
- <ng-container *ngIf="commandName === 'delete'">
1028
- <p>The deleted sheet data will be lost.</p>
1029
- <p>Are you sure you want to proceed?</p>
1030
- </ng-container>
1031
-
1032
- <form class="k-form k-form-md" *ngIf="commandName === 'rename'" method="dialog">
1033
- <div class="k-form-field">
1034
- <kendo-label [for]="textbox" text="Rename sheet"></kendo-label>
1035
- <div class="k-form-field-wrap">
1036
- <kendo-textbox #textbox
1037
- autocomplete="off"
1038
- placeholder="Sheet name"
1039
- [(value)]="value">
1040
- </kendo-textbox>
1041
- </div>
1042
- </div>
1043
- </form>
1044
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.TextBoxComponent, selector: "kendo-textbox", inputs: ["focusableId", "title", "type", "disabled", "readonly", "tabindex", "value", "selectOnFocus", "showSuccessIcon", "showErrorIcon", "clearButton", "successIcon", "successSvgIcon", "errorIcon", "errorSvgIcon", "clearButtonIcon", "clearButtonSvgIcon", "size", "rounded", "fillMode", "tabIndex", "placeholder", "maxlength", "inputAttributes"], outputs: ["valueChange", "inputFocus", "inputBlur", "focus", "blur"], exportAs: ["kendoTextBox"] }, { kind: "component", type: i3$2.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }] });
1045
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ActionDialogComponent, decorators: [{
1046
- type: Component,
1047
- args: [{
1048
- template: `
1049
- <ng-container *ngIf="commandName === 'delete'">
1050
- <p>The deleted sheet data will be lost.</p>
1051
- <p>Are you sure you want to proceed?</p>
1052
- </ng-container>
1053
-
1054
- <form class="k-form k-form-md" *ngIf="commandName === 'rename'" method="dialog">
1055
- <div class="k-form-field">
1056
- <kendo-label [for]="textbox" text="Rename sheet"></kendo-label>
1057
- <div class="k-form-field-wrap">
1058
- <kendo-textbox #textbox
1059
- autocomplete="off"
1060
- placeholder="Sheet name"
1061
- [(value)]="value">
1062
- </kendo-textbox>
1063
- </div>
1064
- </div>
1065
- </form>
1066
- `
1067
- }]
1068
- }], ctorParameters: function () { return [{ type: i1$1.DialogRef }]; } });
1069
-
1070
- /**
1071
- * @hidden
1072
- */
1073
- class SheetsBarComponent {
1074
- constructor(spreadsheetService, element, renderer, localization, dialogService, ngZone) {
1075
- this.spreadsheetService = spreadsheetService;
1076
- this.element = element;
764
+ class SheetsBarComponent {
765
+ constructor(spreadsheetService, element, renderer, localization, dialogService, ngZone) {
766
+ this.spreadsheetService = spreadsheetService;
767
+ this.element = element;
1077
768
  this.renderer = renderer;
1078
769
  this.localization = localization;
1079
770
  this.dialogService = dialogService;
@@ -1314,7 +1005,7 @@ class SheetsBarComponent {
1314
1005
  }
1315
1006
  }
1316
1007
  SheetsBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SheetsBarComponent, deps: [{ token: SpreadsheetService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: SpreadsheetLocalizationService }, { token: i1$1.DialogService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1317
- SheetsBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SheetsBarComponent, selector: "[kendoSpreadsheetSheetsBar]", inputs: { sheets: "sheets", sheetDescriptors: "sheetDescriptors" }, host: { properties: { "class.k-spreadsheet-sheets-bar": "this.hostClasses" } }, viewQueries: [{ propertyName: "addButton", first: true, predicate: ["addButton"], descendants: true }, { propertyName: "menuButton", first: true, predicate: ["menuButton"], descendants: true }, { propertyName: "tabstrip", first: true, predicate: ["tabstrip"], descendants: true }, { propertyName: "actionDdbs", predicate: ["sheetDdb"], descendants: true }, { propertyName: "actionDdbRefs", predicate: ["sheetDdb"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: `
1008
+ SheetsBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SheetsBarComponent, isStandalone: true, selector: "[kendoSpreadsheetSheetsBar]", inputs: { sheets: "sheets", sheetDescriptors: "sheetDescriptors" }, host: { properties: { "class.k-spreadsheet-sheets-bar": "this.hostClasses" } }, viewQueries: [{ propertyName: "addButton", first: true, predicate: ["addButton"], descendants: true }, { propertyName: "menuButton", first: true, predicate: ["menuButton"], descendants: true }, { propertyName: "tabstrip", first: true, predicate: ["tabstrip"], descendants: true }, { propertyName: "actionDdbs", predicate: ["sheetDdb"], descendants: true }, { propertyName: "actionDdbRefs", predicate: ["sheetDdb"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: `
1318
1009
  <button kendoButton #addButton
1319
1010
  [title]="messageFor('addSheet')"
1320
1011
  type="button"
@@ -1365,7 +1056,7 @@ SheetsBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
1365
1056
  </kendo-tabstrip-tab>
1366
1057
  </ng-container>
1367
1058
  </kendo-tabstrip>
1368
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.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"] }, { kind: "component", type: i5.DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["arrowIcon", "icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor", "buttonAttributes"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }, { kind: "directive", type: i3.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: i7.TabStripComponent, selector: "kendo-tabstrip", inputs: ["height", "animate", "tabAlignment", "tabPosition", "keepTabContent", "closable", "scrollable", "closeIcon", "closeIconClass", "closeSVGIcon", "showContentArea"], outputs: ["tabSelect", "tabClose", "tabScroll"], exportAs: ["kendoTabStrip"] }, { kind: "component", type: i7.TabStripTabComponent, selector: "kendo-tabstrip-tab", inputs: ["title", "disabled", "cssClass", "cssStyle", "selected", "closable", "closeIcon", "closeIconClass", "closeSVGIcon"], exportAs: ["kendoTabStripTab"] }, { kind: "directive", type: i7.TabTemplateDirective, selector: "[kendoTabTemplate]" }] });
1059
+ `, isInline: true, dependencies: [{ kind: "component", type: 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"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["arrowIcon", "icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor", "buttonAttributes"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }, { kind: "component", type: TabStripComponent, selector: "kendo-tabstrip", inputs: ["height", "animate", "tabAlignment", "tabPosition", "keepTabContent", "closable", "scrollable", "closeIcon", "closeIconClass", "closeSVGIcon", "showContentArea"], outputs: ["tabSelect", "tabClose", "tabScroll"], exportAs: ["kendoTabStrip"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TabStripTabComponent, selector: "kendo-tabstrip-tab", inputs: ["title", "disabled", "cssClass", "cssStyle", "selected", "closable", "closeIcon", "closeIconClass", "closeSVGIcon"], exportAs: ["kendoTabStripTab"] }, { kind: "directive", type: TabTemplateDirective, selector: "[kendoTabTemplate]" }] });
1369
1060
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SheetsBarComponent, decorators: [{
1370
1061
  type: Component,
1371
1062
  args: [{
@@ -1421,7 +1112,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1421
1112
  </kendo-tabstrip-tab>
1422
1113
  </ng-container>
1423
1114
  </kendo-tabstrip>
1424
- `
1115
+ `,
1116
+ standalone: true,
1117
+ imports: [ButtonComponent, EventsOutsideAngularDirective, DropDownButtonComponent, TabStripComponent, NgFor, NgIf, TabStripTabComponent, TabTemplateDirective]
1425
1118
  }]
1426
1119
  }], ctorParameters: function () { return [{ type: SpreadsheetService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: SpreadsheetLocalizationService }, { type: i1$1.DialogService }, { type: i0.NgZone }]; }, propDecorators: { hostClasses: [{
1427
1120
  type: HostBinding,
@@ -1447,102 +1140,218 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1447
1140
  args: ['sheetDdb', { read: ElementRef }]
1448
1141
  }] } });
1449
1142
 
1450
- const DEFAULT_FONT_FAMILY = 'Arial';
1451
- const DEFAULT_FONT_SIZE = 12;
1452
- /**
1453
- * @hidden
1454
- */
1455
- const DEFAULT_FONT_VALUES = {
1456
- fontSize: DEFAULT_FONT_SIZE,
1457
- fontFamily: DEFAULT_FONT_FAMILY
1458
- };
1459
- /**
1460
- * @hidden
1461
- */
1462
- const FONT_FAMILIES = ['Arial', 'Courier New', 'Georgia', 'Times New Roman', 'Trebuchet MS', 'Verdana'];
1463
- /**
1464
- * @hidden
1465
- */
1466
- const FONT_SIZES = [8, 9, 10, 11, 12, 13, 14, 16, 18, 20, 22, 24, 26, 28, 36, 48, 72];
1467
- /**
1468
- * @hidden
1469
- */
1470
- const FONT_DATA = {
1471
- fontFamily: FONT_FAMILIES,
1472
- fontSize: FONT_SIZES
1473
- };
1474
- /**
1475
- * @hidden
1476
- */
1477
- const FORMATS = [
1478
- { text: 'Automatic', value: null },
1479
- { text: 'Text', value: '@' },
1480
- { text: 'Number', value: '#,0.00' },
1481
- { text: 'Percent', value: '0.00%' },
1482
- { text: 'Financial', value: '_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)' },
1483
- { text: 'Currency', value: '$#,##0.00;[Red]$#,##0.00' },
1484
- { text: 'Date', value: 'm/d/yyyy' },
1485
- { text: 'Time', value: 'h:mm:ss AM/PM' },
1486
- { text: 'Date time', value: 'm/d/yyyy h:mm' },
1487
- { text: 'Duration', value: '[h]:mm:ss' }
1488
- ];
1489
- /**
1490
- * @hidden
1491
- */
1492
- const ALIGNS = [
1493
- { icon: commandIcons.alignLeft, svgIcon: commandSVGIcons.alignLeft, textKey: 'Align Left', commandName: 'textAlign', value: 'left', cssClass: '', commandId: 'alignLeft' },
1494
- { icon: commandIcons.alignCenter, svgIcon: commandSVGIcons.alignCenter, textKey: 'Align Center', commandName: 'textAlign', value: 'center', cssClass: '', commandId: 'alignCenter' },
1495
- { icon: commandIcons.alignRight, svgIcon: commandSVGIcons.alignRight, textKey: 'Align Right', commandName: 'textAlign', value: 'right', cssClass: '', commandId: 'alignRight' },
1496
- { icon: commandIcons.alignJustify, svgIcon: commandSVGIcons.alignJustify, textKey: 'Align Justify', commandName: 'textAlign', value: 'justify', cssClass: '', commandId: 'alignJustify' },
1497
- { icon: commandIcons.alignTop, svgIcon: commandSVGIcons.alignTop, textKey: 'Align Top', commandName: 'verticalAlign', value: 'top', cssClass: '', commandId: 'alignTop' },
1498
- { icon: commandIcons.alignMiddle, svgIcon: commandSVGIcons.alignMiddle, textKey: 'Align Middle', commandName: 'verticalAlign', value: 'center', cssClass: '', commandId: 'alignMiddle' },
1499
- { icon: commandIcons.alignBottom, svgIcon: commandSVGIcons.alignBottom, textKey: 'Align Bottom', commandName: 'verticalAlign', value: 'bottom', cssClass: '', commandId: 'alignBottom' }
1500
- ];
1501
- /**
1502
- * @hidden
1503
- */
1504
- const MERGE = [
1505
- { icon: commandIcons.mergeAll, svgIcon: commandSVGIcons.mergeAll, textKey: 'Merge all', commandName: 'cells', value: 'cells', disabled: false, commandId: 'mergeAll' },
1506
- { icon: commandIcons.mergeHorizontally, svgIcon: commandSVGIcons.mergeHorizontally, textKey: 'Merge horizontally', commandName: 'horizontally', value: 'horizontally', disabled: false, commandId: 'mergeHorizontally' },
1507
- { icon: commandIcons.mergeVertically, svgIcon: commandSVGIcons.mergeVertically, textKey: 'Merge vertically', commandName: 'vertically', value: 'vertically', disabled: false, commandId: 'mergeVertically' },
1508
- { icon: commandIcons.unmerge, svgIcon: commandSVGIcons.unmerge, textKey: 'Unmerge', commandName: 'unmerge', value: 'unmerge', disabled: false, commandId: 'unmerge' }
1509
- ];
1510
- /**
1511
- * @hidden
1512
- */
1513
- const MY_TOKEN = new InjectionToken('COMMAND_TOKEN');
1514
-
1515
1143
  /**
1516
1144
  * @hidden
1517
1145
  */
1518
- class SpreadsheetCommandBaseDirective {
1519
- constructor(command, button, localization, spreadsheetService, toolsService) {
1520
- this.command = command;
1521
- this.button = button;
1146
+ class NameBoxComponent {
1147
+ constructor(ngZone, host, localization, renderer) {
1148
+ this.ngZone = ngZone;
1149
+ this.host = host;
1522
1150
  this.localization = localization;
1523
- this.spreadsheetService = spreadsheetService;
1524
- this.toolsService = toolsService;
1525
- this.subs = new Subscription();
1526
- const text = this.localization.get(this.command);
1527
- if (text) {
1528
- this.button.showText = 'overflow';
1529
- this.button.showIcon = 'both';
1530
- this.button.text = text;
1531
- }
1532
- if (!this.button.toolbarOptions.icon) {
1533
- this.button.icon = commandIcons[this.command];
1534
- }
1535
- if (!this.button.toolbarOptions.svgIcon) {
1536
- this.button.svgIcon = commandSVGIcons[this.command];
1537
- }
1538
- this.button.title = text;
1539
- this.button.fillMode = 'flat';
1540
- this.subs.add(this.toolsService.stateChange.subscribe(state => {
1541
- this.toolsService.ngZone.onStable.pipe(take(1)).subscribe(() => this.button.selected = state[command]);
1542
- }));
1151
+ this.renderer = renderer;
1152
+ this.hostClass = true;
1153
+ this.valueNormalizer = (text) => text.pipe(map((content) => ({ name: content })));
1543
1154
  }
1544
- ngOnInit() {
1545
- this.subs.add(this.button.click.subscribe((this.clickHandler.bind(this))));
1155
+ keyDownHandler() {
1156
+ const editor = this.spreadsheetWidget.view.nameEditor;
1157
+ if (editor) {
1158
+ const name = this.inputElement.value;
1159
+ editor.trigger('enter', { value: name });
1160
+ }
1161
+ }
1162
+ ngAfterViewInit() {
1163
+ this.renderer.setAttribute(this.inputElement, 'title', this.title);
1164
+ this.renderer.setAttribute(this.inputElement, 'aria-label', this.title);
1165
+ }
1166
+ get inputElement() {
1167
+ return this.host.nativeElement.querySelector('.k-input-inner');
1168
+ }
1169
+ get current() {
1170
+ return {
1171
+ value: (val) => {
1172
+ if (val === undefined) {
1173
+ const item = this.combobox && this.combobox.value;
1174
+ return item ? (item.name || item) : item;
1175
+ }
1176
+ else {
1177
+ this.ngZone.run(() => {
1178
+ this.value = { name: val } || null;
1179
+ });
1180
+ }
1181
+ }
1182
+ };
1183
+ }
1184
+ get title() {
1185
+ return this.localization.get('nameBox');
1186
+ }
1187
+ onSelectionChange(value) {
1188
+ const editor = this.spreadsheetWidget.view.nameEditor;
1189
+ if (editor && value) {
1190
+ const name = value.name;
1191
+ if (name !== this.value.name) {
1192
+ editor.trigger('select', { name });
1193
+ this.value = { name };
1194
+ }
1195
+ }
1196
+ }
1197
+ onOpen() {
1198
+ const editor = this.spreadsheetWidget.view.nameEditor;
1199
+ if (editor) {
1200
+ this.data = editor.readData();
1201
+ }
1202
+ }
1203
+ }
1204
+ NameBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NameBoxComponent, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: SpreadsheetLocalizationService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
1205
+ NameBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: NameBoxComponent, isStandalone: true, selector: "[kendoSpreadsheetNameBox]", inputs: { data: "data", spreadsheetWidget: "spreadsheetWidget" }, host: { listeners: { "keydown.enter": "keyDownHandler()" }, properties: { "class.k-spreadsheet-name-editor": "this.hostClass" } }, viewQueries: [{ propertyName: "combobox", first: true, predicate: ["combobox"], descendants: true }], ngImport: i0, template: `
1206
+ <kendo-combobox #combobox
1207
+ [popupSettings]="{popupClass: 'k-spreadsheet-names-popup'}"
1208
+ fillMode="flat"
1209
+ [clearButton]="false"
1210
+ textField="name"
1211
+ valueField="name"
1212
+ [data]="data"
1213
+ [allowCustom]="true"
1214
+ (selectionChange)="onSelectionChange($event)"
1215
+ [value]="value"
1216
+ (open)="onOpen()"
1217
+ [valueNormalizer]="valueNormalizer"
1218
+ [attr.title]="title"
1219
+ ></kendo-combobox>
1220
+ `, isInline: true, dependencies: [{ kind: "component", type: ComboBoxComponent, selector: "kendo-combobox", inputs: ["icon", "svgIcon", "inputAttributes", "showStickyHeader", "focusableId", "allowCustom", "data", "value", "textField", "valueField", "valuePrimitive", "valueNormalizer", "placeholder", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "loading", "suggest", "clearButton", "disabled", "itemDisabled", "readonly", "tabindex", "tabIndex", "filterable", "virtual", "size", "rounded", "fillMode"], outputs: ["valueChange", "selectionChange", "filterChange", "open", "opened", "close", "closed", "focus", "blur", "inputFocus", "inputBlur", "escape"], exportAs: ["kendoComboBox"] }] });
1221
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NameBoxComponent, decorators: [{
1222
+ type: Component,
1223
+ args: [{
1224
+ selector: '[kendoSpreadsheetNameBox]',
1225
+ template: `
1226
+ <kendo-combobox #combobox
1227
+ [popupSettings]="{popupClass: 'k-spreadsheet-names-popup'}"
1228
+ fillMode="flat"
1229
+ [clearButton]="false"
1230
+ textField="name"
1231
+ valueField="name"
1232
+ [data]="data"
1233
+ [allowCustom]="true"
1234
+ (selectionChange)="onSelectionChange($event)"
1235
+ [value]="value"
1236
+ (open)="onOpen()"
1237
+ [valueNormalizer]="valueNormalizer"
1238
+ [attr.title]="title"
1239
+ ></kendo-combobox>
1240
+ `,
1241
+ standalone: true,
1242
+ imports: [ComboBoxComponent]
1243
+ }]
1244
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ElementRef }, { type: SpreadsheetLocalizationService }, { type: i0.Renderer2 }]; }, propDecorators: { hostClass: [{
1245
+ type: HostBinding,
1246
+ args: ['class.k-spreadsheet-name-editor']
1247
+ }], keyDownHandler: [{
1248
+ type: HostListener,
1249
+ args: ['keydown.enter']
1250
+ }], combobox: [{
1251
+ type: ViewChild,
1252
+ args: ['combobox']
1253
+ }], data: [{
1254
+ type: Input
1255
+ }], spreadsheetWidget: [{
1256
+ type: Input
1257
+ }] } });
1258
+
1259
+ const DEFAULT_FONT_FAMILY = 'Arial';
1260
+ const DEFAULT_FONT_SIZE = 12;
1261
+ /**
1262
+ * @hidden
1263
+ */
1264
+ const DEFAULT_FONT_VALUES = {
1265
+ fontSize: DEFAULT_FONT_SIZE,
1266
+ fontFamily: DEFAULT_FONT_FAMILY
1267
+ };
1268
+ /**
1269
+ * @hidden
1270
+ */
1271
+ const FONT_FAMILIES = ['Arial', 'Courier New', 'Georgia', 'Times New Roman', 'Trebuchet MS', 'Verdana'];
1272
+ /**
1273
+ * @hidden
1274
+ */
1275
+ const FONT_SIZES = [8, 9, 10, 11, 12, 13, 14, 16, 18, 20, 22, 24, 26, 28, 36, 48, 72];
1276
+ /**
1277
+ * @hidden
1278
+ */
1279
+ const FONT_DATA = {
1280
+ fontFamily: FONT_FAMILIES,
1281
+ fontSize: FONT_SIZES
1282
+ };
1283
+ /**
1284
+ * @hidden
1285
+ */
1286
+ const FORMATS = [
1287
+ { text: 'Automatic', value: null },
1288
+ { text: 'Text', value: '@' },
1289
+ { text: 'Number', value: '#,0.00' },
1290
+ { text: 'Percent', value: '0.00%' },
1291
+ { text: 'Financial', value: '_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)' },
1292
+ { text: 'Currency', value: '$#,##0.00;[Red]$#,##0.00' },
1293
+ { text: 'Date', value: 'm/d/yyyy' },
1294
+ { text: 'Time', value: 'h:mm:ss AM/PM' },
1295
+ { text: 'Date time', value: 'm/d/yyyy h:mm' },
1296
+ { text: 'Duration', value: '[h]:mm:ss' }
1297
+ ];
1298
+ /**
1299
+ * @hidden
1300
+ */
1301
+ const ALIGNS = [
1302
+ { icon: commandIcons.alignLeft, svgIcon: commandSVGIcons.alignLeft, textKey: 'Align Left', commandName: 'textAlign', value: 'left', cssClass: '', commandId: 'alignLeft' },
1303
+ { icon: commandIcons.alignCenter, svgIcon: commandSVGIcons.alignCenter, textKey: 'Align Center', commandName: 'textAlign', value: 'center', cssClass: '', commandId: 'alignCenter' },
1304
+ { icon: commandIcons.alignRight, svgIcon: commandSVGIcons.alignRight, textKey: 'Align Right', commandName: 'textAlign', value: 'right', cssClass: '', commandId: 'alignRight' },
1305
+ { icon: commandIcons.alignJustify, svgIcon: commandSVGIcons.alignJustify, textKey: 'Align Justify', commandName: 'textAlign', value: 'justify', cssClass: '', commandId: 'alignJustify' },
1306
+ { icon: commandIcons.alignTop, svgIcon: commandSVGIcons.alignTop, textKey: 'Align Top', commandName: 'verticalAlign', value: 'top', cssClass: '', commandId: 'alignTop' },
1307
+ { icon: commandIcons.alignMiddle, svgIcon: commandSVGIcons.alignMiddle, textKey: 'Align Middle', commandName: 'verticalAlign', value: 'center', cssClass: '', commandId: 'alignMiddle' },
1308
+ { icon: commandIcons.alignBottom, svgIcon: commandSVGIcons.alignBottom, textKey: 'Align Bottom', commandName: 'verticalAlign', value: 'bottom', cssClass: '', commandId: 'alignBottom' }
1309
+ ];
1310
+ /**
1311
+ * @hidden
1312
+ */
1313
+ const MERGE = [
1314
+ { icon: commandIcons.mergeAll, svgIcon: commandSVGIcons.mergeAll, textKey: 'Merge all', commandName: 'cells', value: 'cells', disabled: false, commandId: 'mergeAll' },
1315
+ { icon: commandIcons.mergeHorizontally, svgIcon: commandSVGIcons.mergeHorizontally, textKey: 'Merge horizontally', commandName: 'horizontally', value: 'horizontally', disabled: false, commandId: 'mergeHorizontally' },
1316
+ { icon: commandIcons.mergeVertically, svgIcon: commandSVGIcons.mergeVertically, textKey: 'Merge vertically', commandName: 'vertically', value: 'vertically', disabled: false, commandId: 'mergeVertically' },
1317
+ { icon: commandIcons.unmerge, svgIcon: commandSVGIcons.unmerge, textKey: 'Unmerge', commandName: 'unmerge', value: 'unmerge', disabled: false, commandId: 'unmerge' }
1318
+ ];
1319
+ /**
1320
+ * @hidden
1321
+ */
1322
+ const MY_TOKEN = new InjectionToken('COMMAND_TOKEN');
1323
+
1324
+ /**
1325
+ * @hidden
1326
+ */
1327
+ class SpreadsheetCommandBaseDirective {
1328
+ constructor(command, button, localization, spreadsheetService, toolsService) {
1329
+ this.command = command;
1330
+ this.button = button;
1331
+ this.localization = localization;
1332
+ this.spreadsheetService = spreadsheetService;
1333
+ this.toolsService = toolsService;
1334
+ this.subs = new Subscription();
1335
+ const text = this.localization.get(this.command);
1336
+ if (text) {
1337
+ this.button.showText = 'overflow';
1338
+ this.button.showIcon = 'both';
1339
+ this.button.text = text;
1340
+ }
1341
+ if (!this.button.toolbarOptions.icon) {
1342
+ this.button.icon = commandIcons[this.command];
1343
+ }
1344
+ if (!this.button.toolbarOptions.svgIcon) {
1345
+ this.button.svgIcon = commandSVGIcons[this.command];
1346
+ }
1347
+ this.button.title = text;
1348
+ this.button.fillMode = 'flat';
1349
+ this.subs.add(this.toolsService.stateChange.subscribe(state => {
1350
+ this.toolsService.ngZone.onStable.pipe(take(1)).subscribe(() => this.button.selected = state[command]);
1351
+ }));
1352
+ }
1353
+ ngOnInit() {
1354
+ this.subs.add(this.button.click.subscribe((this.clickHandler.bind(this))));
1546
1355
  this.subs.add(this.button.pointerdown.subscribe((this.pointerdownHandler.bind(this))));
1547
1356
  }
1548
1357
  ngOnDestroy() {
@@ -1589,278 +1398,355 @@ class SpreadsheetCommandButton extends SpreadsheetCommandBaseDirective {
1589
1398
  /**
1590
1399
  * @hidden
1591
1400
  */
1592
- class SpreadsheetBoldDirective extends SpreadsheetCommandButton {
1593
- constructor(button, localization, spreadsheetService, toolsService) {
1594
- super('bold', button, localization, spreadsheetService, toolsService, {
1595
- command: 'PropertyChangeCommand',
1596
- options: { property: 'bold',
1597
- value: !button.selected
1598
- }
1599
- });
1600
- }
1601
- }
1602
- SpreadsheetBoldDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetBoldDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1603
- SpreadsheetBoldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetBoldDirective, selector: "kendo-toolbar-button[kendoSpreadsheetBold]", usesInheritance: true, ngImport: i0 });
1604
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetBoldDirective, decorators: [{
1605
- type: Directive,
1606
- args: [{
1607
- selector: 'kendo-toolbar-button[kendoSpreadsheetBold]'
1608
- }]
1609
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1610
-
1611
- /**
1612
- * @hidden
1613
- */
1614
- class SpreadsheetItalicDirective extends SpreadsheetCommandButton {
1401
+ class SpreadsheetGridLinesDirective extends SpreadsheetCommandButton {
1615
1402
  constructor(button, localization, spreadsheetService, toolsService) {
1616
- super('italic', button, localization, spreadsheetService, toolsService, {
1617
- command: 'PropertyChangeCommand',
1618
- options: { property: 'italic',
1403
+ super('gridLines', button, localization, spreadsheetService, toolsService, {
1404
+ command: 'GridLinesChangeCommand',
1405
+ options: { property: 'gridLines',
1619
1406
  value: !button.selected
1620
1407
  }
1621
1408
  });
1622
1409
  }
1623
- }
1624
- SpreadsheetItalicDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetItalicDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1625
- SpreadsheetItalicDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetItalicDirective, selector: "kendo-toolbar-button[kendoSpreadsheetItalic]", usesInheritance: true, ngImport: i0 });
1626
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetItalicDirective, decorators: [{
1627
- type: Directive,
1628
- args: [{
1629
- selector: 'kendo-toolbar-button[kendoSpreadsheetItalic]'
1630
- }]
1631
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1632
-
1633
- /**
1634
- * @hidden
1635
- */
1636
- class SpreadsheetUnderlineDirective extends SpreadsheetCommandButton {
1637
- constructor(button, localization, spreadsheetService, toolsService) {
1638
- super('underline', button, localization, spreadsheetService, toolsService, {
1639
- command: 'PropertyChangeCommand',
1640
- options: { property: 'underline',
1641
- value: !button.selected
1642
- }
1643
- });
1410
+ clickHandler() {
1411
+ const sheet = this.spreadsheetService.spreadsheet.activeSheet();
1412
+ if (sheet) {
1413
+ const value = !sheet.showGridLines();
1414
+ const options = {
1415
+ command: 'GridLinesChangeCommand', options: { property: 'gridLines', value }
1416
+ };
1417
+ this.spreadsheetService.spreadsheet.executeCommand(options);
1418
+ }
1644
1419
  }
1645
1420
  }
1646
- SpreadsheetUnderlineDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetUnderlineDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1647
- SpreadsheetUnderlineDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetUnderlineDirective, selector: "kendo-toolbar-button[kendoSpreadsheetUnderline]", usesInheritance: true, ngImport: i0 });
1648
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetUnderlineDirective, decorators: [{
1421
+ SpreadsheetGridLinesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetGridLinesDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1422
+ SpreadsheetGridLinesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetGridLinesDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetGridLines]", usesInheritance: true, ngImport: i0 });
1423
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetGridLinesDirective, decorators: [{
1649
1424
  type: Directive,
1650
1425
  args: [{
1651
- selector: 'kendo-toolbar-button[kendoSpreadsheetUnderline]'
1426
+ selector: 'kendo-toolbar-button[kendoSpreadsheetGridLines]',
1427
+ standalone: true
1652
1428
  }]
1653
1429
  }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1654
1430
 
1655
1431
  /**
1656
1432
  * @hidden
1657
1433
  */
1658
- class SpreadsheetLoadFileComponent extends ToolBarToolComponent {
1659
- constructor(localization, spreadsheetService, toolbar) {
1660
- super();
1661
- this.localization = localization;
1434
+ class SpreadsheetMergeDirective {
1435
+ constructor(host, localization, spreadsheetService) {
1436
+ this.host = host;
1662
1437
  this.spreadsheetService = spreadsheetService;
1663
- this.toolbar = toolbar;
1664
- this.icon = commandIcons['folderOpen'];
1665
- this.svgIcon = commandSVGIcons['folderOpen'];
1666
- this.tabindex = -1;
1667
- this.onFileSelect = (e) => {
1668
- const file = e.target.files[0];
1669
- if (file) {
1670
- this.spreadsheetService.spreadsheet.executeCommand({ command: 'OpenCommand', options: { file } });
1671
- e.target.value = null;
1672
- }
1673
- };
1438
+ this.commandName = 'merge';
1439
+ this.subs = new Subscription();
1440
+ host.svgIcon = commandSVGIcons[this.commandName];
1441
+ host.icon = commandIcons[this.commandName];
1442
+ host.arrowIcon = true;
1443
+ host.fillMode = 'flat';
1444
+ host.data = MERGE.map(item => (Object.assign(Object.assign({}, item), { textKey: localization.get(item.commandId) })));
1445
+ this.subs.add(host.itemClick.subscribe((e) => this.onItemClick(e)));
1446
+ host.title = localization.get(this.commandName);
1447
+ host.textField = 'textKey';
1674
1448
  }
1675
- /**
1676
- * @hidden
1677
- */
1678
- messageFor(key) {
1679
- return this.localization.get(key);
1449
+ ngOnInit() {
1450
+ this.subs.add(this.host.open.subscribe(() => {
1451
+ const sheet = this.spreadsheetService.spreadsheet.activeSheet();
1452
+ const isMergedCellWithinRange = this.hasMergedCells(sheet);
1453
+ const unmergeItem = this.host.data.find(i => i.commandName === 'unmerge');
1454
+ unmergeItem.disabled = !isMergedCellWithinRange;
1455
+ }));
1456
+ this.subs.add(this.spreadsheetService.selectionChanged.subscribe(range => this.selectedRange = range));
1680
1457
  }
1681
- /**
1682
- * @hidden
1683
- */
1684
- canFocus() {
1685
- return true;
1458
+ ngOnDestroy() {
1459
+ this.subs.unsubscribe();
1686
1460
  }
1687
- /**
1688
- * @hidden
1689
- */
1690
- focus() {
1691
- this.tabindex = 0;
1692
- if (this.overflows) {
1693
- this.overflowButtonElement.nativeElement.focus();
1694
- }
1695
- else {
1696
- this.button.focus();
1461
+ onItemClick(item) {
1462
+ if (item.disabled) {
1463
+ return;
1697
1464
  }
1465
+ const value = item.value || null;
1466
+ const options = {
1467
+ command: 'MergeCellCommand', options: { property: item.commandName, value }
1468
+ };
1469
+ this.spreadsheetService.spreadsheet.executeCommand(options);
1698
1470
  }
1699
- /**
1700
- * @hidden
1701
- */
1702
- handleKey() {
1703
- this.tabindex = -1;
1704
- return false;
1471
+ hasMergedCells(sheet) {
1472
+ const range = sheet._ref(this.selectedRange);
1473
+ return sheet._getMergedCells(range).hasMerged;
1705
1474
  }
1706
1475
  }
1707
- SpreadsheetLoadFileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetLoadFileComponent, deps: [{ token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
1708
- SpreadsheetLoadFileComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetLoadFileComponent, selector: "kendo-spreadsheet-load-file-tool", providers: [
1709
- {
1710
- provide: ToolBarToolComponent,
1711
- useExisting: forwardRef(() => SpreadsheetLoadFileComponent),
1712
- },
1713
- ], viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "overflowButtonElement", first: true, predicate: ["overflowButton"], descendants: true, read: ElementRef }, { propertyName: "button", first: true, predicate: ["button"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
1714
- <ng-template #toolbarTemplate>
1715
- <button
1716
- #button
1717
- type="button"
1718
- kendoButton
1719
- [title]="messageFor('loadFile')"
1720
- fillMode="flat"
1721
- [icon]="icon"
1722
- [svgIcon]="svgIcon"
1723
- (click)="fileSelectEl.click()"></button>
1724
- <input
1725
- #fileSelectEl
1726
- type="file"
1727
- (change)="onFileSelect($event)"
1728
- [style.display]="'none'"
1729
- aria-hidden="true"
1730
- accept=".xlsx,.XLSX" />
1731
- </ng-template>
1732
- <ng-template #popupTemplate>
1733
- <div
1734
- #overflowButton
1735
- tabindex="-1"
1736
- role="menuitem"
1737
- class="k-item k-menu-item"
1738
- (click)="toolbar.toggle(false); popupFileSelectEl.click()">
1739
- <span
1740
- class="k-link k-menu-link">
1741
- <kendo-icon-wrapper
1742
- [name]="icon"
1743
- [svgIcon]="svgIcon"
1744
- ></kendo-icon-wrapper>
1745
- <span class="k-menu-link-text">{{messageFor('loadFile')}}</span>
1746
- </span>
1747
- <input
1748
- #popupFileSelectEl
1749
- type="file"
1750
- (change)="onFileSelect($event)"
1751
- [style.display]="'none'"
1752
- aria-hidden="true"
1753
- accept=".xlsx,.XLSX" />
1754
- </div>
1755
- </ng-template>
1756
- `, isInline: true, dependencies: [{ kind: "component", type: i5.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"] }, { kind: "component", type: i6.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
1757
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetLoadFileComponent, decorators: [{
1758
- type: Component,
1476
+ SpreadsheetMergeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetMergeDirective, deps: [{ token: i1$2.ToolBarDropDownButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }], target: i0.ɵɵFactoryTarget.Directive });
1477
+ SpreadsheetMergeDirectivedir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetMergeDirective, isStandalone: true, selector: "[kendoSpreadsheetMerge]", ngImport: i0 });
1478
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetMergeDirective, decorators: [{
1479
+ type: Directive,
1759
1480
  args: [{
1760
- selector: 'kendo-spreadsheet-load-file-tool',
1761
- providers: [
1762
- {
1763
- provide: ToolBarToolComponent,
1764
- useExisting: forwardRef(() => SpreadsheetLoadFileComponent),
1765
- },
1766
- ],
1767
- template: `
1768
- <ng-template #toolbarTemplate>
1769
- <button
1770
- #button
1771
- type="button"
1772
- kendoButton
1773
- [title]="messageFor('loadFile')"
1774
- fillMode="flat"
1775
- [icon]="icon"
1776
- [svgIcon]="svgIcon"
1777
- (click)="fileSelectEl.click()"></button>
1778
- <input
1779
- #fileSelectEl
1780
- type="file"
1781
- (change)="onFileSelect($event)"
1782
- [style.display]="'none'"
1783
- aria-hidden="true"
1784
- accept=".xlsx,.XLSX" />
1785
- </ng-template>
1786
- <ng-template #popupTemplate>
1787
- <div
1788
- #overflowButton
1789
- tabindex="-1"
1790
- role="menuitem"
1791
- class="k-item k-menu-item"
1792
- (click)="toolbar.toggle(false); popupFileSelectEl.click()">
1793
- <span
1794
- class="k-link k-menu-link">
1795
- <kendo-icon-wrapper
1796
- [name]="icon"
1797
- [svgIcon]="svgIcon"
1798
- ></kendo-icon-wrapper>
1799
- <span class="k-menu-link-text">{{messageFor('loadFile')}}</span>
1800
- </span>
1801
- <input
1802
- #popupFileSelectEl
1803
- type="file"
1804
- (change)="onFileSelect($event)"
1805
- [style.display]="'none'"
1806
- aria-hidden="true"
1807
- accept=".xlsx,.XLSX" />
1808
- </div>
1809
- </ng-template>
1810
- `
1481
+ selector: '[kendoSpreadsheetMerge]',
1482
+ standalone: true
1483
+ }]
1484
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarDropDownButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }]; } });
1485
+
1486
+ /**
1487
+ * @hidden
1488
+ */
1489
+ class SpreadsheetIncreaseDecimalDirective extends SpreadsheetCommandButton {
1490
+ constructor(button, localization, spreadsheetService, toolsService) {
1491
+ super('increaseDecimal', button, localization, spreadsheetService, toolsService, {
1492
+ command: 'AdjustDecimalsCommand'
1493
+ });
1494
+ }
1495
+ clickHandler() {
1496
+ const options = {
1497
+ command: 'AdjustDecimalsCommand',
1498
+ options: { value: 1 }
1499
+ };
1500
+ this.spreadsheetService.spreadsheet.executeCommand(options);
1501
+ }
1502
+ }
1503
+ SpreadsheetIncreaseDecimalDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetIncreaseDecimalDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1504
+ SpreadsheetIncreaseDecimalDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetIncreaseDecimalDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetIncreaseDecimal]", usesInheritance: true, ngImport: i0 });
1505
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetIncreaseDecimalDirective, decorators: [{
1506
+ type: Directive,
1507
+ args: [{
1508
+ selector: 'kendo-toolbar-button[kendoSpreadsheetIncreaseDecimal]',
1509
+ standalone: true
1510
+ }]
1511
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1512
+
1513
+ /**
1514
+ * @hidden
1515
+ */
1516
+ class SpreadsheetDecreaseDecimalDirective extends SpreadsheetCommandButton {
1517
+ constructor(button, localization, spreadsheetService, toolsService) {
1518
+ super('decreaseDecimal', button, localization, spreadsheetService, toolsService, {
1519
+ command: 'AdjustDecimalsCommand'
1520
+ });
1521
+ }
1522
+ clickHandler() {
1523
+ const options = {
1524
+ command: 'AdjustDecimalsCommand',
1525
+ options: { value: -1 }
1526
+ };
1527
+ this.spreadsheetService.spreadsheet.executeCommand(options);
1528
+ }
1529
+ }
1530
+ SpreadsheetDecreaseDecimalDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDecreaseDecimalDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1531
+ SpreadsheetDecreaseDecimalDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetDecreaseDecimalDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetDecreaseDecimal]", usesInheritance: true, ngImport: i0 });
1532
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDecreaseDecimalDirective, decorators: [{
1533
+ type: Directive,
1534
+ args: [{
1535
+ selector: 'kendo-toolbar-button[kendoSpreadsheetDecreaseDecimal]',
1536
+ standalone: true
1537
+ }]
1538
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1539
+
1540
+ /**
1541
+ * @hidden
1542
+ */
1543
+ class SpreadsheetDeleteRowButtonDirective extends SpreadsheetCommandButton {
1544
+ constructor(button, localization, spreadsheetService, toolsService) {
1545
+ super('deleteRow', button, localization, spreadsheetService, toolsService, {
1546
+ command: 'DeleteRowCommand',
1547
+ options: { property: 'deleteRow' }
1548
+ });
1549
+ }
1550
+ }
1551
+ SpreadsheetDeleteRowButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDeleteRowButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1552
+ SpreadsheetDeleteRowButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetDeleteRowButtonDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetDeleteRowButton]", usesInheritance: true, ngImport: i0 });
1553
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDeleteRowButtonDirective, decorators: [{
1554
+ type: Directive,
1555
+ args: [{
1556
+ selector: 'kendo-toolbar-button[kendoSpreadsheetDeleteRowButton]',
1557
+ standalone: true
1558
+ }]
1559
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1560
+
1561
+ /**
1562
+ * @hidden
1563
+ */
1564
+ class SpreadsheetDeleteColumnButtonDirective extends SpreadsheetCommandButton {
1565
+ constructor(button, localization, spreadsheetService, toolsService) {
1566
+ super('deleteColumn', button, localization, spreadsheetService, toolsService, {
1567
+ command: 'DeleteColumnCommand',
1568
+ options: { property: 'deleteColumn' }
1569
+ });
1570
+ }
1571
+ }
1572
+ SpreadsheetDeleteColumnButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDeleteColumnButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1573
+ SpreadsheetDeleteColumnButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetDeleteColumnButtonDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetDeleteColumnButton]", usesInheritance: true, ngImport: i0 });
1574
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDeleteColumnButtonDirective, decorators: [{
1575
+ type: Directive,
1576
+ args: [{
1577
+ selector: 'kendo-toolbar-button[kendoSpreadsheetDeleteColumnButton]',
1578
+ standalone: true
1579
+ }]
1580
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1581
+
1582
+ /**
1583
+ * @hidden
1584
+ */
1585
+ class SpreadsheetAddRowAboveButtonDirective extends SpreadsheetCommandButton {
1586
+ constructor(button, localization, spreadsheetService, toolsService) {
1587
+ super('addRowAbove', button, localization, spreadsheetService, toolsService, {
1588
+ command: 'AddRowCommand',
1589
+ options: { property: 'addRowAbove',
1590
+ value: 'above'
1591
+ }
1592
+ });
1593
+ }
1594
+ }
1595
+ SpreadsheetAddRowAboveButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddRowAboveButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1596
+ SpreadsheetAddRowAboveButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetAddRowAboveButtonDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetAddRowAboveButton]", usesInheritance: true, ngImport: i0 });
1597
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddRowAboveButtonDirective, decorators: [{
1598
+ type: Directive,
1599
+ args: [{
1600
+ selector: 'kendo-toolbar-button[kendoSpreadsheetAddRowAboveButton]',
1601
+ standalone: true
1811
1602
  }]
1812
- }], ctorParameters: function () {
1813
- return [{ type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: i1$2.ToolBarComponent, decorators: [{
1814
- type: Inject,
1815
- args: [ToolBarComponent]
1816
- }] }];
1817
- }, propDecorators: { toolbarTemplate: [{
1818
- type: ViewChild,
1819
- args: ['toolbarTemplate', { static: true }]
1820
- }], popupTemplate: [{
1821
- type: ViewChild,
1822
- args: ['popupTemplate', { static: true }]
1823
- }], overflowButtonElement: [{
1824
- type: ViewChild,
1825
- args: ['overflowButton', { read: ElementRef, static: false }]
1826
- }], button: [{
1827
- type: ViewChild,
1828
- args: ['button']
1829
- }] } });
1603
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1830
1604
 
1831
1605
  /**
1832
1606
  * @hidden
1833
1607
  */
1834
- class SpreadsheetSaveFileDirective {
1835
- constructor(button, localization, spreadsheetService) {
1836
- this.button = button;
1837
- this.localization = localization;
1838
- this.spreadsheetService = spreadsheetService;
1839
- this.subs = new Subscription();
1608
+ class SpreadsheetAddRowBelowButtonDirective extends SpreadsheetCommandButton {
1609
+ constructor(button, localization, spreadsheetService, toolsService) {
1610
+ super('addRowBelow', button, localization, spreadsheetService, toolsService, {
1611
+ command: 'AddRowCommand',
1612
+ options: { property: 'addRowBelow',
1613
+ value: 'below'
1614
+ }
1615
+ });
1840
1616
  }
1841
- ngOnInit() {
1842
- this.button.title = this.localization.get('saveFile');
1843
- this.button.icon = commandIcons['download'];
1844
- this.button.svgIcon = commandSVGIcons['download'];
1845
- this.button.fillMode = 'flat';
1846
- this.subs.add(this.button.click.subscribe(() => {
1847
- const spreadsheet = this.spreadsheetService.spreadsheet;
1848
- if (spreadsheet) {
1849
- spreadsheet.saveAsExcel(Object.assign(Object.assign({}, spreadsheet.options.excel), { saveAs,
1850
- Workbook }));
1617
+ }
1618
+ SpreadsheetAddRowBelowButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddRowBelowButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1619
+ SpreadsheetAddRowBelowButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetAddRowBelowButtonDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetAddRowBelowButton]", usesInheritance: true, ngImport: i0 });
1620
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddRowBelowButtonDirective, decorators: [{
1621
+ type: Directive,
1622
+ args: [{
1623
+ selector: 'kendo-toolbar-button[kendoSpreadsheetAddRowBelowButton]',
1624
+ standalone: true
1625
+ }]
1626
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1627
+
1628
+ /**
1629
+ * @hidden
1630
+ */
1631
+ class SpreadsheetAddColumnRightButtonDirective extends SpreadsheetCommandButton {
1632
+ constructor(button, localization, spreadsheetService, toolsService) {
1633
+ super('addColumnRight', button, localization, spreadsheetService, toolsService, {
1634
+ command: 'AddColumnCommand',
1635
+ options: { property: 'addColumnRight',
1636
+ value: 'right'
1851
1637
  }
1852
- }));
1638
+ });
1639
+ }
1640
+ }
1641
+ SpreadsheetAddColumnRightButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddColumnRightButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1642
+ SpreadsheetAddColumnRightButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetAddColumnRightButtonDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetAddColumnRightButton]", usesInheritance: true, ngImport: i0 });
1643
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddColumnRightButtonDirective, decorators: [{
1644
+ type: Directive,
1645
+ args: [{
1646
+ selector: 'kendo-toolbar-button[kendoSpreadsheetAddColumnRightButton]',
1647
+ standalone: true
1648
+ }]
1649
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1650
+
1651
+ /**
1652
+ * @hidden
1653
+ */
1654
+ class SpreadsheetAddColumnLeftButtonDirective extends SpreadsheetCommandButton {
1655
+ constructor(button, localization, spreadsheetService, toolsService) {
1656
+ super('addColumnLeft', button, localization, spreadsheetService, toolsService, {
1657
+ command: 'AddColumnCommand',
1658
+ options: { property: 'addColumnLeft',
1659
+ value: 'left'
1660
+ }
1661
+ });
1662
+ }
1663
+ }
1664
+ SpreadsheetAddColumnLeftButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddColumnLeftButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1665
+ SpreadsheetAddColumnLeftButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetAddColumnLeftButtonDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetAddColumnLeftButton]", usesInheritance: true, ngImport: i0 });
1666
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddColumnLeftButtonDirective, decorators: [{
1667
+ type: Directive,
1668
+ args: [{
1669
+ selector: 'kendo-toolbar-button[kendoSpreadsheetAddColumnLeftButton]',
1670
+ standalone: true
1671
+ }]
1672
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1673
+
1674
+ /**
1675
+ * @hidden
1676
+ */
1677
+ class SpreadsheetInsertLinkDirective extends SpreadsheetCommandButton {
1678
+ constructor(button, localization, spreadsheetService, toolsService, dialogService) {
1679
+ super('insertLink', button, localization, spreadsheetService, toolsService, {
1680
+ command: 'HyperlinkCommand'
1681
+ });
1682
+ this.dialogService = dialogService;
1683
+ this.subs.add(spreadsheetService.selectionChanged.subscribe(range => this.currentRange = range));
1853
1684
  }
1854
1685
  ngOnDestroy() {
1855
1686
  this.subs.unsubscribe();
1856
1687
  }
1688
+ clickHandler() {
1689
+ const sheet = this.spreadsheetService.spreadsheet.activeSheet();
1690
+ if (sheet) {
1691
+ this.openDialog();
1692
+ }
1693
+ }
1694
+ /**
1695
+ * @hidden
1696
+ */
1697
+ openDialog() {
1698
+ var _a, _b;
1699
+ const hasLink = isPresent((_a = this.currentRange) === null || _a === void 0 ? void 0 : _a.link());
1700
+ const dialogSettings = {
1701
+ appendTo: this.spreadsheetService.dialogContainer,
1702
+ title: this.localization.get(this.command),
1703
+ content: InsertLinkDialogComponent,
1704
+ actions: [{
1705
+ text: this.localization.get('dialogInsert'),
1706
+ themeColor: 'primary'
1707
+ }, {
1708
+ text: this.localization.get('dialogCancel')
1709
+ },
1710
+ 'spacer', {
1711
+ text: this.localization.get('dialogRemoveLink'),
1712
+ themeColor: 'primary',
1713
+ fillMode: 'clear',
1714
+ cssClass: hasLink ? '' : 'k-disabled'
1715
+ }],
1716
+ actionsLayout: 'start',
1717
+ width: 400,
1718
+ autoFocusedElement: '.k-textbox > .k-input-inner'
1719
+ };
1720
+ const dialog = this.dialogService.open(dialogSettings);
1721
+ const dialogInstance = dialog.dialog.instance;
1722
+ const dialogContent = dialog.content.instance;
1723
+ if (hasLink) {
1724
+ dialogContent.setData({ link: (_b = this.currentRange) === null || _b === void 0 ? void 0 : _b.link() });
1725
+ }
1726
+ dialogInstance.action.pipe(take(1)).subscribe((event) => {
1727
+ if (event.text === this.localization.get('dialogCancel')) {
1728
+ return;
1729
+ }
1730
+ let link = null;
1731
+ if (event.text === this.localization.get('dialogInsert')) {
1732
+ link = dialogContent.urlLink || null;
1733
+ }
1734
+ this.spreadsheetService.spreadsheet.executeCommand({
1735
+ command: 'HyperlinkCommand',
1736
+ options: { link }
1737
+ });
1738
+ });
1739
+ }
1857
1740
  }
1858
- SpreadsheetSaveFileDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetSaveFileDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }], target: i0.ɵɵFactoryTarget.Directive });
1859
- SpreadsheetSaveFileDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetSaveFileDirective, selector: "[kendoSpreadsheetSaveFile]", ngImport: i0 });
1860
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetSaveFileDirective, decorators: [{
1741
+ SpreadsheetInsertLinkDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetInsertLinkDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }, { token: i1$1.DialogService }], target: i0.ɵɵFactoryTarget.Directive });
1742
+ SpreadsheetInsertLinkDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetInsertLinkDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetInsertLink]", usesInheritance: true, ngImport: i0 });
1743
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetInsertLinkDirective, decorators: [{
1861
1744
  type: Directive,
1862
- args: [{ selector: '[kendoSpreadsheetSaveFile]' }]
1863
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }]; } });
1745
+ args: [{
1746
+ selector: 'kendo-toolbar-button[kendoSpreadsheetInsertLink]',
1747
+ standalone: true
1748
+ }]
1749
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: i1$1.DialogService }]; } });
1864
1750
 
1865
1751
  /**
1866
1752
  * @hidden
@@ -1899,57 +1785,134 @@ class SpreadsheetFormatDirective {
1899
1785
  }
1900
1786
  }
1901
1787
  SpreadsheetFormatDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFormatDirective, deps: [{ token: i1$2.ToolBarDropDownButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1902
- SpreadsheetFormatDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetFormatDirective, selector: "[kendoSpreadsheetFormat]", ngImport: i0 });
1788
+ SpreadsheetFormatDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetFormatDirective, isStandalone: true, selector: "[kendoSpreadsheetFormat]", ngImport: i0 });
1903
1789
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFormatDirective, decorators: [{
1904
1790
  type: Directive,
1905
1791
  args: [{
1906
1792
  selector: '[kendoSpreadsheetFormat]',
1793
+ standalone: true
1907
1794
  }]
1908
1795
  }], ctorParameters: function () { return [{ type: i1$2.ToolBarDropDownButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1909
1796
 
1910
1797
  /**
1911
1798
  * @hidden
1912
1799
  */
1913
- class SpreadsheetUndoDirective extends SpreadsheetCommandButton {
1800
+ class SpreadsheetTextWrapDirective extends SpreadsheetCommandButton {
1914
1801
  constructor(button, localization, spreadsheetService, toolsService) {
1915
- super('undo', button, localization, spreadsheetService, toolsService, {
1916
- options: { property: 'undo' }
1802
+ super('wrap', button, localization, spreadsheetService, toolsService, {
1803
+ command: 'TextWrapCommand',
1804
+ options: { property: 'wrap',
1805
+ value: !button.selected
1806
+ }
1917
1807
  });
1918
1808
  }
1919
1809
  clickHandler() {
1920
- this.spreadsheetService.spreadsheet.workbook.undoRedoStack['undo']();
1810
+ const sheet = this.spreadsheetService.spreadsheet.activeSheet();
1811
+ if (sheet) {
1812
+ const range = sheet.range(sheet.activeCell());
1813
+ const value = !range.wrap();
1814
+ const options = {
1815
+ command: 'TextWrapCommand', options: { property: 'wrap', value }
1816
+ };
1817
+ this.spreadsheetService.spreadsheet.executeCommand(options);
1818
+ }
1819
+ }
1820
+ }
1821
+ SpreadsheetTextWrapDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetTextWrapDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1822
+ SpreadsheetTextWrapDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetTextWrapDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetTextWrap]", usesInheritance: true, ngImport: i0 });
1823
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetTextWrapDirective, decorators: [{
1824
+ type: Directive,
1825
+ args: [{
1826
+ selector: 'kendo-toolbar-button[kendoSpreadsheetTextWrap]',
1827
+ standalone: true
1828
+ }]
1829
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1830
+
1831
+ /**
1832
+ * @hidden
1833
+ */
1834
+ class SpreadsheetVerticalTextAlignDirective {
1835
+ constructor(host, localization, spreadsheetService, toolsService) {
1836
+ this.host = host;
1837
+ this.spreadsheetService = spreadsheetService;
1838
+ this.toolsService = toolsService;
1839
+ this.commandName = 'alignVertical';
1840
+ this.subs = new Subscription();
1841
+ host.svgIcon = commandSVGIcons[this.commandName];
1842
+ host.icon = commandIcons[this.commandName];
1843
+ host.arrowIcon = true;
1844
+ host.fillMode = 'flat';
1845
+ host.data = ALIGNS.flatMap(item => item.commandName === 'verticalAlign' ? [Object.assign(Object.assign({}, item), { textKey: localization.get(item.commandId) })] : []);
1846
+ this.subs.add(host.itemClick.subscribe((e) => this.onItemClick(e)));
1847
+ host.title = localization.get(this.commandName);
1848
+ host.textField = 'textKey';
1849
+ }
1850
+ ngOnInit() {
1851
+ this.subs.add(this.toolsService.stateChange.subscribe(state => this.host.data.forEach(i => i.cssClass = i.value === state[i.commandName] ? 'k-selected' : '')));
1852
+ }
1853
+ ngOnDestroy() {
1854
+ this.subs.unsubscribe();
1855
+ }
1856
+ onItemClick(item) {
1857
+ const value = item.value || null;
1858
+ const options = {
1859
+ command: 'PropertyChangeCommand', options: { property: item.commandName, value }
1860
+ };
1861
+ this.spreadsheetService.spreadsheet.executeCommand(options);
1862
+ }
1863
+ }
1864
+ SpreadsheetVerticalTextAlignDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetVerticalTextAlignDirective, deps: [{ token: i1$2.ToolBarDropDownButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1865
+ SpreadsheetVerticalTextAlignDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetVerticalTextAlignDirective, isStandalone: true, selector: "[kendoSpreadsheetVerticalTextAlign]", ngImport: i0 });
1866
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetVerticalTextAlignDirective, decorators: [{
1867
+ type: Directive,
1868
+ args: [{
1869
+ selector: '[kendoSpreadsheetVerticalTextAlign]',
1870
+ standalone: true
1871
+ }]
1872
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarDropDownButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1873
+
1874
+ /**
1875
+ * @hidden
1876
+ */
1877
+ class SpreadsheetHorizontalTextAlignDirective {
1878
+ constructor(host, localization, spreadsheetService, toolsService) {
1879
+ this.host = host;
1880
+ this.spreadsheetService = spreadsheetService;
1881
+ this.toolsService = toolsService;
1882
+ this.commandName = 'alignHorizontal';
1883
+ this.subs = new Subscription();
1884
+ host.svgIcon = commandSVGIcons[this.commandName];
1885
+ host.icon = commandIcons[this.commandName];
1886
+ host.arrowIcon = true;
1887
+ host.fillMode = 'flat';
1888
+ host.data = ALIGNS.flatMap(item => item.commandName === 'textAlign' ? [Object.assign(Object.assign({}, item), { textKey: localization.get(item.commandId) })] : []);
1889
+ this.subs.add(host.itemClick.subscribe((e) => this.onItemClick(e)));
1890
+ host.title = localization.get(this.commandName);
1891
+ host.textField = 'textKey';
1921
1892
  }
1922
- }
1923
- SpreadsheetUndoDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetUndoDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1924
- SpreadsheetUndoDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetUndoDirective, selector: "kendo-toolbar-button[kendoSpreadsheetUndo]", usesInheritance: true, ngImport: i0 });
1925
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetUndoDirective, decorators: [{
1926
- type: Directive,
1927
- args: [{
1928
- selector: 'kendo-toolbar-button[kendoSpreadsheetUndo]'
1929
- }]
1930
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1931
-
1932
- /**
1933
- * @hidden
1934
- */
1935
- class SpreadsheetRedoDirective extends SpreadsheetCommandButton {
1936
- constructor(button, localization, spreadsheetService, toolsService) {
1937
- super('redo', button, localization, spreadsheetService, toolsService, {
1938
- options: { property: 'redo' }
1939
- });
1893
+ ngOnInit() {
1894
+ this.subs.add(this.toolsService.stateChange.subscribe(state => this.host.data.forEach(i => i.cssClass = i.value === state[i.commandName] ? 'k-selected' : '')));
1940
1895
  }
1941
- clickHandler() {
1942
- this.spreadsheetService.spreadsheet.workbook.undoRedoStack['redo']();
1896
+ ngOnDestroy() {
1897
+ this.subs.unsubscribe();
1898
+ }
1899
+ onItemClick(item) {
1900
+ const value = item.value || null;
1901
+ const options = {
1902
+ command: 'PropertyChangeCommand', options: { property: item.commandName, value }
1903
+ };
1904
+ this.spreadsheetService.spreadsheet.executeCommand(options);
1943
1905
  }
1944
1906
  }
1945
- SpreadsheetRedoDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetRedoDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1946
- SpreadsheetRedoDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetRedoDirective, selector: "kendo-toolbar-button[kendoSpreadsheetRedo]", usesInheritance: true, ngImport: i0 });
1947
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetRedoDirective, decorators: [{
1907
+ SpreadsheetHorizontalTextAlignDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetHorizontalTextAlignDirective, deps: [{ token: i1$2.ToolBarDropDownButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
1908
+ SpreadsheetHorizontalTextAlignDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetHorizontalTextAlignDirective, isStandalone: true, selector: "[kendoSpreadsheetHorizontalTextAlign]", ngImport: i0 });
1909
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetHorizontalTextAlignDirective, decorators: [{
1948
1910
  type: Directive,
1949
1911
  args: [{
1950
- selector: 'kendo-toolbar-button[kendoSpreadsheetRedo]'
1912
+ selector: '[kendoSpreadsheetHorizontalTextAlign]',
1913
+ standalone: true
1951
1914
  }]
1952
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1915
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarDropDownButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
1953
1916
 
1954
1917
  /**
1955
1918
  * @hidden
@@ -2008,82 +1971,86 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2008
1971
  /**
2009
1972
  * @hidden
2010
1973
  */
2011
- class FontFamilyDropDownListComponent extends DropDownListBase {
1974
+ class FontSizeDropDownListComponent extends DropDownListBase {
2012
1975
  }
2013
- FontFamilyDropDownListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FontFamilyDropDownListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
2014
- FontFamilyDropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FontFamilyDropDownListComponent, selector: "kendo-spreadsheet-fontfamily-dropdownlist", usesInheritance: true, ngImport: i0, template: `
1976
+ FontSizeDropDownListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FontSizeDropDownListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1977
+ FontSizeDropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FontSizeDropDownListComponent, isStandalone: true, selector: "kendo-spreadsheet-fontsize-dropdownlist", usesInheritance: true, ngImport: i0, template: `
2015
1978
  <kendo-dropdownlist
2016
1979
  #element
2017
1980
  [data]="data"
2018
1981
  [(value)]="value"
1982
+ [attr.title]="title"
2019
1983
  [tabindex]="tabindex"
2020
1984
  (valueChange)="onValueChange($event)"
2021
1985
  [leftRightArrowsNavigation]="false"
2022
- [fillMode]="fillMode"
2023
- [attr.title]="title">
2024
- <ng-template kendoDropDownListItemTemplate let-dataItem>
2025
- <span [ngStyle]="{ 'font-family': dataItem }">
2026
- {{ dataItem }}
2027
- </span>
2028
- </ng-template>
2029
- </kendo-dropdownlist>
2030
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2$2.ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }, { kind: "component", type: i2$2.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }] });
2031
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FontFamilyDropDownListComponent, decorators: [{
1986
+ [fillMode]="fillMode"></kendo-dropdownlist>
1987
+ `, isInline: true, dependencies: [{ kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }] });
1988
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FontSizeDropDownListComponent, decorators: [{
2032
1989
  type: Component,
2033
1990
  args: [{
2034
- selector: 'kendo-spreadsheet-fontfamily-dropdownlist',
1991
+ selector: 'kendo-spreadsheet-fontsize-dropdownlist',
2035
1992
  template: `
2036
1993
  <kendo-dropdownlist
2037
1994
  #element
2038
1995
  [data]="data"
2039
1996
  [(value)]="value"
1997
+ [attr.title]="title"
2040
1998
  [tabindex]="tabindex"
2041
1999
  (valueChange)="onValueChange($event)"
2042
2000
  [leftRightArrowsNavigation]="false"
2043
- [fillMode]="fillMode"
2044
- [attr.title]="title">
2045
- <ng-template kendoDropDownListItemTemplate let-dataItem>
2046
- <span [ngStyle]="{ 'font-family': dataItem }">
2047
- {{ dataItem }}
2048
- </span>
2049
- </ng-template>
2050
- </kendo-dropdownlist>
2051
- `
2001
+ [fillMode]="fillMode"></kendo-dropdownlist>
2002
+ `,
2003
+ standalone: true,
2004
+ imports: [DropDownListComponent]
2052
2005
  }]
2053
2006
  }] });
2054
2007
 
2055
2008
  /**
2056
2009
  * @hidden
2057
2010
  */
2058
- class FontSizeDropDownListComponent extends DropDownListBase {
2011
+ class FontFamilyDropDownListComponent extends DropDownListBase {
2059
2012
  }
2060
- FontSizeDropDownListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FontSizeDropDownListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
2061
- FontSizeDropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FontSizeDropDownListComponent, selector: "kendo-spreadsheet-fontsize-dropdownlist", usesInheritance: true, ngImport: i0, template: `
2013
+ FontFamilyDropDownListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FontFamilyDropDownListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
2014
+ FontFamilyDropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FontFamilyDropDownListComponent, isStandalone: true, selector: "kendo-spreadsheet-fontfamily-dropdownlist", usesInheritance: true, ngImport: i0, template: `
2062
2015
  <kendo-dropdownlist
2063
2016
  #element
2064
2017
  [data]="data"
2065
2018
  [(value)]="value"
2066
- [attr.title]="title"
2067
2019
  [tabindex]="tabindex"
2068
2020
  (valueChange)="onValueChange($event)"
2069
2021
  [leftRightArrowsNavigation]="false"
2070
- [fillMode]="fillMode"></kendo-dropdownlist>
2071
- `, isInline: true, dependencies: [{ kind: "component", type: i2$2.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }] });
2072
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FontSizeDropDownListComponent, decorators: [{
2022
+ [fillMode]="fillMode"
2023
+ [attr.title]="title">
2024
+ <ng-template kendoDropDownListItemTemplate let-dataItem>
2025
+ <span [ngStyle]="{ 'font-family': dataItem }">
2026
+ {{ dataItem }}
2027
+ </span>
2028
+ </ng-template>
2029
+ </kendo-dropdownlist>
2030
+ `, isInline: true, dependencies: [{ kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
2031
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FontFamilyDropDownListComponent, decorators: [{
2073
2032
  type: Component,
2074
2033
  args: [{
2075
- selector: 'kendo-spreadsheet-fontsize-dropdownlist',
2034
+ selector: 'kendo-spreadsheet-fontfamily-dropdownlist',
2076
2035
  template: `
2077
2036
  <kendo-dropdownlist
2078
2037
  #element
2079
2038
  [data]="data"
2080
2039
  [(value)]="value"
2081
- [attr.title]="title"
2082
2040
  [tabindex]="tabindex"
2083
2041
  (valueChange)="onValueChange($event)"
2084
2042
  [leftRightArrowsNavigation]="false"
2085
- [fillMode]="fillMode"></kendo-dropdownlist>
2086
- `
2043
+ [fillMode]="fillMode"
2044
+ [attr.title]="title">
2045
+ <ng-template kendoDropDownListItemTemplate let-dataItem>
2046
+ <span [ngStyle]="{ 'font-family': dataItem }">
2047
+ {{ dataItem }}
2048
+ </span>
2049
+ </ng-template>
2050
+ </kendo-dropdownlist>
2051
+ `,
2052
+ standalone: true,
2053
+ imports: [DropDownListComponent, ItemTemplateDirective, NgStyle]
2087
2054
  }]
2088
2055
  }] });
2089
2056
 
@@ -2104,7 +2071,7 @@ class DialogContentComponent extends DialogContentBase {
2104
2071
  }
2105
2072
  }
2106
2073
  DialogContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DialogContentComponent, deps: [{ token: i1$1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
2107
- DialogContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DialogContentComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
2074
+ DialogContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DialogContentComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
2108
2075
  <div
2109
2076
  [ngSwitch]="componentType"
2110
2077
  class="k-d-flex k-align-items-center k-justify-content-center">
@@ -2143,7 +2110,7 @@ DialogContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
2143
2110
  fillMode="flat"
2144
2111
  ></kendo-colorpicker>
2145
2112
  </div>
2146
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3$1.ColorPickerComponent, selector: "kendo-colorpicker", inputs: ["views", "view", "activeView", "readonly", "disabled", "format", "value", "popupSettings", "paletteSettings", "gradientSettings", "icon", "iconClass", "svgIcon", "clearButton", "tabindex", "preview", "actionsLayout", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur", "cancel", "activeColorClick", "clearButtonClick", "activeViewChange"], exportAs: ["kendoColorPicker"] }, { kind: "component", type: FontFamilyDropDownListComponent, selector: "kendo-spreadsheet-fontfamily-dropdownlist" }, { kind: "component", type: FontSizeDropDownListComponent, selector: "kendo-spreadsheet-fontsize-dropdownlist" }] });
2113
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { 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", "activeView", "readonly", "disabled", "format", "value", "popupSettings", "paletteSettings", "gradientSettings", "icon", "iconClass", "svgIcon", "clearButton", "tabindex", "preview", "actionsLayout", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur", "cancel", "activeColorClick", "clearButtonClick", "activeViewChange"], exportAs: ["kendoColorPicker"] }] });
2147
2114
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DialogContentComponent, decorators: [{
2148
2115
  type: Component,
2149
2116
  args: [{
@@ -2186,7 +2153,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2186
2153
  fillMode="flat"
2187
2154
  ></kendo-colorpicker>
2188
2155
  </div>
2189
- `
2156
+ `,
2157
+ standalone: true,
2158
+ imports: [NgSwitch, NgSwitchCase, FontFamilyDropDownListComponent, FontSizeDropDownListComponent, ColorPickerComponent]
2190
2159
  }]
2191
2160
  }], ctorParameters: function () { return [{ type: i1$1.DialogRef }]; } });
2192
2161
 
@@ -2337,173 +2306,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2337
2306
  args: [MY_TOKEN]
2338
2307
  }] }, { type: i1$1.DialogService }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: i1$2.ToolBarComponent }];
2339
2308
  }, propDecorators: { toolbarTemplate: [{
2340
- type: ViewChild,
2341
- args: ['toolbarTemplate', { static: true }]
2342
- }], popupTemplate: [{
2343
- type: ViewChild,
2344
- args: ['popupTemplate', { static: true }]
2345
- }], element: [{
2346
- type: ViewChild,
2347
- args: ['element', { read: ElementRef }]
2348
- }], dropDownListRef: [{
2349
- type: ViewChild,
2350
- args: ['element']
2351
- }], popupButton: [{
2352
- type: ViewChild,
2353
- args: ['popupButton', { read: ElementRef }]
2354
- }], valueChange: [{
2355
- type: Output
2356
- }] } });
2357
-
2358
- /**
2359
- * A component which configures an existing `DropDownListComponent` as a Spreadsheet tool
2360
- * ([see example](ToDo).
2361
- * The component associates a `kendo-toolbar-dropdownlist` with a Spreadsheet command that changes the font family of a content block and
2362
- * automatically defines the options of the drop-down list and sets its values ([see example](ToDo).
2363
- *
2364
- * @hidden
2365
- */
2366
- class SpreadsheetFontFamilyComponent extends SpreadsheetDropDownToolBase {
2367
- constructor(dialogService, localization, spreadsheetService, toolsService, toolbar) {
2368
- super('fontFamily', dialogService, localization, spreadsheetService, toolsService, toolbar);
2369
- }
2370
- }
2371
- SpreadsheetFontFamilyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFontFamilyComponent, deps: [{ token: i1$1.DialogService }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
2372
- SpreadsheetFontFamilyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetFontFamilyComponent, selector: "kendo-toolbar-dropdownlist[kendoSpreadsheetFontFamily]", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetFontFamilyComponent) }], usesInheritance: true, ngImport: i0, template: `
2373
- <ng-template #toolbarTemplate>
2374
- <kendo-spreadsheet-fontfamily-dropdownlist
2375
- #element
2376
- [data]="data"
2377
- [(value)]="value"
2378
- [title]="messageFor(command)"
2379
- [tabindex]="tabindex"
2380
- (valueChange)="onValueChange($event)"></kendo-spreadsheet-fontfamily-dropdownlist>
2381
- </ng-template>
2382
- <ng-template #popupTemplate>
2383
- <div #popupButton
2384
- [tabindex]="tabindex"
2385
- role="menuitem"
2386
- class="k-item k-menu-item"
2387
- (click)="openDialog()">
2388
- <span
2389
- class="k-link k-menu-link">
2390
- <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper>
2391
- <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span>
2392
- </span>
2393
- </div>
2394
- </ng-template>
2395
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: FontFamilyDropDownListComponent, selector: "kendo-spreadsheet-fontfamily-dropdownlist" }] });
2396
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFontFamilyComponent, decorators: [{
2397
- type: Component,
2398
- args: [{
2399
- providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetFontFamilyComponent) }],
2400
- selector: 'kendo-toolbar-dropdownlist[kendoSpreadsheetFontFamily]',
2401
- template: `
2402
- <ng-template #toolbarTemplate>
2403
- <kendo-spreadsheet-fontfamily-dropdownlist
2404
- #element
2405
- [data]="data"
2406
- [(value)]="value"
2407
- [title]="messageFor(command)"
2408
- [tabindex]="tabindex"
2409
- (valueChange)="onValueChange($event)"></kendo-spreadsheet-fontfamily-dropdownlist>
2410
- </ng-template>
2411
- <ng-template #popupTemplate>
2412
- <div #popupButton
2413
- [tabindex]="tabindex"
2414
- role="menuitem"
2415
- class="k-item k-menu-item"
2416
- (click)="openDialog()">
2417
- <span
2418
- class="k-link k-menu-link">
2419
- <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper>
2420
- <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span>
2421
- </span>
2422
- </div>
2423
- </ng-template>
2424
- `
2425
- }]
2426
- }], ctorParameters: function () {
2427
- return [{ type: i1$1.DialogService }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: i1$2.ToolBarComponent, decorators: [{
2428
- type: Inject,
2429
- args: [ToolBarComponent]
2430
- }] }];
2431
- } });
2432
-
2433
- /**
2434
- * A component which configures an existing `DropDownListComponent` as a Spreadsheet tool
2435
- * ([see example](ToDo).
2436
- * The component associates a `kendo-toolbar-dropdownlist` with a Spreadsheet command that changes the font size of a content block and
2437
- * automatically defines the options of the drop-down list and sets its values ([see example](ToDo).
2438
- *
2439
- * @hidden
2440
- */
2441
- class SpreadsheetFontSizeComponent extends SpreadsheetDropDownToolBase {
2442
- constructor(dialogService, localization, spreadsheetService, toolsService, toolbar) {
2443
- super('fontSize', dialogService, localization, spreadsheetService, toolsService, toolbar);
2444
- }
2445
- }
2446
- SpreadsheetFontSizeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFontSizeComponent, deps: [{ token: i1$1.DialogService }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
2447
- SpreadsheetFontSizeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetFontSizeComponent, selector: "kendo-toolbar-dropdownlist[kendoSpreadsheetFontSize]", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetFontSizeComponent) }], usesInheritance: true, ngImport: i0, template: `
2448
- <ng-template #toolbarTemplate>
2449
- <kendo-spreadsheet-fontsize-dropdownlist
2450
- #element
2451
- [data]="data"
2452
- [(value)]="value"
2453
- [title]="messageFor(command)"
2454
- [tabindex]="tabindex"
2455
- (valueChange)="onValueChange($event)"></kendo-spreadsheet-fontsize-dropdownlist>
2456
- </ng-template>
2457
- <ng-template #popupTemplate>
2458
- <div #popupButton
2459
- [tabindex]="tabindex"
2460
- role="menuitem"
2461
- class="k-item k-menu-item"
2462
- (click)="openDialog()">
2463
- <span
2464
- class="k-link k-menu-link">
2465
- <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper>
2466
- <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span>
2467
- </span>
2468
- </div>
2469
- </ng-template>
2470
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: FontSizeDropDownListComponent, selector: "kendo-spreadsheet-fontsize-dropdownlist" }] });
2471
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFontSizeComponent, decorators: [{
2472
- type: Component,
2473
- args: [{
2474
- providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetFontSizeComponent) }],
2475
- selector: 'kendo-toolbar-dropdownlist[kendoSpreadsheetFontSize]',
2476
- template: `
2477
- <ng-template #toolbarTemplate>
2478
- <kendo-spreadsheet-fontsize-dropdownlist
2479
- #element
2480
- [data]="data"
2481
- [(value)]="value"
2482
- [title]="messageFor(command)"
2483
- [tabindex]="tabindex"
2484
- (valueChange)="onValueChange($event)"></kendo-spreadsheet-fontsize-dropdownlist>
2485
- </ng-template>
2486
- <ng-template #popupTemplate>
2487
- <div #popupButton
2488
- [tabindex]="tabindex"
2489
- role="menuitem"
2490
- class="k-item k-menu-item"
2491
- (click)="openDialog()">
2492
- <span
2493
- class="k-link k-menu-link">
2494
- <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper>
2495
- <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span>
2496
- </span>
2497
- </div>
2498
- </ng-template>
2499
- `
2500
- }]
2501
- }], ctorParameters: function () {
2502
- return [{ type: i1$1.DialogService }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: i1$2.ToolBarComponent, decorators: [{
2503
- type: Inject,
2504
- args: [ToolBarComponent]
2505
- }] }];
2506
- } });
2309
+ type: ViewChild,
2310
+ args: ['toolbarTemplate', { static: true }]
2311
+ }], popupTemplate: [{
2312
+ type: ViewChild,
2313
+ args: ['popupTemplate', { static: true }]
2314
+ }], element: [{
2315
+ type: ViewChild,
2316
+ args: ['element', { read: ElementRef }]
2317
+ }], dropDownListRef: [{
2318
+ type: ViewChild,
2319
+ args: ['element']
2320
+ }], popupButton: [{
2321
+ type: ViewChild,
2322
+ args: ['popupButton', { read: ElementRef }]
2323
+ }], valueChange: [{
2324
+ type: Output
2325
+ }] } });
2507
2326
 
2508
2327
  /**
2509
2328
  * A component which changes the background color of the text ([more information](ToDo).
@@ -2515,7 +2334,7 @@ class SpreadsheetBackColorComponent extends SpreadsheetDropDownToolBase {
2515
2334
  }
2516
2335
  }
2517
2336
  SpreadsheetBackColorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetBackColorComponent, deps: [{ token: i1$1.DialogService }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
2518
- SpreadsheetBackColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetBackColorComponent, selector: "kendo-spreadsheet-backcolor-tool", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetBackColorComponent) }], usesInheritance: true, ngImport: i0, template: `
2337
+ SpreadsheetBackColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetBackColorComponent, isStandalone: true, selector: "kendo-spreadsheet-backcolor-tool", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetBackColorComponent) }], usesInheritance: true, ngImport: i0, template: `
2519
2338
  <ng-template #toolbarTemplate>
2520
2339
  <kendo-colorpicker
2521
2340
  #element
@@ -2543,7 +2362,7 @@ SpreadsheetBackColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
2543
2362
  </span>
2544
2363
  </div>
2545
2364
  </ng-template>
2546
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: i3$1.ColorPickerComponent, selector: "kendo-colorpicker", inputs: ["views", "view", "activeView", "readonly", "disabled", "format", "value", "popupSettings", "paletteSettings", "gradientSettings", "icon", "iconClass", "svgIcon", "clearButton", "tabindex", "preview", "actionsLayout", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur", "cancel", "activeColorClick", "clearButtonClick", "activeViewChange"], exportAs: ["kendoColorPicker"] }] });
2365
+ `, isInline: true, dependencies: [{ kind: "component", type: ColorPickerComponent, selector: "kendo-colorpicker", inputs: ["views", "view", "activeView", "readonly", "disabled", "format", "value", "popupSettings", "paletteSettings", "gradientSettings", "icon", "iconClass", "svgIcon", "clearButton", "tabindex", "preview", "actionsLayout", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur", "cancel", "activeColorClick", "clearButtonClick", "activeViewChange"], exportAs: ["kendoColorPicker"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2547
2366
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetBackColorComponent, decorators: [{
2548
2367
  type: Component,
2549
2368
  args: [{
@@ -2577,7 +2396,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2577
2396
  </span>
2578
2397
  </div>
2579
2398
  </ng-template>
2580
- `
2399
+ `,
2400
+ standalone: true,
2401
+ imports: [ColorPickerComponent, IconWrapperComponent, NgIf]
2581
2402
  }]
2582
2403
  }], ctorParameters: function () {
2583
2404
  return [{ type: i1$1.DialogService }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: i1$2.ToolBarComponent, decorators: [{
@@ -2596,7 +2417,7 @@ class SpreadsheetForeColorComponent extends SpreadsheetDropDownToolBase {
2596
2417
  }
2597
2418
  }
2598
2419
  SpreadsheetForeColorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetForeColorComponent, deps: [{ token: i1$1.DialogService }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
2599
- SpreadsheetForeColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetForeColorComponent, selector: "kendo-spreadsheet-forecolor-tool", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetForeColorComponent) }], usesInheritance: true, ngImport: i0, template: `
2420
+ SpreadsheetForeColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetForeColorComponent, isStandalone: true, selector: "kendo-spreadsheet-forecolor-tool", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetForeColorComponent) }], usesInheritance: true, ngImport: i0, template: `
2600
2421
  <ng-template #toolbarTemplate>
2601
2422
  <kendo-colorpicker
2602
2423
  #element
@@ -2624,7 +2445,7 @@ SpreadsheetForeColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
2624
2445
  </span>
2625
2446
  </div>
2626
2447
  </ng-template>
2627
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: i3$1.ColorPickerComponent, selector: "kendo-colorpicker", inputs: ["views", "view", "activeView", "readonly", "disabled", "format", "value", "popupSettings", "paletteSettings", "gradientSettings", "icon", "iconClass", "svgIcon", "clearButton", "tabindex", "preview", "actionsLayout", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur", "cancel", "activeColorClick", "clearButtonClick", "activeViewChange"], exportAs: ["kendoColorPicker"] }] });
2448
+ `, isInline: true, dependencies: [{ kind: "component", type: ColorPickerComponent, selector: "kendo-colorpicker", inputs: ["views", "view", "activeView", "readonly", "disabled", "format", "value", "popupSettings", "paletteSettings", "gradientSettings", "icon", "iconClass", "svgIcon", "clearButton", "tabindex", "preview", "actionsLayout", "size", "rounded", "fillMode"], outputs: ["valueChange", "open", "close", "focus", "blur", "cancel", "activeColorClick", "clearButtonClick", "activeViewChange"], exportAs: ["kendoColorPicker"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2628
2449
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetForeColorComponent, decorators: [{
2629
2450
  type: Component,
2630
2451
  args: [{
@@ -2658,7 +2479,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2658
2479
  </span>
2659
2480
  </div>
2660
2481
  </ng-template>
2661
- `
2482
+ `,
2483
+ standalone: true,
2484
+ imports: [ColorPickerComponent, IconWrapperComponent, NgIf]
2662
2485
  }]
2663
2486
  }], ctorParameters: function () {
2664
2487
  return [{ type: i1$1.DialogService }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: i1$2.ToolBarComponent, decorators: [{
@@ -2670,358 +2493,85 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2670
2493
  /**
2671
2494
  * @hidden
2672
2495
  */
2673
- class SpreadsheetGridLinesDirective extends SpreadsheetCommandButton {
2674
- constructor(button, localization, spreadsheetService, toolsService) {
2675
- super('gridLines', button, localization, spreadsheetService, toolsService, {
2676
- command: 'GridLinesChangeCommand',
2677
- options: { property: 'gridLines',
2678
- value: !button.selected
2679
- }
2680
- });
2681
- }
2682
- clickHandler() {
2683
- const sheet = this.spreadsheetService.spreadsheet.activeSheet();
2684
- if (sheet) {
2685
- const value = !sheet.showGridLines();
2686
- const options = {
2687
- command: 'GridLinesChangeCommand', options: { property: 'gridLines', value }
2688
- };
2689
- this.spreadsheetService.spreadsheet.executeCommand(options);
2690
- }
2691
- }
2692
- }
2693
- SpreadsheetGridLinesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetGridLinesDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2694
- SpreadsheetGridLinesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetGridLinesDirective, selector: "kendo-toolbar-button[kendoSpreadsheetGridLines]", usesInheritance: true, ngImport: i0 });
2695
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetGridLinesDirective, decorators: [{
2696
- type: Directive,
2697
- args: [{
2698
- selector: 'kendo-toolbar-button[kendoSpreadsheetGridLines]'
2699
- }]
2700
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2701
-
2702
- /**
2703
- * @hidden
2704
- */
2705
- class SpreadsheetAddColumnLeftButtonDirective extends SpreadsheetCommandButton {
2706
- constructor(button, localization, spreadsheetService, toolsService) {
2707
- super('addColumnLeft', button, localization, spreadsheetService, toolsService, {
2708
- command: 'AddColumnCommand',
2709
- options: { property: 'addColumnLeft',
2710
- value: 'left'
2711
- }
2712
- });
2713
- }
2714
- }
2715
- SpreadsheetAddColumnLeftButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddColumnLeftButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2716
- SpreadsheetAddColumnLeftButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetAddColumnLeftButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddColumnLeftButton]", usesInheritance: true, ngImport: i0 });
2717
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddColumnLeftButtonDirective, decorators: [{
2718
- type: Directive,
2719
- args: [{
2720
- selector: 'kendo-toolbar-button[kendoSpreadsheetAddColumnLeftButton]'
2721
- }]
2722
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2723
-
2724
- /**
2725
- * @hidden
2726
- */
2727
- class SpreadsheetAddColumnRightButtonDirective extends SpreadsheetCommandButton {
2728
- constructor(button, localization, spreadsheetService, toolsService) {
2729
- super('addColumnRight', button, localization, spreadsheetService, toolsService, {
2730
- command: 'AddColumnCommand',
2731
- options: { property: 'addColumnRight',
2732
- value: 'right'
2733
- }
2734
- });
2735
- }
2736
- }
2737
- SpreadsheetAddColumnRightButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddColumnRightButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2738
- SpreadsheetAddColumnRightButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetAddColumnRightButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddColumnRightButton]", usesInheritance: true, ngImport: i0 });
2739
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddColumnRightButtonDirective, decorators: [{
2740
- type: Directive,
2741
- args: [{
2742
- selector: 'kendo-toolbar-button[kendoSpreadsheetAddColumnRightButton]'
2743
- }]
2744
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2745
-
2746
- /**
2747
- * @hidden
2748
- */
2749
- class SpreadsheetAddRowAboveButtonDirective extends SpreadsheetCommandButton {
2750
- constructor(button, localization, spreadsheetService, toolsService) {
2751
- super('addRowAbove', button, localization, spreadsheetService, toolsService, {
2752
- command: 'AddRowCommand',
2753
- options: { property: 'addRowAbove',
2754
- value: 'above'
2755
- }
2756
- });
2757
- }
2758
- }
2759
- SpreadsheetAddRowAboveButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddRowAboveButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2760
- SpreadsheetAddRowAboveButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetAddRowAboveButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddRowAboveButton]", usesInheritance: true, ngImport: i0 });
2761
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddRowAboveButtonDirective, decorators: [{
2762
- type: Directive,
2763
- args: [{
2764
- selector: 'kendo-toolbar-button[kendoSpreadsheetAddRowAboveButton]'
2765
- }]
2766
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2767
-
2768
- /**
2769
- * @hidden
2770
- */
2771
- class SpreadsheetAddRowBelowButtonDirective extends SpreadsheetCommandButton {
2772
- constructor(button, localization, spreadsheetService, toolsService) {
2773
- super('addRowBelow', button, localization, spreadsheetService, toolsService, {
2774
- command: 'AddRowCommand',
2775
- options: { property: 'addRowBelow',
2776
- value: 'below'
2777
- }
2778
- });
2779
- }
2780
- }
2781
- SpreadsheetAddRowBelowButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddRowBelowButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2782
- SpreadsheetAddRowBelowButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetAddRowBelowButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddRowBelowButton]", usesInheritance: true, ngImport: i0 });
2783
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetAddRowBelowButtonDirective, decorators: [{
2784
- type: Directive,
2785
- args: [{
2786
- selector: 'kendo-toolbar-button[kendoSpreadsheetAddRowBelowButton]'
2787
- }]
2788
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2789
-
2790
- /**
2791
- * @hidden
2792
- */
2793
- class SpreadsheetDeleteColumnButtonDirective extends SpreadsheetCommandButton {
2794
- constructor(button, localization, spreadsheetService, toolsService) {
2795
- super('deleteColumn', button, localization, spreadsheetService, toolsService, {
2796
- command: 'DeleteColumnCommand',
2797
- options: { property: 'deleteColumn' }
2798
- });
2799
- }
2800
- }
2801
- SpreadsheetDeleteColumnButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDeleteColumnButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2802
- SpreadsheetDeleteColumnButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetDeleteColumnButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDeleteColumnButton]", usesInheritance: true, ngImport: i0 });
2803
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDeleteColumnButtonDirective, decorators: [{
2804
- type: Directive,
2805
- args: [{
2806
- selector: 'kendo-toolbar-button[kendoSpreadsheetDeleteColumnButton]'
2807
- }]
2808
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2809
-
2810
- /**
2811
- * @hidden
2812
- */
2813
- class SpreadsheetDeleteRowButtonDirective extends SpreadsheetCommandButton {
2814
- constructor(button, localization, spreadsheetService, toolsService) {
2815
- super('deleteRow', button, localization, spreadsheetService, toolsService, {
2816
- command: 'DeleteRowCommand',
2817
- options: { property: 'deleteRow' }
2818
- });
2819
- }
2820
- }
2821
- SpreadsheetDeleteRowButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDeleteRowButtonDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2822
- SpreadsheetDeleteRowButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetDeleteRowButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDeleteRowButton]", usesInheritance: true, ngImport: i0 });
2823
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDeleteRowButtonDirective, decorators: [{
2824
- type: Directive,
2825
- args: [{
2826
- selector: 'kendo-toolbar-button[kendoSpreadsheetDeleteRowButton]'
2827
- }]
2828
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2829
-
2830
- /**
2831
- * @hidden
2832
- */
2833
- class SpreadsheetTextWrapDirective extends SpreadsheetCommandButton {
2496
+ class SpreadsheetUnderlineDirective extends SpreadsheetCommandButton {
2834
2497
  constructor(button, localization, spreadsheetService, toolsService) {
2835
- super('wrap', button, localization, spreadsheetService, toolsService, {
2836
- command: 'TextWrapCommand',
2837
- options: { property: 'wrap',
2498
+ super('underline', button, localization, spreadsheetService, toolsService, {
2499
+ command: 'PropertyChangeCommand',
2500
+ options: { property: 'underline',
2838
2501
  value: !button.selected
2839
2502
  }
2840
2503
  });
2841
2504
  }
2842
- clickHandler() {
2843
- const sheet = this.spreadsheetService.spreadsheet.activeSheet();
2844
- if (sheet) {
2845
- const range = sheet.range(sheet.activeCell());
2846
- const value = !range.wrap();
2847
- const options = {
2848
- command: 'TextWrapCommand', options: { property: 'wrap', value }
2849
- };
2850
- this.spreadsheetService.spreadsheet.executeCommand(options);
2851
- }
2852
- }
2853
- }
2854
- SpreadsheetTextWrapDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetTextWrapDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2855
- SpreadsheetTextWrapDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetTextWrapDirective, selector: "kendo-toolbar-button[kendoSpreadsheetTextWrap]", usesInheritance: true, ngImport: i0 });
2856
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetTextWrapDirective, decorators: [{
2857
- type: Directive,
2858
- args: [{
2859
- selector: 'kendo-toolbar-button[kendoSpreadsheetTextWrap]'
2860
- }]
2861
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2862
-
2863
- /**
2864
- * @hidden
2865
- */
2866
- class MainMenuDirective {
2867
- constructor(host, renderer) {
2868
- this.host = host;
2869
- this.renderer = renderer;
2870
- }
2871
- ngAfterViewInit() {
2872
- isDocumentAvailable() && this.renderer.addClass(this.host.nativeElement.firstElementChild, 'k-spreadsheet-menu');
2873
- }
2874
- }
2875
- MainMenuDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MainMenuDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
2876
- MainMenuDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: MainMenuDirective, selector: "[kendoSpreadsheetMenu]", ngImport: i0 });
2877
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MainMenuDirective, decorators: [{
2878
- type: Directive,
2879
- args: [{ selector: '[kendoSpreadsheetMenu]' }]
2880
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
2881
-
2882
- /**
2883
- * @hidden
2884
- */
2885
- class SpreadsheetMergeDirective {
2886
- constructor(host, localization, spreadsheetService) {
2887
- this.host = host;
2888
- this.spreadsheetService = spreadsheetService;
2889
- this.commandName = 'merge';
2890
- this.subs = new Subscription();
2891
- host.svgIcon = commandSVGIcons[this.commandName];
2892
- host.icon = commandIcons[this.commandName];
2893
- host.arrowIcon = true;
2894
- host.fillMode = 'flat';
2895
- host.data = MERGE.map(item => (Object.assign(Object.assign({}, item), { textKey: localization.get(item.commandId) })));
2896
- this.subs.add(host.itemClick.subscribe((e) => this.onItemClick(e)));
2897
- host.title = localization.get(this.commandName);
2898
- host.textField = 'textKey';
2899
- }
2900
- ngOnInit() {
2901
- this.subs.add(this.host.open.subscribe(() => {
2902
- const sheet = this.spreadsheetService.spreadsheet.activeSheet();
2903
- const isMergedCellWithinRange = this.hasMergedCells(sheet);
2904
- const unmergeItem = this.host.data.find(i => i.commandName === 'unmerge');
2905
- unmergeItem.disabled = !isMergedCellWithinRange;
2906
- }));
2907
- this.subs.add(this.spreadsheetService.selectionChanged.subscribe(range => this.selectedRange = range));
2908
- }
2909
- ngOnDestroy() {
2910
- this.subs.unsubscribe();
2911
- }
2912
- onItemClick(item) {
2913
- if (item.disabled) {
2914
- return;
2915
- }
2916
- const value = item.value || null;
2917
- const options = {
2918
- command: 'MergeCellCommand', options: { property: item.commandName, value }
2919
- };
2920
- this.spreadsheetService.spreadsheet.executeCommand(options);
2921
- }
2922
- hasMergedCells(sheet) {
2923
- const range = sheet._ref(this.selectedRange);
2924
- return sheet._getMergedCells(range).hasMerged;
2925
- }
2926
2505
  }
2927
- SpreadsheetMergeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetMergeDirective, deps: [{ token: i1$2.ToolBarDropDownButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }], target: i0.ɵɵFactoryTarget.Directive });
2928
- SpreadsheetMergeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetMergeDirective, selector: "[kendoSpreadsheetMerge]", ngImport: i0 });
2929
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetMergeDirective, decorators: [{
2506
+ SpreadsheetUnderlineDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetUnderlineDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2507
+ SpreadsheetUnderlineDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetUnderlineDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetUnderline]", usesInheritance: true, ngImport: i0 });
2508
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetUnderlineDirective, decorators: [{
2930
2509
  type: Directive,
2931
2510
  args: [{
2932
- selector: '[kendoSpreadsheetMerge]',
2511
+ selector: 'kendo-toolbar-button[kendoSpreadsheetUnderline]',
2512
+ standalone: true
2933
2513
  }]
2934
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarDropDownButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }]; } });
2514
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2935
2515
 
2936
2516
  /**
2937
2517
  * @hidden
2938
2518
  */
2939
- class SpreadsheetInsertLinkDirective extends SpreadsheetCommandButton {
2940
- constructor(button, localization, spreadsheetService, toolsService, dialogService) {
2941
- super('insertLink', button, localization, spreadsheetService, toolsService, {
2942
- command: 'HyperlinkCommand'
2519
+ class SpreadsheetItalicDirective extends SpreadsheetCommandButton {
2520
+ constructor(button, localization, spreadsheetService, toolsService) {
2521
+ super('italic', button, localization, spreadsheetService, toolsService, {
2522
+ command: 'PropertyChangeCommand',
2523
+ options: { property: 'italic',
2524
+ value: !button.selected
2525
+ }
2943
2526
  });
2944
- this.dialogService = dialogService;
2945
- this.subs.add(spreadsheetService.selectionChanged.subscribe(range => this.currentRange = range));
2946
- }
2947
- ngOnDestroy() {
2948
- this.subs.unsubscribe();
2949
- }
2950
- clickHandler() {
2951
- const sheet = this.spreadsheetService.spreadsheet.activeSheet();
2952
- if (sheet) {
2953
- this.openDialog();
2954
- }
2955
2527
  }
2956
- /**
2957
- * @hidden
2958
- */
2959
- openDialog() {
2960
- var _a, _b;
2961
- const hasLink = isPresent((_a = this.currentRange) === null || _a === void 0 ? void 0 : _a.link());
2962
- const dialogSettings = {
2963
- appendTo: this.spreadsheetService.dialogContainer,
2964
- title: this.localization.get(this.command),
2965
- content: InsertLinkDialogComponent,
2966
- actions: [{
2967
- text: this.localization.get('dialogInsert'),
2968
- themeColor: 'primary'
2969
- }, {
2970
- text: this.localization.get('dialogCancel')
2971
- },
2972
- 'spacer', {
2973
- text: this.localization.get('dialogRemoveLink'),
2974
- themeColor: 'primary',
2975
- fillMode: 'clear',
2976
- cssClass: hasLink ? '' : 'k-disabled'
2977
- }],
2978
- actionsLayout: 'start',
2979
- width: 400,
2980
- autoFocusedElement: '.k-textbox > .k-input-inner'
2981
- };
2982
- const dialog = this.dialogService.open(dialogSettings);
2983
- const dialogInstance = dialog.dialog.instance;
2984
- const dialogContent = dialog.content.instance;
2985
- if (hasLink) {
2986
- dialogContent.setData({ link: (_b = this.currentRange) === null || _b === void 0 ? void 0 : _b.link() });
2987
- }
2988
- dialogInstance.action.pipe(take(1)).subscribe((event) => {
2989
- if (event.text === this.localization.get('dialogCancel')) {
2990
- return;
2991
- }
2992
- let link = null;
2993
- if (event.text === this.localization.get('dialogInsert')) {
2994
- link = dialogContent.urlLink || null;
2528
+ }
2529
+ SpreadsheetItalicDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetItalicDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2530
+ SpreadsheetItalicDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetItalicDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetItalic]", usesInheritance: true, ngImport: i0 });
2531
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetItalicDirective, decorators: [{
2532
+ type: Directive,
2533
+ args: [{
2534
+ selector: 'kendo-toolbar-button[kendoSpreadsheetItalic]',
2535
+ standalone: true
2536
+ }]
2537
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
2538
+
2539
+ /**
2540
+ * @hidden
2541
+ */
2542
+ class SpreadsheetBoldDirective extends SpreadsheetCommandButton {
2543
+ constructor(button, localization, spreadsheetService, toolsService) {
2544
+ super('bold', button, localization, spreadsheetService, toolsService, {
2545
+ command: 'PropertyChangeCommand',
2546
+ options: { property: 'bold',
2547
+ value: !button.selected
2995
2548
  }
2996
- this.spreadsheetService.spreadsheet.executeCommand({
2997
- command: 'HyperlinkCommand',
2998
- options: { link }
2999
- });
3000
2549
  });
3001
2550
  }
3002
2551
  }
3003
- SpreadsheetInsertLinkDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetInsertLinkDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }, { token: i1$1.DialogService }], target: i0.ɵɵFactoryTarget.Directive });
3004
- SpreadsheetInsertLinkDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetInsertLinkDirective, selector: "kendo-toolbar-button[kendoSpreadsheetInsertLink]", usesInheritance: true, ngImport: i0 });
3005
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetInsertLinkDirective, decorators: [{
2552
+ SpreadsheetBoldDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetBoldDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2553
+ SpreadsheetBoldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetBoldDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetBold]", usesInheritance: true, ngImport: i0 });
2554
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetBoldDirective, decorators: [{
3006
2555
  type: Directive,
3007
2556
  args: [{
3008
- selector: 'kendo-toolbar-button[kendoSpreadsheetInsertLink]'
2557
+ selector: 'kendo-toolbar-button[kendoSpreadsheetBold]',
2558
+ standalone: true
3009
2559
  }]
3010
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: i1$1.DialogService }]; } });
2560
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
3011
2561
 
3012
2562
  /**
3013
2563
  * @hidden
3014
2564
  */
3015
- class SpreadsheetIncreaseFontSizeDirective extends SpreadsheetCommandButton {
2565
+ class SpreadsheetDecreaseFontSizeDirective extends SpreadsheetCommandButton {
3016
2566
  constructor(button, localization, spreadsheetService, toolsService) {
3017
- super('increaseFontSize', button, localization, spreadsheetService, toolsService, {
2567
+ super('decreaseFontSize', button, localization, spreadsheetService, toolsService, {
3018
2568
  command: 'PropertyChangeCommand',
3019
2569
  options: { property: 'fontSize' }
3020
2570
  });
3021
2571
  this.value = DEFAULT_FONT_VALUES.fontSize;
3022
2572
  }
3023
2573
  clickHandler() {
3024
- const newValue = this.value + 1;
2574
+ const newValue = this.value - 1;
3025
2575
  const options = {
3026
2576
  command: 'PropertyChangeCommand',
3027
2577
  options: { property: 'fontSize', value: newValue || null }
@@ -3035,28 +2585,29 @@ class SpreadsheetIncreaseFontSizeDirective extends SpreadsheetCommandButton {
3035
2585
  }));
3036
2586
  }
3037
2587
  }
3038
- SpreadsheetIncreaseFontSizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetIncreaseFontSizeDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
3039
- SpreadsheetIncreaseFontSizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetIncreaseFontSizeDirective, selector: "kendo-toolbar-button[kendoSpreadsheetIncreaseFontSize]", usesInheritance: true, ngImport: i0 });
3040
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetIncreaseFontSizeDirective, decorators: [{
2588
+ SpreadsheetDecreaseFontSizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDecreaseFontSizeDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2589
+ SpreadsheetDecreaseFontSizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetDecreaseFontSizeDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetDecreaseFontSize]", usesInheritance: true, ngImport: i0 });
2590
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDecreaseFontSizeDirective, decorators: [{
3041
2591
  type: Directive,
3042
2592
  args: [{
3043
- selector: 'kendo-toolbar-button[kendoSpreadsheetIncreaseFontSize]'
2593
+ selector: 'kendo-toolbar-button[kendoSpreadsheetDecreaseFontSize]',
2594
+ standalone: true
3044
2595
  }]
3045
2596
  }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
3046
2597
 
3047
2598
  /**
3048
2599
  * @hidden
3049
2600
  */
3050
- class SpreadsheetDecreaseFontSizeDirective extends SpreadsheetCommandButton {
2601
+ class SpreadsheetIncreaseFontSizeDirective extends SpreadsheetCommandButton {
3051
2602
  constructor(button, localization, spreadsheetService, toolsService) {
3052
- super('decreaseFontSize', button, localization, spreadsheetService, toolsService, {
2603
+ super('increaseFontSize', button, localization, spreadsheetService, toolsService, {
3053
2604
  command: 'PropertyChangeCommand',
3054
2605
  options: { property: 'fontSize' }
3055
2606
  });
3056
2607
  this.value = DEFAULT_FONT_VALUES.fontSize;
3057
2608
  }
3058
2609
  clickHandler() {
3059
- const newValue = this.value - 1;
2610
+ const newValue = this.value + 1;
3060
2611
  const options = {
3061
2612
  command: 'PropertyChangeCommand',
3062
2613
  options: { property: 'fontSize', value: newValue || null }
@@ -3070,150 +2621,647 @@ class SpreadsheetDecreaseFontSizeDirective extends SpreadsheetCommandButton {
3070
2621
  }));
3071
2622
  }
3072
2623
  }
3073
- SpreadsheetDecreaseFontSizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDecreaseFontSizeDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
3074
- SpreadsheetDecreaseFontSizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetDecreaseFontSizeDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDecreaseFontSize]", usesInheritance: true, ngImport: i0 });
3075
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDecreaseFontSizeDirective, decorators: [{
2624
+ SpreadsheetIncreaseFontSizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetIncreaseFontSizeDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2625
+ SpreadsheetIncreaseFontSizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetIncreaseFontSizeDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetIncreaseFontSize]", usesInheritance: true, ngImport: i0 });
2626
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetIncreaseFontSizeDirective, decorators: [{
3076
2627
  type: Directive,
3077
2628
  args: [{
3078
- selector: 'kendo-toolbar-button[kendoSpreadsheetDecreaseFontSize]'
2629
+ selector: 'kendo-toolbar-button[kendoSpreadsheetIncreaseFontSize]',
2630
+ standalone: true
3079
2631
  }]
3080
2632
  }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
3081
2633
 
2634
+ /**
2635
+ * A component which configures an existing `DropDownListComponent` as a Spreadsheet tool
2636
+ * ([see example](ToDo).
2637
+ * The component associates a `kendo-toolbar-dropdownlist` with a Spreadsheet command that changes the font size of a content block and
2638
+ * automatically defines the options of the drop-down list and sets its values ([see example](ToDo).
2639
+ *
2640
+ * @hidden
2641
+ */
2642
+ class SpreadsheetFontSizeComponent extends SpreadsheetDropDownToolBase {
2643
+ constructor(dialogService, localization, spreadsheetService, toolsService, toolbar) {
2644
+ super('fontSize', dialogService, localization, spreadsheetService, toolsService, toolbar);
2645
+ }
2646
+ }
2647
+ SpreadsheetFontSizeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFontSizeComponent, deps: [{ token: i1$1.DialogService }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
2648
+ SpreadsheetFontSizeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetFontSizeComponent, isStandalone: true, selector: "kendo-toolbar-dropdownlist[kendoSpreadsheetFontSize]", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetFontSizeComponent) }], usesInheritance: true, ngImport: i0, template: `
2649
+ <ng-template #toolbarTemplate>
2650
+ <kendo-spreadsheet-fontsize-dropdownlist
2651
+ #element
2652
+ [data]="data"
2653
+ [(value)]="value"
2654
+ [title]="messageFor(command)"
2655
+ [tabindex]="tabindex"
2656
+ (valueChange)="onValueChange($event)"></kendo-spreadsheet-fontsize-dropdownlist>
2657
+ </ng-template>
2658
+ <ng-template #popupTemplate>
2659
+ <div #popupButton
2660
+ [tabindex]="tabindex"
2661
+ role="menuitem"
2662
+ class="k-item k-menu-item"
2663
+ (click)="openDialog()">
2664
+ <span
2665
+ class="k-link k-menu-link">
2666
+ <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper>
2667
+ <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span>
2668
+ </span>
2669
+ </div>
2670
+ </ng-template>
2671
+ `, isInline: true, dependencies: [{ kind: "component", type: FontSizeDropDownListComponent, selector: "kendo-spreadsheet-fontsize-dropdownlist" }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2672
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFontSizeComponent, decorators: [{
2673
+ type: Component,
2674
+ args: [{
2675
+ providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetFontSizeComponent) }],
2676
+ selector: 'kendo-toolbar-dropdownlist[kendoSpreadsheetFontSize]',
2677
+ template: `
2678
+ <ng-template #toolbarTemplate>
2679
+ <kendo-spreadsheet-fontsize-dropdownlist
2680
+ #element
2681
+ [data]="data"
2682
+ [(value)]="value"
2683
+ [title]="messageFor(command)"
2684
+ [tabindex]="tabindex"
2685
+ (valueChange)="onValueChange($event)"></kendo-spreadsheet-fontsize-dropdownlist>
2686
+ </ng-template>
2687
+ <ng-template #popupTemplate>
2688
+ <div #popupButton
2689
+ [tabindex]="tabindex"
2690
+ role="menuitem"
2691
+ class="k-item k-menu-item"
2692
+ (click)="openDialog()">
2693
+ <span
2694
+ class="k-link k-menu-link">
2695
+ <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper>
2696
+ <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span>
2697
+ </span>
2698
+ </div>
2699
+ </ng-template>
2700
+ `,
2701
+ standalone: true,
2702
+ imports: [FontSizeDropDownListComponent, IconWrapperComponent, NgIf]
2703
+ }]
2704
+ }], ctorParameters: function () {
2705
+ return [{ type: i1$1.DialogService }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: i1$2.ToolBarComponent, decorators: [{
2706
+ type: Inject,
2707
+ args: [ToolBarComponent]
2708
+ }] }];
2709
+ } });
2710
+
2711
+ /**
2712
+ * A component which configures an existing `DropDownListComponent` as a Spreadsheet tool
2713
+ * ([see example](ToDo).
2714
+ * The component associates a `kendo-toolbar-dropdownlist` with a Spreadsheet command that changes the font family of a content block and
2715
+ * automatically defines the options of the drop-down list and sets its values ([see example](ToDo).
2716
+ *
2717
+ * @hidden
2718
+ */
2719
+ class SpreadsheetFontFamilyComponent extends SpreadsheetDropDownToolBase {
2720
+ constructor(dialogService, localization, spreadsheetService, toolsService, toolbar) {
2721
+ super('fontFamily', dialogService, localization, spreadsheetService, toolsService, toolbar);
2722
+ }
2723
+ }
2724
+ SpreadsheetFontFamilyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFontFamilyComponent, deps: [{ token: i1$1.DialogService }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
2725
+ SpreadsheetFontFamilyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetFontFamilyComponent, isStandalone: true, selector: "kendo-toolbar-dropdownlist[kendoSpreadsheetFontFamily]", providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetFontFamilyComponent) }], usesInheritance: true, ngImport: i0, template: `
2726
+ <ng-template #toolbarTemplate>
2727
+ <kendo-spreadsheet-fontfamily-dropdownlist
2728
+ #element
2729
+ [data]="data"
2730
+ [(value)]="value"
2731
+ [title]="messageFor(command)"
2732
+ [tabindex]="tabindex"
2733
+ (valueChange)="onValueChange($event)"></kendo-spreadsheet-fontfamily-dropdownlist>
2734
+ </ng-template>
2735
+ <ng-template #popupTemplate>
2736
+ <div #popupButton
2737
+ [tabindex]="tabindex"
2738
+ role="menuitem"
2739
+ class="k-item k-menu-item"
2740
+ (click)="openDialog()">
2741
+ <span
2742
+ class="k-link k-menu-link">
2743
+ <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper>
2744
+ <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span>
2745
+ </span>
2746
+ </div>
2747
+ </ng-template>
2748
+ `, isInline: true, dependencies: [{ kind: "component", type: FontFamilyDropDownListComponent, selector: "kendo-spreadsheet-fontfamily-dropdownlist" }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2749
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetFontFamilyComponent, decorators: [{
2750
+ type: Component,
2751
+ args: [{
2752
+ providers: [{ provide: ToolBarToolComponent, useExisting: forwardRef(() => SpreadsheetFontFamilyComponent) }],
2753
+ selector: 'kendo-toolbar-dropdownlist[kendoSpreadsheetFontFamily]',
2754
+ template: `
2755
+ <ng-template #toolbarTemplate>
2756
+ <kendo-spreadsheet-fontfamily-dropdownlist
2757
+ #element
2758
+ [data]="data"
2759
+ [(value)]="value"
2760
+ [title]="messageFor(command)"
2761
+ [tabindex]="tabindex"
2762
+ (valueChange)="onValueChange($event)"></kendo-spreadsheet-fontfamily-dropdownlist>
2763
+ </ng-template>
2764
+ <ng-template #popupTemplate>
2765
+ <div #popupButton
2766
+ [tabindex]="tabindex"
2767
+ role="menuitem"
2768
+ class="k-item k-menu-item"
2769
+ (click)="openDialog()">
2770
+ <span
2771
+ class="k-link k-menu-link">
2772
+ <kendo-icon-wrapper [name]="icon" [svgIcon]="svgIcon"></kendo-icon-wrapper>
2773
+ <span *ngIf="messageFor(command)" class="k-menu-link-text">{{messageFor(command)}}</span>
2774
+ </span>
2775
+ </div>
2776
+ </ng-template>
2777
+ `,
2778
+ standalone: true,
2779
+ imports: [FontFamilyDropDownListComponent, IconWrapperComponent, NgIf]
2780
+ }]
2781
+ }], ctorParameters: function () {
2782
+ return [{ type: i1$1.DialogService }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: i1$2.ToolBarComponent, decorators: [{
2783
+ type: Inject,
2784
+ args: [ToolBarComponent]
2785
+ }] }];
2786
+ } });
2787
+
3082
2788
  /**
3083
2789
  * @hidden
3084
2790
  */
3085
- class SpreadsheetIncreaseDecimalDirective extends SpreadsheetCommandButton {
2791
+ class SpreadsheetRedoDirective extends SpreadsheetCommandButton {
3086
2792
  constructor(button, localization, spreadsheetService, toolsService) {
3087
- super('increaseDecimal', button, localization, spreadsheetService, toolsService, {
3088
- command: 'AdjustDecimalsCommand'
2793
+ super('redo', button, localization, spreadsheetService, toolsService, {
2794
+ options: { property: 'redo' }
3089
2795
  });
3090
2796
  }
3091
2797
  clickHandler() {
3092
- const options = {
3093
- command: 'AdjustDecimalsCommand',
3094
- options: { value: 1 }
3095
- };
3096
- this.spreadsheetService.spreadsheet.executeCommand(options);
2798
+ this.spreadsheetService.spreadsheet.workbook.undoRedoStack['redo']();
3097
2799
  }
3098
2800
  }
3099
- SpreadsheetIncreaseDecimalDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetIncreaseDecimalDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
3100
- SpreadsheetIncreaseDecimalDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetIncreaseDecimalDirective, selector: "kendo-toolbar-button[kendoSpreadsheetIncreaseDecimal]", usesInheritance: true, ngImport: i0 });
3101
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetIncreaseDecimalDirective, decorators: [{
2801
+ SpreadsheetRedoDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetRedoDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2802
+ SpreadsheetRedoDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetRedoDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetRedo]", usesInheritance: true, ngImport: i0 });
2803
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetRedoDirective, decorators: [{
3102
2804
  type: Directive,
3103
2805
  args: [{
3104
- selector: 'kendo-toolbar-button[kendoSpreadsheetIncreaseDecimal]'
2806
+ selector: 'kendo-toolbar-button[kendoSpreadsheetRedo]',
2807
+ standalone: true
3105
2808
  }]
3106
2809
  }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
3107
2810
 
3108
2811
  /**
3109
2812
  * @hidden
3110
2813
  */
3111
- class SpreadsheetDecreaseDecimalDirective extends SpreadsheetCommandButton {
2814
+ class SpreadsheetUndoDirective extends SpreadsheetCommandButton {
3112
2815
  constructor(button, localization, spreadsheetService, toolsService) {
3113
- super('decreaseDecimal', button, localization, spreadsheetService, toolsService, {
3114
- command: 'AdjustDecimalsCommand'
2816
+ super('undo', button, localization, spreadsheetService, toolsService, {
2817
+ options: { property: 'undo' }
3115
2818
  });
3116
2819
  }
3117
2820
  clickHandler() {
3118
- const options = {
3119
- command: 'AdjustDecimalsCommand',
3120
- options: { value: -1 }
3121
- };
3122
- this.spreadsheetService.spreadsheet.executeCommand(options);
2821
+ this.spreadsheetService.spreadsheet.workbook.undoRedoStack['undo']();
3123
2822
  }
3124
2823
  }
3125
- SpreadsheetDecreaseDecimalDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDecreaseDecimalDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
3126
- SpreadsheetDecreaseDecimalDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetDecreaseDecimalDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDecreaseDecimal]", usesInheritance: true, ngImport: i0 });
3127
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetDecreaseDecimalDirective, decorators: [{
2824
+ SpreadsheetUndoDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetUndoDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
2825
+ SpreadsheetUndoDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetUndoDirective, isStandalone: true, selector: "kendo-toolbar-button[kendoSpreadsheetUndo]", usesInheritance: true, ngImport: i0 });
2826
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetUndoDirective, decorators: [{
3128
2827
  type: Directive,
3129
2828
  args: [{
3130
- selector: 'kendo-toolbar-button[kendoSpreadsheetDecreaseDecimal]'
2829
+ selector: 'kendo-toolbar-button[kendoSpreadsheetUndo]',
2830
+ standalone: true
3131
2831
  }]
3132
2832
  }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
3133
2833
 
3134
2834
  /**
3135
2835
  * @hidden
3136
2836
  */
3137
- class SpreadsheetHorizontalTextAlignDirective {
3138
- constructor(host, localization, spreadsheetService, toolsService) {
3139
- this.host = host;
2837
+ class SpreadsheetSaveFileDirective {
2838
+ constructor(button, localization, spreadsheetService) {
2839
+ this.button = button;
2840
+ this.localization = localization;
3140
2841
  this.spreadsheetService = spreadsheetService;
3141
- this.toolsService = toolsService;
3142
- this.commandName = 'alignHorizontal';
3143
2842
  this.subs = new Subscription();
3144
- host.svgIcon = commandSVGIcons[this.commandName];
3145
- host.icon = commandIcons[this.commandName];
3146
- host.arrowIcon = true;
3147
- host.fillMode = 'flat';
3148
- host.data = ALIGNS.flatMap(item => item.commandName === 'textAlign' ? [Object.assign(Object.assign({}, item), { textKey: localization.get(item.commandId) })] : []);
3149
- this.subs.add(host.itemClick.subscribe((e) => this.onItemClick(e)));
3150
- host.title = localization.get(this.commandName);
3151
- host.textField = 'textKey';
3152
2843
  }
3153
2844
  ngOnInit() {
3154
- this.subs.add(this.toolsService.stateChange.subscribe(state => this.host.data.forEach(i => i.cssClass = i.value === state[i.commandName] ? 'k-selected' : '')));
2845
+ this.button.title = this.localization.get('saveFile');
2846
+ this.button.icon = commandIcons['download'];
2847
+ this.button.svgIcon = commandSVGIcons['download'];
2848
+ this.button.fillMode = 'flat';
2849
+ this.subs.add(this.button.click.subscribe(() => {
2850
+ const spreadsheet = this.spreadsheetService.spreadsheet;
2851
+ if (spreadsheet) {
2852
+ spreadsheet.saveAsExcel(Object.assign(Object.assign({}, spreadsheet.options.excel), { saveAs,
2853
+ Workbook }));
2854
+ }
2855
+ }));
3155
2856
  }
3156
2857
  ngOnDestroy() {
3157
2858
  this.subs.unsubscribe();
3158
2859
  }
3159
- onItemClick(item) {
3160
- const value = item.value || null;
3161
- const options = {
3162
- command: 'PropertyChangeCommand', options: { property: item.commandName, value }
2860
+ }
2861
+ SpreadsheetSaveFileDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetSaveFileDirective, deps: [{ token: i1$2.ToolBarButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }], target: i0.ɵɵFactoryTarget.Directive });
2862
+ SpreadsheetSaveFileDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetSaveFileDirective, isStandalone: true, selector: "[kendoSpreadsheetSaveFile]", ngImport: i0 });
2863
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetSaveFileDirective, decorators: [{
2864
+ type: Directive,
2865
+ args: [{
2866
+ selector: '[kendoSpreadsheetSaveFile]',
2867
+ standalone: true
2868
+ }]
2869
+ }], ctorParameters: function () { return [{ type: i1$2.ToolBarButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }]; } });
2870
+
2871
+ /**
2872
+ * @hidden
2873
+ */
2874
+ class SpreadsheetLoadFileComponent extends ToolBarToolComponent {
2875
+ constructor(localization, spreadsheetService, toolbar) {
2876
+ super();
2877
+ this.localization = localization;
2878
+ this.spreadsheetService = spreadsheetService;
2879
+ this.toolbar = toolbar;
2880
+ this.icon = commandIcons['folderOpen'];
2881
+ this.svgIcon = commandSVGIcons['folderOpen'];
2882
+ this.tabindex = -1;
2883
+ this.onFileSelect = (e) => {
2884
+ const file = e.target.files[0];
2885
+ if (file) {
2886
+ this.spreadsheetService.spreadsheet.executeCommand({ command: 'OpenCommand', options: { file } });
2887
+ e.target.value = null;
2888
+ }
3163
2889
  };
3164
- this.spreadsheetService.spreadsheet.executeCommand(options);
2890
+ }
2891
+ /**
2892
+ * @hidden
2893
+ */
2894
+ messageFor(key) {
2895
+ return this.localization.get(key);
2896
+ }
2897
+ /**
2898
+ * @hidden
2899
+ */
2900
+ canFocus() {
2901
+ return true;
2902
+ }
2903
+ /**
2904
+ * @hidden
2905
+ */
2906
+ focus() {
2907
+ this.tabindex = 0;
2908
+ if (this.overflows) {
2909
+ this.overflowButtonElement.nativeElement.focus();
2910
+ }
2911
+ else {
2912
+ this.button.focus();
2913
+ }
2914
+ }
2915
+ /**
2916
+ * @hidden
2917
+ */
2918
+ handleKey() {
2919
+ this.tabindex = -1;
2920
+ return false;
2921
+ }
2922
+ }
2923
+ SpreadsheetLoadFileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetLoadFileComponent, deps: [{ token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: ToolBarComponent }], target: i0.ɵɵFactoryTarget.Component });
2924
+ SpreadsheetLoadFileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetLoadFileComponent, isStandalone: true, selector: "kendo-spreadsheet-load-file-tool", providers: [
2925
+ {
2926
+ provide: ToolBarToolComponent,
2927
+ useExisting: forwardRef(() => SpreadsheetLoadFileComponent),
2928
+ },
2929
+ ], viewQueries: [{ propertyName: "toolbarTemplate", first: true, predicate: ["toolbarTemplate"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "overflowButtonElement", first: true, predicate: ["overflowButton"], descendants: true, read: ElementRef }, { propertyName: "button", first: true, predicate: ["button"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
2930
+ <ng-template #toolbarTemplate>
2931
+ <button
2932
+ #button
2933
+ type="button"
2934
+ kendoButton
2935
+ [title]="messageFor('loadFile')"
2936
+ fillMode="flat"
2937
+ [icon]="icon"
2938
+ [svgIcon]="svgIcon"
2939
+ (click)="fileSelectEl.click()"></button>
2940
+ <input
2941
+ #fileSelectEl
2942
+ type="file"
2943
+ (change)="onFileSelect($event)"
2944
+ [style.display]="'none'"
2945
+ aria-hidden="true"
2946
+ accept=".xlsx,.XLSX" />
2947
+ </ng-template>
2948
+ <ng-template #popupTemplate>
2949
+ <div
2950
+ #overflowButton
2951
+ tabindex="-1"
2952
+ role="menuitem"
2953
+ class="k-item k-menu-item"
2954
+ (click)="toolbar.toggle(false); popupFileSelectEl.click()">
2955
+ <span
2956
+ class="k-link k-menu-link">
2957
+ <kendo-icon-wrapper
2958
+ [name]="icon"
2959
+ [svgIcon]="svgIcon"
2960
+ ></kendo-icon-wrapper>
2961
+ <span class="k-menu-link-text">{{messageFor('loadFile')}}</span>
2962
+ </span>
2963
+ <input
2964
+ #popupFileSelectEl
2965
+ type="file"
2966
+ (change)="onFileSelect($event)"
2967
+ [style.display]="'none'"
2968
+ aria-hidden="true"
2969
+ accept=".xlsx,.XLSX" />
2970
+ </div>
2971
+ </ng-template>
2972
+ `, isInline: true, dependencies: [{ kind: "component", type: 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"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
2973
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetLoadFileComponent, decorators: [{
2974
+ type: Component,
2975
+ args: [{
2976
+ selector: 'kendo-spreadsheet-load-file-tool',
2977
+ providers: [
2978
+ {
2979
+ provide: ToolBarToolComponent,
2980
+ useExisting: forwardRef(() => SpreadsheetLoadFileComponent),
2981
+ },
2982
+ ],
2983
+ template: `
2984
+ <ng-template #toolbarTemplate>
2985
+ <button
2986
+ #button
2987
+ type="button"
2988
+ kendoButton
2989
+ [title]="messageFor('loadFile')"
2990
+ fillMode="flat"
2991
+ [icon]="icon"
2992
+ [svgIcon]="svgIcon"
2993
+ (click)="fileSelectEl.click()"></button>
2994
+ <input
2995
+ #fileSelectEl
2996
+ type="file"
2997
+ (change)="onFileSelect($event)"
2998
+ [style.display]="'none'"
2999
+ aria-hidden="true"
3000
+ accept=".xlsx,.XLSX" />
3001
+ </ng-template>
3002
+ <ng-template #popupTemplate>
3003
+ <div
3004
+ #overflowButton
3005
+ tabindex="-1"
3006
+ role="menuitem"
3007
+ class="k-item k-menu-item"
3008
+ (click)="toolbar.toggle(false); popupFileSelectEl.click()">
3009
+ <span
3010
+ class="k-link k-menu-link">
3011
+ <kendo-icon-wrapper
3012
+ [name]="icon"
3013
+ [svgIcon]="svgIcon"
3014
+ ></kendo-icon-wrapper>
3015
+ <span class="k-menu-link-text">{{messageFor('loadFile')}}</span>
3016
+ </span>
3017
+ <input
3018
+ #popupFileSelectEl
3019
+ type="file"
3020
+ (change)="onFileSelect($event)"
3021
+ [style.display]="'none'"
3022
+ aria-hidden="true"
3023
+ accept=".xlsx,.XLSX" />
3024
+ </div>
3025
+ </ng-template>
3026
+ `,
3027
+ standalone: true,
3028
+ imports: [ButtonComponent, IconWrapperComponent]
3029
+ }]
3030
+ }], ctorParameters: function () {
3031
+ return [{ type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: i1$2.ToolBarComponent, decorators: [{
3032
+ type: Inject,
3033
+ args: [ToolBarComponent]
3034
+ }] }];
3035
+ }, propDecorators: { toolbarTemplate: [{
3036
+ type: ViewChild,
3037
+ args: ['toolbarTemplate', { static: true }]
3038
+ }], popupTemplate: [{
3039
+ type: ViewChild,
3040
+ args: ['popupTemplate', { static: true }]
3041
+ }], overflowButtonElement: [{
3042
+ type: ViewChild,
3043
+ args: ['overflowButton', { read: ElementRef, static: false }]
3044
+ }], button: [{
3045
+ type: ViewChild,
3046
+ args: ['button']
3047
+ }] } });
3048
+
3049
+ /**
3050
+ * @hidden
3051
+ */
3052
+ class MainMenuDirective {
3053
+ constructor(host, renderer) {
3054
+ this.host = host;
3055
+ this.renderer = renderer;
3056
+ }
3057
+ ngAfterViewInit() {
3058
+ isDocumentAvailable() && this.renderer.addClass(this.host.nativeElement.firstElementChild, 'k-spreadsheet-menu');
3165
3059
  }
3166
3060
  }
3167
- SpreadsheetHorizontalTextAlignDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetHorizontalTextAlignDirective, deps: [{ token: i1$2.ToolBarDropDownButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
3168
- SpreadsheetHorizontalTextAlignDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetHorizontalTextAlignDirective, selector: "[kendoSpreadsheetHorizontalTextAlign]", ngImport: i0 });
3169
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetHorizontalTextAlignDirective, decorators: [{
3061
+ MainMenuDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MainMenuDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
3062
+ MainMenuDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: MainMenuDirective, isStandalone: true, selector: "[kendoSpreadsheetMenu]", ngImport: i0 });
3063
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MainMenuDirective, decorators: [{
3170
3064
  type: Directive,
3171
3065
  args: [{
3172
- selector: '[kendoSpreadsheetHorizontalTextAlign]',
3066
+ selector: '[kendoSpreadsheetMenu]',
3067
+ standalone: true
3173
3068
  }]
3174
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarDropDownButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
3069
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
3175
3070
 
3176
3071
  /**
3177
3072
  * @hidden
3178
3073
  */
3179
- class SpreadsheetVerticalTextAlignDirective {
3180
- constructor(host, localization, spreadsheetService, toolsService) {
3181
- this.host = host;
3182
- this.spreadsheetService = spreadsheetService;
3183
- this.toolsService = toolsService;
3184
- this.commandName = 'alignVertical';
3185
- this.subs = new Subscription();
3186
- host.svgIcon = commandSVGIcons[this.commandName];
3187
- host.icon = commandIcons[this.commandName];
3188
- host.arrowIcon = true;
3189
- host.fillMode = 'flat';
3190
- host.data = ALIGNS.flatMap(item => item.commandName === 'verticalAlign' ? [Object.assign(Object.assign({}, item), { textKey: localization.get(item.commandId) })] : []);
3191
- this.subs.add(host.itemClick.subscribe((e) => this.onItemClick(e)));
3192
- host.title = localization.get(this.commandName);
3193
- host.textField = 'textKey';
3194
- }
3195
- ngOnInit() {
3196
- this.subs.add(this.toolsService.stateChange.subscribe(state => this.host.data.forEach(i => i.cssClass = i.value === state[i.commandName] ? 'k-selected' : '')));
3197
- }
3198
- ngOnDestroy() {
3199
- this.subs.unsubscribe();
3200
- }
3201
- onItemClick(item) {
3202
- const value = item.value || null;
3203
- const options = {
3204
- command: 'PropertyChangeCommand', options: { property: item.commandName, value }
3205
- };
3206
- this.spreadsheetService.spreadsheet.executeCommand(options);
3074
+ class MessagesDirective extends ComponentMessages {
3075
+ }
3076
+ MessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MessagesDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
3077
+ MessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: MessagesDirective, isStandalone: true, selector: "[kendoSpreadsheetMessages]", inputs: { home: "home", file: "file", insert: "insert", formatTab: "formatTab", 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", alignHorizontal: "alignHorizontal", alignVertical: "alignVertical", alignLeft: "alignLeft", alignCenter: "alignCenter", alignRight: "alignRight", alignJustify: "alignJustify", alignTop: "alignTop", alignMiddle: "alignMiddle", alignBottom: "alignBottom", dialogApply: "dialogApply", dialogCancel: "dialogCancel", dialogDelete: "dialogDelete", dialogRename: "dialogRename", dialogInsert: "dialogInsert", dialogRemoveLink: "dialogRemoveLink", delete: "delete", rename: "rename", nameBox: "nameBox", formulaInput: "formulaInput", addSheet: "addSheet", sheetsMenu: "sheetsMenu", view: "view", merge: "merge", mergeHorizontally: "mergeHorizontally", mergeVertically: "mergeVertically", mergeAll: "mergeAll", unmerge: "unmerge", insertLink: "insertLink", increaseDecimal: "increaseDecimal", decreaseDecimal: "decreaseDecimal", increaseFontSize: "increaseFontSize", decreaseFontSize: "decreaseFontSize", openUnsupported: "openUnsupported", modifyMerged: "modifyMerged", cannotModifyDisabled: "cannotModifyDisabled", dialogOk: "dialogOk", dialogError: "dialogError", duplicateSheetName: "duplicateSheetName", copy: "copy", cut: "cut", paste: "paste", hideRow: "hideRow", unhideRow: "unhideRow", hideColumn: "hideColumn", unhideColumn: "unhideColumn", sheetDelete: "sheetDelete", sheetRename: "sheetRename", sheetHide: "sheetHide", sheetDuplicate: "sheetDuplicate", sheetMoveLeft: "sheetMoveLeft", sheetMoveRight: "sheetMoveRight", invalidNameError: "invalidNameError" }, usesInheritance: true, ngImport: i0 });
3078
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MessagesDirective, decorators: [{
3079
+ type: Directive,
3080
+ args: [{
3081
+ selector: '[kendoSpreadsheetMessages]',
3082
+ standalone: true
3083
+ }]
3084
+ }], propDecorators: { home: [{
3085
+ type: Input
3086
+ }], file: [{
3087
+ type: Input
3088
+ }], insert: [{
3089
+ type: Input
3090
+ }], formatTab: [{
3091
+ type: Input
3092
+ }], saveFile: [{
3093
+ type: Input
3094
+ }], loadFile: [{
3095
+ type: Input
3096
+ }], bold: [{
3097
+ type: Input
3098
+ }], italic: [{
3099
+ type: Input
3100
+ }], underline: [{
3101
+ type: Input
3102
+ }], format: [{
3103
+ type: Input
3104
+ }], fontFamily: [{
3105
+ type: Input
3106
+ }], fontSize: [{
3107
+ type: Input
3108
+ }], undo: [{
3109
+ type: Input
3110
+ }], redo: [{
3111
+ type: Input
3112
+ }], background: [{
3113
+ type: Input
3114
+ }], color: [{
3115
+ type: Input
3116
+ }], gridLines: [{
3117
+ type: Input
3118
+ }], addColumnLeft: [{
3119
+ type: Input
3120
+ }], addColumnRight: [{
3121
+ type: Input
3122
+ }], addRowBelow: [{
3123
+ type: Input
3124
+ }], addRowAbove: [{
3125
+ type: Input
3126
+ }], deleteColumn: [{
3127
+ type: Input
3128
+ }], deleteRow: [{
3129
+ type: Input
3130
+ }], wrap: [{
3131
+ type: Input
3132
+ }], align: [{
3133
+ type: Input
3134
+ }], alignHorizontal: [{
3135
+ type: Input
3136
+ }], alignVertical: [{
3137
+ type: Input
3138
+ }], alignLeft: [{
3139
+ type: Input
3140
+ }], alignCenter: [{
3141
+ type: Input
3142
+ }], alignRight: [{
3143
+ type: Input
3144
+ }], alignJustify: [{
3145
+ type: Input
3146
+ }], alignTop: [{
3147
+ type: Input
3148
+ }], alignMiddle: [{
3149
+ type: Input
3150
+ }], alignBottom: [{
3151
+ type: Input
3152
+ }], dialogApply: [{
3153
+ type: Input
3154
+ }], dialogCancel: [{
3155
+ type: Input
3156
+ }], dialogDelete: [{
3157
+ type: Input
3158
+ }], dialogRename: [{
3159
+ type: Input
3160
+ }], dialogInsert: [{
3161
+ type: Input
3162
+ }], dialogRemoveLink: [{
3163
+ type: Input
3164
+ }], delete: [{
3165
+ type: Input
3166
+ }], rename: [{
3167
+ type: Input
3168
+ }], nameBox: [{
3169
+ type: Input
3170
+ }], formulaInput: [{
3171
+ type: Input
3172
+ }], addSheet: [{
3173
+ type: Input
3174
+ }], sheetsMenu: [{
3175
+ type: Input
3176
+ }], view: [{
3177
+ type: Input
3178
+ }], merge: [{
3179
+ type: Input
3180
+ }], mergeHorizontally: [{
3181
+ type: Input
3182
+ }], mergeVertically: [{
3183
+ type: Input
3184
+ }], mergeAll: [{
3185
+ type: Input
3186
+ }], unmerge: [{
3187
+ type: Input
3188
+ }], insertLink: [{
3189
+ type: Input
3190
+ }], increaseDecimal: [{
3191
+ type: Input
3192
+ }], decreaseDecimal: [{
3193
+ type: Input
3194
+ }], increaseFontSize: [{
3195
+ type: Input
3196
+ }], decreaseFontSize: [{
3197
+ type: Input
3198
+ }], openUnsupported: [{
3199
+ type: Input
3200
+ }], modifyMerged: [{
3201
+ type: Input
3202
+ }], cannotModifyDisabled: [{
3203
+ type: Input
3204
+ }], dialogOk: [{
3205
+ type: Input
3206
+ }], dialogError: [{
3207
+ type: Input
3208
+ }], duplicateSheetName: [{
3209
+ type: Input
3210
+ }], copy: [{
3211
+ type: Input
3212
+ }], cut: [{
3213
+ type: Input
3214
+ }], paste: [{
3215
+ type: Input
3216
+ }], hideRow: [{
3217
+ type: Input
3218
+ }], unhideRow: [{
3219
+ type: Input
3220
+ }], hideColumn: [{
3221
+ type: Input
3222
+ }], unhideColumn: [{
3223
+ type: Input
3224
+ }], sheetDelete: [{
3225
+ type: Input
3226
+ }], sheetRename: [{
3227
+ type: Input
3228
+ }], sheetHide: [{
3229
+ type: Input
3230
+ }], sheetDuplicate: [{
3231
+ type: Input
3232
+ }], sheetMoveLeft: [{
3233
+ type: Input
3234
+ }], sheetMoveRight: [{
3235
+ type: Input
3236
+ }], invalidNameError: [{
3237
+ type: Input
3238
+ }] } });
3239
+
3240
+ /**
3241
+ * @hidden
3242
+ */
3243
+ class LocalizedMessagesDirective extends MessagesDirective {
3244
+ constructor(service) {
3245
+ super();
3246
+ this.service = service;
3207
3247
  }
3208
3248
  }
3209
- SpreadsheetVerticalTextAlignDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetVerticalTextAlignDirective, deps: [{ token: i1$2.ToolBarDropDownButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
3210
- SpreadsheetVerticalTextAlignDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetVerticalTextAlignDirective, selector: "[kendoSpreadsheetVerticalTextAlign]", ngImport: i0 });
3211
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetVerticalTextAlignDirective, decorators: [{
3249
+ LocalizedMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i2.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
3250
+ LocalizedMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: LocalizedMessagesDirective, isStandalone: true, selector: "[kendoSpreadsheetLocalizedMessages]", providers: [{
3251
+ provide: MessagesDirective,
3252
+ useExisting: forwardRef(() => LocalizedMessagesDirective)
3253
+ }], usesInheritance: true, ngImport: i0 });
3254
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedMessagesDirective, decorators: [{
3212
3255
  type: Directive,
3213
3256
  args: [{
3214
- selector: '[kendoSpreadsheetVerticalTextAlign]',
3257
+ providers: [{
3258
+ provide: MessagesDirective,
3259
+ useExisting: forwardRef(() => LocalizedMessagesDirective)
3260
+ }],
3261
+ selector: '[kendoSpreadsheetLocalizedMessages]',
3262
+ standalone: true
3215
3263
  }]
3216
- }], ctorParameters: function () { return [{ type: i1$2.ToolBarDropDownButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
3264
+ }], ctorParameters: function () { return [{ type: i2.LocalizationService }]; } });
3217
3265
 
3218
3266
  /**
3219
3267
  * Represents the [Kendo UI Spreadsheet component for Angular]({% slug overview_spreadsheet %}).
@@ -3757,7 +3805,7 @@ class SpreadsheetComponent {
3757
3805
  }
3758
3806
  }
3759
3807
  SpreadsheetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetComponent, deps: [{ token: i0.NgZone }, { token: i1$3.IntlService }, { token: i0.ElementRef }, { token: i2.LocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }, { token: ErrorHandlingService }, { token: i1$1.DialogService }], target: i0.ɵɵFactoryTarget.Component });
3760
- SpreadsheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetComponent, selector: "kendo-spreadsheet", inputs: { menuItems: "menuItems", overflow: "overflow", formulaListMaxHeight: "formulaListMaxHeight", activeSheet: "activeSheet", sheets: "sheets", columns: "columns", columnWidth: "columnWidth", defaultCellStyle: "defaultCellStyle", headerHeight: "headerHeight", headerWidth: "headerWidth", rowHeight: "rowHeight", rows: "rows", images: "images", excel: "excel" }, outputs: { change: "change", formatChange: "formatChange", selectionChange: "selectionChange", excelExport: "excelExport", excelImport: "excelImport", activeSheetChange: "activeSheetChange" }, host: { properties: { "class.k-spreadsheet": "this.hostClass", "attr.role": "this.role" } }, providers: [
3808
+ SpreadsheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetComponent, isStandalone: true, selector: "kendo-spreadsheet", inputs: { menuItems: "menuItems", overflow: "overflow", formulaListMaxHeight: "formulaListMaxHeight", activeSheet: "activeSheet", sheets: "sheets", columns: "columns", columnWidth: "columnWidth", defaultCellStyle: "defaultCellStyle", headerHeight: "headerHeight", headerWidth: "headerWidth", rowHeight: "rowHeight", rows: "rows", images: "images", excel: "excel" }, outputs: { change: "change", formatChange: "formatChange", selectionChange: "selectionChange", excelExport: "excelExport", excelImport: "excelImport", activeSheetChange: "activeSheetChange" }, host: { properties: { "class.k-spreadsheet": "this.hostClass", "attr.role": "this.role" } }, providers: [
3761
3809
  SpreadsheetLocalizationService,
3762
3810
  SpreadsheetService,
3763
3811
  {
@@ -4036,7 +4084,7 @@ SpreadsheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
4036
4084
  (select)="onContextMenuSelect($event)"></kendo-contextmenu>
4037
4085
 
4038
4086
  <div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
4039
- `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: i9.MenuComponent, selector: "kendo-menu", inputs: ["appendTo", "menuItemTemplate", "ariaRole", "menuItemLinkTemplate"], outputs: ["select", "open", "close"], exportAs: ["kendoMenu"] }, { kind: "component", type: i9.MenuItemComponent, selector: "kendo-menu-item", inputs: ["text", "url", "disabled", "cssClass", "cssStyle", "icon", "svgIcon", "data", "separator"] }, { kind: "component", type: i9.ContextMenuComponent, selector: "kendo-contextmenu", inputs: ["showOn", "target", "filter", "alignToAnchor", "vertical", "popupAnimate", "popupAlign", "anchorAlign", "collision", "appendTo", "ariaLabel"], outputs: ["popupOpen", "popupClose", "select", "open", "close"], exportAs: ["kendoContextMenu"] }, { kind: "component", type: i1$2.ToolBarComponent, selector: "kendo-toolbar", inputs: ["overflow", "resizable", "popupSettings", "tabindex", "size", "tabIndex"], outputs: ["open", "close"], exportAs: ["kendoToolBar"] }, { kind: "component", type: i1$2.ToolBarButtonComponent, selector: "kendo-toolbar-button", inputs: ["showText", "showIcon", "text", "style", "className", "title", "disabled", "toggleable", "look", "togglable", "selected", "fillMode", "themeColor", "icon", "iconClass", "svgIcon", "imageUrl"], outputs: ["click", "pointerdown", "selectedChange"], exportAs: ["kendoToolBarButton"] }, { kind: "component", type: i1$2.ToolBarButtonGroupComponent, selector: "kendo-toolbar-buttongroup", inputs: ["disabled", "selection", "width", "look"], exportAs: ["kendoToolBarButtonGroup"] }, { kind: "component", type: i1$2.ToolBarDropDownButtonComponent, selector: "kendo-toolbar-dropdownbutton", inputs: ["arrowIcon", "title", "showText", "showIcon", "text", "icon", "svgIcon", "iconClass", "imageUrl", "popupSettings", "look", "primary", "fillMode", "themeColor", "buttonClass", "textField", "disabled", "data"], outputs: ["itemClick", "open", "close"], exportAs: ["kendoToolBarDropDownButton"] }, { kind: "component", type: i1$2.ToolBarSeparatorComponent, selector: "kendo-toolbar-separator", exportAs: ["kendoToolBarSeparator"] }, { kind: "component", type: i3.WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]" }, { kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoSpreadsheetLocalizedMessages]" }, { kind: "directive", type: FormulaInputDirective, selector: "[kendoSpreadsheetFormulaInput]", inputs: ["formulaListMaxHeight"] }, { kind: "component", type: NameBoxComponent, selector: "[kendoSpreadsheetNameBox]", inputs: ["data", "spreadsheetWidget"] }, { kind: "component", type: SheetsBarComponent, selector: "[kendoSpreadsheetSheetsBar]", inputs: ["sheets", "sheetDescriptors"] }, { kind: "directive", type: SpreadsheetBoldDirective, selector: "kendo-toolbar-button[kendoSpreadsheetBold]" }, { kind: "directive", type: SpreadsheetItalicDirective, selector: "kendo-toolbar-button[kendoSpreadsheetItalic]" }, { kind: "directive", type: SpreadsheetUnderlineDirective, selector: "kendo-toolbar-button[kendoSpreadsheetUnderline]" }, { kind: "component", type: SpreadsheetLoadFileComponent, selector: "kendo-spreadsheet-load-file-tool" }, { kind: "directive", type: SpreadsheetSaveFileDirective, selector: "[kendoSpreadsheetSaveFile]" }, { kind: "directive", type: SpreadsheetFormatDirective, selector: "[kendoSpreadsheetFormat]" }, { kind: "directive", type: SpreadsheetUndoDirective, selector: "kendo-toolbar-button[kendoSpreadsheetUndo]" }, { kind: "directive", type: SpreadsheetRedoDirective, selector: "kendo-toolbar-button[kendoSpreadsheetRedo]" }, { kind: "component", type: SpreadsheetFontFamilyComponent, selector: "kendo-toolbar-dropdownlist[kendoSpreadsheetFontFamily]" }, { kind: "component", type: SpreadsheetFontSizeComponent, selector: "kendo-toolbar-dropdownlist[kendoSpreadsheetFontSize]" }, { kind: "component", type: SpreadsheetBackColorComponent, selector: "kendo-spreadsheet-backcolor-tool" }, { kind: "component", type: SpreadsheetForeColorComponent, selector: "kendo-spreadsheet-forecolor-tool" }, { kind: "directive", type: SpreadsheetGridLinesDirective, selector: "kendo-toolbar-button[kendoSpreadsheetGridLines]" }, { kind: "directive", type: SpreadsheetAddColumnLeftButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddColumnLeftButton]" }, { kind: "directive", type: SpreadsheetAddColumnRightButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddColumnRightButton]" }, { kind: "directive", type: SpreadsheetAddRowAboveButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddRowAboveButton]" }, { kind: "directive", type: SpreadsheetAddRowBelowButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddRowBelowButton]" }, { kind: "directive", type: SpreadsheetDeleteColumnButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDeleteColumnButton]" }, { kind: "directive", type: SpreadsheetDeleteRowButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDeleteRowButton]" }, { kind: "directive", type: SpreadsheetTextWrapDirective, selector: "kendo-toolbar-button[kendoSpreadsheetTextWrap]" }, { kind: "directive", type: MainMenuDirective, selector: "[kendoSpreadsheetMenu]" }, { kind: "directive", type: SpreadsheetMergeDirective, selector: "[kendoSpreadsheetMerge]" }, { kind: "directive", type: SpreadsheetInsertLinkDirective, selector: "kendo-toolbar-button[kendoSpreadsheetInsertLink]" }, { kind: "directive", type: SpreadsheetIncreaseFontSizeDirective, selector: "kendo-toolbar-button[kendoSpreadsheetIncreaseFontSize]" }, { kind: "directive", type: SpreadsheetDecreaseFontSizeDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDecreaseFontSize]" }, { kind: "directive", type: SpreadsheetIncreaseDecimalDirective, selector: "kendo-toolbar-button[kendoSpreadsheetIncreaseDecimal]" }, { kind: "directive", type: SpreadsheetDecreaseDecimalDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDecreaseDecimal]" }, { kind: "directive", type: SpreadsheetHorizontalTextAlignDirective, selector: "[kendoSpreadsheetHorizontalTextAlign]" }, { kind: "directive", type: SpreadsheetVerticalTextAlignDirective, selector: "[kendoSpreadsheetVerticalTextAlign]" }] });
4087
+ `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoSpreadsheetLocalizedMessages]" }, { kind: "component", type: MenuComponent, selector: "kendo-menu", inputs: ["appendTo", "menuItemTemplate", "ariaRole", "menuItemLinkTemplate"], outputs: ["select", "open", "close"], exportAs: ["kendoMenu"] }, { kind: "directive", type: MainMenuDirective, selector: "[kendoSpreadsheetMenu]" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: MenuItemComponent, selector: "kendo-menu-item", inputs: ["text", "url", "disabled", "cssClass", "cssStyle", "icon", "svgIcon", "data", "separator"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ToolBarComponent, selector: "kendo-toolbar", inputs: ["overflow", "resizable", "popupSettings", "tabindex", "size", "tabIndex"], outputs: ["open", "close"], exportAs: ["kendoToolBar"] }, { kind: "component", type: SpreadsheetLoadFileComponent, selector: "kendo-spreadsheet-load-file-tool" }, { kind: "component", type: ToolBarButtonComponent, selector: "kendo-toolbar-button", inputs: ["showText", "showIcon", "text", "style", "className", "title", "disabled", "toggleable", "look", "togglable", "selected", "fillMode", "themeColor", "icon", "iconClass", "svgIcon", "imageUrl"], outputs: ["click", "pointerdown", "selectedChange"], exportAs: ["kendoToolBarButton"] }, { kind: "directive", type: SpreadsheetSaveFileDirective, selector: "[kendoSpreadsheetSaveFile]" }, { kind: "component", type: ToolBarButtonGroupComponent, selector: "kendo-toolbar-buttongroup", inputs: ["disabled", "selection", "width", "look"], exportAs: ["kendoToolBarButtonGroup"] }, { kind: "directive", type: SpreadsheetUndoDirective, selector: "kendo-toolbar-button[kendoSpreadsheetUndo]" }, { kind: "directive", type: SpreadsheetRedoDirective, selector: "kendo-toolbar-button[kendoSpreadsheetRedo]" }, { kind: "component", type: ToolBarSeparatorComponent, selector: "kendo-toolbar-separator", exportAs: ["kendoToolBarSeparator"] }, { kind: "component", type: SpreadsheetFontFamilyComponent, selector: "kendo-toolbar-dropdownlist[kendoSpreadsheetFontFamily]" }, { kind: "component", type: SpreadsheetFontSizeComponent, selector: "kendo-toolbar-dropdownlist[kendoSpreadsheetFontSize]" }, { kind: "directive", type: SpreadsheetIncreaseFontSizeDirective, selector: "kendo-toolbar-button[kendoSpreadsheetIncreaseFontSize]" }, { kind: "directive", type: SpreadsheetDecreaseFontSizeDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDecreaseFontSize]" }, { kind: "directive", type: SpreadsheetBoldDirective, selector: "kendo-toolbar-button[kendoSpreadsheetBold]" }, { kind: "directive", type: SpreadsheetItalicDirective, selector: "kendo-toolbar-button[kendoSpreadsheetItalic]" }, { kind: "directive", type: SpreadsheetUnderlineDirective, selector: "kendo-toolbar-button[kendoSpreadsheetUnderline]" }, { kind: "component", type: SpreadsheetForeColorComponent, selector: "kendo-spreadsheet-forecolor-tool" }, { kind: "component", type: SpreadsheetBackColorComponent, selector: "kendo-spreadsheet-backcolor-tool" }, { kind: "component", type: ToolBarDropDownButtonComponent, selector: "kendo-toolbar-dropdownbutton", inputs: ["arrowIcon", "title", "showText", "showIcon", "text", "icon", "svgIcon", "iconClass", "imageUrl", "popupSettings", "look", "primary", "fillMode", "themeColor", "buttonClass", "textField", "disabled", "data"], outputs: ["itemClick", "open", "close"], exportAs: ["kendoToolBarDropDownButton"] }, { kind: "directive", type: SpreadsheetHorizontalTextAlignDirective, selector: "[kendoSpreadsheetHorizontalTextAlign]" }, { kind: "directive", type: SpreadsheetVerticalTextAlignDirective, selector: "[kendoSpreadsheetVerticalTextAlign]" }, { kind: "directive", type: SpreadsheetTextWrapDirective, selector: "kendo-toolbar-button[kendoSpreadsheetTextWrap]" }, { kind: "directive", type: SpreadsheetFormatDirective, selector: "[kendoSpreadsheetFormat]" }, { kind: "directive", type: SpreadsheetInsertLinkDirective, selector: "kendo-toolbar-button[kendoSpreadsheetInsertLink]" }, { kind: "directive", type: SpreadsheetAddColumnLeftButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddColumnLeftButton]" }, { kind: "directive", type: SpreadsheetAddColumnRightButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddColumnRightButton]" }, { kind: "directive", type: SpreadsheetAddRowBelowButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddRowBelowButton]" }, { kind: "directive", type: SpreadsheetAddRowAboveButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetAddRowAboveButton]" }, { kind: "directive", type: SpreadsheetDeleteColumnButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDeleteColumnButton]" }, { kind: "directive", type: SpreadsheetDeleteRowButtonDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDeleteRowButton]" }, { kind: "directive", type: SpreadsheetDecreaseDecimalDirective, selector: "kendo-toolbar-button[kendoSpreadsheetDecreaseDecimal]" }, { kind: "directive", type: SpreadsheetIncreaseDecimalDirective, selector: "kendo-toolbar-button[kendoSpreadsheetIncreaseDecimal]" }, { kind: "directive", type: SpreadsheetMergeDirective, selector: "[kendoSpreadsheetMerge]" }, { kind: "directive", type: SpreadsheetGridLinesDirective, selector: "kendo-toolbar-button[kendoSpreadsheetGridLines]" }, { kind: "component", type: NameBoxComponent, selector: "[kendoSpreadsheetNameBox]", inputs: ["data", "spreadsheetWidget"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: FormulaInputDirective, selector: "[kendoSpreadsheetFormulaInput]", inputs: ["formulaListMaxHeight"] }, { kind: "component", type: SheetsBarComponent, selector: "[kendoSpreadsheetSheetsBar]", inputs: ["sheets", "sheetDescriptors"] }, { kind: "component", type: ContextMenuComponent, selector: "kendo-contextmenu", inputs: ["showOn", "target", "filter", "alignToAnchor", "vertical", "popupAnimate", "popupAlign", "anchorAlign", "collision", "appendTo", "ariaLabel"], outputs: ["popupOpen", "popupClose", "select", "open", "close"], exportAs: ["kendoContextMenu"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]" }] });
4040
4088
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetComponent, decorators: [{
4041
4089
  type: Component,
4042
4090
  args: [{
@@ -4323,6 +4371,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
4323
4371
 
4324
4372
  <div kendoWatermarkOverlay *ngIf="showLicenseWatermark"></div>
4325
4373
  `,
4374
+ standalone: true,
4375
+ imports: [LocalizedMessagesDirective, MenuComponent, MainMenuDirective, NgFor, MenuItemComponent, NgIf, ToolBarComponent, SpreadsheetLoadFileComponent, ToolBarButtonComponent, SpreadsheetSaveFileDirective, ToolBarButtonGroupComponent, SpreadsheetUndoDirective, SpreadsheetRedoDirective, ToolBarSeparatorComponent, SpreadsheetFontFamilyComponent, SpreadsheetFontSizeComponent, SpreadsheetIncreaseFontSizeDirective, SpreadsheetDecreaseFontSizeDirective, SpreadsheetBoldDirective, SpreadsheetItalicDirective, SpreadsheetUnderlineDirective, SpreadsheetForeColorComponent, SpreadsheetBackColorComponent, ToolBarDropDownButtonComponent, SpreadsheetHorizontalTextAlignDirective, SpreadsheetVerticalTextAlignDirective, SpreadsheetTextWrapDirective, SpreadsheetFormatDirective, SpreadsheetInsertLinkDirective, SpreadsheetAddColumnLeftButtonDirective, SpreadsheetAddColumnRightButtonDirective, SpreadsheetAddRowBelowButtonDirective, SpreadsheetAddRowAboveButtonDirective, SpreadsheetDeleteColumnButtonDirective, SpreadsheetDeleteRowButtonDirective, SpreadsheetDecreaseDecimalDirective, SpreadsheetIncreaseDecimalDirective, SpreadsheetMergeDirective, SpreadsheetGridLinesDirective, NameBoxComponent, IconWrapperComponent, FormulaInputDirective, SheetsBarComponent, ContextMenuComponent, WatermarkOverlayComponent]
4326
4376
  }]
4327
4377
  }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1$3.IntlService }, { type: i0.ElementRef }, { type: i2.LocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }, { type: ErrorHandlingService }, { type: i1$1.DialogService }]; }, propDecorators: { formulaBarInputRef: [{
4328
4378
  type: ViewChild,
@@ -4400,7 +4450,7 @@ class CustomMessagesComponent extends MessagesDirective {
4400
4450
  }
4401
4451
  }
4402
4452
  CustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i2.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
4403
- CustomMessagesComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: CustomMessagesComponent, selector: "kendo-spreadsheet-messages", providers: [
4453
+ CustomMessagesComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: CustomMessagesComponent, isStandalone: true, selector: "kendo-spreadsheet-messages", providers: [
4404
4454
  {
4405
4455
  provide: MessagesDirective,
4406
4456
  useExisting: forwardRef(() => CustomMessagesComponent)
@@ -4416,7 +4466,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
4416
4466
  }
4417
4467
  ],
4418
4468
  // eslint-disable-next-line @angular-eslint/directive-selector
4419
- selector: 'kendo-spreadsheet-messages'
4469
+ selector: 'kendo-spreadsheet-messages',
4470
+ standalone: true
4420
4471
  }]
4421
4472
  }], ctorParameters: function () { return [{ type: i2.LocalizationService }]; } });
4422
4473
 
@@ -4454,60 +4505,19 @@ class SpreadsheetTextAlignDirective {
4454
4505
  }
4455
4506
  }
4456
4507
  SpreadsheetTextAlignDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetTextAlignDirective, deps: [{ token: i1$2.ToolBarDropDownButtonComponent }, { token: SpreadsheetLocalizationService }, { token: SpreadsheetService }, { token: SpreadsheetToolsService }], target: i0.ɵɵFactoryTarget.Directive });
4457
- SpreadsheetTextAlignDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetTextAlignDirective, selector: "[kendoSpreadsheetTextAlign]", ngImport: i0 });
4508
+ SpreadsheetTextAlignDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SpreadsheetTextAlignDirective, isStandalone: true, selector: "[kendoSpreadsheetTextAlign]", ngImport: i0 });
4458
4509
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetTextAlignDirective, decorators: [{
4459
4510
  type: Directive,
4460
4511
  args: [{
4461
4512
  selector: '[kendoSpreadsheetTextAlign]',
4513
+ standalone: true
4462
4514
  }]
4463
4515
  }], ctorParameters: function () { return [{ type: i1$2.ToolBarDropDownButtonComponent }, { type: SpreadsheetLocalizationService }, { type: SpreadsheetService }, { type: SpreadsheetToolsService }]; } });
4464
4516
 
4465
- const DIRECTIVES = [
4466
- SpreadsheetComponent,
4467
- MessagesDirective,
4468
- LocalizedMessagesDirective,
4469
- CustomMessagesComponent,
4470
- FormulaListComponent,
4471
- FormulaInputDirective,
4472
- NameBoxComponent,
4473
- SheetsBarComponent,
4474
- SpreadsheetBoldDirective,
4475
- SpreadsheetItalicDirective,
4476
- SpreadsheetUnderlineDirective,
4477
- SpreadsheetLoadFileComponent,
4478
- SpreadsheetSaveFileDirective,
4479
- SpreadsheetFormatDirective,
4480
- SpreadsheetUndoDirective,
4481
- SpreadsheetRedoDirective,
4482
- SpreadsheetFontFamilyComponent,
4483
- SpreadsheetFontSizeComponent,
4484
- SpreadsheetBackColorComponent,
4485
- SpreadsheetForeColorComponent,
4486
- SpreadsheetGridLinesDirective,
4487
- SpreadsheetAddColumnLeftButtonDirective,
4488
- SpreadsheetAddColumnRightButtonDirective,
4489
- SpreadsheetAddRowAboveButtonDirective,
4490
- SpreadsheetAddRowBelowButtonDirective,
4491
- SpreadsheetDeleteColumnButtonDirective,
4492
- SpreadsheetDeleteRowButtonDirective,
4493
- SpreadsheetTextAlignDirective,
4494
- SpreadsheetTextWrapDirective,
4495
- FontFamilyDropDownListComponent,
4496
- FontSizeDropDownListComponent,
4497
- DialogContentComponent,
4498
- MainMenuDirective,
4499
- ActionDialogComponent,
4500
- SpreadsheetMergeDirective,
4501
- SpreadsheetInsertLinkDirective,
4502
- InsertLinkDialogComponent,
4503
- SpreadsheetIncreaseFontSizeDirective,
4504
- SpreadsheetDecreaseFontSizeDirective,
4505
- SpreadsheetIncreaseDecimalDirective,
4506
- SpreadsheetDecreaseDecimalDirective,
4507
- SpreadsheetHorizontalTextAlignDirective,
4508
- SpreadsheetVerticalTextAlignDirective
4509
- ];
4510
- const EXPORTS = [
4517
+ /**
4518
+ * Utility array that contains all `@progress/kendo-angular-spreadsheet` related components and directives.
4519
+ */
4520
+ const KENDO_SPREADSHEET = [
4511
4521
  SpreadsheetComponent,
4512
4522
  CustomMessagesComponent,
4513
4523
  SpreadsheetBoldDirective,
@@ -4540,6 +4550,8 @@ const EXPORTS = [
4540
4550
  SpreadsheetHorizontalTextAlignDirective,
4541
4551
  SpreadsheetVerticalTextAlignDirective
4542
4552
  ];
4553
+
4554
+ // IMPORTANT: NgModule export kept for backwards compatibility
4543
4555
  /**
4544
4556
  * Represents the [NgModule](link:site.data.urls.angular['ngmoduleapi'])
4545
4557
  * definition for the Spreadsheet component.
@@ -4547,130 +4559,14 @@ const EXPORTS = [
4547
4559
  class SpreadsheetModule {
4548
4560
  }
4549
4561
  SpreadsheetModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4550
- SpreadsheetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetModule, declarations: [SpreadsheetComponent,
4551
- MessagesDirective,
4552
- LocalizedMessagesDirective,
4553
- CustomMessagesComponent,
4554
- FormulaListComponent,
4555
- FormulaInputDirective,
4556
- NameBoxComponent,
4557
- SheetsBarComponent,
4558
- SpreadsheetBoldDirective,
4559
- SpreadsheetItalicDirective,
4560
- SpreadsheetUnderlineDirective,
4561
- SpreadsheetLoadFileComponent,
4562
- SpreadsheetSaveFileDirective,
4563
- SpreadsheetFormatDirective,
4564
- SpreadsheetUndoDirective,
4565
- SpreadsheetRedoDirective,
4566
- SpreadsheetFontFamilyComponent,
4567
- SpreadsheetFontSizeComponent,
4568
- SpreadsheetBackColorComponent,
4569
- SpreadsheetForeColorComponent,
4570
- SpreadsheetGridLinesDirective,
4571
- SpreadsheetAddColumnLeftButtonDirective,
4572
- SpreadsheetAddColumnRightButtonDirective,
4573
- SpreadsheetAddRowAboveButtonDirective,
4574
- SpreadsheetAddRowBelowButtonDirective,
4575
- SpreadsheetDeleteColumnButtonDirective,
4576
- SpreadsheetDeleteRowButtonDirective,
4577
- SpreadsheetTextAlignDirective,
4578
- SpreadsheetTextWrapDirective,
4579
- FontFamilyDropDownListComponent,
4580
- FontSizeDropDownListComponent,
4581
- DialogContentComponent,
4582
- MainMenuDirective,
4583
- ActionDialogComponent,
4584
- SpreadsheetMergeDirective,
4585
- SpreadsheetInsertLinkDirective,
4586
- InsertLinkDialogComponent,
4587
- SpreadsheetIncreaseFontSizeDirective,
4588
- SpreadsheetDecreaseFontSizeDirective,
4589
- SpreadsheetIncreaseDecimalDirective,
4590
- SpreadsheetDecreaseDecimalDirective,
4591
- SpreadsheetHorizontalTextAlignDirective,
4592
- SpreadsheetVerticalTextAlignDirective], imports: [CommonModule,
4593
- ButtonsModule,
4594
- ComboBoxModule,
4595
- DropDownListModule,
4596
- DialogModule,
4597
- EventsModule,
4598
- IconsModule,
4599
- IntlModule,
4600
- MenusModule,
4601
- PopupModule,
4602
- TabStripModule,
4603
- ToolBarModule,
4604
- InputsModule,
4605
- WatermarkModule,
4606
- LabelModule], exports: [SpreadsheetComponent,
4607
- CustomMessagesComponent,
4608
- SpreadsheetBoldDirective,
4609
- SpreadsheetItalicDirective,
4610
- SpreadsheetUnderlineDirective,
4611
- SpreadsheetLoadFileComponent,
4612
- SpreadsheetSaveFileDirective,
4613
- SpreadsheetFormatDirective,
4614
- SpreadsheetUndoDirective,
4615
- SpreadsheetRedoDirective,
4616
- SpreadsheetFontFamilyComponent,
4617
- SpreadsheetFontSizeComponent,
4618
- SpreadsheetBackColorComponent,
4619
- SpreadsheetForeColorComponent,
4620
- SpreadsheetGridLinesDirective,
4621
- SpreadsheetAddColumnLeftButtonDirective,
4622
- SpreadsheetAddColumnRightButtonDirective,
4623
- SpreadsheetAddRowAboveButtonDirective,
4624
- SpreadsheetAddRowBelowButtonDirective,
4625
- SpreadsheetDeleteColumnButtonDirective,
4626
- SpreadsheetDeleteRowButtonDirective,
4627
- SpreadsheetTextAlignDirective,
4628
- SpreadsheetTextWrapDirective,
4629
- SpreadsheetMergeDirective,
4630
- SpreadsheetInsertLinkDirective,
4631
- SpreadsheetIncreaseFontSizeDirective,
4632
- SpreadsheetDecreaseFontSizeDirective,
4633
- SpreadsheetIncreaseDecimalDirective,
4634
- SpreadsheetDecreaseDecimalDirective,
4635
- SpreadsheetHorizontalTextAlignDirective,
4636
- SpreadsheetVerticalTextAlignDirective] });
4637
- SpreadsheetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetModule, imports: [CommonModule,
4638
- ButtonsModule,
4639
- ComboBoxModule,
4640
- DropDownListModule,
4641
- DialogModule,
4642
- EventsModule,
4643
- IconsModule,
4644
- IntlModule,
4645
- MenusModule,
4646
- PopupModule,
4647
- TabStripModule,
4648
- ToolBarModule,
4649
- InputsModule,
4650
- WatermarkModule,
4651
- LabelModule] });
4562
+ SpreadsheetModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetModule, imports: [SpreadsheetComponent, CustomMessagesComponent, SpreadsheetBoldDirective, SpreadsheetItalicDirective, SpreadsheetUnderlineDirective, SpreadsheetLoadFileComponent, SpreadsheetSaveFileDirective, SpreadsheetFormatDirective, SpreadsheetUndoDirective, SpreadsheetRedoDirective, SpreadsheetFontFamilyComponent, SpreadsheetFontSizeComponent, SpreadsheetBackColorComponent, SpreadsheetForeColorComponent, SpreadsheetGridLinesDirective, SpreadsheetAddColumnLeftButtonDirective, SpreadsheetAddColumnRightButtonDirective, SpreadsheetAddRowAboveButtonDirective, SpreadsheetAddRowBelowButtonDirective, SpreadsheetDeleteColumnButtonDirective, SpreadsheetDeleteRowButtonDirective, SpreadsheetTextAlignDirective, SpreadsheetTextWrapDirective, SpreadsheetMergeDirective, SpreadsheetInsertLinkDirective, SpreadsheetIncreaseFontSizeDirective, SpreadsheetDecreaseFontSizeDirective, SpreadsheetIncreaseDecimalDirective, SpreadsheetDecreaseDecimalDirective, SpreadsheetHorizontalTextAlignDirective, SpreadsheetVerticalTextAlignDirective], exports: [SpreadsheetComponent, CustomMessagesComponent, SpreadsheetBoldDirective, SpreadsheetItalicDirective, SpreadsheetUnderlineDirective, SpreadsheetLoadFileComponent, SpreadsheetSaveFileDirective, SpreadsheetFormatDirective, SpreadsheetUndoDirective, SpreadsheetRedoDirective, SpreadsheetFontFamilyComponent, SpreadsheetFontSizeComponent, SpreadsheetBackColorComponent, SpreadsheetForeColorComponent, SpreadsheetGridLinesDirective, SpreadsheetAddColumnLeftButtonDirective, SpreadsheetAddColumnRightButtonDirective, SpreadsheetAddRowAboveButtonDirective, SpreadsheetAddRowBelowButtonDirective, SpreadsheetDeleteColumnButtonDirective, SpreadsheetDeleteRowButtonDirective, SpreadsheetTextAlignDirective, SpreadsheetTextWrapDirective, SpreadsheetMergeDirective, SpreadsheetInsertLinkDirective, SpreadsheetIncreaseFontSizeDirective, SpreadsheetDecreaseFontSizeDirective, SpreadsheetIncreaseDecimalDirective, SpreadsheetDecreaseDecimalDirective, SpreadsheetHorizontalTextAlignDirective, SpreadsheetVerticalTextAlignDirective] });
4563
+ SpreadsheetModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetModule, providers: [IconsService, PopupService, ResizeBatchService, DialogContainerService, DialogService, WindowService, WindowContainerService], imports: [SpreadsheetComponent, SpreadsheetLoadFileComponent, SpreadsheetFontFamilyComponent, SpreadsheetFontSizeComponent, SpreadsheetBackColorComponent, SpreadsheetForeColorComponent] });
4652
4564
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpreadsheetModule, decorators: [{
4653
4565
  type: NgModule,
4654
4566
  args: [{
4655
- declarations: [DIRECTIVES],
4656
- exports: [EXPORTS],
4657
- imports: [
4658
- CommonModule,
4659
- ButtonsModule,
4660
- ComboBoxModule,
4661
- DropDownListModule,
4662
- DialogModule,
4663
- EventsModule,
4664
- IconsModule,
4665
- IntlModule,
4666
- MenusModule,
4667
- PopupModule,
4668
- TabStripModule,
4669
- ToolBarModule,
4670
- InputsModule,
4671
- WatermarkModule,
4672
- LabelModule
4673
- ]
4567
+ exports: [...KENDO_SPREADSHEET],
4568
+ imports: [...KENDO_SPREADSHEET],
4569
+ providers: [IconsService, PopupService, ResizeBatchService, DialogContainerService, DialogService, WindowService, WindowContainerService]
4674
4570
  }]
4675
4571
  }] });
4676
4572