var _marks;
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
import { Schema } from 'prosemirror-model';
import CodeMarkSpec from './CodeMarkSpec.js';
import DocNodeSpec from './DocNodeSpec.js';
import EMMarkSpec from './EMMarkSpec.js';
import FontSizeMarkSpec from './FontSizeMarkSpec.js';
import FontTypeMarkSpec from './FontTypeMarkSpec.js';
import LinkMarkSpec from './LinkMarkSpec.js';
import * as MarkNames from './MarkNames.js';
import { DOC, PARAGRAPH, TEXT } from './NodeNames.js';
import ParagraphNodeSpec from './ParagraphNodeSpec.js';
import SpacerMarkSpec from './SpacerMarkSpec.js';
import StrikeMarkSpec from './StrikeMarkSpec.js';
import StrongMarkSpec from './StrongMarkSpec.js';
import TextColorMarkSpec from './TextColorMarkSpec.js';
import TextHighlightMarkSpec from './TextHighlightMarkSpec.js';
import TextNoWrapMarkSpec from './TextNoWrapMarkSpec.js';
import TextNodeSpec from './TextNodeSpec.js';
import TextSelectionMarkSpec from './TextSelectionMarkSpec.js';
import TextSuperMarkSpec from './TextSuperMarkSpec.js';
import TextSubMarkSpec from './TextSubMarkSpec.js';
import TextUnderlineMarkSpec from './TextUnderlineMarkSpec.js';
var MARK_CODE = MarkNames.MARK_CODE,
  MARK_EM = MarkNames.MARK_EM,
  MARK_FONT_SIZE = MarkNames.MARK_FONT_SIZE,
  MARK_FONT_TYPE = MarkNames.MARK_FONT_TYPE,
  MARK_LINK = MarkNames.MARK_LINK,
  MARK_NO_BREAK = MarkNames.MARK_NO_BREAK,
  MARK_STRIKE = MarkNames.MARK_STRIKE,
  MARK_STRONG = MarkNames.MARK_STRONG,
  MARK_SUPER = MarkNames.MARK_SUPER,
  MARK_SUB = MarkNames.MARK_SUB,
  MARK_TEXT_COLOR = MarkNames.MARK_TEXT_COLOR,
  MARK_TEXT_HIGHLIGHT = MarkNames.MARK_TEXT_HIGHLIGHT,
  MARK_TEXT_SELECTION = MarkNames.MARK_TEXT_SELECTION,
  MARK_UNDERLINE = MarkNames.MARK_UNDERLINE,
  MARK_SPACER = MarkNames.MARK_SPACER;

// These nodes are required to build basic marks.
var nodes = _defineProperty(_defineProperty(_defineProperty({}, DOC, DocNodeSpec), PARAGRAPH, ParagraphNodeSpec), TEXT, TextNodeSpec);
var marks = (_marks = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_marks, MARK_LINK, LinkMarkSpec), MARK_NO_BREAK, TextNoWrapMarkSpec), MARK_CODE, CodeMarkSpec), MARK_EM, EMMarkSpec), MARK_FONT_SIZE, FontSizeMarkSpec), MARK_FONT_TYPE, FontTypeMarkSpec), MARK_SPACER, SpacerMarkSpec), MARK_STRIKE, StrikeMarkSpec), MARK_STRONG, StrongMarkSpec), MARK_SUPER, TextSuperMarkSpec), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_marks, MARK_SUB, TextSubMarkSpec), MARK_TEXT_COLOR, TextColorMarkSpec), MARK_TEXT_HIGHLIGHT, TextHighlightMarkSpec), MARK_TEXT_SELECTION, TextSelectionMarkSpec), MARK_UNDERLINE, TextUnderlineMarkSpec));
var schema = new Schema({
  nodes: nodes,
  marks: marks
});
var EditorMarks = schema.spec.marks;
export default EditorMarks;