@atlaskit/editor-core
Version:
A package contains Atlassian editor core functionality
47 lines (46 loc) • 1.61 kB
TypeScript
import { Node as PMNode, Schema } from '../../prosemirror';
import { Transformer } from '../transformer';
export declare type CustomEncoder = (userId: string) => string;
export interface JIRACustomEncoders {
mention?: CustomEncoder;
}
export interface ContextInfo {
clientId: string;
serviceHost: string;
token: string;
collection: string;
}
export interface MediaContextInfo {
viewContext?: ContextInfo;
uploadContext?: ContextInfo;
}
export default class JIRATransformer implements Transformer<string> {
private schema;
private customEncoders;
private mediaContextInfo?;
private doc;
constructor(schema: Schema<any, any>, customEncoders?: JIRACustomEncoders, mediaContextInfo?: MediaContextInfo);
encode(node: PMNode): string;
parse(html: string): PMNode;
private getContent(node, convertedNodes);
private encodeNode(node);
private makeDocument();
private encodeFragment(fragment);
private encodeHeading(node);
private encodeParagraph(node);
private encodeText(node);
private encodeHardBreak();
private encodeHorizontalRule();
private encodeBulletList(node);
private encodeOrderedList(node);
private encodeListItem(node);
private encodeMention(node, encoder?);
private encodeCodeBlock(node);
private encodeBlockQuote(node);
private encodeMediaGroup(node);
private addDataToNode(domNode, mediaNode, defaultDisplayType?);
private buildURLWithContextInfo(fileId, contextInfo);
private isImageMimeType(mimeType?);
private encodeMedia(node);
private encodeTable(node);
}