docs: function tableFromProps(propsObj) {
    const headers = ["Prop Name", "Type", "Default", "Require", "Description"]
    let rows = []
  
    // construct rows of table from object of properties
    for(const prop in propsObj) {
      // Don't document properties with `@ignore` tag
      if (propsObj[prop].tags.ignore) {
        continue
      }
      
      let cols = []
      cols.push(`${prop}`) // property name
      cols.push(propsObj[prop]["type"] ? propsObj[prop]["type"]["name"].replace(/\|/g, ',') : 'unknown') // type of the property
      cols.push(propsObj[prop]["defaultValue"] ? propsObj[prop]["defaultValue"]["value"] : 'n/a') // property default value
      cols.push(propsObj[prop]["required"] ? 'true' : 'false') // property is required
      cols.push(`${propsObj[prop]["description"]}`) // description of the property
      
      rows.push(cols)
    }
  
    return rows.length > 0 ? {table: {headers, rows}} : null
  }