devexpress-richedit 24.2.7-build-25100-0108 → 24.2.7

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 (33) hide show
  1. package/dist/dx.richedit.js +259 -210
  2. package/dist/dx.richedit.min.js +1 -1
  3. package/lib/client/client-rich-edit.js +2 -2
  4. package/lib/client/commands/mail-merge-command.js +2 -1
  5. package/lib/client/formats/docx/export/data.d.ts +5 -1
  6. package/lib/client/formats/docx/export/data.js +3 -2
  7. package/lib/client/formats/docx/export/exporter.d.ts +2 -3
  8. package/lib/client/formats/docx/export/exporter.js +3 -3
  9. package/lib/client/formats/docx/export/exporters/base/table/table.d.ts +1 -1
  10. package/lib/client/formats/docx/export/exporters/base/table/table.js +4 -4
  11. package/lib/client/formats/docx/import/destination/paragraph-properties/properties/paragraph-spacing-destination.js +6 -4
  12. package/lib/client/model-api/formats/exporter.js +1 -1
  13. package/lib/client/public/rich-edit.js +2 -2
  14. package/lib/common/canvas/renderes/common/document-renderer.js +10 -12
  15. package/lib/common/formats/i-document-exporter.d.ts +3 -0
  16. package/lib/common/input-controller.d.ts +5 -5
  17. package/lib/common/input-controller.js +12 -12
  18. package/lib/common/layout/document-layout.d.ts +3 -0
  19. package/lib/common/layout/document-layout.js +6 -0
  20. package/lib/common/layout/main-structures/layout-page-area.d.ts +3 -0
  21. package/lib/common/layout/main-structures/layout-page-area.js +6 -0
  22. package/lib/common/layout/main-structures/layout-page.d.ts +3 -0
  23. package/lib/common/layout/main-structures/layout-page.js +8 -0
  24. package/lib/common/layout-formatter/floating/position-calculators/horizontal.d.ts +1 -0
  25. package/lib/common/layout-formatter/floating/position-calculators/horizontal.js +16 -12
  26. package/lib/common/layout-formatter/row/states.js +0 -2
  27. package/lib/common/layout-formatter/row/tab-info.js +1 -1
  28. package/lib/common/mouse-handler/mouse-handler/mouse-handler-default-state.d.ts +1 -1
  29. package/lib/common/mouse-handler/mouse-handler/mouse-handler-default-state.js +22 -25
  30. package/lib/common/rich-edit-core.js +3 -2
  31. package/lib/common/utils/size-utils.d.ts +7 -0
  32. package/lib/common/utils/size-utils.js +31 -4
  33. package/package.json +3 -3
@@ -32150,6 +32150,14 @@ class LayoutOtherPageAreasInfo {
32150
32150
  }
32151
32151
  }
