Criando e copiando entidades
Os comandos new e copy criam ou duplicam entidades do Bubble com o formato correto e novos ids. Eles atualizam o workspace localmente para que um buildprint apply subsequente envie as alterações de volta para o Bubble.
Ambos os comandos devem ser executados de dentro de um workspace de branch. O nome da pasta da branch deve corresponder à branch do git atual - se não, a CLI imprimirá o comando exato de git checkout ou cd para executar.
Criando entidades: new
Páginas, elementos reutilizáveis, visualizações mobile
buildprint new page --name "Checkout"
buildprint new reusable --name "Header" --element-type Group
buildprint new mobile_reusable --name "Nav" --element-type Group
buildprint new mobile --name "Home"Use --copy <id-or-name> em qualquer um destes para clonar uma raiz existente com novos ids.
Tipos de dados
buildprint new data_type --name Order --field status:text --field owner:user --field total:numberCada --field é display:value (por exemplo owner:user). Repita a flag para cada campo. Passe --exposed-api para expor o tipo na Data API.
Novos tipos de dados vêm com uma regra de privacidade padrão: todos podem ver o registro, e apenas o criador é visível por padrão. Restrinja-a no arquivo do workspace antes de aplicar.
Option sets
buildprint new option_set --name OrderStatus --value Pending --value Paid --value CancelledOs valores aceitam um display simples (Paid, o valor do banco de dados é derivado automaticamente) ou um par explícito Display:db_value. Repita --value para cada opção. Use --attribute display:value para definir atributos no set.
Workflows
buildprint new workflow --path api --name "Create Order" --type APIEvent --param items:text[] --returnParam id:text
buildprint new workflow --path pages/home/workflows --name "Click Buy" --type ButtonClickedFlags importantes:
--path— raiz proprietária.apipara workflows de API,pages/<page-id>/workflows,element-definitions/<id>/workflows, e assim por diante. Subpastas são permitidas (pages/home/workflows/modals).--type— um dos tipos de workflow do Bubble (APIEvent,CustomEvent,ButtonClicked,PageLoaded,ConditionTrue, etc).--param <spec>— repita para cada parâmetro de entrada. Sintaxe da spec:name:type, com[]opcional para lista e?para anulável. Exemplo:users:user[]?. Coloque o valor entre aspas no zsh.--returnParam <spec>— válido apenas paraAPIEvent(backend workflow) eCustomEvent(evento personalizado). Adiciona uma ação de retorno final automaticamente, bem como as propriedades de dados de retorno para eventos personalizados.--folder <name>— coloca o workflow em uma subpasta nomeada sob o caminho proprietário.--actions <count>— preenche o workflow com N ações vazias.
Ações
buildprint new action --path api/create-order --type CreateThing
buildprint new action --path api/create-order --type SetState --after 2--path— caminho para o arquivo do workflow.--after <step-or-id>e--before <step-or-id>— mutuamente exclusivos. Aceita um índice de passo baseado em zero ou um id de ação.--name <override>— dá à ação um nome de exibição explícito.
A inserção no meio de um workflow é recusada se qualquer ação posterior referenciar seus predecessores, pois o deslocamento dos passos quebraria silenciosamente essas referências. O erro lista as ações de bloqueio; resolva-as (ou adicione ao final) e tente novamente.
Pastas
buildprint new folder --path api --name "Billing"Cria uma pasta de workflow sob o caminho proprietário fornecido. Falha se a pasta já existir.
Copiando entidades: copy
Copiar uma raiz
buildprint copy root --kind page --source "Checkout" --name "Checkout Copy"--kind é um de page, mobile, reusable, mobile_reusable. --source aceita um nome de exibição ou id.
Copiar um workflow
buildprint copy workflow --source api/create-order --path api --folder "Billing" --name "create-order-v2"Duplica um workflow em um proprietário ou pasta diferente, reescrevendo ids e removendo metadados de alias.
Copiar uma subárvore de elementos
buildprint copy element --source pages/home/elements/grp_header --path pages/checkoutCopia o elemento e seus descendentes sob o pai de destino.
Copiar ações
buildprint copy action --from api/create-order --path api/refund-order --source 0 --source 1 --after 2--source— repita para cada passo que deseja copiar. Aceita um índice de passo ou um id de ação.--name— permitido apenas ao copiar exatamente uma ação.--aftere--before— pontos de inserção mutuamente exclusivos. Omita para adicionar ao final.
O comando copy recusa mover ações cujas referências de PreviousStep apontem para fora do conjunto copiado — o workflow resultante ficaria quebrado. A mensagem de erro informa qual ação está bloqueando e por quê.
Gerando ids manualmente
Se você precisar de novos ids do Buildprint para uma edição manual, use buildprint utils generate-ids <n>. n deve estar entre 1 e 100. Mantenha-os curtos.
Você também pode criar quaisquer entidades manualmente. O buildprint new é simplesmente um atalho para facilitar na maioria dos casos.