@progress/kendo-angular-spreadsheet 14.3.0-develop.9 → 14.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,6 +8,7 @@ import { Injectable } from '@angular/core';
8
8
  import { Subject } from 'rxjs';
9
9
  import { SpreadsheetService } from './spreadsheet.service';
10
10
  import { take } from 'rxjs/operators';
11
+ import { replaceMessagePlaceholder } from '../utils';
11
12
  import * as i0 from "@angular/core";
12
13
  import * as i1 from "./spreadsheet.service";
13
14
  import * as i2 from "@progress/kendo-angular-l10n";
@@ -41,10 +42,22 @@ export class ErrorHandlingService {
41
42
  this.openDialog(messageData);
42
43
  }
43
44
  openDialog(messageData) {
45
+ let dialogContent;
46
+ if (messageData.name === 'message') {
47
+ const localizationMsg = this.messageFor('invalidNameError');
48
+ let inputValue = messageData.text.split(' ').pop();
49
+ if (messageData.text.startsWith('Parse')) {
50
+ inputValue = inputValue.substring(0, inputValue.length - 1);
51
+ }
52
+ dialogContent = replaceMessagePlaceholder(localizationMsg, 'inputValue', inputValue);
53
+ }
54
+ else {
55
+ dialogContent = this.messageFor(messageData.name);
56
+ }
44
57
  const dialogSettings = {
45
58
  appendTo: this.spreadsheetService.dialogContainer,
46
59
  title: this.messageFor('dialogError'),
47
- content: this.messageFor(messageData.name),
60
+ content: dialogContent,
48
61
  actions: [{
49
62
  text: this.messageFor('dialogOk'),
50
63
  themeColor: 'primary'
@@ -11,7 +11,7 @@ import * as i0 from "@angular/core";
11
11
  export class MessagesDirective extends ComponentMessages {
12
12
  }
13
13
  MessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MessagesDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
14
- MessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: MessagesDirective, selector: "[kendoSpreadsheetMessages]", inputs: { home: "home", file: "file", insert: "insert", 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" }, usesInheritance: true, ngImport: i0 });
14
+ MessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", 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 });
15
15
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MessagesDirective, decorators: [{
16
16
  type: Directive,
17
17
  args: [{
@@ -169,4 +169,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
169
169
  type: Input
170
170
  }], sheetMoveRight: [{
171
171
  type: Input
172
+ }], invalidNameError: [{
173
+ type: Input
172
174
  }] } });
@@ -9,7 +9,7 @@ export const packageMetadata = {
9
9
  name: '@progress/kendo-angular-spreadsheet',
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
12
- publishDate: 1701953837,
13
- version: '14.3.0-develop.9',
12
+ publishDate: 1703060779,
13
+ version: '14.3.0',
14
14
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning',
15
15
  };
@@ -214,7 +214,9 @@ export class SheetsBarComponent {
214
214
  if (event.text === this.messageFor(dataItem.dialogButton)) {
215
215
  const sheetsBar = this.spreadsheetService.spreadsheet.view.sheetsbar;
216
216
  if (sheetsBar) {
217
- dataItem.commandName === 'delete' ? sheetsBar.onSheetRemove(sheet.text) : sheetsBar.onSheetRename(dialogContent.value, this.sheets.indexOf(sheet));
217
+ const allSheets = this.spreadsheetService.spreadsheet.sheets();
218
+ const sheetIndex = allSheets.findIndex(s => s.name() === sheet.text);
219
+ dataItem.commandName === 'delete' ? sheetsBar.onSheetRemove(sheet.text) : sheetsBar.onSheetRename(dialogContent.value, sheetIndex);
218
220
  this.notifySheetsChange();
219
221
  }
220
222
  }
@@ -803,7 +803,9 @@ SpreadsheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
803
803
  i18n-sheetMoveLeft="kendo.spreadsheet.sheetMoveLeft|The text of the Sheet menu Move Left option."
804
804
  sheetMoveLeft="Move Left"
805
805
  i18n-sheetMoveRight="kendo.spreadsheet.sheetMoveRight|The text of the Sheet menu Move Right option."
806
- sheetMoveRight="Move Right">
806
+ sheetMoveRight="Move Right"
807
+ i18n-invalidNameError="kendo.spreadsheet.invalidNameError|The content of the dialog that warns about invalid name input."
808
+ invalidNameError="{{ 'Invalid name: {inputValue}' }}">
807
809
  </ng-container>
808
810
  <div class="k-spreadsheet-header">
809
811
  <kendo-menu kendoSpreadsheetMenu (select)="onMenuItemSelect($event)">
@@ -1086,7 +1088,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
1086
1088
  i18n-sheetMoveLeft="kendo.spreadsheet.sheetMoveLeft|The text of the Sheet menu Move Left option."
1087
1089
  sheetMoveLeft="Move Left"
1088
1090
  i18n-sheetMoveRight="kendo.spreadsheet.sheetMoveRight|The text of the Sheet menu Move Right option."
1089
- sheetMoveRight="Move Right">
1091
+ sheetMoveRight="Move Right"
1092
+ i18n-invalidNameError="kendo.spreadsheet.invalidNameError|The content of the dialog that warns about invalid name input."
1093
+ invalidNameError="{{ 'Invalid name: {inputValue}' }}">
1090
1094
  </ng-container>
1091
1095
  <div class="k-spreadsheet-header">
1092
1096
  <kendo-menu kendoSpreadsheetMenu (select)="onMenuItemSelect($event)">
package/esm2020/utils.mjs CHANGED
@@ -24,3 +24,7 @@ export const mapToSheetDescriptor = (sheetsArray) => {
24
24
  };
25
25
  });
26
26
  };
27
+ /**
28
+ * @hidden
29
+ */
30
+ export const replaceMessagePlaceholder = (message, name, value) => message.replace(new RegExp(`\{\\s*${name}\\s*\}`, 'g'), value);
@@ -47,8 +47,8 @@ const packageMetadata = {
47
47
  name: '@progress/kendo-angular-spreadsheet',
48
48
  productName: 'Kendo UI for Angular',
49
49
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
50
- publishDate: 1701953837,
51
- version: '14.3.0-develop.9',
50
+ publishDate: 1703060779,
51
+ version: '14.3.0',
52
52
  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
53
  };
54
54
 
@@ -155,6 +155,10 @@ const mapToSheetDescriptor = (sheetsArray) => {
155
155
  };
156
156
  });
