@atlaskit/adf-schema
Version:
Shared package that contains the ADF-schema (json) and ProseMirror node/mark specs
81 lines (80 loc) • 3.48 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.panel = void 0;
var _adfSchemaGenerator = require("@atlaskit/adf-schema-generator");
var _breakout = require("../marks/breakout");
var _unsupportedMark = require("../marks/unsupportedMark");
var _unsupportedNodeAttribute = require("../marks/unsupportedNodeAttribute");
var _blockCard = require("./blockCard");
var _codeBlock = require("./codeBlock");
var _decisionList = require("./decisionList");
var _heading = require("./heading");
var _list = require("./list");
var _mediaGroup = require("./mediaGroup");
var _mediaSingle = require("./mediaSingle");
var _paragraph = require("./paragraph");
var _rule = require("./rule");
var _task = require("./task");
var _unsupportedBlock = require("./unsupportedBlock");
var _extension = require("./extension");
var panelContent = [_paragraph.paragraph.use('with_no_marks'), _paragraph.paragraph.use('with_font_size'), _heading.heading.use('with_no_marks'), _list.bulletList, _list.orderedList, _blockCard.blockCard, _mediaGroup.mediaGroup, _mediaSingle.mediaSingle.use('caption'), _mediaSingle.mediaSingle.use('full'), _codeBlock.codeBlock, _task.taskList, _rule.rule, _decisionList.decisionList, _unsupportedBlock.unsupportedBlock];
var panel = exports.panel = (0, _adfSchemaGenerator.adfNode)('panel').define({
selectable: true,
marks: [_unsupportedMark.unsupportedMark, _unsupportedNodeAttribute.unsupportedNodeAttribute],
attrs: {
panelType: {
type: 'enum',
values: ['info', 'note', 'tip', 'warning', 'error', 'success', 'custom'],
default: 'info'
},
panelIcon: {
type: 'string',
default: null,
optional: true
},
panelIconId: {
type: 'string',
default: null,
optional: true
},
panelIconText: {
type: 'string',
default: null,
optional: true
},
panelColor: {
type: 'string',
default: null,
optional: true
},
localId: {
type: 'string',
default: null,
optional: true
}
},
content: [(0, _adfSchemaGenerator.$onePlus)(_adfSchemaGenerator.$or.apply(void 0, panelContent.concat([_extension.extension.use('with_marks')])))]
}).variant('c1', {
// panel_c1 allows all standard panel content plus table (wired via addContent
// in full-schema.adf.ts to avoid a circular module import).
content: [(0, _adfSchemaGenerator.$onePlus)(_adfSchemaGenerator.$or.apply(void 0, panelContent.concat([_extension.extension.use('with_marks')])))],
ignore: ['json-schema', 'validator-spec'],
preserveVariantNameInPm: true
})
// this variant is used to support breakout resizing for panel nodes at the document root
.variant('root_only', {
stage0: true,
marks: [_breakout.breakout, _unsupportedMark.unsupportedMark, _unsupportedNodeAttribute.unsupportedNodeAttribute]
})
// this variant is used to support breakout resizing for panel_c1 nodes at the document root
.variant('c1_root_only', {
stage0: true,
marks: [_breakout.breakout, _unsupportedMark.unsupportedMark, _unsupportedNodeAttribute.unsupportedNodeAttribute],
// panel_c1 allows all standard panel content plus table (wired via addContent
// in full-schema.adf.ts to avoid a circular module import).
content: [(0, _adfSchemaGenerator.$onePlus)(_adfSchemaGenerator.$or.apply(void 0, panelContent.concat([_extension.extension.use('with_marks')])))],
ignore: ['json-schema', 'validator-spec'],
preserveVariantNameInPm: true
});