definePageLayout() k deklaraci rozvržení pro objekt, který vlastníte, nebo definePageLayoutTab() k přidání jedné karty do rozvržení, které již existuje (vašeho nebo standardního rozvržení Twenty).
definePageLayout
Použijte to, když vlastníte celou stránku s detailem záznamu – typicky pro vlastní objekt, který jste si definovali sami.src/page-layouts/example-record-page-layout.ts
Hlavní body
typeje jedním z'RECORD_INDEX','RECORD_PAGE','DASHBOARD'nebo'STANDALONE_PAGE'. Použijte'RECORD_PAGE'k přizpůsobení detailního zobrazení konkrétního objektu.objectUniversalIdentifierurčuje, na který objekt se toto rozvržení vztahuje.- Každá
tabdefinuje sekci stránky stitle,positionalayoutMode:VERTICAL_LISTpro stránky záznamů a samostatné stránky,GRIDpro řídicí panely aCANVASpro jeden widget, který by měl vyplnit zobrazovací oblast karty. KartaVERTICAL_LISTřadí widgety svisle. Vestavěné widgety, které spravují vlastní posouvání, jako jsou časové osy, soubory, poznámky, úkoly a pracovní postupy, vyplní jednu zobrazovací oblast; pole, frontové komponenty, grafy a další widgety přizpůsobené obsahu se vykreslí ve výšce obsahu nebo nakonfigurované výšce. KartaGRIDvždy rozvrhne své widgety jako karty v mřížce s 12 sloupci. WidgetCANVASnemá explicitní pozici; pokud karta plátna obsahuje více widgetů, vykreslí se ve výšce svého obsahu místo toho, aby vyplnily oblast zobrazení. - Nastavte
layoutModeexplicitně. Pokud jej vynecháte, získáteVERTICAL_LISTnaSTANDALONE_PAGEaGRIDvšude jinde, což je na stránce záznamu jen zřídka to, co chcete. - Každý
widgetuvnitř karty může vykreslit front component, seznam relací nebo jiné vestavěné typy widgetů. - Widget
FRONT_COMPONENTmůže nastavitheaderCommandMenuItemUniversalIdentifiersna seřazené pole univerzálních identifikátorů položek nabídky příkazů ze stejné aplikace. Tyto akce se v záhlaví karty widgetu zobrazují jako tlačítka s ikonami a zachovávají svou dostupnost na úrovni příkazů i kontroly oprávnění. Identifikátory musí být jedinečné a při instalaci aplikace musí být vyřešitelné. positionna kartách určuje jejich pořadí. Použijte vyšší hodnoty (např. 50) pro umístění vlastních karet za vestavěné.
Widgety polí
WidgetFIELD vykresluje jedno pole záznamu. U relačních polí může také vložit seznam souvisejících záznamů:
fieldMetadataIdpřijímá univerzální identifikátor pole na objektu daného rozložení.fieldDisplayModeje jednou z hodnot'FIELD','CARD','EDITOR','VIEW'nebo'TABLE'.TABLEvkládá zobrazení, které vypisuje záznamy relačního pole typu 1:N.nestedRelationFieldMetadataIdje volitelný a přijímá univerzální identifikátor pole relace typu 1:N na cílovém objektu relace, aby bylo možné vypsat záznamy o dva relační skoky dál (např. stránka Společnosti, která vypisuje příležitosti lidí dané společnosti, nebo stránka Osoby, která vypisuje příležitosti společnosti dané osoby). První skok může být relační pole typu 1:N nebo N:1, druhý musí být 1:N (spojovací relace nejsou podporovány) a vyžadujefieldDisplayMode: 'TABLE'— kombinace s jakýmkoli jiným režimem zobrazení je validační chyba, protože vnořený widget se vždy vykresluje jako vložené zobrazení.
definePageLayoutTab
Použijte to, když chcete do existujícího rozvržení pouze přidat kartu – například kartu analytiky na standardní stránce Company nebo kartu se souhrnem AI připojenou k rozvržení vašeho vlastního objektu.src/page-layouts/example-extra-tab.ts
Hlavní body
-
pageLayoutUniversalIdentifierje povinný a musí odkazovat na rozvržení stránky, které již existuje v době instalace – buď na standardní rozvržení Twenty, nebo na rozvržení definované vaší vlastní aplikací. Meziaplikační odkazy na rozvržení ve vlastnictví jiné nainstalované aplikace nejsou v současnosti podporovány. Když nadřazené rozvržení chybí, instalace selže s jasnou validační chybou. -
Pro standardní rozvržení Twenty importujte identifikátory z
twenty-sdk/define:Každá položka rozvržení také zpřístupňuje svétabsa jejichwidgets, takže můžete odkazovat na libovolnou úroveň:K dispozici je také krátký aliasSTANDARD_PAGE_LAYOUT: -
widgetsmají rozsah pouze pro tuto kartu – odkazují na front components, zobrazení apod. úplně stejně jako widgety definované přímo vdefinePageLayout. -
positionurčuje pořadí vzhledem ke stávajícím kartám v cílovém rozvržení. Zvolte hodnotu, která umístí vaši kartu tam, kde ji chcete mít, relativně k vestavěným kartám. -
Použijte to místo
definePageLayout, když chcete do existujícího rozvržení pouze přidat. PoužijtedefinePageLayout, když vlastníte celé rozvržení.