Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 52x 52x | import { containerSizeFormatParser } from '../../override/containerSizeFormatParser';
import { createDomToModelContext } from 'roosterjs-content-model-dom';
import { createPasteEntityProcessor } from '../../override/pasteEntityProcessor';
import { createPasteGeneralProcessor } from '../../override/pasteGeneralProcessor';
import { getRootComputedStyleForContext } from '../../coreApi/createEditorContext/getRootComputedStyleForContext';
import { pasteBlockEntityParser } from '../../override/pasteCopyBlockEntityParser';
import { pasteDisplayFormatParser } from '../../override/pasteDisplayFormatParser';
import { pasteTextProcessor } from '../../override/pasteTextProcessor';
import { pasteWhiteSpaceFormatParser } from '../../override/pasteWhiteSpaceFormatParser';
import type {
ContentModelSegmentFormat,
DOMHelper,
DomToModelContext,
DomToModelOption,
DomToModelOptionForSanitizing,
} from 'roosterjs-content-model-types';
const DefaultSanitizingOption: DomToModelOptionForSanitizing = {
processorOverride: {},
formatParserOverride: {},
additionalFormatParsers: {},
additionalAllowedTags: [],
additionalDisallowedTags: [],
styleSanitizers: {},
attributeSanitizers: {},
processNonVisibleElements: false,
};
/**
* @internal
*/
export function createDomToModelContextForSanitizing(
document: Document,
defaultFormat?: ContentModelSegmentFormat,
defaultOption?: DomToModelOption,
additionalSanitizingOption?: Partial<DomToModelOptionForSanitizing>,
domHelper?: DOMHelper
): DomToModelContext {
const sanitizingOption: DomToModelOptionForSanitizing = {
...DefaultSanitizingOption,
...additionalSanitizingOption,
};
return createDomToModelContext(
{
defaultFormat,
...getRootComputedStyleForContext(document),
experimentalFeatures: [],
editorViewWidth: domHelper?.getClientWidth(),
},
defaultOption,
{
processorOverride: {
'#text': pasteTextProcessor,
entity: createPasteEntityProcessor(sanitizingOption),
'*': createPasteGeneralProcessor(sanitizingOption),
},
formatParserOverride: {
display: pasteDisplayFormatParser,
whiteSpace: pasteWhiteSpaceFormatParser,
},
additionalFormatParsers: {
container: [containerSizeFormatParser],
entity: [pasteBlockEntityParser],
},
},
sanitizingOption
);
}
|