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 71 72 73 74 75 76 77 78 79 80 | 1x 1x 50x 49x 49x 49x 49x 49x 49x 49x 49x 10x 49x 39x 49x 1x 49x 1x 49x 1x 49x 1x 49x 1x 44x 43x 42x 43x 2x 43x 1x 43x 1x 43x 1x 43x 2x 43x 1x | import { isElementOfType } from '../../domUtils/isElementOfType'; import type { FormatHandler } from '../FormatHandler'; import type { LinkFormat } from 'roosterjs-content-model-types'; /** * @internal */ export const linkFormatHandler: FormatHandler<LinkFormat> = { parse: (format, element) => { if (isElementOfType(element, 'a')) { const name = element.name; const href = element.getAttribute('href'); // Use getAttribute to get original HREF but not the resolved absolute url const target = element.target; const rel = element.rel; const id = element.id; const className = element.className; const title = element.title; if (name) { format.name = name; } if (href) { format.href = href; } if (target) { format.target = target; } if (id) { format.anchorId = id; } if (rel) { format.relationship = rel; } if (title) { format.anchorTitle = title; } if (className) { format.anchorClass = className; } } }, apply: (format, element) => { if (isElementOfType(element, 'a') && (format.href || format.name)) { if (format.href) { element.href = format.href; } if (format.name) { element.name = format.name; } if (format.target) { element.target = format.target; } if (format.anchorId) { element.id = format.anchorId; } if (format.anchorClass) { element.className = format.anchorClass; } if (format.anchorTitle) { element.title = format.anchorTitle; } if (format.relationship) { element.rel = format.relationship; } } }, }; |