devexpress-richedit 25.2.7 → 25.2.8

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 (30) hide show
  1. package/bin/gulpfile.js +1 -1
  2. package/bin/index-custom.js +1 -1
  3. package/bin/localization-builder.js +1 -1
  4. package/bin/nspell-index.js +1 -1
  5. package/bin/nspell.webpack.config.js +1 -1
  6. package/bin/webpack-externals.js +1 -1
  7. package/bin/webpack.config.js +1 -1
  8. package/dist/dx.richedit.css +0 -1
  9. package/dist/dx.richedit.d.ts +1 -1
  10. package/dist/dx.richedit.js +226 -172
  11. package/dist/dx.richedit.min.js +2 -2
  12. package/index.d.ts +1 -1
  13. package/index.js +1 -1
  14. package/lib/client/default-localization.js +7 -7
  15. package/lib/client/public/utils.js +5 -1
  16. package/lib/common/canvas/renderes/common/document-renderer.js +7 -1
  17. package/lib/common/commands/border-command-options.d.ts +7 -0
  18. package/lib/common/commands/border-command-options.js +8 -0
  19. package/lib/common/commands/dialogs/dialog-border-shading-command.js +13 -6
  20. package/lib/common/commands/tables/toggle-table-cells-border-command.d.ts +1 -1
  21. package/lib/common/commands/tables/toggle-table-cells-border-command.js +10 -3
  22. package/lib/common/event-manager.js +14 -7
  23. package/lib/common/layout-formatter/formatter/base-formatter.d.ts +1 -0
  24. package/lib/common/layout-formatter/formatter/base-formatter.js +11 -0
  25. package/lib/common/layout-formatter/row/result.d.ts +1 -1
  26. package/lib/common/layout-formatter/row/result.js +12 -17
  27. package/lib/common/layout-formatter/row/size-engine/row-formatting-info.d.ts +2 -1
  28. package/lib/common/layout-formatter/row/size-engine/row-formatting-info.js +7 -4
  29. package/lib/common/layout-formatter/row/size-engine/row-sizes-manager.js +1 -3
  30. package/package.json +3 -3
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * DevExpress WebRichEdit (dx.richedit.js)
3
- * Version: 25.2.7
3
+ * Version: 25.2.8
4
4
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
5
5
  * License: https://www.devexpress.com/Support/EULAs",
6
6
  */