32152
32152
  class LayoutPage extends rectangle.Rectangle {
32153
+ get grids() {
32154
+ const result = new Map();
32155
+ for (let pageArea of this.mainSubDocumentPageAreas)
32156
+ pageArea.grids.forEach((grid, table) => result.set(table, grid));
32157
+ for (let pageArea of Object.values(this.otherPageAreas))
32158
+ pageArea.grids.forEach((grid, table) => result.set(table, grid));
32159
+ return result;
32160
+ }
32153
32161
  constructor() {
32154
32162
  super(0, 0, 0, 0);
32155
32163
  this.mainSubDocumentPageAreas = [];
@@ -70660,6 +70668,12 @@ class AnchorObjectsPositionInfo {
70660
70668
  }
70661
70669
  }
70662
70670
  class DocumentLayout {
70671
+ get grids() {
70672
+ return this.pages.reduce((res, page) => {
70673
+ page.grids.forEach((grid, table) => res.set(table, grid));
70674
+ return res;
70675
+ }, new Map());
70676
+ }
70663
70677
  constructor(anchorObjectsPositionInfo) {
70664
70678
  this.anchorObjectsPositionInfo = anchorObjectsPositionInfo;
70665
70679
  this.setEmptyLayout(ColorHelper.NO_COLOR);
@@ -81660,10 +81674,12 @@ class ParagraphSpacingDestination extends ParagraphFormattingLeafElementDestinat
81660
81674
  const spacingBefore = this.data.readerHelper.getWpSTIntegerValue(reader, 'before', constants.Constants.MIN_SAFE_INTEGER);
81661
81675
  if (spacingBefore >= 0)
81662
81676
  this.paragraphProperties.setValue(ParagraphPropertyDescriptor.spacingBefore, spacingBefore);
81663
- this.paragraphProperties.setValue(ParagraphPropertyDescriptor.beforeAutoSpacing, spacingBefore == -1 ||
81664
- this.data.readerHelper.getWpSTOnOffValue(reader, new WordProcessingMLValue('beforeAutospacing', 'before-autospacing').openXmlValue, false));
81665
- this.paragraphProperties.setValue(ParagraphPropertyDescriptor.afterAutoSpacing, spacingAfter == -1 ||
81666
- this.data.readerHelper.getWpSTOnOffValue(reader, new WordProcessingMLValue('afterAutospacing', 'after-autospacing').openXmlValue, false));
81677
+ const beforeAutoSpacing = this.data.readerHelper.getWpSTOnOffValue(reader, 'beforeAutospacing', null);
81678
+ if (spacingBefore == -1 || beforeAutoSpacing != null)
81679
+ this.paragraphProperties.setValue(ParagraphPropertyDescriptor.beforeAutoSpacing, spacingBefore == -1 || beforeAutoSpacing);
81680
+ const afterAutoSpacing = this.data.readerHelper.getWpSTOnOffValue(reader, 'afterAutospacing', null);
81681
+ if (spacingAfter == -1 || afterAutoSpacing != null)
81682
+ this.paragraphProperties.setValue(ParagraphPropertyDescriptor.afterAutoSpacing, spacingAfter == -1 || afterAutoSpacing);
81667
81683
  const lineSpacing = this.data.readerHelper.getWpSTIntegerValue(reader, 'line', constants.Constants.MIN_SAFE_INTEGER);
81668
81684
  if (lineSpacing != constants.Constants.MIN_SAFE_INTEGER && lineSpacing > 0) {
81669
81685
  const attribute = new WordProcessingMLValue('lineRule', 'line-rule');
@@ -90504,6 +90520,7 @@ class EffectExtent {
90504
90520
 
90505
90521
 
90506
90522
 
90523
+
90507
90524
  class TableExporter extends BaseExporter {
90508
90525
  constructor() {
90509
90526
  super(...arguments);
@@ -90533,10 +90550,9 @@ class TableExporter extends BaseExporter {
90533
90550
  }
90534
90551
  }
90535
90552
  getTableGrid(table) {
90536
- if (table.rows[0].logicColumnCount < 64)
90537
- return [];
90538
- const colGrid = [];
90539
- return colGrid;
90553
+ var _a, _b;
90554
+ const grid = this.data.grids.get(table);
90555
+ return ((_b = (_a = grid === null || grid === void 0 ? void 0 : grid.columns) === null || _a === void 0 ? void 0 : _a.width) === null || _b === void 0 ? void 0 : _b.map(unit_converter/* UnitConverter */.u.pixelsToTwips)) || [];
90540
90556
  }
90541
90557
  initNewTables(newIndexes, allowInitNextTable) {
90542
90558
  for (let levelIndex = this.tableIndexes.length; levelIndex < newIndexes.length; levelIndex++) {
@@ -91046,11 +91062,12 @@ class data_Data {
91046
91062
  get subDocumentExporter() { return this.subDocumentExporterStack.last; }
91047
91063
  get relationExporter() { return utils_list.ListUtils.last(this.relationExporters); }
91048
91064
  get mainSubDocumentRelations() { return this.relationExporters[0]; }
91049
- constructor(model, options) {
91065
+ constructor(exportModelOptions, options) {
91050
91066
  this.drawingElementId = 1;
91051
91067
  this.exportSubDocumentsList = [];
91052
91068
  this.relationExporters = [];
91053
- this.model = model;
91069
+ this.model = exportModelOptions.modelManager.model;
91070
+ this.grids = exportModelOptions.grids;
91054
91071
  this.options = options;
91055
91072
  this.constants = new DocxConstants();
91056
91073
  this.writerStack = new stack/* Stack */.K();
@@ -91834,10 +91851,10 @@ class EndNoteExporter extends NoteExporter {
91834
91851
 
91835
91852
 
91836
91853
  class DocxExporter {
91837
- constructor(modelManipulator, options) {
91838
- this.modelManipulator = modelManipulator;
91854
+ constructor(exportModelOptions, options) {
91855
+ this.modelManipulator = exportModelOptions.modelManager.modelManipulator;
91839
91856
  this.options = options;
91840
- this.data = new data_Data(modelManipulator.model, options);
91857
+ this.data = new data_Data(exportModelOptions, options);
91841
91858
  }
91842
91859
  exportToBlob(callback) {
91843
91860
  this.modelManipulator.picture.loader.ensureAllPicturesLoaded(this.options.ensurePictureLoadedTimeout, (_loaded) => {
@@ -91944,7 +91961,7 @@ function exportModelToBlob(exportModelOptions, callback) {
91944
91961
  function getExporter(exportModelOptions) {
91945
91962
  const { modelManipulator } = exportModelOptions.modelManager;
91946
91963
  switch (exportModelOptions.documentFormat) {
91947
- case DocumentFormat.OpenXml: return new DocxExporter(modelManipulator, new DocxExportOptions());
91964
+ case DocumentFormat.OpenXml: return new DocxExporter(exportModelOptions, new DocxExportOptions());
91948
91965
  case DocumentFormat.Rtf: return new RtfExporter(modelManipulator, new RtfDocumentExporterOptions());
91949
91966
  case DocumentFormat.PlainText: return new TxtExporter(modelManipulator, new DocumentExporterOptions());
91950
91967
  case DocumentFormat.Html: return new HtmlDocumentExporter(exportModelOptions, new DocumentExporterOptions());
@@ -92456,7 +92473,7 @@ class AnchorObjectHorizontalPositionCalculator extends AnchorObjectPositionCalcu
92456
92473
  alignment(type, alignment) {
92457
92474
  switch (type) {
92458
92475
  case AnchorObjectHorizontalPositionType.Character:
92459
- return this.getAlignPosition(alignment, 0);
92476
+ return this.getAnchorXPosition() + this.getAlignPosition(alignment, 0);
92460
92477
  case AnchorObjectHorizontalPositionType.Column:
92461
92478
  return this.isRelativeCell ?
92462
92479
  this.relativeColumnPos() + this.lp.row.tableCellInfo.x +
@@ -92505,17 +92522,8 @@ class AnchorObjectHorizontalPositionCalculator extends AnchorObjectPositionCalcu
92505
92522
  return this.isRelativeCell ? this.relativeColumnPos() + this.lp.row.tableCellInfo.x : 0;
92506
92523
  case AnchorObjectHorizontalPositionType.Column:
92507
92524
  return this.isRelativeCell ? this.relativeColumnPos() + this.lp.row.tableCellInfo.x + this.leftCellMargin : this.relativeColumnPos();
92508
- case AnchorObjectHorizontalPositionType.Character: {
92509
- const rowAbsPos = this.lp.getLogPosition(DocumentLayoutDetailsLevel.Row);
92510
- const ancBoxAbsPos = this.obj.rowOffset;
92511
- const boxIndex = search.SearchUtils.normedInterpolationIndexOf(this.lp.row.boxes, (box) => rowAbsPos + box.rowOffset, ancBoxAbsPos);
92512
- const box = this.lp.row.boxes[boxIndex];
92513
- if (!box)
92514
- return this.lp.getLayoutX(null, DocumentLayoutDetailsLevel.Row);
92515
- const symbolCount = Math.max(0, ancBoxAbsPos - rowAbsPos - box.rowOffset);
92516
- return this.lp.getLayoutX(null, DocumentLayoutDetailsLevel.Row) + box.x +
92517
- box.getCharOffsetXInPixels(this.manager.measurer, symbolCount);
92518
- }
92525
+ case AnchorObjectHorizontalPositionType.Character:
92526
+ return this.getAnchorXPosition();
92519
92527
  case AnchorObjectHorizontalPositionType.Margin:
92520
92528
  return this.isRelativeCell ? this.relativeColumnPos() + this.lp.row.tableCellInfo.x + this.leftCellMargin :
92521
92529
  this.manager.boundsCalculator.marginLeft;
@@ -92532,6 +92540,19 @@ class AnchorObjectHorizontalPositionCalculator extends AnchorObjectPositionCalcu
92532
92540
  throw new Error(lib_errors/* Errors */.D.InternalException);
92533
92541
  }
92534
92542
  }
92543
+ getAnchorXPosition() {
92544
+ const rowAbsPos = this.lp.getLogPosition(DocumentLayoutDetailsLevel.Row);
92545
+ const ancBoxAbsPos = this.obj.rowOffset;
92546
+ let boxIndex = search.SearchUtils.normedInterpolationIndexOf(this.lp.row.boxes, (box) => rowAbsPos + box.rowOffset, ancBoxAbsPos);
92547
+ if (boxIndex < 0)
92548
+ boxIndex = 0;
92549
+ const box = this.lp.row.boxes[boxIndex];
92550
+ if (!box)
92551
+ return this.lp.getLayoutX(null, DocumentLayoutDetailsLevel.Row);
92552
+ const symbolCount = Math.max(0, ancBoxAbsPos - rowAbsPos - box.rowOffset);
92553
+ return this.lp.getLayoutX(null, DocumentLayoutDetailsLevel.Row) + box.x +
92554
+ box.getCharOffsetXInPixels(this.manager.measurer, symbolCount);
92555
+ }
92535
92556
  bookLayout() {
92536
92557
  return this.alignment(this.anchorInfo.horizontalPositionType, AnchorObjectHorizontalPositionCalculator.mapBookLayoutALignmentType[this.anchorInfo.horizontalPositionAlignment]);
92537
92558
  }
@@ -92757,6 +92778,12 @@ class AnchoredTextBoxContextSizeCalculator {
92757
92778
 
92758
92779
 
92759
92780
  class LayoutPageArea extends rectangle.Rectangle {
92781
+ get grids() {
92782
+ return this.columns.reduce((res, column) => {
92783
+ column.tablesInfo.forEach(tableInfo => res.set(tableInfo.logicInfo.grid.table, tableInfo.logicInfo.grid));
92784
+ return res;
92785
+ }, new Map());
92786
+ }
92760
92787
  constructor(subDocument) {
92761
92788
  super(0, 0, 0, 0);
92762
92789
  this.columns = [];
@@ -95605,8 +95632,6 @@ class RowBaseFormatterState {
95605
95632
  this.rowFormatter.finishRow();
95606
95633
  }
95607
95634
  addAnchorObject() {
95608
- if (!this.rowFormatter.wordHolder.pushBoxes())
95609
- return;
95610
95635
  this.rowFormatter.addAnchorObject();
95611
95636
  }
95612
95637
  addTextBox() {
@@ -95784,7 +95809,7 @@ class RowTabInfo {
95784
95809
  const lastInterval = utils_list.ListUtils.last(this.rowFormatter.rowSizesManager.rowFormattingInfo.intervals);
95785
95810
  if (tabXPosRelativePage > lastInterval.end) {
95786
95811
  if (lastInterval.end < this.rowFormatter.paragraphHorizontalBounds.end) {
95787
- if (this.rowFormatter.manager.model.compatibilitySettings.compatibilityMode < CompatibilityMode.Word2013) {
95812
+ if (this.rowFormatter.manager.model.compatibilitySettings.compatibilityMode < CompatibilityMode.Word2013 && tabPosition !== null) {
95788
95813
  this.currInterval.avaliableWidth = Number.MAX_SAFE_INTEGER - this.currInterval.busyWidth;
95789
95814
  this.currInterval.length = Number.MAX_SAFE_INTEGER;
95790
95815
  this.row.width = Number.MAX_SAFE_INTEGER;
@@ -102369,18 +102394,16 @@ class SimpleViewCanvasSizeManager {
102369
102394
  this.sizeUpdated = true;
102370
102395
  }
102371
102396
  changeSizeCore() {
102372
- {
102373
- utils_list.ListUtils.forEach(this.control.viewManager.cache, (_val) => this.control.viewManager.renderer.removePage(1), 1);
102374
- this.control.viewManager.ensureFirstPageIsRendered();
102375
- this.control.innerClientProperties.viewsSettings.widthOfPage = this.canvasManager.getCanvasWidth();
102376
- if (this.control.layoutFormatterManager) {
102377
- this.control.layoutFormatterManager.invalidator.onChangedAllLayout();
102378
- this.control.selection.scrollManager.setScroll(new ScrollState().byModelPosition(this.control.selection)
102379
- .setModelPosition(this.control.selection.lastSelectedInterval.start).useStdRelativePosition().useStdOffset());
102380
- }
102381
- this.control.owner.adjustControl();
102382
- this.control.horizontalRulerControl.update();
102397
+ utils_list.ListUtils.forEach(this.control.viewManager.cache, (_val) => this.control.viewManager.renderer.removePage(1), 1);
102398
+ this.control.viewManager.ensureFirstPageIsRendered();
102399
+ this.control.innerClientProperties.viewsSettings.widthOfPage = this.canvasManager.getCanvasWidth();
102400
+ if (this.control.layoutFormatterManager) {
102401
+ this.control.layoutFormatterManager.invalidator.onChangedAllLayout();
102402
+ this.control.selection.scrollManager.setScroll(new ScrollState().byModelPosition(this.control.selection)
102403
+ .setModelPosition(this.control.selection.lastSelectedInterval.start).useStdRelativePosition().useStdOffset());
102383
102404
  }
102405
+ this.control.owner.adjustControl();
102406
+ this.control.horizontalRulerControl.update();
102384
102407
  }
102385
102408
  }
102386
102409
  class DocumentRenderer {
@@ -102564,7 +102587,7 @@ class DocumentRenderer {
102564
102587
  }
102565
102588
  }
102566
102589
  updatePageSize(page, pageElement) {
102567
- if (pageElement.offsetHeight != page.height || pageElement.offsetWidth != page.width)
102590
+ if (pageElement.offsetHeight != Math.round(page.height) || pageElement.offsetWidth != Math.round(page.width))
102568
102591
  dom.DomUtils.setStyleSize(pageElement.style, page);
102569
102592
  }
102570
102593
  updatePageClasses(pageElement) {
@@ -106418,40 +106441,31 @@ class MouseHandlerDefaultState extends MouseHandlerStateBase {
106418
106441
  this.processMouseDownOnMaxDetailsLevel(evt, htr, activeSubDocument);
106419
106442
  }
106420
106443
  processMouseDownOnMaxDetailsLevel(evt, htr, activeSubDocument) {
106444
+ const selection = this.handler.control.selection;
106421
106445
  if (htr.floatingObject) {
106422
- if (htr.floatingObject.belongsToSubDocId != this.handler.control.selection.activeSubDocument.id)
106423
- MouseHandlerHelper.changeActiveSubDocumentToParent(this.handler.control);
106424
106446
  const box = htr.floatingObject;
106425
- this.selectFloatingObject(box);
106426
- const specRunInfo = this.handler.control.selection.specialRunInfo;
106427
- if (specRunInfo.isSelectedAnchorObject) {
106428
- if (box.getType() == LayoutBoxType.AnchorTextBox &&
106429
- HitTestManager.isPointInTexBoxArea(evt.layoutPoint, box, activeSubDocument.isTextBox() ? 0 : box.rotationInRadians)) {
106447
+ const rotationAngle = activeSubDocument.isTextBox() ? 0 : box.rotationInRadians;
106448
+ if (box.getType() == LayoutBoxType.AnchorTextBox && HitTestManager.isPointInTexBoxArea(evt.layoutPoint, box, rotationAngle)) {
106449
+ const textbox = box;
106450
+ if (textbox.internalSubDocId !== selection.activeSubDocument.id && this.selectFloatingObject(box)) {
106430
106451
  this.handler.control.commandManager.getCommand(RichEditClientCommand.ChangeActiveSubDocumentToTextBox).execute(this.handler.control.commandManager.isPublicApiCall);
106431
106452
  this.handler.boxVisualizerManager.resizeBoxVisualizer.show(htr.pageIndex, null, null, null, box);
106432
- htr = this.handler.control.hitTestManager.calculate(evt.layoutPoint, DocumentLayoutDetailsLevel.Max, this.handler.control.selection.activeSubDocument);
106433
- }
106434
- else {
106435
- if (this.resizeRotationChecker(() => {
106436
- const dragFloatingObjectState = new MouseHandlerDragFloatingObjectState(this.handler, evt);
106437
- this.handler.switchState(new MouseHandlerBeginDragHelperState(evt.layoutPoint, this.handler, dragFloatingObjectState));
106438
- }))
106439
- return;
106440
- else {
106441
- if (specRunInfo.isPictureSelected()) {
106442
- this.handler.control.selection.setSelection(new SetSelectionParams()
106443
- .setInterval(new fixed.FixedInterval(specRunInfo.getPicturePosition(), 1)));
106444
- return;
106445
- }
106446
- }
106453
+ htr = this.handler.control.hitTestManager.calculate(evt.layoutPoint, DocumentLayoutDetailsLevel.Max, selection.activeSubDocument);
106447
106454
  }
106448
106455
  }
106456
+ else {
106457
+ if (this.selectFloatingObject(box) && this.resizeRotationChecker(() => {
106458
+ const dragFloatingObjectState = new MouseHandlerDragFloatingObjectState(this.handler, evt);
106459
+ this.handler.switchState(new MouseHandlerBeginDragHelperState(evt.layoutPoint, this.handler, dragFloatingObjectState));
106460
+ }))
106461
+ return;
106462
+ }
106449
106463
  }
106450
106464
  if (browser.Browser.TouchUI && htr.subDocument.isMain() && htr.exactlyDetailLevel < DocumentLayoutDetailsLevel.PageArea) {
106451
106465
  if (htr.deviations[DocumentLayoutDetailsLevel.PageArea] & rectangle.HitTestDeviation.Top || htr.deviations[DocumentLayoutDetailsLevel.PageArea] & rectangle.HitTestDeviation.Bottom)
106452
106466
  this.handler.control.viewManager.canvasScrollManager.waitForDblClick();
106453
106467
  }
106454
- if (evt.button === MouseButton.Right && this.handler.control.selection.lastSelectedInterval.contains(htr.getPosition()))
106468
+ if (evt.button === MouseButton.Right && selection.lastSelectedInterval.contains(htr.getPosition()))
106455
106469
  return;
106456
106470
  if (this.shouldSelectEntireTableColumn(htr))
106457
106471
  this.beginSelectEntireTableColumn(htr, evt);
@@ -106466,7 +106480,7 @@ class MouseHandlerDefaultState extends MouseHandlerStateBase {
106466
106480
  this.beginSelectEntireTableCell(htr, evt);
106467
106481
  }
106468
106482
  else if (this.isLeftArea(htr, evt)) {
106469
- if (evt.modifiers & key/* ModifierKey */.tx.Ctrl && this.handler.control.selection.isCollapsed())
106483
+ if (evt.modifiers & key/* ModifierKey */.tx.Ctrl && selection.isCollapsed())
106470
106484
  this.handler.control.commandManager.getCommand(RichEditClientCommand.SelectAll).execute(this.handler.control.commandManager.isPublicApiCall, htr.getPosition());
106471
106485
  else if (this.isLeftAreaOffset(htr, evt))
106472
106486
  this.beginLineSelection(htr, evt);
@@ -106674,8 +106688,14 @@ class MouseHandlerDefaultState extends MouseHandlerStateBase {
106674
106688
  this.handler.switchState(state);
106675
106689
  }
106676
106690
  selectFloatingObject(box) {
106691
+ const selection = this.handler.control.selection;
106692
+ if (box.belongsToSubDocId !== selection.activeSubDocument.id)
106693
+ MouseHandlerHelper.changeActiveSubDocumentToParent(this.handler.control);
106694
+ if (box.belongsToSubDocId !== selection.activeSubDocument.id)
106695
+ return false;
106677
106696
  const pos = this.handler.control.layout.anchorObjectsPositionInfo.getPosition(box.objectId);
106678
- this.handler.control.selection.setSelection(new SetSelectionParams().setInterval(new fixed.FixedInterval(pos, 1)));
106697
+ selection.setSelection(new SetSelectionParams().setInterval(new fixed.FixedInterval(pos, 1)));
106698
+ return selection.specialRunInfo.isSelectedAnchorObject;
106679
106699
  }
106680
106700
  }
106681
106701
  class MouseHandlerHelper {
@@ -107848,14 +107868,39 @@ ResizeBoxListener.directionToSource = {
107848
107868
  };
107849
107869
 
107850
107870
  ;// CONCATENATED MODULE: ./src/common/utils/size-utils.ts
107871
+
107851
107872
  class SizeUtils {
107873
+ static getScrollbarsWidth() {
107874
+ if (!(0,common.isDefined)(this._scrollbarsWidth)) {
107875
+ const scrollDiv = document.createElement('div');
107876
+ scrollDiv.style.visibility = 'hidden';
107877
+ scrollDiv.style.overflow = 'scroll';
107878
+ scrollDiv.style.position = 'absolute';
107879
+ scrollDiv.style.top = '-9999px';
107880
+ scrollDiv.style.width = '100px';
107881
+ scrollDiv.style.height = '100px';
107882
+ document.body.appendChild(scrollDiv);
107883
+ const innerDiv = document.createElement('div');
107884
+ innerDiv.style.width = '100%';
107885
+ innerDiv.style.height = '100%';
107886
+ scrollDiv.appendChild(innerDiv);
107887
+ this._scrollbarsWidth = {
107888
+ horizontal: SizeUtils.getOffsetHeight(scrollDiv) - SizeUtils.getOffsetHeight(innerDiv),
107889
+ vertical: SizeUtils.getOffsetWidth(scrollDiv) - SizeUtils.getOffsetWidth(innerDiv)
107890
+ };
107891
+ scrollDiv.remove();
107892
+ }
107893
+ return this._scrollbarsWidth;
107894
+ }
107852
107895
  static getWidthInfo(element) {
107853
107896
  const computedStyle = getComputedStyle(element);
107854
107897
  const offsetWidth = this.getOffsetWidth(element);
107855
107898
  const offsetWidthWithoutBorder = offsetWidth
107856
107899
  - parseCssValue(computedStyle.borderLeftWidth)
107857
107900
  - parseCssValue(computedStyle.borderRightWidth);
107858
- const scrollbarWidth = offsetWidthWithoutBorder - element.clientWidth;
107901
+ let scrollbarWidth = 0;
107902
+ if (Math.round(offsetWidthWithoutBorder) > element.clientWidth)
107903
+ scrollbarWidth = SizeUtils.getScrollbarsWidth().vertical;
107859
107904
  const clientWidth = offsetWidthWithoutBorder - scrollbarWidth;
107860
107905
  return new DimensionInfo(offsetWidth, clientWidth, scrollbarWidth);
107861
107906
  }
@@ -107868,9 +107913,11 @@ class SizeUtils {
107868
107913
  const offsetHeightWithoutBorder = offsetHeight
107869
107914
  - parseCssValue(computedStyle.borderTopWidth)
107870
107915
  - parseCssValue(computedStyle.borderBottomWidth);
107871
- const scrollbarHeight = offsetHeightWithoutBorder - element.clientHeight;
107872
- const clientHeight = offsetHeightWithoutBorder - scrollbarHeight;
107873
- return new DimensionInfo(offsetHeight, clientHeight, scrollbarHeight);
107916
+ let scrollbarWidth = 0;
107917
+ if (Math.round(offsetHeightWithoutBorder) > element.clientHeight)
107918
+ scrollbarWidth = SizeUtils.getScrollbarsWidth().horizontal;
107919
+ const clientHeight = offsetHeightWithoutBorder - scrollbarWidth;
107920
+ return new DimensionInfo(offsetHeight, clientHeight, scrollbarWidth);
107874
107921
  }
107875
107922
  static getClientHeight(element) {
107876
107923
  return this.getHeightInfo(element).clientSize;
@@ -110526,17 +110573,17 @@ class InputEditorBase {
110526
110573
  clearTimeout(this.onKeyUpTimerId);
110527
110574
  }
110528
110575
  initialize() {
110529
- this.initializeIfNotReadOnly();
110576
+ this.initializeEditableState();
110530
110577
  this.initEvents();
110531
110578
  this.prevKeyCode = EMPTY_KEYCODE;
110532
110579
  }
110533
- initializeIfNotReadOnly() {
110534
- if ((this.control.readOnly !== ReadOnlyMode.Persistent || this.control.modelManager.clientMode) && !this.initializedIfNotReadOnly) {
110535
- this.initializedIfNotReadOnly = true;
110536
- this.initializeIfNotReadOnlyCore();
110580
+ initializeEditableState() {
110581
+ if (!this.editableStateInitialized) {
110582
+ this.editableStateInitialized = true;
110583
+ this.initializeEditableStateCore();
110537
110584
  }
110538
110585
  }
110539
- initializeIfNotReadOnlyCore() {
110586
+ initializeEditableStateCore() {
110540
110587
  }
110541
110588
  initEvents() {
110542
110589
  this.evtHandlersHolder.addListener(this.getEditableDocument(), "keydown", this.onKeyDown.bind(this));
@@ -110756,8 +110803,8 @@ class DivInputEditor extends InputEditorBase {
110756
110803
  clearTimeout(this.composEndTimerId);
110757
110804
  clearTimeout(this.onTextInputTimerId);
110758
110805
  }
110759
- initializeIfNotReadOnlyCore() {
110760
- this.inputElement.contentEditable = "true";
110806
+ initializeEditableStateCore() {
110807
+ this.inputElement.contentEditable = String(!this.control.isReadOnlyPersistent);
110761
110808
  this.clearInputElement();
110762
110809
  }
110763
110810
  setPosition(left, top) {
@@ -111005,11 +111052,11 @@ class IFrameInputEditor extends InputEditorBase {
111005
111052
  body.style.margin = "0px";
111006
111053
  body.style.overflow = "hidden";
111007
111054
  }
111008
- initializeIfNotReadOnlyCore() {
111055
+ initializeEditableStateCore() {
111009
111056
  if (browser.Browser.WebKitFamily)
111010
- this.editableDocument.body.setAttribute("contenteditable", "true");
111057
+ this.editableDocument.body.setAttribute("contenteditable", String(!this.control.isReadOnlyPersistent));
111011
111058
  else
111012
- this.editableDocument.designMode = "on";
111059
+ this.editableDocument.designMode = this.control.isReadOnlyPersistent ? "off" : "on";
111013
111060
  }
111014
111061
  createInputElement() {
111015
111062
  const element = document.createElement("IFRAME");
@@ -111148,7 +111195,7 @@ class IFrameInputEditor extends InputEditorBase {
111148
111195
  recreateIfNeeded() {
111149
111196
  const iframeDocument = this.inputElement.contentDocument || this.inputElement.contentWindow.document;
111150
111197
  if (!iframeDocument.body.hasAttribute("loaded")) {
111151
- this.initializedIfNotReadOnly = false;
111198
+ this.editableStateInitialized = false;
111152
111199
  this.createHierarchyCore();
111153
111200
  this.initialize();
111154
111201
  }
@@ -115416,7 +115463,7 @@ class SearchManager {
115416
115463
 
115417
115464
 
115418
115465
  class RichEditCore {
115419
- get isReadOnlyPersistent() { return this.readOnly == ReadOnlyMode.Persistent; }
115466
+ get isReadOnlyPersistent() { return this.readOnly === ReadOnlyMode.Persistent; }
115420
115467
  get model() { return this.modelManager.model; }
115421
115468
  get isDisposed() {
115422
115469
  return this._isDisposed;
@@ -115628,8 +115675,8 @@ class RichEditCore {
115628
115675
  this.readOnly = ReadOnlyMode.Persistent;
115629
115676
  else if (!readOnly && this.readOnly === ReadOnlyMode.Persistent) {
115630
115677
  this.readOnly = ReadOnlyMode.None;
115631
- this.inputController.inputEditor.initializeIfNotReadOnly();
115632
115678
  }
115679
+ this.inputController.inputEditor.initializeEditableStateCore();
115633
115680
  }
115634
115681
  setWorkSession(sessionGuid, documentInfo) {
115635
115682
  this.sessionGuid = sessionGuid;
@@ -115755,6 +115802,7 @@ class RichEditCore {
115755
115802
  pictureRenderer: this.viewManager.renderer,
115756
115803
  uiUnitConverter: this.uiUnitConverter,
115757
115804
  lastMaxNumPages: this.layout.lastMaxNumPages,
115805
+ grids: this.layout.grids,
115758
115806
  pageIndex: this.selection.pageIndex,
115759
115807
  sessionGuid: this.sessionGuid,
115760
115808
  clientGuid: this.clientGuid,
@@ -137129,7 +137177,8 @@ class MailMergeCommand extends CommandBase {
137129
137177
  return true;
137130
137178
  }
137131
137179
  executeCore(_state, options) {
137132
- const docxExporter = new DocxExporter(this.control.modelManager.modelManipulator, new DocxExportOptions());
137180
+ const exportModelOptions = this.control.getExportModelOptions();
137181
+ const docxExporter = new DocxExporter(exportModelOptions, new DocxExportOptions());
137133
137182
  docxExporter.exportToBlob((blob) => {
137134
137183
  const docxImporter = new Importer(new ImporterOptions());
137135
137184
  docxImporter.importFromFile(blob, this.control.modelManager.richOptions, (documentModel, formatImagesImporter) => {
@@ -140874,8 +140923,8 @@ class DialogManager {
140874
140923
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_type.js
140875
140924
  /**
140876
140925
  * DevExtreme (esm/__internal/core/utils/m_type.js)
140877
- * Version: 24.2.7-build-25098-1935
140878
- * Build date: Tue Apr 08 2025
140926
+ * Version: 24.2.7
140927
+ * Build date: Mon Apr 28 2025
140879
140928
  *
140880
140929
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
140881
140930
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -140977,8 +141026,8 @@ const isEvent = function(object) {
140977
141026
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/type.js
140978
141027
  /**
140979
141028
  * DevExtreme (esm/core/utils/type.js)
140980
- * Version: 24.2.7-build-25098-1935
140981
- * Build date: Tue Apr 08 2025
141029
+ * Version: 24.2.7
141030
+ * Build date: Mon Apr 28 2025
140982
141031
  *
140983
141032
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
140984
141033
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -140988,8 +141037,8 @@ const isEvent = function(object) {
140988
141037
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_extend.js
140989
141038
  /**
140990
141039
  * DevExtreme (esm/__internal/core/utils/m_extend.js)
140991
- * Version: 24.2.7-build-25098-1935
140992
- * Build date: Tue Apr 08 2025
141040
+ * Version: 24.2.7
141041
+ * Build date: Mon Apr 28 2025
140993
141042
  *
140994
141043
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
140995
141044
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141047,8 +141096,8 @@ const extend = function(target) {
141047
141096
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/extend.js
141048
141097
  /**
141049
141098
  * DevExtreme (esm/core/utils/extend.js)
141050
- * Version: 24.2.7-build-25098-1935
141051
- * Build date: Tue Apr 08 2025
141099
+ * Version: 24.2.7
141100
+ * Build date: Mon Apr 28 2025
141052
141101
  *
141053
141102
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141054
141103
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141058,8 +141107,8 @@ const extend = function(target) {
141058
141107
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_string.js
141059
141108
  /**
141060
141109
  * DevExtreme (esm/__internal/core/utils/m_string.js)
141061
- * Version: 24.2.7-build-25098-1935
141062
- * Build date: Tue Apr 08 2025
141110
+ * Version: 24.2.7
141111
+ * Build date: Mon Apr 28 2025
141063
141112
  *
141064
141113
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141065
141114
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141134,8 +141183,8 @@ const isEmpty = function() {
141134
141183
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/string.js
141135
141184
  /**
141136
141185
  * DevExtreme (esm/core/utils/string.js)
141137
- * Version: 24.2.7-build-25098-1935
141138
- * Build date: Tue Apr 08 2025
141186
+ * Version: 24.2.7
141187
+ * Build date: Mon Apr 28 2025
141139
141188
  *
141140
141189
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141141
141190
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141145,20 +141194,20 @@ const isEmpty = function() {
141145
141194
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/version.js
141146
141195
  /**
141147
141196
  * DevExtreme (esm/core/version.js)
141148
- * Version: 24.2.7-build-25098-1935
141149
- * Build date: Tue Apr 08 2025
141197
+ * Version: 24.2.7
141198
+ * Build date: Mon Apr 28 2025
141150
141199
  *
141151
141200
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141152
141201
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
141153
141202
  */
141154
- const version = "24.2.6";
141155
- const fullVersion = "24.2.6.25098-1935";
141203
+ const version = "24.2.7";
141204
+ const fullVersion = "24.2.7";
141156
141205
 
141157
141206
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_console.js
141158
141207
  /**
141159
141208
  * DevExtreme (esm/__internal/core/utils/m_console.js)
141160
- * Version: 24.2.7-build-25098-1935
141161
- * Build date: Tue Apr 08 2025
141209
+ * Version: 24.2.7
141210
+ * Build date: Mon Apr 28 2025
141162
141211
  *
141163
141212
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141164
141213
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141198,8 +141247,8 @@ const debug = function() {
141198
141247
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_error.js
141199
141248
  /**
141200
141249
  * DevExtreme (esm/__internal/core/utils/m_error.js)
141201
- * Version: 24.2.7-build-25098-1935
141202
- * Build date: Tue Apr 08 2025
141250
+ * Version: 24.2.7
141251
+ * Build date: Mon Apr 28 2025
141203
141252
  *
141204
141253
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141205
141254
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141270,8 +141319,8 @@ function error(baseErrors, errors) {
141270
141319
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/error.js
141271
141320
  /**
141272
141321
  * DevExtreme (esm/core/utils/error.js)
141273
- * Version: 24.2.7-build-25098-1935
141274
- * Build date: Tue Apr 08 2025
141322
+ * Version: 24.2.7
141323
+ * Build date: Mon Apr 28 2025
141275
141324
  *
141276
141325
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141277
141326
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141282,8 +141331,8 @@ function error(baseErrors, errors) {
141282
141331
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/m_errors.js
141283
141332
  /**
141284
141333
  * DevExtreme (esm/__internal/core/m_errors.js)
141285
- * Version: 24.2.7-build-25098-1935
141286
- * Build date: Tue Apr 08 2025
141334
+ * Version: 24.2.7
141335
+ * Build date: Mon Apr 28 2025
141287
141336
  *
141288
141337
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141289
141338
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141349,8 +141398,8 @@ function error(baseErrors, errors) {
141349
141398
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/errors.js
141350
141399
  /**
141351
141400
  * DevExtreme (esm/core/errors.js)
141352
- * Version: 24.2.7-build-25098-1935
141353
- * Build date: Tue Apr 08 2025
141401
+ * Version: 24.2.7
141402
+ * Build date: Mon Apr 28 2025
141354
141403
  *
141355
141404
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141356
141405
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141361,8 +141410,8 @@ function error(baseErrors, errors) {
141361
141410
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/m_class.js
141362
141411
  /**
141363
141412
  * DevExtreme (esm/__internal/core/m_class.js)
141364
- * Version: 24.2.7-build-25098-1935
141365
- * Build date: Tue Apr 08 2025
141413
+ * Version: 24.2.7
141414
+ * Build date: Mon Apr 28 2025
141366
141415
  *
141367
141416
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141368
141417
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141495,8 +141544,8 @@ classImpl.abstract = m_class_abstract;
141495
141544
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/class.js
141496
141545
  /**
141497
141546
  * DevExtreme (esm/core/class.js)
141498
- * Version: 24.2.7-build-25098-1935
141499
- * Build date: Tue Apr 08 2025
141547
+ * Version: 24.2.7
141548
+ * Build date: Mon Apr 28 2025
141500
141549
  *
141501
141550
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141502
141551
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141507,8 +141556,8 @@ classImpl.abstract = m_class_abstract;
141507
141556
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_iterator.js
141508
141557
  /**
141509
141558
  * DevExtreme (esm/__internal/core/utils/m_iterator.js)
141510
- * Version: 24.2.7-build-25098-1935
141511
- * Build date: Tue Apr 08 2025
141559
+ * Version: 24.2.7
141560
+ * Build date: Mon Apr 28 2025
141512
141561
  *
141513
141562
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141514
141563
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141557,8 +141606,8 @@ const reverseEach = (array, callback) => {
141557
141606
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_dependency_injector.js
141558
141607
  /**
141559
141608
  * DevExtreme (esm/__internal/core/utils/m_dependency_injector.js)
141560
- * Version: 24.2.7-build-25098-1935
141561
- * Build date: Tue Apr 08 2025
141609
+ * Version: 24.2.7
141610
+ * Build date: Mon Apr 28 2025
141562
141611
  *
141563
141612
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141564
141613
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141607,8 +141656,8 @@ function injector(object) {
141607
141656
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/dependency_injector.js
141608
141657
  /**
141609
141658
  * DevExtreme (esm/core/utils/dependency_injector.js)
141610
- * Version: 24.2.7-build-25098-1935
141611
- * Build date: Tue Apr 08 2025
141659
+ * Version: 24.2.7
141660
+ * Build date: Mon Apr 28 2025
141612
141661
  *
141613
141662
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141614
141663
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141619,8 +141668,8 @@ function injector(object) {
141619
141668
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/ldml/date.formatter.js
141620
141669
  /**
141621
141670
  * DevExtreme (esm/common/core/localization/ldml/date.formatter.js)
141622
- * Version: 24.2.7-build-25098-1935
141623
- * Build date: Tue Apr 08 2025
141671
+ * Version: 24.2.7
141672
+ * Build date: Mon Apr 28 2025
141624
141673
  *
141625
141674
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141626
141675
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141773,8 +141822,8 @@ function _extends() {
141773
141822
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/m_config.js
141774
141823
  /**
141775
141824
  * DevExtreme (esm/__internal/core/m_config.js)
141776
- * Version: 24.2.7-build-25098-1935
141777
- * Build date: Tue Apr 08 2025
141825
+ * Version: 24.2.7
141826
+ * Build date: Mon Apr 28 2025
141778
141827
  *
141779
141828
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141780
141829
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141849,8 +141898,8 @@ if ("undefined" !== typeof DevExpress && DevExpress.config) {
141849
141898
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/config.js
141850
141899
  /**
141851
141900
  * DevExtreme (esm/common/config.js)
141852
- * Version: 24.2.7-build-25098-1935
141853
- * Build date: Tue Apr 08 2025
141901
+ * Version: 24.2.7
141902
+ * Build date: Mon Apr 28 2025
141854
141903
  *
141855
141904
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141856
141905
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141861,8 +141910,8 @@ if ("undefined" !== typeof DevExpress && DevExpress.config) {
141861
141910
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/m_guid.js
141862
141911
  /**
141863
141912
  * DevExtreme (esm/__internal/core/m_guid.js)
141864
- * Version: 24.2.7-build-25098-1935
141865
- * Build date: Tue Apr 08 2025
141913
+ * Version: 24.2.7
141914
+ * Build date: Mon Apr 28 2025
141866
141915
  *
141867
141916
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141868
141917
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141904,8 +141953,8 @@ const Guid = core_class.inherit({
141904
141953
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/guid.js
141905
141954
  /**
141906
141955
  * DevExtreme (esm/common/guid.js)
141907
- * Version: 24.2.7-build-25098-1935
141908
- * Build date: Tue Apr 08 2025
141956
+ * Version: 24.2.7
141957
+ * Build date: Mon Apr 28 2025
141909
141958
  *
141910
141959
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141911
141960
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141916,8 +141965,8 @@ const Guid = core_class.inherit({
141916
141965
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/templates/m_template_engine_registry.js
141917
141966
  /**
141918
141967
  * DevExtreme (esm/__internal/core/templates/m_template_engine_registry.js)
141919
- * Version: 24.2.7-build-25098-1935
141920
- * Build date: Tue Apr 08 2025
141968
+ * Version: 24.2.7
141969
+ * Build date: Mon Apr 28 2025
141921
141970
  *
141922
141971
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141923
141972
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141946,8 +141995,8 @@ function getCurrentTemplateEngine() {
141946
141995
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/templates/template_engine_registry.js
141947
141996
  /**
141948
141997
  * DevExtreme (esm/core/templates/template_engine_registry.js)
141949
- * Version: 24.2.7-build-25098-1935
141950
- * Build date: Tue Apr 08 2025
141998
+ * Version: 24.2.7
141999
+ * Build date: Mon Apr 28 2025
141951
142000
  *
141952
142001
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141953
142002
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141957,8 +142006,8 @@ function getCurrentTemplateEngine() {
141957
142006
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/m_set_template_engine.js
141958
142007
  /**
141959
142008
  * DevExtreme (esm/__internal/core/m_set_template_engine.js)
141960
- * Version: 24.2.7-build-25098-1935
141961
- * Build date: Tue Apr 08 2025
142009
+ * Version: 24.2.7
142010
+ * Build date: Mon Apr 28 2025
141962
142011
  *
141963
142012
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141964
142013
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141968,8 +142017,8 @@ function getCurrentTemplateEngine() {
141968
142017
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/set_template_engine.js
141969
142018
  /**
141970
142019
  * DevExtreme (esm/common/set_template_engine.js)
141971
- * Version: 24.2.7-build-25098-1935
141972
- * Build date: Tue Apr 08 2025
142020
+ * Version: 24.2.7
142021
+ * Build date: Mon Apr 28 2025
141973
142022
  *
141974
142023
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141975
142024
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141980,8 +142029,8 @@ function getCurrentTemplateEngine() {
141980
142029
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common.js
141981
142030
  /**
141982
142031
  * DevExtreme (esm/common.js)
141983
- * Version: 24.2.7-build-25098-1935
141984
- * Build date: Tue Apr 08 2025
142032
+ * Version: 24.2.7
142033
+ * Build date: Mon Apr 28 2025
141985
142034
  *
141986
142035
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
141987
142036
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -141994,8 +142043,8 @@ function getCurrentTemplateEngine() {
141994
142043
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/config.js
141995
142044
  /**
141996
142045
  * DevExtreme (esm/core/config.js)
141997
- * Version: 24.2.7-build-25098-1935
141998
- * Build date: Tue Apr 08 2025
142046
+ * Version: 24.2.7
142047
+ * Build date: Mon Apr 28 2025
141999
142048
  *
142000
142049
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142001
142050
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142006,8 +142055,8 @@ function getCurrentTemplateEngine() {
142006
142055
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/guid.js
142007
142056
  /**
142008
142057
  * DevExtreme (esm/core/guid.js)
142009
- * Version: 24.2.7-build-25098-1935
142010
- * Build date: Tue Apr 08 2025
142058
+ * Version: 24.2.7
142059
+ * Build date: Mon Apr 28 2025
142011
142060
  *
142012
142061
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142013
142062
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142018,8 +142067,8 @@ function getCurrentTemplateEngine() {
142018
142067
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/console.js
142019
142068
  /**
142020
142069
  * DevExtreme (esm/core/utils/console.js)
142021
- * Version: 24.2.7-build-25098-1935
142022
- * Build date: Tue Apr 08 2025
142070
+ * Version: 24.2.7
142071
+ * Build date: Mon Apr 28 2025
142023
142072
  *
142024
142073
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142025
142074
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142029,8 +142078,8 @@ function getCurrentTemplateEngine() {
142029
142078
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_variable_wrapper.js
142030
142079
  /**
142031
142080
  * DevExtreme (esm/__internal/core/utils/m_variable_wrapper.js)
142032
- * Version: 24.2.7-build-25098-1935
142033
- * Build date: Tue Apr 08 2025
142081
+ * Version: 24.2.7
142082
+ * Build date: Mon Apr 28 2025
142034
142083
  *
142035
142084
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142036
142085
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142059,8 +142108,8 @@ const m_variable_wrapper_variableWrapper = dependency_injector({
142059
142108
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/variable_wrapper.js
142060
142109
  /**
142061
142110
  * DevExtreme (esm/core/utils/variable_wrapper.js)
142062
- * Version: 24.2.7-build-25098-1935
142063
- * Build date: Tue Apr 08 2025
142111
+ * Version: 24.2.7
142112
+ * Build date: Mon Apr 28 2025
142064
142113
  *
142065
142114
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142066
142115
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142071,8 +142120,8 @@ const m_variable_wrapper_variableWrapper = dependency_injector({
142071
142120
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_object.js
142072
142121
  /**
142073
142122
  * DevExtreme (esm/__internal/core/utils/m_object.js)
142074
- * Version: 24.2.7-build-25098-1935
142075
- * Build date: Tue Apr 08 2025
142123
+ * Version: 24.2.7
142124
+ * Build date: Mon Apr 28 2025
142076
142125
  *
142077
142126
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142078
142127
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142172,8 +142221,8 @@ const m_object_deepExtendArraySafe = function(target, changes, extendComplexObje
142172
142221
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/object.js
142173
142222
  /**
142174
142223
  * DevExtreme (esm/core/utils/object.js)
142175
- * Version: 24.2.7-build-25098-1935
142176
- * Build date: Tue Apr 08 2025
142224
+ * Version: 24.2.7
142225
+ * Build date: Mon Apr 28 2025
142177
142226
  *
142178
142227
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142179
142228
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142183,8 +142232,8 @@ const m_object_deepExtendArraySafe = function(target, changes, extendComplexObje
142183
142232
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_data.js
142184
142233
  /**
142185
142234
  * DevExtreme (esm/__internal/core/utils/m_data.js)
142186
- * Version: 24.2.7-build-25098-1935
142187
- * Build date: Tue Apr 08 2025
142235
+ * Version: 24.2.7
142236
+ * Build date: Mon Apr 28 2025
142188
142237
  *
142189
142238
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142190
142239
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142380,8 +142429,8 @@ const toComparable = function(value, caseSensitive) {
142380
142429
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/data.js
142381
142430
  /**
142382
142431
  * DevExtreme (esm/core/utils/data.js)
142383
- * Version: 24.2.7-build-25098-1935
142384
- * Build date: Tue Apr 08 2025
142432
+ * Version: 24.2.7
142433
+ * Build date: Mon Apr 28 2025
142385
142434
  *
142386
142435
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142387
142436
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142391,8 +142440,8 @@ const toComparable = function(value, caseSensitive) {
142391
142440
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_callbacks.js
142392
142441
  /**
142393
142442
  * DevExtreme (esm/__internal/core/utils/m_callbacks.js)
142394
- * Version: 24.2.7-build-25098-1935
142395
- * Build date: Tue Apr 08 2025
142443
+ * Version: 24.2.7
142444
+ * Build date: Mon Apr 28 2025
142396
142445
  *
142397
142446
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142398
142447
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142487,8 +142536,8 @@ const Callbacks = function(options) {
142487
142536
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/callbacks.js
142488
142537
  /**
142489
142538
  * DevExtreme (esm/core/utils/callbacks.js)
142490
- * Version: 24.2.7-build-25098-1935
142491
- * Build date: Tue Apr 08 2025
142539
+ * Version: 24.2.7
142540
+ * Build date: Mon Apr 28 2025
142492
142541
  *
142493
142542
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142494
142543
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142499,8 +142548,8 @@ const Callbacks = function(options) {
142499
142548
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_deferred.js
142500
142549
  /**
142501
142550
  * DevExtreme (esm/__internal/core/utils/m_deferred.js)
142502
- * Version: 24.2.7-build-25098-1935
142503
- * Build date: Tue Apr 08 2025
142551
+ * Version: 24.2.7
142552
+ * Build date: Mon Apr 28 2025
142504
142553
  *
142505
142554
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142506
142555
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142665,8 +142714,8 @@ function when() {
142665
142714
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/deferred.js
142666
142715
  /**
142667
142716
  * DevExtreme (esm/core/utils/deferred.js)
142668
- * Version: 24.2.7-build-25098-1935
142669
- * Build date: Tue Apr 08 2025
142717
+ * Version: 24.2.7
142718
+ * Build date: Mon Apr 28 2025
142670
142719
  *
142671
142720
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142672
142721
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142676,8 +142725,8 @@ function when() {
142676
142725
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_common.js
142677
142726
  /**
142678
142727
  * DevExtreme (esm/__internal/core/utils/m_common.js)
142679
- * Version: 24.2.7-build-25098-1935
142680
- * Build date: Tue Apr 08 2025
142728
+ * Version: 24.2.7
142729
+ * Build date: Mon Apr 28 2025
142681
142730
  *
142682
142731
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142683
142732
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142972,8 +143021,8 @@ const equalByValue = function(value1, value2) {
142972
143021
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/common.js
142973
143022
  /**
142974
143023
  * DevExtreme (esm/core/utils/common.js)
142975
- * Version: 24.2.7-build-25098-1935
142976
- * Build date: Tue Apr 08 2025
143024
+ * Version: 24.2.7
143025
+ * Build date: Mon Apr 28 2025
142977
143026
  *
142978
143027
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142979
143028
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -142983,8 +143032,8 @@ const equalByValue = function(value1, value2) {
142983
143032
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/__internal/core/utils/m_math.js
142984
143033
  /**
142985
143034
  * DevExtreme (esm/__internal/core/utils/m_math.js)
142986
- * Version: 24.2.7-build-25098-1935
142987
- * Build date: Tue Apr 08 2025
143035
+ * Version: 24.2.7
143036
+ * Build date: Mon Apr 28 2025
142988
143037
  *
142989
143038
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
142990
143039
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143153,8 +143202,8 @@ function roundFloatPart(value) {
143153
143202
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/core/utils/math.js
143154
143203
  /**
143155
143204
  * DevExtreme (esm/core/utils/math.js)
143156
- * Version: 24.2.7-build-25098-1935
143157
- * Build date: Tue Apr 08 2025
143205
+ * Version: 24.2.7
143206
+ * Build date: Mon Apr 28 2025
143158
143207
  *
143159
143208
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
143160
143209
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143164,8 +143213,8 @@ function roundFloatPart(value) {
143164
143213
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/utils.js
143165
143214
  /**
143166
143215
  * DevExtreme (esm/common/core/localization/utils.js)
143167
- * Version: 24.2.7-build-25098-1935
143168
- * Build date: Tue Apr 08 2025
143216
+ * Version: 24.2.7
143217
+ * Build date: Mon Apr 28 2025
143169
143218
  *
143170
143219
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
143171
143220
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143192,8 +143241,8 @@ function toFixed(value, precision) {
143192
143241
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/ldml/number.js
143193
143242
  /**
143194
143243
  * DevExtreme (esm/common/core/localization/ldml/number.js)
143195
- * Version: 24.2.7-build-25098-1935
143196
- * Build date: Tue Apr 08 2025
143244
+ * Version: 24.2.7
143245
+ * Build date: Mon Apr 28 2025
143197
143246
  *
143198
143247
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
143199
143248
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143434,8 +143483,8 @@ function getFormat(formatter) {
143434
143483
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/currency.js
143435
143484
  /**
143436
143485
  * DevExtreme (esm/common/core/localization/currency.js)
143437
- * Version: 24.2.7-build-25098-1935
143438
- * Build date: Tue Apr 08 2025
143486
+ * Version: 24.2.7
143487
+ * Build date: Mon Apr 28 2025
143439
143488
  *
143440
143489
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
143441
143490
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143467,8 +143516,8 @@ function getFormat(formatter) {
143467
143516
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/cldr-data/parent_locales.js
143468
143517
  /**
143469
143518
  * DevExtreme (esm/common/core/localization/cldr-data/parent_locales.js)
143470
- * Version: 24.2.7-build-25098-1935
143471
- * Build date: Tue Apr 08 2025
143519
+ * Version: 24.2.7
143520
+ * Build date: Mon Apr 28 2025
143472
143521
  *
143473
143522
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
143474
143523
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143653,8 +143702,8 @@ function getFormat(formatter) {
143653
143702
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/parentLocale.js
143654
143703
  /**
143655
143704
  * DevExtreme (esm/common/core/localization/parentLocale.js)
143656
- * Version: 24.2.7-build-25098-1935
143657
- * Build date: Tue Apr 08 2025
143705
+ * Version: 24.2.7
143706
+ * Build date: Mon Apr 28 2025
143658
143707
  *
143659
143708
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
143660
143709
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143671,8 +143720,8 @@ const PARENT_LOCALE_SEPARATOR = "-";
143671
143720
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/core.js
143672
143721
  /**
143673
143722
  * DevExtreme (esm/common/core/localization/core.js)
143674
- * Version: 24.2.7-build-25098-1935
143675
- * Build date: Tue Apr 08 2025
143723
+ * Version: 24.2.7
143724
+ * Build date: Mon Apr 28 2025
143676
143725
  *
143677
143726
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
143678
143727
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143713,8 +143762,8 @@ const DEFAULT_LOCALE = "en";
143713
143762
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/open_xml_currency_format.js
143714
143763
  /**
143715
143764
  * DevExtreme (esm/common/core/localization/open_xml_currency_format.js)
143716
- * Version: 24.2.7-build-25098-1935
143717
- * Build date: Tue Apr 08 2025
143765
+ * Version: 24.2.7
143766
+ * Build date: Mon Apr 28 2025
143718
143767
  *
143719
143768
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
143720
143769
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -143756,8 +143805,8 @@ const DEFAULT_LOCALE = "en";
143756
143805
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/cldr-data/accounting_formats.js
143757
143806
  /**
143758
143807
  * DevExtreme (esm/common/core/localization/cldr-data/accounting_formats.js)
143759
- * Version: 24.2.7-build-25098-1935
143760
- * Build date: Tue Apr 08 2025
143808
+ * Version: 24.2.7
143809
+ * Build date: Mon Apr 28 2025
143761
143810
  *
143762
143811
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
143763
143812
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144343,8 +144392,8 @@ const DEFAULT_LOCALE = "en";
144343
144392
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/intl/number.js
144344
144393
  /**
144345
144394
  * DevExtreme (esm/common/core/localization/intl/number.js)
144346
- * Version: 24.2.7-build-25098-1935
144347
- * Build date: Tue Apr 08 2025
144395
+ * Version: 24.2.7
144396
+ * Build date: Mon Apr 28 2025
144348
144397
  *
144349
144398
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
144350
144399
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144464,8 +144513,8 @@ const getCurrencyFormatter = currency => new Intl.NumberFormat(core.locale(), {
144464
144513
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/number.js
144465
144514
  /**
144466
144515
  * DevExtreme (esm/common/core/localization/number.js)
144467
- * Version: 24.2.7-build-25098-1935
144468
- * Build date: Tue Apr 08 2025
144516
+ * Version: 24.2.7
144517
+ * Build date: Mon Apr 28 2025
144469
144518
  *
144470
144519
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
144471
144520
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144770,8 +144819,8 @@ if (hasIntl) {
144770
144819
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/ldml/date.format.js
144771
144820
  /**
144772
144821
  * DevExtreme (esm/common/core/localization/ldml/date.format.js)
144773
- * Version: 24.2.7-build-25098-1935
144774
- * Build date: Tue Apr 08 2025
144822
+ * Version: 24.2.7
144823
+ * Build date: Mon Apr 28 2025
144775
144824
  *
144776
144825
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
144777
144826
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -144968,8 +145017,8 @@ const date_format_getFormat = function(formatter) {
144968
145017
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/ldml/date.parser.js
144969
145018
  /**
144970
145019
  * DevExtreme (esm/common/core/localization/ldml/date.parser.js)
144971
- * Version: 24.2.7-build-25098-1935
144972
- * Build date: Tue Apr 08 2025
145020
+ * Version: 24.2.7
145021
+ * Build date: Mon Apr 28 2025
144973
145022
  *
144974
145023
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
144975
145024
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145287,8 +145336,8 @@ const getParser = function(format, dateParts) {
145287
145336
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/default_date_names.js
145288
145337
  /**
145289
145338
  * DevExtreme (esm/common/core/localization/default_date_names.js)
145290
- * Version: 24.2.7-build-25098-1935
145291
- * Build date: Tue Apr 08 2025
145339
+ * Version: 24.2.7
145340
+ * Build date: Mon Apr 28 2025
145292
145341
  *
145293
145342
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
145294
145343
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145324,8 +145373,8 @@ const cutCaptions = (captions, format) => {
145324
145373
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/cldr-data/first_day_of_week_data.js
145325
145374
  /**
145326
145375
  * DevExtreme (esm/common/core/localization/cldr-data/first_day_of_week_data.js)
145327
- * Version: 24.2.7-build-25098-1935
145328
- * Build date: Tue Apr 08 2025
145376
+ * Version: 24.2.7
145377
+ * Build date: Mon Apr 28 2025
145329
145378
  *
145330
145379
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
145331
145380
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145524,8 +145573,8 @@ const cutCaptions = (captions, format) => {
145524
145573
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/intl/date.js
145525
145574
  /**
145526
145575
  * DevExtreme (esm/common/core/localization/intl/date.js)
145527
- * Version: 24.2.7-build-25098-1935
145528
- * Build date: Tue Apr 08 2025
145576
+ * Version: 24.2.7
145577
+ * Build date: Mon Apr 28 2025
145529
145578
  *
145530
145579
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
145531
145580
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -145842,8 +145891,8 @@ const monthNameStrategies = {
145842
145891
  ;// CONCATENATED MODULE: ./node_modules/devextreme/esm/common/core/localization/date.js
145843
145892
  /**
145844
145893
  * DevExtreme (esm/common/core/localization/date.js)
145845
- * Version: 24.2.7-build-25098-1935
145846
- * Build date: Tue Apr 08 2025
145894
+ * Version: 24.2.7
145895
+ * Build date: Mon Apr 28 2025
145847
145896
  *
145848
145897
  * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
145849
145898
  * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
@@ -147080,7 +147129,7 @@ class ClientRichEdit {
147080
147129
  this.contextMenuSettings = settings.contextMenuSettings;
147081
147130
  this.fullScreenHelper = new FullScreenHelper(element);
147082
147131
  if (true)
147083
- external_DevExpress_config_default()(JSON.parse(atob('eyJsaWNlbnNlS2V5IjoiZXdvZ0lDSm1iM0p0WVhRaU9pQXhMQW9nSUNKcGJuUmxjbTVoYkZWellXZGxTV1FpT2lBaVZqWlNVWEpJWkdZelVXRmlNbGQ1YldsWlpIZFlUU0lLZlE9PS53aEFZRnYvUVRDWlVKalVITm14M25DLzVnWE9aV09wQmFYbm9JMlg1MHJadTdrbm9Mc2lIRUs0REoyZWlQZi9tSEExRk9ySlltanFtSWdKWTZpQ2prSTVtYlVnN1N6ZEI0SUIvektuMTdlQlRUQit0YThVZDNzSThNK3NES2ZRd3NMNU5tdz09In0=')));
147132
+ external_DevExpress_config_default()(JSON.parse(atob('eyJsaWNlbnNlS2V5IjoiZXdvZ0lDSm1iM0p0WVhRaU9pQXhMQW9nSUNKcGJuUmxjbTVoYkZWellXZGxTV1FpT2lBaVVUTmhiM0ZJYzFKRU0zWllaVlZOVUdSWVNEZHhOU0lLZlE9PS5rMTA4KzRjbVFYSU96S1F1bUlqUE5oQkw0ejc5N0VSNlByVkkxcTB3V1QwbnkwUTVNZnkzRkJONlV5Zk9PV2p1eUJwaDR1ZllMM0llb0g4UHhNUU5wQUhUb3VUTTFFOHZaM01CM0lac2c1L1ZoOXhUNkg4TFJQSGZoQk00Rk5HUE5zNkY0dz09In0=')));
147084
147133
  this.prepareElement(element, settings);
147085
147134
  this.initDefaultFontsAndStyles();
147086
147135
  this.initBars(settings.ribbon, settings.fonts);
@@ -149526,11 +149575,11 @@ class RichEditPublic {
149526
149575
  command.execute(true, type);
149527
149576
  }
149528
149577
  get readOnly() {
149529
- return this._native.core.readOnly == ReadOnlyMode.Persistent;
149578
+ return this._native.core.readOnly === ReadOnlyMode.Persistent;
149530
149579
  }
149531
149580
  set readOnly(value) {
149532
149581
  if (this.readOnly != value) {
149533
- this._native.core.readOnly = value ? ReadOnlyMode.Persistent : ReadOnlyMode.None;
149582
+ this._native.core.setPersistentReadOnly(value);
149534
149583
  this._native.core.barHolder.updateItemsState();
149535
149584
  this._native.core.horizontalRulerControl.update();
149536
149585
  this._native.core.beginUpdate();