157
157
  };
158
+ /**
159
+ * @hidden
160
+ */
161
+ const replaceMessagePlaceholder = (message, name, value) => message.replace(new RegExp(`\{\\s*${name}\\s*\}`, 'g'), value);
158
162
 
159
163
  let spreadsheetCounter = 0;
160
164
  /**
@@ -511,10 +515,22 @@ class ErrorHandlingService {
511
515
  }
512
516
  openDialog(messageData) {
513
517
  var _a;
518
+ let dialogContent;
519
+ if (messageData.name === 'message') {
520
+ const localizationMsg = this.messageFor('invalidNameError');
521
+ let inputValue = messageData.text.split(' ').pop();
522
+ if (messageData.text.startsWith('Parse')) {
523
+ inputValue = inputValue.substring(0, inputValue.length - 1);
524
+ }
525
+ dialogContent = replaceMessagePlaceholder(localizationMsg, 'inputValue', inputValue);
526
+ }
527
+ else {
528
+ dialogContent = this.messageFor(messageData.name);
529
+ }
514
530
  const dialogSettings = {
515
531
  appendTo: this.spreadsheetService.dialogContainer,
516
532
  title: this.messageFor('dialogError'),
517
- content: this.messageFor(messageData.name),
533
+ content: dialogContent,
518
534
  actions: [{
519
535
  text: this.messageFor('dialogOk'),
520
536
  themeColor: 'primary'
@@ -2009,7 +2025,9 @@ class SheetsBarComponent {
2009
2025
  if (event.text === this.messageFor(dataItem.dialogButton)) {
2010
2026
  const sheetsBar = this.spreadsheetService.spreadsheet.view.sheetsbar;
2011
2027
  if (sheetsBar) {
2012
- dataItem.commandName === 'delete' ? sheetsBar.onSheetRemove(sheet.text) : sheetsBar.onSheetRename(dialogContent.value, this.sheets.indexOf(sheet));
2028
+ const allSheets = this.spreadsheetService.spreadsheet.sheets();
2029
+ const sheetIndex = allSheets.findIndex(s => s.name() === sheet.text);
2030
+ dataItem.commandName === 'delete' ? sheetsBar.onSheetRemove(sheet.text) : sheetsBar.onSheetRename(dialogContent.value, sheetIndex);
2013
2031
  this.notifySheetsChange();
2014
2032
  }
2015
2033
  }
@@ -2204,7 +2222,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2204
2222
  class MessagesDirective extends ComponentMessages {
2205
2223
  }
2206
2224
  MessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MessagesDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
2207
- MessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", 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" }, usesInheritance: true, ngImport: i0 });
2225
+ MessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", 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 });
2208
2226
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MessagesDirective, decorators: [{
2209
2227
  type: Directive,
2210
2228
  args: [{
@@ -2362,6 +2380,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2362
2380
  type: Input
2363
2381
  }], sheetMoveRight: [{
2364
2382
  type: Input
2383
+ }], invalidNameError: [{
2384
+ type: Input
2365
2385
  }] } });
2366
2386
 
2367
2387
  /**
@@ -3909,7 +3929,9 @@ SpreadsheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
3909
3929
  i18n-sheetMoveLeft="kendo.spreadsheet.sheetMoveLeft|The text of the Sheet menu Move Left option."
3910
3930
  sheetMoveLeft="Move Left"
3911
3931
  i18n-sheetMoveRight="kendo.spreadsheet.sheetMoveRight|The text of the Sheet menu Move Right option."
3912
- sheetMoveRight="Move Right">
3932
+ sheetMoveRight="Move Right"
3933
+ i18n-invalidNameError="kendo.spreadsheet.invalidNameError|The content of the dialog that warns about invalid name input."
3934
+ invalidNameError="{{ 'Invalid name: {inputValue}' }}">
3913
3935
  </ng-container>
3914
3936
  <div class="k-spreadsheet-header">
3915
3937
  <kendo-menu kendoSpreadsheetMenu (select)="onMenuItemSelect($event)">
@@ -4192,7 +4214,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
4192
4214
  i18n-sheetMoveLeft="kendo.spreadsheet.sheetMoveLeft|The text of the Sheet menu Move Left option."
4193
4215
  sheetMoveLeft="Move Left"
4194
4216
  i18n-sheetMoveRight="kendo.spreadsheet.sheetMoveRight|The text of the Sheet menu Move Right option."
4195
- sheetMoveRight="Move Right">
4217
+ sheetMoveRight="Move Right"
4218
+ i18n-invalidNameError="kendo.spreadsheet.invalidNameError|The content of the dialog that warns about invalid name input."
4219
+ invalidNameError="{{ 'Invalid name: {inputValue}' }}">
4196
4220
  </ng-container>
4197
4221
  <div class="k-spreadsheet-header">
4198
4222
  <kendo-menu kendoSpreadsheetMenu (select)="onMenuItemSelect($event)">
@@ -47,8 +47,8 @@ const packageMetadata = {
47
47
  name: '@progress/kendo-angular-spreadsheet',
48
48
  productName: 'Kendo UI for Angular',
49
49
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
50
- publishDate: 1701953837,
51
- version: '14.3.0-develop.9',
50
+ publishDate: 1703060779,
51
+ version: '14.3.0',
52
52
  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
53
  };
54
54
 
@@ -194,6 +194,10 @@ const mapToSheetDescriptor = (sheetsArray) => {
194
194
  };
195
195
  });
196
196
  };
197
+ /**
198
+ * @hidden
199
+ */
200
+ const replaceMessagePlaceholder = (message, name, value) => message.replace(new RegExp(`\{\\s*${name}\\s*\}`, 'g'), value);
197
201
 
