feat(brandbook): anadir campo de URL de LinkedIn tambien en seccion LinkedIn B2B
This commit is contained in:
@@ -2074,68 +2074,111 @@ export default function BrandZone({
|
|||||||
)}
|
)}
|
||||||
|
|
||||||
{section === 'b2b' && (
|
{section === 'b2b' && (
|
||||||
<div className="grid gap-3 sm:grid-cols-2">
|
<div className="space-y-4">
|
||||||
<Field label="Temas LinkedIn">
|
<div className="rounded-xl border border-blue-200/80 bg-gradient-to-br from-blue-50/60 via-white to-sky-50/50 p-4 shadow-xs">
|
||||||
<textarea
|
<div className="flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3">
|
||||||
className={areaCls}
|
<div className="flex-1">
|
||||||
value={listToLines(book.linkedin_themes)}
|
<label className="block text-xs font-semibold text-gray-800 mb-1">
|
||||||
onChange={(e) =>
|
URL de la Empresa / Página en LinkedIn (o Perfil B2B)
|
||||||
patch({ linkedin_themes: linesToList(e.target.value) })
|
</label>
|
||||||
}
|
<div className="flex gap-2 items-center">
|
||||||
/>
|
<input
|
||||||
</Field>
|
type="url"
|
||||||
<Field label="Formatos LinkedIn">
|
placeholder="https://www.linkedin.com/company/tu-empresa/"
|
||||||
<textarea
|
className="flex-1 rounded-lg border border-gray-300 bg-white px-3 py-2 text-xs text-gray-900 shadow-xs focus:border-brand-500 focus:outline-hidden focus:ring-1 focus:ring-brand-500"
|
||||||
className={areaCls}
|
value={book.channel_handles.linkedin || ''}
|
||||||
value={listToLines(book.linkedin_formats)}
|
onChange={(e) =>
|
||||||
onChange={(e) =>
|
patch({
|
||||||
patch({ linkedin_formats: linesToList(e.target.value) })
|
channel_handles: {
|
||||||
}
|
...book.channel_handles,
|
||||||
/>
|
linkedin: e.target.value,
|
||||||
</Field>
|
},
|
||||||
<Field label="Thought leadership">
|
})
|
||||||
<textarea
|
}
|
||||||
className={areaCls}
|
/>
|
||||||
value={listToLines(book.thought_leadership)}
|
{book.channel_handles.linkedin && (
|
||||||
onChange={(e) =>
|
<a
|
||||||
patch({ thought_leadership: linesToList(e.target.value) })
|
href={book.channel_handles.linkedin}
|
||||||
}
|
target="_blank"
|
||||||
/>
|
rel="noopener noreferrer"
|
||||||
</Field>
|
className="inline-flex items-center gap-1.5 px-3 py-2 text-xs font-medium text-blue-700 bg-blue-100 hover:bg-blue-200 rounded-lg transition-colors shrink-0"
|
||||||
<Field label="Buyer roles">
|
title="Abrir página en LinkedIn"
|
||||||
<textarea
|
>
|
||||||
className={areaCls}
|
<ExternalLink className="w-3.5 h-3.5" />
|
||||||
value={listToLines(book.buyer_roles)}
|
<span>Abrir</span>
|
||||||
onChange={(e) =>
|
</a>
|
||||||
patch({ buyer_roles: linesToList(e.target.value) })
|
)}
|
||||||
}
|
</div>
|
||||||
/>
|
<p className="mt-1 text-[11px] text-gray-500">
|
||||||
</Field>
|
Este campo está sincronizado en tiempo real con la pestaña <strong>Canales</strong> (`channel_handles.linkedin`).
|
||||||
<Field label="Ángulos casos de estudio">
|
</p>
|
||||||
<textarea
|
</div>
|
||||||
className={areaCls}
|
</div>
|
||||||
value={listToLines(book.case_study_angles)}
|
</div>
|
||||||
onChange={(e) =>
|
|
||||||
patch({ case_study_angles: linesToList(e.target.value) })
|
<div className="grid gap-3 sm:grid-cols-2">
|
||||||
}
|
<Field label="Temas LinkedIn">
|
||||||
/>
|
<textarea
|
||||||
</Field>
|
className={areaCls}
|
||||||
<Field label="CTAs LinkedIn">
|
value={listToLines(book.linkedin_themes)}
|
||||||
<textarea
|
onChange={(e) =>
|
||||||
className={areaCls}
|
patch({ linkedin_themes: linesToList(e.target.value) })
|
||||||
value={listToLines(book.linkedin_cta)}
|
}
|
||||||
onChange={(e) =>
|
/>
|
||||||
patch({ linkedin_cta: linesToList(e.target.value) })
|
</Field>
|
||||||
}
|
<Field label="Formatos LinkedIn">
|
||||||
/>
|
<textarea
|
||||||
</Field>
|
className={areaCls}
|
||||||
<Field label="ABM / cuentas objetivo" className="sm:col-span-2">
|
value={listToLines(book.linkedin_formats)}
|
||||||
<textarea
|
onChange={(e) =>
|
||||||
className={areaCls}
|
patch({ linkedin_formats: linesToList(e.target.value) })
|
||||||
value={book.abm_notes}
|
}
|
||||||
onChange={(e) => patch({ abm_notes: e.target.value })}
|
/>
|
||||||
/>
|
</Field>
|
||||||
</Field>
|
<Field label="Thought leadership">
|
||||||
|
<textarea
|
||||||
|
className={areaCls}
|
||||||
|
value={listToLines(book.thought_leadership)}
|
||||||
|
onChange={(e) =>
|
||||||
|
patch({ thought_leadership: linesToList(e.target.value) })
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
</Field>
|
||||||
|
<Field label="Buyer roles">
|
||||||
|
<textarea
|
||||||
|
className={areaCls}
|
||||||
|
value={listToLines(book.buyer_roles)}
|
||||||
|
onChange={(e) =>
|
||||||
|
patch({ buyer_roles: linesToList(e.target.value) })
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
</Field>
|
||||||
|
<Field label="Ángulos casos de estudio">
|
||||||
|
<textarea
|
||||||
|
className={areaCls}
|
||||||
|
value={listToLines(book.case_study_angles)}
|
||||||
|
onChange={(e) =>
|
||||||
|
patch({ case_study_angles: linesToList(e.target.value) })
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
</Field>
|
||||||
|
<Field label="CTAs LinkedIn">
|
||||||
|
<textarea
|
||||||
|
className={areaCls}
|
||||||
|
value={listToLines(book.linkedin_cta)}
|
||||||
|
onChange={(e) =>
|
||||||
|
patch({ linkedin_cta: linesToList(e.target.value) })
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
</Field>
|
||||||
|
<Field label="ABM / cuentas objetivo" className="sm:col-span-2">
|
||||||
|
<textarea
|
||||||
|
className={areaCls}
|
||||||
|
value={book.abm_notes}
|
||||||
|
onChange={(e) => patch({ abm_notes: e.target.value })}
|
||||||
|
/>
|
||||||
|
</Field>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user