@atlaskit/adf-schema
Version:
Shared package that contains the ADF-schema (json) and ProseMirror node/mark specs
28 lines • 1.56 kB
JavaScript
import { $onePlus, $or, adfNode } from '@atlaskit/adf-schema-generator';
import { unsupportedMark } from '../marks/unsupportedMark';
import { unsupportedNodeAttribute } from '../marks/unsupportedNodeAttribute';
import { bulletList, orderedList } from './list';
import { paragraph } from './paragraph';
import { unsupportedBlock } from './unsupportedBlock';
import { codeBlock } from './codeBlock';
import { mediaGroup } from './mediaGroup';
import { mediaSingle } from './mediaSingle';
import { extension } from './extension';
var blockQuoteContent = [paragraph.use('with_no_marks'), orderedList, bulletList, unsupportedBlock, codeBlock, mediaSingle.use('caption'), mediaSingle.use('full'), mediaGroup, extension.use('with_marks')];
export var blockquote = adfNode('blockquote').define({
defining: true,
selectable: true,
marks: [unsupportedMark, unsupportedNodeAttribute],
content: [$onePlus($or.apply(void 0, blockQuoteContent))]
}).variant('legacy', {
ignore: ['json-schema', 'validator-spec'],
content: [$onePlus($or(paragraph, unsupportedBlock))]
}).variant('without_non_bodied_macros', {
content: [$onePlus($or(paragraph.use('with_no_marks'), orderedList, bulletList, unsupportedBlock, codeBlock, mediaSingle.use('caption'), mediaSingle.use('full'), mediaGroup))],
ignore: ['json-schema', 'validator-spec']
})
// TODO: Clean up this variant
.variant('without_nested_codeblock_or_media', {
content: [$onePlus($or(paragraph.use('with_no_marks'), orderedList, bulletList, unsupportedBlock))],
ignore: ['json-schema', 'validator-spec']
});