UNPKG

@atlaskit/adf-schema

Version:

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

2,236 lines 45.6 kB
export var alignment = {
  props: {
    attrs: {
      props: {
        align: {
          type: 'enum',
          values: ['center', 'end']
        }
      }
    },
    type: {
      type: 'enum',
      values: ['alignment']
    }
  }
};
export var annotation = {
  props: {
    attrs: {
      props: {
        annotationType: {
          type: 'enum',
          values: ['inlineComment']
        },
        id: {
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['annotation']
    }
  }
};
export var backgroundColor = {
  props: {
    attrs: {
      props: {
        color: {
          pattern: '^#[0-9a-fA-F]{6}$',
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['backgroundColor']
    }
  }
};
export var 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'];
export var 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']
};
export var 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']
    }
  }
};
export var blockRootOnly = ['multiBodiedExtension'];
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var bodiedExtension_root_only = ['bodiedExtension', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: [['breakout', 'dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
export var bodiedExtension_with_marks = ['bodiedExtension', {
  props: {
    marks: {
      items: [['dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
export var 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']
    }
  }
};
export var bodiedRule_root_only = ['bodiedRule', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var breakout = {
  props: {
    attrs: {
      props: {
        mode: {
          type: 'enum',
          values: ['wide', 'full-width']
        },
        width: {
          optional: true,
          type: 'number'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['breakout']
    }
  }
};
export var bulletList = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      items: ['listItem'],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['bulletList']
    }
  }
};
export var 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']
    }
  }
};
export var code = {
  props: {
    type: {
      type: 'enum',
      values: ['code']
    }
  }
};
export var 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']
    }
  }
};
export var codeBlock_root_only = ['codeBlock', {
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
export var confluenceInlineComment = {
  props: {
    attrs: {
      props: {
        reference: {
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['confluenceInlineComment']
    }
  }
};
export var dataConsumer = {
  props: {
    attrs: {
      props: {
        sources: {
          items: [{
            type: 'string'
          }],
          minItems: 1,
          type: 'array'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['dataConsumer']
    }
  }
};
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var decisionList = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: ['decisionItem'],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['decisionList']
    }
  }
};
export var 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]
    }
  }
};
export var em = {
  props: {
    type: {
      type: 'enum',
      values: ['em']
    }
  }
};
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var expand_root_only = ['expand', {
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
export var 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']
    }
  }
};
export var extension_root_only = ['extension', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: [['breakout', 'dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
export var extension_with_marks = ['extension', {
  props: {
    marks: {
      items: [['dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
export var 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']
    }
  }
};
export var fontSize = {
  props: {
    attrs: {
      props: {
        fontSize: {
          type: 'enum',
          values: ['small']
        }
      }
    },
    type: {
      type: 'enum',
      values: ['fontSize']
    }
  }
};
export var fragment = {
  props: {
    attrs: {
      props: {
        localId: {
          minLength: 1,
          type: 'string'
        },
        name: {
          optional: true,
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['fragment']
    }
  }
};
export var hardBreak = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        text: {
          optional: true,
          type: 'enum',
          values: ['\n']
        }
      }
    },
    type: {
      type: 'enum',
      values: ['hardBreak']
    }
  }
};
export var 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']
    }
  }
};
export var heading_with_alignment = ['heading', {
  props: {
    marks: {
      items: ['alignment'],
      optional: true,
      type: 'array'
    }
  }
}];
export var heading_with_indentation = ['heading', {
  props: {
    marks: {
      items: ['indentation'],
      optional: true,
      type: 'array'
    }
  }
}];
export var heading_with_no_marks = ['heading', {
  props: {
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    }
  }
}];
export var indentation = {
  props: {
    attrs: {
      props: {
        level: {
          maximum: 6,
          minimum: 1,
          type: 'number'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['indentation']
    }
  }
};
export var inline_content = ['text_formatted', 'text_code_inline', 'date', 'emoji', 'hardBreak', 'inlineCard', 'mention', 'placeholder', 'status', 'inlineExtension_with_marks', 'mediaInline'];
export var 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']
};
export var 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']
    }
  }
};
export var inlineExtension_with_marks = ['inlineExtension', {
  props: {
    marks: {
      items: [['dataConsumer', 'fragment']],
      optional: true,
      type: 'array'
    }
  }
}];
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var layoutSection_full = ['layoutSection', {
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: ['layoutColumn'],
      maxItems: 3,
      minItems: 2,
      type: 'array'
    },
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
export var 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'
    }
  }
}];
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var 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']
};
export var mediaGroup = {
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: ['media'],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['mediaGroup']
    }
  }
};
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var mediaSingle_caption = ['mediaSingle', {
  props: {
    content: {
      allowUnsupportedBlock: true,
      isTupleLike: true,
      items: ['media', 'caption'],
      maxItems: 2,
      minItems: 1,
      type: 'array'
    }
  }
}];
export var mediaSingle_full = ['mediaSingle', {
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: ['media'],
      maxItems: 1,
      minItems: 1,
      type: 'array'
    }
  }
}];
export var mediaSingle_width_type = ['mediaSingle', {
  props: {
    content: {
      allowUnsupportedBlock: true,
      items: ['media'],
      maxItems: 1,
      minItems: 1,
      type: 'array'
    }
  }
}];
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var multiBodiedExtension_root_only = ['multiBodiedExtension', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
export var nestedExpand = {
  props: {
    attrs: {
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        title: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: 'nestedExpand_content',
    type: {
      type: 'enum',
      values: ['nestedExpand']
    }
  },
  required: ['content']
};
export var 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'
};
export var nestedExpand_with_no_marks = ['nestedExpand', {
  props: {
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    }
  }
}];
export var 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'];
export var 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']
    }
  }
};
export var 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']
    }
  }
};
export var 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'
    }
  }
}];
export var 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'
    }
  }
}];
export var panel_root_only = ['panel', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
export var 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']
    }
  }
};
export var paragraph_with_alignment = ['paragraph', {
  props: {
    marks: {
      items: [['fontSize', 'alignment']],
      optional: true,
      type: 'array'
    }
  }
}];
export var paragraph_with_font_size = ['paragraph', {
  props: {
    marks: {
      items: ['fontSize'],
      optional: true,
      type: 'array'
    }
  }
}];
export var paragraph_with_indentation = ['paragraph', {
  props: {
    marks: {
      items: [['fontSize', 'indentation']],
      optional: true,
      type: 'array'
    }
  }
}];
export var paragraph_with_no_marks = ['paragraph', {
  props: {
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    }
  }
}];
export var placeholder = {
  props: {
    attrs: {
      props: {
        localId: {
          optional: true,
          type: 'string'
        },
        text: {
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['placeholder']
    }
  }
};
export var rule = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['rule']
    }
  }
};
export var rule_root_only = ['rule', {
  meta: {
    stage0: true
  },
  props: {
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    }
  }
}];
export var 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'
        }
      }
    }
  }
}];
export var 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'
    }
  }
}];
export var 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']
    }
  }
};
export var strike = {
  props: {
    type: {
      type: 'enum',
      values: ['strike']
    }
  }
};
export var strong = {
  props: {
    type: {
      type: 'enum',
      values: ['strong']
    }
  }
};
export var subsup = {
  props: {
    attrs: {
      props: {
        type: {
          type: 'enum',
          values: ['sub', 'sup']
        }
      }
    },
    type: {
      type: 'enum',
      values: ['subsup']
    }
  }
};
export var syncBlock = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        },
        resourceId: {
          type: 'string'
        }
      }
    },
    marks: {
      items: ['breakout'],
      optional: true,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['syncBlock']
    }
  }
};
export var 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']
    }
  }
};
export var 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']
};
export var 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']
};
export var tableRow = {
  props: {
    attrs: {
      optional: true,
      props: {
        localId: {
          optional: true,
          type: 'string'
        }
      }
    },
    content: {
      items: [['tableCell', 'tableHeader']],
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['tableRow']
    }
  }
};
export var 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']
    }
  }
};
export var taskList = {
  props: {
    attrs: {
      props: {
        localId: {
          type: 'string'
        }
      }
    },
    content: {
      allowUnsupportedBlock: true,
      items: [['taskItem', 'taskList', 'blockTaskItem']],
      minItems: 1,
      type: 'array'
    },
    type: {
      type: 'enum',
      values: ['taskList']
    }
  }
};
export var text = {
  props: {
    marks: {
      items: [],
      optional: true,
      type: 'array'
    },
    text: {
      minLength: 1,
      type: 'string'
    },
    type: {
      type: 'enum',
      values: ['text']
    }
  }
};
export var text_code_inline = ['text', {
  props: {
    marks: {
      items: [['code', 'link', 'annotation']],
      optional: true,
      type: 'array'
    }
  }
}];
export var text_formatted = ['text', {
  props: {
    marks: {
      items: [['link', 'em', 'strong', 'strike', 'subsup', 'underline', 'textColor', 'annotation', 'backgroundColor']],
      optional: true,
      type: 'array'
    }
  }
}];
export var text_link_inline = ['text', {
  props: {
    marks: {
      items: ['link'],
      optional: true,
      type: 'array'
    }
  }
}];
export var text_with_no_marks = ['text', {
  props: {
    marks: {
      items: [],
      maxItems: 0,
      optional: true,
      type: 'array'
    }
  }
}];
export var textColor = {
  props: {
    attrs: {
      props: {
        color: {
          pattern: '^#[0-9a-fA-F]{6}$',
          type: 'string'
        }
      }
    },
    type: {
      type: 'enum',
      values: ['textColor']
    }
  }
};
export var underline = {
  props: {
    type: {
      type: 'enum',
      values: ['underline']
    }
  }
};