UNPKG

@atlaskit/adf-schema

Version:

Shared package that contains the ADF-schema (json) and ProseMirror node/mark specs

2,243 lines 49.8 kB
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.text_with_no_marks = exports.text_link_inline = exports.text_formatted = exports.text_code_inline = exports.textColor = exports.text = exports.taskList = exports.taskItem = exports.tableRow = exports.tableHeader = exports.tableCell = exports.table = exports.syncBlock = exports.subsup = exports.strong = exports.strike = exports.status = exports.rule_with_attrs_root_only = exports.rule_with_attrs = exports.rule_root_only = exports.rule = exports.placeholder = exports.paragraph_with_no_marks = exports.paragraph_with_indentation = exports.paragraph_with_font_size = exports.paragraph_with_alignment = exports.paragraph = exports.panel_root_only = exports.panel_c1_root_only = exports.panel_c1 = exports.panel = exports.orderedList = exports.non_nestable_block_content = exports.nestedExpand_with_no_marks = exports.nestedExpand_content = exports.nestedExpand = exports.multiBodiedExtension_root_only = exports.multiBodiedExtension = exports.mention = exports.mediaSingle_width_type = exports.mediaSingle_full = exports.mediaSingle_caption = exports.mediaSingle = exports.mediaInline = exports.mediaGroup = exports.media = exports.listItem = exports.link = exports.layoutSection_with_single_column = exports.layoutSection_full = exports.layoutSection = exports.layoutColumn = exports.inline_content = exports.inlineExtension_with_marks = exports.inlineExtension = exports.inlineCard = exports.indentation = exports.heading_with_no_marks = exports.heading_with_indentation = exports.heading_with_alignment = exports.heading = exports.hardBreak = exports.fragment = exports.fontSize = exports.extension_with_marks = exports.extension_root_only = exports.extensionFrame = exports.extension = exports.expand_root_only = exports.expand = exports.emoji = exports.embedCard = exports.em = exports.doc = exports.decisionList = exports.decisionItem = exports.date = exports.dataConsumer = exports.confluenceInlineComment = exports.codeBlock_root_only = exports.codeBlock = exports.code = exports.caption = exports.bulletList = exports.breakout = exports.border = exports.bodiedSyncBlock = exports.bodiedRule_root_only = exports.bodiedRule = exports.bodiedExtension_with_marks = exports.bodiedExtension_root_only = exports.bodiedExtension = exports.blockquote = exports.block_content = exports.blockTaskItem = exports.blockRootOnly = exports.blockCard = exports.backgroundColor = exports.annotation = exports.alignment = void 0;
exports.underline = void 0;
var alignment = exports.alignment = {
  props: {
    attrs: {
      props: {
        align: {
          type: 'enum',
          values: ['center', 'end']
        }
      }
    },
    type: {
      type: 'enum',
      values: ['alignment']
    }
  }
};
var annotation = exports.annotation = {
  props: {
    attrs: {
      props: {
        annotationType: {
          type: 'enum',
          values: ['inlineComment']
        },
        id: {
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['annotation']
    }
  }
};
var backgroundColor = exports.backgroundColor = {
  props: {
    attrs: {
      props: {
        color: {
          pattern: '^#[0-9a-fA-F]{6}$',
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['backgroundColor']
    }
  }
};
var block_content = exports.block_content = ['blockCard', 'paragraph_with_no_marks', 'paragraph_with_alignment', 'paragraph_with_indentation', 'mediaSingle_caption', 'mediaSingle_full', 'codeBlock', 'taskList', 'bulletList', 'orderedList', 'heading_with_no_marks', 'heading_with_alignment', 'heading_with_indentation', 'mediaGroup', 'decisionList', 'rule', 'rule_with_attrs', 'bodiedRule', 'panel', 'blockquote', 'extension_with_marks', 'embedCard', 'table', 'expand', 'bodiedExtension_with_marks'];
var blockCard = exports.blockCard = {
  props: {
    attrs: [{
      props: {
        datasource: {
          props: {
            id: {
              type: 'string'
            },
            parameters: {
              type: 'object'
            },
            views: {
              items: [{
                props: {
                  properties: {
                    optional: true,
                    type: 'object'
                  },
                  type: {
                    type: 'string'
                  }
                }
              }],
              minItems: 1,
              type: 'array'
            }
          }
        },
        layout: {
          optional: true,
          type: 'enum',
          values: ['wide', 'full-width', 'center', 'wrap-right', 'wrap-left', 'align-end', 'align-start']
        },
        localId: {
          optional: true,
          type: 'string'
        },
        url: {
          optional: true,
          type: 'string',
          validatorFn: 'safeUrl'
        },
        width: {
          optional: true,
          type: 'number'
        }
      }
    }, {
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        url: {
          type: 'string',
          validatorFn: 'safeUrl'
        }
      }
    }, {
      props: {
        data: {
          type: 'object'
        },
        localId: {
          optional: true,
          type: 'string'
        }
      }
    }],
    type: {
      type: 'enum',
      values: ['blockCard']
    }
  },
  required: ['attrs']
};
var blockquote = exports.blockquote = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: [['paragraph_with_no_marks', 'orderedList', 'bulletList', 'codeBlock', 'mediaSingle_caption', 'mediaSingle_full', 'mediaGroup', 'extension_with_marks']],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['blockquote']
    }
  }
};
var blockRootOnly = exports.blockRootOnly = ['multiBodiedExtension'];
var blockTaskItem = exports.blockTaskItem = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        },
        state: {
          type: 'enum',
          values: ['TODO', 'DONE']
        }
      }
    },
    content: {
      isTupleLike: true,
      items: [['paragraph_with_no_marks', 'paragraph_with_font_size', 'extension_with_marks'], ['paragraph_with_no_marks', 'paragraph_with_font_size', 'extension_with_marks']],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['blockTaskItem']
    }
  }
};
var bodiedExtension = exports.bodiedExtension = {
  props: {
    attrs: {
      props: {
        extensionKey: {
          minLength: 1,
          type: 'string'
        },
        extensionType: {
          minLength: 1,
          type: 'string'
        },
        layout: {
          optional: true,
          type: 'enum',
          values: ['wide', 'full-width', 'default']
        },
        localId: {
          minLength: 1,
          optional: true,
          type: 'string'
        },
        parameters: {
          optional: true,
          type: 'object'
        },
        text: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: ['non_nestable_block_content'],
      minItems: 1,
      type: 'array'
    },
    marks: {
      items: [],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['bodiedExtension']
    }
  }
};
var bodiedExtension_root_only = exports.bodiedExtension_root_only = ['bodiedExtension', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: [['breakout', 'dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
var bodiedExtension_with_marks = exports.bodiedExtension_with_marks = ['bodiedExtension', {
  props: {
    marks: {
      items: [['dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
var bodiedRule = exports.bodiedRule = {
  meta: {
    stage0: true
  },
  props: {
    attrs: {
      props: {
        alignment: {
          optional: true,
          type: 'enum',
          values: ['start', 'center', 'end']
        },
        color: {
          optional: true,
          pattern: '^#[0-9a-fA-F]{6}$',
          type: 'string'
        },
        localId: {
          minLength: 1,
          type: 'string'
        },
        style: {
          optional: true,
          type: 'enum',
          values: ['solid', 'dashed', 'dotted', 'sketch', 'fade']
        },
        weight: {
          maximum: 3,
          minimum: 1,
          optional: true,
          type: 'number'
        }
      }
    },
    content: {
      items: [['paragraph_with_no_marks', 'heading_with_no_marks']],
      maxItems: 1,
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['bodiedRule']
    }
  }
};
var bodiedRule_root_only = exports.bodiedRule_root_only = ['bodiedRule', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var bodiedSyncBlock = exports.bodiedSyncBlock = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        },
        resourceId: {
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: [['paragraph', 'paragraph_with_alignment', 'paragraph_with_indentation', 'paragraph_with_no_marks', 'blockCard', 'blockquote', 'bulletList', 'codeBlock', 'decisionList', 'embedCard', 'expand', 'heading', 'heading_with_alignment', 'heading_with_indentation', 'heading_with_no_marks', 'layoutSection', 'layoutSection_with_single_column', 'layoutSection_full', 'mediaGroup', 'mediaSingle', 'mediaSingle_caption', 'mediaSingle_full', 'mediaSingle_width_type', 'orderedList', 'panel_c1', 'panel', 'rule', 'rule_with_attrs', 'bodiedRule', 'table', 'taskList']],
      minItems: 1,
      type: 'array'
    },
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['bodiedSyncBlock']
    }
  }
};
var border = exports.border = {
  props: {
    attrs: {
      props: {
        color: {
          pattern: '^#[0-9a-fA-F]{8}$|^#[0-9a-fA-F]{6}$',
          type: 'string'
        },
        size: {
          maximum: 3,
          minimum: 1,
          type: 'number'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['border']
    }
  }
};
var breakout = exports.breakout = {
  props: {
    attrs: {
      props: {
        mode: {
          type: 'enum',
          values: ['wide', 'full-width']
        },
        width: {
          optional: true,
          type: 'number'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['breakout']
    }
  }
};
var bulletList = exports.bulletList = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      items: ['listItem'],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['bulletList']
    }
  }
};
var caption = exports.caption = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedInline: true,
      items: [['hardBreak', 'mention', 'emoji', 'date', 'placeholder', 'inlineCard', 'status', 'text_formatted', 'text_code_inline']],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['caption']
    }
  }
};
var code = exports.code = {
  props: {
    type: {
      type: 'enum',
      values: ['code']
    }
  }
};
var codeBlock = exports.codeBlock = {
  props: {
    attrs: {
      optional: true,
      props: {
        hideLineNumbers: {
          optional: true,
          type: 'boolean'
        },
        language: {
          optional: true,
          type: 'string'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        uniqueId: {
          optional: true,
          type: 'string'
        },
        wrap: {
          optional: true,
          type: 'boolean'
        }
      }
    },
    content: {
      allowUnsupportedInline: true,
      items: ['text_with_no_marks'],
      optional: true,
      type: 'array'
    },
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['codeBlock']
    }
  }
};
var codeBlock_root_only = exports.codeBlock_root_only = ['codeBlock', {
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var confluenceInlineComment = exports.confluenceInlineComment = {
  props: {
    attrs: {
      props: {
        reference: {
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['confluenceInlineComment']
    }
  }
};
var dataConsumer = exports.dataConsumer = {
  props: {
    attrs: {
      props: {
        sources: {
          items: [{
            type: 'string'
          }],
          minItems: 1,
          type: 'array'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['dataConsumer']
    }
  }
};
var date = exports.date = {
  props: {
    attrs: {
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        timestamp: {
          minLength: 1,
          type: 'string'
        }
      }
    },
    marks: {
      items: ['annotation'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['date']
    }
  }
};
var decisionItem = exports.decisionItem = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        },
        state: {
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedInline: true,
      items: ['inline_content'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['decisionItem']
    }
  }
};
var decisionList = exports.decisionList = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: ['decisionItem'],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['decisionList']
    }
  }
};
var doc = exports.doc = {
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: [['panel_c1', 'blockCard', 'paragraph_with_no_marks', 'paragraph_with_alignment', 'paragraph_with_indentation', 'mediaSingle_caption', 'mediaSingle_full', 'codeBlock', 'taskList', 'bulletList', 'orderedList', 'heading_with_no_marks', 'heading_with_alignment', 'heading_with_indentation', 'mediaGroup', 'decisionList', 'rule', 'rule_with_attrs', 'bodiedRule', 'panel', 'blockquote', 'extension_with_marks', 'embedCard', 'table', 'expand', 'bodiedExtension_with_marks', 'codeBlock_root_only', 'panel_root_only', 'panel_c1_root_only', 'rule_root_only', 'rule_with_attrs_root_only', 'bodiedRule_root_only', 'extension_root_only', 'bodiedExtension_root_only', 'multiBodiedExtension_root_only', 'layoutSection_with_single_column', 'layoutSection_full', 'multiBodiedExtension', 'expand_root_only', 'syncBlock', 'bodiedSyncBlock']],
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['doc']
    },
    version: {
      type: 'enum',
      values: [1]
    }
  }
};
var em = exports.em = {
  props: {
    type: {
      type: 'enum',
      values: ['em']
    }
  }
};
var embedCard = exports.embedCard = {
  props: {
    attrs: {
      props: {
        layout: {
          type: 'enum',
          values: ['wide', 'full-width', 'center', 'wrap-right', 'wrap-left', 'align-end', 'align-start']
        },
        localId: {
          optional: true,
          type: 'string'
        },
        originalHeight: {
          optional: true,
          type: 'number'
        },
        originalWidth: {
          optional: true,
          type: 'number'
        },
        url: {
          type: 'string',
          validatorFn: 'safeUrl'
        },
        width: {
          maximum: 100,
          minimum: 0,
          optional: true,
          type: 'number'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['embedCard']
    }
  }
};
var emoji = exports.emoji = {
  props: {
    attrs: {
      props: {
        id: {
          optional: true,
          type: 'string'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        shortName: {
          type: 'string'
        },
        text: {
          optional: true,
          type: 'string'
        }
      }
    },
    marks: {
      items: ['annotation'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['emoji']
    }
  }
};
var expand = exports.expand = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        title: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: [['paragraph_with_no_marks', 'paragraph_with_font_size', 'panel', 'blockquote', 'orderedList', 'bulletList', 'rule', 'rule_with_attrs', 'bodiedRule', 'heading_with_no_marks', 'codeBlock', 'mediaGroup', 'mediaSingle_caption', 'mediaSingle_full', 'decisionList', 'taskList', 'table', 'blockCard', 'embedCard', 'extension_with_marks', 'nestedExpand_with_no_marks']],
      minItems: 1,
      type: 'array'
    },
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['expand']
    }
  }
};
var expand_root_only = exports.expand_root_only = ['expand', {
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var extension = exports.extension = {
  props: {
    attrs: {
      props: {
        extensionKey: {
          minLength: 1,
          type: 'string'
        },
        extensionType: {
          minLength: 1,
          type: 'string'
        },
        layout: {
          optional: true,
          type: 'enum',
          values: ['wide', 'full-width', 'default']
        },
        localId: {
          minLength: 1,
          optional: true,
          type: 'string'
        },
        parameters: {
          optional: true,
          type: 'object'
        },
        text: {
          optional: true,
          type: 'string'
        }
      }
    },
    marks: {
      items: [],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['extension']
    }
  }
};
var extension_root_only = exports.extension_root_only = ['extension', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: [['breakout', 'dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
var extension_with_marks = exports.extension_with_marks = ['extension', {
  props: {
    marks: {
      items: [['dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
var extensionFrame = exports.extensionFrame = {
  meta: {
    stage0: true
  },
  props: {
    content: {
      items: [['paragraph_with_no_marks', 'paragraph_with_font_size', 'panel', 'blockquote', 'orderedList', 'bulletList', 'rule', 'rule_with_attrs', 'bodiedRule', 'heading_with_no_marks', 'codeBlock', 'mediaGroup', 'mediaSingle_full', 'mediaSingle_caption', 'decisionList', 'taskList', 'table', 'extension_with_marks', 'bodiedExtension_with_marks', 'blockCard', 'embedCard']],
      minItems: 1,
      type: 'array'
    },
    marks: {
      items: [['dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['extensionFrame']
    }
  }
};
var fontSize = exports.fontSize = {
  props: {
    attrs: {
      props: {
        fontSize: {
          type: 'enum',
          values: ['small']
        }
      }
    },
    type: {
      type: 'enum',
      values: ['fontSize']
    }
  }
};
var fragment = exports.fragment = {
  props: {
    attrs: {
      props: {
        localId: {
          minLength: 1,
          type: 'string'
        },
        name: {
          optional: true,
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['fragment']
    }
  }
};
var hardBreak = exports.hardBreak = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        text: {
          optional: true,
          type: 'enum',
          values: ['\n']
        }
      }
    },
    type: {
      type: 'enum',
      values: ['hardBreak']
    }
  }
};
var heading = exports.heading = {
  props: {
    attrs: {
      props: {
        level: {
          maximum: 6,
          minimum: 1,
          type: 'number'
        },
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedInline: true,
      items: ['inline_content'],
      optional: true,
      type: 'array'
    },
    marks: {
      items: [],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['heading']
    }
  }
};
var heading_with_alignment = exports.heading_with_alignment = ['heading', {
  props: {
    marks: {
      items: ['alignment'],
      optional: true,
      type: 'array'
    }
  }
}];
var heading_with_indentation = exports.heading_with_indentation = ['heading', {
  props: {
    marks: {
      items: ['indentation'],
      optional: true,
      type: 'array'
    }
  }
}];
var heading_with_no_marks = exports.heading_with_no_marks = ['heading', {
  props: {
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    }
  }
}];
var indentation = exports.indentation = {
  props: {
    attrs: {
      props: {
        level: {
          maximum: 6,
          minimum: 1,
          type: 'number'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['indentation']
    }
  }
};
var inline_content = exports.inline_content = ['text_formatted', 'text_code_inline', 'date', 'emoji', 'hardBreak', 'inlineCard', 'mention', 'placeholder', 'status', 'inlineExtension_with_marks', 'mediaInline'];
var inlineCard = exports.inlineCard = {
  props: {
    attrs: [{
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        url: {
          type: 'string',
          validatorFn: 'safeUrl'
        }
      }
    }, {
      props: {
        data: {
          type: 'object'
        },
        localId: {
          optional: true,
          type: 'string'
        }
      }
    }],
    marks: {
      items: ['annotation'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['inlineCard']
    }
  },
  required: ['attrs']
};
var inlineExtension = exports.inlineExtension = {
  props: {
    attrs: {
      props: {
        extensionKey: {
          minLength: 1,
          type: 'string'
        },
        extensionType: {
          minLength: 1,
          type: 'string'
        },
        localId: {
          minLength: 1,
          optional: true,
          type: 'string'
        },
        parameters: {
          optional: true,
          type: 'object'
        },
        text: {
          optional: true,
          type: 'string'
        }
      }
    },
    marks: {
      items: [],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['inlineExtension']
    }
  }
};
var inlineExtension_with_marks = exports.inlineExtension_with_marks = ['inlineExtension', {
  props: {
    marks: {
      items: [['dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
var layoutColumn = exports.layoutColumn = {
  props: {
    attrs: {
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        valign: {
          optional: true,
          type: 'enum',
          values: ['top', 'middle', 'bottom']
        },
        width: {
          maximum: 100,
          minimum: 0,
          type: 'number'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: [['panel_c1', 'blockCard', 'paragraph_with_no_marks', 'paragraph_with_alignment', 'paragraph_with_indentation', 'mediaSingle_caption', 'mediaSingle_full', 'codeBlock', 'taskList', 'bulletList', 'orderedList', 'heading_with_no_marks', 'heading_with_alignment', 'heading_with_indentation', 'mediaGroup', 'decisionList', 'rule', 'rule_with_attrs', 'bodiedRule', 'panel', 'blockquote', 'extension_with_marks', 'embedCard', 'table', 'expand', 'bodiedExtension_with_marks']],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['layoutColumn']
    }
  }
};
var layoutSection = exports.layoutSection = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: ['layoutColumn'],
      maxItems: 3,
      minItems: 1,
      type: 'array'
    },
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['layoutSection']
    }
  }
};
var layoutSection_full = exports.layoutSection_full = ['layoutSection', {
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: ['layoutColumn'],
      maxItems: 3,
      minItems: 2,
      type: 'array'
    },
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var layoutSection_with_single_column = exports.layoutSection_with_single_column = ['layoutSection', {
  meta: {
    stage0: true
  },
  props: {
    attrs: {
      optional: true,
      props: {
        columnRuleStyle: {
          optional: true,
          type: 'enum',
          values: ['solid']
        },
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: ['layoutColumn'],
      maxItems: 5,
      minItems: 1,
      type: 'array'
    },
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var link = exports.link = {
  props: {
    attrs: {
      props: {
        collection: {
          optional: true,
          type: 'string'
        },
        href: {
          type: 'string',
          validatorFn: 'safeUrl'
        },
        id: {
          optional: true,
          type: 'string'
        },
        occurrenceKey: {
          optional: true,
          type: 'string'
        },
        title: {
          optional: true,
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['link']
    }
  }
};
var listItem = exports.listItem = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: [['paragraph_with_font_size', 'paragraph_with_no_marks', 'bulletList', 'orderedList', 'taskList', 'mediaSingle_caption', 'mediaSingle_full', 'codeBlock', 'extension_with_marks']],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['listItem']
    }
  }
};
var media = exports.media = {
  props: {
    attrs: [{
      props: {
        alt: {
          optional: true,
          type: 'string'
        },
        collection: {
          type: 'string'
        },
        height: {
          optional: true,
          type: 'number'
        },
        id: {
          minLength: 1,
          type: 'string'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        occurrenceKey: {
          minLength: 1,
          optional: true,
          type: 'string'
        },
        type: {
          type: 'enum',
          values: ['link', 'file']
        },
        width: {
          optional: true,
          type: 'number'
        }
      }
    }, {
      props: {
        alt: {
          optional: true,
          type: 'string'
        },
        height: {
          optional: true,
          type: 'number'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        type: {
          type: 'enum',
          values: ['external']
        },
        url: {
          type: 'string'
        },
        width: {
          optional: true,
          type: 'number'
        }
      }
    }],
    marks: {
      items: [['dataConsumer', 'link', 'annotation', 'border']],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['media']
    }
  },
  required: ['attrs']
};
var mediaGroup = exports.mediaGroup = {
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: ['media'],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['mediaGroup']
    }
  }
};
var mediaInline = exports.mediaInline = {
  props: {
    attrs: {
      props: {
        alt: {
          optional: true,
          type: 'string'
        },
        collection: {
          type: 'string'
        },
        data: {
          optional: true,
          type: 'object'
        },
        height: {
          optional: true,
          type: 'number'
        },
        id: {
          minLength: 1,
          type: 'string'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        occurrenceKey: {
          minLength: 1,
          optional: true,
          type: 'string'
        },
        type: {
          optional: true,
          type: 'enum',
          values: ['link', 'file', 'image']
        },
        url: {
          optional: true,
          type: 'string'
        },
        width: {
          optional: true,
          type: 'number'
        }
      }
    },
    marks: {
      items: [['dataConsumer', 'link', 'annotation', 'border']],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['mediaInline']
    }
  }
};
var mediaSingle = exports.mediaSingle = {
  props: {
    attrs: [{
      props: {
        layout: {
          type: 'enum',
          values: ['wide', 'full-width', 'center', 'wrap-right', 'wrap-left', 'align-end', 'align-start']
        },
        localId: {
          optional: true,
          type: 'string'
        },
        width: {
          maximum: 100,
          minimum: 0,
          optional: true,
          type: 'number'
        },
        widthType: {
          optional: true,
          type: 'enum',
          values: ['percentage']
        }
      }
    }, {
      props: {
        layout: {
          type: 'enum',
          values: ['wide', 'full-width', 'center', 'wrap-right', 'wrap-left', 'align-end', 'align-start']
        },
        localId: {
          optional: true,
          type: 'string'
        },
        width: {
          minimum: 0,
          type: 'number'
        },
        widthType: {
          type: 'enum',
          values: ['pixel']
        }
      }
    }],
    marks: {
      items: ['link'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['mediaSingle']
    }
  }
};
var mediaSingle_caption = exports.mediaSingle_caption = ['mediaSingle', {
  props: {
    content: {
      allowUnsupportedBlock: true,
      isTupleLike: true,
      items: ['media', 'caption'],
      maxItems: 2,
      minItems: 1,
      type: 'array'
    }
  }
}];
var mediaSingle_full = exports.mediaSingle_full = ['mediaSingle', {
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: ['media'],
      maxItems: 1,
      minItems: 1,
      type: 'array'
    }
  }
}];
var mediaSingle_width_type = exports.mediaSingle_width_type = ['mediaSingle', {
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: ['media'],
      maxItems: 1,
      minItems: 1,
      type: 'array'
    }
  }
}];
var mention = exports.mention = {
  props: {
    attrs: {
      props: {
        accessLevel: {
          optional: true,
          type: 'string'
        },
        id: {
          type: 'string'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        text: {
          optional: true,
          type: 'string'
        },
        userType: {
          optional: true,
          type: 'enum',
          values: ['DEFAULT', 'SPECIAL', 'APP']
        }
      }
    },
    marks: {
      items: ['annotation'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['mention']
    }
  }
};
var multiBodiedExtension = exports.multiBodiedExtension = {
  meta: {
    stage0: true
  },
  props: {
    attrs: {
      props: {
        extensionKey: {
          minLength: 1,
          type: 'string'
        },
        extensionType: {
          minLength: 1,
          type: 'string'
        },
        layout: {
          optional: true,
          type: 'enum',
          values: ['default', 'wide', 'full-width']
        },
        localId: {
          minLength: 1,
          optional: true,
          type: 'string'
        },
        parameters: {
          optional: true,
          type: 'object'
        },
        text: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      items: ['extensionFrame'],
      type: 'array'
    },
    marks: {
      items: [],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['multiBodiedExtension']
    }
  }
};
var multiBodiedExtension_root_only = exports.multiBodiedExtension_root_only = ['multiBodiedExtension', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var nestedExpand = exports.nestedExpand = {
  props: {
    attrs: {
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        title: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: 'nestedExpand_content',
    type: {
      type: 'enum',
      values: ['nestedExpand']
    }
  },
  required: ['content']
};
var nestedExpand_content = exports.nestedExpand_content = {
  allowUnsupportedBlock: true,
  items: [['paragraph_with_no_marks', 'paragraph_with_font_size', 'heading_with_no_marks', 'mediaSingle_caption', 'mediaSingle_full', 'mediaGroup', 'codeBlock', 'bulletList', 'orderedList', 'taskList', 'decisionList', 'rule', 'rule_with_attrs', 'bodiedRule', 'panel', 'blockquote', 'extension_with_marks']],
  minItems: 1,
  type: 'array'
};
var nestedExpand_with_no_marks = exports.nestedExpand_with_no_marks = ['nestedExpand', {
  props: {
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    }
  }
}];
var non_nestable_block_content = exports.non_nestable_block_content = ['paragraph_with_no_marks', 'paragraph_with_font_size', 'panel', 'blockquote', 'orderedList', 'bulletList', 'rule', 'rule_with_attrs', 'bodiedRule', 'heading_with_no_marks', 'codeBlock', 'mediaGroup', 'mediaSingle_caption', 'mediaSingle_full', 'decisionList', 'taskList', 'table', 'blockCard', 'embedCard', 'extension_with_marks'];
var orderedList = exports.orderedList = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        order: {
          minimum: 0,
          optional: true,
          type: 'number'
        }
      }
    },
    content: {
      items: ['listItem'],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['orderedList']
    }
  }
};
var panel = exports.panel = {
  props: {
    attrs: {
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        panelColor: {
          optional: true,
          type: 'string'
        },
        panelIcon: {
          optional: true,
          type: 'string'
        },
        panelIconId: {
          optional: true,
          type: 'string'
        },
        panelIconText: {
          optional: true,
          type: 'string'
        },
        panelType: {
          type: 'enum',
          values: ['info', 'note', 'tip', 'warning', 'error', 'success', 'custom']
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: [['paragraph_with_no_marks', 'paragraph_with_font_size', 'heading_with_no_marks', 'bulletList', 'orderedList', 'blockCard', 'mediaGroup', 'mediaSingle_caption', 'mediaSingle_full', 'codeBlock', 'taskList', 'rule', 'rule_with_attrs', 'bodiedRule', 'decisionList', 'extension_with_marks']],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['panel']
    }
  }
};
var panel_c1 = exports.panel_c1 = ['panel', {
  meta: {
    stage0: true
  },
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: [['paragraph_with_no_marks', 'paragraph_with_font_size', 'heading_with_no_marks', 'bulletList', 'orderedList', 'blockCard', 'mediaGroup', 'mediaSingle_caption', 'mediaSingle_full', 'codeBlock', 'taskList', 'rule', 'rule_with_attrs', 'bodiedRule', 'decisionList', 'extension_with_marks', 'table']],
      minItems: 1,
      type: 'array'
    }
  }
}];
var panel_c1_root_only = exports.panel_c1_root_only = ['panel', {
  meta: {
    stage0: true
  },
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: [['paragraph_with_no_marks', 'paragraph_with_font_size', 'heading_with_no_marks', 'bulletList', 'orderedList', 'blockCard', 'mediaGroup', 'mediaSingle_caption', 'mediaSingle_full', 'codeBlock', 'taskList', 'rule', 'rule_with_attrs', 'bodiedRule', 'decisionList', 'extension_with_marks', 'table']],
      minItems: 1,
      type: 'array'
    },
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var panel_root_only = exports.panel_root_only = ['panel', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var paragraph = exports.paragraph = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedInline: true,
      items: ['inline_content'],
      optional: true,
      type: 'array'
    },
    marks: {
      items: [],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['paragraph']
    }
  }
};
var paragraph_with_alignment = exports.paragraph_with_alignment = ['paragraph', {
  props: {
    marks: {
      items: [['fontSize', 'alignment']],
      optional: true,
      type: 'array'
    }
  }
}];
var paragraph_with_font_size = exports.paragraph_with_font_size = ['paragraph', {
  props: {
    marks: {
      items: ['fontSize'],
      optional: true,
      type: 'array'
    }
  }
}];
var paragraph_with_indentation = exports.paragraph_with_indentation = ['paragraph', {
  props: {
    marks: {
      items: [['fontSize', 'indentation']],
      optional: true,
      type: 'array'
    }
  }
}];
var paragraph_with_no_marks = exports.paragraph_with_no_marks = ['paragraph', {
  props: {
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    }
  }
}];
var placeholder = exports.placeholder = {
  props: {
    attrs: {
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        text: {
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['placeholder']
    }
  }
};
var rule = exports.rule = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['rule']
    }
  }
};
var rule_root_only = exports.rule_root_only = ['rule', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var rule_with_attrs = exports.rule_with_attrs = ['rule', {
  meta: {
    stage0: true
  },
  props: {
    attrs: {
      optional: true,
      props: {
        color: {
          optional: true,
          pattern: '^#[0-9a-fA-F]{6}$',
          type: 'string'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        style: {
          optional: true,
          type: 'enum',
          values: ['solid', 'dashed', 'dotted', 'sketch', 'fade']
        },
        weight: {
          maximum: 3,
          minimum: 1,
          optional: true,
          type: 'number'
        }
      }
    }
  }
}];
var rule_with_attrs_root_only = exports.rule_with_attrs_root_only = ['rule', {
  meta: {
    stage0: true
  },
  props: {
    attrs: {
      optional: true,
      props: {
        color: {
          optional: true,
          pattern: '^#[0-9a-fA-F]{6}$',
          type: 'string'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        style: {
          optional: true,
          type: 'enum',
          values: ['solid', 'dashed', 'dotted', 'sketch', 'fade']
        },
        weight: {
          maximum: 3,
          minimum: 1,
          optional: true,
          type: 'number'
        }
      }
    },
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
var status = exports.status = {
  props: {
    attrs: {
      props: {
        color: {
          type: 'enum',
          values: ['neutral', 'purple', 'blue', 'red', 'yellow', 'green']
        },
        localId: {
          optional: true,
          type: 'string'
        },
        style: {
          optional: true,
          type: 'string'
        },
        text: {
          minLength: 1,
          type: 'string'
        }
      }
    },
    marks: {
      items: ['annotation'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['status']
    }
  }
};
var strike = exports.strike = {
  props: {
    type: {
      type: 'enum',
      values: ['strike']
    }
  }
};
var strong = exports.strong = {
  props: {
    type: {
      type: 'enum',
      values: ['strong']
    }
  }
};
var subsup = exports.subsup = {
  props: {
    attrs: {
      props: {
        type: {
          type: 'enum',
          values: ['sub', 'sup']
        }
      }
    },
    type: {
      type: 'enum',
      values: ['subsup']
    }
  }
};
var syncBlock = exports.syncBlock = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        },
        resourceId: {
          type: 'string'
        }
      }
    },
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['syncBlock']
    }
  }
};
var table = exports.table = {
  props: {
    attrs: {
      optional: true,
      props: {
        displayMode: {
          optional: true,
          type: 'enum',
          values: ['default', 'fixed']
        },
        isNumberColumnEnabled: {
          optional: true,
          type: 'boolean'
        },
        layout: {
          optional: true,
          type: 'enum',
          values: ['wide', 'full-width', 'center', 'align-end', 'align-start', 'default']
        },
        localId: {
          minLength: 1,
          optional: true,
          type: 'string'
        },
        width: {
          optional: true,
          type: 'number'
        }
      }
    },
    content: {
      items: ['tableRow'],
      minItems: 1,
      type: 'array'
    },
    marks: {
      items: ['fragment'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['table']
    }
  }
};
var tableCell = exports.tableCell = {
  props: {
    attrs: {
      optional: true,
      props: {
        background: {
          optional: true,
          type: 'string'
        },
        colspan: {
          optional: true,
          type: 'number'
        },
        colwidth: {
          items: [{
            type: 'number'
          }],
          optional: true,
          type: 'array'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        rowspan: {
          optional: true,
          type: 'number'
        },
        valign: {
          optional: true,
          type: 'enum',
          values: ['top', 'middle', 'bottom']
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: [['paragraph_with_no_marks', 'paragraph_with_alignment', 'panel', 'blockquote', 'orderedList', 'bulletList', 'rule', 'rule_with_attrs', 'bodiedRule', 'heading_with_no_marks', 'heading_with_alignment', 'heading_with_indentation', 'codeBlock', 'mediaSingle_caption', 'mediaSingle_full', 'mediaGroup', 'decisionList', 'taskList', 'blockCard', 'embedCard', 'extension_with_marks', 'nestedExpand_with_no_marks']],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['tableCell']
    }
  },
  required: ['content']
};
var tableHeader = exports.tableHeader = {
  props: {
    attrs: {
      optional: true,
      props: {
        background: {
          optional: true,
          type: 'string'
        },
        colspan: {
          optional: true,
          type: 'number'
        },
        colwidth: {
          items: [{
            type: 'number'
          }],
          optional: true,
          type: 'array'
        },
        localId: {
          optional: true,
          type: 'string'
        },
        rowspan: {
          optional: true,
          type: 'number'
        },
        valign: {
          optional: true,
          type: 'enum',
          values: ['top', 'middle', 'bottom']
        }
      }
    },
    content: {
      items: [['paragraph_with_no_marks', 'paragraph_with_alignment', 'panel', 'blockquote', 'orderedList', 'bulletList', 'rule', 'rule_with_attrs', 'bodiedRule', 'heading_with_no_marks', 'heading_with_alignment', 'heading_with_indentation', 'codeBlock', 'mediaSingle_caption', 'mediaSingle_full', 'mediaGroup', 'decisionList', 'taskList', 'blockCard', 'embedCard', 'extension_with_marks', 'nestedExpand_with_no_marks', 'nestedExpand']],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['tableHeader']
    }
  },
  required: ['content']
};
var tableRow = exports.tableRow = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      items: [['tableCell', 'tableHeader']],
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['tableRow']
    }
  }
};
var taskItem = exports.taskItem = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        },
        state: {
          type: 'enum',
          values: ['TODO', 'DONE']
        }
      }
    },
    content: {
      allowUnsupportedInline: true,
      items: ['inline_content'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['taskItem']
    }
  }
};
var taskList = exports.taskList = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: [['taskItem', 'taskList', 'blockTaskItem']],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['taskList']
    }
  }
};
var text = exports.text = {
  props: {
    marks: {
      items: [],
      optional: true,
      type: 'array'
    },
    text: {
      minLength: 1,
      type: 'string'
    },
    type: {
      type: 'enum',
      values: ['text']
    }
  }
};
var text_code_inline = exports.text_code_inline = ['text', {
  props: {
    marks: {
      items: [['code', 'link', 'annotation']],
      optional: true,
      type: 'array'
    }
  }
}];
var text_formatted = exports.text_formatted = ['text', {
  props: {
    marks: {
      items: [['link', 'em', 'strong', 'strike', 'subsup', 'underline', 'textColor', 'annotation', 'backgroundColor']],
      optional: true,
      type: 'array'
    }
  }
}];
var text_link_inline = exports.text_link_inline = ['text', {
  props: {
    marks: {
      items: ['link'],
      optional: true,
      type: 'array'
    }
  }
}];
var text_with_no_marks = exports.text_with_no_marks = ['text', {
  props: {
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    }
  }
}];
var textColor = exports.textColor = {
  props: {
    attrs: {
      props: {
        color: {
          pattern: '^#[0-9a-fA-F]{6}$',
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['textColor']
    }
  }
};
var underline = exports.underline = {
  props: {
    type: {
      type: 'enum',
      values: ['underline']
    }
  }
};