roosterjs 8.24.0 → 8.26.1
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-amd-min.js +1 -1
- package/dist/rooster-amd-min.js.map +1 -1
- package/dist/rooster-amd.d.ts +430 -128
- package/dist/rooster-amd.js +682 -412
- 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.d.ts +430 -128
- package/dist/rooster.js +682 -412
- package/dist/rooster.js.map +1 -1
- package/package.json +7 -7
- package/tsconfig.child.tsbuildinfo +1 -1
package/dist/rooster-amd.js
CHANGED
|
@@ -2247,7 +2247,7 @@ function changeCapitalization(editor, capitalization, language) {
|
|
|
2247
2247
|
}
|
|
2248
2248
|
}
|
|
2249
2249
|
}
|
|
2250
|
-
});
|
|
2250
|
+
}, 'changeCapitalization');
|
|
2251
2251
|
function getCapitalizedText(originalText, language) {
|
|
2252
2252
|
switch (capitalization) {
|
|
2253
2253
|
case "lowercase" /* Lowercase */:
|
|
@@ -2317,7 +2317,7 @@ function changeFontSize(editor, change, fontSizes) {
|
|
|
2317
2317
|
if (lineHeight != 'normal') {
|
|
2318
2318
|
element.style.lineHeight = 'normal';
|
|
2319
2319
|
}
|
|
2320
|
-
});
|
|
2320
|
+
}, 'changeFontSize');
|
|
2321
2321
|
}
|
|
2322
2322
|
exports.default = changeFontSize;
|
|
2323
2323
|
/**
|
|
@@ -2396,6 +2396,7 @@ exports.default = clearBlockFormat;
|
|
|
2396
2396
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2397
2397
|
var blockFormat_1 = __webpack_require__(/*! ../utils/blockFormat */ "./packages/roosterjs-editor-api/lib/utils/blockFormat.ts");
|
|
2398
2398
|
var execCommand_1 = __webpack_require__(/*! ../utils/execCommand */ "./packages/roosterjs-editor-api/lib/utils/execCommand.ts");
|
|
2399
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
2399
2400
|
var setBackgroundColor_1 = __webpack_require__(/*! ./setBackgroundColor */ "./packages/roosterjs-editor-api/lib/format/setBackgroundColor.ts");
|
|
2400
2401
|
var setFontName_1 = __webpack_require__(/*! ./setFontName */ "./packages/roosterjs-editor-api/lib/format/setFontName.ts");
|
|
2401
2402
|
var setFontSize_1 = __webpack_require__(/*! ./setFontSize */ "./packages/roosterjs-editor-api/lib/format/setFontSize.ts");
|
|
@@ -2466,7 +2467,7 @@ function clearAttribute(element) {
|
|
|
2466
2467
|
function updateStyles(element, callbackfn) {
|
|
2467
2468
|
var styles = (0, roosterjs_editor_dom_1.getStyles)(element);
|
|
2468
2469
|
var result = {};
|
|
2469
|
-
|
|
2470
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(styles).forEach(function (style) { return callbackfn(style, styles, result); });
|
|
2470
2471
|
(0, roosterjs_editor_dom_1.setStyles)(element, styles);
|
|
2471
2472
|
return result;
|
|
2472
2473
|
}
|
|
@@ -2511,7 +2512,7 @@ function clearAutoDetectFormat(editor) {
|
|
|
2511
2512
|
* @param editor The editor instance
|
|
2512
2513
|
*/
|
|
2513
2514
|
function clearBlockFormat(editor) {
|
|
2514
|
-
|
|
2515
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
2515
2516
|
(0, blockFormat_1.default)(editor, function (region) {
|
|
2516
2517
|
var blocks = (0, roosterjs_editor_dom_1.getSelectedBlockElementsInRegion)(region);
|
|
2517
2518
|
var nodes = (0, roosterjs_editor_dom_1.collapseNodesInRegion)(region, blocks);
|
|
@@ -2519,7 +2520,7 @@ function clearBlockFormat(editor) {
|
|
|
2519
2520
|
// If there are styles on table cell, wrap all its children and move down all non-border styles.
|
|
2520
2521
|
// So that we can preserve styles for unselected blocks as well as border styles for table
|
|
2521
2522
|
var nonborderStyles = removeNonBorderStyles(region.rootNode);
|
|
2522
|
-
if (
|
|
2523
|
+
if ((0, roosterjs_editor_dom_1.getObjectKeys)(nonborderStyles).length > 0) {
|
|
2523
2524
|
var wrapper = (0, roosterjs_editor_dom_1.wrap)((0, roosterjs_editor_dom_1.toArray)(region.rootNode.childNodes));
|
|
2524
2525
|
(0, roosterjs_editor_dom_1.setStyles)(wrapper, nonborderStyles);
|
|
2525
2526
|
}
|
|
@@ -2530,7 +2531,7 @@ function clearBlockFormat(editor) {
|
|
|
2530
2531
|
nodes.forEach(clearNodeFormat);
|
|
2531
2532
|
});
|
|
2532
2533
|
setDefaultFormat(editor);
|
|
2533
|
-
},
|
|
2534
|
+
}, 'clearBlockFormat');
|
|
2534
2535
|
}
|
|
2535
2536
|
function clearInlineFormat(editor) {
|
|
2536
2537
|
editor.focus();
|
|
@@ -2540,11 +2541,12 @@ function clearInlineFormat(editor) {
|
|
|
2540
2541
|
return node.removeAttribute('class');
|
|
2541
2542
|
});
|
|
2542
2543
|
setDefaultFormat(editor);
|
|
2544
|
+
return 'clearInlineFormat';
|
|
2543
2545
|
}, "Format" /* Format */);
|
|
2544
2546
|
}
|
|
2545
2547
|
function setDefaultFormat(editor) {
|
|
2546
2548
|
var defaultFormat = editor.getDefaultFormat();
|
|
2547
|
-
var isDefaultFormatEmpty =
|
|
2549
|
+
var isDefaultFormatEmpty = (0, roosterjs_editor_dom_1.getObjectKeys)(defaultFormat).length === 0;
|
|
2548
2550
|
editor.queryElements('[style]', 2 /* InSelection */, function (node) {
|
|
2549
2551
|
var tag = (0, roosterjs_editor_dom_1.getTagOfNode)(node);
|
|
2550
2552
|
if (TAGS_TO_STOP_UNWRAP.indexOf(tag) == -1) {
|
|
@@ -2723,11 +2725,13 @@ function createLink(editor, link, altText, displayText, target) {
|
|
|
2723
2725
|
editor.getDocument().execCommand("createLink" /* CreateLink */, false, normalizedUrl_1);
|
|
2724
2726
|
var traverser = editor.getSelectionTraverser();
|
|
2725
2727
|
var currentInline = traverser.getNextInlineElement();
|
|
2728
|
+
// list for removing unwanted lines
|
|
2729
|
+
var deletionInlineList = [];
|
|
2726
2730
|
while (currentInline) {
|
|
2727
|
-
|
|
2728
|
-
a.parentElement.removeChild(a);
|
|
2731
|
+
deletionInlineList.push(currentInline.getContainerNode());
|
|
2729
2732
|
currentInline = traverser.getNextInlineElement();
|
|
2730
2733
|
}
|
|
2734
|
+
deletionInlineList.forEach(function (node) { return editor.deleteNode(node); });
|
|
2731
2735
|
anchor = getAnchorNodeAtCursor(editor);
|
|
2732
2736
|
updateAnchorDisplayText(anchor, displayText);
|
|
2733
2737
|
}
|
|
@@ -2928,6 +2932,7 @@ exports.default = insertEntity;
|
|
|
2928
2932
|
"use strict";
|
|
2929
2933
|
|
|
2930
2934
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2935
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
2931
2936
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
2932
2937
|
function insertImage(editor, imageFile, attributes) {
|
|
2933
2938
|
if (typeof imageFile == 'string') {
|
|
@@ -2943,17 +2948,17 @@ function insertImage(editor, imageFile, attributes) {
|
|
|
2943
2948
|
}
|
|
2944
2949
|
exports.default = insertImage;
|
|
2945
2950
|
function insertImageWithSrc(editor, src, attributes) {
|
|
2946
|
-
|
|
2951
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
2947
2952
|
var image = editor.getDocument().createElement('img');
|
|
2948
2953
|
image.src = src;
|
|
2949
2954
|
if (attributes) {
|
|
2950
|
-
|
|
2955
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(attributes).forEach(function (attribute) {
|
|
2951
2956
|
return image.setAttribute(attribute, attributes[attribute]);
|
|
2952
2957
|
});
|
|
2953
2958
|
}
|
|
2954
2959
|
image.style.maxWidth = '100%';
|
|
2955
2960
|
editor.insertNode(image);
|
|
2956
|
-
},
|
|
2961
|
+
}, 'insertImage');
|
|
2957
2962
|
}
|
|
2958
2963
|
|
|
2959
2964
|
|
|
@@ -2969,6 +2974,7 @@ function insertImageWithSrc(editor, src, attributes) {
|
|
|
2969
2974
|
"use strict";
|
|
2970
2975
|
|
|
2971
2976
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2977
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
2972
2978
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
2973
2979
|
/**
|
|
2974
2980
|
* Remove link at selection. If no links at selection, do nothing.
|
|
@@ -2978,10 +2984,10 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
2978
2984
|
*/
|
|
2979
2985
|
function removeLink(editor) {
|
|
2980
2986
|
editor.focus();
|
|
2981
|
-
|
|
2987
|
+
(0, formatUndoSnapshot_1.default)(editor, function (start, end) {
|
|
2982
2988
|
editor.queryElements('a[href]', 1 /* OnSelection */, roosterjs_editor_dom_1.unwrap);
|
|
2983
2989
|
editor.select(start, end);
|
|
2984
|
-
},
|
|
2990
|
+
}, 'removeLink');
|
|
2985
2991
|
}
|
|
2986
2992
|
exports.default = removeLink;
|
|
2987
2993
|
|
|
@@ -3045,6 +3051,7 @@ exports.default = replaceWithNode;
|
|
|
3045
3051
|
"use strict";
|
|
3046
3052
|
|
|
3047
3053
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3054
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
3048
3055
|
/**
|
|
3049
3056
|
* Rotate an element visually
|
|
3050
3057
|
* @param editor The editor instance
|
|
@@ -3053,9 +3060,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3053
3060
|
*/
|
|
3054
3061
|
function rotateElement(editor, element, angle) {
|
|
3055
3062
|
if (element) {
|
|
3056
|
-
|
|
3063
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
3057
3064
|
element.style.transform = "rotate(" + angle + "deg)";
|
|
3058
|
-
},
|
|
3065
|
+
}, 'rotateElement');
|
|
3059
3066
|
}
|
|
3060
3067
|
}
|
|
3061
3068
|
exports.default = rotateElement;
|
|
@@ -3075,6 +3082,7 @@ exports.default = rotateElement;
|
|
|
3075
3082
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3076
3083
|
var blockFormat_1 = __webpack_require__(/*! ../utils/blockFormat */ "./packages/roosterjs-editor-api/lib/utils/blockFormat.ts");
|
|
3077
3084
|
var execCommand_1 = __webpack_require__(/*! ../utils/execCommand */ "./packages/roosterjs-editor-api/lib/utils/execCommand.ts");
|
|
3085
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
3078
3086
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
3079
3087
|
/**
|
|
3080
3088
|
* Set content alignment
|
|
@@ -3083,7 +3091,7 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
3083
3091
|
* Alignment.Center, Alignment.Left, Alignment.Right
|
|
3084
3092
|
*/
|
|
3085
3093
|
function setAlignment(editor, alignment) {
|
|
3086
|
-
|
|
3094
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
3087
3095
|
var selection = editor.getSelectionRangeEx();
|
|
3088
3096
|
var isATable = selection && selection.type === 1 /* TableSelection */;
|
|
3089
3097
|
var elementAtCursor = editor.getElementAtCursor();
|
|
@@ -3099,7 +3107,7 @@ function setAlignment(editor, alignment) {
|
|
|
3099
3107
|
else {
|
|
3100
3108
|
alignText(editor, alignment);
|
|
3101
3109
|
}
|
|
3102
|
-
},
|
|
3110
|
+
}, 'rotateElement');
|
|
3103
3111
|
}
|
|
3104
3112
|
exports.default = setAlignment;
|
|
3105
3113
|
/**
|
|
@@ -3154,7 +3162,7 @@ function alignList(editor, alignment) {
|
|
|
3154
3162
|
var startNode = blocks[0].getStartNode();
|
|
3155
3163
|
var vList = (0, roosterjs_editor_dom_1.createVListFromRegion)(region, true /*includeSiblingLists*/, startNode);
|
|
3156
3164
|
vList.setAlignment(start, end, alignment);
|
|
3157
|
-
});
|
|
3165
|
+
}, undefined /* beforeRunCallback */, 'alignList');
|
|
3158
3166
|
}
|
|
3159
3167
|
|
|
3160
3168
|
|
|
@@ -3185,7 +3193,7 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
3185
3193
|
function setBackgroundColor(editor, color) {
|
|
3186
3194
|
(0, applyInlineStyle_1.default)(editor, function (element, isInnerNode) {
|
|
3187
3195
|
(0, roosterjs_editor_dom_1.setColor)(element, isInnerNode ? '' : color, true /*isBackground*/, editor.isDarkMode());
|
|
3188
|
-
});
|
|
3196
|
+
}, 'setBackgroundColor');
|
|
3189
3197
|
}
|
|
3190
3198
|
exports.default = setBackgroundColor;
|
|
3191
3199
|
|
|
@@ -3203,6 +3211,7 @@ exports.default = setBackgroundColor;
|
|
|
3203
3211
|
|
|
3204
3212
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3205
3213
|
var collapseSelectedBlocks_1 = __webpack_require__(/*! ../utils/collapseSelectedBlocks */ "./packages/roosterjs-editor-api/lib/utils/collapseSelectedBlocks.ts");
|
|
3214
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
3206
3215
|
/**
|
|
3207
3216
|
* Change direction for the blocks/paragraph at selection
|
|
3208
3217
|
* @param editor The editor instance
|
|
@@ -3211,13 +3220,13 @@ var collapseSelectedBlocks_1 = __webpack_require__(/*! ../utils/collapseSelected
|
|
|
3211
3220
|
*/
|
|
3212
3221
|
function setDirection(editor, direction) {
|
|
3213
3222
|
editor.focus();
|
|
3214
|
-
|
|
3223
|
+
(0, formatUndoSnapshot_1.default)(editor, function (start, end) {
|
|
3215
3224
|
(0, collapseSelectedBlocks_1.default)(editor, function (element) {
|
|
3216
3225
|
element.setAttribute('dir', direction == 0 /* LeftToRight */ ? 'ltr' : 'rtl');
|
|
3217
3226
|
element.style.textAlign = direction == 0 /* LeftToRight */ ? 'left' : 'right';
|
|
3218
3227
|
});
|
|
3219
3228
|
editor.select(start, end);
|
|
3220
|
-
},
|
|
3229
|
+
}, 'setDirection');
|
|
3221
3230
|
}
|
|
3222
3231
|
exports.default = setDirection;
|
|
3223
3232
|
|
|
@@ -3246,7 +3255,7 @@ function setFontName(editor, fontName) {
|
|
|
3246
3255
|
// (http://www.w3schools.com/tags/tag_font.asp).
|
|
3247
3256
|
(0, applyListItemWrap_1.default)(editor, 'font-family', function (element, isInnerNode) {
|
|
3248
3257
|
element.style.fontFamily = isInnerNode ? '' : fontName;
|
|
3249
|
-
});
|
|
3258
|
+
}, 'setFontName');
|
|
3250
3259
|
}
|
|
3251
3260
|
exports.default = setFontName;
|
|
3252
3261
|
|
|
@@ -3280,7 +3289,7 @@ function setFontSize(editor, fontSize) {
|
|
|
3280
3289
|
if (lineHeight != 'normal') {
|
|
3281
3290
|
element.style.lineHeight = 'normal';
|
|
3282
3291
|
}
|
|
3283
|
-
});
|
|
3292
|
+
}, 'setFontSize');
|
|
3284
3293
|
}
|
|
3285
3294
|
exports.default = setFontSize;
|
|
3286
3295
|
|
|
@@ -3297,6 +3306,7 @@ exports.default = setFontSize;
|
|
|
3297
3306
|
"use strict";
|
|
3298
3307
|
|
|
3299
3308
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3309
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
3300
3310
|
/**
|
|
3301
3311
|
* Set image alt text for all selected images at selection. If no images is contained
|
|
3302
3312
|
* in selection, do nothing.
|
|
@@ -3308,11 +3318,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3308
3318
|
*/
|
|
3309
3319
|
function setImageAltText(editor, altText) {
|
|
3310
3320
|
editor.focus();
|
|
3311
|
-
|
|
3321
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
3312
3322
|
editor.queryElements('img', 1 /* OnSelection */, function (node) {
|
|
3313
3323
|
return node.setAttribute('alt', altText);
|
|
3314
3324
|
});
|
|
3315
|
-
},
|
|
3325
|
+
}, 'setImageAltText');
|
|
3316
3326
|
}
|
|
3317
3327
|
exports.default = setImageAltText;
|
|
3318
3328
|
|
|
@@ -3385,7 +3395,7 @@ function setIndentation(editor, indentation) {
|
|
|
3385
3395
|
return false;
|
|
3386
3396
|
}
|
|
3387
3397
|
return true;
|
|
3388
|
-
});
|
|
3398
|
+
}, 'setIndentation');
|
|
3389
3399
|
}
|
|
3390
3400
|
exports.default = setIndentation;
|
|
3391
3401
|
function indent(region, blocks) {
|
|
@@ -3431,6 +3441,7 @@ function shouldHandleWithBlockquotes(indentation, editor, startNode) {
|
|
|
3431
3441
|
"use strict";
|
|
3432
3442
|
|
|
3433
3443
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3444
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
3434
3445
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
3435
3446
|
/**
|
|
3436
3447
|
* Resets Ordered List Numbering back to the value of the parameter startNumber
|
|
@@ -3440,7 +3451,7 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
3440
3451
|
*/
|
|
3441
3452
|
function setOrderedListNumbering(editor, separator, startNumber) {
|
|
3442
3453
|
if (startNumber === void 0) { startNumber = 1; }
|
|
3443
|
-
|
|
3454
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
3444
3455
|
editor.focus();
|
|
3445
3456
|
var regions = editor.getSelectedRegions();
|
|
3446
3457
|
if (regions[0]) {
|
|
@@ -3450,7 +3461,7 @@ function setOrderedListNumbering(editor, separator, startNumber) {
|
|
|
3450
3461
|
vList.writeBack();
|
|
3451
3462
|
}
|
|
3452
3463
|
}
|
|
3453
|
-
},
|
|
3464
|
+
}, 'setOrderedListNumbering');
|
|
3454
3465
|
}
|
|
3455
3466
|
exports.default = setOrderedListNumbering;
|
|
3456
3467
|
|
|
@@ -3485,7 +3496,7 @@ function setTextColor(editor, color, shouldApplyInlineStyle) {
|
|
|
3485
3496
|
if (!shouldApplyInlineStyle || shouldApplyInlineStyle(element)) {
|
|
3486
3497
|
(0, roosterjs_editor_dom_1.setColor)(element, isInnerNode ? '' : color, false /*isBackground*/, editor.isDarkMode());
|
|
3487
3498
|
}
|
|
3488
|
-
});
|
|
3499
|
+
}, 'setTextColor');
|
|
3489
3500
|
}
|
|
3490
3501
|
exports.default = setTextColor;
|
|
3491
3502
|
|
|
@@ -3521,7 +3532,7 @@ function toggleBlockQuote(editor, styler) {
|
|
|
3521
3532
|
(0, blockWrap_1.default)(editor, function (nodes) {
|
|
3522
3533
|
var wrapper = (0, roosterjs_editor_dom_1.wrap)(nodes, BLOCKQUOTE_TAG);
|
|
3523
3534
|
(styler || DEFAULT_STYLER)(wrapper);
|
|
3524
|
-
}, function () { return editor.queryElements('blockquote', 1 /* OnSelection */, roosterjs_editor_dom_1.unwrap).length == 0; });
|
|
3535
|
+
}, function () { return editor.queryElements('blockquote', 1 /* OnSelection */, roosterjs_editor_dom_1.unwrap).length == 0; }, 'toggleBlockQuote');
|
|
3525
3536
|
}
|
|
3526
3537
|
exports.default = toggleBlockQuote;
|
|
3527
3538
|
|
|
@@ -3548,7 +3559,7 @@ var execCommand_1 = __webpack_require__(/*! ../utils/execCommand */ "./packages/
|
|
|
3548
3559
|
* @param editor The editor instance
|
|
3549
3560
|
*/
|
|
3550
3561
|
function toggleBold(editor) {
|
|
3551
|
-
(0, execCommand_1.default)(editor, "bold" /* Bold
|
|
3562
|
+
(0, execCommand_1.default)(editor, "bold" /* Bold */, 'toggleBold');
|
|
3552
3563
|
}
|
|
3553
3564
|
exports.default = toggleBold;
|
|
3554
3565
|
|
|
@@ -3576,7 +3587,7 @@ var toggleListType_1 = __webpack_require__(/*! ../utils/toggleListType */ "./pac
|
|
|
3576
3587
|
* @param listStyle (Optional) the style of the bullet list. If not defined, the style will be set to disc.
|
|
3577
3588
|
*/
|
|
3578
3589
|
function toggleBullet(editor, listStyle) {
|
|
3579
|
-
(0, toggleListType_1.default)(editor, 2 /* Unordered */, undefined /* startNumber */, false /* includeSiblingLists */, listStyle);
|
|
3590
|
+
(0, toggleListType_1.default)(editor, 2 /* Unordered */, undefined /* startNumber */, false /* includeSiblingLists */, undefined /** orderedStyle */, listStyle);
|
|
3580
3591
|
}
|
|
3581
3592
|
exports.default = toggleBullet;
|
|
3582
3593
|
|
|
@@ -3617,7 +3628,7 @@ function toggleCodeBlock(editor, styler) {
|
|
|
3617
3628
|
(0, roosterjs_editor_dom_1.unwrap)(parent_1);
|
|
3618
3629
|
}
|
|
3619
3630
|
}).length == 0;
|
|
3620
|
-
});
|
|
3631
|
+
}, 'toggleCodeBlock');
|
|
3621
3632
|
}
|
|
3622
3633
|
exports.default = toggleCodeBlock;
|
|
3623
3634
|
|
|
@@ -3634,6 +3645,7 @@ exports.default = toggleCodeBlock;
|
|
|
3634
3645
|
"use strict";
|
|
3635
3646
|
|
|
3636
3647
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3648
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
3637
3649
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
3638
3650
|
/**
|
|
3639
3651
|
* Toggle header at selection
|
|
@@ -3644,7 +3656,7 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
3644
3656
|
*/
|
|
3645
3657
|
function toggleHeader(editor, level) {
|
|
3646
3658
|
level = Math.min(Math.max(Math.round(level), 0), 6);
|
|
3647
|
-
|
|
3659
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
3648
3660
|
editor.focus();
|
|
3649
3661
|
var wrapped = false;
|
|
3650
3662
|
editor.queryElements('H1,H2,H3,H4,H5,H6', 1 /* OnSelection */, function (header) {
|
|
@@ -3671,7 +3683,7 @@ function toggleHeader(editor, level) {
|
|
|
3671
3683
|
}
|
|
3672
3684
|
editor.getDocument().execCommand("formatBlock" /* FormatBlock */, false, "<H" + level + ">");
|
|
3673
3685
|
}
|
|
3674
|
-
},
|
|
3686
|
+
}, 'toggleHeader');
|
|
3675
3687
|
}
|
|
3676
3688
|
exports.default = toggleHeader;
|
|
3677
3689
|
|
|
@@ -3698,7 +3710,7 @@ var execCommand_1 = __webpack_require__(/*! ../utils/execCommand */ "./packages/
|
|
|
3698
3710
|
* @param editor The editor instance
|
|
3699
3711
|
*/
|
|
3700
3712
|
function toggleItalic(editor) {
|
|
3701
|
-
(0, execCommand_1.default)(editor, "italic" /* Italic
|
|
3713
|
+
(0, execCommand_1.default)(editor, "italic" /* Italic */, 'toggleItalic');
|
|
3702
3714
|
}
|
|
3703
3715
|
exports.default = toggleItalic;
|
|
3704
3716
|
|
|
@@ -3754,7 +3766,7 @@ var execCommand_1 = __webpack_require__(/*! ../utils/execCommand */ "./packages/
|
|
|
3754
3766
|
* @param editor The editor instance
|
|
3755
3767
|
*/
|
|
3756
3768
|
function toggleStrikethrough(editor) {
|
|
3757
|
-
(0, execCommand_1.default)(editor, "strikeThrough" /* StrikeThrough
|
|
3769
|
+
(0, execCommand_1.default)(editor, "strikeThrough" /* StrikeThrough */, 'toggleStrikethrough');
|
|
3758
3770
|
}
|
|
3759
3771
|
exports.default = toggleStrikethrough;
|
|
3760
3772
|
|
|
@@ -3783,7 +3795,7 @@ var execCommand_1 = __webpack_require__(/*! ../utils/execCommand */ "./packages/
|
|
|
3783
3795
|
* @param editor The editor instance
|
|
3784
3796
|
*/
|
|
3785
3797
|
function toggleSubscript(editor) {
|
|
3786
|
-
(0, execCommand_1.default)(editor, "subscript" /* Subscript
|
|
3798
|
+
(0, execCommand_1.default)(editor, "subscript" /* Subscript */, 'toggleSubscript');
|
|
3787
3799
|
}
|
|
3788
3800
|
exports.default = toggleSubscript;
|
|
3789
3801
|
|
|
@@ -3812,7 +3824,7 @@ var execCommand_1 = __webpack_require__(/*! ../utils/execCommand */ "./packages/
|
|
|
3812
3824
|
* @param editor The editor instance
|
|
3813
3825
|
*/
|
|
3814
3826
|
function toggleSuperscript(editor) {
|
|
3815
|
-
(0, execCommand_1.default)(editor, "superscript" /* Superscript
|
|
3827
|
+
(0, execCommand_1.default)(editor, "superscript" /* Superscript */, 'toggleSuperscript');
|
|
3816
3828
|
}
|
|
3817
3829
|
exports.default = toggleSuperscript;
|
|
3818
3830
|
|
|
@@ -3839,7 +3851,7 @@ var execCommand_1 = __webpack_require__(/*! ../utils/execCommand */ "./packages/
|
|
|
3839
3851
|
* @param editor The editor instance
|
|
3840
3852
|
*/
|
|
3841
3853
|
function toggleUnderline(editor) {
|
|
3842
|
-
(0, execCommand_1.default)(editor, "underline" /* Underline
|
|
3854
|
+
(0, execCommand_1.default)(editor, "underline" /* Underline */, 'toggleUnderline');
|
|
3843
3855
|
}
|
|
3844
3856
|
exports.default = toggleUnderline;
|
|
3845
3857
|
|
|
@@ -3949,6 +3961,7 @@ Object.defineProperty(exports, "experimentCommitListChains", { enumerable: true,
|
|
|
3949
3961
|
"use strict";
|
|
3950
3962
|
|
|
3951
3963
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3964
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
3952
3965
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
3953
3966
|
var TEMP_BACKGROUND_COLOR = 'originalBackgroundColor';
|
|
3954
3967
|
var CELL_SHADE = 'cellShade';
|
|
@@ -3959,7 +3972,7 @@ var CELL_SHADE = 'cellShade';
|
|
|
3959
3972
|
**/
|
|
3960
3973
|
function applyCellShading(editor, color) {
|
|
3961
3974
|
editor.focus();
|
|
3962
|
-
|
|
3975
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
3963
3976
|
var regions = editor.getSelectedRegions();
|
|
3964
3977
|
regions.forEach(function (region) {
|
|
3965
3978
|
if ((0, roosterjs_editor_dom_1.safeInstanceOf)(region.rootNode, 'HTMLTableCellElement')) {
|
|
@@ -3969,7 +3982,7 @@ function applyCellShading(editor, color) {
|
|
|
3969
3982
|
region.rootNode.style.backgroundColor;
|
|
3970
3983
|
}
|
|
3971
3984
|
});
|
|
3972
|
-
});
|
|
3985
|
+
}, 'applyCellShading');
|
|
3973
3986
|
}
|
|
3974
3987
|
exports.default = applyCellShading;
|
|
3975
3988
|
|
|
@@ -3986,6 +3999,7 @@ exports.default = applyCellShading;
|
|
|
3986
3999
|
"use strict";
|
|
3987
4000
|
|
|
3988
4001
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4002
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
3989
4003
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
3990
4004
|
/**
|
|
3991
4005
|
* Edit table with given operation. If there is no table at cursor then no op.
|
|
@@ -3995,7 +4009,7 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
3995
4009
|
function editTable(editor, operation) {
|
|
3996
4010
|
var td = editor.getElementAtCursor('TD,TH');
|
|
3997
4011
|
if (td) {
|
|
3998
|
-
|
|
4012
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
3999
4013
|
var vtable = new roosterjs_editor_dom_1.VTable(td);
|
|
4000
4014
|
saveTableSelection(editor, vtable);
|
|
4001
4015
|
vtable.edit(operation);
|
|
@@ -4004,7 +4018,7 @@ function editTable(editor, operation) {
|
|
|
4004
4018
|
editor.focus();
|
|
4005
4019
|
var cellToSelect = calculateCellToSelect(operation, vtable.row, vtable.col);
|
|
4006
4020
|
editor.select(vtable.getCell(cellToSelect.newRow, cellToSelect.newCol).td, 0 /* Begin */);
|
|
4007
|
-
},
|
|
4021
|
+
}, 'editTable');
|
|
4008
4022
|
}
|
|
4009
4023
|
}
|
|
4010
4024
|
exports.default = editTable;
|
|
@@ -4052,6 +4066,7 @@ function saveTableSelection(editor, vtable) {
|
|
|
4052
4066
|
"use strict";
|
|
4053
4067
|
|
|
4054
4068
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4069
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
4055
4070
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
4056
4071
|
/**
|
|
4057
4072
|
* Format table
|
|
@@ -4062,14 +4077,14 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
4062
4077
|
function formatTable(editor, format, table) {
|
|
4063
4078
|
table = table || editor.getElementAtCursor('TABLE');
|
|
4064
4079
|
if (table) {
|
|
4065
|
-
|
|
4080
|
+
(0, formatUndoSnapshot_1.default)(editor, function (start, end) {
|
|
4066
4081
|
var vtable = new roosterjs_editor_dom_1.VTable(table);
|
|
4067
4082
|
vtable.applyFormat(format);
|
|
4068
4083
|
vtable.writeBack();
|
|
4069
4084
|
editor.transformToDarkColor(vtable.table);
|
|
4070
4085
|
editor.focus();
|
|
4071
4086
|
editor.select(start, end);
|
|
4072
|
-
},
|
|
4087
|
+
}, 'formatTable');
|
|
4073
4088
|
}
|
|
4074
4089
|
}
|
|
4075
4090
|
exports.default = formatTable;
|
|
@@ -4087,6 +4102,7 @@ exports.default = formatTable;
|
|
|
4087
4102
|
"use strict";
|
|
4088
4103
|
|
|
4089
4104
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4105
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ../utils/formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
4090
4106
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
4091
4107
|
/**
|
|
4092
4108
|
* Insert table into editor at current selection
|
|
@@ -4115,7 +4131,7 @@ function insertTable(editor, columns, rows, format) {
|
|
|
4115
4131
|
}
|
|
4116
4132
|
}
|
|
4117
4133
|
editor.focus();
|
|
4118
|
-
|
|
4134
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
4119
4135
|
var vtable = new roosterjs_editor_dom_1.VTable(table);
|
|
4120
4136
|
vtable.applyFormat(format);
|
|
4121
4137
|
vtable.writeBack();
|
|
@@ -4123,7 +4139,7 @@ function insertTable(editor, columns, rows, format) {
|
|
|
4123
4139
|
editor.runAsync(function (editor) {
|
|
4124
4140
|
return editor.select(new roosterjs_editor_dom_1.Position(table, 0 /* Begin */).normalize());
|
|
4125
4141
|
});
|
|
4126
|
-
},
|
|
4142
|
+
}, 'insertTable');
|
|
4127
4143
|
}
|
|
4128
4144
|
exports.default = insertTable;
|
|
4129
4145
|
function getTableCellWidth(columns) {
|
|
@@ -4151,6 +4167,7 @@ function getTableCellWidth(columns) {
|
|
|
4151
4167
|
"use strict";
|
|
4152
4168
|
|
|
4153
4169
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4170
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ./formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
4154
4171
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
4155
4172
|
var ZERO_WIDTH_SPACE = '\u200B';
|
|
4156
4173
|
/**
|
|
@@ -4159,7 +4176,7 @@ var ZERO_WIDTH_SPACE = '\u200B';
|
|
|
4159
4176
|
* @param editor The editor instance
|
|
4160
4177
|
* @param callback The callback function to apply style
|
|
4161
4178
|
*/
|
|
4162
|
-
function applyInlineStyle(editor, callback) {
|
|
4179
|
+
function applyInlineStyle(editor, callback, apiName) {
|
|
4163
4180
|
editor.focus();
|
|
4164
4181
|
var selection = editor.getSelectionRangeEx();
|
|
4165
4182
|
if (selection && selection.areAllCollapsed) {
|
|
@@ -4192,7 +4209,7 @@ function applyInlineStyle(editor, callback) {
|
|
|
4192
4209
|
else {
|
|
4193
4210
|
// This is start and end node that get the style. The start and end needs to be recorded so that selection
|
|
4194
4211
|
// can be re-applied post-applying style
|
|
4195
|
-
|
|
4212
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
4196
4213
|
var firstNode;
|
|
4197
4214
|
var lastNode;
|
|
4198
4215
|
selection.ranges.forEach(function (range) {
|
|
@@ -4211,7 +4228,7 @@ function applyInlineStyle(editor, callback) {
|
|
|
4211
4228
|
if (firstNode && lastNode && selection.type == 0 /* Normal */) {
|
|
4212
4229
|
editor.select(firstNode, -2 /* Before */, lastNode, -3 /* After */);
|
|
4213
4230
|
}
|
|
4214
|
-
},
|
|
4231
|
+
}, apiName);
|
|
4215
4232
|
}
|
|
4216
4233
|
}
|
|
4217
4234
|
exports.default = applyInlineStyle;
|
|
@@ -4238,7 +4255,7 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
4238
4255
|
* @param styleName Name of the style to apply to the list item
|
|
4239
4256
|
* @param formatCallback callback to apply the style to each element
|
|
4240
4257
|
*/
|
|
4241
|
-
function applyListItemStyleWrap(editor, styleName, formatCallback) {
|
|
4258
|
+
function applyListItemStyleWrap(editor, styleName, formatCallback, apiName) {
|
|
4242
4259
|
var parentNodes = [];
|
|
4243
4260
|
(0, applyInlineStyle_1.default)(editor, function (element, isInnerNode) {
|
|
4244
4261
|
formatCallback(element, isInnerNode);
|
|
@@ -4246,7 +4263,7 @@ function applyListItemStyleWrap(editor, styleName, formatCallback) {
|
|
|
4246
4263
|
if (parent && parentNodes.indexOf(parent) === -1) {
|
|
4247
4264
|
parentNodes.push(parent);
|
|
4248
4265
|
}
|
|
4249
|
-
});
|
|
4266
|
+
}, apiName);
|
|
4250
4267
|
applyStyleToListItems(parentNodes, [styleName]);
|
|
4251
4268
|
}
|
|
4252
4269
|
exports.default = applyListItemStyleWrap;
|
|
@@ -4278,14 +4295,15 @@ function applyStyleToListItems(parentNodes, styles) {
|
|
|
4278
4295
|
|
|
4279
4296
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4280
4297
|
var experimentCommitListChains_1 = __webpack_require__(/*! ../experiment/experimentCommitListChains */ "./packages/roosterjs-editor-api/lib/experiment/experimentCommitListChains.ts");
|
|
4298
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ./formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
4281
4299
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
4282
4300
|
/**
|
|
4283
4301
|
* Split selection into regions, and perform a block-wise formatting action for each region.
|
|
4284
4302
|
*/
|
|
4285
|
-
function blockFormat(editor, callback, beforeRunCallback) {
|
|
4303
|
+
function blockFormat(editor, callback, beforeRunCallback, apiName) {
|
|
4286
4304
|
editor.focus();
|
|
4287
4305
|
var selection = editor.getSelectionRangeEx();
|
|
4288
|
-
|
|
4306
|
+
(0, formatUndoSnapshot_1.default)(editor, function (start, end) {
|
|
4289
4307
|
if (!beforeRunCallback || beforeRunCallback()) {
|
|
4290
4308
|
var regions = editor.getSelectedRegions();
|
|
4291
4309
|
var chains_1 = roosterjs_editor_dom_1.VListChain.createListChains(regions, start === null || start === void 0 ? void 0 : start.node);
|
|
@@ -4298,7 +4316,7 @@ function blockFormat(editor, callback, beforeRunCallback) {
|
|
|
4298
4316
|
else if (selection.type == 1 /* TableSelection */) {
|
|
4299
4317
|
editor.select(selection.table, selection.coordinates);
|
|
4300
4318
|
}
|
|
4301
|
-
},
|
|
4319
|
+
}, apiName);
|
|
4302
4320
|
}
|
|
4303
4321
|
exports.default = blockFormat;
|
|
4304
4322
|
|
|
@@ -4326,7 +4344,7 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
4326
4344
|
* @param beforeRunCallback A callback function to run before looping all regions. If it returns false,
|
|
4327
4345
|
* the loop for regions will be skipped
|
|
4328
4346
|
*/
|
|
4329
|
-
function blockWrap(editor, wrapFunction, beforeRunCallback) {
|
|
4347
|
+
function blockWrap(editor, wrapFunction, beforeRunCallback, apiName) {
|
|
4330
4348
|
(0, blockFormat_1.default)(editor, function (region) {
|
|
4331
4349
|
var blocks = (0, roosterjs_editor_dom_1.getSelectedBlockElementsInRegion)(region, true /*createBlockIfEmpty*/);
|
|
4332
4350
|
var nodes = (0, roosterjs_editor_dom_1.collapseNodesInRegion)(region, blocks);
|
|
@@ -4347,7 +4365,7 @@ function blockWrap(editor, wrapFunction, beforeRunCallback) {
|
|
|
4347
4365
|
}
|
|
4348
4366
|
wrapFunction(nodes);
|
|
4349
4367
|
}
|
|
4350
|
-
}, beforeRunCallback);
|
|
4368
|
+
}, beforeRunCallback, apiName);
|
|
4351
4369
|
}
|
|
4352
4370
|
exports.default = blockWrap;
|
|
4353
4371
|
|
|
@@ -4407,6 +4425,7 @@ function isEmptyBlockUnderTR(block) {
|
|
|
4407
4425
|
"use strict";
|
|
4408
4426
|
|
|
4409
4427
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4428
|
+
var formatUndoSnapshot_1 = __webpack_require__(/*! ./formatUndoSnapshot */ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts");
|
|
4410
4429
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
4411
4430
|
/**
|
|
4412
4431
|
* @internal
|
|
@@ -4418,7 +4437,7 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
4418
4437
|
* @param doWorkaroundForList Optional, set to true to do workaround for list in order to keep current format.
|
|
4419
4438
|
* Default value is false.
|
|
4420
4439
|
*/
|
|
4421
|
-
function execCommand(editor, command) {
|
|
4440
|
+
function execCommand(editor, command, apiName) {
|
|
4422
4441
|
editor.focus();
|
|
4423
4442
|
var formatter = function () { return editor.getDocument().execCommand(command, false, null); };
|
|
4424
4443
|
var selection = editor.getSelectionRangeEx();
|
|
@@ -4426,7 +4445,7 @@ function execCommand(editor, command) {
|
|
|
4426
4445
|
editor.addUndoSnapshot();
|
|
4427
4446
|
var formatState = editor.getPendableFormatState(false /* forceGetStateFromDom */);
|
|
4428
4447
|
formatter();
|
|
4429
|
-
var formatName =
|
|
4448
|
+
var formatName = (0, roosterjs_editor_dom_1.getObjectKeys)(roosterjs_editor_dom_1.PendableFormatCommandMap).filter(function (x) { return roosterjs_editor_dom_1.PendableFormatCommandMap[x] == command; })[0];
|
|
4430
4449
|
if (formatName) {
|
|
4431
4450
|
formatState[formatName] = !formatState[formatName];
|
|
4432
4451
|
editor.triggerPluginEvent(13 /* PendingFormatStateChanged */, {
|
|
@@ -4435,7 +4454,7 @@ function execCommand(editor, command) {
|
|
|
4435
4454
|
}
|
|
4436
4455
|
}
|
|
4437
4456
|
else {
|
|
4438
|
-
|
|
4457
|
+
(0, formatUndoSnapshot_1.default)(editor, function () {
|
|
4439
4458
|
var tempRange;
|
|
4440
4459
|
selection.ranges.forEach(function (range) {
|
|
4441
4460
|
if (selection.type == 1 /* TableSelection */) {
|
|
@@ -4447,12 +4466,40 @@ function execCommand(editor, command) {
|
|
|
4447
4466
|
if (tempRange && selection.type == 1 /* TableSelection */) {
|
|
4448
4467
|
editor.select(selection.table, selection.coordinates);
|
|
4449
4468
|
}
|
|
4450
|
-
},
|
|
4469
|
+
}, apiName);
|
|
4451
4470
|
}
|
|
4452
4471
|
}
|
|
4453
4472
|
exports.default = execCommand;
|
|
4454
4473
|
|
|
4455
4474
|
|
|
4475
|
+
/***/ }),
|
|
4476
|
+
|
|
4477
|
+
/***/ "./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts":
|
|
4478
|
+
/*!***********************************************************************!*\
|
|
4479
|
+
!*** ./packages/roosterjs-editor-api/lib/utils/formatUndoSnapshot.ts ***!
|
|
4480
|
+
\***********************************************************************/
|
|
4481
|
+
/*! no static exports found */
|
|
4482
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
4483
|
+
|
|
4484
|
+
"use strict";
|
|
4485
|
+
|
|
4486
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4487
|
+
/**
|
|
4488
|
+
* @internal
|
|
4489
|
+
* Execute add undo snapshot for the Format APIs
|
|
4490
|
+
* @param editor The editor instance
|
|
4491
|
+
* @param command Optional, The callback function to perform formatting, returns a data object which will be used as the data field in ContentChangedEvent if changeSource is not null.
|
|
4492
|
+
* @param apiName Optional, name of the API that was is going to be executed.
|
|
4493
|
+
* Default value is false.
|
|
4494
|
+
*/
|
|
4495
|
+
function formatUndoSnapshot(editor, callback, apiName) {
|
|
4496
|
+
editor.addUndoSnapshot(callback, "Format" /* Format */, undefined /* canUndoByBackspace */, apiName && {
|
|
4497
|
+
formatApiName: apiName,
|
|
4498
|
+
});
|
|
4499
|
+
}
|
|
4500
|
+
exports.default = formatUndoSnapshot;
|
|
4501
|
+
|
|
4502
|
+
|
|
4456
4503
|
/***/ }),
|
|
4457
4504
|
|
|
4458
4505
|
/***/ "./packages/roosterjs-editor-api/lib/utils/toggleListType.ts":
|
|
@@ -4483,9 +4530,10 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
4483
4530
|
* @param listType The list type to toggle
|
|
4484
4531
|
* @param startNumber (Optional) Start number of the list
|
|
4485
4532
|
* @param includeSiblingLists Sets wether the operation should include Sibling Lists, by default true
|
|
4486
|
-
* @param
|
|
4533
|
+
* @param orderedStyle (Optional) the style of an ordered. If not defined, the style will be set to decimal.
|
|
4534
|
+
* @param unorderedStyle (Optional) the style of an unordered list. If not defined, the style will be set to disc.
|
|
4487
4535
|
*/
|
|
4488
|
-
function toggleListType(editor, listType, startNumber, includeSiblingLists,
|
|
4536
|
+
function toggleListType(editor, listType, startNumber, includeSiblingLists, orderedStyle, unorderedStyle) {
|
|
4489
4537
|
if (includeSiblingLists === void 0) { includeSiblingLists = true; }
|
|
4490
4538
|
(0, blockFormat_1.default)(editor, function (region, start, end, chains) {
|
|
4491
4539
|
var _a;
|
|
@@ -4495,12 +4543,12 @@ function toggleListType(editor, listType, startNumber, includeSiblingLists, list
|
|
|
4495
4543
|
: (0, roosterjs_editor_dom_1.createVListFromRegion)(region, includeSiblingLists);
|
|
4496
4544
|
if (vList) {
|
|
4497
4545
|
vList.changeListType(start, end, listType);
|
|
4498
|
-
if (
|
|
4499
|
-
vList.setListStyleType(
|
|
4546
|
+
if (editor.isFeatureEnabled("AutoFormatList" /* AutoFormatList */)) {
|
|
4547
|
+
vList.setListStyleType(orderedStyle, unorderedStyle);
|
|
4500
4548
|
}
|
|
4501
4549
|
vList.writeBack();
|
|
4502
4550
|
}
|
|
4503
|
-
});
|
|
4551
|
+
}, undefined /* beforeRunCallback */, 'toggleListType');
|
|
4504
4552
|
}
|
|
4505
4553
|
exports.default = toggleListType;
|
|
4506
4554
|
|
|
@@ -4538,8 +4586,10 @@ var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./
|
|
|
4538
4586
|
* @param callback The editing callback, accepting current selection start and end position, returns an optional object used as the data field of ContentChangedEvent.
|
|
4539
4587
|
* @param changeSource The ChangeSource string of ContentChangedEvent. @default ChangeSource.Format. Set to null to avoid triggering ContentChangedEvent
|
|
4540
4588
|
* @param canUndoByBackspace True if this action can be undone when user press Backspace key (aka Auto Complete).
|
|
4589
|
+
* @param formatApiName Optional parameter to provide the ContentChangeEvent which FormatApi was invoked.
|
|
4541
4590
|
*/
|
|
4542
|
-
var addUndoSnapshot = function (core, callback, changeSource, canUndoByBackspace) {
|
|
4591
|
+
var addUndoSnapshot = function (core, callback, changeSource, canUndoByBackspace, additionalData) {
|
|
4592
|
+
if (additionalData === void 0) { additionalData = undefined; }
|
|
4543
4593
|
var undoState = core.undo;
|
|
4544
4594
|
var isNested = undoState.isNested;
|
|
4545
4595
|
var data;
|
|
@@ -4566,6 +4616,7 @@ var addUndoSnapshot = function (core, callback, changeSource, canUndoByBackspace
|
|
|
4566
4616
|
eventType: 7 /* ContentChanged */,
|
|
4567
4617
|
source: changeSource,
|
|
4568
4618
|
data: data,
|
|
4619
|
+
additionalData: additionalData,
|
|
4569
4620
|
};
|
|
4570
4621
|
core.api.triggerEvent(core, event_1, true /*broadcast*/);
|
|
4571
4622
|
}
|
|
@@ -4606,6 +4657,7 @@ function addUndoSnapshotInternal(core, canUndoByBackspace) {
|
|
|
4606
4657
|
|
|
4607
4658
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4608
4659
|
exports.attachDomEvent = void 0;
|
|
4660
|
+
var lib_1 = __webpack_require__(/*! roosterjs-editor-dom/lib */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
4609
4661
|
/**
|
|
4610
4662
|
* @internal
|
|
4611
4663
|
* Attach a DOM event to the editor content DIV
|
|
@@ -4615,7 +4667,7 @@ exports.attachDomEvent = void 0;
|
|
|
4615
4667
|
* @param beforeDispatch Optional callback function to be invoked when the DOM event is triggered before trigger plugin event
|
|
4616
4668
|
*/
|
|
4617
4669
|
var attachDomEvent = function (core, eventMap) {
|
|
4618
|
-
var disposers =
|
|
4670
|
+
var disposers = (0, lib_1.getObjectKeys)(eventMap || {}).map(function (eventName) {
|
|
4619
4671
|
var _a = extractHandler(eventMap[eventName]), pluginEventType = _a.pluginEventType, beforeDispatch = _a.beforeDispatch;
|
|
4620
4672
|
var onEvent = function (event) {
|
|
4621
4673
|
if (beforeDispatch) {
|
|
@@ -4934,6 +4986,10 @@ var ensureTypeInContainer = function (core, position, keyboardEvent) {
|
|
|
4934
4986
|
var formatNode;
|
|
4935
4987
|
if (block) {
|
|
4936
4988
|
formatNode = block.collapseToSingleElement();
|
|
4989
|
+
if ((0, roosterjs_editor_dom_1.isNodeEmpty)(formatNode, false /* trimContent */, true /* shouldCountBrAsVisible */)) {
|
|
4990
|
+
var brEl = formatNode.ownerDocument.createElement('br');
|
|
4991
|
+
formatNode.append(brEl);
|
|
4992
|
+
}
|
|
4937
4993
|
// if the block is empty, apply default format
|
|
4938
4994
|
// Otherwise, leave it as it is as we don't want to change the style for existing data
|
|
4939
4995
|
// unless the block was just created by the keyboard event (e.g. ctrl+a & start typing)
|
|
@@ -5177,7 +5233,7 @@ function queryCommandStateFromDOM(core, currentPosition) {
|
|
|
5177
5233
|
var tag = (0, roosterjs_editor_dom_1.getTagOfNode)(node);
|
|
5178
5234
|
var style = node.nodeType == 1 /* Element */ && node.style;
|
|
5179
5235
|
if (tag && style) {
|
|
5180
|
-
|
|
5236
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(PendableStyleCheckers).forEach(function (key) {
|
|
5181
5237
|
if (!(pendableKeys.indexOf(key) >= 0)) {
|
|
5182
5238
|
formatState[key] = formatState[key] || PendableStyleCheckers[key](tag, style);
|
|
5183
5239
|
if (CssFalsyCheckers[key](style)) {
|
|
@@ -5624,7 +5680,7 @@ function restorePendingFormatState(core) {
|
|
|
5624
5680
|
if (pendingFormatState.pendableFormatState) {
|
|
5625
5681
|
var document_1 = contentDiv.ownerDocument;
|
|
5626
5682
|
var formatState_1 = (0, roosterjs_editor_dom_1.getPendableFormatState)(document_1);
|
|
5627
|
-
|
|
5683
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(roosterjs_editor_dom_1.PendableFormatCommandMap).forEach(function (key) {
|
|
5628
5684
|
if (!!pendingFormatState.pendableFormatState[key] != formatState_1[key]) {
|
|
5629
5685
|
document_1.execCommand(roosterjs_editor_dom_1.PendableFormatCommandMap[key], false, null);
|
|
5630
5686
|
}
|
|
@@ -6188,7 +6244,7 @@ var CopyPastePlugin = /** @class */ (function () {
|
|
|
6188
6244
|
function CopyPastePlugin(options) {
|
|
6189
6245
|
var _this = this;
|
|
6190
6246
|
this.onPaste = function (event) {
|
|
6191
|
-
var _a;
|
|
6247
|
+
var _a, _b;
|
|
6192
6248
|
var range;
|
|
6193
6249
|
(0, roosterjs_editor_dom_1.extractClipboardEvent)(event, function (clipboardData) { var _a; return (_a = _this.editor) === null || _a === void 0 ? void 0 : _a.paste(clipboardData); }, {
|
|
6194
6250
|
allowLinkPreview: (_a = _this.editor) === null || _a === void 0 ? void 0 : _a.isFeatureEnabled("PasteWithLinkPreview" /* PasteWithLinkPreview */),
|
|
@@ -6201,7 +6257,7 @@ var CopyPastePlugin = /** @class */ (function () {
|
|
|
6201
6257
|
removeTempDiv: function (div) {
|
|
6202
6258
|
_this.cleanUpAndRestoreSelection(div, range, false /* isCopy */);
|
|
6203
6259
|
},
|
|
6204
|
-
});
|
|
6260
|
+
}, (_b = _this.editor) === null || _b === void 0 ? void 0 : _b.getSelectionRange());
|
|
6205
6261
|
};
|
|
6206
6262
|
this.state = {
|
|
6207
6263
|
allowedCustomPasteType: options.allowedCustomPasteType || [],
|
|
@@ -6810,7 +6866,7 @@ var EntityPlugin = /** @class */ (function () {
|
|
|
6810
6866
|
(0, roosterjs_editor_dom_1.commitEntity)(wrapper, type, isReadonly, entity.id); // Use entity.id here because it is newly updated
|
|
6811
6867
|
_this.handleNewEntity(entity);
|
|
6812
6868
|
});
|
|
6813
|
-
|
|
6869
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(this.state.shadowEntityCache).forEach(function (id) {
|
|
6814
6870
|
_this.triggerEvent(_this.state.shadowEntityCache[id], 6 /* Overwrite */);
|
|
6815
6871
|
delete _this.state.shadowEntityCache[id];
|
|
6816
6872
|
});
|
|
@@ -7097,7 +7153,7 @@ var LifecyclePlugin = /** @class */ (function () {
|
|
|
7097
7153
|
LifecyclePlugin.prototype.dispose = function () {
|
|
7098
7154
|
var _this = this;
|
|
7099
7155
|
this.editor.triggerPluginEvent(12 /* BeforeDispose */, {}, true /*broadcast*/);
|
|
7100
|
-
|
|
7156
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(this.state.customData).forEach(function (key) {
|
|
7101
7157
|
var data = _this.state.customData[key];
|
|
7102
7158
|
if (data && data.disposer) {
|
|
7103
7159
|
data.disposer(data.value);
|
|
@@ -7132,7 +7188,7 @@ var LifecyclePlugin = /** @class */ (function () {
|
|
|
7132
7188
|
};
|
|
7133
7189
|
LifecyclePlugin.prototype.adjustBrowserBehavior = function () {
|
|
7134
7190
|
var _this = this;
|
|
7135
|
-
|
|
7191
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(COMMANDS).forEach(function (command) {
|
|
7136
7192
|
// Catch any possible exception since this should not block the initialization of editor
|
|
7137
7193
|
try {
|
|
7138
7194
|
_this.editor.getDocument().execCommand(command, false, COMMANDS[command]);
|
|
@@ -7150,7 +7206,7 @@ var LifecyclePlugin = /** @class */ (function () {
|
|
|
7150
7206
|
baseFormat.textColors = DARK_MODE_DEFAULT_FORMAT.textColors;
|
|
7151
7207
|
}
|
|
7152
7208
|
}
|
|
7153
|
-
if (baseFormat &&
|
|
7209
|
+
if (baseFormat && (0, roosterjs_editor_dom_1.getObjectKeys)(baseFormat).length === 0) {
|
|
7154
7210
|
return;
|
|
7155
7211
|
}
|
|
7156
7212
|
var _b = baseFormat || {}, fontFamily = _b.fontFamily, fontSize = _b.fontSize, textColor = _b.textColor, textColors = _b.textColors, backgroundColor = _b.backgroundColor, backgroundColors = _b.backgroundColors, bold = _b.bold, italic = _b.italic, underline = _b.underline;
|
|
@@ -7868,8 +7924,8 @@ var __assign = (this && this.__assign) || function () {
|
|
|
7868
7924
|
return __assign.apply(this, arguments);
|
|
7869
7925
|
};
|
|
7870
7926
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7871
|
-
var coreApiMap_1 = __webpack_require__(/*! ../coreApi/coreApiMap */ "./packages/roosterjs-editor-core/lib/coreApi/coreApiMap.ts");
|
|
7872
7927
|
var createCorePlugins_1 = __webpack_require__(/*! ../corePlugins/createCorePlugins */ "./packages/roosterjs-editor-core/lib/corePlugins/createCorePlugins.ts");
|
|
7928
|
+
var coreApiMap_1 = __webpack_require__(/*! ../coreApi/coreApiMap */ "./packages/roosterjs-editor-core/lib/coreApi/coreApiMap.ts");
|
|
7873
7929
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
7874
7930
|
/**
|
|
7875
7931
|
* RoosterJs core editor class
|
|
@@ -7891,7 +7947,7 @@ var Editor = /** @class */ (function () {
|
|
|
7891
7947
|
// 2. Store options values to local variables
|
|
7892
7948
|
var corePlugins = (0, createCorePlugins_1.default)(contentDiv, options);
|
|
7893
7949
|
var plugins = [];
|
|
7894
|
-
|
|
7950
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(corePlugins).forEach(function (name) {
|
|
7895
7951
|
if (name == '_placeholder') {
|
|
7896
7952
|
(0, roosterjs_editor_dom_1.arrayPush)(plugins, options.plugins);
|
|
7897
7953
|
}
|
|
@@ -8960,13 +9016,15 @@ exports.default = getFirstLastBlockElement;
|
|
|
8960
9016
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8961
9017
|
var extractClipboardItems_1 = __webpack_require__(/*! ./extractClipboardItems */ "./packages/roosterjs-editor-dom/lib/clipboard/extractClipboardItems.ts");
|
|
8962
9018
|
var extractClipboardItemsForIE_1 = __webpack_require__(/*! ./extractClipboardItemsForIE */ "./packages/roosterjs-editor-dom/lib/clipboard/extractClipboardItemsForIE.ts");
|
|
8963
|
-
var toArray_1 = __webpack_require__(/*! ../
|
|
9019
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
9020
|
+
var Browser_1 = __webpack_require__(/*! ../utils/Browser */ "./packages/roosterjs-editor-dom/lib/utils/Browser.ts");
|
|
8964
9021
|
/**
|
|
8965
9022
|
* @deprecated Use extractClipboardItems and extractClipboardItemsForIE instead
|
|
8966
9023
|
* Extract a Clipboard event
|
|
8967
9024
|
* @param event The paste event
|
|
8968
9025
|
* @param callback Callback function when data is ready
|
|
8969
9026
|
* @param options Options to retrieve more items from the event, including HTML string and other customized items
|
|
9027
|
+
* @param rangeBeforePaste Optional range to be removed when pasting in Android
|
|
8970
9028
|
* @returns An object with the following properties:
|
|
8971
9029
|
* types: Available types from the clipboard event
|
|
8972
9030
|
* text: Plain text from the clipboard event
|
|
@@ -8975,19 +9033,27 @@ var toArray_1 = __webpack_require__(/*! ../utils/toArray */ "./packages/roosterj
|
|
|
8975
9033
|
* When set to undefined, it means can't retrieve HTML string, there may be HTML string but direct retrieving is
|
|
8976
9034
|
* not supported by browser.
|
|
8977
9035
|
*/
|
|
8978
|
-
function extractClipboardEvent(event, callback, options) {
|
|
9036
|
+
function extractClipboardEvent(event, callback, options, rangeBeforePaste) {
|
|
8979
9037
|
var _a;
|
|
8980
9038
|
var dataTransfer = event.clipboardData ||
|
|
8981
9039
|
((_a = event.target.ownerDocument) === null || _a === void 0 ? void 0 : _a.defaultView).clipboardData;
|
|
8982
9040
|
if (dataTransfer.items) {
|
|
8983
9041
|
event.preventDefault();
|
|
8984
|
-
(0, extractClipboardItems_1.default)((0, toArray_1.default)(dataTransfer.items), options).then(
|
|
9042
|
+
(0, extractClipboardItems_1.default)((0, toArray_1.default)(dataTransfer.items), options).then(function (clipboardData) {
|
|
9043
|
+
removeContents(rangeBeforePaste);
|
|
9044
|
+
callback(clipboardData);
|
|
9045
|
+
});
|
|
8985
9046
|
}
|
|
8986
9047
|
else {
|
|
8987
9048
|
(0, extractClipboardItemsForIE_1.default)(dataTransfer, callback, options);
|
|
8988
9049
|
}
|
|
8989
9050
|
}
|
|
8990
9051
|
exports.default = extractClipboardEvent;
|
|
9052
|
+
function removeContents(range) {
|
|
9053
|
+
if (Browser_1.Browser.isAndroid && range) {
|
|
9054
|
+
range.deleteContents();
|
|
9055
|
+
}
|
|
9056
|
+
}
|
|
8991
9057
|
|
|
8992
9058
|
|
|
8993
9059
|
/***/ }),
|
|
@@ -9148,7 +9214,7 @@ function getAllowedCustomType(type, allowedCustomPasteType) {
|
|
|
9148
9214
|
|
|
9149
9215
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9150
9216
|
var readFile_1 = __webpack_require__(/*! ../utils/readFile */ "./packages/roosterjs-editor-dom/lib/utils/readFile.ts");
|
|
9151
|
-
var toArray_1 = __webpack_require__(/*! ../
|
|
9217
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
9152
9218
|
/**
|
|
9153
9219
|
* Extract clipboard items to be a ClipboardData object for IE
|
|
9154
9220
|
* @param dataTransfer The clipboard items retrieve from a DataTransfer object
|
|
@@ -9941,17 +10007,19 @@ var Position_1 = __webpack_require__(/*! ../selection/Position */ "./packages/ro
|
|
|
9941
10007
|
var PositionContentSearcher_1 = __webpack_require__(/*! ../contentTraverser/PositionContentSearcher */ "./packages/roosterjs-editor-dom/lib/contentTraverser/PositionContentSearcher.ts");
|
|
9942
10008
|
var queryElements_1 = __webpack_require__(/*! ../utils/queryElements */ "./packages/roosterjs-editor-dom/lib/utils/queryElements.ts");
|
|
9943
10009
|
var splitTextNode_1 = __webpack_require__(/*! ../utils/splitTextNode */ "./packages/roosterjs-editor-dom/lib/utils/splitTextNode.ts");
|
|
9944
|
-
var toArray_1 = __webpack_require__(/*! ../
|
|
10010
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
9945
10011
|
var unwrap_1 = __webpack_require__(/*! ../utils/unwrap */ "./packages/roosterjs-editor-dom/lib/utils/unwrap.ts");
|
|
9946
10012
|
var VTable_1 = __webpack_require__(/*! ../table/VTable */ "./packages/roosterjs-editor-dom/lib/table/VTable.ts");
|
|
9947
10013
|
var wrap_1 = __webpack_require__(/*! ../utils/wrap */ "./packages/roosterjs-editor-dom/lib/utils/wrap.ts");
|
|
9948
10014
|
var splitParentNode_1 = __webpack_require__(/*! ../utils/splitParentNode */ "./packages/roosterjs-editor-dom/lib/utils/splitParentNode.ts");
|
|
10015
|
+
var NOT_EDITABLE_SELECTOR = '[contenteditable=false]';
|
|
9949
10016
|
var adjustSteps = [
|
|
9950
10017
|
adjustInsertPositionForHyperLink,
|
|
9951
10018
|
adjustInsertPositionForStructuredNode,
|
|
9952
10019
|
adjustInsertPositionForParagraph,
|
|
9953
10020
|
adjustInsertPositionForVoidElement,
|
|
9954
10021
|
adjustInsertPositionForMoveCursorOutOfALink,
|
|
10022
|
+
adjustInsertPositionForNotEditableNode,
|
|
9955
10023
|
];
|
|
9956
10024
|
/**
|
|
9957
10025
|
* Adjust position for A tag don't be nested inside another A tag.
|
|
@@ -10091,6 +10159,26 @@ function adjustInsertPositionForMoveCursorOutOfALink(root, nodeToInsert, positio
|
|
|
10091
10159
|
}
|
|
10092
10160
|
return position;
|
|
10093
10161
|
}
|
|
10162
|
+
/**
|
|
10163
|
+
* Adjust the position cursor out of a not contenteditable element.
|
|
10164
|
+
*/
|
|
10165
|
+
function adjustInsertPositionForNotEditableNode(root, nodeToInsert, position, range) {
|
|
10166
|
+
if (!position.element.isContentEditable) {
|
|
10167
|
+
var nonEditableElement = void 0;
|
|
10168
|
+
var lastNonEditableElement = (0, findClosestElementAncestor_1.default)(position.node, root, NOT_EDITABLE_SELECTOR);
|
|
10169
|
+
while (lastNonEditableElement) {
|
|
10170
|
+
nonEditableElement = lastNonEditableElement;
|
|
10171
|
+
lastNonEditableElement = (nonEditableElement === null || nonEditableElement === void 0 ? void 0 : nonEditableElement.parentElement)
|
|
10172
|
+
? (0, findClosestElementAncestor_1.default)(nonEditableElement.parentElement, root, NOT_EDITABLE_SELECTOR)
|
|
10173
|
+
: null;
|
|
10174
|
+
}
|
|
10175
|
+
if (nonEditableElement) {
|
|
10176
|
+
position = new Position_1.default(nonEditableElement, -3 /* After */);
|
|
10177
|
+
return adjustInsertPositionForNotEditableNode(root, nodeToInsert, position, range);
|
|
10178
|
+
}
|
|
10179
|
+
}
|
|
10180
|
+
return position;
|
|
10181
|
+
}
|
|
10094
10182
|
/**
|
|
10095
10183
|
*
|
|
10096
10184
|
* @param root the contentDiv of the ditor
|
|
@@ -10124,7 +10212,7 @@ function safeRemove(node) {
|
|
|
10124
10212
|
"use strict";
|
|
10125
10213
|
|
|
10126
10214
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10127
|
-
var arrayPush_1 = __webpack_require__(/*! ../
|
|
10215
|
+
var arrayPush_1 = __webpack_require__(/*! ../jsUtils/arrayPush */ "./packages/roosterjs-editor-dom/lib/jsUtils/arrayPush.ts");
|
|
10128
10216
|
var collapseNodesInRegion_1 = __webpack_require__(/*! ../region/collapseNodesInRegion */ "./packages/roosterjs-editor-dom/lib/region/collapseNodesInRegion.ts");
|
|
10129
10217
|
var getRegionsFromRange_1 = __webpack_require__(/*! ../region/getRegionsFromRange */ "./packages/roosterjs-editor-dom/lib/region/getRegionsFromRange.ts");
|
|
10130
10218
|
var getSelectionRangeInRegion_1 = __webpack_require__(/*! ../region/getSelectionRangeInRegion */ "./packages/roosterjs-editor-dom/lib/region/getSelectionRangeInRegion.ts");
|
|
@@ -10517,12 +10605,13 @@ exports.default = isModifierKey;
|
|
|
10517
10605
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10518
10606
|
var changeElementTag_1 = __webpack_require__(/*! ../utils/changeElementTag */ "./packages/roosterjs-editor-dom/lib/utils/changeElementTag.ts");
|
|
10519
10607
|
var getInheritableStyles_1 = __webpack_require__(/*! ./getInheritableStyles */ "./packages/roosterjs-editor-dom/lib/htmlSanitizer/getInheritableStyles.ts");
|
|
10608
|
+
var getObjectKeys_1 = __webpack_require__(/*! ../jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
10520
10609
|
var getPredefinedCssForElement_1 = __webpack_require__(/*! ./getPredefinedCssForElement */ "./packages/roosterjs-editor-dom/lib/htmlSanitizer/getPredefinedCssForElement.ts");
|
|
10521
10610
|
var getStyles_1 = __webpack_require__(/*! ../style/getStyles */ "./packages/roosterjs-editor-dom/lib/style/getStyles.ts");
|
|
10522
10611
|
var getTagOfNode_1 = __webpack_require__(/*! ../utils/getTagOfNode */ "./packages/roosterjs-editor-dom/lib/utils/getTagOfNode.ts");
|
|
10523
10612
|
var safeInstanceOf_1 = __webpack_require__(/*! ../utils/safeInstanceOf */ "./packages/roosterjs-editor-dom/lib/utils/safeInstanceOf.ts");
|
|
10524
10613
|
var setStyles_1 = __webpack_require__(/*! ../style/setStyles */ "./packages/roosterjs-editor-dom/lib/style/setStyles.ts");
|
|
10525
|
-
var toArray_1 = __webpack_require__(/*! ../
|
|
10614
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
10526
10615
|
var cloneObject_1 = __webpack_require__(/*! ./cloneObject */ "./packages/roosterjs-editor-dom/lib/htmlSanitizer/cloneObject.ts");
|
|
10527
10616
|
var getAllowedValues_1 = __webpack_require__(/*! ./getAllowedValues */ "./packages/roosterjs-editor-dom/lib/htmlSanitizer/getAllowedValues.ts");
|
|
10528
10617
|
/**
|
|
@@ -10729,7 +10818,7 @@ var HtmlSanitizer = /** @class */ (function () {
|
|
|
10729
10818
|
HtmlSanitizer.prototype.preprocessCss = function (element, thisStyle) {
|
|
10730
10819
|
var predefinedStyles = (0, getPredefinedCssForElement_1.default)(element, this.additionalPredefinedCssForElement);
|
|
10731
10820
|
if (predefinedStyles) {
|
|
10732
|
-
|
|
10821
|
+
(0, getObjectKeys_1.default)(predefinedStyles).forEach(function (name) {
|
|
10733
10822
|
thisStyle[name] = predefinedStyles[name];
|
|
10734
10823
|
});
|
|
10735
10824
|
}
|
|
@@ -10737,7 +10826,7 @@ var HtmlSanitizer = /** @class */ (function () {
|
|
|
10737
10826
|
HtmlSanitizer.prototype.processCss = function (element, thisStyle, context) {
|
|
10738
10827
|
var _this = this;
|
|
10739
10828
|
var styles = (0, getStyles_1.default)(element);
|
|
10740
|
-
|
|
10829
|
+
(0, getObjectKeys_1.default)(styles).forEach(function (name) {
|
|
10741
10830
|
var value = styles[name];
|
|
10742
10831
|
var callback = _this.styleCallbacks[name];
|
|
10743
10832
|
var isInheritable = thisStyle[name] != undefined;
|
|
@@ -10852,13 +10941,14 @@ exports.default = chainSanitizerCallback;
|
|
|
10852
10941
|
|
|
10853
10942
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10854
10943
|
exports.cloneObject = void 0;
|
|
10944
|
+
var getObjectKeys_1 = __webpack_require__(/*! ../jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
10855
10945
|
function nativeClone(source, existingObj) {
|
|
10856
10946
|
return Object.assign(existingObj || {}, source);
|
|
10857
10947
|
}
|
|
10858
10948
|
function customClone(source, existingObj) {
|
|
10859
10949
|
var result = existingObj || {};
|
|
10860
10950
|
if (source) {
|
|
10861
|
-
for (var _i = 0, _a =
|
|
10951
|
+
for (var _i = 0, _a = (0, getObjectKeys_1.default)(source); _i < _a.length; _i++) {
|
|
10862
10952
|
var key = _a[_i];
|
|
10863
10953
|
result[key] = source[key];
|
|
10864
10954
|
}
|
|
@@ -10933,6 +11023,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10933
11023
|
};
|
|
10934
11024
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10935
11025
|
exports.getStyleCallbacks = exports.getDefaultStyleValues = exports.getAllowedCssClassesRegex = exports.getAllowedAttributes = exports.getTagReplacement = void 0;
|
|
11026
|
+
var getObjectKeys_1 = __webpack_require__(/*! ../jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
10936
11027
|
var cloneObject_1 = __webpack_require__(/*! ./cloneObject */ "./packages/roosterjs-editor-dom/lib/htmlSanitizer/cloneObject.ts");
|
|
10937
11028
|
var HTML_TAG_REPLACEMENT = {
|
|
10938
11029
|
// Allowed tags
|
|
@@ -11117,7 +11208,7 @@ var ALLOWED_CSS_CLASSES = [];
|
|
|
11117
11208
|
function getTagReplacement(additionalReplacements) {
|
|
11118
11209
|
var result = __assign({}, HTML_TAG_REPLACEMENT);
|
|
11119
11210
|
var replacements = additionalReplacements || {};
|
|
11120
|
-
|
|
11211
|
+
(0, getObjectKeys_1.default)(replacements).forEach(function (key) {
|
|
11121
11212
|
if (key) {
|
|
11122
11213
|
result[key.toLowerCase()] = replacements[key];
|
|
11123
11214
|
}
|
|
@@ -11287,9 +11378,9 @@ exports.default = getPredefinedCssForElement;
|
|
|
11287
11378
|
"use strict";
|
|
11288
11379
|
|
|
11289
11380
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11290
|
-
exports.KnownCreateElementData = exports.createElement = exports.matchesSelector = exports.setColor = exports.getInnerHTML = exports.readFile = exports.safeInstanceOf = exports.
|
|
11291
|
-
exports.validate = exports.getTextContent = exports.deleteSelectedContent = exports.adjustInsertPosition = exports.setStyles = exports.getStyles = exports.isCtrlOrMetaPressed = exports.isCharacterValue = exports.isModifierKey = exports.clearEventDataCache = exports.cacheGetEventData = exports.getEntitySelector = exports.getEntityFromElement = exports.commitEntity = exports.chainSanitizerCallback = exports.createDefaultHtmlSanitizerOptions = exports.getInheritableStyles = exports.HtmlSanitizer = exports.canUndoAutoComplete = exports.createSnapshots = exports.moveCurrentSnapsnot = exports.moveCurrentSnapshot = exports.clearProceedingSnapshotsV2 = exports.clearProceedingSnapshots = exports.canMoveCurrentSnapshot = exports.addSnapshotV2 = exports.addSnapshot = exports.addRangeToSelection = exports.setHtmlWithMetadata = exports.setHtmlWithSelectionPath = exports.getHtmlWithSelectionPath = exports.getSelectionPath = exports.isPositionAtBeginningOf = exports.getPositionRect = exports.createRange = exports.Position = exports.mergeBlocksInRegion = exports.getSelectionRangeInRegion = exports.isNodeInRegion = exports.collapseNodesInRegion = exports.getSelectedBlockElementsInRegion = exports.getRegionsFromRange = exports.setListItemStyle = exports.VListChain = exports.createVListFromRegion = exports.VListItem = exports.VList = exports.isWholeTableSelected =
|
|
11292
|
-
exports.
|
|
11381
|
+
exports.VTable = exports.moveChildNodes = exports.KnownCreateElementData = exports.createElement = exports.matchesSelector = exports.setColor = exports.getInnerHTML = exports.readFile = exports.safeInstanceOf = exports.normalizeRect = exports.splitTextNode = exports.getLastLeafNode = exports.getFirstLeafNode = exports.getPreviousLeafSibling = exports.getNextLeafSibling = exports.wrap = exports.unwrap = exports.splitBalancedNodeRange = exports.splitParentNode = exports.queryElements = exports.matchLink = exports.isVoidHtmlElement = exports.isNodeEmpty = exports.isBlockElement = exports.getTagOfNode = exports.PendableFormatCommandMap = exports.getPendableFormatState = exports.getComputedStyle = exports.getComputedStyles = exports.fromHtml = exports.findClosestElementAncestor = exports.contains = exports.collapseNodes = exports.changeElementTag = exports.applyFormat = exports.getBrowserInfo = exports.Browser = exports.extractClipboardItemsForIE = exports.extractClipboardItems = exports.extractClipboardEvent = exports.applyTextStyle = exports.PartialInlineElement = exports.NodeInlineElement = exports.LinkInlineElement = exports.ImageInlineElement = exports.getInlineElementAtNode = exports.PositionContentSearcher = exports.ContentTraverser = exports.getFirstLastBlockElement = exports.getBlockElementAtNode = void 0;
|
|
11382
|
+
exports.createBooleanDefinition = exports.createNumberDefinition = exports.validate = exports.getTextContent = exports.deleteSelectedContent = exports.adjustInsertPosition = exports.setStyles = exports.getStyles = exports.isCtrlOrMetaPressed = exports.isCharacterValue = exports.isModifierKey = exports.clearEventDataCache = exports.cacheGetEventData = exports.getEntitySelector = exports.getEntityFromElement = exports.commitEntity = exports.chainSanitizerCallback = exports.createDefaultHtmlSanitizerOptions = exports.getInheritableStyles = exports.HtmlSanitizer = exports.canUndoAutoComplete = exports.createSnapshots = exports.moveCurrentSnapsnot = exports.moveCurrentSnapshot = exports.clearProceedingSnapshotsV2 = exports.clearProceedingSnapshots = exports.canMoveCurrentSnapshot = exports.addSnapshotV2 = exports.addSnapshot = exports.addRangeToSelection = exports.setHtmlWithMetadata = exports.setHtmlWithSelectionPath = exports.getHtmlWithSelectionPath = exports.getSelectionPath = exports.isPositionAtBeginningOf = exports.getPositionRect = exports.createRange = exports.Position = exports.mergeBlocksInRegion = exports.getSelectionRangeInRegion = exports.isNodeInRegion = exports.collapseNodesInRegion = exports.getSelectedBlockElementsInRegion = exports.getRegionsFromRange = exports.setListItemStyle = exports.VListChain = exports.createVListFromRegion = exports.VListItem = exports.VList = exports.isWholeTableSelected = void 0;
|
|
11383
|
+
exports.toArray = exports.getObjectKeys = exports.arrayPush = exports.removeMetadata = exports.setMetadata = exports.getMetadata = exports.createObjectDefinition = exports.createArrayDefinition = exports.createStringDefinition = void 0;
|
|
11293
11384
|
var getBlockElementAtNode_1 = __webpack_require__(/*! ./blockElements/getBlockElementAtNode */ "./packages/roosterjs-editor-dom/lib/blockElements/getBlockElementAtNode.ts");
|
|
11294
11385
|
Object.defineProperty(exports, "getBlockElementAtNode", { enumerable: true, get: function () { return getBlockElementAtNode_1.default; } });
|
|
11295
11386
|
var getFirstLastBlockElement_1 = __webpack_require__(/*! ./blockElements/getFirstLastBlockElement */ "./packages/roosterjs-editor-dom/lib/blockElements/getFirstLastBlockElement.ts");
|
|
@@ -11316,8 +11407,6 @@ var extractClipboardItems_1 = __webpack_require__(/*! ./clipboard/extractClipboa
|
|
|
11316
11407
|
Object.defineProperty(exports, "extractClipboardItems", { enumerable: true, get: function () { return extractClipboardItems_1.default; } });
|
|
11317
11408
|
var extractClipboardItemsForIE_1 = __webpack_require__(/*! ./clipboard/extractClipboardItemsForIE */ "./packages/roosterjs-editor-dom/lib/clipboard/extractClipboardItemsForIE.ts");
|
|
11318
11409
|
Object.defineProperty(exports, "extractClipboardItemsForIE", { enumerable: true, get: function () { return extractClipboardItemsForIE_1.default; } });
|
|
11319
|
-
var arrayPush_1 = __webpack_require__(/*! ./utils/arrayPush */ "./packages/roosterjs-editor-dom/lib/utils/arrayPush.ts");
|
|
11320
|
-
Object.defineProperty(exports, "arrayPush", { enumerable: true, get: function () { return arrayPush_1.default; } });
|
|
11321
11410
|
var Browser_1 = __webpack_require__(/*! ./utils/Browser */ "./packages/roosterjs-editor-dom/lib/utils/Browser.ts");
|
|
11322
11411
|
Object.defineProperty(exports, "Browser", { enumerable: true, get: function () { return Browser_1.Browser; } });
|
|
11323
11412
|
Object.defineProperty(exports, "getBrowserInfo", { enumerable: true, get: function () { return Browser_1.getBrowserInfo; } });
|
|
@@ -11368,8 +11457,6 @@ var splitTextNode_1 = __webpack_require__(/*! ./utils/splitTextNode */ "./packag
|
|
|
11368
11457
|
Object.defineProperty(exports, "splitTextNode", { enumerable: true, get: function () { return splitTextNode_1.default; } });
|
|
11369
11458
|
var normalizeRect_1 = __webpack_require__(/*! ./utils/normalizeRect */ "./packages/roosterjs-editor-dom/lib/utils/normalizeRect.ts");
|
|
11370
11459
|
Object.defineProperty(exports, "normalizeRect", { enumerable: true, get: function () { return normalizeRect_1.default; } });
|
|
11371
|
-
var toArray_1 = __webpack_require__(/*! ./utils/toArray */ "./packages/roosterjs-editor-dom/lib/utils/toArray.ts");
|
|
11372
|
-
Object.defineProperty(exports, "toArray", { enumerable: true, get: function () { return toArray_1.default; } });
|
|
11373
11460
|
var safeInstanceOf_1 = __webpack_require__(/*! ./utils/safeInstanceOf */ "./packages/roosterjs-editor-dom/lib/utils/safeInstanceOf.ts");
|
|
11374
11461
|
Object.defineProperty(exports, "safeInstanceOf", { enumerable: true, get: function () { return safeInstanceOf_1.default; } });
|
|
11375
11462
|
var readFile_1 = __webpack_require__(/*! ./utils/readFile */ "./packages/roosterjs-editor-dom/lib/utils/readFile.ts");
|
|
@@ -11489,6 +11576,12 @@ var metadata_1 = __webpack_require__(/*! ./metadata/metadata */ "./packages/roos
|
|
|
11489
11576
|
Object.defineProperty(exports, "getMetadata", { enumerable: true, get: function () { return metadata_1.getMetadata; } });
|
|
11490
11577
|
Object.defineProperty(exports, "setMetadata", { enumerable: true, get: function () { return metadata_1.setMetadata; } });
|
|
11491
11578
|
Object.defineProperty(exports, "removeMetadata", { enumerable: true, get: function () { return metadata_1.removeMetadata; } });
|
|
11579
|
+
var arrayPush_1 = __webpack_require__(/*! ./jsUtils/arrayPush */ "./packages/roosterjs-editor-dom/lib/jsUtils/arrayPush.ts");
|
|
11580
|
+
Object.defineProperty(exports, "arrayPush", { enumerable: true, get: function () { return arrayPush_1.default; } });
|
|
11581
|
+
var getObjectKeys_1 = __webpack_require__(/*! ./jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
11582
|
+
Object.defineProperty(exports, "getObjectKeys", { enumerable: true, get: function () { return getObjectKeys_1.default; } });
|
|
11583
|
+
var toArray_1 = __webpack_require__(/*! ./jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
11584
|
+
Object.defineProperty(exports, "toArray", { enumerable: true, get: function () { return toArray_1.default; } });
|
|
11492
11585
|
|
|
11493
11586
|
|
|
11494
11587
|
/***/ }),
|
|
@@ -12125,6 +12218,70 @@ function getInlineElementBeforeAfter(root, position, isAfter) {
|
|
|
12125
12218
|
exports.getInlineElementBeforeAfter = getInlineElementBeforeAfter;
|
|
12126
12219
|
|
|
12127
12220
|
|
|
12221
|
+
/***/ }),
|
|
12222
|
+
|
|
12223
|
+
/***/ "./packages/roosterjs-editor-dom/lib/jsUtils/arrayPush.ts":
|
|
12224
|
+
/*!****************************************************************!*\
|
|
12225
|
+
!*** ./packages/roosterjs-editor-dom/lib/jsUtils/arrayPush.ts ***!
|
|
12226
|
+
\****************************************************************/
|
|
12227
|
+
/*! no static exports found */
|
|
12228
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
12229
|
+
|
|
12230
|
+
"use strict";
|
|
12231
|
+
|
|
12232
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12233
|
+
/**
|
|
12234
|
+
* A type-safe wrapper for Array.prototype.push.apply()
|
|
12235
|
+
* @param mainArray The main array to push items into
|
|
12236
|
+
* @param itemsArray The items to push to main array
|
|
12237
|
+
*/
|
|
12238
|
+
function arrayPush(mainArray, itemsArray) {
|
|
12239
|
+
Array.prototype.push.apply(mainArray, itemsArray);
|
|
12240
|
+
}
|
|
12241
|
+
exports.default = arrayPush;
|
|
12242
|
+
|
|
12243
|
+
|
|
12244
|
+
/***/ }),
|
|
12245
|
+
|
|
12246
|
+
/***/ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts":
|
|
12247
|
+
/*!********************************************************************!*\
|
|
12248
|
+
!*** ./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts ***!
|
|
12249
|
+
\********************************************************************/
|
|
12250
|
+
/*! no static exports found */
|
|
12251
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
12252
|
+
|
|
12253
|
+
"use strict";
|
|
12254
|
+
|
|
12255
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12256
|
+
/**
|
|
12257
|
+
* Provide a strong-typed version of Object.keys()
|
|
12258
|
+
* @param obj The source object
|
|
12259
|
+
* @returns Array of keys
|
|
12260
|
+
*/
|
|
12261
|
+
function getObjectKeys(obj) {
|
|
12262
|
+
return Object.keys(obj);
|
|
12263
|
+
}
|
|
12264
|
+
exports.default = getObjectKeys;
|
|
12265
|
+
|
|
12266
|
+
|
|
12267
|
+
/***/ }),
|
|
12268
|
+
|
|
12269
|
+
/***/ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts":
|
|
12270
|
+
/*!**************************************************************!*\
|
|
12271
|
+
!*** ./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts ***!
|
|
12272
|
+
\**************************************************************/
|
|
12273
|
+
/*! no static exports found */
|
|
12274
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
12275
|
+
|
|
12276
|
+
"use strict";
|
|
12277
|
+
|
|
12278
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12279
|
+
function toArray(collection) {
|
|
12280
|
+
return [].slice.call(collection);
|
|
12281
|
+
}
|
|
12282
|
+
exports.default = toArray;
|
|
12283
|
+
|
|
12284
|
+
|
|
12128
12285
|
/***/ }),
|
|
12129
12286
|
|
|
12130
12287
|
/***/ "./packages/roosterjs-editor-dom/lib/list/VList.ts":
|
|
@@ -12155,11 +12312,10 @@ var Position_1 = __webpack_require__(/*! ../selection/Position */ "./packages/ro
|
|
|
12155
12312
|
var queryElements_1 = __webpack_require__(/*! ../utils/queryElements */ "./packages/roosterjs-editor-dom/lib/utils/queryElements.ts");
|
|
12156
12313
|
var safeInstanceOf_1 = __webpack_require__(/*! ../utils/safeInstanceOf */ "./packages/roosterjs-editor-dom/lib/utils/safeInstanceOf.ts");
|
|
12157
12314
|
var splitParentNode_1 = __webpack_require__(/*! ../utils/splitParentNode */ "./packages/roosterjs-editor-dom/lib/utils/splitParentNode.ts");
|
|
12158
|
-
var toArray_1 = __webpack_require__(/*! ../
|
|
12315
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
12159
12316
|
var unwrap_1 = __webpack_require__(/*! ../utils/unwrap */ "./packages/roosterjs-editor-dom/lib/utils/unwrap.ts");
|
|
12160
12317
|
var VListItem_1 = __webpack_require__(/*! ./VListItem */ "./packages/roosterjs-editor-dom/lib/list/VListItem.ts");
|
|
12161
12318
|
var wrap_1 = __webpack_require__(/*! ../utils/wrap */ "./packages/roosterjs-editor-dom/lib/utils/wrap.ts");
|
|
12162
|
-
var definitionCreators_1 = __webpack_require__(/*! ../metadata/definitionCreators */ "./packages/roosterjs-editor-dom/lib/metadata/definitionCreators.ts");
|
|
12163
12319
|
var metadata_1 = __webpack_require__(/*! ../metadata/metadata */ "./packages/roosterjs-editor-dom/lib/metadata/metadata.ts");
|
|
12164
12320
|
/**
|
|
12165
12321
|
* Represent a bullet or a numbering list
|
|
@@ -12416,10 +12572,13 @@ var VList = /** @class */ (function () {
|
|
|
12416
12572
|
/**
|
|
12417
12573
|
* Change list style of the given range of this list.
|
|
12418
12574
|
* If some of the items are not real list item yet, this will make them to be list item with given style
|
|
12419
|
-
* @param
|
|
12575
|
+
* @param orderedStyle The style of ordered list
|
|
12576
|
+
* @param unorderedStyle The style of unordered list
|
|
12420
12577
|
*/
|
|
12421
|
-
VList.prototype.setListStyleType = function (
|
|
12422
|
-
(0, metadata_1.
|
|
12578
|
+
VList.prototype.setListStyleType = function (orderedStyle, unorderedStyle) {
|
|
12579
|
+
var style = (0, metadata_1.getMetadata)(this.rootList, VListItem_1.ListStyleDefinitionMetadata);
|
|
12580
|
+
var styleMetadata = createListStyleMetadata(style, orderedStyle, unorderedStyle);
|
|
12581
|
+
(0, metadata_1.setMetadata)(this.rootList, styleMetadata, VListItem_1.ListStyleDefinitionMetadata);
|
|
12423
12582
|
};
|
|
12424
12583
|
/**
|
|
12425
12584
|
* Append a new item to this VList
|
|
@@ -12575,6 +12734,19 @@ function moveLiToList(li) {
|
|
|
12575
12734
|
(0, unwrap_1.default)(li.parentNode);
|
|
12576
12735
|
}
|
|
12577
12736
|
}
|
|
12737
|
+
function getValidValue() {
|
|
12738
|
+
var values = [];
|
|
12739
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
12740
|
+
values[_i] = arguments[_i];
|
|
12741
|
+
}
|
|
12742
|
+
return values.filter(function (x) { return x !== undefined; })[0];
|
|
12743
|
+
}
|
|
12744
|
+
function createListStyleMetadata(style, orderedStyle, unorderedStyle) {
|
|
12745
|
+
return {
|
|
12746
|
+
orderedStyleType: getValidValue(orderedStyle, style === null || style === void 0 ? void 0 : style.orderedStyleType, 1 /* Decimal */),
|
|
12747
|
+
unorderedStyleType: getValidValue(unorderedStyle, style === null || style === void 0 ? void 0 : style.unorderedStyleType, 1 /* Disc */),
|
|
12748
|
+
};
|
|
12749
|
+
}
|
|
12578
12750
|
|
|
12579
12751
|
|
|
12580
12752
|
/***/ }),
|
|
@@ -12589,7 +12761,7 @@ function moveLiToList(li) {
|
|
|
12589
12761
|
"use strict";
|
|
12590
12762
|
|
|
12591
12763
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12592
|
-
var arrayPush_1 = __webpack_require__(/*! ../
|
|
12764
|
+
var arrayPush_1 = __webpack_require__(/*! ../jsUtils/arrayPush */ "./packages/roosterjs-editor-dom/lib/jsUtils/arrayPush.ts");
|
|
12593
12765
|
var getRootListNode_1 = __webpack_require__(/*! ./getRootListNode */ "./packages/roosterjs-editor-dom/lib/list/getRootListNode.ts");
|
|
12594
12766
|
var isNodeAfter_1 = __webpack_require__(/*! ../utils/isNodeAfter */ "./packages/roosterjs-editor-dom/lib/utils/isNodeAfter.ts");
|
|
12595
12767
|
var isNodeInRegion_1 = __webpack_require__(/*! ../region/isNodeInRegion */ "./packages/roosterjs-editor-dom/lib/region/isNodeInRegion.ts");
|
|
@@ -12754,6 +12926,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
12754
12926
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
12755
12927
|
};
|
|
12756
12928
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12929
|
+
exports.ListStyleDefinitionMetadata = void 0;
|
|
12757
12930
|
var contains_1 = __webpack_require__(/*! ../utils/contains */ "./packages/roosterjs-editor-dom/lib/utils/contains.ts");
|
|
12758
12931
|
var getListTypeFromNode_1 = __webpack_require__(/*! ./getListTypeFromNode */ "./packages/roosterjs-editor-dom/lib/list/getListTypeFromNode.ts");
|
|
12759
12932
|
var getTagOfNode_1 = __webpack_require__(/*! ../utils/getTagOfNode */ "./packages/roosterjs-editor-dom/lib/utils/getTagOfNode.ts");
|
|
@@ -12763,13 +12936,23 @@ var safeInstanceOf_1 = __webpack_require__(/*! ../utils/safeInstanceOf */ "./pac
|
|
|
12763
12936
|
var setBulletListMarkers_1 = __webpack_require__(/*! ./setBulletListMarkers */ "./packages/roosterjs-editor-dom/lib/list/setBulletListMarkers.ts");
|
|
12764
12937
|
var setListItemStyle_1 = __webpack_require__(/*! ./setListItemStyle */ "./packages/roosterjs-editor-dom/lib/list/setListItemStyle.ts");
|
|
12765
12938
|
var setNumberingListMarkers_1 = __webpack_require__(/*! ./setNumberingListMarkers */ "./packages/roosterjs-editor-dom/lib/list/setNumberingListMarkers.ts");
|
|
12766
|
-
var toArray_1 = __webpack_require__(/*! ../
|
|
12939
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
12767
12940
|
var unwrap_1 = __webpack_require__(/*! ../utils/unwrap */ "./packages/roosterjs-editor-dom/lib/utils/unwrap.ts");
|
|
12768
12941
|
var wrap_1 = __webpack_require__(/*! ../utils/wrap */ "./packages/roosterjs-editor-dom/lib/utils/wrap.ts");
|
|
12942
|
+
var definitionCreators_1 = __webpack_require__(/*! ../metadata/definitionCreators */ "./packages/roosterjs-editor-dom/lib/metadata/definitionCreators.ts");
|
|
12769
12943
|
var metadata_1 = __webpack_require__(/*! ../metadata/metadata */ "./packages/roosterjs-editor-dom/lib/metadata/metadata.ts");
|
|
12770
12944
|
var orderListStyles = [null, 'lower-alpha', 'lower-roman'];
|
|
12945
|
+
var unorderedListStyles = ['disc', 'circle', 'square'];
|
|
12771
12946
|
var MARGIN_BASE = '0in 0in 0in 0.5in';
|
|
12772
12947
|
var NEGATIVE_MARGIN = '-.25in';
|
|
12948
|
+
/**
|
|
12949
|
+
* @internal
|
|
12950
|
+
* The definition for the number of BulletListType or NumberingListType
|
|
12951
|
+
*/
|
|
12952
|
+
exports.ListStyleDefinitionMetadata = (0, definitionCreators_1.createObjectDefinition)({
|
|
12953
|
+
orderedStyleType: (0, definitionCreators_1.createNumberDefinition)(true /** isOptional */, undefined /** value **/, 1 /* Min */, 20 /* Max */),
|
|
12954
|
+
unorderedStyleType: (0, definitionCreators_1.createNumberDefinition)(true /** isOptional */, undefined /** value **/, 1 /* Min */, 7 /* Max */),
|
|
12955
|
+
}, true /** isOptional */, true /** allowNull */);
|
|
12773
12956
|
/**
|
|
12774
12957
|
* !!! Never directly create instance of this class. It should be created within VList class !!!
|
|
12775
12958
|
*
|
|
@@ -12933,15 +13116,19 @@ var VListItem = /** @class */ (function () {
|
|
|
12933
13116
|
* @param index the list item index
|
|
12934
13117
|
*/
|
|
12935
13118
|
VListItem.prototype.applyListStyle = function (rootList, index) {
|
|
12936
|
-
var style = (0, metadata_1.getMetadata)(rootList
|
|
13119
|
+
var style = (0, metadata_1.getMetadata)(rootList, exports.ListStyleDefinitionMetadata);
|
|
13120
|
+
// The list just need to be styled if it is at top level, so the listType length for this Vlist must be 2.
|
|
13121
|
+
var isFirstLevel = this.listTypes.length < 3;
|
|
12937
13122
|
if (style) {
|
|
12938
|
-
if (
|
|
12939
|
-
|
|
12940
|
-
|
|
12941
|
-
|
|
12942
|
-
|
|
12943
|
-
|
|
12944
|
-
|
|
13123
|
+
if (isFirstLevel &&
|
|
13124
|
+
this.listTypes[1] === 2 /* Unordered */ &&
|
|
13125
|
+
style.unorderedStyleType) {
|
|
13126
|
+
(0, setBulletListMarkers_1.default)(this.node, style.unorderedStyleType);
|
|
13127
|
+
}
|
|
13128
|
+
else if (isFirstLevel &&
|
|
13129
|
+
this.listTypes[1] === 1 /* Ordered */ &&
|
|
13130
|
+
style.orderedStyleType) {
|
|
13131
|
+
(0, setNumberingListMarkers_1.default)(this.node, style.orderedStyleType, index);
|
|
12945
13132
|
}
|
|
12946
13133
|
else {
|
|
12947
13134
|
this.node.style.removeProperty('list-style-type');
|
|
@@ -13057,9 +13244,19 @@ function createListElement(newRoot, listType, nextLevel, originalRoot) {
|
|
|
13057
13244
|
// Can't be reused, can't clone, let's create a new one
|
|
13058
13245
|
result = doc.createElement(listType == 1 /* Ordered */ ? 'ol' : 'ul');
|
|
13059
13246
|
}
|
|
13247
|
+
// Always maintain the metadata saved in the list
|
|
13248
|
+
if (originalRoot && nextLevel == 1 && listType != (0, getListTypeFromNode_1.default)(originalRoot)) {
|
|
13249
|
+
var style = (0, metadata_1.getMetadata)(originalRoot, exports.ListStyleDefinitionMetadata);
|
|
13250
|
+
if (style) {
|
|
13251
|
+
(0, metadata_1.setMetadata)(result, style, exports.ListStyleDefinitionMetadata);
|
|
13252
|
+
}
|
|
13253
|
+
}
|
|
13060
13254
|
if (listType == 1 /* Ordered */ && nextLevel > 1) {
|
|
13061
13255
|
result.style.setProperty('list-style-type', orderListStyles[(nextLevel - 1) % orderListStyles.length]);
|
|
13062
13256
|
}
|
|
13257
|
+
if (listType == 2 /* Unordered */ && nextLevel > 1) {
|
|
13258
|
+
result.style.setProperty('list-style-type', unorderedListStyles[(nextLevel - 1) % unorderedListStyles.length]);
|
|
13259
|
+
}
|
|
13063
13260
|
return result;
|
|
13064
13261
|
}
|
|
13065
13262
|
function wrapIfNotBlockNode(nodes, checkFirst, checkLast) {
|
|
@@ -13147,6 +13344,7 @@ exports.default = convertDecimalsToAlpha;
|
|
|
13147
13344
|
"use strict";
|
|
13148
13345
|
|
|
13149
13346
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13347
|
+
var getObjectKeys_1 = __webpack_require__(/*! ../jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
13150
13348
|
var RomanValues = {
|
|
13151
13349
|
M: 1000,
|
|
13152
13350
|
CM: 900,
|
|
@@ -13171,7 +13369,7 @@ var RomanValues = {
|
|
|
13171
13369
|
*/
|
|
13172
13370
|
function convertDecimalsToRoman(decimal, isLowerCase) {
|
|
13173
13371
|
var romanValue = '';
|
|
13174
|
-
for (var _i = 0, _a =
|
|
13372
|
+
for (var _i = 0, _a = (0, getObjectKeys_1.default)(RomanValues); _i < _a.length; _i++) {
|
|
13175
13373
|
var i = _a[_i];
|
|
13176
13374
|
var timesRomanCharAppear = Math.floor(decimal / RomanValues[i]);
|
|
13177
13375
|
decimal = decimal - timesRomanCharAppear * RomanValues[i];
|
|
@@ -13201,7 +13399,7 @@ var isNodeInRegion_1 = __webpack_require__(/*! ../region/isNodeInRegion */ "./pa
|
|
|
13201
13399
|
var Position_1 = __webpack_require__(/*! ../selection/Position */ "./packages/roosterjs-editor-dom/lib/selection/Position.ts");
|
|
13202
13400
|
var safeInstanceOf_1 = __webpack_require__(/*! ../utils/safeInstanceOf */ "./packages/roosterjs-editor-dom/lib/utils/safeInstanceOf.ts");
|
|
13203
13401
|
var shouldSkipNode_1 = __webpack_require__(/*! ../utils/shouldSkipNode */ "./packages/roosterjs-editor-dom/lib/utils/shouldSkipNode.ts");
|
|
13204
|
-
var toArray_1 = __webpack_require__(/*! ../
|
|
13402
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
13205
13403
|
var VList_1 = __webpack_require__(/*! ./VList */ "./packages/roosterjs-editor-dom/lib/list/VList.ts");
|
|
13206
13404
|
var wrap_1 = __webpack_require__(/*! ../utils/wrap */ "./packages/roosterjs-editor-dom/lib/utils/wrap.ts");
|
|
13207
13405
|
var getLeafSibling_1 = __webpack_require__(/*! ../utils/getLeafSibling */ "./packages/roosterjs-editor-dom/lib/utils/getLeafSibling.ts");
|
|
@@ -13404,17 +13602,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13404
13602
|
*/
|
|
13405
13603
|
function setBulletListMarkers(li, listStyleType) {
|
|
13406
13604
|
var marker = bulletListStyle[listStyleType];
|
|
13407
|
-
var isDiscOrSquare = listStyleType ===
|
|
13605
|
+
var isDiscOrSquare = listStyleType === 1 /* Disc */ || listStyleType === 3 /* Square */;
|
|
13408
13606
|
li.style.listStyleType = isDiscOrSquare ? marker : "\"" + marker + "\"";
|
|
13409
13607
|
}
|
|
13410
13608
|
exports.default = setBulletListMarkers;
|
|
13411
13609
|
var bulletListStyle = (_a = {},
|
|
13412
|
-
_a[
|
|
13413
|
-
_a[
|
|
13414
|
-
_a[
|
|
13415
|
-
_a[
|
|
13416
|
-
_a[
|
|
13417
|
-
_a[
|
|
13610
|
+
_a[1 /* Disc */] = 'disc',
|
|
13611
|
+
_a[3 /* Square */] = 'square',
|
|
13612
|
+
_a[2 /* Dash */] = '- ',
|
|
13613
|
+
_a[5 /* LongArrow */] = '→ ',
|
|
13614
|
+
_a[4 /* ShortArrow */] = '➢ ',
|
|
13615
|
+
_a[6 /* UnfilledArrow */] = '➪ ',
|
|
13616
|
+
_a[7 /* Hyphen */] = '— ',
|
|
13418
13617
|
_a);
|
|
13419
13618
|
|
|
13420
13619
|
|
|
@@ -13520,95 +13719,95 @@ function setNumberingListMarkers(li, listStyleType, level) {
|
|
|
13520
13719
|
}
|
|
13521
13720
|
exports.default = setNumberingListMarkers;
|
|
13522
13721
|
var numberingListStyle = (_a = {},
|
|
13523
|
-
_a[
|
|
13722
|
+
_a[1 /* Decimal */] = {
|
|
13524
13723
|
markerType: MarkerTypes.Decimal,
|
|
13525
13724
|
markerSeparator: '. ',
|
|
13526
13725
|
},
|
|
13527
|
-
_a[
|
|
13726
|
+
_a[2 /* DecimalDash */] = {
|
|
13528
13727
|
markerType: MarkerTypes.Decimal,
|
|
13529
13728
|
markerSeparator: '- ',
|
|
13530
13729
|
},
|
|
13531
|
-
_a[
|
|
13730
|
+
_a[3 /* DecimalParenthesis */] = {
|
|
13532
13731
|
markerType: MarkerTypes.Decimal,
|
|
13533
13732
|
markerSeparator: ') ',
|
|
13534
13733
|
},
|
|
13535
|
-
_a[
|
|
13734
|
+
_a[4 /* DecimalDoubleParenthesis */] = {
|
|
13536
13735
|
markerType: MarkerTypes.Decimal,
|
|
13537
13736
|
markerSeparator: ') ',
|
|
13538
13737
|
markerSecondSeparator: '(',
|
|
13539
13738
|
},
|
|
13540
|
-
_a[
|
|
13739
|
+
_a[5 /* LowerAlpha */] = {
|
|
13541
13740
|
markerType: MarkerTypes.Alpha,
|
|
13542
13741
|
markerSeparator: '. ',
|
|
13543
13742
|
lowerCase: true,
|
|
13544
13743
|
},
|
|
13545
|
-
_a[
|
|
13744
|
+
_a[8 /* LowerAlphaDash */] = {
|
|
13546
13745
|
markerType: MarkerTypes.Alpha,
|
|
13547
13746
|
markerSeparator: '- ',
|
|
13548
13747
|
lowerCase: true,
|
|
13549
13748
|
},
|
|
13550
|
-
_a[
|
|
13749
|
+
_a[6 /* LowerAlphaParenthesis */] = {
|
|
13551
13750
|
markerType: MarkerTypes.Alpha,
|
|
13552
13751
|
markerSeparator: ') ',
|
|
13553
13752
|
lowerCase: true,
|
|
13554
13753
|
},
|
|
13555
|
-
_a[
|
|
13754
|
+
_a[7 /* LowerAlphaDoubleParenthesis */] = {
|
|
13556
13755
|
markerType: MarkerTypes.Alpha,
|
|
13557
13756
|
markerSeparator: ') ',
|
|
13558
13757
|
markerSecondSeparator: '(',
|
|
13559
13758
|
lowerCase: true,
|
|
13560
13759
|
},
|
|
13561
|
-
_a[
|
|
13760
|
+
_a[9 /* UpperAlpha */] = {
|
|
13562
13761
|
markerType: MarkerTypes.Alpha,
|
|
13563
13762
|
markerSeparator: '. ',
|
|
13564
13763
|
},
|
|
13565
|
-
_a[
|
|
13764
|
+
_a[12 /* UpperAlphaDash */] = {
|
|
13566
13765
|
markerType: MarkerTypes.Alpha,
|
|
13567
13766
|
markerSeparator: '- ',
|
|
13568
13767
|
},
|
|
13569
|
-
_a[
|
|
13768
|
+
_a[10 /* UpperAlphaParenthesis */] = {
|
|
13570
13769
|
markerType: MarkerTypes.Alpha,
|
|
13571
13770
|
markerSeparator: ') ',
|
|
13572
13771
|
},
|
|
13573
|
-
_a[
|
|
13772
|
+
_a[11 /* UpperAlphaDoubleParenthesis */] = {
|
|
13574
13773
|
markerType: MarkerTypes.Alpha,
|
|
13575
13774
|
markerSeparator: ') ',
|
|
13576
13775
|
markerSecondSeparator: '(',
|
|
13577
13776
|
},
|
|
13578
|
-
_a[
|
|
13777
|
+
_a[13 /* LowerRoman */] = {
|
|
13579
13778
|
markerType: MarkerTypes.Roman,
|
|
13580
13779
|
markerSeparator: '. ',
|
|
13581
13780
|
lowerCase: true,
|
|
13582
13781
|
},
|
|
13583
|
-
_a[
|
|
13782
|
+
_a[16 /* LowerRomanDash */] = {
|
|
13584
13783
|
markerType: MarkerTypes.Roman,
|
|
13585
13784
|
markerSeparator: '- ',
|
|
13586
13785
|
lowerCase: true,
|
|
13587
13786
|
},
|
|
13588
|
-
_a[
|
|
13787
|
+
_a[14 /* LowerRomanParenthesis */] = {
|
|
13589
13788
|
markerType: MarkerTypes.Roman,
|
|
13590
13789
|
markerSeparator: ') ',
|
|
13591
13790
|
lowerCase: true,
|
|
13592
13791
|
},
|
|
13593
|
-
_a[
|
|
13792
|
+
_a[15 /* LowerRomanDoubleParenthesis */] = {
|
|
13594
13793
|
markerType: MarkerTypes.Roman,
|
|
13595
13794
|
markerSeparator: ') ',
|
|
13596
13795
|
markerSecondSeparator: '(',
|
|
13597
13796
|
lowerCase: true,
|
|
13598
13797
|
},
|
|
13599
|
-
_a[
|
|
13798
|
+
_a[17 /* UpperRoman */] = {
|
|
13600
13799
|
markerType: MarkerTypes.Roman,
|
|
13601
13800
|
markerSeparator: '. ',
|
|
13602
13801
|
},
|
|
13603
|
-
_a[
|
|
13802
|
+
_a[20 /* UpperRomanDash */] = {
|
|
13604
13803
|
markerType: MarkerTypes.Roman,
|
|
13605
13804
|
markerSeparator: '- ',
|
|
13606
13805
|
},
|
|
13607
|
-
_a[
|
|
13806
|
+
_a[18 /* UpperRomanParenthesis */] = {
|
|
13608
13807
|
markerType: MarkerTypes.Roman,
|
|
13609
13808
|
markerSeparator: ') ',
|
|
13610
13809
|
},
|
|
13611
|
-
_a[
|
|
13810
|
+
_a[19 /* UpperRomanDoubleParenthesis */] = {
|
|
13612
13811
|
markerType: MarkerTypes.Roman,
|
|
13613
13812
|
markerSeparator: ') ',
|
|
13614
13813
|
markerSecondSeparator: '(',
|
|
@@ -13804,6 +14003,7 @@ exports.removeMetadata = removeMetadata;
|
|
|
13804
14003
|
"use strict";
|
|
13805
14004
|
|
|
13806
14005
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14006
|
+
var getObjectKeys_1 = __webpack_require__(/*! ../jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
13807
14007
|
/**
|
|
13808
14008
|
* Validate the given object with a type definition object
|
|
13809
14009
|
* @param input The object to validate
|
|
@@ -13844,7 +14044,9 @@ function validate(input, def) {
|
|
|
13844
14044
|
case 4 /* Object */:
|
|
13845
14045
|
result =
|
|
13846
14046
|
typeof input === 'object' &&
|
|
13847
|
-
|
|
14047
|
+
(0, getObjectKeys_1.default)(def.propertyDef).every(function (x) {
|
|
14048
|
+
return validate(input[x], def.propertyDef[x]);
|
|
14049
|
+
});
|
|
13848
14050
|
break;
|
|
13849
14051
|
case 5 /* Customize */:
|
|
13850
14052
|
result = def.validator(input);
|
|
@@ -15163,6 +15365,7 @@ exports.default = getStyles;
|
|
|
15163
15365
|
"use strict";
|
|
15164
15366
|
|
|
15165
15367
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15368
|
+
var getObjectKeys_1 = __webpack_require__(/*! ../jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
15166
15369
|
/**
|
|
15167
15370
|
* Set styles to an HTML element. If styles are empty, remove 'style' attribute
|
|
15168
15371
|
* @param element The element to set styles
|
|
@@ -15170,7 +15373,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15170
15373
|
*/
|
|
15171
15374
|
function setStyles(element, styles) {
|
|
15172
15375
|
if (element) {
|
|
15173
|
-
var style =
|
|
15376
|
+
var style = (0, getObjectKeys_1.default)(styles || {})
|
|
15174
15377
|
.map(function (name) {
|
|
15175
15378
|
var value = styles[name];
|
|
15176
15379
|
var trimmedName = name ? name.trim() : null;
|
|
@@ -15217,7 +15420,7 @@ var applyTableFormat_1 = __webpack_require__(/*! ./applyTableFormat */ "./packag
|
|
|
15217
15420
|
var moveChildNodes_1 = __webpack_require__(/*! ../utils/moveChildNodes */ "./packages/roosterjs-editor-dom/lib/utils/moveChildNodes.ts");
|
|
15218
15421
|
var normalizeRect_1 = __webpack_require__(/*! ../utils/normalizeRect */ "./packages/roosterjs-editor-dom/lib/utils/normalizeRect.ts");
|
|
15219
15422
|
var safeInstanceOf_1 = __webpack_require__(/*! ../utils/safeInstanceOf */ "./packages/roosterjs-editor-dom/lib/utils/safeInstanceOf.ts");
|
|
15220
|
-
var toArray_1 = __webpack_require__(/*! ../
|
|
15423
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
15221
15424
|
var tableFormatInfo_1 = __webpack_require__(/*! ./tableFormatInfo */ "./packages/roosterjs-editor-dom/lib/table/tableFormatInfo.ts");
|
|
15222
15425
|
var CELL_SHADE = 'cellShade';
|
|
15223
15426
|
var DEFAULT_FORMAT = {
|
|
@@ -16376,29 +16579,6 @@ function applyFormat(element, format, isDarkMode) {
|
|
|
16376
16579
|
exports.default = applyFormat;
|
|
16377
16580
|
|
|
16378
16581
|
|
|
16379
|
-
/***/ }),
|
|
16380
|
-
|
|
16381
|
-
/***/ "./packages/roosterjs-editor-dom/lib/utils/arrayPush.ts":
|
|
16382
|
-
/*!**************************************************************!*\
|
|
16383
|
-
!*** ./packages/roosterjs-editor-dom/lib/utils/arrayPush.ts ***!
|
|
16384
|
-
\**************************************************************/
|
|
16385
|
-
/*! no static exports found */
|
|
16386
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
16387
|
-
|
|
16388
|
-
"use strict";
|
|
16389
|
-
|
|
16390
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16391
|
-
/**
|
|
16392
|
-
* A type-safe wrapper for Array.prototype.push.apply()
|
|
16393
|
-
* @param mainArray The main array to push items into
|
|
16394
|
-
* @param itemsArray The items to push to main array
|
|
16395
|
-
*/
|
|
16396
|
-
function arrayPush(mainArray, itemsArray) {
|
|
16397
|
-
Array.prototype.push.apply(mainArray, itemsArray);
|
|
16398
|
-
}
|
|
16399
|
-
exports.default = arrayPush;
|
|
16400
|
-
|
|
16401
|
-
|
|
16402
16582
|
/***/ }),
|
|
16403
16583
|
|
|
16404
16584
|
/***/ "./packages/roosterjs-editor-dom/lib/utils/changeElementTag.ts":
|
|
@@ -16459,7 +16639,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
16459
16639
|
exports.collapse = void 0;
|
|
16460
16640
|
var contains_1 = __webpack_require__(/*! ./contains */ "./packages/roosterjs-editor-dom/lib/utils/contains.ts");
|
|
16461
16641
|
var splitParentNode_1 = __webpack_require__(/*! ./splitParentNode */ "./packages/roosterjs-editor-dom/lib/utils/splitParentNode.ts");
|
|
16462
|
-
var toArray_1 = __webpack_require__(/*!
|
|
16642
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
16463
16643
|
/**
|
|
16464
16644
|
* Collapse nodes within the given start and end nodes to their common ancestor node,
|
|
16465
16645
|
* split parent nodes if necessary
|
|
@@ -16589,6 +16769,7 @@ function internalContains(container, contained) {
|
|
|
16589
16769
|
var _a;
|
|
16590
16770
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16591
16771
|
exports.KnownCreateElementData = void 0;
|
|
16772
|
+
var getObjectKeys_1 = __webpack_require__(/*! ../jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
16592
16773
|
var safeInstanceOf_1 = __webpack_require__(/*! ./safeInstanceOf */ "./packages/roosterjs-editor-dom/lib/utils/safeInstanceOf.ts");
|
|
16593
16774
|
var Browser_1 = __webpack_require__(/*! ./Browser */ "./packages/roosterjs-editor-dom/lib/utils/Browser.ts");
|
|
16594
16775
|
/**
|
|
@@ -16666,12 +16847,12 @@ function createElement(elementData, document) {
|
|
|
16666
16847
|
result.className = className;
|
|
16667
16848
|
}
|
|
16668
16849
|
if (dataset && (0, safeInstanceOf_1.default)(result, 'HTMLElement')) {
|
|
16669
|
-
|
|
16850
|
+
(0, getObjectKeys_1.default)(dataset).forEach(function (datasetName) {
|
|
16670
16851
|
result.dataset[datasetName] = dataset[datasetName];
|
|
16671
16852
|
});
|
|
16672
16853
|
}
|
|
16673
16854
|
if (attributes) {
|
|
16674
|
-
|
|
16855
|
+
(0, getObjectKeys_1.default)(attributes).forEach(function (attrName) {
|
|
16675
16856
|
result.setAttribute(attrName, attributes[attrName]);
|
|
16676
16857
|
});
|
|
16677
16858
|
}
|
|
@@ -16745,7 +16926,7 @@ exports.default = findClosestElementAncestor;
|
|
|
16745
16926
|
"use strict";
|
|
16746
16927
|
|
|
16747
16928
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16748
|
-
var toArray_1 = __webpack_require__(/*!
|
|
16929
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
16749
16930
|
/**
|
|
16750
16931
|
* @deprecated
|
|
16751
16932
|
* Creates an HTML node array from html
|
|
@@ -17001,6 +17182,7 @@ exports.getPreviousLeafSibling = getPreviousLeafSibling;
|
|
|
17001
17182
|
|
|
17002
17183
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17003
17184
|
exports.PendableFormatCommandMap = void 0;
|
|
17185
|
+
var getObjectKeys_1 = __webpack_require__(/*! ../jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
17004
17186
|
/**
|
|
17005
17187
|
* A map from pendable format name to document command
|
|
17006
17188
|
*/
|
|
@@ -17036,7 +17218,7 @@ exports.PendableFormatCommandMap = {
|
|
|
17036
17218
|
* @returns A PendableFormatState object which contains the values of pendable format states
|
|
17037
17219
|
*/
|
|
17038
17220
|
function getPendableFormatState(document) {
|
|
17039
|
-
var keys =
|
|
17221
|
+
var keys = (0, getObjectKeys_1.default)(exports.PendableFormatCommandMap);
|
|
17040
17222
|
return keys.reduce(function (state, key) {
|
|
17041
17223
|
state[key] = document.queryCommandState(exports.PendableFormatCommandMap[key]);
|
|
17042
17224
|
return state;
|
|
@@ -17148,7 +17330,7 @@ var ZERO_WIDTH_SPACE = /\u200b/g;
|
|
|
17148
17330
|
* Default value is false
|
|
17149
17331
|
* @returns True if there isn't any visible element inside node, otherwise false
|
|
17150
17332
|
*/
|
|
17151
|
-
function isNodeEmpty(node, trimContent) {
|
|
17333
|
+
function isNodeEmpty(node, trimContent, shouldCountBrAsVisible) {
|
|
17152
17334
|
if (!node) {
|
|
17153
17335
|
return false;
|
|
17154
17336
|
}
|
|
@@ -17158,9 +17340,12 @@ function isNodeEmpty(node, trimContent) {
|
|
|
17158
17340
|
else if (node.nodeType == 1 /* Element */) {
|
|
17159
17341
|
var element = node;
|
|
17160
17342
|
var textContent = trim(element.textContent || '', trimContent);
|
|
17343
|
+
var visibleSelector = shouldCountBrAsVisible
|
|
17344
|
+
? VISIBLE_CHILD_ELEMENT_SELECTOR + ",BR"
|
|
17345
|
+
: VISIBLE_CHILD_ELEMENT_SELECTOR;
|
|
17161
17346
|
if (textContent != '' ||
|
|
17162
17347
|
VISIBLE_ELEMENT_TAGS.indexOf((0, getTagOfNode_1.default)(element)) >= 0 ||
|
|
17163
|
-
element.querySelectorAll(
|
|
17348
|
+
element.querySelectorAll(visibleSelector)[0]) {
|
|
17164
17349
|
return false;
|
|
17165
17350
|
}
|
|
17166
17351
|
}
|
|
@@ -17215,6 +17400,7 @@ exports.default = isVoidHtmlElement;
|
|
|
17215
17400
|
"use strict";
|
|
17216
17401
|
|
|
17217
17402
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17403
|
+
var getObjectKeys_1 = __webpack_require__(/*! ../jsUtils/getObjectKeys */ "./packages/roosterjs-editor-dom/lib/jsUtils/getObjectKeys.ts");
|
|
17218
17404
|
// http exclude matching regex
|
|
17219
17405
|
// invalid URL example (in particular on IE and Edge):
|
|
17220
17406
|
// - http://www.bing.com%00, %00 before ? (question mark) is considered invalid. IE/Edge throws invalid argument exception
|
|
@@ -17277,7 +17463,7 @@ var linkMatchRules = {
|
|
|
17277
17463
|
*/
|
|
17278
17464
|
function matchLink(url) {
|
|
17279
17465
|
if (url) {
|
|
17280
|
-
for (var _i = 0, _a =
|
|
17466
|
+
for (var _i = 0, _a = (0, getObjectKeys_1.default)(linkMatchRules); _i < _a.length; _i++) {
|
|
17281
17467
|
var schema = _a[_i];
|
|
17282
17468
|
var rule = linkMatchRules[schema];
|
|
17283
17469
|
var matches = url.match(rule.match);
|
|
@@ -17394,7 +17580,7 @@ exports.default = normalizeRect;
|
|
|
17394
17580
|
"use strict";
|
|
17395
17581
|
|
|
17396
17582
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17397
|
-
var toArray_1 = __webpack_require__(/*!
|
|
17583
|
+
var toArray_1 = __webpack_require__(/*! ../jsUtils/toArray */ "./packages/roosterjs-editor-dom/lib/jsUtils/toArray.ts");
|
|
17398
17584
|
/**
|
|
17399
17585
|
* Query HTML elements in the container by a selector string
|
|
17400
17586
|
* @param container Container element to query from
|
|
@@ -17505,10 +17691,9 @@ exports.getTargetWindow = void 0;
|
|
|
17505
17691
|
/**
|
|
17506
17692
|
* @internal Export for test only
|
|
17507
17693
|
* Try get window from the given node or range
|
|
17508
|
-
* @param
|
|
17694
|
+
* @param node Source node to get window from
|
|
17509
17695
|
*/
|
|
17510
|
-
function getTargetWindow(
|
|
17511
|
-
var node = source && (source.commonAncestorContainer || source);
|
|
17696
|
+
function getTargetWindow(node) {
|
|
17512
17697
|
var document = node &&
|
|
17513
17698
|
(node.ownerDocument ||
|
|
17514
17699
|
(Object.prototype.toString.apply(node) == '[object HTMLDocument]'
|
|
@@ -17525,6 +17710,11 @@ exports.getTargetWindow = getTargetWindow;
|
|
|
17525
17710
|
* @param typeName Target type name
|
|
17526
17711
|
*/
|
|
17527
17712
|
function safeInstanceOf(obj, typeName) {
|
|
17713
|
+
var _a;
|
|
17714
|
+
if (typeName == 'Range') {
|
|
17715
|
+
return (Object.prototype.toString.apply(obj) == '[object Range]' &&
|
|
17716
|
+
!!((_a = obj) === null || _a === void 0 ? void 0 : _a.commonAncestorContainer));
|
|
17717
|
+
}
|
|
17528
17718
|
var targetWindow = getTargetWindow(obj);
|
|
17529
17719
|
var targetType = targetWindow && targetWindow[typeName];
|
|
17530
17720
|
var mainWindow = window;
|
|
@@ -17854,24 +18044,6 @@ function splitTextNode(textNode, offset, returnFirstPart) {
|
|
|
17854
18044
|
exports.default = splitTextNode;
|
|
17855
18045
|
|
|
17856
18046
|
|
|
17857
|
-
/***/ }),
|
|
17858
|
-
|
|
17859
|
-
/***/ "./packages/roosterjs-editor-dom/lib/utils/toArray.ts":
|
|
17860
|
-
/*!************************************************************!*\
|
|
17861
|
-
!*** ./packages/roosterjs-editor-dom/lib/utils/toArray.ts ***!
|
|
17862
|
-
\************************************************************/
|
|
17863
|
-
/*! no static exports found */
|
|
17864
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
17865
|
-
|
|
17866
|
-
"use strict";
|
|
17867
|
-
|
|
17868
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17869
|
-
function toArray(collection) {
|
|
17870
|
-
return [].slice.call(collection);
|
|
17871
|
-
}
|
|
17872
|
-
exports.default = toArray;
|
|
17873
|
-
|
|
17874
|
-
|
|
17875
18047
|
/***/ }),
|
|
17876
18048
|
|
|
17877
18049
|
/***/ "./packages/roosterjs-editor-dom/lib/utils/unwrap.ts":
|
|
@@ -18550,6 +18722,7 @@ Object.defineProperty(exports, "AutoFormat", { enumerable: true, get: function (
|
|
|
18550
18722
|
|
|
18551
18723
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18552
18724
|
var getAllFeatures_1 = __webpack_require__(/*! ./getAllFeatures */ "./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/getAllFeatures.ts");
|
|
18725
|
+
var lib_1 = __webpack_require__(/*! roosterjs-editor-dom/lib */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
18553
18726
|
/**
|
|
18554
18727
|
* An editor plugin to handle content edit event.
|
|
18555
18728
|
* The following cases are included:
|
|
@@ -18586,7 +18759,7 @@ var ContentEdit = /** @class */ (function () {
|
|
|
18586
18759
|
var _this = this;
|
|
18587
18760
|
var features = [];
|
|
18588
18761
|
var allFeatures = (0, getAllFeatures_1.default)();
|
|
18589
|
-
|
|
18762
|
+
(0, lib_1.getObjectKeys)(allFeatures).forEach(function (key) {
|
|
18590
18763
|
var feature = allFeatures[key];
|
|
18591
18764
|
var hasSettingForKey = _this.settingsOverride && _this.settingsOverride[key] !== undefined;
|
|
18592
18765
|
if ((hasSettingForKey && _this.settingsOverride[key]) ||
|
|
@@ -18934,8 +19107,8 @@ exports.EntityFeatures = {
|
|
|
18934
19107
|
|
|
18935
19108
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18936
19109
|
exports.ListFeatures = void 0;
|
|
18937
|
-
var
|
|
18938
|
-
var
|
|
19110
|
+
var getAutoBulletListStyle_1 = __webpack_require__(/*! ../utils/getAutoBulletListStyle */ "./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/getAutoBulletListStyle.ts");
|
|
19111
|
+
var getAutoNumberingListStyle_1 = __webpack_require__(/*! ../utils/getAutoNumberingListStyle */ "./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/getAutoNumberingListStyle.ts");
|
|
18939
19112
|
var roosterjs_editor_api_1 = __webpack_require__(/*! roosterjs-editor-api */ "./packages/roosterjs-editor-api/lib/index.ts");
|
|
18940
19113
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
18941
19114
|
/**
|
|
@@ -19060,15 +19233,10 @@ var AutoBullet = {
|
|
|
19060
19233
|
if (!cacheGetListElement(event, editor)) {
|
|
19061
19234
|
var searcher = editor.getContentSearcherOfCursor(event);
|
|
19062
19235
|
var textBeforeCursor = searcher.getSubStringBefore(4);
|
|
19063
|
-
var listTrigger = function (text) {
|
|
19064
|
-
return editor.isFeatureEnabled("AutoFormatList" /* AutoFormatList */)
|
|
19065
|
-
? (0, getListType_1.default)(text)
|
|
19066
|
-
: isAListPattern(text);
|
|
19067
|
-
};
|
|
19068
19236
|
// Auto list is triggered if:
|
|
19069
19237
|
// 1. Text before cursor exactly matches '*', '-' or '1.'
|
|
19070
19238
|
// 2. There's no non-text inline entities before cursor
|
|
19071
|
-
return
|
|
19239
|
+
return isAListPattern(textBeforeCursor) && !searcher.getNearestNonTextInlineElement();
|
|
19072
19240
|
}
|
|
19073
19241
|
return false;
|
|
19074
19242
|
},
|
|
@@ -19081,36 +19249,92 @@ var AutoBullet = {
|
|
|
19081
19249
|
var searcher = editor.getContentSearcherOfCursor();
|
|
19082
19250
|
var textBeforeCursor = searcher.getSubStringBefore(4);
|
|
19083
19251
|
var textRange = searcher.getRangeFromText(textBeforeCursor, true /*exactMatch*/);
|
|
19084
|
-
var listType = 0 /* None */;
|
|
19085
|
-
var listStyle;
|
|
19086
|
-
if (editor.isFeatureEnabled("AutoFormatList" /* AutoFormatList */)) {
|
|
19087
|
-
listType = (0, getListType_1.default)(textBeforeCursor);
|
|
19088
|
-
listStyle = (0, getListStyle_1.default)(textBeforeCursor, listType);
|
|
19089
|
-
}
|
|
19090
|
-
else {
|
|
19091
|
-
listType =
|
|
19092
|
-
textBeforeCursor.indexOf('*') == 0 || textBeforeCursor.indexOf('-') == 0
|
|
19093
|
-
? 2 /* Unordered */
|
|
19094
|
-
: isAListPattern(textBeforeCursor)
|
|
19095
|
-
? 1 /* Ordered */
|
|
19096
|
-
: 0 /* None */;
|
|
19097
|
-
}
|
|
19098
19252
|
if (!textRange) {
|
|
19099
19253
|
// no op if the range can't be found
|
|
19100
19254
|
}
|
|
19101
|
-
else if (
|
|
19255
|
+
else if (textBeforeCursor.indexOf('*') == 0 ||
|
|
19256
|
+
textBeforeCursor.indexOf('-') == 0) {
|
|
19102
19257
|
prepareAutoBullet(editor, textRange);
|
|
19103
|
-
(0, roosterjs_editor_api_1.toggleBullet)(editor
|
|
19258
|
+
(0, roosterjs_editor_api_1.toggleBullet)(editor);
|
|
19104
19259
|
}
|
|
19105
|
-
else if (
|
|
19260
|
+
else if (isAListPattern(textBeforeCursor)) {
|
|
19106
19261
|
prepareAutoBullet(editor, textRange);
|
|
19107
|
-
(0, roosterjs_editor_api_1.toggleNumbering)(editor
|
|
19262
|
+
(0, roosterjs_editor_api_1.toggleNumbering)(editor);
|
|
19263
|
+
}
|
|
19264
|
+
else if ((regions = editor.getSelectedRegions()) && regions.length == 1) {
|
|
19265
|
+
var num = parseInt(textBeforeCursor);
|
|
19266
|
+
prepareAutoBullet(editor, textRange);
|
|
19267
|
+
(0, roosterjs_editor_api_1.toggleNumbering)(editor, num);
|
|
19268
|
+
}
|
|
19269
|
+
(_a = searcher.getRangeFromText(textBeforeCursor, true /*exactMatch*/)) === null || _a === void 0 ? void 0 : _a.deleteContents();
|
|
19270
|
+
}, null /*changeSource*/, true /*canUndoByBackspace*/);
|
|
19271
|
+
},
|
|
19272
|
+
};
|
|
19273
|
+
/**
|
|
19274
|
+
* Requires @see ExperimentalFeatures.AutoFormatList to be enabled
|
|
19275
|
+
* AutoBulletList edit feature, provides the ability to automatically convert current line into a bullet list.
|
|
19276
|
+
*/
|
|
19277
|
+
var AutoBulletList = {
|
|
19278
|
+
keys: [32 /* SPACE */],
|
|
19279
|
+
shouldHandleEvent: function (event, editor) {
|
|
19280
|
+
if (!cacheGetListElement(event, editor) &&
|
|
19281
|
+
editor.isFeatureEnabled("AutoFormatList" /* AutoFormatList */)) {
|
|
19282
|
+
return shouldTriggerList(event, editor, getAutoBulletListStyle_1.default);
|
|
19283
|
+
}
|
|
19284
|
+
return false;
|
|
19285
|
+
},
|
|
19286
|
+
handleEvent: function (event, editor) {
|
|
19287
|
+
editor.insertContent(' ');
|
|
19288
|
+
event.rawEvent.preventDefault();
|
|
19289
|
+
editor.addUndoSnapshot(function () {
|
|
19290
|
+
var _a;
|
|
19291
|
+
var searcher = editor.getContentSearcherOfCursor();
|
|
19292
|
+
var textBeforeCursor = searcher.getSubStringBefore(5);
|
|
19293
|
+
var textRange = searcher.getRangeFromText(textBeforeCursor, true /*exactMatch*/);
|
|
19294
|
+
var listStyle = (0, getAutoBulletListStyle_1.default)(textBeforeCursor);
|
|
19295
|
+
if (textRange) {
|
|
19296
|
+
prepareAutoBullet(editor, textRange);
|
|
19297
|
+
(0, roosterjs_editor_api_1.toggleBullet)(editor, listStyle);
|
|
19298
|
+
}
|
|
19299
|
+
(_a = searcher.getRangeFromText(textBeforeCursor, true /*exactMatch*/)) === null || _a === void 0 ? void 0 : _a.deleteContents();
|
|
19300
|
+
}, null /*changeSource*/, true /*canUndoByBackspace*/);
|
|
19301
|
+
},
|
|
19302
|
+
};
|
|
19303
|
+
/**
|
|
19304
|
+
* Requires @see ExperimentalFeatures.AutoFormatList to be enabled
|
|
19305
|
+
* AutoNumberingList edit feature, provides the ability to automatically convert current line into a numbering list.
|
|
19306
|
+
*/
|
|
19307
|
+
var AutoNumberingList = {
|
|
19308
|
+
keys: [32 /* SPACE */],
|
|
19309
|
+
shouldHandleEvent: function (event, editor) {
|
|
19310
|
+
if (!cacheGetListElement(event, editor) &&
|
|
19311
|
+
editor.isFeatureEnabled("AutoFormatList" /* AutoFormatList */)) {
|
|
19312
|
+
return shouldTriggerList(event, editor, getAutoNumberingListStyle_1.default);
|
|
19313
|
+
}
|
|
19314
|
+
return false;
|
|
19315
|
+
},
|
|
19316
|
+
handleEvent: function (event, editor) {
|
|
19317
|
+
editor.insertContent(' ');
|
|
19318
|
+
event.rawEvent.preventDefault();
|
|
19319
|
+
editor.addUndoSnapshot(function () {
|
|
19320
|
+
var _a;
|
|
19321
|
+
var regions;
|
|
19322
|
+
var searcher = editor.getContentSearcherOfCursor();
|
|
19323
|
+
var textBeforeCursor = searcher.getSubStringBefore(5);
|
|
19324
|
+
var textRange = searcher.getRangeFromText(textBeforeCursor, true /*exactMatch*/);
|
|
19325
|
+
var listStyle = (0, getAutoNumberingListStyle_1.default)(textBeforeCursor);
|
|
19326
|
+
if (!textRange) {
|
|
19327
|
+
// no op if the range can't be found
|
|
19108
19328
|
}
|
|
19109
19329
|
else if ((regions = editor.getSelectedRegions()) && regions.length == 1) {
|
|
19110
19330
|
var num = parseInt(textBeforeCursor);
|
|
19111
19331
|
prepareAutoBullet(editor, textRange);
|
|
19112
19332
|
(0, roosterjs_editor_api_1.toggleNumbering)(editor, num, listStyle);
|
|
19113
19333
|
}
|
|
19334
|
+
else {
|
|
19335
|
+
prepareAutoBullet(editor, textRange);
|
|
19336
|
+
(0, roosterjs_editor_api_1.toggleNumbering)(editor, undefined /* startNumber*/, listStyle);
|
|
19337
|
+
}
|
|
19114
19338
|
(_a = searcher.getRangeFromText(textBeforeCursor, true /*exactMatch*/)) === null || _a === void 0 ? void 0 : _a.deleteContents();
|
|
19115
19339
|
}, null /*changeSource*/, true /*canUndoByBackspace*/);
|
|
19116
19340
|
},
|
|
@@ -19177,6 +19401,12 @@ function cacheGetListElement(event, editor) {
|
|
|
19177
19401
|
var listElement = li && (0, roosterjs_editor_dom_1.getTagOfNode)(li) == 'LI' && editor.getElementAtCursor('UL,OL', li);
|
|
19178
19402
|
return listElement ? [listElement, li] : null;
|
|
19179
19403
|
}
|
|
19404
|
+
function shouldTriggerList(event, editor, getListStyle) {
|
|
19405
|
+
var searcher = editor.getContentSearcherOfCursor(event);
|
|
19406
|
+
var textBeforeCursor = searcher.getSubStringBefore(4);
|
|
19407
|
+
var itHasSpace = /\s/g.test(textBeforeCursor);
|
|
19408
|
+
return (!itHasSpace && !searcher.getNearestNonTextInlineElement() && getListStyle(textBeforeCursor));
|
|
19409
|
+
}
|
|
19180
19410
|
/**
|
|
19181
19411
|
* @internal
|
|
19182
19412
|
*/
|
|
@@ -19189,6 +19419,8 @@ exports.ListFeatures = {
|
|
|
19189
19419
|
mergeInNewLineWhenBackspaceOnFirstChar: MergeInNewLine,
|
|
19190
19420
|
maintainListChain: MaintainListChain,
|
|
19191
19421
|
maintainListChainWhenDelete: MaintainListChainWhenDelete,
|
|
19422
|
+
autoNumberingList: AutoNumberingList,
|
|
19423
|
+
autoBulletList: AutoBulletList,
|
|
19192
19424
|
};
|
|
19193
19425
|
|
|
19194
19426
|
|
|
@@ -19529,7 +19761,7 @@ var CHILD_PARENT_TAG_MAP = {
|
|
|
19529
19761
|
TH: 'TABLE',
|
|
19530
19762
|
LI: 'OL,UL',
|
|
19531
19763
|
};
|
|
19532
|
-
var CHILD_SELECTOR =
|
|
19764
|
+
var CHILD_SELECTOR = (0, roosterjs_editor_dom_1.getObjectKeys)(CHILD_PARENT_TAG_MAP).join(',');
|
|
19533
19765
|
/**
|
|
19534
19766
|
* InsertLineBeforeStructuredNode edit feature, provides the ability to insert an empty line before
|
|
19535
19767
|
* a structured element (bullet/numbering list, blockquote, table) if the element is at beginning of
|
|
@@ -19963,10 +20195,48 @@ Object.defineProperty(exports, "getAllFeatures", { enumerable: true, get: functi
|
|
|
19963
20195
|
|
|
19964
20196
|
/***/ }),
|
|
19965
20197
|
|
|
19966
|
-
/***/ "./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/
|
|
19967
|
-
|
|
19968
|
-
!*** ./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/
|
|
19969
|
-
|
|
20198
|
+
/***/ "./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/getAutoBulletListStyle.ts":
|
|
20199
|
+
/*!***************************************************************************************************!*\
|
|
20200
|
+
!*** ./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/getAutoBulletListStyle.ts ***!
|
|
20201
|
+
\***************************************************************************************************/
|
|
20202
|
+
/*! no static exports found */
|
|
20203
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
20204
|
+
|
|
20205
|
+
"use strict";
|
|
20206
|
+
|
|
20207
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20208
|
+
var bulletListType = {
|
|
20209
|
+
'*': 1 /* Disc */,
|
|
20210
|
+
'-': 2 /* Dash */,
|
|
20211
|
+
'--': 3 /* Square */,
|
|
20212
|
+
'->': 5 /* LongArrow */,
|
|
20213
|
+
'-->': 5 /* LongArrow */,
|
|
20214
|
+
'=>': 6 /* UnfilledArrow */,
|
|
20215
|
+
'>': 4 /* ShortArrow */,
|
|
20216
|
+
'—': 7 /* Hyphen */,
|
|
20217
|
+
};
|
|
20218
|
+
var identifyBulletListType = function (bullet) {
|
|
20219
|
+
return bulletListType[bullet] || null;
|
|
20220
|
+
};
|
|
20221
|
+
/**
|
|
20222
|
+
* @internal
|
|
20223
|
+
* @param textBeforeCursor The trigger character
|
|
20224
|
+
* @returns The style of a bullet list triggered by a string
|
|
20225
|
+
*/
|
|
20226
|
+
function getAutoBulletListStyle(textBeforeCursor) {
|
|
20227
|
+
var trigger = textBeforeCursor.trim();
|
|
20228
|
+
var bulletType = identifyBulletListType(trigger);
|
|
20229
|
+
return bulletType;
|
|
20230
|
+
}
|
|
20231
|
+
exports.default = getAutoBulletListStyle;
|
|
20232
|
+
|
|
20233
|
+
|
|
20234
|
+
/***/ }),
|
|
20235
|
+
|
|
20236
|
+
/***/ "./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/getAutoNumberingListStyle.ts":
|
|
20237
|
+
/*!******************************************************************************************************!*\
|
|
20238
|
+
!*** ./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/getAutoNumberingListStyle.ts ***!
|
|
20239
|
+
\******************************************************************************************************/
|
|
19970
20240
|
/*! no static exports found */
|
|
19971
20241
|
/***/ (function(module, exports, __webpack_require__) {
|
|
19972
20242
|
|
|
@@ -19975,145 +20245,100 @@ Object.defineProperty(exports, "getAllFeatures", { enumerable: true, get: functi
|
|
|
19975
20245
|
var _a, _b, _c, _d, _e, _f;
|
|
19976
20246
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19977
20247
|
var characters = {
|
|
19978
|
-
'.':
|
|
19979
|
-
'-':
|
|
19980
|
-
')':
|
|
19981
|
-
'(':
|
|
20248
|
+
'.': 1 /* Dot */,
|
|
20249
|
+
'-': 2 /* Dash */,
|
|
20250
|
+
')': 3 /* Parenthesis */,
|
|
20251
|
+
'(': 4 /* DoubleParenthesis */,
|
|
19982
20252
|
};
|
|
19983
|
-
var identifyCharacter = function (text) {
|
|
19984
|
-
var
|
|
19985
|
-
return
|
|
20253
|
+
var identifyCharacter = function (text, secondSeparator) {
|
|
20254
|
+
var charType = characters[text];
|
|
20255
|
+
return charType === 4 /* DoubleParenthesis */ && secondSeparator !== ')'
|
|
20256
|
+
? undefined
|
|
20257
|
+
: charType;
|
|
19986
20258
|
};
|
|
19987
20259
|
var identifyNumberingType = function (text) {
|
|
19988
|
-
|
|
19989
|
-
|
|
19990
|
-
return 0 /* Decimal */;
|
|
20260
|
+
if (!isNaN(parseInt(text))) {
|
|
20261
|
+
return 1 /* Decimal */;
|
|
19991
20262
|
}
|
|
19992
|
-
else if (/[a-z]+/g.test(
|
|
19993
|
-
if (
|
|
19994
|
-
return
|
|
20263
|
+
else if (/[a-z]+/g.test(text)) {
|
|
20264
|
+
if (text === 'i') {
|
|
20265
|
+
return 4 /* LowerRoman */;
|
|
19995
20266
|
}
|
|
19996
20267
|
else {
|
|
19997
|
-
return
|
|
20268
|
+
return 2 /* LowerAlpha */;
|
|
19998
20269
|
}
|
|
19999
20270
|
}
|
|
20000
|
-
else if (/[A-Z]+/g.test(
|
|
20001
|
-
if (
|
|
20002
|
-
return
|
|
20271
|
+
else if (/[A-Z]+/g.test(text)) {
|
|
20272
|
+
if (text === 'I') {
|
|
20273
|
+
return 5 /* UpperRoman */;
|
|
20003
20274
|
}
|
|
20004
20275
|
else {
|
|
20005
|
-
return
|
|
20276
|
+
return 3 /* UpperAlpha */;
|
|
20006
20277
|
}
|
|
20007
20278
|
}
|
|
20008
20279
|
};
|
|
20009
20280
|
var numberingListTypes = (_a = {},
|
|
20010
|
-
_a[
|
|
20011
|
-
_a[
|
|
20012
|
-
_a[
|
|
20013
|
-
_a[
|
|
20014
|
-
_a[
|
|
20281
|
+
_a[1 /* Decimal */] = function (char) { return DecimalsTypes[char] || null; },
|
|
20282
|
+
_a[2 /* LowerAlpha */] = function (char) { return LowerAlphaTypes[char] || null; },
|
|
20283
|
+
_a[3 /* UpperAlpha */] = function (char) { return UpperAlphaTypes[char] || null; },
|
|
20284
|
+
_a[4 /* LowerRoman */] = function (char) { return LowerRomanTypes[char] || null; },
|
|
20285
|
+
_a[5 /* UpperRoman */] = function (char) { return UpperRomanTypes[char] || null; },
|
|
20015
20286
|
_a);
|
|
20016
20287
|
var UpperRomanTypes = (_b = {},
|
|
20017
|
-
_b[
|
|
20018
|
-
_b[
|
|
20019
|
-
_b[
|
|
20020
|
-
_b[
|
|
20288
|
+
_b[1 /* Dot */] = 17 /* UpperRoman */,
|
|
20289
|
+
_b[2 /* Dash */] = 20 /* UpperRomanDash */,
|
|
20290
|
+
_b[3 /* Parenthesis */] = 18 /* UpperRomanParenthesis */,
|
|
20291
|
+
_b[4 /* DoubleParenthesis */] = 19 /* UpperRomanDoubleParenthesis */,
|
|
20021
20292
|
_b);
|
|
20022
20293
|
var LowerRomanTypes = (_c = {},
|
|
20023
|
-
_c[
|
|
20024
|
-
_c[
|
|
20025
|
-
_c[
|
|
20026
|
-
_c[
|
|
20294
|
+
_c[1 /* Dot */] = 13 /* LowerRoman */,
|
|
20295
|
+
_c[2 /* Dash */] = 16 /* LowerRomanDash */,
|
|
20296
|
+
_c[3 /* Parenthesis */] = 14 /* LowerRomanParenthesis */,
|
|
20297
|
+
_c[4 /* DoubleParenthesis */] = 15 /* LowerRomanDoubleParenthesis */,
|
|
20027
20298
|
_c);
|
|
20028
20299
|
var UpperAlphaTypes = (_d = {},
|
|
20029
|
-
_d[
|
|
20030
|
-
_d[
|
|
20031
|
-
_d[
|
|
20032
|
-
_d[
|
|
20300
|
+
_d[1 /* Dot */] = 9 /* UpperAlpha */,
|
|
20301
|
+
_d[2 /* Dash */] = 12 /* UpperAlphaDash */,
|
|
20302
|
+
_d[3 /* Parenthesis */] = 10 /* UpperAlphaParenthesis */,
|
|
20303
|
+
_d[4 /* DoubleParenthesis */] = 11 /* UpperAlphaDoubleParenthesis */,
|
|
20033
20304
|
_d);
|
|
20034
20305
|
var LowerAlphaTypes = (_e = {},
|
|
20035
|
-
_e[
|
|
20036
|
-
_e[
|
|
20037
|
-
_e[
|
|
20038
|
-
_e[
|
|
20306
|
+
_e[1 /* Dot */] = 5 /* LowerAlpha */,
|
|
20307
|
+
_e[2 /* Dash */] = 8 /* LowerAlphaDash */,
|
|
20308
|
+
_e[3 /* Parenthesis */] = 6 /* LowerAlphaParenthesis */,
|
|
20309
|
+
_e[4 /* DoubleParenthesis */] = 7 /* LowerAlphaDoubleParenthesis */,
|
|
20039
20310
|
_e);
|
|
20040
20311
|
var DecimalsTypes = (_f = {},
|
|
20041
|
-
_f[
|
|
20042
|
-
_f[
|
|
20043
|
-
_f[
|
|
20044
|
-
_f[
|
|
20312
|
+
_f[1 /* Dot */] = 1 /* Decimal */,
|
|
20313
|
+
_f[2 /* Dash */] = 2 /* DecimalDash */,
|
|
20314
|
+
_f[3 /* Parenthesis */] = 3 /* DecimalParenthesis */,
|
|
20315
|
+
_f[4 /* DoubleParenthesis */] = 4 /* DecimalDoubleParenthesis */,
|
|
20045
20316
|
_f);
|
|
20046
|
-
var
|
|
20047
|
-
|
|
20048
|
-
|
|
20049
|
-
|
|
20050
|
-
|
|
20051
|
-
|
|
20052
|
-
|
|
20053
|
-
|
|
20054
|
-
|
|
20055
|
-
|
|
20056
|
-
var numbering = textBeforeCursor.replace(/\s/g, '');
|
|
20057
|
-
var char = identifyCharacter(numbering);
|
|
20058
|
-
var numberingType = identifyNumberingType(numbering);
|
|
20059
|
-
return numberingListTypes[numberingType](char);
|
|
20060
|
-
};
|
|
20061
|
-
var identifyBulletListType = function (textBeforeCursor) {
|
|
20062
|
-
var bullet = textBeforeCursor.replace(/\s/g, '');
|
|
20063
|
-
return bulletListType[bullet];
|
|
20064
|
-
};
|
|
20065
|
-
/**
|
|
20066
|
-
* @internal
|
|
20067
|
-
* @param textBeforeCursor The trigger character
|
|
20068
|
-
* @param listType The type of the list (ordered or unordered)
|
|
20069
|
-
* @returns the style of the list
|
|
20070
|
-
*/
|
|
20071
|
-
function getListStyle(textBeforeCursor, listType) {
|
|
20072
|
-
if (listType === 1 /* Ordered */) {
|
|
20073
|
-
return identifyNumberingListType(textBeforeCursor);
|
|
20317
|
+
var identifyNumberingListType = function (numbering) {
|
|
20318
|
+
// If the marker length is 3, the marker style is double parenthis such as (1), (A). Then the number is second character of the string and the separator is first character and last character.
|
|
20319
|
+
var separator = numbering.length === 3 ? numbering[0] : numbering[1];
|
|
20320
|
+
var secondSeparator = numbering.length === 3 ? numbering[2] : undefined;
|
|
20321
|
+
var char = identifyCharacter(separator, secondSeparator);
|
|
20322
|
+
// if separator is not valid, no need to check if the number is valid.
|
|
20323
|
+
if (char) {
|
|
20324
|
+
var number = numbering.length === 3 ? numbering[1] : numbering[0];
|
|
20325
|
+
var numberingType = identifyNumberingType(number);
|
|
20326
|
+
return numberingType ? numberingListTypes[numberingType](char) : null;
|
|
20074
20327
|
}
|
|
20075
|
-
|
|
20076
|
-
|
|
20077
|
-
}
|
|
20078
|
-
}
|
|
20079
|
-
exports.default = getListStyle;
|
|
20080
|
-
|
|
20081
|
-
|
|
20082
|
-
/***/ }),
|
|
20083
|
-
|
|
20084
|
-
/***/ "./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/getListType.ts":
|
|
20085
|
-
/*!****************************************************************************************!*\
|
|
20086
|
-
!*** ./packages/roosterjs-editor-plugins/lib/plugins/ContentEdit/utils/getListType.ts ***!
|
|
20087
|
-
\****************************************************************************************/
|
|
20088
|
-
/*! no static exports found */
|
|
20089
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
20090
|
-
|
|
20091
|
-
"use strict";
|
|
20092
|
-
|
|
20093
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20094
|
-
function isABulletList(textBeforeCursor) {
|
|
20095
|
-
var hasTriggers = ['*', '-', '>'].indexOf(textBeforeCursor[0]) > -1;
|
|
20096
|
-
var REGEX = /^(.*?)=>|^(.*?)->|^(.*?)-->|^(.*?)=>|^(.*?)--/;
|
|
20097
|
-
return hasTriggers || REGEX.test(textBeforeCursor);
|
|
20098
|
-
}
|
|
20099
|
-
function isANumberingList(textBeforeCursor) {
|
|
20100
|
-
var REGEX = /^([1-9,a-z, i,A-Z,I]{1,2}\.|[1-9,a-z, i,A-Z,I]{1,2}\)|[1-9,a-z, i,A-Z,I]{1,2}\-|\([1-9,a-z, i,A-Z,I]{1,2}\))$/;
|
|
20101
|
-
return REGEX.test(textBeforeCursor.replace(/\s/g, ''));
|
|
20102
|
-
}
|
|
20328
|
+
return null;
|
|
20329
|
+
};
|
|
20103
20330
|
/**
|
|
20104
20331
|
* @internal
|
|
20105
20332
|
* @param textBeforeCursor The trigger character
|
|
20106
|
-
* @returns
|
|
20333
|
+
* @returns The style of a numbering list triggered by a string
|
|
20107
20334
|
*/
|
|
20108
|
-
function
|
|
20109
|
-
|
|
20110
|
-
|
|
20111
|
-
|
|
20112
|
-
|
|
20113
|
-
return 1 /* Ordered */;
|
|
20114
|
-
}
|
|
20335
|
+
function getAutoNumberingListStyle(textBeforeCursor) {
|
|
20336
|
+
var trigger = textBeforeCursor.trim();
|
|
20337
|
+
// the marker must be a combination of 2 or 3 characters, so if the length is less than 2, no need to check
|
|
20338
|
+
var numberingType = trigger.length > 1 ? identifyNumberingListType(trigger) : null;
|
|
20339
|
+
return numberingType;
|
|
20115
20340
|
}
|
|
20116
|
-
exports.default =
|
|
20341
|
+
exports.default = getAutoNumberingListStyle;
|
|
20117
20342
|
|
|
20118
20343
|
|
|
20119
20344
|
/***/ }),
|
|
@@ -20905,7 +21130,7 @@ var ImageEdit = /** @class */ (function () {
|
|
|
20905
21130
|
this.editor = editor;
|
|
20906
21131
|
this.disposer = editor.addDomEventHandler('blur', this.onBlur);
|
|
20907
21132
|
// Read current enabled features from editor to determine which editing operations are allowed
|
|
20908
|
-
|
|
21133
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(FeatureToOperationMap).forEach(function (key) {
|
|
20909
21134
|
_this.allowedOperations |= _this.editor.isFeatureEnabled(key)
|
|
20910
21135
|
? FeatureToOperationMap[key]
|
|
20911
21136
|
: 0;
|
|
@@ -20990,14 +21215,13 @@ var ImageEdit = /** @class */ (function () {
|
|
|
20990
21215
|
// When there is image in editing, clean up any cached objects and elements
|
|
20991
21216
|
this.clearDndHelpers();
|
|
20992
21217
|
// Apply the changes, and add undo snapshot if necessary
|
|
20993
|
-
|
|
20994
|
-
this.editor.addUndoSnapshot(function () { return _this.image; }, "ImageResize" /* ImageResize */);
|
|
20995
|
-
}
|
|
21218
|
+
(0, applyChange_1.default)(this.editor, this.image, this.editInfo, this.lastSrc, this.wasResized);
|
|
20996
21219
|
// Remove editing wrapper
|
|
20997
21220
|
var wrapper = this.getImageWrapper(this.image);
|
|
20998
21221
|
if (wrapper) {
|
|
20999
21222
|
this.removeWrapper(wrapper);
|
|
21000
21223
|
}
|
|
21224
|
+
this.editor.addUndoSnapshot(function () { return _this.image; }, "ImageResize" /* ImageResize */);
|
|
21001
21225
|
if (selectImage) {
|
|
21002
21226
|
this.editor.select(this.image);
|
|
21003
21227
|
}
|
|
@@ -21045,7 +21269,7 @@ var ImageEdit = /** @class */ (function () {
|
|
|
21045
21269
|
var isExperimentalHandlesEnabled = this.editor.isFeatureEnabled("AdaptiveHandlesResizer" /* AdaptiveHandlesResizer */);
|
|
21046
21270
|
// Get HTML for all edit elements (resize handle, rotate handle, crop handle and overlay, ...) and create HTML element
|
|
21047
21271
|
var options = {
|
|
21048
|
-
borderColor: this.options.borderColor,
|
|
21272
|
+
borderColor: getColorString(this.options.borderColor, this.editor.isDarkMode()),
|
|
21049
21273
|
rotateIconHTML: this.options.rotateIconHTML,
|
|
21050
21274
|
rotateHandleBackColor: this.editor.isDarkMode()
|
|
21051
21275
|
? DARK_MODE_BGCOLOR
|
|
@@ -21054,7 +21278,7 @@ var ImageEdit = /** @class */ (function () {
|
|
|
21054
21278
|
handlesExperimentalFeatures: isExperimentalHandlesEnabled,
|
|
21055
21279
|
};
|
|
21056
21280
|
var htmlData = [(0, Resizer_1.getResizeBordersHTML)(options)];
|
|
21057
|
-
|
|
21281
|
+
(0, roosterjs_editor_dom_1.getObjectKeys)(ImageEditHTMLMap).forEach(function (thisOperation) {
|
|
21058
21282
|
if ((operation & thisOperation) == thisOperation) {
|
|
21059
21283
|
(0, roosterjs_editor_dom_1.arrayPush)(htmlData, ImageEditHTMLMap[thisOperation](options, _this.onShowResizeHandle));
|
|
21060
21284
|
}
|
|
@@ -21175,6 +21399,12 @@ function isASmallImage(editInfo, isFeatureEnabled) {
|
|
|
21175
21399
|
var widthPx = editInfo.widthPx, heightPx = editInfo.heightPx;
|
|
21176
21400
|
return widthPx && heightPx && widthPx * widthPx < MAX_SMALL_SIZE_IMAGE && isFeatureEnabled;
|
|
21177
21401
|
}
|
|
21402
|
+
function getColorString(color, isDarkMode) {
|
|
21403
|
+
if (typeof color === 'string') {
|
|
21404
|
+
return color.trim();
|
|
21405
|
+
}
|
|
21406
|
+
return isDarkMode ? color.darkModeColor.trim() : color.lightModeColor.trim();
|
|
21407
|
+
}
|
|
21178
21408
|
|
|
21179
21409
|
|
|
21180
21410
|
/***/ }),
|
|
@@ -21354,7 +21584,6 @@ var editInfo_1 = __webpack_require__(/*! ./editInfo */ "./packages/roosterjs-edi
|
|
|
21354
21584
|
* @param image The image to apply the change
|
|
21355
21585
|
* @param editInfo Edit info that contains the changed information of the image
|
|
21356
21586
|
* @param previousSrc Last src value of the image before the change was made
|
|
21357
|
-
* @returns True if the image is changed, otherwise false
|
|
21358
21587
|
*/
|
|
21359
21588
|
function applyChange(editor, image, editInfo, previousSrc, wasResized) {
|
|
21360
21589
|
var newSrc = '';
|
|
@@ -21401,9 +21630,6 @@ function applyChange(editor, image, editInfo, previousSrc, wasResized) {
|
|
|
21401
21630
|
var _a = (0, getGeneratedImageSize_1.default)(editInfo), targetWidth = _a.targetWidth, targetHeight = _a.targetHeight;
|
|
21402
21631
|
image.src = newSrc;
|
|
21403
21632
|
setImageSize(image, wasResized, targetWidth, targetHeight);
|
|
21404
|
-
return (srcChanged ||
|
|
21405
|
-
editInfo.widthPx != initEditInfo.widthPx ||
|
|
21406
|
-
editInfo.heightPx != initEditInfo.heightPx);
|
|
21407
21633
|
}
|
|
21408
21634
|
exports.default = applyChange;
|
|
21409
21635
|
/**
|
|
@@ -23201,7 +23427,9 @@ function getAndSetNodeId(wordCustomData, element) {
|
|
|
23201
23427
|
|
|
23202
23428
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23203
23429
|
var roosterjs_editor_dom_1 = __webpack_require__(/*! roosterjs-editor-dom */ "./packages/roosterjs-editor-dom/lib/index.ts");
|
|
23430
|
+
var MSO_COMMENT_PARENT = 'mso-comment-parent';
|
|
23204
23431
|
var MSO_COMMENT_REFERENCE = 'mso-comment-reference';
|
|
23432
|
+
var MSO_COMMENT_DATE = 'mso-comment-date';
|
|
23205
23433
|
var MSO_COMMENT_ANCHOR_HREF_REGEX = /#_msocom_/;
|
|
23206
23434
|
var MSO_SPECIAL_CHARACTER = 'mso-special-character';
|
|
23207
23435
|
var MSO_SPECIAL_CHARACTER_COMMENT = 'comment';
|
|
@@ -23212,7 +23440,7 @@ var MSO_ELEMENT_COMMENT_LIST = 'comment-list';
|
|
|
23212
23440
|
* @internal
|
|
23213
23441
|
* Removes comments when pasting Word content.
|
|
23214
23442
|
*/
|
|
23215
|
-
function commentsRemoval(elementCallbacks) {
|
|
23443
|
+
function commentsRemoval(elementCallbacks, styleCallbacks) {
|
|
23216
23444
|
// 1st Step, Remove SPAN elements added after each comment.
|
|
23217
23445
|
// Word adds multiple elements for comments as SPAN elements.
|
|
23218
23446
|
// In this step we remove these elements:
|
|
@@ -23244,11 +23472,7 @@ function commentsRemoval(elementCallbacks) {
|
|
|
23244
23472
|
// In this step we remove this Anchor elements.
|
|
23245
23473
|
(0, roosterjs_editor_dom_1.chainSanitizerCallback)(elementCallbacks, 'A', function (element) {
|
|
23246
23474
|
var _a;
|
|
23247
|
-
|
|
23248
|
-
if (!!styles[MSO_COMMENT_REFERENCE]) {
|
|
23249
|
-
(0, roosterjs_editor_dom_1.changeElementTag)(element, 'span');
|
|
23250
|
-
}
|
|
23251
|
-
else if ((0, roosterjs_editor_dom_1.safeInstanceOf)(element, 'HTMLAnchorElement') &&
|
|
23475
|
+
if ((0, roosterjs_editor_dom_1.safeInstanceOf)(element, 'HTMLAnchorElement') &&
|
|
23252
23476
|
MSO_COMMENT_ANCHOR_HREF_REGEX.test(element.href)) {
|
|
23253
23477
|
(_a = element.parentElement) === null || _a === void 0 ? void 0 : _a.removeChild(element);
|
|
23254
23478
|
}
|
|
@@ -23273,6 +23497,13 @@ function commentsRemoval(elementCallbacks) {
|
|
|
23273
23497
|
}
|
|
23274
23498
|
return true;
|
|
23275
23499
|
});
|
|
23500
|
+
/**
|
|
23501
|
+
* Remove styles related to Office Comments that can cause unwanted behaviors
|
|
23502
|
+
* depending on the user client
|
|
23503
|
+
*/
|
|
23504
|
+
(0, roosterjs_editor_dom_1.chainSanitizerCallback)(styleCallbacks, MSO_COMMENT_REFERENCE, function () { return false; });
|
|
23505
|
+
(0, roosterjs_editor_dom_1.chainSanitizerCallback)(styleCallbacks, MSO_COMMENT_DATE, function () { return false; });
|
|
23506
|
+
(0, roosterjs_editor_dom_1.chainSanitizerCallback)(styleCallbacks, MSO_COMMENT_PARENT, function () { return false; });
|
|
23276
23507
|
}
|
|
23277
23508
|
exports.default = commentsRemoval;
|
|
23278
23509
|
|
|
@@ -23339,7 +23570,7 @@ function convertPastedContentFromWord(event) {
|
|
|
23339
23570
|
}
|
|
23340
23571
|
return true;
|
|
23341
23572
|
});
|
|
23342
|
-
(0, commentsRemoval_1.default)(sanitizingOption.elementCallbacks);
|
|
23573
|
+
(0, commentsRemoval_1.default)(sanitizingOption.elementCallbacks, sanitizingOption.cssStyleCallbacks);
|
|
23343
23574
|
}
|
|
23344
23575
|
exports.default = convertPastedContentFromWord;
|
|
23345
23576
|
|
|
@@ -23890,8 +24121,6 @@ var UNIDENTIFIED_CODE = [0, 229];
|
|
|
23890
24121
|
* - Apply selected item in picker
|
|
23891
24122
|
*
|
|
23892
24123
|
* PickerPlugin doesn't provide any UI, it just wraps related DOM events and invoke callback functions.
|
|
23893
|
-
* To show a picker UI, you need to build your own UI component. Please reference to
|
|
23894
|
-
* https://github.com/microsoft/roosterjs/tree/master/demo/scripts/controls/samplepicker
|
|
23895
24124
|
*/
|
|
23896
24125
|
var PickerPlugin = /** @class */ (function () {
|
|
23897
24126
|
function PickerPlugin(dataProvider, pickerOptions) {
|
|
@@ -25191,7 +25420,7 @@ var TableResize = /** @class */ (function () {
|
|
|
25191
25420
|
break;
|
|
25192
25421
|
}
|
|
25193
25422
|
}
|
|
25194
|
-
_this.setTableEditor(currentTable);
|
|
25423
|
+
_this.setTableEditor(currentTable, e);
|
|
25195
25424
|
(_a = _this.tableEditor) === null || _a === void 0 ? void 0 : _a.onMouseMove(x, y);
|
|
25196
25425
|
};
|
|
25197
25426
|
this.invalidateTableRects = function () {
|
|
@@ -25236,13 +25465,13 @@ var TableResize = /** @class */ (function () {
|
|
|
25236
25465
|
break;
|
|
25237
25466
|
}
|
|
25238
25467
|
};
|
|
25239
|
-
TableResize.prototype.setTableEditor = function (table) {
|
|
25468
|
+
TableResize.prototype.setTableEditor = function (table, e) {
|
|
25240
25469
|
if (this.tableEditor && table != this.tableEditor.table) {
|
|
25241
25470
|
this.tableEditor.dispose();
|
|
25242
25471
|
this.tableEditor = null;
|
|
25243
25472
|
}
|
|
25244
25473
|
if (!this.tableEditor && table) {
|
|
25245
|
-
this.tableEditor = new TableEditor_1.default(this.editor, table, this.invalidateTableRects, this.onShowHelperElement);
|
|
25474
|
+
this.tableEditor = new TableEditor_1.default(this.editor, table, this.invalidateTableRects, this.onShowHelperElement, e.currentTarget);
|
|
25246
25475
|
}
|
|
25247
25476
|
};
|
|
25248
25477
|
TableResize.prototype.ensureTableRects = function () {
|
|
@@ -25486,7 +25715,7 @@ var INSERTER_HOVER_OFFSET = 5;
|
|
|
25486
25715
|
* When set a different current table or change current TD, we need to update these areas
|
|
25487
25716
|
*/
|
|
25488
25717
|
var TableEditor = /** @class */ (function () {
|
|
25489
|
-
function TableEditor(editor, table, onChanged, onShowHelperElement) {
|
|
25718
|
+
function TableEditor(editor, table, onChanged, onShowHelperElement, eventTarget) {
|
|
25490
25719
|
var _this = this;
|
|
25491
25720
|
this.editor = editor;
|
|
25492
25721
|
this.table = table;
|
|
@@ -25515,29 +25744,31 @@ var TableEditor = /** @class */ (function () {
|
|
|
25515
25744
|
_this.editor.focus();
|
|
25516
25745
|
if (table) {
|
|
25517
25746
|
var vTable = new roosterjs_editor_dom_1.VTable(table);
|
|
25518
|
-
|
|
25519
|
-
|
|
25520
|
-
|
|
25521
|
-
|
|
25522
|
-
|
|
25523
|
-
|
|
25524
|
-
|
|
25525
|
-
|
|
25526
|
-
|
|
25527
|
-
|
|
25528
|
-
|
|
25529
|
-
|
|
25530
|
-
|
|
25531
|
-
|
|
25532
|
-
|
|
25533
|
-
|
|
25534
|
-
|
|
25535
|
-
|
|
25747
|
+
if (vTable.cells) {
|
|
25748
|
+
var rows = vTable.cells.length - 1;
|
|
25749
|
+
var lastCellIndex_1 = 0;
|
|
25750
|
+
vTable.cells[rows].forEach(function (cell, index) {
|
|
25751
|
+
if (cell.td) {
|
|
25752
|
+
lastCellIndex_1 = index;
|
|
25753
|
+
}
|
|
25754
|
+
});
|
|
25755
|
+
var selection = {
|
|
25756
|
+
firstCell: {
|
|
25757
|
+
x: 0,
|
|
25758
|
+
y: 0,
|
|
25759
|
+
},
|
|
25760
|
+
lastCell: {
|
|
25761
|
+
y: rows,
|
|
25762
|
+
x: lastCellIndex_1,
|
|
25763
|
+
},
|
|
25764
|
+
};
|
|
25765
|
+
_this.editor.select(table, selection);
|
|
25766
|
+
}
|
|
25536
25767
|
}
|
|
25537
25768
|
};
|
|
25538
25769
|
this.isRTL = (0, roosterjs_editor_dom_1.getComputedStyle)(table, 'direction') == 'rtl';
|
|
25539
25770
|
this.tableResizer = (0, TableResizer_1.default)(table, editor.getZoomScale(), this.isRTL, this.onStartTableResize, this.onFinishEditing, this.onShowHelperElement);
|
|
25540
|
-
this.tableSelector = (0, TableSelector_1.default)(table, editor.getZoomScale(), this.onSelect, this.onShowHelperElement);
|
|
25771
|
+
this.tableSelector = (0, TableSelector_1.default)(table, editor.getZoomScale(), this.onSelect, this.onShowHelperElement, this.getShouldShowTableSelectorHandler(this.editor.getScrollContainer(), eventTarget));
|
|
25541
25772
|
}
|
|
25542
25773
|
TableEditor.prototype.dispose = function () {
|
|
25543
25774
|
this.disposeTableResizer();
|
|
@@ -25649,6 +25880,21 @@ var TableEditor = /** @class */ (function () {
|
|
|
25649
25880
|
}
|
|
25650
25881
|
this.editor.addUndoSnapshot();
|
|
25651
25882
|
};
|
|
25883
|
+
TableEditor.prototype.getShouldShowTableSelectorHandler = function (scrollContainer, eventTarget) {
|
|
25884
|
+
if (eventTarget && (0, roosterjs_editor_dom_1.safeInstanceOf)(eventTarget, 'HTMLElement') && scrollContainer) {
|
|
25885
|
+
var scrollContainerRect_1 = (0, roosterjs_editor_dom_1.normalizeRect)(scrollContainer.getBoundingClientRect());
|
|
25886
|
+
var containerRect_1 = (0, roosterjs_editor_dom_1.normalizeRect)(eventTarget.getBoundingClientRect());
|
|
25887
|
+
if (scrollContainerRect_1 && containerRect_1) {
|
|
25888
|
+
var scrollContainerVisibleTop_1 = scrollContainer.scrollTop - scrollContainerRect_1.top;
|
|
25889
|
+
return function (rect) {
|
|
25890
|
+
return containerRect_1.top <= rect.top &&
|
|
25891
|
+
scrollContainerVisibleTop_1 <= rect.top &&
|
|
25892
|
+
scrollContainerRect_1.top <= rect.top;
|
|
25893
|
+
};
|
|
25894
|
+
}
|
|
25895
|
+
}
|
|
25896
|
+
return function () { return true; };
|
|
25897
|
+
};
|
|
25652
25898
|
return TableEditor;
|
|
25653
25899
|
}());
|
|
25654
25900
|
exports.default = TableEditor;
|
|
@@ -25671,10 +25917,10 @@ exports.disposeTableEditFeature = void 0;
|
|
|
25671
25917
|
* @internal
|
|
25672
25918
|
*/
|
|
25673
25919
|
function disposeTableEditFeature(resizer) {
|
|
25674
|
-
var _a;
|
|
25675
|
-
(_a = resizer.div
|
|
25920
|
+
var _a, _b, _c;
|
|
25921
|
+
(_b = (_a = resizer.div) === null || _a === void 0 ? void 0 : _a.parentNode) === null || _b === void 0 ? void 0 : _b.removeChild(resizer.div);
|
|
25676
25922
|
resizer.div = null;
|
|
25677
|
-
resizer.featureHandler.dispose();
|
|
25923
|
+
(_c = resizer.featureHandler) === null || _c === void 0 ? void 0 : _c.dispose();
|
|
25678
25924
|
resizer.featureHandler = null;
|
|
25679
25925
|
}
|
|
25680
25926
|
exports.disposeTableEditFeature = disposeTableEditFeature;
|
|
@@ -25908,7 +26154,11 @@ var TABLE_SELECTOR_ID = '_Table_Selector';
|
|
|
25908
26154
|
/**
|
|
25909
26155
|
* @internal
|
|
25910
26156
|
*/
|
|
25911
|
-
function createTableSelector(table, zoomScale, onFinishDragging, onShowHelperElement) {
|
|
26157
|
+
function createTableSelector(table, zoomScale, onFinishDragging, onShowHelperElement, shouldShow) {
|
|
26158
|
+
var rect = (0, roosterjs_editor_dom_1.normalizeRect)(table.getBoundingClientRect());
|
|
26159
|
+
if (rect && shouldShow && !shouldShow(rect)) {
|
|
26160
|
+
return { div: null, featureHandler: null, node: table };
|
|
26161
|
+
}
|
|
25912
26162
|
var document = table.ownerDocument;
|
|
25913
26163
|
var createElementData = {
|
|
25914
26164
|
tag: 'div',
|
|
@@ -25923,6 +26173,7 @@ function createTableSelector(table, zoomScale, onFinishDragging, onShowHelperEle
|
|
|
25923
26173
|
var context = {
|
|
25924
26174
|
table: table,
|
|
25925
26175
|
zoomScale: zoomScale,
|
|
26176
|
+
rect: rect,
|
|
25926
26177
|
};
|
|
25927
26178
|
setSelectorDivPosition(context, div);
|
|
25928
26179
|
var onDragEnd = function (context, event) {
|
|
@@ -25938,8 +26189,7 @@ function createTableSelector(table, zoomScale, onFinishDragging, onShowHelperEle
|
|
|
25938
26189
|
}
|
|
25939
26190
|
exports.default = createTableSelector;
|
|
25940
26191
|
function setSelectorDivPosition(context, trigger) {
|
|
25941
|
-
var
|
|
25942
|
-
var rect = (0, roosterjs_editor_dom_1.normalizeRect)(table.getBoundingClientRect());
|
|
26192
|
+
var rect = context.rect;
|
|
25943
26193
|
if (rect) {
|
|
25944
26194
|
trigger.style.top = rect.top - TABLE_SELECTOR_LENGTH + "px";
|
|
25945
26195
|
trigger.style.left = rect.left - TABLE_SELECTOR_LENGTH - 2 + "px";
|
|
@@ -26181,30 +26431,42 @@ exports.CompatibleBulletListType = void 0;
|
|
|
26181
26431
|
*/
|
|
26182
26432
|
var CompatibleBulletListType;
|
|
26183
26433
|
(function (CompatibleBulletListType) {
|
|
26434
|
+
/**
|
|
26435
|
+
* Minimum value of the enum
|
|
26436
|
+
*/
|
|
26437
|
+
CompatibleBulletListType[CompatibleBulletListType["Min"] = 1] = "Min";
|
|
26184
26438
|
/**
|
|
26185
26439
|
* Bullet triggered by *
|
|
26186
26440
|
*/
|
|
26187
|
-
CompatibleBulletListType[CompatibleBulletListType["Disc"] =
|
|
26441
|
+
CompatibleBulletListType[CompatibleBulletListType["Disc"] = 1] = "Disc";
|
|
26188
26442
|
/**
|
|
26189
26443
|
* Bullet triggered by -
|
|
26190
26444
|
*/
|
|
26191
|
-
CompatibleBulletListType[CompatibleBulletListType["Dash"] =
|
|
26445
|
+
CompatibleBulletListType[CompatibleBulletListType["Dash"] = 2] = "Dash";
|
|
26192
26446
|
/**
|
|
26193
26447
|
* Bullet triggered by --
|
|
26194
26448
|
*/
|
|
26195
|
-
CompatibleBulletListType[CompatibleBulletListType["Square"] =
|
|
26449
|
+
CompatibleBulletListType[CompatibleBulletListType["Square"] = 3] = "Square";
|
|
26196
26450
|
/**
|
|
26197
26451
|
* Bullet triggered by >
|
|
26198
26452
|
*/
|
|
26199
|
-
CompatibleBulletListType[CompatibleBulletListType["ShortArrow"] =
|
|
26453
|
+
CompatibleBulletListType[CompatibleBulletListType["ShortArrow"] = 4] = "ShortArrow";
|
|
26200
26454
|
/**
|
|
26201
26455
|
* Bullet triggered by -> or -->
|
|
26202
26456
|
*/
|
|
26203
|
-
CompatibleBulletListType[CompatibleBulletListType["LongArrow"] =
|
|
26457
|
+
CompatibleBulletListType[CompatibleBulletListType["LongArrow"] = 5] = "LongArrow";
|
|
26204
26458
|
/**
|
|
26205
26459
|
* Bullet triggered by =>
|
|
26206
26460
|
*/
|
|
26207
|
-
CompatibleBulletListType[CompatibleBulletListType["UnfilledArrow"] =
|
|
26461
|
+
CompatibleBulletListType[CompatibleBulletListType["UnfilledArrow"] = 6] = "UnfilledArrow";
|
|
26462
|
+
/**
|
|
26463
|
+
* Bullet triggered by —
|
|
26464
|
+
*/
|
|
26465
|
+
CompatibleBulletListType[CompatibleBulletListType["Hyphen"] = 7] = "Hyphen";
|
|
26466
|
+
/**
|
|
26467
|
+
* Maximum value of the enum
|
|
26468
|
+
*/
|
|
26469
|
+
CompatibleBulletListType[CompatibleBulletListType["Max"] = 7] = "Max";
|
|
26208
26470
|
})(CompatibleBulletListType = exports.CompatibleBulletListType || (exports.CompatibleBulletListType = {}));
|
|
26209
26471
|
|
|
26210
26472
|
|
|
@@ -27463,86 +27725,94 @@ exports.CompatibleNumberingListType = void 0;
|
|
|
27463
27725
|
*/
|
|
27464
27726
|
var CompatibleNumberingListType;
|
|
27465
27727
|
(function (CompatibleNumberingListType) {
|
|
27728
|
+
/**
|
|
27729
|
+
* Minimum value of the enum
|
|
27730
|
+
*/
|
|
27731
|
+
CompatibleNumberingListType[CompatibleNumberingListType["Min"] = 1] = "Min";
|
|
27466
27732
|
/**
|
|
27467
27733
|
* Numbering triggered by 1.
|
|
27468
27734
|
*/
|
|
27469
|
-
CompatibleNumberingListType[CompatibleNumberingListType["Decimal"] =
|
|
27735
|
+
CompatibleNumberingListType[CompatibleNumberingListType["Decimal"] = 1] = "Decimal";
|
|
27470
27736
|
/**
|
|
27471
27737
|
* Numbering triggered by 1-
|
|
27472
27738
|
*/
|
|
27473
|
-
CompatibleNumberingListType[CompatibleNumberingListType["DecimalDash"] =
|
|
27739
|
+
CompatibleNumberingListType[CompatibleNumberingListType["DecimalDash"] = 2] = "DecimalDash";
|
|
27474
27740
|
/**
|
|
27475
27741
|
* Numbering triggered by 1)
|
|
27476
27742
|
*/
|
|
27477
|
-
CompatibleNumberingListType[CompatibleNumberingListType["DecimalParenthesis"] =
|
|
27743
|
+
CompatibleNumberingListType[CompatibleNumberingListType["DecimalParenthesis"] = 3] = "DecimalParenthesis";
|
|
27478
27744
|
/**
|
|
27479
27745
|
* Numbering triggered by (1)
|
|
27480
27746
|
*/
|
|
27481
|
-
CompatibleNumberingListType[CompatibleNumberingListType["DecimalDoubleParenthesis"] =
|
|
27747
|
+
CompatibleNumberingListType[CompatibleNumberingListType["DecimalDoubleParenthesis"] = 4] = "DecimalDoubleParenthesis";
|
|
27482
27748
|
/**
|
|
27483
27749
|
* Numbering triggered by a.
|
|
27484
27750
|
*/
|
|
27485
|
-
CompatibleNumberingListType[CompatibleNumberingListType["LowerAlpha"] =
|
|
27751
|
+
CompatibleNumberingListType[CompatibleNumberingListType["LowerAlpha"] = 5] = "LowerAlpha";
|
|
27486
27752
|
/**
|
|
27487
27753
|
* Numbering triggered by a)
|
|
27488
27754
|
*/
|
|
27489
|
-
CompatibleNumberingListType[CompatibleNumberingListType["LowerAlphaParenthesis"] =
|
|
27755
|
+
CompatibleNumberingListType[CompatibleNumberingListType["LowerAlphaParenthesis"] = 6] = "LowerAlphaParenthesis";
|
|
27490
27756
|
/**
|
|
27491
27757
|
* Numbering triggered by (a)
|
|
27492
27758
|
*/
|
|
27493
|
-
CompatibleNumberingListType[CompatibleNumberingListType["LowerAlphaDoubleParenthesis"] =
|
|
27759
|
+
CompatibleNumberingListType[CompatibleNumberingListType["LowerAlphaDoubleParenthesis"] = 7] = "LowerAlphaDoubleParenthesis";
|
|
27494
27760
|
/**
|
|
27495
27761
|
* Numbering triggered by a-
|
|
27496
27762
|
*/
|
|
27497
|
-
CompatibleNumberingListType[CompatibleNumberingListType["LowerAlphaDash"] =
|
|
27763
|
+
CompatibleNumberingListType[CompatibleNumberingListType["LowerAlphaDash"] = 8] = "LowerAlphaDash";
|
|
27498
27764
|
/**
|
|
27499
27765
|
* Numbering triggered by A.
|
|
27500
27766
|
*/
|
|
27501
|
-
CompatibleNumberingListType[CompatibleNumberingListType["UpperAlpha"] =
|
|
27767
|
+
CompatibleNumberingListType[CompatibleNumberingListType["UpperAlpha"] = 9] = "UpperAlpha";
|
|
27502
27768
|
/**
|
|
27503
27769
|
* Numbering triggered by A)
|
|
27504
27770
|
*/
|
|
27505
|
-
CompatibleNumberingListType[CompatibleNumberingListType["UpperAlphaParenthesis"] =
|
|
27771
|
+
CompatibleNumberingListType[CompatibleNumberingListType["UpperAlphaParenthesis"] = 10] = "UpperAlphaParenthesis";
|
|
27506
27772
|
/**
|
|
27507
27773
|
* Numbering triggered by (A)
|
|
27508
27774
|
*/
|
|
27509
|
-
CompatibleNumberingListType[CompatibleNumberingListType["UpperAlphaDoubleParenthesis"] =
|
|
27775
|
+
CompatibleNumberingListType[CompatibleNumberingListType["UpperAlphaDoubleParenthesis"] = 11] = "UpperAlphaDoubleParenthesis";
|
|
27510
27776
|
/**
|
|
27511
27777
|
* Numbering triggered by A-
|
|
27512
27778
|
*/
|
|
27513
|
-
CompatibleNumberingListType[CompatibleNumberingListType["UpperAlphaDash"] =
|
|
27779
|
+
CompatibleNumberingListType[CompatibleNumberingListType["UpperAlphaDash"] = 12] = "UpperAlphaDash";
|
|
27514
27780
|
/**
|
|
27515
27781
|
* Numbering triggered by i.
|
|
27516
27782
|
*/
|
|
27517
|
-
CompatibleNumberingListType[CompatibleNumberingListType["LowerRoman"] =
|
|
27783
|
+
CompatibleNumberingListType[CompatibleNumberingListType["LowerRoman"] = 13] = "LowerRoman";
|
|
27518
27784
|
/**
|
|
27519
27785
|
* Numbering triggered by i)
|
|
27520
27786
|
*/
|
|
27521
|
-
CompatibleNumberingListType[CompatibleNumberingListType["LowerRomanParenthesis"] =
|
|
27787
|
+
CompatibleNumberingListType[CompatibleNumberingListType["LowerRomanParenthesis"] = 14] = "LowerRomanParenthesis";
|
|
27522
27788
|
/**
|
|
27523
27789
|
* Numbering triggered by (i)
|
|
27524
27790
|
*/
|
|
27525
|
-
CompatibleNumberingListType[CompatibleNumberingListType["LowerRomanDoubleParenthesis"] =
|
|
27791
|
+
CompatibleNumberingListType[CompatibleNumberingListType["LowerRomanDoubleParenthesis"] = 15] = "LowerRomanDoubleParenthesis";
|
|
27526
27792
|
/**
|
|
27527
27793
|
* Numbering triggered by i-
|
|
27528
27794
|
*/
|
|
27529
|
-
CompatibleNumberingListType[CompatibleNumberingListType["LowerRomanDash"] =
|
|
27795
|
+
CompatibleNumberingListType[CompatibleNumberingListType["LowerRomanDash"] = 16] = "LowerRomanDash";
|
|
27530
27796
|
/**
|
|
27531
27797
|
* Numbering triggered by I.
|
|
27532
27798
|
*/
|
|
27533
|
-
CompatibleNumberingListType[CompatibleNumberingListType["UpperRoman"] =
|
|
27799
|
+
CompatibleNumberingListType[CompatibleNumberingListType["UpperRoman"] = 17] = "UpperRoman";
|
|
27534
27800
|
/**
|
|
27535
27801
|
* Numbering triggered by I)
|
|
27536
27802
|
*/
|
|
27537
|
-
CompatibleNumberingListType[CompatibleNumberingListType["UpperRomanParenthesis"] =
|
|
27803
|
+
CompatibleNumberingListType[CompatibleNumberingListType["UpperRomanParenthesis"] = 18] = "UpperRomanParenthesis";
|
|
27538
27804
|
/**
|
|
27539
27805
|
* Numbering triggered by (I)
|
|
27540
27806
|
*/
|
|
27541
|
-
CompatibleNumberingListType[CompatibleNumberingListType["UpperRomanDoubleParenthesis"] =
|
|
27807
|
+
CompatibleNumberingListType[CompatibleNumberingListType["UpperRomanDoubleParenthesis"] = 19] = "UpperRomanDoubleParenthesis";
|
|
27542
27808
|
/**
|
|
27543
27809
|
* Numbering triggered by I-
|
|
27544
27810
|
*/
|
|
27545
|
-
CompatibleNumberingListType[CompatibleNumberingListType["UpperRomanDash"] =
|
|
27811
|
+
CompatibleNumberingListType[CompatibleNumberingListType["UpperRomanDash"] = 20] = "UpperRomanDash";
|
|
27812
|
+
/**
|
|
27813
|
+
* Maximum value of the enum
|
|
27814
|
+
*/
|
|
27815
|
+
CompatibleNumberingListType[CompatibleNumberingListType["Max"] = 20] = "Max";
|
|
27546
27816
|
})(CompatibleNumberingListType = exports.CompatibleNumberingListType || (exports.CompatibleNumberingListType = {}));
|
|
27547
27817
|
|
|
27548
27818
|
|