198
202
  /**
199
203
  * @hidden
@@ -502,10 +506,22 @@ class ErrorHandlingService {
502
506
  this.openDialog(messageData);
503
507
  }
504
508
  openDialog(messageData) {
509
+ let dialogContent;
510
+ if (messageData.name === 'message') {
511
+ const localizationMsg = this.messageFor('invalidNameError');
512
+ let inputValue = messageData.text.split(' ').pop();
513
+ if (messageData.text.startsWith('Parse')) {
514
+ inputValue = inputValue.substring(0, inputValue.length - 1);
515
+ }
516
+ dialogContent = replaceMessagePlaceholder(localizationMsg, 'inputValue', inputValue);
517
+ }
518
+ else {
519
+ dialogContent = this.messageFor(messageData.name);
520
+ }
505
521
  const dialogSettings = {
506
522
  appendTo: this.spreadsheetService.dialogContainer,
507
523
  title: this.messageFor('dialogError'),
508
- content: this.messageFor(messageData.name),
524
+ content: dialogContent,
509
525
  actions: [{
510
526
  text: this.messageFor('dialogOk'),
511
527
  themeColor: 'primary'
@@ -1989,7 +2005,9 @@ class SheetsBarComponent {
1989
2005
  if (event.text === this.messageFor(dataItem.dialogButton)) {
1990
2006
  const sheetsBar = this.spreadsheetService.spreadsheet.view.sheetsbar;
1991
2007
  if (sheetsBar) {
1992
- dataItem.commandName === 'delete' ? sheetsBar.onSheetRemove(sheet.text) : sheetsBar.onSheetRename(dialogContent.value, this.sheets.indexOf(sheet));
2008
+ const allSheets = this.spreadsheetService.spreadsheet.sheets();
2009
+ const sheetIndex = allSheets.findIndex(s => s.name() === sheet.text);
2010
+ dataItem.commandName === 'delete' ? sheetsBar.onSheetRemove(sheet.text) : sheetsBar.onSheetRename(dialogContent.value, sheetIndex);
1993
2011
  this.notifySheetsChange();
1994
2012
  }
1995
2013
  }
@@ -2192,7 +2210,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2192
2210
  class MessagesDirective extends ComponentMessages {
2193
2211
  }
2194
2212
  MessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MessagesDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
2195
- MessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", 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" }, usesInheritance: true, ngImport: i0 });
2213
+ MessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", 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 });
2196
2214
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MessagesDirective, decorators: [{
2197
2215
  type: Directive,
2198
2216
  args: [{
@@ -2350,6 +2368,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2350
2368
  type: Input
2351
2369
  }], sheetMoveRight: [{
2352
2370
  type: Input
2371
+ }], invalidNameError: [{
2372
+ type: Input
2353
2373
  }] } });
2354
2374
 
2355
2375
  /**
@@ -3922,7 +3942,9 @@ SpreadsheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
3922
3942
  i18n-sheetMoveLeft="kendo.spreadsheet.sheetMoveLeft|The text of the Sheet menu Move Left option."
3923
3943
  sheetMoveLeft="Move Left"
3924
3944
  i18n-sheetMoveRight="kendo.spreadsheet.sheetMoveRight|The text of the Sheet menu Move Right option."
3925
- sheetMoveRight="Move Right">
3945
+ sheetMoveRight="Move Right"
3946
+ i18n-invalidNameError="kendo.spreadsheet.invalidNameError|The content of the dialog that warns about invalid name input."
3947
+ invalidNameError="{{ 'Invalid name: {inputValue}' }}">
3926
3948
  </ng-container>
3927
3949
  <div class="k-spreadsheet-header">
3928
3950
  <kendo-menu kendoSpreadsheetMenu (select)="onMenuItemSelect($event)">
@@ -4205,7 +4227,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
4205
4227
  i18n-sheetMoveLeft="kendo.spreadsheet.sheetMoveLeft|The text of the Sheet menu Move Left option."
4206
4228
  sheetMoveLeft="Move Left"
4207
4229
  i18n-sheetMoveRight="kendo.spreadsheet.sheetMoveRight|The text of the Sheet menu Move Right option."
4208
- sheetMoveRight="Move Right">
4230
+ sheetMoveRight="Move Right"
4231
+ i18n-invalidNameError="kendo.spreadsheet.invalidNameError|The content of the dialog that warns about invalid name input."
4232
+ invalidNameError="{{ 'Invalid name: {inputValue}' }}">
4209
4233
  </ng-container>
4210
4234
  <div class="k-spreadsheet-header">
4211
4235
  <kendo-menu kendoSpreadsheetMenu (select)="onMenuItemSelect($event)">
@@ -312,6 +312,17 @@ export declare class MessagesDirective extends ComponentMessages {
312
312
  * The text of the Sheet menu Move Right option
313
313
  */
