@hyperline/cli 0.1.0-build.1.7351cd4 → 0.1.0-build.1.742f946
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/hyperline-main.js +1549 -758
- package/package.json +2 -2
|
@@ -34985,10 +34985,10 @@ var require_shared = __commonJS({
|
|
|
34985
34985
|
ZodId: () => ZodId,
|
|
34986
34986
|
ZodTranslationsSchemaFn: () => ZodTranslationsSchemaFn
|
|
34987
34987
|
});
|
|
34988
|
-
var
|
|
34988
|
+
var import_zod24 = require_lib();
|
|
34989
34989
|
var countryIds2 = ["all", ...countries.map(({ id }) => id)];
|
|
34990
|
-
var ZodId =
|
|
34991
|
-
var ZodTranslationsSchemaFn = (schema) =>
|
|
34990
|
+
var ZodId = import_zod24.z.enum(countryIds2);
|
|
34991
|
+
var ZodTranslationsSchemaFn = (schema) => import_zod24.z.record(import_zod24.z.string(), schema.optional());
|
|
34992
34992
|
var UsStates = [
|
|
34993
34993
|
{ id: "AA", name: "Armed Forces Americas" },
|
|
34994
34994
|
{ id: "AE", name: "Armed Forces Europe" },
|
|
@@ -36287,14 +36287,14 @@ var require_shared = __commonJS({
|
|
|
36287
36287
|
ZodNumberCurrencyPositiveValue: () => ZodNumberCurrencyPositiveValue,
|
|
36288
36288
|
ZodNumberCurrencyPositiveValueExcludingZero: () => ZodNumberCurrencyPositiveValueExcludingZero
|
|
36289
36289
|
});
|
|
36290
|
-
var
|
|
36291
|
-
var ZodCurrencyId =
|
|
36290
|
+
var import_zod25 = require_lib();
|
|
36291
|
+
var ZodCurrencyId = import_zod25.z.enum(
|
|
36292
36292
|
all_default.map(({ id }) => id)
|
|
36293
36293
|
);
|
|
36294
|
-
var ZodNumberCurrency =
|
|
36295
|
-
var ZodNumberCurrencyPositiveValue =
|
|
36296
|
-
var ZodNumberCurrencyPositiveValueExcludingZero =
|
|
36297
|
-
var ZodCurrencyMap =
|
|
36294
|
+
var ZodNumberCurrency = import_zod25.z.string().or(import_zod25.z.number().transform((number4) => number4)).transform((number4) => number4);
|
|
36295
|
+
var ZodNumberCurrencyPositiveValue = import_zod25.z.number().min(0).transform((number4) => number4).transform((number4) => number4);
|
|
36296
|
+
var ZodNumberCurrencyPositiveValueExcludingZero = import_zod25.z.number().gt(0).transform((number4) => number4).transform((number4) => number4);
|
|
36297
|
+
var ZodCurrencyMap = import_zod25.z.record(ZodNumberCurrency).refine(
|
|
36298
36298
|
(data) => Object.keys(data).every((key) => ZodCurrencyId.safeParse(key).success),
|
|
36299
36299
|
{
|
|
36300
36300
|
message: "Invalid currency key.",
|
|
@@ -38165,7 +38165,7 @@ Examples:
|
|
|
38165
38165
|
// build/commands/generated/accounting-journal-entries.js
|
|
38166
38166
|
function registerAccounting_Journal_EntriesCommands(parent) {
|
|
38167
38167
|
const resource = parent.command("accounting-journal-entries").description("Manage accounting > journal entries");
|
|
38168
|
-
resource.command("list-journal-entries").description(`List accounting journal entries with optional filters.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--entry-number <value>", `Filter by journal entry number.`).option("--status <value>", `Filter by journal entry status.`).option("--origin <value>", `Filter by automatic or manual origin.`).option("--ledger-id <value>", `Filter by ledger identifier.`).option("--invoicing-entity-id <value>", `Filter by invoicing entity identifier.`).option("--invoice-id <value>", `Filter by invoice identifier.`).option("--customer-id <value>", `Filter by customer identifier.`).option("--subscription-id <value>", `Filter by subscription identifier.`).option("--transaction-id <value>", `Filter by transaction identifier.`).option("--ledger-account-id <value>", `Filter entries containing a ledger account.`).option("--rule-id <value>", `Filter entries containing an accounting rule.`).option("--search <value>", `Search entry number, description, customer, or
|
|
38168
|
+
resource.command("list-journal-entries").description(`List accounting journal entries with optional filters.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--entry-number <value>", `Filter by journal entry number.`).option("--status <value>", `Filter by journal entry status.`).option("--origin <value>", `Filter by automatic or manual origin.`).option("--ledger-id <value>", `Filter by ledger identifier.`).option("--invoicing-entity-id <value>", `Filter by invoicing entity identifier.`).option("--invoice-id <value>", `Filter by invoice identifier.`).option("--customer-id <value>", `Filter by customer identifier.`).option("--subscription-id <value>", `Filter by subscription identifier.`).option("--transaction-id <value>", `Filter by transaction identifier.`).option("--ledger-account-id <value>", `Filter entries containing a ledger account.`).option("--rule-id <value>", `Filter entries containing an accounting rule.`).option("--search <value>", `Search entry number, description, amount, invoice number or ID, customer name or ID, or subscription ID.`).option("--year <number>", `Filter by entry year.`).option("--quarter <number>", `Filter by entry quarter.`).addHelpText("after", `
|
|
38169
38169
|
Examples:
|
|
38170
38170
|
hyperline accounting-journal-entries list-journal-entries
|
|
38171
38171
|
hyperline accounting-journal-entries list-journal-entries --take <take> --entry-number <entry_number>`).action(async (opts) => {
|
|
@@ -38409,9 +38409,10 @@ Examples:
|
|
|
38409
38409
|
queryParamKeys: ["invoicing_entity_id"]
|
|
38410
38410
|
});
|
|
38411
38411
|
});
|
|
38412
|
-
resource.command("create-ledger").description(`Create an accounting ledger for an invoicing entity.`).requiredOption("--invoicing-entity-id <value>", `Identifier of the invoicing entity that owns the ledger.`).requiredOption("--name <value>", `Display name of the ledger.`).requiredOption("--code <value>", `Optional accounting code of the ledger.`).requiredOption("--description <value>", `Optional description of the ledger.`).requiredOption("--type <value>", `Type of ledger.`).requiredOption("--currency <value>", `ISO 4217 currency used by the ledger.`).requiredOption("--entry-number-pattern <value>", `Entry numbering pattern containing \`{number}\`.`).requiredOption("--is-primary", `Whether this is the primary ledger for the invoicing entity.`).requiredOption("--is-inactive", `Whether the ledger is inactive.`).addHelpText("after", `
|
|
38412
|
+
resource.command("create-ledger").description(`Create an accounting ledger for an invoicing entity.`).requiredOption("--invoicing-entity-id <value>", `Identifier of the invoicing entity that owns the ledger.`).requiredOption("--name <value>", `Display name of the ledger.`).requiredOption("--code <value>", `Optional accounting code of the ledger.`).requiredOption("--description <value>", `Optional description of the ledger.`).requiredOption("--type <value>", `Type of ledger.`).requiredOption("--currency <value>", `ISO 4217 currency used by the ledger.`).option("--fiscal-year-end-month <number>", `Last month of the ledger's fiscal year, from 1 (January) to 12 (December). Reports split profit between past fiscal years and the current one from it. Defaults to 12. It cannot be changed after creation.`).requiredOption("--entry-number-pattern <value>", `Entry numbering pattern containing \`{number}\`.`).requiredOption("--is-primary", `Whether this is the primary ledger for the invoicing entity.`).requiredOption("--is-inactive", `Whether the ledger is inactive.`).addHelpText("after", `
|
|
38413
38413
|
Examples:
|
|
38414
38414
|
hyperline accounting-ledgers create-ledger --invoicing-entity-id <invoicing_entity_id> --name <name> --code <code> --description <description> --type <type> --currency <currency> --entry-number-pattern <entry_number_pattern> --is-primary --is-inactive
|
|
38415
|
+
hyperline accounting-ledgers create-ledger --invoicing-entity-id <invoicing_entity_id> --name <name> --code <code> --description <description> --type <type> --currency <currency> --entry-number-pattern <entry_number_pattern> --is-primary --is-inactive --fiscal-year-end-month <fiscal_year_end_month>
|
|
38415
38416
|
hyperline accounting-ledgers create-ledger --invoicing-entity-id <invoicing_entity_id> --name <name> --code <code> --description <description> --type <type> --currency <currency> --entry-number-pattern <entry_number_pattern> --is-primary --is-inactive --output json`).action(async (opts) => {
|
|
38416
38417
|
const ctx = resource.parent?.opts()._ctx;
|
|
38417
38418
|
if (!ctx) {
|
|
@@ -38433,6 +38434,8 @@ Examples:
|
|
|
38433
38434
|
args.currency = opts.currency;
|
|
38434
38435
|
if (opts.entryNumberPattern !== void 0)
|
|
38435
38436
|
args.entry_number_pattern = opts.entryNumberPattern;
|
|
38437
|
+
if (opts.fiscalYearEndMonth !== void 0)
|
|
38438
|
+
args.fiscal_year_end_month = Number(opts.fiscalYearEndMonth);
|
|
38436
38439
|
if (opts.isPrimary !== void 0)
|
|
38437
38440
|
args.is_primary = true;
|
|
38438
38441
|
if (opts.isInactive !== void 0)
|
|
@@ -38504,6 +38507,94 @@ Examples:
|
|
|
38504
38507
|
queryParamKeys: []
|
|
38505
38508
|
});
|
|
38506
38509
|
});
|
|
38510
|
+
resource.command("get-ledger-close-state").description(`Retrieve the last closed month of a ledger and the latest month that can be closed.`).requiredOption("--id <value>", `id parameter`).addHelpText("after", `
|
|
38511
|
+
Examples:
|
|
38512
|
+
hyperline accounting-ledgers get-ledger-close-state --id <id>`).action(async (opts) => {
|
|
38513
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
38514
|
+
if (!ctx) {
|
|
38515
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
38516
|
+
process.exit(1);
|
|
38517
|
+
}
|
|
38518
|
+
const args = {};
|
|
38519
|
+
if (opts.id !== void 0)
|
|
38520
|
+
args.id = opts.id;
|
|
38521
|
+
await ctx.execute({
|
|
38522
|
+
method: "GET",
|
|
38523
|
+
path: "/v1/accounting/ledgers/{id}/close",
|
|
38524
|
+
args,
|
|
38525
|
+
queryParamKeys: []
|
|
38526
|
+
});
|
|
38527
|
+
});
|
|
38528
|
+
resource.command("list-ledger-close-events").description(`List the closes and reopens of a ledger, newest first, with who did them and why.`).requiredOption("--id <value>", `id parameter`).option("--take <number>", `take`).option("--skip <number>", `skip`).addHelpText("after", `
|
|
38529
|
+
Examples:
|
|
38530
|
+
hyperline accounting-ledgers list-ledger-close-events --id <id>
|
|
38531
|
+
hyperline accounting-ledgers list-ledger-close-events --id <id> --take <take>`).action(async (opts) => {
|
|
38532
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
38533
|
+
if (!ctx) {
|
|
38534
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
38535
|
+
process.exit(1);
|
|
38536
|
+
}
|
|
38537
|
+
const args = {};
|
|
38538
|
+
if (opts.id !== void 0)
|
|
38539
|
+
args.id = opts.id;
|
|
38540
|
+
if (opts.take !== void 0)
|
|
38541
|
+
args.take = Number(opts.take);
|
|
38542
|
+
if (opts.skip !== void 0)
|
|
38543
|
+
args.skip = Number(opts.skip);
|
|
38544
|
+
await ctx.execute({
|
|
38545
|
+
method: "GET",
|
|
38546
|
+
path: "/v1/accounting/ledgers/{id}/close-events",
|
|
38547
|
+
args,
|
|
38548
|
+
queryParamKeys: ["take", "skip"]
|
|
38549
|
+
});
|
|
38550
|
+
});
|
|
38551
|
+
resource.command("close-ledger-period").description(`Close every month of a ledger through an ended month, after posting the revenue recognition due by its end; a user token needs the accounting_close permission.`).requiredOption("--id <value>", `id parameter`).requiredOption("--through-month <value>", `Last month to close, formatted YYYY-MM: an ended month after the last closed month. Every earlier month is closed too.`).option("--reason <value>", `Why the months are closed, 1 to 500 characters.`).addHelpText("after", `
|
|
38552
|
+
Examples:
|
|
38553
|
+
hyperline accounting-ledgers close-ledger-period --id <id> --through-month <through_month>
|
|
38554
|
+
hyperline accounting-ledgers close-ledger-period --id <id> --through-month <through_month> --reason <reason>
|
|
38555
|
+
hyperline accounting-ledgers close-ledger-period --id <id> --through-month <through_month> --output json`).action(async (opts) => {
|
|
38556
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
38557
|
+
if (!ctx) {
|
|
38558
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
38559
|
+
process.exit(1);
|
|
38560
|
+
}
|
|
38561
|
+
const args = {};
|
|
38562
|
+
if (opts.id !== void 0)
|
|
38563
|
+
args.id = opts.id;
|
|
38564
|
+
if (opts.throughMonth !== void 0)
|
|
38565
|
+
args.through_month = opts.throughMonth;
|
|
38566
|
+
if (opts.reason !== void 0)
|
|
38567
|
+
args.reason = opts.reason;
|
|
38568
|
+
await ctx.execute({
|
|
38569
|
+
method: "POST",
|
|
38570
|
+
path: "/v1/accounting/ledgers/{id}/close",
|
|
38571
|
+
args,
|
|
38572
|
+
queryParamKeys: []
|
|
38573
|
+
});
|
|
38574
|
+
});
|
|
38575
|
+
resource.command("reopen-ledger-period").description(`Reopen a closed month of a ledger and every later month, with a mandatory reason; a user token needs the accounting_close permission.`).requiredOption("--id <value>", `id parameter`).requiredOption("--from-month <value>", `First month to reopen, formatted YYYY-MM: a closed month. Every later month is reopened too.`).requiredOption("--reason <value>", `Why the months are reopened, 1 to 500 characters.`).addHelpText("after", `
|
|
38576
|
+
Examples:
|
|
38577
|
+
hyperline accounting-ledgers reopen-ledger-period --id <id> --from-month <from_month> --reason <reason>
|
|
38578
|
+
hyperline accounting-ledgers reopen-ledger-period --id <id> --from-month <from_month> --reason <reason> --output json`).action(async (opts) => {
|
|
38579
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
38580
|
+
if (!ctx) {
|
|
38581
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
38582
|
+
process.exit(1);
|
|
38583
|
+
}
|
|
38584
|
+
const args = {};
|
|
38585
|
+
if (opts.id !== void 0)
|
|
38586
|
+
args.id = opts.id;
|
|
38587
|
+
if (opts.fromMonth !== void 0)
|
|
38588
|
+
args.from_month = opts.fromMonth;
|
|
38589
|
+
if (opts.reason !== void 0)
|
|
38590
|
+
args.reason = opts.reason;
|
|
38591
|
+
await ctx.execute({
|
|
38592
|
+
method: "POST",
|
|
38593
|
+
path: "/v1/accounting/ledgers/{id}/reopen",
|
|
38594
|
+
args,
|
|
38595
|
+
queryParamKeys: []
|
|
38596
|
+
});
|
|
38597
|
+
});
|
|
38507
38598
|
}
|
|
38508
38599
|
|
|
38509
38600
|
// build/commands/generated/accounting-reports.js
|
|
@@ -38864,7 +38955,7 @@ Examples:
|
|
|
38864
38955
|
// build/commands/generated/accounting-rules.js
|
|
38865
38956
|
function registerAccounting_RulesCommands(parent) {
|
|
38866
38957
|
const resource = parent.command("accounting-rules").description("Manage accounting > rules");
|
|
38867
|
-
resource.command("list").description(`Retrieve existing accounting rules with optional filtering.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--ledger-id <value>", `ledger_id`).option("--ledger-id.not <value>", `ledger_id__not`).option("--ledger-id.
|
|
38958
|
+
resource.command("list").description(`Retrieve existing accounting rules with optional filtering.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--ledger-id <value>", `ledger_id`).option("--ledger-id.not <value>", `ledger_id__not`).option("--ledger-id.equals <value>", `ledger_id__equals`).option("--ledger-id.contains <value>", `ledger_id__contains`).option("--ledger-id.starts-with <value>", `ledger_id__startsWith`).option("--ledger-id.end-with <value>", `ledger_id__endWith`).option("--category <value>", `category`).option("--category.not <value>", `category__not`).option("--category.equals <value>", `category__equals`).option("--category.contains <value>", `category__contains`).option("--category.starts-with <value>", `category__startsWith`).option("--category.end-with <value>", `category__endWith`).addHelpText("after", `
|
|
38868
38959
|
Examples:
|
|
38869
38960
|
hyperline accounting-rules list
|
|
38870
38961
|
hyperline accounting-rules list --take <take> --ledger-id <ledger_id>`).action(async (opts) => {
|
|
@@ -38878,10 +38969,6 @@ Examples:
|
|
|
38878
38969
|
args.ledger_id = opts.ledgerId;
|
|
38879
38970
|
if (opts["ledgerId.not"] !== void 0)
|
|
38880
38971
|
args.ledger_id__not = opts["ledgerId.not"];
|
|
38881
|
-
if (opts["ledgerId.isNull"] !== void 0)
|
|
38882
|
-
args.ledger_id__isNull = opts["ledgerId.isNull"];
|
|
38883
|
-
if (opts["ledgerId.isNotNull"] !== void 0)
|
|
38884
|
-
args.ledger_id__isNotNull = opts["ledgerId.isNotNull"];
|
|
38885
38972
|
if (opts["ledgerId.equals"] !== void 0)
|
|
38886
38973
|
args.ledger_id__equals = opts["ledgerId.equals"];
|
|
38887
38974
|
if (opts["ledgerId.contains"] !== void 0)
|
|
@@ -38894,10 +38981,6 @@ Examples:
|
|
|
38894
38981
|
args.category = opts.category;
|
|
38895
38982
|
if (opts["category.not"] !== void 0)
|
|
38896
38983
|
args.category__not = opts["category.not"];
|
|
38897
|
-
if (opts["category.isNull"] !== void 0)
|
|
38898
|
-
args.category__isNull = opts["category.isNull"];
|
|
38899
|
-
if (opts["category.isNotNull"] !== void 0)
|
|
38900
|
-
args.category__isNotNull = opts["category.isNotNull"];
|
|
38901
38984
|
if (opts["category.equals"] !== void 0)
|
|
38902
38985
|
args.category__equals = opts["category.equals"];
|
|
38903
38986
|
if (opts["category.contains"] !== void 0)
|
|
@@ -38919,16 +39002,12 @@ Examples:
|
|
|
38919
39002
|
"skip",
|
|
38920
39003
|
"ledger_id",
|
|
38921
39004
|
"ledger_id__not",
|
|
38922
|
-
"ledger_id__isNull",
|
|
38923
|
-
"ledger_id__isNotNull",
|
|
38924
39005
|
"ledger_id__equals",
|
|
38925
39006
|
"ledger_id__contains",
|
|
38926
39007
|
"ledger_id__startsWith",
|
|
38927
39008
|
"ledger_id__endWith",
|
|
38928
39009
|
"category",
|
|
38929
39010
|
"category__not",
|
|
38930
|
-
"category__isNull",
|
|
38931
|
-
"category__isNotNull",
|
|
38932
39011
|
"category__equals",
|
|
38933
39012
|
"category__contains",
|
|
38934
39013
|
"category__startsWith",
|
|
@@ -39008,7 +39087,7 @@ Examples:
|
|
|
39008
39087
|
queryParamKeys: []
|
|
39009
39088
|
});
|
|
39010
39089
|
});
|
|
39011
|
-
resource.command("create").description(`Create a new accounting rule for account code routing or journal posting, with the filters, accounts and required fields the rule editor applies to its category.`).option("--ledger-id <value>", `Identifier of the ledger this rule belongs to.`).option("--name <value>", `Optional user-defined name for the rule.`).requiredOption("--category <value>", `Rule category (e.g. accounting_software, invoice_posted).`).requiredOption("--priority <number>", `Override order. Higher priority wins when multiple rules match.`).option("--product-ids <json>", `Product IDs to match. Empty means match all.`).option("--product-types <json>", `Product types to match. Allowed values: flat_fee, dynamic, seat, credit. Empty means match all.`).option("--customer-ids <json>", `Customer IDs for customer-specific overrides.`).option("--currencies <json>", `Currency codes to match (e.g. EUR, USD).`).option("--countries <json>", `Country codes for jurisdiction-based overrides.`).option("--tax-schemes <json>", `Tax schemes to match. A context without a tax scheme never matches a rule that sets this filter. Empty means match all.`).option("--tax-territories <json>", `Tax territory country codes to match. A context without a tax territory never matches a rule that sets this filter. Empty means match all.`).option("--tax-rate-classes <json>", `Tax rate classes to match. A context without a tax rate class never matches a rule that sets this filter. Empty means match all.`).option("--coupon-ids <json>", `Coupon IDs to match. Empty means match all.`).option("--client-provider-ids <json>", `Client provider IDs to match. Empty means match all.`).option("--payment-method-types <json>", `Payment method types to match. Empty means match all.`).option("--bank-account-ids <json>", `Bank account IDs to match. Empty means match all.`).option("--invoice-types <json>", `Invoice kinds to match: \`invoice\` or \`document\`. Refunds and other standard invoices match as \`invoice\`. A context without an invoice, such as a PSP payout, never matches a rule that sets this filter. Empty means match all.`).option("--interval-period <value>", `Billing interval period filter (months, years, etc.).`).option("--interval-count <number>", `Billing interval count filter.`).option("--custom-property-filters <json>", `Invoice custom property filters. A rule matches only when every entry matches (AND across entries), and an entry matches when the invoice value is one of its \`values\` (any-of). Matching is strict: an invoice without a value for the property never matches. Each entry adds 10 to the \`suggested_priority\` returned by the rule defaults endpoint. Allowed on invoice_posted, invoice_settled, revenue_recognition, credit_note_created and accounting_software (invoice side) rules. An invoice_settled rule with filters cannot set \`payments_clearing_ledger_account_id\`, as PSP payouts are booked without the invoice. Empty means match all.`).option("--revenue-ledger-account-id <value>", `Revenue ledger account ID used for invoice line revenue routing.`).option("--deferred-revenue-ledger-account-id <value>", `Deferred revenue ledger account ID used before revenue is recognized.`).option("--deferred-discount-ledger-account-id <value>", `Deferred discount ledger account ID used before discounts are recognized.`).option("--contra-revenue-ledger-account-id <value>", `Contra revenue ledger account ID used for amounts that reduce revenue.`).option("--discount-ledger-account-id <value>", `Discount ledger account ID used for recognized discounts.`).option("--ar-ledger-account-id <value>", `Accounts receivable ledger account ID used for invoice posting.`).option("--cash-ledger-account-id <value>", `Cash ledger account ID used for payment settlement.`).option("--payments-clearing-ledger-account-id <value>", `Payments clearing ledger account ID used while payments settle.`).option("--output-tax-ledger-account-id <value>", `Output tax ledger account ID used for tax liability.`).option("--uncollectible-debit-ledger-account-id <value>", `Ledger account ID debited when an invoice becomes uncollectible.
|
|
39090
|
+
resource.command("create").description(`Create a new accounting rule for account code routing or journal posting, with the filters, accounts and required fields the rule editor applies to its category.`).option("--ledger-id <value>", `Identifier of the ledger this rule belongs to.`).option("--name <value>", `Optional user-defined name for the rule.`).requiredOption("--category <value>", `Rule category (e.g. accounting_software, invoice_posted).`).requiredOption("--priority <number>", `Override order. Higher priority wins when multiple rules match.`).option("--product-ids <json>", `Product IDs to match. Empty means match all.`).option("--product-types <json>", `Product types to match. Allowed values: flat_fee, dynamic, seat, credit. Empty means match all.`).option("--customer-ids <json>", `Customer IDs for customer-specific overrides.`).option("--currencies <json>", `Currency codes to match (e.g. EUR, USD).`).option("--countries <json>", `Country codes for jurisdiction-based overrides.`).option("--tax-schemes <json>", `Tax schemes to match. A context without a tax scheme never matches a rule that sets this filter. Empty means match all.`).option("--tax-territories <json>", `Tax territory country codes to match. A context without a tax territory never matches a rule that sets this filter. Empty means match all.`).option("--tax-rate-classes <json>", `Tax rate classes to match. A context without a tax rate class never matches a rule that sets this filter. Empty means match all.`).option("--coupon-ids <json>", `Coupon IDs to match. Empty means match all.`).option("--client-provider-ids <json>", `Client provider IDs to match. Empty means match all.`).option("--payment-method-types <json>", `Payment method types to match. Empty means match all.`).option("--bank-account-ids <json>", `Bank account IDs to match. Empty means match all.`).option("--invoice-types <json>", `Invoice kinds to match: \`invoice\` or \`document\`. Refunds and other standard invoices match as \`invoice\`. A context without an invoice, such as a PSP payout, never matches a rule that sets this filter. Empty means match all.`).option("--interval-period <value>", `Billing interval period filter (months, years, etc.).`).option("--interval-count <number>", `Billing interval count filter.`).option("--custom-property-filters <json>", `Invoice custom property filters. A rule matches only when every entry matches (AND across entries), and an entry matches when the invoice value is one of its \`values\` (any-of). Matching is strict: an invoice without a value for the property never matches. Each entry adds 10 to the \`suggested_priority\` returned by the rule defaults endpoint. Allowed on invoice_posted, invoice_settled, revenue_recognition, credit_note_created and accounting_software (invoice side) rules. An invoice_settled rule with filters cannot set \`payments_clearing_ledger_account_id\`, as PSP payouts are booked without the invoice. Empty means match all.`).option("--revenue-ledger-account-id <value>", `Revenue ledger account ID used for invoice line revenue routing. Must be a \`revenue\` account. On accounting_software rules, a \`revenue\` or \`contra_revenue\` account with entity_type invoice, an \`asset\` or \`contra_asset\` account with entity_type payment.`).option("--deferred-revenue-ledger-account-id <value>", `Deferred revenue ledger account ID used before revenue is recognized. Must be a \`liability\` account.`).option("--deferred-discount-ledger-account-id <value>", `Deferred discount ledger account ID used before discounts are recognized. Must be an \`asset\` or \`contra_liability\` account.`).option("--contra-revenue-ledger-account-id <value>", `Contra revenue ledger account ID used for amounts that reduce revenue. Must be a \`contra_revenue\` account.`).option("--discount-ledger-account-id <value>", `Discount ledger account ID used for recognized discounts. Must be a \`contra_revenue\` account.`).option("--ar-ledger-account-id <value>", `Accounts receivable ledger account ID used for invoice posting. Must be an \`asset\` account.`).option("--cash-ledger-account-id <value>", `Cash ledger account ID used for payment settlement. Must be an \`asset\` account.`).option("--payments-clearing-ledger-account-id <value>", `Payments clearing ledger account ID used while payments settle. Must be an \`asset\` account.`).option("--output-tax-ledger-account-id <value>", `Output tax ledger account ID used for tax liability. Must be a \`liability\` account.`).option("--uncollectible-debit-ledger-account-id <value>", `Ledger account ID debited when an invoice becomes uncollectible. Must be an \`asset\` account, for doubtful-receivable reclassification, or an \`expense\` account, for direct write-off.`).option("--allowance-for-doubtful-accounts-id <value>", `Allowance for doubtful accounts ledger account ID, set on credit_note_created rules. Must be a \`contra_asset\` account.`).option("--provider-fees-expense-ledger-account-id <value>", `Expense ledger account ID debited for payment provider fees when a payment settles. Must be an \`expense\` account.`).option("--payment-processing-fees-expense-ledger-account-id <value>", `Expense ledger account ID debited for payment processing fees when a payment settles. Takes precedence over \`provider_fees_expense_ledger_account_id\` when set by the same or a higher priority rule. Must be an \`expense\` account.`).option("--payment-processing-fees-revenue-ledger-account-id <value>", `Payment processing fees revenue ledger account ID, set on invoice_settled rules. Must be a \`revenue\` account.`).option("--customer-credits-ledger-account-id <value>", `Customer credits ledger account ID used for credit balances. Must be a \`liability\` account.`).option("--rev-rec-method <value>", `Revenue recognition method.`).option("--rev-rec-granularity <value>", `Recognition period granularity. Used when \`rev_rec_method\` is \`over_time\`.`).option("--rev-rec-point-in-time-basis <value>", `Date revenue is recognized on. Used when \`rev_rec_method\` is \`point_in_time\`.`).option("--discount-recognition-method <value>", `Method used to recognize discounts.`).option("--journal-id <value>", `Journal ID used to route entries in the accounting provider.`).option("--entity-type <value>", `Entity type the rule applies to.`).addHelpText("after", `
|
|
39012
39091
|
Examples:
|
|
39013
39092
|
hyperline accounting-rules create --category <category> --priority <priority>
|
|
39014
39093
|
hyperline accounting-rules create --category <category> --priority <priority> --ledger-id <ledger_id> --name <name>
|
|
@@ -39108,7 +39187,7 @@ Examples:
|
|
|
39108
39187
|
queryParamKeys: []
|
|
39109
39188
|
});
|
|
39110
39189
|
});
|
|
39111
|
-
resource.command("update").description(`Update an existing accounting rule, with the filters, accounts and required fields the rule editor applies to its category.`).requiredOption("--id <value>", `id parameter`).option("--name <value>", `Optional user-defined name for the rule.`).option("--category <value>", `Rule category. Cannot be changed after creation, must match the current category when sent.`).option("--priority <number>", `Override order. Higher priority wins when multiple rules match.`).option("--product-ids <json>", `Product IDs to match. Empty means match all.`).option("--product-types <json>", `Product types to match. Allowed values: flat_fee, dynamic, seat, credit. Empty means match all.`).option("--customer-ids <json>", `Customer IDs for customer-specific overrides.`).option("--currencies <json>", `Currency codes to match (e.g. EUR, USD).`).option("--countries <json>", `Country codes for jurisdiction-based overrides.`).option("--tax-schemes <json>", `Tax schemes to match. A context without a tax scheme never matches a rule that sets this filter. Empty means match all.`).option("--tax-territories <json>", `Tax territory country codes to match. A context without a tax territory never matches a rule that sets this filter. Empty means match all.`).option("--tax-rate-classes <json>", `Tax rate classes to match. A context without a tax rate class never matches a rule that sets this filter. Empty means match all.`).option("--coupon-ids <json>", `Coupon IDs to match. Empty means match all.`).option("--client-provider-ids <json>", `Client provider IDs to match. Empty means match all.`).option("--payment-method-types <json>", `Payment method types to match. Empty means match all.`).option("--bank-account-ids <json>", `Bank account IDs to match. Empty means match all.`).option("--invoice-types <json>", `Invoice kinds to match: \`invoice\` or \`document\`. Refunds and other standard invoices match as \`invoice\`. A context without an invoice, such as a PSP payout, never matches a rule that sets this filter. Empty means match all.`).option("--interval-period <value>", `Billing interval period filter (months, years, etc.).`).option("--interval-count <number>", `Billing interval count filter.`).option("--custom-property-filters <json>", `Invoice custom property filters. A rule matches only when every entry matches (AND across entries), and an entry matches when the invoice value is one of its \`values\` (any-of). Matching is strict: an invoice without a value for the property never matches. Each entry adds 10 to the \`suggested_priority\` returned by the rule defaults endpoint. Allowed on invoice_posted, invoice_settled, revenue_recognition, credit_note_created and accounting_software (invoice side) rules. An invoice_settled rule with filters cannot set \`payments_clearing_ledger_account_id\`, as PSP payouts are booked without the invoice. Empty means match all.`).option("--revenue-ledger-account-id <value>", `Revenue ledger account ID used for invoice line revenue routing.`).option("--deferred-revenue-ledger-account-id <value>", `Deferred revenue ledger account ID used before revenue is recognized.`).option("--deferred-discount-ledger-account-id <value>", `Deferred discount ledger account ID used before discounts are recognized.`).option("--contra-revenue-ledger-account-id <value>", `Contra revenue ledger account ID used for amounts that reduce revenue.`).option("--discount-ledger-account-id <value>", `Discount ledger account ID used for recognized discounts.`).option("--ar-ledger-account-id <value>", `Accounts receivable ledger account ID used for invoice posting.`).option("--cash-ledger-account-id <value>", `Cash ledger account ID used for payment settlement.`).option("--payments-clearing-ledger-account-id <value>", `Payments clearing ledger account ID used while payments settle.`).option("--output-tax-ledger-account-id <value>", `Output tax ledger account ID used for tax liability.`).option("--uncollectible-debit-ledger-account-id <value>", `Ledger account ID debited when an invoice becomes uncollectible.
|
|
39190
|
+
resource.command("update").description(`Update an existing accounting rule, with the filters, accounts and required fields the rule editor applies to its category.`).requiredOption("--id <value>", `id parameter`).option("--name <value>", `Optional user-defined name for the rule.`).option("--category <value>", `Rule category. Cannot be changed after creation, must match the current category when sent.`).option("--priority <number>", `Override order. Higher priority wins when multiple rules match.`).option("--product-ids <json>", `Product IDs to match. Empty means match all.`).option("--product-types <json>", `Product types to match. Allowed values: flat_fee, dynamic, seat, credit. Empty means match all.`).option("--customer-ids <json>", `Customer IDs for customer-specific overrides.`).option("--currencies <json>", `Currency codes to match (e.g. EUR, USD).`).option("--countries <json>", `Country codes for jurisdiction-based overrides.`).option("--tax-schemes <json>", `Tax schemes to match. A context without a tax scheme never matches a rule that sets this filter. Empty means match all.`).option("--tax-territories <json>", `Tax territory country codes to match. A context without a tax territory never matches a rule that sets this filter. Empty means match all.`).option("--tax-rate-classes <json>", `Tax rate classes to match. A context without a tax rate class never matches a rule that sets this filter. Empty means match all.`).option("--coupon-ids <json>", `Coupon IDs to match. Empty means match all.`).option("--client-provider-ids <json>", `Client provider IDs to match. Empty means match all.`).option("--payment-method-types <json>", `Payment method types to match. Empty means match all.`).option("--bank-account-ids <json>", `Bank account IDs to match. Empty means match all.`).option("--invoice-types <json>", `Invoice kinds to match: \`invoice\` or \`document\`. Refunds and other standard invoices match as \`invoice\`. A context without an invoice, such as a PSP payout, never matches a rule that sets this filter. Empty means match all.`).option("--interval-period <value>", `Billing interval period filter (months, years, etc.).`).option("--interval-count <number>", `Billing interval count filter.`).option("--custom-property-filters <json>", `Invoice custom property filters. A rule matches only when every entry matches (AND across entries), and an entry matches when the invoice value is one of its \`values\` (any-of). Matching is strict: an invoice without a value for the property never matches. Each entry adds 10 to the \`suggested_priority\` returned by the rule defaults endpoint. Allowed on invoice_posted, invoice_settled, revenue_recognition, credit_note_created and accounting_software (invoice side) rules. An invoice_settled rule with filters cannot set \`payments_clearing_ledger_account_id\`, as PSP payouts are booked without the invoice. Empty means match all.`).option("--revenue-ledger-account-id <value>", `Revenue ledger account ID used for invoice line revenue routing. Must be a \`revenue\` account. On accounting_software rules, a \`revenue\` or \`contra_revenue\` account with entity_type invoice, an \`asset\` or \`contra_asset\` account with entity_type payment.`).option("--deferred-revenue-ledger-account-id <value>", `Deferred revenue ledger account ID used before revenue is recognized. Must be a \`liability\` account.`).option("--deferred-discount-ledger-account-id <value>", `Deferred discount ledger account ID used before discounts are recognized. Must be an \`asset\` or \`contra_liability\` account.`).option("--contra-revenue-ledger-account-id <value>", `Contra revenue ledger account ID used for amounts that reduce revenue. Must be a \`contra_revenue\` account.`).option("--discount-ledger-account-id <value>", `Discount ledger account ID used for recognized discounts. Must be a \`contra_revenue\` account.`).option("--ar-ledger-account-id <value>", `Accounts receivable ledger account ID used for invoice posting. Must be an \`asset\` account.`).option("--cash-ledger-account-id <value>", `Cash ledger account ID used for payment settlement. Must be an \`asset\` account.`).option("--payments-clearing-ledger-account-id <value>", `Payments clearing ledger account ID used while payments settle. Must be an \`asset\` account.`).option("--output-tax-ledger-account-id <value>", `Output tax ledger account ID used for tax liability. Must be a \`liability\` account.`).option("--uncollectible-debit-ledger-account-id <value>", `Ledger account ID debited when an invoice becomes uncollectible. Must be an \`asset\` account, for doubtful-receivable reclassification, or an \`expense\` account, for direct write-off.`).option("--allowance-for-doubtful-accounts-id <value>", `Allowance for doubtful accounts ledger account ID, set on credit_note_created rules. Must be a \`contra_asset\` account.`).option("--provider-fees-expense-ledger-account-id <value>", `Expense ledger account ID debited for payment provider fees when a payment settles. Must be an \`expense\` account.`).option("--payment-processing-fees-expense-ledger-account-id <value>", `Expense ledger account ID debited for payment processing fees when a payment settles. Takes precedence over \`provider_fees_expense_ledger_account_id\` when set by the same or a higher priority rule. Must be an \`expense\` account.`).option("--payment-processing-fees-revenue-ledger-account-id <value>", `Payment processing fees revenue ledger account ID, set on invoice_settled rules. Must be a \`revenue\` account.`).option("--customer-credits-ledger-account-id <value>", `Customer credits ledger account ID used for credit balances. Must be a \`liability\` account.`).option("--rev-rec-method <value>", `Revenue recognition method.`).option("--rev-rec-granularity <value>", `Recognition period granularity. Used when \`rev_rec_method\` is \`over_time\`.`).option("--rev-rec-point-in-time-basis <value>", `Date revenue is recognized on. Used when \`rev_rec_method\` is \`point_in_time\`.`).option("--discount-recognition-method <value>", `Method used to recognize discounts.`).option("--journal-id <value>", `Journal ID used to route entries in the accounting provider.`).option("--entity-type <value>", `Entity type the rule applies to.`).addHelpText("after", `
|
|
39112
39191
|
Examples:
|
|
39113
39192
|
hyperline accounting-rules update --id <id>
|
|
39114
39193
|
hyperline accounting-rules update --id <id> --name <name> --category <category>
|
|
@@ -40505,6 +40584,71 @@ Examples:
|
|
|
40505
40584
|
});
|
|
40506
40585
|
}
|
|
40507
40586
|
|
|
40587
|
+
// build/commands/generated/ai-monitoring.js
|
|
40588
|
+
function registerAi_MonitoringCommands(parent) {
|
|
40589
|
+
const resource = parent.command("ai-monitoring").description("Manage ai > monitoring");
|
|
40590
|
+
resource.command("list-monitoring-analyses").description(`List customer health analyses from the monitoring agent, newest first: health score (0-100), tier, summary, per-dimension scores, risk factors and positive signals. Filter by customer (Hyperline or external ID) with limit=1 to get a customer's current health score, or by customer_id__in (up to 100 Hyperline IDs) for several customers; the first analysis per customer is its latest. Only completed analyses unless status is set.`).option("--limit <number>", `Maximum number of items to return (1-100).`).option("--cursor <value>", `Opaque cursor returned in the previous response's \`next_cursor\`. Omit to fetch the first page.`).option("--include-total <value>", `Set to \`true\` to include \`total\` in the response.`).option("--customer-id <value>", `Return only analyses of this customer. Accepts the Hyperline ID or your own external ID.`).option("--customer-id.in <value>", `Comma-separated list of up to 100 Hyperline customer IDs. Return only analyses of these customers. Cannot be combined with \`customer_id\`.`).option("--status <value>", `Return only analyses with this status. Defaults to \`completed\`, the analyses that carry a score.`).option("--created-at.gte <value>", `Return only analyses created at or after this date.`).option("--created-at.lte <value>", `Return only analyses created at or before this date.`).addHelpText("after", `
|
|
40591
|
+
Examples:
|
|
40592
|
+
hyperline ai-monitoring list-monitoring-analyses
|
|
40593
|
+
hyperline ai-monitoring list-monitoring-analyses --limit <limit> --cursor <cursor>`).action(async (opts) => {
|
|
40594
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
40595
|
+
if (!ctx) {
|
|
40596
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
40597
|
+
process.exit(1);
|
|
40598
|
+
}
|
|
40599
|
+
const args = {};
|
|
40600
|
+
if (opts.cursor !== void 0)
|
|
40601
|
+
args.cursor = opts.cursor;
|
|
40602
|
+
if (opts.includeTotal !== void 0)
|
|
40603
|
+
args.include_total = opts.includeTotal;
|
|
40604
|
+
if (opts.customerId !== void 0)
|
|
40605
|
+
args.customer_id = opts.customerId;
|
|
40606
|
+
if (opts["customerId.in"] !== void 0)
|
|
40607
|
+
args.customer_id__in = opts["customerId.in"];
|
|
40608
|
+
if (opts.status !== void 0)
|
|
40609
|
+
args.status = opts.status;
|
|
40610
|
+
if (opts["createdAt.gte"] !== void 0)
|
|
40611
|
+
args.created_at__gte = opts["createdAt.gte"];
|
|
40612
|
+
if (opts["createdAt.lte"] !== void 0)
|
|
40613
|
+
args.created_at__lte = opts["createdAt.lte"];
|
|
40614
|
+
if (opts.limit !== void 0)
|
|
40615
|
+
args.limit = Number(opts.limit);
|
|
40616
|
+
await ctx.execute({
|
|
40617
|
+
method: "GET",
|
|
40618
|
+
path: "/v1/agents/monitoring/analyses",
|
|
40619
|
+
args,
|
|
40620
|
+
queryParamKeys: [
|
|
40621
|
+
"limit",
|
|
40622
|
+
"cursor",
|
|
40623
|
+
"include_total",
|
|
40624
|
+
"customer_id",
|
|
40625
|
+
"customer_id__in",
|
|
40626
|
+
"status",
|
|
40627
|
+
"created_at__gte",
|
|
40628
|
+
"created_at__lte"
|
|
40629
|
+
]
|
|
40630
|
+
});
|
|
40631
|
+
});
|
|
40632
|
+
resource.command("get-monitoring-analysis").description(`Get one customer health analysis by ID: health score (0-100), tier, summary, per-dimension scores, risk factors and positive signals.`).requiredOption("--id <value>", `id parameter`).addHelpText("after", `
|
|
40633
|
+
Examples:
|
|
40634
|
+
hyperline ai-monitoring get-monitoring-analysis --id <id>`).action(async (opts) => {
|
|
40635
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
40636
|
+
if (!ctx) {
|
|
40637
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
40638
|
+
process.exit(1);
|
|
40639
|
+
}
|
|
40640
|
+
const args = {};
|
|
40641
|
+
if (opts.id !== void 0)
|
|
40642
|
+
args.id = opts.id;
|
|
40643
|
+
await ctx.execute({
|
|
40644
|
+
method: "GET",
|
|
40645
|
+
path: "/v1/agents/monitoring/analyses/{id}",
|
|
40646
|
+
args,
|
|
40647
|
+
queryParamKeys: []
|
|
40648
|
+
});
|
|
40649
|
+
});
|
|
40650
|
+
}
|
|
40651
|
+
|
|
40508
40652
|
// build/commands/generated/analytics.js
|
|
40509
40653
|
function registerAnalyticsCommands(parent) {
|
|
40510
40654
|
const resource = parent.command("analytics").description("Manage analytics");
|
|
@@ -40598,6 +40742,84 @@ Examples:
|
|
|
40598
40742
|
});
|
|
40599
40743
|
}
|
|
40600
40744
|
|
|
40745
|
+
// build/commands/generated/catalog.js
|
|
40746
|
+
function registerCatalogCommands(parent) {
|
|
40747
|
+
const resource = parent.command("catalog").description("Manage catalog");
|
|
40748
|
+
resource.command("list-catalog-versions").description(`List product catalog versions (pending draft and published history). Catalog versioning must be enabled for the organisation.`).addHelpText("after", `
|
|
40749
|
+
Examples:
|
|
40750
|
+
hyperline catalog list-catalog-versions`).action(async (_opts) => {
|
|
40751
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
40752
|
+
if (!ctx) {
|
|
40753
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
40754
|
+
process.exit(1);
|
|
40755
|
+
}
|
|
40756
|
+
const args = {};
|
|
40757
|
+
await ctx.execute({
|
|
40758
|
+
method: "GET",
|
|
40759
|
+
path: "/v1/catalog/versions",
|
|
40760
|
+
args,
|
|
40761
|
+
queryParamKeys: []
|
|
40762
|
+
});
|
|
40763
|
+
});
|
|
40764
|
+
resource.command("get-catalog-draft").description(`Get the pending product catalog draft (null when there is none).`).addHelpText("after", `
|
|
40765
|
+
Examples:
|
|
40766
|
+
hyperline catalog get-catalog-draft`).action(async (_opts) => {
|
|
40767
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
40768
|
+
if (!ctx) {
|
|
40769
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
40770
|
+
process.exit(1);
|
|
40771
|
+
}
|
|
40772
|
+
const args = {};
|
|
40773
|
+
await ctx.execute({
|
|
40774
|
+
method: "GET",
|
|
40775
|
+
path: "/v1/catalog/versions/draft",
|
|
40776
|
+
args,
|
|
40777
|
+
queryParamKeys: []
|
|
40778
|
+
});
|
|
40779
|
+
});
|
|
40780
|
+
resource.command("publish-catalog-draft").description(`Publish the pending product catalog draft: its changes become the live catalog.`).addHelpText("after", `
|
|
40781
|
+
Examples:
|
|
40782
|
+
hyperline catalog publish-catalog-draft
|
|
40783
|
+
hyperline catalog publish-catalog-draft --output json`).action(async (_opts) => {
|
|
40784
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
40785
|
+
if (!ctx) {
|
|
40786
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
40787
|
+
process.exit(1);
|
|
40788
|
+
}
|
|
40789
|
+
const args = {};
|
|
40790
|
+
await ctx.execute({
|
|
40791
|
+
method: "POST",
|
|
40792
|
+
path: "/v1/catalog/versions/draft/publish",
|
|
40793
|
+
args,
|
|
40794
|
+
queryParamKeys: []
|
|
40795
|
+
});
|
|
40796
|
+
});
|
|
40797
|
+
resource.command("discard-catalog-draft").description(`Discard the pending product catalog draft without publishing it.`).option("--yes", "Skip confirmation").addHelpText("after", `
|
|
40798
|
+
Examples:
|
|
40799
|
+
hyperline catalog discard-catalog-draft
|
|
40800
|
+
hyperline catalog discard-catalog-draft --output json`).action(async (opts) => {
|
|
40801
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
40802
|
+
if (!ctx) {
|
|
40803
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
40804
|
+
process.exit(1);
|
|
40805
|
+
}
|
|
40806
|
+
const args = {};
|
|
40807
|
+
if (!opts.yes) {
|
|
40808
|
+
const confirmed = await confirmPrompt("Are you sure? Pass --yes to skip. [y/N] ");
|
|
40809
|
+
if (!confirmed) {
|
|
40810
|
+
process.stdout.write("Aborted.\n");
|
|
40811
|
+
return;
|
|
40812
|
+
}
|
|
40813
|
+
}
|
|
40814
|
+
await ctx.execute({
|
|
40815
|
+
method: "DELETE",
|
|
40816
|
+
path: "/v1/catalog/versions/draft",
|
|
40817
|
+
args,
|
|
40818
|
+
queryParamKeys: []
|
|
40819
|
+
});
|
|
40820
|
+
});
|
|
40821
|
+
}
|
|
40822
|
+
|
|
40601
40823
|
// build/commands/generated/companies.js
|
|
40602
40824
|
function registerCompaniesCommands(parent) {
|
|
40603
40825
|
const resource = parent.command("companies").description("Manage companies");
|
|
@@ -40664,7 +40886,7 @@ Examples:
|
|
|
40664
40886
|
queryParamKeys: ["take", "skip"]
|
|
40665
40887
|
});
|
|
40666
40888
|
});
|
|
40667
|
-
resource.command("create").description(`Create a new coupon with discount rules. Supports percentage or fixed amount discounts, duration limits, and redemption restrictions.`).requiredOption("--name <value>", `Coupon name.`).option("--description <value>", `Coupon description.`).option("--expiration-date <value>", `Date corresponding to the expiration of the coupon.`).option("--redemption-limit <number>", `Maximum number of subscriptions to which a single coupon can be applied.`).option("--product-ids <json>", `
|
|
40889
|
+
resource.command("create").description(`Create a new coupon with discount rules. Supports percentage or fixed amount discounts, duration limits, and redemption restrictions.`).requiredOption("--name <value>", `Coupon name.`).option("--description <value>", `Coupon description.`).option("--expiration-date <value>", `Date corresponding to the expiration of the coupon.`).option("--redemption-limit <number>", `Maximum number of subscriptions to which a single coupon can be applied.`).option("--product-ids <json>", `Products the coupon is scoped to, read together with \`product_scope\`: the only discounted products when \`include\`, the products never discounted when \`exclude\`, empty when \`all\`.`).option("--product-scope <value>", `Which products the coupon discounts. \`all\`: every product (\`product_ids\` must be empty). \`include\`: only the products in \`product_ids\`. \`exclude\`: every product except those in \`product_ids\` (lines without a product stay discounted). \`include\` and \`exclude\` require a non-empty \`product_ids\`. When omitted on create/update, it is inferred: \`include\` if \`product_ids\` is non-empty, \`all\` otherwise. Integrations that read \`product_ids\` without \`product_scope\` will misread an \`exclude\` list as the products the coupon applies to.`).option("--repeat <value>", `Default repeat behaviour applied when the coupon is attached to a subscription. Valid values: \`once\`, \`forever\`, \`duration\`. Can be overridden at attach time.`).option("--duration <json>", `Default duration applied when \`repeat\` is \`duration\`. Required when \`repeat\` is \`duration\`, must be null otherwise.`).option("--properties <json>", `Key/value pairs to store any metadata useful in your context.`).requiredOption("--type <value>", `type`).option("--discount-amount <number>", `Amount to apply as a discount on the total amount (excluding taxes) of a subscription. Expressed in the currency's smallest unit.`).option("--currency <value>", `Currency code. See [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes).`).option("--discount-percent <number>", `Percentage to apply as a discount on the amount (excluding taxes) of a product.`).addHelpText("after", `
|
|
40668
40890
|
Examples:
|
|
40669
40891
|
hyperline coupons create --name <name> --type <type>
|
|
40670
40892
|
hyperline coupons create --name <name> --type <type> --description <description> --expiration-date <expiration_date>
|
|
@@ -40681,6 +40903,8 @@ Examples:
|
|
|
40681
40903
|
args.description = opts.description;
|
|
40682
40904
|
if (opts.expirationDate !== void 0)
|
|
40683
40905
|
args.expiration_date = opts.expirationDate;
|
|
40906
|
+
if (opts.productScope !== void 0)
|
|
40907
|
+
args.product_scope = opts.productScope;
|
|
40684
40908
|
if (opts.repeat !== void 0)
|
|
40685
40909
|
args.repeat = opts.repeat;
|
|
40686
40910
|
if (opts.type !== void 0)
|
|
@@ -40724,7 +40948,7 @@ Examples:
|
|
|
40724
40948
|
queryParamKeys: []
|
|
40725
40949
|
});
|
|
40726
40950
|
});
|
|
40727
|
-
resource.command("update").description(`Update an existing coupon's name, discount rules, or restrictions.`).requiredOption("--id <value>", `id parameter`).requiredOption("--name <value>", `Coupon name.`).option("--description <value>", `Coupon description.`).option("--expiration-date <value>", `Date corresponding to the expiration of the coupon.`).option("--redemption-limit <number>", `Maximum number of subscriptions to which a single coupon can be applied.`).option("--product-ids <json>", `
|
|
40951
|
+
resource.command("update").description(`Update an existing coupon's name, discount rules, or restrictions.`).requiredOption("--id <value>", `id parameter`).requiredOption("--name <value>", `Coupon name.`).option("--description <value>", `Coupon description.`).option("--expiration-date <value>", `Date corresponding to the expiration of the coupon.`).option("--redemption-limit <number>", `Maximum number of subscriptions to which a single coupon can be applied.`).option("--product-ids <json>", `Products the coupon is scoped to, read together with \`product_scope\`: the only discounted products when \`include\`, the products never discounted when \`exclude\`, empty when \`all\`.`).option("--product-scope <value>", `Which products the coupon discounts. \`all\`: every product (\`product_ids\` must be empty). \`include\`: only the products in \`product_ids\`. \`exclude\`: every product except those in \`product_ids\` (lines without a product stay discounted). \`include\` and \`exclude\` require a non-empty \`product_ids\`. When omitted on create/update, it is inferred: \`include\` if \`product_ids\` is non-empty, \`all\` otherwise. Integrations that read \`product_ids\` without \`product_scope\` will misread an \`exclude\` list as the products the coupon applies to.`).option("--repeat <value>", `Default repeat behaviour applied when the coupon is attached to a subscription. Valid values: \`once\`, \`forever\`, \`duration\`. Can be overridden at attach time.`).option("--duration <json>", `Default duration applied when \`repeat\` is \`duration\`. Required when \`repeat\` is \`duration\`, must be null otherwise.`).option("--properties <json>", `Key/value pairs to store any metadata useful in your context.`).requiredOption("--type <value>", `type`).option("--discount-amount <number>", `Amount to apply as a discount on the total amount (excluding taxes) of a subscription. Expressed in the currency's smallest unit.`).option("--currency <value>", `Currency code. See [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes).`).option("--discount-percent <number>", `Percentage to apply as a discount on the amount (excluding taxes) of a product.`).addHelpText("after", `
|
|
40728
40952
|
Examples:
|
|
40729
40953
|
hyperline coupons update --id <id> --name <name> --type <type>
|
|
40730
40954
|
hyperline coupons update --id <id> --name <name> --type <type> --description <description> --expiration-date <expiration_date>
|
|
@@ -40743,6 +40967,8 @@ Examples:
|
|
|
40743
40967
|
args.description = opts.description;
|
|
40744
40968
|
if (opts.expirationDate !== void 0)
|
|
40745
40969
|
args.expiration_date = opts.expirationDate;
|
|
40970
|
+
if (opts.productScope !== void 0)
|
|
40971
|
+
args.product_scope = opts.productScope;
|
|
40746
40972
|
if (opts.repeat !== void 0)
|
|
40747
40973
|
args.repeat = opts.repeat;
|
|
40748
40974
|
if (opts.type !== void 0)
|
|
@@ -40799,7 +41025,7 @@ Examples:
|
|
|
40799
41025
|
// build/commands/generated/coupons-promotion-codes.js
|
|
40800
41026
|
function registerCoupons_Promotion_CodesCommands(parent) {
|
|
40801
41027
|
const resource = parent.command("coupons-promotion-codes").description("Manage coupons > promotion codes");
|
|
40802
|
-
resource.command("list-promotion-codes").description(`List promotion codes with optional filter by coupon_id. Promotion codes are shareable codes that reference a coupon. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--coupon-id <value>", `coupon_id`).option("--coupon-id.not <value>", `coupon_id__not`).option("--coupon-id.
|
|
41028
|
+
resource.command("list-promotion-codes").description(`List promotion codes with optional filter by coupon_id. Promotion codes are shareable codes that reference a coupon. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--coupon-id <value>", `coupon_id`).option("--coupon-id.not <value>", `coupon_id__not`).option("--coupon-id.equals <value>", `coupon_id__equals`).option("--coupon-id.contains <value>", `coupon_id__contains`).option("--coupon-id.starts-with <value>", `coupon_id__startsWith`).option("--coupon-id.end-with <value>", `coupon_id__endWith`).addHelpText("after", `
|
|
40803
41029
|
Examples:
|
|
40804
41030
|
hyperline coupons-promotion-codes list-promotion-codes
|
|
40805
41031
|
hyperline coupons-promotion-codes list-promotion-codes --take <take> --coupon-id <coupon_id>`).action(async (opts) => {
|
|
@@ -40813,10 +41039,6 @@ Examples:
|
|
|
40813
41039
|
args.coupon_id = opts.couponId;
|
|
40814
41040
|
if (opts["couponId.not"] !== void 0)
|
|
40815
41041
|
args.coupon_id__not = opts["couponId.not"];
|
|
40816
|
-
if (opts["couponId.isNull"] !== void 0)
|
|
40817
|
-
args.coupon_id__isNull = opts["couponId.isNull"];
|
|
40818
|
-
if (opts["couponId.isNotNull"] !== void 0)
|
|
40819
|
-
args.coupon_id__isNotNull = opts["couponId.isNotNull"];
|
|
40820
41042
|
if (opts["couponId.equals"] !== void 0)
|
|
40821
41043
|
args.coupon_id__equals = opts["couponId.equals"];
|
|
40822
41044
|
if (opts["couponId.contains"] !== void 0)
|
|
@@ -40838,8 +41060,6 @@ Examples:
|
|
|
40838
41060
|
"skip",
|
|
40839
41061
|
"coupon_id",
|
|
40840
41062
|
"coupon_id__not",
|
|
40841
|
-
"coupon_id__isNull",
|
|
40842
|
-
"coupon_id__isNotNull",
|
|
40843
41063
|
"coupon_id__equals",
|
|
40844
41064
|
"coupon_id__contains",
|
|
40845
41065
|
"coupon_id__startsWith",
|
|
@@ -41093,7 +41313,15 @@ Examples:
|
|
|
41093
41313
|
// build/commands/generated/customers.js
|
|
41094
41314
|
function registerCustomersCommands(parent) {
|
|
41095
41315
|
const resource = parent.command("customers").description("Manage customers");
|
|
41096
|
-
resource.command("list").description(`List customers with optional filters for name, type, status, currency, country, external_id, billing_email, search, tax_id, subscription_status, invoicing_entity_id, segment_id, custom_properties, payment_method_type, integration_entity_id, created_at, and updated_at. Sortable by created_at or updated_at. Paginated with limit/cursor.`).option("--limit <number>", `Maximum number of items to return (1-100).`).option("--cursor <value>", `Opaque cursor returned in the previous response's \`next_cursor\`. Omit to fetch the first page.`).option("--include-total <value>", `Set to \`true\` to include \`total\` in the response.`).option("--order <value>", `Sort direction.`).option("--sort <value>", `Field used to sort the results.`).option("--
|
|
41316
|
+
resource.command("list").description(`List customers with optional filters for name, type, status, currency, country, external_id, billing_email, search, tax_id, tax_id_status, subscription_status, invoicing_entity_id, segment_id, custom_properties, payment_method_type, integration_entity_id, created_at, and updated_at. Sortable by created_at or updated_at. Paginated with limit/cursor.`).option("--limit <number>", `Maximum number of items to return (1-100).`).option("--cursor <value>", `Opaque cursor returned in the previous response's \`next_cursor\`. Omit to fetch the first page.`).option("--include-total <value>", `Set to \`true\` to include \`total\` in the response.`).option("--order <value>", `Sort direction.`).option("--sort <value>", `Field used to sort the results.`).option("--tax-id-status <value>", `
|
|
41317
|
+
Verification status of the customer tax ID.
|
|
41318
|
+
|
|
41319
|
+
- \`valid\`: Tax ID has been verified and is valid.
|
|
41320
|
+
- \`invalid\`: Tax ID has been verified and is invalid.
|
|
41321
|
+
- \`mismatch\`: Tax ID is valid but is for a different country than the customer's country.
|
|
41322
|
+
- \`unverified\`: Tax ID has not been verified yet.
|
|
41323
|
+
- \`unsupported\`: Tax ID verification for this type not supported yet.
|
|
41324
|
+
`).option("--name <value>", `name`).option("--name.not <value>", `name__not`).option("--name.equals <value>", `name__equals`).option("--name.contains <value>", `name__contains`).option("--name.starts-with <value>", `name__startsWith`).option("--name.end-with <value>", `name__endWith`).option("--type <value>", `type`).option("--type.in <value>", `type__in`).option("--status <value>", `status`).option("--status.in <value>", `status__in`).option("--currency <value>", `currency`).option("--currency.not <value>", `currency__not`).option("--currency.equals <value>", `currency__equals`).option("--currency.contains <value>", `currency__contains`).option("--currency.starts-with <value>", `currency__startsWith`).option("--currency.end-with <value>", `currency__endWith`).option("--currency.is-null <value>", `currency__isNull`).option("--currency.is-not-null <value>", `currency__isNotNull`).option("--country <value>", `country`).option("--country.not <value>", `country__not`).option("--country.equals <value>", `country__equals`).option("--country.contains <value>", `country__contains`).option("--country.starts-with <value>", `country__startsWith`).option("--country.end-with <value>", `country__endWith`).option("--country.is-null <value>", `country__isNull`).option("--country.is-not-null <value>", `country__isNotNull`).option("--external-id <value>", `external_id`).option("--external-id.not <value>", `external_id__not`).option("--external-id.equals <value>", `external_id__equals`).option("--external-id.contains <value>", `external_id__contains`).option("--external-id.starts-with <value>", `external_id__startsWith`).option("--external-id.end-with <value>", `external_id__endWith`).option("--external-id.is-null <value>", `external_id__isNull`).option("--external-id.is-not-null <value>", `external_id__isNotNull`).option("--billing-email <value>", `billing_email`).option("--billing-email.not <value>", `billing_email__not`).option("--billing-email.equals <value>", `billing_email__equals`).option("--billing-email.contains <value>", `billing_email__contains`).option("--billing-email.starts-with <value>", `billing_email__startsWith`).option("--billing-email.end-with <value>", `billing_email__endWith`).option("--billing-email.is-null <value>", `billing_email__isNull`).option("--billing-email.is-not-null <value>", `billing_email__isNotNull`).option("--search <value>", `search`).option("--tax-id <value>", `tax_id`).option("--tax-id.not <value>", `tax_id__not`).option("--tax-id.equals <value>", `tax_id__equals`).option("--tax-id.contains <value>", `tax_id__contains`).option("--tax-id.starts-with <value>", `tax_id__startsWith`).option("--tax-id.end-with <value>", `tax_id__endWith`).option("--tax-id.is-null <value>", `tax_id__isNull`).option("--tax-id.is-not-null <value>", `tax_id__isNotNull`).option("--subscription-status <value>", `subscription_status`).option("--subscription-status.in <value>", `subscription_status__in`).option("--invoicing-entity-id <value>", `invoicing_entity_id`).option("--invoicing-entity-id.not <value>", `invoicing_entity_id__not`).option("--invoicing-entity-id.equals <value>", `invoicing_entity_id__equals`).option("--invoicing-entity-id.contains <value>", `invoicing_entity_id__contains`).option("--invoicing-entity-id.starts-with <value>", `invoicing_entity_id__startsWith`).option("--invoicing-entity-id.end-with <value>", `invoicing_entity_id__endWith`).option("--segment-id <value>", `segment_id`).option("--custom-properties <value>", `custom_properties`).option("--payment-method-type <value>", `payment_method_type`).option("--payment-method-type.in <value>", `payment_method_type__in`).option("--integration-entity-id <value>", `integration_entity_id`).option("--created-at <value>", `created_at`).option("--created-at.not <value>", `created_at__not`).option("--created-at.equals <value>", `created_at__equals`).option("--created-at.lt <value>", `created_at__lt`).option("--created-at.lte <value>", `created_at__lte`).option("--created-at.gt <value>", `created_at__gt`).option("--created-at.gte <value>", `created_at__gte`).option("--updated-at <value>", `updated_at`).option("--updated-at.not <value>", `updated_at__not`).option("--updated-at.equals <value>", `updated_at__equals`).option("--updated-at.lt <value>", `updated_at__lt`).option("--updated-at.lte <value>", `updated_at__lte`).option("--updated-at.gt <value>", `updated_at__gt`).option("--updated-at.gte <value>", `updated_at__gte`).addHelpText("after", `
|
|
41097
41325
|
Examples:
|
|
41098
41326
|
hyperline customers list
|
|
41099
41327
|
hyperline customers list --limit <limit> --cursor <cursor>`).action(async (opts) => {
|
|
@@ -41111,14 +41339,12 @@ Examples:
|
|
|
41111
41339
|
args.order = opts.order;
|
|
41112
41340
|
if (opts.sort !== void 0)
|
|
41113
41341
|
args.sort = opts.sort;
|
|
41342
|
+
if (opts.taxIdStatus !== void 0)
|
|
41343
|
+
args.tax_id_status = opts.taxIdStatus;
|
|
41114
41344
|
if (opts.name !== void 0)
|
|
41115
41345
|
args.name = opts.name;
|
|
41116
41346
|
if (opts["name.not"] !== void 0)
|
|
41117
41347
|
args.name__not = opts["name.not"];
|
|
41118
|
-
if (opts["name.isNull"] !== void 0)
|
|
41119
|
-
args.name__isNull = opts["name.isNull"];
|
|
41120
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
41121
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
41122
41348
|
if (opts["name.equals"] !== void 0)
|
|
41123
41349
|
args.name__equals = opts["name.equals"];
|
|
41124
41350
|
if (opts["name.contains"] !== void 0)
|
|
@@ -41139,10 +41365,6 @@ Examples:
|
|
|
41139
41365
|
args.currency = opts.currency;
|
|
41140
41366
|
if (opts["currency.not"] !== void 0)
|
|
41141
41367
|
args.currency__not = opts["currency.not"];
|
|
41142
|
-
if (opts["currency.isNull"] !== void 0)
|
|
41143
|
-
args.currency__isNull = opts["currency.isNull"];
|
|
41144
|
-
if (opts["currency.isNotNull"] !== void 0)
|
|
41145
|
-
args.currency__isNotNull = opts["currency.isNotNull"];
|
|
41146
41368
|
if (opts["currency.equals"] !== void 0)
|
|
41147
41369
|
args.currency__equals = opts["currency.equals"];
|
|
41148
41370
|
if (opts["currency.contains"] !== void 0)
|
|
@@ -41151,14 +41373,14 @@ Examples:
|
|
|
41151
41373
|
args.currency__startsWith = opts["currency.startsWith"];
|
|
41152
41374
|
if (opts["currency.endWith"] !== void 0)
|
|
41153
41375
|
args.currency__endWith = opts["currency.endWith"];
|
|
41376
|
+
if (opts["currency.isNull"] !== void 0)
|
|
41377
|
+
args.currency__isNull = opts["currency.isNull"];
|
|
41378
|
+
if (opts["currency.isNotNull"] !== void 0)
|
|
41379
|
+
args.currency__isNotNull = opts["currency.isNotNull"];
|
|
41154
41380
|
if (opts.country !== void 0)
|
|
41155
41381
|
args.country = opts.country;
|
|
41156
41382
|
if (opts["country.not"] !== void 0)
|
|
41157
41383
|
args.country__not = opts["country.not"];
|
|
41158
|
-
if (opts["country.isNull"] !== void 0)
|
|
41159
|
-
args.country__isNull = opts["country.isNull"];
|
|
41160
|
-
if (opts["country.isNotNull"] !== void 0)
|
|
41161
|
-
args.country__isNotNull = opts["country.isNotNull"];
|
|
41162
41384
|
if (opts["country.equals"] !== void 0)
|
|
41163
41385
|
args.country__equals = opts["country.equals"];
|
|
41164
41386
|
if (opts["country.contains"] !== void 0)
|
|
@@ -41167,14 +41389,14 @@ Examples:
|
|
|
41167
41389
|
args.country__startsWith = opts["country.startsWith"];
|
|
41168
41390
|
if (opts["country.endWith"] !== void 0)
|
|
41169
41391
|
args.country__endWith = opts["country.endWith"];
|
|
41392
|
+
if (opts["country.isNull"] !== void 0)
|
|
41393
|
+
args.country__isNull = opts["country.isNull"];
|
|
41394
|
+
if (opts["country.isNotNull"] !== void 0)
|
|
41395
|
+
args.country__isNotNull = opts["country.isNotNull"];
|
|
41170
41396
|
if (opts.externalId !== void 0)
|
|
41171
41397
|
args.external_id = opts.externalId;
|
|
41172
41398
|
if (opts["externalId.not"] !== void 0)
|
|
41173
41399
|
args.external_id__not = opts["externalId.not"];
|
|
41174
|
-
if (opts["externalId.isNull"] !== void 0)
|
|
41175
|
-
args.external_id__isNull = opts["externalId.isNull"];
|
|
41176
|
-
if (opts["externalId.isNotNull"] !== void 0)
|
|
41177
|
-
args.external_id__isNotNull = opts["externalId.isNotNull"];
|
|
41178
41400
|
if (opts["externalId.equals"] !== void 0)
|
|
41179
41401
|
args.external_id__equals = opts["externalId.equals"];
|
|
41180
41402
|
if (opts["externalId.contains"] !== void 0)
|
|
@@ -41183,14 +41405,14 @@ Examples:
|
|
|
41183
41405
|
args.external_id__startsWith = opts["externalId.startsWith"];
|
|
41184
41406
|
if (opts["externalId.endWith"] !== void 0)
|
|
41185
41407
|
args.external_id__endWith = opts["externalId.endWith"];
|
|
41408
|
+
if (opts["externalId.isNull"] !== void 0)
|
|
41409
|
+
args.external_id__isNull = opts["externalId.isNull"];
|
|
41410
|
+
if (opts["externalId.isNotNull"] !== void 0)
|
|
41411
|
+
args.external_id__isNotNull = opts["externalId.isNotNull"];
|
|
41186
41412
|
if (opts.billingEmail !== void 0)
|
|
41187
41413
|
args.billing_email = opts.billingEmail;
|
|
41188
41414
|
if (opts["billingEmail.not"] !== void 0)
|
|
41189
41415
|
args.billing_email__not = opts["billingEmail.not"];
|
|
41190
|
-
if (opts["billingEmail.isNull"] !== void 0)
|
|
41191
|
-
args.billing_email__isNull = opts["billingEmail.isNull"];
|
|
41192
|
-
if (opts["billingEmail.isNotNull"] !== void 0)
|
|
41193
|
-
args.billing_email__isNotNull = opts["billingEmail.isNotNull"];
|
|
41194
41416
|
if (opts["billingEmail.equals"] !== void 0)
|
|
41195
41417
|
args.billing_email__equals = opts["billingEmail.equals"];
|
|
41196
41418
|
if (opts["billingEmail.contains"] !== void 0)
|
|
@@ -41199,16 +41421,16 @@ Examples:
|
|
|
41199
41421
|
args.billing_email__startsWith = opts["billingEmail.startsWith"];
|
|
41200
41422
|
if (opts["billingEmail.endWith"] !== void 0)
|
|
41201
41423
|
args.billing_email__endWith = opts["billingEmail.endWith"];
|
|
41424
|
+
if (opts["billingEmail.isNull"] !== void 0)
|
|
41425
|
+
args.billing_email__isNull = opts["billingEmail.isNull"];
|
|
41426
|
+
if (opts["billingEmail.isNotNull"] !== void 0)
|
|
41427
|
+
args.billing_email__isNotNull = opts["billingEmail.isNotNull"];
|
|
41202
41428
|
if (opts.search !== void 0)
|
|
41203
41429
|
args.search = opts.search;
|
|
41204
41430
|
if (opts.taxId !== void 0)
|
|
41205
41431
|
args.tax_id = opts.taxId;
|
|
41206
41432
|
if (opts["taxId.not"] !== void 0)
|
|
41207
41433
|
args.tax_id__not = opts["taxId.not"];
|
|
41208
|
-
if (opts["taxId.isNull"] !== void 0)
|
|
41209
|
-
args.tax_id__isNull = opts["taxId.isNull"];
|
|
41210
|
-
if (opts["taxId.isNotNull"] !== void 0)
|
|
41211
|
-
args.tax_id__isNotNull = opts["taxId.isNotNull"];
|
|
41212
41434
|
if (opts["taxId.equals"] !== void 0)
|
|
41213
41435
|
args.tax_id__equals = opts["taxId.equals"];
|
|
41214
41436
|
if (opts["taxId.contains"] !== void 0)
|
|
@@ -41217,6 +41439,10 @@ Examples:
|
|
|
41217
41439
|
args.tax_id__startsWith = opts["taxId.startsWith"];
|
|
41218
41440
|
if (opts["taxId.endWith"] !== void 0)
|
|
41219
41441
|
args.tax_id__endWith = opts["taxId.endWith"];
|
|
41442
|
+
if (opts["taxId.isNull"] !== void 0)
|
|
41443
|
+
args.tax_id__isNull = opts["taxId.isNull"];
|
|
41444
|
+
if (opts["taxId.isNotNull"] !== void 0)
|
|
41445
|
+
args.tax_id__isNotNull = opts["taxId.isNotNull"];
|
|
41220
41446
|
if (opts.subscriptionStatus !== void 0)
|
|
41221
41447
|
args.subscription_status = opts.subscriptionStatus;
|
|
41222
41448
|
if (opts["subscriptionStatus.in"] !== void 0)
|
|
@@ -41225,10 +41451,6 @@ Examples:
|
|
|
41225
41451
|
args.invoicing_entity_id = opts.invoicingEntityId;
|
|
41226
41452
|
if (opts["invoicingEntityId.not"] !== void 0)
|
|
41227
41453
|
args.invoicing_entity_id__not = opts["invoicingEntityId.not"];
|
|
41228
|
-
if (opts["invoicingEntityId.isNull"] !== void 0)
|
|
41229
|
-
args.invoicing_entity_id__isNull = opts["invoicingEntityId.isNull"];
|
|
41230
|
-
if (opts["invoicingEntityId.isNotNull"] !== void 0)
|
|
41231
|
-
args.invoicing_entity_id__isNotNull = opts["invoicingEntityId.isNotNull"];
|
|
41232
41454
|
if (opts["invoicingEntityId.equals"] !== void 0)
|
|
41233
41455
|
args.invoicing_entity_id__equals = opts["invoicingEntityId.equals"];
|
|
41234
41456
|
if (opts["invoicingEntityId.contains"] !== void 0)
|
|
@@ -41251,10 +41473,6 @@ Examples:
|
|
|
41251
41473
|
args.created_at = opts.createdAt;
|
|
41252
41474
|
if (opts["createdAt.not"] !== void 0)
|
|
41253
41475
|
args.created_at__not = opts["createdAt.not"];
|
|
41254
|
-
if (opts["createdAt.isNull"] !== void 0)
|
|
41255
|
-
args.created_at__isNull = opts["createdAt.isNull"];
|
|
41256
|
-
if (opts["createdAt.isNotNull"] !== void 0)
|
|
41257
|
-
args.created_at__isNotNull = opts["createdAt.isNotNull"];
|
|
41258
41476
|
if (opts["createdAt.equals"] !== void 0)
|
|
41259
41477
|
args.created_at__equals = opts["createdAt.equals"];
|
|
41260
41478
|
if (opts["createdAt.lt"] !== void 0)
|
|
@@ -41269,10 +41487,6 @@ Examples:
|
|
|
41269
41487
|
args.updated_at = opts.updatedAt;
|
|
41270
41488
|
if (opts["updatedAt.not"] !== void 0)
|
|
41271
41489
|
args.updated_at__not = opts["updatedAt.not"];
|
|
41272
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
41273
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
41274
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
41275
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
41276
41490
|
if (opts["updatedAt.equals"] !== void 0)
|
|
41277
41491
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
41278
41492
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -41295,10 +41509,9 @@ Examples:
|
|
|
41295
41509
|
"include_total",
|
|
41296
41510
|
"order",
|
|
41297
41511
|
"sort",
|
|
41512
|
+
"tax_id_status",
|
|
41298
41513
|
"name",
|
|
41299
41514
|
"name__not",
|
|
41300
|
-
"name__isNull",
|
|
41301
|
-
"name__isNotNull",
|
|
41302
41515
|
"name__equals",
|
|
41303
41516
|
"name__contains",
|
|
41304
41517
|
"name__startsWith",
|
|
@@ -41309,51 +41522,49 @@ Examples:
|
|
|
41309
41522
|
"status__in",
|
|
41310
41523
|
"currency",
|
|
41311
41524
|
"currency__not",
|
|
41312
|
-
"currency__isNull",
|
|
41313
|
-
"currency__isNotNull",
|
|
41314
41525
|
"currency__equals",
|
|
41315
41526
|
"currency__contains",
|
|
41316
41527
|
"currency__startsWith",
|
|
41317
41528
|
"currency__endWith",
|
|
41529
|
+
"currency__isNull",
|
|
41530
|
+
"currency__isNotNull",
|
|
41318
41531
|
"country",
|
|
41319
41532
|
"country__not",
|
|
41320
|
-
"country__isNull",
|
|
41321
|
-
"country__isNotNull",
|
|
41322
41533
|
"country__equals",
|
|
41323
41534
|
"country__contains",
|
|
41324
41535
|
"country__startsWith",
|
|
41325
41536
|
"country__endWith",
|
|
41537
|
+
"country__isNull",
|
|
41538
|
+
"country__isNotNull",
|
|
41326
41539
|
"external_id",
|
|
41327
41540
|
"external_id__not",
|
|
41328
|
-
"external_id__isNull",
|
|
41329
|
-
"external_id__isNotNull",
|
|
41330
41541
|
"external_id__equals",
|
|
41331
41542
|
"external_id__contains",
|
|
41332
41543
|
"external_id__startsWith",
|
|
41333
41544
|
"external_id__endWith",
|
|
41545
|
+
"external_id__isNull",
|
|
41546
|
+
"external_id__isNotNull",
|
|
41334
41547
|
"billing_email",
|
|
41335
41548
|
"billing_email__not",
|
|
41336
|
-
"billing_email__isNull",
|
|
41337
|
-
"billing_email__isNotNull",
|
|
41338
41549
|
"billing_email__equals",
|
|
41339
41550
|
"billing_email__contains",
|
|
41340
41551
|
"billing_email__startsWith",
|
|
41341
41552
|
"billing_email__endWith",
|
|
41553
|
+
"billing_email__isNull",
|
|
41554
|
+
"billing_email__isNotNull",
|
|
41342
41555
|
"search",
|
|
41343
41556
|
"tax_id",
|
|
41344
41557
|
"tax_id__not",
|
|
41345
|
-
"tax_id__isNull",
|
|
41346
|
-
"tax_id__isNotNull",
|
|
41347
41558
|
"tax_id__equals",
|
|
41348
41559
|
"tax_id__contains",
|
|
41349
41560
|
"tax_id__startsWith",
|
|
41350
41561
|
"tax_id__endWith",
|
|
41562
|
+
"tax_id__isNull",
|
|
41563
|
+
"tax_id__isNotNull",
|
|
41351
41564
|
"subscription_status",
|
|
41352
41565
|
"subscription_status__in",
|
|
41353
41566
|
"invoicing_entity_id",
|
|
41354
41567
|
"invoicing_entity_id__not",
|
|
41355
|
-
"invoicing_entity_id__isNull",
|
|
41356
|
-
"invoicing_entity_id__isNotNull",
|
|
41357
41568
|
"invoicing_entity_id__equals",
|
|
41358
41569
|
"invoicing_entity_id__contains",
|
|
41359
41570
|
"invoicing_entity_id__startsWith",
|
|
@@ -41365,8 +41576,6 @@ Examples:
|
|
|
41365
41576
|
"integration_entity_id",
|
|
41366
41577
|
"created_at",
|
|
41367
41578
|
"created_at__not",
|
|
41368
|
-
"created_at__isNull",
|
|
41369
|
-
"created_at__isNotNull",
|
|
41370
41579
|
"created_at__equals",
|
|
41371
41580
|
"created_at__lt",
|
|
41372
41581
|
"created_at__lte",
|
|
@@ -41374,8 +41583,6 @@ Examples:
|
|
|
41374
41583
|
"created_at__gte",
|
|
41375
41584
|
"updated_at",
|
|
41376
41585
|
"updated_at__not",
|
|
41377
|
-
"updated_at__isNull",
|
|
41378
|
-
"updated_at__isNotNull",
|
|
41379
41586
|
"updated_at__equals",
|
|
41380
41587
|
"updated_at__lt",
|
|
41381
41588
|
"updated_at__lte",
|
|
@@ -41944,7 +42151,7 @@ Examples:
|
|
|
41944
42151
|
// build/commands/generated/customers-credits.js
|
|
41945
42152
|
function registerCustomers_CreditsCommands(parent) {
|
|
41946
42153
|
const resource = parent.command("customers-credits").description("Manage customers > credits");
|
|
41947
|
-
resource.command("list").description(`List credit products across all customers with optional filters for product_id, customer_id, and updated_at. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--product-id <value>", `product_id`).option("--product-id.not <value>", `product_id__not`).option("--product-id.
|
|
42154
|
+
resource.command("list").description(`List credit products across all customers with optional filters for product_id, customer_id, and updated_at. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--product-id <value>", `product_id`).option("--product-id.not <value>", `product_id__not`).option("--product-id.equals <value>", `product_id__equals`).option("--product-id.contains <value>", `product_id__contains`).option("--product-id.starts-with <value>", `product_id__startsWith`).option("--product-id.end-with <value>", `product_id__endWith`).option("--customer-id <value>", `customer_id`).option("--customer-id.not <value>", `customer_id__not`).option("--customer-id.equals <value>", `customer_id__equals`).option("--customer-id.contains <value>", `customer_id__contains`).option("--customer-id.starts-with <value>", `customer_id__startsWith`).option("--customer-id.end-with <value>", `customer_id__endWith`).option("--updated-at <value>", `updated_at`).option("--updated-at.not <value>", `updated_at__not`).option("--updated-at.equals <value>", `updated_at__equals`).option("--updated-at.lt <value>", `updated_at__lt`).option("--updated-at.lte <value>", `updated_at__lte`).option("--updated-at.gt <value>", `updated_at__gt`).option("--updated-at.gte <value>", `updated_at__gte`).addHelpText("after", `
|
|
41948
42155
|
Examples:
|
|
41949
42156
|
hyperline customers-credits list
|
|
41950
42157
|
hyperline customers-credits list --take <take> --product-id <product_id>`).action(async (opts) => {
|
|
@@ -41958,10 +42165,6 @@ Examples:
|
|
|
41958
42165
|
args.product_id = opts.productId;
|
|
41959
42166
|
if (opts["productId.not"] !== void 0)
|
|
41960
42167
|
args.product_id__not = opts["productId.not"];
|
|
41961
|
-
if (opts["productId.isNull"] !== void 0)
|
|
41962
|
-
args.product_id__isNull = opts["productId.isNull"];
|
|
41963
|
-
if (opts["productId.isNotNull"] !== void 0)
|
|
41964
|
-
args.product_id__isNotNull = opts["productId.isNotNull"];
|
|
41965
42168
|
if (opts["productId.equals"] !== void 0)
|
|
41966
42169
|
args.product_id__equals = opts["productId.equals"];
|
|
41967
42170
|
if (opts["productId.contains"] !== void 0)
|
|
@@ -41974,10 +42177,6 @@ Examples:
|
|
|
41974
42177
|
args.customer_id = opts.customerId;
|
|
41975
42178
|
if (opts["customerId.not"] !== void 0)
|
|
41976
42179
|
args.customer_id__not = opts["customerId.not"];
|
|
41977
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
41978
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
41979
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
41980
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
41981
42180
|
if (opts["customerId.equals"] !== void 0)
|
|
41982
42181
|
args.customer_id__equals = opts["customerId.equals"];
|
|
41983
42182
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -41990,10 +42189,6 @@ Examples:
|
|
|
41990
42189
|
args.updated_at = opts.updatedAt;
|
|
41991
42190
|
if (opts["updatedAt.not"] !== void 0)
|
|
41992
42191
|
args.updated_at__not = opts["updatedAt.not"];
|
|
41993
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
41994
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
41995
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
41996
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
41997
42192
|
if (opts["updatedAt.equals"] !== void 0)
|
|
41998
42193
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
41999
42194
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -42017,24 +42212,18 @@ Examples:
|
|
|
42017
42212
|
"skip",
|
|
42018
42213
|
"product_id",
|
|
42019
42214
|
"product_id__not",
|
|
42020
|
-
"product_id__isNull",
|
|
42021
|
-
"product_id__isNotNull",
|
|
42022
42215
|
"product_id__equals",
|
|
42023
42216
|
"product_id__contains",
|
|
42024
42217
|
"product_id__startsWith",
|
|
42025
42218
|
"product_id__endWith",
|
|
42026
42219
|
"customer_id",
|
|
42027
42220
|
"customer_id__not",
|
|
42028
|
-
"customer_id__isNull",
|
|
42029
|
-
"customer_id__isNotNull",
|
|
42030
42221
|
"customer_id__equals",
|
|
42031
42222
|
"customer_id__contains",
|
|
42032
42223
|
"customer_id__startsWith",
|
|
42033
42224
|
"customer_id__endWith",
|
|
42034
42225
|
"updated_at",
|
|
42035
42226
|
"updated_at__not",
|
|
42036
|
-
"updated_at__isNull",
|
|
42037
|
-
"updated_at__isNotNull",
|
|
42038
42227
|
"updated_at__equals",
|
|
42039
42228
|
"updated_at__lt",
|
|
42040
42229
|
"updated_at__lte",
|
|
@@ -42307,6 +42496,88 @@ Examples:
|
|
|
42307
42496
|
});
|
|
42308
42497
|
}
|
|
42309
42498
|
|
|
42499
|
+
// build/commands/generated/customers-features.js
|
|
42500
|
+
function registerCustomers_FeaturesCommands(parent) {
|
|
42501
|
+
const resource = parent.command("customers-features").description("Manage customers > features");
|
|
42502
|
+
resource.command("resolve-customer-features").description(`Resolve feature values for a customer.`).requiredOption("--id <value>", `id parameter`).option("--at <value>", `Resolution date.`).addHelpText("after", `
|
|
42503
|
+
Examples:
|
|
42504
|
+
hyperline customers-features resolve-customer-features --id <id>
|
|
42505
|
+
hyperline customers-features resolve-customer-features --id <id> --at <at>`).action(async (opts) => {
|
|
42506
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
42507
|
+
if (!ctx) {
|
|
42508
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
42509
|
+
process.exit(1);
|
|
42510
|
+
}
|
|
42511
|
+
const args = {};
|
|
42512
|
+
if (opts.id !== void 0)
|
|
42513
|
+
args.id = opts.id;
|
|
42514
|
+
if (opts.at !== void 0)
|
|
42515
|
+
args.at = opts.at;
|
|
42516
|
+
await ctx.execute({
|
|
42517
|
+
method: "GET",
|
|
42518
|
+
path: "/v1/customers/{id}/features",
|
|
42519
|
+
args,
|
|
42520
|
+
queryParamKeys: ["at"]
|
|
42521
|
+
});
|
|
42522
|
+
});
|
|
42523
|
+
resource.command("set-customer-feature").description(`Set a feature override for a customer.`).requiredOption("--id <value>", `id parameter`).requiredOption("--code <value>", `code parameter`).requiredOption("--value", `Feature value.`).option("--reason <value>", `Reason associated with a customer feature override.`).option("--expires-at <value>", `Expiration date of a customer feature override.`).addHelpText("after", `
|
|
42524
|
+
Examples:
|
|
42525
|
+
hyperline customers-features set-customer-feature --id <id> --code <code> --value
|
|
42526
|
+
hyperline customers-features set-customer-feature --id <id> --code <code> --value --reason <reason> --expires-at <expires_at>
|
|
42527
|
+
hyperline customers-features set-customer-feature --id <id> --code <code> --value --output json`).action(async (opts) => {
|
|
42528
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
42529
|
+
if (!ctx) {
|
|
42530
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
42531
|
+
process.exit(1);
|
|
42532
|
+
}
|
|
42533
|
+
const args = {};
|
|
42534
|
+
if (opts.id !== void 0)
|
|
42535
|
+
args.id = opts.id;
|
|
42536
|
+
if (opts.code !== void 0)
|
|
42537
|
+
args.code = opts.code;
|
|
42538
|
+
if (opts.reason !== void 0)
|
|
42539
|
+
args.reason = opts.reason;
|
|
42540
|
+
if (opts.expiresAt !== void 0)
|
|
42541
|
+
args.expires_at = opts.expiresAt;
|
|
42542
|
+
if (opts.value !== void 0)
|
|
42543
|
+
args.value = true;
|
|
42544
|
+
await ctx.execute({
|
|
42545
|
+
method: "PUT",
|
|
42546
|
+
path: "/v1/customers/{id}/features/{code}",
|
|
42547
|
+
args,
|
|
42548
|
+
queryParamKeys: []
|
|
42549
|
+
});
|
|
42550
|
+
});
|
|
42551
|
+
resource.command("delete-customer-feature").description(`Delete a feature override from a customer.`).requiredOption("--id <value>", `id parameter`).requiredOption("--code <value>", `code parameter`).option("--yes", "Skip confirmation").addHelpText("after", `
|
|
42552
|
+
Examples:
|
|
42553
|
+
hyperline customers-features delete-customer-feature --id <id> --code <code>
|
|
42554
|
+
hyperline customers-features delete-customer-feature --id <id> --code <code> --output json`).action(async (opts) => {
|
|
42555
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
42556
|
+
if (!ctx) {
|
|
42557
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
42558
|
+
process.exit(1);
|
|
42559
|
+
}
|
|
42560
|
+
const args = {};
|
|
42561
|
+
if (opts.id !== void 0)
|
|
42562
|
+
args.id = opts.id;
|
|
42563
|
+
if (opts.code !== void 0)
|
|
42564
|
+
args.code = opts.code;
|
|
42565
|
+
if (!opts.yes) {
|
|
42566
|
+
const confirmed = await confirmPrompt("Are you sure? Pass --yes to skip. [y/N] ");
|
|
42567
|
+
if (!confirmed) {
|
|
42568
|
+
process.stdout.write("Aborted.\n");
|
|
42569
|
+
return;
|
|
42570
|
+
}
|
|
42571
|
+
}
|
|
42572
|
+
await ctx.execute({
|
|
42573
|
+
method: "DELETE",
|
|
42574
|
+
path: "/v1/customers/{id}/features/{code}",
|
|
42575
|
+
args,
|
|
42576
|
+
queryParamKeys: []
|
|
42577
|
+
});
|
|
42578
|
+
});
|
|
42579
|
+
}
|
|
42580
|
+
|
|
42310
42581
|
// build/commands/generated/customers-payment-methods.js
|
|
42311
42582
|
function registerCustomers_Payment_MethodsCommands(parent) {
|
|
42312
42583
|
const resource = parent.command("customers-payment-methods").description("Manage customers > payment methods");
|
|
@@ -42756,6 +43027,222 @@ Examples:
|
|
|
42756
43027
|
});
|
|
42757
43028
|
}
|
|
42758
43029
|
|
|
43030
|
+
// build/commands/generated/features.js
|
|
43031
|
+
function registerFeaturesCommands(parent) {
|
|
43032
|
+
const resource = parent.command("features").description("Manage features");
|
|
43033
|
+
resource.command("list").description(`List feature definitions.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--code <value>", `code`).option("--code.not <value>", `code__not`).option("--code.equals <value>", `code__equals`).option("--code.contains <value>", `code__contains`).option("--code.starts-with <value>", `code__startsWith`).option("--code.end-with <value>", `code__endWith`).option("--name <value>", `name`).option("--name.not <value>", `name__not`).option("--name.equals <value>", `name__equals`).option("--name.contains <value>", `name__contains`).option("--name.starts-with <value>", `name__startsWith`).option("--name.end-with <value>", `name__endWith`).option("--status <value>", `status`).option("--status.in <value>", `status__in`).option("--search <value>", `search`).addHelpText("after", `
|
|
43034
|
+
Examples:
|
|
43035
|
+
hyperline features list
|
|
43036
|
+
hyperline features list --take <take> --code <code>`).action(async (opts) => {
|
|
43037
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
43038
|
+
if (!ctx) {
|
|
43039
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
43040
|
+
process.exit(1);
|
|
43041
|
+
}
|
|
43042
|
+
const args = {};
|
|
43043
|
+
if (opts.code !== void 0)
|
|
43044
|
+
args.code = opts.code;
|
|
43045
|
+
if (opts["code.not"] !== void 0)
|
|
43046
|
+
args.code__not = opts["code.not"];
|
|
43047
|
+
if (opts["code.equals"] !== void 0)
|
|
43048
|
+
args.code__equals = opts["code.equals"];
|
|
43049
|
+
if (opts["code.contains"] !== void 0)
|
|
43050
|
+
args.code__contains = opts["code.contains"];
|
|
43051
|
+
if (opts["code.startsWith"] !== void 0)
|
|
43052
|
+
args.code__startsWith = opts["code.startsWith"];
|
|
43053
|
+
if (opts["code.endWith"] !== void 0)
|
|
43054
|
+
args.code__endWith = opts["code.endWith"];
|
|
43055
|
+
if (opts.name !== void 0)
|
|
43056
|
+
args.name = opts.name;
|
|
43057
|
+
if (opts["name.not"] !== void 0)
|
|
43058
|
+
args.name__not = opts["name.not"];
|
|
43059
|
+
if (opts["name.equals"] !== void 0)
|
|
43060
|
+
args.name__equals = opts["name.equals"];
|
|
43061
|
+
if (opts["name.contains"] !== void 0)
|
|
43062
|
+
args.name__contains = opts["name.contains"];
|
|
43063
|
+
if (opts["name.startsWith"] !== void 0)
|
|
43064
|
+
args.name__startsWith = opts["name.startsWith"];
|
|
43065
|
+
if (opts["name.endWith"] !== void 0)
|
|
43066
|
+
args.name__endWith = opts["name.endWith"];
|
|
43067
|
+
if (opts.status !== void 0)
|
|
43068
|
+
args.status = opts.status;
|
|
43069
|
+
if (opts["status.in"] !== void 0)
|
|
43070
|
+
args.status__in = opts["status.in"];
|
|
43071
|
+
if (opts.search !== void 0)
|
|
43072
|
+
args.search = opts.search;
|
|
43073
|
+
if (opts.take !== void 0)
|
|
43074
|
+
args.take = Number(opts.take);
|
|
43075
|
+
if (opts.skip !== void 0)
|
|
43076
|
+
args.skip = Number(opts.skip);
|
|
43077
|
+
await ctx.execute({
|
|
43078
|
+
method: "GET",
|
|
43079
|
+
path: "/v1/features",
|
|
43080
|
+
args,
|
|
43081
|
+
queryParamKeys: [
|
|
43082
|
+
"take",
|
|
43083
|
+
"skip",
|
|
43084
|
+
"code",
|
|
43085
|
+
"code__not",
|
|
43086
|
+
"code__equals",
|
|
43087
|
+
"code__contains",
|
|
43088
|
+
"code__startsWith",
|
|
43089
|
+
"code__endWith",
|
|
43090
|
+
"name",
|
|
43091
|
+
"name__not",
|
|
43092
|
+
"name__equals",
|
|
43093
|
+
"name__contains",
|
|
43094
|
+
"name__startsWith",
|
|
43095
|
+
"name__endWith",
|
|
43096
|
+
"status",
|
|
43097
|
+
"status__in",
|
|
43098
|
+
"search"
|
|
43099
|
+
]
|
|
43100
|
+
});
|
|
43101
|
+
});
|
|
43102
|
+
resource.command("create").description(`Create a feature definition.`).requiredOption("--code <value>", `Feature code.`).requiredOption("--name <value>", `Feature name.`).option("--description <value>", `Feature description.`).requiredOption("--value-type <value>", `Type of feature value.`).requiredOption("--default-value", `Default value used when no product or customer feature value applies. Null means no default.`).option("--resolution-strategy <value>", `Strategy used to combine multiple product feature values for number features.`).addHelpText("after", `
|
|
43103
|
+
Examples:
|
|
43104
|
+
hyperline features create --code <code> --name <name> --value-type <value_type> --default-value
|
|
43105
|
+
hyperline features create --code <code> --name <name> --value-type <value_type> --default-value --description <description> --resolution-strategy <resolution_strategy>
|
|
43106
|
+
hyperline features create --code <code> --name <name> --value-type <value_type> --default-value --output json`).action(async (opts) => {
|
|
43107
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
43108
|
+
if (!ctx) {
|
|
43109
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
43110
|
+
process.exit(1);
|
|
43111
|
+
}
|
|
43112
|
+
const args = {};
|
|
43113
|
+
if (opts.code !== void 0)
|
|
43114
|
+
args.code = opts.code;
|
|
43115
|
+
if (opts.name !== void 0)
|
|
43116
|
+
args.name = opts.name;
|
|
43117
|
+
if (opts.description !== void 0)
|
|
43118
|
+
args.description = opts.description;
|
|
43119
|
+
if (opts.valueType !== void 0)
|
|
43120
|
+
args.value_type = opts.valueType;
|
|
43121
|
+
if (opts.resolutionStrategy !== void 0)
|
|
43122
|
+
args.resolution_strategy = opts.resolutionStrategy;
|
|
43123
|
+
if (opts.defaultValue !== void 0)
|
|
43124
|
+
args.default_value = true;
|
|
43125
|
+
await ctx.execute({
|
|
43126
|
+
method: "POST",
|
|
43127
|
+
path: "/v1/features",
|
|
43128
|
+
args,
|
|
43129
|
+
queryParamKeys: []
|
|
43130
|
+
});
|
|
43131
|
+
});
|
|
43132
|
+
resource.command("get").description(`Retrieve a feature definition.`).requiredOption("--code <value>", `code parameter`).addHelpText("after", `
|
|
43133
|
+
Examples:
|
|
43134
|
+
hyperline features get --code <code>`).action(async (opts) => {
|
|
43135
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
43136
|
+
if (!ctx) {
|
|
43137
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
43138
|
+
process.exit(1);
|
|
43139
|
+
}
|
|
43140
|
+
const args = {};
|
|
43141
|
+
if (opts.code !== void 0)
|
|
43142
|
+
args.code = opts.code;
|
|
43143
|
+
await ctx.execute({
|
|
43144
|
+
method: "GET",
|
|
43145
|
+
path: "/v1/features/{code}",
|
|
43146
|
+
args,
|
|
43147
|
+
queryParamKeys: []
|
|
43148
|
+
});
|
|
43149
|
+
});
|
|
43150
|
+
resource.command("update").description(`Update a feature definition.`).requiredOption("--code <value>", `code parameter`).option("--name <value>", `Feature name.`).option("--description <value>", `Feature description.`).option("--value-type <value>", `value_type`).option("--default-value", `Default value used when no product or customer feature value applies. Null means no default.`).option("--resolution-strategy <value>", `Strategy used to combine multiple product feature values for number features.`).addHelpText("after", `
|
|
43151
|
+
Examples:
|
|
43152
|
+
hyperline features update --code <code>
|
|
43153
|
+
hyperline features update --code <code> --name <name> --description <description>
|
|
43154
|
+
hyperline features update --code <code> --output json`).action(async (opts) => {
|
|
43155
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
43156
|
+
if (!ctx) {
|
|
43157
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
43158
|
+
process.exit(1);
|
|
43159
|
+
}
|
|
43160
|
+
const args = {};
|
|
43161
|
+
if (opts.code !== void 0)
|
|
43162
|
+
args.code = opts.code;
|
|
43163
|
+
if (opts.name !== void 0)
|
|
43164
|
+
args.name = opts.name;
|
|
43165
|
+
if (opts.description !== void 0)
|
|
43166
|
+
args.description = opts.description;
|
|
43167
|
+
if (opts.valueType !== void 0)
|
|
43168
|
+
args.value_type = opts.valueType;
|
|
43169
|
+
if (opts.resolutionStrategy !== void 0)
|
|
43170
|
+
args.resolution_strategy = opts.resolutionStrategy;
|
|
43171
|
+
if (opts.defaultValue !== void 0)
|
|
43172
|
+
args.default_value = true;
|
|
43173
|
+
await ctx.execute({
|
|
43174
|
+
method: "PUT",
|
|
43175
|
+
path: "/v1/features/{code}",
|
|
43176
|
+
args,
|
|
43177
|
+
queryParamKeys: []
|
|
43178
|
+
});
|
|
43179
|
+
});
|
|
43180
|
+
resource.command("archive").description(`Archive a feature definition.`).requiredOption("--code <value>", `code parameter`).addHelpText("after", `
|
|
43181
|
+
Examples:
|
|
43182
|
+
hyperline features archive --code <code>
|
|
43183
|
+
hyperline features archive --code <code> --output json`).action(async (opts) => {
|
|
43184
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
43185
|
+
if (!ctx) {
|
|
43186
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
43187
|
+
process.exit(1);
|
|
43188
|
+
}
|
|
43189
|
+
const args = {};
|
|
43190
|
+
if (opts.code !== void 0)
|
|
43191
|
+
args.code = opts.code;
|
|
43192
|
+
await ctx.execute({
|
|
43193
|
+
method: "PUT",
|
|
43194
|
+
path: "/v1/features/{code}/archive",
|
|
43195
|
+
args,
|
|
43196
|
+
queryParamKeys: []
|
|
43197
|
+
});
|
|
43198
|
+
});
|
|
43199
|
+
resource.command("delete").description(`Delete an archived feature definition that is not in use.`).requiredOption("--code <value>", `code parameter`).option("--yes", "Skip confirmation").addHelpText("after", `
|
|
43200
|
+
Examples:
|
|
43201
|
+
hyperline features delete --code <code>
|
|
43202
|
+
hyperline features delete --code <code> --output json`).action(async (opts) => {
|
|
43203
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
43204
|
+
if (!ctx) {
|
|
43205
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
43206
|
+
process.exit(1);
|
|
43207
|
+
}
|
|
43208
|
+
const args = {};
|
|
43209
|
+
if (opts.code !== void 0)
|
|
43210
|
+
args.code = opts.code;
|
|
43211
|
+
if (!opts.yes) {
|
|
43212
|
+
const confirmed = await confirmPrompt("Are you sure? Pass --yes to skip. [y/N] ");
|
|
43213
|
+
if (!confirmed) {
|
|
43214
|
+
process.stdout.write("Aborted.\n");
|
|
43215
|
+
return;
|
|
43216
|
+
}
|
|
43217
|
+
}
|
|
43218
|
+
await ctx.execute({
|
|
43219
|
+
method: "DELETE",
|
|
43220
|
+
path: "/v1/features/{code}",
|
|
43221
|
+
args,
|
|
43222
|
+
queryParamKeys: []
|
|
43223
|
+
});
|
|
43224
|
+
});
|
|
43225
|
+
resource.command("unarchive").description(`Unarchive a feature definition.`).requiredOption("--code <value>", `code parameter`).addHelpText("after", `
|
|
43226
|
+
Examples:
|
|
43227
|
+
hyperline features unarchive --code <code>
|
|
43228
|
+
hyperline features unarchive --code <code> --output json`).action(async (opts) => {
|
|
43229
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
43230
|
+
if (!ctx) {
|
|
43231
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
43232
|
+
process.exit(1);
|
|
43233
|
+
}
|
|
43234
|
+
const args = {};
|
|
43235
|
+
if (opts.code !== void 0)
|
|
43236
|
+
args.code = opts.code;
|
|
43237
|
+
await ctx.execute({
|
|
43238
|
+
method: "PUT",
|
|
43239
|
+
path: "/v1/features/{code}/unarchive",
|
|
43240
|
+
args,
|
|
43241
|
+
queryParamKeys: []
|
|
43242
|
+
});
|
|
43243
|
+
});
|
|
43244
|
+
}
|
|
43245
|
+
|
|
42759
43246
|
// build/commands/generated/files.js
|
|
42760
43247
|
function registerFilesCommands(parent) {
|
|
42761
43248
|
const resource = parent.command("files").description("Manage files");
|
|
@@ -42777,7 +43264,7 @@ Examples:
|
|
|
42777
43264
|
queryParamKeys: []
|
|
42778
43265
|
});
|
|
42779
43266
|
});
|
|
42780
|
-
resource.command("list").description(`List uploaded files with optional filters for name and customer_id. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--name <value>", `name`).option("--name.not <value>", `name__not`).option("--name.
|
|
43267
|
+
resource.command("list").description(`List uploaded files with optional filters for name and customer_id. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--name <value>", `name`).option("--name.not <value>", `name__not`).option("--name.equals <value>", `name__equals`).option("--name.contains <value>", `name__contains`).option("--name.starts-with <value>", `name__startsWith`).option("--name.end-with <value>", `name__endWith`).option("--customer-id <value>", `customer_id`).option("--customer-id.not <value>", `customer_id__not`).option("--customer-id.equals <value>", `customer_id__equals`).option("--customer-id.contains <value>", `customer_id__contains`).option("--customer-id.starts-with <value>", `customer_id__startsWith`).option("--customer-id.end-with <value>", `customer_id__endWith`).option("--customer-id.is-null <value>", `customer_id__isNull`).option("--customer-id.is-not-null <value>", `customer_id__isNotNull`).addHelpText("after", `
|
|
42781
43268
|
Examples:
|
|
42782
43269
|
hyperline files list
|
|
42783
43270
|
hyperline files list --take <take> --name <name>`).action(async (opts) => {
|
|
@@ -42791,10 +43278,6 @@ Examples:
|
|
|
42791
43278
|
args.name = opts.name;
|
|
42792
43279
|
if (opts["name.not"] !== void 0)
|
|
42793
43280
|
args.name__not = opts["name.not"];
|
|
42794
|
-
if (opts["name.isNull"] !== void 0)
|
|
42795
|
-
args.name__isNull = opts["name.isNull"];
|
|
42796
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
42797
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
42798
43281
|
if (opts["name.equals"] !== void 0)
|
|
42799
43282
|
args.name__equals = opts["name.equals"];
|
|
42800
43283
|
if (opts["name.contains"] !== void 0)
|
|
@@ -42807,10 +43290,6 @@ Examples:
|
|
|
42807
43290
|
args.customer_id = opts.customerId;
|
|
42808
43291
|
if (opts["customerId.not"] !== void 0)
|
|
42809
43292
|
args.customer_id__not = opts["customerId.not"];
|
|
42810
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
42811
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
42812
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
42813
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
42814
43293
|
if (opts["customerId.equals"] !== void 0)
|
|
42815
43294
|
args.customer_id__equals = opts["customerId.equals"];
|
|
42816
43295
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -42819,6 +43298,10 @@ Examples:
|
|
|
42819
43298
|
args.customer_id__startsWith = opts["customerId.startsWith"];
|
|
42820
43299
|
if (opts["customerId.endWith"] !== void 0)
|
|
42821
43300
|
args.customer_id__endWith = opts["customerId.endWith"];
|
|
43301
|
+
if (opts["customerId.isNull"] !== void 0)
|
|
43302
|
+
args.customer_id__isNull = opts["customerId.isNull"];
|
|
43303
|
+
if (opts["customerId.isNotNull"] !== void 0)
|
|
43304
|
+
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
42822
43305
|
if (opts.take !== void 0)
|
|
42823
43306
|
args.take = Number(opts.take);
|
|
42824
43307
|
if (opts.skip !== void 0)
|
|
@@ -42832,20 +43315,18 @@ Examples:
|
|
|
42832
43315
|
"skip",
|
|
42833
43316
|
"name",
|
|
42834
43317
|
"name__not",
|
|
42835
|
-
"name__isNull",
|
|
42836
|
-
"name__isNotNull",
|
|
42837
43318
|
"name__equals",
|
|
42838
43319
|
"name__contains",
|
|
42839
43320
|
"name__startsWith",
|
|
42840
43321
|
"name__endWith",
|
|
42841
43322
|
"customer_id",
|
|
42842
43323
|
"customer_id__not",
|
|
42843
|
-
"customer_id__isNull",
|
|
42844
|
-
"customer_id__isNotNull",
|
|
42845
43324
|
"customer_id__equals",
|
|
42846
43325
|
"customer_id__contains",
|
|
42847
43326
|
"customer_id__startsWith",
|
|
42848
|
-
"customer_id__endWith"
|
|
43327
|
+
"customer_id__endWith",
|
|
43328
|
+
"customer_id__isNull",
|
|
43329
|
+
"customer_id__isNotNull"
|
|
42849
43330
|
]
|
|
42850
43331
|
});
|
|
42851
43332
|
});
|
|
@@ -42901,7 +43382,7 @@ Examples:
|
|
|
42901
43382
|
// build/commands/generated/invoices.js
|
|
42902
43383
|
function registerInvoicesCommands(parent) {
|
|
42903
43384
|
const resource = parent.command("invoices").description("Manage invoices");
|
|
42904
|
-
resource.command("list").description(`List invoices with filters for type, status, customer_id, customer_external_id, subscription_id, invoicing_entity_id, invoice_number, period dates, emission_date, due_date, and updated_at. Sortable by created_at or emitted_at. By default, open invoices are excluded. Paginated with limit/cursor.`).option("--limit <number>", `Maximum number of items to return (1-100).`).option("--cursor <value>", `Opaque cursor returned in the previous response's \`next_cursor\`. Omit to fetch the first page.`).option("--include-total <value>", `Set to \`true\` to include \`total\` in the response.`).option("--order <value>", `Sort direction.`).option("--sort <value>", `Field used to sort the results.`).option("--type <value>", `type`).option("--type.in <value>", `type__in`).option("--status <value>", `status`).option("--status.in <value>", `status__in`).option("--customer-id <value>", `customer_id`).option("--customer-id.not <value>", `customer_id__not`).option("--customer-id.
|
|
43385
|
+
resource.command("list").description(`List invoices with filters for type, status, customer_id, customer_external_id, subscription_id, invoicing_entity_id, invoice_number, period dates, emission_date, due_date, and updated_at. Sortable by created_at or emitted_at. By default, open invoices are excluded. Paginated with limit/cursor.`).option("--limit <number>", `Maximum number of items to return (1-100).`).option("--cursor <value>", `Opaque cursor returned in the previous response's \`next_cursor\`. Omit to fetch the first page.`).option("--include-total <value>", `Set to \`true\` to include \`total\` in the response.`).option("--order <value>", `Sort direction.`).option("--sort <value>", `Field used to sort the results.`).option("--type <value>", `type`).option("--type.in <value>", `type__in`).option("--status <value>", `status`).option("--status.in <value>", `status__in`).option("--customer-id <value>", `customer_id`).option("--customer-id.not <value>", `customer_id__not`).option("--customer-id.equals <value>", `customer_id__equals`).option("--customer-id.contains <value>", `customer_id__contains`).option("--customer-id.starts-with <value>", `customer_id__startsWith`).option("--customer-id.end-with <value>", `customer_id__endWith`).option("--customer-external-id <value>", `customer_external_id`).option("--subscription-id <value>", `subscription_id`).option("--subscription-id.not <value>", `subscription_id__not`).option("--subscription-id.equals <value>", `subscription_id__equals`).option("--subscription-id.contains <value>", `subscription_id__contains`).option("--subscription-id.starts-with <value>", `subscription_id__startsWith`).option("--subscription-id.end-with <value>", `subscription_id__endWith`).option("--subscription-id.is-null <value>", `subscription_id__isNull`).option("--subscription-id.is-not-null <value>", `subscription_id__isNotNull`).option("--invoicing-entity-id <value>", `invoicing_entity_id`).option("--invoicing-entity-id.not <value>", `invoicing_entity_id__not`).option("--invoicing-entity-id.equals <value>", `invoicing_entity_id__equals`).option("--invoicing-entity-id.contains <value>", `invoicing_entity_id__contains`).option("--invoicing-entity-id.starts-with <value>", `invoicing_entity_id__startsWith`).option("--invoicing-entity-id.end-with <value>", `invoicing_entity_id__endWith`).option("--invoice-number <value>", `invoice_number`).option("--invoice-number.not <value>", `invoice_number__not`).option("--invoice-number.equals <value>", `invoice_number__equals`).option("--invoice-number.contains <value>", `invoice_number__contains`).option("--invoice-number.starts-with <value>", `invoice_number__startsWith`).option("--invoice-number.end-with <value>", `invoice_number__endWith`).option("--original-invoice-id <value>", `original_invoice_id`).option("--original-invoice-id.not <value>", `original_invoice_id__not`).option("--original-invoice-id.equals <value>", `original_invoice_id__equals`).option("--original-invoice-id.contains <value>", `original_invoice_id__contains`).option("--original-invoice-id.starts-with <value>", `original_invoice_id__startsWith`).option("--original-invoice-id.end-with <value>", `original_invoice_id__endWith`).option("--original-invoice-id.is-null <value>", `original_invoice_id__isNull`).option("--original-invoice-id.is-not-null <value>", `original_invoice_id__isNotNull`).option("--original-invoice-number <value>", `original_invoice_number`).option("--original-invoice-number.not <value>", `original_invoice_number__not`).option("--original-invoice-number.equals <value>", `original_invoice_number__equals`).option("--original-invoice-number.contains <value>", `original_invoice_number__contains`).option("--original-invoice-number.starts-with <value>", `original_invoice_number__startsWith`).option("--original-invoice-number.end-with <value>", `original_invoice_number__endWith`).option("--original-invoice-number.is-null <value>", `original_invoice_number__isNull`).option("--original-invoice-number.is-not-null <value>", `original_invoice_number__isNotNull`).option("--line-item-id <value>", `line_item_id`).option("--period-start <value>", `period_start`).option("--period-start.not <value>", `period_start__not`).option("--period-start.equals <value>", `period_start__equals`).option("--period-start.lt <value>", `period_start__lt`).option("--period-start.lte <value>", `period_start__lte`).option("--period-start.gt <value>", `period_start__gt`).option("--period-start.gte <value>", `period_start__gte`).option("--period-start.is-null <value>", `period_start__isNull`).option("--period-start.is-not-null <value>", `period_start__isNotNull`).option("--period-end <value>", `period_end`).option("--period-end.not <value>", `period_end__not`).option("--period-end.equals <value>", `period_end__equals`).option("--period-end.lt <value>", `period_end__lt`).option("--period-end.lte <value>", `period_end__lte`).option("--period-end.gt <value>", `period_end__gt`).option("--period-end.gte <value>", `period_end__gte`).option("--period-end.is-null <value>", `period_end__isNull`).option("--period-end.is-not-null <value>", `period_end__isNotNull`).option("--issued-at <value>", `issued_at`).option("--issued-at.not <value>", `issued_at__not`).option("--issued-at.equals <value>", `issued_at__equals`).option("--issued-at.lt <value>", `issued_at__lt`).option("--issued-at.lte <value>", `issued_at__lte`).option("--issued-at.gt <value>", `issued_at__gt`).option("--issued-at.gte <value>", `issued_at__gte`).option("--due-at <value>", `due_at`).option("--due-at.not <value>", `due_at__not`).option("--due-at.equals <value>", `due_at__equals`).option("--due-at.lt <value>", `due_at__lt`).option("--due-at.lte <value>", `due_at__lte`).option("--due-at.gt <value>", `due_at__gt`).option("--due-at.gte <value>", `due_at__gte`).option("--updated-at <value>", `updated_at`).option("--updated-at.not <value>", `updated_at__not`).option("--updated-at.equals <value>", `updated_at__equals`).option("--updated-at.lt <value>", `updated_at__lt`).option("--updated-at.lte <value>", `updated_at__lte`).option("--updated-at.gt <value>", `updated_at__gt`).option("--updated-at.gte <value>", `updated_at__gte`).addHelpText("after", `
|
|
42905
43386
|
Examples:
|
|
42906
43387
|
hyperline invoices list
|
|
42907
43388
|
hyperline invoices list --limit <limit> --cursor <cursor>`).action(async (opts) => {
|
|
@@ -42931,10 +43412,6 @@ Examples:
|
|
|
42931
43412
|
args.customer_id = opts.customerId;
|
|
42932
43413
|
if (opts["customerId.not"] !== void 0)
|
|
42933
43414
|
args.customer_id__not = opts["customerId.not"];
|
|
42934
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
42935
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
42936
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
42937
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
42938
43415
|
if (opts["customerId.equals"] !== void 0)
|
|
42939
43416
|
args.customer_id__equals = opts["customerId.equals"];
|
|
42940
43417
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -42949,10 +43426,6 @@ Examples:
|
|
|
42949
43426
|
args.subscription_id = opts.subscriptionId;
|
|
42950
43427
|
if (opts["subscriptionId.not"] !== void 0)
|
|
42951
43428
|
args.subscription_id__not = opts["subscriptionId.not"];
|
|
42952
|
-
if (opts["subscriptionId.isNull"] !== void 0)
|
|
42953
|
-
args.subscription_id__isNull = opts["subscriptionId.isNull"];
|
|
42954
|
-
if (opts["subscriptionId.isNotNull"] !== void 0)
|
|
42955
|
-
args.subscription_id__isNotNull = opts["subscriptionId.isNotNull"];
|
|
42956
43429
|
if (opts["subscriptionId.equals"] !== void 0)
|
|
42957
43430
|
args.subscription_id__equals = opts["subscriptionId.equals"];
|
|
42958
43431
|
if (opts["subscriptionId.contains"] !== void 0)
|
|
@@ -42961,14 +43434,14 @@ Examples:
|
|
|
42961
43434
|
args.subscription_id__startsWith = opts["subscriptionId.startsWith"];
|
|
42962
43435
|
if (opts["subscriptionId.endWith"] !== void 0)
|
|
42963
43436
|
args.subscription_id__endWith = opts["subscriptionId.endWith"];
|
|
43437
|
+
if (opts["subscriptionId.isNull"] !== void 0)
|
|
43438
|
+
args.subscription_id__isNull = opts["subscriptionId.isNull"];
|
|
43439
|
+
if (opts["subscriptionId.isNotNull"] !== void 0)
|
|
43440
|
+
args.subscription_id__isNotNull = opts["subscriptionId.isNotNull"];
|
|
42964
43441
|
if (opts.invoicingEntityId !== void 0)
|
|
42965
43442
|
args.invoicing_entity_id = opts.invoicingEntityId;
|
|
42966
43443
|
if (opts["invoicingEntityId.not"] !== void 0)
|
|
42967
43444
|
args.invoicing_entity_id__not = opts["invoicingEntityId.not"];
|
|
42968
|
-
if (opts["invoicingEntityId.isNull"] !== void 0)
|
|
42969
|
-
args.invoicing_entity_id__isNull = opts["invoicingEntityId.isNull"];
|
|
42970
|
-
if (opts["invoicingEntityId.isNotNull"] !== void 0)
|
|
42971
|
-
args.invoicing_entity_id__isNotNull = opts["invoicingEntityId.isNotNull"];
|
|
42972
43445
|
if (opts["invoicingEntityId.equals"] !== void 0)
|
|
42973
43446
|
args.invoicing_entity_id__equals = opts["invoicingEntityId.equals"];
|
|
42974
43447
|
if (opts["invoicingEntityId.contains"] !== void 0)
|
|
@@ -42981,10 +43454,6 @@ Examples:
|
|
|
42981
43454
|
args.invoice_number = opts.invoiceNumber;
|
|
42982
43455
|
if (opts["invoiceNumber.not"] !== void 0)
|
|
42983
43456
|
args.invoice_number__not = opts["invoiceNumber.not"];
|
|
42984
|
-
if (opts["invoiceNumber.isNull"] !== void 0)
|
|
42985
|
-
args.invoice_number__isNull = opts["invoiceNumber.isNull"];
|
|
42986
|
-
if (opts["invoiceNumber.isNotNull"] !== void 0)
|
|
42987
|
-
args.invoice_number__isNotNull = opts["invoiceNumber.isNotNull"];
|
|
42988
43457
|
if (opts["invoiceNumber.equals"] !== void 0)
|
|
42989
43458
|
args.invoice_number__equals = opts["invoiceNumber.equals"];
|
|
42990
43459
|
if (opts["invoiceNumber.contains"] !== void 0)
|
|
@@ -42997,10 +43466,6 @@ Examples:
|
|
|
42997
43466
|
args.original_invoice_id = opts.originalInvoiceId;
|
|
42998
43467
|
if (opts["originalInvoiceId.not"] !== void 0)
|
|
42999
43468
|
args.original_invoice_id__not = opts["originalInvoiceId.not"];
|
|
43000
|
-
if (opts["originalInvoiceId.isNull"] !== void 0)
|
|
43001
|
-
args.original_invoice_id__isNull = opts["originalInvoiceId.isNull"];
|
|
43002
|
-
if (opts["originalInvoiceId.isNotNull"] !== void 0)
|
|
43003
|
-
args.original_invoice_id__isNotNull = opts["originalInvoiceId.isNotNull"];
|
|
43004
43469
|
if (opts["originalInvoiceId.equals"] !== void 0)
|
|
43005
43470
|
args.original_invoice_id__equals = opts["originalInvoiceId.equals"];
|
|
43006
43471
|
if (opts["originalInvoiceId.contains"] !== void 0)
|
|
@@ -43009,14 +43474,14 @@ Examples:
|
|
|
43009
43474
|
args.original_invoice_id__startsWith = opts["originalInvoiceId.startsWith"];
|
|
43010
43475
|
if (opts["originalInvoiceId.endWith"] !== void 0)
|
|
43011
43476
|
args.original_invoice_id__endWith = opts["originalInvoiceId.endWith"];
|
|
43477
|
+
if (opts["originalInvoiceId.isNull"] !== void 0)
|
|
43478
|
+
args.original_invoice_id__isNull = opts["originalInvoiceId.isNull"];
|
|
43479
|
+
if (opts["originalInvoiceId.isNotNull"] !== void 0)
|
|
43480
|
+
args.original_invoice_id__isNotNull = opts["originalInvoiceId.isNotNull"];
|
|
43012
43481
|
if (opts.originalInvoiceNumber !== void 0)
|
|
43013
43482
|
args.original_invoice_number = opts.originalInvoiceNumber;
|
|
43014
43483
|
if (opts["originalInvoiceNumber.not"] !== void 0)
|
|
43015
43484
|
args.original_invoice_number__not = opts["originalInvoiceNumber.not"];
|
|
43016
|
-
if (opts["originalInvoiceNumber.isNull"] !== void 0)
|
|
43017
|
-
args.original_invoice_number__isNull = opts["originalInvoiceNumber.isNull"];
|
|
43018
|
-
if (opts["originalInvoiceNumber.isNotNull"] !== void 0)
|
|
43019
|
-
args.original_invoice_number__isNotNull = opts["originalInvoiceNumber.isNotNull"];
|
|
43020
43485
|
if (opts["originalInvoiceNumber.equals"] !== void 0)
|
|
43021
43486
|
args.original_invoice_number__equals = opts["originalInvoiceNumber.equals"];
|
|
43022
43487
|
if (opts["originalInvoiceNumber.contains"] !== void 0)
|
|
@@ -43025,16 +43490,16 @@ Examples:
|
|
|
43025
43490
|
args.original_invoice_number__startsWith = opts["originalInvoiceNumber.startsWith"];
|
|
43026
43491
|
if (opts["originalInvoiceNumber.endWith"] !== void 0)
|
|
43027
43492
|
args.original_invoice_number__endWith = opts["originalInvoiceNumber.endWith"];
|
|
43493
|
+
if (opts["originalInvoiceNumber.isNull"] !== void 0)
|
|
43494
|
+
args.original_invoice_number__isNull = opts["originalInvoiceNumber.isNull"];
|
|
43495
|
+
if (opts["originalInvoiceNumber.isNotNull"] !== void 0)
|
|
43496
|
+
args.original_invoice_number__isNotNull = opts["originalInvoiceNumber.isNotNull"];
|
|
43028
43497
|
if (opts.lineItemId !== void 0)
|
|
43029
43498
|
args.line_item_id = opts.lineItemId;
|
|
43030
43499
|
if (opts.periodStart !== void 0)
|
|
43031
43500
|
args.period_start = opts.periodStart;
|
|
43032
43501
|
if (opts["periodStart.not"] !== void 0)
|
|
43033
43502
|
args.period_start__not = opts["periodStart.not"];
|
|
43034
|
-
if (opts["periodStart.isNull"] !== void 0)
|
|
43035
|
-
args.period_start__isNull = opts["periodStart.isNull"];
|
|
43036
|
-
if (opts["periodStart.isNotNull"] !== void 0)
|
|
43037
|
-
args.period_start__isNotNull = opts["periodStart.isNotNull"];
|
|
43038
43503
|
if (opts["periodStart.equals"] !== void 0)
|
|
43039
43504
|
args.period_start__equals = opts["periodStart.equals"];
|
|
43040
43505
|
if (opts["periodStart.lt"] !== void 0)
|
|
@@ -43045,14 +43510,14 @@ Examples:
|
|
|
43045
43510
|
args.period_start__gt = opts["periodStart.gt"];
|
|
43046
43511
|
if (opts["periodStart.gte"] !== void 0)
|
|
43047
43512
|
args.period_start__gte = opts["periodStart.gte"];
|
|
43513
|
+
if (opts["periodStart.isNull"] !== void 0)
|
|
43514
|
+
args.period_start__isNull = opts["periodStart.isNull"];
|
|
43515
|
+
if (opts["periodStart.isNotNull"] !== void 0)
|
|
43516
|
+
args.period_start__isNotNull = opts["periodStart.isNotNull"];
|
|
43048
43517
|
if (opts.periodEnd !== void 0)
|
|
43049
43518
|
args.period_end = opts.periodEnd;
|
|
43050
43519
|
if (opts["periodEnd.not"] !== void 0)
|
|
43051
43520
|
args.period_end__not = opts["periodEnd.not"];
|
|
43052
|
-
if (opts["periodEnd.isNull"] !== void 0)
|
|
43053
|
-
args.period_end__isNull = opts["periodEnd.isNull"];
|
|
43054
|
-
if (opts["periodEnd.isNotNull"] !== void 0)
|
|
43055
|
-
args.period_end__isNotNull = opts["periodEnd.isNotNull"];
|
|
43056
43521
|
if (opts["periodEnd.equals"] !== void 0)
|
|
43057
43522
|
args.period_end__equals = opts["periodEnd.equals"];
|
|
43058
43523
|
if (opts["periodEnd.lt"] !== void 0)
|
|
@@ -43063,14 +43528,14 @@ Examples:
|
|
|
43063
43528
|
args.period_end__gt = opts["periodEnd.gt"];
|
|
43064
43529
|
if (opts["periodEnd.gte"] !== void 0)
|
|
43065
43530
|
args.period_end__gte = opts["periodEnd.gte"];
|
|
43531
|
+
if (opts["periodEnd.isNull"] !== void 0)
|
|
43532
|
+
args.period_end__isNull = opts["periodEnd.isNull"];
|
|
43533
|
+
if (opts["periodEnd.isNotNull"] !== void 0)
|
|
43534
|
+
args.period_end__isNotNull = opts["periodEnd.isNotNull"];
|
|
43066
43535
|
if (opts.issuedAt !== void 0)
|
|
43067
43536
|
args.issued_at = opts.issuedAt;
|
|
43068
43537
|
if (opts["issuedAt.not"] !== void 0)
|
|
43069
43538
|
args.issued_at__not = opts["issuedAt.not"];
|
|
43070
|
-
if (opts["issuedAt.isNull"] !== void 0)
|
|
43071
|
-
args.issued_at__isNull = opts["issuedAt.isNull"];
|
|
43072
|
-
if (opts["issuedAt.isNotNull"] !== void 0)
|
|
43073
|
-
args.issued_at__isNotNull = opts["issuedAt.isNotNull"];
|
|
43074
43539
|
if (opts["issuedAt.equals"] !== void 0)
|
|
43075
43540
|
args.issued_at__equals = opts["issuedAt.equals"];
|
|
43076
43541
|
if (opts["issuedAt.lt"] !== void 0)
|
|
@@ -43085,10 +43550,6 @@ Examples:
|
|
|
43085
43550
|
args.due_at = opts.dueAt;
|
|
43086
43551
|
if (opts["dueAt.not"] !== void 0)
|
|
43087
43552
|
args.due_at__not = opts["dueAt.not"];
|
|
43088
|
-
if (opts["dueAt.isNull"] !== void 0)
|
|
43089
|
-
args.due_at__isNull = opts["dueAt.isNull"];
|
|
43090
|
-
if (opts["dueAt.isNotNull"] !== void 0)
|
|
43091
|
-
args.due_at__isNotNull = opts["dueAt.isNotNull"];
|
|
43092
43553
|
if (opts["dueAt.equals"] !== void 0)
|
|
43093
43554
|
args.due_at__equals = opts["dueAt.equals"];
|
|
43094
43555
|
if (opts["dueAt.lt"] !== void 0)
|
|
@@ -43103,10 +43564,6 @@ Examples:
|
|
|
43103
43564
|
args.updated_at = opts.updatedAt;
|
|
43104
43565
|
if (opts["updatedAt.not"] !== void 0)
|
|
43105
43566
|
args.updated_at__not = opts["updatedAt.not"];
|
|
43106
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
43107
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
43108
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
43109
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
43110
43567
|
if (opts["updatedAt.equals"] !== void 0)
|
|
43111
43568
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
43112
43569
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -43135,8 +43592,6 @@ Examples:
|
|
|
43135
43592
|
"status__in",
|
|
43136
43593
|
"customer_id",
|
|
43137
43594
|
"customer_id__not",
|
|
43138
|
-
"customer_id__isNull",
|
|
43139
|
-
"customer_id__isNotNull",
|
|
43140
43595
|
"customer_id__equals",
|
|
43141
43596
|
"customer_id__contains",
|
|
43142
43597
|
"customer_id__startsWith",
|
|
@@ -43144,67 +43599,61 @@ Examples:
|
|
|
43144
43599
|
"customer_external_id",
|
|
43145
43600
|
"subscription_id",
|
|
43146
43601
|
"subscription_id__not",
|
|
43147
|
-
"subscription_id__isNull",
|
|
43148
|
-
"subscription_id__isNotNull",
|
|
43149
43602
|
"subscription_id__equals",
|
|
43150
43603
|
"subscription_id__contains",
|
|
43151
43604
|
"subscription_id__startsWith",
|
|
43152
43605
|
"subscription_id__endWith",
|
|
43606
|
+
"subscription_id__isNull",
|
|
43607
|
+
"subscription_id__isNotNull",
|
|
43153
43608
|
"invoicing_entity_id",
|
|
43154
43609
|
"invoicing_entity_id__not",
|
|
43155
|
-
"invoicing_entity_id__isNull",
|
|
43156
|
-
"invoicing_entity_id__isNotNull",
|
|
43157
43610
|
"invoicing_entity_id__equals",
|
|
43158
43611
|
"invoicing_entity_id__contains",
|
|
43159
43612
|
"invoicing_entity_id__startsWith",
|
|
43160
43613
|
"invoicing_entity_id__endWith",
|
|
43161
43614
|
"invoice_number",
|
|
43162
43615
|
"invoice_number__not",
|
|
43163
|
-
"invoice_number__isNull",
|
|
43164
|
-
"invoice_number__isNotNull",
|
|
43165
43616
|
"invoice_number__equals",
|
|
43166
43617
|
"invoice_number__contains",
|
|
43167
43618
|
"invoice_number__startsWith",
|
|
43168
43619
|
"invoice_number__endWith",
|
|
43169
43620
|
"original_invoice_id",
|
|
43170
43621
|
"original_invoice_id__not",
|
|
43171
|
-
"original_invoice_id__isNull",
|
|
43172
|
-
"original_invoice_id__isNotNull",
|
|
43173
43622
|
"original_invoice_id__equals",
|
|
43174
43623
|
"original_invoice_id__contains",
|
|
43175
43624
|
"original_invoice_id__startsWith",
|
|
43176
43625
|
"original_invoice_id__endWith",
|
|
43626
|
+
"original_invoice_id__isNull",
|
|
43627
|
+
"original_invoice_id__isNotNull",
|
|
43177
43628
|
"original_invoice_number",
|
|
43178
43629
|
"original_invoice_number__not",
|
|
43179
|
-
"original_invoice_number__isNull",
|
|
43180
|
-
"original_invoice_number__isNotNull",
|
|
43181
43630
|
"original_invoice_number__equals",
|
|
43182
43631
|
"original_invoice_number__contains",
|
|
43183
43632
|
"original_invoice_number__startsWith",
|
|
43184
43633
|
"original_invoice_number__endWith",
|
|
43634
|
+
"original_invoice_number__isNull",
|
|
43635
|
+
"original_invoice_number__isNotNull",
|
|
43185
43636
|
"line_item_id",
|
|
43186
43637
|
"period_start",
|
|
43187
43638
|
"period_start__not",
|
|
43188
|
-
"period_start__isNull",
|
|
43189
|
-
"period_start__isNotNull",
|
|
43190
43639
|
"period_start__equals",
|
|
43191
43640
|
"period_start__lt",
|
|
43192
43641
|
"period_start__lte",
|
|
43193
43642
|
"period_start__gt",
|
|
43194
43643
|
"period_start__gte",
|
|
43644
|
+
"period_start__isNull",
|
|
43645
|
+
"period_start__isNotNull",
|
|
43195
43646
|
"period_end",
|
|
43196
43647
|
"period_end__not",
|
|
43197
|
-
"period_end__isNull",
|
|
43198
|
-
"period_end__isNotNull",
|
|
43199
43648
|
"period_end__equals",
|
|
43200
43649
|
"period_end__lt",
|
|
43201
43650
|
"period_end__lte",
|
|
43202
43651
|
"period_end__gt",
|
|
43203
43652
|
"period_end__gte",
|
|
43653
|
+
"period_end__isNull",
|
|
43654
|
+
"period_end__isNotNull",
|
|
43204
43655
|
"issued_at",
|
|
43205
43656
|
"issued_at__not",
|
|
43206
|
-
"issued_at__isNull",
|
|
43207
|
-
"issued_at__isNotNull",
|
|
43208
43657
|
"issued_at__equals",
|
|
43209
43658
|
"issued_at__lt",
|
|
43210
43659
|
"issued_at__lte",
|
|
@@ -43212,8 +43661,6 @@ Examples:
|
|
|
43212
43661
|
"issued_at__gte",
|
|
43213
43662
|
"due_at",
|
|
43214
43663
|
"due_at__not",
|
|
43215
|
-
"due_at__isNull",
|
|
43216
|
-
"due_at__isNotNull",
|
|
43217
43664
|
"due_at__equals",
|
|
43218
43665
|
"due_at__lt",
|
|
43219
43666
|
"due_at__lte",
|
|
@@ -43221,8 +43668,6 @@ Examples:
|
|
|
43221
43668
|
"due_at__gte",
|
|
43222
43669
|
"updated_at",
|
|
43223
43670
|
"updated_at__not",
|
|
43224
|
-
"updated_at__isNull",
|
|
43225
|
-
"updated_at__isNotNull",
|
|
43226
43671
|
"updated_at__equals",
|
|
43227
43672
|
"updated_at__lt",
|
|
43228
43673
|
"updated_at__lte",
|
|
@@ -43919,79 +44364,10 @@ Examples:
|
|
|
43919
44364
|
queryParamKeys: []
|
|
43920
44365
|
});
|
|
43921
44366
|
});
|
|
43922
|
-
resource.command("delete-invoicing-entity").description(`Soft-delete an invoicing entity by ID. Existing invoices linked to it are preserved.`).requiredOption("--id <value>", `id parameter`).option("--yes", "Skip confirmation").addHelpText("after", `
|
|
43923
|
-
Examples:
|
|
43924
|
-
hyperline invoicing-entities delete-invoicing-entity --id <id>
|
|
43925
|
-
hyperline invoicing-entities delete-invoicing-entity --id <id> --output json`).action(async (opts) => {
|
|
43926
|
-
const ctx = resource.parent?.opts()._ctx;
|
|
43927
|
-
if (!ctx) {
|
|
43928
|
-
process.stderr.write("Error: Not authenticated\n");
|
|
43929
|
-
process.exit(1);
|
|
43930
|
-
}
|
|
43931
|
-
const args = {};
|
|
43932
|
-
if (opts.id !== void 0)
|
|
43933
|
-
args.id = opts.id;
|
|
43934
|
-
if (!opts.yes) {
|
|
43935
|
-
const confirmed = await confirmPrompt("Are you sure? Pass --yes to skip. [y/N] ");
|
|
43936
|
-
if (!confirmed) {
|
|
43937
|
-
process.stdout.write("Aborted.\n");
|
|
43938
|
-
return;
|
|
43939
|
-
}
|
|
43940
|
-
}
|
|
43941
|
-
await ctx.execute({
|
|
43942
|
-
method: "DELETE",
|
|
43943
|
-
path: "/v1/invoicing-entities/{id}",
|
|
43944
|
-
args,
|
|
43945
|
-
queryParamKeys: []
|
|
43946
|
-
});
|
|
43947
|
-
});
|
|
43948
|
-
}
|
|
43949
|
-
|
|
43950
|
-
// build/commands/generated/monitoring.js
|
|
43951
|
-
function registerMonitoringCommands(parent) {
|
|
43952
|
-
const resource = parent.command("monitoring").description("Manage monitoring");
|
|
43953
|
-
resource.command("list-monitoring-analyses").description(`List customer health analyses from the monitoring agent, newest first: health score (0-100), tier, summary, per-dimension scores, risk factors and positive signals. Filter by customer (Hyperline or external ID) with limit=1 to get a customer's current health score. Only completed analyses unless status is set.`).option("--limit <number>", `Maximum number of items to return (1-100).`).option("--cursor <value>", `Opaque cursor returned in the previous response's \`next_cursor\`. Omit to fetch the first page.`).option("--include-total <value>", `Set to \`true\` to include \`total\` in the response.`).option("--customer-id <value>", `Return only analyses of this customer. Accepts the Hyperline ID or your own external ID.`).option("--status <value>", `Return only analyses with this status. Defaults to \`completed\`, the analyses that carry a score.`).option("--created-at.gte <value>", `Return only analyses created at or after this date.`).option("--created-at.lte <value>", `Return only analyses created at or before this date.`).addHelpText("after", `
|
|
43954
|
-
Examples:
|
|
43955
|
-
hyperline monitoring list-monitoring-analyses
|
|
43956
|
-
hyperline monitoring list-monitoring-analyses --limit <limit> --cursor <cursor>`).action(async (opts) => {
|
|
43957
|
-
const ctx = resource.parent?.opts()._ctx;
|
|
43958
|
-
if (!ctx) {
|
|
43959
|
-
process.stderr.write("Error: Not authenticated\n");
|
|
43960
|
-
process.exit(1);
|
|
43961
|
-
}
|
|
43962
|
-
const args = {};
|
|
43963
|
-
if (opts.cursor !== void 0)
|
|
43964
|
-
args.cursor = opts.cursor;
|
|
43965
|
-
if (opts.includeTotal !== void 0)
|
|
43966
|
-
args.include_total = opts.includeTotal;
|
|
43967
|
-
if (opts.customerId !== void 0)
|
|
43968
|
-
args.customer_id = opts.customerId;
|
|
43969
|
-
if (opts.status !== void 0)
|
|
43970
|
-
args.status = opts.status;
|
|
43971
|
-
if (opts["createdAt.gte"] !== void 0)
|
|
43972
|
-
args.created_at__gte = opts["createdAt.gte"];
|
|
43973
|
-
if (opts["createdAt.lte"] !== void 0)
|
|
43974
|
-
args.created_at__lte = opts["createdAt.lte"];
|
|
43975
|
-
if (opts.limit !== void 0)
|
|
43976
|
-
args.limit = Number(opts.limit);
|
|
43977
|
-
await ctx.execute({
|
|
43978
|
-
method: "GET",
|
|
43979
|
-
path: "/v1/agents/monitoring/analyses",
|
|
43980
|
-
args,
|
|
43981
|
-
queryParamKeys: [
|
|
43982
|
-
"limit",
|
|
43983
|
-
"cursor",
|
|
43984
|
-
"include_total",
|
|
43985
|
-
"customer_id",
|
|
43986
|
-
"status",
|
|
43987
|
-
"created_at__gte",
|
|
43988
|
-
"created_at__lte"
|
|
43989
|
-
]
|
|
43990
|
-
});
|
|
43991
|
-
});
|
|
43992
|
-
resource.command("get-monitoring-analysis").description(`Get one customer health analysis by ID: health score (0-100), tier, summary, per-dimension scores, risk factors and positive signals.`).requiredOption("--id <value>", `id parameter`).addHelpText("after", `
|
|
44367
|
+
resource.command("delete-invoicing-entity").description(`Soft-delete an invoicing entity by ID. Existing invoices linked to it are preserved.`).requiredOption("--id <value>", `id parameter`).option("--yes", "Skip confirmation").addHelpText("after", `
|
|
43993
44368
|
Examples:
|
|
43994
|
-
hyperline
|
|
44369
|
+
hyperline invoicing-entities delete-invoicing-entity --id <id>
|
|
44370
|
+
hyperline invoicing-entities delete-invoicing-entity --id <id> --output json`).action(async (opts) => {
|
|
43995
44371
|
const ctx = resource.parent?.opts()._ctx;
|
|
43996
44372
|
if (!ctx) {
|
|
43997
44373
|
process.stderr.write("Error: Not authenticated\n");
|
|
@@ -44000,9 +44376,16 @@ Examples:
|
|
|
44000
44376
|
const args = {};
|
|
44001
44377
|
if (opts.id !== void 0)
|
|
44002
44378
|
args.id = opts.id;
|
|
44379
|
+
if (!opts.yes) {
|
|
44380
|
+
const confirmed = await confirmPrompt("Are you sure? Pass --yes to skip. [y/N] ");
|
|
44381
|
+
if (!confirmed) {
|
|
44382
|
+
process.stdout.write("Aborted.\n");
|
|
44383
|
+
return;
|
|
44384
|
+
}
|
|
44385
|
+
}
|
|
44003
44386
|
await ctx.execute({
|
|
44004
|
-
method: "
|
|
44005
|
-
path: "/v1/
|
|
44387
|
+
method: "DELETE",
|
|
44388
|
+
path: "/v1/invoicing-entities/{id}",
|
|
44006
44389
|
args,
|
|
44007
44390
|
queryParamKeys: []
|
|
44008
44391
|
});
|
|
@@ -44012,7 +44395,7 @@ Examples:
|
|
|
44012
44395
|
// build/commands/generated/organisations.js
|
|
44013
44396
|
function registerOrganisationsCommands(parent) {
|
|
44014
44397
|
const resource = parent.command("organisations").description("Manage organisations");
|
|
44015
|
-
resource.command("list").description(`Retrieve organisations with their billing details and child customer IDs.`).option("--limit <number>", `Maximum number of items to return (1-100).`).option("--cursor <value>", `Opaque cursor returned in the previous response's \`next_cursor\`. Omit to fetch the first page.`).option("--include-total <value>", `Set to \`true\` to include \`total\` in the response.`).option("--order <value>", `Sort direction.`).option("--sort <value>", `Field used to sort the results.`).option("--created-at <value>", `created_at`).option("--created-at.not <value>", `created_at__not`).option("--created-at.
|
|
44398
|
+
resource.command("list").description(`Retrieve organisations with their billing details and child customer IDs.`).option("--limit <number>", `Maximum number of items to return (1-100).`).option("--cursor <value>", `Opaque cursor returned in the previous response's \`next_cursor\`. Omit to fetch the first page.`).option("--include-total <value>", `Set to \`true\` to include \`total\` in the response.`).option("--order <value>", `Sort direction.`).option("--sort <value>", `Field used to sort the results.`).option("--created-at <value>", `created_at`).option("--created-at.not <value>", `created_at__not`).option("--created-at.equals <value>", `created_at__equals`).option("--created-at.lt <value>", `created_at__lt`).option("--created-at.lte <value>", `created_at__lte`).option("--created-at.gt <value>", `created_at__gt`).option("--created-at.gte <value>", `created_at__gte`).option("--updated-at <value>", `updated_at`).option("--updated-at.not <value>", `updated_at__not`).option("--updated-at.equals <value>", `updated_at__equals`).option("--updated-at.lt <value>", `updated_at__lt`).option("--updated-at.lte <value>", `updated_at__lte`).option("--updated-at.gt <value>", `updated_at__gt`).option("--updated-at.gte <value>", `updated_at__gte`).addHelpText("after", `
|
|
44016
44399
|
Examples:
|
|
44017
44400
|
hyperline organisations list
|
|
44018
44401
|
hyperline organisations list --limit <limit> --cursor <cursor>`).action(async (opts) => {
|
|
@@ -44034,10 +44417,6 @@ Examples:
|
|
|
44034
44417
|
args.created_at = opts.createdAt;
|
|
44035
44418
|
if (opts["createdAt.not"] !== void 0)
|
|
44036
44419
|
args.created_at__not = opts["createdAt.not"];
|
|
44037
|
-
if (opts["createdAt.isNull"] !== void 0)
|
|
44038
|
-
args.created_at__isNull = opts["createdAt.isNull"];
|
|
44039
|
-
if (opts["createdAt.isNotNull"] !== void 0)
|
|
44040
|
-
args.created_at__isNotNull = opts["createdAt.isNotNull"];
|
|
44041
44420
|
if (opts["createdAt.equals"] !== void 0)
|
|
44042
44421
|
args.created_at__equals = opts["createdAt.equals"];
|
|
44043
44422
|
if (opts["createdAt.lt"] !== void 0)
|
|
@@ -44052,10 +44431,6 @@ Examples:
|
|
|
44052
44431
|
args.updated_at = opts.updatedAt;
|
|
44053
44432
|
if (opts["updatedAt.not"] !== void 0)
|
|
44054
44433
|
args.updated_at__not = opts["updatedAt.not"];
|
|
44055
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
44056
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
44057
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
44058
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
44059
44434
|
if (opts["updatedAt.equals"] !== void 0)
|
|
44060
44435
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
44061
44436
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -44080,8 +44455,6 @@ Examples:
|
|
|
44080
44455
|
"sort",
|
|
44081
44456
|
"created_at",
|
|
44082
44457
|
"created_at__not",
|
|
44083
|
-
"created_at__isNull",
|
|
44084
|
-
"created_at__isNotNull",
|
|
44085
44458
|
"created_at__equals",
|
|
44086
44459
|
"created_at__lt",
|
|
44087
44460
|
"created_at__lte",
|
|
@@ -44089,8 +44462,6 @@ Examples:
|
|
|
44089
44462
|
"created_at__gte",
|
|
44090
44463
|
"updated_at",
|
|
44091
44464
|
"updated_at__not",
|
|
44092
|
-
"updated_at__isNull",
|
|
44093
|
-
"updated_at__isNotNull",
|
|
44094
44465
|
"updated_at__equals",
|
|
44095
44466
|
"updated_at__lt",
|
|
44096
44467
|
"updated_at__lte",
|
|
@@ -44204,7 +44575,7 @@ Examples:
|
|
|
44204
44575
|
// build/commands/generated/price-configurations.js
|
|
44205
44576
|
function registerPrice_ConfigurationsCommands(parent) {
|
|
44206
44577
|
const resource = parent.command("price-configurations").description("Manage price configurations");
|
|
44207
|
-
resource.command("list").description(`List price configurations with optional filters for product_id and price_book_id. Price configurations define how a product is priced (tiers, volume, graduated, etc.). Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--product-id <value>", `product_id`).option("--product-id.not <value>", `product_id__not`).option("--product-id.
|
|
44578
|
+
resource.command("list").description(`List price configurations with optional filters for product_id and price_book_id. Price configurations define how a product is priced (tiers, volume, graduated, etc.). Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--product-id <value>", `product_id`).option("--product-id.not <value>", `product_id__not`).option("--product-id.equals <value>", `product_id__equals`).option("--product-id.contains <value>", `product_id__contains`).option("--product-id.starts-with <value>", `product_id__startsWith`).option("--product-id.end-with <value>", `product_id__endWith`).option("--price-book-id <value>", `price_book_id`).option("--price-book-id.not <value>", `price_book_id__not`).option("--price-book-id.equals <value>", `price_book_id__equals`).option("--price-book-id.contains <value>", `price_book_id__contains`).option("--price-book-id.starts-with <value>", `price_book_id__startsWith`).option("--price-book-id.end-with <value>", `price_book_id__endWith`).option("--price-book-id.is-null <value>", `price_book_id__isNull`).option("--price-book-id.is-not-null <value>", `price_book_id__isNotNull`).addHelpText("after", `
|
|
44208
44579
|
Examples:
|
|
44209
44580
|
hyperline price-configurations list
|
|
44210
44581
|
hyperline price-configurations list --take <take> --product-id <product_id>`).action(async (opts) => {
|
|
@@ -44218,10 +44589,6 @@ Examples:
|
|
|
44218
44589
|
args.product_id = opts.productId;
|
|
44219
44590
|
if (opts["productId.not"] !== void 0)
|
|
44220
44591
|
args.product_id__not = opts["productId.not"];
|
|
44221
|
-
if (opts["productId.isNull"] !== void 0)
|
|
44222
|
-
args.product_id__isNull = opts["productId.isNull"];
|
|
44223
|
-
if (opts["productId.isNotNull"] !== void 0)
|
|
44224
|
-
args.product_id__isNotNull = opts["productId.isNotNull"];
|
|
44225
44592
|
if (opts["productId.equals"] !== void 0)
|
|
44226
44593
|
args.product_id__equals = opts["productId.equals"];
|
|
44227
44594
|
if (opts["productId.contains"] !== void 0)
|
|
@@ -44234,10 +44601,6 @@ Examples:
|
|
|
44234
44601
|
args.price_book_id = opts.priceBookId;
|
|
44235
44602
|
if (opts["priceBookId.not"] !== void 0)
|
|
44236
44603
|
args.price_book_id__not = opts["priceBookId.not"];
|
|
44237
|
-
if (opts["priceBookId.isNull"] !== void 0)
|
|
44238
|
-
args.price_book_id__isNull = opts["priceBookId.isNull"];
|
|
44239
|
-
if (opts["priceBookId.isNotNull"] !== void 0)
|
|
44240
|
-
args.price_book_id__isNotNull = opts["priceBookId.isNotNull"];
|
|
44241
44604
|
if (opts["priceBookId.equals"] !== void 0)
|
|
44242
44605
|
args.price_book_id__equals = opts["priceBookId.equals"];
|
|
44243
44606
|
if (opts["priceBookId.contains"] !== void 0)
|
|
@@ -44246,6 +44609,10 @@ Examples:
|
|
|
44246
44609
|
args.price_book_id__startsWith = opts["priceBookId.startsWith"];
|
|
44247
44610
|
if (opts["priceBookId.endWith"] !== void 0)
|
|
44248
44611
|
args.price_book_id__endWith = opts["priceBookId.endWith"];
|
|
44612
|
+
if (opts["priceBookId.isNull"] !== void 0)
|
|
44613
|
+
args.price_book_id__isNull = opts["priceBookId.isNull"];
|
|
44614
|
+
if (opts["priceBookId.isNotNull"] !== void 0)
|
|
44615
|
+
args.price_book_id__isNotNull = opts["priceBookId.isNotNull"];
|
|
44249
44616
|
if (opts.take !== void 0)
|
|
44250
44617
|
args.take = Number(opts.take);
|
|
44251
44618
|
if (opts.skip !== void 0)
|
|
@@ -44259,20 +44626,18 @@ Examples:
|
|
|
44259
44626
|
"skip",
|
|
44260
44627
|
"product_id",
|
|
44261
44628
|
"product_id__not",
|
|
44262
|
-
"product_id__isNull",
|
|
44263
|
-
"product_id__isNotNull",
|
|
44264
44629
|
"product_id__equals",
|
|
44265
44630
|
"product_id__contains",
|
|
44266
44631
|
"product_id__startsWith",
|
|
44267
44632
|
"product_id__endWith",
|
|
44268
44633
|
"price_book_id",
|
|
44269
44634
|
"price_book_id__not",
|
|
44270
|
-
"price_book_id__isNull",
|
|
44271
|
-
"price_book_id__isNotNull",
|
|
44272
44635
|
"price_book_id__equals",
|
|
44273
44636
|
"price_book_id__contains",
|
|
44274
44637
|
"price_book_id__startsWith",
|
|
44275
|
-
"price_book_id__endWith"
|
|
44638
|
+
"price_book_id__endWith",
|
|
44639
|
+
"price_book_id__isNull",
|
|
44640
|
+
"price_book_id__isNotNull"
|
|
44276
44641
|
]
|
|
44277
44642
|
});
|
|
44278
44643
|
});
|
|
@@ -44294,7 +44659,7 @@ Examples:
|
|
|
44294
44659
|
queryParamKeys: []
|
|
44295
44660
|
});
|
|
44296
44661
|
});
|
|
44297
|
-
resource.command("create").description(`Create a new price configuration on an existing product. Specify the product_id, pricing type (fee, volume, bulk, packaged, bps, bundle), currency, billing interval, and price tiers. Supports metering_filter for dynamic products.`).requiredOption("--currency <value>", `Currency code. See [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes).`).option("--countries <json>", `Countries this price configuration is eligible in. Omit or send \`null\` to make it eligible in every country. An empty array restricts it to customers that have no country set.`).option("--price-book-id <value>", `ID of the price book to which this price configuration belongs to. If null, the price configuration belongs to the default price book.`).requiredOption("--billing-interval <json>", `Billing interval on which the price configuration is eligible.`).option("--commitment-interval <json>", `Commitment interval on which the price configuration is eligible.`).requiredOption("--type <value>", `type`).requiredOption("--prices <json>", `Price tiers of the price configuration. If fixed amount, only one price is available.`).requiredOption("--product-id <value>", `ID of the product to add the price configuration to.`).option("--metering-filter <json>", `Filter to scope which billable events are eligible for this price configuration.`).option("--allow-on-portal", `allow_on_portal`).addHelpText("after", `
|
|
44662
|
+
resource.command("create").description(`Create a new price configuration on an existing product. Specify the product_id, pricing type (fee, volume, bulk, packaged, bps, bundle), currency, billing interval, and price tiers. Supports metering_filter for dynamic products.`).requiredOption("--currency <value>", `Currency code. See [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes).`).option("--countries <json>", `Countries this price configuration is eligible in. Omit or send \`null\` to make it eligible in every country. An empty array restricts it to customers that have no country set.`).option("--price-book-id <value>", `ID of the price book to which this price configuration belongs to. If null, the price configuration belongs to the default price book.`).requiredOption("--billing-interval <json>", `Billing interval on which the price configuration is eligible.`).option("--commitment-interval <json>", `Commitment interval on which the price configuration is eligible.`).requiredOption("--type <value>", `type`).requiredOption("--prices <json>", `Price tiers of the price configuration. If fixed amount, only one price is available.`).requiredOption("--product-id <value>", `ID of the product to add the price configuration to.`).option("--metering-filter <json>", `Filter to scope which billable events are eligible for this price configuration.`).option("--aggregator-filter-id <value>", `ID of an existing metering filter of the product's aggregator to attach to this price configuration, instead of creating a new one with \`metering_filter\`.`).option("--allow-on-portal", `allow_on_portal`).addHelpText("after", `
|
|
44298
44663
|
Examples:
|
|
44299
44664
|
hyperline price-configurations create --currency <currency> --billing-interval <billing_interval> --type <type> --prices <prices> --product-id <product_id>
|
|
44300
44665
|
hyperline price-configurations create --currency <currency> --billing-interval <billing_interval> --type <type> --prices <prices> --product-id <product_id> --countries <countries> --price-book-id <price_book_id>
|
|
@@ -44313,6 +44678,8 @@ Examples:
|
|
|
44313
44678
|
args.type = opts.type;
|
|
44314
44679
|
if (opts.productId !== void 0)
|
|
44315
44680
|
args.product_id = opts.productId;
|
|
44681
|
+
if (opts.aggregatorFilterId !== void 0)
|
|
44682
|
+
args.aggregator_filter_id = opts.aggregatorFilterId;
|
|
44316
44683
|
if (opts.allowOnPortal !== void 0)
|
|
44317
44684
|
args.allow_on_portal = true;
|
|
44318
44685
|
if (opts.countries !== void 0)
|
|
@@ -44396,7 +44763,7 @@ Examples:
|
|
|
44396
44763
|
// build/commands/generated/products.js
|
|
44397
44764
|
function registerProductsCommands(parent) {
|
|
44398
44765
|
const resource = parent.command("products").description("Manage products");
|
|
44399
|
-
resource.command("list").description(`List products with optional filters for id, status, name, description, type, and price_book_id. Products define what is being sold (flat fee, per-unit, usage-based, etc.). Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--id <value>", `id`).option("--id.not <value>", `id__not`).option("--id.
|
|
44766
|
+
resource.command("list").description(`List products with optional filters for id, status, name, description, type, and price_book_id. Products define what is being sold (flat fee, per-unit, usage-based, etc.). Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--id <value>", `id`).option("--id.not <value>", `id__not`).option("--id.equals <value>", `id__equals`).option("--id.contains <value>", `id__contains`).option("--id.starts-with <value>", `id__startsWith`).option("--id.end-with <value>", `id__endWith`).option("--status <value>", `status`).option("--status.in <value>", `status__in`).option("--name <value>", `name`).option("--name.not <value>", `name__not`).option("--name.equals <value>", `name__equals`).option("--name.contains <value>", `name__contains`).option("--name.starts-with <value>", `name__startsWith`).option("--name.end-with <value>", `name__endWith`).option("--description <value>", `description`).option("--description.not <value>", `description__not`).option("--description.equals <value>", `description__equals`).option("--description.contains <value>", `description__contains`).option("--description.starts-with <value>", `description__startsWith`).option("--description.end-with <value>", `description__endWith`).option("--description.is-null <value>", `description__isNull`).option("--description.is-not-null <value>", `description__isNotNull`).option("--type <value>", `type`).option("--type.not <value>", `type__not`).option("--type.equals <value>", `type__equals`).option("--type.contains <value>", `type__contains`).option("--type.starts-with <value>", `type__startsWith`).option("--type.end-with <value>", `type__endWith`).option("--price-book-id <value>", `price_book_id`).addHelpText("after", `
|
|
44400
44767
|
Examples:
|
|
44401
44768
|
hyperline products list
|
|
44402
44769
|
hyperline products list --take <take> --id <id>`).action(async (opts) => {
|
|
@@ -44410,10 +44777,6 @@ Examples:
|
|
|
44410
44777
|
args.id = opts.id;
|
|
44411
44778
|
if (opts["id.not"] !== void 0)
|
|
44412
44779
|
args.id__not = opts["id.not"];
|
|
44413
|
-
if (opts["id.isNull"] !== void 0)
|
|
44414
|
-
args.id__isNull = opts["id.isNull"];
|
|
44415
|
-
if (opts["id.isNotNull"] !== void 0)
|
|
44416
|
-
args.id__isNotNull = opts["id.isNotNull"];
|
|
44417
44780
|
if (opts["id.equals"] !== void 0)
|
|
44418
44781
|
args.id__equals = opts["id.equals"];
|
|
44419
44782
|
if (opts["id.contains"] !== void 0)
|
|
@@ -44430,10 +44793,6 @@ Examples:
|
|
|
44430
44793
|
args.name = opts.name;
|
|
44431
44794
|
if (opts["name.not"] !== void 0)
|
|
44432
44795
|
args.name__not = opts["name.not"];
|
|
44433
|
-
if (opts["name.isNull"] !== void 0)
|
|
44434
|
-
args.name__isNull = opts["name.isNull"];
|
|
44435
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
44436
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
44437
44796
|
if (opts["name.equals"] !== void 0)
|
|
44438
44797
|
args.name__equals = opts["name.equals"];
|
|
44439
44798
|
if (opts["name.contains"] !== void 0)
|
|
@@ -44446,10 +44805,6 @@ Examples:
|
|
|
44446
44805
|
args.description = opts.description;
|
|
44447
44806
|
if (opts["description.not"] !== void 0)
|
|
44448
44807
|
args.description__not = opts["description.not"];
|
|
44449
|
-
if (opts["description.isNull"] !== void 0)
|
|
44450
|
-
args.description__isNull = opts["description.isNull"];
|
|
44451
|
-
if (opts["description.isNotNull"] !== void 0)
|
|
44452
|
-
args.description__isNotNull = opts["description.isNotNull"];
|
|
44453
44808
|
if (opts["description.equals"] !== void 0)
|
|
44454
44809
|
args.description__equals = opts["description.equals"];
|
|
44455
44810
|
if (opts["description.contains"] !== void 0)
|
|
@@ -44458,14 +44813,14 @@ Examples:
|
|
|
44458
44813
|
args.description__startsWith = opts["description.startsWith"];
|
|
44459
44814
|
if (opts["description.endWith"] !== void 0)
|
|
44460
44815
|
args.description__endWith = opts["description.endWith"];
|
|
44816
|
+
if (opts["description.isNull"] !== void 0)
|
|
44817
|
+
args.description__isNull = opts["description.isNull"];
|
|
44818
|
+
if (opts["description.isNotNull"] !== void 0)
|
|
44819
|
+
args.description__isNotNull = opts["description.isNotNull"];
|
|
44461
44820
|
if (opts.type !== void 0)
|
|
44462
44821
|
args.type = opts.type;
|
|
44463
44822
|
if (opts["type.not"] !== void 0)
|
|
44464
44823
|
args.type__not = opts["type.not"];
|
|
44465
|
-
if (opts["type.isNull"] !== void 0)
|
|
44466
|
-
args.type__isNull = opts["type.isNull"];
|
|
44467
|
-
if (opts["type.isNotNull"] !== void 0)
|
|
44468
|
-
args.type__isNotNull = opts["type.isNotNull"];
|
|
44469
44824
|
if (opts["type.equals"] !== void 0)
|
|
44470
44825
|
args.type__equals = opts["type.equals"];
|
|
44471
44826
|
if (opts["type.contains"] !== void 0)
|
|
@@ -44489,8 +44844,6 @@ Examples:
|
|
|
44489
44844
|
"skip",
|
|
44490
44845
|
"id",
|
|
44491
44846
|
"id__not",
|
|
44492
|
-
"id__isNull",
|
|
44493
|
-
"id__isNotNull",
|
|
44494
44847
|
"id__equals",
|
|
44495
44848
|
"id__contains",
|
|
44496
44849
|
"id__startsWith",
|
|
@@ -44499,24 +44852,20 @@ Examples:
|
|
|
44499
44852
|
"status__in",
|
|
44500
44853
|
"name",
|
|
44501
44854
|
"name__not",
|
|
44502
|
-
"name__isNull",
|
|
44503
|
-
"name__isNotNull",
|
|
44504
44855
|
"name__equals",
|
|
44505
44856
|
"name__contains",
|
|
44506
44857
|
"name__startsWith",
|
|
44507
44858
|
"name__endWith",
|
|
44508
44859
|
"description",
|
|
44509
44860
|
"description__not",
|
|
44510
|
-
"description__isNull",
|
|
44511
|
-
"description__isNotNull",
|
|
44512
44861
|
"description__equals",
|
|
44513
44862
|
"description__contains",
|
|
44514
44863
|
"description__startsWith",
|
|
44515
44864
|
"description__endWith",
|
|
44865
|
+
"description__isNull",
|
|
44866
|
+
"description__isNotNull",
|
|
44516
44867
|
"type",
|
|
44517
44868
|
"type__not",
|
|
44518
|
-
"type__isNull",
|
|
44519
|
-
"type__isNotNull",
|
|
44520
44869
|
"type__equals",
|
|
44521
44870
|
"type__contains",
|
|
44522
44871
|
"type__startsWith",
|
|
@@ -44525,7 +44874,7 @@ Examples:
|
|
|
44525
44874
|
]
|
|
44526
44875
|
});
|
|
44527
44876
|
});
|
|
44528
|
-
resource.command("create").description(`Create a new product with name, type (flat_fee, per_unit, usage, seat, etc.), and pricing configuration.`).requiredOption("--name <value>", `Product name.`).option("--description <value>", `Product description.`).option("--description-display-interval-dates", `Indicates if the dates of the interval should be automatically added in the product description on the invoices.`).option("--public-description <value>", `Public description of the product.`).option("--translations <json>", `Product name and description translations.`).option("--is-available-on-demand", `is_available_on_demand`).option("--is-available-on-subscription", `is_available_on_subscription`).option("--custom-properties <json>", `A list of key value with the slug of the custom property as the key and the custom property value as value.`).option("--accounting <json>", `Mapping invoicing entity ID/accounting settings.`).requiredOption("--type <value>", `Product type for fixed fee products.`).requiredOption("--price-configurations <json>", `Price configurations for the product.`).option("--aggregator <json>", `Aggregator configuration to automatically count seats from billable events. Only count aggregators are supported for seat products.`).option("--aggregator-id <value>", `ID of an existing aggregator to link to this product.`).option("--unit-name <value>", `Name of the unit (e.g., 'user', 'seat').`).option("--is-connected-seat-item", `When true, the seat count is automatically synced from an external source (e.g., CRM users).`).option("--credit-aggregators <json>", `Multiple aggregators with weights for multi-aggregator credit consumption. Cannot be used together with aggregator or aggregator_id.`).option("--low-credits-threshold <number>", `Threshold indicating a low level of credits.`).option("--credits-grant-mode <value>", `
|
|
44877
|
+
resource.command("create").description(`Create a new product with name, type (flat_fee, per_unit, usage, seat, etc.), and pricing configuration. With catalog versioning enabled, the change is staged in the pending catalog draft and only goes live after publish_catalog_draft.`).requiredOption("--name <value>", `Product name.`).option("--description <value>", `Product description.`).option("--description-display-interval-dates", `Indicates if the dates of the interval should be automatically added in the product description on the invoices.`).option("--public-description <value>", `Public description of the product.`).option("--translations <json>", `Product name and description translations.`).option("--is-available-on-demand", `is_available_on_demand`).option("--is-available-on-subscription", `is_available_on_subscription`).option("--custom-properties <json>", `A list of key value with the slug of the custom property as the key and the custom property value as value.`).option("--accounting <json>", `Mapping invoicing entity ID/accounting settings.`).requiredOption("--type <value>", `Product type for fixed fee products.`).requiredOption("--price-configurations <json>", `Price configurations for the product.`).option("--aggregator <json>", `Aggregator configuration to automatically count seats from billable events. Only count aggregators are supported for seat products.`).option("--aggregator-id <value>", `ID of an existing aggregator to link to this product.`).option("--unit-name <value>", `Name of the unit (e.g., 'user', 'seat').`).option("--is-connected-seat-item", `When true, the seat count is automatically synced from an external source (e.g., CRM users).`).option("--credit-aggregators <json>", `Multiple aggregators with weights for multi-aggregator credit consumption. Cannot be used together with aggregator or aggregator_id.`).option("--low-credits-threshold <number>", `Threshold indicating a low level of credits.`).option("--credits-grant-mode <value>", `
|
|
44529
44878
|
How the periodic credit allowance is granted for partial billing periods.
|
|
44530
44879
|
|
|
44531
44880
|
- \`prorated\` (default): the granted credits are prorated to the elapsed period.
|
|
@@ -44613,7 +44962,7 @@ Examples:
|
|
|
44613
44962
|
queryParamKeys: ["price_book_id"]
|
|
44614
44963
|
});
|
|
44615
44964
|
});
|
|
44616
|
-
resource.command("update").description(`Update a product's name, description, type, or configuration by ID.`).requiredOption("--id <value>", `id parameter`).requiredOption("--name <value>", `Product name.`).option("--description <value>", `Product description.`).option("--public-description <value>", `Public description of the product.`).option("--translations <json>", `Product name and description translations.`).option("--is-available-on-demand", `is_available_on_demand`).option("--is-available-on-subscription", `is_available_on_subscription`).option("--properties <json>", `properties`).option("--custom-properties <json>", `A list of key value with the slug of the custom property as the key and the custom property value as value.`).option("--accounting <json>", `Mapping invoicing entity ID/accounting settings.`).addHelpText("after", `
|
|
44965
|
+
resource.command("update").description(`Update a product's name, description, type, or configuration by ID. With catalog versioning enabled, the change is staged in the pending catalog draft and only goes live after publish_catalog_draft.`).requiredOption("--id <value>", `id parameter`).requiredOption("--name <value>", `Product name.`).option("--description <value>", `Product description.`).option("--public-description <value>", `Public description of the product.`).option("--translations <json>", `Product name and description translations.`).option("--is-available-on-demand", `is_available_on_demand`).option("--is-available-on-subscription", `is_available_on_subscription`).option("--properties <json>", `properties`).option("--custom-properties <json>", `A list of key value with the slug of the custom property as the key and the custom property value as value.`).option("--accounting <json>", `Mapping invoicing entity ID/accounting settings.`).addHelpText("after", `
|
|
44617
44966
|
Examples:
|
|
44618
44967
|
hyperline products update --id <id> --name <name>
|
|
44619
44968
|
hyperline products update --id <id> --name <name> --description <description> --public-description <public_description>
|
|
@@ -44717,6 +45066,80 @@ Examples:
|
|
|
44717
45066
|
});
|
|
44718
45067
|
}
|
|
44719
45068
|
|
|
45069
|
+
// build/commands/generated/products-features.js
|
|
45070
|
+
function registerProducts_FeaturesCommands(parent) {
|
|
45071
|
+
const resource = parent.command("products-features").description("Manage products > features");
|
|
45072
|
+
resource.command("list-product-features").description(`List feature values assigned to a product.`).requiredOption("--id <value>", `id parameter`).addHelpText("after", `
|
|
45073
|
+
Examples:
|
|
45074
|
+
hyperline products-features list-product-features --id <id>`).action(async (opts) => {
|
|
45075
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
45076
|
+
if (!ctx) {
|
|
45077
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
45078
|
+
process.exit(1);
|
|
45079
|
+
}
|
|
45080
|
+
const args = {};
|
|
45081
|
+
if (opts.id !== void 0)
|
|
45082
|
+
args.id = opts.id;
|
|
45083
|
+
await ctx.execute({
|
|
45084
|
+
method: "GET",
|
|
45085
|
+
path: "/v1/products/{id}/features",
|
|
45086
|
+
args,
|
|
45087
|
+
queryParamKeys: []
|
|
45088
|
+
});
|
|
45089
|
+
});
|
|
45090
|
+
resource.command("set-product-feature").description(`Set a feature value for a product.`).requiredOption("--id <value>", `id parameter`).requiredOption("--code <value>", `code parameter`).requiredOption("--value", `Feature value.`).addHelpText("after", `
|
|
45091
|
+
Examples:
|
|
45092
|
+
hyperline products-features set-product-feature --id <id> --code <code> --value
|
|
45093
|
+
hyperline products-features set-product-feature --id <id> --code <code> --value --output json`).action(async (opts) => {
|
|
45094
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
45095
|
+
if (!ctx) {
|
|
45096
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
45097
|
+
process.exit(1);
|
|
45098
|
+
}
|
|
45099
|
+
const args = {};
|
|
45100
|
+
if (opts.id !== void 0)
|
|
45101
|
+
args.id = opts.id;
|
|
45102
|
+
if (opts.code !== void 0)
|
|
45103
|
+
args.code = opts.code;
|
|
45104
|
+
if (opts.value !== void 0)
|
|
45105
|
+
args.value = true;
|
|
45106
|
+
await ctx.execute({
|
|
45107
|
+
method: "PUT",
|
|
45108
|
+
path: "/v1/products/{id}/features/{code}",
|
|
45109
|
+
args,
|
|
45110
|
+
queryParamKeys: []
|
|
45111
|
+
});
|
|
45112
|
+
});
|
|
45113
|
+
resource.command("delete-product-feature").description(`Delete a feature value from a product.`).requiredOption("--id <value>", `id parameter`).requiredOption("--code <value>", `code parameter`).option("--yes", "Skip confirmation").addHelpText("after", `
|
|
45114
|
+
Examples:
|
|
45115
|
+
hyperline products-features delete-product-feature --id <id> --code <code>
|
|
45116
|
+
hyperline products-features delete-product-feature --id <id> --code <code> --output json`).action(async (opts) => {
|
|
45117
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
45118
|
+
if (!ctx) {
|
|
45119
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
45120
|
+
process.exit(1);
|
|
45121
|
+
}
|
|
45122
|
+
const args = {};
|
|
45123
|
+
if (opts.id !== void 0)
|
|
45124
|
+
args.id = opts.id;
|
|
45125
|
+
if (opts.code !== void 0)
|
|
45126
|
+
args.code = opts.code;
|
|
45127
|
+
if (!opts.yes) {
|
|
45128
|
+
const confirmed = await confirmPrompt("Are you sure? Pass --yes to skip. [y/N] ");
|
|
45129
|
+
if (!confirmed) {
|
|
45130
|
+
process.stdout.write("Aborted.\n");
|
|
45131
|
+
return;
|
|
45132
|
+
}
|
|
45133
|
+
}
|
|
45134
|
+
await ctx.execute({
|
|
45135
|
+
method: "DELETE",
|
|
45136
|
+
path: "/v1/products/{id}/features/{code}",
|
|
45137
|
+
args,
|
|
45138
|
+
queryParamKeys: []
|
|
45139
|
+
});
|
|
45140
|
+
});
|
|
45141
|
+
}
|
|
45142
|
+
|
|
44720
45143
|
// build/commands/generated/quotes.js
|
|
44721
45144
|
function registerQuotesCommands(parent) {
|
|
44722
45145
|
const resource = parent.command("quotes").description("Manage quotes");
|
|
@@ -44726,12 +45149,12 @@ Quote status.
|
|
|
44726
45149
|
- \`draft\`: The quote is a draft.
|
|
44727
45150
|
- \`approved\`: The quote is approved and ready to be sent to the customer.
|
|
44728
45151
|
- \`pending_signature\`: The quote is awaiting the customer's signature.
|
|
44729
|
-
`).option("--owner-email <value>", `Email address of the Hyperline user acting as the quote owner. The owner requests approval when the quote is finalized using an API key or finalized during creation. If not specified, the Hyperline account owner will be assigned.`).requiredOption("--customer-id <value>", `ID of the customer.`).option("--invoicing-entity-id <value>", `ID of the invoicing entity attached to the quote.`).option("--catalog-version-id <value>", `ID of a published catalog version to price every product of the quote from, instead of the live products catalog. A product's own \`catalog_version_id\` takes precedence, and explicit \`prices\` always win over both.`).option("--comments <value>", `Custom comments displayed on the quote.`).option("--terms <value>", `Custom quotation terms.`).option("--amount <number>", `Estimated contract value. For subscription quotes, defaults to the computed subscription value if not specified. For one-off quotes, this field is ignored \u2014 the amount is always derived from the linked invoice's \`amount_excluding_tax\`.`).option("--collect-payment-details <value>", `Collect customer payment method mandate during signature flow or not.`).option("--collect-custom-property-ids <json>", `IDs of the customer custom properties required to be filled during the signature flow.`).option("--contract-clause-ids <json>", `IDs of the contract clauses used in the quote terms.`).option("--require-tax-id <value>", `Require the customer to provide a tax ID during the signature flow.`).option("--display-quote-value <value>", `Display the total quote value on the quote.`).option("--display-quote-value-with-tax <value>", `Display the total quote value including tax on the quote. Only applies to \`one_off\` quotes.`).option("--display-taxes <value>", `Display tax breakdown on the quote.`).option("--display-price-tiers <value>", `Controls which price tiers are displayed on the quote.
|
|
45152
|
+
`).option("--owner-email <value>", `Email address of the Hyperline user acting as the quote owner. The user must be a member of your Hyperline account. The owner requests approval when the quote is finalized using an API key or finalized during creation. If not specified, the Hyperline account owner will be assigned.`).requiredOption("--customer-id <value>", `ID of the customer.`).option("--invoicing-entity-id <value>", `ID of the invoicing entity attached to the quote.`).option("--catalog-version-id <value>", `ID of a published catalog version to price every product of the quote from, instead of the live products catalog. A product's own \`catalog_version_id\` takes precedence, and explicit \`prices\` always win over both.`).option("--comments <value>", `Custom comments displayed on the quote.`).option("--terms <value>", `Custom quotation terms.`).option("--amount <number>", `Estimated contract value. When computed, a subscription phase with neither an end date nor a fixed duration is counted over a conventional horizon: the contract's length for a single phase on a contract that has one, otherwise 12 months or the longest billing interval if longer. That horizon is not an end date: the subscription can run past it. Usage-based and connected seat lines are priced at their estimated quantity when it exceeds the committed quantity and, for seats, the live seat count. For subscription quotes, defaults to the computed subscription value if not specified. For one-off quotes, this field is ignored \u2014 the amount is always derived from the linked invoice's \`amount_excluding_tax\`.`).option("--contract-value <number>", `What the customer pays over the contract, each coupon counted on the invoices it applies to. Computed from the subscription for \`subscription\` and \`subscription_update\` quotes, unless set manually. Not set on \`one_off\` quotes. When specified, overrides the computed value.`).option("--collect-payment-details <value>", `Collect customer payment method mandate during signature flow or not.`).option("--collect-custom-property-ids <json>", `IDs of the customer custom properties required to be filled during the signature flow.`).option("--contract-clause-ids <json>", `IDs of the contract clauses used in the quote terms.`).option("--require-tax-id <value>", `Require the customer to provide a tax ID during the signature flow.`).option("--display-quote-value <value>", `Display the total quote value on the quote.`).option("--display-quote-value-with-tax <value>", `Display the total quote value including tax on the quote. Only applies to \`one_off\` quotes.`).option("--display-taxes <value>", `Display tax breakdown on the quote.`).option("--display-price-tiers <value>", `Controls which price tiers are displayed on the quote.
|
|
44730
45153
|
|
|
44731
45154
|
- \`all\`: Display all pricing tiers.
|
|
44732
45155
|
- \`matching\`: Only display the tiers used to compute the price based on quantity.
|
|
44733
45156
|
- \`none\`: Hide all pricing tiers.
|
|
44734
|
-
`).option("--display-phase-value <value>", `Display per-phase value breakdown on the quote.`).option("--display-first-invoice-amount <value>", `Display the first invoice amount on the quote.`).option("--display-documents-in-preview <value>", `Display attached documents in the quote preview.`).option("--subscription-update-display <value>", `Sections displayed on subscription update quotes: quote_update_details, subscription_details, or both. Takes precedence over display_subscription_on_update.`).option("--generate-draft-invoices <value>", `When \`true\`, the invoice issued after signature stays in \`draft\` status instead of being emitted for payment. Use this when you want to review the final invoice manually before sending it. Defaults to \`false\`.`).option("--template-id <value>", `ID of the quote template. If not specified, a subscription configuration or an \`invoice\` payload must be defined.`).option("--expires-at <value>", `Quote expiration date. UTC date time string in the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.`).option("--subscription <json>", `Subscription configuration constituting the quote.`).option("--invoice <json>", `Invoice configuration constituting the one-off quote. When provided, a draft invoice is created and linked to the quote. Cannot be combined with \`subscription\` or \`template_id\`.`).addHelpText("after", `
|
|
45157
|
+
`).option("--display-phase-value <value>", `Display per-phase value breakdown on the quote.`).option("--display-discounts-on-total <value>", `Display discounts on the totals, with product prices before discount. Totals then follow the contract value, so discounts with a limited duration are included.`).option("--display-first-invoice-amount <value>", `Display the first invoice amount on the quote.`).option("--display-documents-in-preview <value>", `Display attached documents in the quote preview.`).option("--subscription-update-display <value>", `Sections displayed on subscription update quotes: quote_update_details, subscription_details, or both. Takes precedence over display_subscription_on_update.`).option("--generate-draft-invoices <value>", `When \`true\`, the invoice issued after signature stays in \`draft\` status instead of being emitted for payment. Use this when you want to review the final invoice manually before sending it. Defaults to \`false\`.`).option("--template-id <value>", `ID of the quote template. If not specified, a subscription configuration or an \`invoice\` payload must be defined.`).option("--expires-at <value>", `Quote expiration date. UTC date time string in the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.`).option("--subscription <json>", `Subscription configuration constituting the quote.`).option("--invoice <json>", `Invoice configuration constituting the one-off quote. When provided, a draft invoice is created and linked to the quote. Cannot be combined with \`subscription\` or \`template_id\`.`).addHelpText("after", `
|
|
44735
45158
|
Examples:
|
|
44736
45159
|
hyperline quotes create --customer-id <customer_id>
|
|
44737
45160
|
hyperline quotes create --customer-id <customer_id> --status <status> --owner-email <owner_email>
|
|
@@ -44770,6 +45193,8 @@ Examples:
|
|
|
44770
45193
|
args.display_price_tiers = opts.displayPriceTiers;
|
|
44771
45194
|
if (opts.displayPhaseValue !== void 0)
|
|
44772
45195
|
args.display_phase_value = opts.displayPhaseValue;
|
|
45196
|
+
if (opts.displayDiscountsOnTotal !== void 0)
|
|
45197
|
+
args.display_discounts_on_total = opts.displayDiscountsOnTotal;
|
|
44773
45198
|
if (opts.displayFirstInvoiceAmount !== void 0)
|
|
44774
45199
|
args.display_first_invoice_amount = opts.displayFirstInvoiceAmount;
|
|
44775
45200
|
if (opts.displayDocumentsInPreview !== void 0)
|
|
@@ -44784,6 +45209,8 @@ Examples:
|
|
|
44784
45209
|
args.expires_at = opts.expiresAt;
|
|
44785
45210
|
if (opts.amount !== void 0)
|
|
44786
45211
|
args.amount = Number(opts.amount);
|
|
45212
|
+
if (opts.contractValue !== void 0)
|
|
45213
|
+
args.contract_value = Number(opts.contractValue);
|
|
44787
45214
|
if (opts.collectCustomPropertyIds !== void 0)
|
|
44788
45215
|
args.collect_custom_property_ids = JSON.parse(opts.collectCustomPropertyIds);
|
|
44789
45216
|
if (opts.contractClauseIds !== void 0)
|
|
@@ -44799,7 +45226,7 @@ Examples:
|
|
|
44799
45226
|
queryParamKeys: []
|
|
44800
45227
|
});
|
|
44801
45228
|
});
|
|
44802
|
-
resource.command("list").description(`List quotes with optional filters for id, number, status, customer_id, template_id, crm_opportunity_id, type, and updated_at. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--id <value>", `id`).option("--id.not <value>", `id__not`).option("--id.
|
|
45229
|
+
resource.command("list").description(`List quotes with optional filters for id, number, status, customer_id, template_id, crm_opportunity_id, type, and updated_at. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--id <value>", `id`).option("--id.not <value>", `id__not`).option("--id.equals <value>", `id__equals`).option("--id.contains <value>", `id__contains`).option("--id.starts-with <value>", `id__startsWith`).option("--id.end-with <value>", `id__endWith`).option("--number <value>", `number`).option("--number.not <value>", `number__not`).option("--number.equals <value>", `number__equals`).option("--number.contains <value>", `number__contains`).option("--number.starts-with <value>", `number__startsWith`).option("--number.end-with <value>", `number__endWith`).option("--status <value>", `status`).option("--status.in <value>", `status__in`).option("--customer-id <value>", `customer_id`).option("--customer-id.not <value>", `customer_id__not`).option("--customer-id.equals <value>", `customer_id__equals`).option("--customer-id.contains <value>", `customer_id__contains`).option("--customer-id.starts-with <value>", `customer_id__startsWith`).option("--customer-id.end-with <value>", `customer_id__endWith`).option("--template-id <value>", `template_id`).option("--template-id.not <value>", `template_id__not`).option("--template-id.equals <value>", `template_id__equals`).option("--template-id.contains <value>", `template_id__contains`).option("--template-id.starts-with <value>", `template_id__startsWith`).option("--template-id.end-with <value>", `template_id__endWith`).option("--template-id.is-null <value>", `template_id__isNull`).option("--template-id.is-not-null <value>", `template_id__isNotNull`).option("--crm-opportunity-id <value>", `crm_opportunity_id`).option("--crm-opportunity-id.not <value>", `crm_opportunity_id__not`).option("--crm-opportunity-id.equals <value>", `crm_opportunity_id__equals`).option("--crm-opportunity-id.contains <value>", `crm_opportunity_id__contains`).option("--crm-opportunity-id.starts-with <value>", `crm_opportunity_id__startsWith`).option("--crm-opportunity-id.end-with <value>", `crm_opportunity_id__endWith`).option("--crm-opportunity-id.is-null <value>", `crm_opportunity_id__isNull`).option("--crm-opportunity-id.is-not-null <value>", `crm_opportunity_id__isNotNull`).option("--type <value>", `type`).option("--updated-at <value>", `updated_at`).option("--updated-at.not <value>", `updated_at__not`).option("--updated-at.equals <value>", `updated_at__equals`).option("--updated-at.lt <value>", `updated_at__lt`).option("--updated-at.lte <value>", `updated_at__lte`).option("--updated-at.gt <value>", `updated_at__gt`).option("--updated-at.gte <value>", `updated_at__gte`).addHelpText("after", `
|
|
44803
45230
|
Examples:
|
|
44804
45231
|
hyperline quotes list
|
|
44805
45232
|
hyperline quotes list --take <take> --id <id>`).action(async (opts) => {
|
|
@@ -44813,10 +45240,6 @@ Examples:
|
|
|
44813
45240
|
args.id = opts.id;
|
|
44814
45241
|
if (opts["id.not"] !== void 0)
|
|
44815
45242
|
args.id__not = opts["id.not"];
|
|
44816
|
-
if (opts["id.isNull"] !== void 0)
|
|
44817
|
-
args.id__isNull = opts["id.isNull"];
|
|
44818
|
-
if (opts["id.isNotNull"] !== void 0)
|
|
44819
|
-
args.id__isNotNull = opts["id.isNotNull"];
|
|
44820
45243
|
if (opts["id.equals"] !== void 0)
|
|
44821
45244
|
args.id__equals = opts["id.equals"];
|
|
44822
45245
|
if (opts["id.contains"] !== void 0)
|
|
@@ -44829,10 +45252,6 @@ Examples:
|
|
|
44829
45252
|
args.number = opts.number;
|
|
44830
45253
|
if (opts["number.not"] !== void 0)
|
|
44831
45254
|
args.number__not = opts["number.not"];
|
|
44832
|
-
if (opts["number.isNull"] !== void 0)
|
|
44833
|
-
args.number__isNull = opts["number.isNull"];
|
|
44834
|
-
if (opts["number.isNotNull"] !== void 0)
|
|
44835
|
-
args.number__isNotNull = opts["number.isNotNull"];
|
|
44836
45255
|
if (opts["number.equals"] !== void 0)
|
|
44837
45256
|
args.number__equals = opts["number.equals"];
|
|
44838
45257
|
if (opts["number.contains"] !== void 0)
|
|
@@ -44849,10 +45268,6 @@ Examples:
|
|
|
44849
45268
|
args.customer_id = opts.customerId;
|
|
44850
45269
|
if (opts["customerId.not"] !== void 0)
|
|
44851
45270
|
args.customer_id__not = opts["customerId.not"];
|
|
44852
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
44853
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
44854
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
44855
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
44856
45271
|
if (opts["customerId.equals"] !== void 0)
|
|
44857
45272
|
args.customer_id__equals = opts["customerId.equals"];
|
|
44858
45273
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -44865,10 +45280,6 @@ Examples:
|
|
|
44865
45280
|
args.template_id = opts.templateId;
|
|
44866
45281
|
if (opts["templateId.not"] !== void 0)
|
|
44867
45282
|
args.template_id__not = opts["templateId.not"];
|
|
44868
|
-
if (opts["templateId.isNull"] !== void 0)
|
|
44869
|
-
args.template_id__isNull = opts["templateId.isNull"];
|
|
44870
|
-
if (opts["templateId.isNotNull"] !== void 0)
|
|
44871
|
-
args.template_id__isNotNull = opts["templateId.isNotNull"];
|
|
44872
45283
|
if (opts["templateId.equals"] !== void 0)
|
|
44873
45284
|
args.template_id__equals = opts["templateId.equals"];
|
|
44874
45285
|
if (opts["templateId.contains"] !== void 0)
|
|
@@ -44877,14 +45288,14 @@ Examples:
|
|
|
44877
45288
|
args.template_id__startsWith = opts["templateId.startsWith"];
|
|
44878
45289
|
if (opts["templateId.endWith"] !== void 0)
|
|
44879
45290
|
args.template_id__endWith = opts["templateId.endWith"];
|
|
45291
|
+
if (opts["templateId.isNull"] !== void 0)
|
|
45292
|
+
args.template_id__isNull = opts["templateId.isNull"];
|
|
45293
|
+
if (opts["templateId.isNotNull"] !== void 0)
|
|
45294
|
+
args.template_id__isNotNull = opts["templateId.isNotNull"];
|
|
44880
45295
|
if (opts.crmOpportunityId !== void 0)
|
|
44881
45296
|
args.crm_opportunity_id = opts.crmOpportunityId;
|
|
44882
45297
|
if (opts["crmOpportunityId.not"] !== void 0)
|
|
44883
45298
|
args.crm_opportunity_id__not = opts["crmOpportunityId.not"];
|
|
44884
|
-
if (opts["crmOpportunityId.isNull"] !== void 0)
|
|
44885
|
-
args.crm_opportunity_id__isNull = opts["crmOpportunityId.isNull"];
|
|
44886
|
-
if (opts["crmOpportunityId.isNotNull"] !== void 0)
|
|
44887
|
-
args.crm_opportunity_id__isNotNull = opts["crmOpportunityId.isNotNull"];
|
|
44888
45299
|
if (opts["crmOpportunityId.equals"] !== void 0)
|
|
44889
45300
|
args.crm_opportunity_id__equals = opts["crmOpportunityId.equals"];
|
|
44890
45301
|
if (opts["crmOpportunityId.contains"] !== void 0)
|
|
@@ -44893,30 +45304,16 @@ Examples:
|
|
|
44893
45304
|
args.crm_opportunity_id__startsWith = opts["crmOpportunityId.startsWith"];
|
|
44894
45305
|
if (opts["crmOpportunityId.endWith"] !== void 0)
|
|
44895
45306
|
args.crm_opportunity_id__endWith = opts["crmOpportunityId.endWith"];
|
|
45307
|
+
if (opts["crmOpportunityId.isNull"] !== void 0)
|
|
45308
|
+
args.crm_opportunity_id__isNull = opts["crmOpportunityId.isNull"];
|
|
45309
|
+
if (opts["crmOpportunityId.isNotNull"] !== void 0)
|
|
45310
|
+
args.crm_opportunity_id__isNotNull = opts["crmOpportunityId.isNotNull"];
|
|
44896
45311
|
if (opts.type !== void 0)
|
|
44897
45312
|
args.type = opts.type;
|
|
44898
|
-
if (opts["type.not"] !== void 0)
|
|
44899
|
-
args.type__not = opts["type.not"];
|
|
44900
|
-
if (opts["type.isNull"] !== void 0)
|
|
44901
|
-
args.type__isNull = opts["type.isNull"];
|
|
44902
|
-
if (opts["type.isNotNull"] !== void 0)
|
|
44903
|
-
args.type__isNotNull = opts["type.isNotNull"];
|
|
44904
|
-
if (opts["type.equals"] !== void 0)
|
|
44905
|
-
args.type__equals = opts["type.equals"];
|
|
44906
|
-
if (opts["type.contains"] !== void 0)
|
|
44907
|
-
args.type__contains = opts["type.contains"];
|
|
44908
|
-
if (opts["type.startsWith"] !== void 0)
|
|
44909
|
-
args.type__startsWith = opts["type.startsWith"];
|
|
44910
|
-
if (opts["type.endWith"] !== void 0)
|
|
44911
|
-
args.type__endWith = opts["type.endWith"];
|
|
44912
45313
|
if (opts.updatedAt !== void 0)
|
|
44913
45314
|
args.updated_at = opts.updatedAt;
|
|
44914
45315
|
if (opts["updatedAt.not"] !== void 0)
|
|
44915
45316
|
args.updated_at__not = opts["updatedAt.not"];
|
|
44916
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
44917
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
44918
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
44919
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
44920
45317
|
if (opts["updatedAt.equals"] !== void 0)
|
|
44921
45318
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
44922
45319
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -44940,16 +45337,12 @@ Examples:
|
|
|
44940
45337
|
"skip",
|
|
44941
45338
|
"id",
|
|
44942
45339
|
"id__not",
|
|
44943
|
-
"id__isNull",
|
|
44944
|
-
"id__isNotNull",
|
|
44945
45340
|
"id__equals",
|
|
44946
45341
|
"id__contains",
|
|
44947
45342
|
"id__startsWith",
|
|
44948
45343
|
"id__endWith",
|
|
44949
45344
|
"number",
|
|
44950
45345
|
"number__not",
|
|
44951
|
-
"number__isNull",
|
|
44952
|
-
"number__isNotNull",
|
|
44953
45346
|
"number__equals",
|
|
44954
45347
|
"number__contains",
|
|
44955
45348
|
"number__startsWith",
|
|
@@ -44958,40 +45351,29 @@ Examples:
|
|
|
44958
45351
|
"status__in",
|
|
44959
45352
|
"customer_id",
|
|
44960
45353
|
"customer_id__not",
|
|
44961
|
-
"customer_id__isNull",
|
|
44962
|
-
"customer_id__isNotNull",
|
|
44963
45354
|
"customer_id__equals",
|
|
44964
45355
|
"customer_id__contains",
|
|
44965
45356
|
"customer_id__startsWith",
|
|
44966
45357
|
"customer_id__endWith",
|
|
44967
45358
|
"template_id",
|
|
44968
45359
|
"template_id__not",
|
|
44969
|
-
"template_id__isNull",
|
|
44970
|
-
"template_id__isNotNull",
|
|
44971
45360
|
"template_id__equals",
|
|
44972
45361
|
"template_id__contains",
|
|
44973
45362
|
"template_id__startsWith",
|
|
44974
45363
|
"template_id__endWith",
|
|
45364
|
+
"template_id__isNull",
|
|
45365
|
+
"template_id__isNotNull",
|
|
44975
45366
|
"crm_opportunity_id",
|
|
44976
45367
|
"crm_opportunity_id__not",
|
|
44977
|
-
"crm_opportunity_id__isNull",
|
|
44978
|
-
"crm_opportunity_id__isNotNull",
|
|
44979
45368
|
"crm_opportunity_id__equals",
|
|
44980
45369
|
"crm_opportunity_id__contains",
|
|
44981
45370
|
"crm_opportunity_id__startsWith",
|
|
44982
45371
|
"crm_opportunity_id__endWith",
|
|
45372
|
+
"crm_opportunity_id__isNull",
|
|
45373
|
+
"crm_opportunity_id__isNotNull",
|
|
44983
45374
|
"type",
|
|
44984
|
-
"type__not",
|
|
44985
|
-
"type__isNull",
|
|
44986
|
-
"type__isNotNull",
|
|
44987
|
-
"type__equals",
|
|
44988
|
-
"type__contains",
|
|
44989
|
-
"type__startsWith",
|
|
44990
|
-
"type__endWith",
|
|
44991
45375
|
"updated_at",
|
|
44992
45376
|
"updated_at__not",
|
|
44993
|
-
"updated_at__isNull",
|
|
44994
|
-
"updated_at__isNotNull",
|
|
44995
45377
|
"updated_at__equals",
|
|
44996
45378
|
"updated_at__lt",
|
|
44997
45379
|
"updated_at__lte",
|
|
@@ -45018,12 +45400,12 @@ Examples:
|
|
|
45018
45400
|
queryParamKeys: []
|
|
45019
45401
|
});
|
|
45020
45402
|
});
|
|
45021
|
-
resource.command("update").description(`Update quote-level fields before a quote is finalized. On draft quotes, pass \`subscription\` inline \u2014 the full configuration, not a reference to an existing subscription \u2014 to create or replace the draft subscription configuration, or pass \`invoice\` on a one-off quote to replace the linked draft invoice. For quotes created from \`template_id\`, use this tool for subscription overrides such as dates, contract terms, products, phases, coupons, discounts, prices, seats, and subscription custom properties. Omit \`terms\`, \`comments\`, and \`contract_clause_ids\` unless deliberately overriding template content. Discover product and price configuration IDs with \`get_catalog_context\`.`).requiredOption("--id <value>", `id parameter`).option("--owner-email <value>", `Email address of the Hyperline user acting as the quote owner. The owner requests approval when the quote is finalized using an API key or finalized during creation.`).option("--catalog-version-id <value>", `ID of a published catalog version to price every product of the quote from, instead of the live products catalog. A product's own \`catalog_version_id\` takes precedence, and explicit \`prices\` always win over both.`).option("--comments <value>", `Custom comments displayed on the quote.`).option("--terms <value>", `Custom quotation terms.`).option("--amount <number>", `Estimated contract value. Set to \`null\` to clear the manually set value.`).option("--collect-payment-details <value>", `Collect customer payment method mandate during signature flow or not.`).option("--collect-custom-property-ids <json>", `IDs of the customer custom properties required to be filled during the signature flow.`).option("--contract-clause-ids <json>", `IDs of the contract clauses used in the quote terms.`).option("--require-tax-id <value>", `Require the customer to provide a tax ID during the signature flow.`).option("--display-quote-value <value>", `Display the total quote value on the quote.`).option("--display-quote-value-with-tax <value>", `Display the total quote value including tax on the quote. Only applies to \`one_off\` quotes.`).option("--display-taxes <value>", `Display tax breakdown on the quote.`).option("--display-price-tiers <value>", `Controls which price tiers are displayed on the quote.
|
|
45403
|
+
resource.command("update").description(`Update quote-level fields before a quote is finalized. On draft quotes, pass \`subscription\` inline \u2014 the full configuration, not a reference to an existing subscription \u2014 to create or replace the draft subscription configuration, or pass \`invoice\` on a one-off quote to replace the linked draft invoice. For quotes created from \`template_id\`, use this tool for subscription overrides such as dates, contract terms, products, phases, coupons, discounts, prices, seats, and subscription custom properties. Omit \`terms\`, \`comments\`, and \`contract_clause_ids\` unless deliberately overriding template content. Discover product and price configuration IDs with \`get_catalog_context\`.`).requiredOption("--id <value>", `id parameter`).option("--owner-email <value>", `Email address of the Hyperline user acting as the quote owner. The user must be a member of your Hyperline account. The owner requests approval when the quote is finalized using an API key or finalized during creation.`).option("--catalog-version-id <value>", `ID of a published catalog version to price every product of the quote from, instead of the live products catalog. A product's own \`catalog_version_id\` takes precedence, and explicit \`prices\` always win over both.`).option("--comments <value>", `Custom comments displayed on the quote.`).option("--terms <value>", `Custom quotation terms.`).option("--amount <number>", `Estimated contract value. When computed, a subscription phase with neither an end date nor a fixed duration is counted over a conventional horizon: the contract's length for a single phase on a contract that has one, otherwise 12 months or the longest billing interval if longer. That horizon is not an end date: the subscription can run past it. Usage-based and connected seat lines are priced at their estimated quantity when it exceeds the committed quantity and, for seats, the live seat count. Set to \`null\` to clear the manually set value.`).option("--contract-value <number>", `What the customer pays over the contract, each coupon counted on the invoices it applies to. Computed from the subscription for \`subscription\` and \`subscription_update\` quotes, unless set manually. Not set on \`one_off\` quotes. When specified, overrides the computed value. Set to \`null\` to go back to the computed value.`).option("--collect-payment-details <value>", `Collect customer payment method mandate during signature flow or not.`).option("--collect-custom-property-ids <json>", `IDs of the customer custom properties required to be filled during the signature flow.`).option("--contract-clause-ids <json>", `IDs of the contract clauses used in the quote terms.`).option("--require-tax-id <value>", `Require the customer to provide a tax ID during the signature flow.`).option("--display-quote-value <value>", `Display the total quote value on the quote.`).option("--display-quote-value-with-tax <value>", `Display the total quote value including tax on the quote. Only applies to \`one_off\` quotes.`).option("--display-taxes <value>", `Display tax breakdown on the quote.`).option("--display-price-tiers <value>", `Controls which price tiers are displayed on the quote.
|
|
45022
45404
|
|
|
45023
45405
|
- \`all\`: Display all pricing tiers.
|
|
45024
45406
|
- \`matching\`: Only display the tiers used to compute the price based on quantity.
|
|
45025
45407
|
- \`none\`: Hide all pricing tiers.
|
|
45026
|
-
`).option("--display-phase-value <value>", `Display per-phase value breakdown on the quote.`).option("--display-first-invoice-amount <value>", `Display the first invoice amount on the quote.`).option("--display-documents-in-preview <value>", `Display attached documents in the quote preview.`).option("--subscription-update-display <value>", `Sections displayed on subscription update quotes: quote_update_details, subscription_details, or both. Takes precedence over display_subscription_on_update.`).option("--generate-draft-invoices <value>", `When \`true\`, the invoice issued after signature stays in \`draft\` status instead of being emitted for payment. Use this when you want to review the final invoice manually before sending it. Defaults to \`false\`.`).option("--crm-opportunity-id <value>", `ID of the related opportunity/deal in the connected CRM.`).option("--expires-at <value>", `Quote expiration date. UTC date time string in the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. Set to \`null\` to clear the expiration.`).option("--subscription <json>", `Subscription configuration constituting the quote. When provided on a draft quote, it creates or replaces the draft subscription attached to the quote.`).option("--invoice <json>", `Invoice configuration constituting the one-off quote. When provided on a draft one-off quote, it deletes the previous draft invoice and creates a fresh one linked to the quote. \`invoice.invoicing_entity_id\` is ignored on update \u2014 the quote's existing invoicing entity is reused.`).addHelpText("after", `
|
|
45408
|
+
`).option("--display-phase-value <value>", `Display per-phase value breakdown on the quote.`).option("--display-discounts-on-total <value>", `Display discounts on the totals, with product prices before discount. Totals then follow the contract value, so discounts with a limited duration are included.`).option("--display-first-invoice-amount <value>", `Display the first invoice amount on the quote.`).option("--display-documents-in-preview <value>", `Display attached documents in the quote preview.`).option("--subscription-update-display <value>", `Sections displayed on subscription update quotes: quote_update_details, subscription_details, or both. Takes precedence over display_subscription_on_update.`).option("--generate-draft-invoices <value>", `When \`true\`, the invoice issued after signature stays in \`draft\` status instead of being emitted for payment. Use this when you want to review the final invoice manually before sending it. Defaults to \`false\`.`).option("--crm-opportunity-id <value>", `ID of the related opportunity/deal in the connected CRM.`).option("--expires-at <value>", `Quote expiration date. UTC date time string in the [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. Set to \`null\` to clear the expiration.`).option("--subscription <json>", `Subscription configuration constituting the quote. When provided on a draft quote, it creates or replaces the draft subscription attached to the quote.`).option("--invoice <json>", `Invoice configuration constituting the one-off quote. When provided on a draft one-off quote, it deletes the previous draft invoice and creates a fresh one linked to the quote. \`invoice.invoicing_entity_id\` is ignored on update \u2014 the quote's existing invoicing entity is reused.`).addHelpText("after", `
|
|
45027
45409
|
Examples:
|
|
45028
45410
|
hyperline quotes update --id <id>
|
|
45029
45411
|
hyperline quotes update --id <id> --owner-email <owner_email> --catalog-version-id <catalog_version_id>
|
|
@@ -45058,6 +45440,8 @@ Examples:
|
|
|
45058
45440
|
args.display_price_tiers = opts.displayPriceTiers;
|
|
45059
45441
|
if (opts.displayPhaseValue !== void 0)
|
|
45060
45442
|
args.display_phase_value = opts.displayPhaseValue;
|
|
45443
|
+
if (opts.displayDiscountsOnTotal !== void 0)
|
|
45444
|
+
args.display_discounts_on_total = opts.displayDiscountsOnTotal;
|
|
45061
45445
|
if (opts.displayFirstInvoiceAmount !== void 0)
|
|
45062
45446
|
args.display_first_invoice_amount = opts.displayFirstInvoiceAmount;
|
|
45063
45447
|
if (opts.displayDocumentsInPreview !== void 0)
|
|
@@ -45072,6 +45456,8 @@ Examples:
|
|
|
45072
45456
|
args.expires_at = opts.expiresAt;
|
|
45073
45457
|
if (opts.amount !== void 0)
|
|
45074
45458
|
args.amount = Number(opts.amount);
|
|
45459
|
+
if (opts.contractValue !== void 0)
|
|
45460
|
+
args.contract_value = Number(opts.contractValue);
|
|
45075
45461
|
if (opts.collectCustomPropertyIds !== void 0)
|
|
45076
45462
|
args.collect_custom_property_ids = JSON.parse(opts.collectCustomPropertyIds);
|
|
45077
45463
|
if (opts.contractClauseIds !== void 0)
|
|
@@ -45149,6 +45535,25 @@ Examples:
|
|
|
45149
45535
|
queryParamKeys: []
|
|
45150
45536
|
});
|
|
45151
45537
|
});
|
|
45538
|
+
resource.command("redraft").description(`Switch a quote back to draft so its subscription or invoice configuration can be updated. Works on quotes pending approval, with changes requested, approved, or awaiting signature. Cancels pending approval requests and the signature request; the quote must then be finalized again.`).requiredOption("--id <value>", `id parameter`).addHelpText("after", `
|
|
45539
|
+
Examples:
|
|
45540
|
+
hyperline quotes redraft --id <id>
|
|
45541
|
+
hyperline quotes redraft --id <id> --output json`).action(async (opts) => {
|
|
45542
|
+
const ctx = resource.parent?.opts()._ctx;
|
|
45543
|
+
if (!ctx) {
|
|
45544
|
+
process.stderr.write("Error: Not authenticated\n");
|
|
45545
|
+
process.exit(1);
|
|
45546
|
+
}
|
|
45547
|
+
const args = {};
|
|
45548
|
+
if (opts.id !== void 0)
|
|
45549
|
+
args.id = opts.id;
|
|
45550
|
+
await ctx.execute({
|
|
45551
|
+
method: "POST",
|
|
45552
|
+
path: "/v1/quotes/{id}/redraft",
|
|
45553
|
+
args,
|
|
45554
|
+
queryParamKeys: []
|
|
45555
|
+
});
|
|
45556
|
+
});
|
|
45152
45557
|
resource.command("send").description(`Send a quote by email for customer signature. Requires the quote to be approved first.`).requiredOption("--id <value>", `id parameter`).option("--email <value>", `Email address to which the quote will be sent for signature. Required unless the quote has signers, in which case the email goes to the signers of the current step and this field is ignored.`).option("--message <value>", `Custom message used in the email content.`).addHelpText("after", `
|
|
45153
45558
|
Examples:
|
|
45154
45559
|
hyperline quotes send --id <id>
|
|
@@ -45346,7 +45751,7 @@ Examples:
|
|
|
45346
45751
|
// build/commands/generated/quotes-templates.js
|
|
45347
45752
|
function registerQuotes_TemplatesCommands(parent) {
|
|
45348
45753
|
const resource = parent.command("quotes-templates").description("Manage quotes > templates");
|
|
45349
|
-
resource.command("list-quote-templates").description(`List quote templates with pagination and optional filters for id, name, subscription_template_id, and search. Use template IDs to create quotes from reusable quote defaults.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--id <value>", `id`).option("--id.not <value>", `id__not`).option("--id.
|
|
45754
|
+
resource.command("list-quote-templates").description(`List quote templates with pagination and optional filters for id, name, subscription_template_id, and search. Use template IDs to create quotes from reusable quote defaults.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--id <value>", `id`).option("--id.not <value>", `id__not`).option("--id.equals <value>", `id__equals`).option("--id.contains <value>", `id__contains`).option("--id.starts-with <value>", `id__startsWith`).option("--id.end-with <value>", `id__endWith`).option("--name <value>", `name`).option("--name.not <value>", `name__not`).option("--name.equals <value>", `name__equals`).option("--name.contains <value>", `name__contains`).option("--name.starts-with <value>", `name__startsWith`).option("--name.end-with <value>", `name__endWith`).option("--subscription-template-id <value>", `subscription_template_id`).option("--subscription-template-id.not <value>", `subscription_template_id__not`).option("--subscription-template-id.equals <value>", `subscription_template_id__equals`).option("--subscription-template-id.contains <value>", `subscription_template_id__contains`).option("--subscription-template-id.starts-with <value>", `subscription_template_id__startsWith`).option("--subscription-template-id.end-with <value>", `subscription_template_id__endWith`).option("--subscription-template-id.is-null <value>", `subscription_template_id__isNull`).option("--subscription-template-id.is-not-null <value>", `subscription_template_id__isNotNull`).option("--search <value>", `search`).addHelpText("after", `
|
|
45350
45755
|
Examples:
|
|
45351
45756
|
hyperline quotes-templates list-quote-templates
|
|
45352
45757
|
hyperline quotes-templates list-quote-templates --take <take> --id <id>`).action(async (opts) => {
|
|
@@ -45360,10 +45765,6 @@ Examples:
|
|
|
45360
45765
|
args.id = opts.id;
|
|
45361
45766
|
if (opts["id.not"] !== void 0)
|
|
45362
45767
|
args.id__not = opts["id.not"];
|
|
45363
|
-
if (opts["id.isNull"] !== void 0)
|
|
45364
|
-
args.id__isNull = opts["id.isNull"];
|
|
45365
|
-
if (opts["id.isNotNull"] !== void 0)
|
|
45366
|
-
args.id__isNotNull = opts["id.isNotNull"];
|
|
45367
45768
|
if (opts["id.equals"] !== void 0)
|
|
45368
45769
|
args.id__equals = opts["id.equals"];
|
|
45369
45770
|
if (opts["id.contains"] !== void 0)
|
|
@@ -45376,10 +45777,6 @@ Examples:
|
|
|
45376
45777
|
args.name = opts.name;
|
|
45377
45778
|
if (opts["name.not"] !== void 0)
|
|
45378
45779
|
args.name__not = opts["name.not"];
|
|
45379
|
-
if (opts["name.isNull"] !== void 0)
|
|
45380
|
-
args.name__isNull = opts["name.isNull"];
|
|
45381
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
45382
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
45383
45780
|
if (opts["name.equals"] !== void 0)
|
|
45384
45781
|
args.name__equals = opts["name.equals"];
|
|
45385
45782
|
if (opts["name.contains"] !== void 0)
|
|
@@ -45392,10 +45789,6 @@ Examples:
|
|
|
45392
45789
|
args.subscription_template_id = opts.subscriptionTemplateId;
|
|
45393
45790
|
if (opts["subscriptionTemplateId.not"] !== void 0)
|
|
45394
45791
|
args.subscription_template_id__not = opts["subscriptionTemplateId.not"];
|
|
45395
|
-
if (opts["subscriptionTemplateId.isNull"] !== void 0)
|
|
45396
|
-
args.subscription_template_id__isNull = opts["subscriptionTemplateId.isNull"];
|
|
45397
|
-
if (opts["subscriptionTemplateId.isNotNull"] !== void 0)
|
|
45398
|
-
args.subscription_template_id__isNotNull = opts["subscriptionTemplateId.isNotNull"];
|
|
45399
45792
|
if (opts["subscriptionTemplateId.equals"] !== void 0)
|
|
45400
45793
|
args.subscription_template_id__equals = opts["subscriptionTemplateId.equals"];
|
|
45401
45794
|
if (opts["subscriptionTemplateId.contains"] !== void 0)
|
|
@@ -45404,6 +45797,10 @@ Examples:
|
|
|
45404
45797
|
args.subscription_template_id__startsWith = opts["subscriptionTemplateId.startsWith"];
|
|
45405
45798
|
if (opts["subscriptionTemplateId.endWith"] !== void 0)
|
|
45406
45799
|
args.subscription_template_id__endWith = opts["subscriptionTemplateId.endWith"];
|
|
45800
|
+
if (opts["subscriptionTemplateId.isNull"] !== void 0)
|
|
45801
|
+
args.subscription_template_id__isNull = opts["subscriptionTemplateId.isNull"];
|
|
45802
|
+
if (opts["subscriptionTemplateId.isNotNull"] !== void 0)
|
|
45803
|
+
args.subscription_template_id__isNotNull = opts["subscriptionTemplateId.isNotNull"];
|
|
45407
45804
|
if (opts.search !== void 0)
|
|
45408
45805
|
args.search = opts.search;
|
|
45409
45806
|
if (opts.take !== void 0)
|
|
@@ -45419,28 +45816,24 @@ Examples:
|
|
|
45419
45816
|
"skip",
|
|
45420
45817
|
"id",
|
|
45421
45818
|
"id__not",
|
|
45422
|
-
"id__isNull",
|
|
45423
|
-
"id__isNotNull",
|
|
45424
45819
|
"id__equals",
|
|
45425
45820
|
"id__contains",
|
|
45426
45821
|
"id__startsWith",
|
|
45427
45822
|
"id__endWith",
|
|
45428
45823
|
"name",
|
|
45429
45824
|
"name__not",
|
|
45430
|
-
"name__isNull",
|
|
45431
|
-
"name__isNotNull",
|
|
45432
45825
|
"name__equals",
|
|
45433
45826
|
"name__contains",
|
|
45434
45827
|
"name__startsWith",
|
|
45435
45828
|
"name__endWith",
|
|
45436
45829
|
"subscription_template_id",
|
|
45437
45830
|
"subscription_template_id__not",
|
|
45438
|
-
"subscription_template_id__isNull",
|
|
45439
|
-
"subscription_template_id__isNotNull",
|
|
45440
45831
|
"subscription_template_id__equals",
|
|
45441
45832
|
"subscription_template_id__contains",
|
|
45442
45833
|
"subscription_template_id__startsWith",
|
|
45443
45834
|
"subscription_template_id__endWith",
|
|
45835
|
+
"subscription_template_id__isNull",
|
|
45836
|
+
"subscription_template_id__isNotNull",
|
|
45444
45837
|
"search"
|
|
45445
45838
|
]
|
|
45446
45839
|
});
|
|
@@ -45842,7 +46235,7 @@ Examples:
|
|
|
45842
46235
|
queryParamKeys: []
|
|
45843
46236
|
});
|
|
45844
46237
|
});
|
|
45845
|
-
resource.command("list").description(`List subscriptions with filters for activation_strategy, status, currency, plan_id, original_quote_id, integration_entity_id, customer_id, invoicing_entity_id, purchase_order, updated_at, custom_properties. Draft, voided, cancelled and archived excluded by default (status=all applies the same exclusion); status=any returns every status. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--activation-strategy <value>", `activation_strategy`).option("--activation-strategy.in <value>", `activation_strategy__in`).option("--status <value>", `
|
|
46238
|
+
resource.command("list").description(`List subscriptions with filters for activation_strategy, status, currency, plan_id, original_quote_id, integration_entity_id, customer_id, invoicing_entity_id, purchase_order, updated_at, cancel_at, custom_properties, and the active contract: contract_start__gte/__lte, contract_end__gte/__lte, renew_automatically. For upcoming renewals, combine contract_end__gte/__lte with renew_automatically, plus cancel_at for scheduled cancellations. Draft, voided, cancelled and archived excluded by default (status=all applies the same exclusion); status=any returns every status. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--activation-strategy <value>", `activation_strategy`).option("--activation-strategy.in <value>", `activation_strategy__in`).option("--status <value>", `
|
|
45846
46239
|
Subscription status filter.
|
|
45847
46240
|
|
|
45848
46241
|
- \`active\`, \`pending\`, \`paused\`, \`errored\`, \`cancelled\`, \`draft\`, \`voided\`, \`archived\`: match that status.
|
|
@@ -45851,7 +46244,7 @@ Subscription status filter.
|
|
|
45851
46244
|
- \`any\`: every status, no exclusion.
|
|
45852
46245
|
|
|
45853
46246
|
Use \`status__in\` with comma-separated values to combine statuses. When the filter is omitted, \`draft\`, \`voided\`, \`cancelled\` and \`archived\` subscriptions are excluded.
|
|
45854
|
-
`).option("--status.in <value>", `Comma-separated list of subscription statuses to include. Same values as \`status\`.`).option("--currency <value>", `currency`).option("--currency.not <value>", `currency__not`).option("--currency.
|
|
46247
|
+
`).option("--status.in <value>", `Comma-separated list of subscription statuses to include. Same values as \`status\`.`).option("--currency <value>", `currency`).option("--currency.not <value>", `currency__not`).option("--currency.equals <value>", `currency__equals`).option("--currency.contains <value>", `currency__contains`).option("--currency.starts-with <value>", `currency__startsWith`).option("--currency.end-with <value>", `currency__endWith`).option("--plan-id <value>", `plan_id`).option("--plan-id.not <value>", `plan_id__not`).option("--plan-id.equals <value>", `plan_id__equals`).option("--plan-id.contains <value>", `plan_id__contains`).option("--plan-id.starts-with <value>", `plan_id__startsWith`).option("--plan-id.end-with <value>", `plan_id__endWith`).option("--plan-id.is-null <value>", `plan_id__isNull`).option("--plan-id.is-not-null <value>", `plan_id__isNotNull`).option("--original-quote-id <value>", `original_quote_id`).option("--original-quote-id.not <value>", `original_quote_id__not`).option("--original-quote-id.equals <value>", `original_quote_id__equals`).option("--original-quote-id.contains <value>", `original_quote_id__contains`).option("--original-quote-id.starts-with <value>", `original_quote_id__startsWith`).option("--original-quote-id.end-with <value>", `original_quote_id__endWith`).option("--original-quote-id.is-null <value>", `original_quote_id__isNull`).option("--original-quote-id.is-not-null <value>", `original_quote_id__isNotNull`).option("--customer-id <value>", `customer_id`).option("--customer-id.not <value>", `customer_id__not`).option("--customer-id.equals <value>", `customer_id__equals`).option("--customer-id.contains <value>", `customer_id__contains`).option("--customer-id.starts-with <value>", `customer_id__startsWith`).option("--customer-id.end-with <value>", `customer_id__endWith`).option("--customer-id.is-null <value>", `customer_id__isNull`).option("--customer-id.is-not-null <value>", `customer_id__isNotNull`).option("--invoicing-entity-id <value>", `invoicing_entity_id`).option("--purchase-order <value>", `purchase_order`).option("--purchase-order.not <value>", `purchase_order__not`).option("--purchase-order.equals <value>", `purchase_order__equals`).option("--purchase-order.contains <value>", `purchase_order__contains`).option("--purchase-order.starts-with <value>", `purchase_order__startsWith`).option("--purchase-order.end-with <value>", `purchase_order__endWith`).option("--purchase-order.is-null <value>", `purchase_order__isNull`).option("--purchase-order.is-not-null <value>", `purchase_order__isNotNull`).option("--custom-properties <value>", `custom_properties`).option("--invoice-drafts <value>", `invoice_drafts`).option("--integration-entity-id <value>", `integration_entity_id`).option("--updated-at <value>", `updated_at`).option("--updated-at.not <value>", `updated_at__not`).option("--updated-at.equals <value>", `updated_at__equals`).option("--updated-at.lt <value>", `updated_at__lt`).option("--updated-at.lte <value>", `updated_at__lte`).option("--updated-at.gt <value>", `updated_at__gt`).option("--updated-at.gte <value>", `updated_at__gte`).option("--cancel-at <value>", `cancel_at`).option("--cancel-at.not <value>", `cancel_at__not`).option("--cancel-at.equals <value>", `cancel_at__equals`).option("--cancel-at.lt <value>", `cancel_at__lt`).option("--cancel-at.lte <value>", `cancel_at__lte`).option("--cancel-at.gt <value>", `cancel_at__gt`).option("--cancel-at.gte <value>", `cancel_at__gte`).option("--cancel-at.is-null <value>", `cancel_at__isNull`).option("--cancel-at.is-not-null <value>", `cancel_at__isNotNull`).option("--contract-start.gte <value>", `Return only subscriptions whose active contract starts on or after this date.`).option("--contract-start.lte <value>", `Return only subscriptions whose active contract starts on or before this date.`).option("--contract-end.gte <value>", `Return only subscriptions whose active contract ends on or after this date.`).option("--contract-end.lte <value>", `Return only subscriptions whose active contract ends on or before this date.`).option("--renew-automatically <value>", `Return only subscriptions whose active contract renews automatically (\`true\`) or not (\`false\`).`).addHelpText("after", `
|
|
45855
46248
|
Examples:
|
|
45856
46249
|
hyperline subscriptions list
|
|
45857
46250
|
hyperline subscriptions list --take <take> --activation-strategy <activation_strategy>`).action(async (opts) => {
|
|
@@ -45873,10 +46266,6 @@ Examples:
|
|
|
45873
46266
|
args.currency = opts.currency;
|
|
45874
46267
|
if (opts["currency.not"] !== void 0)
|
|
45875
46268
|
args.currency__not = opts["currency.not"];
|
|
45876
|
-
if (opts["currency.isNull"] !== void 0)
|
|
45877
|
-
args.currency__isNull = opts["currency.isNull"];
|
|
45878
|
-
if (opts["currency.isNotNull"] !== void 0)
|
|
45879
|
-
args.currency__isNotNull = opts["currency.isNotNull"];
|
|
45880
46269
|
if (opts["currency.equals"] !== void 0)
|
|
45881
46270
|
args.currency__equals = opts["currency.equals"];
|
|
45882
46271
|
if (opts["currency.contains"] !== void 0)
|
|
@@ -45889,10 +46278,6 @@ Examples:
|
|
|
45889
46278
|
args.plan_id = opts.planId;
|
|
45890
46279
|
if (opts["planId.not"] !== void 0)
|
|
45891
46280
|
args.plan_id__not = opts["planId.not"];
|
|
45892
|
-
if (opts["planId.isNull"] !== void 0)
|
|
45893
|
-
args.plan_id__isNull = opts["planId.isNull"];
|
|
45894
|
-
if (opts["planId.isNotNull"] !== void 0)
|
|
45895
|
-
args.plan_id__isNotNull = opts["planId.isNotNull"];
|
|
45896
46281
|
if (opts["planId.equals"] !== void 0)
|
|
45897
46282
|
args.plan_id__equals = opts["planId.equals"];
|
|
45898
46283
|
if (opts["planId.contains"] !== void 0)
|
|
@@ -45901,14 +46286,14 @@ Examples:
|
|
|
45901
46286
|
args.plan_id__startsWith = opts["planId.startsWith"];
|
|
45902
46287
|
if (opts["planId.endWith"] !== void 0)
|
|
45903
46288
|
args.plan_id__endWith = opts["planId.endWith"];
|
|
46289
|
+
if (opts["planId.isNull"] !== void 0)
|
|
46290
|
+
args.plan_id__isNull = opts["planId.isNull"];
|
|
46291
|
+
if (opts["planId.isNotNull"] !== void 0)
|
|
46292
|
+
args.plan_id__isNotNull = opts["planId.isNotNull"];
|
|
45904
46293
|
if (opts.originalQuoteId !== void 0)
|
|
45905
46294
|
args.original_quote_id = opts.originalQuoteId;
|
|
45906
46295
|
if (opts["originalQuoteId.not"] !== void 0)
|
|
45907
46296
|
args.original_quote_id__not = opts["originalQuoteId.not"];
|
|
45908
|
-
if (opts["originalQuoteId.isNull"] !== void 0)
|
|
45909
|
-
args.original_quote_id__isNull = opts["originalQuoteId.isNull"];
|
|
45910
|
-
if (opts["originalQuoteId.isNotNull"] !== void 0)
|
|
45911
|
-
args.original_quote_id__isNotNull = opts["originalQuoteId.isNotNull"];
|
|
45912
46297
|
if (opts["originalQuoteId.equals"] !== void 0)
|
|
45913
46298
|
args.original_quote_id__equals = opts["originalQuoteId.equals"];
|
|
45914
46299
|
if (opts["originalQuoteId.contains"] !== void 0)
|
|
@@ -45917,14 +46302,14 @@ Examples:
|
|
|
45917
46302
|
args.original_quote_id__startsWith = opts["originalQuoteId.startsWith"];
|
|
45918
46303
|
if (opts["originalQuoteId.endWith"] !== void 0)
|
|
45919
46304
|
args.original_quote_id__endWith = opts["originalQuoteId.endWith"];
|
|
46305
|
+
if (opts["originalQuoteId.isNull"] !== void 0)
|
|
46306
|
+
args.original_quote_id__isNull = opts["originalQuoteId.isNull"];
|
|
46307
|
+
if (opts["originalQuoteId.isNotNull"] !== void 0)
|
|
46308
|
+
args.original_quote_id__isNotNull = opts["originalQuoteId.isNotNull"];
|
|
45920
46309
|
if (opts.customerId !== void 0)
|
|
45921
46310
|
args.customer_id = opts.customerId;
|
|
45922
46311
|
if (opts["customerId.not"] !== void 0)
|
|
45923
46312
|
args.customer_id__not = opts["customerId.not"];
|
|
45924
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
45925
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
45926
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
45927
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
45928
46313
|
if (opts["customerId.equals"] !== void 0)
|
|
45929
46314
|
args.customer_id__equals = opts["customerId.equals"];
|
|
45930
46315
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -45933,16 +46318,16 @@ Examples:
|
|
|
45933
46318
|
args.customer_id__startsWith = opts["customerId.startsWith"];
|
|
45934
46319
|
if (opts["customerId.endWith"] !== void 0)
|
|
45935
46320
|
args.customer_id__endWith = opts["customerId.endWith"];
|
|
46321
|
+
if (opts["customerId.isNull"] !== void 0)
|
|
46322
|
+
args.customer_id__isNull = opts["customerId.isNull"];
|
|
46323
|
+
if (opts["customerId.isNotNull"] !== void 0)
|
|
46324
|
+
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
45936
46325
|
if (opts.invoicingEntityId !== void 0)
|
|
45937
46326
|
args.invoicing_entity_id = opts.invoicingEntityId;
|
|
45938
46327
|
if (opts.purchaseOrder !== void 0)
|
|
45939
46328
|
args.purchase_order = opts.purchaseOrder;
|
|
45940
46329
|
if (opts["purchaseOrder.not"] !== void 0)
|
|
45941
46330
|
args.purchase_order__not = opts["purchaseOrder.not"];
|
|
45942
|
-
if (opts["purchaseOrder.isNull"] !== void 0)
|
|
45943
|
-
args.purchase_order__isNull = opts["purchaseOrder.isNull"];
|
|
45944
|
-
if (opts["purchaseOrder.isNotNull"] !== void 0)
|
|
45945
|
-
args.purchase_order__isNotNull = opts["purchaseOrder.isNotNull"];
|
|
45946
46331
|
if (opts["purchaseOrder.equals"] !== void 0)
|
|
45947
46332
|
args.purchase_order__equals = opts["purchaseOrder.equals"];
|
|
45948
46333
|
if (opts["purchaseOrder.contains"] !== void 0)
|
|
@@ -45951,6 +46336,10 @@ Examples:
|
|
|
45951
46336
|
args.purchase_order__startsWith = opts["purchaseOrder.startsWith"];
|
|
45952
46337
|
if (opts["purchaseOrder.endWith"] !== void 0)
|
|
45953
46338
|
args.purchase_order__endWith = opts["purchaseOrder.endWith"];
|
|
46339
|
+
if (opts["purchaseOrder.isNull"] !== void 0)
|
|
46340
|
+
args.purchase_order__isNull = opts["purchaseOrder.isNull"];
|
|
46341
|
+
if (opts["purchaseOrder.isNotNull"] !== void 0)
|
|
46342
|
+
args.purchase_order__isNotNull = opts["purchaseOrder.isNotNull"];
|
|
45954
46343
|
if (opts.customProperties !== void 0)
|
|
45955
46344
|
args.custom_properties = opts.customProperties;
|
|
45956
46345
|
if (opts.invoiceDrafts !== void 0)
|
|
@@ -45961,10 +46350,6 @@ Examples:
|
|
|
45961
46350
|
args.updated_at = opts.updatedAt;
|
|
45962
46351
|
if (opts["updatedAt.not"] !== void 0)
|
|
45963
46352
|
args.updated_at__not = opts["updatedAt.not"];
|
|
45964
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
45965
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
45966
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
45967
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
45968
46353
|
if (opts["updatedAt.equals"] !== void 0)
|
|
45969
46354
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
45970
46355
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -45975,6 +46360,34 @@ Examples:
|
|
|
45975
46360
|
args.updated_at__gt = opts["updatedAt.gt"];
|
|
45976
46361
|
if (opts["updatedAt.gte"] !== void 0)
|
|
45977
46362
|
args.updated_at__gte = opts["updatedAt.gte"];
|
|
46363
|
+
if (opts.cancelAt !== void 0)
|
|
46364
|
+
args.cancel_at = opts.cancelAt;
|
|
46365
|
+
if (opts["cancelAt.not"] !== void 0)
|
|
46366
|
+
args.cancel_at__not = opts["cancelAt.not"];
|
|
46367
|
+
if (opts["cancelAt.equals"] !== void 0)
|
|
46368
|
+
args.cancel_at__equals = opts["cancelAt.equals"];
|
|
46369
|
+
if (opts["cancelAt.lt"] !== void 0)
|
|
46370
|
+
args.cancel_at__lt = opts["cancelAt.lt"];
|
|
46371
|
+
if (opts["cancelAt.lte"] !== void 0)
|
|
46372
|
+
args.cancel_at__lte = opts["cancelAt.lte"];
|
|
46373
|
+
if (opts["cancelAt.gt"] !== void 0)
|
|
46374
|
+
args.cancel_at__gt = opts["cancelAt.gt"];
|
|
46375
|
+
if (opts["cancelAt.gte"] !== void 0)
|
|
46376
|
+
args.cancel_at__gte = opts["cancelAt.gte"];
|
|
46377
|
+
if (opts["cancelAt.isNull"] !== void 0)
|
|
46378
|
+
args.cancel_at__isNull = opts["cancelAt.isNull"];
|
|
46379
|
+
if (opts["cancelAt.isNotNull"] !== void 0)
|
|
46380
|
+
args.cancel_at__isNotNull = opts["cancelAt.isNotNull"];
|
|
46381
|
+
if (opts["contractStart.gte"] !== void 0)
|
|
46382
|
+
args.contract_start__gte = opts["contractStart.gte"];
|
|
46383
|
+
if (opts["contractStart.lte"] !== void 0)
|
|
46384
|
+
args.contract_start__lte = opts["contractStart.lte"];
|
|
46385
|
+
if (opts["contractEnd.gte"] !== void 0)
|
|
46386
|
+
args.contract_end__gte = opts["contractEnd.gte"];
|
|
46387
|
+
if (opts["contractEnd.lte"] !== void 0)
|
|
46388
|
+
args.contract_end__lte = opts["contractEnd.lte"];
|
|
46389
|
+
if (opts.renewAutomatically !== void 0)
|
|
46390
|
+
args.renew_automatically = opts.renewAutomatically;
|
|
45978
46391
|
if (opts.take !== void 0)
|
|
45979
46392
|
args.take = Number(opts.take);
|
|
45980
46393
|
if (opts.skip !== void 0)
|
|
@@ -45992,57 +46405,67 @@ Examples:
|
|
|
45992
46405
|
"status__in",
|
|
45993
46406
|
"currency",
|
|
45994
46407
|
"currency__not",
|
|
45995
|
-
"currency__isNull",
|
|
45996
|
-
"currency__isNotNull",
|
|
45997
46408
|
"currency__equals",
|
|
45998
46409
|
"currency__contains",
|
|
45999
46410
|
"currency__startsWith",
|
|
46000
46411
|
"currency__endWith",
|
|
46001
46412
|
"plan_id",
|
|
46002
46413
|
"plan_id__not",
|
|
46003
|
-
"plan_id__isNull",
|
|
46004
|
-
"plan_id__isNotNull",
|
|
46005
46414
|
"plan_id__equals",
|
|
46006
46415
|
"plan_id__contains",
|
|
46007
46416
|
"plan_id__startsWith",
|
|
46008
46417
|
"plan_id__endWith",
|
|
46418
|
+
"plan_id__isNull",
|
|
46419
|
+
"plan_id__isNotNull",
|
|
46009
46420
|
"original_quote_id",
|
|
46010
46421
|
"original_quote_id__not",
|
|
46011
|
-
"original_quote_id__isNull",
|
|
46012
|
-
"original_quote_id__isNotNull",
|
|
46013
46422
|
"original_quote_id__equals",
|
|
46014
46423
|
"original_quote_id__contains",
|
|
46015
46424
|
"original_quote_id__startsWith",
|
|
46016
46425
|
"original_quote_id__endWith",
|
|
46426
|
+
"original_quote_id__isNull",
|
|
46427
|
+
"original_quote_id__isNotNull",
|
|
46017
46428
|
"customer_id",
|
|
46018
46429
|
"customer_id__not",
|
|
46019
|
-
"customer_id__isNull",
|
|
46020
|
-
"customer_id__isNotNull",
|
|
46021
46430
|
"customer_id__equals",
|
|
46022
46431
|
"customer_id__contains",
|
|
46023
46432
|
"customer_id__startsWith",
|
|
46024
46433
|
"customer_id__endWith",
|
|
46434
|
+
"customer_id__isNull",
|
|
46435
|
+
"customer_id__isNotNull",
|
|
46025
46436
|
"invoicing_entity_id",
|
|
46026
46437
|
"purchase_order",
|
|
46027
46438
|
"purchase_order__not",
|
|
46028
|
-
"purchase_order__isNull",
|
|
46029
|
-
"purchase_order__isNotNull",
|
|
46030
46439
|
"purchase_order__equals",
|
|
46031
46440
|
"purchase_order__contains",
|
|
46032
46441
|
"purchase_order__startsWith",
|
|
46033
46442
|
"purchase_order__endWith",
|
|
46443
|
+
"purchase_order__isNull",
|
|
46444
|
+
"purchase_order__isNotNull",
|
|
46034
46445
|
"custom_properties",
|
|
46035
46446
|
"invoice_drafts",
|
|
46036
46447
|
"integration_entity_id",
|
|
46037
46448
|
"updated_at",
|
|
46038
46449
|
"updated_at__not",
|
|
46039
|
-
"updated_at__isNull",
|
|
46040
|
-
"updated_at__isNotNull",
|
|
46041
46450
|
"updated_at__equals",
|
|
46042
46451
|
"updated_at__lt",
|
|
46043
46452
|
"updated_at__lte",
|
|
46044
46453
|
"updated_at__gt",
|
|
46045
|
-
"updated_at__gte"
|
|
46454
|
+
"updated_at__gte",
|
|
46455
|
+
"cancel_at",
|
|
46456
|
+
"cancel_at__not",
|
|
46457
|
+
"cancel_at__equals",
|
|
46458
|
+
"cancel_at__lt",
|
|
46459
|
+
"cancel_at__lte",
|
|
46460
|
+
"cancel_at__gt",
|
|
46461
|
+
"cancel_at__gte",
|
|
46462
|
+
"cancel_at__isNull",
|
|
46463
|
+
"cancel_at__isNotNull",
|
|
46464
|
+
"contract_start__gte",
|
|
46465
|
+
"contract_start__lte",
|
|
46466
|
+
"contract_end__gte",
|
|
46467
|
+
"contract_end__lte",
|
|
46468
|
+
"renew_automatically"
|
|
46046
46469
|
]
|
|
46047
46470
|
});
|
|
46048
46471
|
});
|
|
@@ -46324,7 +46747,7 @@ Examples:
|
|
|
46324
46747
|
// build/commands/generated/subscriptions-transitions.js
|
|
46325
46748
|
function registerSubscriptions_TransitionsCommands(parent) {
|
|
46326
46749
|
const resource = parent.command("subscriptions-transitions").description("Manage subscriptions > transitions");
|
|
46327
|
-
resource.command("list-subscription-transitions").description(`List subscription transitions (migrations from one subscription to another). Filterable and paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--status <value>", `status`).option("--status.in <value>", `status__in`).option("--source-subscription-id <value>", `source_subscription_id`).option("--source-subscription-id.not <value>", `source_subscription_id__not`).option("--source-subscription-id.
|
|
46750
|
+
resource.command("list-subscription-transitions").description(`List subscription transitions (migrations from one subscription to another). Filterable and paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--status <value>", `status`).option("--status.in <value>", `status__in`).option("--source-subscription-id <value>", `source_subscription_id`).option("--source-subscription-id.not <value>", `source_subscription_id__not`).option("--source-subscription-id.equals <value>", `source_subscription_id__equals`).option("--source-subscription-id.contains <value>", `source_subscription_id__contains`).option("--source-subscription-id.starts-with <value>", `source_subscription_id__startsWith`).option("--source-subscription-id.end-with <value>", `source_subscription_id__endWith`).option("--base-subscription-id <value>", `base_subscription_id`).option("--base-subscription-id.not <value>", `base_subscription_id__not`).option("--base-subscription-id.equals <value>", `base_subscription_id__equals`).option("--base-subscription-id.contains <value>", `base_subscription_id__contains`).option("--base-subscription-id.starts-with <value>", `base_subscription_id__startsWith`).option("--base-subscription-id.end-with <value>", `base_subscription_id__endWith`).option("--target-subscription-id <value>", `target_subscription_id`).option("--target-subscription-id.not <value>", `target_subscription_id__not`).option("--target-subscription-id.equals <value>", `target_subscription_id__equals`).option("--target-subscription-id.contains <value>", `target_subscription_id__contains`).option("--target-subscription-id.starts-with <value>", `target_subscription_id__startsWith`).option("--target-subscription-id.end-with <value>", `target_subscription_id__endWith`).option("--target-subscription-id.is-null <value>", `target_subscription_id__isNull`).option("--target-subscription-id.is-not-null <value>", `target_subscription_id__isNotNull`).option("--transition-date <value>", `transition_date`).option("--transition-date.not <value>", `transition_date__not`).option("--transition-date.equals <value>", `transition_date__equals`).option("--transition-date.lt <value>", `transition_date__lt`).option("--transition-date.lte <value>", `transition_date__lte`).option("--transition-date.gt <value>", `transition_date__gt`).option("--transition-date.gte <value>", `transition_date__gte`).option("--transition-date.is-null <value>", `transition_date__isNull`).option("--transition-date.is-not-null <value>", `transition_date__isNotNull`).option("--transitioned-at <value>", `transitioned_at`).option("--transitioned-at.not <value>", `transitioned_at__not`).option("--transitioned-at.equals <value>", `transitioned_at__equals`).option("--transitioned-at.lt <value>", `transitioned_at__lt`).option("--transitioned-at.lte <value>", `transitioned_at__lte`).option("--transitioned-at.gt <value>", `transitioned_at__gt`).option("--transitioned-at.gte <value>", `transitioned_at__gte`).option("--transitioned-at.is-null <value>", `transitioned_at__isNull`).option("--transitioned-at.is-not-null <value>", `transitioned_at__isNotNull`).addHelpText("after", `
|
|
46328
46751
|
Examples:
|
|
46329
46752
|
hyperline subscriptions-transitions list-subscription-transitions
|
|
46330
46753
|
hyperline subscriptions-transitions list-subscription-transitions --take <take> --status <status>`).action(async (opts) => {
|
|
@@ -46342,10 +46765,6 @@ Examples:
|
|
|
46342
46765
|
args.source_subscription_id = opts.sourceSubscriptionId;
|
|
46343
46766
|
if (opts["sourceSubscriptionId.not"] !== void 0)
|
|
46344
46767
|
args.source_subscription_id__not = opts["sourceSubscriptionId.not"];
|
|
46345
|
-
if (opts["sourceSubscriptionId.isNull"] !== void 0)
|
|
46346
|
-
args.source_subscription_id__isNull = opts["sourceSubscriptionId.isNull"];
|
|
46347
|
-
if (opts["sourceSubscriptionId.isNotNull"] !== void 0)
|
|
46348
|
-
args.source_subscription_id__isNotNull = opts["sourceSubscriptionId.isNotNull"];
|
|
46349
46768
|
if (opts["sourceSubscriptionId.equals"] !== void 0)
|
|
46350
46769
|
args.source_subscription_id__equals = opts["sourceSubscriptionId.equals"];
|
|
46351
46770
|
if (opts["sourceSubscriptionId.contains"] !== void 0)
|
|
@@ -46358,10 +46777,6 @@ Examples:
|
|
|
46358
46777
|
args.base_subscription_id = opts.baseSubscriptionId;
|
|
46359
46778
|
if (opts["baseSubscriptionId.not"] !== void 0)
|
|
46360
46779
|
args.base_subscription_id__not = opts["baseSubscriptionId.not"];
|
|
46361
|
-
if (opts["baseSubscriptionId.isNull"] !== void 0)
|
|
46362
|
-
args.base_subscription_id__isNull = opts["baseSubscriptionId.isNull"];
|
|
46363
|
-
if (opts["baseSubscriptionId.isNotNull"] !== void 0)
|
|
46364
|
-
args.base_subscription_id__isNotNull = opts["baseSubscriptionId.isNotNull"];
|
|
46365
46780
|
if (opts["baseSubscriptionId.equals"] !== void 0)
|
|
46366
46781
|
args.base_subscription_id__equals = opts["baseSubscriptionId.equals"];
|
|
46367
46782
|
if (opts["baseSubscriptionId.contains"] !== void 0)
|
|
@@ -46374,10 +46789,6 @@ Examples:
|
|
|
46374
46789
|
args.target_subscription_id = opts.targetSubscriptionId;
|
|
46375
46790
|
if (opts["targetSubscriptionId.not"] !== void 0)
|
|
46376
46791
|
args.target_subscription_id__not = opts["targetSubscriptionId.not"];
|
|
46377
|
-
if (opts["targetSubscriptionId.isNull"] !== void 0)
|
|
46378
|
-
args.target_subscription_id__isNull = opts["targetSubscriptionId.isNull"];
|
|
46379
|
-
if (opts["targetSubscriptionId.isNotNull"] !== void 0)
|
|
46380
|
-
args.target_subscription_id__isNotNull = opts["targetSubscriptionId.isNotNull"];
|
|
46381
46792
|
if (opts["targetSubscriptionId.equals"] !== void 0)
|
|
46382
46793
|
args.target_subscription_id__equals = opts["targetSubscriptionId.equals"];
|
|
46383
46794
|
if (opts["targetSubscriptionId.contains"] !== void 0)
|
|
@@ -46386,14 +46797,14 @@ Examples:
|
|
|
46386
46797
|
args.target_subscription_id__startsWith = opts["targetSubscriptionId.startsWith"];
|
|
46387
46798
|
if (opts["targetSubscriptionId.endWith"] !== void 0)
|
|
46388
46799
|
args.target_subscription_id__endWith = opts["targetSubscriptionId.endWith"];
|
|
46800
|
+
if (opts["targetSubscriptionId.isNull"] !== void 0)
|
|
46801
|
+
args.target_subscription_id__isNull = opts["targetSubscriptionId.isNull"];
|
|
46802
|
+
if (opts["targetSubscriptionId.isNotNull"] !== void 0)
|
|
46803
|
+
args.target_subscription_id__isNotNull = opts["targetSubscriptionId.isNotNull"];
|
|
46389
46804
|
if (opts.transitionDate !== void 0)
|
|
46390
|
-
args.transition_date = opts.transitionDate;
|
|
46391
|
-
if (opts["transitionDate.not"] !== void 0)
|
|
46392
|
-
args.transition_date__not = opts["transitionDate.not"];
|
|
46393
|
-
if (opts["transitionDate.isNull"] !== void 0)
|
|
46394
|
-
args.transition_date__isNull = opts["transitionDate.isNull"];
|
|
46395
|
-
if (opts["transitionDate.isNotNull"] !== void 0)
|
|
46396
|
-
args.transition_date__isNotNull = opts["transitionDate.isNotNull"];
|
|
46805
|
+
args.transition_date = opts.transitionDate;
|
|
46806
|
+
if (opts["transitionDate.not"] !== void 0)
|
|
46807
|
+
args.transition_date__not = opts["transitionDate.not"];
|
|
46397
46808
|
if (opts["transitionDate.equals"] !== void 0)
|
|
46398
46809
|
args.transition_date__equals = opts["transitionDate.equals"];
|
|
46399
46810
|
if (opts["transitionDate.lt"] !== void 0)
|
|
@@ -46404,14 +46815,14 @@ Examples:
|
|
|
46404
46815
|
args.transition_date__gt = opts["transitionDate.gt"];
|
|
46405
46816
|
if (opts["transitionDate.gte"] !== void 0)
|
|
46406
46817
|
args.transition_date__gte = opts["transitionDate.gte"];
|
|
46818
|
+
if (opts["transitionDate.isNull"] !== void 0)
|
|
46819
|
+
args.transition_date__isNull = opts["transitionDate.isNull"];
|
|
46820
|
+
if (opts["transitionDate.isNotNull"] !== void 0)
|
|
46821
|
+
args.transition_date__isNotNull = opts["transitionDate.isNotNull"];
|
|
46407
46822
|
if (opts.transitionedAt !== void 0)
|
|
46408
46823
|
args.transitioned_at = opts.transitionedAt;
|
|
46409
46824
|
if (opts["transitionedAt.not"] !== void 0)
|
|
46410
46825
|
args.transitioned_at__not = opts["transitionedAt.not"];
|
|
46411
|
-
if (opts["transitionedAt.isNull"] !== void 0)
|
|
46412
|
-
args.transitioned_at__isNull = opts["transitionedAt.isNull"];
|
|
46413
|
-
if (opts["transitionedAt.isNotNull"] !== void 0)
|
|
46414
|
-
args.transitioned_at__isNotNull = opts["transitionedAt.isNotNull"];
|
|
46415
46826
|
if (opts["transitionedAt.equals"] !== void 0)
|
|
46416
46827
|
args.transitioned_at__equals = opts["transitionedAt.equals"];
|
|
46417
46828
|
if (opts["transitionedAt.lt"] !== void 0)
|
|
@@ -46422,6 +46833,10 @@ Examples:
|
|
|
46422
46833
|
args.transitioned_at__gt = opts["transitionedAt.gt"];
|
|
46423
46834
|
if (opts["transitionedAt.gte"] !== void 0)
|
|
46424
46835
|
args.transitioned_at__gte = opts["transitionedAt.gte"];
|
|
46836
|
+
if (opts["transitionedAt.isNull"] !== void 0)
|
|
46837
|
+
args.transitioned_at__isNull = opts["transitionedAt.isNull"];
|
|
46838
|
+
if (opts["transitionedAt.isNotNull"] !== void 0)
|
|
46839
|
+
args.transitioned_at__isNotNull = opts["transitionedAt.isNotNull"];
|
|
46425
46840
|
if (opts.take !== void 0)
|
|
46426
46841
|
args.take = Number(opts.take);
|
|
46427
46842
|
if (opts.skip !== void 0)
|
|
@@ -46437,46 +46852,42 @@ Examples:
|
|
|
46437
46852
|
"status__in",
|
|
46438
46853
|
"source_subscription_id",
|
|
46439
46854
|
"source_subscription_id__not",
|
|
46440
|
-
"source_subscription_id__isNull",
|
|
46441
|
-
"source_subscription_id__isNotNull",
|
|
46442
46855
|
"source_subscription_id__equals",
|
|
46443
46856
|
"source_subscription_id__contains",
|
|
46444
46857
|
"source_subscription_id__startsWith",
|
|
46445
46858
|
"source_subscription_id__endWith",
|
|
46446
46859
|
"base_subscription_id",
|
|
46447
46860
|
"base_subscription_id__not",
|
|
46448
|
-
"base_subscription_id__isNull",
|
|
46449
|
-
"base_subscription_id__isNotNull",
|
|
46450
46861
|
"base_subscription_id__equals",
|
|
46451
46862
|
"base_subscription_id__contains",
|
|
46452
46863
|
"base_subscription_id__startsWith",
|
|
46453
46864
|
"base_subscription_id__endWith",
|
|
46454
46865
|
"target_subscription_id",
|
|
46455
46866
|
"target_subscription_id__not",
|
|
46456
|
-
"target_subscription_id__isNull",
|
|
46457
|
-
"target_subscription_id__isNotNull",
|
|
46458
46867
|
"target_subscription_id__equals",
|
|
46459
46868
|
"target_subscription_id__contains",
|
|
46460
46869
|
"target_subscription_id__startsWith",
|
|
46461
46870
|
"target_subscription_id__endWith",
|
|
46871
|
+
"target_subscription_id__isNull",
|
|
46872
|
+
"target_subscription_id__isNotNull",
|
|
46462
46873
|
"transition_date",
|
|
46463
46874
|
"transition_date__not",
|
|
46464
|
-
"transition_date__isNull",
|
|
46465
|
-
"transition_date__isNotNull",
|
|
46466
46875
|
"transition_date__equals",
|
|
46467
46876
|
"transition_date__lt",
|
|
46468
46877
|
"transition_date__lte",
|
|
46469
46878
|
"transition_date__gt",
|
|
46470
46879
|
"transition_date__gte",
|
|
46880
|
+
"transition_date__isNull",
|
|
46881
|
+
"transition_date__isNotNull",
|
|
46471
46882
|
"transitioned_at",
|
|
46472
46883
|
"transitioned_at__not",
|
|
46473
|
-
"transitioned_at__isNull",
|
|
46474
|
-
"transitioned_at__isNotNull",
|
|
46475
46884
|
"transitioned_at__equals",
|
|
46476
46885
|
"transitioned_at__lt",
|
|
46477
46886
|
"transitioned_at__lte",
|
|
46478
46887
|
"transitioned_at__gt",
|
|
46479
|
-
"transitioned_at__gte"
|
|
46888
|
+
"transitioned_at__gte",
|
|
46889
|
+
"transitioned_at__isNull",
|
|
46890
|
+
"transitioned_at__isNotNull"
|
|
46480
46891
|
]
|
|
46481
46892
|
});
|
|
46482
46893
|
});
|
|
@@ -46554,7 +46965,7 @@ Examples:
|
|
|
46554
46965
|
// build/commands/generated/taxes.js
|
|
46555
46966
|
function registerTaxesCommands(parent) {
|
|
46556
46967
|
const resource = parent.command("taxes").description("Manage taxes");
|
|
46557
|
-
resource.command("list-tax-rates").description(`List custom and default tax rate mappings with optional filters for id, name, description, and invoicing_entity_id. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--id <value>", `id`).option("--id.not <value>", `id__not`).option("--id.
|
|
46968
|
+
resource.command("list-tax-rates").description(`List custom and default tax rate mappings with optional filters for id, name, description, and invoicing_entity_id. Paginated with take/skip.`).option("--take <number>", `take`).option("--skip <number>", `skip`).option("--id <value>", `id`).option("--id.not <value>", `id__not`).option("--id.equals <value>", `id__equals`).option("--id.contains <value>", `id__contains`).option("--id.starts-with <value>", `id__startsWith`).option("--id.end-with <value>", `id__endWith`).option("--name <value>", `name`).option("--name.not <value>", `name__not`).option("--name.equals <value>", `name__equals`).option("--name.contains <value>", `name__contains`).option("--name.starts-with <value>", `name__startsWith`).option("--name.end-with <value>", `name__endWith`).option("--name.is-null <value>", `name__isNull`).option("--name.is-not-null <value>", `name__isNotNull`).option("--description <value>", `description`).option("--description.not <value>", `description__not`).option("--description.equals <value>", `description__equals`).option("--description.contains <value>", `description__contains`).option("--description.starts-with <value>", `description__startsWith`).option("--description.end-with <value>", `description__endWith`).option("--description.is-null <value>", `description__isNull`).option("--description.is-not-null <value>", `description__isNotNull`).option("--invoicing-entity-id <value>", `invoicing_entity_id`).option("--invoicing-entity-id.not <value>", `invoicing_entity_id__not`).option("--invoicing-entity-id.equals <value>", `invoicing_entity_id__equals`).option("--invoicing-entity-id.contains <value>", `invoicing_entity_id__contains`).option("--invoicing-entity-id.starts-with <value>", `invoicing_entity_id__startsWith`).option("--invoicing-entity-id.end-with <value>", `invoicing_entity_id__endWith`).addHelpText("after", `
|
|
46558
46969
|
Examples:
|
|
46559
46970
|
hyperline taxes list-tax-rates
|
|
46560
46971
|
hyperline taxes list-tax-rates --take <take> --id <id>`).action(async (opts) => {
|
|
@@ -46568,10 +46979,6 @@ Examples:
|
|
|
46568
46979
|
args.id = opts.id;
|
|
46569
46980
|
if (opts["id.not"] !== void 0)
|
|
46570
46981
|
args.id__not = opts["id.not"];
|
|
46571
|
-
if (opts["id.isNull"] !== void 0)
|
|
46572
|
-
args.id__isNull = opts["id.isNull"];
|
|
46573
|
-
if (opts["id.isNotNull"] !== void 0)
|
|
46574
|
-
args.id__isNotNull = opts["id.isNotNull"];
|
|
46575
46982
|
if (opts["id.equals"] !== void 0)
|
|
46576
46983
|
args.id__equals = opts["id.equals"];
|
|
46577
46984
|
if (opts["id.contains"] !== void 0)
|
|
@@ -46584,10 +46991,6 @@ Examples:
|
|
|
46584
46991
|
args.name = opts.name;
|
|
46585
46992
|
if (opts["name.not"] !== void 0)
|
|
46586
46993
|
args.name__not = opts["name.not"];
|
|
46587
|
-
if (opts["name.isNull"] !== void 0)
|
|
46588
|
-
args.name__isNull = opts["name.isNull"];
|
|
46589
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
46590
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
46591
46994
|
if (opts["name.equals"] !== void 0)
|
|
46592
46995
|
args.name__equals = opts["name.equals"];
|
|
46593
46996
|
if (opts["name.contains"] !== void 0)
|
|
@@ -46596,14 +46999,14 @@ Examples:
|
|
|
46596
46999
|
args.name__startsWith = opts["name.startsWith"];
|
|
46597
47000
|
if (opts["name.endWith"] !== void 0)
|
|
46598
47001
|
args.name__endWith = opts["name.endWith"];
|
|
47002
|
+
if (opts["name.isNull"] !== void 0)
|
|
47003
|
+
args.name__isNull = opts["name.isNull"];
|
|
47004
|
+
if (opts["name.isNotNull"] !== void 0)
|
|
47005
|
+
args.name__isNotNull = opts["name.isNotNull"];
|
|
46599
47006
|
if (opts.description !== void 0)
|
|
46600
47007
|
args.description = opts.description;
|
|
46601
47008
|
if (opts["description.not"] !== void 0)
|
|
46602
47009
|
args.description__not = opts["description.not"];
|
|
46603
|
-
if (opts["description.isNull"] !== void 0)
|
|
46604
|
-
args.description__isNull = opts["description.isNull"];
|
|
46605
|
-
if (opts["description.isNotNull"] !== void 0)
|
|
46606
|
-
args.description__isNotNull = opts["description.isNotNull"];
|
|
46607
47010
|
if (opts["description.equals"] !== void 0)
|
|
46608
47011
|
args.description__equals = opts["description.equals"];
|
|
46609
47012
|
if (opts["description.contains"] !== void 0)
|
|
@@ -46612,14 +47015,14 @@ Examples:
|
|
|
46612
47015
|
args.description__startsWith = opts["description.startsWith"];
|
|
46613
47016
|
if (opts["description.endWith"] !== void 0)
|
|
46614
47017
|
args.description__endWith = opts["description.endWith"];
|
|
47018
|
+
if (opts["description.isNull"] !== void 0)
|
|
47019
|
+
args.description__isNull = opts["description.isNull"];
|
|
47020
|
+
if (opts["description.isNotNull"] !== void 0)
|
|
47021
|
+
args.description__isNotNull = opts["description.isNotNull"];
|
|
46615
47022
|
if (opts.invoicingEntityId !== void 0)
|
|
46616
47023
|
args.invoicing_entity_id = opts.invoicingEntityId;
|
|
46617
47024
|
if (opts["invoicingEntityId.not"] !== void 0)
|
|
46618
47025
|
args.invoicing_entity_id__not = opts["invoicingEntityId.not"];
|
|
46619
|
-
if (opts["invoicingEntityId.isNull"] !== void 0)
|
|
46620
|
-
args.invoicing_entity_id__isNull = opts["invoicingEntityId.isNull"];
|
|
46621
|
-
if (opts["invoicingEntityId.isNotNull"] !== void 0)
|
|
46622
|
-
args.invoicing_entity_id__isNotNull = opts["invoicingEntityId.isNotNull"];
|
|
46623
47026
|
if (opts["invoicingEntityId.equals"] !== void 0)
|
|
46624
47027
|
args.invoicing_entity_id__equals = opts["invoicingEntityId.equals"];
|
|
46625
47028
|
if (opts["invoicingEntityId.contains"] !== void 0)
|
|
@@ -46641,32 +47044,28 @@ Examples:
|
|
|
46641
47044
|
"skip",
|
|
46642
47045
|
"id",
|
|
46643
47046
|
"id__not",
|
|
46644
|
-
"id__isNull",
|
|
46645
|
-
"id__isNotNull",
|
|
46646
47047
|
"id__equals",
|
|
46647
47048
|
"id__contains",
|
|
46648
47049
|
"id__startsWith",
|
|
46649
47050
|
"id__endWith",
|
|
46650
47051
|
"name",
|
|
46651
47052
|
"name__not",
|
|
46652
|
-
"name__isNull",
|
|
46653
|
-
"name__isNotNull",
|
|
46654
47053
|
"name__equals",
|
|
46655
47054
|
"name__contains",
|
|
46656
47055
|
"name__startsWith",
|
|
46657
47056
|
"name__endWith",
|
|
47057
|
+
"name__isNull",
|
|
47058
|
+
"name__isNotNull",
|
|
46658
47059
|
"description",
|
|
46659
47060
|
"description__not",
|
|
46660
|
-
"description__isNull",
|
|
46661
|
-
"description__isNotNull",
|
|
46662
47061
|
"description__equals",
|
|
46663
47062
|
"description__contains",
|
|
46664
47063
|
"description__startsWith",
|
|
46665
47064
|
"description__endWith",
|
|
47065
|
+
"description__isNull",
|
|
47066
|
+
"description__isNotNull",
|
|
46666
47067
|
"invoicing_entity_id",
|
|
46667
47068
|
"invoicing_entity_id__not",
|
|
46668
|
-
"invoicing_entity_id__isNull",
|
|
46669
|
-
"invoicing_entity_id__isNotNull",
|
|
46670
47069
|
"invoicing_entity_id__equals",
|
|
46671
47070
|
"invoicing_entity_id__contains",
|
|
46672
47071
|
"invoicing_entity_id__startsWith",
|
|
@@ -47246,10 +47645,12 @@ function registerAllCommands(program2) {
|
|
|
47246
47645
|
registerAi_CostsCommands(program2);
|
|
47247
47646
|
registerAnalyticsCommands(program2);
|
|
47248
47647
|
registerBank_AccountsCommands(program2);
|
|
47648
|
+
registerCatalogCommands(program2);
|
|
47249
47649
|
registerCompaniesCommands(program2);
|
|
47250
47650
|
registerCouponsCommands(program2);
|
|
47251
47651
|
registerCoupons_Promotion_CodesCommands(program2);
|
|
47252
47652
|
registerCustomers_CreditsCommands(program2);
|
|
47653
|
+
registerCustomers_FeaturesCommands(program2);
|
|
47253
47654
|
registerCustomers_Payment_MethodsCommands(program2);
|
|
47254
47655
|
registerCustomers_AddressCommands(program2);
|
|
47255
47656
|
registerCustomers_ShippingCommands(program2);
|
|
@@ -47258,12 +47659,14 @@ function registerAllCommands(program2) {
|
|
|
47258
47659
|
registerOrganisationsCommands(program2);
|
|
47259
47660
|
registerCustomers_SegmentsCommands(program2);
|
|
47260
47661
|
registerExportsCommands(program2);
|
|
47662
|
+
registerFeaturesCommands(program2);
|
|
47261
47663
|
registerFilesCommands(program2);
|
|
47262
47664
|
registerInvoicesCommands(program2);
|
|
47263
47665
|
registerInvoices_TransactionsCommands(program2);
|
|
47264
47666
|
registerInvoicing_EntitiesCommands(program2);
|
|
47265
|
-
|
|
47667
|
+
registerAi_MonitoringCommands(program2);
|
|
47266
47668
|
registerPaymentsCommands(program2);
|
|
47669
|
+
registerProducts_FeaturesCommands(program2);
|
|
47267
47670
|
registerProductsCommands(program2);
|
|
47268
47671
|
registerPrice_ConfigurationsCommands(program2);
|
|
47269
47672
|
registerQuotesCommands(program2);
|
|
@@ -63297,6 +63700,8 @@ var de = {
|
|
|
63297
63700
|
"einvoicing.paymentFromWallet": "Zahlung aus Guthaben",
|
|
63298
63701
|
"einvoicing.paymentProcessed": "Zahlung verarbeitet",
|
|
63299
63702
|
"einvoicing.paymentReceived": "Zahlung erhalten",
|
|
63703
|
+
"invoices.minimumFee.adjustmentName": "Anpassung der Mindestgeb\xFChr",
|
|
63704
|
+
"invoices.minimumFee.name": "Mindestgeb\xFChr",
|
|
63300
63705
|
"invoices.outstandingProduct.description": "Unbezahlter Betrag der Rechnung{{invoiceNumber}} vom {{date}}",
|
|
63301
63706
|
"invoices.outstandingProduct.descriptionPeriod": "Unbezahlter Betrag der Rechnung{{invoiceNumber}} vom {{periodStart}} bis {{periodEnd}}",
|
|
63302
63707
|
"invoices.outstandingProduct.name": "Offener Saldo",
|
|
@@ -63322,7 +63727,25 @@ var de = {
|
|
|
63322
63727
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Diese Position wurde f\xFCr den anteiligen Zeitraum in Rechnung gestellt",
|
|
63323
63728
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Betrag von {{amount}} f\xFCr den anteiligen Zeitraum nicht in Rechnung gestellt",
|
|
63324
63729
|
"subscriptions.updates.updatePrices": "Preise f\xFCr {{productName}} aktualisieren",
|
|
63325
|
-
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 abgelaufenes Guthaben"
|
|
63730
|
+
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 abgelaufenes Guthaben",
|
|
63731
|
+
"quotes.blockers.quote_not_draft": "Setzen Sie das Angebot auf Entwurf zur\xFCck, bevor Sie seine Konfigurationen \xE4ndern",
|
|
63732
|
+
"quotes.blockers.quote_expiration_date_missing": "Das Angebot muss ein Ablaufdatum haben, um zur Genehmigung gesendet zu werden",
|
|
63733
|
+
"quotes.blockers.quote_configuration_missing": "F\xFCgen Sie mindestens eine Konfiguration hinzu, bevor Sie das Angebot einreichen",
|
|
63734
|
+
"quotes.blockers.quote_configuration_subscription_update_customer": "Abonnement\xE4nderungen m\xFCssen den Kunden des Angebots verwenden",
|
|
63735
|
+
"quotes.blockers.quote_configuration_multiple_configurations_disabled": "Aktivieren Sie mehrere Konfigurationen, bevor Sie einen untergeordneten Kunden zuweisen",
|
|
63736
|
+
"quotes.blockers.quote_configuration_customer_not_child": "W\xE4hlen Sie einen untergeordneten Kunden des Angebotskunden",
|
|
63737
|
+
"quotes.blockers.quote_configuration_type_mismatch": "Die verkn\xFCpfte Konfiguration entspricht nicht dem Konfigurationstyp",
|
|
63738
|
+
"quotes.blockers.quote_configuration_not_draft": "W\xE4hlen Sie eine Konfiguration im Entwurf",
|
|
63739
|
+
"quotes.blockers.quote_configuration_customer_mismatch": "Die Konfiguration muss zum Kunden der Konfiguration geh\xF6ren",
|
|
63740
|
+
"quotes.blockers.quote_configuration_currency_mismatch": "Die Konfiguration muss die W\xE4hrung des Angebots verwenden",
|
|
63741
|
+
"quotes.blockers.quote_configuration_invoicing_entity_mismatch": "Die Rechnung muss die Rechnungsstellungseinheit des Angebots verwenden",
|
|
63742
|
+
"quotes.blockers.quote_configuration_already_linked": "Die Konfiguration ist bereits mit einer Angebotskonfiguration verkn\xFCpft",
|
|
63743
|
+
"quotes.blockers.quote_configuration_not_subscription_update": "W\xE4hlen Sie eine Konfiguration f\xFCr eine Abonnement\xE4nderung",
|
|
63744
|
+
"quotes.blockers.quote_configuration_not_new_subscription": "W\xE4hlen Sie eine Konfiguration f\xFCr ein neues Abonnement",
|
|
63745
|
+
"quotes.blockers.quote_configuration_duplicate_subscription_update": "Ein Abonnement kann in einem Angebot nur einmal ge\xE4ndert werden",
|
|
63746
|
+
"quotes.blockers.quote_draft_invoice_missing": "Das Angebot muss eine Rechnung im Entwurf haben, um abgeschlossen zu werden",
|
|
63747
|
+
"quotes.blockers.quote_draft_subscription_missing": "Das Angebot muss ein Abonnement im Entwurf haben, um abgeschlossen zu werden",
|
|
63748
|
+
"quotes.blockers.quote_expiry_after_transition_date": "Das Ablaufdatum des Angebots muss sp\xE4testens am Ende des aktuellen Abrechnungszeitraums liegen, oder am geplanten \xDCbergangsdatum, wenn dieses sp\xE4ter liegt"
|
|
63326
63749
|
};
|
|
63327
63750
|
|
|
63328
63751
|
// ../hyperline-i18n/build/locales/en.js
|
|
@@ -63330,6 +63753,8 @@ var en = {
|
|
|
63330
63753
|
"creditNotes.refundChargeName": "Refund for invoice",
|
|
63331
63754
|
"credits.bundleOf": "{{productName}} - Pack of {{creditCount}} credits",
|
|
63332
63755
|
"credits.unitsOf": "{{productName}} - {{creditCount}} credits",
|
|
63756
|
+
"invoices.minimumFee.adjustmentName": "Minimum fee adjustment",
|
|
63757
|
+
"invoices.minimumFee.name": "Minimum fee",
|
|
63333
63758
|
"invoices.outstandingProduct.description": "Unpaid amount from the invoice{{invoiceNumber}} emitted on {{date}}",
|
|
63334
63759
|
"invoices.outstandingProduct.descriptionPeriod": "Unpaid amount from the invoice{{invoiceNumber}} from {{periodStart}} to {{periodEnd}}",
|
|
63335
63760
|
"invoices.outstandingProduct.name": "Outstanding balance",
|
|
@@ -63370,7 +63795,25 @@ var en = {
|
|
|
63370
63795
|
"accounting.revrec.closedPeriodFallbackNote": " (posted to next open period \u2014 target accounting period closed; original date {{originalDate}})",
|
|
63371
63796
|
"einvoicing.paymentProcessed": "Payment processed",
|
|
63372
63797
|
"einvoicing.paymentReceived": "Payment received",
|
|
63373
|
-
"einvoicing.paymentFromWallet": "Payment from wallet"
|
|
63798
|
+
"einvoicing.paymentFromWallet": "Payment from wallet",
|
|
63799
|
+
"quotes.blockers.quote_not_draft": "Redraft the quote before changing its configurations",
|
|
63800
|
+
"quotes.blockers.quote_expiration_date_missing": "Quote must have an expiration date to be sent for approval",
|
|
63801
|
+
"quotes.blockers.quote_configuration_missing": "Add at least one configuration before submitting the quote",
|
|
63802
|
+
"quotes.blockers.quote_configuration_subscription_update_customer": "Subscription updates must use the quote customer",
|
|
63803
|
+
"quotes.blockers.quote_configuration_multiple_configurations_disabled": "Enable multiple configurations before assigning a child customer",
|
|
63804
|
+
"quotes.blockers.quote_configuration_customer_not_child": "Select a child customer of the quote customer",
|
|
63805
|
+
"quotes.blockers.quote_configuration_type_mismatch": "The linked configuration does not match the configuration type",
|
|
63806
|
+
"quotes.blockers.quote_configuration_not_draft": "Select a draft configuration",
|
|
63807
|
+
"quotes.blockers.quote_configuration_customer_mismatch": "The configuration must belong to the configuration customer",
|
|
63808
|
+
"quotes.blockers.quote_configuration_currency_mismatch": "The configuration must use the quote currency",
|
|
63809
|
+
"quotes.blockers.quote_configuration_invoicing_entity_mismatch": "The invoice must use the quote invoicing entity",
|
|
63810
|
+
"quotes.blockers.quote_configuration_already_linked": "The configuration is already linked to a quote configuration",
|
|
63811
|
+
"quotes.blockers.quote_configuration_not_subscription_update": "Select a subscription update configuration",
|
|
63812
|
+
"quotes.blockers.quote_configuration_not_new_subscription": "Select a new subscription configuration",
|
|
63813
|
+
"quotes.blockers.quote_configuration_duplicate_subscription_update": "A subscription can only be updated once in a quote",
|
|
63814
|
+
"quotes.blockers.quote_draft_invoice_missing": "Quote must have a draft invoice to be finalized",
|
|
63815
|
+
"quotes.blockers.quote_draft_subscription_missing": "Quote must have a draft subscription to be finalized",
|
|
63816
|
+
"quotes.blockers.quote_expiry_after_transition_date": "The quote expiration date must be on or before the end of the current billing period, or the scheduled transition date when it falls later"
|
|
63374
63817
|
};
|
|
63375
63818
|
|
|
63376
63819
|
// ../hyperline-i18n/build/locales/es.js
|
|
@@ -63393,6 +63836,8 @@ var es = {
|
|
|
63393
63836
|
"einvoicing.paymentFromWallet": "Pago desde el monedero",
|
|
63394
63837
|
"einvoicing.paymentProcessed": "Pago procesado",
|
|
63395
63838
|
"einvoicing.paymentReceived": "Pago recibido",
|
|
63839
|
+
"invoices.minimumFee.adjustmentName": "Ajuste del cargo m\xEDnimo",
|
|
63840
|
+
"invoices.minimumFee.name": "Cargo m\xEDnimo",
|
|
63396
63841
|
"invoices.outstandingProduct.description": "Monto pendiente de la factura{{invoiceNumber}} emitida el {{date}}",
|
|
63397
63842
|
"invoices.outstandingProduct.descriptionPeriod": "Monto pendiente de la factura{{invoiceNumber}} del {{periodStart}} al {{periodEnd}}",
|
|
63398
63843
|
"invoices.outstandingProduct.name": "Saldo pendiente",
|
|
@@ -63418,7 +63863,25 @@ var es = {
|
|
|
63418
63863
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Esta l\xEDnea ha sido facturada para el per\xEDodo prorrateado",
|
|
63419
63864
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Importe de {{amount}} no facturado para el per\xEDodo prorrateado",
|
|
63420
63865
|
"subscriptions.updates.updatePrices": "Actualizar precios para {{productName}}",
|
|
63421
|
-
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 saldo caducado"
|
|
63866
|
+
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 saldo caducado",
|
|
63867
|
+
"quotes.blockers.quote_not_draft": "Vuelve a poner el presupuesto en borrador antes de cambiar sus configuraciones",
|
|
63868
|
+
"quotes.blockers.quote_expiration_date_missing": "El presupuesto debe tener una fecha de vencimiento para enviarse a aprobaci\xF3n",
|
|
63869
|
+
"quotes.blockers.quote_configuration_missing": "A\xF1ade al menos una configuraci\xF3n antes de enviar el presupuesto",
|
|
63870
|
+
"quotes.blockers.quote_configuration_subscription_update_customer": "Las actualizaciones de suscripci\xF3n deben usar el cliente del presupuesto",
|
|
63871
|
+
"quotes.blockers.quote_configuration_multiple_configurations_disabled": "Activa las configuraciones m\xFAltiples antes de asignar un cliente hijo",
|
|
63872
|
+
"quotes.blockers.quote_configuration_customer_not_child": "Selecciona un cliente hijo del cliente del presupuesto",
|
|
63873
|
+
"quotes.blockers.quote_configuration_type_mismatch": "La configuraci\xF3n vinculada no coincide con el tipo de configuraci\xF3n",
|
|
63874
|
+
"quotes.blockers.quote_configuration_not_draft": "Selecciona una configuraci\xF3n en borrador",
|
|
63875
|
+
"quotes.blockers.quote_configuration_customer_mismatch": "La configuraci\xF3n debe pertenecer al cliente de la configuraci\xF3n",
|
|
63876
|
+
"quotes.blockers.quote_configuration_currency_mismatch": "La configuraci\xF3n debe usar la moneda del presupuesto",
|
|
63877
|
+
"quotes.blockers.quote_configuration_invoicing_entity_mismatch": "La factura debe usar la entidad de facturaci\xF3n del presupuesto",
|
|
63878
|
+
"quotes.blockers.quote_configuration_already_linked": "La configuraci\xF3n ya est\xE1 vinculada a una configuraci\xF3n de presupuesto",
|
|
63879
|
+
"quotes.blockers.quote_configuration_not_subscription_update": "Selecciona una configuraci\xF3n de actualizaci\xF3n de suscripci\xF3n",
|
|
63880
|
+
"quotes.blockers.quote_configuration_not_new_subscription": "Selecciona una configuraci\xF3n de nueva suscripci\xF3n",
|
|
63881
|
+
"quotes.blockers.quote_configuration_duplicate_subscription_update": "Una suscripci\xF3n solo puede actualizarse una vez en un presupuesto",
|
|
63882
|
+
"quotes.blockers.quote_draft_invoice_missing": "El presupuesto debe tener una factura en borrador para finalizarse",
|
|
63883
|
+
"quotes.blockers.quote_draft_subscription_missing": "El presupuesto debe tener una suscripci\xF3n en borrador para finalizarse",
|
|
63884
|
+
"quotes.blockers.quote_expiry_after_transition_date": "La fecha de vencimiento del presupuesto debe ser, como m\xE1ximo, el final del periodo de facturaci\xF3n actual, o la fecha de transici\xF3n programada si es posterior"
|
|
63422
63885
|
};
|
|
63423
63886
|
|
|
63424
63887
|
// ../hyperline-i18n/build/locales/fr.js
|
|
@@ -63441,6 +63904,8 @@ var fr = {
|
|
|
63441
63904
|
"einvoicing.paymentFromWallet": "Paiement depuis le portefeuille",
|
|
63442
63905
|
"einvoicing.paymentProcessed": "Paiement effectu\xE9",
|
|
63443
63906
|
"einvoicing.paymentReceived": "Paiement re\xE7u",
|
|
63907
|
+
"invoices.minimumFee.adjustmentName": "Ajustement des frais minimums",
|
|
63908
|
+
"invoices.minimumFee.name": "Frais minimums",
|
|
63444
63909
|
"invoices.outstandingProduct.description": "Montant impay\xE9 de la facture{{invoiceNumber}} \xE9mise le {{date}}",
|
|
63445
63910
|
"invoices.outstandingProduct.descriptionPeriod": "Montant impay\xE9 de la facture{{invoiceNumber}} du {{periodStart}} au {{periodEnd}}",
|
|
63446
63911
|
"invoices.outstandingProduct.name": "Solde impay\xE9",
|
|
@@ -63466,7 +63931,25 @@ var fr = {
|
|
|
63466
63931
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Cette ligne a \xE9t\xE9 factur\xE9e pour la p\xE9riode proratis\xE9e",
|
|
63467
63932
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Montant de {{amount}} non factur\xE9 pour la p\xE9riode proratis\xE9e",
|
|
63468
63933
|
"subscriptions.updates.updatePrices": "Mise \xE0 jour des prix pour {{productName}}",
|
|
63469
|
-
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 solde expir\xE9"
|
|
63934
|
+
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 solde expir\xE9",
|
|
63935
|
+
"quotes.blockers.quote_not_draft": "Repassez le devis en brouillon avant de modifier ses configurations",
|
|
63936
|
+
"quotes.blockers.quote_expiration_date_missing": "Le devis doit avoir une date d'expiration pour \xEAtre envoy\xE9 en validation",
|
|
63937
|
+
"quotes.blockers.quote_configuration_missing": "Ajoutez au moins une configuration avant de soumettre le devis",
|
|
63938
|
+
"quotes.blockers.quote_configuration_subscription_update_customer": "Les mises \xE0 jour d'abonnement doivent utiliser le client du devis",
|
|
63939
|
+
"quotes.blockers.quote_configuration_multiple_configurations_disabled": "Activez les configurations multiples avant d'assigner un client enfant",
|
|
63940
|
+
"quotes.blockers.quote_configuration_customer_not_child": "S\xE9lectionnez un client enfant du client du devis",
|
|
63941
|
+
"quotes.blockers.quote_configuration_type_mismatch": "La configuration li\xE9e ne correspond pas au type de configuration",
|
|
63942
|
+
"quotes.blockers.quote_configuration_not_draft": "S\xE9lectionnez une configuration en brouillon",
|
|
63943
|
+
"quotes.blockers.quote_configuration_customer_mismatch": "La configuration doit appartenir au client de la configuration",
|
|
63944
|
+
"quotes.blockers.quote_configuration_currency_mismatch": "La configuration doit utiliser la devise du devis",
|
|
63945
|
+
"quotes.blockers.quote_configuration_invoicing_entity_mismatch": "La facture doit utiliser l'entit\xE9 de facturation du devis",
|
|
63946
|
+
"quotes.blockers.quote_configuration_already_linked": "La configuration est d\xE9j\xE0 li\xE9e \xE0 une configuration de devis",
|
|
63947
|
+
"quotes.blockers.quote_configuration_not_subscription_update": "S\xE9lectionnez une configuration de mise \xE0 jour d'abonnement",
|
|
63948
|
+
"quotes.blockers.quote_configuration_not_new_subscription": "S\xE9lectionnez une configuration de nouvel abonnement",
|
|
63949
|
+
"quotes.blockers.quote_configuration_duplicate_subscription_update": "Un abonnement ne peut \xEAtre mis \xE0 jour qu'une seule fois dans un devis",
|
|
63950
|
+
"quotes.blockers.quote_draft_invoice_missing": "Le devis doit avoir une facture en brouillon pour \xEAtre finalis\xE9",
|
|
63951
|
+
"quotes.blockers.quote_draft_subscription_missing": "Le devis doit avoir un abonnement en brouillon pour \xEAtre finalis\xE9",
|
|
63952
|
+
"quotes.blockers.quote_expiry_after_transition_date": "La date d'expiration du devis doit \xEAtre au plus tard la fin de la p\xE9riode de facturation en cours, ou la date de transition planifi\xE9e si elle est post\xE9rieure"
|
|
63470
63953
|
};
|
|
63471
63954
|
|
|
63472
63955
|
// ../hyperline-i18n/build/locales/it.js
|
|
@@ -63489,6 +63972,8 @@ var it = {
|
|
|
63489
63972
|
"einvoicing.paymentFromWallet": "Pagamento dal portafoglio",
|
|
63490
63973
|
"einvoicing.paymentProcessed": "Pagamento elaborato",
|
|
63491
63974
|
"einvoicing.paymentReceived": "Pagamento ricevuto",
|
|
63975
|
+
"invoices.minimumFee.adjustmentName": "Adeguamento all\u2019importo minimo",
|
|
63976
|
+
"invoices.minimumFee.name": "Importo minimo",
|
|
63492
63977
|
"invoices.outstandingProduct.description": "Importo insoluto della fattura{{invoiceNumber}} emessa il {{date}}",
|
|
63493
63978
|
"invoices.outstandingProduct.descriptionPeriod": "Importo insoluto della fattura{{invoiceNumber}} dal {{periodStart}} al {{periodEnd}}",
|
|
63494
63979
|
"invoices.outstandingProduct.name": "Saldo insoluto",
|
|
@@ -63514,7 +63999,25 @@ var it = {
|
|
|
63514
63999
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Questa voce \xE8 stata fatturata per il periodo proporzionato",
|
|
63515
64000
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Importo di {{amount}} non fatturato per il periodo proporzionato",
|
|
63516
64001
|
"subscriptions.updates.updatePrices": "Aggiorna prezzi per {{productName}}",
|
|
63517
|
-
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 saldo scaduto"
|
|
64002
|
+
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 saldo scaduto",
|
|
64003
|
+
"quotes.blockers.quote_not_draft": "Riporta il preventivo in bozza prima di modificarne le configurazioni",
|
|
64004
|
+
"quotes.blockers.quote_expiration_date_missing": "Il preventivo deve avere una data di scadenza per essere inviato per approvazione",
|
|
64005
|
+
"quotes.blockers.quote_configuration_missing": "Aggiungi almeno una configurazione prima di inviare il preventivo",
|
|
64006
|
+
"quotes.blockers.quote_configuration_subscription_update_customer": "Gli aggiornamenti dell'abbonamento devono usare il cliente del preventivo",
|
|
64007
|
+
"quotes.blockers.quote_configuration_multiple_configurations_disabled": "Attiva le configurazioni multiple prima di assegnare un cliente figlio",
|
|
64008
|
+
"quotes.blockers.quote_configuration_customer_not_child": "Seleziona un cliente figlio del cliente del preventivo",
|
|
64009
|
+
"quotes.blockers.quote_configuration_type_mismatch": "La configurazione collegata non corrisponde al tipo di configurazione",
|
|
64010
|
+
"quotes.blockers.quote_configuration_not_draft": "Seleziona una configurazione in bozza",
|
|
64011
|
+
"quotes.blockers.quote_configuration_customer_mismatch": "La configurazione deve appartenere al cliente della configurazione",
|
|
64012
|
+
"quotes.blockers.quote_configuration_currency_mismatch": "La configurazione deve usare la valuta del preventivo",
|
|
64013
|
+
"quotes.blockers.quote_configuration_invoicing_entity_mismatch": "La fattura deve usare l'entit\xE0 di fatturazione del preventivo",
|
|
64014
|
+
"quotes.blockers.quote_configuration_already_linked": "La configurazione \xE8 gi\xE0 collegata a una configurazione del preventivo",
|
|
64015
|
+
"quotes.blockers.quote_configuration_not_subscription_update": "Seleziona una configurazione di aggiornamento dell'abbonamento",
|
|
64016
|
+
"quotes.blockers.quote_configuration_not_new_subscription": "Seleziona una configurazione di nuovo abbonamento",
|
|
64017
|
+
"quotes.blockers.quote_configuration_duplicate_subscription_update": "Un abbonamento pu\xF2 essere aggiornato una sola volta in un preventivo",
|
|
64018
|
+
"quotes.blockers.quote_draft_invoice_missing": "Il preventivo deve avere una fattura in bozza per essere finalizzato",
|
|
64019
|
+
"quotes.blockers.quote_draft_subscription_missing": "Il preventivo deve avere un abbonamento in bozza per essere finalizzato",
|
|
64020
|
+
"quotes.blockers.quote_expiry_after_transition_date": "La data di scadenza del preventivo deve essere entro la fine del periodo di fatturazione corrente, o la data di transizione pianificata se successiva"
|
|
63518
64021
|
};
|
|
63519
64022
|
|
|
63520
64023
|
// ../hyperline-i18n/build/locales/lt.js
|
|
@@ -63537,6 +64040,8 @@ var lt = {
|
|
|
63537
64040
|
"einvoicing.paymentFromWallet": "Mok\u0117jimas i\u0161 pinigin\u0117s",
|
|
63538
64041
|
"einvoicing.paymentProcessed": "Mok\u0117jimas apdorotas",
|
|
63539
64042
|
"einvoicing.paymentReceived": "Mok\u0117jimas gautas",
|
|
64043
|
+
"invoices.minimumFee.adjustmentName": "Minimalaus mokes\u010Dio koregavimas",
|
|
64044
|
+
"invoices.minimumFee.name": "Minimalus mokestis",
|
|
63540
64045
|
"invoices.outstandingProduct.description": "Neapmok\u0117ta {{date}} i\u0161ra\u0161ytos s\u0105skaitos fakt\u016Bros{{invoiceNumber}} suma",
|
|
63541
64046
|
"invoices.outstandingProduct.descriptionPeriod": "Neapmok\u0117ta s\u0105skaitos fakt\u016Bros{{invoiceNumber}} suma u\u017E laikotarp\u012F nuo {{periodStart}} iki {{periodEnd}}",
|
|
63542
64047
|
"invoices.outstandingProduct.name": "Neapmok\u0117tas likutis",
|
|
@@ -63562,7 +64067,25 @@ var lt = {
|
|
|
63562
64067
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "U\u017E \u0161i\u0105 eilut\u0119 proporcingam laikotarpiui s\u0105skaita fakt\u016Bra i\u0161ra\u0161yta",
|
|
63563
64068
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Proporcingam laikotarpiui nei\u0161ra\u0161yta {{amount}} suma",
|
|
63564
64069
|
"subscriptions.updates.updatePrices": "Atnaujinti {{productName}} kainas",
|
|
63565
|
-
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 nebegaliojantis likutis"
|
|
64070
|
+
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 nebegaliojantis likutis",
|
|
64071
|
+
"quotes.blockers.quote_not_draft": "Prie\u0161 keisdami pasi\u016Blymo konfig\u016Bracijas, gr\u0105\u017Einkite j\u012F \u012F juodra\u0161t\u012F",
|
|
64072
|
+
"quotes.blockers.quote_expiration_date_missing": "Pasi\u016Blymas turi tur\u0117ti galiojimo pabaigos dat\u0105, kad b\u016Bt\u0173 i\u0161si\u0173stas tvirtinti",
|
|
64073
|
+
"quotes.blockers.quote_configuration_missing": "Prie\u0161 pateikdami pasi\u016Blym\u0105, prid\u0117kite bent vien\u0105 konfig\u016Bracij\u0105",
|
|
64074
|
+
"quotes.blockers.quote_configuration_subscription_update_customer": "Prenumeratos atnaujinimai turi naudoti pasi\u016Blymo klient\u0105",
|
|
64075
|
+
"quotes.blockers.quote_configuration_multiple_configurations_disabled": "Prie\u0161 priskirdami antrin\u012F klient\u0105, \u012Fjunkite kelias konfig\u016Bracijas",
|
|
64076
|
+
"quotes.blockers.quote_configuration_customer_not_child": "Pasirinkite pasi\u016Blymo kliento antrin\u012F klient\u0105",
|
|
64077
|
+
"quotes.blockers.quote_configuration_type_mismatch": "Susieta konfig\u016Bracija neatitinka konfig\u016Bracijos tipo",
|
|
64078
|
+
"quotes.blockers.quote_configuration_not_draft": "Pasirinkite konfig\u016Bracijos juodra\u0161t\u012F",
|
|
64079
|
+
"quotes.blockers.quote_configuration_customer_mismatch": "Konfig\u016Bracija turi priklausyti konfig\u016Bracijos klientui",
|
|
64080
|
+
"quotes.blockers.quote_configuration_currency_mismatch": "Konfig\u016Bracija turi naudoti pasi\u016Blymo valiut\u0105",
|
|
64081
|
+
"quotes.blockers.quote_configuration_invoicing_entity_mismatch": "S\u0105skaita fakt\u016Bra turi naudoti pasi\u016Blymo s\u0105skait\u0173 i\u0161ra\u0161ymo subjekt\u0105",
|
|
64082
|
+
"quotes.blockers.quote_configuration_already_linked": "Konfig\u016Bracija jau susieta su pasi\u016Blymo konfig\u016Bracija",
|
|
64083
|
+
"quotes.blockers.quote_configuration_not_subscription_update": "Pasirinkite prenumeratos atnaujinimo konfig\u016Bracij\u0105",
|
|
64084
|
+
"quotes.blockers.quote_configuration_not_new_subscription": "Pasirinkite naujos prenumeratos konfig\u016Bracij\u0105",
|
|
64085
|
+
"quotes.blockers.quote_configuration_duplicate_subscription_update": "Prenumerat\u0105 pasi\u016Blyme galima atnaujinti tik vien\u0105 kart\u0105",
|
|
64086
|
+
"quotes.blockers.quote_draft_invoice_missing": "Pasi\u016Blymas turi tur\u0117ti s\u0105skaitos fakt\u016Bros juodra\u0161t\u012F, kad b\u016Bt\u0173 u\u017Ebaigtas",
|
|
64087
|
+
"quotes.blockers.quote_draft_subscription_missing": "Pasi\u016Blymas turi tur\u0117ti prenumeratos juodra\u0161t\u012F, kad b\u016Bt\u0173 u\u017Ebaigtas",
|
|
64088
|
+
"quotes.blockers.quote_expiry_after_transition_date": "Pasi\u016Blymo galiojimo pabaigos data turi b\u016Bti ne v\u0117lesn\u0117 nei dabartinio atsiskaitymo laikotarpio pabaiga arba suplanuota per\u0117jimo data, jei ji v\u0117lesn\u0117"
|
|
63566
64089
|
};
|
|
63567
64090
|
|
|
63568
64091
|
// ../hyperline-i18n/build/locales/nl.js
|
|
@@ -63585,6 +64108,8 @@ var nl = {
|
|
|
63585
64108
|
"einvoicing.paymentFromWallet": "Betaling uit tegoed",
|
|
63586
64109
|
"einvoicing.paymentProcessed": "Betaling verwerkt",
|
|
63587
64110
|
"einvoicing.paymentReceived": "Betaling ontvangen",
|
|
64111
|
+
"invoices.minimumFee.adjustmentName": "Aanpassing minimumbedrag",
|
|
64112
|
+
"invoices.minimumFee.name": "Minimumbedrag",
|
|
63588
64113
|
"invoices.outstandingProduct.description": "Onbetaald bedrag van de factuur{{invoiceNumber}} uitgegeven op {{date}}",
|
|
63589
64114
|
"invoices.outstandingProduct.descriptionPeriod": "Onbetaald bedrag van de factuur{{invoiceNumber}} van {{periodStart}} tot {{periodEnd}}",
|
|
63590
64115
|
"invoices.outstandingProduct.name": "Openstaand saldo",
|
|
@@ -63610,7 +64135,25 @@ var nl = {
|
|
|
63610
64135
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Deze regel is gefactureerd voor de geproportioneerde periode",
|
|
63611
64136
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Bedrag van {{amount}} niet gefactureerd voor de geproportioneerde periode",
|
|
63612
64137
|
"subscriptions.updates.updatePrices": "Prijzen bijwerken voor {{productName}}",
|
|
63613
|
-
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 verlopen saldo"
|
|
64138
|
+
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 verlopen saldo",
|
|
64139
|
+
"quotes.blockers.quote_not_draft": "Zet de offerte terug naar concept voordat u de configuraties wijzigt",
|
|
64140
|
+
"quotes.blockers.quote_expiration_date_missing": "De offerte moet een vervaldatum hebben om ter goedkeuring te worden verzonden",
|
|
64141
|
+
"quotes.blockers.quote_configuration_missing": "Voeg ten minste \xE9\xE9n configuratie toe voordat u de offerte indient",
|
|
64142
|
+
"quotes.blockers.quote_configuration_subscription_update_customer": "Abonnementswijzigingen moeten de klant van de offerte gebruiken",
|
|
64143
|
+
"quotes.blockers.quote_configuration_multiple_configurations_disabled": "Schakel meerdere configuraties in voordat u een onderliggende klant toewijst",
|
|
64144
|
+
"quotes.blockers.quote_configuration_customer_not_child": "Selecteer een onderliggende klant van de offerteklant",
|
|
64145
|
+
"quotes.blockers.quote_configuration_type_mismatch": "De gekoppelde configuratie komt niet overeen met het configuratietype",
|
|
64146
|
+
"quotes.blockers.quote_configuration_not_draft": "Selecteer een conceptconfiguratie",
|
|
64147
|
+
"quotes.blockers.quote_configuration_customer_mismatch": "De configuratie moet bij de klant van de configuratie horen",
|
|
64148
|
+
"quotes.blockers.quote_configuration_currency_mismatch": "De configuratie moet de valuta van de offerte gebruiken",
|
|
64149
|
+
"quotes.blockers.quote_configuration_invoicing_entity_mismatch": "De factuur moet de facturatie-entiteit van de offerte gebruiken",
|
|
64150
|
+
"quotes.blockers.quote_configuration_already_linked": "De configuratie is al gekoppeld aan een offerteconfiguratie",
|
|
64151
|
+
"quotes.blockers.quote_configuration_not_subscription_update": "Selecteer een configuratie voor een abonnementswijziging",
|
|
64152
|
+
"quotes.blockers.quote_configuration_not_new_subscription": "Selecteer een configuratie voor een nieuw abonnement",
|
|
64153
|
+
"quotes.blockers.quote_configuration_duplicate_subscription_update": "Een abonnement kan maar \xE9\xE9n keer per offerte worden gewijzigd",
|
|
64154
|
+
"quotes.blockers.quote_draft_invoice_missing": "De offerte moet een conceptfactuur hebben om te worden afgerond",
|
|
64155
|
+
"quotes.blockers.quote_draft_subscription_missing": "De offerte moet een conceptabonnement hebben om te worden afgerond",
|
|
64156
|
+
"quotes.blockers.quote_expiry_after_transition_date": "De vervaldatum van de offerte moet uiterlijk het einde van de huidige factuurperiode zijn, of de geplande overgangsdatum als die later valt"
|
|
63614
64157
|
};
|
|
63615
64158
|
|
|
63616
64159
|
// ../hyperline-i18n/build/locales/pl.js
|
|
@@ -63633,6 +64176,8 @@ var pl = {
|
|
|
63633
64176
|
"einvoicing.paymentFromWallet": "P\u0142atno\u015B\u0107 z portfela",
|
|
63634
64177
|
"einvoicing.paymentProcessed": "P\u0142atno\u015B\u0107 przetworzona",
|
|
63635
64178
|
"einvoicing.paymentReceived": "P\u0142atno\u015B\u0107 otrzymana",
|
|
64179
|
+
"invoices.minimumFee.adjustmentName": "Wyr\xF3wnanie do op\u0142aty minimalnej",
|
|
64180
|
+
"invoices.minimumFee.name": "Op\u0142ata minimalna",
|
|
63636
64181
|
"invoices.outstandingProduct.description": "Nieop\u0142acona kwota z faktury{{invoiceNumber}} wystawionej {{date}}",
|
|
63637
64182
|
"invoices.outstandingProduct.descriptionPeriod": "Nieop\u0142acona kwota z faktury{{invoiceNumber}} od {{periodStart}} do {{periodEnd}}",
|
|
63638
64183
|
"invoices.outstandingProduct.name": "Niezap\u0142acone saldo",
|
|
@@ -63658,7 +64203,25 @@ var pl = {
|
|
|
63658
64203
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Ta pozycja zosta\u0142a zafakturowana za okres proporcjonalny",
|
|
63659
64204
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Kwota {{amount}} niefakturowana za okres proporcjonalny",
|
|
63660
64205
|
"subscriptions.updates.updatePrices": "Aktualizuj ceny dla {{productName}}",
|
|
63661
|
-
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 wygas\u0142e saldo"
|
|
64206
|
+
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 wygas\u0142e saldo",
|
|
64207
|
+
"quotes.blockers.quote_not_draft": "Przywr\xF3\u0107 ofert\u0119 do wersji roboczej przed zmian\u0105 jej konfiguracji",
|
|
64208
|
+
"quotes.blockers.quote_expiration_date_missing": "Oferta musi mie\u0107 dat\u0119 wyga\u015Bni\u0119cia, aby zosta\u0142a wys\u0142ana do zatwierdzenia",
|
|
64209
|
+
"quotes.blockers.quote_configuration_missing": "Dodaj co najmniej jedn\u0105 konfiguracj\u0119 przed przes\u0142aniem oferty",
|
|
64210
|
+
"quotes.blockers.quote_configuration_subscription_update_customer": "Aktualizacje subskrypcji musz\u0105 u\u017Cywa\u0107 klienta oferty",
|
|
64211
|
+
"quotes.blockers.quote_configuration_multiple_configurations_disabled": "W\u0142\u0105cz wiele konfiguracji przed przypisaniem klienta podrz\u0119dnego",
|
|
64212
|
+
"quotes.blockers.quote_configuration_customer_not_child": "Wybierz klienta podrz\u0119dnego klienta oferty",
|
|
64213
|
+
"quotes.blockers.quote_configuration_type_mismatch": "Powi\u0105zana konfiguracja nie odpowiada typowi konfiguracji",
|
|
64214
|
+
"quotes.blockers.quote_configuration_not_draft": "Wybierz konfiguracj\u0119 w wersji roboczej",
|
|
64215
|
+
"quotes.blockers.quote_configuration_customer_mismatch": "Konfiguracja musi nale\u017Ce\u0107 do klienta konfiguracji",
|
|
64216
|
+
"quotes.blockers.quote_configuration_currency_mismatch": "Konfiguracja musi u\u017Cywa\u0107 waluty oferty",
|
|
64217
|
+
"quotes.blockers.quote_configuration_invoicing_entity_mismatch": "Faktura musi u\u017Cywa\u0107 podmiotu fakturuj\u0105cego oferty",
|
|
64218
|
+
"quotes.blockers.quote_configuration_already_linked": "Konfiguracja jest ju\u017C powi\u0105zana z konfiguracj\u0105 oferty",
|
|
64219
|
+
"quotes.blockers.quote_configuration_not_subscription_update": "Wybierz konfiguracj\u0119 aktualizacji subskrypcji",
|
|
64220
|
+
"quotes.blockers.quote_configuration_not_new_subscription": "Wybierz konfiguracj\u0119 nowej subskrypcji",
|
|
64221
|
+
"quotes.blockers.quote_configuration_duplicate_subscription_update": "Subskrypcj\u0119 mo\u017Cna zaktualizowa\u0107 w ofercie tylko raz",
|
|
64222
|
+
"quotes.blockers.quote_draft_invoice_missing": "Oferta musi mie\u0107 faktur\u0119 w wersji roboczej, aby zosta\u0142a sfinalizowana",
|
|
64223
|
+
"quotes.blockers.quote_draft_subscription_missing": "Oferta musi mie\u0107 subskrypcj\u0119 w wersji roboczej, aby zosta\u0142a sfinalizowana",
|
|
64224
|
+
"quotes.blockers.quote_expiry_after_transition_date": "Data wyga\u015Bni\u0119cia oferty musi przypada\u0107 najp\xF3\u017Aniej na koniec bie\u017C\u0105cego okresu rozliczeniowego lub na zaplanowan\u0105 dat\u0119 przej\u015Bcia, je\u015Bli jest p\xF3\u017Aniejsza"
|
|
63662
64225
|
};
|
|
63663
64226
|
|
|
63664
64227
|
// ../hyperline-i18n/build/locales/pt.js
|
|
@@ -63681,6 +64244,8 @@ var pt = {
|
|
|
63681
64244
|
"einvoicing.paymentFromWallet": "Pagamento da carteira",
|
|
63682
64245
|
"einvoicing.paymentProcessed": "Pagamento processado",
|
|
63683
64246
|
"einvoicing.paymentReceived": "Pagamento recebido",
|
|
64247
|
+
"invoices.minimumFee.adjustmentName": "Ajuste do valor m\xEDnimo",
|
|
64248
|
+
"invoices.minimumFee.name": "Valor m\xEDnimo",
|
|
63684
64249
|
"invoices.outstandingProduct.description": "Valor em aberto da fatura{{invoiceNumber}} emitida em {{date}}",
|
|
63685
64250
|
"invoices.outstandingProduct.descriptionPeriod": "Valor em aberto da fatura{{invoiceNumber}} de {{periodStart}} a {{periodEnd}}",
|
|
63686
64251
|
"invoices.outstandingProduct.name": "Saldo em aberto",
|
|
@@ -63706,7 +64271,25 @@ var pt = {
|
|
|
63706
64271
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Esta linha foi faturada para o per\xEDodo proporcional",
|
|
63707
64272
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Valor de {{amount}} n\xE3o faturado para o per\xEDodo proporcional",
|
|
63708
64273
|
"subscriptions.updates.updatePrices": "Atualizar pre\xE7os para {{productName}}",
|
|
63709
|
-
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 saldo expirado"
|
|
64274
|
+
"wallets.expiredBalanceInvoiceLineName": "{{walletName}} \u2013 saldo expirado",
|
|
64275
|
+
"quotes.blockers.quote_not_draft": "Volte a colocar o or\xE7amento em rascunho antes de alterar as suas configura\xE7\xF5es",
|
|
64276
|
+
"quotes.blockers.quote_expiration_date_missing": "O or\xE7amento deve ter uma data de expira\xE7\xE3o para ser enviado para aprova\xE7\xE3o",
|
|
64277
|
+
"quotes.blockers.quote_configuration_missing": "Adicione pelo menos uma configura\xE7\xE3o antes de submeter o or\xE7amento",
|
|
64278
|
+
"quotes.blockers.quote_configuration_subscription_update_customer": "As atualiza\xE7\xF5es de subscri\xE7\xE3o devem usar o cliente do or\xE7amento",
|
|
64279
|
+
"quotes.blockers.quote_configuration_multiple_configurations_disabled": "Ative as configura\xE7\xF5es m\xFAltiplas antes de atribuir um cliente filho",
|
|
64280
|
+
"quotes.blockers.quote_configuration_customer_not_child": "Selecione um cliente filho do cliente do or\xE7amento",
|
|
64281
|
+
"quotes.blockers.quote_configuration_type_mismatch": "A configura\xE7\xE3o associada n\xE3o corresponde ao tipo de configura\xE7\xE3o",
|
|
64282
|
+
"quotes.blockers.quote_configuration_not_draft": "Selecione uma configura\xE7\xE3o em rascunho",
|
|
64283
|
+
"quotes.blockers.quote_configuration_customer_mismatch": "A configura\xE7\xE3o deve pertencer ao cliente da configura\xE7\xE3o",
|
|
64284
|
+
"quotes.blockers.quote_configuration_currency_mismatch": "A configura\xE7\xE3o deve usar a moeda do or\xE7amento",
|
|
64285
|
+
"quotes.blockers.quote_configuration_invoicing_entity_mismatch": "A fatura deve usar a entidade de fatura\xE7\xE3o do or\xE7amento",
|
|
64286
|
+
"quotes.blockers.quote_configuration_already_linked": "A configura\xE7\xE3o j\xE1 est\xE1 associada a uma configura\xE7\xE3o de or\xE7amento",
|
|
64287
|
+
"quotes.blockers.quote_configuration_not_subscription_update": "Selecione uma configura\xE7\xE3o de atualiza\xE7\xE3o de subscri\xE7\xE3o",
|
|
64288
|
+
"quotes.blockers.quote_configuration_not_new_subscription": "Selecione uma configura\xE7\xE3o de nova subscri\xE7\xE3o",
|
|
64289
|
+
"quotes.blockers.quote_configuration_duplicate_subscription_update": "Uma subscri\xE7\xE3o s\xF3 pode ser atualizada uma vez num or\xE7amento",
|
|
64290
|
+
"quotes.blockers.quote_draft_invoice_missing": "O or\xE7amento deve ter uma fatura em rascunho para ser finalizado",
|
|
64291
|
+
"quotes.blockers.quote_draft_subscription_missing": "O or\xE7amento deve ter uma subscri\xE7\xE3o em rascunho para ser finalizado",
|
|
64292
|
+
"quotes.blockers.quote_expiry_after_transition_date": "A data de expira\xE7\xE3o do or\xE7amento deve ser, no m\xE1ximo, o fim do per\xEDodo de fatura\xE7\xE3o atual, ou a data de transi\xE7\xE3o agendada se for posterior"
|
|
63710
64293
|
};
|
|
63711
64294
|
|
|
63712
64295
|
// ../hyperline-i18n/build/language.js
|
|
@@ -63778,97 +64361,317 @@ var executionContextStorage = new AsyncLocalStorage();
|
|
|
63778
64361
|
function getExecutionContext() {
|
|
63779
64362
|
return executionContextStorage.getStore();
|
|
63780
64363
|
}
|
|
63781
|
-
|
|
63782
|
-
// ../hyperline-monitoring/build/context/correlationId.js
|
|
63783
|
-
import { AsyncLocalStorage as AsyncLocalStorage2 } from "node:async_hooks";
|
|
63784
|
-
var correlationIdStorage = new AsyncLocalStorage2();
|
|
63785
|
-
function getCorrelationId() {
|
|
63786
|
-
return correlationIdStorage.getStore();
|
|
64364
|
+
|
|
64365
|
+
// ../hyperline-monitoring/build/context/correlationId.js
|
|
64366
|
+
import { AsyncLocalStorage as AsyncLocalStorage2 } from "node:async_hooks";
|
|
64367
|
+
var correlationIdStorage = new AsyncLocalStorage2();
|
|
64368
|
+
function getCorrelationId() {
|
|
64369
|
+
return correlationIdStorage.getStore();
|
|
64370
|
+
}
|
|
64371
|
+
|
|
64372
|
+
// ../hyperline-config/build/index.js
|
|
64373
|
+
import "dotenv/config";
|
|
64374
|
+
import * as stackTraceParser from "stacktrace-parser";
|
|
64375
|
+
function coerceBoolean() {
|
|
64376
|
+
return external_exports.any().refine((value) => ["true", "false"].includes(value), {
|
|
64377
|
+
message: "Expected boolean"
|
|
64378
|
+
}).transform((value) => (
|
|
64379
|
+
// biome-ignore lint/complexity/noUselessTernary: ignore
|
|
64380
|
+
value === "true" ? true : false
|
|
64381
|
+
));
|
|
64382
|
+
}
|
|
64383
|
+
var types = {
|
|
64384
|
+
string: external_exports.coerce.string,
|
|
64385
|
+
number: external_exports.coerce.number,
|
|
64386
|
+
boolean: coerceBoolean,
|
|
64387
|
+
enum: external_exports.enum
|
|
64388
|
+
};
|
|
64389
|
+
function getConfig(schema, testValues) {
|
|
64390
|
+
const validator = external_exports.object(Object.fromEntries(Object.entries(schema).map(([key, zodType]) => {
|
|
64391
|
+
if (zodType instanceof ZodOptional) {
|
|
64392
|
+
return [key, external_exports.string().optional()];
|
|
64393
|
+
}
|
|
64394
|
+
return [key, external_exports.string()];
|
|
64395
|
+
})));
|
|
64396
|
+
const processEnv = process.env;
|
|
64397
|
+
const isTestMode = processEnv.NODE_ENV === "test";
|
|
64398
|
+
const envVariables = {
|
|
64399
|
+
...processEnv,
|
|
64400
|
+
...isTestMode && testValues ? Object.fromEntries(Object.entries(testValues).map(([key, value]) => [key, String(value)])) : {}
|
|
64401
|
+
};
|
|
64402
|
+
const packageName = envVariables.npm_package_name;
|
|
64403
|
+
const parseProcessEnvResult = validator.safeParse(envVariables);
|
|
64404
|
+
if (!parseProcessEnvResult.success) {
|
|
64405
|
+
const parsedStackTrace = stackTraceParser.parse(parseProcessEnvResult.error.stack ?? "");
|
|
64406
|
+
const getConfigCallLine = parsedStackTrace.find((line) => {
|
|
64407
|
+
return !line.file?.includes("hyperline-config") && (line.file?.includes("apps/") || line.file?.includes("core/") || line.file?.includes("packages/"));
|
|
64408
|
+
});
|
|
64409
|
+
const callerFile = getConfigCallLine?.file;
|
|
64410
|
+
console.error(`Invalid environment variables for service \`${packageName}\`: \`${callerFile}\``);
|
|
64411
|
+
console.error(parseProcessEnvResult.error.format());
|
|
64412
|
+
process.exit(1);
|
|
64413
|
+
}
|
|
64414
|
+
const coercion = external_exports.object(schema);
|
|
64415
|
+
return coercion.parse(parseProcessEnvResult.data);
|
|
64416
|
+
}
|
|
64417
|
+
|
|
64418
|
+
// ../hyperline-monitoring/build/config.js
|
|
64419
|
+
var config2 = getConfig({
|
|
64420
|
+
// config
|
|
64421
|
+
APP_VERSION: types.string().optional(),
|
|
64422
|
+
// Deployment environment for log tagging, when it cannot be read off
|
|
64423
|
+
// NODE_ENV. Set only by the PDF render worker pools, which must run with
|
|
64424
|
+
// NODE_ENV="production" to get the production React build regardless of which
|
|
64425
|
+
// environment the pod is actually in (see core/invoicing/services/pdf/index.ts).
|
|
64426
|
+
// Unset everywhere else, so the NODE_ENV fallback keeps current behaviour.
|
|
64427
|
+
APP_ENV: types.string().optional(),
|
|
64428
|
+
DD_SERVICE: types.string().optional(),
|
|
64429
|
+
LOGGER_CONSOLE_ENABLED: types.boolean().optional(),
|
|
64430
|
+
LOGGER_STDOUT_ENABLED: types.boolean().optional(),
|
|
64431
|
+
NODE_ENV: types.enum(["local", "test", "staging", "sandbox", "production"]),
|
|
64432
|
+
EVENT_LOOP_MONITORING_ENABLED: types.boolean().optional(),
|
|
64433
|
+
MEMORY_MONITORING_ENABLED: types.boolean().optional(),
|
|
64434
|
+
MEMORY_MONITORING_INTERVAL_MS: types.number().optional()
|
|
64435
|
+
// secrets
|
|
64436
|
+
}, {
|
|
64437
|
+
APP_VERSION: void 0,
|
|
64438
|
+
APP_ENV: void 0,
|
|
64439
|
+
DD_SERVICE: void 0,
|
|
64440
|
+
LOGGER_CONSOLE_ENABLED: false,
|
|
64441
|
+
LOGGER_STDOUT_ENABLED: false,
|
|
64442
|
+
EVENT_LOOP_MONITORING_ENABLED: false,
|
|
64443
|
+
MEMORY_MONITORING_ENABLED: false,
|
|
64444
|
+
MEMORY_MONITORING_INTERVAL_MS: 3e4,
|
|
64445
|
+
NODE_ENV: "test"
|
|
64446
|
+
});
|
|
64447
|
+
|
|
64448
|
+
// ../hyperline-monitoring/build/logger/logger.js
|
|
64449
|
+
import * as util from "node:util";
|
|
64450
|
+
import prune2 from "json-prune";
|
|
64451
|
+
import * as winston from "winston";
|
|
64452
|
+
|
|
64453
|
+
// ../hyperline-monitoring/build/logger/formatting/format.js
|
|
64454
|
+
import prune from "json-prune";
|
|
64455
|
+
|
|
64456
|
+
// ../hyperline-monitoring/build/logger/formatting/logRedaction.js
|
|
64457
|
+
var REDACTED_KEY_NAMES = /* @__PURE__ */ new Set([
|
|
64458
|
+
"accesstoken",
|
|
64459
|
+
"apitoken",
|
|
64460
|
+
"assertion",
|
|
64461
|
+
"authorization",
|
|
64462
|
+
"authtoken",
|
|
64463
|
+
"cardnumber",
|
|
64464
|
+
"clientassertion",
|
|
64465
|
+
"codeverifier",
|
|
64466
|
+
"connectionurl",
|
|
64467
|
+
"consumerkey",
|
|
64468
|
+
"cookie",
|
|
64469
|
+
"credential",
|
|
64470
|
+
"credentials",
|
|
64471
|
+
"iban",
|
|
64472
|
+
"idtoken",
|
|
64473
|
+
"launchticket",
|
|
64474
|
+
"privatekey",
|
|
64475
|
+
"publictoken",
|
|
64476
|
+
"refreshtoken",
|
|
64477
|
+
// A workflow secret's value (core/workflows secrets).
|
|
64478
|
+
"secretvalue",
|
|
64479
|
+
"sessiontoken",
|
|
64480
|
+
"token",
|
|
64481
|
+
"tokenid",
|
|
64482
|
+
"verificationcode"
|
|
64483
|
+
]);
|
|
64484
|
+
var REDACTED_KEY_SUFFIX_PATTERN = /(secret|password|passphrase|apikey)$/;
|
|
64485
|
+
var REDACTED_KEY_CANDIDATE_PATTERN = /token|ticket|key|secret|pass|assertion|verifier|credential|authorization|cookie|iban|cardnumber|code|connectionurl/i;
|
|
64486
|
+
var URL_ONLY_REDACTED_KEYS = /* @__PURE__ */ new Set(["key"]);
|
|
64487
|
+
var OAUTH_CODE_KEY = "code";
|
|
64488
|
+
var OAUTH_CODE_CONTEXT_KEYS = ["state", "grant_type"];
|
|
64489
|
+
var REDACTED_VALUE = "<redacted>";
|
|
64490
|
+
var TRUNCATED_VALUE = "[TRUNCATED: not redacted]";
|
|
64491
|
+
var TRUNCATED_KEY = "[TRUNCATED]";
|
|
64492
|
+
var MAX_REDACTION_DEPTH = 6;
|
|
64493
|
+
var MAX_ARRAY_ENTRIES = 50;
|
|
64494
|
+
var MAX_PARSED_STRING_LENGTH = 16384;
|
|
64495
|
+
var MAX_VISITED_NODES = 5e3;
|
|
64496
|
+
var MAX_CONTAINER_ENTRIES = 1e3;
|
|
64497
|
+
var MAX_STRING_CHARACTERS = 256e3;
|
|
64498
|
+
function redactLogBody({ body }) {
|
|
64499
|
+
return redactValue({
|
|
64500
|
+
value: body,
|
|
64501
|
+
depth: MAX_REDACTION_DEPTH,
|
|
64502
|
+
budget: {
|
|
64503
|
+
remainingNodes: MAX_VISITED_NODES,
|
|
64504
|
+
remainingChars: MAX_STRING_CHARACTERS
|
|
64505
|
+
}
|
|
64506
|
+
});
|
|
64507
|
+
}
|
|
64508
|
+
function redactLogUrl({ url: url2 }) {
|
|
64509
|
+
const queryIndex = url2.indexOf("?");
|
|
64510
|
+
if (queryIndex === -1) {
|
|
64511
|
+
return url2;
|
|
64512
|
+
}
|
|
64513
|
+
if (url2.length > MAX_PARSED_STRING_LENGTH) {
|
|
64514
|
+
return `${url2.slice(0, queryIndex)}?${TRUNCATED_VALUE}`;
|
|
64515
|
+
}
|
|
64516
|
+
const redactedQuery = redactFormEncoded({
|
|
64517
|
+
text: url2.slice(queryIndex + 1),
|
|
64518
|
+
extraRedactedKeys: URL_ONLY_REDACTED_KEYS
|
|
64519
|
+
});
|
|
64520
|
+
return redactedQuery === void 0 ? url2 : `${url2.slice(0, queryIndex)}?${redactedQuery}`;
|
|
64521
|
+
}
|
|
64522
|
+
function redactValue({ value, depth, budget }) {
|
|
64523
|
+
if (isOpaqueObject({ value })) {
|
|
64524
|
+
return replaceOpaqueObject({ value });
|
|
64525
|
+
}
|
|
64526
|
+
if (typeof value === "string") {
|
|
64527
|
+
if (value.length > budget.remainingChars) {
|
|
64528
|
+
return TRUNCATED_VALUE;
|
|
64529
|
+
}
|
|
64530
|
+
budget.remainingChars -= value.length;
|
|
64531
|
+
}
|
|
64532
|
+
if (depth <= 0 || budget.remainingNodes <= 0) {
|
|
64533
|
+
return isInspectable({ value }) ? TRUNCATED_VALUE : value;
|
|
64534
|
+
}
|
|
64535
|
+
budget.remainingNodes -= 1;
|
|
64536
|
+
if (typeof value === "string") {
|
|
64537
|
+
return redactString({ text: value, budget });
|
|
64538
|
+
}
|
|
64539
|
+
if (value instanceof URLSearchParams) {
|
|
64540
|
+
return redactValue({ value: value.toString(), depth, budget });
|
|
64541
|
+
}
|
|
64542
|
+
if (Array.isArray(value)) {
|
|
64543
|
+
return redactArray({ items: value, depth, budget });
|
|
64544
|
+
}
|
|
64545
|
+
if (isPlainObject2(value)) {
|
|
64546
|
+
return redactObject({ record: value, depth, budget });
|
|
64547
|
+
}
|
|
64548
|
+
return value;
|
|
64549
|
+
}
|
|
64550
|
+
function isOpaqueObject({ value }) {
|
|
64551
|
+
return typeof value === "object" && value !== null && !Array.isArray(value) && !isPlainObject2(value) && !(value instanceof URLSearchParams);
|
|
64552
|
+
}
|
|
64553
|
+
function replaceOpaqueObject({ value }) {
|
|
64554
|
+
if (typeof value !== "object" || value === null || value instanceof Date) {
|
|
64555
|
+
return value;
|
|
64556
|
+
}
|
|
64557
|
+
if (value instanceof ArrayBuffer || ArrayBuffer.isView(value)) {
|
|
64558
|
+
return `[BINARY ${value.byteLength} bytes]`;
|
|
64559
|
+
}
|
|
64560
|
+
if (value instanceof Blob) {
|
|
64561
|
+
return `[BINARY ${value.size} bytes]`;
|
|
64562
|
+
}
|
|
64563
|
+
if (value instanceof FormData || typeof Reflect.get(value, "pipe") === "function") {
|
|
64564
|
+
return "[BINARY stream]";
|
|
64565
|
+
}
|
|
64566
|
+
return TRUNCATED_VALUE;
|
|
64567
|
+
}
|
|
64568
|
+
function redactArray({ items, depth, budget }) {
|
|
64569
|
+
const isTruncated = items.length > MAX_ARRAY_ENTRIES;
|
|
64570
|
+
const keptItems = isTruncated ? items.slice(0, MAX_ARRAY_ENTRIES) : items;
|
|
64571
|
+
let redactedItems;
|
|
64572
|
+
for (const [index, item] of keptItems.entries()) {
|
|
64573
|
+
const redactedItem = redactValue({ value: item, depth: depth - 1, budget });
|
|
64574
|
+
if (redactedItem !== item) {
|
|
64575
|
+
redactedItems ??= [...keptItems];
|
|
64576
|
+
redactedItems[index] = redactedItem;
|
|
64577
|
+
}
|
|
64578
|
+
}
|
|
64579
|
+
const result = redactedItems ?? keptItems;
|
|
64580
|
+
return isTruncated ? [...result, TRUNCATED_VALUE] : result;
|
|
64581
|
+
}
|
|
64582
|
+
function redactObject({ record: record2, depth, budget }) {
|
|
64583
|
+
const redactedEntries = /* @__PURE__ */ new Map();
|
|
64584
|
+
const carriesOAuthCode = OAUTH_CODE_CONTEXT_KEYS.some((contextKey) => Object.hasOwn(record2, contextKey));
|
|
64585
|
+
const keptKeys = [];
|
|
64586
|
+
let isTruncated = false;
|
|
64587
|
+
for (const key in record2) {
|
|
64588
|
+
if (!Object.hasOwn(record2, key)) {
|
|
64589
|
+
continue;
|
|
64590
|
+
}
|
|
64591
|
+
if (keptKeys.length >= MAX_CONTAINER_ENTRIES || key.length > budget.remainingChars) {
|
|
64592
|
+
isTruncated = true;
|
|
64593
|
+
break;
|
|
64594
|
+
}
|
|
64595
|
+
budget.remainingChars -= key.length;
|
|
64596
|
+
keptKeys.push(key);
|
|
64597
|
+
const nestedValue = record2[key];
|
|
64598
|
+
const isSensitiveKey = isRedactedKey({ key }) || carriesOAuthCode && key === OAUTH_CODE_KEY;
|
|
64599
|
+
const shouldRedact = isSensitiveKey && nestedValue != null && typeof nestedValue !== "boolean";
|
|
64600
|
+
if (shouldRedact) {
|
|
64601
|
+
budget.remainingNodes -= 1;
|
|
64602
|
+
}
|
|
64603
|
+
const redactedNestedValue = shouldRedact ? REDACTED_VALUE : redactValue({ value: nestedValue, depth: depth - 1, budget });
|
|
64604
|
+
if (redactedNestedValue !== nestedValue) {
|
|
64605
|
+
redactedEntries.set(key, redactedNestedValue);
|
|
64606
|
+
}
|
|
64607
|
+
}
|
|
64608
|
+
if (isTruncated) {
|
|
64609
|
+
const keptRecord = {};
|
|
64610
|
+
for (const key of keptKeys) {
|
|
64611
|
+
keptRecord[key] = redactedEntries.has(key) ? redactedEntries.get(key) : record2[key];
|
|
64612
|
+
}
|
|
64613
|
+
keptRecord[TRUNCATED_KEY] = TRUNCATED_VALUE;
|
|
64614
|
+
return keptRecord;
|
|
64615
|
+
}
|
|
64616
|
+
return redactedEntries.size === 0 ? record2 : { ...record2, ...Object.fromEntries(redactedEntries) };
|
|
64617
|
+
}
|
|
64618
|
+
function redactString({ text, budget }) {
|
|
64619
|
+
if (text.length > MAX_PARSED_STRING_LENGTH) {
|
|
64620
|
+
return TRUNCATED_VALUE;
|
|
64621
|
+
}
|
|
64622
|
+
if (!isInspectable({ value: text })) {
|
|
64623
|
+
return text;
|
|
64624
|
+
}
|
|
64625
|
+
const trimmedText = text.trim();
|
|
64626
|
+
if (trimmedText.startsWith("{") || trimmedText.startsWith("[")) {
|
|
64627
|
+
try {
|
|
64628
|
+
const parsedValue = JSON.parse(trimmedText);
|
|
64629
|
+
const redactedValue = redactValue({
|
|
64630
|
+
value: parsedValue,
|
|
64631
|
+
depth: MAX_REDACTION_DEPTH,
|
|
64632
|
+
budget
|
|
64633
|
+
});
|
|
64634
|
+
return redactedValue === parsedValue ? text : JSON.stringify(redactedValue);
|
|
64635
|
+
} catch {
|
|
64636
|
+
return REDACTED_KEY_CANDIDATE_PATTERN.test(text) ? TRUNCATED_VALUE : redactFormEncoded({ text }) ?? text;
|
|
64637
|
+
}
|
|
64638
|
+
}
|
|
64639
|
+
return redactFormEncoded({ text }) ?? text;
|
|
64640
|
+
}
|
|
64641
|
+
function redactFormEncoded({ text, extraRedactedKeys }) {
|
|
64642
|
+
if (!text.includes("=") || !REDACTED_KEY_CANDIDATE_PATTERN.test(text)) {
|
|
64643
|
+
return void 0;
|
|
64644
|
+
}
|
|
64645
|
+
const params = new URLSearchParams(text);
|
|
64646
|
+
const carriesOAuthCode = OAUTH_CODE_CONTEXT_KEYS.some((contextKey) => params.has(contextKey));
|
|
64647
|
+
let hasRedactedParam = false;
|
|
64648
|
+
for (const key of new Set(params.keys())) {
|
|
64649
|
+
if (isRedactedKey({ key }) || extraRedactedKeys?.has(key.toLowerCase()) || carriesOAuthCode && key === OAUTH_CODE_KEY) {
|
|
64650
|
+
params.set(key, REDACTED_VALUE);
|
|
64651
|
+
hasRedactedParam = true;
|
|
64652
|
+
}
|
|
64653
|
+
}
|
|
64654
|
+
return hasRedactedParam ? params.toString() : void 0;
|
|
64655
|
+
}
|
|
64656
|
+
function isRedactedKey({ key }) {
|
|
64657
|
+
const normalizedKey = key.toLowerCase().replace(/[_-]/g, "");
|
|
64658
|
+
return REDACTED_KEY_NAMES.has(normalizedKey) || REDACTED_KEY_SUFFIX_PATTERN.test(normalizedKey);
|
|
63787
64659
|
}
|
|
63788
|
-
|
|
63789
|
-
|
|
63790
|
-
|
|
63791
|
-
|
|
63792
|
-
|
|
63793
|
-
return external_exports.any().refine((value) => ["true", "false"].includes(value), {
|
|
63794
|
-
message: "Expected boolean"
|
|
63795
|
-
}).transform((value) => (
|
|
63796
|
-
// biome-ignore lint/complexity/noUselessTernary: ignore
|
|
63797
|
-
value === "true" ? true : false
|
|
63798
|
-
));
|
|
64660
|
+
function isInspectable({ value }) {
|
|
64661
|
+
if (typeof value === "string") {
|
|
64662
|
+
return value.length > MAX_PARSED_STRING_LENGTH || /^\s*[{[]/.test(value) || value.includes("=") && REDACTED_KEY_CANDIDATE_PATTERN.test(value);
|
|
64663
|
+
}
|
|
64664
|
+
return value instanceof URLSearchParams || Array.isArray(value) || isPlainObject2(value);
|
|
63799
64665
|
}
|
|
63800
|
-
|
|
63801
|
-
|
|
63802
|
-
|
|
63803
|
-
boolean: coerceBoolean,
|
|
63804
|
-
enum: external_exports.enum
|
|
63805
|
-
};
|
|
63806
|
-
function getConfig(schema, testValues) {
|
|
63807
|
-
const validator = external_exports.object(Object.fromEntries(Object.entries(schema).map(([key, zodType]) => {
|
|
63808
|
-
if (zodType instanceof ZodOptional) {
|
|
63809
|
-
return [key, external_exports.string().optional()];
|
|
63810
|
-
}
|
|
63811
|
-
return [key, external_exports.string()];
|
|
63812
|
-
})));
|
|
63813
|
-
const processEnv = process.env;
|
|
63814
|
-
const isTestMode = processEnv.NODE_ENV === "test";
|
|
63815
|
-
const envVariables = {
|
|
63816
|
-
...processEnv,
|
|
63817
|
-
...isTestMode && testValues ? Object.fromEntries(Object.entries(testValues).map(([key, value]) => [key, String(value)])) : {}
|
|
63818
|
-
};
|
|
63819
|
-
const packageName = envVariables.npm_package_name;
|
|
63820
|
-
const parseProcessEnvResult = validator.safeParse(envVariables);
|
|
63821
|
-
if (!parseProcessEnvResult.success) {
|
|
63822
|
-
const parsedStackTrace = stackTraceParser.parse(parseProcessEnvResult.error.stack ?? "");
|
|
63823
|
-
const getConfigCallLine = parsedStackTrace.find((line) => {
|
|
63824
|
-
return !line.file?.includes("hyperline-config") && (line.file?.includes("apps/") || line.file?.includes("core/") || line.file?.includes("packages/"));
|
|
63825
|
-
});
|
|
63826
|
-
const callerFile = getConfigCallLine?.file;
|
|
63827
|
-
console.error(`Invalid environment variables for service \`${packageName}\`: \`${callerFile}\``);
|
|
63828
|
-
console.error(parseProcessEnvResult.error.format());
|
|
63829
|
-
process.exit(1);
|
|
64666
|
+
function isPlainObject2(value) {
|
|
64667
|
+
if (typeof value !== "object" || value === null) {
|
|
64668
|
+
return false;
|
|
63830
64669
|
}
|
|
63831
|
-
const
|
|
63832
|
-
return
|
|
64670
|
+
const prototype = Object.getPrototypeOf(value);
|
|
64671
|
+
return prototype === Object.prototype || prototype === null;
|
|
63833
64672
|
}
|
|
63834
64673
|
|
|
63835
|
-
// ../hyperline-monitoring/build/config.js
|
|
63836
|
-
var config2 = getConfig({
|
|
63837
|
-
// config
|
|
63838
|
-
APP_VERSION: types.string().optional(),
|
|
63839
|
-
// Deployment environment for log tagging, when it cannot be read off
|
|
63840
|
-
// NODE_ENV. Set only by the PDF render worker pools, which must run with
|
|
63841
|
-
// NODE_ENV="production" to get the production React build regardless of which
|
|
63842
|
-
// environment the pod is actually in (see core/invoicing/services/pdf/index.ts).
|
|
63843
|
-
// Unset everywhere else, so the NODE_ENV fallback keeps current behaviour.
|
|
63844
|
-
APP_ENV: types.string().optional(),
|
|
63845
|
-
DD_SERVICE: types.string().optional(),
|
|
63846
|
-
LOGGER_CONSOLE_ENABLED: types.boolean().optional(),
|
|
63847
|
-
LOGGER_STDOUT_ENABLED: types.boolean().optional(),
|
|
63848
|
-
NODE_ENV: types.enum(["local", "test", "staging", "sandbox", "production"]),
|
|
63849
|
-
EVENT_LOOP_MONITORING_ENABLED: types.boolean().optional(),
|
|
63850
|
-
MEMORY_MONITORING_ENABLED: types.boolean().optional(),
|
|
63851
|
-
MEMORY_MONITORING_INTERVAL_MS: types.number().optional()
|
|
63852
|
-
// secrets
|
|
63853
|
-
}, {
|
|
63854
|
-
APP_VERSION: void 0,
|
|
63855
|
-
APP_ENV: void 0,
|
|
63856
|
-
DD_SERVICE: void 0,
|
|
63857
|
-
LOGGER_CONSOLE_ENABLED: false,
|
|
63858
|
-
LOGGER_STDOUT_ENABLED: false,
|
|
63859
|
-
EVENT_LOOP_MONITORING_ENABLED: false,
|
|
63860
|
-
MEMORY_MONITORING_ENABLED: false,
|
|
63861
|
-
MEMORY_MONITORING_INTERVAL_MS: 3e4,
|
|
63862
|
-
NODE_ENV: "test"
|
|
63863
|
-
});
|
|
63864
|
-
|
|
63865
|
-
// ../hyperline-monitoring/build/logger/logger.js
|
|
63866
|
-
import * as util from "node:util";
|
|
63867
|
-
import prune2 from "json-prune";
|
|
63868
|
-
import * as winston from "winston";
|
|
63869
|
-
|
|
63870
64674
|
// ../hyperline-monitoring/build/logger/formatting/format.js
|
|
63871
|
-
import prune from "json-prune";
|
|
63872
64675
|
var REDACTED_HEADER_KEY_PATTERN = /authorization|authenticate|cookie|secret|token|credential|signature|jwt|api[_-]?key|access[_-]?token|refresh[_-]?token|private[_-]?key/i;
|
|
63873
64676
|
function jsonFormat(info) {
|
|
63874
64677
|
const prunedInfo = JSON.parse(prune(info));
|
|
@@ -63929,14 +64732,106 @@ function transformPrune(info) {
|
|
|
63929
64732
|
});
|
|
63930
64733
|
return info;
|
|
63931
64734
|
}
|
|
64735
|
+
var MAX_AXIOS_ERROR_DEPTH = 5;
|
|
64736
|
+
var MAX_AXIOS_ERROR_CONTAINER_ENTRIES = 1e3;
|
|
64737
|
+
var MAX_AXIOS_ERROR_VISITED_NODES = 5e3;
|
|
64738
|
+
var REDACTED_BODY_KEYS = /* @__PURE__ */ new Set(["requestBody", "responseBody"]);
|
|
63932
64739
|
function transformAxiosError(info) {
|
|
63933
|
-
|
|
63934
|
-
|
|
63935
|
-
|
|
64740
|
+
let walk;
|
|
64741
|
+
for (const [key, value] of Object.entries(info)) {
|
|
64742
|
+
if (typeof value !== "object" || value === null || REDACTED_BODY_KEYS.has(key)) {
|
|
64743
|
+
continue;
|
|
63936
64744
|
}
|
|
63937
|
-
|
|
64745
|
+
walk ??= {
|
|
64746
|
+
formatted: /* @__PURE__ */ new Map(),
|
|
64747
|
+
remainingNodes: MAX_AXIOS_ERROR_VISITED_NODES
|
|
64748
|
+
};
|
|
64749
|
+
const formattedValue = formatNestedAxiosErrors({
|
|
64750
|
+
value,
|
|
64751
|
+
depth: MAX_AXIOS_ERROR_DEPTH,
|
|
64752
|
+
walk
|
|
64753
|
+
});
|
|
64754
|
+
if (formattedValue !== value) {
|
|
64755
|
+
info[key] = formattedValue;
|
|
64756
|
+
}
|
|
64757
|
+
}
|
|
63938
64758
|
return info;
|
|
63939
64759
|
}
|
|
64760
|
+
function formatNestedAxiosErrors({ value, depth, walk }) {
|
|
64761
|
+
if (typeof value !== "object" || value === null) {
|
|
64762
|
+
return value;
|
|
64763
|
+
}
|
|
64764
|
+
if (walk.formatted.has(value)) {
|
|
64765
|
+
return walk.formatted.get(value);
|
|
64766
|
+
}
|
|
64767
|
+
if (Reflect.get(value, "name") === "AxiosError") {
|
|
64768
|
+
const formattedError = walk.remainingNodes > 0 ? formatAxiosError(value) : summarizeAxiosError({ error: value });
|
|
64769
|
+
walk.remainingNodes -= 1;
|
|
64770
|
+
walk.formatted.set(value, formattedError);
|
|
64771
|
+
return formattedError;
|
|
64772
|
+
}
|
|
64773
|
+
const isWalkable = Array.isArray(value) || value instanceof Error || isPlainRecord(value);
|
|
64774
|
+
if (!isWalkable || depth <= 0 || walk.remainingNodes <= 0) {
|
|
64775
|
+
return value;
|
|
64776
|
+
}
|
|
64777
|
+
walk.formatted.set(value, "[Circular]");
|
|
64778
|
+
walk.remainingNodes -= 1;
|
|
64779
|
+
const formattedValue = formatWalkableValue({ value, depth, walk });
|
|
64780
|
+
walk.formatted.set(value, formattedValue);
|
|
64781
|
+
return formattedValue;
|
|
64782
|
+
}
|
|
64783
|
+
function summarizeAxiosError({ error: error48 }) {
|
|
64784
|
+
return {
|
|
64785
|
+
name: Reflect.get(error48, "name"),
|
|
64786
|
+
message: Reflect.get(error48, "message"),
|
|
64787
|
+
code: Reflect.get(error48, "code")
|
|
64788
|
+
};
|
|
64789
|
+
}
|
|
64790
|
+
function formatWalkableValue({ value, depth, walk }) {
|
|
64791
|
+
if (Array.isArray(value)) {
|
|
64792
|
+
if (value.length > MAX_AXIOS_ERROR_CONTAINER_ENTRIES) {
|
|
64793
|
+
return value;
|
|
64794
|
+
}
|
|
64795
|
+
let formattedItems;
|
|
64796
|
+
for (const [index, item] of value.entries()) {
|
|
64797
|
+
const formattedItem = formatNestedAxiosErrors({
|
|
64798
|
+
value: item,
|
|
64799
|
+
depth: depth - 1,
|
|
64800
|
+
walk
|
|
64801
|
+
});
|
|
64802
|
+
if (formattedItem !== item) {
|
|
64803
|
+
formattedItems ??= [...value];
|
|
64804
|
+
formattedItems[index] = formattedItem;
|
|
64805
|
+
}
|
|
64806
|
+
}
|
|
64807
|
+
return formattedItems ?? value;
|
|
64808
|
+
}
|
|
64809
|
+
const keys = Object.keys(value);
|
|
64810
|
+
if (keys.length > MAX_AXIOS_ERROR_CONTAINER_ENTRIES) {
|
|
64811
|
+
return value;
|
|
64812
|
+
}
|
|
64813
|
+
const formattedEntries = /* @__PURE__ */ new Map();
|
|
64814
|
+
for (const key of keys) {
|
|
64815
|
+
const nestedValue = Reflect.get(value, key);
|
|
64816
|
+
const formattedNestedValue = formatNestedAxiosErrors({
|
|
64817
|
+
value: nestedValue,
|
|
64818
|
+
depth: depth - 1,
|
|
64819
|
+
walk
|
|
64820
|
+
});
|
|
64821
|
+
if (formattedNestedValue !== nestedValue) {
|
|
64822
|
+
formattedEntries.set(key, formattedNestedValue);
|
|
64823
|
+
}
|
|
64824
|
+
}
|
|
64825
|
+
if (formattedEntries.size === 0) {
|
|
64826
|
+
return value;
|
|
64827
|
+
}
|
|
64828
|
+
return {
|
|
64829
|
+
...value,
|
|
64830
|
+
// Error properties are not enumerable, so the spread would drop them.
|
|
64831
|
+
...value instanceof Error ? { name: value.name, message: value.message, stack: value.stack } : {},
|
|
64832
|
+
...Object.fromEntries(formattedEntries)
|
|
64833
|
+
};
|
|
64834
|
+
}
|
|
63940
64835
|
function formatAxiosError(error48) {
|
|
63941
64836
|
if (!isRecord(error48) || error48.name !== "AxiosError") {
|
|
63942
64837
|
return error48;
|
|
@@ -63949,9 +64844,9 @@ function formatAxiosError(error48) {
|
|
|
63949
64844
|
code: error48.code,
|
|
63950
64845
|
request: {
|
|
63951
64846
|
method: request?.method,
|
|
63952
|
-
url: request?.url,
|
|
64847
|
+
url: typeof request?.url === "string" ? redactLogUrl({ url: request.url }) : request?.url,
|
|
63953
64848
|
baseURL: request?.baseURL,
|
|
63954
|
-
params: request?.params,
|
|
64849
|
+
params: redactLogBody({ body: request?.params }),
|
|
63955
64850
|
headers: redactHeaders({ headers: request?.headers }),
|
|
63956
64851
|
"axios-retry": request?.["axios-retry"]
|
|
63957
64852
|
},
|
|
@@ -63959,7 +64854,7 @@ function formatAxiosError(error48) {
|
|
|
63959
64854
|
status: response?.status,
|
|
63960
64855
|
statusText: response?.statusText,
|
|
63961
64856
|
headers: redactHeaders({ headers: response?.headers }),
|
|
63962
|
-
data: response?.data
|
|
64857
|
+
data: redactLogBody({ body: response?.data })
|
|
63963
64858
|
}
|
|
63964
64859
|
};
|
|
63965
64860
|
}
|
|
@@ -63972,6 +64867,10 @@ function redactHeaders({ headers }) {
|
|
|
63972
64867
|
REDACTED_HEADER_KEY_PATTERN.test(headerKey) ? "<redacted>" : headerValue
|
|
63973
64868
|
]));
|
|
63974
64869
|
}
|
|
64870
|
+
function isPlainRecord(value) {
|
|
64871
|
+
const prototype = Object.getPrototypeOf(value);
|
|
64872
|
+
return prototype === Object.prototype || prototype === null;
|
|
64873
|
+
}
|
|
63975
64874
|
function isRecord(value) {
|
|
63976
64875
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
63977
64876
|
}
|
|
@@ -64001,7 +64900,7 @@ function logHttpResponse(logger2, response, responseTime, extra) {
|
|
|
64001
64900
|
const responseMetadata = {
|
|
64002
64901
|
statusCode,
|
|
64003
64902
|
responseTime,
|
|
64004
|
-
responseBody,
|
|
64903
|
+
responseBody: redactLogBody({ body: responseBody }),
|
|
64005
64904
|
// Redacted so secrets (authorization/cookie/token/…) never reach the logs
|
|
64006
64905
|
// while diagnostic headers (e.g. rate-limit headers on a 429) stay visible.
|
|
64007
64906
|
responseHeaders: responseHeaders === void 0 ? void 0 : redactHeaders({ headers: responseHeaders })
|
|
@@ -64014,14 +64913,15 @@ function logHttpResponse(logger2, response, responseTime, extra) {
|
|
|
64014
64913
|
}
|
|
64015
64914
|
function transform2(request) {
|
|
64016
64915
|
const method = request.method.toUpperCase();
|
|
64017
|
-
const
|
|
64916
|
+
const originalUrl = redactLogUrl({ url: request.originalUrl });
|
|
64917
|
+
const message = `${method} ${originalUrl}`;
|
|
64018
64918
|
const metadata = {};
|
|
64019
64919
|
metadata.method = method;
|
|
64020
|
-
metadata.url = request.url;
|
|
64021
|
-
metadata.path = request.path;
|
|
64920
|
+
metadata.url = redactLogUrl({ url: request.url });
|
|
64921
|
+
metadata.path = redactLogUrl({ url: request.path });
|
|
64022
64922
|
metadata.hostname = request.hostname;
|
|
64023
|
-
metadata.originalUrl =
|
|
64024
|
-
metadata.requestBody =
|
|
64923
|
+
metadata.originalUrl = originalUrl;
|
|
64924
|
+
metadata.requestBody = redactLogBody({ body: request.body });
|
|
64025
64925
|
metadata.routePath = transformUrlIntoRoutePath(request);
|
|
64026
64926
|
metadata.apiKeyEnd = request.headers["authorization"]?.slice(-6);
|
|
64027
64927
|
return { message, metadata };
|
|
@@ -64068,7 +64968,16 @@ function buildLoggerFactory({ config: config4, context }) {
|
|
|
64068
64968
|
const internalLogger = winston.createLogger({
|
|
64069
64969
|
transports: transports2,
|
|
64070
64970
|
defaultMeta,
|
|
64071
|
-
format: winston.format.combine(
|
|
64971
|
+
format: winston.format.combine(
|
|
64972
|
+
winston.format.splat(),
|
|
64973
|
+
winston.format(addMetadata({ getCorrelationId, getExecutionContext }))(),
|
|
64974
|
+
// Before pruning: json-prune would otherwise serialize a binary
|
|
64975
|
+
// `response.data` byte by byte before it is summarised (#6006).
|
|
64976
|
+
winston.format(transformAxiosError)(),
|
|
64977
|
+
winston.format(transformErrorEnrich)({ depth: 5 }),
|
|
64978
|
+
winston.format(transformPrune)(),
|
|
64979
|
+
winston.format.timestamp()
|
|
64980
|
+
),
|
|
64072
64981
|
exitOnError: false
|
|
64073
64982
|
});
|
|
64074
64983
|
function createLogger3({ serviceName }) {
|
|
@@ -66415,11 +67324,32 @@ import { deepEqual } from "fast-equals";
|
|
|
66415
67324
|
|
|
66416
67325
|
// ../hyperline-lib/build/utils/realignDatesToTimezone.js
|
|
66417
67326
|
var import_shared4 = __toESM(require_shared(), 1);
|
|
66418
|
-
var
|
|
67327
|
+
var MILLISECONDS_PER_HOUR = 60 * 60 * 1e3;
|
|
67328
|
+
var MILLISECONDS_PER_DAY = 24 * MILLISECONDS_PER_HOUR;
|
|
66419
67329
|
var LAST_MILLISECOND_OF_DAY = MILLISECONDS_PER_DAY - 1;
|
|
67330
|
+
var dateRealignmentModeSchema = external_exports.enum([
|
|
67331
|
+
"utc_midnight_import",
|
|
67332
|
+
"dst_hour_drift",
|
|
67333
|
+
"month_start_drift",
|
|
67334
|
+
"manual_phase_end_midnight"
|
|
67335
|
+
]).default("utc_midnight_import");
|
|
67336
|
+
var DST_HOUR_SHIFT_BY_LOCAL_MILLISECOND_OF_DAY = /* @__PURE__ */ new Map([
|
|
67337
|
+
[23 * MILLISECONDS_PER_HOUR, MILLISECONDS_PER_HOUR],
|
|
67338
|
+
[LAST_MILLISECOND_OF_DAY - MILLISECONDS_PER_HOUR, MILLISECONDS_PER_HOUR],
|
|
67339
|
+
[MILLISECONDS_PER_HOUR, -MILLISECONDS_PER_HOUR],
|
|
67340
|
+
[MILLISECONDS_PER_HOUR - 1, -MILLISECONDS_PER_HOUR]
|
|
67341
|
+
]);
|
|
67342
|
+
|
|
67343
|
+
// ../hyperline-lib/build/utils/overviewPeriods.js
|
|
67344
|
+
var OverviewPeriodSchema = external_exports.enum([
|
|
67345
|
+
"this_month",
|
|
67346
|
+
"last_month",
|
|
67347
|
+
"last_3_months"
|
|
67348
|
+
]);
|
|
66420
67349
|
|
|
66421
67350
|
// ../hyperline-lib/build/utils/api/filterBuilder.js
|
|
66422
|
-
var
|
|
67351
|
+
var nullAuthorizedOperators = ["isNull", "isNotNull"];
|
|
67352
|
+
var baseAuthorizedOperators = ["not", ...nullAuthorizedOperators];
|
|
66423
67353
|
var booleanAuthorizedOperators = [
|
|
66424
67354
|
...baseAuthorizedOperators,
|
|
66425
67355
|
"equals"
|
|
@@ -66448,6 +67378,7 @@ var authorizedOperators = [
|
|
|
66448
67378
|
...arrayAuthorizedOperators,
|
|
66449
67379
|
...mapAuthorizedOperators
|
|
66450
67380
|
];
|
|
67381
|
+
var NullFilterValueSchema = BooleanSchema.or(external_exports.literal("")).optional();
|
|
66451
67382
|
|
|
66452
67383
|
// ../hyperline-lib/build/http/dto/state.js
|
|
66453
67384
|
var StateSchema = external_exports.enum(usStates).openapi({
|
|
@@ -66485,150 +67416,6 @@ var isAxiosError = axios.isAxiosError;
|
|
|
66485
67416
|
// ../hyperline-lib/build/httpClient/httpClient.js
|
|
66486
67417
|
import axios2 from "axios";
|
|
66487
67418
|
import axiosRetry, { isNetworkOrIdempotentRequestError, retryAfter } from "axios-retry";
|
|
66488
|
-
|
|
66489
|
-
// ../hyperline-lib/build/httpClient/logRedaction.js
|
|
66490
|
-
var REDACTED_KEY_NAMES = /* @__PURE__ */ new Set([
|
|
66491
|
-
"accesstoken",
|
|
66492
|
-
"apikey",
|
|
66493
|
-
"apitoken",
|
|
66494
|
-
"assertion",
|
|
66495
|
-
"authtoken",
|
|
66496
|
-
"clientassertion",
|
|
66497
|
-
"codeverifier",
|
|
66498
|
-
"credentials",
|
|
66499
|
-
"idtoken",
|
|
66500
|
-
"privatekey",
|
|
66501
|
-
"refreshtoken",
|
|
66502
|
-
"sessiontoken",
|
|
66503
|
-
"token"
|
|
66504
|
-
]);
|
|
66505
|
-
var REDACTED_KEY_SUFFIX_PATTERN = /(secret|password)$/;
|
|
66506
|
-
var REDACTED_KEY_CANDIDATE_PATTERN = /token|key|secret|password|assertion|verifier|credentials/i;
|
|
66507
|
-
var REDACTED_VALUE = "<redacted>";
|
|
66508
|
-
var MAX_REDACTION_DEPTH = 10;
|
|
66509
|
-
var MAX_PARSED_STRING_LENGTH = 16384;
|
|
66510
|
-
var MAX_VISITED_NODES = 1e3;
|
|
66511
|
-
var MAX_CONTAINER_ENTRIES = MAX_VISITED_NODES;
|
|
66512
|
-
function redactLogBody({ body }) {
|
|
66513
|
-
return redactValue({
|
|
66514
|
-
value: body,
|
|
66515
|
-
depth: MAX_REDACTION_DEPTH,
|
|
66516
|
-
budget: { remainingNodes: MAX_VISITED_NODES }
|
|
66517
|
-
});
|
|
66518
|
-
}
|
|
66519
|
-
function redactLogUrl({ url: url2 }) {
|
|
66520
|
-
const queryIndex = url2.indexOf("?");
|
|
66521
|
-
if (queryIndex === -1 || url2.length > MAX_PARSED_STRING_LENGTH) {
|
|
66522
|
-
return url2;
|
|
66523
|
-
}
|
|
66524
|
-
const redactedQuery = redactFormEncoded({ text: url2.slice(queryIndex + 1) });
|
|
66525
|
-
return redactedQuery === void 0 ? url2 : `${url2.slice(0, queryIndex)}?${redactedQuery}`;
|
|
66526
|
-
}
|
|
66527
|
-
function redactValue({ value, depth, budget }) {
|
|
66528
|
-
if (depth <= 0 || budget.remainingNodes <= 0) {
|
|
66529
|
-
return value;
|
|
66530
|
-
}
|
|
66531
|
-
budget.remainingNodes -= 1;
|
|
66532
|
-
if (typeof value === "string") {
|
|
66533
|
-
return redactString({ text: value, budget });
|
|
66534
|
-
}
|
|
66535
|
-
if (value instanceof URLSearchParams) {
|
|
66536
|
-
return redactFormEncoded({ text: value.toString() }) ?? value;
|
|
66537
|
-
}
|
|
66538
|
-
if (Array.isArray(value)) {
|
|
66539
|
-
return redactArray({ items: value, depth, budget });
|
|
66540
|
-
}
|
|
66541
|
-
if (isPlainObject2(value)) {
|
|
66542
|
-
return redactObject({ record: value, depth, budget });
|
|
66543
|
-
}
|
|
66544
|
-
return value;
|
|
66545
|
-
}
|
|
66546
|
-
function redactArray({ items, depth, budget }) {
|
|
66547
|
-
if (items.length > MAX_CONTAINER_ENTRIES) {
|
|
66548
|
-
return items;
|
|
66549
|
-
}
|
|
66550
|
-
let redactedItems;
|
|
66551
|
-
for (const [index, item] of items.entries()) {
|
|
66552
|
-
if (budget.remainingNodes <= 0) {
|
|
66553
|
-
break;
|
|
66554
|
-
}
|
|
66555
|
-
const redactedItem = redactValue({ value: item, depth: depth - 1, budget });
|
|
66556
|
-
if (redactedItem !== item) {
|
|
66557
|
-
redactedItems ??= [...items];
|
|
66558
|
-
redactedItems[index] = redactedItem;
|
|
66559
|
-
}
|
|
66560
|
-
}
|
|
66561
|
-
return redactedItems ?? items;
|
|
66562
|
-
}
|
|
66563
|
-
function redactObject({ record: record2, depth, budget }) {
|
|
66564
|
-
const redactedEntries = /* @__PURE__ */ new Map();
|
|
66565
|
-
let entryCount = 0;
|
|
66566
|
-
for (const key in record2) {
|
|
66567
|
-
if (!Object.hasOwn(record2, key)) {
|
|
66568
|
-
continue;
|
|
66569
|
-
}
|
|
66570
|
-
entryCount += 1;
|
|
66571
|
-
if (entryCount > MAX_CONTAINER_ENTRIES) {
|
|
66572
|
-
return record2;
|
|
66573
|
-
}
|
|
66574
|
-
if (budget.remainingNodes <= 0) {
|
|
66575
|
-
break;
|
|
66576
|
-
}
|
|
66577
|
-
const nestedValue = record2[key];
|
|
66578
|
-
const redactedNestedValue = isRedactedKey({ key }) && nestedValue != null ? REDACTED_VALUE : redactValue({ value: nestedValue, depth: depth - 1, budget });
|
|
66579
|
-
if (redactedNestedValue !== nestedValue) {
|
|
66580
|
-
redactedEntries.set(key, redactedNestedValue);
|
|
66581
|
-
}
|
|
66582
|
-
}
|
|
66583
|
-
return redactedEntries.size === 0 ? record2 : { ...record2, ...Object.fromEntries(redactedEntries) };
|
|
66584
|
-
}
|
|
66585
|
-
function redactString({ text, budget }) {
|
|
66586
|
-
if (text.length > MAX_PARSED_STRING_LENGTH) {
|
|
66587
|
-
return text;
|
|
66588
|
-
}
|
|
66589
|
-
const trimmedText = text.trim();
|
|
66590
|
-
if (trimmedText.startsWith("{") || trimmedText.startsWith("[")) {
|
|
66591
|
-
try {
|
|
66592
|
-
const parsedValue = JSON.parse(trimmedText);
|
|
66593
|
-
const redactedValue = redactValue({
|
|
66594
|
-
value: parsedValue,
|
|
66595
|
-
depth: MAX_REDACTION_DEPTH,
|
|
66596
|
-
budget
|
|
66597
|
-
});
|
|
66598
|
-
return redactedValue === parsedValue ? text : JSON.stringify(redactedValue);
|
|
66599
|
-
} catch {
|
|
66600
|
-
return text;
|
|
66601
|
-
}
|
|
66602
|
-
}
|
|
66603
|
-
return redactFormEncoded({ text }) ?? text;
|
|
66604
|
-
}
|
|
66605
|
-
function redactFormEncoded({ text }) {
|
|
66606
|
-
if (!text.includes("=") || !REDACTED_KEY_CANDIDATE_PATTERN.test(text)) {
|
|
66607
|
-
return void 0;
|
|
66608
|
-
}
|
|
66609
|
-
const params = new URLSearchParams(text);
|
|
66610
|
-
let hasRedactedParam = false;
|
|
66611
|
-
for (const key of new Set(params.keys())) {
|
|
66612
|
-
if (isRedactedKey({ key })) {
|
|
66613
|
-
params.set(key, REDACTED_VALUE);
|
|
66614
|
-
hasRedactedParam = true;
|
|
66615
|
-
}
|
|
66616
|
-
}
|
|
66617
|
-
return hasRedactedParam ? params.toString() : void 0;
|
|
66618
|
-
}
|
|
66619
|
-
function isRedactedKey({ key }) {
|
|
66620
|
-
const normalizedKey = key.toLowerCase().replace(/[_-]/g, "");
|
|
66621
|
-
return REDACTED_KEY_NAMES.has(normalizedKey) || REDACTED_KEY_SUFFIX_PATTERN.test(normalizedKey);
|
|
66622
|
-
}
|
|
66623
|
-
function isPlainObject2(value) {
|
|
66624
|
-
if (typeof value !== "object" || value === null) {
|
|
66625
|
-
return false;
|
|
66626
|
-
}
|
|
66627
|
-
const prototype = Object.getPrototypeOf(value);
|
|
66628
|
-
return prototype === Object.prototype || prototype === null;
|
|
66629
|
-
}
|
|
66630
|
-
|
|
66631
|
-
// ../hyperline-lib/build/httpClient/httpClient.js
|
|
66632
67419
|
import { AxiosError } from "axios";
|
|
66633
67420
|
var recommendedRetryConfig = {
|
|
66634
67421
|
retries: 3,
|
|
@@ -66696,14 +67483,14 @@ function isTooManyRequestsError(error48) {
|
|
|
66696
67483
|
return error48.response?.status === 429;
|
|
66697
67484
|
}
|
|
66698
67485
|
var toLogRequest = (config4) => {
|
|
66699
|
-
const url2 =
|
|
67486
|
+
const url2 = config4.url ?? "";
|
|
66700
67487
|
return {
|
|
66701
67488
|
method: config4.method ?? "",
|
|
66702
67489
|
url: url2,
|
|
66703
67490
|
path: url2,
|
|
66704
67491
|
hostname: config4.baseURL ?? "",
|
|
66705
67492
|
originalUrl: `${config4.baseURL ?? ""}${url2}`,
|
|
66706
|
-
body:
|
|
67493
|
+
body: config4.data,
|
|
66707
67494
|
headers: {}
|
|
66708
67495
|
};
|
|
66709
67496
|
};
|
|
@@ -66711,7 +67498,7 @@ var toLogRequest = (config4) => {
|
|
|
66711
67498
|
// ../hyperline-lib/build/httpClient/publicUrlFetch.js
|
|
66712
67499
|
import { lookup } from "node:dns/promises";
|
|
66713
67500
|
import { isIP } from "node:net";
|
|
66714
|
-
import { Agent } from "undici";
|
|
67501
|
+
import { Agent, fetch as fetch2 } from "undici";
|
|
66715
67502
|
var PINNED_DISPATCHER_TTL_MS = 5 * 60 * 1e3;
|
|
66716
67503
|
var DEFAULT_MAX_RESPONSE_BYTES = 2 * 1024 * 1024;
|
|
66717
67504
|
|
|
@@ -66723,9 +67510,13 @@ import multer2 from "multer";
|
|
|
66723
67510
|
// ../hyperline-lib/build/httpRouter/file.js
|
|
66724
67511
|
import helmet from "helmet";
|
|
66725
67512
|
|
|
66726
|
-
// ../hyperline-lib/build/publicApi/auth/
|
|
67513
|
+
// ../hyperline-lib/build/publicApi/auth/apiKey.js
|
|
66727
67514
|
import { randomBytes as randomBytes2, scryptSync } from "node:crypto";
|
|
66728
67515
|
|
|
67516
|
+
// ../hyperline-lib/build/publicApi/auth/apiKeyHashCache.js
|
|
67517
|
+
import { createHash as createHash4 } from "node:crypto";
|
|
67518
|
+
var TTL_MS = 5 * 6e4;
|
|
67519
|
+
|
|
66729
67520
|
// ../hyperline-mcp/build/requestBuilder.js
|
|
66730
67521
|
function buildRequestConfig(path2, args, method, queryParamKeys = []) {
|
|
66731
67522
|
const { url: url2, usedKeys } = replacePathParams(path2, args);
|