@@ -93908,8 +93908,6 @@ class BoxAligner {
93908
93908
 
93909
93909
 
93910
93910
 
93911
-
93912
-
93913
93911
  var RowFormatterResultFlag;
93914
93912
  (function (RowFormatterResultFlag) {
93915
93913
  RowFormatterResultFlag[RowFormatterResultFlag["None"] = 0] = "None";
@@ -93953,7 +93951,8 @@ class RowFormatterResult {
93953
93951
  }
93954
93952
  finishRow() {
93955
93953
  this.finishLogicalRow(this.rowFormatter.rowSizesManager.rowFormattingInfo.lastNonEmptyInterval.end);
93956
- const lastBoxOffset = utils_list.ListUtils.last(this.row.boxes).rowOffset;
93954
+ const lastBox = utils_list.ListUtils.last(this.row.boxes);
93955
+ const lastBoxOffset = lastBox.rowOffset;
93957
93956
  for (let ind = 0, anc; anc = this.newAnchoredObjects[ind]; ind++) {
93958
93957
  if (anc.rowOffset > lastBoxOffset) {
93959
93958
  this.deleteSomeAnchorObjects(ind, anc.rowOffset);
@@ -93982,24 +93981,20 @@ class RowFormatterResult {
93982
93981
  }
93983
93982
  this.row.columnOffset = rowStartPos -
93984
93983
  this.rowFormatter.manager.activeFormatter.layoutPosition.getLogPosition(DocumentLayoutDetailsLevel.Column);
93985
- const pictBox = this.onlyInlinePictureBox();
93986
- if (pictBox && pictBox.width > this.row.width)
93987
- this.row.width = pictBox.width;
93984
+ const firstBox = this.row.boxes[0];
93985
+ const lastVisibleBox = this.getLastVisibleBox();
93986
+ if (lastVisibleBox)
93987
+ this.row.width = Math.max(this.row.width, lastVisibleBox.right - firstBox.x);
93988
93988
  const currState = this.rowFormatter.rowSizesManager.heightCalculator.currState;
93989
93989
  this.row.increaseRowHeightFromSpacingBeforeAndAfter(currState.maxAscent, currState.maxDescent);
93990
93990
  }
93991
- onlyInlinePictureBox() {
93992
- let pictBox;
93993
- for (let ind = this.row.boxes.length - 1; ind >= 0; ind--) {
93994
- const box = this.row.boxes[ind];
93995
- if (box.getType() == LayoutBoxType.Picture) {
93996
- pictBox = box;
93997
- }
93998
- else if (!utils_enum/* EnumUtils */.h.isAnyOf(box.getType(), LayoutBoxType.ParagraphMark, LayoutBoxType.SectionMark, LayoutBoxType.LineBreak, LayoutBoxType.PageBreak)) {
93999
- return null;
94000
- }
93991
+ getLastVisibleBox() {
93992
+ for (let i = this.row.boxes.length - 1; i >= 0; i--) {
93993
+ const box = this.row.boxes[i];
93994
+ if (box.isVisible() && !box.isWhitespace())
93995
+ return box;
94001
93996
  }
94002
- return pictBox;
93997
+ return null;
94003
93998
  }
94004
93999
  addBracketBox(boxType, color, x, layoutBox) {
94005
94000
  const box = new BookmarkBox(boxType);
@@ -94900,11 +94895,14 @@ class RowIntervalInfo extends fixed.FixedInterval {
94900
94895
  super(start, length);
94901
94896
  this.avaliableWidth = avaliableWidth;
94902
94897
  }
94903
- get busyWidth() {
94898
+ get rawUsedWidth() {
94904
94899
  return this.length - this.avaliableWidth;
94905
94900
  }
94901
+ get usedWidth() {
94902
+ return Math.min(this.rawUsedWidth, this.length);
94903
+ }
94906
94904
  get startOfFreeSpace() {
94907
- return this.start + this.busyWidth;
94905
+ return this.start + this.rawUsedWidth;
94908
94906
  }
94909
94907
  isConsiderBoxes() {
94910
94908
  return this.avaliableWidth != this.length;
@@ -94960,7 +94958,7 @@ class RowFormattingInfo {
94960
94958
  recalculate(outerHorizontalRowContentBounds) {
94961
94959
  const currInterval = this.currInterval;
94962
94960
  this.calculate(outerHorizontalRowContentBounds);
94963
- const pos = currInterval.start + currInterval.busyWidth;
94961
+ const pos = currInterval.start + currInterval.rawUsedWidth;
94964
94962
  const index = this.findIntervalIndexByPosition(pos);
94965
94963
  const interval = this.intervals[index];
94966
94964
  if (interval && interval.start < pos) {
@@ -94980,7 +94978,7 @@ class RowFormattingInfo {
94980
94978
  return index;
94981
94979
  }
94982
94980
  canIncrementHeightTo(newHeight) {
94983
- const contentBounds = utils_list.ListUtils.map(this.intervals, (c) => new rectangle.Rectangle(c.start, this.minY, c.busyWidth, newHeight));
94981
+ const contentBounds = utils_list.ListUtils.map(this.intervals, (c) => new rectangle.Rectangle(c.start, this.minY, c.usedWidth, newHeight));
94984
94982
  const intersectedObjects = this.calcIntersectObjects(newHeight);
94985
94983
  return !utils_list.ListUtils.unsafeAnyOf(intersectedObjects, (ancBound) => utils_list.ListUtils.unsafeAnyOf(contentBounds, (contentBound) => RectangleUtils.getNonCollapsedIntersection(contentBound, ancBound)));
94986
94984
  }
@@ -95404,7 +95402,7 @@ class RowSizesManager {
95404
95402
  }
95405
95403
  else {
95406
95404
  box.x = this.rowFormattingInfo.intervals[0].startOfFreeSpace;
95407
- this.rowFormattingInfo.intervals[0].avaliableWidth -= Math.min(box.width, this.rowFormattingInfo.intervals[0].avaliableWidth);
95405
+ this.rowFormattingInfo.intervals[0].avaliableWidth -= box.width;
95408
95406
  this.addBoxIgnoreWidth();
95409
95407
  }
95410
95408
  }
@@ -95441,8 +95439,6 @@ class RowSizesManager {
95441
95439
  const box = this.rowFormatter.currBox;
95442
95440
  box.x = this.rowFormattingInfo.currInterval.startOfFreeSpace;
95443
95441
  this.rowFormattingInfo.currInterval.avaliableWidth -= box.width;
95444
- if (this.rowFormattingInfo.currInterval.avaliableWidth < 0)
95445
- this.rowFormattingInfo.currInterval.avaliableWidth = 0;
95446
95442
  this.row.boxes.push(box);
95447
95443
  this.rowFormattingInfo.lastNonEmptyIntervalIndex = this.rowFormattingInfo.currIndex;
95448
95444
  this.rowFormatter.setBoxInfo(true);
@@ -99216,6 +99212,7 @@ class BaseFormatter {
99216
99212
  this.layoutPosition.column.height = columnHeight;
99217
99213
  this.layoutPosition.pageArea.height = columnHeight;
99218
99214
  this.layoutPosition.page.height = finalPageHeight;
99215
+ this.layoutPosition.page.width = this.calculateContentWidth(this.layoutPosition.column) + margins.horizontal;
99219
99216
  this.layoutPosition.page.minContentHeight = minVisibleAreaHeight;
99220
99217
  }
99221
99218
  createdColumn.paragraphFrames = ParagraphFrameCollector.collect(this.manager.model.colorProvider, createdColumn, this.subDocument.isMain() ?
@@ -99235,6 +99232,16 @@ class BaseFormatter {
99235
99232
  }
99236
99233
  return true;
99237
99234
  }
99235
+ calculateContentWidth(column) {
99236
+ let maxRight = 0;
99237
+ column.tablesInfo.forEach(tableInfo => {
99238
+ maxRight = Math.max(maxRight, tableInfo.right);
99239
+ });
99240
+ column.rows.forEach(row => {
99241
+ maxRight = Math.max(maxRight, row.right);
99242
+ });
99243
+ return maxRight;
99244
+ }
99238
99245
  createNextPageArea() {
99239
99246
  const newPageArea = new LayoutPageArea(this.subDocument);
99240
99247
  newPageArea.setGeomerty(this.pageAreaBounds);
@@ -103641,8 +103648,14 @@ class DocumentRenderer {
103641
103648
  }
103642
103649
  }
103643
103650
  updatePageSize(page, pageElement) {
103644
- if (pageElement.offsetHeight != Math.round(page.height) || pageElement.offsetWidth != Math.round(page.width))
103651
+ if (pageElement.offsetHeight != Math.round(page.height) || pageElement.offsetWidth != Math.round(page.width)) {
103645
103652
  dom.DomUtils.setStyleSize(pageElement.style, page);
103653
+ if (this.viewManager.innerClientProperties.viewsSettings.isSimpleView) {
103654
+ const paddings = this.viewManager.innerClientProperties.viewsSettings.paddings;
103655
+ if (page.width - paddings.right <= this.viewManager.sizes.getVisibleAreaWidth(false))
103656
+ pageElement.style.width = "100%";
103657
+ }
103658
+ }
103646
103659
  }
103647
103660
  updatePageClasses(pageElement) {
103648
103661
  pageElement.className = RendererClassNames.PAGE;
@@ -107558,12 +107571,18 @@ class EventManager {
107558
107571
  clearTimeout(this.onMouseUpTimerId);
107559
107572
  }
107560
107573
  onShortcut(shortcutCode) {
107561
- if (this.accumulatedText.length)
107562
- this.insertFunc();
107563
- this.control.shortcutManager.processShortcut(shortcutCode);
107564
- this.mouseHandler.onShortcut(shortcutCode);
107565
- if (utils_enum/* EnumUtils */.h.isAnyOf(shortcutCode, key/* KeyCode */.DD.Enter, key/* KeyCode */.DD.Tab, key/* KeyCode */.DD.Space) && this.control.selection.lastSelectedInterval.start > 0)
107566
- this.control.autoCorrectService.performAutoCorrect();
107574
+ this.control.beginUpdate();
107575
+ try {
107576
+ if (this.accumulatedText.length)
107577
+ this.insertFunc();
107578
+ this.control.shortcutManager.processShortcut(shortcutCode);
107579
+ this.mouseHandler.onShortcut(shortcutCode);
107580
+ if (utils_enum/* EnumUtils */.h.isAnyOf(shortcutCode, key/* KeyCode */.DD.Enter, key/* KeyCode */.DD.Tab, key/* KeyCode */.DD.Space) && this.control.selection.lastSelectedInterval.start > 0)
107581
+ this.control.autoCorrectService.performAutoCorrect();
107582
+ }
107583
+ finally {
107584
+ this.control.endUpdate();
107585
+ }
107567
107586
  }
107568
107587
  onMouseDown(evt) {
107569
107588
  Log.print(LogSource.EventManager, "onMouseDown", LogObjToStrCanvas.richMouseEvent(evt));
@@ -107620,7 +107639,6 @@ class EventManager {
107620
107639
  onMouseDblClick(evt) {
107621
107640
  Log.print(LogSource.EventManager, "onMouseDoubleClick", LogObjToStrCanvas.richMouseEvent(evt));
107622
107641
  this.mouseHandler.onMouseDoubleClick(evt);
107623
- this.control.inputController.setPosition(evt.absolutePoint.x, evt.absolutePoint.y);
107624
107642
  }
107625
107643
  onMouseWheel(evt) {
107626
107644
  Log.print(LogSource.EventManager, "onMouseWheel", LogObjToStrCanvas.richMouseEvent(evt));
@@ -107712,6 +107730,8 @@ class EventManager {
107712
107730
  this.control.modelManager.modelManipulator.notifyModelChanged(new TextBufferChangedSubDocumentChange(subDocument.id, state));
107713
107731
  }
107714
107732
  insertFunc() {
107733
+ if (this.accumulatedText.length === 0)
107734
+ return;
107715
107735
  const insertCommand = this.control.commandManager.getCommand(RichEditClientCommand.InsertText);
107716
107736
  const textWasInserted = insertCommand.execute(this.control.commandManager.isPublicApiCall, this.accumulatedText);
107717
107737
  this.accumulatedText = "";
@@ -119568,7 +119588,11 @@ class Utils {
119568
119588
  static getTrimmedMessage(id) {
119569
119589
  const message = (0,external_DevExpress_localization_namespaceObject.formatMessage)(id);
119570
119590
  const trimmedFromEnd = utils_string.StringUtils.trimEnd(message, ['\\.']);
119571
- return trimmedFromEnd.replace(/&&|&/g, match => (match === "&&" ? "&" : ""));
119591
+ return trimmedFromEnd
119592
+ .replace(/&&/g, '\u0000')
119593
+ .replace(/(\S)&/g, "$1")
119594
+ .replace(/&(\S)/g, "$1")
119595
+ .replace(/\u0000/g, '&');
119572
119596
  }
119573
119597
  }
119574
119598
  class TypeConverterFactory {
@@ -120101,9 +120125,9 @@ function loadDefaultMessages() {
120101
120125
  "XtraRichEditStringId.Caption_FollowingParagraphText": "Following Paragraph ",
120102
120126
  "XtraRichEditStringId.Caption_GroupTableAlignment": "Alignment",
120103
120127
  "XtraRichEditStringId.Caption_GroupTableCellSize": "Cell Size",
120104
- "XtraRichEditStringId.Caption_GroupTableDrawBorders": "Borders && Shadings",
120128
+ "XtraRichEditStringId.Caption_GroupTableDrawBorders": "Borders & Shadings",
120105
120129
  "XtraRichEditStringId.Caption_GroupTableMerge": "Merge",
120106
- "XtraRichEditStringId.Caption_GroupTableRowsAndColumns": "Rows && Columns",
120130
+ "XtraRichEditStringId.Caption_GroupTableRowsAndColumns": "Rows & Columns",
120107
120131
  "XtraRichEditStringId.Caption_GroupTableStyleOptions": "Table Style Options",
120108
120132
  "XtraRichEditStringId.Caption_GroupTableStyles": "Table Styles",
120109
120133
  "XtraRichEditStringId.Caption_GroupTableTable": "Table",
@@ -121601,7 +121625,7 @@ function loadDefaultMessages() {
121601
121625
  "ASPxRichEditStringId.PageMailings": "Mail Merge",
121602
121626
  "ASPxRichEditStringId.PageReview": "Review",
121603
121627
  "ASPxRichEditStringId.PageView": "View",
121604
- "ASPxRichEditStringId.PageHeaderAndFooter": "Header && Footer",
121628
+ "ASPxRichEditStringId.PageHeaderAndFooter": "Header & Footer",
121605
121629
  "ASPxRichEditStringId.PageTableDesign": "Design",
121606
121630
  "ASPxRichEditStringId.PageTableLayout": "Layout",
121607
121631
  "ASPxRichEditStringId.PageFloatingObjects": "Format",
@@ -121620,7 +121644,7 @@ function loadDefaultMessages() {
121620
121644
  "ASPxRichEditStringId.GroupSymbols": "Symbols",
121621
121645
  "ASPxRichEditStringId.GroupLinks": "Links",
121622
121646
  "ASPxRichEditStringId.GroupPages": "Pages",
121623
- "ASPxRichEditStringId.GroupHeaderFooter": "Header && Footer",
121647
+ "ASPxRichEditStringId.GroupHeaderFooter": "Header & Footer",
121624
121648
  "ASPxRichEditStringId.GroupHeaderFooterToolsDesignClose": "Close",
121625
121649
  "ASPxRichEditStringId.GroupHeaderFooterToolsDesignNavigation": "Navigation",
121626
121650
  "ASPxRichEditStringId.GroupMailMerge": "Mail Merge",
@@ -121645,9 +121669,9 @@ function loadDefaultMessages() {
121645
121669
  "ASPxRichEditStringId.GroupView": "View",
121646
121670
  "ASPxRichEditStringId.GroupTableToolsDesignTableStyleOptions": "Table Style Options",
121647
121671
  "ASPxRichEditStringId.GroupTableToolsDesignTableStyles": "Table Styles",
121648
- "ASPxRichEditStringId.GroupTableToolsDesignBordersAndShadings": "Borders && Shadings",
121672
+ "ASPxRichEditStringId.GroupTableToolsDesignBordersAndShadings": "Borders & Shadings",
121649
121673
  "ASPxRichEditStringId.GroupTableToolsLayoutTable": "Table",
121650
- "ASPxRichEditStringId.GroupTableToolsLayoutRowsAndColumns": "Rows && Columns",
121674
+ "ASPxRichEditStringId.GroupTableToolsLayoutRowsAndColumns": "Rows & Columns",
121651
121675
  "ASPxRichEditStringId.GroupTableToolsLayoutMerge": "Merge",
121652
121676
  "ASPxRichEditStringId.GroupTableToolsLayoutCellSize": "Cell Size",
121653
121677
  "ASPxRichEditStringId.GroupTableToolsLayoutAlignment": "Alignment",
@@ -122040,7 +122064,7 @@ function loadDefaultMessages() {
122040
122064
  "RichEditExtensionsStringId.Caption_GroupFloatingPictureToolsArrange": "Arrange",
122041
122065
  "RichEditExtensionsStringId.Caption_GroupFloatingPictureToolsShapeStyles": "Shape Styles",
122042
122066
  "RichEditExtensionsStringId.Caption_GroupFont": "Font",
122043
- "RichEditExtensionsStringId.Caption_GroupHeaderFooter": "Header && Footer",
122067
+ "RichEditExtensionsStringId.Caption_GroupHeaderFooter": "Header & Footer",
122044
122068
  "RichEditExtensionsStringId.Caption_GroupHeaderFooterToolsDesignClose": "Close",
122045
122069
  "RichEditExtensionsStringId.Caption_GroupHeaderFooterToolsDesignNavigation": "Navigation",
122046
122070
  "RichEditExtensionsStringId.Caption_GroupHeaderFooterToolsDesignOptions": "Options",
@@ -123939,6 +123963,16 @@ class BookmarksDialogParameters extends DialogParametersBase {
123939
123963
  }
123940
123964
  }
123941
123965
 
123966
+ ;// ./src/common/commands/border-command-options.ts
123967
+
123968
+ class BorderCommandOptions extends CommandSimpleOptions {
123969
+ constructor(control, parameter, forceApply) {
123970
+ super(control, parameter);
123971
+ this.forceApply = false;
123972
+ this.forceApply = forceApply;
123973
+ }
123974
+ }
123975
+
123942
123976
  ;// ./src/common/commands/tables/toggle-table-cells-border-command.ts
123943
123977
 
123944
123978
 
@@ -123952,6 +123986,7 @@ class BookmarksDialogParameters extends DialogParametersBase {
123952
123986
 
123953
123987
 
123954
123988
 
123989
+
123955
123990
  class ToggleTableCellsBorderCommandBase extends CommandBase {
123956
123991
  constructor() {
123957
123992
  super(...arguments);
@@ -123981,12 +124016,18 @@ class ToggleTableCellsBorderCommandBase extends CommandBase {
123981
124016
  [RichEditClientCommand.ToggleTableCellsTopBorder]: true,
123982
124017
  };
123983
124018
  }
123984
- getState(_options = this.convertToCommandOptions(null)) {
124019
+ getState(options = this.convertToCommandOptions(null)) {
123985
124020
  const tableInfo = this.selection.tableInfo;
123986
124021
  let enabled = this.isEnabled() && this.selection.tableInfo.extendedData.areCellsSelectedInSeries;
123987
124022
  let state = new SimpleCommandState(enabled);
123988
- if (state.enabled)
123989
- state.value = this.isChecked(tableInfo);
124023
+ if (state.enabled) {
124024
+ if (options instanceof BorderCommandOptions && options.forceApply) {
124025
+ state.value = !ToggleTableCellsBorderCommandBase.isBorderVisible(options.param);
124026
+ }
124027
+ else {
124028
+ state.value = this.isChecked(tableInfo);
124029
+ }
124030
+ }
123990
124031
  return state;
123991
124032
  }
123992
124033
  isEnabled() {
@@ -124610,6 +124651,7 @@ var TableBorderGridCellInfo;
124610
124651
 
124611
124652
 
124612
124653
 
124654
+
124613
124655
  class DialogBorderShadingCommandBase extends ShowDialogCommandBase {
124614
124656
  getState() {
124615
124657
  const visible = this.selection.tableInfo.extendedData.numRows > 0;
@@ -124667,27 +124709,33 @@ class DialogBorderShadingCommandBase extends ShowDialogCommandBase {
124667
124709
  changed = true;
124668
124710
  }
124669
124711
  if (newParams.top && !newParams.top.equals(initParams.top)) {
124670
- this.topBorderCommand.execute(this.control.commandManager.isPublicApiCall, newParams.top.getBorderInfo());
124712
+ const opts = new BorderCommandOptions(this.control, newParams.top.getBorderInfo(), true);
124713
+ this.topBorderCommand.execute(this.control.commandManager.isPublicApiCall, opts);
124671
124714
  changed = true;
124672
124715
  }
124673
124716
  if (newParams.bottom && !newParams.bottom.equals(initParams.bottom)) {
124674
- this.bottomBorderCommand.execute(this.control.commandManager.isPublicApiCall, newParams.bottom.getBorderInfo());
124717
+ const opts = new BorderCommandOptions(this.control, newParams.bottom.getBorderInfo(), true);
124718
+ this.bottomBorderCommand.execute(this.control.commandManager.isPublicApiCall, opts);
124675
124719
  changed = true;
124676
124720
  }
124677
124721
  if (newParams.right && !newParams.right.equals(initParams.right)) {
124678
- this.rightBorderCommand.execute(this.control.commandManager.isPublicApiCall, newParams.right.getBorderInfo());
124722
+ const opts = new BorderCommandOptions(this.control, newParams.right.getBorderInfo(), true);
124723
+ this.rightBorderCommand.execute(this.control.commandManager.isPublicApiCall, opts);
124679
124724
  changed = true;
124680
124725
  }
124681
124726
  if (newParams.left && !newParams.left.equals(initParams.left)) {
124682
- this.leftBorderCommand.execute(this.control.commandManager.isPublicApiCall, newParams.left.getBorderInfo());
124727
+ const opts = new BorderCommandOptions(this.control, newParams.left.getBorderInfo(), true);
124728
+ this.leftBorderCommand.execute(this.control.commandManager.isPublicApiCall, opts);
124683
124729
  changed = true;
124684
124730
  }
124685
124731
  if (newParams.insideHorizontal && !newParams.insideHorizontal.equals(initParams.insideHorizontal)) {
124686
- this.insideHorizontalBordersCommand.execute(this.control.commandManager.isPublicApiCall, newParams.insideHorizontal.getBorderInfo());
124732
+ const opts = new BorderCommandOptions(this.control, newParams.insideHorizontal.getBorderInfo(), true);
124733
+ this.insideHorizontalBordersCommand.execute(this.control.commandManager.isPublicApiCall, opts);
124687
124734
  changed = true;
124688
124735
  }
124689
124736
  if (newParams.insideVertical && !newParams.insideVertical.equals(initParams.insideVertical)) {
124690
- this.insideVerticalBordersCommand.execute(this.control.commandManager.isPublicApiCall, newParams.insideVertical.getBorderInfo());
124737
+ const opts = new BorderCommandOptions(this.control, newParams.insideVertical.getBorderInfo(), true);
124738
+ this.insideVerticalBordersCommand.execute(this.control.commandManager.isPublicApiCall, opts);
124691
124739
  changed = true;
124692
124740
  }
124693
124741
  history.endTransaction();
@@ -141621,8 +141669,8 @@ class DialogManager {
141621
141669
  ;// ./node_modules/devextreme/esm/__internal/core/localization/cldr-data/first_day_of_week_data.js
141622
141670
  /**
141623
141671
  * DevExtreme (esm/__internal/core/localization/cldr-data/first_day_of_week_data.js)
141624
- * Version: 25.2.7
141625
- * Build date: Tue May 05 2026
141672
+ * Version: 25.2.8
141673
+ * Build date: Mon Jun 08 2026
141626
141674
  *
141627
141675
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
141628
141676
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141821,8 +141869,8 @@ class DialogManager {
141821
141869
  ;// ./node_modules/devextreme/esm/__internal/core/localization/cldr-data/parent_locales.js
141822
141870
  /**
141823
141871
  * DevExtreme (esm/__internal/core/localization/cldr-data/parent_locales.js)
141824
- * Version: 25.2.7
141825
- * Build date: Tue May 05 2026
141872
+ * Version: 25.2.8
141873
+ * Build date: Mon Jun 08 2026
141826
141874
  *
141827
141875
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
141828
141876
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142007,8 +142055,8 @@ class DialogManager {
142007
142055
  ;// ./node_modules/devextreme/esm/__internal/core/localization/parentLocale.js
142008
142056
  /**
142009
142057
  * DevExtreme (esm/__internal/core/localization/parentLocale.js)
142010
- * Version: 25.2.7
142011
- * Build date: Tue May 05 2026
142058
+ * Version: 25.2.8
142059
+ * Build date: Mon Jun 08 2026
142012
142060
  *
142013
142061
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142014
142062
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142025,8 +142073,8 @@ const PARENT_LOCALE_SEPARATOR = "-";
142025
142073
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_type.js
142026
142074
  /**
142027
142075
  * DevExtreme (esm/__internal/core/utils/m_type.js)
142028
- * Version: 25.2.7
142029
- * Build date: Tue May 05 2026
142076
+ * Version: 25.2.8
142077
+ * Build date: Mon Jun 08 2026
142030
142078
  *
142031
142079
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142032
142080
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142128,8 +142176,8 @@ const isEvent = function(object) {
142128
142176
  ;// ./node_modules/devextreme/esm/core/utils/type.js
142129
142177
  /**
142130
142178
  * DevExtreme (esm/core/utils/type.js)
142131
- * Version: 25.2.7
142132
- * Build date: Tue May 05 2026
142179
+ * Version: 25.2.8
142180
+ * Build date: Mon Jun 08 2026
142133
142181
  *
142134
142182
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142135
142183
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142139,8 +142187,8 @@ const isEvent = function(object) {
142139
142187
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_extend.js
142140
142188
  /**
142141
142189
  * DevExtreme (esm/__internal/core/utils/m_extend.js)
142142
- * Version: 25.2.7
142143
- * Build date: Tue May 05 2026
142190
+ * Version: 25.2.8
142191
+ * Build date: Mon Jun 08 2026
142144
142192
  *
142145
142193
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142146
142194
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142198,8 +142246,8 @@ const extend = function(target) {
142198
142246
  ;// ./node_modules/devextreme/esm/core/utils/extend.js
142199
142247
  /**
142200
142248
  * DevExtreme (esm/core/utils/extend.js)
142201
- * Version: 25.2.7
142202
- * Build date: Tue May 05 2026
142249
+ * Version: 25.2.8
142250
+ * Build date: Mon Jun 08 2026
142203
142251
  *
142204
142252
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142205
142253
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142209,8 +142257,8 @@ const extend = function(target) {
142209
142257
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_string.js
142210
142258
  /**
142211
142259
  * DevExtreme (esm/__internal/core/utils/m_string.js)
142212
- * Version: 25.2.7
142213
- * Build date: Tue May 05 2026
142260
+ * Version: 25.2.8
142261
+ * Build date: Mon Jun 08 2026
142214
142262
  *
142215
142263
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142216
142264
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142285,8 +142333,8 @@ const isEmpty = function() {
142285
142333
  ;// ./node_modules/devextreme/esm/core/utils/string.js
142286
142334
  /**
142287
142335
  * DevExtreme (esm/core/utils/string.js)
142288
- * Version: 25.2.7
142289
- * Build date: Tue May 05 2026
142336
+ * Version: 25.2.8
142337
+ * Build date: Mon Jun 08 2026
142290
142338
  *
142291
142339
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142292
142340
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142296,20 +142344,20 @@ const isEmpty = function() {
142296
142344
  ;// ./node_modules/devextreme/esm/core/version.js
142297
142345
  /**
142298
142346
  * DevExtreme (esm/core/version.js)
142299
- * Version: 25.2.7
142300
- * Build date: Tue May 05 2026
142347
+ * Version: 25.2.8
142348
+ * Build date: Mon Jun 08 2026
142301
142349
  *
142302
142350
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142303
142351
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
142304
142352
  */
142305
- const version = "25.2.7";
142306
- const fullVersion = "25.2.7";
142353
+ const version = "25.2.8";
142354
+ const fullVersion = "25.2.8";
142307
142355
 
142308
142356
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_console.js
142309
142357
  /**
142310
142358
  * DevExtreme (esm/__internal/core/utils/m_console.js)
142311
- * Version: 25.2.7
142312
- * Build date: Tue May 05 2026
142359
+ * Version: 25.2.8
142360
+ * Build date: Mon Jun 08 2026
142313
142361
  *
142314
142362
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142315
142363
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142349,8 +142397,8 @@ const debug = function() {
142349
142397
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_error.js
142350
142398
  /**
142351
142399
  * DevExtreme (esm/__internal/core/utils/m_error.js)
142352
- * Version: 25.2.7
142353
- * Build date: Tue May 05 2026
142400
+ * Version: 25.2.8
142401
+ * Build date: Mon Jun 08 2026
142354
142402
  *
142355
142403
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142356
142404
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142421,8 +142469,8 @@ function error(baseErrors, errors) {
142421
142469
  ;// ./node_modules/devextreme/esm/core/utils/error.js
142422
142470
  /**
142423
142471
  * DevExtreme (esm/core/utils/error.js)
142424
- * Version: 25.2.7
142425
- * Build date: Tue May 05 2026
142472
+ * Version: 25.2.8
142473
+ * Build date: Mon Jun 08 2026
142426
142474
  *
142427
142475
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142428
142476
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142433,8 +142481,8 @@ function error(baseErrors, errors) {
142433
142481
  ;// ./node_modules/devextreme/esm/__internal/core/m_errors.js
142434
142482
  /**
142435
142483
  * DevExtreme (esm/__internal/core/m_errors.js)
142436
- * Version: 25.2.7
142437
- * Build date: Tue May 05 2026
142484
+ * Version: 25.2.8
142485
+ * Build date: Mon Jun 08 2026
142438
142486
  *
142439
142487
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142440
142488
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142502,8 +142550,8 @@ function error(baseErrors, errors) {
142502
142550
  ;// ./node_modules/devextreme/esm/core/errors.js
142503
142551
  /**
142504
142552
  * DevExtreme (esm/core/errors.js)
142505
- * Version: 25.2.7
142506
- * Build date: Tue May 05 2026
142553
+ * Version: 25.2.8
142554
+ * Build date: Mon Jun 08 2026
142507
142555
  *
142508
142556
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142509
142557
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142514,8 +142562,8 @@ function error(baseErrors, errors) {
142514
142562
  ;// ./node_modules/devextreme/esm/__internal/core/m_class.js
142515
142563
  /**
142516
142564
  * DevExtreme (esm/__internal/core/m_class.js)
142517
- * Version: 25.2.7
142518
- * Build date: Tue May 05 2026
142565
+ * Version: 25.2.8
142566
+ * Build date: Mon Jun 08 2026
142519
142567
  *
142520
142568
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142521
142569
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142648,8 +142696,8 @@ classImpl.abstract = m_class_abstract;
142648
142696
  ;// ./node_modules/devextreme/esm/core/class.js
142649
142697
  /**
142650
142698
  * DevExtreme (esm/core/class.js)
142651
- * Version: 25.2.7
142652
- * Build date: Tue May 05 2026
142699
+ * Version: 25.2.8
142700
+ * Build date: Mon Jun 08 2026
142653
142701
  *
142654
142702
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142655
142703
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142660,8 +142708,8 @@ classImpl.abstract = m_class_abstract;
142660
142708
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_iterator.js
142661
142709
  /**
142662
142710
  * DevExtreme (esm/__internal/core/utils/m_iterator.js)
142663
- * Version: 25.2.7
142664
- * Build date: Tue May 05 2026
142711
+ * Version: 25.2.8
142712
+ * Build date: Mon Jun 08 2026
142665
142713
  *
142666
142714
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142667
142715
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142710,8 +142758,8 @@ const reverseEach = (array, callback) => {
142710
142758
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_dependency_injector.js
142711
142759
  /**
142712
142760
  * DevExtreme (esm/__internal/core/utils/m_dependency_injector.js)
142713
- * Version: 25.2.7
142714
- * Build date: Tue May 05 2026
142761
+ * Version: 25.2.8
142762
+ * Build date: Mon Jun 08 2026
142715
142763
  *
142716
142764
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142717
142765
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142760,8 +142808,8 @@ function injector(object) {
142760
142808
  ;// ./node_modules/devextreme/esm/__internal/core/localization/core.js
142761
142809
  /**
142762
142810
  * DevExtreme (esm/__internal/core/localization/core.js)
142763
- * Version: 25.2.7
142764
- * Build date: Tue May 05 2026
142811
+ * Version: 25.2.8
142812
+ * Build date: Mon Jun 08 2026
142765
142813
  *
142766
142814
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142767
142815
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142802,8 +142850,8 @@ const DEFAULT_LOCALE = "en";
142802
142850
  ;// ./node_modules/devextreme/esm/__internal/core/localization/default_date_names.js
142803
142851
  /**
142804
142852
  * DevExtreme (esm/__internal/core/localization/default_date_names.js)
142805
- * Version: 25.2.7
142806
- * Build date: Tue May 05 2026
142853
+ * Version: 25.2.8
142854
+ * Build date: Mon Jun 08 2026
142807
142855
  *
142808
142856
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142809
142857
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142831,8 +142879,8 @@ const cutCaptions = (captions, format) => {
142831
142879
  ;// ./node_modules/devextreme/esm/__internal/core/localization/intl/date.js
142832
142880
  /**
142833
142881
  * DevExtreme (esm/__internal/core/localization/intl/date.js)
142834
- * Version: 25.2.7
142835
- * Build date: Tue May 05 2026
142882
+ * Version: 25.2.8
142883
+ * Build date: Mon Jun 08 2026
142836
142884
  *
142837
142885
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
142838
142886
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143147,8 +143195,8 @@ const monthNameStrategies = {
143147
143195
  ;// ./node_modules/devextreme/esm/__internal/core/m_config.js
143148
143196
  /**
143149
143197
  * DevExtreme (esm/__internal/core/m_config.js)
143150
- * Version: 25.2.7
143151
- * Build date: Tue May 05 2026
143198
+ * Version: 25.2.8
143199
+ * Build date: Mon Jun 08 2026
143152
143200
  *
143153
143201
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143154
143202
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143226,8 +143274,8 @@ if ("undefined" !== typeof DevExpress && DevExpress.config) {
143226
143274
  ;// ./node_modules/devextreme/esm/common/config.js
143227
143275
  /**
143228
143276
  * DevExtreme (esm/common/config.js)
143229
- * Version: 25.2.7
143230
- * Build date: Tue May 05 2026
143277
+ * Version: 25.2.8
143278
+ * Build date: Mon Jun 08 2026
143231
143279
  *
143232
143280
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143233
143281
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143238,8 +143286,8 @@ if ("undefined" !== typeof DevExpress && DevExpress.config) {
143238
143286
  ;// ./node_modules/devextreme/esm/__internal/core/m_guid.js
143239
143287
  /**
143240
143288
  * DevExtreme (esm/__internal/core/m_guid.js)
143241
- * Version: 25.2.7
143242
- * Build date: Tue May 05 2026
143289
+ * Version: 25.2.8
143290
+ * Build date: Mon Jun 08 2026
143243
143291
  *
143244
143292
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143245
143293
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143281,8 +143329,8 @@ const Guid = core_class.inherit({
143281
143329
  ;// ./node_modules/devextreme/esm/common/guid.js
143282
143330
  /**
143283
143331
  * DevExtreme (esm/common/guid.js)
143284
- * Version: 25.2.7
143285
- * Build date: Tue May 05 2026
143332
+ * Version: 25.2.8
143333
+ * Build date: Mon Jun 08 2026
143286
143334
  *
143287
143335
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143288
143336
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143295,8 +143343,8 @@ const Guid = core_class.inherit({
143295
143343
  /* unused harmony import specifier */ var m_template_engine_registry_isString;
143296
143344
  /**
143297
143345
  * DevExtreme (esm/__internal/core/templates/m_template_engine_registry.js)
143298
- * Version: 25.2.7
143299
- * Build date: Tue May 05 2026
143346
+ * Version: 25.2.8
143347
+ * Build date: Mon Jun 08 2026
143300
143348
  *
143301
143349
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143302
143350
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143325,8 +143373,8 @@ function getCurrentTemplateEngine() {
143325
143373
  ;// ./node_modules/devextreme/esm/core/templates/template_engine_registry.js
143326
143374
  /**
143327
143375
  * DevExtreme (esm/core/templates/template_engine_registry.js)
143328
- * Version: 25.2.7
143329
- * Build date: Tue May 05 2026
143376
+ * Version: 25.2.8
143377
+ * Build date: Mon Jun 08 2026
143330
143378
  *
143331
143379
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143332
143380
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143336,8 +143384,8 @@ function getCurrentTemplateEngine() {
143336
143384
  ;// ./node_modules/devextreme/esm/__internal/core/m_set_template_engine.js
143337
143385
  /**
143338
143386
  * DevExtreme (esm/__internal/core/m_set_template_engine.js)
143339
- * Version: 25.2.7
143340
- * Build date: Tue May 05 2026
143387
+ * Version: 25.2.8
143388
+ * Build date: Mon Jun 08 2026
143341
143389
  *
143342
143390
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143343
143391
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143348,8 +143396,8 @@ function getCurrentTemplateEngine() {
143348
143396
  /* unused harmony import specifier */ var set_template_engine_setTemplateEngine;
143349
143397
  /**
143350
143398
  * DevExtreme (esm/common/set_template_engine.js)
143351
- * Version: 25.2.7
143352
- * Build date: Tue May 05 2026
143399
+ * Version: 25.2.8
143400
+ * Build date: Mon Jun 08 2026
143353
143401
  *
143354
143402
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143355
143403
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143360,8 +143408,8 @@ function getCurrentTemplateEngine() {
143360
143408
  ;// ./node_modules/devextreme/esm/common.js
143361
143409
  /**
143362
143410
  * DevExtreme (esm/common.js)
143363
- * Version: 25.2.7
143364
- * Build date: Tue May 05 2026
143411
+ * Version: 25.2.8
143412
+ * Build date: Mon Jun 08 2026
143365
143413
  *
143366
143414
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143367
143415
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143374,8 +143422,8 @@ function getCurrentTemplateEngine() {
143374
143422
  ;// ./node_modules/devextreme/esm/core/config.js
143375
143423
  /**
143376
143424
  * DevExtreme (esm/core/config.js)
143377
- * Version: 25.2.7
143378
- * Build date: Tue May 05 2026
143425
+ * Version: 25.2.8
143426
+ * Build date: Mon Jun 08 2026
143379
143427
  *
143380
143428
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143381
143429
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143386,8 +143434,8 @@ function getCurrentTemplateEngine() {
143386
143434
  ;// ./node_modules/devextreme/esm/__internal/core/localization/currency.js
143387
143435
  /**
143388
143436
  * DevExtreme (esm/__internal/core/localization/currency.js)
143389
- * Version: 25.2.7
143390
- * Build date: Tue May 05 2026
143437
+ * Version: 25.2.8
143438
+ * Build date: Mon Jun 08 2026
143391
143439
  *
143392
143440
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143393
143441
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143414,8 +143462,8 @@ function getCurrentTemplateEngine() {
143414
143462
  ;// ./node_modules/devextreme/esm/__internal/core/localization/cldr-data/accounting_formats.js
143415
143463
  /**
143416
143464
  * DevExtreme (esm/__internal/core/localization/cldr-data/accounting_formats.js)
143417
- * Version: 25.2.7
143418
- * Build date: Tue May 05 2026
143465
+ * Version: 25.2.8
143466
+ * Build date: Mon Jun 08 2026
143419
143467
  *
143420
143468
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
143421
143469
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144001,8 +144049,8 @@ function getCurrentTemplateEngine() {
144001
144049
  ;// ./node_modules/devextreme/esm/__internal/core/localization/open_xml_currency_format.js
144002
144050
  /**
144003
144051
  * DevExtreme (esm/__internal/core/localization/open_xml_currency_format.js)
144004
- * Version: 25.2.7
144005
- * Build date: Tue May 05 2026
144052
+ * Version: 25.2.8
144053
+ * Build date: Mon Jun 08 2026
144006
144054
  *
144007
144055
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144008
144056
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144044,8 +144092,8 @@ function getCurrentTemplateEngine() {
144044
144092
  ;// ./node_modules/devextreme/esm/__internal/core/localization/intl/number.js
144045
144093
  /**
144046
144094
  * DevExtreme (esm/__internal/core/localization/intl/number.js)
144047
- * Version: 25.2.7
144048
- * Build date: Tue May 05 2026
144095
+ * Version: 25.2.8
144096
+ * Build date: Mon Jun 08 2026
144049
144097
  *
144050
144098
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144051
144099
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144164,8 +144212,8 @@ const getCurrencyFormatter = currency => new Intl.NumberFormat(core.locale(), {
144164
144212
  /* unused harmony import specifier */ var m_math_isExponential;
144165
144213
  /**
144166
144214
  * DevExtreme (esm/__internal/core/utils/m_math.js)
144167
- * Version: 25.2.7
144168
- * Build date: Tue May 05 2026
144215
+ * Version: 25.2.8
144216
+ * Build date: Mon Jun 08 2026
144169
144217
  *
144170
144218
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144171
144219
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144343,8 +144391,8 @@ function roundFloatPart(value) {
144343
144391
  ;// ./node_modules/devextreme/esm/__internal/core/localization/utils.js
144344
144392
  /**
144345
144393
  * DevExtreme (esm/__internal/core/localization/utils.js)
144346
- * Version: 25.2.7
144347
- * Build date: Tue May 05 2026
144394
+ * Version: 25.2.8
144395
+ * Build date: Mon Jun 08 2026
144348
144396
  *
144349
144397
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144350
144398
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144371,8 +144419,8 @@ function toFixed(value, precision) {
144371
144419
  ;// ./node_modules/devextreme/esm/__internal/core/localization/ldml/number.js
144372
144420
  /**
144373
144421
  * DevExtreme (esm/__internal/core/localization/ldml/number.js)
144374
- * Version: 25.2.7
144375
- * Build date: Tue May 05 2026
144422
+ * Version: 25.2.8
144423
+ * Build date: Mon Jun 08 2026
144376
144424
  *
144377
144425
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144378
144426
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144612,8 +144660,8 @@ function getFormat(formatter) {
144612
144660
  ;// ./node_modules/devextreme/esm/core/guid.js
144613
144661
  /**
144614
144662
  * DevExtreme (esm/core/guid.js)
144615
- * Version: 25.2.7
144616
- * Build date: Tue May 05 2026
144663
+ * Version: 25.2.8
144664
+ * Build date: Mon Jun 08 2026
144617
144665
  *
144618
144666
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144619
144667
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144624,8 +144672,8 @@ function getFormat(formatter) {
144624
144672
  ;// ./node_modules/devextreme/esm/core/utils/console.js
144625
144673
  /**
144626
144674
  * DevExtreme (esm/core/utils/console.js)
144627
- * Version: 25.2.7
144628
- * Build date: Tue May 05 2026
144675
+ * Version: 25.2.8
144676
+ * Build date: Mon Jun 08 2026
144629
144677
  *
144630
144678
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144631
144679
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144635,8 +144683,8 @@ function getFormat(formatter) {
144635
144683
  ;// ./node_modules/devextreme/esm/core/utils/dependency_injector.js
144636
144684
  /**
144637
144685
  * DevExtreme (esm/core/utils/dependency_injector.js)
144638
- * Version: 25.2.7
144639
- * Build date: Tue May 05 2026
144686
+ * Version: 25.2.8
144687
+ * Build date: Mon Jun 08 2026
144640
144688
  *
144641
144689
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144642
144690
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144647,8 +144695,8 @@ function getFormat(formatter) {
144647
144695
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_variable_wrapper.js
144648
144696
  /**
144649
144697
  * DevExtreme (esm/__internal/core/utils/m_variable_wrapper.js)
144650
- * Version: 25.2.7
144651
- * Build date: Tue May 05 2026
144698
+ * Version: 25.2.8
144699
+ * Build date: Mon Jun 08 2026
144652
144700
  *
144653
144701
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144654
144702
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144677,8 +144725,8 @@ const variableWrapper = dependency_injector({
144677
144725
  ;// ./node_modules/devextreme/esm/core/utils/variable_wrapper.js
144678
144726
  /**
144679
144727
  * DevExtreme (esm/core/utils/variable_wrapper.js)
144680
- * Version: 25.2.7
144681
- * Build date: Tue May 05 2026
144728
+ * Version: 25.2.8
144729
+ * Build date: Mon Jun 08 2026
144682
144730
  *
144683
144731
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144684
144732
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144693,8 +144741,8 @@ const variableWrapper = dependency_injector({
144693
144741
  /* unused harmony import specifier */ var m_object_variableWrapper;
144694
144742
  /**
144695
144743
  * DevExtreme (esm/__internal/core/utils/m_object.js)
144696
- * Version: 25.2.7
144697
- * Build date: Tue May 05 2026
144744
+ * Version: 25.2.8
144745
+ * Build date: Mon Jun 08 2026
144698
144746
  *
144699
144747
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144700
144748
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144708,6 +144756,9 @@ const clone = function() {
144708
144756
  return new Clone
144709
144757
  }
144710
144758
  }();
144759
+ const isBlobLike = function(value) {
144760
+ return "undefined" !== typeof Blob && value instanceof Blob
144761
+ };
144711
144762
  const orderEach = function(map, func) {
144712
144763
  const keys = [];
144713
144764
  let key;
@@ -144777,6 +144828,9 @@ const deepExtendArraySafe = function(target, changes, extendComplexObject, assig
144777
144828
  let prevValue;
144778
144829
  let newValue;
144779
144830
  const assignFunc = useNewAssign ? newAssign : legacyAssign;
144831
+ if (isBlobLike(changes)) {
144832
+ return changes
144833
+ }
144780
144834
  for (const name in changes) {
144781
144835
  prevValue = target[name];
144782
144836
  newValue = changes[name];
@@ -144800,8 +144854,8 @@ const deepExtendArraySafe = function(target, changes, extendComplexObject, assig
144800
144854
  ;// ./node_modules/devextreme/esm/core/utils/object.js
144801
144855
  /**
144802
144856
  * DevExtreme (esm/core/utils/object.js)
144803
- * Version: 25.2.7
144804
- * Build date: Tue May 05 2026
144857
+ * Version: 25.2.8
144858
+ * Build date: Mon Jun 08 2026
144805
144859
  *
144806
144860
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144807
144861
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144818,8 +144872,8 @@ const deepExtendArraySafe = function(target, changes, extendComplexObject, assig
144818
144872
  /* unused harmony import specifier */ var m_data_isPlainObject;
144819
144873
  /**
144820
144874
  * DevExtreme (esm/__internal/core/utils/m_data.js)
144821
- * Version: 25.2.7
144822
- * Build date: Tue May 05 2026
144875
+ * Version: 25.2.8
144876
+ * Build date: Mon Jun 08 2026
144823
144877
  *
144824
144878
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
144825
144879
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145016,8 +145070,8 @@ const toComparable = function(value, caseSensitive) {
145016
145070
  ;// ./node_modules/devextreme/esm/core/utils/data.js
145017
145071
  /**
145018
145072
  * DevExtreme (esm/core/utils/data.js)
145019
- * Version: 25.2.7
145020
- * Build date: Tue May 05 2026
145073
+ * Version: 25.2.8
145074
+ * Build date: Mon Jun 08 2026
145021
145075
  *
145022
145076
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
145023
145077
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145027,8 +145081,8 @@ const toComparable = function(value, caseSensitive) {
145027
145081
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_callbacks.js
145028
145082
  /**
145029
145083
  * DevExtreme (esm/__internal/core/utils/m_callbacks.js)
145030
- * Version: 25.2.7
145031
- * Build date: Tue May 05 2026
145084
+ * Version: 25.2.8
145085
+ * Build date: Mon Jun 08 2026
145032
145086
  *
145033
145087
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
145034
145088
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145123,8 +145177,8 @@ const Callbacks = function(options) {
145123
145177
  ;// ./node_modules/devextreme/esm/core/utils/callbacks.js
145124
145178
  /**
145125
145179
  * DevExtreme (esm/core/utils/callbacks.js)
145126
- * Version: 25.2.7
145127
- * Build date: Tue May 05 2026
145180
+ * Version: 25.2.8
145181
+ * Build date: Mon Jun 08 2026
145128
145182
  *
145129
145183
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
145130
145184
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145135,8 +145189,8 @@ const Callbacks = function(options) {
145135
145189
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_deferred.js
145136
145190
  /**
145137
145191
  * DevExtreme (esm/__internal/core/utils/m_deferred.js)
145138
- * Version: 25.2.7
145139
- * Build date: Tue May 05 2026
145192
+ * Version: 25.2.8
145193
+ * Build date: Mon Jun 08 2026
145140
145194
  *
145141
145195
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
145142
145196
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145301,8 +145355,8 @@ function when() {
145301
145355
  ;// ./node_modules/devextreme/esm/core/utils/deferred.js
145302
145356
  /**
145303
145357
  * DevExtreme (esm/core/utils/deferred.js)
145304
- * Version: 25.2.7
145305
- * Build date: Tue May 05 2026
145358
+ * Version: 25.2.8
145359
+ * Build date: Mon Jun 08 2026
145306
145360
  *
145307
145361
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
145308
145362
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145312,8 +145366,8 @@ function when() {
145312
145366
  ;// ./node_modules/devextreme/esm/__internal/core/utils/m_common.js
145313
145367
  /**
145314
145368
  * DevExtreme (esm/__internal/core/utils/m_common.js)
145315
- * Version: 25.2.7
145316
- * Build date: Tue May 05 2026
145369
+ * Version: 25.2.8
145370
+ * Build date: Mon Jun 08 2026
145317
145371
  *
145318
145372
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
145319
145373
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145607,8 +145661,8 @@ const equalByValue = function(value1, value2) {
145607
145661
  ;// ./node_modules/devextreme/esm/__internal/core/localization/number.js
145608
145662
  /**
145609
145663
  * DevExtreme (esm/__internal/core/localization/number.js)
145610
- * Version: 25.2.7
145611
- * Build date: Tue May 05 2026
145664
+ * Version: 25.2.8
145665
+ * Build date: Mon Jun 08 2026
145612
145666
  *
145613
145667
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
145614
145668
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145917,8 +145971,8 @@ if (hasIntl) {
145917
145971
  ;// ./node_modules/devextreme/esm/__internal/core/localization/ldml/date.format.js
145918
145972
  /**
145919
145973
  * DevExtreme (esm/__internal/core/localization/ldml/date.format.js)
145920
- * Version: 25.2.7
145921
- * Build date: Tue May 05 2026
145974
+ * Version: 25.2.8
145975
+ * Build date: Mon Jun 08 2026
145922
145976
  *
145923
145977
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
145924
145978
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -146111,8 +146165,8 @@ const date_format_getFormat = formatter => {
146111
146165
  ;// ./node_modules/devextreme/esm/__internal/core/localization/ldml/date.formatter.js
146112
146166
  /**
146113
146167
  * DevExtreme (esm/__internal/core/localization/ldml/date.formatter.js)
146114
- * Version: 25.2.7
146115
- * Build date: Tue May 05 2026
146168
+ * Version: 25.2.8
146169
+ * Build date: Mon Jun 08 2026
146116
146170
  *
146117
146171
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
146118
146172
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -146240,8 +146294,8 @@ const date_formatter_getFormatter = (format, dateParts) => date => {
146240
146294
  ;// ./node_modules/devextreme/esm/__internal/core/localization/ldml/date.parser.js
146241
146295
  /**
146242
146296
  * DevExtreme (esm/__internal/core/localization/ldml/date.parser.js)
146243
- * Version: 25.2.7
146244
- * Build date: Tue May 05 2026
146297
+ * Version: 25.2.8
146298
+ * Build date: Mon Jun 08 2026
146245
146299
  *
146246
146300
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
146247
146301
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -146519,8 +146573,8 @@ const getParser = (format, dateParts) => {
146519
146573
  ;// ./node_modules/devextreme/esm/__internal/core/localization/date.js
146520
146574
  /**
146521
146575
  * DevExtreme (esm/__internal/core/localization/date.js)
146522
- * Version: 25.2.7
146523
- * Build date: Tue May 05 2026
146576
+ * Version: 25.2.8
146577
+ * Build date: Mon Jun 08 2026
146524
146578
  *
146525
146579
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
146526
146580
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -146683,8 +146737,8 @@ if (date_hasIntl) {
146683
146737
  ;// ./node_modules/devextreme/esm/common/core/localization/date.js
146684
146738
  /**
146685
146739
  * DevExtreme (esm/common/core/localization/date.js)
146686
- * Version: 25.2.7
146687
- * Build date: Tue May 05 2026
146740
+ * Version: 25.2.8
146741
+ * Build date: Mon Jun 08 2026
146688
146742
  *
146689
146743
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
146690
146744
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -146695,8 +146749,8 @@ if (date_hasIntl) {
146695
146749
  ;// ./node_modules/devextreme/esm/common/core/localization/number.js
146696
146750
  /**
146697
146751
  * DevExtreme (esm/common/core/localization/number.js)
146698
- * Version: 25.2.7
146699
- * Build date: Tue May 05 2026
146752
+ * Version: 25.2.8
146753
+ * Build date: Mon Jun 08 2026
146700
146754
  *
146701
146755
  * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
146702
146756
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/