314
314
  sheetMoveRight: string;
315
+ /**
316
+ * The content of the dialog that warns about invalid name input.
317
+ *
318
+ * The content consists of a two-part message - the input value and a localizable string.
319
+ * For user value input **A1%**, the default dialog content will be **Invalid name: A1%**.
320
+ *
321
+ * To allow reordering the input value and the localizable part, the `invalidNameError` accepts a string with a
322
+ * placeholder for the input value, for example, **{inputValue} is invalid**. The `{inputValue}` placeholder will be replaced
323
+ * internally with the current value, and the resulting label will be rendered as **A1% is invalid**.
324
+ */
325
+ invalidNameError: string;
315
326
  static ɵfac: i0.ɵɵFactoryDeclaration<MessagesDirective, never>;
316
- static ɵdir: i0.ɵɵDirectiveDeclaration<MessagesDirective, "[kendoSpreadsheetMessages]", never, { "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"; }, {}, never>;
327
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MessagesDirective, "[kendoSpreadsheetMessages]", never, { "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"; }, {}, never>;
317
328
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-spreadsheet",
3
- "version": "14.3.0-develop.9",
3
+ "version": "14.3.0",
4
4
  "description": "A Spreadsheet Component for Angular",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",
@@ -23,22 +23,22 @@
23
23
  "@angular/core": "13 - 17",
