roosterjs 9.50.0 → 9.51.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/rooster-adapter-amd-min.js +1 -1
- package/dist/rooster-adapter-amd-min.js.map +1 -1
- package/dist/rooster-adapter-amd.js +1 -3
- package/dist/rooster-adapter-amd.js.map +1 -1
- package/dist/rooster-adapter-min.js +1 -1
- package/dist/rooster-adapter-min.js.map +1 -1
- package/dist/rooster-adapter.js +1 -3
- package/dist/rooster-adapter.js.map +1 -1
- package/dist/rooster-amd-min.js +1 -1
- package/dist/rooster-amd-min.js.map +1 -1
- package/dist/rooster-amd.d.ts +33 -48
- package/dist/rooster-amd.js +50 -244
- package/dist/rooster-amd.js.map +1 -1
- package/dist/rooster-min.js +1 -1
- package/dist/rooster-min.js.map +1 -1
- package/dist/rooster-react-amd.js +55 -55
- package/dist/rooster-react-amd.js.map +1 -1
- package/dist/rooster.d.ts +33 -48
- package/dist/rooster.js +50 -244
- package/dist/rooster.js.map +1 -1
- package/package.json +7 -7
package/dist/rooster.js
CHANGED
|
@@ -7891,25 +7891,21 @@ exports.setTableCellShade = setTableCellShade;
|
|
|
7891
7891
|
/*!******************************************************************************!*\
|
|
7892
7892
|
!*** ./packages/roosterjs-content-model-api/lib/publicApi/utils/checkXss.ts ***!
|
|
7893
7893
|
\******************************************************************************/
|
|
7894
|
-
(__unused_webpack_module, exports
|
|
7894
|
+
(__unused_webpack_module, exports) {
|
|
7895
7895
|
|
|
7896
7896
|
"use strict";
|
|
7897
7897
|
|
|
7898
7898
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
7899
7899
|
exports.checkXss = void 0;
|
|
7900
|
-
var roosterjs_content_model_dom_1 = __webpack_require__(/*! roosterjs-content-model-dom */ "./packages/roosterjs-content-model-dom/lib/index.ts");
|
|
7901
7900
|
/**
|
|
7902
7901
|
* @internal Check if there is XSS attack in the link
|
|
7903
7902
|
* @param link The link to be checked
|
|
7904
|
-
* @returns The safe link
|
|
7905
|
-
* @remarks This function
|
|
7906
|
-
* and checks for patterns like s\nc\nr\ni\np\nt: to prevent XSS attacks. This may block some valid links,
|
|
7903
|
+
* @returns The safe link, or empty string if there is XSS attack
|
|
7904
|
+
* @remarks This function checks for patterns like s\nc\nr\ni\np\nt: to prevent XSS attacks. This may block some valid links,
|
|
7907
7905
|
* but it is necessary for security reasons. We treat the word "script" as safe if there are "/" before it.
|
|
7908
7906
|
*/
|
|
7909
7907
|
function checkXss(link) {
|
|
7910
|
-
|
|
7911
|
-
var sanitized = (0, roosterjs_content_model_dom_1.stripInvisibleUnicode)(link);
|
|
7912
|
-
return sanitized.match(/^[^\/]*s\n*c\n*r\n*i\n*p\n*t\n*:/i) ? '' : sanitized;
|
|
7908
|
+
return link.match(/^[^\/]*s\n*c\n*r\n*i\n*p\n*t\n*:/i) ? '' : link;
|
|
7913
7909
|
}
|
|
7914
7910
|
exports.checkXss = checkXss;
|
|
7915
7911
|
|
|
@@ -9106,7 +9102,7 @@ var roosterjs_content_model_dom_1 = __webpack_require__(/*! roosterjs-content-mo
|
|
|
9106
9102
|
// Here I didn't add 'HTMLFast' to ExportContentMode type because it will make this a breaking change and EditorAdapter will see build time error without bumping version
|
|
9107
9103
|
// Once we are confident that 'HTMLFast' is stable, we can fully switch 'HTML' to use the 'HTMLFast' approach
|
|
9108
9104
|
function exportContent(editor, mode, optionsOrCallbacks) {
|
|
9109
|
-
if (mode === void 0) { mode = '
|
|
9105
|
+
if (mode === void 0) { mode = 'HTMLFast'; }
|
|
9110
9106
|
var model;
|
|
9111
9107
|
switch (mode) {
|
|
9112
9108
|
case 'PlainTextFast':
|
|
@@ -9115,6 +9111,7 @@ function exportContent(editor, mode, optionsOrCallbacks) {
|
|
|
9115
9111
|
model = editor.getContentModelCopy('clean');
|
|
9116
9112
|
return (0, roosterjs_content_model_dom_1.contentModelToText)(model, undefined /*separator*/, optionsOrCallbacks);
|
|
9117
9113
|
case 'HTMLFast':
|
|
9114
|
+
default:
|
|
9118
9115
|
var clonedRoot = editor.getDOMHelper().getClonedRoot();
|
|
9119
9116
|
if (editor.isDarkMode()) {
|
|
9120
9117
|
(0, roosterjs_content_model_dom_1.transformColor)(clonedRoot, false /*includeSelf*/, 'darkToLight', editor.getColorManager(), {
|
|
@@ -9123,7 +9120,6 @@ function exportContent(editor, mode, optionsOrCallbacks) {
|
|
|
9123
9120
|
}
|
|
9124
9121
|
return getHTMLFromDOM(editor, clonedRoot);
|
|
9125
9122
|
case 'HTML':
|
|
9126
|
-
default:
|
|
9127
9123
|
model = editor.getContentModelCopy('clean');
|
|
9128
9124
|
var doc = editor.getDocument();
|
|
9129
9125
|
var div = doc.createElement('div');
|
|
@@ -10134,10 +10130,10 @@ var getRootComputedStyleForContext_1 = __webpack_require__(/*! ./getRootComputed
|
|
|
10134
10130
|
* Create a EditorContext object used by ContentModel API
|
|
10135
10131
|
*/
|
|
10136
10132
|
var createEditorContext = function (core, saveIndex) {
|
|
10137
|
-
var _a, _b
|
|
10133
|
+
var _a, _b;
|
|
10138
10134
|
var lifecycle = core.lifecycle, format = core.format, darkColorHandler = core.darkColorHandler, logicalRoot = core.logicalRoot, cache = core.cache, domHelper = core.domHelper;
|
|
10139
10135
|
saveIndex = saveIndex && !core.lifecycle.shadowEditFragment;
|
|
10140
|
-
var context = (0, tslib_1.__assign)({ isDarkMode: lifecycle.isDarkMode, defaultFormat: format.defaultFormat, pendingFormat: (_a = format.pendingFormat) !== null && _a !== void 0 ? _a : undefined, darkColorHandler: darkColorHandler, addDelimiterForEntity: true, allowCacheElement: true,
|
|
10136
|
+
var context = (0, tslib_1.__assign)({ isDarkMode: lifecycle.isDarkMode, defaultFormat: format.defaultFormat, pendingFormat: (_a = format.pendingFormat) !== null && _a !== void 0 ? _a : undefined, darkColorHandler: darkColorHandler, addDelimiterForEntity: true, allowCacheElement: true, domIndexer: saveIndex ? cache.domIndexer : undefined, zoomScale: domHelper.calculateZoomScale(), experimentalFeatures: (_b = core.experimentalFeatures) !== null && _b !== void 0 ? _b : [], paragraphMap: core.cache.paragraphMap, editorViewWidth: domHelper.getClientWidth() }, (0, getRootComputedStyleForContext_1.getRootComputedStyleForContext)(logicalRoot.ownerDocument));
|
|
10141
10137
|
if (core.domHelper.isRightToLeft()) {
|
|
10142
10138
|
context.isRootRtl = true;
|
|
10143
10139
|
}
|
|
@@ -15634,7 +15630,6 @@ var Editor = /** @class */ (function () {
|
|
|
15634
15630
|
};
|
|
15635
15631
|
this.core = (0, createEditorCore_1.createEditorCore)(contentDiv, options);
|
|
15636
15632
|
var initialModel = (_a = options.initialModel) !== null && _a !== void 0 ? _a : (0, roosterjs_content_model_dom_1.createEmptyModel)(this.core.format.defaultFormat);
|
|
15637
|
-
(0, roosterjs_content_model_dom_1.sanitizeInvisibleUnicode)(initialModel);
|
|
15638
15633
|
this.core.api.setContentModel(this.core, initialModel, { ignoreSelection: true }, undefined /*onNodeCreated*/, true /*isInitializing*/);
|
|
15639
15634
|
this.core.plugins.forEach(function (plugin) { return plugin.initialize(_this); });
|
|
15640
15635
|
}
|
|
@@ -15959,7 +15954,6 @@ var roosterjs_content_model_dom_1 = __webpack_require__(/*! roosterjs-content-mo
|
|
|
15959
15954
|
var DOMHelperImpl = /** @class */ (function () {
|
|
15960
15955
|
function DOMHelperImpl(contentDiv, options) {
|
|
15961
15956
|
this.contentDiv = contentDiv;
|
|
15962
|
-
this.options = options;
|
|
15963
15957
|
}
|
|
15964
15958
|
DOMHelperImpl.prototype.queryElements = function (selector) {
|
|
15965
15959
|
return (0, roosterjs_content_model_dom_1.toArray)(this.contentDiv.querySelectorAll(selector));
|
|
@@ -16048,14 +16042,9 @@ var DOMHelperImpl = /** @class */ (function () {
|
|
|
16048
16042
|
* Get a deep cloned root element
|
|
16049
16043
|
*/
|
|
16050
16044
|
DOMHelperImpl.prototype.getClonedRoot = function () {
|
|
16051
|
-
|
|
16052
|
-
|
|
16053
|
-
|
|
16054
|
-
return clone;
|
|
16055
|
-
}
|
|
16056
|
-
else {
|
|
16057
|
-
return this.contentDiv.cloneNode(true /*deep*/);
|
|
16058
|
-
}
|
|
16045
|
+
var doc = this.contentDiv.ownerDocument.implementation.createHTMLDocument();
|
|
16046
|
+
var clone = doc.importNode(this.contentDiv, true /*deep*/);
|
|
16047
|
+
return clone;
|
|
16059
16048
|
};
|
|
16060
16049
|
/**
|
|
16061
16050
|
* Get format of the container element
|
|
@@ -16193,7 +16182,7 @@ var createEditorCorePlugins_1 = __webpack_require__(/*! ../../corePlugin/createE
|
|
|
16193
16182
|
* @param options Editor options
|
|
16194
16183
|
*/
|
|
16195
16184
|
function createEditorCore(contentDiv, options) {
|
|
16196
|
-
var _a, _b
|
|
16185
|
+
var _a, _b;
|
|
16197
16186
|
var corePlugins = (0, createEditorCorePlugins_1.createEditorCorePlugins)(options, contentDiv);
|
|
16198
16187
|
var domCreator = (0, domCreator_1.createDOMCreator)(options.trustedHTMLHandler);
|
|
16199
16188
|
return (0, tslib_1.__assign)((0, tslib_1.__assign)({ physicalRoot: contentDiv, logicalRoot: contentDiv, api: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, coreApiMap_1.coreApiMap), options.coreApiOverride), originalApi: (0, tslib_1.__assign)({}, coreApiMap_1.coreApiMap), plugins: (0, tslib_1.__spreadArray)((0, tslib_1.__spreadArray)([
|
|
@@ -16209,9 +16198,7 @@ function createEditorCore(contentDiv, options) {
|
|
|
16209
16198
|
corePlugins.lifecycle,
|
|
16210
16199
|
], false), environment: createEditorEnvironment(contentDiv, options), darkColorHandler: (0, DarkColorHandlerImpl_1.createDarkColorHandler)(contentDiv, (_b = options.getDarkColor) !== null && _b !== void 0 ? _b : getDarkColorFallback, options.knownColors, options.generateColorKey), trustedHTMLHandler: options.trustedHTMLHandler && !(0, domCreator_1.isDOMCreator)(options.trustedHTMLHandler)
|
|
16211
16200
|
? options.trustedHTMLHandler
|
|
16212
|
-
: (0, domCreator_1.createTrustedHTMLHandler)(domCreator), domCreator: domCreator, domHelper: (0, DOMHelperImpl_1.createDOMHelper)(contentDiv, {
|
|
16213
|
-
cloneIndependentRoot: (_c = options.experimentalFeatures) === null || _c === void 0 ? void 0 : _c.includes('CloneIndependentRoot'),
|
|
16214
|
-
}) }, getPluginState(corePlugins)), { disposeErrorHandler: options.disposeErrorHandler, onFixUpModel: options.onFixUpModel, experimentalFeatures: options.experimentalFeatures ? (0, tslib_1.__spreadArray)([], (0, tslib_1.__read)(options.experimentalFeatures), false) : [] });
|
|
16201
|
+
: (0, domCreator_1.createTrustedHTMLHandler)(domCreator), domCreator: domCreator, domHelper: (0, DOMHelperImpl_1.createDOMHelper)(contentDiv) }, getPluginState(corePlugins)), { disposeErrorHandler: options.disposeErrorHandler, onFixUpModel: options.onFixUpModel, experimentalFeatures: options.experimentalFeatures ? (0, tslib_1.__spreadArray)([], (0, tslib_1.__read)(options.experimentalFeatures), false) : [] });
|
|
16215
16202
|
}
|
|
16216
16203
|
exports.createEditorCore = createEditorCore;
|
|
16217
16204
|
function createEditorEnvironment(contentDiv, options) {
|
|
@@ -18498,6 +18485,7 @@ exports.linkProcessor = linkProcessor;
|
|
|
18498
18485
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
18499
18486
|
exports.listItemProcessor = void 0;
|
|
18500
18487
|
var createListItem_1 = __webpack_require__(/*! ../../modelApi/creators/createListItem */ "./packages/roosterjs-content-model-dom/lib/modelApi/creators/createListItem.ts");
|
|
18488
|
+
var createListLevel_1 = __webpack_require__(/*! ../../modelApi/creators/createListLevel */ "./packages/roosterjs-content-model-dom/lib/modelApi/creators/createListLevel.ts");
|
|
18501
18489
|
var parseFormat_1 = __webpack_require__(/*! ../utils/parseFormat */ "./packages/roosterjs-content-model-dom/lib/domToModel/utils/parseFormat.ts");
|
|
18502
18490
|
var stackFormat_1 = __webpack_require__(/*! ../utils/stackFormat */ "./packages/roosterjs-content-model-dom/lib/domToModel/utils/stackFormat.ts");
|
|
18503
18491
|
/**
|
|
@@ -18506,14 +18494,22 @@ var stackFormat_1 = __webpack_require__(/*! ../utils/stackFormat */ "./packages/
|
|
|
18506
18494
|
var listItemProcessor = function (group, element, context) {
|
|
18507
18495
|
var _a;
|
|
18508
18496
|
var listFormat = context.listFormat;
|
|
18509
|
-
|
|
18497
|
+
var originalListParent = listFormat.listParent;
|
|
18498
|
+
var shouldPopListLevel = false;
|
|
18499
|
+
try {
|
|
18500
|
+
listFormat.listParent = (_a = listFormat.listParent) !== null && _a !== void 0 ? _a : group;
|
|
18501
|
+
var listParent_1 = listFormat.listParent;
|
|
18502
|
+
if (listFormat.levels.length == 0) {
|
|
18503
|
+
listFormat.levels.push((0, createListLevel_1.createListLevel)(listFormat.potentialListType || 'UL', context.blockFormat));
|
|
18504
|
+
shouldPopListLevel = true;
|
|
18505
|
+
}
|
|
18510
18506
|
(0, stackFormat_1.stackFormat)(context, {
|
|
18511
18507
|
segment: 'shallowCloneForBlock',
|
|
18512
18508
|
}, function () {
|
|
18513
18509
|
(0, parseFormat_1.parseFormat)(element, context.formatParsers.segmentOnBlock, context.segmentFormat, context);
|
|
18514
18510
|
var listItem = (0, createListItem_1.createListItem)(listFormat.levels, context.segmentFormat);
|
|
18515
18511
|
(0, parseFormat_1.parseFormat)(element, context.formatParsers.listItemElement, listItem.format, context);
|
|
18516
|
-
|
|
18512
|
+
listParent_1.blocks.push(listItem);
|
|
18517
18513
|
(0, parseFormat_1.parseFormat)(element, context.formatParsers.listItemThread, listItem.levels[listItem.levels.length - 1].format, context);
|
|
18518
18514
|
context.elementProcessors.child(listItem, element, context);
|
|
18519
18515
|
var firstChild = listItem.blocks[0];
|
|
@@ -18525,10 +18521,11 @@ var listItemProcessor = function (group, element, context) {
|
|
|
18525
18521
|
}
|
|
18526
18522
|
});
|
|
18527
18523
|
}
|
|
18528
|
-
|
|
18529
|
-
|
|
18530
|
-
|
|
18531
|
-
|
|
18524
|
+
finally {
|
|
18525
|
+
if (shouldPopListLevel) {
|
|
18526
|
+
listFormat.levels.pop();
|
|
18527
|
+
}
|
|
18528
|
+
listFormat.listParent = originalListParent;
|
|
18532
18529
|
}
|
|
18533
18530
|
};
|
|
18534
18531
|
exports.listItemProcessor = listItemProcessor;
|
|
@@ -18557,13 +18554,15 @@ var listProcessor = function (group, element, context) {
|
|
|
18557
18554
|
segment: 'shallowCloneForBlock',
|
|
18558
18555
|
paragraph: 'shallowCloneForGroup',
|
|
18559
18556
|
}, function () {
|
|
18560
|
-
var
|
|
18557
|
+
var tagName = element.tagName;
|
|
18558
|
+
var level = (0, createListLevel_1.createListLevel)(tagName, context.blockFormat);
|
|
18561
18559
|
var listFormat = context.listFormat;
|
|
18562
18560
|
(0, parseFormat_1.parseFormat)(element, context.formatParsers.dataset, level.dataset, context);
|
|
18563
18561
|
(0, parseFormat_1.parseFormat)(element, context.formatParsers.listLevelThread, level.format, context);
|
|
18564
18562
|
(0, parseFormat_1.parseFormat)(element, context.formatParsers.listLevel, level.format, context);
|
|
18565
18563
|
(0, parseFormat_1.parseFormat)(element, context.formatParsers.segment, context.segmentFormat, context);
|
|
18566
18564
|
var originalListParent = listFormat.listParent;
|
|
18565
|
+
listFormat.potentialListType = tagName;
|
|
18567
18566
|
listFormat.listParent = listFormat.listParent || group;
|
|
18568
18567
|
listFormat.levels.push(level);
|
|
18569
18568
|
try {
|
|
@@ -20808,38 +20807,6 @@ function normalizeText(txt, isForward) {
|
|
|
20808
20807
|
exports.normalizeText = normalizeText;
|
|
20809
20808
|
|
|
20810
20809
|
|
|
20811
|
-
/***/ },
|
|
20812
|
-
|
|
20813
|
-
/***/ "./packages/roosterjs-content-model-dom/lib/domUtils/stripInvisibleUnicode.ts"
|
|
20814
|
-
/*!************************************************************************************!*\
|
|
20815
|
-
!*** ./packages/roosterjs-content-model-dom/lib/domUtils/stripInvisibleUnicode.ts ***!
|
|
20816
|
-
\************************************************************************************/
|
|
20817
|
-
(__unused_webpack_module, exports) {
|
|
20818
|
-
|
|
20819
|
-
"use strict";
|
|
20820
|
-
|
|
20821
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
20822
|
-
exports.stripInvisibleUnicode = void 0;
|
|
20823
|
-
var INVISIBLE_UNICODE_REGEX =
|
|
20824
|
-
// eslint-disable-next-line no-misleading-character-class
|
|
20825
|
-
/[\u00AD\u034F\u061C\u115F\u1160\u17B4\u17B5\u180B-\u180E\u200B-\u200F\u202A-\u202E\u2028\u2029\u2060-\u2064\u2066-\u2069\u3164\uFEFF\uFFA0\uFFF9-\uFFFB]|\uDB40[\uDC01-\uDCFF]/g;
|
|
20826
|
-
/**
|
|
20827
|
-
* Strip invisible Unicode characters from a string.
|
|
20828
|
-
* This removes zero-width characters, bidirectional marks, Unicode Tags (U+E0001-U+E00FF),
|
|
20829
|
-
* interlinear annotation anchors, Mongolian free variation selectors,
|
|
20830
|
-
* and other invisible formatting characters that can be used to hide content in links.
|
|
20831
|
-
*
|
|
20832
|
-
* @remarks This function strips ZWJ (U+200D) which may affect emoji sequences.
|
|
20833
|
-
* It should only be applied to href attributes, not to visible text content.
|
|
20834
|
-
* @param value The string to strip invisible characters from
|
|
20835
|
-
* @returns The string with invisible characters removed
|
|
20836
|
-
*/
|
|
20837
|
-
function stripInvisibleUnicode(value) {
|
|
20838
|
-
return value.replace(INVISIBLE_UNICODE_REGEX, '');
|
|
20839
|
-
}
|
|
20840
|
-
exports.stripInvisibleUnicode = stripInvisibleUnicode;
|
|
20841
|
-
|
|
20842
|
-
|
|
20843
20810
|
/***/ },
|
|
20844
20811
|
|
|
20845
20812
|
/***/ "./packages/roosterjs-content-model-dom/lib/domUtils/style/borderValues.ts"
|
|
@@ -23636,9 +23603,9 @@ exports.shouldSetValue = shouldSetValue;
|
|
|
23636
23603
|
|
|
23637
23604
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
23638
23605
|
exports.createImage = exports.createText = exports.createTableCell = exports.createTable = exports.createSelectionMarker = exports.createParagraph = exports.createFormatContainer = exports.createListItem = exports.createBr = exports.isLinkUndeletable = exports.setLinkUndeletable = exports.scrollRectIntoView = exports.normalizeRect = exports.isWhiteSpacePreserved = exports.reuseCachedElement = exports.findClosestBlockEntityContainer = exports.isBlockEntityContainer = exports.isEntityDelimiter = exports.addDelimiters = exports.generateEntityClassNames = exports.parseEntityFormat = exports.getAllEntityWrappers = exports.findClosestEntityWrapper = exports.isEntityElement = exports.unwrap = exports.wrap = exports.wrapAllChildNodes = exports.moveChildNodes = exports.toArray = exports.getSafeIdSelector = exports.getObjectKeys = exports.isElementOfType = exports.isNodeOfType = exports.hasMetadata = exports.getMetadata = exports.updateMetadata = exports.buildSelectionMarker = exports.isBlockElement = exports.areSameFormats = exports.parseFormat = exports.getRegularSelectionOffsets = exports.formatContainerProcessor = exports.tableProcessor = exports.entityProcessor = exports.processChildNode = exports.handleRegularSelection = exports.childProcessor = exports.contentModelToText = exports.contentModelToDom = exports.domToContentModel = void 0;
|
|
23639
|
-
exports.getDOMInsertPointRect = exports.getSelectionRootNode = exports.isBold = exports.createModelToDomConfig = exports.createModelToDomContextWithConfig = exports.createModelToDomContext = exports.createDomToModelConfig = exports.createDomToModelContextWithConfig = exports.createDomToModelContext = exports.defaultGenerateColorKey = exports.parseColor = exports.setColor = exports.getColor = exports.DeprecatedColors = exports.BorderKeys = exports.parseValueWithUnit = exports.getAutoListStyleType = exports.getOrderedListNumberStr = exports.ParagraphFormats = exports.ListFormatsToMove = exports.ListFormatsToKeep = exports.ListFormats = exports.copyFormat = exports.setParagraphNotImplicit = exports.normalizeSegmentFormat = exports.mergeTextSegments = exports.normalizeSingleSegment = exports.isEmpty = exports.addSegment = exports.unwrapBlock = exports.isGeneralSegment = exports.
|
|
23640
|
-
exports.getSegmentTextFormat = exports.getListStyleTypeFromString = exports.retrieveModelFormatState = exports.setTableCellBackgroundColor = exports.MIN_ALLOWED_TABLE_CELL_HEIGHT = exports.MIN_ALLOWED_TABLE_CELL_WIDTH = exports.normalizeTable = exports.setFirstColumnFormatBorders = exports.applyTableFormat = exports.deleteBlock = exports.deleteSegment = exports.deleteSelection = exports.mergeModel = exports.cloneModel = exports.setSelection = exports.hasSelectionInBlockGroup = exports.hasSelectionInSegment = exports.hasSelectionInBlock = exports.getSelectedCells = exports.getSelectedSegmentsAndParagraphs = exports.getSelectedSegments = exports.getSelectedParagraphs = exports.getOperationalBlocks = exports.getFirstSelectedTable = exports.getFirstSelectedListItem = exports.iterateSelections = exports.isBlockGroupOfType = exports.getRangesByText = exports.getImageState = exports.setImageState = exports.getParagraphMarker = exports.setParagraphMarker = exports.cacheGetEventData = exports.extractClipboardItems = exports.normalizeFontFamily = exports.transformColor = exports.retrieveDocumentMetadata = exports.readFile = exports.parseTableCells = exports.
|
|
23641
|
-
exports.EmptySegmentFormat = exports.UnorderedListStyleMap = exports.OrderedListStyleMap = exports.TableBorderFormat = exports.NumberingListType = exports.BulletListType = exports.ChangeSource = exports.ListMetadataDefinition = exports.getListMetadata = exports.updateListMetadata = exports.getTableMetadata = exports.updateTableMetadata = exports.getTableCellMetadata = exports.updateTableCellMetadata = exports.getImageMetadata = exports.updateImageMetadata =
|
|
23606
|
+
exports.trimModelForSelection = exports.getDOMInsertPointRect = exports.getSelectionRootNode = exports.isBold = exports.createModelToDomConfig = exports.createModelToDomContextWithConfig = exports.createModelToDomContext = exports.createDomToModelConfig = exports.createDomToModelContextWithConfig = exports.createDomToModelContext = exports.defaultGenerateColorKey = exports.parseColor = exports.setColor = exports.getColor = exports.DeprecatedColors = exports.BorderKeys = exports.parseValueWithUnit = exports.getAutoListStyleType = exports.getOrderedListNumberStr = exports.ParagraphFormats = exports.ListFormatsToMove = exports.ListFormatsToKeep = exports.ListFormats = exports.copyFormat = exports.setParagraphNotImplicit = exports.normalizeSegmentFormat = exports.mergeTextSegments = exports.normalizeSingleSegment = exports.isEmpty = exports.addSegment = exports.unwrapBlock = exports.isGeneralSegment = exports.normalizeContentModel = exports.normalizeParagraph = exports.addTextSegment = exports.addLink = exports.addCode = exports.addBlock = exports.mutateSegment = exports.mutateSegments = exports.mutateBlock = exports.createTableRow = exports.createEmptyModel = exports.createListLevel = exports.createDivider = exports.createEntity = exports.createGeneralBlock = exports.createGeneralSegment = exports.createParagraphDecorator = exports.createContentModelDocument = void 0;
|
|
23607
|
+
exports.runEditSteps = exports.getClosestAncestorBlockGroupIndex = exports.getSegmentTextFormat = exports.getListStyleTypeFromString = exports.retrieveModelFormatState = exports.setTableCellBackgroundColor = exports.MIN_ALLOWED_TABLE_CELL_HEIGHT = exports.MIN_ALLOWED_TABLE_CELL_WIDTH = exports.normalizeTable = exports.setFirstColumnFormatBorders = exports.applyTableFormat = exports.deleteBlock = exports.deleteSegment = exports.deleteSelection = exports.mergeModel = exports.cloneModel = exports.setSelection = exports.hasSelectionInBlockGroup = exports.hasSelectionInSegment = exports.hasSelectionInBlock = exports.getSelectedCells = exports.getSelectedSegmentsAndParagraphs = exports.getSelectedSegments = exports.getSelectedParagraphs = exports.getOperationalBlocks = exports.getFirstSelectedTable = exports.getFirstSelectedListItem = exports.iterateSelections = exports.isBlockGroupOfType = exports.getRangesByText = exports.getImageState = exports.setImageState = exports.getParagraphMarker = exports.setParagraphMarker = exports.cacheGetEventData = exports.extractClipboardItems = exports.normalizeFontFamily = exports.transformColor = exports.retrieveDocumentMetadata = exports.readFile = exports.parseTableCells = exports.normalizeText = exports.isSpace = exports.isPunctuation = exports.extractBorderValues = exports.combineBorderValue = exports.getNodePositionFromEvent = exports.isCursorMovingKey = exports.isModifierKey = exports.isCharacterValue = void 0;
|
|
23608
|
+
exports.EmptySegmentFormat = exports.UnorderedListStyleMap = exports.OrderedListStyleMap = exports.TableBorderFormat = exports.NumberingListType = exports.BulletListType = exports.ChangeSource = exports.ListMetadataDefinition = exports.getListMetadata = exports.updateListMetadata = exports.getTableMetadata = exports.updateTableMetadata = exports.getTableCellMetadata = exports.updateTableCellMetadata = exports.getImageMetadata = exports.updateImageMetadata = void 0;
|
|
23642
23609
|
var domToContentModel_1 = __webpack_require__(/*! ./domToModel/domToContentModel */ "./packages/roosterjs-content-model-dom/lib/domToModel/domToContentModel.ts");
|
|
23643
23610
|
Object.defineProperty(exports, "domToContentModel", ({ enumerable: true, get: function () { return domToContentModel_1.domToContentModel; } }));
|
|
23644
23611
|
var contentModelToDom_1 = __webpack_require__(/*! ./modelToDom/contentModelToDom */ "./packages/roosterjs-content-model-dom/lib/modelToDom/contentModelToDom.ts");
|
|
@@ -23759,8 +23726,6 @@ var normalizeParagraph_1 = __webpack_require__(/*! ./modelApi/common/normalizePa
|
|
|
23759
23726
|
Object.defineProperty(exports, "normalizeParagraph", ({ enumerable: true, get: function () { return normalizeParagraph_1.normalizeParagraph; } }));
|
|
23760
23727
|
var normalizeContentModel_1 = __webpack_require__(/*! ./modelApi/common/normalizeContentModel */ "./packages/roosterjs-content-model-dom/lib/modelApi/common/normalizeContentModel.ts");
|
|
23761
23728
|
Object.defineProperty(exports, "normalizeContentModel", ({ enumerable: true, get: function () { return normalizeContentModel_1.normalizeContentModel; } }));
|
|
23762
|
-
var sanitizeInvisibleUnicode_1 = __webpack_require__(/*! ./modelApi/common/sanitizeInvisibleUnicode */ "./packages/roosterjs-content-model-dom/lib/modelApi/common/sanitizeInvisibleUnicode.ts");
|
|
23763
|
-
Object.defineProperty(exports, "sanitizeInvisibleUnicode", ({ enumerable: true, get: function () { return sanitizeInvisibleUnicode_1.sanitizeInvisibleUnicode; } }));
|
|
23764
23729
|
var isGeneralSegment_1 = __webpack_require__(/*! ./modelApi/typeCheck/isGeneralSegment */ "./packages/roosterjs-content-model-dom/lib/modelApi/typeCheck/isGeneralSegment.ts");
|
|
23765
23730
|
Object.defineProperty(exports, "isGeneralSegment", ({ enumerable: true, get: function () { return isGeneralSegment_1.isGeneralSegment; } }));
|
|
23766
23731
|
var unwrapBlock_1 = __webpack_require__(/*! ./modelApi/common/unwrapBlock */ "./packages/roosterjs-content-model-dom/lib/modelApi/common/unwrapBlock.ts");
|
|
@@ -23826,8 +23791,6 @@ var stringUtil_1 = __webpack_require__(/*! ./domUtils/stringUtil */ "./packages/
|
|
|
23826
23791
|
Object.defineProperty(exports, "isPunctuation", ({ enumerable: true, get: function () { return stringUtil_1.isPunctuation; } }));
|
|
23827
23792
|
Object.defineProperty(exports, "isSpace", ({ enumerable: true, get: function () { return stringUtil_1.isSpace; } }));
|
|
23828
23793
|
Object.defineProperty(exports, "normalizeText", ({ enumerable: true, get: function () { return stringUtil_1.normalizeText; } }));
|
|
23829
|
-
var stripInvisibleUnicode_1 = __webpack_require__(/*! ./domUtils/stripInvisibleUnicode */ "./packages/roosterjs-content-model-dom/lib/domUtils/stripInvisibleUnicode.ts");
|
|
23830
|
-
Object.defineProperty(exports, "stripInvisibleUnicode", ({ enumerable: true, get: function () { return stripInvisibleUnicode_1.stripInvisibleUnicode; } }));
|
|
23831
23794
|
var parseTableCells_1 = __webpack_require__(/*! ./domUtils/table/parseTableCells */ "./packages/roosterjs-content-model-dom/lib/domUtils/table/parseTableCells.ts");
|
|
23832
23795
|
Object.defineProperty(exports, "parseTableCells", ({ enumerable: true, get: function () { return parseTableCells_1.parseTableCells; } }));
|
|
23833
23796
|
var readFile_1 = __webpack_require__(/*! ./domUtils/readFile */ "./packages/roosterjs-content-model-dom/lib/domUtils/readFile.ts");
|
|
@@ -24826,134 +24789,6 @@ function normalizeSegmentFormat(format, environment) {
|
|
|
24826
24789
|
exports.normalizeSegmentFormat = normalizeSegmentFormat;
|
|
24827
24790
|
|
|
24828
24791
|
|
|
24829
|
-
/***/ },
|
|
24830
|
-
|
|
24831
|
-
/***/ "./packages/roosterjs-content-model-dom/lib/modelApi/common/sanitizeInvisibleUnicode.ts"
|
|
24832
|
-
/*!**********************************************************************************************!*\
|
|
24833
|
-
!*** ./packages/roosterjs-content-model-dom/lib/modelApi/common/sanitizeInvisibleUnicode.ts ***!
|
|
24834
|
-
\**********************************************************************************************/
|
|
24835
|
-
(__unused_webpack_module, exports, __webpack_require__) {
|
|
24836
|
-
|
|
24837
|
-
"use strict";
|
|
24838
|
-
|
|
24839
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
24840
|
-
exports.sanitizeInvisibleUnicode = void 0;
|
|
24841
|
-
var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.mjs");
|
|
24842
|
-
var stripInvisibleUnicode_1 = __webpack_require__(/*! ../../domUtils/stripInvisibleUnicode */ "./packages/roosterjs-content-model-dom/lib/domUtils/stripInvisibleUnicode.ts");
|
|
24843
|
-
/**
|
|
24844
|
-
* Strip invisible Unicode characters from all text and link hrefs in a content model.
|
|
24845
|
-
* This sanitizes the model at initialization time to prevent hidden content in links
|
|
24846
|
-
* or text (e.g. zero-width chars, bidirectional marks, Unicode Tags).
|
|
24847
|
-
* For General segments, all Text nodes under the element are also sanitized.
|
|
24848
|
-
* @param model The content model document to sanitize in-place
|
|
24849
|
-
*/
|
|
24850
|
-
function sanitizeInvisibleUnicode(model) {
|
|
24851
|
-
sanitizeBlockGroup(model);
|
|
24852
|
-
}
|
|
24853
|
-
exports.sanitizeInvisibleUnicode = sanitizeInvisibleUnicode;
|
|
24854
|
-
function sanitizeBlockGroup(group) {
|
|
24855
|
-
var e_1, _a;
|
|
24856
|
-
try {
|
|
24857
|
-
for (var _b = (0, tslib_1.__values)(group.blocks), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
24858
|
-
var block = _c.value;
|
|
24859
|
-
sanitizeBlock(block);
|
|
24860
|
-
}
|
|
24861
|
-
}
|
|
24862
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
24863
|
-
finally {
|
|
24864
|
-
try {
|
|
24865
|
-
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
24866
|
-
}
|
|
24867
|
-
finally { if (e_1) throw e_1.error; }
|
|
24868
|
-
}
|
|
24869
|
-
}
|
|
24870
|
-
function sanitizeBlock(block) {
|
|
24871
|
-
var e_2, _a, e_3, _b, e_4, _c;
|
|
24872
|
-
switch (block.blockType) {
|
|
24873
|
-
case 'Paragraph':
|
|
24874
|
-
try {
|
|
24875
|
-
for (var _d = (0, tslib_1.__values)(block.segments), _e = _d.next(); !_e.done; _e = _d.next()) {
|
|
24876
|
-
var segment = _e.value;
|
|
24877
|
-
sanitizeSegment(segment);
|
|
24878
|
-
}
|
|
24879
|
-
}
|
|
24880
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
24881
|
-
finally {
|
|
24882
|
-
try {
|
|
24883
|
-
if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
|
|
24884
|
-
}
|
|
24885
|
-
finally { if (e_2) throw e_2.error; }
|
|
24886
|
-
}
|
|
24887
|
-
break;
|
|
24888
|
-
case 'Table':
|
|
24889
|
-
try {
|
|
24890
|
-
for (var _f = (0, tslib_1.__values)(block.rows), _g = _f.next(); !_g.done; _g = _f.next()) {
|
|
24891
|
-
var row = _g.value;
|
|
24892
|
-
try {
|
|
24893
|
-
for (var _h = (e_4 = void 0, (0, tslib_1.__values)(row.cells)), _j = _h.next(); !_j.done; _j = _h.next()) {
|
|
24894
|
-
var cell = _j.value;
|
|
24895
|
-
sanitizeBlockGroup(cell);
|
|
24896
|
-
}
|
|
24897
|
-
}
|
|
24898
|
-
catch (e_4_1) { e_4 = { error: e_4_1 }; }
|
|
24899
|
-
finally {
|
|
24900
|
-
try {
|
|
24901
|
-
if (_j && !_j.done && (_c = _h.return)) _c.call(_h);
|
|
24902
|
-
}
|
|
24903
|
-
finally { if (e_4) throw e_4.error; }
|
|
24904
|
-
}
|
|
24905
|
-
}
|
|
24906
|
-
}
|
|
24907
|
-
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
24908
|
-
finally {
|
|
24909
|
-
try {
|
|
24910
|
-
if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
|
|
24911
|
-
}
|
|
24912
|
-
finally { if (e_3) throw e_3.error; }
|
|
24913
|
-
}
|
|
24914
|
-
break;
|
|
24915
|
-
case 'BlockGroup':
|
|
24916
|
-
sanitizeBlockGroup(block);
|
|
24917
|
-
if (block.blockGroupType === 'General' && block.element) {
|
|
24918
|
-
sanitizeTextNodes(block.element);
|
|
24919
|
-
}
|
|
24920
|
-
break;
|
|
24921
|
-
case 'Entity':
|
|
24922
|
-
case 'Divider':
|
|
24923
|
-
break;
|
|
24924
|
-
}
|
|
24925
|
-
}
|
|
24926
|
-
function sanitizeSegment(segment) {
|
|
24927
|
-
var _a;
|
|
24928
|
-
if ((_a = segment.link) === null || _a === void 0 ? void 0 : _a.format.href) {
|
|
24929
|
-
segment.link.format.href = (0, stripInvisibleUnicode_1.stripInvisibleUnicode)(segment.link.format.href);
|
|
24930
|
-
}
|
|
24931
|
-
switch (segment.segmentType) {
|
|
24932
|
-
case 'Text':
|
|
24933
|
-
segment.text = (0, stripInvisibleUnicode_1.stripInvisibleUnicode)(segment.text);
|
|
24934
|
-
break;
|
|
24935
|
-
case 'General':
|
|
24936
|
-
sanitizeTextNodes(segment.element);
|
|
24937
|
-
sanitizeBlockGroup(segment);
|
|
24938
|
-
break;
|
|
24939
|
-
case 'Image':
|
|
24940
|
-
case 'Entity':
|
|
24941
|
-
case 'Br':
|
|
24942
|
-
case 'SelectionMarker':
|
|
24943
|
-
break;
|
|
24944
|
-
}
|
|
24945
|
-
}
|
|
24946
|
-
function sanitizeTextNodes(element) {
|
|
24947
|
-
var walker = element.ownerDocument.createTreeWalker(element, NodeFilter.SHOW_TEXT);
|
|
24948
|
-
var node;
|
|
24949
|
-
while ((node = walker.nextNode())) {
|
|
24950
|
-
if (node.nodeValue) {
|
|
24951
|
-
node.nodeValue = (0, stripInvisibleUnicode_1.stripInvisibleUnicode)(node.nodeValue);
|
|
24952
|
-
}
|
|
24953
|
-
}
|
|
24954
|
-
}
|
|
24955
|
-
|
|
24956
|
-
|
|
24957
24792
|
/***/ },
|
|
24958
24793
|
|
|
24959
24794
|
/***/ "./packages/roosterjs-content-model-dom/lib/modelApi/common/unwrapBlock.ts"
|
|
@@ -29296,7 +29131,7 @@ var handleBlockGroupChildren = function (doc, parent, group, context) {
|
|
|
29296
29131
|
exports.handleBlockGroupChildren = handleBlockGroupChildren;
|
|
29297
29132
|
function cleanUpNodeStack(nodeStack, context) {
|
|
29298
29133
|
var _a, _b;
|
|
29299
|
-
if (
|
|
29134
|
+
if (nodeStack.length > 0) {
|
|
29300
29135
|
// Clear list stack, only run to nodeStack[1] because nodeStack[0] is the parent node
|
|
29301
29136
|
for (var i = nodeStack.length - 1; i > 0; i--) {
|
|
29302
29137
|
var node = (_b = (_a = nodeStack.pop()) === null || _a === void 0 ? void 0 : _a.refNode) !== null && _b !== void 0 ? _b : null;
|
|
@@ -29671,20 +29506,16 @@ var handleList = function (doc, parent, listItem, context, refNode) {
|
|
|
29671
29506
|
// Apply metadata to list level to make sure list style is correct after rendering
|
|
29672
29507
|
(0, applyMetadata_1.applyMetadata)(itemLevel, context.metadataAppliers.listLevel, itemLevel.format, context);
|
|
29673
29508
|
}
|
|
29674
|
-
if (
|
|
29675
|
-
parentLevel.refNode &&
|
|
29676
|
-
itemLevel.cachedElement == parentLevel.refNode) {
|
|
29509
|
+
if (parentLevel.refNode && itemLevel.cachedElement == parentLevel.refNode) {
|
|
29677
29510
|
// Move refNode to next node since we are reusing this cached element
|
|
29678
29511
|
parentLevel.refNode = parentLevel.refNode.nextSibling;
|
|
29679
29512
|
}
|
|
29680
29513
|
}
|
|
29681
29514
|
// Cut off remained list levels that we can't reuse
|
|
29682
|
-
|
|
29683
|
-
|
|
29684
|
-
|
|
29685
|
-
|
|
29686
|
-
(0, cleanUpRestNodes_1.cleanUpRestNodes)(stackLevel.refNode, context.rewriteFromModel);
|
|
29687
|
-
}
|
|
29515
|
+
// Clean up all rest nodes in the reused list levels
|
|
29516
|
+
for (var i = layer + 1; i < nodeStack.length; i++) {
|
|
29517
|
+
var stackLevel = nodeStack[i];
|
|
29518
|
+
(0, cleanUpRestNodes_1.cleanUpRestNodes)(stackLevel.refNode, context.rewriteFromModel);
|
|
29688
29519
|
}
|
|
29689
29520
|
nodeStack.splice(layer + 1);
|
|
29690
29521
|
// Create new list levels that are after reused ones
|
|
@@ -29695,7 +29526,7 @@ var handleList = function (doc, parent, listItem, context, refNode) {
|
|
|
29695
29526
|
var isNewlyCreated = false;
|
|
29696
29527
|
var levelRefNode = (_c = nodeStack[layer].refNode) !== null && _c !== void 0 ? _c : null;
|
|
29697
29528
|
context.listFormat.currentLevel = layer;
|
|
29698
|
-
if (
|
|
29529
|
+
if (level.cachedElement) {
|
|
29699
29530
|
newList = level.cachedElement;
|
|
29700
29531
|
nodeStack[layer].refNode = (0, reuseCachedElement_1.reuseCachedElement)(lastParent, level.cachedElement, levelRefNode, context.rewriteFromModel);
|
|
29701
29532
|
nodeStack.push({
|
|
@@ -29717,9 +29548,7 @@ var handleList = function (doc, parent, listItem, context, refNode) {
|
|
|
29717
29548
|
format: (0, tslib_1.__assign)({}, level.format),
|
|
29718
29549
|
dataset: (0, tslib_1.__assign)({}, level.dataset),
|
|
29719
29550
|
});
|
|
29720
|
-
|
|
29721
|
-
level.cachedElement = newList;
|
|
29722
|
-
}
|
|
29551
|
+
level.cachedElement = newList;
|
|
29723
29552
|
}
|
|
29724
29553
|
(0, applyFormat_1.applyFormat)(newList, context.formatAppliers.listLevelThread, level.format, context);
|
|
29725
29554
|
// Need to apply metadata after applying list level format since the list numbers value relies on the result of list thread handling
|
|
@@ -29770,7 +29599,7 @@ var handleListItem = function (doc, parent, listItem, context, refNode) {
|
|
|
29770
29599
|
var level = listItem.levels[listItem.levels.length - 1];
|
|
29771
29600
|
var li;
|
|
29772
29601
|
var isNewlyCreated = false;
|
|
29773
|
-
if (
|
|
29602
|
+
if (listItem.cachedElement) {
|
|
29774
29603
|
li = listItem.cachedElement;
|
|
29775
29604
|
// Check if the cached LI is used as refNode under another list level,
|
|
29776
29605
|
// since we know we are going to move it under the current listParent,
|
|
@@ -29789,9 +29618,7 @@ var handleListItem = function (doc, parent, listItem, context, refNode) {
|
|
|
29789
29618
|
// This happens when outdent a list item to cause it has no list level
|
|
29790
29619
|
listParent.insertBefore(li, (itemRefNode === null || itemRefNode === void 0 ? void 0 : itemRefNode.parentNode) == listParent ? itemRefNode : null);
|
|
29791
29620
|
context.rewriteFromModel.addedBlockElements.push(li);
|
|
29792
|
-
|
|
29793
|
-
listItem.cachedElement = li;
|
|
29794
|
-
}
|
|
29621
|
+
listItem.cachedElement = li;
|
|
29795
29622
|
}
|
|
29796
29623
|
if (level) {
|
|
29797
29624
|
(0, applyFormat_1.applyFormat)(li, context.formatAppliers.segment, listItem.formatHolder.format, context);
|
|
@@ -33681,7 +33508,6 @@ var EditPlugin = /** @class */ (function () {
|
|
|
33681
33508
|
this.disposer = null;
|
|
33682
33509
|
this.shouldHandleNextInputEvent = false;
|
|
33683
33510
|
this.selectionAfterDelete = null;
|
|
33684
|
-
this.handleNormalEnter = function () { return false; };
|
|
33685
33511
|
var tabOptions = options.handleTabKey === false
|
|
33686
33512
|
? DisabledHandleTabOptions
|
|
33687
33513
|
: options.handleTabKey === true || !options.handleTabKey
|
|
@@ -33689,19 +33515,6 @@ var EditPlugin = /** @class */ (function () {
|
|
|
33689
33515
|
: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, DefaultHandleTabOptions), options.handleTabKey);
|
|
33690
33516
|
this.options = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, DefaultOptions), options), { handleTabKey: tabOptions });
|
|
33691
33517
|
}
|
|
33692
|
-
EditPlugin.prototype.createNormalEnterChecker = function (result) {
|
|
33693
|
-
return result ? function () { return true; } : function () { return false; };
|
|
33694
|
-
};
|
|
33695
|
-
EditPlugin.prototype.getHandleNormalEnter = function (editor) {
|
|
33696
|
-
switch (typeof this.options.shouldHandleEnterKey) {
|
|
33697
|
-
case 'function':
|
|
33698
|
-
return this.options.shouldHandleEnterKey;
|
|
33699
|
-
case 'boolean':
|
|
33700
|
-
return this.createNormalEnterChecker(this.options.shouldHandleEnterKey);
|
|
33701
|
-
default:
|
|
33702
|
-
return this.createNormalEnterChecker(editor.isExperimentalFeatureEnabled('HandleEnterKey'));
|
|
33703
|
-
}
|
|
33704
|
-
};
|
|
33705
33518
|
/**
|
|
33706
33519
|
* Get name of this plugin
|
|
33707
33520
|
*/
|
|
@@ -33717,7 +33530,6 @@ var EditPlugin = /** @class */ (function () {
|
|
|
33717
33530
|
EditPlugin.prototype.initialize = function (editor) {
|
|
33718
33531
|
var _this = this;
|
|
33719
33532
|
this.editor = editor;
|
|
33720
|
-
this.handleNormalEnter = this.getHandleNormalEnter(editor);
|
|
33721
33533
|
if (editor.getEnvironment().isAndroid) {
|
|
33722
33534
|
this.disposer = this.editor.attachDomEvent({
|
|
33723
33535
|
beforeinput: {
|
|
@@ -33821,7 +33633,7 @@ var EditPlugin = /** @class */ (function () {
|
|
|
33821
33633
|
if (!hasCtrlOrMetaKey &&
|
|
33822
33634
|
!event.rawEvent.isComposing &&
|
|
33823
33635
|
event.rawEvent.keyCode !== DEAD_KEY) {
|
|
33824
|
-
(0, keyboardEnter_1.keyboardEnter)(editor, rawEvent, this.
|
|
33636
|
+
(0, keyboardEnter_1.keyboardEnter)(editor, rawEvent, this.options.formatsToPreserveOnMerge);
|
|
33825
33637
|
}
|
|
33826
33638
|
break;
|
|
33827
33639
|
default:
|
|
@@ -34816,11 +34628,11 @@ var roosterjs_content_model_dom_1 = __webpack_require__(/*! roosterjs-content-mo
|
|
|
34816
34628
|
/**
|
|
34817
34629
|
* @internal
|
|
34818
34630
|
*/
|
|
34819
|
-
function keyboardEnter(editor, rawEvent,
|
|
34631
|
+
function keyboardEnter(editor, rawEvent, formatsToPreserveOnMerge) {
|
|
34820
34632
|
if (formatsToPreserveOnMerge === void 0) { formatsToPreserveOnMerge = []; }
|
|
34821
34633
|
var selection = editor.getDOMSelection();
|
|
34822
34634
|
editor.formatContentModel(function (model, context) {
|
|
34823
|
-
var _a
|
|
34635
|
+
var _a;
|
|
34824
34636
|
// 1. delete the expanded selection if any, then merge paragraph
|
|
34825
34637
|
var result = (0, roosterjs_content_model_dom_1.deleteSelection)(model, [], context);
|
|
34826
34638
|
// 2. Add line break
|
|
@@ -34831,14 +34643,12 @@ function keyboardEnter(editor, rawEvent, handleNormalEnter, formatsToPreserveOnM
|
|
|
34831
34643
|
var steps = rawEvent.shiftKey
|
|
34832
34644
|
? []
|
|
34833
34645
|
: [handleAutoLink_1.handleAutoLink, handleEnterOnList_1.handleEnterOnList, deleteEmptyQuote_1.deleteEmptyQuote];
|
|
34834
|
-
|
|
34835
|
-
steps.push((0, handleEnterOnParagraph_1.handleEnterOnParagraph)(formatsToPreserveOnMerge));
|
|
34836
|
-
}
|
|
34646
|
+
steps.push((0, handleEnterOnParagraph_1.handleEnterOnParagraph)(formatsToPreserveOnMerge));
|
|
34837
34647
|
(0, roosterjs_content_model_dom_1.runEditSteps)(steps, result);
|
|
34838
34648
|
}
|
|
34839
34649
|
if (result.deleteResult == 'range') {
|
|
34840
34650
|
// We have deleted something, next input should inherit the segment format from deleted content, so set pending format here
|
|
34841
|
-
context.newPendingFormat = (
|
|
34651
|
+
context.newPendingFormat = (_a = result.insertPoint) === null || _a === void 0 ? void 0 : _a.marker.format;
|
|
34842
34652
|
(0, roosterjs_content_model_dom_1.normalizeContentModel)(model);
|
|
34843
34653
|
rawEvent.preventDefault();
|
|
34844
34654
|
return true;
|
|
@@ -34855,10 +34665,6 @@ function keyboardEnter(editor, rawEvent, handleNormalEnter, formatsToPreserveOnM
|
|
|
34855
34665
|
});
|
|
34856
34666
|
}
|
|
34857
34667
|
exports.keyboardEnter = keyboardEnter;
|
|
34858
|
-
function handleEnterForEntity(paragraph) {
|
|
34859
|
-
return (paragraph &&
|
|
34860
|
-
(paragraph.isImplicit || paragraph.segments.some(function (x) { return x.segmentType == 'Entity'; })));
|
|
34861
|
-
}
|
|
34862
34668
|
|
|
34863
34669
|
|
|
34864
34670
|
/***/ },
|