devexpress-richedit 25.2.7 → 26.1.2-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/gulpfile.js +1 -1
- package/bin/index-custom.js +1 -1
- package/bin/localization-builder.js +1 -1
- package/bin/nspell-index.js +1 -1
- package/bin/nspell.webpack.config.js +1 -1
- package/bin/webpack-externals.js +1 -1
- package/bin/webpack.config.js +1 -1
- package/dist/dx.richedit.css +0 -1
- package/dist/dx.richedit.d.ts +1 -1
- package/dist/dx.richedit.js +1271 -701
- package/dist/dx.richedit.min.js +2 -2
- package/index.d.ts +1 -1
- package/index.js +1 -1
- package/lib/client/client-rich-edit.js +2 -2
- package/lib/client/default-localization.js +25 -7
- package/lib/client/dialogs/alert-dialog.d.ts +1 -1
- package/lib/client/dialogs/bookmark-dialog.d.ts +1 -1
- package/lib/client/dialogs/delete-table-cells-dialog.d.ts +1 -1
- package/lib/client/dialogs/dialog-base.d.ts +1 -1
- package/lib/client/dialogs/find-replace-dialog.d.ts +1 -1
- package/lib/client/dialogs/finish-and-merge-dialog.d.ts +1 -1
- package/lib/client/dialogs/font-dialog.d.ts +1 -1
- package/lib/client/dialogs/hyperlink-dialog.d.ts +1 -1
- package/lib/client/dialogs/insert-merge-field-dialog.d.ts +1 -1
- package/lib/client/dialogs/insert-table-cells-dialog.d.ts +1 -1
- package/lib/client/dialogs/insert-table-dialog.d.ts +1 -1
- package/lib/client/dialogs/page-setup-dialog.d.ts +1 -1
- package/lib/client/dialogs/paragraph-dialog.d.ts +1 -1
- package/lib/client/dialogs/split-table-cells-dialog.d.ts +1 -1
- package/lib/client/dialogs/tabs-dialog.d.ts +1 -1
- package/lib/client/public/rich-edit.js +2 -0
- package/lib/client/public/utils.js +5 -1
- package/lib/common/canvas/renderes/common/document-renderer.js +7 -1
- package/lib/common/commands/command-manager.d.ts +2 -0
- package/lib/common/commands/command-manager.js +6 -0
- package/lib/common/commands/layout/switch-view-command.js +2 -1
- package/lib/common/commands/selection/go-to-next-word-command.d.ts +3 -4
- package/lib/common/commands/selection/go-to-next-word-command.js +2 -9
- package/lib/common/commands/selection/go-to-prev-word-command.d.ts +3 -2
- package/lib/common/commands/selection/go-to-prev-word-command.js +2 -2
- package/lib/common/commands/selection/select-all-document-command.d.ts +2 -0
- package/lib/common/commands/selection/select-all-document-command.js +6 -0
- package/lib/common/commands/selection/selection-command-base.d.ts +2 -0
- package/lib/common/commands/selection/selection-command-base.js +8 -0
- package/lib/common/event-manager.js +0 -1
- package/lib/common/formats/txt/txt-exporter.js +1 -1
- package/lib/common/input-controller.js +2 -0
- package/lib/common/interfaces/i-rich-edit-core.d.ts +2 -0
- package/lib/common/layout-formatter/formatter/base-formatter.d.ts +1 -0
- package/lib/common/layout-formatter/formatter/base-formatter.js +11 -0
- package/lib/common/layout-formatter/row/result.d.ts +0 -1
- package/lib/common/layout-formatter/row/result.js +4 -19
- package/lib/common/layout-formatter/row/size-engine/row-sizes-manager.js +1 -3
- package/lib/common/model/sub-document.d.ts +11 -0
- package/lib/common/model/sub-document.js +66 -22
- package/lib/common/rich-edit-core.d.ts +3 -0
- package/lib/common/rich-edit-core.js +18 -0
- package/lib/common/screen-reader-manager.d.ts +45 -0
- package/lib/common/screen-reader-manager.js +309 -0
- package/lib/common/utils/interval-utils.d.ts +4 -0
- package/lib/common/utils/interval-utils.js +25 -0
- package/package.json +3 -3
package/dist/dx.richedit.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* DevExpress WebRichEdit (dx.richedit.js)
|
|
3
|
-
* Version:
|
|
3
|
+
* Version: 26.1.2-beta
|
|
4
4
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
5
5
|
* License: https://www.devexpress.com/Support/EULAs",
|
|
6
6
|
*/
|
|
@@ -27810,6 +27810,202 @@ class PositionManager {
|
|
|
27810
27810
|
}
|
|
27811
27811
|
}
|
|
27812
27812
|
|
|
27813
|
+
;// ./src/common/layout-formatter/box/generator/one-dimension-itertors.ts
|
|
27814
|
+
|
|
27815
|
+
class OneDimensionItertor {
|
|
27816
|
+
constructor(objects) {
|
|
27817
|
+
this.objects = objects;
|
|
27818
|
+
}
|
|
27819
|
+
init(pos) {
|
|
27820
|
+
this.index = search.SearchUtils.normedInterpolationIndexOf(this.objects, (o) => this.getPosition(o), pos);
|
|
27821
|
+
this.updateNextObjPos();
|
|
27822
|
+
}
|
|
27823
|
+
update(newPosition) {
|
|
27824
|
+
if (newPosition < this.nextObjPosition)
|
|
27825
|
+
return false;
|
|
27826
|
+
while (this.getPosition(this.objects[++this.index]) < newPosition)
|
|
27827
|
+
;
|
|
27828
|
+
this.updateNextObjPos();
|
|
27829
|
+
return true;
|
|
27830
|
+
}
|
|
27831
|
+
updateNextObjPos() {
|
|
27832
|
+
const nextObj = this.objects[this.index + 1];
|
|
27833
|
+
this.nextObjPosition = nextObj ? this.getPosition(nextObj) : Number.MAX_VALUE;
|
|
27834
|
+
}
|
|
27835
|
+
}
|
|
27836
|
+
class ParagraphIterator extends OneDimensionItertor {
|
|
27837
|
+
getPosition(o) {
|
|
27838
|
+
return o.startLogPosition.value;
|
|
27839
|
+
}
|
|
27840
|
+
}
|
|
27841
|
+
class SectionIterator extends OneDimensionItertor {
|
|
27842
|
+
getPosition(o) {
|
|
27843
|
+
return o.startLogPosition.value;
|
|
27844
|
+
}
|
|
27845
|
+
}
|
|
27846
|
+
|
|
27847
|
+
;// ./src/common/layout-formatter/box/box-wrap.ts
|
|
27848
|
+
|
|
27849
|
+
class BoxWrap {
|
|
27850
|
+
constructor(box, info) {
|
|
27851
|
+
this.box = box;
|
|
27852
|
+
this.info = info;
|
|
27853
|
+
}
|
|
27854
|
+
splitByPosition(measurer, pos) {
|
|
27855
|
+
return new BoxWrap(this.box.splitBoxByPosition(measurer, pos), this.info);
|
|
27856
|
+
}
|
|
27857
|
+
}
|
|
27858
|
+
class BoxWrapInfo {
|
|
27859
|
+
constructor(paragraphIndex, sectionIndex, tablePosition, fieldsInfo) {
|
|
27860
|
+
this.pageIndexFromWhichTableWasMoved = null;
|
|
27861
|
+
this.paragraphIndex = paragraphIndex;
|
|
27862
|
+
this.sectionIndex = sectionIndex;
|
|
27863
|
+
this.tablePosition = tablePosition;
|
|
27864
|
+
this.fieldsInfo = fieldsInfo;
|
|
27865
|
+
}
|
|
27866
|
+
equalsTablePositions(tablePos) {
|
|
27867
|
+
if (!this.tablePosition)
|
|
27868
|
+
return !tablePos;
|
|
27869
|
+
if (!tablePos || this.tablePosition.length != tablePos.length)
|
|
27870
|
+
return false;
|
|
27871
|
+
return utils_list.ListUtils.allOf2(this.tablePosition, tablePos, (a, b) => a.equals(b));
|
|
27872
|
+
}
|
|
27873
|
+
getTableNestedLevel() {
|
|
27874
|
+
return (this.tablePosition ? this.tablePosition.length : 0) - 1;
|
|
27875
|
+
}
|
|
27876
|
+
}
|
|
27877
|
+
class BoxWrapFieldInfo {
|
|
27878
|
+
constructor(field, isInCodePart) {
|
|
27879
|
+
this.field = field;
|
|
27880
|
+
this.isInCodePart = isInCodePart;
|
|
27881
|
+
}
|
|
27882
|
+
static make(field, pos) {
|
|
27883
|
+
return new BoxWrapFieldInfo(field, field.getCodeIntervalWithBorders().contains(pos));
|
|
27884
|
+
}
|
|
27885
|
+
}
|
|
27886
|
+
|
|
27887
|
+
;// ./src/common/layout-formatter/box/generator/recursive-objects-iterators.ts
|
|
27888
|
+
|
|
27889
|
+
|
|
27890
|
+
|
|
27891
|
+
|
|
27892
|
+
class RecursiveObjectsIterator {
|
|
27893
|
+
constructor(objects) {
|
|
27894
|
+
this.objects = objects;
|
|
27895
|
+
}
|
|
27896
|
+
getNextObjectPosition() {
|
|
27897
|
+
return this.nextObjPosition;
|
|
27898
|
+
}
|
|
27899
|
+
init(pos) {
|
|
27900
|
+
this.indexes = [];
|
|
27901
|
+
const index = search.SearchUtils.normedInterpolationIndexOf(this.objects, (o) => this.getStartPosition(o), pos);
|
|
27902
|
+
if (index < 0) {
|
|
27903
|
+
this.setNextInfos(0, pos);
|
|
27904
|
+
return;
|
|
27905
|
+
}
|
|
27906
|
+
let obj = this.objects[index];
|
|
27907
|
+
while (pos >= this.getEndPosition(obj)) {
|
|
27908
|
+
const parent = this.getParent(obj);
|
|
27909
|
+
if (!parent) {
|
|
27910
|
+
this.setNextInfos(index + 1, pos);
|
|
27911
|
+
return;
|
|
27912
|
+
}
|
|
27913
|
+
obj = parent;
|
|
27914
|
+
}
|
|
27915
|
+
this.collectIndexes(this.getIndex(obj), pos);
|
|
27916
|
+
}
|
|
27917
|
+
collectIndexes(index, pos) {
|
|
27918
|
+
const insertPos = this.indexes.length;
|
|
27919
|
+
let ind = this.correctBounds(index, pos);
|
|
27920
|
+
let obj = this.objects[ind];
|
|
27921
|
+
const leftBoundIndex = this.indexes.length ? utils_list.ListUtils.last(this.indexes) : -1;
|
|
27922
|
+
while (true) {
|
|
27923
|
+
this.indexes.splice(insertPos, 0, ind);
|
|
27924
|
+
const parent = this.getParent(obj);
|
|
27925
|
+
if (!parent || this.getIndex(parent) == leftBoundIndex)
|
|
27926
|
+
break;
|
|
27927
|
+
ind = this.getIndex(parent);
|
|
27928
|
+
obj = parent;
|
|
27929
|
+
}
|
|
27930
|
+
this.setNextInfos(utils_list.ListUtils.last(this.indexes) + 1, pos);
|
|
27931
|
+
}
|
|
27932
|
+
update(newPosition) {
|
|
27933
|
+
if (!this.objects.length)
|
|
27934
|
+
return false;
|
|
27935
|
+
const indexesDeleted = this.popLastIndexes(newPosition);
|
|
27936
|
+
if (newPosition >= this.nextObjPosition) {
|
|
27937
|
+
this.nextObjIndex = this.correctBounds(this.nextObjIndex, newPosition);
|
|
27938
|
+
this.collectIndexes(this.nextObjIndex, newPosition);
|
|
27939
|
+
return true;
|
|
27940
|
+
}
|
|
27941
|
+
return indexesDeleted;
|
|
27942
|
+
}
|
|
27943
|
+
setNextInfos(ind, pos) {
|
|
27944
|
+
this.nextObjIndex = ind;
|
|
27945
|
+
const obj = this.objects[ind];
|
|
27946
|
+
if (!obj || this.getStartPosition(obj) >= pos)
|
|
27947
|
+
this.nextObjPosition = obj ? this.getStartPosition(obj) : Number.MAX_VALUE;
|
|
27948
|
+
else
|
|
27949
|
+
this.setNextInfos(ind + 1, pos);
|
|
27950
|
+
}
|
|
27951
|
+
popLastIndexes(newPosition) {
|
|
27952
|
+
if (!this.indexes.length || newPosition < this.getEndPosition(this.objects[utils_list.ListUtils.last(this.indexes)]))
|
|
27953
|
+
return false;
|
|
27954
|
+
this.indexes.pop();
|
|
27955
|
+
this.popLastIndexes(newPosition);
|
|
27956
|
+
return true;
|
|
27957
|
+
}
|
|
27958
|
+
}
|
|
27959
|
+
class TableIterator extends RecursiveObjectsIterator {
|
|
27960
|
+
getStartPosition(o) {
|
|
27961
|
+
return o.getStartPosition();
|
|
27962
|
+
}
|
|
27963
|
+
getEndPosition(o) {
|
|
27964
|
+
return o.getEndPosition();
|
|
27965
|
+
}
|
|
27966
|
+
getParent(obj) {
|
|
27967
|
+
return obj.getParentTable();
|
|
27968
|
+
}
|
|
27969
|
+
getIndex(obj) {
|
|
27970
|
+
return obj.index;
|
|
27971
|
+
}
|
|
27972
|
+
correctBounds(objIndex, pos) {
|
|
27973
|
+
return Table.correctBoundTable(this.objects, objIndex, pos, (i) => ++i).index;
|
|
27974
|
+
}
|
|
27975
|
+
generateInfo(pos) {
|
|
27976
|
+
if (!this.indexes.length)
|
|
27977
|
+
return null;
|
|
27978
|
+
return utils_list.ListUtils.map(this.indexes, (ind) => {
|
|
27979
|
+
const table = this.objects[ind];
|
|
27980
|
+
const rowIndex = search.SearchUtils.normedInterpolationIndexOf(table.rows, (r) => r.getStartPosition(), pos);
|
|
27981
|
+
const cellIndex = search.SearchUtils.normedInterpolationIndexOf(table.rows[rowIndex].cells, (c) => c.startParagraphPosition.value, pos);
|
|
27982
|
+
return new TablePosition(table, rowIndex, cellIndex).init();
|
|
27983
|
+
});
|
|
27984
|
+
}
|
|
27985
|
+
}
|
|
27986
|
+
class FieldIterator extends RecursiveObjectsIterator {
|
|
27987
|
+
getStartPosition(o) {
|
|
27988
|
+
return o.getFieldStartPosition();
|
|
27989
|
+
}
|
|
27990
|
+
getEndPosition(o) {
|
|
27991
|
+
return o.getFieldEndPosition();
|
|
27992
|
+
}
|
|
27993
|
+
getParent(obj) {
|
|
27994
|
+
return obj.parent;
|
|
27995
|
+
}
|
|
27996
|
+
getIndex(obj) {
|
|
27997
|
+
return obj.index;
|
|
27998
|
+
}
|
|
27999
|
+
correctBounds(objIndex, _pos) {
|
|
28000
|
+
return objIndex;
|
|
28001
|
+
}
|
|
28002
|
+
generateInfo(pos) {
|
|
28003
|
+
if (!this.indexes.length)
|
|
28004
|
+
return null;
|
|
28005
|
+
return utils_list.ListUtils.map(this.indexes, (ind) => BoxWrapFieldInfo.make(this.objects[ind], pos));
|
|
28006
|
+
}
|
|
28007
|
+
}
|
|
28008
|
+
|
|
27813
28009
|
;// ./src/common/model/sub-document.ts
|
|
27814
28010
|
|
|
27815
28011
|
|
|
@@ -27825,6 +28021,8 @@ class PositionManager {
|
|
|
27825
28021
|
|
|
27826
28022
|
|
|
27827
28023
|
|
|
28024
|
+
|
|
28025
|
+
|
|
27828
28026
|
class SubDocument {
|
|
27829
28027
|
static { this.AUTOGENERATE_ID = -1; }
|
|
27830
28028
|
static { this.MAIN_SUBDOCUMENT_ID = 0; }
|
|
@@ -27876,36 +28074,78 @@ class SubDocument {
|
|
|
27876
28074
|
return buffer;
|
|
27877
28075
|
}
|
|
27878
28076
|
getSimpleText(interval) {
|
|
27879
|
-
|
|
28077
|
+
return this.getVisibleText(interval, {
|
|
28078
|
+
useFieldResult: true,
|
|
28079
|
+
charMap: {
|
|
28080
|
+
[RichUtils.specialCharacters.LineBreak]: ' ',
|
|
28081
|
+
[RichUtils.specialCharacters.SectionMark]: '\r\n',
|
|
28082
|
+
[RichUtils.specialCharacters.ParagraphMark]: '\r\n'
|
|
28083
|
+
}
|
|
28084
|
+
});
|
|
28085
|
+
}
|
|
28086
|
+
getVisibleText(interval, options = {}) {
|
|
28087
|
+
let result = [];
|
|
27880
28088
|
let pos = interval.start;
|
|
27881
|
-
|
|
27882
|
-
const fieldIndex = Field.normedBinaryIndexOf(this.fields, pos);
|
|
27883
|
-
if (fieldIndex > -1) {
|
|
27884
|
-
let field = this.fields[fieldIndex];
|
|
27885
|
-
while (field.parent)
|
|
27886
|
-
field = field.parent;
|
|
27887
|
-
pos = field.getFieldStartPosition();
|
|
27888
|
-
}
|
|
28089
|
+
const { charMap = {}, useFieldResult = false, includeNumberedListMarks = false, inlinePictureAltText = null, resolveAdditionalText = undefined, } = options;
|
|
27889
28090
|
const iterator = new ModelIterator(this, true);
|
|
27890
28091
|
iterator.setPosition(pos);
|
|
28092
|
+
const fieldIterator = new FieldIterator(this.fields);
|
|
28093
|
+
fieldIterator.init(pos);
|
|
28094
|
+
const paragraphIterator = new ParagraphIterator(this.paragraphs);
|
|
28095
|
+
paragraphIterator.init(pos);
|
|
27891
28096
|
while (pos < interval.end) {
|
|
27892
|
-
|
|
27893
|
-
|
|
27894
|
-
|
|
27895
|
-
|
|
27896
|
-
|
|
27897
|
-
|
|
27898
|
-
|
|
27899
|
-
|
|
27900
|
-
|
|
27901
|
-
|
|
28097
|
+
if (this.isPositionVisible(pos, fieldIterator.indexes, useFieldResult)) {
|
|
28098
|
+
const paragraph = this.paragraphs[paragraphIterator.index];
|
|
28099
|
+
if (includeNumberedListMarks && pos === paragraph.startLogPosition.value && paragraph.isInList())
|
|
28100
|
+
result.push(paragraph.getNumberingListText() + paragraph.getNumberingListSeparatorChar());
|
|
28101
|
+
if (resolveAdditionalText) {
|
|
28102
|
+
const resolved = resolveAdditionalText(fieldIterator.indexes, pos);
|
|
28103
|
+
if (resolved)
|
|
28104
|
+
result.push(resolved);
|
|
28105
|
+
}
|
|
28106
|
+
switch (iterator.run.getType()) {
|
|
28107
|
+
case RunType.InlinePictureRun:
|
|
28108
|
+
if (inlinePictureAltText != null) {
|
|
28109
|
+
let placeholder;
|
|
28110
|
+
if (typeof inlinePictureAltText === "function")
|
|
28111
|
+
placeholder = inlinePictureAltText(iterator.run);
|
|
28112
|
+
else
|
|
28113
|
+
placeholder = inlinePictureAltText;
|
|
28114
|
+
if ((0,common.isDefined)(placeholder))
|
|
28115
|
+
result.push(placeholder);
|
|
28116
|
+
}
|
|
28117
|
+
break;
|
|
28118
|
+
case RunType.SectionRun:
|
|
28119
|
+
case RunType.ParagraphRun:
|
|
28120
|
+
case RunType.FieldCodeStartRun:
|
|
28121
|
+
case RunType.FieldCodeEndRun:
|
|
28122
|
+
case RunType.TextRun:
|
|
28123
|
+
const char = iterator.getCurrentChar();
|
|
28124
|
+
result.push(charMap[char] ?? char);
|
|
28125
|
+
break;
|
|
28126
|
+
}
|
|
28127
|
+
if (!iterator.moveToNextChar())
|
|
27902
28128
|
break;
|
|
27903
28129
|
}
|
|
27904
|
-
if (!iterator.
|
|
28130
|
+
else if (!iterator.moveToNextRun())
|
|
27905
28131
|
break;
|
|
27906
28132
|
pos = iterator.getAbsolutePosition();
|
|
28133
|
+
paragraphIterator.update(pos);
|
|
28134
|
+
fieldIterator.update(pos);
|
|
28135
|
+
}
|
|
28136
|
+
return result.join("");
|
|
28137
|
+
}
|
|
28138
|
+
isPositionVisible(pos, fieldIndexes, useFieldResult) {
|
|
28139
|
+
for (const index of fieldIndexes) {
|
|
28140
|
+
const field = this.fields[index];
|
|
28141
|
+
const isCodeView = !useFieldResult && field.showCode;
|
|
28142
|
+
const invisibleInterval = isCodeView
|
|
28143
|
+
? field.getResultIntervalWithBorders()
|
|
28144
|
+
: field.getCodeIntervalWithBorders();
|
|
28145
|
+
if (invisibleInterval.contains(pos))
|
|
28146
|
+
return false;
|
|
27907
28147
|
}
|
|
27908
|
-
return
|
|
28148
|
+
return true;
|
|
27909
28149
|
}
|
|
27910
28150
|
splitRun(position) {
|
|
27911
28151
|
var info = this.getRunAndIndexesByPosition(position);
|
|
@@ -47034,168 +47274,6 @@ class CrossExistingIterator {
|
|
|
47034
47274
|
}
|
|
47035
47275
|
}
|
|
47036
47276
|
|
|
47037
|
-
;// ./src/common/layout-formatter/box/box-wrap.ts
|
|
47038
|
-
|
|
47039
|
-
class BoxWrap {
|
|
47040
|
-
constructor(box, info) {
|
|
47041
|
-
this.box = box;
|
|
47042
|
-
this.info = info;
|
|
47043
|
-
}
|
|
47044
|
-
splitByPosition(measurer, pos) {
|
|
47045
|
-
return new BoxWrap(this.box.splitBoxByPosition(measurer, pos), this.info);
|
|
47046
|
-
}
|
|
47047
|
-
}
|
|
47048
|
-
class BoxWrapInfo {
|
|
47049
|
-
constructor(paragraphIndex, sectionIndex, tablePosition, fieldsInfo) {
|
|
47050
|
-
this.pageIndexFromWhichTableWasMoved = null;
|
|
47051
|
-
this.paragraphIndex = paragraphIndex;
|
|
47052
|
-
this.sectionIndex = sectionIndex;
|
|
47053
|
-
this.tablePosition = tablePosition;
|
|
47054
|
-
this.fieldsInfo = fieldsInfo;
|
|
47055
|
-
}
|
|
47056
|
-
equalsTablePositions(tablePos) {
|
|
47057
|
-
if (!this.tablePosition)
|
|
47058
|
-
return !tablePos;
|
|
47059
|
-
if (!tablePos || this.tablePosition.length != tablePos.length)
|
|
47060
|
-
return false;
|
|
47061
|
-
return utils_list.ListUtils.allOf2(this.tablePosition, tablePos, (a, b) => a.equals(b));
|
|
47062
|
-
}
|
|
47063
|
-
getTableNestedLevel() {
|
|
47064
|
-
return (this.tablePosition ? this.tablePosition.length : 0) - 1;
|
|
47065
|
-
}
|
|
47066
|
-
}
|
|
47067
|
-
class BoxWrapFieldInfo {
|
|
47068
|
-
constructor(field, isInCodePart) {
|
|
47069
|
-
this.field = field;
|
|
47070
|
-
this.isInCodePart = isInCodePart;
|
|
47071
|
-
}
|
|
47072
|
-
static make(field, pos) {
|
|
47073
|
-
return new BoxWrapFieldInfo(field, field.getCodeIntervalWithBorders().contains(pos));
|
|
47074
|
-
}
|
|
47075
|
-
}
|
|
47076
|
-
|
|
47077
|
-
;// ./src/common/layout-formatter/box/generator/recursive-objects-iterators.ts
|
|
47078
|
-
|
|
47079
|
-
|
|
47080
|
-
|
|
47081
|
-
|
|
47082
|
-
class RecursiveObjectsIterator {
|
|
47083
|
-
constructor(objects) {
|
|
47084
|
-
this.objects = objects;
|
|
47085
|
-
}
|
|
47086
|
-
getNextObjectPosition() {
|
|
47087
|
-
return this.nextObjPosition;
|
|
47088
|
-
}
|
|
47089
|
-
init(pos) {
|
|
47090
|
-
this.indexes = [];
|
|
47091
|
-
const index = search.SearchUtils.normedInterpolationIndexOf(this.objects, (o) => this.getStartPosition(o), pos);
|
|
47092
|
-
if (index < 0) {
|
|
47093
|
-
this.setNextInfos(0, pos);
|
|
47094
|
-
return;
|
|
47095
|
-
}
|
|
47096
|
-
let obj = this.objects[index];
|
|
47097
|
-
while (pos >= this.getEndPosition(obj)) {
|
|
47098
|
-
const parent = this.getParent(obj);
|
|
47099
|
-
if (!parent) {
|
|
47100
|
-
this.setNextInfos(index + 1, pos);
|
|
47101
|
-
return;
|
|
47102
|
-
}
|
|
47103
|
-
obj = parent;
|
|
47104
|
-
}
|
|
47105
|
-
this.collectIndexes(this.getIndex(obj), pos);
|
|
47106
|
-
}
|
|
47107
|
-
collectIndexes(index, pos) {
|
|
47108
|
-
const insertPos = this.indexes.length;
|
|
47109
|
-
let ind = this.correctBounds(index, pos);
|
|
47110
|
-
let obj = this.objects[ind];
|
|
47111
|
-
const leftBoundIndex = this.indexes.length ? utils_list.ListUtils.last(this.indexes) : -1;
|
|
47112
|
-
while (true) {
|
|
47113
|
-
this.indexes.splice(insertPos, 0, ind);
|
|
47114
|
-
const parent = this.getParent(obj);
|
|
47115
|
-
if (!parent || this.getIndex(parent) == leftBoundIndex)
|
|
47116
|
-
break;
|
|
47117
|
-
ind = this.getIndex(parent);
|
|
47118
|
-
obj = parent;
|
|
47119
|
-
}
|
|
47120
|
-
this.setNextInfos(utils_list.ListUtils.last(this.indexes) + 1, pos);
|
|
47121
|
-
}
|
|
47122
|
-
update(newPosition) {
|
|
47123
|
-
if (!this.objects.length)
|
|
47124
|
-
return false;
|
|
47125
|
-
const indexesDeleted = this.popLastIndexes(newPosition);
|
|
47126
|
-
if (newPosition >= this.nextObjPosition) {
|
|
47127
|
-
this.nextObjIndex = this.correctBounds(this.nextObjIndex, newPosition);
|
|
47128
|
-
this.collectIndexes(this.nextObjIndex, newPosition);
|
|
47129
|
-
return true;
|
|
47130
|
-
}
|
|
47131
|
-
return indexesDeleted;
|
|
47132
|
-
}
|
|
47133
|
-
setNextInfos(ind, pos) {
|
|
47134
|
-
this.nextObjIndex = ind;
|
|
47135
|
-
const obj = this.objects[ind];
|
|
47136
|
-
if (!obj || this.getStartPosition(obj) >= pos)
|
|
47137
|
-
this.nextObjPosition = obj ? this.getStartPosition(obj) : Number.MAX_VALUE;
|
|
47138
|
-
else
|
|
47139
|
-
this.setNextInfos(ind + 1, pos);
|
|
47140
|
-
}
|
|
47141
|
-
popLastIndexes(newPosition) {
|
|
47142
|
-
if (!this.indexes.length || newPosition < this.getEndPosition(this.objects[utils_list.ListUtils.last(this.indexes)]))
|
|
47143
|
-
return false;
|
|
47144
|
-
this.indexes.pop();
|
|
47145
|
-
this.popLastIndexes(newPosition);
|
|
47146
|
-
return true;
|
|
47147
|
-
}
|
|
47148
|
-
}
|
|
47149
|
-
class TableIterator extends RecursiveObjectsIterator {
|
|
47150
|
-
getStartPosition(o) {
|
|
47151
|
-
return o.getStartPosition();
|
|
47152
|
-
}
|
|
47153
|
-
getEndPosition(o) {
|
|
47154
|
-
return o.getEndPosition();
|
|
47155
|
-
}
|
|
47156
|
-
getParent(obj) {
|
|
47157
|
-
return obj.getParentTable();
|
|
47158
|
-
}
|
|
47159
|
-
getIndex(obj) {
|
|
47160
|
-
return obj.index;
|
|
47161
|
-
}
|
|
47162
|
-
correctBounds(objIndex, pos) {
|
|
47163
|
-
return Table.correctBoundTable(this.objects, objIndex, pos, (i) => ++i).index;
|
|
47164
|
-
}
|
|
47165
|
-
generateInfo(pos) {
|
|
47166
|
-
if (!this.indexes.length)
|
|
47167
|
-
return null;
|
|
47168
|
-
return utils_list.ListUtils.map(this.indexes, (ind) => {
|
|
47169
|
-
const table = this.objects[ind];
|
|
47170
|
-
const rowIndex = search.SearchUtils.normedInterpolationIndexOf(table.rows, (r) => r.getStartPosition(), pos);
|
|
47171
|
-
const cellIndex = search.SearchUtils.normedInterpolationIndexOf(table.rows[rowIndex].cells, (c) => c.startParagraphPosition.value, pos);
|
|
47172
|
-
return new TablePosition(table, rowIndex, cellIndex).init();
|
|
47173
|
-
});
|
|
47174
|
-
}
|
|
47175
|
-
}
|
|
47176
|
-
class FieldIterator extends RecursiveObjectsIterator {
|
|
47177
|
-
getStartPosition(o) {
|
|
47178
|
-
return o.getFieldStartPosition();
|
|
47179
|
-
}
|
|
47180
|
-
getEndPosition(o) {
|
|
47181
|
-
return o.getFieldEndPosition();
|
|
47182
|
-
}
|
|
47183
|
-
getParent(obj) {
|
|
47184
|
-
return obj.parent;
|
|
47185
|
-
}
|
|
47186
|
-
getIndex(obj) {
|
|
47187
|
-
return obj.index;
|
|
47188
|
-
}
|
|
47189
|
-
correctBounds(objIndex, _pos) {
|
|
47190
|
-
return objIndex;
|
|
47191
|
-
}
|
|
47192
|
-
generateInfo(pos) {
|
|
47193
|
-
if (!this.indexes.length)
|
|
47194
|
-
return null;
|
|
47195
|
-
return utils_list.ListUtils.map(this.indexes, (ind) => BoxWrapFieldInfo.make(this.objects[ind], pos));
|
|
47196
|
-
}
|
|
47197
|
-
}
|
|
47198
|
-
|
|
47199
47277
|
;// ./src/common/formats/rtf/import/model/section/general-section-info.ts
|
|
47200
47278
|
var VerticalAlignment;
|
|
47201
47279
|
(function (VerticalAlignment) {
|
|
@@ -91839,7 +91917,7 @@ class TxtExporter {
|
|
|
91839
91917
|
this.model.mainSubDocument.paragraphs.forEach((p, index) => {
|
|
91840
91918
|
if (index > 0)
|
|
91841
91919
|
text += '\r\n';
|
|
91842
|
-
text += this.model.mainSubDocument.getSimpleText(new fixed.FixedInterval(p.startLogPosition.value, p.length));
|
|
91920
|
+
text += this.model.mainSubDocument.getSimpleText(new fixed.FixedInterval(p.startLogPosition.value, p.length - 1));
|
|
91843
91921
|
});
|
|
91844
91922
|
callback(new Blob([text], { type: mime_type.PlainTextMimeType }));
|
|
91845
91923
|
});
|
|
@@ -93908,8 +93986,6 @@ class BoxAligner {
|
|
|
93908
93986
|
|
|
93909
93987
|
|
|
93910
93988
|
|
|
93911
|
-
|
|
93912
|
-
|
|
93913
93989
|
var RowFormatterResultFlag;
|
|
93914
93990
|
(function (RowFormatterResultFlag) {
|
|
93915
93991
|
RowFormatterResultFlag[RowFormatterResultFlag["None"] = 0] = "None";
|
|
@@ -93953,7 +94029,8 @@ class RowFormatterResult {
|
|
|
93953
94029
|
}
|
|
93954
94030
|
finishRow() {
|
|
93955
94031
|
this.finishLogicalRow(this.rowFormatter.rowSizesManager.rowFormattingInfo.lastNonEmptyInterval.end);
|
|
93956
|
-
const
|
|
94032
|
+
const lastBox = utils_list.ListUtils.last(this.row.boxes);
|
|
94033
|
+
const lastBoxOffset = lastBox.rowOffset;
|
|
93957
94034
|
for (let ind = 0, anc; anc = this.newAnchoredObjects[ind]; ind++) {
|
|
93958
94035
|
if (anc.rowOffset > lastBoxOffset) {
|
|
93959
94036
|
this.deleteSomeAnchorObjects(ind, anc.rowOffset);
|
|
@@ -93982,25 +94059,11 @@ class RowFormatterResult {
|
|
|
93982
94059
|
}
|
|
93983
94060
|
this.row.columnOffset = rowStartPos -
|
|
93984
94061
|
this.rowFormatter.manager.activeFormatter.layoutPosition.getLogPosition(DocumentLayoutDetailsLevel.Column);
|
|
93985
|
-
const
|
|
93986
|
-
|
|
93987
|
-
this.row.width = pictBox.width;
|
|
94062
|
+
const firstBox = this.row.boxes[0];
|
|
94063
|
+
this.row.width = Math.max(this.row.width, lastBox.right - firstBox.x);
|
|
93988
94064
|
const currState = this.rowFormatter.rowSizesManager.heightCalculator.currState;
|
|
93989
94065
|
this.row.increaseRowHeightFromSpacingBeforeAndAfter(currState.maxAscent, currState.maxDescent);
|
|
93990
94066
|
}
|
|
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
|
-
}
|
|
94001
|
-
}
|
|
94002
|
-
return pictBox;
|
|
94003
|
-
}
|
|
94004
94067
|
addBracketBox(boxType, color, x, layoutBox) {
|
|
94005
94068
|
const box = new BookmarkBox(boxType);
|
|
94006
94069
|
box.x = x - (boxType == LayoutBookmarkBoxType.EndBox ? BookmarkBox.DEFAULT_BORDER_WIDTH : 0);
|
|
@@ -94036,40 +94099,6 @@ class RowFormatterResult {
|
|
|
94036
94099
|
}
|
|
94037
94100
|
}
|
|
94038
94101
|
|
|
94039
|
-
;// ./src/common/layout-formatter/box/generator/one-dimension-itertors.ts
|
|
94040
|
-
|
|
94041
|
-
class OneDimensionItertor {
|
|
94042
|
-
constructor(objects) {
|
|
94043
|
-
this.objects = objects;
|
|
94044
|
-
}
|
|
94045
|
-
init(pos) {
|
|
94046
|
-
this.index = search.SearchUtils.normedInterpolationIndexOf(this.objects, (o) => this.getPosition(o), pos);
|
|
94047
|
-
this.updateNextObjPos();
|
|
94048
|
-
}
|
|
94049
|
-
update(newPosition) {
|
|
94050
|
-
if (newPosition < this.nextObjPosition)
|
|
94051
|
-
return false;
|
|
94052
|
-
while (this.getPosition(this.objects[++this.index]) < newPosition)
|
|
94053
|
-
;
|
|
94054
|
-
this.updateNextObjPos();
|
|
94055
|
-
return true;
|
|
94056
|
-
}
|
|
94057
|
-
updateNextObjPos() {
|
|
94058
|
-
const nextObj = this.objects[this.index + 1];
|
|
94059
|
-
this.nextObjPosition = nextObj ? this.getPosition(nextObj) : Number.MAX_VALUE;
|
|
94060
|
-
}
|
|
94061
|
-
}
|
|
94062
|
-
class ParagraphIterator extends OneDimensionItertor {
|
|
94063
|
-
getPosition(o) {
|
|
94064
|
-
return o.startLogPosition.value;
|
|
94065
|
-
}
|
|
94066
|
-
}
|
|
94067
|
-
class SectionIterator extends OneDimensionItertor {
|
|
94068
|
-
getPosition(o) {
|
|
94069
|
-
return o.startLogPosition.value;
|
|
94070
|
-
}
|
|
94071
|
-
}
|
|
94072
|
-
|
|
94073
94102
|
;// ./src/common/layout-formatter/box/generator/box-infos-generator.ts
|
|
94074
94103
|
|
|
94075
94104
|
|
|
@@ -95404,7 +95433,7 @@ class RowSizesManager {
|
|
|
95404
95433
|
}
|
|
95405
95434
|
else {
|
|
95406
95435
|
box.x = this.rowFormattingInfo.intervals[0].startOfFreeSpace;
|
|
95407
|
-
this.rowFormattingInfo.intervals[0].avaliableWidth -=
|
|
95436
|
+
this.rowFormattingInfo.intervals[0].avaliableWidth -= box.width;
|
|
95408
95437
|
this.addBoxIgnoreWidth();
|
|
95409
95438
|
}
|
|
95410
95439
|
}
|
|
@@ -95441,8 +95470,6 @@ class RowSizesManager {
|
|
|
95441
95470
|
const box = this.rowFormatter.currBox;
|
|
95442
95471
|
box.x = this.rowFormattingInfo.currInterval.startOfFreeSpace;
|
|
95443
95472
|
this.rowFormattingInfo.currInterval.avaliableWidth -= box.width;
|
|
95444
|
-
if (this.rowFormattingInfo.currInterval.avaliableWidth < 0)
|
|
95445
|
-
this.rowFormattingInfo.currInterval.avaliableWidth = 0;
|
|
95446
95473
|
this.row.boxes.push(box);
|
|
95447
95474
|
this.rowFormattingInfo.lastNonEmptyIntervalIndex = this.rowFormattingInfo.currIndex;
|
|
95448
95475
|
this.rowFormatter.setBoxInfo(true);
|
|
@@ -99216,6 +99243,7 @@ class BaseFormatter {
|
|
|
99216
99243
|
this.layoutPosition.column.height = columnHeight;
|
|
99217
99244
|
this.layoutPosition.pageArea.height = columnHeight;
|
|
99218
99245
|
this.layoutPosition.page.height = finalPageHeight;
|
|
99246
|
+
this.layoutPosition.page.width = this.calculateContentWidth(this.layoutPosition.column) + margins.horizontal;
|
|
99219
99247
|
this.layoutPosition.page.minContentHeight = minVisibleAreaHeight;
|
|
99220
99248
|
}
|
|
99221
99249
|
createdColumn.paragraphFrames = ParagraphFrameCollector.collect(this.manager.model.colorProvider, createdColumn, this.subDocument.isMain() ?
|
|
@@ -99235,6 +99263,16 @@ class BaseFormatter {
|
|
|
99235
99263
|
}
|
|
99236
99264
|
return true;
|
|
99237
99265
|
}
|
|
99266
|
+
calculateContentWidth(column) {
|
|
99267
|
+
let maxRight = 0;
|
|
99268
|
+
column.tablesInfo.forEach(tableInfo => {
|
|
99269
|
+
maxRight = Math.max(maxRight, tableInfo.right);
|
|
99270
|
+
});
|
|
99271
|
+
column.rows.forEach(row => {
|
|
99272
|
+
maxRight = Math.max(maxRight, row.right);
|
|
99273
|
+
});
|
|
99274
|
+
return maxRight;
|
|
99275
|
+
}
|
|
99238
99276
|
createNextPageArea() {
|
|
99239
99277
|
const newPageArea = new LayoutPageArea(this.subDocument);
|
|
99240
99278
|
newPageArea.setGeomerty(this.pageAreaBounds);
|
|
@@ -103641,8 +103679,14 @@ class DocumentRenderer {
|
|
|
103641
103679
|
}
|
|
103642
103680
|
}
|
|
103643
103681
|
updatePageSize(page, pageElement) {
|
|
103644
|
-
if (pageElement.offsetHeight != Math.round(page.height) || pageElement.offsetWidth != Math.round(page.width))
|
|
103682
|
+
if (pageElement.offsetHeight != Math.round(page.height) || pageElement.offsetWidth != Math.round(page.width)) {
|
|
103645
103683
|
dom.DomUtils.setStyleSize(pageElement.style, page);
|
|
103684
|
+
if (this.viewManager.innerClientProperties.viewsSettings.isSimpleView) {
|
|
103685
|
+
const paddings = this.viewManager.innerClientProperties.viewsSettings.paddings;
|
|
103686
|
+
if (page.width - paddings.right <= this.viewManager.sizes.getVisibleAreaWidth(false))
|
|
103687
|
+
pageElement.style.width = "100%";
|
|
103688
|
+
}
|
|
103689
|
+
}
|
|
103646
103690
|
}
|
|
103647
103691
|
updatePageClasses(pageElement) {
|
|
103648
103692
|
pageElement.className = RendererClassNames.PAGE;
|
|
@@ -107620,7 +107664,6 @@ class EventManager {
|
|
|
107620
107664
|
onMouseDblClick(evt) {
|
|
107621
107665
|
Log.print(LogSource.EventManager, "onMouseDoubleClick", LogObjToStrCanvas.richMouseEvent(evt));
|
|
107622
107666
|
this.mouseHandler.onMouseDoubleClick(evt);
|
|
107623
|
-
this.control.inputController.setPosition(evt.absolutePoint.x, evt.absolutePoint.y);
|
|
107624
107667
|
}
|
|
107625
107668
|
onMouseWheel(evt) {
|
|
107626
107669
|
Log.print(LogSource.EventManager, "onMouseWheel", LogObjToStrCanvas.richMouseEvent(evt));
|
|
@@ -110803,6 +110846,7 @@ class InputEditorBase {
|
|
|
110803
110846
|
createHierarchy(parent) {
|
|
110804
110847
|
this.inputElement = this.createInputElement();
|
|
110805
110848
|
this.inputElement.classList.add(INPUT_CLASS_NAME);
|
|
110849
|
+
this.inputElement.setAttribute('aria-hidden', 'true');
|
|
110806
110850
|
parent.appendChild(this.inputElement);
|
|
110807
110851
|
this.createHierarchyCore();
|
|
110808
110852
|
this.inputElement.addEventListener("load", () => this.recreateIfNeeded(), true);
|
|
@@ -111297,6 +111341,7 @@ class IFrameInputEditor extends InputEditorBase {
|
|
|
111297
111341
|
}
|
|
111298
111342
|
createInputElement() {
|
|
111299
111343
|
const element = document.createElement("IFRAME");
|
|
111344
|
+
element.setAttribute("aria-hidden", "true");
|
|
111300
111345
|
element.src = "about:blank";
|
|
111301
111346
|
if (browser.Browser.Safari) {
|
|
111302
111347
|
element.style.width = "100%";
|
|
@@ -115815,6 +115860,344 @@ class SearchManager {
|
|
|
115815
115860
|
}
|
|
115816
115861
|
}
|
|
115817
115862
|
|
|
115863
|
+
;// ./src/common/utils/interval-utils.ts
|
|
115864
|
+
|
|
115865
|
+
class IntervalUtils {
|
|
115866
|
+
static subtractIntervals(a, b) {
|
|
115867
|
+
const result = [];
|
|
115868
|
+
let bIndex = 0;
|
|
115869
|
+
for (const interval of a) {
|
|
115870
|
+
let currentFrom = interval.start;
|
|
115871
|
+
const currentTo = interval.end;
|
|
115872
|
+
for (; bIndex < b.length && b[bIndex].start < currentTo; bIndex++) {
|
|
115873
|
+
if (b[bIndex].end <= currentFrom)
|
|
115874
|
+
continue;
|
|
115875
|
+
if (b[bIndex].start > currentFrom)
|
|
115876
|
+
result.push(fixed.FixedInterval.fromPositions(currentFrom, Math.min(b[bIndex].start, currentTo)));
|
|
115877
|
+
currentFrom = Math.max(currentFrom, b[bIndex].end);
|
|
115878
|
+
if (currentFrom >= currentTo) {
|
|
115879
|
+
bIndex++;
|
|
115880
|
+
break;
|
|
115881
|
+
}
|
|
115882
|
+
}
|
|
115883
|
+
if (currentFrom < currentTo)
|
|
115884
|
+
result.push(fixed.FixedInterval.fromPositions(currentFrom, currentTo));
|
|
115885
|
+
}
|
|
115886
|
+
return result;
|
|
115887
|
+
}
|
|
115888
|
+
}
|
|
115889
|
+
|
|
115890
|
+
;// ./src/common/screen-reader-manager.ts
|
|
115891
|
+
|
|
115892
|
+
|
|
115893
|
+
|
|
115894
|
+
|
|
115895
|
+
|
|
115896
|
+
|
|
115897
|
+
|
|
115898
|
+
|
|
115899
|
+
|
|
115900
|
+
|
|
115901
|
+
|
|
115902
|
+
|
|
115903
|
+
|
|
115904
|
+
class screen_reader_manager_TableInfo {
|
|
115905
|
+
constructor(index, columnIndex, rowIndex) {
|
|
115906
|
+
this.index = index;
|
|
115907
|
+
this.columnIndex = columnIndex;
|
|
115908
|
+
this.rowIndex = rowIndex;
|
|
115909
|
+
}
|
|
115910
|
+
}
|
|
115911
|
+
class ScreenReaderManager {
|
|
115912
|
+
static { this._maxAnnouncedTextLength = 500; }
|
|
115913
|
+
static { this._spaceSeparatorRegex = /^\p{Zs}$/u; }
|
|
115914
|
+
static { this._specialCharSubstitutionTable = {
|
|
115915
|
+
[RichUtils.specialCharacters.SectionMark]: RichUtils.specialCharacters.PageBreak + "\u200C",
|
|
115916
|
+
[RichUtils.specialCharacters.PageBreak]: RichUtils.specialCharacters.PageBreak + "\u200C",
|
|
115917
|
+
}; }
|
|
115918
|
+
constructor(control, liveRegion) {
|
|
115919
|
+
this._charNames = Object.assign({
|
|
115920
|
+
[RichUtils.specialCharacters.TabMark]: getString("TabAnnouncement"),
|
|
115921
|
+
[RichUtils.specialCharacters.ParagraphMark]: getString("CarriageReturnAnnouncement"),
|
|
115922
|
+
[RichUtils.specialCharacters.LineBreak]: getString("LineBreakAnnouncement"),
|
|
115923
|
+
}, ScreenReaderManager._specialCharSubstitutionTable);
|
|
115924
|
+
this._handlers = new Map([
|
|
115925
|
+
[RichEditClientCommand.NextCharacter, (selection, lp) => this._getCurrentCharacterAnnouncement(selection, lp)],
|
|
115926
|
+
[RichEditClientCommand.PreviousCharacter, (selection, lp) => this._getCurrentCharacterAnnouncement(selection, lp)],
|
|
115927
|
+
[RichEditClientCommand.LineUp, (selection, lp) => this._getCurrentLineAnnouncement(selection, lp)],
|
|
115928
|
+
[RichEditClientCommand.LineDown, (selection, lp) => this._getCurrentLineAnnouncement(selection, lp)],
|
|
115929
|
+
[RichEditClientCommand.GoToNextWord, (selection, lp) => this._getCurrentWordAnnouncement(selection, lp)],
|
|
115930
|
+
[RichEditClientCommand.GoToPrevWord, (selection, lp) => this._getCurrentWordAnnouncement(selection, lp)],
|
|
115931
|
+
[RichEditClientCommand.GoToStartParagraph, (selection, lp) => this._getCurrentParagraphAnnouncement(selection, lp)],
|
|
115932
|
+
[RichEditClientCommand.GoToEndParagraph, (selection, lp) => this._getCurrentParagraphAnnouncement(selection, lp)],
|
|
115933
|
+
[RichEditClientCommand.NextPage, (selection, lp) => this._getCurrentLineAnnouncement(selection, lp)],
|
|
115934
|
+
[RichEditClientCommand.PreviousPage, (selection, lp) => this._getCurrentLineAnnouncement(selection, lp)],
|
|
115935
|
+
[RichEditClientCommand.GoToStartNextPage, (selection, lp) => this._getCurrentLineAnnouncement(selection, lp)],
|
|
115936
|
+
[RichEditClientCommand.GoToStartPrevPage, (selection, lp) => this._getCurrentLineAnnouncement(selection, lp)],
|
|
115937
|
+
]);
|
|
115938
|
+
this._selectionIntervals = [];
|
|
115939
|
+
this._commandId = null;
|
|
115940
|
+
this._announceTimeoutId = null;
|
|
115941
|
+
this._pageIndex = null;
|
|
115942
|
+
this._tableInfo = null;
|
|
115943
|
+
this._prevNavInHyperlink = false;
|
|
115944
|
+
this._control = control;
|
|
115945
|
+
this._liveRegion = liveRegion;
|
|
115946
|
+
}
|
|
115947
|
+
_announce(...announcment) {
|
|
115948
|
+
this._clearAnnouncement();
|
|
115949
|
+
this._liveRegion.textContent = '';
|
|
115950
|
+
this._announceTimeoutId = setTimeout(() => {
|
|
115951
|
+
const textContent = announcment.join(' ');
|
|
115952
|
+
this._liveRegion.textContent = textContent;
|
|
115953
|
+
this._announceTimeoutId = null;
|
|
115954
|
+
}, 50);
|
|
115955
|
+
}
|
|
115956
|
+
_clearAnnouncement() {
|
|
115957
|
+
if (this._announceTimeoutId !== null) {
|
|
115958
|
+
clearTimeout(this._announceTimeoutId);
|
|
115959
|
+
this._announceTimeoutId = null;
|
|
115960
|
+
}
|
|
115961
|
+
}
|
|
115962
|
+
beginExecute(commandId) {
|
|
115963
|
+
this._commandId = commandId;
|
|
115964
|
+
}
|
|
115965
|
+
endExecute() {
|
|
115966
|
+
this._commandId = null;
|
|
115967
|
+
}
|
|
115968
|
+
NotifySelectionChanged(selection) {
|
|
115969
|
+
const currentIntervals = !selection.isCollapsed() ? [...selection.intervals].sort((x, y) => x.start - y.start) : [];
|
|
115970
|
+
if (this._commandId != null) {
|
|
115971
|
+
let announcments = [];
|
|
115972
|
+
const handler = this._handlers.get(this._commandId);
|
|
115973
|
+
if (handler) {
|
|
115974
|
+
const pos = selection.intervals[0].start;
|
|
115975
|
+
const subDocument = selection.activeSubDocument;
|
|
115976
|
+
const lp = LayoutPositionCreator.createLightLayoutPosition(this._control.layout, subDocument, pos, selection.pageIndex, DocumentLayoutDetailsLevel.Box, selection.endOfLine, false);
|
|
115977
|
+
const pagePrefix = this._getPageChangePrefix(lp.pageIndex);
|
|
115978
|
+
if (pagePrefix)
|
|
115979
|
+
announcments.push(pagePrefix);
|
|
115980
|
+
const tableAnnouncements = this._processTable(selection.tableInfo);
|
|
115981
|
+
if (tableAnnouncements.length > 0)
|
|
115982
|
+
announcments.push(...tableAnnouncements);
|
|
115983
|
+
const content = handler(selection, lp);
|
|
115984
|
+
this._updateHyperlinkState(lp);
|
|
115985
|
+
if (content)
|
|
115986
|
+
announcments.push(content);
|
|
115987
|
+
}
|
|
115988
|
+
if ((!handler && currentIntervals.length > 0) || this._selectionIntervals.length > 0)
|
|
115989
|
+
announcments.push(...this._processExtendSelectionCommand(currentIntervals));
|
|
115990
|
+
if (announcments.length > 0)
|
|
115991
|
+
this._announce(...announcments);
|
|
115992
|
+
}
|
|
115993
|
+
this._selectionIntervals = currentIntervals;
|
|
115994
|
+
}
|
|
115995
|
+
_processTable(tableInfo) {
|
|
115996
|
+
const result = [];
|
|
115997
|
+
if (!tableInfo.table) {
|
|
115998
|
+
if (this._tableInfo) {
|
|
115999
|
+
result.push(getString("OutOfTableAnnouncement"));
|
|
116000
|
+
this._tableInfo = null;
|
|
116001
|
+
}
|
|
116002
|
+
return result;
|
|
116003
|
+
}
|
|
116004
|
+
const extendedData = tableInfo.extendedData;
|
|
116005
|
+
const tableCellGridInfos = tableInfo.gridInfoManager.tableCellGridInfos;
|
|
116006
|
+
const cellGridInfo = tableInfo.gridInfoManager.gridInfosByTablePosition(new TablePositionIndexes(extendedData.firstRowInfo.rowIndex, extendedData.firstCellInfo.cellIndex));
|
|
116007
|
+
const colIndex = cellGridInfo.getGridCellIndex();
|
|
116008
|
+
const rowIndex = cellGridInfo.getStartRowIndex();
|
|
116009
|
+
const currentTableInfo = new screen_reader_manager_TableInfo(tableInfo.table.index, colIndex, rowIndex);
|
|
116010
|
+
if (!this._tableInfo || this._tableInfo.index !== currentTableInfo.index)
|
|
116011
|
+
result.push(getString("InTableAnnouncement", tableCellGridInfos.length, tableCellGridInfos[0].length));
|
|
116012
|
+
if (!this._tableInfo || this._tableInfo.rowIndex !== currentTableInfo.rowIndex)
|
|
116013
|
+
result.push(getString("TableRowAnnouncement", rowIndex + 1));
|
|
116014
|
+
if (!this._tableInfo || this._tableInfo.columnIndex !== currentTableInfo.columnIndex)
|
|
116015
|
+
result.push(getString("TableColumnAnnouncement", colIndex + 1));
|
|
116016
|
+
this._tableInfo = currentTableInfo;
|
|
116017
|
+
return result;
|
|
116018
|
+
}
|
|
116019
|
+
_processExtendSelectionCommand(intervals) {
|
|
116020
|
+
let announcments = [];
|
|
116021
|
+
if (this._commandId === RichEditClientCommand.SelectAll)
|
|
116022
|
+
announcments.push(getString("SelectAllAnnouncement"), "\n");
|
|
116023
|
+
const selectedIntervals = IntervalUtils.subtractIntervals(intervals, this._selectionIntervals);
|
|
116024
|
+
if (selectedIntervals.length > 0)
|
|
116025
|
+
announcments.push(getString("TextSelectedAnnouncement", this._getTextByIntervals(selectedIntervals)));
|
|
116026
|
+
const unselectedIntervals = IntervalUtils.subtractIntervals(this._selectionIntervals, intervals);
|
|
116027
|
+
if (unselectedIntervals.length > 0)
|
|
116028
|
+
announcments.push(getString("TextUnselectedAnnouncement", this._getTextByIntervals(unselectedIntervals)));
|
|
116029
|
+
return announcments;
|
|
116030
|
+
}
|
|
116031
|
+
_getTextByIntervals(intervals) {
|
|
116032
|
+
const length = intervals.reduce((total, interval) => total + interval.length, 0);
|
|
116033
|
+
if (length > ScreenReaderManager._maxAnnouncedTextLength)
|
|
116034
|
+
return `${length} characters`;
|
|
116035
|
+
const subDocument = this._control.selection.activeSubDocument;
|
|
116036
|
+
return intervals.map(i => subDocument.getVisibleText(i, {
|
|
116037
|
+
includeNumberedListMarks: true,
|
|
116038
|
+
charMap: ScreenReaderManager._specialCharSubstitutionTable
|
|
116039
|
+
})).join('');
|
|
116040
|
+
}
|
|
116041
|
+
_updateHyperlinkState(lp) {
|
|
116042
|
+
this._prevNavInHyperlink = lp.box?.hyperlinkTip != null;
|
|
116043
|
+
}
|
|
116044
|
+
_getLinkTransitionPrefix(lp) {
|
|
116045
|
+
const inHyperlink = lp.box?.hyperlinkTip != null;
|
|
116046
|
+
const prevInHyperlink = this._prevNavInHyperlink;
|
|
116047
|
+
if (inHyperlink && !prevInHyperlink)
|
|
116048
|
+
return getString("LinkAnnouncement");
|
|
116049
|
+
if (!inHyperlink && prevInHyperlink)
|
|
116050
|
+
return getString("OutOfLinkAnnouncement");
|
|
116051
|
+
return null;
|
|
116052
|
+
}
|
|
116053
|
+
_getCurrentCharacterAnnouncement(selection, lp) {
|
|
116054
|
+
const pos = selection.intervals[0].start;
|
|
116055
|
+
const subDocument = selection.activeSubDocument;
|
|
116056
|
+
const info = subDocument.getRunAndIndexesByPosition(pos);
|
|
116057
|
+
if (info.run instanceof InlinePictureRun)
|
|
116058
|
+
return ScreenReaderManager._getInlinePictureText(info.run);
|
|
116059
|
+
const isFieldCodeStartRun = info.run.getType() === RunType.FieldCodeStartRun;
|
|
116060
|
+
const charInfo = isFieldCodeStartRun
|
|
116061
|
+
? subDocument.getRunAndIndexesByPosition(lp.getLogPosition(DocumentLayoutDetailsLevel.Box))
|
|
116062
|
+
: info;
|
|
116063
|
+
const char = charInfo.getCurrentChar();
|
|
116064
|
+
let content = this._getCharName(char);
|
|
116065
|
+
return this._buildContextualAnnouncement(content, new SubDocumentPosition(subDocument, pos), lp);
|
|
116066
|
+
}
|
|
116067
|
+
_buildContextualAnnouncement(content, pos, lp) {
|
|
116068
|
+
const paragraph = pos.subDocument.getParagraphByPosition(pos.position);
|
|
116069
|
+
const linkPrefix = this._getLinkTransitionPrefix(lp);
|
|
116070
|
+
if (linkPrefix)
|
|
116071
|
+
content = `${linkPrefix} ${content}`;
|
|
116072
|
+
const listContent = this._getListItemAnnouncement(paragraph, pos.position, lp, content);
|
|
116073
|
+
return listContent ? listContent : content;
|
|
116074
|
+
}
|
|
116075
|
+
_getCurrentLineAnnouncement(selection, lp) {
|
|
116076
|
+
const pos = selection.intervals[0].start;
|
|
116077
|
+
const subDocument = selection.activeSubDocument;
|
|
116078
|
+
const rowStart = lp.getLogPosition(DocumentLayoutDetailsLevel.Row);
|
|
116079
|
+
const rowEnd = rowStart + lp.row.getLastBoxEndPositionInRow();
|
|
116080
|
+
const intervalStart = rowStart;
|
|
116081
|
+
const text = this._getVisibleText(subDocument, fixed.FixedInterval.fromPositions(intervalStart, rowEnd));
|
|
116082
|
+
const listMarker = lp.row.numberingListBox
|
|
116083
|
+
? this._resolveListMarker(subDocument.getParagraphByPosition(pos))
|
|
116084
|
+
: null;
|
|
116085
|
+
return listMarker ? `${listMarker} ${text}`.trim() : text;
|
|
116086
|
+
}
|
|
116087
|
+
_getCurrentWordAnnouncement(selection, lp) {
|
|
116088
|
+
const pos = selection.intervals[0].start;
|
|
116089
|
+
const subDocument = selection.activeSubDocument;
|
|
116090
|
+
const wordEnd = LayoutWordBounds.getLayoutWordEndBound(this._control.layout, subDocument, selection, pos, false);
|
|
116091
|
+
let text = subDocument.getVisibleText(fixed.FixedInterval.fromPositions(pos, wordEnd), {
|
|
116092
|
+
inlinePictureAltText: ScreenReaderManager._getInlinePictureText,
|
|
116093
|
+
charMap: ScreenReaderManager._specialCharSubstitutionTable
|
|
116094
|
+
});
|
|
116095
|
+
return this._buildContextualAnnouncement(text, new SubDocumentPosition(subDocument, pos), lp);
|
|
116096
|
+
}
|
|
116097
|
+
_getCurrentParagraphAnnouncement(selection, _lp) {
|
|
116098
|
+
const pos = selection.intervals[0].start;
|
|
116099
|
+
const subDocument = selection.activeSubDocument;
|
|
116100
|
+
const paragraph = subDocument.getParagraphByPosition(pos);
|
|
116101
|
+
const text = this._getVisibleText(subDocument, fixed.FixedInterval.fromPositions(paragraph.startLogPosition.value, paragraph.getEndPosition()), true);
|
|
116102
|
+
return text;
|
|
116103
|
+
}
|
|
116104
|
+
_getHyperlinkField(fieldIndexes, _subDocument) {
|
|
116105
|
+
return fieldIndexes
|
|
116106
|
+
.map(index => _subDocument.fields[index])
|
|
116107
|
+
.find(field => field.isHyperlinkField());
|
|
116108
|
+
}
|
|
116109
|
+
_onHyperlinkFieldStart(fieldIndexes, subDocument, pos) {
|
|
116110
|
+
const field = this._getHyperlinkField(fieldIndexes, subDocument);
|
|
116111
|
+
return field && pos === field.getResultStartPosition() ? ` ${getString("LinkAnnouncement")} ` : null;
|
|
116112
|
+
}
|
|
116113
|
+
_getVisibleText(subDocument, interval, includeNumberedListMarks = false) {
|
|
116114
|
+
const result = subDocument.getVisibleText(interval, {
|
|
116115
|
+
includeNumberedListMarks,
|
|
116116
|
+
inlinePictureAltText: ScreenReaderManager._getInlinePictureText,
|
|
116117
|
+
charMap: ScreenReaderManager._specialCharSubstitutionTable,
|
|
116118
|
+
resolveAdditionalText: (fieldIndexes, pos) => this._onHyperlinkFieldStart(fieldIndexes, subDocument, pos)
|
|
116119
|
+
});
|
|
116120
|
+
return result === RichUtils.specialCharacters.ParagraphMark
|
|
116121
|
+
? getString("BlankAnnouncement")
|
|
116122
|
+
: result;
|
|
116123
|
+
}
|
|
116124
|
+
static _getInlinePictureText(run) {
|
|
116125
|
+
const nonVisualProps = run.info.nonVisualDrawingProperties;
|
|
116126
|
+
return getString("PictureAnnouncement", nonVisualProps.description ?? nonVisualProps.name ?? '');
|
|
116127
|
+
}
|
|
116128
|
+
_getPageChangePrefix(pageIndex) {
|
|
116129
|
+
if (this._pageIndex === null) {
|
|
116130
|
+
this._pageIndex = pageIndex;
|
|
116131
|
+
return '';
|
|
116132
|
+
}
|
|
116133
|
+
if (pageIndex !== this._pageIndex) {
|
|
116134
|
+
this._pageIndex = pageIndex;
|
|
116135
|
+
return getString("PageAnnouncement", pageIndex + 1);
|
|
116136
|
+
}
|
|
116137
|
+
return '';
|
|
116138
|
+
}
|
|
116139
|
+
_getCharName(char) {
|
|
116140
|
+
if (char in this._charNames)
|
|
116141
|
+
return this._charNames[char];
|
|
116142
|
+
return ScreenReaderManager._spaceSeparatorRegex.test(char) ? getString("SpaceAnnouncement") : char;
|
|
116143
|
+
}
|
|
116144
|
+
_resolveListMarker(paragraph) {
|
|
116145
|
+
const levelIndex = paragraph.getListLevelIndex();
|
|
116146
|
+
const levelType = paragraph.getNumberingList().getLevelType(levelIndex);
|
|
116147
|
+
if (levelType === NumberingType.Bullet)
|
|
116148
|
+
return getString("BulletAnnouncement");
|
|
116149
|
+
return paragraph.getNumberingListText();
|
|
116150
|
+
}
|
|
116151
|
+
_getListItemAnnouncement(paragraph, pos, lp, content) {
|
|
116152
|
+
if (!paragraph.isInList() || pos !== paragraph.startLogPosition.value || !lp?.row?.numberingListBox)
|
|
116153
|
+
return null;
|
|
116154
|
+
const level = paragraph.getListLevelIndex() + 1;
|
|
116155
|
+
const listMarker = this._resolveListMarker(paragraph);
|
|
116156
|
+
return `${getString("ListItemAnnouncement", level, listMarker)} ${content}`;
|
|
116157
|
+
}
|
|
116158
|
+
dispose() {
|
|
116159
|
+
this._clearAnnouncement();
|
|
116160
|
+
this._liveRegion.remove();
|
|
116161
|
+
}
|
|
116162
|
+
}
|
|
116163
|
+
const stringCache = {};
|
|
116164
|
+
function createFormatter(template) {
|
|
116165
|
+
const tokens = [];
|
|
116166
|
+
let lastIndex = 0;
|
|
116167
|
+
template.replace(/\{(\d+)\}/g, (match, p1, offset) => {
|
|
116168
|
+
if (lastIndex < offset)
|
|
116169
|
+
tokens.push(template.slice(lastIndex, offset));
|
|
116170
|
+
tokens.push(Number(p1));
|
|
116171
|
+
lastIndex = offset + match.length;
|
|
116172
|
+
return match;
|
|
116173
|
+
});
|
|
116174
|
+
if (lastIndex < template.length)
|
|
116175
|
+
tokens.push(template.slice(lastIndex));
|
|
116176
|
+
return (args) => {
|
|
116177
|
+
let result = '';
|
|
116178
|
+
for (const token of tokens) {
|
|
116179
|
+
if (typeof token === 'string')
|
|
116180
|
+
result += token;
|
|
116181
|
+
else {
|
|
116182
|
+
const value = args[token];
|
|
116183
|
+
result += value ?? '';
|
|
116184
|
+
}
|
|
116185
|
+
}
|
|
116186
|
+
return result;
|
|
116187
|
+
};
|
|
116188
|
+
}
|
|
116189
|
+
function getString(key, ...args) {
|
|
116190
|
+
let entry = stringCache[key];
|
|
116191
|
+
if (!entry) {
|
|
116192
|
+
const str = (0,external_DevExpress_localization_namespaceObject.formatMessage)(`AspNetCoreRichEditStringId.${key}`);
|
|
116193
|
+
entry = args.length > 0 ? createFormatter(str) : str;
|
|
116194
|
+
stringCache[key] = entry;
|
|
116195
|
+
}
|
|
116196
|
+
if (typeof entry === "function")
|
|
116197
|
+
return entry(args);
|
|
116198
|
+
return entry;
|
|
116199
|
+
}
|
|
116200
|
+
|
|
115818
116201
|
;// ./src/common/rich-edit-core.ts
|
|
115819
116202
|
|
|
115820
116203
|
|
|
@@ -115860,6 +116243,7 @@ class SearchManager {
|
|
|
115860
116243
|
|
|
115861
116244
|
|
|
115862
116245
|
|
|
116246
|
+
|
|
115863
116247
|
|
|
115864
116248
|
|
|
115865
116249
|
class RichEditCore {
|
|
@@ -115902,6 +116286,7 @@ class RichEditCore {
|
|
|
115902
116286
|
this.commandManager = this.createCommandManager();
|
|
115903
116287
|
this.shortcutManager = this.createShortcutManager();
|
|
115904
116288
|
this.searchManager = new SearchManager(this);
|
|
116289
|
+
this.screenReaderManager = new ScreenReaderManager(this, this.createAriaLiveElement(element));
|
|
115905
116290
|
this.boxVisualizerManager.initListeners(this.viewManager);
|
|
115906
116291
|
this.autoCorrectService = new AutoCorrectService(this, this.modelManager.richOptions.autoCorrect);
|
|
115907
116292
|
this.clientSideEvents = new ClientSideEvents(this.owner);
|
|
@@ -115960,6 +116345,7 @@ class RichEditCore {
|
|
|
115960
116345
|
this.selection.onChanged.add(this.boxVisualizerManager.resizeBoxVisualizer);
|
|
115961
116346
|
this.selection.onChanged.add(this.boxVisualizerManager.anchorVisualizer);
|
|
115962
116347
|
this.selection.onChanged.add(this.barHolder.contextMenu);
|
|
116348
|
+
this.selection.onChanged.add(this.screenReaderManager);
|
|
115963
116349
|
if (this.barHolder.ribbon)
|
|
115964
116350
|
this.selection.onChanged.add(this.barHolder.ribbon);
|
|
115965
116351
|
this.selection.onSearchChanged.add(this.selectionFormatter);
|
|
@@ -116009,6 +116395,7 @@ class RichEditCore {
|
|
|
116009
116395
|
this.spellChecker.dispose();
|
|
116010
116396
|
this.selection.dispose();
|
|
116011
116397
|
this.barHolder.dispose?.();
|
|
116398
|
+
this.screenReaderManager.dispose?.();
|
|
116012
116399
|
this.modelManager = null;
|
|
116013
116400
|
this.commandManager = null;
|
|
116014
116401
|
this.shortcutManager = null;
|
|
@@ -116219,6 +116606,20 @@ class RichEditCore {
|
|
|
116219
116606
|
this.layoutFormatterManager.forceFormatPage(this.layout.validPageCount + 1);
|
|
116220
116607
|
}
|
|
116221
116608
|
}
|
|
116609
|
+
createAriaLiveElement(element) {
|
|
116610
|
+
const ariaLiveElement = document.createElement("DIV");
|
|
116611
|
+
ariaLiveElement.setAttribute('aria-live', 'polite');
|
|
116612
|
+
ariaLiveElement.setAttribute('aria-atomic', 'true');
|
|
116613
|
+
ariaLiveElement.style.position = 'absolute';
|
|
116614
|
+
ariaLiveElement.style.width = '1px';
|
|
116615
|
+
ariaLiveElement.style.height = '1px';
|
|
116616
|
+
ariaLiveElement.style.overflow = 'hidden';
|
|
116617
|
+
ariaLiveElement.style.whiteSpace = 'nowrap';
|
|
116618
|
+
ariaLiveElement.style.border = '0';
|
|
116619
|
+
ariaLiveElement.style.whiteSpace = 'pre-line';
|
|
116620
|
+
element.appendChild(ariaLiveElement);
|
|
116621
|
+
return ariaLiveElement;
|
|
116622
|
+
}
|
|
116222
116623
|
createViewElement(id, element) {
|
|
116223
116624
|
const viewElement = document.createElement("DIV");
|
|
116224
116625
|
viewElement.id = id + "_View";
|
|
@@ -119568,7 +119969,11 @@ class Utils {
|
|
|
119568
119969
|
static getTrimmedMessage(id) {
|
|
119569
119970
|
const message = (0,external_DevExpress_localization_namespaceObject.formatMessage)(id);
|
|
119570
119971
|
const trimmedFromEnd = utils_string.StringUtils.trimEnd(message, ['\\.']);
|
|
119571
|
-
return trimmedFromEnd
|
|
119972
|
+
return trimmedFromEnd
|
|
119973
|
+
.replace(/&&/g, '\u0000')
|
|
119974
|
+
.replace(/(\S)&/g, "$1")
|
|
119975
|
+
.replace(/&(\S)/g, "$1")
|
|
119976
|
+
.replace(/\u0000/g, '&');
|
|
119572
119977
|
}
|
|
119573
119978
|
}
|
|
119574
119979
|
class TypeConverterFactory {
|
|
@@ -120101,9 +120506,9 @@ function loadDefaultMessages() {
|
|
|
120101
120506
|
"XtraRichEditStringId.Caption_FollowingParagraphText": "Following Paragraph ",
|
|
120102
120507
|
"XtraRichEditStringId.Caption_GroupTableAlignment": "Alignment",
|
|
120103
120508
|
"XtraRichEditStringId.Caption_GroupTableCellSize": "Cell Size",
|
|
120104
|
-
"XtraRichEditStringId.Caption_GroupTableDrawBorders": "Borders
|
|
120509
|
+
"XtraRichEditStringId.Caption_GroupTableDrawBorders": "Borders & Shadings",
|
|
120105
120510
|
"XtraRichEditStringId.Caption_GroupTableMerge": "Merge",
|
|
120106
|
-
"XtraRichEditStringId.Caption_GroupTableRowsAndColumns": "Rows
|
|
120511
|
+
"XtraRichEditStringId.Caption_GroupTableRowsAndColumns": "Rows & Columns",
|
|
120107
120512
|
"XtraRichEditStringId.Caption_GroupTableStyleOptions": "Table Style Options",
|
|
120108
120513
|
"XtraRichEditStringId.Caption_GroupTableStyles": "Table Styles",
|
|
120109
120514
|
"XtraRichEditStringId.Caption_GroupTableTable": "Table",
|
|
@@ -121601,7 +122006,7 @@ function loadDefaultMessages() {
|
|
|
121601
122006
|
"ASPxRichEditStringId.PageMailings": "Mail Merge",
|
|
121602
122007
|
"ASPxRichEditStringId.PageReview": "Review",
|
|
121603
122008
|
"ASPxRichEditStringId.PageView": "View",
|
|
121604
|
-
"ASPxRichEditStringId.PageHeaderAndFooter": "Header
|
|
122009
|
+
"ASPxRichEditStringId.PageHeaderAndFooter": "Header & Footer",
|
|
121605
122010
|
"ASPxRichEditStringId.PageTableDesign": "Design",
|
|
121606
122011
|
"ASPxRichEditStringId.PageTableLayout": "Layout",
|
|
121607
122012
|
"ASPxRichEditStringId.PageFloatingObjects": "Format",
|
|
@@ -121620,7 +122025,7 @@ function loadDefaultMessages() {
|
|
|
121620
122025
|
"ASPxRichEditStringId.GroupSymbols": "Symbols",
|
|
121621
122026
|
"ASPxRichEditStringId.GroupLinks": "Links",
|
|
121622
122027
|
"ASPxRichEditStringId.GroupPages": "Pages",
|
|
121623
|
-
"ASPxRichEditStringId.GroupHeaderFooter": "Header
|
|
122028
|
+
"ASPxRichEditStringId.GroupHeaderFooter": "Header & Footer",
|
|
121624
122029
|
"ASPxRichEditStringId.GroupHeaderFooterToolsDesignClose": "Close",
|
|
121625
122030
|
"ASPxRichEditStringId.GroupHeaderFooterToolsDesignNavigation": "Navigation",
|
|
121626
122031
|
"ASPxRichEditStringId.GroupMailMerge": "Mail Merge",
|
|
@@ -121645,9 +122050,9 @@ function loadDefaultMessages() {
|
|
|
121645
122050
|
"ASPxRichEditStringId.GroupView": "View",
|
|
121646
122051
|
"ASPxRichEditStringId.GroupTableToolsDesignTableStyleOptions": "Table Style Options",
|
|
121647
122052
|
"ASPxRichEditStringId.GroupTableToolsDesignTableStyles": "Table Styles",
|
|
121648
|
-
"ASPxRichEditStringId.GroupTableToolsDesignBordersAndShadings": "Borders
|
|
122053
|
+
"ASPxRichEditStringId.GroupTableToolsDesignBordersAndShadings": "Borders & Shadings",
|
|
121649
122054
|
"ASPxRichEditStringId.GroupTableToolsLayoutTable": "Table",
|
|
121650
|
-
"ASPxRichEditStringId.GroupTableToolsLayoutRowsAndColumns": "Rows
|
|
122055
|
+
"ASPxRichEditStringId.GroupTableToolsLayoutRowsAndColumns": "Rows & Columns",
|
|
121651
122056
|
"ASPxRichEditStringId.GroupTableToolsLayoutMerge": "Merge",
|
|
121652
122057
|
"ASPxRichEditStringId.GroupTableToolsLayoutCellSize": "Cell Size",
|
|
121653
122058
|
"ASPxRichEditStringId.GroupTableToolsLayoutAlignment": "Alignment",
|
|
@@ -122040,7 +122445,7 @@ function loadDefaultMessages() {
|
|
|
122040
122445
|
"RichEditExtensionsStringId.Caption_GroupFloatingPictureToolsArrange": "Arrange",
|
|
122041
122446
|
"RichEditExtensionsStringId.Caption_GroupFloatingPictureToolsShapeStyles": "Shape Styles",
|
|
122042
122447
|
"RichEditExtensionsStringId.Caption_GroupFont": "Font",
|
|
122043
|
-
"RichEditExtensionsStringId.Caption_GroupHeaderFooter": "Header
|
|
122448
|
+
"RichEditExtensionsStringId.Caption_GroupHeaderFooter": "Header & Footer",
|
|
122044
122449
|
"RichEditExtensionsStringId.Caption_GroupHeaderFooterToolsDesignClose": "Close",
|
|
122045
122450
|
"RichEditExtensionsStringId.Caption_GroupHeaderFooterToolsDesignNavigation": "Navigation",
|
|
122046
122451
|
"RichEditExtensionsStringId.Caption_GroupHeaderFooterToolsDesignOptions": "Options",
|
|
@@ -122080,6 +122485,24 @@ function loadDefaultMessages() {
|
|
|
122080
122485
|
"ASPxRichEditStringId.Download_RichTextFormat": "Rich Text Format (*.rtf)",
|
|
122081
122486
|
"ASPxRichEditStringId.Download_PlainText": "Plain Text (*.txt)",
|
|
122082
122487
|
"ASPxRichEditStringId.Download_Html": "Html Document (*.html, *.htm)",
|
|
122488
|
+
"AspNetCoreRichEditStringId.InTableAnnouncement": "table with {0} rows and {1} columns",
|
|
122489
|
+
"AspNetCoreRichEditStringId.OutOfTableAnnouncement": "out of table",
|
|
122490
|
+
"AspNetCoreRichEditStringId.TableRowAnnouncement": "row {0}",
|
|
122491
|
+
"AspNetCoreRichEditStringId.TableColumnAnnouncement": "column {0}",
|
|
122492
|
+
"AspNetCoreRichEditStringId.SelectAllAnnouncement": "select all",
|
|
122493
|
+
"AspNetCoreRichEditStringId.TextSelectedAnnouncement": "{0} selected",
|
|
122494
|
+
"AspNetCoreRichEditStringId.TextUnselectedAnnouncement": "{0} unselected",
|
|
122495
|
+
"AspNetCoreRichEditStringId.PictureAnnouncement": "graphic {0}",
|
|
122496
|
+
"AspNetCoreRichEditStringId.PageAnnouncement": "page {0}",
|
|
122497
|
+
"AspNetCoreRichEditStringId.SpaceAnnouncement": "space",
|
|
122498
|
+
"AspNetCoreRichEditStringId.BulletAnnouncement": "bullet",
|
|
122499
|
+
"AspNetCoreRichEditStringId.ListItemAnnouncement": "list item level {0} {1}",
|
|
122500
|
+
"AspNetCoreRichEditStringId.TabAnnouncement": "tab",
|
|
122501
|
+
"AspNetCoreRichEditStringId.CarriageReturnAnnouncement": "carriage return",
|
|
122502
|
+
"AspNetCoreRichEditStringId.LineBreakAnnouncement": "line break",
|
|
122503
|
+
"AspNetCoreRichEditStringId.LinkAnnouncement": "link",
|
|
122504
|
+
"AspNetCoreRichEditStringId.OutOfLinkAnnouncement": "out of link",
|
|
122505
|
+
"AspNetCoreRichEditStringId.BlankAnnouncement": "blank",
|
|
122083
122506
|
}
|
|
122084
122507
|
});
|
|
122085
122508
|
}
|
|
@@ -130428,7 +130851,8 @@ class ChangeViewTypeCommand extends CommandBase {
|
|
|
130428
130851
|
return true;
|
|
130429
130852
|
}
|
|
130430
130853
|
executeCore(_state, options) {
|
|
130431
|
-
|
|
130854
|
+
const currentViewType = this.control.innerClientProperties.viewsSettings.viewType;
|
|
130855
|
+
if (currentViewType != options.param) {
|
|
130432
130856
|
if (this.selection.activeSubDocument.isHeaderFooter())
|
|
130433
130857
|
this.control.commandManager.getCommand(RichEditClientCommand.ChangeActiveSubDocumentToMain)
|
|
130434
130858
|
.execute(this.control.commandManager.isPublicApiCall, new CommandOptions(this.control));
|
|
@@ -132606,6 +133030,14 @@ class SelectionCommandBase extends CommandBase {
|
|
|
132606
133030
|
selection.deprecatedSetSelection(pos, pos, false, -1, true);
|
|
132607
133031
|
return true;
|
|
132608
133032
|
}
|
|
133033
|
+
beforeExecute() {
|
|
133034
|
+
super.beforeExecute();
|
|
133035
|
+
this.control.screenReaderManager.beginExecute(this.commandId);
|
|
133036
|
+
}
|
|
133037
|
+
afterExecute() {
|
|
133038
|
+
super.afterExecute();
|
|
133039
|
+
this.control.screenReaderManager.endExecute();
|
|
133040
|
+
}
|
|
132609
133041
|
}
|
|
132610
133042
|
|
|
132611
133043
|
;// ./src/common/commands/selection/go-to-line-vertically-command-base.ts
|
|
@@ -133377,18 +133809,11 @@ class ExtendGoToNextPageCommand extends GoToNextPageCommandBase {
|
|
|
133377
133809
|
|
|
133378
133810
|
|
|
133379
133811
|
|
|
133380
|
-
|
|
133381
|
-
class GoToNextWordCommandBase extends CommandBase {
|
|
133382
|
-
getState() {
|
|
133383
|
-
return new SimpleCommandState(this.isEnabled());
|
|
133384
|
-
}
|
|
133812
|
+
class GoToNextWordCommandBase extends SelectionCommandBase {
|
|
133385
133813
|
getStartPosition() {
|
|
133386
133814
|
var selection = this.selection;
|
|
133387
133815
|
return selection.forwardDirection ? selection.lastSelectedInterval.end : selection.lastSelectedInterval.start;
|
|
133388
133816
|
}
|
|
133389
|
-
isEnabledInReadOnlyMode() {
|
|
133390
|
-
return true;
|
|
133391
|
-
}
|
|
133392
133817
|
}
|
|
133393
133818
|
class GoToNextWordCommand extends GoToNextWordCommandBase {
|
|
133394
133819
|
executeCore(_state, _options) {
|
|
@@ -133716,7 +134141,7 @@ class ExtendGoToPrevPageCommand extends GoToPrevPageCommandBase {
|
|
|
133716
134141
|
|
|
133717
134142
|
|
|
133718
134143
|
|
|
133719
|
-
class GoToPrevWordCommandBase extends
|
|
134144
|
+
class GoToPrevWordCommandBase extends SelectionCommandBase {
|
|
133720
134145
|
getState() {
|
|
133721
134146
|
return new SimpleCommandState(this.isEnabled());
|
|
133722
134147
|
}
|
|
@@ -133838,6 +134263,12 @@ class SelectAllDocumentCommand extends CommandBase {
|
|
|
133838
134263
|
this.control.focusManager.captureFocus();
|
|
133839
134264
|
return true;
|
|
133840
134265
|
}
|
|
134266
|
+
beforeExecute() {
|
|
134267
|
+
this.control.screenReaderManager.beginExecute(this.commandId);
|
|
134268
|
+
}
|
|
134269
|
+
afterExecute() {
|
|
134270
|
+
this.control.screenReaderManager.endExecute();
|
|
134271
|
+
}
|
|
133841
134272
|
isEnabledInReadOnlyMode() {
|
|
133842
134273
|
return true;
|
|
133843
134274
|
}
|
|
@@ -137830,6 +138261,12 @@ class CommandManager {
|
|
|
137830
138261
|
getCommand(key) {
|
|
137831
138262
|
return this.commands[key];
|
|
137832
138263
|
}
|
|
138264
|
+
getExecutingCommandsChainDebug() {
|
|
138265
|
+
return this.executingCommandsChain.map(command => command?.constructor?.name || 'UnknownCommand');
|
|
138266
|
+
}
|
|
138267
|
+
getLastCommandsChainDebug() {
|
|
138268
|
+
return this.lastCommandsChain.map(command => command?.constructor?.name || 'UnknownCommand');
|
|
138269
|
+
}
|
|
137833
138270
|
beforeExecuting(command) {
|
|
137834
138271
|
this.executingCommandsChain.push(command);
|
|
137835
138272
|
this.executingCommandCounter++;
|
|
@@ -141621,8 +142058,8 @@ class DialogManager {
|
|
|
141621
142058
|
;// ./node_modules/devextreme/esm/__internal/core/localization/cldr-data/first_day_of_week_data.js
|
|
141622
142059
|
/**
|
|
141623
142060
|
* DevExtreme (esm/__internal/core/localization/cldr-data/first_day_of_week_data.js)
|
|
141624
|
-
* Version:
|
|
141625
|
-
* Build date:
|
|
142061
|
+
* Version: 26.1.2-beta
|
|
142062
|
+
* Build date: Fri May 08 2026
|
|
141626
142063
|
*
|
|
141627
142064
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
141628
142065
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -141821,8 +142258,8 @@ class DialogManager {
|
|
|
141821
142258
|
;// ./node_modules/devextreme/esm/__internal/core/localization/cldr-data/parent_locales.js
|
|
141822
142259
|
/**
|
|
141823
142260
|
* DevExtreme (esm/__internal/core/localization/cldr-data/parent_locales.js)
|
|
141824
|
-
* Version:
|
|
141825
|
-
* Build date:
|
|
142261
|
+
* Version: 26.1.2-beta
|
|
142262
|
+
* Build date: Fri May 08 2026
|
|
141826
142263
|
*
|
|
141827
142264
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
141828
142265
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142007,8 +142444,8 @@ class DialogManager {
|
|
|
142007
142444
|
;// ./node_modules/devextreme/esm/__internal/core/localization/parentLocale.js
|
|
142008
142445
|
/**
|
|
142009
142446
|
* DevExtreme (esm/__internal/core/localization/parentLocale.js)
|
|
142010
|
-
* Version:
|
|
142011
|
-
* Build date:
|
|
142447
|
+
* Version: 26.1.2-beta
|
|
142448
|
+
* Build date: Fri May 08 2026
|
|
142012
142449
|
*
|
|
142013
142450
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142014
142451
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142025,8 +142462,8 @@ const PARENT_LOCALE_SEPARATOR = "-";
|
|
|
142025
142462
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_type.js
|
|
142026
142463
|
/**
|
|
142027
142464
|
* DevExtreme (esm/__internal/core/utils/m_type.js)
|
|
142028
|
-
* Version:
|
|
142029
|
-
* Build date:
|
|
142465
|
+
* Version: 26.1.2-beta
|
|
142466
|
+
* Build date: Fri May 08 2026
|
|
142030
142467
|
*
|
|
142031
142468
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142032
142469
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142128,8 +142565,8 @@ const isEvent = function(object) {
|
|
|
142128
142565
|
;// ./node_modules/devextreme/esm/core/utils/type.js
|
|
142129
142566
|
/**
|
|
142130
142567
|
* DevExtreme (esm/core/utils/type.js)
|
|
142131
|
-
* Version:
|
|
142132
|
-
* Build date:
|
|
142568
|
+
* Version: 26.1.2-beta
|
|
142569
|
+
* Build date: Fri May 08 2026
|
|
142133
142570
|
*
|
|
142134
142571
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142135
142572
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142139,8 +142576,8 @@ const isEvent = function(object) {
|
|
|
142139
142576
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_extend.js
|
|
142140
142577
|
/**
|
|
142141
142578
|
* DevExtreme (esm/__internal/core/utils/m_extend.js)
|
|
142142
|
-
* Version:
|
|
142143
|
-
* Build date:
|
|
142579
|
+
* Version: 26.1.2-beta
|
|
142580
|
+
* Build date: Fri May 08 2026
|
|
142144
142581
|
*
|
|
142145
142582
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142146
142583
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142198,8 +142635,8 @@ const extend = function(target) {
|
|
|
142198
142635
|
;// ./node_modules/devextreme/esm/core/utils/extend.js
|
|
142199
142636
|
/**
|
|
142200
142637
|
* DevExtreme (esm/core/utils/extend.js)
|
|
142201
|
-
* Version:
|
|
142202
|
-
* Build date:
|
|
142638
|
+
* Version: 26.1.2-beta
|
|
142639
|
+
* Build date: Fri May 08 2026
|
|
142203
142640
|
*
|
|
142204
142641
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142205
142642
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142209,8 +142646,8 @@ const extend = function(target) {
|
|
|
142209
142646
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_string.js
|
|
142210
142647
|
/**
|
|
142211
142648
|
* DevExtreme (esm/__internal/core/utils/m_string.js)
|
|
142212
|
-
* Version:
|
|
142213
|
-
* Build date:
|
|
142649
|
+
* Version: 26.1.2-beta
|
|
142650
|
+
* Build date: Fri May 08 2026
|
|
142214
142651
|
*
|
|
142215
142652
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142216
142653
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142285,8 +142722,8 @@ const isEmpty = function() {
|
|
|
142285
142722
|
;// ./node_modules/devextreme/esm/core/utils/string.js
|
|
142286
142723
|
/**
|
|
142287
142724
|
* DevExtreme (esm/core/utils/string.js)
|
|
142288
|
-
* Version:
|
|
142289
|
-
* Build date:
|
|
142725
|
+
* Version: 26.1.2-beta
|
|
142726
|
+
* Build date: Fri May 08 2026
|
|
142290
142727
|
*
|
|
142291
142728
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142292
142729
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142296,20 +142733,20 @@ const isEmpty = function() {
|
|
|
142296
142733
|
;// ./node_modules/devextreme/esm/core/version.js
|
|
142297
142734
|
/**
|
|
142298
142735
|
* DevExtreme (esm/core/version.js)
|
|
142299
|
-
* Version:
|
|
142300
|
-
* Build date:
|
|
142736
|
+
* Version: 26.1.2-beta
|
|
142737
|
+
* Build date: Fri May 08 2026
|
|
142301
142738
|
*
|
|
142302
142739
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142303
142740
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
142304
142741
|
*/
|
|
142305
|
-
const version = "
|
|
142306
|
-
const fullVersion = "
|
|
142742
|
+
const version = "26.1.2";
|
|
142743
|
+
const fullVersion = "26.1.2";
|
|
142307
142744
|
|
|
142308
142745
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_console.js
|
|
142309
142746
|
/**
|
|
142310
142747
|
* DevExtreme (esm/__internal/core/utils/m_console.js)
|
|
142311
|
-
* Version:
|
|
142312
|
-
* Build date:
|
|
142748
|
+
* Version: 26.1.2-beta
|
|
142749
|
+
* Build date: Fri May 08 2026
|
|
142313
142750
|
*
|
|
142314
142751
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142315
142752
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142349,8 +142786,8 @@ const debug = function() {
|
|
|
142349
142786
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_error.js
|
|
142350
142787
|
/**
|
|
142351
142788
|
* DevExtreme (esm/__internal/core/utils/m_error.js)
|
|
142352
|
-
* Version:
|
|
142353
|
-
* Build date:
|
|
142789
|
+
* Version: 26.1.2-beta
|
|
142790
|
+
* Build date: Fri May 08 2026
|
|
142354
142791
|
*
|
|
142355
142792
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142356
142793
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142421,8 +142858,8 @@ function error(baseErrors, errors) {
|
|
|
142421
142858
|
;// ./node_modules/devextreme/esm/core/utils/error.js
|
|
142422
142859
|
/**
|
|
142423
142860
|
* DevExtreme (esm/core/utils/error.js)
|
|
142424
|
-
* Version:
|
|
142425
|
-
* Build date:
|
|
142861
|
+
* Version: 26.1.2-beta
|
|
142862
|
+
* Build date: Fri May 08 2026
|
|
142426
142863
|
*
|
|
142427
142864
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142428
142865
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142433,8 +142870,8 @@ function error(baseErrors, errors) {
|
|
|
142433
142870
|
;// ./node_modules/devextreme/esm/__internal/core/m_errors.js
|
|
142434
142871
|
/**
|
|
142435
142872
|
* DevExtreme (esm/__internal/core/m_errors.js)
|
|
142436
|
-
* Version:
|
|
142437
|
-
* Build date:
|
|
142873
|
+
* Version: 26.1.2-beta
|
|
142874
|
+
* Build date: Fri May 08 2026
|
|
142438
142875
|
*
|
|
142439
142876
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142440
142877
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142494,16 +142931,14 @@ function error(baseErrors, errors) {
|
|
|
142494
142931
|
W0019: "DevExtreme: Unable to Locate a Valid License Key.\n\nDetailed license/registration related information and instructions: https://js.devexpress.com/Documentation/Licensing/.\n\nIf you are using a 30-day trial version of DevExtreme, you must uninstall all copies of DevExtreme once your 30-day trial period expires. For terms and conditions that govern use of DevExtreme UI components/libraries, please refer to the DevExtreme End User License Agreement: https://js.devexpress.com/EULAs/DevExtremeComplete.\n\nTo use DevExtreme in a commercial project, you must purchase a license. For pricing/licensing options, please visit: https://js.devexpress.com/Buy.\n\nIf you have licensing-related questions or need help with a purchase, please email clientservices@devexpress.com.\n\n",
|
|
142495
142932
|
W0020: "DevExtreme: License Key Has Expired.\n\nDetailed license/registration related information and instructions: https://js.devexpress.com/Documentation/Licensing/.\n\nA mismatch exists between the license key used and the DevExtreme version referenced in this project.\n\nTo proceed, you can:\n\u2022 use a version of DevExtreme linked to your license key: https://www.devexpress.com/ClientCenter/DownloadManager\n\u2022 renew your DevExpress Subscription: https://www.devexpress.com/buy/renew (once you renew your subscription, you will be entitled to product updates and support service as defined in the DevExtreme End User License Agreement)\n\nIf you have licensing-related questions or need help with a renewal, please email clientservices@devexpress.com.\n\n",
|
|
142496
142933
|
W0021: "DevExtreme: License Key Verification Has Failed.\n\nDetailed license/registration related information and instructions: https://js.devexpress.com/Documentation/Licensing/.\n\nTo verify your DevExtreme license, make certain to specify a correct key in the GlobalConfig. If you continue to encounter this error, please visit https://www.devexpress.com/ClientCenter/DownloadManager to obtain a valid license key.\n\nIf you have a valid license and this problem persists, please submit a support ticket via the DevExpress Support Center. We will be happy to follow-up: https://supportcenter.devexpress.com/ticket/create.\n\n",
|
|
142497
|
-
|
|
142498
|
-
W0023: "DevExtreme: the following 'devextreme' package version does not match versions of other DevExpress products used in this application:\n\n{0}\n\nInteroperability between different versions of the products listed herein cannot be guaranteed.\n\n",
|
|
142499
|
-
W0024: "DevExtreme: Use Your DevExtreme License Key - Not Your DevExpress .NET License Key\n\nInvalid/incorrect license key. You used your DevExpress .NET license key instead of your DevExtreme (React, Angular, Vue, JS) license key. Please copy your DevExtreme license key and try again. \n\nGo to https://www.devexpress.com/ClientCenter/DownloadManager (navigate to the DevExtreme Subscription section) to obtain a valid DevExtreme license key. To validate your license, specify the correct key within GlobalConfig.\n\nFor detailed license/registration information, visit https://js.devexpress.com/Documentation/Licensing/.\n\nIf you have a valid license and the issue persists, submit a support ticket via the DevExpress Support Center. We will be happy to follow-up: https://supportcenter.devexpress.com/ticket/create.\n\n"
|
|
142934
|
+
W0023: "DevExtreme: the following 'devextreme' package version does not match versions of other DevExpress products used in this application:\n\n{0}\n\nInteroperability between different versions of the products listed herein cannot be guaranteed.\n\n"
|
|
142500
142935
|
}));
|
|
142501
142936
|
|
|
142502
142937
|
;// ./node_modules/devextreme/esm/core/errors.js
|
|
142503
142938
|
/**
|
|
142504
142939
|
* DevExtreme (esm/core/errors.js)
|
|
142505
|
-
* Version:
|
|
142506
|
-
* Build date:
|
|
142940
|
+
* Version: 26.1.2-beta
|
|
142941
|
+
* Build date: Fri May 08 2026
|
|
142507
142942
|
*
|
|
142508
142943
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142509
142944
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142514,8 +142949,8 @@ function error(baseErrors, errors) {
|
|
|
142514
142949
|
;// ./node_modules/devextreme/esm/__internal/core/m_class.js
|
|
142515
142950
|
/**
|
|
142516
142951
|
* DevExtreme (esm/__internal/core/m_class.js)
|
|
142517
|
-
* Version:
|
|
142518
|
-
* Build date:
|
|
142952
|
+
* Version: 26.1.2-beta
|
|
142953
|
+
* Build date: Fri May 08 2026
|
|
142519
142954
|
*
|
|
142520
142955
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142521
142956
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142648,8 +143083,8 @@ classImpl.abstract = m_class_abstract;
|
|
|
142648
143083
|
;// ./node_modules/devextreme/esm/core/class.js
|
|
142649
143084
|
/**
|
|
142650
143085
|
* DevExtreme (esm/core/class.js)
|
|
142651
|
-
* Version:
|
|
142652
|
-
* Build date:
|
|
143086
|
+
* Version: 26.1.2-beta
|
|
143087
|
+
* Build date: Fri May 08 2026
|
|
142653
143088
|
*
|
|
142654
143089
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142655
143090
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142660,8 +143095,8 @@ classImpl.abstract = m_class_abstract;
|
|
|
142660
143095
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_iterator.js
|
|
142661
143096
|
/**
|
|
142662
143097
|
* DevExtreme (esm/__internal/core/utils/m_iterator.js)
|
|
142663
|
-
* Version:
|
|
142664
|
-
* Build date:
|
|
143098
|
+
* Version: 26.1.2-beta
|
|
143099
|
+
* Build date: Fri May 08 2026
|
|
142665
143100
|
*
|
|
142666
143101
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142667
143102
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142710,8 +143145,8 @@ const reverseEach = (array, callback) => {
|
|
|
142710
143145
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_dependency_injector.js
|
|
142711
143146
|
/**
|
|
142712
143147
|
* DevExtreme (esm/__internal/core/utils/m_dependency_injector.js)
|
|
142713
|
-
* Version:
|
|
142714
|
-
* Build date:
|
|
143148
|
+
* Version: 26.1.2-beta
|
|
143149
|
+
* Build date: Fri May 08 2026
|
|
142715
143150
|
*
|
|
142716
143151
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142717
143152
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142760,8 +143195,8 @@ function injector(object) {
|
|
|
142760
143195
|
;// ./node_modules/devextreme/esm/__internal/core/localization/core.js
|
|
142761
143196
|
/**
|
|
142762
143197
|
* DevExtreme (esm/__internal/core/localization/core.js)
|
|
142763
|
-
* Version:
|
|
142764
|
-
* Build date:
|
|
143198
|
+
* Version: 26.1.2-beta
|
|
143199
|
+
* Build date: Fri May 08 2026
|
|
142765
143200
|
*
|
|
142766
143201
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142767
143202
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142802,8 +143237,8 @@ const DEFAULT_LOCALE = "en";
|
|
|
142802
143237
|
;// ./node_modules/devextreme/esm/__internal/core/localization/default_date_names.js
|
|
142803
143238
|
/**
|
|
142804
143239
|
* DevExtreme (esm/__internal/core/localization/default_date_names.js)
|
|
142805
|
-
* Version:
|
|
142806
|
-
* Build date:
|
|
143240
|
+
* Version: 26.1.2-beta
|
|
143241
|
+
* Build date: Fri May 08 2026
|
|
142807
143242
|
*
|
|
142808
143243
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142809
143244
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -142828,327 +143263,11 @@ const cutCaptions = (captions, format) => {
|
|
|
142828
143263
|
getPeriodNames: _format => PERIODS
|
|
142829
143264
|
});
|
|
142830
143265
|
|
|
142831
|
-
;// ./node_modules/devextreme/esm/__internal/core/localization/intl/date.js
|
|
142832
|
-
/**
|
|
142833
|
-
* DevExtreme (esm/__internal/core/localization/intl/date.js)
|
|
142834
|
-
* Version: 25.2.7
|
|
142835
|
-
* Build date: Tue May 05 2026
|
|
142836
|
-
*
|
|
142837
|
-
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
142838
|
-
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
142839
|
-
*/
|
|
142840
|
-
|
|
142841
|
-
|
|
142842
|
-
const SYMBOLS_TO_REMOVE_REGEX = /[\u200E\u200F]/g;
|
|
142843
|
-
const NARROW_NO_BREAK_SPACE_REGEX = /[\u202F]/g;
|
|
142844
|
-
const formattersCache = {};
|
|
142845
|
-
const getFormatter = format => {
|
|
142846
|
-
const key = `${core.locale()}/${JSON.stringify(format)}`;
|
|
142847
|
-
if (!formattersCache[key]) {
|
|
142848
|
-
formattersCache[key] = new Intl.DateTimeFormat(core.locale(), format).format
|
|
142849
|
-
}
|
|
142850
|
-
return formattersCache[key]
|
|
142851
|
-
};
|
|
142852
|
-
|
|
142853
|
-
function formatDateTime(date, format) {
|
|
142854
|
-
return getFormatter(format)(date).replace(SYMBOLS_TO_REMOVE_REGEX, "").replace(NARROW_NO_BREAK_SPACE_REGEX, " ")
|
|
142855
|
-
}
|
|
142856
|
-
const getIntlFormatter = format => date => {
|
|
142857
|
-
if (!format.timeZoneName) {
|
|
142858
|
-
const year = date.getFullYear();
|
|
142859
|
-
const recognizableAsTwentyCentury = String(year).length < 3;
|
|
142860
|
-
const safeYearShift = 400;
|
|
142861
|
-
const temporaryYearValue = recognizableAsTwentyCentury ? year + safeYearShift : year;
|
|
142862
|
-
const utcDate = new Date(Date.UTC(temporaryYearValue, date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()));
|
|
142863
|
-
if (recognizableAsTwentyCentury) {
|
|
142864
|
-
utcDate.setFullYear(year)
|
|
142865
|
-
}
|
|
142866
|
-
const utcFormat = extend({
|
|
142867
|
-
timeZone: "UTC"
|
|
142868
|
-
}, format);
|
|
142869
|
-
return formatDateTime(utcDate, utcFormat)
|
|
142870
|
-
}
|
|
142871
|
-
return formatDateTime(date, format)
|
|
142872
|
-
};
|
|
142873
|
-
const formatNumber = number => new Intl.NumberFormat(core.locale()).format(number);
|
|
142874
|
-
const getAlternativeNumeralsMap = (() => {
|
|
142875
|
-
const numeralsMapCache = {};
|
|
142876
|
-
return locale => {
|
|
142877
|
-
if (!(locale in numeralsMapCache)) {
|
|
142878
|
-
if ("0" === formatNumber(0)) {
|
|
142879
|
-
numeralsMapCache[locale] = false;
|
|
142880
|
-
return false
|
|
142881
|
-
}
|
|
142882
|
-
numeralsMapCache[locale] = {};
|
|
142883
|
-
for (let i = 0; i < 10; ++i) {
|
|
142884
|
-
numeralsMapCache[locale][formatNumber(i)] = i
|
|
142885
|
-
}
|
|
142886
|
-
}
|
|
142887
|
-
return numeralsMapCache[locale]
|
|
142888
|
-
}
|
|
142889
|
-
})();
|
|
142890
|
-
const normalizeNumerals = dateString => {
|
|
142891
|
-
const alternativeNumeralsMap = getAlternativeNumeralsMap(core.locale());
|
|
142892
|
-
if (!alternativeNumeralsMap) {
|
|
142893
|
-
return dateString
|
|
142894
|
-
}
|
|
142895
|
-
return dateString.split("").map(sign => sign in alternativeNumeralsMap ? String(alternativeNumeralsMap[sign]) : sign).join("")
|
|
142896
|
-
};
|
|
142897
|
-
const removeLeadingZeroes = str => str.replace(/(\D)0+(\d)/g, "$1$2");
|
|
142898
|
-
const dateStringEquals = (actual, expected) => removeLeadingZeroes(actual) === removeLeadingZeroes(expected);
|
|
142899
|
-
const normalizeMonth = text => text.replace("d\u2019", "de ");
|
|
142900
|
-
const intlFormats = {
|
|
142901
|
-
day: {
|
|
142902
|
-
day: "numeric"
|
|
142903
|
-
},
|
|
142904
|
-
date: {
|
|
142905
|
-
year: "numeric",
|
|
142906
|
-
month: "long",
|
|
142907
|
-
day: "numeric"
|
|
142908
|
-
},
|
|
142909
|
-
dayofweek: {
|
|
142910
|
-
weekday: "long"
|
|
142911
|
-
},
|
|
142912
|
-
longdate: {
|
|
142913
|
-
weekday: "long",
|
|
142914
|
-
year: "numeric",
|
|
142915
|
-
month: "long",
|
|
142916
|
-
day: "numeric"
|
|
142917
|
-
},
|
|
142918
|
-
longdatelongtime: {
|
|
142919
|
-
weekday: "long",
|
|
142920
|
-
year: "numeric",
|
|
142921
|
-
month: "long",
|
|
142922
|
-
day: "numeric",
|
|
142923
|
-
hour: "numeric",
|
|
142924
|
-
minute: "numeric",
|
|
142925
|
-
second: "numeric"
|
|
142926
|
-
},
|
|
142927
|
-
longtime: {
|
|
142928
|
-
hour: "numeric",
|
|
142929
|
-
minute: "numeric",
|
|
142930
|
-
second: "numeric"
|
|
142931
|
-
},
|
|
142932
|
-
month: {
|
|
142933
|
-
month: "long"
|
|
142934
|
-
},
|
|
142935
|
-
monthandday: {
|
|
142936
|
-
month: "long",
|
|
142937
|
-
day: "numeric"
|
|
142938
|
-
},
|
|
142939
|
-
monthandyear: {
|
|
142940
|
-
year: "numeric",
|
|
142941
|
-
month: "long"
|
|
142942
|
-
},
|
|
142943
|
-
shortdate: {},
|
|
142944
|
-
shorttime: {
|
|
142945
|
-
hour: "numeric",
|
|
142946
|
-
minute: "numeric"
|
|
142947
|
-
},
|
|
142948
|
-
shortyear: {
|
|
142949
|
-
year: "2-digit"
|
|
142950
|
-
},
|
|
142951
|
-
year: {
|
|
142952
|
-
year: "numeric"
|
|
142953
|
-
}
|
|
142954
|
-
};
|
|
142955
|
-
Object.defineProperty(intlFormats, "shortdateshorttime", {
|
|
142956
|
-
get() {
|
|
142957
|
-
const defaultOptions = Intl.DateTimeFormat(core.locale()).resolvedOptions();
|
|
142958
|
-
return {
|
|
142959
|
-
year: defaultOptions.year,
|
|
142960
|
-
month: defaultOptions.month,
|
|
142961
|
-
day: defaultOptions.day,
|
|
142962
|
-
hour: "numeric",
|
|
142963
|
-
minute: "numeric"
|
|
142964
|
-
}
|
|
142965
|
-
}
|
|
142966
|
-
});
|
|
142967
|
-
const getIntlFormat = format => "string" === typeof format && intlFormats[format.toLowerCase()];
|
|
142968
|
-
const monthNameStrategies = {
|
|
142969
|
-
standalone(monthIndex, monthFormat) {
|
|
142970
|
-
const date = new Date(1999, monthIndex, 13, 1);
|
|
142971
|
-
return getIntlFormatter({
|
|
142972
|
-
month: monthFormat
|
|
142973
|
-
})(date)
|
|
142974
|
-
},
|
|
142975
|
-
format(monthIndex, monthFormat) {
|
|
142976
|
-
const date = new Date(0, monthIndex, 13, 1);
|
|
142977
|
-
const dateString = normalizeMonth(getIntlFormatter({
|
|
142978
|
-
day: "numeric",
|
|
142979
|
-
month: monthFormat
|
|
142980
|
-
})(date));
|
|
142981
|
-
const parts = dateString.split(" ").filter(part => !part.includes("13"));
|
|
142982
|
-
if (1 === parts.length) {
|
|
142983
|
-
return parts[0]
|
|
142984
|
-
}
|
|
142985
|
-
if (2 === parts.length) {
|
|
142986
|
-
return parts[0].length > parts[1].length ? parts[0] : parts[1]
|
|
142987
|
-
}
|
|
142988
|
-
return monthNameStrategies.standalone(monthIndex, monthFormat)
|
|
142989
|
-
}
|
|
142990
|
-
};
|
|
142991
|
-
/* harmony default export */ var date = ({
|
|
142992
|
-
engine: () => "intl",
|
|
142993
|
-
getMonthNames(format, type) {
|
|
142994
|
-
const monthFormat = {
|
|
142995
|
-
wide: "long",
|
|
142996
|
-
abbreviated: "short",
|
|
142997
|
-
narrow: "narrow"
|
|
142998
|
-
} [format || "wide"];
|
|
142999
|
-
type = "format" === type ? type : "standalone";
|
|
143000
|
-
return Array.from({
|
|
143001
|
-
length: 12
|
|
143002
|
-
}, (_, monthIndex) => monthNameStrategies[type](monthIndex, monthFormat))
|
|
143003
|
-
},
|
|
143004
|
-
getDayNames: format => (format => Array.from({
|
|
143005
|
-
length: 7
|
|
143006
|
-
}, (_, dayIndex) => getIntlFormatter({
|
|
143007
|
-
weekday: format
|
|
143008
|
-
})(new Date(0, 0, dayIndex))))({
|
|
143009
|
-
wide: "long",
|
|
143010
|
-
abbreviated: "short",
|
|
143011
|
-
short: "narrow",
|
|
143012
|
-
narrow: "narrow"
|
|
143013
|
-
} [format || "wide"]),
|
|
143014
|
-
getPeriodNames() {
|
|
143015
|
-
const hour12Formatter = getIntlFormatter({
|
|
143016
|
-
hour: "numeric",
|
|
143017
|
-
hour12: true
|
|
143018
|
-
});
|
|
143019
|
-
return [1, 13].map(hours => {
|
|
143020
|
-
const hourNumberText = formatNumber(1);
|
|
143021
|
-
const timeParts = hour12Formatter(new Date(0, 0, 1, hours)).split(hourNumberText);
|
|
143022
|
-
if (2 !== timeParts.length) {
|
|
143023
|
-
return ""
|
|
143024
|
-
}
|
|
143025
|
-
const biggerPart = timeParts[0].length > timeParts[1].length ? timeParts[0] : timeParts[1];
|
|
143026
|
-
return biggerPart.trim()
|
|
143027
|
-
})
|
|
143028
|
-
},
|
|
143029
|
-
format(date, format) {
|
|
143030
|
-
if (!date) {
|
|
143031
|
-
return
|
|
143032
|
-
}
|
|
143033
|
-
if (!format) {
|
|
143034
|
-
return date
|
|
143035
|
-
}
|
|
143036
|
-
if ("function" !== typeof format && !format.formatter) {
|
|
143037
|
-
format = format.type ?? format
|
|
143038
|
-
}
|
|
143039
|
-
const intlFormat = getIntlFormat(format);
|
|
143040
|
-
if (intlFormat) {
|
|
143041
|
-
return getIntlFormatter(intlFormat)(date)
|
|
143042
|
-
}
|
|
143043
|
-
const formatType = typeof format;
|
|
143044
|
-
if (format.formatter || "function" === formatType || "string" === formatType) {
|
|
143045
|
-
return this.callBase.apply(this, [date, format])
|
|
143046
|
-
}
|
|
143047
|
-
return getIntlFormatter(format)(date)
|
|
143048
|
-
},
|
|
143049
|
-
parse(dateString, format) {
|
|
143050
|
-
let formatter;
|
|
143051
|
-
if (format && !format.parser && "string" === typeof dateString) {
|
|
143052
|
-
dateString = normalizeMonth(dateString);
|
|
143053
|
-
formatter = date => normalizeMonth(this.format(date, format))
|
|
143054
|
-
}
|
|
143055
|
-
return this.callBase(dateString, formatter ?? format)
|
|
143056
|
-
},
|
|
143057
|
-
_parseDateBySimpleFormat(dateString, format) {
|
|
143058
|
-
dateString = normalizeNumerals(dateString);
|
|
143059
|
-
const formatParts = this.getFormatParts(format);
|
|
143060
|
-
const dateParts = dateString.split(/\D+/).filter(part => part.length > 0);
|
|
143061
|
-
if (formatParts.length !== dateParts.length) {
|
|
143062
|
-
return
|
|
143063
|
-
}
|
|
143064
|
-
const dateArgs = this._generateDateArgs(formatParts, dateParts);
|
|
143065
|
-
const constructValidDate = ampmShift => {
|
|
143066
|
-
const parsedDate = ((dateArgs, ampmShift) => {
|
|
143067
|
-
const hoursShift = ampmShift ? 12 : 0;
|
|
143068
|
-
return new Date(dateArgs.year, dateArgs.month, dateArgs.day, (dateArgs.hours + hoursShift) % 24, dateArgs.minutes, dateArgs.seconds)
|
|
143069
|
-
})(dateArgs, ampmShift);
|
|
143070
|
-
if (dateStringEquals(normalizeNumerals(this.format(parsedDate, format)), dateString)) {
|
|
143071
|
-
return parsedDate
|
|
143072
|
-
}
|
|
143073
|
-
return
|
|
143074
|
-
};
|
|
143075
|
-
return constructValidDate(false) ?? constructValidDate(true)
|
|
143076
|
-
},
|
|
143077
|
-
_generateDateArgs(formatParts, dateParts) {
|
|
143078
|
-
const currentDate = new Date;
|
|
143079
|
-
const dateArgs = {
|
|
143080
|
-
year: currentDate.getFullYear(),
|
|
143081
|
-
month: currentDate.getMonth(),
|
|
143082
|
-
day: currentDate.getDate(),
|
|
143083
|
-
hours: 0,
|
|
143084
|
-
minutes: 0,
|
|
143085
|
-
seconds: 0
|
|
143086
|
-
};
|
|
143087
|
-
formatParts.forEach((formatPart, index) => {
|
|
143088
|
-
const datePart = dateParts[index];
|
|
143089
|
-
let parsed = parseInt(datePart, 10);
|
|
143090
|
-
if ("month" === formatPart) {
|
|
143091
|
-
parsed -= 1
|
|
143092
|
-
}
|
|
143093
|
-
dateArgs[formatPart] = parsed
|
|
143094
|
-
});
|
|
143095
|
-
return dateArgs
|
|
143096
|
-
},
|
|
143097
|
-
formatUsesMonthName(format) {
|
|
143098
|
-
if ("object" === typeof format && !(format.type || format.format)) {
|
|
143099
|
-
return "long" === format.month
|
|
143100
|
-
}
|
|
143101
|
-
return this.callBase.apply(this, [format])
|
|
143102
|
-
},
|
|
143103
|
-
formatUsesDayName(format) {
|
|
143104
|
-
if ("object" === typeof format && !(format.type || format.format)) {
|
|
143105
|
-
return "long" === format.weekday
|
|
143106
|
-
}
|
|
143107
|
-
return this.callBase.apply(this, [format])
|
|
143108
|
-
},
|
|
143109
|
-
getTimeSeparator: () => normalizeNumerals(formatDateTime(new Date(2001, 1, 1, 11, 11), {
|
|
143110
|
-
hour: "numeric",
|
|
143111
|
-
minute: "numeric",
|
|
143112
|
-
hour12: false
|
|
143113
|
-
})).replace(/\d/g, ""),
|
|
143114
|
-
getFormatParts(format) {
|
|
143115
|
-
if ("string" === typeof format) {
|
|
143116
|
-
return this.callBase(format)
|
|
143117
|
-
}
|
|
143118
|
-
const intlFormat = extend({}, intlFormats[format.toLowerCase()]);
|
|
143119
|
-
const date = new Date(2001, 2, 4, 5, 6, 7);
|
|
143120
|
-
let formattedDate = getIntlFormatter(intlFormat)(date);
|
|
143121
|
-
formattedDate = normalizeNumerals(formattedDate);
|
|
143122
|
-
return [{
|
|
143123
|
-
name: "year",
|
|
143124
|
-
value: 1
|
|
143125
|
-
}, {
|
|
143126
|
-
name: "month",
|
|
143127
|
-
value: 3
|
|
143128
|
-
}, {
|
|
143129
|
-
name: "day",
|
|
143130
|
-
value: 4
|
|
143131
|
-
}, {
|
|
143132
|
-
name: "hours",
|
|
143133
|
-
value: 5
|
|
143134
|
-
}, {
|
|
143135
|
-
name: "minutes",
|
|
143136
|
-
value: 6
|
|
143137
|
-
}, {
|
|
143138
|
-
name: "seconds",
|
|
143139
|
-
value: 7
|
|
143140
|
-
}].map(part => ({
|
|
143141
|
-
name: part.name,
|
|
143142
|
-
index: formattedDate.indexOf(`${part.value}`)
|
|
143143
|
-
})).filter(part => part.index > -1).sort((a, b) => a.index - b.index).map(part => part.name)
|
|
143144
|
-
}
|
|
143145
|
-
});
|
|
143146
|
-
|
|
143147
143266
|
;// ./node_modules/devextreme/esm/__internal/core/m_config.js
|
|
143148
143267
|
/**
|
|
143149
143268
|
* DevExtreme (esm/__internal/core/m_config.js)
|
|
143150
|
-
* Version:
|
|
143151
|
-
* Build date:
|
|
143269
|
+
* Version: 26.1.2-beta
|
|
143270
|
+
* Build date: Fri May 08 2026
|
|
143152
143271
|
*
|
|
143153
143272
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143154
143273
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143171,6 +143290,11 @@ const config = {
|
|
|
143171
143290
|
useLegacyVisibleIndex: false,
|
|
143172
143291
|
versionAssertions: [],
|
|
143173
143292
|
copyStylesToShadowDom: true,
|
|
143293
|
+
dateFormat: void 0,
|
|
143294
|
+
timeFormat: void 0,
|
|
143295
|
+
dateTimeFormat: void 0,
|
|
143296
|
+
numberFormat: void 0,
|
|
143297
|
+
dateTimeFormatPresets: void 0,
|
|
143174
143298
|
licenseKey: "/* ___$$$$$___devextreme___lcp___placeholder____$$$$$ */",
|
|
143175
143299
|
floatingActionButtonConfig: {
|
|
143176
143300
|
icon: "add",
|
|
@@ -143226,8 +143350,8 @@ if ("undefined" !== typeof DevExpress && DevExpress.config) {
|
|
|
143226
143350
|
;// ./node_modules/devextreme/esm/common/config.js
|
|
143227
143351
|
/**
|
|
143228
143352
|
* DevExtreme (esm/common/config.js)
|
|
143229
|
-
* Version:
|
|
143230
|
-
* Build date:
|
|
143353
|
+
* Version: 26.1.2-beta
|
|
143354
|
+
* Build date: Fri May 08 2026
|
|
143231
143355
|
*
|
|
143232
143356
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143233
143357
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143238,8 +143362,8 @@ if ("undefined" !== typeof DevExpress && DevExpress.config) {
|
|
|
143238
143362
|
;// ./node_modules/devextreme/esm/__internal/core/m_guid.js
|
|
143239
143363
|
/**
|
|
143240
143364
|
* DevExtreme (esm/__internal/core/m_guid.js)
|
|
143241
|
-
* Version:
|
|
143242
|
-
* Build date:
|
|
143365
|
+
* Version: 26.1.2-beta
|
|
143366
|
+
* Build date: Fri May 08 2026
|
|
143243
143367
|
*
|
|
143244
143368
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143245
143369
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143281,8 +143405,8 @@ const Guid = core_class.inherit({
|
|
|
143281
143405
|
;// ./node_modules/devextreme/esm/common/guid.js
|
|
143282
143406
|
/**
|
|
143283
143407
|
* DevExtreme (esm/common/guid.js)
|
|
143284
|
-
* Version:
|
|
143285
|
-
* Build date:
|
|
143408
|
+
* Version: 26.1.2-beta
|
|
143409
|
+
* Build date: Fri May 08 2026
|
|
143286
143410
|
*
|
|
143287
143411
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143288
143412
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143295,8 +143419,8 @@ const Guid = core_class.inherit({
|
|
|
143295
143419
|
/* unused harmony import specifier */ var m_template_engine_registry_isString;
|
|
143296
143420
|
/**
|
|
143297
143421
|
* DevExtreme (esm/__internal/core/templates/m_template_engine_registry.js)
|
|
143298
|
-
* Version:
|
|
143299
|
-
* Build date:
|
|
143422
|
+
* Version: 26.1.2-beta
|
|
143423
|
+
* Build date: Fri May 08 2026
|
|
143300
143424
|
*
|
|
143301
143425
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143302
143426
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143325,8 +143449,8 @@ function getCurrentTemplateEngine() {
|
|
|
143325
143449
|
;// ./node_modules/devextreme/esm/core/templates/template_engine_registry.js
|
|
143326
143450
|
/**
|
|
143327
143451
|
* DevExtreme (esm/core/templates/template_engine_registry.js)
|
|
143328
|
-
* Version:
|
|
143329
|
-
* Build date:
|
|
143452
|
+
* Version: 26.1.2-beta
|
|
143453
|
+
* Build date: Fri May 08 2026
|
|
143330
143454
|
*
|
|
143331
143455
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143332
143456
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143336,8 +143460,8 @@ function getCurrentTemplateEngine() {
|
|
|
143336
143460
|
;// ./node_modules/devextreme/esm/__internal/core/m_set_template_engine.js
|
|
143337
143461
|
/**
|
|
143338
143462
|
* DevExtreme (esm/__internal/core/m_set_template_engine.js)
|
|
143339
|
-
* Version:
|
|
143340
|
-
* Build date:
|
|
143463
|
+
* Version: 26.1.2-beta
|
|
143464
|
+
* Build date: Fri May 08 2026
|
|
143341
143465
|
*
|
|
143342
143466
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143343
143467
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143348,8 +143472,8 @@ function getCurrentTemplateEngine() {
|
|
|
143348
143472
|
/* unused harmony import specifier */ var set_template_engine_setTemplateEngine;
|
|
143349
143473
|
/**
|
|
143350
143474
|
* DevExtreme (esm/common/set_template_engine.js)
|
|
143351
|
-
* Version:
|
|
143352
|
-
* Build date:
|
|
143475
|
+
* Version: 26.1.2-beta
|
|
143476
|
+
* Build date: Fri May 08 2026
|
|
143353
143477
|
*
|
|
143354
143478
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143355
143479
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143360,8 +143484,8 @@ function getCurrentTemplateEngine() {
|
|
|
143360
143484
|
;// ./node_modules/devextreme/esm/common.js
|
|
143361
143485
|
/**
|
|
143362
143486
|
* DevExtreme (esm/common.js)
|
|
143363
|
-
* Version:
|
|
143364
|
-
* Build date:
|
|
143487
|
+
* Version: 26.1.2-beta
|
|
143488
|
+
* Build date: Fri May 08 2026
|
|
143365
143489
|
*
|
|
143366
143490
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143367
143491
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143374,8 +143498,8 @@ function getCurrentTemplateEngine() {
|
|
|
143374
143498
|
;// ./node_modules/devextreme/esm/core/config.js
|
|
143375
143499
|
/**
|
|
143376
143500
|
* DevExtreme (esm/core/config.js)
|
|
143377
|
-
* Version:
|
|
143378
|
-
* Build date:
|
|
143501
|
+
* Version: 26.1.2-beta
|
|
143502
|
+
* Build date: Fri May 08 2026
|
|
143379
143503
|
*
|
|
143380
143504
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143381
143505
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143383,11 +143507,426 @@ function getCurrentTemplateEngine() {
|
|
|
143383
143507
|
|
|
143384
143508
|
/* harmony default export */ var core_config = (common_config);
|
|
143385
143509
|
|
|
143510
|
+
;// ./node_modules/devextreme/esm/common/core/localization/core.js
|
|
143511
|
+
/**
|
|
143512
|
+
* DevExtreme (esm/common/core/localization/core.js)
|
|
143513
|
+
* Version: 26.1.2-beta
|
|
143514
|
+
* Build date: Fri May 08 2026
|
|
143515
|
+
*
|
|
143516
|
+
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143517
|
+
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
143518
|
+
*/
|
|
143519
|
+
|
|
143520
|
+
/* harmony default export */ var localization_core = (core);
|
|
143521
|
+
|
|
143522
|
+
;// ./node_modules/devextreme/esm/__internal/core/m_global_format_config.js
|
|
143523
|
+
/**
|
|
143524
|
+
* DevExtreme (esm/__internal/core/m_global_format_config.js)
|
|
143525
|
+
* Version: 26.1.2-beta
|
|
143526
|
+
* Build date: Fri May 08 2026
|
|
143527
|
+
*
|
|
143528
|
+
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143529
|
+
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
143530
|
+
*/
|
|
143531
|
+
|
|
143532
|
+
|
|
143533
|
+
|
|
143534
|
+
|
|
143535
|
+
|
|
143536
|
+
const hasOwn = Object.prototype.hasOwnProperty;
|
|
143537
|
+
const resolveByLocaleMap = localeMap => {
|
|
143538
|
+
let currentLocale = localization_core.locale();
|
|
143539
|
+
while (currentLocale) {
|
|
143540
|
+
if (hasOwn.call(localeMap, currentLocale) && void 0 !== localeMap[currentLocale]) {
|
|
143541
|
+
return localeMap[currentLocale]
|
|
143542
|
+
}
|
|
143543
|
+
currentLocale = parentLocale(parent_locales, currentLocale)
|
|
143544
|
+
}
|
|
143545
|
+
if (hasOwn.call(localeMap, "default")) {
|
|
143546
|
+
return localeMap.default
|
|
143547
|
+
}
|
|
143548
|
+
return
|
|
143549
|
+
};
|
|
143550
|
+
const resolveConfigValue = value => {
|
|
143551
|
+
if (void 0 === value) {
|
|
143552
|
+
return
|
|
143553
|
+
}
|
|
143554
|
+
if (isString(value) || isFunction(value)) {
|
|
143555
|
+
return value
|
|
143556
|
+
}
|
|
143557
|
+
if (isPlainObject(value)) {
|
|
143558
|
+
return resolveByLocaleMap(value)
|
|
143559
|
+
}
|
|
143560
|
+
return
|
|
143561
|
+
};
|
|
143562
|
+
const resolveGlobalFormat = optionName => {
|
|
143563
|
+
const optionValue = core_config()[optionName];
|
|
143564
|
+
return resolveConfigValue(optionValue)
|
|
143565
|
+
};
|
|
143566
|
+
const getGlobalFormatByDataType = dataType => {
|
|
143567
|
+
switch (dataType) {
|
|
143568
|
+
case "date":
|
|
143569
|
+
return resolveGlobalFormat("dateFormat");
|
|
143570
|
+
case "datetime":
|
|
143571
|
+
return resolveGlobalFormat("dateTimeFormat");
|
|
143572
|
+
case "time":
|
|
143573
|
+
return resolveGlobalFormat("timeFormat");
|
|
143574
|
+
case "number":
|
|
143575
|
+
return resolveGlobalFormat("numberFormat");
|
|
143576
|
+
default:
|
|
143577
|
+
return
|
|
143578
|
+
}
|
|
143579
|
+
};
|
|
143580
|
+
const resolvePresetOverride = presetName => {
|
|
143581
|
+
const presets = core_config().dateTimeFormatPresets;
|
|
143582
|
+
if (!presets || !isPlainObject(presets)) {
|
|
143583
|
+
return
|
|
143584
|
+
}
|
|
143585
|
+
const lowerName = presetName.toLowerCase();
|
|
143586
|
+
const keys = Object.keys(presets);
|
|
143587
|
+
for (let i = 0; i < keys.length; i++) {
|
|
143588
|
+
if (keys[i].toLowerCase() === lowerName) {
|
|
143589
|
+
return resolveConfigValue(presets[keys[i]])
|
|
143590
|
+
}
|
|
143591
|
+
}
|
|
143592
|
+
return
|
|
143593
|
+
};
|
|
143594
|
+
/* harmony default export */ var m_global_format_config = ({
|
|
143595
|
+
getGlobalFormatByDataType: getGlobalFormatByDataType,
|
|
143596
|
+
resolvePresetOverride: resolvePresetOverride
|
|
143597
|
+
});
|
|
143598
|
+
|
|
143599
|
+
;// ./node_modules/devextreme/esm/__internal/core/localization/intl/date.js
|
|
143600
|
+
/**
|
|
143601
|
+
* DevExtreme (esm/__internal/core/localization/intl/date.js)
|
|
143602
|
+
* Version: 26.1.2-beta
|
|
143603
|
+
* Build date: Fri May 08 2026
|
|
143604
|
+
*
|
|
143605
|
+
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143606
|
+
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
143607
|
+
*/
|
|
143608
|
+
|
|
143609
|
+
|
|
143610
|
+
|
|
143611
|
+
const SYMBOLS_TO_REMOVE_REGEX = /[\u200E\u200F]/g;
|
|
143612
|
+
const NARROW_NO_BREAK_SPACE_REGEX = /[\u202F]/g;
|
|
143613
|
+
const formattersCache = {};
|
|
143614
|
+
const getFormatter = format => {
|
|
143615
|
+
const key = `${core.locale()}/${JSON.stringify(format)}`;
|
|
143616
|
+
if (!formattersCache[key]) {
|
|
143617
|
+
formattersCache[key] = new Intl.DateTimeFormat(core.locale(), format).format
|
|
143618
|
+
}
|
|
143619
|
+
return formattersCache[key]
|
|
143620
|
+
};
|
|
143621
|
+
|
|
143622
|
+
function formatDateTime(date, format) {
|
|
143623
|
+
return getFormatter(format)(date).replace(SYMBOLS_TO_REMOVE_REGEX, "").replace(NARROW_NO_BREAK_SPACE_REGEX, " ")
|
|
143624
|
+
}
|
|
143625
|
+
const getIntlFormatter = format => date => {
|
|
143626
|
+
if (!format.timeZoneName) {
|
|
143627
|
+
const year = date.getFullYear();
|
|
143628
|
+
const recognizableAsTwentyCentury = String(year).length < 3;
|
|
143629
|
+
const safeYearShift = 400;
|
|
143630
|
+
const temporaryYearValue = recognizableAsTwentyCentury ? year + safeYearShift : year;
|
|
143631
|
+
const utcDate = new Date(Date.UTC(temporaryYearValue, date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()));
|
|
143632
|
+
if (recognizableAsTwentyCentury) {
|
|
143633
|
+
utcDate.setFullYear(year)
|
|
143634
|
+
}
|
|
143635
|
+
const utcFormat = extend({
|
|
143636
|
+
timeZone: "UTC"
|
|
143637
|
+
}, format);
|
|
143638
|
+
return formatDateTime(utcDate, utcFormat)
|
|
143639
|
+
}
|
|
143640
|
+
return formatDateTime(date, format)
|
|
143641
|
+
};
|
|
143642
|
+
const formatNumber = number => new Intl.NumberFormat(core.locale()).format(number);
|
|
143643
|
+
const getAlternativeNumeralsMap = (() => {
|
|
143644
|
+
const numeralsMapCache = {};
|
|
143645
|
+
return locale => {
|
|
143646
|
+
if (!(locale in numeralsMapCache)) {
|
|
143647
|
+
if ("0" === formatNumber(0)) {
|
|
143648
|
+
numeralsMapCache[locale] = false;
|
|
143649
|
+
return false
|
|
143650
|
+
}
|
|
143651
|
+
numeralsMapCache[locale] = {};
|
|
143652
|
+
for (let i = 0; i < 10; ++i) {
|
|
143653
|
+
numeralsMapCache[locale][formatNumber(i)] = i
|
|
143654
|
+
}
|
|
143655
|
+
}
|
|
143656
|
+
return numeralsMapCache[locale]
|
|
143657
|
+
}
|
|
143658
|
+
})();
|
|
143659
|
+
const normalizeNumerals = dateString => {
|
|
143660
|
+
const alternativeNumeralsMap = getAlternativeNumeralsMap(core.locale());
|
|
143661
|
+
if (!alternativeNumeralsMap) {
|
|
143662
|
+
return dateString
|
|
143663
|
+
}
|
|
143664
|
+
return dateString.split("").map(sign => sign in alternativeNumeralsMap ? String(alternativeNumeralsMap[sign]) : sign).join("")
|
|
143665
|
+
};
|
|
143666
|
+
const removeLeadingZeroes = str => str.replace(/(\D)0+(\d)/g, "$1$2");
|
|
143667
|
+
const dateStringEquals = (actual, expected) => removeLeadingZeroes(actual) === removeLeadingZeroes(expected);
|
|
143668
|
+
const normalizeMonth = text => text.replace("d\u2019", "de ");
|
|
143669
|
+
const intlFormats = {
|
|
143670
|
+
day: {
|
|
143671
|
+
day: "numeric"
|
|
143672
|
+
},
|
|
143673
|
+
date: {
|
|
143674
|
+
year: "numeric",
|
|
143675
|
+
month: "long",
|
|
143676
|
+
day: "numeric"
|
|
143677
|
+
},
|
|
143678
|
+
dayofweek: {
|
|
143679
|
+
weekday: "long"
|
|
143680
|
+
},
|
|
143681
|
+
longdate: {
|
|
143682
|
+
weekday: "long",
|
|
143683
|
+
year: "numeric",
|
|
143684
|
+
month: "long",
|
|
143685
|
+
day: "numeric"
|
|
143686
|
+
},
|
|
143687
|
+
longdatelongtime: {
|
|
143688
|
+
weekday: "long",
|
|
143689
|
+
year: "numeric",
|
|
143690
|
+
month: "long",
|
|
143691
|
+
day: "numeric",
|
|
143692
|
+
hour: "numeric",
|
|
143693
|
+
minute: "numeric",
|
|
143694
|
+
second: "numeric"
|
|
143695
|
+
},
|
|
143696
|
+
longtime: {
|
|
143697
|
+
hour: "numeric",
|
|
143698
|
+
minute: "numeric",
|
|
143699
|
+
second: "numeric"
|
|
143700
|
+
},
|
|
143701
|
+
month: {
|
|
143702
|
+
month: "long"
|
|
143703
|
+
},
|
|
143704
|
+
monthandday: {
|
|
143705
|
+
month: "long",
|
|
143706
|
+
day: "numeric"
|
|
143707
|
+
},
|
|
143708
|
+
monthandyear: {
|
|
143709
|
+
year: "numeric",
|
|
143710
|
+
month: "long"
|
|
143711
|
+
},
|
|
143712
|
+
shortdate: {},
|
|
143713
|
+
shorttime: {
|
|
143714
|
+
hour: "numeric",
|
|
143715
|
+
minute: "numeric"
|
|
143716
|
+
},
|
|
143717
|
+
shortyear: {
|
|
143718
|
+
year: "2-digit"
|
|
143719
|
+
},
|
|
143720
|
+
year: {
|
|
143721
|
+
year: "numeric"
|
|
143722
|
+
}
|
|
143723
|
+
};
|
|
143724
|
+
Object.defineProperty(intlFormats, "shortdateshorttime", {
|
|
143725
|
+
get() {
|
|
143726
|
+
const defaultOptions = Intl.DateTimeFormat(core.locale()).resolvedOptions();
|
|
143727
|
+
return {
|
|
143728
|
+
year: defaultOptions.year,
|
|
143729
|
+
month: defaultOptions.month,
|
|
143730
|
+
day: defaultOptions.day,
|
|
143731
|
+
hour: "numeric",
|
|
143732
|
+
minute: "numeric"
|
|
143733
|
+
}
|
|
143734
|
+
}
|
|
143735
|
+
});
|
|
143736
|
+
const getIntlFormat = format => "string" === typeof format && intlFormats[format.toLowerCase()];
|
|
143737
|
+
const monthNameStrategies = {
|
|
143738
|
+
standalone(monthIndex, monthFormat) {
|
|
143739
|
+
const date = new Date(1999, monthIndex, 13, 1);
|
|
143740
|
+
return getIntlFormatter({
|
|
143741
|
+
month: monthFormat
|
|
143742
|
+
})(date)
|
|
143743
|
+
},
|
|
143744
|
+
format(monthIndex, monthFormat) {
|
|
143745
|
+
const date = new Date(0, monthIndex, 13, 1);
|
|
143746
|
+
const dateString = normalizeMonth(getIntlFormatter({
|
|
143747
|
+
day: "numeric",
|
|
143748
|
+
month: monthFormat
|
|
143749
|
+
})(date));
|
|
143750
|
+
const parts = dateString.split(" ").filter(part => !part.includes("13"));
|
|
143751
|
+
if (1 === parts.length) {
|
|
143752
|
+
return parts[0]
|
|
143753
|
+
}
|
|
143754
|
+
if (2 === parts.length) {
|
|
143755
|
+
return parts[0].length > parts[1].length ? parts[0] : parts[1]
|
|
143756
|
+
}
|
|
143757
|
+
return monthNameStrategies.standalone(monthIndex, monthFormat)
|
|
143758
|
+
}
|
|
143759
|
+
};
|
|
143760
|
+
/* harmony default export */ var date = ({
|
|
143761
|
+
engine: () => "intl",
|
|
143762
|
+
getMonthNames(format, type) {
|
|
143763
|
+
const monthFormat = {
|
|
143764
|
+
wide: "long",
|
|
143765
|
+
abbreviated: "short",
|
|
143766
|
+
narrow: "narrow"
|
|
143767
|
+
} [format || "wide"];
|
|
143768
|
+
type = "format" === type ? type : "standalone";
|
|
143769
|
+
return Array.from({
|
|
143770
|
+
length: 12
|
|
143771
|
+
}, (_, monthIndex) => monthNameStrategies[type](monthIndex, monthFormat))
|
|
143772
|
+
},
|
|
143773
|
+
getDayNames: format => (format => Array.from({
|
|
143774
|
+
length: 7
|
|
143775
|
+
}, (_, dayIndex) => getIntlFormatter({
|
|
143776
|
+
weekday: format
|
|
143777
|
+
})(new Date(0, 0, dayIndex))))({
|
|
143778
|
+
wide: "long",
|
|
143779
|
+
abbreviated: "short",
|
|
143780
|
+
short: "narrow",
|
|
143781
|
+
narrow: "narrow"
|
|
143782
|
+
} [format || "wide"]),
|
|
143783
|
+
getPeriodNames() {
|
|
143784
|
+
const hour12Formatter = getIntlFormatter({
|
|
143785
|
+
hour: "numeric",
|
|
143786
|
+
hour12: true
|
|
143787
|
+
});
|
|
143788
|
+
return [1, 13].map(hours => {
|
|
143789
|
+
const hourNumberText = formatNumber(1);
|
|
143790
|
+
const timeParts = hour12Formatter(new Date(0, 0, 1, hours)).split(hourNumberText);
|
|
143791
|
+
if (2 !== timeParts.length) {
|
|
143792
|
+
return ""
|
|
143793
|
+
}
|
|
143794
|
+
const biggerPart = timeParts[0].length > timeParts[1].length ? timeParts[0] : timeParts[1];
|
|
143795
|
+
return biggerPart.trim()
|
|
143796
|
+
})
|
|
143797
|
+
},
|
|
143798
|
+
format(date, format) {
|
|
143799
|
+
if (!date) {
|
|
143800
|
+
return
|
|
143801
|
+
}
|
|
143802
|
+
if (!format) {
|
|
143803
|
+
return date
|
|
143804
|
+
}
|
|
143805
|
+
if ("function" !== typeof format && !format.formatter) {
|
|
143806
|
+
format = format.type ?? format
|
|
143807
|
+
}
|
|
143808
|
+
if ("string" === typeof format) {
|
|
143809
|
+
const presetOverride = resolvePresetOverride(format);
|
|
143810
|
+
if (void 0 !== presetOverride) {
|
|
143811
|
+
if ("function" === typeof presetOverride) {
|
|
143812
|
+
return presetOverride(date)
|
|
143813
|
+
}
|
|
143814
|
+
format = presetOverride
|
|
143815
|
+
}
|
|
143816
|
+
}
|
|
143817
|
+
const intlFormat = getIntlFormat(format);
|
|
143818
|
+
if (intlFormat) {
|
|
143819
|
+
return getIntlFormatter(intlFormat)(date)
|
|
143820
|
+
}
|
|
143821
|
+
const formatType = typeof format;
|
|
143822
|
+
if (format.formatter || "function" === formatType || "string" === formatType) {
|
|
143823
|
+
return this.callBase.apply(this, [date, format])
|
|
143824
|
+
}
|
|
143825
|
+
return getIntlFormatter(format)(date)
|
|
143826
|
+
},
|
|
143827
|
+
parse(dateString, format) {
|
|
143828
|
+
let formatter;
|
|
143829
|
+
if (format && !format.parser && "string" === typeof dateString) {
|
|
143830
|
+
dateString = normalizeMonth(dateString);
|
|
143831
|
+
formatter = date => normalizeMonth(this.format(date, format))
|
|
143832
|
+
}
|
|
143833
|
+
return this.callBase(dateString, formatter ?? format)
|
|
143834
|
+
},
|
|
143835
|
+
_parseDateBySimpleFormat(dateString, format) {
|
|
143836
|
+
dateString = normalizeNumerals(dateString);
|
|
143837
|
+
const formatParts = this.getFormatParts(format);
|
|
143838
|
+
const dateParts = dateString.split(/\D+/).filter(part => part.length > 0);
|
|
143839
|
+
if (formatParts.length !== dateParts.length) {
|
|
143840
|
+
return
|
|
143841
|
+
}
|
|
143842
|
+
const dateArgs = this._generateDateArgs(formatParts, dateParts);
|
|
143843
|
+
const constructValidDate = ampmShift => {
|
|
143844
|
+
const parsedDate = ((dateArgs, ampmShift) => {
|
|
143845
|
+
const hoursShift = ampmShift ? 12 : 0;
|
|
143846
|
+
return new Date(dateArgs.year, dateArgs.month, dateArgs.day, (dateArgs.hours + hoursShift) % 24, dateArgs.minutes, dateArgs.seconds)
|
|
143847
|
+
})(dateArgs, ampmShift);
|
|
143848
|
+
if (dateStringEquals(normalizeNumerals(this.format(parsedDate, format)), dateString)) {
|
|
143849
|
+
return parsedDate
|
|
143850
|
+
}
|
|
143851
|
+
return
|
|
143852
|
+
};
|
|
143853
|
+
return constructValidDate(false) ?? constructValidDate(true)
|
|
143854
|
+
},
|
|
143855
|
+
_generateDateArgs(formatParts, dateParts) {
|
|
143856
|
+
const currentDate = new Date;
|
|
143857
|
+
const dateArgs = {
|
|
143858
|
+
year: currentDate.getFullYear(),
|
|
143859
|
+
month: currentDate.getMonth(),
|
|
143860
|
+
day: currentDate.getDate(),
|
|
143861
|
+
hours: 0,
|
|
143862
|
+
minutes: 0,
|
|
143863
|
+
seconds: 0
|
|
143864
|
+
};
|
|
143865
|
+
formatParts.forEach((formatPart, index) => {
|
|
143866
|
+
const datePart = dateParts[index];
|
|
143867
|
+
let parsed = parseInt(datePart, 10);
|
|
143868
|
+
if ("month" === formatPart) {
|
|
143869
|
+
parsed -= 1
|
|
143870
|
+
}
|
|
143871
|
+
dateArgs[formatPart] = parsed
|
|
143872
|
+
});
|
|
143873
|
+
return dateArgs
|
|
143874
|
+
},
|
|
143875
|
+
formatUsesMonthName(format) {
|
|
143876
|
+
if ("object" === typeof format && !(format.type || format.format)) {
|
|
143877
|
+
return "long" === format.month
|
|
143878
|
+
}
|
|
143879
|
+
return this.callBase.apply(this, [format])
|
|
143880
|
+
},
|
|
143881
|
+
formatUsesDayName(format) {
|
|
143882
|
+
if ("object" === typeof format && !(format.type || format.format)) {
|
|
143883
|
+
return "long" === format.weekday
|
|
143884
|
+
}
|
|
143885
|
+
return this.callBase.apply(this, [format])
|
|
143886
|
+
},
|
|
143887
|
+
getTimeSeparator: () => normalizeNumerals(formatDateTime(new Date(2001, 1, 1, 11, 11), {
|
|
143888
|
+
hour: "numeric",
|
|
143889
|
+
minute: "numeric",
|
|
143890
|
+
hour12: false
|
|
143891
|
+
})).replace(/\d/g, ""),
|
|
143892
|
+
getFormatParts(format) {
|
|
143893
|
+
if ("string" === typeof format) {
|
|
143894
|
+
return this.callBase(format)
|
|
143895
|
+
}
|
|
143896
|
+
const intlFormat = extend({}, intlFormats[format.toLowerCase()]);
|
|
143897
|
+
const date = new Date(2001, 2, 4, 5, 6, 7);
|
|
143898
|
+
let formattedDate = getIntlFormatter(intlFormat)(date);
|
|
143899
|
+
formattedDate = normalizeNumerals(formattedDate);
|
|
143900
|
+
return [{
|
|
143901
|
+
name: "year",
|
|
143902
|
+
value: 1
|
|
143903
|
+
}, {
|
|
143904
|
+
name: "month",
|
|
143905
|
+
value: 3
|
|
143906
|
+
}, {
|
|
143907
|
+
name: "day",
|
|
143908
|
+
value: 4
|
|
143909
|
+
}, {
|
|
143910
|
+
name: "hours",
|
|
143911
|
+
value: 5
|
|
143912
|
+
}, {
|
|
143913
|
+
name: "minutes",
|
|
143914
|
+
value: 6
|
|
143915
|
+
}, {
|
|
143916
|
+
name: "seconds",
|
|
143917
|
+
value: 7
|
|
143918
|
+
}].map(part => ({
|
|
143919
|
+
name: part.name,
|
|
143920
|
+
index: formattedDate.indexOf(`${part.value}`)
|
|
143921
|
+
})).filter(part => part.index > -1).sort((a, b) => a.index - b.index).map(part => part.name)
|
|
143922
|
+
}
|
|
143923
|
+
});
|
|
143924
|
+
|
|
143386
143925
|
;// ./node_modules/devextreme/esm/__internal/core/localization/currency.js
|
|
143387
143926
|
/**
|
|
143388
143927
|
* DevExtreme (esm/__internal/core/localization/currency.js)
|
|
143389
|
-
* Version:
|
|
143390
|
-
* Build date:
|
|
143928
|
+
* Version: 26.1.2-beta
|
|
143929
|
+
* Build date: Fri May 08 2026
|
|
143391
143930
|
*
|
|
143392
143931
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143393
143932
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -143414,8 +143953,8 @@ function getCurrentTemplateEngine() {
|
|
|
143414
143953
|
;// ./node_modules/devextreme/esm/__internal/core/localization/cldr-data/accounting_formats.js
|
|
143415
143954
|
/**
|
|
143416
143955
|
* DevExtreme (esm/__internal/core/localization/cldr-data/accounting_formats.js)
|
|
143417
|
-
* Version:
|
|
143418
|
-
* Build date:
|
|
143956
|
+
* Version: 26.1.2-beta
|
|
143957
|
+
* Build date: Fri May 08 2026
|
|
143419
143958
|
*
|
|
143420
143959
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
143421
143960
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144001,8 +144540,8 @@ function getCurrentTemplateEngine() {
|
|
|
144001
144540
|
;// ./node_modules/devextreme/esm/__internal/core/localization/open_xml_currency_format.js
|
|
144002
144541
|
/**
|
|
144003
144542
|
* DevExtreme (esm/__internal/core/localization/open_xml_currency_format.js)
|
|
144004
|
-
* Version:
|
|
144005
|
-
* Build date:
|
|
144543
|
+
* Version: 26.1.2-beta
|
|
144544
|
+
* Build date: Fri May 08 2026
|
|
144006
144545
|
*
|
|
144007
144546
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144008
144547
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144044,8 +144583,8 @@ function getCurrentTemplateEngine() {
|
|
|
144044
144583
|
;// ./node_modules/devextreme/esm/__internal/core/localization/intl/number.js
|
|
144045
144584
|
/**
|
|
144046
144585
|
* DevExtreme (esm/__internal/core/localization/intl/number.js)
|
|
144047
|
-
* Version:
|
|
144048
|
-
* Build date:
|
|
144586
|
+
* Version: 26.1.2-beta
|
|
144587
|
+
* Build date: Fri May 08 2026
|
|
144049
144588
|
*
|
|
144050
144589
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144051
144590
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144054,6 +144593,7 @@ function getCurrentTemplateEngine() {
|
|
|
144054
144593
|
|
|
144055
144594
|
|
|
144056
144595
|
|
|
144596
|
+
|
|
144057
144597
|
const CURRENCY_STYLES = ["standard", "accounting"];
|
|
144058
144598
|
const MAX_FRACTION_DIGITS = 20;
|
|
144059
144599
|
const detectCurrencySymbolRegex = /([^\s0]+)?(\s*)0*[.,]*0*(\s*)([^\s0]+)?/;
|
|
@@ -144119,6 +144659,10 @@ const getCurrencyFormatter = currency => new Intl.NumberFormat(core.locale(), {
|
|
|
144119
144659
|
if ("number" !== typeof value) {
|
|
144120
144660
|
return value
|
|
144121
144661
|
}
|
|
144662
|
+
const globalNumberFormat = getGlobalFormatByDataType("number");
|
|
144663
|
+
if (!format && globalNumberFormat) {
|
|
144664
|
+
format = globalNumberFormat
|
|
144665
|
+
}
|
|
144122
144666
|
format = this._normalizeFormat(format);
|
|
144123
144667
|
if ("default" === format.currency) {
|
|
144124
144668
|
format.currency = core_config().defaultCurrency
|
|
@@ -144164,8 +144708,8 @@ const getCurrencyFormatter = currency => new Intl.NumberFormat(core.locale(), {
|
|
|
144164
144708
|
/* unused harmony import specifier */ var m_math_isExponential;
|
|
144165
144709
|
/**
|
|
144166
144710
|
* DevExtreme (esm/__internal/core/utils/m_math.js)
|
|
144167
|
-
* Version:
|
|
144168
|
-
* Build date:
|
|
144711
|
+
* Version: 26.1.2-beta
|
|
144712
|
+
* Build date: Fri May 08 2026
|
|
144169
144713
|
*
|
|
144170
144714
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144171
144715
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144343,8 +144887,8 @@ function roundFloatPart(value) {
|
|
|
144343
144887
|
;// ./node_modules/devextreme/esm/__internal/core/localization/utils.js
|
|
144344
144888
|
/**
|
|
144345
144889
|
* DevExtreme (esm/__internal/core/localization/utils.js)
|
|
144346
|
-
* Version:
|
|
144347
|
-
* Build date:
|
|
144890
|
+
* Version: 26.1.2-beta
|
|
144891
|
+
* Build date: Fri May 08 2026
|
|
144348
144892
|
*
|
|
144349
144893
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144350
144894
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144371,8 +144915,8 @@ function toFixed(value, precision) {
|
|
|
144371
144915
|
;// ./node_modules/devextreme/esm/__internal/core/localization/ldml/number.js
|
|
144372
144916
|
/**
|
|
144373
144917
|
* DevExtreme (esm/__internal/core/localization/ldml/number.js)
|
|
144374
|
-
* Version:
|
|
144375
|
-
* Build date:
|
|
144918
|
+
* Version: 26.1.2-beta
|
|
144919
|
+
* Build date: Fri May 08 2026
|
|
144376
144920
|
*
|
|
144377
144921
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144378
144922
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144612,8 +145156,8 @@ function getFormat(formatter) {
|
|
|
144612
145156
|
;// ./node_modules/devextreme/esm/core/guid.js
|
|
144613
145157
|
/**
|
|
144614
145158
|
* DevExtreme (esm/core/guid.js)
|
|
144615
|
-
* Version:
|
|
144616
|
-
* Build date:
|
|
145159
|
+
* Version: 26.1.2-beta
|
|
145160
|
+
* Build date: Fri May 08 2026
|
|
144617
145161
|
*
|
|
144618
145162
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144619
145163
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144624,8 +145168,8 @@ function getFormat(formatter) {
|
|
|
144624
145168
|
;// ./node_modules/devextreme/esm/core/utils/console.js
|
|
144625
145169
|
/**
|
|
144626
145170
|
* DevExtreme (esm/core/utils/console.js)
|
|
144627
|
-
* Version:
|
|
144628
|
-
* Build date:
|
|
145171
|
+
* Version: 26.1.2-beta
|
|
145172
|
+
* Build date: Fri May 08 2026
|
|
144629
145173
|
*
|
|
144630
145174
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144631
145175
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144635,8 +145179,8 @@ function getFormat(formatter) {
|
|
|
144635
145179
|
;// ./node_modules/devextreme/esm/core/utils/dependency_injector.js
|
|
144636
145180
|
/**
|
|
144637
145181
|
* DevExtreme (esm/core/utils/dependency_injector.js)
|
|
144638
|
-
* Version:
|
|
144639
|
-
* Build date:
|
|
145182
|
+
* Version: 26.1.2-beta
|
|
145183
|
+
* Build date: Fri May 08 2026
|
|
144640
145184
|
*
|
|
144641
145185
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144642
145186
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144647,8 +145191,8 @@ function getFormat(formatter) {
|
|
|
144647
145191
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_variable_wrapper.js
|
|
144648
145192
|
/**
|
|
144649
145193
|
* DevExtreme (esm/__internal/core/utils/m_variable_wrapper.js)
|
|
144650
|
-
* Version:
|
|
144651
|
-
* Build date:
|
|
145194
|
+
* Version: 26.1.2-beta
|
|
145195
|
+
* Build date: Fri May 08 2026
|
|
144652
145196
|
*
|
|
144653
145197
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144654
145198
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144677,8 +145221,8 @@ const variableWrapper = dependency_injector({
|
|
|
144677
145221
|
;// ./node_modules/devextreme/esm/core/utils/variable_wrapper.js
|
|
144678
145222
|
/**
|
|
144679
145223
|
* DevExtreme (esm/core/utils/variable_wrapper.js)
|
|
144680
|
-
* Version:
|
|
144681
|
-
* Build date:
|
|
145224
|
+
* Version: 26.1.2-beta
|
|
145225
|
+
* Build date: Fri May 08 2026
|
|
144682
145226
|
*
|
|
144683
145227
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144684
145228
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144693,8 +145237,8 @@ const variableWrapper = dependency_injector({
|
|
|
144693
145237
|
/* unused harmony import specifier */ var m_object_variableWrapper;
|
|
144694
145238
|
/**
|
|
144695
145239
|
* DevExtreme (esm/__internal/core/utils/m_object.js)
|
|
144696
|
-
* Version:
|
|
144697
|
-
* Build date:
|
|
145240
|
+
* Version: 26.1.2-beta
|
|
145241
|
+
* Build date: Fri May 08 2026
|
|
144698
145242
|
*
|
|
144699
145243
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144700
145244
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144800,8 +145344,8 @@ const deepExtendArraySafe = function(target, changes, extendComplexObject, assig
|
|
|
144800
145344
|
;// ./node_modules/devextreme/esm/core/utils/object.js
|
|
144801
145345
|
/**
|
|
144802
145346
|
* DevExtreme (esm/core/utils/object.js)
|
|
144803
|
-
* Version:
|
|
144804
|
-
* Build date:
|
|
145347
|
+
* Version: 26.1.2-beta
|
|
145348
|
+
* Build date: Fri May 08 2026
|
|
144805
145349
|
*
|
|
144806
145350
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144807
145351
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -144818,8 +145362,8 @@ const deepExtendArraySafe = function(target, changes, extendComplexObject, assig
|
|
|
144818
145362
|
/* unused harmony import specifier */ var m_data_isPlainObject;
|
|
144819
145363
|
/**
|
|
144820
145364
|
* DevExtreme (esm/__internal/core/utils/m_data.js)
|
|
144821
|
-
* Version:
|
|
144822
|
-
* Build date:
|
|
145365
|
+
* Version: 26.1.2-beta
|
|
145366
|
+
* Build date: Fri May 08 2026
|
|
144823
145367
|
*
|
|
144824
145368
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
144825
145369
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -145016,8 +145560,8 @@ const toComparable = function(value, caseSensitive) {
|
|
|
145016
145560
|
;// ./node_modules/devextreme/esm/core/utils/data.js
|
|
145017
145561
|
/**
|
|
145018
145562
|
* DevExtreme (esm/core/utils/data.js)
|
|
145019
|
-
* Version:
|
|
145020
|
-
* Build date:
|
|
145563
|
+
* Version: 26.1.2-beta
|
|
145564
|
+
* Build date: Fri May 08 2026
|
|
145021
145565
|
*
|
|
145022
145566
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
145023
145567
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -145027,8 +145571,8 @@ const toComparable = function(value, caseSensitive) {
|
|
|
145027
145571
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_callbacks.js
|
|
145028
145572
|
/**
|
|
145029
145573
|
* DevExtreme (esm/__internal/core/utils/m_callbacks.js)
|
|
145030
|
-
* Version:
|
|
145031
|
-
* Build date:
|
|
145574
|
+
* Version: 26.1.2-beta
|
|
145575
|
+
* Build date: Fri May 08 2026
|
|
145032
145576
|
*
|
|
145033
145577
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
145034
145578
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -145123,8 +145667,8 @@ const Callbacks = function(options) {
|
|
|
145123
145667
|
;// ./node_modules/devextreme/esm/core/utils/callbacks.js
|
|
145124
145668
|
/**
|
|
145125
145669
|
* DevExtreme (esm/core/utils/callbacks.js)
|
|
145126
|
-
* Version:
|
|
145127
|
-
* Build date:
|
|
145670
|
+
* Version: 26.1.2-beta
|
|
145671
|
+
* Build date: Fri May 08 2026
|
|
145128
145672
|
*
|
|
145129
145673
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
145130
145674
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -145135,8 +145679,8 @@ const Callbacks = function(options) {
|
|
|
145135
145679
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_deferred.js
|
|
145136
145680
|
/**
|
|
145137
145681
|
* DevExtreme (esm/__internal/core/utils/m_deferred.js)
|
|
145138
|
-
* Version:
|
|
145139
|
-
* Build date:
|
|
145682
|
+
* Version: 26.1.2-beta
|
|
145683
|
+
* Build date: Fri May 08 2026
|
|
145140
145684
|
*
|
|
145141
145685
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
145142
145686
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -145301,8 +145845,8 @@ function when() {
|
|
|
145301
145845
|
;// ./node_modules/devextreme/esm/core/utils/deferred.js
|
|
145302
145846
|
/**
|
|
145303
145847
|
* DevExtreme (esm/core/utils/deferred.js)
|
|
145304
|
-
* Version:
|
|
145305
|
-
* Build date:
|
|
145848
|
+
* Version: 26.1.2-beta
|
|
145849
|
+
* Build date: Fri May 08 2026
|
|
145306
145850
|
*
|
|
145307
145851
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
145308
145852
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -145312,8 +145856,8 @@ function when() {
|
|
|
145312
145856
|
;// ./node_modules/devextreme/esm/__internal/core/utils/m_common.js
|
|
145313
145857
|
/**
|
|
145314
145858
|
* DevExtreme (esm/__internal/core/utils/m_common.js)
|
|
145315
|
-
* Version:
|
|
145316
|
-
* Build date:
|
|
145859
|
+
* Version: 26.1.2-beta
|
|
145860
|
+
* Build date: Fri May 08 2026
|
|
145317
145861
|
*
|
|
145318
145862
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
145319
145863
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -145607,8 +146151,8 @@ const equalByValue = function(value1, value2) {
|
|
|
145607
146151
|
;// ./node_modules/devextreme/esm/__internal/core/localization/number.js
|
|
145608
146152
|
/**
|
|
145609
146153
|
* DevExtreme (esm/__internal/core/localization/number.js)
|
|
145610
|
-
* Version:
|
|
145611
|
-
* Build date:
|
|
146154
|
+
* Version: 26.1.2-beta
|
|
146155
|
+
* Build date: Fri May 08 2026
|
|
145612
146156
|
*
|
|
145613
146157
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
145614
146158
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -145623,6 +146167,7 @@ const equalByValue = function(value1, value2) {
|
|
|
145623
146167
|
|
|
145624
146168
|
|
|
145625
146169
|
|
|
146170
|
+
|
|
145626
146171
|
const hasIntl = "undefined" !== typeof Intl;
|
|
145627
146172
|
const MAX_LARGE_NUMBER_POWER = 4;
|
|
145628
146173
|
const number_DECIMAL_BASE = 10;
|
|
@@ -145830,6 +146375,10 @@ const numberLocalization = injector({
|
|
|
145830
146375
|
if ("number" === typeof format) {
|
|
145831
146376
|
return value
|
|
145832
146377
|
}
|
|
146378
|
+
const globalNumberFormat = getGlobalFormatByDataType("number");
|
|
146379
|
+
if (!format && globalNumberFormat) {
|
|
146380
|
+
format = globalNumberFormat
|
|
146381
|
+
}
|
|
145833
146382
|
format = (null === (_format = format) || void 0 === _format ? void 0 : _format.formatter) || format;
|
|
145834
146383
|
if ("function" === typeof format) {
|
|
145835
146384
|
return format(value)
|
|
@@ -145917,8 +146466,8 @@ if (hasIntl) {
|
|
|
145917
146466
|
;// ./node_modules/devextreme/esm/__internal/core/localization/ldml/date.format.js
|
|
145918
146467
|
/**
|
|
145919
146468
|
* DevExtreme (esm/__internal/core/localization/ldml/date.format.js)
|
|
145920
|
-
* Version:
|
|
145921
|
-
* Build date:
|
|
146469
|
+
* Version: 26.1.2-beta
|
|
146470
|
+
* Build date: Fri May 08 2026
|
|
145922
146471
|
*
|
|
145923
146472
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
145924
146473
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -146111,8 +146660,8 @@ const date_format_getFormat = formatter => {
|
|
|
146111
146660
|
;// ./node_modules/devextreme/esm/__internal/core/localization/ldml/date.formatter.js
|
|
146112
146661
|
/**
|
|
146113
146662
|
* DevExtreme (esm/__internal/core/localization/ldml/date.formatter.js)
|
|
146114
|
-
* Version:
|
|
146115
|
-
* Build date:
|
|
146663
|
+
* Version: 26.1.2-beta
|
|
146664
|
+
* Build date: Fri May 08 2026
|
|
146116
146665
|
*
|
|
146117
146666
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
146118
146667
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -146240,8 +146789,8 @@ const date_formatter_getFormatter = (format, dateParts) => date => {
|
|
|
146240
146789
|
;// ./node_modules/devextreme/esm/__internal/core/localization/ldml/date.parser.js
|
|
146241
146790
|
/**
|
|
146242
146791
|
* DevExtreme (esm/__internal/core/localization/ldml/date.parser.js)
|
|
146243
|
-
* Version:
|
|
146244
|
-
* Build date:
|
|
146792
|
+
* Version: 26.1.2-beta
|
|
146793
|
+
* Build date: Fri May 08 2026
|
|
146245
146794
|
*
|
|
146246
146795
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
146247
146796
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -146519,8 +147068,8 @@ const getParser = (format, dateParts) => {
|
|
|
146519
147068
|
;// ./node_modules/devextreme/esm/__internal/core/localization/date.js
|
|
146520
147069
|
/**
|
|
146521
147070
|
* DevExtreme (esm/__internal/core/localization/date.js)
|
|
146522
|
-
* Version:
|
|
146523
|
-
* Build date:
|
|
147071
|
+
* Version: 26.1.2-beta
|
|
147072
|
+
* Build date: Fri May 08 2026
|
|
146524
147073
|
*
|
|
146525
147074
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
146526
147075
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -146537,6 +147086,7 @@ const getParser = (format, dateParts) => {
|
|
|
146537
147086
|
|
|
146538
147087
|
|
|
146539
147088
|
|
|
147089
|
+
|
|
146540
147090
|
const DEFAULT_DAY_OF_WEEK_INDEX = 0;
|
|
146541
147091
|
const date_hasIntl = "undefined" !== typeof Intl;
|
|
146542
147092
|
const FORMATS_TO_PATTERN_MAP = {
|
|
@@ -146576,6 +147126,20 @@ const dateLocalization = injector({
|
|
|
146576
147126
|
_expandPattern(pattern) {
|
|
146577
147127
|
return this._getPatternByFormat(pattern) || pattern
|
|
146578
147128
|
},
|
|
147129
|
+
_resolveStringFormat(format, date) {
|
|
147130
|
+
const presetOverride = resolvePresetOverride(format);
|
|
147131
|
+
if (void 0 === presetOverride) {
|
|
147132
|
+
return
|
|
147133
|
+
}
|
|
147134
|
+
if ("function" === typeof presetOverride) {
|
|
147135
|
+
return presetOverride(date)
|
|
147136
|
+
}
|
|
147137
|
+
if (isString(presetOverride)) {
|
|
147138
|
+
const pattern = FORMATS_TO_PATTERN_MAP[presetOverride.toLowerCase()] || presetOverride;
|
|
147139
|
+
return localization_number.convertDigits(date_formatter_getFormatter(pattern, this)(date))
|
|
147140
|
+
}
|
|
147141
|
+
return
|
|
147142
|
+
},
|
|
146579
147143
|
formatUsesMonthName(format) {
|
|
146580
147144
|
return -1 !== this._expandPattern(format).indexOf("MMMM")
|
|
146581
147145
|
},
|
|
@@ -146626,6 +147190,10 @@ const dateLocalization = injector({
|
|
|
146626
147190
|
} else {
|
|
146627
147191
|
format = format.type ?? format;
|
|
146628
147192
|
if (isString(format)) {
|
|
147193
|
+
const resolvedFormat = this._resolveStringFormat(format, date);
|
|
147194
|
+
if (void 0 !== resolvedFormat) {
|
|
147195
|
+
return resolvedFormat
|
|
147196
|
+
}
|
|
146629
147197
|
format = FORMATS_TO_PATTERN_MAP[format.toLowerCase()] || format;
|
|
146630
147198
|
return localization_number.convertDigits(date_formatter_getFormatter(format, this)(date))
|
|
146631
147199
|
}
|
|
@@ -146683,8 +147251,8 @@ if (date_hasIntl) {
|
|
|
146683
147251
|
;// ./node_modules/devextreme/esm/common/core/localization/date.js
|
|
146684
147252
|
/**
|
|
146685
147253
|
* DevExtreme (esm/common/core/localization/date.js)
|
|
146686
|
-
* Version:
|
|
146687
|
-
* Build date:
|
|
147254
|
+
* Version: 26.1.2-beta
|
|
147255
|
+
* Build date: Fri May 08 2026
|
|
146688
147256
|
*
|
|
146689
147257
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
146690
147258
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -146695,8 +147263,8 @@ if (date_hasIntl) {
|
|
|
146695
147263
|
;// ./node_modules/devextreme/esm/common/core/localization/number.js
|
|
146696
147264
|
/**
|
|
146697
147265
|
* DevExtreme (esm/common/core/localization/number.js)
|
|
146698
|
-
* Version:
|
|
146699
|
-
* Build date:
|
|
147266
|
+
* Version: 26.1.2-beta
|
|
147267
|
+
* Build date: Fri May 08 2026
|
|
146700
147268
|
*
|
|
146701
147269
|
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
146702
147270
|
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
|
|
@@ -147779,7 +148347,7 @@ class ClientRichEdit {
|
|
|
147779
148347
|
this.contextMenuSettings = settings.contextMenuSettings;
|
|
147780
148348
|
this.fullScreenHelper = new FullScreenHelper(element);
|
|
147781
148349
|
if (true)
|
|
147782
|
-
external_DevExpress_config_default()(JSON.parse(atob('
|
|
148350
|
+
external_DevExpress_config_default()(JSON.parse(atob('eyJsaWNlbnNlS2V5IjoiTENQdjE+eWUzLGp0LWNfVmZwK2Q0Y3BGOyhqbWQyPjl5PjdEOGNqWG9JeSUxN2JSZz5SPG4zYis3JUhkTDpRZVFaUUZKN2I6SiU8WHlWaSFvMlJjejllUjlJb2RZIW8peSw8ZXooN2E2JSVMMSgrVmRJPHktU29TIWVZKUo3UlMzKCtkejpRVnQhUVMhZUwtYUdMcm9waWROSWlSUjpvPDEsbmFlKExtZ0dMNEtwZWQ6Pkh0LTNlUW1rJSk7cEtGITY8ISk2JUZRJWUrPHBRZCk+Sy1AMnAhJD5qei1TUTgtMmlYOz4lWDwycEBAIVE0QDJfQEYhUWQ6SXAhQEk8NClhS0BAIVE0QDJfQEYhUWQ6SXAhQEk8NClhS3o8SV95QEliUnZJPC0pOU5YPD5RNDo+UTh2SWJSKTlqejshakw7OWp5Rkk3eUZJN3lGSSV5NjlRWHYyJSE6cGItJEliUik5akA2MnAhKTIlWHYyJSE6MmktdkklISk+akw8MjdAOjlLOXZhakBGMjdAQElfQDY5UWQkYVE0Oj5RNDpHX0BAOVFkdjY8IUY2PGRGSTd5Rkk3eUZJN0xsIn0=')));
|
|
147783
148351
|
this.prepareElement(element, settings);
|
|
147784
148352
|
this.initDefaultFontsAndStyles();
|
|
147785
148353
|
this.initBars(settings.ribbon, settings.fonts);
|
|
@@ -150257,6 +150825,8 @@ class RichEditPublic {
|
|
|
150257
150825
|
return this._native.core.innerClientProperties.viewsSettings.viewType;
|
|
150258
150826
|
}
|
|
150259
150827
|
set viewType(type) {
|
|
150828
|
+
if (typeof console !== 'undefined' && console.log)
|
|
150829
|
+
console.log(`[RichEdit] ${new Date().toISOString()} PublicAPI.set viewType`, { to: type, stack: new Error().stack });
|
|
150260
150830
|
const command = this._native.core.commandManager.getCommand(RichEditClientCommand.ChangeViewType);
|
|
150261
150831
|
command.execute(true, type);
|
|
150262
150832
|
}
|