@go-labs-sg/bb 2.9.0 → 2.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/command-manifest.json +46 -0
- package/command-reference.md +8 -0
- package/dist/commands.js +4 -0
- package/dist/index.js +10 -1
- package/dist/registry/index.js +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -156,6 +156,7 @@ returns its complete retained payload, which may contain personal information.
|
|
|
156
156
|
|
|
157
157
|
```bash
|
|
158
158
|
bb inbound source list
|
|
159
|
+
bb inbound source create --name "Website inbound" --formId "AbCdEfGh" --allow-state-change
|
|
159
160
|
bb inbound source get <source-id>
|
|
160
161
|
bb inbound source update <source-id> --name "Website inbound" --allow-state-change
|
|
161
162
|
bb inbound submission list --sourceId <source-id>
|
|
@@ -176,6 +177,9 @@ only after disabling the matching n8n Typeform trigger. These commands do not
|
|
|
176
177
|
enable company, project, or QuickBooks creation.
|
|
177
178
|
Use `bb inbound source get` to inspect discovered Typeform field IDs and the
|
|
178
179
|
currently active mapping before saving a replacement version.
|
|
180
|
+
New sources are registered against an existing Typeform form ID and always start
|
|
181
|
+
with processing disabled in `COLLECT_ONLY`; creating a source does not call any
|
|
182
|
+
external provider.
|
|
179
183
|
|
|
180
184
|
### Mutation safety
|
|
181
185
|
|
package/command-manifest.json
CHANGED
|
@@ -6505,6 +6505,52 @@
|
|
|
6505
6505
|
"effects": [],
|
|
6506
6506
|
"legacyTarget": "list-inbound-sources"
|
|
6507
6507
|
},
|
|
6508
|
+
{
|
|
6509
|
+
"path": ["inbound", "source", "create"],
|
|
6510
|
+
"legacyAliases": ["create-inbound-source", "create_inbound_source"],
|
|
6511
|
+
"summary": "Create Inbound Source.",
|
|
6512
|
+
"globalOptions": [
|
|
6513
|
+
{
|
|
6514
|
+
"name": "--help",
|
|
6515
|
+
"description": "Show help for this command."
|
|
6516
|
+
},
|
|
6517
|
+
{
|
|
6518
|
+
"name": "--quiet",
|
|
6519
|
+
"description": "Suppress non-error diagnostics."
|
|
6520
|
+
},
|
|
6521
|
+
{
|
|
6522
|
+
"name": "--debug",
|
|
6523
|
+
"description": "Emit sanitized diagnostic traces."
|
|
6524
|
+
},
|
|
6525
|
+
{
|
|
6526
|
+
"name": "--api-url",
|
|
6527
|
+
"description": "Override the Budget Builder API base URL."
|
|
6528
|
+
},
|
|
6529
|
+
{
|
|
6530
|
+
"name": "--allow-state-change",
|
|
6531
|
+
"description": "Allow a Budget Builder state change in non-interactive use."
|
|
6532
|
+
},
|
|
6533
|
+
{
|
|
6534
|
+
"name": "--allow-email",
|
|
6535
|
+
"description": "Allow sending email in non-interactive use."
|
|
6536
|
+
},
|
|
6537
|
+
{
|
|
6538
|
+
"name": "--allow-external-write",
|
|
6539
|
+
"description": "Allow writes to external systems in non-interactive use."
|
|
6540
|
+
},
|
|
6541
|
+
{
|
|
6542
|
+
"name": "--allow-delete",
|
|
6543
|
+
"description": "Allow deleting data in non-interactive use."
|
|
6544
|
+
},
|
|
6545
|
+
{
|
|
6546
|
+
"name": "--allow-financial-write",
|
|
6547
|
+
"description": "Allow financial-record changes in non-interactive use."
|
|
6548
|
+
}
|
|
6549
|
+
],
|
|
6550
|
+
"argumentMode": "legacy-passthrough",
|
|
6551
|
+
"effects": ["state-change"],
|
|
6552
|
+
"legacyTarget": "create-inbound-source"
|
|
6553
|
+
},
|
|
6508
6554
|
{
|
|
6509
6555
|
"path": ["inbound", "source", "get"],
|
|
6510
6556
|
"legacyAliases": ["get-inbound-source", "get_inbound_source"],
|
package/command-reference.md
CHANGED
|
@@ -1136,6 +1136,14 @@ Legacy aliases: `list-inbound-sources`, `list_inbound_sources`.
|
|
|
1136
1136
|
|
|
1137
1137
|
Effects: none.
|
|
1138
1138
|
|
|
1139
|
+
## `bb inbound source create`
|
|
1140
|
+
|
|
1141
|
+
Create Inbound Source.
|
|
1142
|
+
|
|
1143
|
+
Legacy aliases: `create-inbound-source`, `create_inbound_source`.
|
|
1144
|
+
|
|
1145
|
+
Effects: state-change.
|
|
1146
|
+
|
|
1139
1147
|
## `bb inbound source get`
|
|
1140
1148
|
|
|
1141
1149
|
Get inbound source.
|
package/dist/commands.js
CHANGED
|
@@ -2101,6 +2101,10 @@ export const listInboundSources = async (input) => {
|
|
|
2101
2101
|
const result = await api.inbound.listSources.query(input);
|
|
2102
2102
|
out(result);
|
|
2103
2103
|
};
|
|
2104
|
+
export const createInboundSource = async (input) => {
|
|
2105
|
+
const result = await api.inbound.createSource.mutate(input);
|
|
2106
|
+
out(result);
|
|
2107
|
+
};
|
|
2104
2108
|
export const getInboundSource = async (sourceId) => {
|
|
2105
2109
|
const result = await api.inbound.getSource.query({ sourceId });
|
|
2106
2110
|
out(result);
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { resolve } from "node:path";
|
|
|
5
5
|
import { fileURLToPath } from "node:url";
|
|
6
6
|
import { BUDGET_BUILDER_API_BASE_URL, configureBudgetBuilderApiBaseUrl, DEFAULT_BUDGET_BUILDER_API_BASE_URL, requireApiKey, } from "./api-client.js";
|
|
7
7
|
import { consumeCliQuietFlags, logCliAction, sanitizeFlagsForTrace, setCliQuiet, shouldLogCliActions, } from "./cli-trace.js";
|
|
8
|
-
import { addBudgetItems, approveBill, approveBudget, approveCustomerInvoice, approveQuotation, approveSupplier, archiveItemsByIds, checkCustomerInvoiceReadiness, checkProjectReconciliation, cleanupStagedBillAttachments, cleanupStagedQuotationAttachments, completeProject, createApiKeyForUser, createBillApproval, createBillFromPayload, createBudgetApproval, createBudgetCategory, createBudgetFromPayload, createCompany, createContactPersonFromPayload, createCustomerInvoice, createEstimate, createItemCategory, createItemFromPayload, createPlaceholderBillForBudgetItem, createProject, createQuotationFromPayload, createSupplierCertification, createSupplierFromPayload, createSupplierPaymentMethod, createSupplierRoleOption, createSupplierTagOption, createUser, deleteBillById, deleteBudgetById, deleteBudgetCategory, deleteBudgetCommission, deleteBudgetDiscount, deleteCompanyById, deleteCustomerInvoice, deleteItemById, deleteItemCategoriesByIds, deleteProjectById, deleteQuotationById, deleteSuppliersByIds, discardCreatingCustomerInvoice, downloadCustomerInvoicePaymentProof, downloadCustomerInvoicePdf, downloadQuotationPdf, getApprovedBudgets, getBillAttachments, getBillDetails, getBudget, getBudgetCategories, getBudgetCategoryBenchmarks, getBudgetDetails, getBudgetItemsOnly, getBudgetVersions, getCompany, getCustomerInvoice, getCustomerInvoiceEmailContext, getDashboard, getErrorMetrics, getEstimatePerformance, getFinancialOverview, getInboundSource, getInboundSubmission, getItem, getItemPricingHistory, getMonthlyMetrics, getProject, getQuotationDetails, getRecentErrors, getSupplierAnalytics, getSupplierDetails, getSupplierPricingHistory, getSystemOverview, getUserPerformance, importQuickBooksProjectId, listApiKeysForUser, listApprovals, listBills, listBudgets, listCompanies, listContacts, listCustomerInvoices, listEligibleCustomerInvoiceBudgets, listInboundSources, listInboundSubmissions, listIntegrationOperations, listItemCategories, listItems, listProjects, listQuotations, listSuppliers, listUsers, markBudgetWonWithProof, markCustomerInvoicePaidFromPath, patchBillInvoiceNumber, patchBillPayment, reactivateSuppliersByIds, reconcileProject, rejectBill, rejectBudget, rejectCustomerInvoice, rejectQuotation, rejectSupplier, removeBudgetItem, renameBudgetVersion, reorderBudgetItemsCli, restoreBudgetVersion, retryIntegrationOperation, revokeApiKeyForUser, saveInboundAutomationConfig, saveInboundMappingVersion, sendCustomerInvoiceToContactPersonFromPayload, sendEstimateToContactPersonFromPayload, setBudgetItemsNotUtilized, stageBillAttachmentsFromPaths, submitQuotation, syncCustomerInvoice, updateBillFromPayload, updateBillPaymentEvidenceFromPayload, updateBillStatus, updateBudgetCategory, updateBudgetCommissionFromPayload, updateBudgetDiscountFromPayload, updateBudgetFromPayload, updateBudgetItem, updateBudgetItemSupplierCli, updateBudgetStatus, updateCompanyFromPayload, updateContactPersonFromPayload, updateInboundProcessing, updateInboundSource, updateItemCategory, updateItemFromPayload, updateProjectFromPayload, updateProjectStatus, updateQuotationFromPayload, updateSupplierFromPayload, uploadBillAttachmentFromPath, uploadBillAttachmentsFromPaths, uploadBillDocumentsFromPaths, uploadBudgetAttachmentFromPath, uploadQuotationAttachmentFromPath, validateBillSelectionFromPayload, voidCustomerInvoice, whoAmI, } from "./commands.js";
|
|
8
|
+
import { addBudgetItems, approveBill, approveBudget, approveCustomerInvoice, approveQuotation, approveSupplier, archiveItemsByIds, checkCustomerInvoiceReadiness, checkProjectReconciliation, cleanupStagedBillAttachments, cleanupStagedQuotationAttachments, completeProject, createApiKeyForUser, createBillApproval, createBillFromPayload, createBudgetApproval, createBudgetCategory, createBudgetFromPayload, createCompany, createContactPersonFromPayload, createCustomerInvoice, createEstimate, createInboundSource, createItemCategory, createItemFromPayload, createPlaceholderBillForBudgetItem, createProject, createQuotationFromPayload, createSupplierCertification, createSupplierFromPayload, createSupplierPaymentMethod, createSupplierRoleOption, createSupplierTagOption, createUser, deleteBillById, deleteBudgetById, deleteBudgetCategory, deleteBudgetCommission, deleteBudgetDiscount, deleteCompanyById, deleteCustomerInvoice, deleteItemById, deleteItemCategoriesByIds, deleteProjectById, deleteQuotationById, deleteSuppliersByIds, discardCreatingCustomerInvoice, downloadCustomerInvoicePaymentProof, downloadCustomerInvoicePdf, downloadQuotationPdf, getApprovedBudgets, getBillAttachments, getBillDetails, getBudget, getBudgetCategories, getBudgetCategoryBenchmarks, getBudgetDetails, getBudgetItemsOnly, getBudgetVersions, getCompany, getCustomerInvoice, getCustomerInvoiceEmailContext, getDashboard, getErrorMetrics, getEstimatePerformance, getFinancialOverview, getInboundSource, getInboundSubmission, getItem, getItemPricingHistory, getMonthlyMetrics, getProject, getQuotationDetails, getRecentErrors, getSupplierAnalytics, getSupplierDetails, getSupplierPricingHistory, getSystemOverview, getUserPerformance, importQuickBooksProjectId, listApiKeysForUser, listApprovals, listBills, listBudgets, listCompanies, listContacts, listCustomerInvoices, listEligibleCustomerInvoiceBudgets, listInboundSources, listInboundSubmissions, listIntegrationOperations, listItemCategories, listItems, listProjects, listQuotations, listSuppliers, listUsers, markBudgetWonWithProof, markCustomerInvoicePaidFromPath, patchBillInvoiceNumber, patchBillPayment, reactivateSuppliersByIds, reconcileProject, rejectBill, rejectBudget, rejectCustomerInvoice, rejectQuotation, rejectSupplier, removeBudgetItem, renameBudgetVersion, reorderBudgetItemsCli, restoreBudgetVersion, retryIntegrationOperation, revokeApiKeyForUser, saveInboundAutomationConfig, saveInboundMappingVersion, sendCustomerInvoiceToContactPersonFromPayload, sendEstimateToContactPersonFromPayload, setBudgetItemsNotUtilized, stageBillAttachmentsFromPaths, submitQuotation, syncCustomerInvoice, updateBillFromPayload, updateBillPaymentEvidenceFromPayload, updateBillStatus, updateBudgetCategory, updateBudgetCommissionFromPayload, updateBudgetDiscountFromPayload, updateBudgetFromPayload, updateBudgetItem, updateBudgetItemSupplierCli, updateBudgetStatus, updateCompanyFromPayload, updateContactPersonFromPayload, updateInboundProcessing, updateInboundSource, updateItemCategory, updateItemFromPayload, updateProjectFromPayload, updateProjectStatus, updateQuotationFromPayload, updateSupplierFromPayload, uploadBillAttachmentFromPath, uploadBillAttachmentsFromPaths, uploadBillDocumentsFromPaths, uploadBudgetAttachmentFromPath, uploadQuotationAttachmentFromPath, validateBillSelectionFromPayload, voidCustomerInvoice, whoAmI, } from "./commands.js";
|
|
9
9
|
import { getFlag, parseArgs } from "./parse-args.js";
|
|
10
10
|
import { billStatusesForUpdateHelp, budgetStatusesForHelp, isBudgetStatusUpdate, parseApprovalTypeFlag, parseBillStatusForUpdate, parseCommaSeparatedBillStatuses, parseCommaSeparatedBudgetStatuses, parseCommaSeparatedCustomerInvoiceStatuses, parseCommaSeparatedIds, parseCommaSeparatedQuotationStatuses, parseCommaSeparatedSupplierStatuses, parseOptionalBillListSortBy, parseOptionalBillListSortDir, parseOptionalDashboardRole, parseOptionalDeals, parseOptionalErrorSeverity, parseOptionalErrorStatus, parseOptionalExtendedProjectStatus, parseOptionalFinancialRole, parseOptionalSupplierAnalyticsTimeFrame, parseOptionalTimeFrame, parseProjectStatusForUpdate, parseUserRole, projectStatusesForHelp, userRolesForHelp, } from "./parse-cli-enums.js";
|
|
11
11
|
import { parseJsonFlag, parseOptionalNumber as parseOptNum, } from "./parse-json-flag.js";
|
|
@@ -2034,6 +2034,15 @@ export async function runCli(argv = process.argv, runtime = createProcessRuntime
|
|
|
2034
2034
|
});
|
|
2035
2035
|
break;
|
|
2036
2036
|
}
|
|
2037
|
+
case "create-inbound-source": {
|
|
2038
|
+
const name = getFlag(flags, "name");
|
|
2039
|
+
const externalSourceId = getFlag(flags, "formId");
|
|
2040
|
+
if (!name || !externalSourceId) {
|
|
2041
|
+
throw new Error("create-inbound-source requires --name <name> --formId <Typeform form ID>");
|
|
2042
|
+
}
|
|
2043
|
+
await createInboundSource({ externalSourceId, name });
|
|
2044
|
+
break;
|
|
2045
|
+
}
|
|
2037
2046
|
case "get-inbound-source": {
|
|
2038
2047
|
const sourceId = positional[0];
|
|
2039
2048
|
if (!sourceId)
|
package/dist/registry/index.js
CHANGED
|
@@ -449,6 +449,7 @@ const registry = [
|
|
|
449
449
|
"retry",
|
|
450
450
|
]),
|
|
451
451
|
legacyCommand("list-inbound-sources", ["inbound", "source", "list"]),
|
|
452
|
+
legacyCommand("create-inbound-source", ["inbound", "source", "create"]),
|
|
452
453
|
legacyCommand("get-inbound-source", ["inbound", "source", "get"]),
|
|
453
454
|
legacyCommand("update-inbound-source", ["inbound", "source", "update"]),
|
|
454
455
|
legacyCommand("list-inbound-submissions", ["inbound", "submission", "list"]),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@go-labs-sg/bb",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.10.1",
|
|
4
4
|
"description": "Budget Builder CLI for AI agents — manage budgets, bills, claims, quotations, and customer invoices with explicit workflow previews for sensitive changes.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|