Todas as coleções

Criando e copiando entidades

Use buildprint new e buildprint copy para criar entidades do Bubble válidas com IDs novos e JSON canônico. Esses comandos são executados dentro de um branch workspace e atualizam os arquivos locais diretamente.

Após criar ou copiar entidades, inspecione o diff, execute buildprint check e, em seguida, buildprint apply.

Raízes de canvas

Crie páginas, elementos reutilizáveis, visualizações móveis e reutilizáveis móveis:

buildprint new page --name "Checkout"
buildprint new page --name "Dashboard" --layout column
buildprint new reusable --name "Header" --element-type Group
buildprint new reusable --name "Create Modal" --element-type Popup
buildprint new mobile --name "Home"
buildprint new mobile_reusable --name "Account Sheet" --element-type Sheet

--layout aceita column, row ou fixed. Use --copy <id-or-name> para clonar uma raiz existente com IDs novos:

buildprint new page --name "Dashboard Copy" --copy "Dashboard"
buildprint new reusable --name "Sidebar Copy" --copy "Sidebar"

Tipos de dados

buildprint new data_type --name "Project"
buildprint new data_type --name "Invoice" --field total:number --field owner:user
buildprint new data_type --name "Project API" --exposed-api --field status:option.project_status

Cada --field usa display:value, por exemplo owner:user. Novos tipos de dados incluem o scaffolding padrão de regras de privacidade. Revise as regras de privacidade antes de aplicar.

Option sets

buildprint new option_set --name "Project Status"
buildprint new option_set --name "Project Status" --value Open --value Closed
buildprint new option_set --name "Project Status" --value "In Progress:in_progress"
buildprint new option_set --name "Evidence Strength" --value High --value Moderate --attribute color:text --attribute threshold:number

Os valores podem ser rótulos de exibição simples ou Display:db_value. Os atributos usam display:value.

Workflows

buildprint new workflow --path api --name "Use Tool" --type CustomEvent
buildprint new workflow --path api --folder "Tools" --name "Use Tool" --type CustomEvent --param toolCallName:text --param toolCallArguments:text --actions 2
buildprint new workflow --path api --name "Find User" --type CustomEvent --param email:text --returnParam user:user --actions 1
buildprint new workflow --path api --name "Lookup User" --type APIEvent --param email:text --returnParam user:user
buildprint new workflow --path pages/home/workflows --name "Page Loaded" --type PageLoaded
buildprint new workflow --path pages/home/workflows/modals --name "Open Modal" --type ConditionTrue

Flags importantes:

  • --path <path> aponta para o proprietário do workflow, como api, pages/home/workflows, ou uma pasta de workflow existente.

  • --folder <folder> cria ou usa uma pasta de workflow sob o proprietário.

  • --type <type> é o tipo de evento de workflow do Bubble, como APIEvent, CustomEvent, PageLoaded ou ConditionTrue.

  • --param <name:type> adiciona entradas de workflow. Use [] para listas e ? para valores opcionais, por exemplo users:user[]?.

  • --returnParam <name:type> é suportado para APIEvent e CustomEvent.

  • --actions <count> cria arquivos de ação reservados (placeholders).

Ações

buildprint new action --path api/tools/use-tool --type TriggerCustomEvent
buildprint new action --path api/tools/use-tool --type ScheduleAPIEvent --name "Schedule audit event"
buildprint new action --path pages/home/workflows/load-page --after 0 --type HideElement
buildprint new action --path pages/home/workflows/modals/open-popup/workflow.json --before bpAction123 --type ShowElement

--after e --before aceitam uma chave de etapa baseada em zero ou um ID de ação e não podem ser usados juntos. A inserção no meio de um workflow é recusada quando ações posteriores contêm referências posicionais a etapas anteriores que se tornariam inseguras.

Pastas de workflow

buildprint new folder --path api --name "Tools"
buildprint new folder --path pages/home/workflows --name "Modals"

O caminho deve ser uma raiz proprietária de workflow, não o caminho de uma pasta existente.

Testes de projeto

Crie testes de projeto locais do Buildprint e componentes de teste reutilizáveis em tests/:

buildprint new test --name "Checkout"
buildprint new test --name "Checkout" --folder smoke
buildprint new test --component --name "Login"
buildprint new test-step --path tests/smoke/checkout.json --type test --instruction "Open checkout"
buildprint new test-step --path tests/smoke/checkout.json --type component --component login

test-step suporta os tipos de etapa test, condition e component. Opções úteis incluem --parent, --condition met|not_met, --details, --tips e --on-failure stop|continue.

Copiando raízes

buildprint copy root --kind page --source "Marketing Home" --name "Marketing Home Copy"
buildprint copy root --kind reusable --source "Sidebar" --name "Sidebar Copy"

--kind aceita page, mobile, reusable e mobile_reusable. --source aceita um ID, chave bruta ou nome de exibição.

Copiando workflows, elementos e ações

buildprint copy workflow --source api/tools/use-tool --path api --folder "Backups" --name "Use Tool Copy"
buildprint copy element --source pages/home/elements/sidebar --path pages/home
buildprint copy action --from api/tools/use-tool --source 0 --source 1 --path pages/home/workflows/load-page --after 1

A cópia reescreve os IDs, remove metadados de alias e preserva referências seguras. A cópia de ações recusa referências inseguras de etapas anteriores que apontam para fora do conjunto copiado.

Gerando IDs manualmente

Para edições manuais, gere novos IDs do Buildprint com:

buildprint utils generate-ids
buildprint utils generate-ids 20

N deve estar entre 1 e 1000. Prefira new ou copy quando possível, pois eles também criam o formato de arquivo circundante correto.

Isso foi útil?