From f871db114f5857b83b373dc8c5389e61ccb4383b Mon Sep 17 00:00:00 2001 From: Muthiah Muralidharan Date: Fri, 9 Oct 2026 16:33:04 +0530 Subject: [PATCH 1/2] fix(api): preserve parameter shapes across CLI inputs --- README.md | 8 + src/commands/generated/addon.ts | 20 ++- src/commands/generated/address.ts | 8 +- src/commands/generated/alert.ts | 20 ++- src/commands/generated/alert_status.ts | 10 +- src/commands/generated/attached_item.ts | 16 +- src/commands/generated/business_entity.ts | 8 +- src/commands/generated/business_rule.ts | 30 ++-- src/commands/generated/business_ruleset.ts | 28 +-- src/commands/generated/card.ts | 14 +- src/commands/generated/comment.ts | 14 +- src/commands/generated/configuration.ts | 6 +- src/commands/generated/coupon.ts | 24 +-- src/commands/generated/coupon_code.ts | 14 +- src/commands/generated/coupon_set.ts | 20 ++- src/commands/generated/credit_note.ts | 42 ++--- src/commands/generated/credit_unit.ts | 14 +- src/commands/generated/currency.ts | 18 +- src/commands/generated/customer.ts | 66 +++---- .../generated/customer_entitlement.ts | 6 +- src/commands/generated/differential_price.ts | 16 +- src/commands/generated/dispute.ts | 10 +- src/commands/generated/einvoice.ts | 10 +- src/commands/generated/email_log.ts | 6 +- src/commands/generated/entitlement.ts | 8 +- .../generated/entitlement_override.ts | 8 +- src/commands/generated/estimate.ts | 48 +++--- src/commands/generated/event.ts | 10 +- src/commands/generated/export.ts | 42 ++--- src/commands/generated/feature.ts | 22 +-- src/commands/generated/gift.ts | 20 ++- src/commands/generated/grant_block.ts | 6 +- src/commands/generated/hosted_page.ts | 50 +++--- src/commands/generated/in_app_subscription.ts | 8 +- src/commands/generated/invoice.ts | 100 +++++------ src/commands/generated/item.ts | 16 +- src/commands/generated/item_entitlement.ts | 14 +- src/commands/generated/item_family.ts | 16 +- src/commands/generated/item_price.ts | 24 +-- .../generated/ledger_account_balance.ts | 6 +- src/commands/generated/ledger_operation.ts | 20 ++- src/commands/generated/meter.ts | 6 +- src/commands/generated/metered_feature.ts | 8 +- src/commands/generated/non_subscription.ts | 2 +- src/commands/generated/offer_event.ts | 2 +- src/commands/generated/offer_fulfillment.ts | 10 +- .../generated/omnichannel_one_time_order.ts | 10 +- .../generated/omnichannel_subscription.ts | 16 +- .../omnichannel_subscription_item.ts | 6 +- src/commands/generated/order.ts | 32 ++-- src/commands/generated/payment_intent.ts | 10 +- src/commands/generated/payment_schedule.ts | 6 +- .../generated/payment_schedule_scheme.ts | 14 +- src/commands/generated/payment_source.ts | 42 ++--- src/commands/generated/payment_voucher.ts | 16 +- src/commands/generated/personalized_offer.ts | 2 +- src/commands/generated/plan.ts | 20 ++- src/commands/generated/portal_session.ts | 12 +- src/commands/generated/price_variant.ts | 16 +- .../generated/pricing_page_session.ts | 4 +- src/commands/generated/promotional_credit.ts | 16 +- src/commands/generated/promotional_grant.ts | 2 +- src/commands/generated/purchase.ts | 4 +- src/commands/generated/quote.ts | 62 +++---- src/commands/generated/quote_entitlement.ts | 6 +- src/commands/generated/ramp.ts | 16 +- src/commands/generated/recorded_purchase.ts | 8 +- src/commands/generated/resource_migration.ts | 6 +- src/commands/generated/rule.ts | 6 +- .../generated/site_migration_detail.ts | 6 +- src/commands/generated/subscription.ts | 90 +++++----- .../generated/subscription_entitlement.ts | 8 +- src/commands/generated/time_machine.ts | 10 +- src/commands/generated/transaction.ts | 34 ++-- src/commands/generated/unbilled_charge.ts | 16 +- src/commands/generated/usage.ts | 16 +- src/commands/generated/usage_charge.ts | 6 +- src/commands/generated/usage_event.ts | 4 +- src/commands/generated/usage_file.ts | 8 +- src/commands/generated/usage_summary.ts | 6 +- .../generated/vaulted_payment_method.ts | 6 +- .../generated/virtual_bank_account.ts | 18 +- src/commands/generated/webhook_endpoint.ts | 16 +- src/lib/api/params.ts | 163 ++++++++++++++++++ src/lib/api/stdin-params.ts | 86 ++++----- src/lib/codesample/index.ts | 74 +++----- src/tests/integration/stdin-params.test.ts | 4 +- src/tests/unit/lib/api/params.test.ts | 97 +++++++++++ .../lib/api/stdin-params.encoding.test.ts | 45 ++++- src/tests/unit/lib/codesample/index.test.ts | 39 +++++ src/tools/generate.ts | 19 +- 91 files changed, 1221 insertions(+), 756 deletions(-) create mode 100644 src/lib/api/params.ts create mode 100644 src/tests/unit/lib/api/params.test.ts diff --git a/README.md b/README.md index 33cf9e6..f563e32 100644 --- a/README.md +++ b/README.md @@ -231,6 +231,14 @@ Code samples check required parameters and parameter names against the generator For indexed item arrays, use Chargebee's field-first bracket notation, such as `-d 'subscription_items[item_price_id][0]=basic-USD'` and `-d 'subscription_items[quantity][0]=1'`. Fields with the same index describe one item. +For scalar arrays, either use indexed keys such as +`-d 'mandatory_items_to_remove[0]=basic-USD' -d 'mandatory_items_to_remove[1]=addon-USD'` +or pass one JSON array as a shorthand: +`-d 'mandatory_items_to_remove=["basic-USD","addon-USD"]'`. +Both forms send the indexed fields expected by form API requests. Quote the +argument so your shell does not interpret its brackets or quotes. For simple +string items, `-d 'mandatory_items_to_remove=[basic-USD,addon-USD]'` also works; +use JSON quotes when an item contains a comma. For both API requests and code samples, each `-d` argument must contain a non-empty key followed by `=` and its value. Malformed arguments such as `-d email` fail with an error; empty values such as `-d email=` are allowed. diff --git a/src/commands/generated/addon.ts b/src/commands/generated/addon.ts index 9998400..f43a706 100644 --- a/src/commands/generated/addon.ts +++ b/src/commands/generated/addon.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerAddon(parent: Command): void { const cmd = parent .command("addon") @@ -24,7 +26,7 @@ export function registerAddon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs addon copy\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "copy_an_addon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "addon copy"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "copy_an_addon", method: "POST", uri: "/addons/copy", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -45,7 +47,7 @@ export function registerAddon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs addon create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_an_addon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "addon create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_an_addon", method: "POST", uri: "/addons", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -67,7 +69,7 @@ export function registerAddon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs addon delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "delete_an_addon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "addon delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "delete_an_addon", method: "POST", uri: "/addons/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "addon-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'addon-id'"); @@ -91,14 +93,14 @@ export function registerAddon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs addon list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "list_addons", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "addon list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "list_addons", method: "GET", uri: "/addons", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "addon"); else warnBareListFilters(opts.data ?? [], "addon"); try { const client = await getClient(); - const result = await (client as any).addon.list(params); + const result = await (client as any).addon.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -114,14 +116,14 @@ export function registerAddon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs addon retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "retrieve_an_addon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "addon retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "retrieve_an_addon", method: "GET", uri: "/addons/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "addon-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'addon-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).addon.retrieve(resource.id, params); + const result = await (client as any).addon.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -137,7 +139,7 @@ export function registerAddon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs addon unarchive\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "unarchive_an_addon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "addon unarchive"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "unarchive_an_addon", method: "POST", uri: "/addons/{id}/unarchive", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "addon-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'addon-id'"); @@ -161,7 +163,7 @@ export function registerAddon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs addon update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "update_an_addon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "addon update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "update_an_addon", method: "POST", uri: "/addons/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "addon-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'addon-id'"); diff --git a/src/commands/generated/address.ts b/src/commands/generated/address.ts index 03b5832..fcc04b3 100644 --- a/src/commands/generated/address.ts +++ b/src/commands/generated/address.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerAddress(parent: Command): void { const cmd = parent .command("address") @@ -23,11 +25,11 @@ export function registerAddress(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs address retrieve\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_address", opIdV1: "retrieve_an_address", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_address", opIdV1: "retrieve_an_address", method: "GET", uri: "/addresses", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); - const result = await (client as any).address.retrieve(params); + const result = await (client as any).address.retrieve(toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -42,7 +44,7 @@ export function registerAddress(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs address update\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_an_address", opIdV1: "update_an_address", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_an_address", opIdV1: "update_an_address", method: "POST", uri: "/addresses", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { diff --git a/src/commands/generated/alert.ts b/src/commands/generated/alert.ts index 5f78b86..07a6c2c 100644 --- a/src/commands/generated/alert.ts +++ b/src/commands/generated/alert.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerAlert(parent: Command): void { const cmd = parent .command("alert") @@ -25,14 +27,14 @@ export function registerAlert(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs alert application_alerts-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_applicable_alerts_for_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "alert application_alerts-for-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_applicable_alerts_for_a_subscription", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/applicable_alerts", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).alert.application_alertsForSubscription(resource.id, params); + const result = await (client as any).alert.application_alertsForSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -47,7 +49,7 @@ export function registerAlert(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs alert create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_an_alert", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "alert create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_alert", opIdV1: "", method: "POST", uri: "/alerts", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -69,7 +71,7 @@ export function registerAlert(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs alert delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_an_alert", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "alert delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_an_alert", opIdV1: "", method: "POST", uri: "/alerts/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "alert-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'alert-id'"); @@ -93,14 +95,14 @@ export function registerAlert(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs alert list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_alerts", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "alert list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_alerts", opIdV1: "", method: "GET", uri: "/alerts", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "alert"); else warnBareListFilters(opts.data ?? [], "alert"); try { const client = await getClient(); - const result = await (client as any).alert.list(params); + const result = await (client as any).alert.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -116,14 +118,14 @@ export function registerAlert(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs alert retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_alert", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "alert retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_alert", opIdV1: "", method: "GET", uri: "/alerts/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "alert-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'alert-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).alert.retrieve(resource.id, params); + const result = await (client as any).alert.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -139,7 +141,7 @@ export function registerAlert(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs alert update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_an_alert", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "alert update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_an_alert", opIdV1: "", method: "POST", uri: "/alerts/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "alert-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'alert-id'"); diff --git a/src/commands/generated/alert_status.ts b/src/commands/generated/alert_status.ts index fc46cfb..6b17d46 100644 --- a/src/commands/generated/alert_status.ts +++ b/src/commands/generated/alert_status.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerAlertStatus(parent: Command): void { const cmd = parent .command("alert-status") @@ -25,14 +27,14 @@ export function registerAlertStatus(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs alert-status alert_statuses-for-alert\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_alert_statuses_for_an_alert", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "alert-status alert_statuses-for-alert"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_alert_statuses_for_an_alert", opIdV1: "", method: "GET", uri: "/alerts/{id}/alert_statuses", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "alert-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'alert-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).alertStatus.alert_statusesForAlert(resource.id, params); + const result = await (client as any).alertStatus.alert_statusesForAlert(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -48,14 +50,14 @@ export function registerAlertStatus(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs alert-status alert_statuses-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_alert_statuses_for_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "alert-status alert_statuses-for-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_alert_statuses_for_a_subscription", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/alert_statuses", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).alertStatus.alert_statusesForSubscription(resource.id, params); + const result = await (client as any).alertStatus.alert_statusesForSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/attached_item.ts b/src/commands/generated/attached_item.ts index 15bd1e0..f31b019 100644 --- a/src/commands/generated/attached_item.ts +++ b/src/commands/generated/attached_item.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerAttachedItem(parent: Command): void { const cmd = parent .command("attached-item") @@ -26,7 +28,7 @@ export function registerAttachedItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs attached-item create\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_an_attached_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "attached-item create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_attached_item", opIdV1: "", method: "POST", uri: "/items/{id}/attached_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-id'"); @@ -50,7 +52,7 @@ export function registerAttachedItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs attached-item delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_an_attached_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "attached-item delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_an_attached_item", opIdV1: "", method: "POST", uri: "/attached_items/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "attached-item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'attached-item-id'"); @@ -75,7 +77,7 @@ export function registerAttachedItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs attached-item list\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_attached_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "attached-item list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_attached_items", opIdV1: "", method: "GET", uri: "/items/{id}/attached_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-id", pcVersionFlag: opts.pcVersion }); if (resource.fromStdin) warnBareJsonFilters(params, "attached-item"); @@ -84,7 +86,7 @@ export function registerAttachedItem(parent: Command): void { assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).attachedItem.list(resource.id, params); + const result = await (client as any).attachedItem.list(resource.id, toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -100,14 +102,14 @@ export function registerAttachedItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs attached-item retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_attached_item_", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "attached-item retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_attached_item_", opIdV1: "", method: "GET", uri: "/attached_items/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "attached-item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'attached-item-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).attachedItem.retrieve(resource.id, params); + const result = await (client as any).attachedItem.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -123,7 +125,7 @@ export function registerAttachedItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs attached-item update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_an_attached_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "attached-item update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_an_attached_item", opIdV1: "", method: "POST", uri: "/attached_items/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "attached-item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'attached-item-id'"); diff --git a/src/commands/generated/business_entity.ts b/src/commands/generated/business_entity.ts index 060714b..a3789bb 100644 --- a/src/commands/generated/business_entity.ts +++ b/src/commands/generated/business_entity.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerBusinessEntity(parent: Command): void { const cmd = parent .command("business-entity") @@ -24,7 +26,7 @@ export function registerBusinessEntity(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-entity create-transfers\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "transfer_resources_to_another_business_entity", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-entity create-transfers"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "transfer_resources_to_another_business_entity", opIdV1: "", method: "POST", uri: "/business_entities/transfers", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -45,12 +47,12 @@ export function registerBusinessEntity(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-entity get-transfers\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_the_business_entity_transfers", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-entity get-transfers"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_the_business_entity_transfers", opIdV1: "", method: "GET", uri: "/business_entities/transfers", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); - const result = await (client as any).businessEntity.getTransfers(params); + const result = await (client as any).businessEntity.getTransfers(toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/business_rule.ts b/src/commands/generated/business_rule.ts index eac6a7a..23e7432 100644 --- a/src/commands/generated/business_rule.ts +++ b/src/commands/generated/business_rule.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerBusinessRule(parent: Command): void { const cmd = parent .command("business-rule") @@ -26,7 +28,7 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule activate-rule\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "activate_a_business_rule", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule activate-rule"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "activate_a_business_rule", opIdV1: "", method: "POST", uri: "/business_rules/{id}/activate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-rule-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-rule-id'"); @@ -49,7 +51,7 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule apply-rules\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "apply_business_rules", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule apply-rules"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "apply_business_rules", opIdV1: "", method: "POST", uri: "/business_rules/apply_rules", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -70,7 +72,7 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_business_rule", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_business_rule", opIdV1: "", method: "POST", uri: "/business_rules", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -92,7 +94,7 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule deactivate-rule\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "deactivate_a_business_rule", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule deactivate-rule"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "deactivate_a_business_rule", opIdV1: "", method: "POST", uri: "/business_rules/{id}/deactivate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-rule-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-rule-id'"); @@ -116,7 +118,7 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_business_rule", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_business_rule", opIdV1: "", method: "POST", uri: "/business_rules/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-rule-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-rule-id'"); @@ -140,7 +142,7 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule delete-draft\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_business_rule_draft", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule delete-draft"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_business_rule_draft", opIdV1: "", method: "POST", uri: "/business_rules/{id}/delete_draft", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-rule-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-rule-id'"); @@ -164,14 +166,14 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_business_rules", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_business_rules", opIdV1: "", method: "GET", uri: "/business_rules", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "business-rule"); else warnBareListFilters(opts.data ?? [], "business-rule"); try { const client = await getClient(); - const result = await (client as any).businessRule.list(params); + const result = await (client as any).businessRule.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -187,7 +189,7 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule release-rule\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "release_a_business_rule", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule release-rule"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "release_a_business_rule", opIdV1: "", method: "POST", uri: "/business_rules/{id}/release", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-rule-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-rule-id'"); @@ -211,14 +213,14 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_business_rule", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_business_rule", opIdV1: "", method: "GET", uri: "/business_rules/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-rule-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-rule-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).businessRule.retrieve(resource.id, params); + const result = await (client as any).businessRule.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -234,14 +236,14 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule retrieve-draft\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_business_rule_draft", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule retrieve-draft"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_business_rule_draft", opIdV1: "", method: "GET", uri: "/business_rules/{id}/draft", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-rule-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-rule-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).businessRule.retrieveDraft(resource.id, params); + const result = await (client as any).businessRule.retrieveDraft(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -257,7 +259,7 @@ export function registerBusinessRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-rule update-draft\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_business_rule_draft", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-rule update-draft"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_business_rule_draft", opIdV1: "", method: "POST", uri: "/business_rules/{id}/draft", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-rule-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-rule-id'"); diff --git a/src/commands/generated/business_ruleset.ts b/src/commands/generated/business_ruleset.ts index 0391a80..8a2c202 100644 --- a/src/commands/generated/business_ruleset.ts +++ b/src/commands/generated/business_ruleset.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerBusinessRuleset(parent: Command): void { const cmd = parent .command("business-ruleset") @@ -26,7 +28,7 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset activate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "activate_a_business_ruleset", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset activate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "activate_a_business_ruleset", opIdV1: "", method: "POST", uri: "/business_rulesets/{id}/activate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-ruleset-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-ruleset-id'"); @@ -50,7 +52,7 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset add-rules\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "add_business_rules_to_a_ruleset", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset add-rules"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "add_business_rules_to_a_ruleset", opIdV1: "", method: "POST", uri: "/business_rulesets/{id}/add_rules", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-ruleset-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-ruleset-id'"); @@ -73,7 +75,7 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_business_ruleset", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_business_ruleset", opIdV1: "", method: "POST", uri: "/business_rulesets", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -95,7 +97,7 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset deactivate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "deactivate_a_business_ruleset", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset deactivate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "deactivate_a_business_ruleset", opIdV1: "", method: "POST", uri: "/business_rulesets/{id}/deactivate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-ruleset-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-ruleset-id'"); @@ -119,7 +121,7 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_business_ruleset", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_business_ruleset", opIdV1: "", method: "POST", uri: "/business_rulesets/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-ruleset-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-ruleset-id'"); @@ -143,14 +145,14 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_business_rulesets", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_business_rulesets", opIdV1: "", method: "GET", uri: "/business_rulesets", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "business-ruleset"); else warnBareListFilters(opts.data ?? [], "business-ruleset"); try { const client = await getClient(); - const result = await (client as any).businessRuleset.list(params); + const result = await (client as any).businessRuleset.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -166,14 +168,14 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset list-rules\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_rules_in_a_business_ruleset", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset list-rules"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_rules_in_a_business_ruleset", opIdV1: "", method: "GET", uri: "/business_rulesets/{id}/rules", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-ruleset-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-ruleset-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).businessRuleset.listRules(resource.id, params); + const result = await (client as any).businessRuleset.listRules(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -189,7 +191,7 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset remove-rules\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_business_rules_from_a_ruleset", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset remove-rules"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_business_rules_from_a_ruleset", opIdV1: "", method: "POST", uri: "/business_rulesets/{id}/remove_rules", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-ruleset-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-ruleset-id'"); @@ -213,14 +215,14 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_business_ruleset", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_business_ruleset", opIdV1: "", method: "GET", uri: "/business_rulesets/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-ruleset-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-ruleset-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).businessRuleset.retrieve(resource.id, params); + const result = await (client as any).businessRuleset.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -236,7 +238,7 @@ export function registerBusinessRuleset(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs business-ruleset update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_business_ruleset", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "business-ruleset update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_business_ruleset", opIdV1: "", method: "POST", uri: "/business_rulesets/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "business-ruleset-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'business-ruleset-id'"); diff --git a/src/commands/generated/card.ts b/src/commands/generated/card.ts index 65b9e68..1736ac6 100644 --- a/src/commands/generated/card.ts +++ b/src/commands/generated/card.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerCard(parent: Command): void { const cmd = parent .command("card") @@ -24,7 +26,7 @@ export function registerCard(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs card copy-card-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "copy_card", opIdV1: "copy_card", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "copy_card", opIdV1: "copy_card", method: "POST", uri: "/customers/{id}/copy_card", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -47,7 +49,7 @@ export function registerCard(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs card delete-card-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_card_for_a_customer", opIdV1: "delete_card_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_card_for_a_customer", opIdV1: "delete_card_for_a_customer", method: "POST", uri: "/customers/{id}/delete_card", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -70,13 +72,13 @@ export function registerCard(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs card retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_card_for_a_customer", opIdV1: "retrieve_card_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_card_for_a_customer", opIdV1: "retrieve_card_for_a_customer", method: "GET", uri: "/cards/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).card.retrieve(resource.id, params); + const result = await (client as any).card.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -92,7 +94,7 @@ export function registerCard(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs card switch-gateway-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "switch_gateway", opIdV1: "switch_gateway", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "switch_gateway", opIdV1: "switch_gateway", method: "POST", uri: "/customers/{id}/switch_gateway", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -115,7 +117,7 @@ export function registerCard(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs card update-card-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_card_for_a_customer", opIdV1: "update_card_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_card_for_a_customer", opIdV1: "update_card_for_a_customer", method: "POST", uri: "/customers/{id}/credit_card", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/comment.ts b/src/commands/generated/comment.ts index 9eaf57c..6452d62 100644 --- a/src/commands/generated/comment.ts +++ b/src/commands/generated/comment.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerComment(parent: Command): void { const cmd = parent .command("comment") @@ -24,7 +26,7 @@ export function registerComment(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs comment create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_comment", opIdV1: "create_a_comment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_comment", opIdV1: "create_a_comment", method: "POST", uri: "/comments", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -45,7 +47,7 @@ export function registerComment(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs comment delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_comment", opIdV1: "delete_a_comment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_comment", opIdV1: "delete_a_comment", method: "POST", uri: "/comments/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "comment-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'comment-id'"); assertResourceId(resource.id, command); @@ -68,13 +70,13 @@ export function registerComment(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs comment list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_comments", opIdV1: "list_comments", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_comments", opIdV1: "list_comments", method: "GET", uri: "/comments", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "comment"); else warnBareListFilters(opts.data ?? [], "comment"); try { const client = await getClient(); - const result = await (client as any).comment.list(params); + const result = await (client as any).comment.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -90,13 +92,13 @@ export function registerComment(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs comment retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_comment", opIdV1: "retrieve_a_comment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_comment", opIdV1: "retrieve_a_comment", method: "GET", uri: "/comments/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "comment-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'comment-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).comment.retrieve(resource.id, params); + const result = await (client as any).comment.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/configuration.ts b/src/commands/generated/configuration.ts index e7abf3e..418a1f5 100644 --- a/src/commands/generated/configuration.ts +++ b/src/commands/generated/configuration.ts @@ -9,6 +9,8 @@ import { handleCodeSample } from "../../lib/api/generated-command.js"; import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerConfiguration(parent: Command): void { const cmd = parent .command("configuration") @@ -25,13 +27,13 @@ export function registerConfiguration(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs configuration list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_site_configurations", opIdV1: "list_site_configurations", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_site_configurations", opIdV1: "list_site_configurations", method: "GET", uri: "/configurations", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "configuration"); else warnBareListFilters(opts.data ?? [], "configuration"); try { const client = await getClient(); - const result = await (client as any).configuration.list(params); + const result = await (client as any).configuration.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/coupon.ts b/src/commands/generated/coupon.ts index b102dc3..aac1d70 100644 --- a/src/commands/generated/coupon.ts +++ b/src/commands/generated/coupon.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerCoupon(parent: Command): void { const cmd = parent .command("coupon") @@ -24,7 +26,7 @@ export function registerCoupon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon copy\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "copy_a_coupon", opIdV1: "copy_a_coupon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "copy_a_coupon", opIdV1: "copy_a_coupon", method: "POST", uri: "/coupons/copy", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -44,7 +46,7 @@ export function registerCoupon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_a_coupon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "coupon create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_a_coupon", method: "POST", uri: "/coupons", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -65,7 +67,7 @@ export function registerCoupon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon create-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_coupon_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "coupon create-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_coupon_for_items", opIdV1: "", method: "POST", uri: "/coupons/create_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -87,7 +89,7 @@ export function registerCoupon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_coupon", opIdV1: "delete_a_coupon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_coupon", opIdV1: "delete_a_coupon", method: "POST", uri: "/coupons/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-id'"); assertResourceId(resource.id, command); @@ -110,13 +112,13 @@ export function registerCoupon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_coupons", opIdV1: "list_coupons", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_coupons", opIdV1: "list_coupons", method: "GET", uri: "/coupons", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "coupon"); else warnBareListFilters(opts.data ?? [], "coupon"); try { const client = await getClient(); - const result = await (client as any).coupon.list(params); + const result = await (client as any).coupon.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -132,13 +134,13 @@ export function registerCoupon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_coupon", opIdV1: "retrieve_a_coupon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_coupon", opIdV1: "retrieve_a_coupon", method: "GET", uri: "/coupons/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).coupon.retrieve(resource.id, params); + const result = await (client as any).coupon.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -154,7 +156,7 @@ export function registerCoupon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon unarchive\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "unarchive_a_coupon", opIdV1: "unarchive_a_coupon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "unarchive_a_coupon", opIdV1: "unarchive_a_coupon", method: "POST", uri: "/coupons/{id}/unarchive", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-id'"); assertResourceId(resource.id, command); @@ -177,7 +179,7 @@ export function registerCoupon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "update_a_coupon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "coupon update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "update_a_coupon", method: "POST", uri: "/coupons/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-id'"); @@ -201,7 +203,7 @@ export function registerCoupon(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon update-for-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_coupon_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "coupon update-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_coupon_for_items", opIdV1: "", method: "POST", uri: "/coupons/{id}/update_for_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-id'"); diff --git a/src/commands/generated/coupon_code.ts b/src/commands/generated/coupon_code.ts index 7f90b91..0a63d0e 100644 --- a/src/commands/generated/coupon_code.ts +++ b/src/commands/generated/coupon_code.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerCouponCode(parent: Command): void { const cmd = parent .command("coupon-code") @@ -26,7 +28,7 @@ export function registerCouponCode(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-code archive\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "archive_a_coupon_code", opIdV1: "archive_a_coupon_code", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "archive_a_coupon_code", opIdV1: "archive_a_coupon_code", method: "POST", uri: "/coupon_codes/{id}/archive", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-code-code", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-code-code'"); assertResourceId(resource.id, command); @@ -48,7 +50,7 @@ export function registerCouponCode(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-code create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/coupon_codes", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -69,13 +71,13 @@ export function registerCouponCode(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-code list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_coupon_codes", opIdV1: "list_coupon_codes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_coupon_codes", opIdV1: "list_coupon_codes", method: "GET", uri: "/coupon_codes", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "coupon-code"); else warnBareListFilters(opts.data ?? [], "coupon-code"); try { const client = await getClient(); - const result = await (client as any).couponCode.list(params); + const result = await (client as any).couponCode.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -91,13 +93,13 @@ export function registerCouponCode(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-code retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_coupon_code", opIdV1: "retrieve_a_coupon_code", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_coupon_code", opIdV1: "retrieve_a_coupon_code", method: "GET", uri: "/coupon_codes/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-code-code", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-code-code'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).couponCode.retrieve(resource.id, params); + const result = await (client as any).couponCode.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/coupon_set.ts b/src/commands/generated/coupon_set.ts index ecebf9b..1676836 100644 --- a/src/commands/generated/coupon_set.ts +++ b/src/commands/generated/coupon_set.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerCouponSet(parent: Command): void { const cmd = parent .command("coupon-set") @@ -26,7 +28,7 @@ export function registerCouponSet(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-set add-coupon-codes\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "add_coupon_codes_to_coupon_set", opIdV1: "add_coupon_codes_to_coupon_set", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "add_coupon_codes_to_coupon_set", opIdV1: "add_coupon_codes_to_coupon_set", method: "POST", uri: "/coupon_sets/{id}/add_coupon_codes", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-set-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-set-id'"); assertResourceId(resource.id, command); @@ -48,7 +50,7 @@ export function registerCouponSet(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-set create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_coupon_set", opIdV1: "create_a_coupon_set", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_coupon_set", opIdV1: "create_a_coupon_set", method: "POST", uri: "/coupon_sets", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -69,7 +71,7 @@ export function registerCouponSet(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-set delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_coupon_set", opIdV1: "delete_a_coupon_set", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_coupon_set", opIdV1: "delete_a_coupon_set", method: "POST", uri: "/coupon_sets/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-set-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-set-id'"); assertResourceId(resource.id, command); @@ -92,7 +94,7 @@ export function registerCouponSet(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-set delete-unused-coupon-codes\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_unused_coupon_codes", opIdV1: "delete_unused_coupon_codes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_unused_coupon_codes", opIdV1: "delete_unused_coupon_codes", method: "POST", uri: "/coupon_sets/{id}/delete_unused_coupon_codes", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-set-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-set-id'"); assertResourceId(resource.id, command); @@ -115,13 +117,13 @@ export function registerCouponSet(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-set list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_coupon_sets", opIdV1: "list_coupon_sets", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_coupon_sets", opIdV1: "list_coupon_sets", method: "GET", uri: "/coupon_sets", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "coupon-set"); else warnBareListFilters(opts.data ?? [], "coupon-set"); try { const client = await getClient(); - const result = await (client as any).couponSet.list(params); + const result = await (client as any).couponSet.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -137,13 +139,13 @@ export function registerCouponSet(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-set retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_coupon_set", opIdV1: "retrieve_a_coupon_set", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_coupon_set", opIdV1: "retrieve_a_coupon_set", method: "GET", uri: "/coupon_sets/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-set-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-set-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).couponSet.retrieve(resource.id, params); + const result = await (client as any).couponSet.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -159,7 +161,7 @@ export function registerCouponSet(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs coupon-set update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_coupon_set", opIdV1: "update_a_coupon_set", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_coupon_set", opIdV1: "update_a_coupon_set", method: "POST", uri: "/coupon_sets/{id}/update", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "coupon-set-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'coupon-set-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/credit_note.ts b/src/commands/generated/credit_note.ts index 87639fd..0d005e9 100644 --- a/src/commands/generated/credit_note.ts +++ b/src/commands/generated/credit_note.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerCreditNote(parent: Command): void { const cmd = parent .command("credit-note") @@ -25,7 +27,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_credit_note", opIdV1: "create_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_credit_note", opIdV1: "create_credit_note", method: "POST", uri: "/credit_notes", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -46,13 +48,13 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note credit-notes-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "GET", uri: "/customers/{id}/credit_notes", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).creditNote.creditNotesForCustomer(resource.id, params); + const result = await (client as any).creditNote.creditNotesForCustomer(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -68,7 +70,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_credit_note", opIdV1: "delete_a_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_credit_note", opIdV1: "delete_a_credit_note", method: "POST", uri: "/credit_notes/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); @@ -91,13 +93,13 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note download-einvoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "download_e-invoice_for_credit_note", opIdV1: "download_e-invoice_for_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "download_e-invoice_for_credit_note", opIdV1: "download_e-invoice_for_credit_note", method: "GET", uri: "/credit_notes/{id}/download_einvoice", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).creditNote.downloadEinvoice(resource.id, params); + const result = await (client as any).creditNote.downloadEinvoice(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -112,7 +114,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note import-credit-note\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "import_credit_note", opIdV1: "import_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "import_credit_note", opIdV1: "import_credit_note", method: "POST", uri: "/credit_notes/import_credit_note", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -133,13 +135,13 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_credit_notes", opIdV1: "list_credit_notes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_credit_notes", opIdV1: "list_credit_notes", method: "GET", uri: "/credit_notes", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "credit-note"); else warnBareListFilters(opts.data ?? [], "credit-note"); try { const client = await getClient(); - const result = await (client as any).creditNote.list(params); + const result = await (client as any).creditNote.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -155,7 +157,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note pdf\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "retrieve_credit_note_as_pdf", opIdV1: "retrieve_credit_note_as_pdf", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_credit_note_as_pdf", opIdV1: "retrieve_credit_note_as_pdf", method: "POST", uri: "/credit_notes/{id}/pdf", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); @@ -178,7 +180,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note record-refund\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "record_refund_for_a_credit_note", opIdV1: "record_refund_for_a_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "record_refund_for_a_credit_note", opIdV1: "record_refund_for_a_credit_note", method: "POST", uri: "/credit_notes/{id}/record_refund", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); @@ -201,7 +203,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note refund\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "refund_a_credit_note", opIdV1: "refund_a_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "refund_a_credit_note", opIdV1: "refund_a_credit_note", method: "POST", uri: "/credit_notes/{id}/refund", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); @@ -224,7 +226,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note remove-tax-withheld-refund\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_tax_withheld_refunds_from_a_credit_note", opIdV1: "remove_tax_withheld_refunds_from_a_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_tax_withheld_refunds_from_a_credit_note", opIdV1: "remove_tax_withheld_refunds_from_a_credit_note", method: "POST", uri: "/credit_notes/{id}/remove_tax_withheld_refund", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); @@ -247,7 +249,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note resend-einvoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "resend_failed_einvoice_in_credit_notes", opIdV1: "resend_failed_einvoice_in_credit_notes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "resend_failed_einvoice_in_credit_notes", opIdV1: "resend_failed_einvoice_in_credit_notes", method: "POST", uri: "/credit_notes/{id}/resend_einvoice", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); @@ -270,13 +272,13 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_credit_note", opIdV1: "retrieve_a_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_credit_note", opIdV1: "retrieve_a_credit_note", method: "GET", uri: "/credit_notes/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).creditNote.retrieve(resource.id, params); + const result = await (client as any).creditNote.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -292,7 +294,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note send-einvoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "send_an_einvoice_for_credit_notes", opIdV1: "send_an_einvoice_for_credit_notes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "send_an_einvoice_for_credit_notes", opIdV1: "send_an_einvoice_for_credit_notes", method: "POST", uri: "/credit_notes/{id}/send_einvoice", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); @@ -315,7 +317,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note send-email\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "send_credit_note_email", opIdV1: "send_credit_note_email", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "send_credit_note_email", opIdV1: "send_credit_note_email", method: "POST", uri: "/credit_notes/{id}/send_email", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); @@ -338,7 +340,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_credit_note_details", opIdV1: "update_credit_note_details", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_credit_note_details", opIdV1: "update_credit_note_details", method: "POST", uri: "/credit_notes/{id}/update", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); @@ -361,7 +363,7 @@ export function registerCreditNote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-note void-credit-note\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "void_a_credit_note", opIdV1: "void_a_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "void_a_credit_note", opIdV1: "void_a_credit_note", method: "POST", uri: "/credit_notes/{id}/void", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-note-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-note-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/credit_unit.ts b/src/commands/generated/credit_unit.ts index e8a402b..bb437b2 100644 --- a/src/commands/generated/credit_unit.ts +++ b/src/commands/generated/credit_unit.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerCreditUnit(parent: Command): void { const cmd = parent .command("credit-unit") @@ -26,7 +28,7 @@ export function registerCreditUnit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-unit archive\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "archive_a_credit_unit", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "credit-unit archive"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "archive_a_credit_unit", opIdV1: "", method: "POST", uri: "/credit_units/{id}/archive_command", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-unit-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-unit-id'"); @@ -49,7 +51,7 @@ export function registerCreditUnit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-unit create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_credit_unit", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "credit-unit create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_credit_unit", opIdV1: "", method: "POST", uri: "/credit_units", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -71,14 +73,14 @@ export function registerCreditUnit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-unit list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_credit_units", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "credit-unit list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_credit_units", opIdV1: "", method: "GET", uri: "/credit_units", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "credit-unit"); else warnBareListFilters(opts.data ?? [], "credit-unit"); try { const client = await getClient(); - const result = await (client as any).creditUnit.list(params); + const result = await (client as any).creditUnit.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -94,7 +96,7 @@ export function registerCreditUnit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-unit reactivate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "reactivate_a_credit_unit", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "credit-unit reactivate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "reactivate_a_credit_unit", opIdV1: "", method: "POST", uri: "/credit_units/{id}/reactivate_command", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-unit-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-unit-id'"); @@ -118,7 +120,7 @@ export function registerCreditUnit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs credit-unit update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_credit_unit", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "credit-unit update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_credit_unit", opIdV1: "", method: "POST", uri: "/credit_units/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "credit-unit-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'credit-unit-id'"); diff --git a/src/commands/generated/currency.ts b/src/commands/generated/currency.ts index cf1472d..e7b8676 100644 --- a/src/commands/generated/currency.ts +++ b/src/commands/generated/currency.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerCurrency(parent: Command): void { const cmd = parent .command("currency") @@ -25,7 +27,7 @@ export function registerCurrency(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs currency add-schedule\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "add_schedule", opIdV1: "add_schedule", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "add_schedule", opIdV1: "add_schedule", method: "POST", uri: "/currencies/{id}/add_schedule", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "site-currency-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'site-currency-id'"); assertResourceId(resource.id, command); @@ -47,7 +49,7 @@ export function registerCurrency(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs currency create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "add_a_new_currency", opIdV1: "add_a_new_currency", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "add_a_new_currency", opIdV1: "add_a_new_currency", method: "POST", uri: "/currencies", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -68,13 +70,13 @@ export function registerCurrency(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs currency list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_currencies", opIdV1: "list_currencies", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_currencies", opIdV1: "list_currencies", method: "GET", uri: "/currencies/list", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "currency"); else warnBareListFilters(opts.data ?? [], "currency"); try { const client = await getClient(); - const result = await (client as any).currency.list(params); + const result = await (client as any).currency.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -90,7 +92,7 @@ export function registerCurrency(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs currency remove-schedule\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_schedule", opIdV1: "remove_schedule", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_schedule", opIdV1: "remove_schedule", method: "POST", uri: "/currencies/{id}/remove_schedule", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "site-currency-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'site-currency-id'"); assertResourceId(resource.id, command); @@ -113,13 +115,13 @@ export function registerCurrency(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs currency retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_currency", opIdV1: "retrieve_a_currency", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_currency", opIdV1: "retrieve_a_currency", method: "GET", uri: "/currencies/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "site-currency-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'site-currency-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).currency.retrieve(resource.id, params); + const result = await (client as any).currency.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -135,7 +137,7 @@ export function registerCurrency(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs currency update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_currency", opIdV1: "update_a_currency", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_currency", opIdV1: "update_a_currency", method: "POST", uri: "/currencies/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "site-currency-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'site-currency-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/customer.ts b/src/commands/generated/customer.ts index fa4d043..0bc7c67 100644 --- a/src/commands/generated/customer.ts +++ b/src/commands/generated/customer.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerCustomer(parent: Command): void { const cmd = parent .command("customer") @@ -25,7 +27,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer add-contact\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "add_contacts_to_a_customer", opIdV1: "add_contacts_to_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "add_contacts_to_a_customer", opIdV1: "add_contacts_to_a_customer", method: "POST", uri: "/customers/{id}/add_contact", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -48,7 +50,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer add-promotional-credits\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/customers/{id}/add_promotional_credits", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); @@ -71,7 +73,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer assign-payment-role\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "assign_payment_role", opIdV1: "assign_payment_role", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "assign_payment_role", opIdV1: "assign_payment_role", method: "POST", uri: "/customers/{id}/assign_payment_role", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -94,7 +96,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer change-billing-date\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "change_billing_date", opIdV1: "change_billing_date", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "change_billing_date", opIdV1: "change_billing_date", method: "POST", uri: "/customers/{id}/change_billing_date", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -117,7 +119,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer clear-personal-data\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "clear_personal_data_of_a_customer", opIdV1: "clear_personal_data_of_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "clear_personal_data_of_a_customer", opIdV1: "clear_personal_data_of_a_customer", method: "POST", uri: "/customers/{id}/clear_personal_data", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -140,7 +142,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer collect-payment\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "collect_payment_for_customer", opIdV1: "collect_payment_for_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "collect_payment_for_customer", opIdV1: "collect_payment_for_customer", method: "POST", uri: "/customers/{id}/collect_payment", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -163,13 +165,13 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer contacts-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_of_contacts_for_a_customer", opIdV1: "list_of_contacts_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_of_contacts_for_a_customer", opIdV1: "list_of_contacts_for_a_customer", method: "GET", uri: "/customers/{id}/contacts", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).customer.contactsForCustomer(resource.id, params); + const result = await (client as any).customer.contactsForCustomer(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -184,7 +186,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_customer", opIdV1: "create_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_customer", opIdV1: "create_a_customer", method: "POST", uri: "/customers", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -205,7 +207,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer deduct-promotional-credits\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/customers/{id}/deduct_promotional_credits", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); @@ -228,7 +230,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_customer", opIdV1: "delete_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_customer", opIdV1: "delete_a_customer", method: "POST", uri: "/customers/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -251,7 +253,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer delete-contact\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_contacts_for_a_customer", opIdV1: "delete_contacts_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_contacts_for_a_customer", opIdV1: "delete_contacts_for_a_customer", method: "POST", uri: "/customers/{id}/delete_contact", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -274,7 +276,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer delete-relationship\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delink_a_customer", opIdV1: "delink_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delink_a_customer", opIdV1: "delink_a_customer", method: "POST", uri: "/customers/{id}/delete_relationship", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -297,13 +299,13 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer hierarchy\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "get_hierarchy", opIdV1: "get_hierarchy", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "get_hierarchy", opIdV1: "get_hierarchy", method: "GET", uri: "/customers/{id}/hierarchy", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).customer.hierarchy(resource.id, params); + const result = await (client as any).customer.hierarchy(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -319,13 +321,13 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee customer list \\\n -d limit=10\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_customers", opIdV1: "list_customers", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_customers", opIdV1: "list_customers", method: "GET", uri: "/customers", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "customer"); else warnBareListFilters(opts.data ?? [], "customer"); try { const client = await getClient(); - const result = await (client as any).customer.list(params); + const result = await (client as any).customer.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -341,13 +343,13 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer list-hierarchy-detail\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_hierarchy_details", opIdV1: "list_hierarchy_details", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_hierarchy_details", opIdV1: "list_hierarchy_details", method: "GET", uri: "/customers/{id}/hierarchy_detail", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).customer.listHierarchyDetail(resource.id, params); + const result = await (client as any).customer.listHierarchyDetail(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -362,7 +364,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer merge\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "merge_customers", opIdV1: "merge_customers", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "merge_customers", opIdV1: "merge_customers", method: "POST", uri: "/customers/merge", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -382,7 +384,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer move\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "move_a_customer", opIdV1: "move_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "move_a_customer", opIdV1: "move_a_customer", method: "POST", uri: "/customers/move", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -403,7 +405,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer record-excess-payment\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "record_an_excess_payment_for_a_customer", opIdV1: "record_an_excess_payment_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "record_an_excess_payment_for_a_customer", opIdV1: "record_an_excess_payment_for_a_customer", method: "POST", uri: "/customers/{id}/record_excess_payment", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -426,7 +428,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer relationships\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "link_a_customer", opIdV1: "link_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "link_a_customer", opIdV1: "link_a_customer", method: "POST", uri: "/customers/{id}/relationships", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -449,13 +451,13 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee customer retrieve ''\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_customer", opIdV1: "retrieve_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_customer", opIdV1: "retrieve_a_customer", method: "GET", uri: "/customers/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).customer.retrieve(resource.id, params); + const result = await (client as any).customer.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -471,7 +473,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer send-payment-request\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "send_payment_request_email", opIdV1: "send_payment_request_email", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "send_payment_request_email", opIdV1: "send_payment_request_email", method: "POST", uri: "/customers/{id}/send_payment_request", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -494,7 +496,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer set-promotional-credits\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/customers/{id}/set_promotional_credits", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); @@ -517,7 +519,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_customer", opIdV1: "update_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_customer", opIdV1: "update_a_customer", method: "POST", uri: "/customers/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -540,7 +542,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer update-billing-info\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_billing_info_for_a_customer", opIdV1: "update_billing_info_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_billing_info_for_a_customer", opIdV1: "update_billing_info_for_a_customer", method: "POST", uri: "/customers/{id}/update_billing_info", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -563,7 +565,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer update-contact\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_contacts_for_a_customer", opIdV1: "update_contacts_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_contacts_for_a_customer", opIdV1: "update_contacts_for_a_customer", method: "POST", uri: "/customers/{id}/update_contact", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -586,7 +588,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer update-hierarchy-settings\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_hierarchy_access_settings_for_a_customer", opIdV1: "update_hierarchy_access_settings_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_hierarchy_access_settings_for_a_customer", opIdV1: "update_hierarchy_access_settings_for_a_customer", method: "POST", uri: "/customers/{id}/update_hierarchy_settings", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); @@ -609,7 +611,7 @@ export function registerCustomer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer update-payment-method\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_payment_method_for_a_customer", opIdV1: "update_payment_method_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_payment_method_for_a_customer", opIdV1: "update_payment_method_for_a_customer", method: "POST", uri: "/customers/{id}/update_payment_method", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/customer_entitlement.ts b/src/commands/generated/customer_entitlement.ts index c637810..e205353 100644 --- a/src/commands/generated/customer_entitlement.ts +++ b/src/commands/generated/customer_entitlement.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerCustomerEntitlement(parent: Command): void { const cmd = parent .command("customer-entitlement") @@ -25,14 +27,14 @@ export function registerCustomerEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs customer-entitlement entitlements-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_customer_entitlements", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "customer-entitlement entitlements-for-customer"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_customer_entitlements", opIdV1: "", method: "GET", uri: "/customers/{id}/customer_entitlements", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).customerEntitlement.entitlementsForCustomer(resource.id, params); + const result = await (client as any).customerEntitlement.entitlementsForCustomer(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/differential_price.ts b/src/commands/generated/differential_price.ts index 8d3dac5..0f4cac6 100644 --- a/src/commands/generated/differential_price.ts +++ b/src/commands/generated/differential_price.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerDifferentialPrice(parent: Command): void { const cmd = parent .command("differential-price") @@ -26,7 +28,7 @@ export function registerDifferentialPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs differential-price create\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_differential_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "differential-price create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_differential_price", opIdV1: "", method: "POST", uri: "/item_prices/{id}/differential_prices", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-price-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-price-id'"); @@ -50,7 +52,7 @@ export function registerDifferentialPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs differential-price delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_differential_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "differential-price delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_differential_price", opIdV1: "", method: "POST", uri: "/differential_prices/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "differential-price-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'differential-price-id'"); @@ -74,14 +76,14 @@ export function registerDifferentialPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs differential-price list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_differential_prices", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "differential-price list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_differential_prices", opIdV1: "", method: "GET", uri: "/differential_prices", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "differential-price"); else warnBareListFilters(opts.data ?? [], "differential-price"); try { const client = await getClient(); - const result = await (client as any).differentialPrice.list(params); + const result = await (client as any).differentialPrice.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -97,14 +99,14 @@ export function registerDifferentialPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs differential-price retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_differential_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "differential-price retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_differential_price", opIdV1: "", method: "GET", uri: "/differential_prices/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "differential-price-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'differential-price-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).differentialPrice.retrieve(resource.id, params); + const result = await (client as any).differentialPrice.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -120,7 +122,7 @@ export function registerDifferentialPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs differential-price update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_differential_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "differential-price update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_differential_price", opIdV1: "", method: "POST", uri: "/differential_prices/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "differential-price-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'differential-price-id'"); diff --git a/src/commands/generated/dispute.ts b/src/commands/generated/dispute.ts index a0f1227..728260d 100644 --- a/src/commands/generated/dispute.ts +++ b/src/commands/generated/dispute.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerDispute(parent: Command): void { const cmd = parent .command("dispute") @@ -25,13 +27,13 @@ export function registerDispute(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs dispute list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_disputes", opIdV1: "list_disputes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_disputes", opIdV1: "list_disputes", method: "GET", uri: "/disputes", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "dispute"); else warnBareListFilters(opts.data ?? [], "dispute"); try { const client = await getClient(); - const result = await (client as any).dispute.list(params); + const result = await (client as any).dispute.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -47,13 +49,13 @@ export function registerDispute(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs dispute retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_dispute", opIdV1: "retrieve_a_dispute", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_dispute", opIdV1: "retrieve_a_dispute", method: "GET", uri: "/disputes/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "dispute-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'dispute-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).dispute.retrieve(resource.id, params); + const result = await (client as any).dispute.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/einvoice.ts b/src/commands/generated/einvoice.ts index cc9b587..8dacbfa 100644 --- a/src/commands/generated/einvoice.ts +++ b/src/commands/generated/einvoice.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerEinvoice(parent: Command): void { const cmd = parent .command("einvoice") @@ -23,11 +25,11 @@ export function registerEinvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs einvoice list-einvoices\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_e-invoices", opIdV1: "list_e-invoices", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_e-invoices", opIdV1: "list_e-invoices", method: "GET", uri: "/einvoices", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); - const result = await (client as any).einvoice.listEinvoices(params); + const result = await (client as any).einvoice.listEinvoices(toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -43,13 +45,13 @@ export function registerEinvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs einvoice retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_e-invoice", opIdV1: "retrieve_an_e-invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_e-invoice", opIdV1: "retrieve_an_e-invoice", method: "GET", uri: "/einvoices/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "einvoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'einvoice-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).einvoice.retrieve(resource.id, params); + const result = await (client as any).einvoice.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/email_log.ts b/src/commands/generated/email_log.ts index 736ffda..44dc9b6 100644 --- a/src/commands/generated/email_log.ts +++ b/src/commands/generated/email_log.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerEmailLog(parent: Command): void { const cmd = parent .command("email-log") @@ -25,13 +27,13 @@ export function registerEmailLog(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs email-log email-logs-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_email_logs_for_a_customer", opIdV1: "list_email_logs_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_email_logs_for_a_customer", opIdV1: "list_email_logs_for_a_customer", method: "GET", uri: "/customers/{id}/email_logs", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).emailLog.emailLogsForCustomer(resource.id, params); + const result = await (client as any).emailLog.emailLogsForCustomer(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/entitlement.ts b/src/commands/generated/entitlement.ts index aabbad6..d9d45c8 100644 --- a/src/commands/generated/entitlement.ts +++ b/src/commands/generated/entitlement.ts @@ -9,6 +9,8 @@ import { handleCodeSample } from "../../lib/api/generated-command.js"; import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerEntitlement(parent: Command): void { const cmd = parent .command("entitlement") @@ -24,7 +26,7 @@ export function registerEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs entitlement create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "upsert_or_remove_entitlements_for_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "entitlement create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "upsert_or_remove_entitlements_for_a_feature", opIdV1: "", method: "POST", uri: "/entitlements", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -46,14 +48,14 @@ export function registerEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs entitlement list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_all_entitlements", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "entitlement list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_all_entitlements", opIdV1: "", method: "GET", uri: "/entitlements", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "entitlement"); else warnBareListFilters(opts.data ?? [], "entitlement"); try { const client = await getClient(); - const result = await (client as any).entitlement.list(params); + const result = await (client as any).entitlement.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/entitlement_override.ts b/src/commands/generated/entitlement_override.ts index 77d7d52..ae4dc64 100644 --- a/src/commands/generated/entitlement_override.ts +++ b/src/commands/generated/entitlement_override.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerEntitlementOverride(parent: Command): void { const cmd = parent .command("entitlement-override") @@ -25,7 +27,7 @@ export function registerEntitlementOverride(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs entitlement-override add-entitlement-override-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "upsert_or_remove_entitlement_overrides_for_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "entitlement-override add-entitlement-override-for-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "upsert_or_remove_entitlement_overrides_for_a_subscription", opIdV1: "", method: "POST", uri: "/subscriptions/{id}/entitlement_overrides", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -49,14 +51,14 @@ export function registerEntitlementOverride(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs entitlement-override list-entitlement-override-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_entitlement_overrides_for_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "entitlement-override list-entitlement-override-for-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_entitlement_overrides_for_a_subscription", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/entitlement_overrides", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).entitlementOverride.listEntitlementOverrideForSubscription(resource.id, params); + const result = await (client as any).entitlementOverride.listEntitlementOverrideForSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/estimate.ts b/src/commands/generated/estimate.ts index 1cb7f9d..522400e 100644 --- a/src/commands/generated/estimate.ts +++ b/src/commands/generated/estimate.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerEstimate(parent: Command): void { const cmd = parent .command("estimate") @@ -24,7 +26,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate advance-invoice-estimate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "advance_invoice_estimate", opIdV1: "advance_invoice_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "advance_invoice_estimate", opIdV1: "advance_invoice_estimate", method: "POST", uri: "/subscriptions/{id}/advance_invoice_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -46,7 +48,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate cancel-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "cancel_subscription_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "estimate cancel-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "cancel_subscription_estimate", method: "POST", uri: "/subscriptions/{id}/cancel_subscription_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -69,7 +71,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate cancel-subscription-for-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "cancel_subscription_for_items_estimate", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "estimate cancel-subscription-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "cancel_subscription_for_items_estimate", opIdV1: "", method: "POST", uri: "/subscriptions/{id}/cancel_subscription_for_items_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -92,7 +94,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate change-term-end\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "subscription_change_term_end_estimate", opIdV1: "subscription_change_term_end_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "subscription_change_term_end_estimate", opIdV1: "subscription_change_term_end_estimate", method: "POST", uri: "/subscriptions/{id}/change_term_end_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -113,7 +115,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate create-invoice\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_invoice_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "estimate create-invoice"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_invoice_estimate", method: "POST", uri: "/estimates/create_invoice", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -133,7 +135,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate create-invoice-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_invoice_for_items_estimate", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "estimate create-invoice-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_invoice_for_items_estimate", opIdV1: "", method: "POST", uri: "/estimates/create_invoice_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -154,14 +156,14 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate create-sub-for-customer-estimate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "create_subscription_for_a_customer_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "estimate create-sub-for-customer-estimate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_subscription_for_a_customer_estimate", method: "GET", uri: "/customers/{id}/create_subscription_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).estimate.createSubForCustomerEstimate(resource.id, params); + const result = await (client as any).estimate.createSubForCustomerEstimate(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -176,7 +178,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate create-sub-item-estimate\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "estimate_for_creating_a_customer_and_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "estimate create-sub-item-estimate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "estimate_for_creating_a_customer_and_subscription", opIdV1: "", method: "POST", uri: "/estimates/create_subscription_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -197,7 +199,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate create-sub-item-for-customer-estimate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "estimate_for_creating_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "estimate create-sub-item-for-customer-estimate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "estimate_for_creating_a_subscription", opIdV1: "", method: "POST", uri: "/customers/{id}/create_subscription_for_items_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); @@ -219,7 +221,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate create-subscription\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_subscription_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "estimate create-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_subscription_estimate", method: "POST", uri: "/estimates/create_subscription", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -239,7 +241,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate gift-subscription\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "gift_subscription_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "estimate gift-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "gift_subscription_estimate", method: "POST", uri: "/estimates/gift_subscription", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -259,7 +261,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate gift-subscription-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "gift_subscription_estimate_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "estimate gift-subscription-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "gift_subscription_estimate_for_items", opIdV1: "", method: "POST", uri: "/estimates/gift_subscription_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -280,7 +282,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate pause-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "pause_subscription_estimate", opIdV1: "pause_subscription_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "pause_subscription_estimate", opIdV1: "pause_subscription_estimate", method: "POST", uri: "/subscriptions/{id}/pause_subscription_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -301,7 +303,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate payment-schedules\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "estimates_for_payment_schedules", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "estimate payment-schedules"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "estimates_for_payment_schedules", opIdV1: "", method: "POST", uri: "/estimates/payment_schedules", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -322,7 +324,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate regenerate-invoice-estimate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "regenerate_invoice_estimate", opIdV1: "regenerate_invoice_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "regenerate_invoice_estimate", opIdV1: "regenerate_invoice_estimate", method: "POST", uri: "/subscriptions/{id}/regenerate_invoice_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -344,13 +346,13 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate renewal-estimate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "subscription_renewal_estimate", opIdV1: "subscription_renewal_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "subscription_renewal_estimate", opIdV1: "subscription_renewal_estimate", method: "GET", uri: "/subscriptions/{id}/renewal_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).estimate.renewalEstimate(resource.id, params); + const result = await (client as any).estimate.renewalEstimate(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -366,7 +368,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate resume-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "resume_subscription_estimate", opIdV1: "resume_subscription_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "resume_subscription_estimate", opIdV1: "resume_subscription_estimate", method: "POST", uri: "/subscriptions/{id}/resume_subscription_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -388,13 +390,13 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate upcoming-invoices-estimate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "upcoming_invoices_estimate", opIdV1: "upcoming_invoices_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "upcoming_invoices_estimate", opIdV1: "upcoming_invoices_estimate", method: "GET", uri: "/customers/{id}/upcoming_invoices_estimate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).estimate.upcomingInvoicesEstimate(resource.id, params); + const result = await (client as any).estimate.upcomingInvoicesEstimate(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -409,7 +411,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate update-subscription\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "update_subscription_estimate", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "estimate update-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "update_subscription_estimate", method: "POST", uri: "/estimates/update_subscription", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -429,7 +431,7 @@ export function registerEstimate(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs estimate update-subscription-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "estimate_for_updating_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "estimate update-subscription-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "estimate_for_updating_a_subscription", opIdV1: "", method: "POST", uri: "/estimates/update_subscription_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { diff --git a/src/commands/generated/event.ts b/src/commands/generated/event.ts index 90d0fa5..0a7b3fe 100644 --- a/src/commands/generated/event.ts +++ b/src/commands/generated/event.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerEvent(parent: Command): void { const cmd = parent .command("event") @@ -25,13 +27,13 @@ export function registerEvent(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs event list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_events", opIdV1: "list_events", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_events", opIdV1: "list_events", method: "GET", uri: "/events", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "event"); else warnBareListFilters(opts.data ?? [], "event"); try { const client = await getClient(); - const result = await (client as any).event.list(params); + const result = await (client as any).event.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -47,13 +49,13 @@ export function registerEvent(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs event retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_event", opIdV1: "retrieve_an_event", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_event", opIdV1: "retrieve_an_event", method: "GET", uri: "/events/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "event-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'event-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).event.retrieve(resource.id, params); + const result = await (client as any).event.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/export.ts b/src/commands/generated/export.ts index acf3908..ebfa140 100644 --- a/src/commands/generated/export.ts +++ b/src/commands/generated/export.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerExport(parent: Command): void { const cmd = parent .command("export") @@ -23,7 +25,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export addons\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "export_addons", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "export addons"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "export_addons", method: "POST", uri: "/exports/addons", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -43,7 +45,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export attached-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_attached_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "export attached-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_attached_items", opIdV1: "", method: "POST", uri: "/exports/attached_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -63,7 +65,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export coupons\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_coupons", opIdV1: "export_coupons", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_coupons", opIdV1: "export_coupons", method: "POST", uri: "/exports/coupons", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -82,7 +84,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export credit-notes\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_credit_notes", opIdV1: "export_credit_notes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_credit_notes", opIdV1: "export_credit_notes", method: "POST", uri: "/exports/credit_notes", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -101,7 +103,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export customers\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_customers", opIdV1: "export_customers", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_customers", opIdV1: "export_customers", method: "POST", uri: "/exports/customers", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -120,7 +122,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export deferred-revenue\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_deferred_revenue_reports", opIdV1: "export_deferred_revenue_reports", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_deferred_revenue_reports", opIdV1: "export_deferred_revenue_reports", method: "POST", uri: "/exports/deferred_revenue", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -139,7 +141,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export differential-prices\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_differential_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "export differential-prices"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_differential_price", opIdV1: "", method: "POST", uri: "/exports/differential_prices", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -159,7 +161,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export invoices\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_invoices", opIdV1: "export_invoices", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_invoices", opIdV1: "export_invoices", method: "POST", uri: "/exports/invoices", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -178,7 +180,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export item-families\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_item_families", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "export item-families"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_item_families", opIdV1: "", method: "POST", uri: "/exports/item_families", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -198,7 +200,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export item-prices\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_item_prices", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "export item-prices"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_item_prices", opIdV1: "", method: "POST", uri: "/exports/item_prices", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -218,7 +220,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "export items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_items", opIdV1: "", method: "POST", uri: "/exports/items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -238,7 +240,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export orders\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_orders", opIdV1: "export_orders", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_orders", opIdV1: "export_orders", method: "POST", uri: "/exports/orders", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -257,7 +259,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export plans\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "export_plans", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "export plans"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "export_plans", method: "POST", uri: "/exports/plans", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -277,7 +279,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export price-variants\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_price_variants", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "export price-variants"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_price_variants", opIdV1: "", method: "POST", uri: "/exports/price_variants", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -297,7 +299,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export ramps\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_subscription_ramps", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "export ramps"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_subscription_ramps", opIdV1: "", method: "POST", uri: "/exports/ramps", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -318,13 +320,13 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_export", opIdV1: "retrieve_an_export", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_export", opIdV1: "retrieve_an_export", method: "GET", uri: "/exports/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "export-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'export-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).export.retrieve(resource.id, params); + const result = await (client as any).export.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -339,7 +341,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export revenue-recognition\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_revenue_recognition_reports", opIdV1: "export_revenue_recognition_reports", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_revenue_recognition_reports", opIdV1: "export_revenue_recognition_reports", method: "POST", uri: "/exports/revenue_recognition", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -358,7 +360,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export subscriptions\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_subscriptions", opIdV1: "export_subscriptions", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_subscriptions", opIdV1: "export_subscriptions", method: "POST", uri: "/exports/subscriptions", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -377,7 +379,7 @@ export function registerExport(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs export transactions\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_transactions", opIdV1: "export_transactions", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_transactions", opIdV1: "export_transactions", method: "POST", uri: "/exports/transactions", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); diff --git a/src/commands/generated/feature.ts b/src/commands/generated/feature.ts index 5ed901c..e18378d 100644 --- a/src/commands/generated/feature.ts +++ b/src/commands/generated/feature.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerFeature(parent: Command): void { const cmd = parent .command("feature") @@ -25,7 +27,7 @@ export function registerFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs feature activate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "activate_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "feature activate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "activate_a_feature", opIdV1: "", method: "POST", uri: "/features/{id}/activate_command", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'feature-id'"); @@ -49,7 +51,7 @@ export function registerFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs feature archive\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "archive_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "feature archive"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "archive_a_feature", opIdV1: "", method: "POST", uri: "/features/{id}/archive_command", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'feature-id'"); @@ -72,7 +74,7 @@ export function registerFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs feature create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "feature create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_feature", opIdV1: "", method: "POST", uri: "/features", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -94,7 +96,7 @@ export function registerFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs feature delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "feature delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_feature", opIdV1: "", method: "POST", uri: "/features/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'feature-id'"); @@ -118,14 +120,14 @@ export function registerFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs feature list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_features", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "feature list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_features", opIdV1: "", method: "GET", uri: "/features", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "feature"); else warnBareListFilters(opts.data ?? [], "feature"); try { const client = await getClient(); - const result = await (client as any).feature.list(params); + const result = await (client as any).feature.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -141,7 +143,7 @@ export function registerFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs feature reactivate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "reactivate_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "feature reactivate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "reactivate_a_feature", opIdV1: "", method: "POST", uri: "/features/{id}/reactivate_command", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'feature-id'"); @@ -165,14 +167,14 @@ export function registerFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs feature retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "feature retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_feature", opIdV1: "", method: "GET", uri: "/features/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'feature-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).feature.retrieve(resource.id, params); + const result = await (client as any).feature.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -188,7 +190,7 @@ export function registerFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs feature update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "feature update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_feature", opIdV1: "", method: "POST", uri: "/features/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'feature-id'"); diff --git a/src/commands/generated/gift.ts b/src/commands/generated/gift.ts index 0441048..adc4cc0 100644 --- a/src/commands/generated/gift.ts +++ b/src/commands/generated/gift.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerGift(parent: Command): void { const cmd = parent .command("gift") @@ -25,7 +27,7 @@ export function registerGift(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs gift cancel\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "cancel_a_gift", opIdV1: "cancel_a_gift", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "cancel_a_gift", opIdV1: "cancel_a_gift", method: "POST", uri: "/gifts/{id}/cancel", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "gift-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'gift-id'"); assertResourceId(resource.id, command); @@ -48,7 +50,7 @@ export function registerGift(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs gift claim\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "claim_a_gift", opIdV1: "claim_a_gift", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "claim_a_gift", opIdV1: "claim_a_gift", method: "POST", uri: "/gifts/{id}/claim", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "gift-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'gift-id'"); assertResourceId(resource.id, command); @@ -70,7 +72,7 @@ export function registerGift(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs gift create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_a_gift", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "gift create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_a_gift", method: "POST", uri: "/gifts", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -91,7 +93,7 @@ export function registerGift(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs gift create-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_gift_subscription_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "gift create-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_gift_subscription_for_items", opIdV1: "", method: "POST", uri: "/gifts/create_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -113,13 +115,13 @@ export function registerGift(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs gift list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_gifts", opIdV1: "list_gifts", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_gifts", opIdV1: "list_gifts", method: "GET", uri: "/gifts", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "gift"); else warnBareListFilters(opts.data ?? [], "gift"); try { const client = await getClient(); - const result = await (client as any).gift.list(params); + const result = await (client as any).gift.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -135,13 +137,13 @@ export function registerGift(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs gift retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_gift", opIdV1: "retrieve_a_gift", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_gift", opIdV1: "retrieve_a_gift", method: "GET", uri: "/gifts/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "gift-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'gift-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).gift.retrieve(resource.id, params); + const result = await (client as any).gift.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -157,7 +159,7 @@ export function registerGift(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs gift update-gift\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_gift", opIdV1: "update_a_gift", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_gift", opIdV1: "update_a_gift", method: "POST", uri: "/gifts/{id}/update_gift", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "gift-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'gift-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/grant_block.ts b/src/commands/generated/grant_block.ts index b440c2f..0c04cf9 100644 --- a/src/commands/generated/grant_block.ts +++ b/src/commands/generated/grant_block.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerGrantBlock(parent: Command): void { const cmd = parent .command("grant-block") @@ -24,11 +26,11 @@ export function registerGrantBlock(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs grant-block list-grant-blocks\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_grant_blocks", opIdV1: "list_grant_blocks", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_grant_blocks", opIdV1: "list_grant_blocks", method: "GET", uri: "/grant_blocks", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); - const result = await (client as any).grantBlock.listGrantBlocks(params); + const result = await (client as any).grantBlock.listGrantBlocks(toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/hosted_page.ts b/src/commands/generated/hosted_page.ts index 63519a6..03d2bfd 100644 --- a/src/commands/generated/hosted_page.ts +++ b/src/commands/generated/hosted_page.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerHostedPage(parent: Command): void { const cmd = parent .command("hosted-page") @@ -25,7 +27,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page accept-quote\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "accept_a_quote", opIdV1: "accept_a_quote", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "accept_a_quote", opIdV1: "accept_a_quote", method: "POST", uri: "/hosted_pages/accept_quote", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -45,7 +47,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page acknowledge\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "acknowledge_a_hosted_page", opIdV1: "acknowledge_a_hosted_page", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "acknowledge_a_hosted_page", opIdV1: "acknowledge_a_hosted_page", method: "POST", uri: "/hosted_pages/{id}/acknowledge", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "hosted-page-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'hosted-page-id'"); assertResourceId(resource.id, command); @@ -67,7 +69,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page checkout-existing\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "checkout_existing_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "hosted-page checkout-existing"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "checkout_existing_subscription", method: "POST", uri: "/hosted_pages/checkout_existing", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -87,7 +89,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page checkout-existing-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_checkout_to_update_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "hosted-page checkout-existing-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_checkout_to_update_a_subscription", opIdV1: "", method: "POST", uri: "/hosted_pages/checkout_existing_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -107,7 +109,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page checkout-gift\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "checkout_gift_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "hosted-page checkout-gift"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "checkout_gift_subscription", method: "POST", uri: "/hosted_pages/checkout_gift", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -127,7 +129,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page checkout-gift-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "checkout_gift_subscription_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "hosted-page checkout-gift-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "checkout_gift_subscription_for_items", opIdV1: "", method: "POST", uri: "/hosted_pages/checkout_gift_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -147,7 +149,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page checkout-new\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "checkout_new_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "hosted-page checkout-new"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "checkout_new_subscription", method: "POST", uri: "/hosted_pages/checkout_new", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -167,7 +169,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page checkout-new-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_checkout_for_a_new_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "hosted-page checkout-new-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_checkout_for_a_new_subscription", opIdV1: "", method: "POST", uri: "/hosted_pages/checkout_new_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -187,7 +189,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page checkout-one-time\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "checkout_one-time_payments", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "hosted-page checkout-one-time"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "checkout_one-time_payments", method: "POST", uri: "/hosted_pages/checkout_one_time", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -207,7 +209,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page checkout-one-time-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "checkout_charge-items_and_one-time_charges", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "hosted-page checkout-one-time-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "checkout_charge-items_and_one-time_charges", opIdV1: "", method: "POST", uri: "/hosted_pages/checkout_one_time_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { @@ -227,7 +229,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page claim-gift\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "claim_a_gift_subscription", opIdV1: "claim_a_gift_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "claim_a_gift_subscription", opIdV1: "claim_a_gift_subscription", method: "POST", uri: "/hosted_pages/claim_gift", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -246,7 +248,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page collect-now\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "collect_now", opIdV1: "collect_now", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "collect_now", opIdV1: "collect_now", method: "POST", uri: "/hosted_pages/collect_now", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -265,7 +267,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page events\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "notify_an_event", opIdV1: "notify_an_event", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "notify_an_event", opIdV1: "notify_an_event", method: "POST", uri: "/hosted_pages/events", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -285,7 +287,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page extend-subscription\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "extend_subscription", opIdV1: "extend_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "extend_subscription", opIdV1: "extend_subscription", method: "POST", uri: "/hosted_pages/extend_subscription", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -305,13 +307,13 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_hosted_pages", opIdV1: "list_hosted_pages", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_hosted_pages", opIdV1: "list_hosted_pages", method: "GET", uri: "/hosted_pages", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "hosted-page"); else warnBareListFilters(opts.data ?? [], "hosted-page"); try { const client = await getClient(); - const result = await (client as any).hostedPage.list(params); + const result = await (client as any).hostedPage.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -326,7 +328,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page manage-payment-sources\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "manage_payment_sources", opIdV1: "manage_payment_sources", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "manage_payment_sources", opIdV1: "manage_payment_sources", method: "POST", uri: "/hosted_pages/manage_payment_sources", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -345,7 +347,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page pre-cancel\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_pre-cancel_hosted_page", opIdV1: "create_a_pre-cancel_hosted_page", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_pre-cancel_hosted_page", opIdV1: "create_a_pre-cancel_hosted_page", method: "POST", uri: "/hosted_pages/pre_cancel", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -365,13 +367,13 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_hosted_page", opIdV1: "retrieve_a_hosted_page", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_hosted_page", opIdV1: "retrieve_a_hosted_page", method: "GET", uri: "/hosted_pages/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "hosted-page-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'hosted-page-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).hostedPage.retrieve(resource.id, params); + const result = await (client as any).hostedPage.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -386,7 +388,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page retrieve-agreement-pdf\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "retrieve_direct_debit_agreement_pdf", opIdV1: "retrieve_direct_debit_agreement_pdf", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_direct_debit_agreement_pdf", opIdV1: "retrieve_direct_debit_agreement_pdf", method: "POST", uri: "/hosted_pages/retrieve_agreement_pdf", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -405,7 +407,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page update-card\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/hosted_pages/update_card", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -424,7 +426,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page update-payment-method\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/hosted_pages/update_payment_method", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -443,7 +445,7 @@ export function registerHostedPage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs hosted-page view-voucher\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_hosted_page_to_view_boleto_vouchers", opIdV1: "create_a_hosted_page_to_view_boleto_vouchers", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_hosted_page_to_view_boleto_vouchers", opIdV1: "create_a_hosted_page_to_view_boleto_vouchers", method: "POST", uri: "/hosted_pages/view_voucher", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); diff --git a/src/commands/generated/in_app_subscription.ts b/src/commands/generated/in_app_subscription.ts index d54d3bb..9250305 100644 --- a/src/commands/generated/in_app_subscription.ts +++ b/src/commands/generated/in_app_subscription.ts @@ -25,7 +25,7 @@ export function registerInAppSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs in-app-subscription import-receipt\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "import_receipt", opIdV1: "import_receipt", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "import_receipt", opIdV1: "import_receipt", method: "POST", uri: "/in_app_subscriptions/{id}/import_receipt", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "in-app-subscription-app-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'in-app-subscription-app-id'"); assertResourceId(resource.id, command); @@ -48,7 +48,7 @@ export function registerInAppSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs in-app-subscription import-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "import_subscription_without_receipt", opIdV1: "import_subscription_without_receipt", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "import_subscription_without_receipt", opIdV1: "import_subscription_without_receipt", method: "POST", uri: "/in_app_subscriptions/{id}/import_subscription", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "in-app-subscription-app-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'in-app-subscription-app-id'"); assertResourceId(resource.id, command); @@ -71,7 +71,7 @@ export function registerInAppSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs in-app-subscription process-receipt\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "process_purchase_command", opIdV1: "process_purchase_command", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "process_purchase_command", opIdV1: "process_purchase_command", method: "POST", uri: "/in_app_subscriptions/{id}/process_purchase_command", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "in-app-subscription-app-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'in-app-subscription-app-id'"); assertResourceId(resource.id, command); @@ -94,7 +94,7 @@ export function registerInAppSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs in-app-subscription retrieve-store-subs\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "retrieve_store_subscription", opIdV1: "retrieve_store_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_store_subscription", opIdV1: "retrieve_store_subscription", method: "POST", uri: "/in_app_subscriptions/{id}/retrieve", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "in-app-subscription-app-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'in-app-subscription-app-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/invoice.ts b/src/commands/generated/invoice.ts index 68d287d..1178f72 100644 --- a/src/commands/generated/invoice.ts +++ b/src/commands/generated/invoice.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerInvoice(parent: Command): void { const cmd = parent .command("invoice") @@ -25,7 +27,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice add-addon-charge\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "add_non-recurring_addon_to_a_pending_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "invoice add-addon-charge"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "add_non-recurring_addon_to_a_pending_invoice", method: "POST", uri: "/invoices/{id}/add_addon_charge", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); @@ -49,7 +51,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice add-charge\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "add_one-time_charge_to_a_pending_invoice", opIdV1: "add_one-time_charge_to_a_pending_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "add_one-time_charge_to_a_pending_invoice", opIdV1: "add_one-time_charge_to_a_pending_invoice", method: "POST", uri: "/invoices/{id}/add_charge", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -72,7 +74,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice add-charge-item\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "add_a_charge-item_to_a_pending_invoice", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "invoice add-charge-item"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "add_a_charge-item_to_a_pending_invoice", opIdV1: "", method: "POST", uri: "/invoices/{id}/add_charge_item", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); @@ -96,7 +98,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice apply-credits\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "apply_credits_for_an_invoice", opIdV1: "apply_credits_for_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "apply_credits_for_an_invoice", opIdV1: "apply_credits_for_an_invoice", method: "POST", uri: "/invoices/{id}/apply_credits", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -119,7 +121,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice apply-payments\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "apply_payments_for_an_invoice", opIdV1: "apply_payments_for_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "apply_payments_for_an_invoice", opIdV1: "apply_payments_for_an_invoice", method: "POST", uri: "/invoices/{id}/apply_payments", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -142,7 +144,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice apply-payment-schedule-scheme\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "apply_payment_schedule_scheme_to_an_invoice", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "invoice apply-payment-schedule-scheme"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "apply_payment_schedule_scheme_to_an_invoice", opIdV1: "", method: "POST", uri: "/invoices/{id}/apply_payment_schedule_scheme", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); @@ -165,7 +167,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice charge\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_invoice_for_a_one-time_charge", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "invoice charge"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_invoice_for_a_one-time_charge", method: "POST", uri: "/invoices/charge", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -186,7 +188,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice charge-addon\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_invoice_for_a_non-recurring_addon", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "invoice charge-addon"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_invoice_for_a_non-recurring_addon", method: "POST", uri: "/invoices/charge_addon", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -208,7 +210,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice close\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "close_a_pending_invoice", opIdV1: "close_a_pending_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "close_a_pending_invoice", opIdV1: "close_a_pending_invoice", method: "POST", uri: "/invoices/{id}/close", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -231,7 +233,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice collect-payment\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "collect_payment_for_an_invoice", opIdV1: "collect_payment_for_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "collect_payment_for_an_invoice", opIdV1: "collect_payment_for_an_invoice", method: "POST", uri: "/invoices/{id}/collect_payment", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -253,7 +255,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "invoice create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_an_invoice", method: "POST", uri: "/invoices", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -274,7 +276,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice create-for-charge-item\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/invoices/create_for_charge_item", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -294,7 +296,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice create-for-charge-items-and-charges\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_invoice_for_items_and_one-time_charges", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "invoice create-for-charge-items-and-charges"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_invoice_for_items_and_one-time_charges", opIdV1: "", method: "POST", uri: "/invoices/create_for_charge_items_and_charges", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -316,7 +318,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_an_invoice", opIdV1: "delete_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_an_invoice", opIdV1: "delete_an_invoice", method: "POST", uri: "/invoices/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -339,7 +341,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice delete-line-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_line_items", opIdV1: "delete_line_items", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_line_items", opIdV1: "delete_line_items", method: "POST", uri: "/invoices/{id}/delete_line_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -362,13 +364,13 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice download-einvoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "download_e-invoice", opIdV1: "download_e-invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "download_e-invoice", opIdV1: "download_e-invoice", method: "GET", uri: "/invoices/{id}/download_einvoice", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).invoice.downloadEinvoice(resource.id, params); + const result = await (client as any).invoice.downloadEinvoice(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -383,7 +385,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice import-invoice\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "import_invoice", opIdV1: "import_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "import_invoice", opIdV1: "import_invoice", method: "POST", uri: "/invoices/import_invoice", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -404,13 +406,13 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice invoices-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "GET", uri: "/customers/{id}/invoices", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).invoice.invoicesForCustomer(resource.id, params); + const result = await (client as any).invoice.invoicesForCustomer(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -426,13 +428,13 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice invoices-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/invoices", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).invoice.invoicesForSubscription(resource.id, params); + const result = await (client as any).invoice.invoicesForSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -448,13 +450,13 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee invoice list \\\n -d limit=10\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_invoices", opIdV1: "list_invoices", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_invoices", opIdV1: "list_invoices", method: "GET", uri: "/invoices", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "invoice"); else warnBareListFilters(opts.data ?? [], "invoice"); try { const client = await getClient(); - const result = await (client as any).invoice.list(params); + const result = await (client as any).invoice.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -469,11 +471,11 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice list-payment-reference-numbers\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_payment_reference_numbers", opIdV1: "list_payment_reference_numbers", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_payment_reference_numbers", opIdV1: "list_payment_reference_numbers", method: "GET", uri: "/invoices/payment_reference_numbers", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); - const result = await (client as any).invoice.listPaymentReferenceNumbers(params); + const result = await (client as any).invoice.listPaymentReferenceNumbers(toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -489,7 +491,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice pause-dunning\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "pause_dunning_for_invoice", opIdV1: "pause_dunning_for_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "pause_dunning_for_invoice", opIdV1: "pause_dunning_for_invoice", method: "POST", uri: "/invoices/{id}/pause_dunning", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -512,14 +514,14 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice payment-schedules\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_payment_schedules_for_an_invoice", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "invoice payment-schedules"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_payment_schedules_for_an_invoice", opIdV1: "", method: "GET", uri: "/invoices/{id}/payment_schedules", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).invoice.paymentSchedules(resource.id, params); + const result = await (client as any).invoice.paymentSchedules(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -535,7 +537,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice pdf\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "retrieve_invoice_as_pdf", opIdV1: "retrieve_invoice_as_pdf", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_invoice_as_pdf", opIdV1: "retrieve_invoice_as_pdf", method: "POST", uri: "/invoices/{id}/pdf", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -558,7 +560,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice record-payment\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "record_an_invoice_payment", opIdV1: "record_an_invoice_payment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "record_an_invoice_payment", opIdV1: "record_an_invoice_payment", method: "POST", uri: "/invoices/{id}/record_payment", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -581,7 +583,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice record-refund\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "record_refund_for_an_invoice", opIdV1: "record_refund_for_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "record_refund_for_an_invoice", opIdV1: "record_refund_for_an_invoice", method: "POST", uri: "/invoices/{id}/record_refund", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -604,7 +606,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice record-tax-withheld\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "record_tax_withheld_for_an_invoice", opIdV1: "record_tax_withheld_for_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "record_tax_withheld_for_an_invoice", opIdV1: "record_tax_withheld_for_an_invoice", method: "POST", uri: "/invoices/{id}/record_tax_withheld", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -627,7 +629,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice refund\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "refund_an_invoice", opIdV1: "refund_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "refund_an_invoice", opIdV1: "refund_an_invoice", method: "POST", uri: "/invoices/{id}/refund", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -650,7 +652,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice remove-credit-note\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_credit_note_from_an_invoice", opIdV1: "remove_credit_note_from_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_credit_note_from_an_invoice", opIdV1: "remove_credit_note_from_an_invoice", method: "POST", uri: "/invoices/{id}/remove_credit_note", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -673,7 +675,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice remove-payment\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_payment_from_an_invoice", opIdV1: "remove_payment_from_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_payment_from_an_invoice", opIdV1: "remove_payment_from_an_invoice", method: "POST", uri: "/invoices/{id}/remove_payment", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -696,7 +698,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice remove-tax-withheld\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_tax_withheld_for_an_invoice", opIdV1: "remove_tax_withheld_for_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_tax_withheld_for_an_invoice", opIdV1: "remove_tax_withheld_for_an_invoice", method: "POST", uri: "/invoices/{id}/remove_tax_withheld", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -719,7 +721,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice resend-einvoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "resend_failed_einvoice_in_invoices", opIdV1: "resend_failed_einvoice_in_invoices", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "resend_failed_einvoice_in_invoices", opIdV1: "resend_failed_einvoice_in_invoices", method: "POST", uri: "/invoices/{id}/resend_einvoice", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -742,7 +744,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice resume-dunning\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "resume_dunning_for_invoice", opIdV1: "resume_dunning_for_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "resume_dunning_for_invoice", opIdV1: "resume_dunning_for_invoice", method: "POST", uri: "/invoices/{id}/resume_dunning", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -765,13 +767,13 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee invoice retrieve '' \\\n -d line_items_limit=100\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_invoice", opIdV1: "retrieve_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_invoice", opIdV1: "retrieve_an_invoice", method: "GET", uri: "/invoices/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).invoice.retrieve(resource.id, params); + const result = await (client as any).invoice.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -787,7 +789,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice send-einvoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "send_an_einvoice_for_invoices", opIdV1: "send_an_einvoice_for_invoices", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "send_an_einvoice_for_invoices", opIdV1: "send_an_einvoice_for_invoices", method: "POST", uri: "/invoices/{id}/send_einvoice", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -810,7 +812,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice send-email\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "send_invoice_email", opIdV1: "send_invoice_email", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "send_invoice_email", opIdV1: "send_invoice_email", method: "POST", uri: "/invoices/{id}/send_email", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -833,7 +835,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice stop-dunning\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "stop_dunning_for_invoice", opIdV1: "stop_dunning_for_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "stop_dunning_for_invoice", opIdV1: "stop_dunning_for_invoice", method: "POST", uri: "/invoices/{id}/stop_dunning", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -856,7 +858,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice sync-usages\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "sync_usages", opIdV1: "sync_usages", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "sync_usages", opIdV1: "sync_usages", method: "POST", uri: "/invoices/{id}/sync_usages", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -879,7 +881,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice update-details\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_invoice_details", opIdV1: "update_invoice_details", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_invoice_details", opIdV1: "update_invoice_details", method: "POST", uri: "/invoices/{id}/update_details", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -902,7 +904,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice void-before-capture\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "void_authorizations_before_capture", opIdV1: "void_authorizations_before_capture", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "void_authorizations_before_capture", opIdV1: "void_authorizations_before_capture", method: "POST", uri: "/invoices/{id}/void_before_capture", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -925,7 +927,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice void-invoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "void_an_invoice", opIdV1: "void_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "void_an_invoice", opIdV1: "void_an_invoice", method: "POST", uri: "/invoices/{id}/void", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); @@ -948,7 +950,7 @@ export function registerInvoice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs invoice write-off\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "write_off_an_invoice", opIdV1: "write_off_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "write_off_an_invoice", opIdV1: "write_off_an_invoice", method: "POST", uri: "/invoices/{id}/write_off", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/item.ts b/src/commands/generated/item.ts index c98b56d..f3d87d7 100644 --- a/src/commands/generated/item.ts +++ b/src/commands/generated/item.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerItem(parent: Command): void { const cmd = parent .command("item") @@ -24,7 +26,7 @@ export function registerItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_an_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_item", opIdV1: "", method: "POST", uri: "/items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -46,7 +48,7 @@ export function registerItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_an_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_an_item", opIdV1: "", method: "POST", uri: "/items/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-id'"); @@ -70,14 +72,14 @@ export function registerItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee item list \\\n -d limit=10\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_items", opIdV1: "", method: "GET", uri: "/items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "item"); else warnBareListFilters(opts.data ?? [], "item"); try { const client = await getClient(); - const result = await (client as any).item.list(params); + const result = await (client as any).item.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -93,14 +95,14 @@ export function registerItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee item retrieve ''\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_item", opIdV1: "", method: "GET", uri: "/items/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).item.retrieve(resource.id, params); + const result = await (client as any).item.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -116,7 +118,7 @@ export function registerItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_an_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_an_item", opIdV1: "", method: "POST", uri: "/items/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-id'"); diff --git a/src/commands/generated/item_entitlement.ts b/src/commands/generated/item_entitlement.ts index 16b4c8d..6cb7e87 100644 --- a/src/commands/generated/item_entitlement.ts +++ b/src/commands/generated/item_entitlement.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerItemEntitlement(parent: Command): void { const cmd = parent .command("item-entitlement") @@ -25,7 +27,7 @@ export function registerItemEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-entitlement add-item-entitlements\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "upsert_or_remove_item_entitlements_for_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-entitlement add-item-entitlements"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "upsert_or_remove_item_entitlements_for_a_feature", opIdV1: "", method: "POST", uri: "/features/{id}/item_entitlements", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'feature-id'"); @@ -49,14 +51,14 @@ export function registerItemEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-entitlement item-entitlements-for-feature\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_item_entitlements_for_a_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-entitlement item-entitlements-for-feature"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_item_entitlements_for_a_feature", opIdV1: "", method: "GET", uri: "/features/{id}/item_entitlements", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'feature-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).itemEntitlement.itemEntitlementsForFeature(resource.id, params); + const result = await (client as any).itemEntitlement.itemEntitlementsForFeature(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -72,14 +74,14 @@ export function registerItemEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-entitlement item-entitlements-for-item\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_item_entitlements_for_an_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-entitlement item-entitlements-for-item"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_item_entitlements_for_an_item", opIdV1: "", method: "GET", uri: "/items/{id}/item_entitlements", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).itemEntitlement.itemEntitlementsForItem(resource.id, params); + const result = await (client as any).itemEntitlement.itemEntitlementsForItem(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -95,7 +97,7 @@ export function registerItemEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-entitlement upsert-or-remove-item-entitlements-for-item\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "upsert_or_remove_item_entitlements_for_an_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-entitlement upsert-or-remove-item-entitlements-for-item"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "upsert_or_remove_item_entitlements_for_an_item", opIdV1: "", method: "POST", uri: "/items/{id}/item_entitlements", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-id'"); diff --git a/src/commands/generated/item_family.ts b/src/commands/generated/item_family.ts index 11a17c3..e8e7a37 100644 --- a/src/commands/generated/item_family.ts +++ b/src/commands/generated/item_family.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerItemFamily(parent: Command): void { const cmd = parent .command("item-family") @@ -25,7 +27,7 @@ export function registerItemFamily(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-family create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_an_item_family", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-family create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_item_family", opIdV1: "", method: "POST", uri: "/item_families", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -47,7 +49,7 @@ export function registerItemFamily(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-family delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_an_item_family", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-family delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_an_item_family", opIdV1: "", method: "POST", uri: "/item_families/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-family-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-family-id'"); @@ -71,14 +73,14 @@ export function registerItemFamily(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee item-family list \\\n -d limit=10\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-family list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_item_families", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-family list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_item_families", opIdV1: "", method: "GET", uri: "/item_families", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "item-family"); else warnBareListFilters(opts.data ?? [], "item-family"); try { const client = await getClient(); - const result = await (client as any).itemFamily.list(params); + const result = await (client as any).itemFamily.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -94,14 +96,14 @@ export function registerItemFamily(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee item-family retrieve ''\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-family retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_item_family", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-family retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_item_family", opIdV1: "", method: "GET", uri: "/item_families/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-family-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-family-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).itemFamily.retrieve(resource.id, params); + const result = await (client as any).itemFamily.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -117,7 +119,7 @@ export function registerItemFamily(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-family update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_an_item_family", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-family update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_an_item_family", opIdV1: "", method: "POST", uri: "/item_families/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-family-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-family-id'"); diff --git a/src/commands/generated/item_price.ts b/src/commands/generated/item_price.ts index d056685..978ad37 100644 --- a/src/commands/generated/item_price.ts +++ b/src/commands/generated/item_price.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerItemPrice(parent: Command): void { const cmd = parent .command("item-price") @@ -25,7 +27,7 @@ export function registerItemPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-price create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_an_item_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-price create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_item_price", opIdV1: "", method: "POST", uri: "/item_prices", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -47,7 +49,7 @@ export function registerItemPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-price delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_an_item_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-price delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_an_item_price", opIdV1: "", method: "POST", uri: "/item_prices/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-price-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-price-id'"); @@ -71,14 +73,14 @@ export function registerItemPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-price find-applicable-item-prices\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_applicable_item_prices_for_a_plan-item_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-price find-applicable-item-prices"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_applicable_item_prices_for_a_plan-item_price", opIdV1: "", method: "GET", uri: "/item_prices/{id}/applicable_item_prices", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-price-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-price-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).itemPrice.findApplicableItemPrices(resource.id, params); + const result = await (client as any).itemPrice.findApplicableItemPrices(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -94,14 +96,14 @@ export function registerItemPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-price find-applicable-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_applicable_items_for_a_plan-item_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-price find-applicable-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_applicable_items_for_a_plan-item_price", opIdV1: "", method: "GET", uri: "/item_prices/{id}/applicable_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-price-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-price-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).itemPrice.findApplicableItems(resource.id, params); + const result = await (client as any).itemPrice.findApplicableItems(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -117,14 +119,14 @@ export function registerItemPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee item-price list \\\n -d limit=10\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-price list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_item_prices", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-price list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_item_prices", opIdV1: "", method: "GET", uri: "/item_prices", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "item-price"); else warnBareListFilters(opts.data ?? [], "item-price"); try { const client = await getClient(); - const result = await (client as any).itemPrice.list(params); + const result = await (client as any).itemPrice.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -140,14 +142,14 @@ export function registerItemPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee item-price retrieve ''\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-price retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_item_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-price retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_item_price", opIdV1: "", method: "GET", uri: "/item_prices/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-price-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-price-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).itemPrice.retrieve(resource.id, params); + const result = await (client as any).itemPrice.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -163,7 +165,7 @@ export function registerItemPrice(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs item-price update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_an_item_price", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "item-price update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_an_item_price", opIdV1: "", method: "POST", uri: "/item_prices/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "item-price-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'item-price-id'"); diff --git a/src/commands/generated/ledger_account_balance.ts b/src/commands/generated/ledger_account_balance.ts index a5ce3bb..05c4e27 100644 --- a/src/commands/generated/ledger_account_balance.ts +++ b/src/commands/generated/ledger_account_balance.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerLedgerAccountBalance(parent: Command): void { const cmd = parent .command("ledger-account-balance") @@ -24,12 +26,12 @@ export function registerLedgerAccountBalance(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ledger-account-balance list-ledger-account-balances\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_ledger_account_balances", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ledger-account-balance list-ledger-account-balances"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_ledger_account_balances", opIdV1: "", method: "GET", uri: "/ledger_account_balances", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); - const result = await (client as any).ledgerAccountBalance.listLedgerAccountBalances(params); + const result = await (client as any).ledgerAccountBalance.listLedgerAccountBalances(toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/ledger_operation.ts b/src/commands/generated/ledger_operation.ts index 7309f73..a71d5bf 100644 --- a/src/commands/generated/ledger_operation.ts +++ b/src/commands/generated/ledger_operation.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerLedgerOperation(parent: Command): void { const cmd = parent .command("ledger-operation") @@ -24,7 +26,7 @@ export function registerLedgerOperation(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ledger-operation allocate\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "allocate", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ledger-operation allocate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "allocate", opIdV1: "", method: "POST", uri: "/ledger_operations/allocate", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -45,7 +47,7 @@ export function registerLedgerOperation(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ledger-operation authorize\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "authorize", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ledger-operation authorize"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "authorize", opIdV1: "", method: "POST", uri: "/ledger_operations/authorize", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -66,7 +68,7 @@ export function registerLedgerOperation(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ledger-operation capture\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "capture", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ledger-operation capture"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "capture", opIdV1: "", method: "POST", uri: "/ledger_operations/capture", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -87,7 +89,7 @@ export function registerLedgerOperation(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ledger-operation capture-authorization\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "capture_authorization", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ledger-operation capture-authorization"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "capture_authorization", opIdV1: "", method: "POST", uri: "/ledger_operations/capture_authorization", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -108,12 +110,12 @@ export function registerLedgerOperation(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ledger-operation list-ledger-operations\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_ledger_operations", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ledger-operation list-ledger-operations"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_ledger_operations", opIdV1: "", method: "GET", uri: "/ledger_operations", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); - const result = await (client as any).ledgerOperation.listLedgerOperations(params); + const result = await (client as any).ledgerOperation.listLedgerOperations(toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -128,7 +130,7 @@ export function registerLedgerOperation(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ledger-operation release-authorization\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "release_authorization", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ledger-operation release-authorization"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "release_authorization", opIdV1: "", method: "POST", uri: "/ledger_operations/release_authorization", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -150,14 +152,14 @@ export function registerLedgerOperation(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ledger-operation retrieve-ledger-operation\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_ledger_operation", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ledger-operation retrieve-ledger-operation"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_ledger_operation", opIdV1: "", method: "GET", uri: "/ledger_operations/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "ledger-operation-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'ledger-operation-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).ledgerOperation.retrieveLedgerOperation(resource.id, params); + const result = await (client as any).ledgerOperation.retrieveLedgerOperation(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/meter.ts b/src/commands/generated/meter.ts index 5dc5fba..a4a1a24 100644 --- a/src/commands/generated/meter.ts +++ b/src/commands/generated/meter.ts @@ -9,6 +9,8 @@ import { handleCodeSample } from "../../lib/api/generated-command.js"; import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerMeter(parent: Command): void { const cmd = parent .command("meter") @@ -25,14 +27,14 @@ export function registerMeter(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs meter list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_all_available_meters", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "meter list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_all_available_meters", opIdV1: "", method: "GET", uri: "/meters", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "meter"); else warnBareListFilters(opts.data ?? [], "meter"); try { const client = await getClient(); - const result = await (client as any).meter.list(params); + const result = await (client as any).meter.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/metered_feature.ts b/src/commands/generated/metered_feature.ts index b5e38c6..59bfce8 100644 --- a/src/commands/generated/metered_feature.ts +++ b/src/commands/generated/metered_feature.ts @@ -25,7 +25,7 @@ export function registerMeteredFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs metered-feature archive\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "archive_a_metered_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "metered-feature archive"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "archive_a_metered_feature", opIdV1: "", method: "POST", uri: "/metered_features/{id}/archive_command", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "metered-feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'metered-feature-id'"); @@ -48,7 +48,7 @@ export function registerMeteredFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs metered-feature create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_metered_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "metered-feature create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_metered_feature", opIdV1: "", method: "POST", uri: "/metered_features", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -70,7 +70,7 @@ export function registerMeteredFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs metered-feature delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_metered_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "metered-feature delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_metered_feature", opIdV1: "", method: "POST", uri: "/metered_features/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "metered-feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'metered-feature-id'"); @@ -94,7 +94,7 @@ export function registerMeteredFeature(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs metered-feature reactivate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "reactivate_a_metered_feature", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "metered-feature reactivate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "reactivate_a_metered_feature", opIdV1: "", method: "POST", uri: "/metered_features/{id}/reactivate_command", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "metered-feature-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'metered-feature-id'"); diff --git a/src/commands/generated/non_subscription.ts b/src/commands/generated/non_subscription.ts index 8021943..a99bfbf 100644 --- a/src/commands/generated/non_subscription.ts +++ b/src/commands/generated/non_subscription.ts @@ -25,7 +25,7 @@ export function registerNonSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs non-subscription process-receipt\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "one_time_purchase", opIdV1: "one_time_purchase", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "one_time_purchase", opIdV1: "one_time_purchase", method: "POST", uri: "/non_subscriptions/{id}/one_time_purchase", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "non-subscription-app-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'non-subscription-app-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/offer_event.ts b/src/commands/generated/offer_event.ts index 358ba71..6d92597 100644 --- a/src/commands/generated/offer_event.ts +++ b/src/commands/generated/offer_event.ts @@ -24,7 +24,7 @@ export function registerOfferEvent(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs offer-event offer-events\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "create_an_offer_event", opIdV1: "create_an_offer_event", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_offer_event", opIdV1: "create_an_offer_event", method: "POST", uri: "/offer_events", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { diff --git a/src/commands/generated/offer_fulfillment.ts b/src/commands/generated/offer_fulfillment.ts index 64011c9..e0b317f 100644 --- a/src/commands/generated/offer_fulfillment.ts +++ b/src/commands/generated/offer_fulfillment.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerOfferFulfillment(parent: Command): void { const cmd = parent .command("offer-fulfillment") @@ -24,7 +26,7 @@ export function registerOfferFulfillment(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs offer-fulfillment offer-fulfillments\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "create_an_offer_fulfillment", opIdV1: "create_an_offer_fulfillment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_offer_fulfillment", opIdV1: "create_an_offer_fulfillment", method: "POST", uri: "/offer_fulfillments", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -45,13 +47,13 @@ export function registerOfferFulfillment(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs offer-fulfillment offer-fulfillments-get\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_offer_fulfillment", opIdV1: "retrieve_an_offer_fulfillment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_offer_fulfillment", opIdV1: "retrieve_an_offer_fulfillment", method: "GET", uri: "/offer_fulfillments/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "offer-fulfillment-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'offer-fulfillment-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).offerFulfillment.offerFulfillmentsGet(resource.id, params); + const result = await (client as any).offerFulfillment.offerFulfillmentsGet(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -67,7 +69,7 @@ export function registerOfferFulfillment(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs offer-fulfillment offer-fulfillments-update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "update_an_offer_fulfillment", opIdV1: "update_an_offer_fulfillment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_an_offer_fulfillment", opIdV1: "update_an_offer_fulfillment", method: "POST", uri: "/offer_fulfillments/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "offer-fulfillment-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'offer-fulfillment-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/omnichannel_one_time_order.ts b/src/commands/generated/omnichannel_one_time_order.ts index b0bd0b4..76282d8 100644 --- a/src/commands/generated/omnichannel_one_time_order.ts +++ b/src/commands/generated/omnichannel_one_time_order.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerOmnichannelOneTimeOrder(parent: Command): void { const cmd = parent .command("omnichannel-one-time-order") @@ -26,14 +28,14 @@ export function registerOmnichannelOneTimeOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs omnichannel-one-time-order list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_omnichannel_one_time_orders", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "omnichannel-one-time-order list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_omnichannel_one_time_orders", opIdV1: "", method: "GET", uri: "/omnichannel_one_time_orders", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "omnichannel-one-time-order"); else warnBareListFilters(opts.data ?? [], "omnichannel-one-time-order"); try { const client = await getClient(); - const result = await (client as any).omnichannelOneTimeOrder.list(params); + const result = await (client as any).omnichannelOneTimeOrder.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -49,14 +51,14 @@ export function registerOmnichannelOneTimeOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs omnichannel-one-time-order retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_omnichannel_one_time_order", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "omnichannel-one-time-order retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_omnichannel_one_time_order", opIdV1: "", method: "GET", uri: "/omnichannel_one_time_orders/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "omnichannel-one-time-order-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'omnichannel-one-time-order-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).omnichannelOneTimeOrder.retrieve(resource.id, params); + const result = await (client as any).omnichannelOneTimeOrder.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/omnichannel_subscription.ts b/src/commands/generated/omnichannel_subscription.ts index 17371e4..a50e0fe 100644 --- a/src/commands/generated/omnichannel_subscription.ts +++ b/src/commands/generated/omnichannel_subscription.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerOmnichannelSubscription(parent: Command): void { const cmd = parent .command("omnichannel-subscription") @@ -26,14 +28,14 @@ export function registerOmnichannelSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs omnichannel-subscription list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_omnichannel_subscriptions", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "omnichannel-subscription list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_omnichannel_subscriptions", opIdV1: "", method: "GET", uri: "/omnichannel_subscriptions", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "omnichannel-subscription"); else warnBareListFilters(opts.data ?? [], "omnichannel-subscription"); try { const client = await getClient(); - const result = await (client as any).omnichannelSubscription.list(params); + const result = await (client as any).omnichannelSubscription.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -49,7 +51,7 @@ export function registerOmnichannelSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs omnichannel-subscription move\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "move_an_omnichannel_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "omnichannel-subscription move"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "move_an_omnichannel_subscription", opIdV1: "", method: "POST", uri: "/omnichannel_subscriptions/{id}/move", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "omnichannel-subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'omnichannel-subscription-id'"); @@ -73,14 +75,14 @@ export function registerOmnichannelSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs omnichannel-subscription omnichannel_transactions-for-omnichannel-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_omnichannel_transactions_of_an_omnichannel_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "omnichannel-subscription omnichannel_transactions-for-omnichannel-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_omnichannel_transactions_of_an_omnichannel_subscription", opIdV1: "", method: "GET", uri: "/omnichannel_subscriptions/{id}/omnichannel_transactions", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "omnichannel-subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'omnichannel-subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).omnichannelSubscription.omnichannel_transactionsForOmnichannelSubscription(resource.id, params); + const result = await (client as any).omnichannelSubscription.omnichannel_transactionsForOmnichannelSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -96,14 +98,14 @@ export function registerOmnichannelSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs omnichannel-subscription retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_omnichannel_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "omnichannel-subscription retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_omnichannel_subscription", opIdV1: "", method: "GET", uri: "/omnichannel_subscriptions/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "omnichannel-subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'omnichannel-subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).omnichannelSubscription.retrieve(resource.id, params); + const result = await (client as any).omnichannelSubscription.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/omnichannel_subscription_item.ts b/src/commands/generated/omnichannel_subscription_item.ts index 0e7ba50..c3b0009 100644 --- a/src/commands/generated/omnichannel_subscription_item.ts +++ b/src/commands/generated/omnichannel_subscription_item.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerOmnichannelSubscriptionItem(parent: Command): void { const cmd = parent .command("omnichannel-subscription-item") @@ -25,14 +27,14 @@ export function registerOmnichannelSubscriptionItem(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs omnichannel-subscription-item list-omni-sub-item-schedule-changes\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_scheduled_changes_for_omnichannel_subscription_item", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "omnichannel-subscription-item list-omni-sub-item-schedule-changes"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_scheduled_changes_for_omnichannel_subscription_item", opIdV1: "", method: "GET", uri: "/omnichannel_subscription_items/{id}/scheduled_changes", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "omnichannel-subscription-item-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'omnichannel-subscription-item-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).omnichannelSubscriptionItem.listOmniSubItemScheduleChanges(resource.id, params); + const result = await (client as any).omnichannelSubscriptionItem.listOmniSubItemScheduleChanges(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/order.ts b/src/commands/generated/order.ts index af77965..d4ba734 100644 --- a/src/commands/generated/order.ts +++ b/src/commands/generated/order.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerOrder(parent: Command): void { const cmd = parent .command("order") @@ -25,7 +27,7 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order assign-order-number\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "assign_order_number", opIdV1: "assign_order_number", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "assign_order_number", opIdV1: "assign_order_number", method: "POST", uri: "/orders/{id}/assign_order_number", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "order-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'order-id'"); assertResourceId(resource.id, command); @@ -48,7 +50,7 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order cancel\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "cancel_an_order", opIdV1: "cancel_an_order", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "cancel_an_order", opIdV1: "cancel_an_order", method: "POST", uri: "/orders/{id}/cancel", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "order-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'order-id'"); assertResourceId(resource.id, command); @@ -70,7 +72,7 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_an_order", opIdV1: "create_an_order", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_order", opIdV1: "create_an_order", method: "POST", uri: "/orders", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -91,7 +93,7 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order create-refundable-credit-note\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_refundable_credit_note", opIdV1: "create_a_refundable_credit_note", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_refundable_credit_note", opIdV1: "create_a_refundable_credit_note", method: "POST", uri: "/orders/{id}/create_refundable_credit_note", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "order-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'order-id'"); assertResourceId(resource.id, command); @@ -114,7 +116,7 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_an_imported_order", opIdV1: "delete_an_imported_order", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_an_imported_order", opIdV1: "delete_an_imported_order", method: "POST", uri: "/orders/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "order-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'order-id'"); assertResourceId(resource.id, command); @@ -136,7 +138,7 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order import-order\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "import_an_order", opIdV1: "import_an_order", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "import_an_order", opIdV1: "import_an_order", method: "POST", uri: "/orders/import_order", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -157,13 +159,13 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_orders", opIdV1: "list_orders", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_orders", opIdV1: "list_orders", method: "GET", uri: "/orders", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "order"); else warnBareListFilters(opts.data ?? [], "order"); try { const client = await getClient(); - const result = await (client as any).order.list(params); + const result = await (client as any).order.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -179,13 +181,13 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order orders-for-invoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "GET", uri: "/invoices/{id}/orders", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).order.ordersForInvoice(resource.id, params); + const result = await (client as any).order.ordersForInvoice(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -201,7 +203,7 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order reopen\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "reopen_a_cancelled_order", opIdV1: "reopen_a_cancelled_order", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "reopen_a_cancelled_order", opIdV1: "reopen_a_cancelled_order", method: "POST", uri: "/orders/{id}/reopen", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "order-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'order-id'"); assertResourceId(resource.id, command); @@ -224,7 +226,7 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order resend\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "resend_an_order", opIdV1: "resend_an_order", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "resend_an_order", opIdV1: "resend_an_order", method: "POST", uri: "/orders/{id}/resend", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "order-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'order-id'"); assertResourceId(resource.id, command); @@ -247,13 +249,13 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_an_order", opIdV1: "retrieve_an_order", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_an_order", opIdV1: "retrieve_an_order", method: "GET", uri: "/orders/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "order-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'order-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).order.retrieve(resource.id, params); + const result = await (client as any).order.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -269,7 +271,7 @@ export function registerOrder(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs order update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_an_order", opIdV1: "update_an_order", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_an_order", opIdV1: "update_an_order", method: "POST", uri: "/orders/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "order-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'order-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/payment_intent.ts b/src/commands/generated/payment_intent.ts index 95c52b2..91d0704 100644 --- a/src/commands/generated/payment_intent.ts +++ b/src/commands/generated/payment_intent.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerPaymentIntent(parent: Command): void { const cmd = parent .command("payment-intent") @@ -24,7 +26,7 @@ export function registerPaymentIntent(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-intent create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_payment_intent", opIdV1: "create_a_payment_intent", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_payment_intent", opIdV1: "create_a_payment_intent", method: "POST", uri: "/payment_intents", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -45,13 +47,13 @@ export function registerPaymentIntent(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-intent retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_payment_intent", opIdV1: "retrieve_a_payment_intent", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_payment_intent", opIdV1: "retrieve_a_payment_intent", method: "GET", uri: "/payment_intents/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "payment-intent-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'payment-intent-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).paymentIntent.retrieve(resource.id, params); + const result = await (client as any).paymentIntent.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -67,7 +69,7 @@ export function registerPaymentIntent(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-intent update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_payment_intent", opIdV1: "update_a_payment_intent", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_payment_intent", opIdV1: "update_a_payment_intent", method: "POST", uri: "/payment_intents/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "payment-intent-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'payment-intent-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/payment_schedule.ts b/src/commands/generated/payment_schedule.ts index 37b32b7..79e9251 100644 --- a/src/commands/generated/payment_schedule.ts +++ b/src/commands/generated/payment_schedule.ts @@ -9,6 +9,8 @@ import { handleCodeSample } from "../../lib/api/generated-command.js"; import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerPaymentSchedule(parent: Command): void { const cmd = parent .command("payment-schedule") @@ -26,14 +28,14 @@ export function registerPaymentSchedule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-schedule list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_payment_schedules", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "payment-schedule list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_payment_schedules", opIdV1: "", method: "GET", uri: "/payment_schedules", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "payment-schedule"); else warnBareListFilters(opts.data ?? [], "payment-schedule"); try { const client = await getClient(); - const result = await (client as any).paymentSchedule.list(params); + const result = await (client as any).paymentSchedule.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/payment_schedule_scheme.ts b/src/commands/generated/payment_schedule_scheme.ts index 6b78b20..3a4ac63 100644 --- a/src/commands/generated/payment_schedule_scheme.ts +++ b/src/commands/generated/payment_schedule_scheme.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerPaymentScheduleScheme(parent: Command): void { const cmd = parent .command("payment-schedule-scheme") @@ -25,7 +27,7 @@ export function registerPaymentScheduleScheme(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-schedule-scheme create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_payment_schedule_scheme", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "payment-schedule-scheme create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_payment_schedule_scheme", opIdV1: "", method: "POST", uri: "/payment_schedule_schemes", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -47,7 +49,7 @@ export function registerPaymentScheduleScheme(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-schedule-scheme delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_payment_schedule_scheme", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "payment-schedule-scheme delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_payment_schedule_scheme", opIdV1: "", method: "POST", uri: "/payment_schedule_schemes/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "payment-schedule-scheme-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'payment-schedule-scheme-id'"); @@ -71,14 +73,14 @@ export function registerPaymentScheduleScheme(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-schedule-scheme list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_payment_schedule_schemes", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "payment-schedule-scheme list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_payment_schedule_schemes", opIdV1: "", method: "GET", uri: "/payment_schedule_schemes", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "payment-schedule-scheme"); else warnBareListFilters(opts.data ?? [], "payment-schedule-scheme"); try { const client = await getClient(); - const result = await (client as any).paymentScheduleScheme.list(params); + const result = await (client as any).paymentScheduleScheme.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -94,14 +96,14 @@ export function registerPaymentScheduleScheme(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-schedule-scheme retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_payment_schedule_scheme", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "payment-schedule-scheme retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_payment_schedule_scheme", opIdV1: "", method: "GET", uri: "/payment_schedule_schemes/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "payment-schedule-scheme-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'payment-schedule-scheme-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).paymentScheduleScheme.retrieve(resource.id, params); + const result = await (client as any).paymentScheduleScheme.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/payment_source.ts b/src/commands/generated/payment_source.ts index 3779457..3b34087 100644 --- a/src/commands/generated/payment_source.ts +++ b/src/commands/generated/payment_source.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerPaymentSource(parent: Command): void { const cmd = parent .command("payment-source") @@ -25,7 +27,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source create-bank-account\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_bank_account_payment_source", opIdV1: "create_a_bank_account_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_bank_account_payment_source", opIdV1: "create_a_bank_account_payment_source", method: "POST", uri: "/payment_sources/create_bank_account", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -45,7 +47,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source create-card\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_card_payment_source", opIdV1: "create_a_card_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_card_payment_source", opIdV1: "create_a_card_payment_source", method: "POST", uri: "/payment_sources/create_card", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -65,7 +67,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source create-using-payment-intent\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_using_payment_intent", opIdV1: "create_using_payment_intent", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_using_payment_intent", opIdV1: "create_using_payment_intent", method: "POST", uri: "/payment_sources/create_using_payment_intent", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -85,7 +87,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source create-using-permanent-token\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_using_permanent_token", opIdV1: "create_using_permanent_token", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_using_permanent_token", opIdV1: "create_using_permanent_token", method: "POST", uri: "/payment_sources/create_using_permanent_token", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -105,7 +107,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source create-using-temp-token\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_using_gateway_temporary_token", opIdV1: "create_using_gateway_temporary_token", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_using_gateway_temporary_token", opIdV1: "create_using_gateway_temporary_token", method: "POST", uri: "/payment_sources/create_using_temp_token", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -125,7 +127,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source create-using-token\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_using_chargebee_token", opIdV1: "create_using_chargebee_token", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_using_chargebee_token", opIdV1: "create_using_chargebee_token", method: "POST", uri: "/payment_sources/create_using_token", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -145,7 +147,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source create-voucher-payment-source\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_voucher_payment_method", opIdV1: "create_a_voucher_payment_method", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_voucher_payment_method", opIdV1: "create_a_voucher_payment_method", method: "POST", uri: "/payment_sources/create_voucher_payment_source", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -166,7 +168,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_payment_source", opIdV1: "delete_a_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_payment_source", opIdV1: "delete_a_payment_source", method: "POST", uri: "/payment_sources/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "cust-payment-source-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'cust-payment-source-id'"); assertResourceId(resource.id, command); @@ -189,7 +191,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source delete-local\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "local_delete_a_payment_source", opIdV1: "local_delete_a_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "local_delete_a_payment_source", opIdV1: "local_delete_a_payment_source", method: "POST", uri: "/payment_sources/{id}/delete_local", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "cust-payment-source-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'cust-payment-source-id'"); assertResourceId(resource.id, command); @@ -212,7 +214,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source export-payment-source\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "export_payment_source", opIdV1: "export_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "export_payment_source", opIdV1: "export_payment_source", method: "POST", uri: "/payment_sources/{id}/export_payment_source", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "cust-payment-source-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'cust-payment-source-id'"); assertResourceId(resource.id, command); @@ -235,13 +237,13 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_payment_sources", opIdV1: "list_payment_sources", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_payment_sources", opIdV1: "list_payment_sources", method: "GET", uri: "/payment_sources", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "payment-source"); else warnBareListFilters(opts.data ?? [], "payment-source"); try { const client = await getClient(); - const result = await (client as any).paymentSource.list(params); + const result = await (client as any).paymentSource.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -257,13 +259,13 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source list-gateway-tokens-for-payment-source\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_gateway_payment_method_tokens_for_a_payment_source", opIdV1: "list_gateway_payment_method_tokens_for_a_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_gateway_payment_method_tokens_for_a_payment_source", opIdV1: "list_gateway_payment_method_tokens_for_a_payment_source", method: "GET", uri: "/payment_sources/{id}/gateway_payment_method_tokens", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "cust-payment-source-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'cust-payment-source-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).paymentSource.listGatewayTokensForPaymentSource(resource.id, params); + const result = await (client as any).paymentSource.listGatewayTokensForPaymentSource(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -279,13 +281,13 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_payment_source", opIdV1: "retrieve_a_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_payment_source", opIdV1: "retrieve_a_payment_source", method: "GET", uri: "/payment_sources/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "cust-payment-source-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'cust-payment-source-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).paymentSource.retrieve(resource.id, params); + const result = await (client as any).paymentSource.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -301,7 +303,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source switch-gateway-account\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "switch_gateway_account", opIdV1: "switch_gateway_account", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "switch_gateway_account", opIdV1: "switch_gateway_account", method: "POST", uri: "/payment_sources/{id}/switch_gateway_account", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "cust-payment-source-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'cust-payment-source-id'"); assertResourceId(resource.id, command); @@ -324,7 +326,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source update-bank-account\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_bank_account_payment_source", opIdV1: "update_a_bank_account_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_bank_account_payment_source", opIdV1: "update_a_bank_account_payment_source", method: "POST", uri: "/payment_sources/{id}/update_bank_account", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "cust-payment-source-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'cust-payment-source-id'"); assertResourceId(resource.id, command); @@ -347,7 +349,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source update-card\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_card_payment_source", opIdV1: "update_a_card_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_card_payment_source", opIdV1: "update_a_card_payment_source", method: "POST", uri: "/payment_sources/{id}/update_card", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "cust-payment-source-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'cust-payment-source-id'"); assertResourceId(resource.id, command); @@ -370,7 +372,7 @@ export function registerPaymentSource(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-source verify-bank-account\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "verify_bank_account_payment_source", opIdV1: "verify_bank_account_payment_source", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "verify_bank_account_payment_source", opIdV1: "verify_bank_account_payment_source", method: "POST", uri: "/payment_sources/{id}/verify_bank_account", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "cust-payment-source-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'cust-payment-source-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/payment_voucher.ts b/src/commands/generated/payment_voucher.ts index 964d503..165c614 100644 --- a/src/commands/generated/payment_voucher.ts +++ b/src/commands/generated/payment_voucher.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerPaymentVoucher(parent: Command): void { const cmd = parent .command("payment-voucher") @@ -24,7 +26,7 @@ export function registerPaymentVoucher(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-voucher create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_voucher_for_the_customer_to_initiate_payment", opIdV1: "create_a_voucher_for_the_customer_to_initiate_payment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_voucher_for_the_customer_to_initiate_payment", opIdV1: "create_a_voucher_for_the_customer_to_initiate_payment", method: "POST", uri: "/payment_vouchers", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -45,13 +47,13 @@ export function registerPaymentVoucher(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-voucher payment_vouchers-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_vouchers_for_a_customer", opIdV1: "list_vouchers_for_a_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_vouchers_for_a_customer", opIdV1: "list_vouchers_for_a_customer", method: "GET", uri: "/customers/{id}/payment_vouchers", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).paymentVoucher.payment_vouchersForCustomer(resource.id, params); + const result = await (client as any).paymentVoucher.payment_vouchersForCustomer(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -67,13 +69,13 @@ export function registerPaymentVoucher(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-voucher payment_vouchers-for-invoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_vouchers_for_an_invoice", opIdV1: "list_vouchers_for_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_vouchers_for_an_invoice", opIdV1: "list_vouchers_for_an_invoice", method: "GET", uri: "/invoices/{id}/payment_vouchers", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).paymentVoucher.payment_vouchersForInvoice(resource.id, params); + const result = await (client as any).paymentVoucher.payment_vouchersForInvoice(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -89,13 +91,13 @@ export function registerPaymentVoucher(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs payment-voucher retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_voucher_data", opIdV1: "retrieve_voucher_data", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_voucher_data", opIdV1: "retrieve_voucher_data", method: "GET", uri: "/payment_vouchers/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "payment-voucher-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'payment-voucher-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).paymentVoucher.retrieve(resource.id, params); + const result = await (client as any).paymentVoucher.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/personalized_offer.ts b/src/commands/generated/personalized_offer.ts index 03199d9..f97f4d2 100644 --- a/src/commands/generated/personalized_offer.ts +++ b/src/commands/generated/personalized_offer.ts @@ -24,7 +24,7 @@ export function registerPersonalizedOffer(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs personalized-offer personalized-offers\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "list_personalized_offers", opIdV1: "list_personalized_offers", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_personalized_offers", opIdV1: "list_personalized_offers", method: "POST", uri: "/personalized_offers", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { diff --git a/src/commands/generated/plan.ts b/src/commands/generated/plan.ts index 5d10508..2e0f325 100644 --- a/src/commands/generated/plan.ts +++ b/src/commands/generated/plan.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerPlan(parent: Command): void { const cmd = parent .command("plan") @@ -24,7 +26,7 @@ export function registerPlan(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs plan copy\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "copy_a_plan", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "plan copy"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "copy_a_plan", method: "POST", uri: "/plans/copy", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -45,7 +47,7 @@ export function registerPlan(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs plan create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_a_plan", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "plan create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_a_plan", method: "POST", uri: "/plans", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -67,7 +69,7 @@ export function registerPlan(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs plan delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "delete_a_plan", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "plan delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "delete_a_plan", method: "POST", uri: "/plans/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "plan-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'plan-id'"); @@ -91,14 +93,14 @@ export function registerPlan(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs plan list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "list_plans", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "plan list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "list_plans", method: "GET", uri: "/plans", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "plan"); else warnBareListFilters(opts.data ?? [], "plan"); try { const client = await getClient(); - const result = await (client as any).plan.list(params); + const result = await (client as any).plan.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -114,14 +116,14 @@ export function registerPlan(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs plan retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "retrieve_a_plan", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "plan retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "retrieve_a_plan", method: "GET", uri: "/plans/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "plan-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'plan-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).plan.retrieve(resource.id, params); + const result = await (client as any).plan.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -137,7 +139,7 @@ export function registerPlan(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs plan unarchive\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "unarchive_a_plan", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "plan unarchive"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "unarchive_a_plan", method: "POST", uri: "/plans/{id}/unarchive", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "plan-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'plan-id'"); @@ -161,7 +163,7 @@ export function registerPlan(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs plan update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "update_a_plan", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "plan update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "update_a_plan", method: "POST", uri: "/plans/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "plan-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'plan-id'"); diff --git a/src/commands/generated/portal_session.ts b/src/commands/generated/portal_session.ts index 1b5d5cc..45ee557 100644 --- a/src/commands/generated/portal_session.ts +++ b/src/commands/generated/portal_session.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerPortalSession(parent: Command): void { const cmd = parent .command("portal-session") @@ -25,7 +27,7 @@ export function registerPortalSession(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs portal-session activate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "activate_a_portal_session", opIdV1: "activate_a_portal_session", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "activate_a_portal_session", opIdV1: "activate_a_portal_session", method: "POST", uri: "/portal_sessions/{id}/activate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "portal-session-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'portal-session-id'"); assertResourceId(resource.id, command); @@ -47,7 +49,7 @@ export function registerPortalSession(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs portal-session create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_portal_session", opIdV1: "create_a_portal_session", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_portal_session", opIdV1: "create_a_portal_session", method: "POST", uri: "/portal_sessions", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); @@ -67,7 +69,7 @@ export function registerPortalSession(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs portal-session logout\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "logout_a_portal_session", opIdV1: "logout_a_portal_session", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "logout_a_portal_session", opIdV1: "logout_a_portal_session", method: "POST", uri: "/portal_sessions/{id}/logout", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "portal-session-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'portal-session-id'"); assertResourceId(resource.id, command); @@ -90,13 +92,13 @@ export function registerPortalSession(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs portal-session retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_portal_session", opIdV1: "retrieve_a_portal_session", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_portal_session", opIdV1: "retrieve_a_portal_session", method: "GET", uri: "/portal_sessions/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "portal-session-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'portal-session-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).portalSession.retrieve(resource.id, params); + const result = await (client as any).portalSession.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/price_variant.ts b/src/commands/generated/price_variant.ts index 69fb315..f0c912c 100644 --- a/src/commands/generated/price_variant.ts +++ b/src/commands/generated/price_variant.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerPriceVariant(parent: Command): void { const cmd = parent .command("price-variant") @@ -25,7 +27,7 @@ export function registerPriceVariant(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs price-variant create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_price_variant", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "price-variant create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_price_variant", opIdV1: "", method: "POST", uri: "/price_variants", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -47,7 +49,7 @@ export function registerPriceVariant(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs price-variant delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_price_variant", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "price-variant delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_price_variant", opIdV1: "", method: "POST", uri: "/price_variants/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "price-variant-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'price-variant-id'"); @@ -71,14 +73,14 @@ export function registerPriceVariant(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs price-variant list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_price_variants", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "price-variant list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_price_variants", opIdV1: "", method: "GET", uri: "/price_variants", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "price-variant"); else warnBareListFilters(opts.data ?? [], "price-variant"); try { const client = await getClient(); - const result = await (client as any).priceVariant.list(params); + const result = await (client as any).priceVariant.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -94,14 +96,14 @@ export function registerPriceVariant(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs price-variant retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_price_variant", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "price-variant retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_price_variant", opIdV1: "", method: "GET", uri: "/price_variants/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "price-variant-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'price-variant-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).priceVariant.retrieve(resource.id, params); + const result = await (client as any).priceVariant.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -117,7 +119,7 @@ export function registerPriceVariant(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs price-variant update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_price_variant", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "price-variant update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_price_variant", opIdV1: "", method: "POST", uri: "/price_variants/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "price-variant-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'price-variant-id'"); diff --git a/src/commands/generated/pricing_page_session.ts b/src/commands/generated/pricing_page_session.ts index 6ea7ba1..3cfec67 100644 --- a/src/commands/generated/pricing_page_session.ts +++ b/src/commands/generated/pricing_page_session.ts @@ -24,7 +24,7 @@ export function registerPricingPageSession(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs pricing-page-session create-for-existing-subscription\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_pricing_page_for_existing_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "pricing-page-session create-for-existing-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_pricing_page_for_existing_subscription", opIdV1: "", method: "POST", uri: "/pricing_page_sessions/create_for_existing_subscription", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -45,7 +45,7 @@ export function registerPricingPageSession(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs pricing-page-session create-for-new-subscription\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_pricing_page_for_new_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "pricing-page-session create-for-new-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_pricing_page_for_new_subscription", opIdV1: "", method: "POST", uri: "/pricing_page_sessions/create_for_new_subscription", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); diff --git a/src/commands/generated/promotional_credit.ts b/src/commands/generated/promotional_credit.ts index 40cec77..02bde80 100644 --- a/src/commands/generated/promotional_credit.ts +++ b/src/commands/generated/promotional_credit.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerPromotionalCredit(parent: Command): void { const cmd = parent .command("promotional-credit") @@ -25,7 +27,7 @@ export function registerPromotionalCredit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs promotional-credit add\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "add_promotional_credits", opIdV1: "add_promotional_credits", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "add_promotional_credits", opIdV1: "add_promotional_credits", method: "POST", uri: "/promotional_credits/add", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -45,7 +47,7 @@ export function registerPromotionalCredit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs promotional-credit deduct\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "deduct_promotional_credits", opIdV1: "deduct_promotional_credits", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "deduct_promotional_credits", opIdV1: "deduct_promotional_credits", method: "POST", uri: "/promotional_credits/deduct", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -66,13 +68,13 @@ export function registerPromotionalCredit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs promotional-credit list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_promotional_credits", opIdV1: "list_promotional_credits", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_promotional_credits", opIdV1: "list_promotional_credits", method: "GET", uri: "/promotional_credits", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "promotional-credit"); else warnBareListFilters(opts.data ?? [], "promotional-credit"); try { const client = await getClient(); - const result = await (client as any).promotionalCredit.list(params); + const result = await (client as any).promotionalCredit.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -88,13 +90,13 @@ export function registerPromotionalCredit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs promotional-credit retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_promotional_credit", opIdV1: "retrieve_a_promotional_credit", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_promotional_credit", opIdV1: "retrieve_a_promotional_credit", method: "GET", uri: "/promotional_credits/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "account-credit-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'account-credit-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).promotionalCredit.retrieve(resource.id, params); + const result = await (client as any).promotionalCredit.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -109,7 +111,7 @@ export function registerPromotionalCredit(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs promotional-credit set\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "set_promotional_credits", opIdV1: "set_promotional_credits", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "set_promotional_credits", opIdV1: "set_promotional_credits", method: "POST", uri: "/promotional_credits/set", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { diff --git a/src/commands/generated/promotional_grant.ts b/src/commands/generated/promotional_grant.ts index 0934bfe..ea8ec8f 100644 --- a/src/commands/generated/promotional_grant.ts +++ b/src/commands/generated/promotional_grant.ts @@ -24,7 +24,7 @@ export function registerPromotionalGrant(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs promotional-grant promotional-grants\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "create_promotional_grant", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "promotional-grant promotional-grants"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_promotional_grant", opIdV1: "", method: "POST", uri: "/promotional_grants", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); diff --git a/src/commands/generated/purchase.ts b/src/commands/generated/purchase.ts index 2fab02e..88e5d41 100644 --- a/src/commands/generated/purchase.ts +++ b/src/commands/generated/purchase.ts @@ -23,7 +23,7 @@ export function registerPurchase(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs purchase create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_purchase", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "purchase create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_purchase", opIdV1: "", method: "POST", uri: "/purchases", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -44,7 +44,7 @@ export function registerPurchase(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs purchase estimate\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "estimates_for_purchase", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "purchase estimate"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "estimates_for_purchase", opIdV1: "", method: "POST", uri: "/purchases/estimate", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); diff --git a/src/commands/generated/quote.ts b/src/commands/generated/quote.ts index 66828ae..668fefa 100644 --- a/src/commands/generated/quote.ts +++ b/src/commands/generated/quote.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerQuote(parent: Command): void { const cmd = parent .command("quote") @@ -25,7 +27,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote convert\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "convert_a_quote", opIdV1: "convert_a_quote", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "convert_a_quote", opIdV1: "convert_a_quote", method: "POST", uri: "/quotes/{id}/convert", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); assertResourceId(resource.id, command); @@ -47,7 +49,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote create-for-charge-items-and-charges\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_quote_for_charge_and_charge_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "quote create-for-charge-items-and-charges"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_quote_for_charge_and_charge_items", opIdV1: "", method: "POST", uri: "/quotes/create_for_charge_items_and_charges", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -68,7 +70,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote create-for-onetime-charges\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_quote_for_one-time_charges", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "quote create-for-onetime-charges"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_quote_for_one-time_charges", method: "POST", uri: "/quotes/create_for_onetime_charges", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -90,7 +92,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote create-signature\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/quotes/{id}/create_signature", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); @@ -113,7 +115,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote create-sub-for-customer-quote\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_quote_for_a_new_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "quote create-sub-for-customer-quote"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_quote_for_a_new_subscription", method: "POST", uri: "/customers/{id}/create_subscription_quote", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); @@ -137,7 +139,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote create-sub-items-for-customer-quote\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_quote_for_a_new_subscription_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "quote create-sub-items-for-customer-quote"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_quote_for_a_new_subscription_items", opIdV1: "", method: "POST", uri: "/customers/{id}/create_subscription_quote_for_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); @@ -161,7 +163,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_quote", opIdV1: "delete_a_quote", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_quote", opIdV1: "delete_a_quote", method: "POST", uri: "/quotes/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); assertResourceId(resource.id, command); @@ -184,7 +186,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote edit-create-sub-customer-quote-for-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "edit_create_subscription_quote_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "quote edit-create-sub-customer-quote-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "edit_create_subscription_quote_for_items", opIdV1: "", method: "POST", uri: "/quotes/{id}/edit_create_subscription_quote_for_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); @@ -208,7 +210,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote edit-create-sub-for-customer-quote\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "edit_quote_for_a_new_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "quote edit-create-sub-for-customer-quote"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "edit_quote_for_a_new_subscription", method: "POST", uri: "/quotes/{id}/edit_create_subscription_quote", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); @@ -232,7 +234,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote edit-for-charge-items-and-charges\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "edit_quote_for_charge_items_and_charges", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "quote edit-for-charge-items-and-charges"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "edit_quote_for_charge_items_and_charges", opIdV1: "", method: "POST", uri: "/quotes/{id}/edit_for_charge_items_and_charges", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); @@ -256,7 +258,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote edit-one-time-quote\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "edit_quote_for_one-time_charges", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "quote edit-one-time-quote"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "edit_quote_for_one-time_charges", method: "POST", uri: "/quotes/{id}/edit_one_time_quote", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); @@ -280,7 +282,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote edit-update-subscription-quote\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "edit_quote_for_updating_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "quote edit-update-subscription-quote"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "edit_quote_for_updating_a_subscription", method: "POST", uri: "/quotes/{id}/edit_update_subscription_quote", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); @@ -304,7 +306,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote edit-update-subscription-quote-for-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "edit_update_subscription_quote_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "quote edit-update-subscription-quote-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "edit_update_subscription_quote_for_items", opIdV1: "", method: "POST", uri: "/quotes/{id}/edit_update_subscription_quote_for_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); @@ -328,7 +330,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote extend-expiry-date\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "extend_expiry_date", opIdV1: "extend_expiry_date", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "extend_expiry_date", opIdV1: "extend_expiry_date", method: "POST", uri: "/quotes/{id}/extend_expiry_date", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); assertResourceId(resource.id, command); @@ -351,13 +353,13 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_quotes", opIdV1: "list_quotes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_quotes", opIdV1: "list_quotes", method: "GET", uri: "/quotes", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "quote"); else warnBareListFilters(opts.data ?? [], "quote"); try { const client = await getClient(); - const result = await (client as any).quote.list(params); + const result = await (client as any).quote.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -373,7 +375,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote pdf\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "retrieve_quote_as_pdf", opIdV1: "retrieve_quote_as_pdf", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_quote_as_pdf", opIdV1: "retrieve_quote_as_pdf", method: "POST", uri: "/quotes/{id}/pdf", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); assertResourceId(resource.id, command); @@ -396,13 +398,13 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote quote-line-groups-for-quote\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_quote_line_groups", opIdV1: "list_quote_line_groups", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_quote_line_groups", opIdV1: "list_quote_line_groups", method: "GET", uri: "/quotes/{id}/quote_line_groups", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).quote.quoteLineGroupsForQuote(resource.id, params); + const result = await (client as any).quote.quoteLineGroupsForQuote(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -418,7 +420,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote refresh-signature-link\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/quotes/{id}/refresh_signature_link", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); @@ -441,13 +443,13 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_quote", opIdV1: "retrieve_a_quote", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_quote", opIdV1: "retrieve_a_quote", method: "GET", uri: "/quotes/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).quote.retrieve(resource.id, params); + const result = await (client as any).quote.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -463,13 +465,13 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote retrieve-signature\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "GET", uri: "/quotes/{id}/retrieve_signature", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).quote.retrieveSignature(resource.id, params); + const result = await (client as any).quote.retrieveSignature(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -485,7 +487,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote retrieve-signed-pdf\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/quotes/{id}/retrieve_signed_pdf", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); @@ -507,7 +509,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote update-signature\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/quotes/{id}/update_signature", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); @@ -530,7 +532,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote update-signature-status\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "POST", uri: "/quotes/{id}/update_signature_status", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); @@ -553,7 +555,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote update-status\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_quote_status", opIdV1: "update_quote_status", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_quote_status", opIdV1: "update_quote_status", method: "POST", uri: "/quotes/{id}/update_status", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); assertResourceId(resource.id, command); @@ -575,7 +577,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote update-subscription-quote\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_quote_for_updating_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "quote update-subscription-quote"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_quote_for_updating_a_subscription", method: "POST", uri: "/quotes/update_subscription_quote", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -596,7 +598,7 @@ export function registerQuote(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote update-subscription-quote-for-items\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_quote_for_update_subscription_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "quote update-subscription-quote-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_quote_for_update_subscription_items", opIdV1: "", method: "POST", uri: "/quotes/update_subscription_quote_for_items", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); diff --git a/src/commands/generated/quote_entitlement.ts b/src/commands/generated/quote_entitlement.ts index 4999aef..a84c8e8 100644 --- a/src/commands/generated/quote_entitlement.ts +++ b/src/commands/generated/quote_entitlement.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerQuoteEntitlement(parent: Command): void { const cmd = parent .command("quote-entitlement") @@ -25,13 +27,13 @@ export function registerQuoteEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs quote-entitlement list-quote-entitlements\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_quote_entitlements", opIdV1: "list_quote_entitlements", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_quote_entitlements", opIdV1: "list_quote_entitlements", method: "GET", uri: "/quotes/{id}/quote_entitlements", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "quote-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'quote-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).quoteEntitlement.listQuoteEntitlements(resource.id, params); + const result = await (client as any).quoteEntitlement.listQuoteEntitlements(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/ramp.ts b/src/commands/generated/ramp.ts index b615439..4dc8339 100644 --- a/src/commands/generated/ramp.ts +++ b/src/commands/generated/ramp.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerRamp(parent: Command): void { const cmd = parent .command("ramp") @@ -25,7 +27,7 @@ export function registerRamp(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ramp create-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_ramp", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ramp create-for-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_ramp", opIdV1: "", method: "POST", uri: "/subscriptions/{id}/create_ramp", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -49,7 +51,7 @@ export function registerRamp(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ramp delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_ramp", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ramp delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_ramp", opIdV1: "", method: "POST", uri: "/ramps/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "ramp-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'ramp-id'"); @@ -73,14 +75,14 @@ export function registerRamp(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ramp list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_ramps", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ramp list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_ramps", opIdV1: "", method: "GET", uri: "/ramps", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "ramp"); else warnBareListFilters(opts.data ?? [], "ramp"); try { const client = await getClient(); - const result = await (client as any).ramp.list(params); + const result = await (client as any).ramp.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -96,14 +98,14 @@ export function registerRamp(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ramp retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_ramp", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ramp retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_ramp", opIdV1: "", method: "GET", uri: "/ramps/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "ramp-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'ramp-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).ramp.retrieve(resource.id, params); + const result = await (client as any).ramp.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -119,7 +121,7 @@ export function registerRamp(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs ramp update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_subscription_ramp", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "ramp update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_subscription_ramp", opIdV1: "", method: "POST", uri: "/ramps/{id}/update", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "ramp-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'ramp-id'"); diff --git a/src/commands/generated/recorded_purchase.ts b/src/commands/generated/recorded_purchase.ts index 97fc820..01e821b 100644 --- a/src/commands/generated/recorded_purchase.ts +++ b/src/commands/generated/recorded_purchase.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerRecordedPurchase(parent: Command): void { const cmd = parent .command("recorded-purchase") @@ -24,7 +26,7 @@ export function registerRecordedPurchase(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs recorded-purchase create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "record_a_purchase", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "recorded-purchase create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "record_a_purchase", opIdV1: "", method: "POST", uri: "/recorded_purchases", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -46,14 +48,14 @@ export function registerRecordedPurchase(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs recorded-purchase retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_recorded_purchase", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "recorded-purchase retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_recorded_purchase", opIdV1: "", method: "GET", uri: "/recorded_purchases/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "recorded-purchase-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'recorded-purchase-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).recordedPurchase.retrieve(resource.id, params); + const result = await (client as any).recordedPurchase.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/resource_migration.ts b/src/commands/generated/resource_migration.ts index 036c48d..f0b8091 100644 --- a/src/commands/generated/resource_migration.ts +++ b/src/commands/generated/resource_migration.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerResourceMigration(parent: Command): void { const cmd = parent .command("resource-migration") @@ -24,11 +26,11 @@ export function registerResourceMigration(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs resource-migration retrieve-latest\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_latest_migration_details", opIdV1: "retrieve_latest_migration_details", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_latest_migration_details", opIdV1: "retrieve_latest_migration_details", method: "GET", uri: "/resource_migrations/retrieve_latest", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); try { const client = await getClient(); - const result = await (client as any).resourceMigration.retrieveLatest(params); + const result = await (client as any).resourceMigration.retrieveLatest(toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/rule.ts b/src/commands/generated/rule.ts index bd9ccdb..ee68268 100644 --- a/src/commands/generated/rule.ts +++ b/src/commands/generated/rule.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerRule(parent: Command): void { const cmd = parent .command("rule") @@ -24,13 +26,13 @@ export function registerRule(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs rule retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_rule_data", opIdV1: "retrieve_rule_data", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_rule_data", opIdV1: "retrieve_rule_data", method: "GET", uri: "/rules/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "rule-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'rule-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).rule.retrieve(resource.id, params); + const result = await (client as any).rule.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/site_migration_detail.ts b/src/commands/generated/site_migration_detail.ts index 9573ee4..5141763 100644 --- a/src/commands/generated/site_migration_detail.ts +++ b/src/commands/generated/site_migration_detail.ts @@ -9,6 +9,8 @@ import { handleCodeSample } from "../../lib/api/generated-command.js"; import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerSiteMigrationDetail(parent: Command): void { const cmd = parent .command("site-migration-detail") @@ -26,13 +28,13 @@ export function registerSiteMigrationDetail(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs site-migration-detail list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_site_migration_details", opIdV1: "list_site_migration_details", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_site_migration_details", opIdV1: "list_site_migration_details", method: "GET", uri: "/site_migration_details", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "site-migration-detail"); else warnBareListFilters(opts.data ?? [], "site-migration-detail"); try { const client = await getClient(); - const result = await (client as any).siteMigrationDetail.list(params); + const result = await (client as any).siteMigrationDetail.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/subscription.ts b/src/commands/generated/subscription.ts index 031221f..9d17971 100644 --- a/src/commands/generated/subscription.ts +++ b/src/commands/generated/subscription.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerSubscription(parent: Command): void { const cmd = parent .command("subscription") @@ -25,7 +27,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription add-charge-at-term-end\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "add_charge_at_term_end", opIdV1: "add_charge_at_term_end", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "add_charge_at_term_end", opIdV1: "add_charge_at_term_end", method: "POST", uri: "/subscriptions/{id}/add_charge_at_term_end", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -48,7 +50,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription cancel\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "cancel_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "subscription cancel"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "cancel_a_subscription", method: "POST", uri: "/subscriptions/{id}/cancel", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -72,7 +74,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription cancel-for-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "cancel_subscription_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "subscription cancel-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "cancel_subscription_for_items", opIdV1: "", method: "POST", uri: "/subscriptions/{id}/cancel_for_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -96,7 +98,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription change-term-end\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "change_term_end", opIdV1: "change_term_end", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "change_term_end", opIdV1: "change_term_end", method: "POST", uri: "/subscriptions/{id}/change_term_end", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -119,7 +121,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription charge-addon-at-term-end\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "charge_addon_at_term_end", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "subscription charge-addon-at-term-end"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "charge_addon_at_term_end", method: "POST", uri: "/subscriptions/{id}/charge_addon_at_term_end", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -143,7 +145,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription charge-future-renewals\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "charge_future_renewals", opIdV1: "charge_future_renewals", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "charge_future_renewals", opIdV1: "charge_future_renewals", method: "POST", uri: "/subscriptions/{id}/charge_future_renewals", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -166,13 +168,13 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription contract-terms-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_contract_terms_for_a_subscription", opIdV1: "list_contract_terms_for_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_contract_terms_for_a_subscription", opIdV1: "list_contract_terms_for_a_subscription", method: "GET", uri: "/subscriptions/{id}/contract_terms", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).subscription.contractTermsForSubscription(resource.id, params); + const result = await (client as any).subscription.contractTermsForSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -187,7 +189,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "subscription create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_a_subscription", method: "POST", uri: "/subscriptions", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -209,7 +211,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription create-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_subscription_for_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "subscription create-for-customer"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_subscription_for_customer", method: "POST", uri: "/customers/{id}/subscriptions", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); @@ -233,7 +235,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription create-with-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_subscription_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "subscription create-with-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_subscription_for_items", opIdV1: "", method: "POST", uri: "/customers/{id}/subscription_for_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); @@ -257,7 +259,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_subscription", opIdV1: "delete_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_subscription", opIdV1: "delete_a_subscription", method: "POST", uri: "/subscriptions/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -280,7 +282,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription edit-advance-invoice-schedule\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "edit_advance_invoice_schedule", opIdV1: "edit_advance_invoice_schedule", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "edit_advance_invoice_schedule", opIdV1: "edit_advance_invoice_schedule", method: "POST", uri: "/subscriptions/{id}/edit_advance_invoice_schedule", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -303,7 +305,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription import-contract-term\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "import_contract_term", opIdV1: "import_contract_term", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "import_contract_term", opIdV1: "import_contract_term", method: "POST", uri: "/subscriptions/{id}/import_contract_term", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -326,7 +328,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription import-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "import_subscription_for_customer", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "subscription import-for-customer"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "import_subscription_for_customer", method: "POST", uri: "/customers/{id}/import_subscription", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); @@ -350,7 +352,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription import-for-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "import_subscription_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "subscription import-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "import_subscription_for_items", opIdV1: "", method: "POST", uri: "/customers/{id}/import_for_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "customer-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'customer-id'"); @@ -373,7 +375,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription import-subscription\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "import_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "subscription import-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "import_a_subscription", method: "POST", uri: "/subscriptions/import_subscription", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -395,7 +397,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription import-unbilled-charges\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "import_unbilled_charges", opIdV1: "import_unbilled_charges", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "import_unbilled_charges", opIdV1: "import_unbilled_charges", method: "POST", uri: "/subscriptions/{id}/import_unbilled_charges", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -418,13 +420,13 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee subscription list \\\n -d limit=10\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_subscriptions", opIdV1: "list_subscriptions", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_subscriptions", opIdV1: "list_subscriptions", method: "GET", uri: "/subscriptions", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "subscription"); else warnBareListFilters(opts.data ?? [], "subscription"); try { const client = await getClient(); - const result = await (client as any).subscription.list(params); + const result = await (client as any).subscription.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -440,14 +442,14 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription list-discounts\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_discounts_for_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "subscription list-discounts"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_discounts_for_a_subscription", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/discounts", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).subscription.listDiscounts(resource.id, params); + const result = await (client as any).subscription.listDiscounts(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -463,7 +465,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription move\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "move_a_subscription", opIdV1: "move_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "move_a_subscription", opIdV1: "move_a_subscription", method: "POST", uri: "/subscriptions/{id}/move", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -486,7 +488,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription override-billing-profile\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "override_billing_profile", opIdV1: "override_billing_profile", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "override_billing_profile", opIdV1: "override_billing_profile", method: "POST", uri: "/subscriptions/{id}/override_billing_profile", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -509,7 +511,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription pause\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "pause_a_subscription", opIdV1: "pause_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "pause_a_subscription", opIdV1: "pause_a_subscription", method: "POST", uri: "/subscriptions/{id}/pause", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -532,7 +534,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription reactivate\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "reactivate_a_subscription", opIdV1: "reactivate_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "reactivate_a_subscription", opIdV1: "reactivate_a_subscription", method: "POST", uri: "/subscriptions/{id}/reactivate", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -555,7 +557,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription regenerate-invoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "regenerate_an_invoice", opIdV1: "regenerate_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "regenerate_an_invoice", opIdV1: "regenerate_an_invoice", method: "POST", uri: "/subscriptions/{id}/regenerate_invoice", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -578,7 +580,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription remove-advance-invoice-schedule\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_an_advance_invoice_schedules", opIdV1: "remove_an_advance_invoice_schedules", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_an_advance_invoice_schedules", opIdV1: "remove_an_advance_invoice_schedules", method: "POST", uri: "/subscriptions/{id}/remove_advance_invoice_schedule", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -601,7 +603,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription remove-coupons\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_coupons", opIdV1: "remove_coupons", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_coupons", opIdV1: "remove_coupons", method: "POST", uri: "/subscriptions/{id}/remove_coupons", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -624,7 +626,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription remove-scheduled-cancellation\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_scheduled_cancellation", opIdV1: "remove_scheduled_cancellation", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_scheduled_cancellation", opIdV1: "remove_scheduled_cancellation", method: "POST", uri: "/subscriptions/{id}/remove_scheduled_cancellation", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -647,7 +649,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription remove-scheduled-changes\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_scheduled_changes", opIdV1: "remove_scheduled_changes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_scheduled_changes", opIdV1: "remove_scheduled_changes", method: "POST", uri: "/subscriptions/{id}/remove_scheduled_changes", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -670,7 +672,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription remove-scheduled-pause\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_scheduled_pause", opIdV1: "remove_scheduled_pause", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_scheduled_pause", opIdV1: "remove_scheduled_pause", method: "POST", uri: "/subscriptions/{id}/remove_scheduled_pause", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -693,7 +695,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription remove-scheduled-resumption\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "remove_scheduled_resumption", opIdV1: "remove_scheduled_resumption", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "remove_scheduled_resumption", opIdV1: "remove_scheduled_resumption", method: "POST", uri: "/subscriptions/{id}/remove_scheduled_resumption", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -716,7 +718,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription resume\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "resume_a_subscription", opIdV1: "resume_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "resume_a_subscription", opIdV1: "resume_a_subscription", method: "POST", uri: "/subscriptions/{id}/resume", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); @@ -739,13 +741,13 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mEXAMPLE\u001b[0m\n chargebee subscription retrieve ''\n\n\u001b[1mGENERATE SDK CODE\u001b[0m\n Add --code-sample python to the example above.\n\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_subscription", opIdV1: "retrieve_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_subscription", opIdV1: "retrieve_a_subscription", method: "GET", uri: "/subscriptions/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).subscription.retrieve(resource.id, params); + const result = await (client as any).subscription.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -761,13 +763,13 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription retrieve-advance-invoice-schedule\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_advance_invoice", opIdV1: "retrieve_advance_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_advance_invoice", opIdV1: "retrieve_advance_invoice", method: "GET", uri: "/subscriptions/{id}/retrieve_advance_invoice_schedule", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).subscription.retrieveAdvanceInvoiceSchedule(resource.id, params); + const result = await (client as any).subscription.retrieveAdvanceInvoiceSchedule(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -783,13 +785,13 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription retrieve-with-scheduled-changes\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_with_scheduled_changes", opIdV1: "retrieve_with_scheduled_changes", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_with_scheduled_changes", opIdV1: "retrieve_with_scheduled_changes", method: "GET", uri: "/subscriptions/{id}/retrieve_with_scheduled_changes", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).subscription.retrieveWithScheduledChanges(resource.id, params); + const result = await (client as any).subscription.retrieveWithScheduledChanges(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -805,13 +807,13 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription subscriptions-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "GET", uri: "/customers/{id}/subscriptions", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).subscription.subscriptionsForCustomer(resource.id, params); + const result = await (client as any).subscription.subscriptionsForCustomer(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -827,7 +829,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "update_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "subscription update"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "update_a_subscription", method: "POST", uri: "/subscriptions/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -851,7 +853,7 @@ export function registerSubscription(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription update-for-items\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_subscription_for_items", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "subscription update-for-items"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_subscription_for_items", opIdV1: "", method: "POST", uri: "/subscriptions/{id}/update_for_items", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); diff --git a/src/commands/generated/subscription_entitlement.ts b/src/commands/generated/subscription_entitlement.ts index 3ebde8b..ec7c2be 100644 --- a/src/commands/generated/subscription_entitlement.ts +++ b/src/commands/generated/subscription_entitlement.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerSubscriptionEntitlement(parent: Command): void { const cmd = parent .command("subscription-entitlement") @@ -25,7 +27,7 @@ export function registerSubscriptionEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription-entitlement set-subscription-entitlement-availability\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "enable_or_disable_subscription_entitlements", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "subscription-entitlement set-subscription-entitlement-availability"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "enable_or_disable_subscription_entitlements", opIdV1: "", method: "POST", uri: "/subscriptions/{id}/subscription_entitlements/set_availability", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -49,14 +51,14 @@ export function registerSubscriptionEntitlement(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs subscription-entitlement subscription-entitlements-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_subscription_entitlements", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "subscription-entitlement subscription-entitlements-for-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_subscription_entitlements", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/subscription_entitlements", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).subscriptionEntitlement.subscriptionEntitlementsForSubscription(resource.id, params); + const result = await (client as any).subscriptionEntitlement.subscriptionEntitlementsForSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/time_machine.ts b/src/commands/generated/time_machine.ts index c4b8ba0..4c76008 100644 --- a/src/commands/generated/time_machine.ts +++ b/src/commands/generated/time_machine.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerTimeMachine(parent: Command): void { const cmd = parent .command("time-machine") @@ -25,13 +27,13 @@ export function registerTimeMachine(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs time-machine retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_time_machine", opIdV1: "retrieve_a_time_machine", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_time_machine", opIdV1: "retrieve_a_time_machine", method: "GET", uri: "/time_machines/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "time-machine-name", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'time-machine-name'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).timeMachine.retrieve(resource.id, params); + const result = await (client as any).timeMachine.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -47,7 +49,7 @@ export function registerTimeMachine(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs time-machine start-afresh\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "start_afresh", opIdV1: "start_afresh", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "start_afresh", opIdV1: "start_afresh", method: "POST", uri: "/time_machines/{id}/start_afresh", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "time-machine-name", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'time-machine-name'"); assertResourceId(resource.id, command); @@ -70,7 +72,7 @@ export function registerTimeMachine(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs time-machine travel-forward\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "travel_forward", opIdV1: "travel_forward", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "travel_forward", opIdV1: "travel_forward", method: "POST", uri: "/time_machines/{id}/travel_forward", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "time-machine-name", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'time-machine-name'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/transaction.ts b/src/commands/generated/transaction.ts index 3b68c6c..b491fb5 100644 --- a/src/commands/generated/transaction.ts +++ b/src/commands/generated/transaction.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerTransaction(parent: Command): void { const cmd = parent .command("transaction") @@ -24,7 +26,7 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction create-authorization\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_an_authorization_payment", opIdV1: "create_an_authorization_payment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_authorization_payment", opIdV1: "create_an_authorization_payment", method: "POST", uri: "/transactions/create_authorization", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -45,7 +47,7 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction delete-offline-transaction\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_an_offline_transaction", opIdV1: "delete_an_offline_transaction", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_an_offline_transaction", opIdV1: "delete_an_offline_transaction", method: "POST", uri: "/transactions/{id}/delete_offline_transaction", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "transaction-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'transaction-id'"); assertResourceId(resource.id, command); @@ -68,13 +70,13 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_transactions", opIdV1: "list_transactions", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_transactions", opIdV1: "list_transactions", method: "GET", uri: "/transactions", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "transaction"); else warnBareListFilters(opts.data ?? [], "transaction"); try { const client = await getClient(); - const result = await (client as any).transaction.list(params); + const result = await (client as any).transaction.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -90,13 +92,13 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction payments-for-invoice\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_payments_for_an_invoice", opIdV1: "list_payments_for_an_invoice", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_payments_for_an_invoice", opIdV1: "list_payments_for_an_invoice", method: "GET", uri: "/invoices/{id}/payments", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "invoice-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'invoice-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).transaction.paymentsForInvoice(resource.id, params); + const result = await (client as any).transaction.paymentsForInvoice(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -112,7 +114,7 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction reconcile\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "reconcile_transaction", opIdV1: "reconcile_transaction", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "reconcile_transaction", opIdV1: "reconcile_transaction", method: "POST", uri: "/transactions/{id}/reconcile", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "transaction-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'transaction-id'"); assertResourceId(resource.id, command); @@ -135,7 +137,7 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction record-refund\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "record_an_offline_refund", opIdV1: "record_an_offline_refund", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "record_an_offline_refund", opIdV1: "record_an_offline_refund", method: "POST", uri: "/transactions/{id}/record_refund", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "transaction-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'transaction-id'"); assertResourceId(resource.id, command); @@ -158,7 +160,7 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction refund\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "refund_a_payment", opIdV1: "refund_a_payment", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "refund_a_payment", opIdV1: "refund_a_payment", method: "POST", uri: "/transactions/{id}/refund", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "transaction-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'transaction-id'"); assertResourceId(resource.id, command); @@ -181,13 +183,13 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_transaction", opIdV1: "retrieve_a_transaction", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_transaction", opIdV1: "retrieve_a_transaction", method: "GET", uri: "/transactions/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "transaction-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'transaction-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).transaction.retrieve(resource.id, params); + const result = await (client as any).transaction.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -203,13 +205,13 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction transactions-for-customer\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "GET", uri: "/customers/{id}/transactions", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).transaction.transactionsForCustomer(resource.id, params); + const result = await (client as any).transaction.transactionsForCustomer(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -225,13 +227,13 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction transactions-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/transactions", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: undefined, pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).transaction.transactionsForSubscription(resource.id, params); + const result = await (client as any).transaction.transactionsForSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -247,7 +249,7 @@ export function registerTransaction(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs transaction void-transaction\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "void_an_authorization_transaction", opIdV1: "void_an_authorization_transaction", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "void_an_authorization_transaction", opIdV1: "void_an_authorization_transaction", method: "POST", uri: "/transactions/{id}/void", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "transaction-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'transaction-id'"); assertResourceId(resource.id, command); diff --git a/src/commands/generated/unbilled_charge.ts b/src/commands/generated/unbilled_charge.ts index 3a606ea..e5bf485 100644 --- a/src/commands/generated/unbilled_charge.ts +++ b/src/commands/generated/unbilled_charge.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerUnbilledCharge(parent: Command): void { const cmd = parent .command("unbilled-charge") @@ -25,7 +27,7 @@ export function registerUnbilledCharge(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs unbilled-charge create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_unbilled_charges_for_item_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "unbilled-charge create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_unbilled_charges_for_item_subscription", opIdV1: "", method: "POST", uri: "/unbilled_charges", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -46,7 +48,7 @@ export function registerUnbilledCharge(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs unbilled-charge create-unbilled-charge\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "", opIdV1: "create_unbilled_charges_for_a_subscription", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc1", "unbilled-charge create-unbilled-charge"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "", opIdV1: "create_unbilled_charges_for_a_subscription", method: "POST", uri: "/unbilled_charges/create", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -68,7 +70,7 @@ export function registerUnbilledCharge(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs unbilled-charge delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_an_unbilled_charge", opIdV1: "delete_an_unbilled_charge", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_an_unbilled_charge", opIdV1: "delete_an_unbilled_charge", method: "POST", uri: "/unbilled_charges/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "unbilled-charge-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'unbilled-charge-id'"); assertResourceId(resource.id, command); @@ -90,7 +92,7 @@ export function registerUnbilledCharge(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs unbilled-charge invoice-now-estimate\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_an_estimate_for_unbilled_charges", opIdV1: "create_an_estimate_for_unbilled_charges", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_estimate_for_unbilled_charges", opIdV1: "create_an_estimate_for_unbilled_charges", method: "POST", uri: "/unbilled_charges/invoice_now_estimate", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -110,7 +112,7 @@ export function registerUnbilledCharge(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs unbilled-charge invoice-unbilled-charges\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_an_invoice_for_unbilled_charges", opIdV1: "create_an_invoice_for_unbilled_charges", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_an_invoice_for_unbilled_charges", opIdV1: "create_an_invoice_for_unbilled_charges", method: "POST", uri: "/unbilled_charges/invoice_unbilled_charges", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -131,13 +133,13 @@ export function registerUnbilledCharge(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs unbilled-charge list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_unbilled_charges", opIdV1: "list_unbilled_charges", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_unbilled_charges", opIdV1: "list_unbilled_charges", method: "GET", uri: "/unbilled_charges", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "unbilled-charge"); else warnBareListFilters(opts.data ?? [], "unbilled-charge"); try { const client = await getClient(); - const result = await (client as any).unbilledCharge.list(params); + const result = await (client as any).unbilledCharge.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/usage.ts b/src/commands/generated/usage.ts index c3c6374..f777aa1 100644 --- a/src/commands/generated/usage.ts +++ b/src/commands/generated/usage.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerUsage(parent: Command): void { const cmd = parent .command("usage") @@ -25,7 +27,7 @@ export function registerUsage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage create\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_usage", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_usage", opIdV1: "", method: "POST", uri: "/subscriptions/{id}/usages", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -49,7 +51,7 @@ export function registerUsage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_usage", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage delete"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_usage", opIdV1: "", method: "POST", uri: "/subscriptions/{id}/delete_usage", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); @@ -73,14 +75,14 @@ export function registerUsage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_usages", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage list"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_usages", opIdV1: "", method: "GET", uri: "/usages", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "usage"); else warnBareListFilters(opts.data ?? [], "usage"); try { const client = await getClient(); - const result = await (client as any).usage.list(params); + const result = await (client as any).usage.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -95,7 +97,7 @@ export function registerUsage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage pdf\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "retrieve_usages_for_an_invoice_as_pdf", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage pdf"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_usages_for_an_invoice_as_pdf", opIdV1: "", method: "POST", uri: "/usages/pdf", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -117,14 +119,14 @@ export function registerUsage(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_usage", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage retrieve"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_usage", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/usages", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).usage.retrieve(resource.id, params); + const result = await (client as any).usage.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/usage_charge.ts b/src/commands/generated/usage_charge.ts index 4f4d919..26f5803 100644 --- a/src/commands/generated/usage_charge.ts +++ b/src/commands/generated/usage_charge.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerUsageCharge(parent: Command): void { const cmd = parent .command("usage-charge") @@ -25,14 +27,14 @@ export function registerUsageCharge(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage-charge retrieve-usage-charges-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_usage_charges_for_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage-charge retrieve-usage-charges-for-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_usage_charges_for_a_subscription", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/usage_charges", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).usageCharge.retrieveUsageChargesForSubscription(resource.id, params); + const result = await (client as any).usageCharge.retrieveUsageChargesForSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/usage_event.ts b/src/commands/generated/usage_event.ts index d483a48..6a445dd 100644 --- a/src/commands/generated/usage_event.ts +++ b/src/commands/generated/usage_event.ts @@ -24,7 +24,7 @@ export function registerUsageEvent(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage-event batch-ingest\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "ingest_usages_in_batch", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage-event batch-ingest"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "ingest_usages_in_batch", opIdV1: "", method: "POST", uri: "/batch/usage_events", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); @@ -45,7 +45,7 @@ export function registerUsageEvent(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage-event create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: true, opIdV2: "create_a_usage_event", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage-event create"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_usage_event", opIdV1: "", method: "POST", uri: "/usage_events", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); diff --git a/src/commands/generated/usage_file.ts b/src/commands/generated/usage_file.ts index b66446e..d95fd05 100644 --- a/src/commands/generated/usage_file.ts +++ b/src/commands/generated/usage_file.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId, readJsonMarker } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerUsageFile(parent: Command): void { const cmd = parent .command("usage-file") @@ -25,14 +27,14 @@ export function registerUsageFile(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage-file processing-status\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "get_uploaded_file_processing_status", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage-file processing-status"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "get_uploaded_file_processing_status", opIdV1: "", method: "GET", uri: "/usage_files/{id}/processing_status", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "usage-file-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'usage-file-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).usageFile.processingStatus(resource.id, params); + const result = await (client as any).usageFile.processingStatus(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -47,7 +49,7 @@ export function registerUsageFile(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage-file upload-url\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "get_usages_file_upload_url", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage-file upload-url"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "get_usages_file_upload_url", opIdV1: "", method: "POST", uri: "/usage_files/upload_url", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); diff --git a/src/commands/generated/usage_summary.ts b/src/commands/generated/usage_summary.ts index 451ced2..2388d81 100644 --- a/src/commands/generated/usage_summary.ts +++ b/src/commands/generated/usage_summary.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerUsageSummary(parent: Command): void { const cmd = parent .command("usage-summary") @@ -25,14 +27,14 @@ export function registerUsageSummary(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs usage-summary retrieve-usage-summary-for-subscription\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_usage_summary_for_a_subscription", opIdV1: "", pcVersionFlag: opts.pcVersion }); if (opts.codeSample !== "list") await ensureCatalogAllowed("pc2", "usage-summary retrieve-usage-summary-for-subscription"); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_usage_summary_for_a_subscription", opIdV1: "", method: "GET", uri: "/subscriptions/{id}/usage_summary", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "subscription-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'subscription-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).usageSummary.retrieveUsageSummaryForSubscription(resource.id, params); + const result = await (client as any).usageSummary.retrieveUsageSummaryForSubscription(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/vaulted_payment_method.ts b/src/commands/generated/vaulted_payment_method.ts index a74a481..dbcdcdc 100644 --- a/src/commands/generated/vaulted_payment_method.ts +++ b/src/commands/generated/vaulted_payment_method.ts @@ -8,6 +8,8 @@ import { handleSdkError, printResult } from "../../lib/api/print.js"; import { assertResourceId, handleCodeSample } from "../../lib/api/generated-command.js"; import { loadOperationParams, takeResourceId } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerVaultedPaymentMethod(parent: Command): void { const cmd = parent .command("vaulted-payment-method") @@ -25,13 +27,13 @@ export function registerVaultedPaymentMethod(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs vaulted-payment-method retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_vaulted_payment_method", opIdV1: "retrieve_vaulted_payment_method", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_vaulted_payment_method", opIdV1: "retrieve_vaulted_payment_method", method: "GET", uri: "/vaulted_payment_methods/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "vaulted-payment-method-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'vaulted-payment-method-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).vaultedPaymentMethod.retrieve(resource.id, params); + const result = await (client as any).vaultedPaymentMethod.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/virtual_bank_account.ts b/src/commands/generated/virtual_bank_account.ts index e89a630..d6b7375 100644 --- a/src/commands/generated/virtual_bank_account.ts +++ b/src/commands/generated/virtual_bank_account.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerVirtualBankAccount(parent: Command): void { const cmd = parent .command("virtual-bank-account") @@ -25,7 +27,7 @@ export function registerVirtualBankAccount(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs virtual-bank-account create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_virtual_bank_account", opIdV1: "create_a_virtual_bank_account", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_virtual_bank_account", opIdV1: "create_a_virtual_bank_account", method: "POST", uri: "/virtual_bank_accounts", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -45,7 +47,7 @@ export function registerVirtualBankAccount(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs virtual-bank-account create-using-permanent-token\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_virtual_bank_account_using_permanent_token", opIdV1: "create_a_virtual_bank_account_using_permanent_token", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_virtual_bank_account_using_permanent_token", opIdV1: "create_a_virtual_bank_account_using_permanent_token", method: "POST", uri: "/virtual_bank_accounts/create_using_permanent_token", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -66,7 +68,7 @@ export function registerVirtualBankAccount(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs virtual-bank-account delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_virtual_bank_account", opIdV1: "delete_a_virtual_bank_account", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_virtual_bank_account", opIdV1: "delete_a_virtual_bank_account", method: "POST", uri: "/virtual_bank_accounts/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "virtual-bank-account-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'virtual-bank-account-id'"); assertResourceId(resource.id, command); @@ -89,7 +91,7 @@ export function registerVirtualBankAccount(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs virtual-bank-account delete-local\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "local_delete_a_virtual_bank_account", opIdV1: "local_delete_a_virtual_bank_account", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "local_delete_a_virtual_bank_account", opIdV1: "local_delete_a_virtual_bank_account", method: "POST", uri: "/virtual_bank_accounts/{id}/delete_local", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "virtual-bank-account-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'virtual-bank-account-id'"); assertResourceId(resource.id, command); @@ -112,13 +114,13 @@ export function registerVirtualBankAccount(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs virtual-bank-account list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_virtual_bank_accounts", opIdV1: "list_virtual_bank_accounts", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_virtual_bank_accounts", opIdV1: "list_virtual_bank_accounts", method: "GET", uri: "/virtual_bank_accounts", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "virtual-bank-account"); else warnBareListFilters(opts.data ?? [], "virtual-bank-account"); try { const client = await getClient(); - const result = await (client as any).virtualBankAccount.list(params); + const result = await (client as any).virtualBankAccount.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -134,13 +136,13 @@ export function registerVirtualBankAccount(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs virtual-bank-account retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_virtual_bank_account", opIdV1: "retrieve_a_virtual_bank_account", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_virtual_bank_account", opIdV1: "retrieve_a_virtual_bank_account", method: "GET", uri: "/virtual_bank_accounts/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "virtual-bank-account-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'virtual-bank-account-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).virtualBankAccount.retrieve(resource.id, params); + const result = await (client as any).virtualBankAccount.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); diff --git a/src/commands/generated/webhook_endpoint.ts b/src/commands/generated/webhook_endpoint.ts index c1edab3..4242723 100644 --- a/src/commands/generated/webhook_endpoint.ts +++ b/src/commands/generated/webhook_endpoint.ts @@ -9,6 +9,8 @@ import { assertResourceId, handleCodeSample } from "../../lib/api/generated-comm import { warnBareListFilters } from "../../lib/codesample/index.js"; import { loadOperationParams, takeResourceId, readJsonMarker, warnBareJsonFilters } from "../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../lib/api/params.js"; + export function registerWebhookEndpoint(parent: Command): void { const cmd = parent .command("webhook-endpoint") @@ -25,7 +27,7 @@ export function registerWebhookEndpoint(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs webhook-endpoint create\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "create_a_webhook_endpoint", opIdV1: "create_a_webhook_endpoint", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "create_a_webhook_endpoint", opIdV1: "create_a_webhook_endpoint", method: "POST", uri: "/webhook_endpoints", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); await ensureWriteAllowed("POST"); try { @@ -46,7 +48,7 @@ export function registerWebhookEndpoint(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs webhook-endpoint delete\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "delete_a_webhook_endpoint", opIdV1: "delete_a_webhook_endpoint", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "delete_a_webhook_endpoint", opIdV1: "delete_a_webhook_endpoint", method: "POST", uri: "/webhook_endpoints/{id}/delete", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "webhook-endpoint-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'webhook-endpoint-id'"); assertResourceId(resource.id, command); @@ -69,13 +71,13 @@ export function registerWebhookEndpoint(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs webhook-endpoint list\n") .action(async (json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const fromStdin = readJsonMarker(json, command); - const params = await loadOperationParams(opts.data ?? [], fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "list_webhook_endpoints", opIdV1: "list_webhook_endpoints", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "list_webhook_endpoints", opIdV1: "list_webhook_endpoints", method: "GET", uri: "/webhook_endpoints", dataFlags: opts.data ?? [], params, pcVersionFlag: opts.pcVersion }); if (fromStdin) warnBareJsonFilters(params, "webhook-endpoint"); else warnBareListFilters(opts.data ?? [], "webhook-endpoint"); try { const client = await getClient(); - const result = await (client as any).webhookEndpoint.list(params); + const result = await (client as any).webhookEndpoint.list(toSdkParams(params, "GET", true)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -91,13 +93,13 @@ export function registerWebhookEndpoint(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs webhook-endpoint retrieve\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "GET", jsonInput: false, opIdV2: "retrieve_a_webhook_endpoint", opIdV1: "retrieve_a_webhook_endpoint", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "retrieve_a_webhook_endpoint", opIdV1: "retrieve_a_webhook_endpoint", method: "GET", uri: "/webhook_endpoints/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "webhook-endpoint-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'webhook-endpoint-id'"); assertResourceId(resource.id, command); try { const client = await getClient(); - const result = await (client as any).webhookEndpoint.retrieve(resource.id, params); + const result = await (client as any).webhookEndpoint.retrieve(resource.id, toSdkParams(params, "GET", false)); printResult(result); } catch (e) { handleSdkError(e); } }); @@ -113,7 +115,7 @@ export function registerWebhookEndpoint(parent: Command): void { .addHelpText("after", "\n\u001b[1mDOCUMENTATION\u001b[0m\n chargebee docs webhook-endpoint update\n") .action(async (id: string | undefined, json: string | undefined, opts: { data?: string[]; codeSample?: string; pcVersion?: string }, command: Command) => { const resource = takeResourceId(id, json, command); - const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command); + const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, { method: "POST", jsonInput: false, opIdV2: "update_a_webhook_endpoint", opIdV1: "update_a_webhook_endpoint", pcVersionFlag: opts.pcVersion }); if (opts.codeSample) return handleCodeSample({ lang: opts.codeSample, opIdV2: "update_a_webhook_endpoint", opIdV1: "update_a_webhook_endpoint", method: "POST", uri: "/webhook_endpoints/{id}", dataFlags: opts.data ?? [], params, resourceId: resource.id, pathParamName: "webhook-endpoint-id", pcVersionFlag: opts.pcVersion }); if (!resource.id) command.error("error: missing required argument 'webhook-endpoint-id'"); assertResourceId(resource.id, command); diff --git a/src/lib/api/params.ts b/src/lib/api/params.ts new file mode 100644 index 0000000..e1e2553 --- /dev/null +++ b/src/lib/api/params.ts @@ -0,0 +1,163 @@ +/** The SDK's form encoder sends these filter arrays as one JSON value. */ +import type { MinimalParamInfo } from "@chargebee/code-sample-generator/node"; + +const ARRAY_OPERATORS = new Set(["in", "not_in", "between"]); +const MAX_INDEX = 10_000; + +export interface ParamEntry { + key: string; + path: string[]; + value: unknown; +} + +/** Reject keys that could change an object's prototype. */ +export function assertSafeParameterKey(key: string): void { + if (key.split(/[\[\]]/).some((part) => ["__proto__", "constructor", "prototype"].includes(part))) { + throw new Error(`Invalid parameter key ${JSON.stringify(key)}.`); + } +} + +/** Parse `a[b][0]` into path segments, rejecting partial or empty brackets. */ +export function bracketPath(key: string): string[] | null { + const match = /^([^\[\]]+)((?:\[[^\[\]]+\])*)$/.exec(key); + if (!match) return null; + const parts = [match[1], ...[...match[2].matchAll(/\[([^\[\]]+)\]/g)].map((m) => m[1])]; + try { + for (const part of parts) assertSafeParameterKey(part); + } catch { + return null; + } + return parts; +} + +function indexOf(part: string, key: string): number | null { + if (!/^\d+$/.test(part)) return null; + const index = Number(part); + if (!Number.isSafeInteger(index) || index > MAX_INDEX) { + throw new Error(`Invalid indexed parameter ${JSON.stringify(key)}.`); + } + return index; +} + +function pathLabel(parts: string[]): string { + return parts[0] + parts.slice(1).map((part) => `[${part}]`).join(""); +} + +function conflict(path: string, first: string, second: string): Error { + return new Error(`conflicting parameter '${path}' (${JSON.stringify(first)} and ${JSON.stringify(second)}).`); +} + +function isContainer(value: unknown): value is Record | unknown[] { + return value !== null && typeof value === "object"; +} + +/** Build a single canonical nested object for both CLI input forms. */ +export function buildParams(entries: ParamEntry[]): Record { + const root: Record = {}; + const owners = new Map(); + const fieldFirstArrays = new WeakSet(); + + for (const entry of entries) { + const { key, value } = entry; + const parts = entry.path; + if (!parts.length || parts.some((part) => !part)) throw new Error(`Invalid parameter key ${JSON.stringify(key)}.`); + // Chargebee's form format indexes an array of objects by field first. + const fieldFirst = parts.length === 3 && indexOf(parts[1], key) === null && indexOf(parts[2], key) !== null; + const route = fieldFirst ? [parts[0], parts[2], parts[1]] : parts; + let cursor: Record | unknown[] = root; + + for (let i = 0; i < route.length; i++) { + const segment = route[i]; + const index = indexOf(segment, key); + if (Array.isArray(cursor) !== (index !== null)) { + const path = pathLabel(parts.slice(0, i)); + throw conflict(path, owners.get(path) ?? key, key); + } + const property: string | number = index ?? segment; + const exists = Object.hasOwn(cursor, property); + const current: unknown = (cursor as Record)[property]; + if (i === route.length - 1) { + if (exists) { + const path = pathLabel(parts); + throw conflict(path, owners.get(path) ?? key, key); + } + (cursor as Record)[property] = value; + owners.set(pathLabel(parts), key); + continue; + } + const nextIsArray = indexOf(route[i + 1], key) !== null; + if (!exists) { + const created: Record | unknown[] = nextIsArray ? [] : {}; + if (fieldFirst && i === 0 && Array.isArray(created)) fieldFirstArrays.add(created); + (cursor as Record)[property] = created; + owners.set(pathLabel(parts.slice(0, i + 1)), key); + cursor = created; + } else { + if (!isContainer(current) || Array.isArray(current) !== nextIsArray) { + const path = pathLabel(parts.slice(0, i + 1)); + throw conflict(path, owners.get(path) ?? key, key); + } + cursor = current; + } + } + } + + const checkGaps = (value: unknown, path: string): void => { + if (!isContainer(value)) return; + if (Array.isArray(value) && !fieldFirstArrays.has(value)) { + for (let i = 0; i < value.length; i++) { + if (!Object.hasOwn(value, i)) throw new Error(`Missing indexed parameter ${path}[${i}].`); + } + } + for (const [key, child] of Object.entries(value)) checkGaps(child, path ? `${path}[${key}]` : key); + }; + checkGaps(root, ""); + return root; +} + +/** Coerce only schema-declared scalar types for JSON-body operations. */ +export function typeJsonScalars( + params: Record, + schema: Record | undefined, +): Record { + if (!schema) return params; + const visit = (value: unknown, info: MinimalParamInfo | undefined): unknown => { + if (!info) return value; + if (typeof value === "string") { + if (info.t === "bool" && (value === "true" || value === "false")) return value === "true"; + if ((info.t === "int" || info.t === "long" || info.t === "num") && /^-?\d+(?:\.\d+)?$/.test(value)) { + const number = Number(value); + if (Number.isFinite(number) && (value.includes(".") || Number.isSafeInteger(number))) return number; + } + return value; + } + if (Array.isArray(value) && info.t === "arr") return value.map((item) => visit(item, info.i)); + if (value && typeof value === "object" && info.t === "obj") { + return Object.fromEntries(Object.entries(value).map(([key, child]) => [key, visit(child, info.p?.[key])])); + } + return value; + }; + return Object.fromEntries(Object.entries(params).map(([key, value]) => [key, visit(value, schema[key])])); +} + +/** Flatten only GET params to avoid the pinned SDK's sibling-key serializer bug. */ +export function toSdkParams(params: Record, method: string, isList = false): Record { + if (method.toUpperCase() !== "GET") return params; + const out: Record = {}; + const visit = (path: string, value: unknown): void => { + if (Array.isArray(value)) { + const last = path.slice(path.lastIndexOf("[") + 1).replace(/\]$/, ""); + if (ARRAY_OPERATORS.has(last) || (isList && !path.includes("["))) { + out[path] = JSON.stringify(value); + } else { + value.forEach((item, i) => visit(`${path}[${i}]`, item)); + } + } else if (value !== null && typeof value === "object") { + for (const [key, child] of Object.entries(value)) visit(`${path}[${key}]`, child); + } else { + out[path] = value; + } + }; + for (const [key, value] of Object.entries(params)) visit(key, value); + return out; +} diff --git a/src/lib/api/stdin-params.ts b/src/lib/api/stdin-params.ts index fa39db5..ac620a3 100644 --- a/src/lib/api/stdin-params.ts +++ b/src/lib/api/stdin-params.ts @@ -1,7 +1,18 @@ import type { Command } from "commander"; +import { getOperation } from "@chargebee/code-sample-generator/node"; import { diagnostic, isJsonMode } from "../output.js"; import { LIST_NON_FILTER_KEYS, LIST_OPS_DOC_URL, assertSafeParameterKey, parseDataFlags } from "../codesample/index.js"; +import { resolveCatalogVersion } from "./sdk.js"; +import { bracketPath, buildParams, typeJsonScalars, type ParamEntry } from "./params.js"; + +export interface OperationParamOptions { + method?: string; + jsonInput?: boolean; + opIdV1?: string; + opIdV2?: string; + pcVersionFlag?: string; +} /** `-` reads one JSON object from stdin and uses it as the request params. */ export class StdinParamsError extends Error { @@ -60,11 +71,23 @@ export function parseStdinParams(text: string): Record { export async function resolveOperationParams( dataFlags: string[], fromStdin: boolean, + opts: OperationParamOptions = {}, ): Promise> { if (fromStdin && dataFlags.length > 0) { throw new StdinParamsError("error: pass parameters with '-' or with -d, not both."); } - if (!fromStdin) return parseDataFlags(dataFlags); + if (!fromStdin) { + const params = parseDataFlags(dataFlags, opts); + if (!opts.jsonInput || !dataFlags.length) return params; + const pcVersion = opts.pcVersionFlag === "v1" || opts.pcVersionFlag === "v2" + ? opts.pcVersionFlag + : (await resolveCatalogVersion()) ?? "v2"; + const opId = pcVersion === "v1" ? opts.opIdV1 || opts.opIdV2 : opts.opIdV2 || opts.opIdV1; + if (!opId) return params; + const preferred = pcVersion === "v1" ? "v2-pcv1" : "v2-pcv2"; + const other = pcVersion === "v1" ? "v2-pcv2" : "v2-pcv1"; + return typeJsonScalars(params, (getOperation(preferred, opId) ?? getOperation(other, opId))?.params); + } if (process.stdin.isTTY) { throw new StdinParamsError("error: '-' reads a JSON object from stdin, and stdin is a terminal."); } @@ -110,9 +133,10 @@ export async function loadOperationParams( dataFlags: string[], fromStdin: boolean, command: CommandExit, + opts: OperationParamOptions = {}, ): Promise> { try { - return await resolveOperationParams(dataFlags, fromStdin); + return await resolveOperationParams(dataFlags, fromStdin, opts); } catch (e) { if (e instanceof StdinParamsError) command.error(e.message); throw e; @@ -140,62 +164,20 @@ export function warnBareJsonFilters( } function expandBracketKeys(params: Record): Record { - const out: Record = {}; + const entries: ParamEntry[] = []; for (const [key, value] of Object.entries(params)) { try { assertSafeParameterKey(key); } catch { throw new StdinParamsError(`error: invalid parameter key '${key}'.`); } - if (!key.includes("[")) { - if (Object.prototype.hasOwnProperty.call(out, key)) { - throw new StdinParamsError(`error: conflicting parameter '${key}'.`); - } - out[key] = value; - continue; - } - const parts = bracketParts(key); - if (!parts) throw new StdinParamsError(`error: invalid parameter key '${key}'.`); - assignPath(out, parts, value); - } - return out; -} - -function formatPath(parts: string[]): string { - return parts[0] + parts.slice(1).map((part) => `[${part}]`).join(""); -} - -function bracketParts(key: string): string[] | null { - const open = key.indexOf("["); - if (open <= 0) return null; - const rest = key.slice(open); - if (!/^(?:\[[^\[\]]+\])+$/.test(rest)) return null; - const parts = [key.slice(0, open)]; - for (const match of rest.matchAll(/\[([^\[\]]+)\]/g)) { - parts.push(match[1]); - } - return parts; -} - -function assignPath(root: Record, parts: string[], value: unknown): void { - let cursor = root; - for (let i = 0; i < parts.length - 1; i++) { - const part = parts[i]; - const next = Object.hasOwn(cursor, part) ? cursor[part] : undefined; - if (next === undefined) { - const created: Record = {}; - cursor[part] = created; - cursor = created; - continue; - } - if (!next || typeof next !== "object" || Array.isArray(next)) { - throw new StdinParamsError(`error: conflicting parameter '${formatPath(parts.slice(0, i + 1))}'.`); - } - cursor = next as Record; + const path = bracketPath(key); + if (!path) throw new StdinParamsError(`error: invalid parameter key '${key}'.`); + entries.push({ key, path, value }); } - const leaf = parts[parts.length - 1]; - if (Object.prototype.hasOwnProperty.call(cursor, leaf)) { - throw new StdinParamsError(`error: conflicting parameter '${formatPath(parts)}'.`); + try { + return buildParams(entries); + } catch (error) { + throw new StdinParamsError(`error: ${error instanceof Error ? error.message : String(error)}`); } - cursor[leaf] = value; } diff --git a/src/lib/codesample/index.ts b/src/lib/codesample/index.ts index ee45f69..5716bb7 100644 --- a/src/lib/codesample/index.ts +++ b/src/lib/codesample/index.ts @@ -10,6 +10,9 @@ import { import { diagnostic, isJsonMode } from "../output.js"; import { PRODUCTION_SUFFIX, rewriteApiHostInText, type ApiHost } from "../config/host.js"; +import { assertSafeParameterKey, bracketPath, buildParams, type ParamEntry } from "../api/params.js"; + +export { assertSafeParameterKey } from "../api/params.js"; /** * Names we advertise in `--help`, `--code-sample list`, README, and the skill. @@ -219,22 +222,30 @@ export async function generate(opts: GenerateOptions): Promise { /** * Coerce a raw CLI value into the shape the Chargebee SDK expects. * - * Values that look like JSON arrays/objects (`[...]` / `{...}`) are parsed into - * real JS values; everything else stays a string. This matters for list filter - * operators (`[in]`, `[not_in]`, `[between]`): the SDK's serializer JSON-encodes - * those values, so passing a JSON *string* would double-encode it (producing - * `id[in]="[\"a\"]"` and a `wrong format` API error). Parsing to a real array - * makes the SDK emit the correct `id[in]=["a"]`. + * JSON-body operations parse JSON-looking values. For form operations, a + * top-level array is a shorthand for indexed fields and filter operators need + * real arrays so the SDK sends one JSON value. An indexed field's value stays + * literal, avoiding an extra index when it looks like JSON itself. * * Parsing is best-effort: malformed JSON falls back to the raw string so a value * that merely starts with `[`/`{` can never throw. */ -function coerceValue(raw: string): unknown { +function coerceValue(raw: string, path: string[], jsonInput: boolean): unknown { const trimmed = raw.trim(); - if (trimmed.startsWith("[") || trimmed.startsWith("{")) { + const last = path.at(-1); + const parseArray = jsonInput || path.length === 1 || last === "in" || last === "not_in" || last === "between"; + const parseObject = jsonInput || !/^\d+$/.test(last ?? ""); + if ((parseObject && trimmed.startsWith("{")) || (parseArray && trimmed.startsWith("["))) { try { return JSON.parse(trimmed); } catch { + // Convenience shorthand for simple string arrays. Quoted JSON is needed + // when an item itself contains a comma or other JSON syntax. + if (parseArray && trimmed.startsWith("[") && trimmed.endsWith("]")) { + const inner = trimmed.slice(1, -1); + const items = inner.split(",").map((item) => item.trim()); + if (items.every((item) => item && !/[\[\]{}"']/.test(item))) return items; + } return raw; } } @@ -279,22 +290,17 @@ export function warnBareListFilters( } /** Reject path segments that could traverse or replace object prototypes. */ -export function assertSafeParameterKey(key: string): void { - if (key.split(/[\[\]]/).some((part) => ["__proto__", "constructor", "prototype"].includes(part))) { - throw new Error(`Invalid parameter key ${JSON.stringify(key)}.`); - } -} - /** * Parse CLI -d key=value flags into a nested params object. * Handles bracket notation: "billing_address[line1]=value" → { billing_address: { line1: "value" } } * Indexed item fields become arrays of objects: "items[id][0]=value" → { items: [{ id: "value" }] }. - * JSON-looking values are parsed so list filters like `id[in]=["a","b"]` encode correctly. + * JSON-array shorthand and list filters like `id[in]=["a","b"]` encode correctly. */ export function parseDataFlags( - dataFlags: string[] + dataFlags: string[], + opts: { jsonInput?: boolean } = {}, ): Record { - const params: Record = {}; + const entries = new Map(); for (const d of dataFlags) { const eqIdx = d.indexOf("="); @@ -307,36 +313,10 @@ export function parseDataFlags( const key = d.slice(0, eqIdx); assertSafeParameterKey(key); - const value = coerceValue(d.slice(eqIdx + 1)); - - const indexedField = /^([^\[\]]+)\[([^\[\]]+)\]\[(\d+)\]$/.exec(key); - if (indexedField) { - const [, topKey, field, rawIndex] = indexedField; - const index = Number(rawIndex); - if (!Number.isSafeInteger(index) || index > 10_000) { - throw new Error(`Invalid indexed parameter ${JSON.stringify(key)}.`); - } - if (!Array.isArray(params[topKey])) params[topKey] = []; - const items = params[topKey] as Record[]; - if (!items[index]) items[index] = {}; - items[index][field] = value; - continue; - } - - // Handle bracket notation - const bracketIdx = key.indexOf("["); - if (bracketIdx > 0) { - const topKey = key.slice(0, bracketIdx); - const subKey = key.slice(bracketIdx + 1, -1); // strip trailing ] - - if (!Object.hasOwn(params, topKey) || !params[topKey] || typeof params[topKey] !== "object") { - params[topKey] = {}; - } - (params[topKey] as Record)[subKey] = value; - } else { - params[key] = value; - } + const path = bracketPath(key); + if (!path) throw new Error(`Invalid parameter key ${JSON.stringify(key)}.`); + entries.set(key, { key, path, value: coerceValue(d.slice(eqIdx + 1), path, opts.jsonInput === true) }); } - return params; + return buildParams([...entries.values()]); } diff --git a/src/tests/integration/stdin-params.test.ts b/src/tests/integration/stdin-params.test.ts index 04d189b..10b7fd5 100644 --- a/src/tests/integration/stdin-params.test.ts +++ b/src/tests/integration/stdin-params.test.ts @@ -111,8 +111,8 @@ describe("JSON stdin", () => { const listedResult = await runCli(["customer", "list", "-"]); expect(listedResult.exitCode).toBe(0); expect(listed).toEqual({ - email: { is: "ada@example.com" }, - status: { in: ["active", "paused"] }, + "email[is]": "ada@example.com", + "status[in]": '["active","paused"]', }); pipe(JSON.stringify({ "customer[email][is]": "ada@example.com" })); diff --git a/src/tests/unit/lib/api/params.test.ts b/src/tests/unit/lib/api/params.test.ts new file mode 100644 index 0000000..91fb6c3 --- /dev/null +++ b/src/tests/unit/lib/api/params.test.ts @@ -0,0 +1,97 @@ +import { describe, expect, it } from "bun:test"; + +import { buildParams, bracketPath, toSdkParams, typeJsonScalars } from "../../../../lib/api/params.js"; +import { parseDataFlags } from "../../../../lib/codesample/index.js"; +import { parseStdinParams } from "../../../../lib/api/stdin-params.js"; + +describe("canonical API parameters", () => { + it("parses plain, nested, indexed, and field-first paths", () => { + expect(bracketPath("a[b][0]")).toEqual(["a", "b", "0"]); + for (const key of ["a[b", "a[]", "a]b", "[a]", "a[b]]", "a[constructor]"]) { + expect(bracketPath(key)).toBeNull(); + } + expect(parseDataFlags([ + "id=cus_1", + "roles[0]=admin", + "roles[1]=engineer", + "subscription_items[item_price_id][0]=p1", + "subscription_items[quantity][0]=2", + "request_context[user_agent]=cli", + ])).toEqual({ + id: "cus_1", + roles: ["admin", "engineer"], + subscription_items: [{ item_price_id: "p1", quantity: "2" }], + request_context: { user_agent: "cli" }, + }); + }); + + it("makes equivalent -d and JSON stdin inputs the same logical object", () => { + const flags = [ + 'coupon_ids=["A","B"]', + "mandatory_items_to_remove[0]=p1", + "mandatory_items_to_remove[1]=p2", + 'subscription[status][in]=["active","in_trial"]', + "a[0][b]=x", + ]; + const stdin = { + coupon_ids: ["A", "B"], + mandatory_items_to_remove: ["p1", "p2"], + subscription: { status: { in: ["active", "in_trial"] } }, + a: [{ b: "x" }], + }; + expect(parseDataFlags(flags)).toEqual(parseStdinParams(JSON.stringify(stdin))); + expect(parseDataFlags(["coupon_ids=[A, B]"])).toEqual({ coupon_ids: ["A", "B"] }); + expect(parseDataFlags(["mandatory_items_to_remove[0]=p1", "mandatory_items_to_remove[1]=p2"])) + .toEqual(parseDataFlags(["mandatory_items_to_remove=[p1,p2]"])); + expect(parseStdinParams(JSON.stringify({ "mandatory_items_to_remove[0]": "p1", "mandatory_items_to_remove[1]": "p2" }))) + .toEqual({ mandatory_items_to_remove: ["p1", "p2"] }); + }); + + it("preserves a JSON-looking indexed form value but parses real arrays for JSON input", () => { + expect(parseDataFlags(['items[tags][0]=["a","b"]'])).toEqual({ items: [{ tags: '["a","b"]' }] }); + expect(parseDataFlags(["items[tags][0]=[a,b]"])).toEqual({ items: [{ tags: "[a,b]" }] }); + expect(parseDataFlags(['roles[0]=["a","b"]'], { jsonInput: true })).toEqual({ roles: [["a", "b"]] }); + }); + + it("rejects container conflicts and sparse indexed arrays", () => { + expect(() => parseDataFlags(["a=1", "a[b]=2"])).toThrow(/conflicting parameter 'a'/); + expect(() => parseDataFlags(["a[b]=2", "a=1"])).toThrow(/conflicting parameter 'a'/); + expect(() => parseDataFlags(["roles[1]=admin"])).toThrow(/Missing indexed parameter roles\[0\]/); + expect(() => parseDataFlags(["roles[10001]=admin"])).toThrow(/Invalid indexed parameter/); + expect(parseDataFlags(["id=old", "id=new"])).toEqual({ id: "new" }); + expect(() => buildParams([{ key: "id", path: ["id"], value: "x" }, { key: "id", path: ["id"], value: "y" }])).toThrow(/conflicting parameter/); + }); +}); + +describe("GET SDK adapter", () => { + it("flattens siblings and nested filters without changing canonical params", () => { + const params = { created_at: { after: "1", before: "2" }, subscription: { status: { in: ["active"] } }, roles: ["admin", "engineer"] }; + expect(toSdkParams(params, "GET")).toEqual({ + "created_at[after]": "1", + "created_at[before]": "2", + "subscription[status][in]": '["active"]', + "roles[0]": "admin", + "roles[1]": "engineer", + }); + expect(params.created_at).toEqual({ after: "1", before: "2" }); + expect(toSdkParams(params, "POST")).toBe(params); + }); + + it("preserves top-level arrays as one JSON value for SDK list requests", () => { + expect(toSdkParams({ offset: ["a", "b"], id: { in: ["x"] } }, "GET", true)).toEqual({ + offset: '["a","b"]', "id[in]": '["x"]', + }); + }); +}); + +describe("JSON-body schema scalars", () => { + it("types declared numeric and boolean leaves while preserving strings and unknown fields", () => { + const schema = { + count: { t: "int" as const }, enabled: { t: "bool" as const }, id: { t: "str" as const }, + nested: { t: "obj" as const, p: { amount: { t: "num" as const } } }, + items: { t: "arr" as const, i: { t: "obj" as const, p: { quantity: { t: "int" as const } } } }, + }; + expect(typeJsonScalars({ count: "5", enabled: "true", id: "123", cf_custom: "42", nested: { amount: "1.5" }, items: [{ quantity: "2" }] }, schema)) + .toEqual({ count: 5, enabled: true, id: "123", cf_custom: "42", nested: { amount: 1.5 }, items: [{ quantity: 2 }] }); + }); +}); diff --git a/src/tests/unit/lib/api/stdin-params.encoding.test.ts b/src/tests/unit/lib/api/stdin-params.encoding.test.ts index 4792af7..6f14b10 100644 --- a/src/tests/unit/lib/api/stdin-params.encoding.test.ts +++ b/src/tests/unit/lib/api/stdin-params.encoding.test.ts @@ -7,7 +7,8 @@ import { describe, expect, it } from "bun:test"; import Chargebee from "chargebee"; -import { parseStdinParams } from "../../../../lib/api/stdin-params.js"; +import { parseStdinParams, resolveOperationParams } from "../../../../lib/api/stdin-params.js"; +import { toSdkParams } from "../../../../lib/api/params.js"; import { parseDataFlags } from "../../../../lib/codesample/index.js"; type Params = Record; @@ -29,7 +30,9 @@ const client = new Chargebee({ } as never) as never as { customer: { create(p: Params): Promise; list(p: Params): Promise }; subscription: { createWithItems(id: string, p: Params): Promise }; - export: { customers(p: Params): Promise }; + export: { customers(p: Params): Promise; subscriptions(p: Params): Promise }; + personalizedOffer: { personalizedOffers(p: Params): Promise }; + usageEvent: { create(p: Params): Promise }; }; /** Decoded so expectations read like the `--data-urlencode` values they mirror. */ @@ -242,6 +245,44 @@ describe("stdin JSON to form encoding", () => { * the params object to the SDK, and the SDK produces the same request. */ describe("cURL request parity", () => { + it("accepts indexed and JSON-array shorthand for the same form array", async () => { + const indexed = parseDataFlags(["mandatory_items_to_remove[0]=p1", "mandatory_items_to_remove[1]=p2"]); + const shorthand = parseDataFlags(['mandatory_items_to_remove=["p1","p2"]']); + expect(indexed).toEqual(shorthand); + expect(indexed).toEqual(parseDataFlags(["mandatory_items_to_remove=[p1,p2]"])); + expect(await createBody(indexed)).toBe("mandatory_items_to_remove[0]=p1&mandatory_items_to_remove[1]=p2"); + expect(await createBody(shorthand)).toBe(await createBody(parseStdinParams('{"mandatory_items_to_remove":["p1","p2"]}'))); + }); + + it("keeps an indexed JSON-looking form value as one field", async () => { + expect(await createBody(parseDataFlags(['items[tags][0]=["a","b"]']))).toBe('items[tags][0]=["a","b"]'); + }); + + it("sends both sibling GET filters through the CLI adapter", async () => { + const params = parseDataFlags(["created_at[after]=1", "created_at[before]=2", 'id[in]=["a","b"]']); + expect(await listQuery(toSdkParams(params, "GET", true))).toBe('created_at[after]=1&created_at[before]=2&id[in]=["a","b"]'); + expect(await listQuery(toSdkParams(parseStdinParams('{"created_at":{"after":"1","before":"2"},"id":{"in":["a","b"]}}'), "GET", true))) + .toBe('created_at[after]=1&created_at[before]=2&id[in]=["a","b"]'); + }); + + it("sends sub-resource export array filters as one field", async () => { + const params = parseDataFlags(['subscription[status][in]=["active","in_trial"]', 'subscription[next_billing_at][between]=[1,2]']); + await client.export.subscriptions(params); + expect(decode(captured?.body ?? "")).toBe('subscription[status][in]=["active","in_trial"]&subscription[next_billing_at][between]=[1,2]'); + }); + + it("sends JSON-body indexed arrays and schema-typed numeric values", async () => { + const roles = await resolveOperationParams(["customer_id=cus_1", "roles[0]=admin", "roles[1]=engineer"], false, + { jsonInput: true, opIdV2: "list_personalized_offers", pcVersionFlag: "v2" }); + await client.personalizedOffer.personalizedOffers(roles); + expect(JSON.parse(captured?.body ?? "{}")).toEqual({ customer_id: "cus_1", roles: ["admin", "engineer"] }); + + const usage = await resolveOperationParams(["deduplication_id=123", "subscription_id=sub_1", "usage_timestamp=1700000000", "properties={}"], false, + { jsonInput: true, opIdV2: "create_a_usage_event", pcVersionFlag: "v2" }); + await client.usageEvent.create(usage); + expect(JSON.parse(captured?.body ?? "{}")).toEqual({ deduplication_id: "123", subscription_id: "sub_1", usage_timestamp: 1700000000, properties: {} }); + }); + it("encodes indexed subscription item fields in the documented field-first order", async () => { await client.subscription.createWithItems("cus_demo", parseDataFlags([ "subscription_items[item_price_id][0]=basic-USD", diff --git a/src/tests/unit/lib/codesample/index.test.ts b/src/tests/unit/lib/codesample/index.test.ts index bff412e..e4c6d09 100644 --- a/src/tests/unit/lib/codesample/index.test.ts +++ b/src/tests/unit/lib/codesample/index.test.ts @@ -22,6 +22,9 @@ describe("parseDataFlags", () => { expect(parseDataFlags(['id[in]=["silver","murali"]'])).toEqual({ id: { in: ["silver", "murali"] }, }); + expect(parseDataFlags(["id[in]=[silver,murali]"])).toEqual({ + id: { in: ["silver", "murali"] }, + }); }); it("parses id[not_in] into a real array", () => { @@ -157,6 +160,22 @@ describe("code-sample parameter validation", () => { expect(python).toContain("unit_price=100"); }); + it("normalizes indexed-object and array fields in one code sample", async () => { + const code = await generate({ + operationId: "create_subscription_for_items", language: "curl", method: "POST", + resourceId: "cus_demo", pathParamName: "customer-id", + params: { subscription_items: { item_price_id: { "0": "basic-USD" }, quantity: ["2"] } }, + }); + expect(code).toContain("subscription_items[item_price_id][0]"); + expect(code).toContain("subscription_items[quantity][0]"); + + await expect(generate({ + operationId: "create_subscription_for_items", language: "curl", method: "POST", + resourceId: "cus_demo", pathParamName: "customer-id", + params: { subscription_items: { item_price_id: { "10001": "basic-USD" } } }, + })).rejects.toThrow("Invalid indexed parameter"); + }); + it("uses the same indexed form for JSON stdin arrays and bracket keys", async () => { const inputs = [ { subscription_items: [ @@ -231,6 +250,26 @@ describe("code-sample parameter validation", () => { expect(code).toContain('"b"'); }); + it("renders nested export filters from bracket flags", async () => { + const code = await generate({ + operationId: "export_subscriptions", language: "curl", method: "POST", uri: "/exports/subscriptions", + params: parseDataFlags(['subscription[status][is]=active', 'subscription[status][in]=["active","in_trial"]']), + }); + expect(code).toContain("subscription[status][is]"); + expect(code).toContain("subscription[status][in]"); + }); + + it("renders indexed JSON-body arrays as arrays", async () => { + const code = await generate({ + operationId: "list_personalized_offers", language: "curl", method: "POST", uri: "/personalized_offers", + params: parseDataFlags(["customer_id=cus_1", "roles[0]=admin", "roles[1]=engineer"], { jsonInput: true }), + }); + expect(code).toContain('"roles"'); + expect(code).toContain('"admin"'); + expect(code).toContain('"engineer"'); + expect(code).not.toContain('"0":'); + }); + it("propagates generator errors unrelated to parameter validation", async () => { await expect(generate({ operationId: "nonexistent_operation", language: "python" })) .rejects.toThrow(); diff --git a/src/tools/generate.ts b/src/tools/generate.ts index 9089276..d1c95b2 100644 --- a/src/tools/generate.ts +++ b/src/tools/generate.ts @@ -65,6 +65,7 @@ interface Operation { sdkAction: string; cliCommand: string; method: string; + jsonInput: boolean; hasId: boolean; urlPrefix: string; urlSuffix: string; @@ -235,7 +236,7 @@ async function loadEndpoints(): Promise { for (const [sdkName, endpoints] of Object.entries(Endpoints)) { const ops: Operation[] = (endpoints as unknown[]).map((ep: unknown) => { - const t = ep as [string, string, string, string | null, boolean]; + const t = ep as [string, string, string, string | null, boolean, string | null, boolean]; const urlPrefix = t[2]; const urlSuffix = t[3] ?? ""; const hasId = t[4] === true; @@ -250,6 +251,7 @@ async function loadEndpoints(): Promise { sdkAction: t[0], cliCommand: camelToKebab(t[0]), method: t[1], + jsonInput: t[6] === true, urlPrefix, urlSuffix, hasId, @@ -341,6 +343,9 @@ function generateResourceFile(r: Resource): string { L.push(`import { warnBareListFilters } from "../../lib/codesample/index.js";`); } L.push(`import { ${stdinFns.join(", ")} } from "../../lib/api/stdin-params.js";\n`); + if (r.operations.some((op) => op.method.toUpperCase() === "GET")) { + L.push(`import { toSdkParams } from "../../lib/api/params.js";\n`); + } L.push(`export function register${toPascal(r.sdkName)}(parent: Command): void {`); L.push(` const cmd = parent`); @@ -361,6 +366,10 @@ function generateResourceFile(r: Resource): string { ? `, resourceId: resource.id, pathParamName: ${op.argument ? JSON.stringify(op.argument.name) : "undefined"}` : ""; const csArgs = `{ lang: opts.codeSample, opIdV2: "${esc(op.operationIdV2)}", opIdV1: "${esc(op.operationIdV1)}", method: "${op.method}", uri: "${esc(uri)}", dataFlags: opts.data ?? [], params${csPathArgs}, pcVersionFlag: opts.pcVersion }`; + const paramOpts = `{ method: "${op.method}", jsonInput: ${op.jsonInput}, opIdV2: "${esc(op.operationIdV2)}", opIdV1: "${esc(op.operationIdV1)}", pcVersionFlag: opts.pcVersion }`; + const sdkParams = op.method.toUpperCase() === "GET" + ? `toSdkParams(params, "GET", ${op.sdkAction === "list"})` + : "params"; const isWrite = op.method.toUpperCase() !== "GET" && !isReadOnlyOperation(`${r.sdkName}.${op.sdkAction}`); const list = isListOp(op.cliCommand); @@ -404,7 +413,7 @@ function generateResourceFile(r: Resource): string { if (op.hasId) { L.push(` .action(async (id: string | undefined, json: string | undefined, opts: ${optsType}, command: Command) => {`); L.push(` const resource = takeResourceId(id, json, command);`); - L.push(` const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command);`); + L.push(` const params = await loadOperationParams(opts.data ?? [], resource.fromStdin, command, ${paramOpts});`); emitCatalogThenSample(); if (list) { L.push(` if (resource.fromStdin) warnBareJsonFilters(params, "${r.cliName}");`); @@ -415,14 +424,14 @@ function generateResourceFile(r: Resource): string { if (isWrite) L.push(` await ensureWriteAllowed("${op.method}");`); L.push(` try {`); L.push(` const client = await getClient();`); - L.push(` const result = await (client as any).${r.sdkName}.${op.sdkAction}(resource.id, params);`); + L.push(` const result = await (client as any).${r.sdkName}.${op.sdkAction}(resource.id, ${sdkParams});`); L.push(` printResult(result);`); L.push(` } catch (e) { handleSdkError(e); }`); L.push(` });\n`); } else { L.push(` .action(async (json: string | undefined, opts: ${optsType}, command: Command) => {`); L.push(` const fromStdin = readJsonMarker(json, command);`); - L.push(` const params = await loadOperationParams(opts.data ?? [], fromStdin, command);`); + L.push(` const params = await loadOperationParams(opts.data ?? [], fromStdin, command, ${paramOpts});`); emitCatalogThenSample(); if (list) { L.push(` if (fromStdin) warnBareJsonFilters(params, "${r.cliName}");`); @@ -431,7 +440,7 @@ function generateResourceFile(r: Resource): string { if (isWrite) L.push(` await ensureWriteAllowed("${op.method}");`); L.push(` try {`); L.push(` const client = await getClient();`); - L.push(` const result = await (client as any).${r.sdkName}.${op.sdkAction}(params);`); + L.push(` const result = await (client as any).${r.sdkName}.${op.sdkAction}(${sdkParams});`); L.push(` printResult(result);`); L.push(` } catch (e) { handleSdkError(e); }`); L.push(` });\n`); From 2c93c26c3199c43eb4a34e295342799d43e07f84 Mon Sep 17 00:00:00 2001 From: Muthiah Muralidharan Date: Fri, 9 Oct 2026 16:43:26 +0530 Subject: [PATCH 2/2] docs: fix readme --- README.md | 155 ++++++++++++++++++------------------------------------ 1 file changed, 51 insertions(+), 104 deletions(-) diff --git a/README.md b/README.md index f563e32..9751817 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,13 @@ The Chargebee CLI is available for macOS, Linux, and Windows. curl -fsSL https://raw.githubusercontent.com/chargebee/cli/main/install.sh | bash ``` -If you accept the skill installation prompt, the installer adds the skill for every detected coding agent. To choose agents yourself, answer No and then run `chargebee skills add --global --agent cursor` (repeat `--agent` for other agents). +The installer can also add the Chargebee skill for detected coding agents. To choose agents manually, decline the prompt and run: + +```bash +chargebee skills add --global --agent cursor +``` + +Repeat `--agent` for each agent. **Windows** (PowerShell) @@ -38,13 +44,13 @@ Verify the installation: chargebee --version ``` -To upgrade to the latest version: +Upgrade to the latest version: ```bash chargebee update ``` -Prebuilt binaries are also available on the [Releases](https://github.com/chargebee/cli/releases) page. +Prebuilt binaries are available on the [Releases](https://github.com/chargebee/cli/releases) page. ## Configuration @@ -54,11 +60,11 @@ Connect the CLI to your Chargebee site: chargebee auth add ``` -You'll be prompted for your site name and API key. The CLI verifies the credentials and saves the configuration locally. +The CLI prompts for your site name and API key, verifies them, and saves the profile locally. -API keys use macOS Keychain, Linux Secret Service (`secret-tool` and an accessible login keyring), or Windows Credential Manager (via Windows PowerShell). If unavailable, keys are saved in the local profile file; `auth add` reports the storage used. +API keys are stored in macOS Keychain, Linux Secret Service, or Windows Credential Manager when available. Otherwise, they are saved in the local profile file. `auth add` reports the storage used. -You can also provide them directly: +You can also pass credentials directly: ```bash chargebee auth add --site acme-test --api-key test_xxxxxxxxxxxx @@ -87,7 +93,7 @@ chargebee customer create \ -d auto_collection=off ``` -The same parameters can be a JSON object on stdin. `-` reads that object. Nested fields are objects, and list filters use an operator key: +Pass request parameters as JSON on stdin with `-`: ```bash echo '{"email":"ada@example.com","first_name":"Ada","billing_address":{"city":"San Francisco"}}' \ @@ -103,7 +109,7 @@ Retrieve the customer: chargebee customer retrieve ``` -API responses are written as JSON to stdout, so standard tools work as expected: +API responses are JSON, so standard tools work as expected: ```bash chargebee customer list | jq '.list[].customer.email' @@ -111,86 +117,31 @@ chargebee customer list | jq '.list[].customer.email' ## JSON output -API commands already print pretty JSON. Add the global `--json` flag for compact, -machine-readable output across API commands and built-ins: +API commands print readable JSON by default. Use `--json` when you need compact output for scripts: ```bash -chargebee auth status --json -chargebee --json resources chargebee customer list --json | jq '.list[].customer.id' -chargebee customer create --code-sample curl --json | jq -r '.code' -chargebee customer list --help --json -``` - -For commands that finish, stdout contains one JSON value followed by a newline. -API responses retain their resource envelopes and pagination fields; SDK transport -headers are excluded. Built-ins return command-specific fields, such as -`configured`, `profiles`, `installations`, or `updated`. Empty lists remain arrays. -Profile output omits API keys. Code samples return `{ "language": "curl", "code": "…" }`; -help returns command metadata and version returns `{ "version": "…" }`. - -On failure, stdout is empty and stderr contains one JSON error: - -```json -{"error":{"code":"live_write_refused","message":"…","exit_code":6}} -``` - -`error.code` identifies the failure; `message` is explanatory text, not a value to -match in scripts. Errors may include `details` (for example, HTTP status and API -error codes). Usage errors preserve Commander's codes such as -`commander.unknownOption`. Other codes include `command_failed`, `input_required`, -`api_error`, `rate_limited`, `timeout`, `network_error`, `unconfigured`, -`catalog_refused`, and `live_write_refused`. Existing process exit codes are -unchanged. Successful commands can emit one `{ "warnings": ["…"] }` object on -stderr. No colour escapes, banners, or progress spinners are emitted in JSON mode. - -`--json` disables interactive prompts, even in a terminal. Supply required inputs -explicitly; profile and skill removal still require `--yes`. Skill installation -requires `--agent`. Existing scope defaults still apply. The flag does not bypass -live-site write protection or catalog checks. Browser commands report the URL and -whether a browser launch was requested, not whether the page loaded. - -### Listening with JSON - -```bash -chargebee listen --forward-to http://localhost:3000/webhooks --json +chargebee auth status --json ``` -`listen` uses JSON Lines: each stdout line is an independent JSON object, emitted -as activity occurs. Do not parse the whole session as a single JSON document. -Records have `type` and an ISO `timestamp`: - -- `connecting`: connection progress (`message`). -- `ready`: the local forwarding target (`forward_to`). -- `forward_result`: event type and local HTTP response (`event_type`, `http_status`). -- `forward_failed`: event type and forwarding failure (`event_type`, `message`). -- `stopped`: graceful shutdown after pending forwards finish. - -Warnings use `{ "type": "warning", "timestamp": "…", "message": "…" }` on stderr. -Terminal failures use the ordinary `error` object and a nonzero exit code; earlier -stdout records remain valid. A local non-2xx response is a `forward_result` and does -not terminate the listener. Shutdown still has a deadline; interrupted or timed-out -shutdown reports `shutdown_failed`. An OS-forced kill cannot guarantee a final record. - -These records contain listener and forwarding metadata only. `--json` does not -print webhook bodies, customer fields, authorization tokens, or response bodies. +In JSON mode, successful commands write JSON to stdout. Failures write a JSON error to stderr. ## Commands | Command | Description | |---|---| -| `auth` | Add API-key credentials and manage saved profiles | -| `whoami` | Show the active site and configuration | -| `resources` | List available API resources | -| ` ` | Call a Chargebee API | -| `docs` | Browse API documentation from the terminal | -| `listen` | Forward webhook events to a local URL | -| `skills` | Install the Chargebee skill for supported AI coding agents | -| `open` | Open Chargebee Dashboard pages | -| `feedback` | Share feedback about the CLI | -| `alias` | Configure a shell alias for `chargebee` | -| `update` | Update the CLI | -| `telemetry` | Manage CLI telemetry | +| `auth` | Add API-key credentials and manage saved profiles. | +| `whoami` | Show the active site and configuration. | +| `resources` | List available API resources. | +| ` ` | Call a Chargebee API. | +| `docs` | Browse API documentation from the terminal. | +| `listen` | Forward webhook events to a local URL. | +| `skills` | Install the Chargebee skill for supported AI coding agents. | +| `open` | Open Chargebee Dashboard pages. | +| `feedback` | Share feedback about the CLI. | +| `alias` | Configure a shell alias for `chargebee`. | +| `update` | Update the CLI. | +| `telemetry` | Manage CLI telemetry. | Explore commands with: @@ -200,8 +151,6 @@ chargebee --help chargebee --help ``` -Operation help identifies arguments such as `customer-id` and `subscription-id` and links to full parameter documentation. Request examples for common operations are derived from the public API specs during generation and omitted when the specs do not provide enough safe values. - For API parameters and operations: ```bash @@ -210,7 +159,7 @@ chargebee docs ## Generate SDK Code -Add `--code-sample ` to an API command to generate runnable SDK code instead of executing the request: +Use `--code-sample ` to generate runnable SDK code instead of making the API request: ```bash chargebee customer create \ @@ -220,36 +169,26 @@ chargebee customer create \ Supported languages include `curl`, `python`, `nodejs`, `go`, `java`, `php`, `ruby`, and `dotnet`. -Run the following for the complete list: +To see all supported languages: ```bash chargebee customer create --code-sample list ``` -Code samples check required parameters and parameter names against the generator's bundled API schema. Site-specific `cf_` custom fields are allowed. Value types and enum values are not validated locally; the API remains authoritative. These schema checks apply to code samples, not API execution. - -For indexed item arrays, use Chargebee's field-first bracket notation, such as -`-d 'subscription_items[item_price_id][0]=basic-USD'` and -`-d 'subscription_items[quantity][0]=1'`. Fields with the same index describe one item. -For scalar arrays, either use indexed keys such as -`-d 'mandatory_items_to_remove[0]=basic-USD' -d 'mandatory_items_to_remove[1]=addon-USD'` -or pass one JSON array as a shorthand: -`-d 'mandatory_items_to_remove=["basic-USD","addon-USD"]'`. -Both forms send the indexed fields expected by form API requests. Quote the -argument so your shell does not interpret its brackets or quotes. For simple -string items, `-d 'mandatory_items_to_remove=[basic-USD,addon-USD]'` also works; -use JSON quotes when an item contains a comma. - -For both API requests and code samples, each `-d` argument must contain a non-empty key followed by `=` and its value. Malformed arguments such as `-d email` fail with an error; empty values such as `-d email=` are allowed. - ## Webhook Forwarding -Listen for webhook events and forward them directly to your local application: +Listen for webhook events and forward them to your local application: ```bash chargebee listen --forward-to http://localhost:3000/webhooks ``` +Use `--json` for machine-readable listener output: + +```bash +chargebee listen --forward-to http://localhost:3000/webhooks --json +``` + Press `Ctrl+C` to stop listening. ## Use with AI Agents @@ -285,7 +224,7 @@ rm "$(command -v chargebee)" Remove-Item (Get-Command chargebee).Source ``` -To remove CLI configuration and local state: +Remove CLI configuration and local state: ```bash rm -rf ~/.chargebee/cli @@ -293,9 +232,13 @@ rm -rf ~/.chargebee/cli ## Telemetry -The Chargebee CLI collects limited usage telemetry to help improve the CLI. You can opt out at any time with `chargebee telemetry disable`. +The Chargebee CLI collects limited usage telemetry to improve the CLI. Opt out with: + +```bash +chargebee telemetry disable +``` -See [TELEMETRY.md](TELEMETRY.md) for details on what is collected and how telemetry works. +See [TELEMETRY.md](TELEMETRY.md) for details. ## Documentation @@ -303,7 +246,7 @@ See [TELEMETRY.md](TELEMETRY.md) for details on what is collected and how teleme - [Chargebee Documentation](https://www.chargebee.com/docs/) - [Releases](https://github.com/chargebee/cli/releases) -You can also browse API documentation directly from the CLI: +Browse API documentation from the CLI: ```bash chargebee docs @@ -311,7 +254,11 @@ chargebee docs ## Feedback -Found a bug or have a feature request? Run `chargebee feedback "what happened"`. +Found a bug or have a feature request? + +```bash +chargebee feedback "what happened" +``` ## Contributing