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