24
24
  "@angular/platform-browser": "13 - 17",
25
25
  "@progress/kendo-licensing": "^1.0.2",
26
- "@progress/kendo-angular-buttons": "14.3.0-develop.9",
27
- "@progress/kendo-angular-common": "14.3.0-develop.9",
28
- "@progress/kendo-angular-dialog": "14.3.0-develop.9",
29
- "@progress/kendo-angular-dropdowns": "14.3.0-develop.9",
30
- "@progress/kendo-angular-icons": "14.3.0-develop.9",
31
- "@progress/kendo-angular-l10n": "14.3.0-develop.9",
32
- "@progress/kendo-angular-layout": "14.3.0-develop.9",
33
- "@progress/kendo-angular-menu": "14.3.0-develop.9",
34
- "@progress/kendo-angular-popup": "14.3.0-develop.9",
35
- "@progress/kendo-angular-toolbar": "14.3.0-develop.9",
36
- "@progress/kendo-angular-intl": "14.3.0-develop.9",
26
+ "@progress/kendo-angular-buttons": "14.3.0",
27
+ "@progress/kendo-angular-common": "14.3.0",
28
+ "@progress/kendo-angular-dialog": "14.3.0",
29
+ "@progress/kendo-angular-dropdowns": "14.3.0",
30
+ "@progress/kendo-angular-icons": "14.3.0",
31
+ "@progress/kendo-angular-l10n": "14.3.0",
32
+ "@progress/kendo-angular-layout": "14.3.0",
33
+ "@progress/kendo-angular-menu": "14.3.0",
34
+ "@progress/kendo-angular-popup": "14.3.0",
35
+ "@progress/kendo-angular-toolbar": "14.3.0",
36
+ "@progress/kendo-angular-intl": "14.3.0",
37
37
  "rxjs": "^6.5.3 || ^7.0.0"
38
38
  },
39
39
  "dependencies": {
40
40
  "tslib": "^2.3.1",
41
- "@progress/kendo-angular-schematics": "14.3.0-develop.9",
41
+ "@progress/kendo-angular-schematics": "14.3.0",
42
42
  "@progress/jszip-esm": "^1.0.3",
43
43
  "@progress/kendo-common": "^0.2.2",
44
44
  "@progress/kendo-date-math": "^1.5.10",
@@ -6,7 +6,7 @@ function default_1(options) {
6
6
  // Peer dependency of icons
7
7
  '@progress/kendo-svg-icons': '^2.0.0',
8
8
  // peer dep of the dropdowns
9
- '@progress/kendo-angular-treeview': '14.3.0-develop.9'
9
+ '@progress/kendo-angular-treeview': '14.3.0'
10
10
  } });
11
11
  return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
12
12
  }
package/utils.d.ts CHANGED
@@ -7,3 +7,7 @@ import { Sheet, SheetDescriptor } from '@progress/kendo-spreadsheet-common';
7
7
  * @hidden
8
8
  */
9
9
  export declare const mapToSheetDescriptor: (sheetsArray: Sheet[]) => SheetDescriptor[];
10
+ /**
11
+ * @hidden
12
+ */
13
+ export declare const replaceMessagePlaceholder: (message: string, name: string, value: string) => string;