@hyperline/cli 0.1.0-build.1.d883cda → 0.1.0-build.1.da59c98
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 +1617 -767
- 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.",
|
|
@@ -37739,10 +37739,9 @@ Examples:
|
|
|
37739
37739
|
baseUrlOverride: resolveIngestBaseUrl(ctx.baseUrl)
|
|
37740
37740
|
});
|
|
37741
37741
|
});
|
|
37742
|
-
resource.command("send").description(`Send a single billable event.`).requiredOption("--customer-id <value>", `Customer ID or external ID`).requiredOption("--event-type <value>", `Event type`).requiredOption("--timestamp <value>", `ISO8601 timestamp`).requiredOption("--record <value>", `Event record as JSON (must include "id" key)`).
|
|
37742
|
+
resource.command("send").description(`Send a single billable event.`).requiredOption("--customer-id <value>", `Customer ID or external ID`).requiredOption("--event-type <value>", `Event type`).requiredOption("--timestamp <value>", `ISO8601 timestamp`).requiredOption("--record <value>", `Event record as JSON (must include "id" key)`).addHelpText("after", `
|
|
37743
37743
|
Examples:
|
|
37744
|
-
hyperline events send --customer-id cus_xyz --event-type api_call --timestamp 2024-01-15T10:00:00Z --record '{"id":"evt_1","duration":32}'
|
|
37745
|
-
hyperline events send --customer-id cus_xyz --event-type api_call --timestamp 2024-01-15T10:00:00Z --record '{"id":"evt_1"}' --with-price-calculation`).action(async (opts) => {
|
|
37744
|
+
hyperline events send --customer-id cus_xyz --event-type api_call --timestamp 2024-01-15T10:00:00Z --record '{"id":"evt_1","duration":32}'`).action(async (opts) => {
|
|
37746
37745
|
const ctx = resource.parent?.opts()._ctx;
|
|
37747
37746
|
if (!ctx) {
|
|
37748
37747
|
process.stderr.write("Error: Not authenticated\n");
|
|
@@ -37762,14 +37761,10 @@ Examples:
|
|
|
37762
37761
|
timestamp: opts.timestamp,
|
|
37763
37762
|
record: record2
|
|
37764
37763
|
};
|
|
37765
|
-
const args = {};
|
|
37766
|
-
if (opts.withPriceCalculation !== void 0)
|
|
37767
|
-
args.with_price_calculation = true;
|
|
37768
37764
|
await ctx.execute({
|
|
37769
37765
|
method: "POST",
|
|
37770
37766
|
path: "/v1/events",
|
|
37771
|
-
args,
|
|
37772
|
-
queryParamKeys: ["with_price_calculation"],
|
|
37767
|
+
args: {},
|
|
37773
37768
|
body,
|
|
37774
37769
|
baseUrlOverride: resolveIngestBaseUrl(ctx.baseUrl)
|
|
37775
37770
|
});
|
|
@@ -38170,7 +38165,7 @@ Examples:
|
|
|
38170
38165
|
// build/commands/generated/accounting-journal-entries.js
|
|
38171
38166
|
function registerAccounting_Journal_EntriesCommands(parent) {
|
|
38172
38167
|
const resource = parent.command("accounting-journal-entries").description("Manage accounting > journal entries");
|
|
38173
|
-
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", `
|
|
38174
38169
|
Examples:
|
|
38175
38170
|
hyperline accounting-journal-entries list-journal-entries
|
|
38176
38171
|
hyperline accounting-journal-entries list-journal-entries --take <take> --entry-number <entry_number>`).action(async (opts) => {
|
|
@@ -38414,9 +38409,10 @@ Examples:
|
|
|
38414
38409
|
queryParamKeys: ["invoicing_entity_id"]
|
|
38415
38410
|
});
|
|
38416
38411
|
});
|
|
38417
|
-
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", `
|
|
38418
38413
|
Examples:
|
|
38419
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>
|
|
38420
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) => {
|
|
38421
38417
|
const ctx = resource.parent?.opts()._ctx;
|
|
38422
38418
|
if (!ctx) {
|
|
@@ -38438,6 +38434,8 @@ Examples:
|
|
|
38438
38434
|
args.currency = opts.currency;
|
|
38439
38435
|
if (opts.entryNumberPattern !== void 0)
|
|
38440
38436
|
args.entry_number_pattern = opts.entryNumberPattern;
|
|
38437
|
+
if (opts.fiscalYearEndMonth !== void 0)
|
|
38438
|
+
args.fiscal_year_end_month = Number(opts.fiscalYearEndMonth);
|
|
38441
38439
|
if (opts.isPrimary !== void 0)
|
|
38442
38440
|
args.is_primary = true;
|
|
38443
38441
|
if (opts.isInactive !== void 0)
|
|
@@ -38509,6 +38507,94 @@ Examples:
|
|
|
38509
38507
|
queryParamKeys: []
|
|
38510
38508
|
});
|
|
38511
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
|
+
});
|
|
38512
38598
|
}
|
|
38513
38599
|
|
|
38514
38600
|
// build/commands/generated/accounting-reports.js
|
|
@@ -38869,7 +38955,7 @@ Examples:
|
|
|
38869
38955
|
// build/commands/generated/accounting-rules.js
|
|
38870
38956
|
function registerAccounting_RulesCommands(parent) {
|
|
38871
38957
|
const resource = parent.command("accounting-rules").description("Manage accounting > rules");
|
|
38872
|
-
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", `
|
|
38873
38959
|
Examples:
|
|
38874
38960
|
hyperline accounting-rules list
|
|
38875
38961
|
hyperline accounting-rules list --take <take> --ledger-id <ledger_id>`).action(async (opts) => {
|
|
@@ -38883,10 +38969,6 @@ Examples:
|
|
|
38883
38969
|
args.ledger_id = opts.ledgerId;
|
|
38884
38970
|
if (opts["ledgerId.not"] !== void 0)
|
|
38885
38971
|
args.ledger_id__not = opts["ledgerId.not"];
|
|
38886
|
-
if (opts["ledgerId.isNull"] !== void 0)
|
|
38887
|
-
args.ledger_id__isNull = opts["ledgerId.isNull"];
|
|
38888
|
-
if (opts["ledgerId.isNotNull"] !== void 0)
|
|
38889
|
-
args.ledger_id__isNotNull = opts["ledgerId.isNotNull"];
|
|
38890
38972
|
if (opts["ledgerId.equals"] !== void 0)
|
|
38891
38973
|
args.ledger_id__equals = opts["ledgerId.equals"];
|
|
38892
38974
|
if (opts["ledgerId.contains"] !== void 0)
|
|
@@ -38899,10 +38981,6 @@ Examples:
|
|
|
38899
38981
|
args.category = opts.category;
|
|
38900
38982
|
if (opts["category.not"] !== void 0)
|
|
38901
38983
|
args.category__not = opts["category.not"];
|
|
38902
|
-
if (opts["category.isNull"] !== void 0)
|
|
38903
|
-
args.category__isNull = opts["category.isNull"];
|
|
38904
|
-
if (opts["category.isNotNull"] !== void 0)
|
|
38905
|
-
args.category__isNotNull = opts["category.isNotNull"];
|
|
38906
38984
|
if (opts["category.equals"] !== void 0)
|
|
38907
38985
|
args.category__equals = opts["category.equals"];
|
|
38908
38986
|
if (opts["category.contains"] !== void 0)
|
|
@@ -38924,16 +39002,12 @@ Examples:
|
|
|
38924
39002
|
"skip",
|
|
38925
39003
|
"ledger_id",
|
|
38926
39004
|
"ledger_id__not",
|
|
38927
|
-
"ledger_id__isNull",
|
|
38928
|
-
"ledger_id__isNotNull",
|
|
38929
39005
|
"ledger_id__equals",
|
|
38930
39006
|
"ledger_id__contains",
|
|
38931
39007
|
"ledger_id__startsWith",
|
|
38932
39008
|
"ledger_id__endWith",
|
|
38933
39009
|
"category",
|
|
38934
39010
|
"category__not",
|
|
38935
|
-
"category__isNull",
|
|
38936
|
-
"category__isNotNull",
|
|
38937
39011
|
"category__equals",
|
|
38938
39012
|
"category__contains",
|
|
38939
39013
|
"category__startsWith",
|
|
@@ -39013,7 +39087,7 @@ Examples:
|
|
|
39013
39087
|
queryParamKeys: []
|
|
39014
39088
|
});
|
|
39015
39089
|
});
|
|
39016
|
-
resource.command("create").description(`Create a new accounting rule for account code routing or journal posting.`).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("--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("--interval-period <value>", `Billing interval period filter (
|
|
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", `
|
|
39017
39091
|
Examples:
|
|
39018
39092
|
hyperline accounting-rules create --category <category> --priority <priority>
|
|
39019
39093
|
hyperline accounting-rules create --category <category> --priority <priority> --ledger-id <ledger_id> --name <name>
|
|
@@ -39052,8 +39126,24 @@ Examples:
|
|
|
39052
39126
|
args.output_tax_ledger_account_id = opts.outputTaxLedgerAccountId;
|
|
39053
39127
|
if (opts.uncollectibleDebitLedgerAccountId !== void 0)
|
|
39054
39128
|
args.uncollectible_debit_ledger_account_id = opts.uncollectibleDebitLedgerAccountId;
|
|
39129
|
+
if (opts.allowanceForDoubtfulAccountsId !== void 0)
|
|
39130
|
+
args.allowance_for_doubtful_accounts_id = opts.allowanceForDoubtfulAccountsId;
|
|
39131
|
+
if (opts.providerFeesExpenseLedgerAccountId !== void 0)
|
|
39132
|
+
args.provider_fees_expense_ledger_account_id = opts.providerFeesExpenseLedgerAccountId;
|
|
39133
|
+
if (opts.paymentProcessingFeesExpenseLedgerAccountId !== void 0)
|
|
39134
|
+
args.payment_processing_fees_expense_ledger_account_id = opts.paymentProcessingFeesExpenseLedgerAccountId;
|
|
39135
|
+
if (opts.paymentProcessingFeesRevenueLedgerAccountId !== void 0)
|
|
39136
|
+
args.payment_processing_fees_revenue_ledger_account_id = opts.paymentProcessingFeesRevenueLedgerAccountId;
|
|
39055
39137
|
if (opts.customerCreditsLedgerAccountId !== void 0)
|
|
39056
39138
|
args.customer_credits_ledger_account_id = opts.customerCreditsLedgerAccountId;
|
|
39139
|
+
if (opts.revRecMethod !== void 0)
|
|
39140
|
+
args.rev_rec_method = opts.revRecMethod;
|
|
39141
|
+
if (opts.revRecGranularity !== void 0)
|
|
39142
|
+
args.rev_rec_granularity = opts.revRecGranularity;
|
|
39143
|
+
if (opts.revRecPointInTimeBasis !== void 0)
|
|
39144
|
+
args.rev_rec_point_in_time_basis = opts.revRecPointInTimeBasis;
|
|
39145
|
+
if (opts.discountRecognitionMethod !== void 0)
|
|
39146
|
+
args.discount_recognition_method = opts.discountRecognitionMethod;
|
|
39057
39147
|
if (opts.journalId !== void 0)
|
|
39058
39148
|
args.journal_id = opts.journalId;
|
|
39059
39149
|
if (opts.entityType !== void 0)
|
|
@@ -39072,12 +39162,22 @@ Examples:
|
|
|
39072
39162
|
args.currencies = JSON.parse(opts.currencies);
|
|
39073
39163
|
if (opts.countries !== void 0)
|
|
39074
39164
|
args.countries = JSON.parse(opts.countries);
|
|
39165
|
+
if (opts.taxSchemes !== void 0)
|
|
39166
|
+
args.tax_schemes = JSON.parse(opts.taxSchemes);
|
|
39167
|
+
if (opts.taxTerritories !== void 0)
|
|
39168
|
+
args.tax_territories = JSON.parse(opts.taxTerritories);
|
|
39169
|
+
if (opts.taxRateClasses !== void 0)
|
|
39170
|
+
args.tax_rate_classes = JSON.parse(opts.taxRateClasses);
|
|
39075
39171
|
if (opts.couponIds !== void 0)
|
|
39076
39172
|
args.coupon_ids = JSON.parse(opts.couponIds);
|
|
39077
39173
|
if (opts.clientProviderIds !== void 0)
|
|
39078
39174
|
args.client_provider_ids = JSON.parse(opts.clientProviderIds);
|
|
39079
39175
|
if (opts.paymentMethodTypes !== void 0)
|
|
39080
39176
|
args.payment_method_types = JSON.parse(opts.paymentMethodTypes);
|
|
39177
|
+
if (opts.bankAccountIds !== void 0)
|
|
39178
|
+
args.bank_account_ids = JSON.parse(opts.bankAccountIds);
|
|
39179
|
+
if (opts.invoiceTypes !== void 0)
|
|
39180
|
+
args.invoice_types = JSON.parse(opts.invoiceTypes);
|
|
39081
39181
|
if (opts.customPropertyFilters !== void 0)
|
|
39082
39182
|
args.custom_property_filters = JSON.parse(opts.customPropertyFilters);
|
|
39083
39183
|
await ctx.execute({
|
|
@@ -39087,7 +39187,7 @@ Examples:
|
|
|
39087
39187
|
queryParamKeys: []
|
|
39088
39188
|
});
|
|
39089
39189
|
});
|
|
39090
|
-
resource.command("update").description(`Update an existing accounting rule.`).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("--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("--interval-period <value>", `Billing interval period filter (
|
|
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", `
|
|
39091
39191
|
Examples:
|
|
39092
39192
|
hyperline accounting-rules update --id <id>
|
|
39093
39193
|
hyperline accounting-rules update --id <id> --name <name> --category <category>
|
|
@@ -39126,8 +39226,24 @@ Examples:
|
|
|
39126
39226
|
args.output_tax_ledger_account_id = opts.outputTaxLedgerAccountId;
|
|
39127
39227
|
if (opts.uncollectibleDebitLedgerAccountId !== void 0)
|
|
39128
39228
|
args.uncollectible_debit_ledger_account_id = opts.uncollectibleDebitLedgerAccountId;
|
|
39229
|
+
if (opts.allowanceForDoubtfulAccountsId !== void 0)
|
|
39230
|
+
args.allowance_for_doubtful_accounts_id = opts.allowanceForDoubtfulAccountsId;
|
|
39231
|
+
if (opts.providerFeesExpenseLedgerAccountId !== void 0)
|
|
39232
|
+
args.provider_fees_expense_ledger_account_id = opts.providerFeesExpenseLedgerAccountId;
|
|
39233
|
+
if (opts.paymentProcessingFeesExpenseLedgerAccountId !== void 0)
|
|
39234
|
+
args.payment_processing_fees_expense_ledger_account_id = opts.paymentProcessingFeesExpenseLedgerAccountId;
|
|
39235
|
+
if (opts.paymentProcessingFeesRevenueLedgerAccountId !== void 0)
|
|
39236
|
+
args.payment_processing_fees_revenue_ledger_account_id = opts.paymentProcessingFeesRevenueLedgerAccountId;
|
|
39129
39237
|
if (opts.customerCreditsLedgerAccountId !== void 0)
|
|
39130
39238
|
args.customer_credits_ledger_account_id = opts.customerCreditsLedgerAccountId;
|
|
39239
|
+
if (opts.revRecMethod !== void 0)
|
|
39240
|
+
args.rev_rec_method = opts.revRecMethod;
|
|
39241
|
+
if (opts.revRecGranularity !== void 0)
|
|
39242
|
+
args.rev_rec_granularity = opts.revRecGranularity;
|
|
39243
|
+
if (opts.revRecPointInTimeBasis !== void 0)
|
|
39244
|
+
args.rev_rec_point_in_time_basis = opts.revRecPointInTimeBasis;
|
|
39245
|
+
if (opts.discountRecognitionMethod !== void 0)
|
|
39246
|
+
args.discount_recognition_method = opts.discountRecognitionMethod;
|
|
39131
39247
|
if (opts.journalId !== void 0)
|
|
39132
39248
|
args.journal_id = opts.journalId;
|
|
39133
39249
|
if (opts.entityType !== void 0)
|
|
@@ -39146,12 +39262,22 @@ Examples:
|
|
|
39146
39262
|
args.currencies = JSON.parse(opts.currencies);
|
|
39147
39263
|
if (opts.countries !== void 0)
|
|
39148
39264
|
args.countries = JSON.parse(opts.countries);
|
|
39265
|
+
if (opts.taxSchemes !== void 0)
|
|
39266
|
+
args.tax_schemes = JSON.parse(opts.taxSchemes);
|
|
39267
|
+
if (opts.taxTerritories !== void 0)
|
|
39268
|
+
args.tax_territories = JSON.parse(opts.taxTerritories);
|
|
39269
|
+
if (opts.taxRateClasses !== void 0)
|
|
39270
|
+
args.tax_rate_classes = JSON.parse(opts.taxRateClasses);
|
|
39149
39271
|
if (opts.couponIds !== void 0)
|
|
39150
39272
|
args.coupon_ids = JSON.parse(opts.couponIds);
|
|
39151
39273
|
if (opts.clientProviderIds !== void 0)
|
|
39152
39274
|
args.client_provider_ids = JSON.parse(opts.clientProviderIds);
|
|
39153
39275
|
if (opts.paymentMethodTypes !== void 0)
|
|
39154
39276
|
args.payment_method_types = JSON.parse(opts.paymentMethodTypes);
|
|
39277
|
+
if (opts.bankAccountIds !== void 0)
|
|
39278
|
+
args.bank_account_ids = JSON.parse(opts.bankAccountIds);
|
|
39279
|
+
if (opts.invoiceTypes !== void 0)
|
|
39280
|
+
args.invoice_types = JSON.parse(opts.invoiceTypes);
|
|
39155
39281
|
if (opts.customPropertyFilters !== void 0)
|
|
39156
39282
|
args.custom_property_filters = JSON.parse(opts.customPropertyFilters);
|
|
39157
39283
|
await ctx.execute({
|
|
@@ -39187,7 +39313,7 @@ Examples:
|
|
|
39187
39313
|
queryParamKeys: []
|
|
39188
39314
|
});
|
|
39189
39315
|
});
|
|
39190
|
-
resource.command("resolve").description(`Preview which account codes would be resolved for a given context.`).requiredOption("--ledger-id <value>", `Identifier of the ledger this rule belongs to.`).requiredOption("--category <value>", `Rule category (e.g. accounting_software, invoice_posted).`).option("--product-id <value>", `Product ID to resolve against.`).option("--product-type <value>", `Product type to resolve against.`).option("--currency <value>", `Currency code to resolve against.`).option("--country <value>", `Country code to resolve against.`).option("--customer-id <value>", `Customer ID to resolve against.`).option("--invoice-type <value>", `Invoice kind to resolve against. Accepts \`invoice\` or \`document\`; any other invoice kind is matched as \`invoice\`.`).option("--interval-period <value>", `Billing interval period filter (
|
|
39316
|
+
resource.command("resolve").description(`Preview which account codes would be resolved for a given context.`).requiredOption("--ledger-id <value>", `Identifier of the ledger this rule belongs to.`).requiredOption("--category <value>", `Rule category (e.g. accounting_software, invoice_posted).`).option("--product-id <value>", `Product ID to resolve against.`).option("--product-type <value>", `Product type to resolve against.`).option("--currency <value>", `Currency code to resolve against.`).option("--country <value>", `Country code to resolve against.`).option("--tax-scheme <value>", `Tax scheme to resolve against.`).option("--tax-territory <value>", `Tax territory country code to resolve against.`).option("--tax-rate-class <value>", `Tax rate class to resolve against.`).option("--customer-id <value>", `Customer ID to resolve against.`).option("--coupon-id <value>", `Coupon ID to resolve against.`).option("--client-provider-id <value>", `Client provider ID to resolve against.`).option("--payment-method-type <value>", `Payment method type to resolve against.`).option("--bank-account-id <value>", `Bank account ID to resolve against.`).option("--invoice-type <value>", `Invoice kind to resolve against. Accepts \`invoice\` or \`document\`; any other invoice kind is matched as \`invoice\`.`).option("--interval-period <value>", `Billing interval period filter (months, years, etc.).`).option("--interval-count <number>", `Billing interval count filter.`).option("--custom-properties <json>", `Invoice custom property values to resolve against, keyed by custom property slug. Unknown slugs and null values are ignored. Rules with custom property filters never match without them.`).addHelpText("after", `
|
|
39191
39317
|
Examples:
|
|
39192
39318
|
hyperline accounting-rules resolve --ledger-id <ledger_id> --category <category>
|
|
39193
39319
|
hyperline accounting-rules resolve --ledger-id <ledger_id> --category <category> --product-id <product_id> --product-type <product_type>
|
|
@@ -39210,8 +39336,22 @@ Examples:
|
|
|
39210
39336
|
args.currency = opts.currency;
|
|
39211
39337
|
if (opts.country !== void 0)
|
|
39212
39338
|
args.country = opts.country;
|
|
39339
|
+
if (opts.taxScheme !== void 0)
|
|
39340
|
+
args.tax_scheme = opts.taxScheme;
|
|
39341
|
+
if (opts.taxTerritory !== void 0)
|
|
39342
|
+
args.tax_territory = opts.taxTerritory;
|
|
39343
|
+
if (opts.taxRateClass !== void 0)
|
|
39344
|
+
args.tax_rate_class = opts.taxRateClass;
|
|
39213
39345
|
if (opts.customerId !== void 0)
|
|
39214
39346
|
args.customer_id = opts.customerId;
|
|
39347
|
+
if (opts.couponId !== void 0)
|
|
39348
|
+
args.coupon_id = opts.couponId;
|
|
39349
|
+
if (opts.clientProviderId !== void 0)
|
|
39350
|
+
args.client_provider_id = opts.clientProviderId;
|
|
39351
|
+
if (opts.paymentMethodType !== void 0)
|
|
39352
|
+
args.payment_method_type = opts.paymentMethodType;
|
|
39353
|
+
if (opts.bankAccountId !== void 0)
|
|
39354
|
+
args.bank_account_id = opts.bankAccountId;
|
|
39215
39355
|
if (opts.invoiceType !== void 0)
|
|
39216
39356
|
args.invoice_type = opts.invoiceType;
|
|
39217
39357
|
if (opts.intervalPeriod !== void 0)
|
|
@@ -40444,6 +40584,71 @@ Examples:
|
|
|
40444
40584
|
});
|
|
40445
40585
|
}
|
|
40446
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
|
+
|
|
40447
40652
|
// build/commands/generated/analytics.js
|
|
40448
40653
|
function registerAnalyticsCommands(parent) {
|
|
40449
40654
|
const resource = parent.command("analytics").description("Manage analytics");
|
|
@@ -40537,6 +40742,84 @@ Examples:
|
|
|
40537
40742
|
});
|
|
40538
40743
|
}
|
|
40539
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
|
+
|
|
40540
40823
|
// build/commands/generated/companies.js
|
|
40541
40824
|
function registerCompaniesCommands(parent) {
|
|
40542
40825
|
const resource = parent.command("companies").description("Manage companies");
|
|
@@ -40603,7 +40886,7 @@ Examples:
|
|
|
40603
40886
|
queryParamKeys: ["take", "skip"]
|
|
40604
40887
|
});
|
|
40605
40888
|
});
|
|
40606
|
-
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", `
|
|
40607
40890
|
Examples:
|
|
40608
40891
|
hyperline coupons create --name <name> --type <type>
|
|
40609
40892
|
hyperline coupons create --name <name> --type <type> --description <description> --expiration-date <expiration_date>
|
|
@@ -40620,6 +40903,8 @@ Examples:
|
|
|
40620
40903
|
args.description = opts.description;
|
|
40621
40904
|
if (opts.expirationDate !== void 0)
|
|
40622
40905
|
args.expiration_date = opts.expirationDate;
|
|
40906
|
+
if (opts.productScope !== void 0)
|
|
40907
|
+
args.product_scope = opts.productScope;
|
|
40623
40908
|
if (opts.repeat !== void 0)
|
|
40624
40909
|
args.repeat = opts.repeat;
|
|
40625
40910
|
if (opts.type !== void 0)
|
|
@@ -40663,7 +40948,7 @@ Examples:
|
|
|
40663
40948
|
queryParamKeys: []
|
|
40664
40949
|
});
|
|
40665
40950
|
});
|
|
40666
|
-
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", `
|
|
40667
40952
|
Examples:
|
|
40668
40953
|
hyperline coupons update --id <id> --name <name> --type <type>
|
|
40669
40954
|
hyperline coupons update --id <id> --name <name> --type <type> --description <description> --expiration-date <expiration_date>
|
|
@@ -40682,6 +40967,8 @@ Examples:
|
|
|
40682
40967
|
args.description = opts.description;
|
|
40683
40968
|
if (opts.expirationDate !== void 0)
|
|
40684
40969
|
args.expiration_date = opts.expirationDate;
|
|
40970
|
+
if (opts.productScope !== void 0)
|
|
40971
|
+
args.product_scope = opts.productScope;
|
|
40685
40972
|
if (opts.repeat !== void 0)
|
|
40686
40973
|
args.repeat = opts.repeat;
|
|
40687
40974
|
if (opts.type !== void 0)
|
|
@@ -40738,7 +41025,7 @@ Examples:
|
|
|
40738
41025
|
// build/commands/generated/coupons-promotion-codes.js
|
|
40739
41026
|
function registerCoupons_Promotion_CodesCommands(parent) {
|
|
40740
41027
|
const resource = parent.command("coupons-promotion-codes").description("Manage coupons > promotion codes");
|
|
40741
|
-
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", `
|
|
40742
41029
|
Examples:
|
|
40743
41030
|
hyperline coupons-promotion-codes list-promotion-codes
|
|
40744
41031
|
hyperline coupons-promotion-codes list-promotion-codes --take <take> --coupon-id <coupon_id>`).action(async (opts) => {
|
|
@@ -40752,10 +41039,6 @@ Examples:
|
|
|
40752
41039
|
args.coupon_id = opts.couponId;
|
|
40753
41040
|
if (opts["couponId.not"] !== void 0)
|
|
40754
41041
|
args.coupon_id__not = opts["couponId.not"];
|
|
40755
|
-
if (opts["couponId.isNull"] !== void 0)
|
|
40756
|
-
args.coupon_id__isNull = opts["couponId.isNull"];
|
|
40757
|
-
if (opts["couponId.isNotNull"] !== void 0)
|
|
40758
|
-
args.coupon_id__isNotNull = opts["couponId.isNotNull"];
|
|
40759
41042
|
if (opts["couponId.equals"] !== void 0)
|
|
40760
41043
|
args.coupon_id__equals = opts["couponId.equals"];
|
|
40761
41044
|
if (opts["couponId.contains"] !== void 0)
|
|
@@ -40777,8 +41060,6 @@ Examples:
|
|
|
40777
41060
|
"skip",
|
|
40778
41061
|
"coupon_id",
|
|
40779
41062
|
"coupon_id__not",
|
|
40780
|
-
"coupon_id__isNull",
|
|
40781
|
-
"coupon_id__isNotNull",
|
|
40782
41063
|
"coupon_id__equals",
|
|
40783
41064
|
"coupon_id__contains",
|
|
40784
41065
|
"coupon_id__startsWith",
|
|
@@ -41032,7 +41313,15 @@ Examples:
|
|
|
41032
41313
|
// build/commands/generated/customers.js
|
|
41033
41314
|
function registerCustomersCommands(parent) {
|
|
41034
41315
|
const resource = parent.command("customers").description("Manage customers");
|
|
41035
|
-
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", `
|
|
41036
41325
|
Examples:
|
|
41037
41326
|
hyperline customers list
|
|
41038
41327
|
hyperline customers list --limit <limit> --cursor <cursor>`).action(async (opts) => {
|
|
@@ -41050,14 +41339,12 @@ Examples:
|
|
|
41050
41339
|
args.order = opts.order;
|
|
41051
41340
|
if (opts.sort !== void 0)
|
|
41052
41341
|
args.sort = opts.sort;
|
|
41342
|
+
if (opts.taxIdStatus !== void 0)
|
|
41343
|
+
args.tax_id_status = opts.taxIdStatus;
|
|
41053
41344
|
if (opts.name !== void 0)
|
|
41054
41345
|
args.name = opts.name;
|
|
41055
41346
|
if (opts["name.not"] !== void 0)
|
|
41056
41347
|
args.name__not = opts["name.not"];
|
|
41057
|
-
if (opts["name.isNull"] !== void 0)
|
|
41058
|
-
args.name__isNull = opts["name.isNull"];
|
|
41059
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
41060
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
41061
41348
|
if (opts["name.equals"] !== void 0)
|
|
41062
41349
|
args.name__equals = opts["name.equals"];
|
|
41063
41350
|
if (opts["name.contains"] !== void 0)
|
|
@@ -41078,10 +41365,6 @@ Examples:
|
|
|
41078
41365
|
args.currency = opts.currency;
|
|
41079
41366
|
if (opts["currency.not"] !== void 0)
|
|
41080
41367
|
args.currency__not = opts["currency.not"];
|
|
41081
|
-
if (opts["currency.isNull"] !== void 0)
|
|
41082
|
-
args.currency__isNull = opts["currency.isNull"];
|
|
41083
|
-
if (opts["currency.isNotNull"] !== void 0)
|
|
41084
|
-
args.currency__isNotNull = opts["currency.isNotNull"];
|
|
41085
41368
|
if (opts["currency.equals"] !== void 0)
|
|
41086
41369
|
args.currency__equals = opts["currency.equals"];
|
|
41087
41370
|
if (opts["currency.contains"] !== void 0)
|
|
@@ -41090,14 +41373,14 @@ Examples:
|
|
|
41090
41373
|
args.currency__startsWith = opts["currency.startsWith"];
|
|
41091
41374
|
if (opts["currency.endWith"] !== void 0)
|
|
41092
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"];
|
|
41093
41380
|
if (opts.country !== void 0)
|
|
41094
41381
|
args.country = opts.country;
|
|
41095
41382
|
if (opts["country.not"] !== void 0)
|
|
41096
41383
|
args.country__not = opts["country.not"];
|
|
41097
|
-
if (opts["country.isNull"] !== void 0)
|
|
41098
|
-
args.country__isNull = opts["country.isNull"];
|
|
41099
|
-
if (opts["country.isNotNull"] !== void 0)
|
|
41100
|
-
args.country__isNotNull = opts["country.isNotNull"];
|
|
41101
41384
|
if (opts["country.equals"] !== void 0)
|
|
41102
41385
|
args.country__equals = opts["country.equals"];
|
|
41103
41386
|
if (opts["country.contains"] !== void 0)
|
|
@@ -41106,14 +41389,14 @@ Examples:
|
|
|
41106
41389
|
args.country__startsWith = opts["country.startsWith"];
|
|
41107
41390
|
if (opts["country.endWith"] !== void 0)
|
|
41108
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"];
|
|
41109
41396
|
if (opts.externalId !== void 0)
|
|
41110
41397
|
args.external_id = opts.externalId;
|
|
41111
41398
|
if (opts["externalId.not"] !== void 0)
|
|
41112
41399
|
args.external_id__not = opts["externalId.not"];
|
|
41113
|
-
if (opts["externalId.isNull"] !== void 0)
|
|
41114
|
-
args.external_id__isNull = opts["externalId.isNull"];
|
|
41115
|
-
if (opts["externalId.isNotNull"] !== void 0)
|
|
41116
|
-
args.external_id__isNotNull = opts["externalId.isNotNull"];
|
|
41117
41400
|
if (opts["externalId.equals"] !== void 0)
|
|
41118
41401
|
args.external_id__equals = opts["externalId.equals"];
|
|
41119
41402
|
if (opts["externalId.contains"] !== void 0)
|
|
@@ -41122,14 +41405,14 @@ Examples:
|
|
|
41122
41405
|
args.external_id__startsWith = opts["externalId.startsWith"];
|
|
41123
41406
|
if (opts["externalId.endWith"] !== void 0)
|
|
41124
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"];
|
|
41125
41412
|
if (opts.billingEmail !== void 0)
|
|
41126
41413
|
args.billing_email = opts.billingEmail;
|
|
41127
41414
|
if (opts["billingEmail.not"] !== void 0)
|
|
41128
41415
|
args.billing_email__not = opts["billingEmail.not"];
|
|
41129
|
-
if (opts["billingEmail.isNull"] !== void 0)
|
|
41130
|
-
args.billing_email__isNull = opts["billingEmail.isNull"];
|
|
41131
|
-
if (opts["billingEmail.isNotNull"] !== void 0)
|
|
41132
|
-
args.billing_email__isNotNull = opts["billingEmail.isNotNull"];
|
|
41133
41416
|
if (opts["billingEmail.equals"] !== void 0)
|
|
41134
41417
|
args.billing_email__equals = opts["billingEmail.equals"];
|
|
41135
41418
|
if (opts["billingEmail.contains"] !== void 0)
|
|
@@ -41138,16 +41421,16 @@ Examples:
|
|
|
41138
41421
|
args.billing_email__startsWith = opts["billingEmail.startsWith"];
|
|
41139
41422
|
if (opts["billingEmail.endWith"] !== void 0)
|
|
41140
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"];
|
|
41141
41428
|
if (opts.search !== void 0)
|
|
41142
41429
|
args.search = opts.search;
|
|
41143
41430
|
if (opts.taxId !== void 0)
|
|
41144
41431
|
args.tax_id = opts.taxId;
|
|
41145
41432
|
if (opts["taxId.not"] !== void 0)
|
|
41146
41433
|
args.tax_id__not = opts["taxId.not"];
|
|
41147
|
-
if (opts["taxId.isNull"] !== void 0)
|
|
41148
|
-
args.tax_id__isNull = opts["taxId.isNull"];
|
|
41149
|
-
if (opts["taxId.isNotNull"] !== void 0)
|
|
41150
|
-
args.tax_id__isNotNull = opts["taxId.isNotNull"];
|
|
41151
41434
|
if (opts["taxId.equals"] !== void 0)
|
|
41152
41435
|
args.tax_id__equals = opts["taxId.equals"];
|
|
41153
41436
|
if (opts["taxId.contains"] !== void 0)
|
|
@@ -41156,6 +41439,10 @@ Examples:
|
|
|
41156
41439
|
args.tax_id__startsWith = opts["taxId.startsWith"];
|
|
41157
41440
|
if (opts["taxId.endWith"] !== void 0)
|
|
41158
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"];
|
|
41159
41446
|
if (opts.subscriptionStatus !== void 0)
|
|
41160
41447
|
args.subscription_status = opts.subscriptionStatus;
|
|
41161
41448
|
if (opts["subscriptionStatus.in"] !== void 0)
|
|
@@ -41164,10 +41451,6 @@ Examples:
|
|
|
41164
41451
|
args.invoicing_entity_id = opts.invoicingEntityId;
|
|
41165
41452
|
if (opts["invoicingEntityId.not"] !== void 0)
|
|
41166
41453
|
args.invoicing_entity_id__not = opts["invoicingEntityId.not"];
|
|
41167
|
-
if (opts["invoicingEntityId.isNull"] !== void 0)
|
|
41168
|
-
args.invoicing_entity_id__isNull = opts["invoicingEntityId.isNull"];
|
|
41169
|
-
if (opts["invoicingEntityId.isNotNull"] !== void 0)
|
|
41170
|
-
args.invoicing_entity_id__isNotNull = opts["invoicingEntityId.isNotNull"];
|
|
41171
41454
|
if (opts["invoicingEntityId.equals"] !== void 0)
|
|
41172
41455
|
args.invoicing_entity_id__equals = opts["invoicingEntityId.equals"];
|
|
41173
41456
|
if (opts["invoicingEntityId.contains"] !== void 0)
|
|
@@ -41190,10 +41473,6 @@ Examples:
|
|
|
41190
41473
|
args.created_at = opts.createdAt;
|
|
41191
41474
|
if (opts["createdAt.not"] !== void 0)
|
|
41192
41475
|
args.created_at__not = opts["createdAt.not"];
|
|
41193
|
-
if (opts["createdAt.isNull"] !== void 0)
|
|
41194
|
-
args.created_at__isNull = opts["createdAt.isNull"];
|
|
41195
|
-
if (opts["createdAt.isNotNull"] !== void 0)
|
|
41196
|
-
args.created_at__isNotNull = opts["createdAt.isNotNull"];
|
|
41197
41476
|
if (opts["createdAt.equals"] !== void 0)
|
|
41198
41477
|
args.created_at__equals = opts["createdAt.equals"];
|
|
41199
41478
|
if (opts["createdAt.lt"] !== void 0)
|
|
@@ -41208,10 +41487,6 @@ Examples:
|
|
|
41208
41487
|
args.updated_at = opts.updatedAt;
|
|
41209
41488
|
if (opts["updatedAt.not"] !== void 0)
|
|
41210
41489
|
args.updated_at__not = opts["updatedAt.not"];
|
|
41211
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
41212
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
41213
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
41214
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
41215
41490
|
if (opts["updatedAt.equals"] !== void 0)
|
|
41216
41491
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
41217
41492
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -41234,10 +41509,9 @@ Examples:
|
|
|
41234
41509
|
"include_total",
|
|
41235
41510
|
"order",
|
|
41236
41511
|
"sort",
|
|
41512
|
+
"tax_id_status",
|
|
41237
41513
|
"name",
|
|
41238
41514
|
"name__not",
|
|
41239
|
-
"name__isNull",
|
|
41240
|
-
"name__isNotNull",
|
|
41241
41515
|
"name__equals",
|
|
41242
41516
|
"name__contains",
|
|
41243
41517
|
"name__startsWith",
|
|
@@ -41248,51 +41522,49 @@ Examples:
|
|
|
41248
41522
|
"status__in",
|
|
41249
41523
|
"currency",
|
|
41250
41524
|
"currency__not",
|
|
41251
|
-
"currency__isNull",
|
|
41252
|
-
"currency__isNotNull",
|
|
41253
41525
|
"currency__equals",
|
|
41254
41526
|
"currency__contains",
|
|
41255
41527
|
"currency__startsWith",
|
|
41256
41528
|
"currency__endWith",
|
|
41529
|
+
"currency__isNull",
|
|
41530
|
+
"currency__isNotNull",
|
|
41257
41531
|
"country",
|
|
41258
41532
|
"country__not",
|
|
41259
|
-
"country__isNull",
|
|
41260
|
-
"country__isNotNull",
|
|
41261
41533
|
"country__equals",
|
|
41262
41534
|
"country__contains",
|
|
41263
41535
|
"country__startsWith",
|
|
41264
41536
|
"country__endWith",
|
|
41537
|
+
"country__isNull",
|
|
41538
|
+
"country__isNotNull",
|
|
41265
41539
|
"external_id",
|
|
41266
41540
|
"external_id__not",
|
|
41267
|
-
"external_id__isNull",
|
|
41268
|
-
"external_id__isNotNull",
|
|
41269
41541
|
"external_id__equals",
|
|
41270
41542
|
"external_id__contains",
|
|
41271
41543
|
"external_id__startsWith",
|
|
41272
41544
|
"external_id__endWith",
|
|
41545
|
+
"external_id__isNull",
|
|
41546
|
+
"external_id__isNotNull",
|
|
41273
41547
|
"billing_email",
|
|
41274
41548
|
"billing_email__not",
|
|
41275
|
-
"billing_email__isNull",
|
|
41276
|
-
"billing_email__isNotNull",
|
|
41277
41549
|
"billing_email__equals",
|
|
41278
41550
|
"billing_email__contains",
|
|
41279
41551
|
"billing_email__startsWith",
|
|
41280
41552
|
"billing_email__endWith",
|
|
41553
|
+
"billing_email__isNull",
|
|
41554
|
+
"billing_email__isNotNull",
|
|
41281
41555
|
"search",
|
|
41282
41556
|
"tax_id",
|
|
41283
41557
|
"tax_id__not",
|
|
41284
|
-
"tax_id__isNull",
|
|
41285
|
-
"tax_id__isNotNull",
|
|
41286
41558
|
"tax_id__equals",
|
|
41287
41559
|
"tax_id__contains",
|
|
41288
41560
|
"tax_id__startsWith",
|
|
41289
41561
|
"tax_id__endWith",
|
|
41562
|
+
"tax_id__isNull",
|
|
41563
|
+
"tax_id__isNotNull",
|
|
41290
41564
|
"subscription_status",
|
|
41291
41565
|
"subscription_status__in",
|
|
41292
41566
|
"invoicing_entity_id",
|
|
41293
41567
|
"invoicing_entity_id__not",
|
|
41294
|
-
"invoicing_entity_id__isNull",
|
|
41295
|
-
"invoicing_entity_id__isNotNull",
|
|
41296
41568
|
"invoicing_entity_id__equals",
|
|
41297
41569
|
"invoicing_entity_id__contains",
|
|
41298
41570
|
"invoicing_entity_id__startsWith",
|
|
@@ -41304,8 +41576,6 @@ Examples:
|
|
|
41304
41576
|
"integration_entity_id",
|
|
41305
41577
|
"created_at",
|
|
41306
41578
|
"created_at__not",
|
|
41307
|
-
"created_at__isNull",
|
|
41308
|
-
"created_at__isNotNull",
|
|
41309
41579
|
"created_at__equals",
|
|
41310
41580
|
"created_at__lt",
|
|
41311
41581
|
"created_at__lte",
|
|
@@ -41313,8 +41583,6 @@ Examples:
|
|
|
41313
41583
|
"created_at__gte",
|
|
41314
41584
|
"updated_at",
|
|
41315
41585
|
"updated_at__not",
|
|
41316
|
-
"updated_at__isNull",
|
|
41317
|
-
"updated_at__isNotNull",
|
|
41318
41586
|
"updated_at__equals",
|
|
41319
41587
|
"updated_at__lt",
|
|
41320
41588
|
"updated_at__lte",
|
|
@@ -41883,7 +42151,7 @@ Examples:
|
|
|
41883
42151
|
// build/commands/generated/customers-credits.js
|
|
41884
42152
|
function registerCustomers_CreditsCommands(parent) {
|
|
41885
42153
|
const resource = parent.command("customers-credits").description("Manage customers > credits");
|
|
41886
|
-
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", `
|
|
41887
42155
|
Examples:
|
|
41888
42156
|
hyperline customers-credits list
|
|
41889
42157
|
hyperline customers-credits list --take <take> --product-id <product_id>`).action(async (opts) => {
|
|
@@ -41897,10 +42165,6 @@ Examples:
|
|
|
41897
42165
|
args.product_id = opts.productId;
|
|
41898
42166
|
if (opts["productId.not"] !== void 0)
|
|
41899
42167
|
args.product_id__not = opts["productId.not"];
|
|
41900
|
-
if (opts["productId.isNull"] !== void 0)
|
|
41901
|
-
args.product_id__isNull = opts["productId.isNull"];
|
|
41902
|
-
if (opts["productId.isNotNull"] !== void 0)
|
|
41903
|
-
args.product_id__isNotNull = opts["productId.isNotNull"];
|
|
41904
42168
|
if (opts["productId.equals"] !== void 0)
|
|
41905
42169
|
args.product_id__equals = opts["productId.equals"];
|
|
41906
42170
|
if (opts["productId.contains"] !== void 0)
|
|
@@ -41913,10 +42177,6 @@ Examples:
|
|
|
41913
42177
|
args.customer_id = opts.customerId;
|
|
41914
42178
|
if (opts["customerId.not"] !== void 0)
|
|
41915
42179
|
args.customer_id__not = opts["customerId.not"];
|
|
41916
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
41917
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
41918
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
41919
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
41920
42180
|
if (opts["customerId.equals"] !== void 0)
|
|
41921
42181
|
args.customer_id__equals = opts["customerId.equals"];
|
|
41922
42182
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -41929,10 +42189,6 @@ Examples:
|
|
|
41929
42189
|
args.updated_at = opts.updatedAt;
|
|
41930
42190
|
if (opts["updatedAt.not"] !== void 0)
|
|
41931
42191
|
args.updated_at__not = opts["updatedAt.not"];
|
|
41932
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
41933
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
41934
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
41935
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
41936
42192
|
if (opts["updatedAt.equals"] !== void 0)
|
|
41937
42193
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
41938
42194
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -41956,24 +42212,18 @@ Examples:
|
|
|
41956
42212
|
"skip",
|
|
41957
42213
|
"product_id",
|
|
41958
42214
|
"product_id__not",
|
|
41959
|
-
"product_id__isNull",
|
|
41960
|
-
"product_id__isNotNull",
|
|
41961
42215
|
"product_id__equals",
|
|
41962
42216
|
"product_id__contains",
|
|
41963
42217
|
"product_id__startsWith",
|
|
41964
42218
|
"product_id__endWith",
|
|
41965
42219
|
"customer_id",
|
|
41966
42220
|
"customer_id__not",
|
|
41967
|
-
"customer_id__isNull",
|
|
41968
|
-
"customer_id__isNotNull",
|
|
41969
42221
|
"customer_id__equals",
|
|
41970
42222
|
"customer_id__contains",
|
|
41971
42223
|
"customer_id__startsWith",
|
|
41972
42224
|
"customer_id__endWith",
|
|
41973
42225
|
"updated_at",
|
|
41974
42226
|
"updated_at__not",
|
|
41975
|
-
"updated_at__isNull",
|
|
41976
|
-
"updated_at__isNotNull",
|
|
41977
42227
|
"updated_at__equals",
|
|
41978
42228
|
"updated_at__lt",
|
|
41979
42229
|
"updated_at__lte",
|
|
@@ -42246,6 +42496,88 @@ Examples:
|
|
|
42246
42496
|
});
|
|
42247
42497
|
}
|
|
42248
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
|
+
|
|
42249
42581
|
// build/commands/generated/customers-payment-methods.js
|
|
42250
42582
|
function registerCustomers_Payment_MethodsCommands(parent) {
|
|
42251
42583
|
const resource = parent.command("customers-payment-methods").description("Manage customers > payment methods");
|
|
@@ -42695,6 +43027,222 @@ Examples:
|
|
|
42695
43027
|
});
|
|
42696
43028
|
}
|
|
42697
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
|
+
|
|
42698
43246
|
// build/commands/generated/files.js
|
|
42699
43247
|
function registerFilesCommands(parent) {
|
|
42700
43248
|
const resource = parent.command("files").description("Manage files");
|
|
@@ -42716,7 +43264,7 @@ Examples:
|
|
|
42716
43264
|
queryParamKeys: []
|
|
42717
43265
|
});
|
|
42718
43266
|
});
|
|
42719
|
-
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", `
|
|
42720
43268
|
Examples:
|
|
42721
43269
|
hyperline files list
|
|
42722
43270
|
hyperline files list --take <take> --name <name>`).action(async (opts) => {
|
|
@@ -42730,10 +43278,6 @@ Examples:
|
|
|
42730
43278
|
args.name = opts.name;
|
|
42731
43279
|
if (opts["name.not"] !== void 0)
|
|
42732
43280
|
args.name__not = opts["name.not"];
|
|
42733
|
-
if (opts["name.isNull"] !== void 0)
|
|
42734
|
-
args.name__isNull = opts["name.isNull"];
|
|
42735
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
42736
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
42737
43281
|
if (opts["name.equals"] !== void 0)
|
|
42738
43282
|
args.name__equals = opts["name.equals"];
|
|
42739
43283
|
if (opts["name.contains"] !== void 0)
|
|
@@ -42746,10 +43290,6 @@ Examples:
|
|
|
42746
43290
|
args.customer_id = opts.customerId;
|
|
42747
43291
|
if (opts["customerId.not"] !== void 0)
|
|
42748
43292
|
args.customer_id__not = opts["customerId.not"];
|
|
42749
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
42750
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
42751
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
42752
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
42753
43293
|
if (opts["customerId.equals"] !== void 0)
|
|
42754
43294
|
args.customer_id__equals = opts["customerId.equals"];
|
|
42755
43295
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -42758,6 +43298,10 @@ Examples:
|
|
|
42758
43298
|
args.customer_id__startsWith = opts["customerId.startsWith"];
|
|
42759
43299
|
if (opts["customerId.endWith"] !== void 0)
|
|
42760
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"];
|
|
42761
43305
|
if (opts.take !== void 0)
|
|
42762
43306
|
args.take = Number(opts.take);
|
|
42763
43307
|
if (opts.skip !== void 0)
|
|
@@ -42771,20 +43315,18 @@ Examples:
|
|
|
42771
43315
|
"skip",
|
|
42772
43316
|
"name",
|
|
42773
43317
|
"name__not",
|
|
42774
|
-
"name__isNull",
|
|
42775
|
-
"name__isNotNull",
|
|
42776
43318
|
"name__equals",
|
|
42777
43319
|
"name__contains",
|
|
42778
43320
|
"name__startsWith",
|
|
42779
43321
|
"name__endWith",
|
|
42780
43322
|
"customer_id",
|
|
42781
43323
|
"customer_id__not",
|
|
42782
|
-
"customer_id__isNull",
|
|
42783
|
-
"customer_id__isNotNull",
|
|
42784
43324
|
"customer_id__equals",
|
|
42785
43325
|
"customer_id__contains",
|
|
42786
43326
|
"customer_id__startsWith",
|
|
42787
|
-
"customer_id__endWith"
|
|
43327
|
+
"customer_id__endWith",
|
|
43328
|
+
"customer_id__isNull",
|
|
43329
|
+
"customer_id__isNotNull"
|
|
42788
43330
|
]
|
|
42789
43331
|
});
|
|
42790
43332
|
});
|
|
@@ -42840,7 +43382,7 @@ Examples:
|
|
|
42840
43382
|
// build/commands/generated/invoices.js
|
|
42841
43383
|
function registerInvoicesCommands(parent) {
|
|
42842
43384
|
const resource = parent.command("invoices").description("Manage invoices");
|
|
42843
|
-
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", `
|
|
42844
43386
|
Examples:
|
|
42845
43387
|
hyperline invoices list
|
|
42846
43388
|
hyperline invoices list --limit <limit> --cursor <cursor>`).action(async (opts) => {
|
|
@@ -42870,10 +43412,6 @@ Examples:
|
|
|
42870
43412
|
args.customer_id = opts.customerId;
|
|
42871
43413
|
if (opts["customerId.not"] !== void 0)
|
|
42872
43414
|
args.customer_id__not = opts["customerId.not"];
|
|
42873
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
42874
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
42875
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
42876
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
42877
43415
|
if (opts["customerId.equals"] !== void 0)
|
|
42878
43416
|
args.customer_id__equals = opts["customerId.equals"];
|
|
42879
43417
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -42888,10 +43426,6 @@ Examples:
|
|
|
42888
43426
|
args.subscription_id = opts.subscriptionId;
|
|
42889
43427
|
if (opts["subscriptionId.not"] !== void 0)
|
|
42890
43428
|
args.subscription_id__not = opts["subscriptionId.not"];
|
|
42891
|
-
if (opts["subscriptionId.isNull"] !== void 0)
|
|
42892
|
-
args.subscription_id__isNull = opts["subscriptionId.isNull"];
|
|
42893
|
-
if (opts["subscriptionId.isNotNull"] !== void 0)
|
|
42894
|
-
args.subscription_id__isNotNull = opts["subscriptionId.isNotNull"];
|
|
42895
43429
|
if (opts["subscriptionId.equals"] !== void 0)
|
|
42896
43430
|
args.subscription_id__equals = opts["subscriptionId.equals"];
|
|
42897
43431
|
if (opts["subscriptionId.contains"] !== void 0)
|
|
@@ -42900,14 +43434,14 @@ Examples:
|
|
|
42900
43434
|
args.subscription_id__startsWith = opts["subscriptionId.startsWith"];
|
|
42901
43435
|
if (opts["subscriptionId.endWith"] !== void 0)
|
|
42902
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"];
|
|
42903
43441
|
if (opts.invoicingEntityId !== void 0)
|
|
42904
43442
|
args.invoicing_entity_id = opts.invoicingEntityId;
|
|
42905
43443
|
if (opts["invoicingEntityId.not"] !== void 0)
|
|
42906
43444
|
args.invoicing_entity_id__not = opts["invoicingEntityId.not"];
|
|
42907
|
-
if (opts["invoicingEntityId.isNull"] !== void 0)
|
|
42908
|
-
args.invoicing_entity_id__isNull = opts["invoicingEntityId.isNull"];
|
|
42909
|
-
if (opts["invoicingEntityId.isNotNull"] !== void 0)
|
|
42910
|
-
args.invoicing_entity_id__isNotNull = opts["invoicingEntityId.isNotNull"];
|
|
42911
43445
|
if (opts["invoicingEntityId.equals"] !== void 0)
|
|
42912
43446
|
args.invoicing_entity_id__equals = opts["invoicingEntityId.equals"];
|
|
42913
43447
|
if (opts["invoicingEntityId.contains"] !== void 0)
|
|
@@ -42920,10 +43454,6 @@ Examples:
|
|
|
42920
43454
|
args.invoice_number = opts.invoiceNumber;
|
|
42921
43455
|
if (opts["invoiceNumber.not"] !== void 0)
|
|
42922
43456
|
args.invoice_number__not = opts["invoiceNumber.not"];
|
|
42923
|
-
if (opts["invoiceNumber.isNull"] !== void 0)
|
|
42924
|
-
args.invoice_number__isNull = opts["invoiceNumber.isNull"];
|
|
42925
|
-
if (opts["invoiceNumber.isNotNull"] !== void 0)
|
|
42926
|
-
args.invoice_number__isNotNull = opts["invoiceNumber.isNotNull"];
|
|
42927
43457
|
if (opts["invoiceNumber.equals"] !== void 0)
|
|
42928
43458
|
args.invoice_number__equals = opts["invoiceNumber.equals"];
|
|
42929
43459
|
if (opts["invoiceNumber.contains"] !== void 0)
|
|
@@ -42936,10 +43466,6 @@ Examples:
|
|
|
42936
43466
|
args.original_invoice_id = opts.originalInvoiceId;
|
|
42937
43467
|
if (opts["originalInvoiceId.not"] !== void 0)
|
|
42938
43468
|
args.original_invoice_id__not = opts["originalInvoiceId.not"];
|
|
42939
|
-
if (opts["originalInvoiceId.isNull"] !== void 0)
|
|
42940
|
-
args.original_invoice_id__isNull = opts["originalInvoiceId.isNull"];
|
|
42941
|
-
if (opts["originalInvoiceId.isNotNull"] !== void 0)
|
|
42942
|
-
args.original_invoice_id__isNotNull = opts["originalInvoiceId.isNotNull"];
|
|
42943
43469
|
if (opts["originalInvoiceId.equals"] !== void 0)
|
|
42944
43470
|
args.original_invoice_id__equals = opts["originalInvoiceId.equals"];
|
|
42945
43471
|
if (opts["originalInvoiceId.contains"] !== void 0)
|
|
@@ -42948,14 +43474,14 @@ Examples:
|
|
|
42948
43474
|
args.original_invoice_id__startsWith = opts["originalInvoiceId.startsWith"];
|
|
42949
43475
|
if (opts["originalInvoiceId.endWith"] !== void 0)
|
|
42950
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"];
|
|
42951
43481
|
if (opts.originalInvoiceNumber !== void 0)
|
|
42952
43482
|
args.original_invoice_number = opts.originalInvoiceNumber;
|
|
42953
43483
|
if (opts["originalInvoiceNumber.not"] !== void 0)
|
|
42954
43484
|
args.original_invoice_number__not = opts["originalInvoiceNumber.not"];
|
|
42955
|
-
if (opts["originalInvoiceNumber.isNull"] !== void 0)
|
|
42956
|
-
args.original_invoice_number__isNull = opts["originalInvoiceNumber.isNull"];
|
|
42957
|
-
if (opts["originalInvoiceNumber.isNotNull"] !== void 0)
|
|
42958
|
-
args.original_invoice_number__isNotNull = opts["originalInvoiceNumber.isNotNull"];
|
|
42959
43485
|
if (opts["originalInvoiceNumber.equals"] !== void 0)
|
|
42960
43486
|
args.original_invoice_number__equals = opts["originalInvoiceNumber.equals"];
|
|
42961
43487
|
if (opts["originalInvoiceNumber.contains"] !== void 0)
|
|
@@ -42964,16 +43490,16 @@ Examples:
|
|
|
42964
43490
|
args.original_invoice_number__startsWith = opts["originalInvoiceNumber.startsWith"];
|
|
42965
43491
|
if (opts["originalInvoiceNumber.endWith"] !== void 0)
|
|
42966
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"];
|
|
42967
43497
|
if (opts.lineItemId !== void 0)
|
|
42968
43498
|
args.line_item_id = opts.lineItemId;
|
|
42969
43499
|
if (opts.periodStart !== void 0)
|
|
42970
43500
|
args.period_start = opts.periodStart;
|
|
42971
43501
|
if (opts["periodStart.not"] !== void 0)
|
|
42972
43502
|
args.period_start__not = opts["periodStart.not"];
|
|
42973
|
-
if (opts["periodStart.isNull"] !== void 0)
|
|
42974
|
-
args.period_start__isNull = opts["periodStart.isNull"];
|
|
42975
|
-
if (opts["periodStart.isNotNull"] !== void 0)
|
|
42976
|
-
args.period_start__isNotNull = opts["periodStart.isNotNull"];
|
|
42977
43503
|
if (opts["periodStart.equals"] !== void 0)
|
|
42978
43504
|
args.period_start__equals = opts["periodStart.equals"];
|
|
42979
43505
|
if (opts["periodStart.lt"] !== void 0)
|
|
@@ -42984,14 +43510,14 @@ Examples:
|
|
|
42984
43510
|
args.period_start__gt = opts["periodStart.gt"];
|
|
42985
43511
|
if (opts["periodStart.gte"] !== void 0)
|
|
42986
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"];
|
|
42987
43517
|
if (opts.periodEnd !== void 0)
|
|
42988
43518
|
args.period_end = opts.periodEnd;
|
|
42989
43519
|
if (opts["periodEnd.not"] !== void 0)
|
|
42990
43520
|
args.period_end__not = opts["periodEnd.not"];
|
|
42991
|
-
if (opts["periodEnd.isNull"] !== void 0)
|
|
42992
|
-
args.period_end__isNull = opts["periodEnd.isNull"];
|
|
42993
|
-
if (opts["periodEnd.isNotNull"] !== void 0)
|
|
42994
|
-
args.period_end__isNotNull = opts["periodEnd.isNotNull"];
|
|
42995
43521
|
if (opts["periodEnd.equals"] !== void 0)
|
|
42996
43522
|
args.period_end__equals = opts["periodEnd.equals"];
|
|
42997
43523
|
if (opts["periodEnd.lt"] !== void 0)
|
|
@@ -43002,14 +43528,14 @@ Examples:
|
|
|
43002
43528
|
args.period_end__gt = opts["periodEnd.gt"];
|
|
43003
43529
|
if (opts["periodEnd.gte"] !== void 0)
|
|
43004
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"];
|
|
43005
43535
|
if (opts.issuedAt !== void 0)
|
|
43006
43536
|
args.issued_at = opts.issuedAt;
|
|
43007
43537
|
if (opts["issuedAt.not"] !== void 0)
|
|
43008
43538
|
args.issued_at__not = opts["issuedAt.not"];
|
|
43009
|
-
if (opts["issuedAt.isNull"] !== void 0)
|
|
43010
|
-
args.issued_at__isNull = opts["issuedAt.isNull"];
|
|
43011
|
-
if (opts["issuedAt.isNotNull"] !== void 0)
|
|
43012
|
-
args.issued_at__isNotNull = opts["issuedAt.isNotNull"];
|
|
43013
43539
|
if (opts["issuedAt.equals"] !== void 0)
|
|
43014
43540
|
args.issued_at__equals = opts["issuedAt.equals"];
|
|
43015
43541
|
if (opts["issuedAt.lt"] !== void 0)
|
|
@@ -43024,10 +43550,6 @@ Examples:
|
|
|
43024
43550
|
args.due_at = opts.dueAt;
|
|
43025
43551
|
if (opts["dueAt.not"] !== void 0)
|
|
43026
43552
|
args.due_at__not = opts["dueAt.not"];
|
|
43027
|
-
if (opts["dueAt.isNull"] !== void 0)
|
|
43028
|
-
args.due_at__isNull = opts["dueAt.isNull"];
|
|
43029
|
-
if (opts["dueAt.isNotNull"] !== void 0)
|
|
43030
|
-
args.due_at__isNotNull = opts["dueAt.isNotNull"];
|
|
43031
43553
|
if (opts["dueAt.equals"] !== void 0)
|
|
43032
43554
|
args.due_at__equals = opts["dueAt.equals"];
|
|
43033
43555
|
if (opts["dueAt.lt"] !== void 0)
|
|
@@ -43042,10 +43564,6 @@ Examples:
|
|
|
43042
43564
|
args.updated_at = opts.updatedAt;
|
|
43043
43565
|
if (opts["updatedAt.not"] !== void 0)
|
|
43044
43566
|
args.updated_at__not = opts["updatedAt.not"];
|
|
43045
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
43046
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
43047
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
43048
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
43049
43567
|
if (opts["updatedAt.equals"] !== void 0)
|
|
43050
43568
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
43051
43569
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -43074,8 +43592,6 @@ Examples:
|
|
|
43074
43592
|
"status__in",
|
|
43075
43593
|
"customer_id",
|
|
43076
43594
|
"customer_id__not",
|
|
43077
|
-
"customer_id__isNull",
|
|
43078
|
-
"customer_id__isNotNull",
|
|
43079
43595
|
"customer_id__equals",
|
|
43080
43596
|
"customer_id__contains",
|
|
43081
43597
|
"customer_id__startsWith",
|
|
@@ -43083,67 +43599,61 @@ Examples:
|
|
|
43083
43599
|
"customer_external_id",
|
|
43084
43600
|
"subscription_id",
|
|
43085
43601
|
"subscription_id__not",
|
|
43086
|
-
"subscription_id__isNull",
|
|
43087
|
-
"subscription_id__isNotNull",
|
|
43088
43602
|
"subscription_id__equals",
|
|
43089
43603
|
"subscription_id__contains",
|
|
43090
43604
|
"subscription_id__startsWith",
|
|
43091
43605
|
"subscription_id__endWith",
|
|
43606
|
+
"subscription_id__isNull",
|
|
43607
|
+
"subscription_id__isNotNull",
|
|
43092
43608
|
"invoicing_entity_id",
|
|
43093
43609
|
"invoicing_entity_id__not",
|
|
43094
|
-
"invoicing_entity_id__isNull",
|
|
43095
|
-
"invoicing_entity_id__isNotNull",
|
|
43096
43610
|
"invoicing_entity_id__equals",
|
|
43097
43611
|
"invoicing_entity_id__contains",
|
|
43098
43612
|
"invoicing_entity_id__startsWith",
|
|
43099
43613
|
"invoicing_entity_id__endWith",
|
|
43100
43614
|
"invoice_number",
|
|
43101
43615
|
"invoice_number__not",
|
|
43102
|
-
"invoice_number__isNull",
|
|
43103
|
-
"invoice_number__isNotNull",
|
|
43104
43616
|
"invoice_number__equals",
|
|
43105
43617
|
"invoice_number__contains",
|
|
43106
43618
|
"invoice_number__startsWith",
|
|
43107
43619
|
"invoice_number__endWith",
|
|
43108
43620
|
"original_invoice_id",
|
|
43109
43621
|
"original_invoice_id__not",
|
|
43110
|
-
"original_invoice_id__isNull",
|
|
43111
|
-
"original_invoice_id__isNotNull",
|
|
43112
43622
|
"original_invoice_id__equals",
|
|
43113
43623
|
"original_invoice_id__contains",
|
|
43114
43624
|
"original_invoice_id__startsWith",
|
|
43115
43625
|
"original_invoice_id__endWith",
|
|
43626
|
+
"original_invoice_id__isNull",
|
|
43627
|
+
"original_invoice_id__isNotNull",
|
|
43116
43628
|
"original_invoice_number",
|
|
43117
43629
|
"original_invoice_number__not",
|
|
43118
|
-
"original_invoice_number__isNull",
|
|
43119
|
-
"original_invoice_number__isNotNull",
|
|
43120
43630
|
"original_invoice_number__equals",
|
|
43121
43631
|
"original_invoice_number__contains",
|
|
43122
43632
|
"original_invoice_number__startsWith",
|
|
43123
43633
|
"original_invoice_number__endWith",
|
|
43634
|
+
"original_invoice_number__isNull",
|
|
43635
|
+
"original_invoice_number__isNotNull",
|
|
43124
43636
|
"line_item_id",
|
|
43125
43637
|
"period_start",
|
|
43126
43638
|
"period_start__not",
|
|
43127
|
-
"period_start__isNull",
|
|
43128
|
-
"period_start__isNotNull",
|
|
43129
43639
|
"period_start__equals",
|
|
43130
43640
|
"period_start__lt",
|
|
43131
43641
|
"period_start__lte",
|
|
43132
43642
|
"period_start__gt",
|
|
43133
43643
|
"period_start__gte",
|
|
43644
|
+
"period_start__isNull",
|
|
43645
|
+
"period_start__isNotNull",
|
|
43134
43646
|
"period_end",
|
|
43135
43647
|
"period_end__not",
|
|
43136
|
-
"period_end__isNull",
|
|
43137
|
-
"period_end__isNotNull",
|
|
43138
43648
|
"period_end__equals",
|
|
43139
43649
|
"period_end__lt",
|
|
43140
43650
|
"period_end__lte",
|
|
43141
43651
|
"period_end__gt",
|
|
43142
43652
|
"period_end__gte",
|
|
43653
|
+
"period_end__isNull",
|
|
43654
|
+
"period_end__isNotNull",
|
|
43143
43655
|
"issued_at",
|
|
43144
43656
|
"issued_at__not",
|
|
43145
|
-
"issued_at__isNull",
|
|
43146
|
-
"issued_at__isNotNull",
|
|
43147
43657
|
"issued_at__equals",
|
|
43148
43658
|
"issued_at__lt",
|
|
43149
43659
|
"issued_at__lte",
|
|
@@ -43151,8 +43661,6 @@ Examples:
|
|
|
43151
43661
|
"issued_at__gte",
|
|
43152
43662
|
"due_at",
|
|
43153
43663
|
"due_at__not",
|
|
43154
|
-
"due_at__isNull",
|
|
43155
|
-
"due_at__isNotNull",
|
|
43156
43664
|
"due_at__equals",
|
|
43157
43665
|
"due_at__lt",
|
|
43158
43666
|
"due_at__lte",
|
|
@@ -43160,8 +43668,6 @@ Examples:
|
|
|
43160
43668
|
"due_at__gte",
|
|
43161
43669
|
"updated_at",
|
|
43162
43670
|
"updated_at__not",
|
|
43163
|
-
"updated_at__isNull",
|
|
43164
|
-
"updated_at__isNotNull",
|
|
43165
43671
|
"updated_at__equals",
|
|
43166
43672
|
"updated_at__lt",
|
|
43167
43673
|
"updated_at__lte",
|
|
@@ -43373,7 +43879,7 @@ Examples:
|
|
|
43373
43879
|
queryParamKeys: []
|
|
43374
43880
|
});
|
|
43375
43881
|
});
|
|
43376
|
-
resource.command("void").description(`Void an invoice in to_pay status. Automatically generates a corresponding credit note. Optionally send an email notification.`).requiredOption("--id <value>", `id parameter`).option("--send-email", `Indicates if an email for the generated credit note should be sent to the customer.`).addHelpText("after", `
|
|
43882
|
+
resource.command("void").description(`Void an invoice in to_pay status. Automatically generates a corresponding credit note. A zero-priced paid invoice can also be voided, without a credit note. Optionally send an email notification.`).requiredOption("--id <value>", `id parameter`).option("--send-email", `Indicates if an email for the generated credit note should be sent to the customer.`).addHelpText("after", `
|
|
43377
43883
|
Examples:
|
|
43378
43884
|
hyperline invoices void --id <id>
|
|
43379
43885
|
hyperline invoices void --id <id> --send-email
|
|
@@ -43858,79 +44364,10 @@ Examples:
|
|
|
43858
44364
|
queryParamKeys: []
|
|
43859
44365
|
});
|
|
43860
44366
|
});
|
|
43861
|
-
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", `
|
|
43862
|
-
Examples:
|
|
43863
|
-
hyperline invoicing-entities delete-invoicing-entity --id <id>
|
|
43864
|
-
hyperline invoicing-entities delete-invoicing-entity --id <id> --output json`).action(async (opts) => {
|
|
43865
|
-
const ctx = resource.parent?.opts()._ctx;
|
|
43866
|
-
if (!ctx) {
|
|
43867
|
-
process.stderr.write("Error: Not authenticated\n");
|
|
43868
|
-
process.exit(1);
|
|
43869
|
-
}
|
|
43870
|
-
const args = {};
|
|
43871
|
-
if (opts.id !== void 0)
|
|
43872
|
-
args.id = opts.id;
|
|
43873
|
-
if (!opts.yes) {
|
|
43874
|
-
const confirmed = await confirmPrompt("Are you sure? Pass --yes to skip. [y/N] ");
|
|
43875
|
-
if (!confirmed) {
|
|
43876
|
-
process.stdout.write("Aborted.\n");
|
|
43877
|
-
return;
|
|
43878
|
-
}
|
|
43879
|
-
}
|
|
43880
|
-
await ctx.execute({
|
|
43881
|
-
method: "DELETE",
|
|
43882
|
-
path: "/v1/invoicing-entities/{id}",
|
|
43883
|
-
args,
|
|
43884
|
-
queryParamKeys: []
|
|
43885
|
-
});
|
|
43886
|
-
});
|
|
43887
|
-
}
|
|
43888
|
-
|
|
43889
|
-
// build/commands/generated/monitoring.js
|
|
43890
|
-
function registerMonitoringCommands(parent) {
|
|
43891
|
-
const resource = parent.command("monitoring").description("Manage monitoring");
|
|
43892
|
-
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", `
|
|
43893
|
-
Examples:
|
|
43894
|
-
hyperline monitoring list-monitoring-analyses
|
|
43895
|
-
hyperline monitoring list-monitoring-analyses --limit <limit> --cursor <cursor>`).action(async (opts) => {
|
|
43896
|
-
const ctx = resource.parent?.opts()._ctx;
|
|
43897
|
-
if (!ctx) {
|
|
43898
|
-
process.stderr.write("Error: Not authenticated\n");
|
|
43899
|
-
process.exit(1);
|
|
43900
|
-
}
|
|
43901
|
-
const args = {};
|
|
43902
|
-
if (opts.cursor !== void 0)
|
|
43903
|
-
args.cursor = opts.cursor;
|
|
43904
|
-
if (opts.includeTotal !== void 0)
|
|
43905
|
-
args.include_total = opts.includeTotal;
|
|
43906
|
-
if (opts.customerId !== void 0)
|
|
43907
|
-
args.customer_id = opts.customerId;
|
|
43908
|
-
if (opts.status !== void 0)
|
|
43909
|
-
args.status = opts.status;
|
|
43910
|
-
if (opts["createdAt.gte"] !== void 0)
|
|
43911
|
-
args.created_at__gte = opts["createdAt.gte"];
|
|
43912
|
-
if (opts["createdAt.lte"] !== void 0)
|
|
43913
|
-
args.created_at__lte = opts["createdAt.lte"];
|
|
43914
|
-
if (opts.limit !== void 0)
|
|
43915
|
-
args.limit = Number(opts.limit);
|
|
43916
|
-
await ctx.execute({
|
|
43917
|
-
method: "GET",
|
|
43918
|
-
path: "/v1/agents/monitoring/analyses",
|
|
43919
|
-
args,
|
|
43920
|
-
queryParamKeys: [
|
|
43921
|
-
"limit",
|
|
43922
|
-
"cursor",
|
|
43923
|
-
"include_total",
|
|
43924
|
-
"customer_id",
|
|
43925
|
-
"status",
|
|
43926
|
-
"created_at__gte",
|
|
43927
|
-
"created_at__lte"
|
|
43928
|
-
]
|
|
43929
|
-
});
|
|
43930
|
-
});
|
|
43931
|
-
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", `
|
|
43932
44368
|
Examples:
|
|
43933
|
-
hyperline
|
|
44369
|
+
hyperline invoicing-entities delete-invoicing-entity --id <id>
|
|
44370
|
+
hyperline invoicing-entities delete-invoicing-entity --id <id> --output json`).action(async (opts) => {
|
|
43934
44371
|
const ctx = resource.parent?.opts()._ctx;
|
|
43935
44372
|
if (!ctx) {
|
|
43936
44373
|
process.stderr.write("Error: Not authenticated\n");
|
|
@@ -43939,9 +44376,16 @@ Examples:
|
|
|
43939
44376
|
const args = {};
|
|
43940
44377
|
if (opts.id !== void 0)
|
|
43941
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
|
+
}
|
|
43942
44386
|
await ctx.execute({
|
|
43943
|
-
method: "
|
|
43944
|
-
path: "/v1/
|
|
44387
|
+
method: "DELETE",
|
|
44388
|
+
path: "/v1/invoicing-entities/{id}",
|
|
43945
44389
|
args,
|
|
43946
44390
|
queryParamKeys: []
|
|
43947
44391
|
});
|
|
@@ -43951,7 +44395,7 @@ Examples:
|
|
|
43951
44395
|
// build/commands/generated/organisations.js
|
|
43952
44396
|
function registerOrganisationsCommands(parent) {
|
|
43953
44397
|
const resource = parent.command("organisations").description("Manage organisations");
|
|
43954
|
-
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", `
|
|
43955
44399
|
Examples:
|
|
43956
44400
|
hyperline organisations list
|
|
43957
44401
|
hyperline organisations list --limit <limit> --cursor <cursor>`).action(async (opts) => {
|
|
@@ -43973,10 +44417,6 @@ Examples:
|
|
|
43973
44417
|
args.created_at = opts.createdAt;
|
|
43974
44418
|
if (opts["createdAt.not"] !== void 0)
|
|
43975
44419
|
args.created_at__not = opts["createdAt.not"];
|
|
43976
|
-
if (opts["createdAt.isNull"] !== void 0)
|
|
43977
|
-
args.created_at__isNull = opts["createdAt.isNull"];
|
|
43978
|
-
if (opts["createdAt.isNotNull"] !== void 0)
|
|
43979
|
-
args.created_at__isNotNull = opts["createdAt.isNotNull"];
|
|
43980
44420
|
if (opts["createdAt.equals"] !== void 0)
|
|
43981
44421
|
args.created_at__equals = opts["createdAt.equals"];
|
|
43982
44422
|
if (opts["createdAt.lt"] !== void 0)
|
|
@@ -43991,10 +44431,6 @@ Examples:
|
|
|
43991
44431
|
args.updated_at = opts.updatedAt;
|
|
43992
44432
|
if (opts["updatedAt.not"] !== void 0)
|
|
43993
44433
|
args.updated_at__not = opts["updatedAt.not"];
|
|
43994
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
43995
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
43996
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
43997
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
43998
44434
|
if (opts["updatedAt.equals"] !== void 0)
|
|
43999
44435
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
44000
44436
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -44019,8 +44455,6 @@ Examples:
|
|
|
44019
44455
|
"sort",
|
|
44020
44456
|
"created_at",
|
|
44021
44457
|
"created_at__not",
|
|
44022
|
-
"created_at__isNull",
|
|
44023
|
-
"created_at__isNotNull",
|
|
44024
44458
|
"created_at__equals",
|
|
44025
44459
|
"created_at__lt",
|
|
44026
44460
|
"created_at__lte",
|
|
@@ -44028,8 +44462,6 @@ Examples:
|
|
|
44028
44462
|
"created_at__gte",
|
|
44029
44463
|
"updated_at",
|
|
44030
44464
|
"updated_at__not",
|
|
44031
|
-
"updated_at__isNull",
|
|
44032
|
-
"updated_at__isNotNull",
|
|
44033
44465
|
"updated_at__equals",
|
|
44034
44466
|
"updated_at__lt",
|
|
44035
44467
|
"updated_at__lte",
|
|
@@ -44143,7 +44575,7 @@ Examples:
|
|
|
44143
44575
|
// build/commands/generated/price-configurations.js
|
|
44144
44576
|
function registerPrice_ConfigurationsCommands(parent) {
|
|
44145
44577
|
const resource = parent.command("price-configurations").description("Manage price configurations");
|
|
44146
|
-
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", `
|
|
44147
44579
|
Examples:
|
|
44148
44580
|
hyperline price-configurations list
|
|
44149
44581
|
hyperline price-configurations list --take <take> --product-id <product_id>`).action(async (opts) => {
|
|
@@ -44157,10 +44589,6 @@ Examples:
|
|
|
44157
44589
|
args.product_id = opts.productId;
|
|
44158
44590
|
if (opts["productId.not"] !== void 0)
|
|
44159
44591
|
args.product_id__not = opts["productId.not"];
|
|
44160
|
-
if (opts["productId.isNull"] !== void 0)
|
|
44161
|
-
args.product_id__isNull = opts["productId.isNull"];
|
|
44162
|
-
if (opts["productId.isNotNull"] !== void 0)
|
|
44163
|
-
args.product_id__isNotNull = opts["productId.isNotNull"];
|
|
44164
44592
|
if (opts["productId.equals"] !== void 0)
|
|
44165
44593
|
args.product_id__equals = opts["productId.equals"];
|
|
44166
44594
|
if (opts["productId.contains"] !== void 0)
|
|
@@ -44173,10 +44601,6 @@ Examples:
|
|
|
44173
44601
|
args.price_book_id = opts.priceBookId;
|
|
44174
44602
|
if (opts["priceBookId.not"] !== void 0)
|
|
44175
44603
|
args.price_book_id__not = opts["priceBookId.not"];
|
|
44176
|
-
if (opts["priceBookId.isNull"] !== void 0)
|
|
44177
|
-
args.price_book_id__isNull = opts["priceBookId.isNull"];
|
|
44178
|
-
if (opts["priceBookId.isNotNull"] !== void 0)
|
|
44179
|
-
args.price_book_id__isNotNull = opts["priceBookId.isNotNull"];
|
|
44180
44604
|
if (opts["priceBookId.equals"] !== void 0)
|
|
44181
44605
|
args.price_book_id__equals = opts["priceBookId.equals"];
|
|
44182
44606
|
if (opts["priceBookId.contains"] !== void 0)
|
|
@@ -44185,6 +44609,10 @@ Examples:
|
|
|
44185
44609
|
args.price_book_id__startsWith = opts["priceBookId.startsWith"];
|
|
44186
44610
|
if (opts["priceBookId.endWith"] !== void 0)
|
|
44187
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"];
|
|
44188
44616
|
if (opts.take !== void 0)
|
|
44189
44617
|
args.take = Number(opts.take);
|
|
44190
44618
|
if (opts.skip !== void 0)
|
|
@@ -44198,20 +44626,18 @@ Examples:
|
|
|
44198
44626
|
"skip",
|
|
44199
44627
|
"product_id",
|
|
44200
44628
|
"product_id__not",
|
|
44201
|
-
"product_id__isNull",
|
|
44202
|
-
"product_id__isNotNull",
|
|
44203
44629
|
"product_id__equals",
|
|
44204
44630
|
"product_id__contains",
|
|
44205
44631
|
"product_id__startsWith",
|
|
44206
44632
|
"product_id__endWith",
|
|
44207
44633
|
"price_book_id",
|
|
44208
44634
|
"price_book_id__not",
|
|
44209
|
-
"price_book_id__isNull",
|
|
44210
|
-
"price_book_id__isNotNull",
|
|
44211
44635
|
"price_book_id__equals",
|
|
44212
44636
|
"price_book_id__contains",
|
|
44213
44637
|
"price_book_id__startsWith",
|
|
44214
|
-
"price_book_id__endWith"
|
|
44638
|
+
"price_book_id__endWith",
|
|
44639
|
+
"price_book_id__isNull",
|
|
44640
|
+
"price_book_id__isNotNull"
|
|
44215
44641
|
]
|
|
44216
44642
|
});
|
|
44217
44643
|
});
|
|
@@ -44233,7 +44659,7 @@ Examples:
|
|
|
44233
44659
|
queryParamKeys: []
|
|
44234
44660
|
});
|
|
44235
44661
|
});
|
|
44236
|
-
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", `
|
|
44237
44663
|
Examples:
|
|
44238
44664
|
hyperline price-configurations create --currency <currency> --billing-interval <billing_interval> --type <type> --prices <prices> --product-id <product_id>
|
|
44239
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>
|
|
@@ -44252,6 +44678,8 @@ Examples:
|
|
|
44252
44678
|
args.type = opts.type;
|
|
44253
44679
|
if (opts.productId !== void 0)
|
|
44254
44680
|
args.product_id = opts.productId;
|
|
44681
|
+
if (opts.aggregatorFilterId !== void 0)
|
|
44682
|
+
args.aggregator_filter_id = opts.aggregatorFilterId;
|
|
44255
44683
|
if (opts.allowOnPortal !== void 0)
|
|
44256
44684
|
args.allow_on_portal = true;
|
|
44257
44685
|
if (opts.countries !== void 0)
|
|
@@ -44335,7 +44763,7 @@ Examples:
|
|
|
44335
44763
|
// build/commands/generated/products.js
|
|
44336
44764
|
function registerProductsCommands(parent) {
|
|
44337
44765
|
const resource = parent.command("products").description("Manage products");
|
|
44338
|
-
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", `
|
|
44339
44767
|
Examples:
|
|
44340
44768
|
hyperline products list
|
|
44341
44769
|
hyperline products list --take <take> --id <id>`).action(async (opts) => {
|
|
@@ -44349,10 +44777,6 @@ Examples:
|
|
|
44349
44777
|
args.id = opts.id;
|
|
44350
44778
|
if (opts["id.not"] !== void 0)
|
|
44351
44779
|
args.id__not = opts["id.not"];
|
|
44352
|
-
if (opts["id.isNull"] !== void 0)
|
|
44353
|
-
args.id__isNull = opts["id.isNull"];
|
|
44354
|
-
if (opts["id.isNotNull"] !== void 0)
|
|
44355
|
-
args.id__isNotNull = opts["id.isNotNull"];
|
|
44356
44780
|
if (opts["id.equals"] !== void 0)
|
|
44357
44781
|
args.id__equals = opts["id.equals"];
|
|
44358
44782
|
if (opts["id.contains"] !== void 0)
|
|
@@ -44369,10 +44793,6 @@ Examples:
|
|
|
44369
44793
|
args.name = opts.name;
|
|
44370
44794
|
if (opts["name.not"] !== void 0)
|
|
44371
44795
|
args.name__not = opts["name.not"];
|
|
44372
|
-
if (opts["name.isNull"] !== void 0)
|
|
44373
|
-
args.name__isNull = opts["name.isNull"];
|
|
44374
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
44375
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
44376
44796
|
if (opts["name.equals"] !== void 0)
|
|
44377
44797
|
args.name__equals = opts["name.equals"];
|
|
44378
44798
|
if (opts["name.contains"] !== void 0)
|
|
@@ -44385,10 +44805,6 @@ Examples:
|
|
|
44385
44805
|
args.description = opts.description;
|
|
44386
44806
|
if (opts["description.not"] !== void 0)
|
|
44387
44807
|
args.description__not = opts["description.not"];
|
|
44388
|
-
if (opts["description.isNull"] !== void 0)
|
|
44389
|
-
args.description__isNull = opts["description.isNull"];
|
|
44390
|
-
if (opts["description.isNotNull"] !== void 0)
|
|
44391
|
-
args.description__isNotNull = opts["description.isNotNull"];
|
|
44392
44808
|
if (opts["description.equals"] !== void 0)
|
|
44393
44809
|
args.description__equals = opts["description.equals"];
|
|
44394
44810
|
if (opts["description.contains"] !== void 0)
|
|
@@ -44397,14 +44813,14 @@ Examples:
|
|
|
44397
44813
|
args.description__startsWith = opts["description.startsWith"];
|
|
44398
44814
|
if (opts["description.endWith"] !== void 0)
|
|
44399
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"];
|
|
44400
44820
|
if (opts.type !== void 0)
|
|
44401
44821
|
args.type = opts.type;
|
|
44402
44822
|
if (opts["type.not"] !== void 0)
|
|
44403
44823
|
args.type__not = opts["type.not"];
|
|
44404
|
-
if (opts["type.isNull"] !== void 0)
|
|
44405
|
-
args.type__isNull = opts["type.isNull"];
|
|
44406
|
-
if (opts["type.isNotNull"] !== void 0)
|
|
44407
|
-
args.type__isNotNull = opts["type.isNotNull"];
|
|
44408
44824
|
if (opts["type.equals"] !== void 0)
|
|
44409
44825
|
args.type__equals = opts["type.equals"];
|
|
44410
44826
|
if (opts["type.contains"] !== void 0)
|
|
@@ -44428,8 +44844,6 @@ Examples:
|
|
|
44428
44844
|
"skip",
|
|
44429
44845
|
"id",
|
|
44430
44846
|
"id__not",
|
|
44431
|
-
"id__isNull",
|
|
44432
|
-
"id__isNotNull",
|
|
44433
44847
|
"id__equals",
|
|
44434
44848
|
"id__contains",
|
|
44435
44849
|
"id__startsWith",
|
|
@@ -44438,24 +44852,20 @@ Examples:
|
|
|
44438
44852
|
"status__in",
|
|
44439
44853
|
"name",
|
|
44440
44854
|
"name__not",
|
|
44441
|
-
"name__isNull",
|
|
44442
|
-
"name__isNotNull",
|
|
44443
44855
|
"name__equals",
|
|
44444
44856
|
"name__contains",
|
|
44445
44857
|
"name__startsWith",
|
|
44446
44858
|
"name__endWith",
|
|
44447
44859
|
"description",
|
|
44448
44860
|
"description__not",
|
|
44449
|
-
"description__isNull",
|
|
44450
|
-
"description__isNotNull",
|
|
44451
44861
|
"description__equals",
|
|
44452
44862
|
"description__contains",
|
|
44453
44863
|
"description__startsWith",
|
|
44454
44864
|
"description__endWith",
|
|
44865
|
+
"description__isNull",
|
|
44866
|
+
"description__isNotNull",
|
|
44455
44867
|
"type",
|
|
44456
44868
|
"type__not",
|
|
44457
|
-
"type__isNull",
|
|
44458
|
-
"type__isNotNull",
|
|
44459
44869
|
"type__equals",
|
|
44460
44870
|
"type__contains",
|
|
44461
44871
|
"type__startsWith",
|
|
@@ -44464,7 +44874,7 @@ Examples:
|
|
|
44464
44874
|
]
|
|
44465
44875
|
});
|
|
44466
44876
|
});
|
|
44467
|
-
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>", `
|
|
44468
44878
|
How the periodic credit allowance is granted for partial billing periods.
|
|
44469
44879
|
|
|
44470
44880
|
- \`prorated\` (default): the granted credits are prorated to the elapsed period.
|
|
@@ -44552,7 +44962,7 @@ Examples:
|
|
|
44552
44962
|
queryParamKeys: ["price_book_id"]
|
|
44553
44963
|
});
|
|
44554
44964
|
});
|
|
44555
|
-
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", `
|
|
44556
44966
|
Examples:
|
|
44557
44967
|
hyperline products update --id <id> --name <name>
|
|
44558
44968
|
hyperline products update --id <id> --name <name> --description <description> --public-description <public_description>
|
|
@@ -44656,6 +45066,80 @@ Examples:
|
|
|
44656
45066
|
});
|
|
44657
45067
|
}
|
|
44658
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
|
+
|
|
44659
45143
|
// build/commands/generated/quotes.js
|
|
44660
45144
|
function registerQuotesCommands(parent) {
|
|
44661
45145
|
const resource = parent.command("quotes").description("Manage quotes");
|
|
@@ -44665,12 +45149,12 @@ Quote status.
|
|
|
44665
45149
|
- \`draft\`: The quote is a draft.
|
|
44666
45150
|
- \`approved\`: The quote is approved and ready to be sent to the customer.
|
|
44667
45151
|
- \`pending_signature\`: The quote is awaiting the customer's signature.
|
|
44668
|
-
`).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.
|
|
44669
45153
|
|
|
44670
45154
|
- \`all\`: Display all pricing tiers.
|
|
44671
45155
|
- \`matching\`: Only display the tiers used to compute the price based on quantity.
|
|
44672
45156
|
- \`none\`: Hide all pricing tiers.
|
|
44673
|
-
`).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", `
|
|
44674
45158
|
Examples:
|
|
44675
45159
|
hyperline quotes create --customer-id <customer_id>
|
|
44676
45160
|
hyperline quotes create --customer-id <customer_id> --status <status> --owner-email <owner_email>
|
|
@@ -44709,6 +45193,8 @@ Examples:
|
|
|
44709
45193
|
args.display_price_tiers = opts.displayPriceTiers;
|
|
44710
45194
|
if (opts.displayPhaseValue !== void 0)
|
|
44711
45195
|
args.display_phase_value = opts.displayPhaseValue;
|
|
45196
|
+
if (opts.displayDiscountsOnTotal !== void 0)
|
|
45197
|
+
args.display_discounts_on_total = opts.displayDiscountsOnTotal;
|
|
44712
45198
|
if (opts.displayFirstInvoiceAmount !== void 0)
|
|
44713
45199
|
args.display_first_invoice_amount = opts.displayFirstInvoiceAmount;
|
|
44714
45200
|
if (opts.displayDocumentsInPreview !== void 0)
|
|
@@ -44723,6 +45209,8 @@ Examples:
|
|
|
44723
45209
|
args.expires_at = opts.expiresAt;
|
|
44724
45210
|
if (opts.amount !== void 0)
|
|
44725
45211
|
args.amount = Number(opts.amount);
|
|
45212
|
+
if (opts.contractValue !== void 0)
|
|
45213
|
+
args.contract_value = Number(opts.contractValue);
|
|
44726
45214
|
if (opts.collectCustomPropertyIds !== void 0)
|
|
44727
45215
|
args.collect_custom_property_ids = JSON.parse(opts.collectCustomPropertyIds);
|
|
44728
45216
|
if (opts.contractClauseIds !== void 0)
|
|
@@ -44738,7 +45226,7 @@ Examples:
|
|
|
44738
45226
|
queryParamKeys: []
|
|
44739
45227
|
});
|
|
44740
45228
|
});
|
|
44741
|
-
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", `
|
|
44742
45230
|
Examples:
|
|
44743
45231
|
hyperline quotes list
|
|
44744
45232
|
hyperline quotes list --take <take> --id <id>`).action(async (opts) => {
|
|
@@ -44752,10 +45240,6 @@ Examples:
|
|
|
44752
45240
|
args.id = opts.id;
|
|
44753
45241
|
if (opts["id.not"] !== void 0)
|
|
44754
45242
|
args.id__not = opts["id.not"];
|
|
44755
|
-
if (opts["id.isNull"] !== void 0)
|
|
44756
|
-
args.id__isNull = opts["id.isNull"];
|
|
44757
|
-
if (opts["id.isNotNull"] !== void 0)
|
|
44758
|
-
args.id__isNotNull = opts["id.isNotNull"];
|
|
44759
45243
|
if (opts["id.equals"] !== void 0)
|
|
44760
45244
|
args.id__equals = opts["id.equals"];
|
|
44761
45245
|
if (opts["id.contains"] !== void 0)
|
|
@@ -44768,10 +45252,6 @@ Examples:
|
|
|
44768
45252
|
args.number = opts.number;
|
|
44769
45253
|
if (opts["number.not"] !== void 0)
|
|
44770
45254
|
args.number__not = opts["number.not"];
|
|
44771
|
-
if (opts["number.isNull"] !== void 0)
|
|
44772
|
-
args.number__isNull = opts["number.isNull"];
|
|
44773
|
-
if (opts["number.isNotNull"] !== void 0)
|
|
44774
|
-
args.number__isNotNull = opts["number.isNotNull"];
|
|
44775
45255
|
if (opts["number.equals"] !== void 0)
|
|
44776
45256
|
args.number__equals = opts["number.equals"];
|
|
44777
45257
|
if (opts["number.contains"] !== void 0)
|
|
@@ -44788,10 +45268,6 @@ Examples:
|
|
|
44788
45268
|
args.customer_id = opts.customerId;
|
|
44789
45269
|
if (opts["customerId.not"] !== void 0)
|
|
44790
45270
|
args.customer_id__not = opts["customerId.not"];
|
|
44791
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
44792
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
44793
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
44794
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
44795
45271
|
if (opts["customerId.equals"] !== void 0)
|
|
44796
45272
|
args.customer_id__equals = opts["customerId.equals"];
|
|
44797
45273
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -44804,10 +45280,6 @@ Examples:
|
|
|
44804
45280
|
args.template_id = opts.templateId;
|
|
44805
45281
|
if (opts["templateId.not"] !== void 0)
|
|
44806
45282
|
args.template_id__not = opts["templateId.not"];
|
|
44807
|
-
if (opts["templateId.isNull"] !== void 0)
|
|
44808
|
-
args.template_id__isNull = opts["templateId.isNull"];
|
|
44809
|
-
if (opts["templateId.isNotNull"] !== void 0)
|
|
44810
|
-
args.template_id__isNotNull = opts["templateId.isNotNull"];
|
|
44811
45283
|
if (opts["templateId.equals"] !== void 0)
|
|
44812
45284
|
args.template_id__equals = opts["templateId.equals"];
|
|
44813
45285
|
if (opts["templateId.contains"] !== void 0)
|
|
@@ -44816,14 +45288,14 @@ Examples:
|
|
|
44816
45288
|
args.template_id__startsWith = opts["templateId.startsWith"];
|
|
44817
45289
|
if (opts["templateId.endWith"] !== void 0)
|
|
44818
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"];
|
|
44819
45295
|
if (opts.crmOpportunityId !== void 0)
|
|
44820
45296
|
args.crm_opportunity_id = opts.crmOpportunityId;
|
|
44821
45297
|
if (opts["crmOpportunityId.not"] !== void 0)
|
|
44822
45298
|
args.crm_opportunity_id__not = opts["crmOpportunityId.not"];
|
|
44823
|
-
if (opts["crmOpportunityId.isNull"] !== void 0)
|
|
44824
|
-
args.crm_opportunity_id__isNull = opts["crmOpportunityId.isNull"];
|
|
44825
|
-
if (opts["crmOpportunityId.isNotNull"] !== void 0)
|
|
44826
|
-
args.crm_opportunity_id__isNotNull = opts["crmOpportunityId.isNotNull"];
|
|
44827
45299
|
if (opts["crmOpportunityId.equals"] !== void 0)
|
|
44828
45300
|
args.crm_opportunity_id__equals = opts["crmOpportunityId.equals"];
|
|
44829
45301
|
if (opts["crmOpportunityId.contains"] !== void 0)
|
|
@@ -44832,30 +45304,16 @@ Examples:
|
|
|
44832
45304
|
args.crm_opportunity_id__startsWith = opts["crmOpportunityId.startsWith"];
|
|
44833
45305
|
if (opts["crmOpportunityId.endWith"] !== void 0)
|
|
44834
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"];
|
|
44835
45311
|
if (opts.type !== void 0)
|
|
44836
45312
|
args.type = opts.type;
|
|
44837
|
-
if (opts["type.not"] !== void 0)
|
|
44838
|
-
args.type__not = opts["type.not"];
|
|
44839
|
-
if (opts["type.isNull"] !== void 0)
|
|
44840
|
-
args.type__isNull = opts["type.isNull"];
|
|
44841
|
-
if (opts["type.isNotNull"] !== void 0)
|
|
44842
|
-
args.type__isNotNull = opts["type.isNotNull"];
|
|
44843
|
-
if (opts["type.equals"] !== void 0)
|
|
44844
|
-
args.type__equals = opts["type.equals"];
|
|
44845
|
-
if (opts["type.contains"] !== void 0)
|
|
44846
|
-
args.type__contains = opts["type.contains"];
|
|
44847
|
-
if (opts["type.startsWith"] !== void 0)
|
|
44848
|
-
args.type__startsWith = opts["type.startsWith"];
|
|
44849
|
-
if (opts["type.endWith"] !== void 0)
|
|
44850
|
-
args.type__endWith = opts["type.endWith"];
|
|
44851
45313
|
if (opts.updatedAt !== void 0)
|
|
44852
45314
|
args.updated_at = opts.updatedAt;
|
|
44853
45315
|
if (opts["updatedAt.not"] !== void 0)
|
|
44854
45316
|
args.updated_at__not = opts["updatedAt.not"];
|
|
44855
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
44856
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
44857
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
44858
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
44859
45317
|
if (opts["updatedAt.equals"] !== void 0)
|
|
44860
45318
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
44861
45319
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -44879,16 +45337,12 @@ Examples:
|
|
|
44879
45337
|
"skip",
|
|
44880
45338
|
"id",
|
|
44881
45339
|
"id__not",
|
|
44882
|
-
"id__isNull",
|
|
44883
|
-
"id__isNotNull",
|
|
44884
45340
|
"id__equals",
|
|
44885
45341
|
"id__contains",
|
|
44886
45342
|
"id__startsWith",
|
|
44887
45343
|
"id__endWith",
|
|
44888
45344
|
"number",
|
|
44889
45345
|
"number__not",
|
|
44890
|
-
"number__isNull",
|
|
44891
|
-
"number__isNotNull",
|
|
44892
45346
|
"number__equals",
|
|
44893
45347
|
"number__contains",
|
|
44894
45348
|
"number__startsWith",
|
|
@@ -44897,40 +45351,29 @@ Examples:
|
|
|
44897
45351
|
"status__in",
|
|
44898
45352
|
"customer_id",
|
|
44899
45353
|
"customer_id__not",
|
|
44900
|
-
"customer_id__isNull",
|
|
44901
|
-
"customer_id__isNotNull",
|
|
44902
45354
|
"customer_id__equals",
|
|
44903
45355
|
"customer_id__contains",
|
|
44904
45356
|
"customer_id__startsWith",
|
|
44905
45357
|
"customer_id__endWith",
|
|
44906
45358
|
"template_id",
|
|
44907
45359
|
"template_id__not",
|
|
44908
|
-
"template_id__isNull",
|
|
44909
|
-
"template_id__isNotNull",
|
|
44910
45360
|
"template_id__equals",
|
|
44911
45361
|
"template_id__contains",
|
|
44912
45362
|
"template_id__startsWith",
|
|
44913
45363
|
"template_id__endWith",
|
|
45364
|
+
"template_id__isNull",
|
|
45365
|
+
"template_id__isNotNull",
|
|
44914
45366
|
"crm_opportunity_id",
|
|
44915
45367
|
"crm_opportunity_id__not",
|
|
44916
|
-
"crm_opportunity_id__isNull",
|
|
44917
|
-
"crm_opportunity_id__isNotNull",
|
|
44918
45368
|
"crm_opportunity_id__equals",
|
|
44919
45369
|
"crm_opportunity_id__contains",
|
|
44920
45370
|
"crm_opportunity_id__startsWith",
|
|
44921
45371
|
"crm_opportunity_id__endWith",
|
|
45372
|
+
"crm_opportunity_id__isNull",
|
|
45373
|
+
"crm_opportunity_id__isNotNull",
|
|
44922
45374
|
"type",
|
|
44923
|
-
"type__not",
|
|
44924
|
-
"type__isNull",
|
|
44925
|
-
"type__isNotNull",
|
|
44926
|
-
"type__equals",
|
|
44927
|
-
"type__contains",
|
|
44928
|
-
"type__startsWith",
|
|
44929
|
-
"type__endWith",
|
|
44930
45375
|
"updated_at",
|
|
44931
45376
|
"updated_at__not",
|
|
44932
|
-
"updated_at__isNull",
|
|
44933
|
-
"updated_at__isNotNull",
|
|
44934
45377
|
"updated_at__equals",
|
|
44935
45378
|
"updated_at__lt",
|
|
44936
45379
|
"updated_at__lte",
|
|
@@ -44957,12 +45400,12 @@ Examples:
|
|
|
44957
45400
|
queryParamKeys: []
|
|
44958
45401
|
});
|
|
44959
45402
|
});
|
|
44960
|
-
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.
|
|
44961
45404
|
|
|
44962
45405
|
- \`all\`: Display all pricing tiers.
|
|
44963
45406
|
- \`matching\`: Only display the tiers used to compute the price based on quantity.
|
|
44964
45407
|
- \`none\`: Hide all pricing tiers.
|
|
44965
|
-
`).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", `
|
|
44966
45409
|
Examples:
|
|
44967
45410
|
hyperline quotes update --id <id>
|
|
44968
45411
|
hyperline quotes update --id <id> --owner-email <owner_email> --catalog-version-id <catalog_version_id>
|
|
@@ -44997,6 +45440,8 @@ Examples:
|
|
|
44997
45440
|
args.display_price_tiers = opts.displayPriceTiers;
|
|
44998
45441
|
if (opts.displayPhaseValue !== void 0)
|
|
44999
45442
|
args.display_phase_value = opts.displayPhaseValue;
|
|
45443
|
+
if (opts.displayDiscountsOnTotal !== void 0)
|
|
45444
|
+
args.display_discounts_on_total = opts.displayDiscountsOnTotal;
|
|
45000
45445
|
if (opts.displayFirstInvoiceAmount !== void 0)
|
|
45001
45446
|
args.display_first_invoice_amount = opts.displayFirstInvoiceAmount;
|
|
45002
45447
|
if (opts.displayDocumentsInPreview !== void 0)
|
|
@@ -45011,6 +45456,8 @@ Examples:
|
|
|
45011
45456
|
args.expires_at = opts.expiresAt;
|
|
45012
45457
|
if (opts.amount !== void 0)
|
|
45013
45458
|
args.amount = Number(opts.amount);
|
|
45459
|
+
if (opts.contractValue !== void 0)
|
|
45460
|
+
args.contract_value = Number(opts.contractValue);
|
|
45014
45461
|
if (opts.collectCustomPropertyIds !== void 0)
|
|
45015
45462
|
args.collect_custom_property_ids = JSON.parse(opts.collectCustomPropertyIds);
|
|
45016
45463
|
if (opts.contractClauseIds !== void 0)
|
|
@@ -45088,6 +45535,25 @@ Examples:
|
|
|
45088
45535
|
queryParamKeys: []
|
|
45089
45536
|
});
|
|
45090
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
|
+
});
|
|
45091
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", `
|
|
45092
45558
|
Examples:
|
|
45093
45559
|
hyperline quotes send --id <id>
|
|
@@ -45285,7 +45751,7 @@ Examples:
|
|
|
45285
45751
|
// build/commands/generated/quotes-templates.js
|
|
45286
45752
|
function registerQuotes_TemplatesCommands(parent) {
|
|
45287
45753
|
const resource = parent.command("quotes-templates").description("Manage quotes > templates");
|
|
45288
|
-
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", `
|
|
45289
45755
|
Examples:
|
|
45290
45756
|
hyperline quotes-templates list-quote-templates
|
|
45291
45757
|
hyperline quotes-templates list-quote-templates --take <take> --id <id>`).action(async (opts) => {
|
|
@@ -45299,10 +45765,6 @@ Examples:
|
|
|
45299
45765
|
args.id = opts.id;
|
|
45300
45766
|
if (opts["id.not"] !== void 0)
|
|
45301
45767
|
args.id__not = opts["id.not"];
|
|
45302
|
-
if (opts["id.isNull"] !== void 0)
|
|
45303
|
-
args.id__isNull = opts["id.isNull"];
|
|
45304
|
-
if (opts["id.isNotNull"] !== void 0)
|
|
45305
|
-
args.id__isNotNull = opts["id.isNotNull"];
|
|
45306
45768
|
if (opts["id.equals"] !== void 0)
|
|
45307
45769
|
args.id__equals = opts["id.equals"];
|
|
45308
45770
|
if (opts["id.contains"] !== void 0)
|
|
@@ -45315,10 +45777,6 @@ Examples:
|
|
|
45315
45777
|
args.name = opts.name;
|
|
45316
45778
|
if (opts["name.not"] !== void 0)
|
|
45317
45779
|
args.name__not = opts["name.not"];
|
|
45318
|
-
if (opts["name.isNull"] !== void 0)
|
|
45319
|
-
args.name__isNull = opts["name.isNull"];
|
|
45320
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
45321
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
45322
45780
|
if (opts["name.equals"] !== void 0)
|
|
45323
45781
|
args.name__equals = opts["name.equals"];
|
|
45324
45782
|
if (opts["name.contains"] !== void 0)
|
|
@@ -45331,10 +45789,6 @@ Examples:
|
|
|
45331
45789
|
args.subscription_template_id = opts.subscriptionTemplateId;
|
|
45332
45790
|
if (opts["subscriptionTemplateId.not"] !== void 0)
|
|
45333
45791
|
args.subscription_template_id__not = opts["subscriptionTemplateId.not"];
|
|
45334
|
-
if (opts["subscriptionTemplateId.isNull"] !== void 0)
|
|
45335
|
-
args.subscription_template_id__isNull = opts["subscriptionTemplateId.isNull"];
|
|
45336
|
-
if (opts["subscriptionTemplateId.isNotNull"] !== void 0)
|
|
45337
|
-
args.subscription_template_id__isNotNull = opts["subscriptionTemplateId.isNotNull"];
|
|
45338
45792
|
if (opts["subscriptionTemplateId.equals"] !== void 0)
|
|
45339
45793
|
args.subscription_template_id__equals = opts["subscriptionTemplateId.equals"];
|
|
45340
45794
|
if (opts["subscriptionTemplateId.contains"] !== void 0)
|
|
@@ -45343,6 +45797,10 @@ Examples:
|
|
|
45343
45797
|
args.subscription_template_id__startsWith = opts["subscriptionTemplateId.startsWith"];
|
|
45344
45798
|
if (opts["subscriptionTemplateId.endWith"] !== void 0)
|
|
45345
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"];
|
|
45346
45804
|
if (opts.search !== void 0)
|
|
45347
45805
|
args.search = opts.search;
|
|
45348
45806
|
if (opts.take !== void 0)
|
|
@@ -45358,28 +45816,24 @@ Examples:
|
|
|
45358
45816
|
"skip",
|
|
45359
45817
|
"id",
|
|
45360
45818
|
"id__not",
|
|
45361
|
-
"id__isNull",
|
|
45362
|
-
"id__isNotNull",
|
|
45363
45819
|
"id__equals",
|
|
45364
45820
|
"id__contains",
|
|
45365
45821
|
"id__startsWith",
|
|
45366
45822
|
"id__endWith",
|
|
45367
45823
|
"name",
|
|
45368
45824
|
"name__not",
|
|
45369
|
-
"name__isNull",
|
|
45370
|
-
"name__isNotNull",
|
|
45371
45825
|
"name__equals",
|
|
45372
45826
|
"name__contains",
|
|
45373
45827
|
"name__startsWith",
|
|
45374
45828
|
"name__endWith",
|
|
45375
45829
|
"subscription_template_id",
|
|
45376
45830
|
"subscription_template_id__not",
|
|
45377
|
-
"subscription_template_id__isNull",
|
|
45378
|
-
"subscription_template_id__isNotNull",
|
|
45379
45831
|
"subscription_template_id__equals",
|
|
45380
45832
|
"subscription_template_id__contains",
|
|
45381
45833
|
"subscription_template_id__startsWith",
|
|
45382
45834
|
"subscription_template_id__endWith",
|
|
45835
|
+
"subscription_template_id__isNull",
|
|
45836
|
+
"subscription_template_id__isNotNull",
|
|
45383
45837
|
"search"
|
|
45384
45838
|
]
|
|
45385
45839
|
});
|
|
@@ -45781,7 +46235,7 @@ Examples:
|
|
|
45781
46235
|
queryParamKeys: []
|
|
45782
46236
|
});
|
|
45783
46237
|
});
|
|
45784
|
-
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>", `
|
|
45785
46239
|
Subscription status filter.
|
|
45786
46240
|
|
|
45787
46241
|
- \`active\`, \`pending\`, \`paused\`, \`errored\`, \`cancelled\`, \`draft\`, \`voided\`, \`archived\`: match that status.
|
|
@@ -45790,7 +46244,7 @@ Subscription status filter.
|
|
|
45790
46244
|
- \`any\`: every status, no exclusion.
|
|
45791
46245
|
|
|
45792
46246
|
Use \`status__in\` with comma-separated values to combine statuses. When the filter is omitted, \`draft\`, \`voided\`, \`cancelled\` and \`archived\` subscriptions are excluded.
|
|
45793
|
-
`).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", `
|
|
45794
46248
|
Examples:
|
|
45795
46249
|
hyperline subscriptions list
|
|
45796
46250
|
hyperline subscriptions list --take <take> --activation-strategy <activation_strategy>`).action(async (opts) => {
|
|
@@ -45812,10 +46266,6 @@ Examples:
|
|
|
45812
46266
|
args.currency = opts.currency;
|
|
45813
46267
|
if (opts["currency.not"] !== void 0)
|
|
45814
46268
|
args.currency__not = opts["currency.not"];
|
|
45815
|
-
if (opts["currency.isNull"] !== void 0)
|
|
45816
|
-
args.currency__isNull = opts["currency.isNull"];
|
|
45817
|
-
if (opts["currency.isNotNull"] !== void 0)
|
|
45818
|
-
args.currency__isNotNull = opts["currency.isNotNull"];
|
|
45819
46269
|
if (opts["currency.equals"] !== void 0)
|
|
45820
46270
|
args.currency__equals = opts["currency.equals"];
|
|
45821
46271
|
if (opts["currency.contains"] !== void 0)
|
|
@@ -45828,10 +46278,6 @@ Examples:
|
|
|
45828
46278
|
args.plan_id = opts.planId;
|
|
45829
46279
|
if (opts["planId.not"] !== void 0)
|
|
45830
46280
|
args.plan_id__not = opts["planId.not"];
|
|
45831
|
-
if (opts["planId.isNull"] !== void 0)
|
|
45832
|
-
args.plan_id__isNull = opts["planId.isNull"];
|
|
45833
|
-
if (opts["planId.isNotNull"] !== void 0)
|
|
45834
|
-
args.plan_id__isNotNull = opts["planId.isNotNull"];
|
|
45835
46281
|
if (opts["planId.equals"] !== void 0)
|
|
45836
46282
|
args.plan_id__equals = opts["planId.equals"];
|
|
45837
46283
|
if (opts["planId.contains"] !== void 0)
|
|
@@ -45840,14 +46286,14 @@ Examples:
|
|
|
45840
46286
|
args.plan_id__startsWith = opts["planId.startsWith"];
|
|
45841
46287
|
if (opts["planId.endWith"] !== void 0)
|
|
45842
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"];
|
|
45843
46293
|
if (opts.originalQuoteId !== void 0)
|
|
45844
46294
|
args.original_quote_id = opts.originalQuoteId;
|
|
45845
46295
|
if (opts["originalQuoteId.not"] !== void 0)
|
|
45846
46296
|
args.original_quote_id__not = opts["originalQuoteId.not"];
|
|
45847
|
-
if (opts["originalQuoteId.isNull"] !== void 0)
|
|
45848
|
-
args.original_quote_id__isNull = opts["originalQuoteId.isNull"];
|
|
45849
|
-
if (opts["originalQuoteId.isNotNull"] !== void 0)
|
|
45850
|
-
args.original_quote_id__isNotNull = opts["originalQuoteId.isNotNull"];
|
|
45851
46297
|
if (opts["originalQuoteId.equals"] !== void 0)
|
|
45852
46298
|
args.original_quote_id__equals = opts["originalQuoteId.equals"];
|
|
45853
46299
|
if (opts["originalQuoteId.contains"] !== void 0)
|
|
@@ -45856,14 +46302,14 @@ Examples:
|
|
|
45856
46302
|
args.original_quote_id__startsWith = opts["originalQuoteId.startsWith"];
|
|
45857
46303
|
if (opts["originalQuoteId.endWith"] !== void 0)
|
|
45858
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"];
|
|
45859
46309
|
if (opts.customerId !== void 0)
|
|
45860
46310
|
args.customer_id = opts.customerId;
|
|
45861
46311
|
if (opts["customerId.not"] !== void 0)
|
|
45862
46312
|
args.customer_id__not = opts["customerId.not"];
|
|
45863
|
-
if (opts["customerId.isNull"] !== void 0)
|
|
45864
|
-
args.customer_id__isNull = opts["customerId.isNull"];
|
|
45865
|
-
if (opts["customerId.isNotNull"] !== void 0)
|
|
45866
|
-
args.customer_id__isNotNull = opts["customerId.isNotNull"];
|
|
45867
46313
|
if (opts["customerId.equals"] !== void 0)
|
|
45868
46314
|
args.customer_id__equals = opts["customerId.equals"];
|
|
45869
46315
|
if (opts["customerId.contains"] !== void 0)
|
|
@@ -45872,16 +46318,16 @@ Examples:
|
|
|
45872
46318
|
args.customer_id__startsWith = opts["customerId.startsWith"];
|
|
45873
46319
|
if (opts["customerId.endWith"] !== void 0)
|
|
45874
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"];
|
|
45875
46325
|
if (opts.invoicingEntityId !== void 0)
|
|
45876
46326
|
args.invoicing_entity_id = opts.invoicingEntityId;
|
|
45877
46327
|
if (opts.purchaseOrder !== void 0)
|
|
45878
46328
|
args.purchase_order = opts.purchaseOrder;
|
|
45879
46329
|
if (opts["purchaseOrder.not"] !== void 0)
|
|
45880
46330
|
args.purchase_order__not = opts["purchaseOrder.not"];
|
|
45881
|
-
if (opts["purchaseOrder.isNull"] !== void 0)
|
|
45882
|
-
args.purchase_order__isNull = opts["purchaseOrder.isNull"];
|
|
45883
|
-
if (opts["purchaseOrder.isNotNull"] !== void 0)
|
|
45884
|
-
args.purchase_order__isNotNull = opts["purchaseOrder.isNotNull"];
|
|
45885
46331
|
if (opts["purchaseOrder.equals"] !== void 0)
|
|
45886
46332
|
args.purchase_order__equals = opts["purchaseOrder.equals"];
|
|
45887
46333
|
if (opts["purchaseOrder.contains"] !== void 0)
|
|
@@ -45890,6 +46336,10 @@ Examples:
|
|
|
45890
46336
|
args.purchase_order__startsWith = opts["purchaseOrder.startsWith"];
|
|
45891
46337
|
if (opts["purchaseOrder.endWith"] !== void 0)
|
|
45892
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"];
|
|
45893
46343
|
if (opts.customProperties !== void 0)
|
|
45894
46344
|
args.custom_properties = opts.customProperties;
|
|
45895
46345
|
if (opts.invoiceDrafts !== void 0)
|
|
@@ -45900,10 +46350,6 @@ Examples:
|
|
|
45900
46350
|
args.updated_at = opts.updatedAt;
|
|
45901
46351
|
if (opts["updatedAt.not"] !== void 0)
|
|
45902
46352
|
args.updated_at__not = opts["updatedAt.not"];
|
|
45903
|
-
if (opts["updatedAt.isNull"] !== void 0)
|
|
45904
|
-
args.updated_at__isNull = opts["updatedAt.isNull"];
|
|
45905
|
-
if (opts["updatedAt.isNotNull"] !== void 0)
|
|
45906
|
-
args.updated_at__isNotNull = opts["updatedAt.isNotNull"];
|
|
45907
46353
|
if (opts["updatedAt.equals"] !== void 0)
|
|
45908
46354
|
args.updated_at__equals = opts["updatedAt.equals"];
|
|
45909
46355
|
if (opts["updatedAt.lt"] !== void 0)
|
|
@@ -45914,6 +46360,34 @@ Examples:
|
|
|
45914
46360
|
args.updated_at__gt = opts["updatedAt.gt"];
|
|
45915
46361
|
if (opts["updatedAt.gte"] !== void 0)
|
|
45916
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;
|
|
45917
46391
|
if (opts.take !== void 0)
|
|
45918
46392
|
args.take = Number(opts.take);
|
|
45919
46393
|
if (opts.skip !== void 0)
|
|
@@ -45931,57 +46405,67 @@ Examples:
|
|
|
45931
46405
|
"status__in",
|
|
45932
46406
|
"currency",
|
|
45933
46407
|
"currency__not",
|
|
45934
|
-
"currency__isNull",
|
|
45935
|
-
"currency__isNotNull",
|
|
45936
46408
|
"currency__equals",
|
|
45937
46409
|
"currency__contains",
|
|
45938
46410
|
"currency__startsWith",
|
|
45939
46411
|
"currency__endWith",
|
|
45940
46412
|
"plan_id",
|
|
45941
46413
|
"plan_id__not",
|
|
45942
|
-
"plan_id__isNull",
|
|
45943
|
-
"plan_id__isNotNull",
|
|
45944
46414
|
"plan_id__equals",
|
|
45945
46415
|
"plan_id__contains",
|
|
45946
46416
|
"plan_id__startsWith",
|
|
45947
46417
|
"plan_id__endWith",
|
|
46418
|
+
"plan_id__isNull",
|
|
46419
|
+
"plan_id__isNotNull",
|
|
45948
46420
|
"original_quote_id",
|
|
45949
46421
|
"original_quote_id__not",
|
|
45950
|
-
"original_quote_id__isNull",
|
|
45951
|
-
"original_quote_id__isNotNull",
|
|
45952
46422
|
"original_quote_id__equals",
|
|
45953
46423
|
"original_quote_id__contains",
|
|
45954
46424
|
"original_quote_id__startsWith",
|
|
45955
46425
|
"original_quote_id__endWith",
|
|
46426
|
+
"original_quote_id__isNull",
|
|
46427
|
+
"original_quote_id__isNotNull",
|
|
45956
46428
|
"customer_id",
|
|
45957
46429
|
"customer_id__not",
|
|
45958
|
-
"customer_id__isNull",
|
|
45959
|
-
"customer_id__isNotNull",
|
|
45960
46430
|
"customer_id__equals",
|
|
45961
46431
|
"customer_id__contains",
|
|
45962
46432
|
"customer_id__startsWith",
|
|
45963
46433
|
"customer_id__endWith",
|
|
46434
|
+
"customer_id__isNull",
|
|
46435
|
+
"customer_id__isNotNull",
|
|
45964
46436
|
"invoicing_entity_id",
|
|
45965
46437
|
"purchase_order",
|
|
45966
46438
|
"purchase_order__not",
|
|
45967
|
-
"purchase_order__isNull",
|
|
45968
|
-
"purchase_order__isNotNull",
|
|
45969
46439
|
"purchase_order__equals",
|
|
45970
46440
|
"purchase_order__contains",
|
|
45971
46441
|
"purchase_order__startsWith",
|
|
45972
46442
|
"purchase_order__endWith",
|
|
46443
|
+
"purchase_order__isNull",
|
|
46444
|
+
"purchase_order__isNotNull",
|
|
45973
46445
|
"custom_properties",
|
|
45974
46446
|
"invoice_drafts",
|
|
45975
46447
|
"integration_entity_id",
|
|
45976
46448
|
"updated_at",
|
|
45977
46449
|
"updated_at__not",
|
|
45978
|
-
"updated_at__isNull",
|
|
45979
|
-
"updated_at__isNotNull",
|
|
45980
46450
|
"updated_at__equals",
|
|
45981
46451
|
"updated_at__lt",
|
|
45982
46452
|
"updated_at__lte",
|
|
45983
46453
|
"updated_at__gt",
|
|
45984
|
-
"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"
|
|
45985
46469
|
]
|
|
45986
46470
|
});
|
|
45987
46471
|
});
|
|
@@ -46263,7 +46747,7 @@ Examples:
|
|
|
46263
46747
|
// build/commands/generated/subscriptions-transitions.js
|
|
46264
46748
|
function registerSubscriptions_TransitionsCommands(parent) {
|
|
46265
46749
|
const resource = parent.command("subscriptions-transitions").description("Manage subscriptions > transitions");
|
|
46266
|
-
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", `
|
|
46267
46751
|
Examples:
|
|
46268
46752
|
hyperline subscriptions-transitions list-subscription-transitions
|
|
46269
46753
|
hyperline subscriptions-transitions list-subscription-transitions --take <take> --status <status>`).action(async (opts) => {
|
|
@@ -46281,10 +46765,6 @@ Examples:
|
|
|
46281
46765
|
args.source_subscription_id = opts.sourceSubscriptionId;
|
|
46282
46766
|
if (opts["sourceSubscriptionId.not"] !== void 0)
|
|
46283
46767
|
args.source_subscription_id__not = opts["sourceSubscriptionId.not"];
|
|
46284
|
-
if (opts["sourceSubscriptionId.isNull"] !== void 0)
|
|
46285
|
-
args.source_subscription_id__isNull = opts["sourceSubscriptionId.isNull"];
|
|
46286
|
-
if (opts["sourceSubscriptionId.isNotNull"] !== void 0)
|
|
46287
|
-
args.source_subscription_id__isNotNull = opts["sourceSubscriptionId.isNotNull"];
|
|
46288
46768
|
if (opts["sourceSubscriptionId.equals"] !== void 0)
|
|
46289
46769
|
args.source_subscription_id__equals = opts["sourceSubscriptionId.equals"];
|
|
46290
46770
|
if (opts["sourceSubscriptionId.contains"] !== void 0)
|
|
@@ -46297,10 +46777,6 @@ Examples:
|
|
|
46297
46777
|
args.base_subscription_id = opts.baseSubscriptionId;
|
|
46298
46778
|
if (opts["baseSubscriptionId.not"] !== void 0)
|
|
46299
46779
|
args.base_subscription_id__not = opts["baseSubscriptionId.not"];
|
|
46300
|
-
if (opts["baseSubscriptionId.isNull"] !== void 0)
|
|
46301
|
-
args.base_subscription_id__isNull = opts["baseSubscriptionId.isNull"];
|
|
46302
|
-
if (opts["baseSubscriptionId.isNotNull"] !== void 0)
|
|
46303
|
-
args.base_subscription_id__isNotNull = opts["baseSubscriptionId.isNotNull"];
|
|
46304
46780
|
if (opts["baseSubscriptionId.equals"] !== void 0)
|
|
46305
46781
|
args.base_subscription_id__equals = opts["baseSubscriptionId.equals"];
|
|
46306
46782
|
if (opts["baseSubscriptionId.contains"] !== void 0)
|
|
@@ -46313,10 +46789,6 @@ Examples:
|
|
|
46313
46789
|
args.target_subscription_id = opts.targetSubscriptionId;
|
|
46314
46790
|
if (opts["targetSubscriptionId.not"] !== void 0)
|
|
46315
46791
|
args.target_subscription_id__not = opts["targetSubscriptionId.not"];
|
|
46316
|
-
if (opts["targetSubscriptionId.isNull"] !== void 0)
|
|
46317
|
-
args.target_subscription_id__isNull = opts["targetSubscriptionId.isNull"];
|
|
46318
|
-
if (opts["targetSubscriptionId.isNotNull"] !== void 0)
|
|
46319
|
-
args.target_subscription_id__isNotNull = opts["targetSubscriptionId.isNotNull"];
|
|
46320
46792
|
if (opts["targetSubscriptionId.equals"] !== void 0)
|
|
46321
46793
|
args.target_subscription_id__equals = opts["targetSubscriptionId.equals"];
|
|
46322
46794
|
if (opts["targetSubscriptionId.contains"] !== void 0)
|
|
@@ -46325,14 +46797,14 @@ Examples:
|
|
|
46325
46797
|
args.target_subscription_id__startsWith = opts["targetSubscriptionId.startsWith"];
|
|
46326
46798
|
if (opts["targetSubscriptionId.endWith"] !== void 0)
|
|
46327
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"];
|
|
46328
46804
|
if (opts.transitionDate !== void 0)
|
|
46329
|
-
args.transition_date = opts.transitionDate;
|
|
46330
|
-
if (opts["transitionDate.not"] !== void 0)
|
|
46331
|
-
args.transition_date__not = opts["transitionDate.not"];
|
|
46332
|
-
if (opts["transitionDate.isNull"] !== void 0)
|
|
46333
|
-
args.transition_date__isNull = opts["transitionDate.isNull"];
|
|
46334
|
-
if (opts["transitionDate.isNotNull"] !== void 0)
|
|
46335
|
-
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"];
|
|
46336
46808
|
if (opts["transitionDate.equals"] !== void 0)
|
|
46337
46809
|
args.transition_date__equals = opts["transitionDate.equals"];
|
|
46338
46810
|
if (opts["transitionDate.lt"] !== void 0)
|
|
@@ -46343,14 +46815,14 @@ Examples:
|
|
|
46343
46815
|
args.transition_date__gt = opts["transitionDate.gt"];
|
|
46344
46816
|
if (opts["transitionDate.gte"] !== void 0)
|
|
46345
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"];
|
|
46346
46822
|
if (opts.transitionedAt !== void 0)
|
|
46347
46823
|
args.transitioned_at = opts.transitionedAt;
|
|
46348
46824
|
if (opts["transitionedAt.not"] !== void 0)
|
|
46349
46825
|
args.transitioned_at__not = opts["transitionedAt.not"];
|
|
46350
|
-
if (opts["transitionedAt.isNull"] !== void 0)
|
|
46351
|
-
args.transitioned_at__isNull = opts["transitionedAt.isNull"];
|
|
46352
|
-
if (opts["transitionedAt.isNotNull"] !== void 0)
|
|
46353
|
-
args.transitioned_at__isNotNull = opts["transitionedAt.isNotNull"];
|
|
46354
46826
|
if (opts["transitionedAt.equals"] !== void 0)
|
|
46355
46827
|
args.transitioned_at__equals = opts["transitionedAt.equals"];
|
|
46356
46828
|
if (opts["transitionedAt.lt"] !== void 0)
|
|
@@ -46361,6 +46833,10 @@ Examples:
|
|
|
46361
46833
|
args.transitioned_at__gt = opts["transitionedAt.gt"];
|
|
46362
46834
|
if (opts["transitionedAt.gte"] !== void 0)
|
|
46363
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"];
|
|
46364
46840
|
if (opts.take !== void 0)
|
|
46365
46841
|
args.take = Number(opts.take);
|
|
46366
46842
|
if (opts.skip !== void 0)
|
|
@@ -46376,46 +46852,42 @@ Examples:
|
|
|
46376
46852
|
"status__in",
|
|
46377
46853
|
"source_subscription_id",
|
|
46378
46854
|
"source_subscription_id__not",
|
|
46379
|
-
"source_subscription_id__isNull",
|
|
46380
|
-
"source_subscription_id__isNotNull",
|
|
46381
46855
|
"source_subscription_id__equals",
|
|
46382
46856
|
"source_subscription_id__contains",
|
|
46383
46857
|
"source_subscription_id__startsWith",
|
|
46384
46858
|
"source_subscription_id__endWith",
|
|
46385
46859
|
"base_subscription_id",
|
|
46386
46860
|
"base_subscription_id__not",
|
|
46387
|
-
"base_subscription_id__isNull",
|
|
46388
|
-
"base_subscription_id__isNotNull",
|
|
46389
46861
|
"base_subscription_id__equals",
|
|
46390
46862
|
"base_subscription_id__contains",
|
|
46391
46863
|
"base_subscription_id__startsWith",
|
|
46392
46864
|
"base_subscription_id__endWith",
|
|
46393
46865
|
"target_subscription_id",
|
|
46394
46866
|
"target_subscription_id__not",
|
|
46395
|
-
"target_subscription_id__isNull",
|
|
46396
|
-
"target_subscription_id__isNotNull",
|
|
46397
46867
|
"target_subscription_id__equals",
|
|
46398
46868
|
"target_subscription_id__contains",
|
|
46399
46869
|
"target_subscription_id__startsWith",
|
|
46400
46870
|
"target_subscription_id__endWith",
|
|
46871
|
+
"target_subscription_id__isNull",
|
|
46872
|
+
"target_subscription_id__isNotNull",
|
|
46401
46873
|
"transition_date",
|
|
46402
46874
|
"transition_date__not",
|
|
46403
|
-
"transition_date__isNull",
|
|
46404
|
-
"transition_date__isNotNull",
|
|
46405
46875
|
"transition_date__equals",
|
|
46406
46876
|
"transition_date__lt",
|
|
46407
46877
|
"transition_date__lte",
|
|
46408
46878
|
"transition_date__gt",
|
|
46409
46879
|
"transition_date__gte",
|
|
46880
|
+
"transition_date__isNull",
|
|
46881
|
+
"transition_date__isNotNull",
|
|
46410
46882
|
"transitioned_at",
|
|
46411
46883
|
"transitioned_at__not",
|
|
46412
|
-
"transitioned_at__isNull",
|
|
46413
|
-
"transitioned_at__isNotNull",
|
|
46414
46884
|
"transitioned_at__equals",
|
|
46415
46885
|
"transitioned_at__lt",
|
|
46416
46886
|
"transitioned_at__lte",
|
|
46417
46887
|
"transitioned_at__gt",
|
|
46418
|
-
"transitioned_at__gte"
|
|
46888
|
+
"transitioned_at__gte",
|
|
46889
|
+
"transitioned_at__isNull",
|
|
46890
|
+
"transitioned_at__isNotNull"
|
|
46419
46891
|
]
|
|
46420
46892
|
});
|
|
46421
46893
|
});
|
|
@@ -46493,7 +46965,7 @@ Examples:
|
|
|
46493
46965
|
// build/commands/generated/taxes.js
|
|
46494
46966
|
function registerTaxesCommands(parent) {
|
|
46495
46967
|
const resource = parent.command("taxes").description("Manage taxes");
|
|
46496
|
-
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", `
|
|
46497
46969
|
Examples:
|
|
46498
46970
|
hyperline taxes list-tax-rates
|
|
46499
46971
|
hyperline taxes list-tax-rates --take <take> --id <id>`).action(async (opts) => {
|
|
@@ -46507,10 +46979,6 @@ Examples:
|
|
|
46507
46979
|
args.id = opts.id;
|
|
46508
46980
|
if (opts["id.not"] !== void 0)
|
|
46509
46981
|
args.id__not = opts["id.not"];
|
|
46510
|
-
if (opts["id.isNull"] !== void 0)
|
|
46511
|
-
args.id__isNull = opts["id.isNull"];
|
|
46512
|
-
if (opts["id.isNotNull"] !== void 0)
|
|
46513
|
-
args.id__isNotNull = opts["id.isNotNull"];
|
|
46514
46982
|
if (opts["id.equals"] !== void 0)
|
|
46515
46983
|
args.id__equals = opts["id.equals"];
|
|
46516
46984
|
if (opts["id.contains"] !== void 0)
|
|
@@ -46523,10 +46991,6 @@ Examples:
|
|
|
46523
46991
|
args.name = opts.name;
|
|
46524
46992
|
if (opts["name.not"] !== void 0)
|
|
46525
46993
|
args.name__not = opts["name.not"];
|
|
46526
|
-
if (opts["name.isNull"] !== void 0)
|
|
46527
|
-
args.name__isNull = opts["name.isNull"];
|
|
46528
|
-
if (opts["name.isNotNull"] !== void 0)
|
|
46529
|
-
args.name__isNotNull = opts["name.isNotNull"];
|
|
46530
46994
|
if (opts["name.equals"] !== void 0)
|
|
46531
46995
|
args.name__equals = opts["name.equals"];
|
|
46532
46996
|
if (opts["name.contains"] !== void 0)
|
|
@@ -46535,14 +46999,14 @@ Examples:
|
|
|
46535
46999
|
args.name__startsWith = opts["name.startsWith"];
|
|
46536
47000
|
if (opts["name.endWith"] !== void 0)
|
|
46537
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"];
|
|
46538
47006
|
if (opts.description !== void 0)
|
|
46539
47007
|
args.description = opts.description;
|
|
46540
47008
|
if (opts["description.not"] !== void 0)
|
|
46541
47009
|
args.description__not = opts["description.not"];
|
|
46542
|
-
if (opts["description.isNull"] !== void 0)
|
|
46543
|
-
args.description__isNull = opts["description.isNull"];
|
|
46544
|
-
if (opts["description.isNotNull"] !== void 0)
|
|
46545
|
-
args.description__isNotNull = opts["description.isNotNull"];
|
|
46546
47010
|
if (opts["description.equals"] !== void 0)
|
|
46547
47011
|
args.description__equals = opts["description.equals"];
|
|
46548
47012
|
if (opts["description.contains"] !== void 0)
|
|
@@ -46551,14 +47015,14 @@ Examples:
|
|
|
46551
47015
|
args.description__startsWith = opts["description.startsWith"];
|
|
46552
47016
|
if (opts["description.endWith"] !== void 0)
|
|
46553
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"];
|
|
46554
47022
|
if (opts.invoicingEntityId !== void 0)
|
|
46555
47023
|
args.invoicing_entity_id = opts.invoicingEntityId;
|
|
46556
47024
|
if (opts["invoicingEntityId.not"] !== void 0)
|
|
46557
47025
|
args.invoicing_entity_id__not = opts["invoicingEntityId.not"];
|
|
46558
|
-
if (opts["invoicingEntityId.isNull"] !== void 0)
|
|
46559
|
-
args.invoicing_entity_id__isNull = opts["invoicingEntityId.isNull"];
|
|
46560
|
-
if (opts["invoicingEntityId.isNotNull"] !== void 0)
|
|
46561
|
-
args.invoicing_entity_id__isNotNull = opts["invoicingEntityId.isNotNull"];
|
|
46562
47026
|
if (opts["invoicingEntityId.equals"] !== void 0)
|
|
46563
47027
|
args.invoicing_entity_id__equals = opts["invoicingEntityId.equals"];
|
|
46564
47028
|
if (opts["invoicingEntityId.contains"] !== void 0)
|
|
@@ -46580,32 +47044,28 @@ Examples:
|
|
|
46580
47044
|
"skip",
|
|
46581
47045
|
"id",
|
|
46582
47046
|
"id__not",
|
|
46583
|
-
"id__isNull",
|
|
46584
|
-
"id__isNotNull",
|
|
46585
47047
|
"id__equals",
|
|
46586
47048
|
"id__contains",
|
|
46587
47049
|
"id__startsWith",
|
|
46588
47050
|
"id__endWith",
|
|
46589
47051
|
"name",
|
|
46590
47052
|
"name__not",
|
|
46591
|
-
"name__isNull",
|
|
46592
|
-
"name__isNotNull",
|
|
46593
47053
|
"name__equals",
|
|
46594
47054
|
"name__contains",
|
|
46595
47055
|
"name__startsWith",
|
|
46596
47056
|
"name__endWith",
|
|
47057
|
+
"name__isNull",
|
|
47058
|
+
"name__isNotNull",
|
|
46597
47059
|
"description",
|
|
46598
47060
|
"description__not",
|
|
46599
|
-
"description__isNull",
|
|
46600
|
-
"description__isNotNull",
|
|
46601
47061
|
"description__equals",
|
|
46602
47062
|
"description__contains",
|
|
46603
47063
|
"description__startsWith",
|
|
46604
47064
|
"description__endWith",
|
|
47065
|
+
"description__isNull",
|
|
47066
|
+
"description__isNotNull",
|
|
46605
47067
|
"invoicing_entity_id",
|
|
46606
47068
|
"invoicing_entity_id__not",
|
|
46607
|
-
"invoicing_entity_id__isNull",
|
|
46608
|
-
"invoicing_entity_id__isNotNull",
|
|
46609
47069
|
"invoicing_entity_id__equals",
|
|
46610
47070
|
"invoicing_entity_id__contains",
|
|
46611
47071
|
"invoicing_entity_id__startsWith",
|
|
@@ -47185,10 +47645,12 @@ function registerAllCommands(program2) {
|
|
|
47185
47645
|
registerAi_CostsCommands(program2);
|
|
47186
47646
|
registerAnalyticsCommands(program2);
|
|
47187
47647
|
registerBank_AccountsCommands(program2);
|
|
47648
|
+
registerCatalogCommands(program2);
|
|
47188
47649
|
registerCompaniesCommands(program2);
|
|
47189
47650
|
registerCouponsCommands(program2);
|
|
47190
47651
|
registerCoupons_Promotion_CodesCommands(program2);
|
|
47191
47652
|
registerCustomers_CreditsCommands(program2);
|
|
47653
|
+
registerCustomers_FeaturesCommands(program2);
|
|
47192
47654
|
registerCustomers_Payment_MethodsCommands(program2);
|
|
47193
47655
|
registerCustomers_AddressCommands(program2);
|
|
47194
47656
|
registerCustomers_ShippingCommands(program2);
|
|
@@ -47197,12 +47659,14 @@ function registerAllCommands(program2) {
|
|
|
47197
47659
|
registerOrganisationsCommands(program2);
|
|
47198
47660
|
registerCustomers_SegmentsCommands(program2);
|
|
47199
47661
|
registerExportsCommands(program2);
|
|
47662
|
+
registerFeaturesCommands(program2);
|
|
47200
47663
|
registerFilesCommands(program2);
|
|
47201
47664
|
registerInvoicesCommands(program2);
|
|
47202
47665
|
registerInvoices_TransactionsCommands(program2);
|
|
47203
47666
|
registerInvoicing_EntitiesCommands(program2);
|
|
47204
|
-
|
|
47667
|
+
registerAi_MonitoringCommands(program2);
|
|
47205
47668
|
registerPaymentsCommands(program2);
|
|
47669
|
+
registerProducts_FeaturesCommands(program2);
|
|
47206
47670
|
registerProductsCommands(program2);
|
|
47207
47671
|
registerPrice_ConfigurationsCommands(program2);
|
|
47208
47672
|
registerQuotesCommands(program2);
|
|
@@ -63236,6 +63700,8 @@ var de = {
|
|
|
63236
63700
|
"einvoicing.paymentFromWallet": "Zahlung aus Guthaben",
|
|
63237
63701
|
"einvoicing.paymentProcessed": "Zahlung verarbeitet",
|
|
63238
63702
|
"einvoicing.paymentReceived": "Zahlung erhalten",
|
|
63703
|
+
"invoices.minimumFee.adjustmentName": "Anpassung der Mindestgeb\xFChr",
|
|
63704
|
+
"invoices.minimumFee.name": "Mindestgeb\xFChr",
|
|
63239
63705
|
"invoices.outstandingProduct.description": "Unbezahlter Betrag der Rechnung{{invoiceNumber}} vom {{date}}",
|
|
63240
63706
|
"invoices.outstandingProduct.descriptionPeriod": "Unbezahlter Betrag der Rechnung{{invoiceNumber}} vom {{periodStart}} bis {{periodEnd}}",
|
|
63241
63707
|
"invoices.outstandingProduct.name": "Offener Saldo",
|
|
@@ -63261,7 +63727,25 @@ var de = {
|
|
|
63261
63727
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Diese Position wurde f\xFCr den anteiligen Zeitraum in Rechnung gestellt",
|
|
63262
63728
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Betrag von {{amount}} f\xFCr den anteiligen Zeitraum nicht in Rechnung gestellt",
|
|
63263
63729
|
"subscriptions.updates.updatePrices": "Preise f\xFCr {{productName}} aktualisieren",
|
|
63264
|
-
"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"
|
|
63265
63749
|
};
|
|
63266
63750
|
|
|
63267
63751
|
// ../hyperline-i18n/build/locales/en.js
|
|
@@ -63269,6 +63753,8 @@ var en = {
|
|
|
63269
63753
|
"creditNotes.refundChargeName": "Refund for invoice",
|
|
63270
63754
|
"credits.bundleOf": "{{productName}} - Pack of {{creditCount}} credits",
|
|
63271
63755
|
"credits.unitsOf": "{{productName}} - {{creditCount}} credits",
|
|
63756
|
+
"invoices.minimumFee.adjustmentName": "Minimum fee adjustment",
|
|
63757
|
+
"invoices.minimumFee.name": "Minimum fee",
|
|
63272
63758
|
"invoices.outstandingProduct.description": "Unpaid amount from the invoice{{invoiceNumber}} emitted on {{date}}",
|
|
63273
63759
|
"invoices.outstandingProduct.descriptionPeriod": "Unpaid amount from the invoice{{invoiceNumber}} from {{periodStart}} to {{periodEnd}}",
|
|
63274
63760
|
"invoices.outstandingProduct.name": "Outstanding balance",
|
|
@@ -63309,7 +63795,25 @@ var en = {
|
|
|
63309
63795
|
"accounting.revrec.closedPeriodFallbackNote": " (posted to next open period \u2014 target accounting period closed; original date {{originalDate}})",
|
|
63310
63796
|
"einvoicing.paymentProcessed": "Payment processed",
|
|
63311
63797
|
"einvoicing.paymentReceived": "Payment received",
|
|
63312
|
-
"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"
|
|
63313
63817
|
};
|
|
63314
63818
|
|
|
63315
63819
|
// ../hyperline-i18n/build/locales/es.js
|
|
@@ -63332,6 +63836,8 @@ var es = {
|
|
|
63332
63836
|
"einvoicing.paymentFromWallet": "Pago desde el monedero",
|
|
63333
63837
|
"einvoicing.paymentProcessed": "Pago procesado",
|
|
63334
63838
|
"einvoicing.paymentReceived": "Pago recibido",
|
|
63839
|
+
"invoices.minimumFee.adjustmentName": "Ajuste del cargo m\xEDnimo",
|
|
63840
|
+
"invoices.minimumFee.name": "Cargo m\xEDnimo",
|
|
63335
63841
|
"invoices.outstandingProduct.description": "Monto pendiente de la factura{{invoiceNumber}} emitida el {{date}}",
|
|
63336
63842
|
"invoices.outstandingProduct.descriptionPeriod": "Monto pendiente de la factura{{invoiceNumber}} del {{periodStart}} al {{periodEnd}}",
|
|
63337
63843
|
"invoices.outstandingProduct.name": "Saldo pendiente",
|
|
@@ -63357,7 +63863,25 @@ var es = {
|
|
|
63357
63863
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Esta l\xEDnea ha sido facturada para el per\xEDodo prorrateado",
|
|
63358
63864
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Importe de {{amount}} no facturado para el per\xEDodo prorrateado",
|
|
63359
63865
|
"subscriptions.updates.updatePrices": "Actualizar precios para {{productName}}",
|
|
63360
|
-
"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"
|
|
63361
63885
|
};
|
|
63362
63886
|
|
|
63363
63887
|
// ../hyperline-i18n/build/locales/fr.js
|
|
@@ -63380,6 +63904,8 @@ var fr = {
|
|
|
63380
63904
|
"einvoicing.paymentFromWallet": "Paiement depuis le portefeuille",
|
|
63381
63905
|
"einvoicing.paymentProcessed": "Paiement effectu\xE9",
|
|
63382
63906
|
"einvoicing.paymentReceived": "Paiement re\xE7u",
|
|
63907
|
+
"invoices.minimumFee.adjustmentName": "Ajustement des frais minimums",
|
|
63908
|
+
"invoices.minimumFee.name": "Frais minimums",
|
|
63383
63909
|
"invoices.outstandingProduct.description": "Montant impay\xE9 de la facture{{invoiceNumber}} \xE9mise le {{date}}",
|
|
63384
63910
|
"invoices.outstandingProduct.descriptionPeriod": "Montant impay\xE9 de la facture{{invoiceNumber}} du {{periodStart}} au {{periodEnd}}",
|
|
63385
63911
|
"invoices.outstandingProduct.name": "Solde impay\xE9",
|
|
@@ -63405,7 +63931,25 @@ var fr = {
|
|
|
63405
63931
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Cette ligne a \xE9t\xE9 factur\xE9e pour la p\xE9riode proratis\xE9e",
|
|
63406
63932
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Montant de {{amount}} non factur\xE9 pour la p\xE9riode proratis\xE9e",
|
|
63407
63933
|
"subscriptions.updates.updatePrices": "Mise \xE0 jour des prix pour {{productName}}",
|
|
63408
|
-
"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"
|
|
63409
63953
|
};
|
|
63410
63954
|
|
|
63411
63955
|
// ../hyperline-i18n/build/locales/it.js
|
|
@@ -63428,6 +63972,8 @@ var it = {
|
|
|
63428
63972
|
"einvoicing.paymentFromWallet": "Pagamento dal portafoglio",
|
|
63429
63973
|
"einvoicing.paymentProcessed": "Pagamento elaborato",
|
|
63430
63974
|
"einvoicing.paymentReceived": "Pagamento ricevuto",
|
|
63975
|
+
"invoices.minimumFee.adjustmentName": "Adeguamento all\u2019importo minimo",
|
|
63976
|
+
"invoices.minimumFee.name": "Importo minimo",
|
|
63431
63977
|
"invoices.outstandingProduct.description": "Importo insoluto della fattura{{invoiceNumber}} emessa il {{date}}",
|
|
63432
63978
|
"invoices.outstandingProduct.descriptionPeriod": "Importo insoluto della fattura{{invoiceNumber}} dal {{periodStart}} al {{periodEnd}}",
|
|
63433
63979
|
"invoices.outstandingProduct.name": "Saldo insoluto",
|
|
@@ -63453,7 +63999,25 @@ var it = {
|
|
|
63453
63999
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Questa voce \xE8 stata fatturata per il periodo proporzionato",
|
|
63454
64000
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Importo di {{amount}} non fatturato per il periodo proporzionato",
|
|
63455
64001
|
"subscriptions.updates.updatePrices": "Aggiorna prezzi per {{productName}}",
|
|
63456
|
-
"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"
|
|
63457
64021
|
};
|
|
63458
64022
|
|
|
63459
64023
|
// ../hyperline-i18n/build/locales/lt.js
|
|
@@ -63476,6 +64040,8 @@ var lt = {
|
|
|
63476
64040
|
"einvoicing.paymentFromWallet": "Mok\u0117jimas i\u0161 pinigin\u0117s",
|
|
63477
64041
|
"einvoicing.paymentProcessed": "Mok\u0117jimas apdorotas",
|
|
63478
64042
|
"einvoicing.paymentReceived": "Mok\u0117jimas gautas",
|
|
64043
|
+
"invoices.minimumFee.adjustmentName": "Minimalaus mokes\u010Dio koregavimas",
|
|
64044
|
+
"invoices.minimumFee.name": "Minimalus mokestis",
|
|
63479
64045
|
"invoices.outstandingProduct.description": "Neapmok\u0117ta {{date}} i\u0161ra\u0161ytos s\u0105skaitos fakt\u016Bros{{invoiceNumber}} suma",
|
|
63480
64046
|
"invoices.outstandingProduct.descriptionPeriod": "Neapmok\u0117ta s\u0105skaitos fakt\u016Bros{{invoiceNumber}} suma u\u017E laikotarp\u012F nuo {{periodStart}} iki {{periodEnd}}",
|
|
63481
64047
|
"invoices.outstandingProduct.name": "Neapmok\u0117tas likutis",
|
|
@@ -63501,7 +64067,25 @@ var lt = {
|
|
|
63501
64067
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "U\u017E \u0161i\u0105 eilut\u0119 proporcingam laikotarpiui s\u0105skaita fakt\u016Bra i\u0161ra\u0161yta",
|
|
63502
64068
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Proporcingam laikotarpiui nei\u0161ra\u0161yta {{amount}} suma",
|
|
63503
64069
|
"subscriptions.updates.updatePrices": "Atnaujinti {{productName}} kainas",
|
|
63504
|
-
"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"
|
|
63505
64089
|
};
|
|
63506
64090
|
|
|
63507
64091
|
// ../hyperline-i18n/build/locales/nl.js
|
|
@@ -63524,6 +64108,8 @@ var nl = {
|
|
|
63524
64108
|
"einvoicing.paymentFromWallet": "Betaling uit tegoed",
|
|
63525
64109
|
"einvoicing.paymentProcessed": "Betaling verwerkt",
|
|
63526
64110
|
"einvoicing.paymentReceived": "Betaling ontvangen",
|
|
64111
|
+
"invoices.minimumFee.adjustmentName": "Aanpassing minimumbedrag",
|
|
64112
|
+
"invoices.minimumFee.name": "Minimumbedrag",
|
|
63527
64113
|
"invoices.outstandingProduct.description": "Onbetaald bedrag van de factuur{{invoiceNumber}} uitgegeven op {{date}}",
|
|
63528
64114
|
"invoices.outstandingProduct.descriptionPeriod": "Onbetaald bedrag van de factuur{{invoiceNumber}} van {{periodStart}} tot {{periodEnd}}",
|
|
63529
64115
|
"invoices.outstandingProduct.name": "Openstaand saldo",
|
|
@@ -63549,7 +64135,25 @@ var nl = {
|
|
|
63549
64135
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Deze regel is gefactureerd voor de geproportioneerde periode",
|
|
63550
64136
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Bedrag van {{amount}} niet gefactureerd voor de geproportioneerde periode",
|
|
63551
64137
|
"subscriptions.updates.updatePrices": "Prijzen bijwerken voor {{productName}}",
|
|
63552
|
-
"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"
|
|
63553
64157
|
};
|
|
63554
64158
|
|
|
63555
64159
|
// ../hyperline-i18n/build/locales/pl.js
|
|
@@ -63572,6 +64176,8 @@ var pl = {
|
|
|
63572
64176
|
"einvoicing.paymentFromWallet": "P\u0142atno\u015B\u0107 z portfela",
|
|
63573
64177
|
"einvoicing.paymentProcessed": "P\u0142atno\u015B\u0107 przetworzona",
|
|
63574
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",
|
|
63575
64181
|
"invoices.outstandingProduct.description": "Nieop\u0142acona kwota z faktury{{invoiceNumber}} wystawionej {{date}}",
|
|
63576
64182
|
"invoices.outstandingProduct.descriptionPeriod": "Nieop\u0142acona kwota z faktury{{invoiceNumber}} od {{periodStart}} do {{periodEnd}}",
|
|
63577
64183
|
"invoices.outstandingProduct.name": "Niezap\u0142acone saldo",
|
|
@@ -63597,7 +64203,25 @@ var pl = {
|
|
|
63597
64203
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Ta pozycja zosta\u0142a zafakturowana za okres proporcjonalny",
|
|
63598
64204
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Kwota {{amount}} niefakturowana za okres proporcjonalny",
|
|
63599
64205
|
"subscriptions.updates.updatePrices": "Aktualizuj ceny dla {{productName}}",
|
|
63600
|
-
"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"
|
|
63601
64225
|
};
|
|
63602
64226
|
|
|
63603
64227
|
// ../hyperline-i18n/build/locales/pt.js
|
|
@@ -63620,6 +64244,8 @@ var pt = {
|
|
|
63620
64244
|
"einvoicing.paymentFromWallet": "Pagamento da carteira",
|
|
63621
64245
|
"einvoicing.paymentProcessed": "Pagamento processado",
|
|
63622
64246
|
"einvoicing.paymentReceived": "Pagamento recebido",
|
|
64247
|
+
"invoices.minimumFee.adjustmentName": "Ajuste do valor m\xEDnimo",
|
|
64248
|
+
"invoices.minimumFee.name": "Valor m\xEDnimo",
|
|
63623
64249
|
"invoices.outstandingProduct.description": "Valor em aberto da fatura{{invoiceNumber}} emitida em {{date}}",
|
|
63624
64250
|
"invoices.outstandingProduct.descriptionPeriod": "Valor em aberto da fatura{{invoiceNumber}} de {{periodStart}} a {{periodEnd}}",
|
|
63625
64251
|
"invoices.outstandingProduct.name": "Saldo em aberto",
|
|
@@ -63645,7 +64271,25 @@ var pt = {
|
|
|
63645
64271
|
"subscriptions.updates.updateCount.description.prorata.not_committed.invoiced": "Esta linha foi faturada para o per\xEDodo proporcional",
|
|
63646
64272
|
"subscriptions.updates.updateCount.description.prorata.not_committed.not_invoiced": "Valor de {{amount}} n\xE3o faturado para o per\xEDodo proporcional",
|
|
63647
64273
|
"subscriptions.updates.updatePrices": "Atualizar pre\xE7os para {{productName}}",
|
|
63648
|
-
"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"
|
|
63649
64293
|
};
|
|
63650
64294
|
|
|
63651
64295
|
// ../hyperline-i18n/build/language.js
|
|
@@ -63717,97 +64361,315 @@ var executionContextStorage = new AsyncLocalStorage();
|
|
|
63717
64361
|
function getExecutionContext() {
|
|
63718
64362
|
return executionContextStorage.getStore();
|
|
63719
64363
|
}
|
|
63720
|
-
|
|
63721
|
-
// ../hyperline-monitoring/build/context/correlationId.js
|
|
63722
|
-
import { AsyncLocalStorage as AsyncLocalStorage2 } from "node:async_hooks";
|
|
63723
|
-
var correlationIdStorage = new AsyncLocalStorage2();
|
|
63724
|
-
function getCorrelationId() {
|
|
63725
|
-
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
|
+
"sessiontoken",
|
|
64478
|
+
"token",
|
|
64479
|
+
"tokenid",
|
|
64480
|
+
"verificationcode"
|
|
64481
|
+
]);
|
|
64482
|
+
var REDACTED_KEY_SUFFIX_PATTERN = /(secret|password|passphrase|apikey)$/;
|
|
64483
|
+
var REDACTED_KEY_CANDIDATE_PATTERN = /token|ticket|key|secret|pass|assertion|verifier|credential|authorization|cookie|iban|cardnumber|code|connectionurl/i;
|
|
64484
|
+
var URL_ONLY_REDACTED_KEYS = /* @__PURE__ */ new Set(["key"]);
|
|
64485
|
+
var OAUTH_CODE_KEY = "code";
|
|
64486
|
+
var OAUTH_CODE_CONTEXT_KEYS = ["state", "grant_type"];
|
|
64487
|
+
var REDACTED_VALUE = "<redacted>";
|
|
64488
|
+
var TRUNCATED_VALUE = "[TRUNCATED: not redacted]";
|
|
64489
|
+
var TRUNCATED_KEY = "[TRUNCATED]";
|
|
64490
|
+
var MAX_REDACTION_DEPTH = 6;
|
|
64491
|
+
var MAX_ARRAY_ENTRIES = 50;
|
|
64492
|
+
var MAX_PARSED_STRING_LENGTH = 16384;
|
|
64493
|
+
var MAX_VISITED_NODES = 5e3;
|
|
64494
|
+
var MAX_CONTAINER_ENTRIES = 1e3;
|
|
64495
|
+
var MAX_STRING_CHARACTERS = 256e3;
|
|
64496
|
+
function redactLogBody({ body }) {
|
|
64497
|
+
return redactValue({
|
|
64498
|
+
value: body,
|
|
64499
|
+
depth: MAX_REDACTION_DEPTH,
|
|
64500
|
+
budget: {
|
|
64501
|
+
remainingNodes: MAX_VISITED_NODES,
|
|
64502
|
+
remainingChars: MAX_STRING_CHARACTERS
|
|
64503
|
+
}
|
|
64504
|
+
});
|
|
64505
|
+
}
|
|
64506
|
+
function redactLogUrl({ url: url2 }) {
|
|
64507
|
+
const queryIndex = url2.indexOf("?");
|
|
64508
|
+
if (queryIndex === -1) {
|
|
64509
|
+
return url2;
|
|
64510
|
+
}
|
|
64511
|
+
if (url2.length > MAX_PARSED_STRING_LENGTH) {
|
|
64512
|
+
return `${url2.slice(0, queryIndex)}?${TRUNCATED_VALUE}`;
|
|
64513
|
+
}
|
|
64514
|
+
const redactedQuery = redactFormEncoded({
|
|
64515
|
+
text: url2.slice(queryIndex + 1),
|
|
64516
|
+
extraRedactedKeys: URL_ONLY_REDACTED_KEYS
|
|
64517
|
+
});
|
|
64518
|
+
return redactedQuery === void 0 ? url2 : `${url2.slice(0, queryIndex)}?${redactedQuery}`;
|
|
64519
|
+
}
|
|
64520
|
+
function redactValue({ value, depth, budget }) {
|
|
64521
|
+
if (isOpaqueObject({ value })) {
|
|
64522
|
+
return replaceOpaqueObject({ value });
|
|
64523
|
+
}
|
|
64524
|
+
if (typeof value === "string") {
|
|
64525
|
+
if (value.length > budget.remainingChars) {
|
|
64526
|
+
return TRUNCATED_VALUE;
|
|
64527
|
+
}
|
|
64528
|
+
budget.remainingChars -= value.length;
|
|
64529
|
+
}
|
|
64530
|
+
if (depth <= 0 || budget.remainingNodes <= 0) {
|
|
64531
|
+
return isInspectable({ value }) ? TRUNCATED_VALUE : value;
|
|
64532
|
+
}
|
|
64533
|
+
budget.remainingNodes -= 1;
|
|
64534
|
+
if (typeof value === "string") {
|
|
64535
|
+
return redactString({ text: value, budget });
|
|
64536
|
+
}
|
|
64537
|
+
if (value instanceof URLSearchParams) {
|
|
64538
|
+
return redactValue({ value: value.toString(), depth, budget });
|
|
64539
|
+
}
|
|
64540
|
+
if (Array.isArray(value)) {
|
|
64541
|
+
return redactArray({ items: value, depth, budget });
|
|
64542
|
+
}
|
|
64543
|
+
if (isPlainObject2(value)) {
|
|
64544
|
+
return redactObject({ record: value, depth, budget });
|
|
64545
|
+
}
|
|
64546
|
+
return value;
|
|
64547
|
+
}
|
|
64548
|
+
function isOpaqueObject({ value }) {
|
|
64549
|
+
return typeof value === "object" && value !== null && !Array.isArray(value) && !isPlainObject2(value) && !(value instanceof URLSearchParams);
|
|
64550
|
+
}
|
|
64551
|
+
function replaceOpaqueObject({ value }) {
|
|
64552
|
+
if (typeof value !== "object" || value === null || value instanceof Date) {
|
|
64553
|
+
return value;
|
|
64554
|
+
}
|
|
64555
|
+
if (value instanceof ArrayBuffer || ArrayBuffer.isView(value)) {
|
|
64556
|
+
return `[BINARY ${value.byteLength} bytes]`;
|
|
64557
|
+
}
|
|
64558
|
+
if (value instanceof Blob) {
|
|
64559
|
+
return `[BINARY ${value.size} bytes]`;
|
|
64560
|
+
}
|
|
64561
|
+
if (value instanceof FormData || typeof Reflect.get(value, "pipe") === "function") {
|
|
64562
|
+
return "[BINARY stream]";
|
|
64563
|
+
}
|
|
64564
|
+
return TRUNCATED_VALUE;
|
|
64565
|
+
}
|
|
64566
|
+
function redactArray({ items, depth, budget }) {
|
|
64567
|
+
const isTruncated = items.length > MAX_ARRAY_ENTRIES;
|
|
64568
|
+
const keptItems = isTruncated ? items.slice(0, MAX_ARRAY_ENTRIES) : items;
|
|
64569
|
+
let redactedItems;
|
|
64570
|
+
for (const [index, item] of keptItems.entries()) {
|
|
64571
|
+
const redactedItem = redactValue({ value: item, depth: depth - 1, budget });
|
|
64572
|
+
if (redactedItem !== item) {
|
|
64573
|
+
redactedItems ??= [...keptItems];
|
|
64574
|
+
redactedItems[index] = redactedItem;
|
|
64575
|
+
}
|
|
64576
|
+
}
|
|
64577
|
+
const result = redactedItems ?? keptItems;
|
|
64578
|
+
return isTruncated ? [...result, TRUNCATED_VALUE] : result;
|
|
64579
|
+
}
|
|
64580
|
+
function redactObject({ record: record2, depth, budget }) {
|
|
64581
|
+
const redactedEntries = /* @__PURE__ */ new Map();
|
|
64582
|
+
const carriesOAuthCode = OAUTH_CODE_CONTEXT_KEYS.some((contextKey) => Object.hasOwn(record2, contextKey));
|
|
64583
|
+
const keptKeys = [];
|
|
64584
|
+
let isTruncated = false;
|
|
64585
|
+
for (const key in record2) {
|
|
64586
|
+
if (!Object.hasOwn(record2, key)) {
|
|
64587
|
+
continue;
|
|
64588
|
+
}
|
|
64589
|
+
if (keptKeys.length >= MAX_CONTAINER_ENTRIES || key.length > budget.remainingChars) {
|
|
64590
|
+
isTruncated = true;
|
|
64591
|
+
break;
|
|
64592
|
+
}
|
|
64593
|
+
budget.remainingChars -= key.length;
|
|
64594
|
+
keptKeys.push(key);
|
|
64595
|
+
const nestedValue = record2[key];
|
|
64596
|
+
const isSensitiveKey = isRedactedKey({ key }) || carriesOAuthCode && key === OAUTH_CODE_KEY;
|
|
64597
|
+
const shouldRedact = isSensitiveKey && nestedValue != null && typeof nestedValue !== "boolean";
|
|
64598
|
+
if (shouldRedact) {
|
|
64599
|
+
budget.remainingNodes -= 1;
|
|
64600
|
+
}
|
|
64601
|
+
const redactedNestedValue = shouldRedact ? REDACTED_VALUE : redactValue({ value: nestedValue, depth: depth - 1, budget });
|
|
64602
|
+
if (redactedNestedValue !== nestedValue) {
|
|
64603
|
+
redactedEntries.set(key, redactedNestedValue);
|
|
64604
|
+
}
|
|
64605
|
+
}
|
|
64606
|
+
if (isTruncated) {
|
|
64607
|
+
const keptRecord = {};
|
|
64608
|
+
for (const key of keptKeys) {
|
|
64609
|
+
keptRecord[key] = redactedEntries.has(key) ? redactedEntries.get(key) : record2[key];
|
|
64610
|
+
}
|
|
64611
|
+
keptRecord[TRUNCATED_KEY] = TRUNCATED_VALUE;
|
|
64612
|
+
return keptRecord;
|
|
64613
|
+
}
|
|
64614
|
+
return redactedEntries.size === 0 ? record2 : { ...record2, ...Object.fromEntries(redactedEntries) };
|
|
64615
|
+
}
|
|
64616
|
+
function redactString({ text, budget }) {
|
|
64617
|
+
if (text.length > MAX_PARSED_STRING_LENGTH) {
|
|
64618
|
+
return TRUNCATED_VALUE;
|
|
64619
|
+
}
|
|
64620
|
+
if (!isInspectable({ value: text })) {
|
|
64621
|
+
return text;
|
|
64622
|
+
}
|
|
64623
|
+
const trimmedText = text.trim();
|
|
64624
|
+
if (trimmedText.startsWith("{") || trimmedText.startsWith("[")) {
|
|
64625
|
+
try {
|
|
64626
|
+
const parsedValue = JSON.parse(trimmedText);
|
|
64627
|
+
const redactedValue = redactValue({
|
|
64628
|
+
value: parsedValue,
|
|
64629
|
+
depth: MAX_REDACTION_DEPTH,
|
|
64630
|
+
budget
|
|
64631
|
+
});
|
|
64632
|
+
return redactedValue === parsedValue ? text : JSON.stringify(redactedValue);
|
|
64633
|
+
} catch {
|
|
64634
|
+
return REDACTED_KEY_CANDIDATE_PATTERN.test(text) ? TRUNCATED_VALUE : redactFormEncoded({ text }) ?? text;
|
|
64635
|
+
}
|
|
64636
|
+
}
|
|
64637
|
+
return redactFormEncoded({ text }) ?? text;
|
|
64638
|
+
}
|
|
64639
|
+
function redactFormEncoded({ text, extraRedactedKeys }) {
|
|
64640
|
+
if (!text.includes("=") || !REDACTED_KEY_CANDIDATE_PATTERN.test(text)) {
|
|
64641
|
+
return void 0;
|
|
64642
|
+
}
|
|
64643
|
+
const params = new URLSearchParams(text);
|
|
64644
|
+
const carriesOAuthCode = OAUTH_CODE_CONTEXT_KEYS.some((contextKey) => params.has(contextKey));
|
|
64645
|
+
let hasRedactedParam = false;
|
|
64646
|
+
for (const key of new Set(params.keys())) {
|
|
64647
|
+
if (isRedactedKey({ key }) || extraRedactedKeys?.has(key.toLowerCase()) || carriesOAuthCode && key === OAUTH_CODE_KEY) {
|
|
64648
|
+
params.set(key, REDACTED_VALUE);
|
|
64649
|
+
hasRedactedParam = true;
|
|
64650
|
+
}
|
|
64651
|
+
}
|
|
64652
|
+
return hasRedactedParam ? params.toString() : void 0;
|
|
64653
|
+
}
|
|
64654
|
+
function isRedactedKey({ key }) {
|
|
64655
|
+
const normalizedKey = key.toLowerCase().replace(/[_-]/g, "");
|
|
64656
|
+
return REDACTED_KEY_NAMES.has(normalizedKey) || REDACTED_KEY_SUFFIX_PATTERN.test(normalizedKey);
|
|
63726
64657
|
}
|
|
63727
|
-
|
|
63728
|
-
|
|
63729
|
-
|
|
63730
|
-
|
|
63731
|
-
|
|
63732
|
-
return external_exports.any().refine((value) => ["true", "false"].includes(value), {
|
|
63733
|
-
message: "Expected boolean"
|
|
63734
|
-
}).transform((value) => (
|
|
63735
|
-
// biome-ignore lint/complexity/noUselessTernary: ignore
|
|
63736
|
-
value === "true" ? true : false
|
|
63737
|
-
));
|
|
64658
|
+
function isInspectable({ value }) {
|
|
64659
|
+
if (typeof value === "string") {
|
|
64660
|
+
return value.length > MAX_PARSED_STRING_LENGTH || /^\s*[{[]/.test(value) || value.includes("=") && REDACTED_KEY_CANDIDATE_PATTERN.test(value);
|
|
64661
|
+
}
|
|
64662
|
+
return value instanceof URLSearchParams || Array.isArray(value) || isPlainObject2(value);
|
|
63738
64663
|
}
|
|
63739
|
-
|
|
63740
|
-
|
|
63741
|
-
|
|
63742
|
-
boolean: coerceBoolean,
|
|
63743
|
-
enum: external_exports.enum
|
|
63744
|
-
};
|
|
63745
|
-
function getConfig(schema, testValues) {
|
|
63746
|
-
const validator = external_exports.object(Object.fromEntries(Object.entries(schema).map(([key, zodType]) => {
|
|
63747
|
-
if (zodType instanceof ZodOptional) {
|
|
63748
|
-
return [key, external_exports.string().optional()];
|
|
63749
|
-
}
|
|
63750
|
-
return [key, external_exports.string()];
|
|
63751
|
-
})));
|
|
63752
|
-
const processEnv = process.env;
|
|
63753
|
-
const isTestMode = processEnv.NODE_ENV === "test";
|
|
63754
|
-
const envVariables = {
|
|
63755
|
-
...processEnv,
|
|
63756
|
-
...isTestMode && testValues ? Object.fromEntries(Object.entries(testValues).map(([key, value]) => [key, String(value)])) : {}
|
|
63757
|
-
};
|
|
63758
|
-
const packageName = envVariables.npm_package_name;
|
|
63759
|
-
const parseProcessEnvResult = validator.safeParse(envVariables);
|
|
63760
|
-
if (!parseProcessEnvResult.success) {
|
|
63761
|
-
const parsedStackTrace = stackTraceParser.parse(parseProcessEnvResult.error.stack ?? "");
|
|
63762
|
-
const getConfigCallLine = parsedStackTrace.find((line) => {
|
|
63763
|
-
return !line.file?.includes("hyperline-config") && (line.file?.includes("apps/") || line.file?.includes("core/") || line.file?.includes("packages/"));
|
|
63764
|
-
});
|
|
63765
|
-
const callerFile = getConfigCallLine?.file;
|
|
63766
|
-
console.error(`Invalid environment variables for service \`${packageName}\`: \`${callerFile}\``);
|
|
63767
|
-
console.error(parseProcessEnvResult.error.format());
|
|
63768
|
-
process.exit(1);
|
|
64664
|
+
function isPlainObject2(value) {
|
|
64665
|
+
if (typeof value !== "object" || value === null) {
|
|
64666
|
+
return false;
|
|
63769
64667
|
}
|
|
63770
|
-
const
|
|
63771
|
-
return
|
|
64668
|
+
const prototype = Object.getPrototypeOf(value);
|
|
64669
|
+
return prototype === Object.prototype || prototype === null;
|
|
63772
64670
|
}
|
|
63773
64671
|
|
|
63774
|
-
// ../hyperline-monitoring/build/config.js
|
|
63775
|
-
var config2 = getConfig({
|
|
63776
|
-
// config
|
|
63777
|
-
APP_VERSION: types.string().optional(),
|
|
63778
|
-
// Deployment environment for log tagging, when it cannot be read off
|
|
63779
|
-
// NODE_ENV. Set only by the PDF render worker pools, which must run with
|
|
63780
|
-
// NODE_ENV="production" to get the production React build regardless of which
|
|
63781
|
-
// environment the pod is actually in (see core/invoicing/services/pdf/index.ts).
|
|
63782
|
-
// Unset everywhere else, so the NODE_ENV fallback keeps current behaviour.
|
|
63783
|
-
APP_ENV: types.string().optional(),
|
|
63784
|
-
DD_SERVICE: types.string().optional(),
|
|
63785
|
-
LOGGER_CONSOLE_ENABLED: types.boolean().optional(),
|
|
63786
|
-
LOGGER_STDOUT_ENABLED: types.boolean().optional(),
|
|
63787
|
-
NODE_ENV: types.enum(["local", "test", "staging", "sandbox", "production"]),
|
|
63788
|
-
EVENT_LOOP_MONITORING_ENABLED: types.boolean().optional(),
|
|
63789
|
-
MEMORY_MONITORING_ENABLED: types.boolean().optional(),
|
|
63790
|
-
MEMORY_MONITORING_INTERVAL_MS: types.number().optional()
|
|
63791
|
-
// secrets
|
|
63792
|
-
}, {
|
|
63793
|
-
APP_VERSION: void 0,
|
|
63794
|
-
APP_ENV: void 0,
|
|
63795
|
-
DD_SERVICE: void 0,
|
|
63796
|
-
LOGGER_CONSOLE_ENABLED: false,
|
|
63797
|
-
LOGGER_STDOUT_ENABLED: false,
|
|
63798
|
-
EVENT_LOOP_MONITORING_ENABLED: false,
|
|
63799
|
-
MEMORY_MONITORING_ENABLED: false,
|
|
63800
|
-
MEMORY_MONITORING_INTERVAL_MS: 3e4,
|
|
63801
|
-
NODE_ENV: "test"
|
|
63802
|
-
});
|
|
63803
|
-
|
|
63804
|
-
// ../hyperline-monitoring/build/logger/logger.js
|
|
63805
|
-
import * as util from "node:util";
|
|
63806
|
-
import prune2 from "json-prune";
|
|
63807
|
-
import * as winston from "winston";
|
|
63808
|
-
|
|
63809
64672
|
// ../hyperline-monitoring/build/logger/formatting/format.js
|
|
63810
|
-
import prune from "json-prune";
|
|
63811
64673
|
var REDACTED_HEADER_KEY_PATTERN = /authorization|authenticate|cookie|secret|token|credential|signature|jwt|api[_-]?key|access[_-]?token|refresh[_-]?token|private[_-]?key/i;
|
|
63812
64674
|
function jsonFormat(info) {
|
|
63813
64675
|
const prunedInfo = JSON.parse(prune(info));
|
|
@@ -63868,14 +64730,106 @@ function transformPrune(info) {
|
|
|
63868
64730
|
});
|
|
63869
64731
|
return info;
|
|
63870
64732
|
}
|
|
64733
|
+
var MAX_AXIOS_ERROR_DEPTH = 5;
|
|
64734
|
+
var MAX_AXIOS_ERROR_CONTAINER_ENTRIES = 1e3;
|
|
64735
|
+
var MAX_AXIOS_ERROR_VISITED_NODES = 5e3;
|
|
64736
|
+
var REDACTED_BODY_KEYS = /* @__PURE__ */ new Set(["requestBody", "responseBody"]);
|
|
63871
64737
|
function transformAxiosError(info) {
|
|
63872
|
-
|
|
63873
|
-
|
|
63874
|
-
|
|
64738
|
+
let walk;
|
|
64739
|
+
for (const [key, value] of Object.entries(info)) {
|
|
64740
|
+
if (typeof value !== "object" || value === null || REDACTED_BODY_KEYS.has(key)) {
|
|
64741
|
+
continue;
|
|
63875
64742
|
}
|
|
63876
|
-
|
|
64743
|
+
walk ??= {
|
|
64744
|
+
formatted: /* @__PURE__ */ new Map(),
|
|
64745
|
+
remainingNodes: MAX_AXIOS_ERROR_VISITED_NODES
|
|
64746
|
+
};
|
|
64747
|
+
const formattedValue = formatNestedAxiosErrors({
|
|
64748
|
+
value,
|
|
64749
|
+
depth: MAX_AXIOS_ERROR_DEPTH,
|
|
64750
|
+
walk
|
|
64751
|
+
});
|
|
64752
|
+
if (formattedValue !== value) {
|
|
64753
|
+
info[key] = formattedValue;
|
|
64754
|
+
}
|
|
64755
|
+
}
|
|
63877
64756
|
return info;
|
|
63878
64757
|
}
|
|
64758
|
+
function formatNestedAxiosErrors({ value, depth, walk }) {
|
|
64759
|
+
if (typeof value !== "object" || value === null) {
|
|
64760
|
+
return value;
|
|
64761
|
+
}
|
|
64762
|
+
if (walk.formatted.has(value)) {
|
|
64763
|
+
return walk.formatted.get(value);
|
|
64764
|
+
}
|
|
64765
|
+
if (Reflect.get(value, "name") === "AxiosError") {
|
|
64766
|
+
const formattedError = walk.remainingNodes > 0 ? formatAxiosError(value) : summarizeAxiosError({ error: value });
|
|
64767
|
+
walk.remainingNodes -= 1;
|
|
64768
|
+
walk.formatted.set(value, formattedError);
|
|
64769
|
+
return formattedError;
|
|
64770
|
+
}
|
|
64771
|
+
const isWalkable = Array.isArray(value) || value instanceof Error || isPlainRecord(value);
|
|
64772
|
+
if (!isWalkable || depth <= 0 || walk.remainingNodes <= 0) {
|
|
64773
|
+
return value;
|
|
64774
|
+
}
|
|
64775
|
+
walk.formatted.set(value, "[Circular]");
|
|
64776
|
+
walk.remainingNodes -= 1;
|
|
64777
|
+
const formattedValue = formatWalkableValue({ value, depth, walk });
|
|
64778
|
+
walk.formatted.set(value, formattedValue);
|
|
64779
|
+
return formattedValue;
|
|
64780
|
+
}
|
|
64781
|
+
function summarizeAxiosError({ error: error48 }) {
|
|
64782
|
+
return {
|
|
64783
|
+
name: Reflect.get(error48, "name"),
|
|
64784
|
+
message: Reflect.get(error48, "message"),
|
|
64785
|
+
code: Reflect.get(error48, "code")
|
|
64786
|
+
};
|
|
64787
|
+
}
|
|
64788
|
+
function formatWalkableValue({ value, depth, walk }) {
|
|
64789
|
+
if (Array.isArray(value)) {
|
|
64790
|
+
if (value.length > MAX_AXIOS_ERROR_CONTAINER_ENTRIES) {
|
|
64791
|
+
return value;
|
|
64792
|
+
}
|
|
64793
|
+
let formattedItems;
|
|
64794
|
+
for (const [index, item] of value.entries()) {
|
|
64795
|
+
const formattedItem = formatNestedAxiosErrors({
|
|
64796
|
+
value: item,
|
|
64797
|
+
depth: depth - 1,
|
|
64798
|
+
walk
|
|
64799
|
+
});
|
|
64800
|
+
if (formattedItem !== item) {
|
|
64801
|
+
formattedItems ??= [...value];
|
|
64802
|
+
formattedItems[index] = formattedItem;
|
|
64803
|
+
}
|
|
64804
|
+
}
|
|
64805
|
+
return formattedItems ?? value;
|
|
64806
|
+
}
|
|
64807
|
+
const keys = Object.keys(value);
|
|
64808
|
+
if (keys.length > MAX_AXIOS_ERROR_CONTAINER_ENTRIES) {
|
|
64809
|
+
return value;
|
|
64810
|
+
}
|
|
64811
|
+
const formattedEntries = /* @__PURE__ */ new Map();
|
|
64812
|
+
for (const key of keys) {
|
|
64813
|
+
const nestedValue = Reflect.get(value, key);
|
|
64814
|
+
const formattedNestedValue = formatNestedAxiosErrors({
|
|
64815
|
+
value: nestedValue,
|
|
64816
|
+
depth: depth - 1,
|
|
64817
|
+
walk
|
|
64818
|
+
});
|
|
64819
|
+
if (formattedNestedValue !== nestedValue) {
|
|
64820
|
+
formattedEntries.set(key, formattedNestedValue);
|
|
64821
|
+
}
|
|
64822
|
+
}
|
|
64823
|
+
if (formattedEntries.size === 0) {
|
|
64824
|
+
return value;
|
|
64825
|
+
}
|
|
64826
|
+
return {
|
|
64827
|
+
...value,
|
|
64828
|
+
// Error properties are not enumerable, so the spread would drop them.
|
|
64829
|
+
...value instanceof Error ? { name: value.name, message: value.message, stack: value.stack } : {},
|
|
64830
|
+
...Object.fromEntries(formattedEntries)
|
|
64831
|
+
};
|
|
64832
|
+
}
|
|
63879
64833
|
function formatAxiosError(error48) {
|
|
63880
64834
|
if (!isRecord(error48) || error48.name !== "AxiosError") {
|
|
63881
64835
|
return error48;
|
|
@@ -63888,9 +64842,9 @@ function formatAxiosError(error48) {
|
|
|
63888
64842
|
code: error48.code,
|
|
63889
64843
|
request: {
|
|
63890
64844
|
method: request?.method,
|
|
63891
|
-
url: request?.url,
|
|
64845
|
+
url: typeof request?.url === "string" ? redactLogUrl({ url: request.url }) : request?.url,
|
|
63892
64846
|
baseURL: request?.baseURL,
|
|
63893
|
-
params: request?.params,
|
|
64847
|
+
params: redactLogBody({ body: request?.params }),
|
|
63894
64848
|
headers: redactHeaders({ headers: request?.headers }),
|
|
63895
64849
|
"axios-retry": request?.["axios-retry"]
|
|
63896
64850
|
},
|
|
@@ -63898,7 +64852,7 @@ function formatAxiosError(error48) {
|
|
|
63898
64852
|
status: response?.status,
|
|
63899
64853
|
statusText: response?.statusText,
|
|
63900
64854
|
headers: redactHeaders({ headers: response?.headers }),
|
|
63901
|
-
data: response?.data
|
|
64855
|
+
data: redactLogBody({ body: response?.data })
|
|
63902
64856
|
}
|
|
63903
64857
|
};
|
|
63904
64858
|
}
|
|
@@ -63911,6 +64865,10 @@ function redactHeaders({ headers }) {
|
|
|
63911
64865
|
REDACTED_HEADER_KEY_PATTERN.test(headerKey) ? "<redacted>" : headerValue
|
|
63912
64866
|
]));
|
|
63913
64867
|
}
|
|
64868
|
+
function isPlainRecord(value) {
|
|
64869
|
+
const prototype = Object.getPrototypeOf(value);
|
|
64870
|
+
return prototype === Object.prototype || prototype === null;
|
|
64871
|
+
}
|
|
63914
64872
|
function isRecord(value) {
|
|
63915
64873
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
63916
64874
|
}
|
|
@@ -63940,7 +64898,7 @@ function logHttpResponse(logger2, response, responseTime, extra) {
|
|
|
63940
64898
|
const responseMetadata = {
|
|
63941
64899
|
statusCode,
|
|
63942
64900
|
responseTime,
|
|
63943
|
-
responseBody,
|
|
64901
|
+
responseBody: redactLogBody({ body: responseBody }),
|
|
63944
64902
|
// Redacted so secrets (authorization/cookie/token/…) never reach the logs
|
|
63945
64903
|
// while diagnostic headers (e.g. rate-limit headers on a 429) stay visible.
|
|
63946
64904
|
responseHeaders: responseHeaders === void 0 ? void 0 : redactHeaders({ headers: responseHeaders })
|
|
@@ -63953,14 +64911,15 @@ function logHttpResponse(logger2, response, responseTime, extra) {
|
|
|
63953
64911
|
}
|
|
63954
64912
|
function transform2(request) {
|
|
63955
64913
|
const method = request.method.toUpperCase();
|
|
63956
|
-
const
|
|
64914
|
+
const originalUrl = redactLogUrl({ url: request.originalUrl });
|
|
64915
|
+
const message = `${method} ${originalUrl}`;
|
|
63957
64916
|
const metadata = {};
|
|
63958
64917
|
metadata.method = method;
|
|
63959
|
-
metadata.url = request.url;
|
|
63960
|
-
metadata.path = request.path;
|
|
64918
|
+
metadata.url = redactLogUrl({ url: request.url });
|
|
64919
|
+
metadata.path = redactLogUrl({ url: request.path });
|
|
63961
64920
|
metadata.hostname = request.hostname;
|
|
63962
|
-
metadata.originalUrl =
|
|
63963
|
-
metadata.requestBody =
|
|
64921
|
+
metadata.originalUrl = originalUrl;
|
|
64922
|
+
metadata.requestBody = redactLogBody({ body: request.body });
|
|
63964
64923
|
metadata.routePath = transformUrlIntoRoutePath(request);
|
|
63965
64924
|
metadata.apiKeyEnd = request.headers["authorization"]?.slice(-6);
|
|
63966
64925
|
return { message, metadata };
|
|
@@ -64007,7 +64966,16 @@ function buildLoggerFactory({ config: config4, context }) {
|
|
|
64007
64966
|
const internalLogger = winston.createLogger({
|
|
64008
64967
|
transports: transports2,
|
|
64009
64968
|
defaultMeta,
|
|
64010
|
-
format: winston.format.combine(
|
|
64969
|
+
format: winston.format.combine(
|
|
64970
|
+
winston.format.splat(),
|
|
64971
|
+
winston.format(addMetadata({ getCorrelationId, getExecutionContext }))(),
|
|
64972
|
+
// Before pruning: json-prune would otherwise serialize a binary
|
|
64973
|
+
// `response.data` byte by byte before it is summarised (#6006).
|
|
64974
|
+
winston.format(transformAxiosError)(),
|
|
64975
|
+
winston.format(transformErrorEnrich)({ depth: 5 }),
|
|
64976
|
+
winston.format(transformPrune)(),
|
|
64977
|
+
winston.format.timestamp()
|
|
64978
|
+
),
|
|
64011
64979
|
exitOnError: false
|
|
64012
64980
|
});
|
|
64013
64981
|
function createLogger3({ serviceName }) {
|
|
@@ -66354,11 +67322,32 @@ import { deepEqual } from "fast-equals";
|
|
|
66354
67322
|
|
|
66355
67323
|
// ../hyperline-lib/build/utils/realignDatesToTimezone.js
|
|
66356
67324
|
var import_shared4 = __toESM(require_shared(), 1);
|
|
66357
|
-
var
|
|
67325
|
+
var MILLISECONDS_PER_HOUR = 60 * 60 * 1e3;
|
|
67326
|
+
var MILLISECONDS_PER_DAY = 24 * MILLISECONDS_PER_HOUR;
|
|
66358
67327
|
var LAST_MILLISECOND_OF_DAY = MILLISECONDS_PER_DAY - 1;
|
|
67328
|
+
var dateRealignmentModeSchema = external_exports.enum([
|
|
67329
|
+
"utc_midnight_import",
|
|
67330
|
+
"dst_hour_drift",
|
|
67331
|
+
"month_start_drift",
|
|
67332
|
+
"manual_phase_end_midnight"
|
|
67333
|
+
]).default("utc_midnight_import");
|
|
67334
|
+
var DST_HOUR_SHIFT_BY_LOCAL_MILLISECOND_OF_DAY = /* @__PURE__ */ new Map([
|
|
67335
|
+
[23 * MILLISECONDS_PER_HOUR, MILLISECONDS_PER_HOUR],
|
|
67336
|
+
[LAST_MILLISECOND_OF_DAY - MILLISECONDS_PER_HOUR, MILLISECONDS_PER_HOUR],
|
|
67337
|
+
[MILLISECONDS_PER_HOUR, -MILLISECONDS_PER_HOUR],
|
|
67338
|
+
[MILLISECONDS_PER_HOUR - 1, -MILLISECONDS_PER_HOUR]
|
|
67339
|
+
]);
|
|
67340
|
+
|
|
67341
|
+
// ../hyperline-lib/build/utils/overviewPeriods.js
|
|
67342
|
+
var OverviewPeriodSchema = external_exports.enum([
|
|
67343
|
+
"this_month",
|
|
67344
|
+
"last_month",
|
|
67345
|
+
"last_3_months"
|
|
67346
|
+
]);
|
|
66359
67347
|
|
|
66360
67348
|
// ../hyperline-lib/build/utils/api/filterBuilder.js
|
|
66361
|
-
var
|
|
67349
|
+
var nullAuthorizedOperators = ["isNull", "isNotNull"];
|
|
67350
|
+
var baseAuthorizedOperators = ["not", ...nullAuthorizedOperators];
|
|
66362
67351
|
var booleanAuthorizedOperators = [
|
|
66363
67352
|
...baseAuthorizedOperators,
|
|
66364
67353
|
"equals"
|
|
@@ -66387,6 +67376,7 @@ var authorizedOperators = [
|
|
|
66387
67376
|
...arrayAuthorizedOperators,
|
|
66388
67377
|
...mapAuthorizedOperators
|
|
66389
67378
|
];
|
|
67379
|
+
var NullFilterValueSchema = BooleanSchema.or(external_exports.literal("")).optional();
|
|
66390
67380
|
|
|
66391
67381
|
// ../hyperline-lib/build/http/dto/state.js
|
|
66392
67382
|
var StateSchema = external_exports.enum(usStates).openapi({
|
|
@@ -66424,150 +67414,6 @@ var isAxiosError = axios.isAxiosError;
|
|
|
66424
67414
|
// ../hyperline-lib/build/httpClient/httpClient.js
|
|
66425
67415
|
import axios2 from "axios";
|
|
66426
67416
|
import axiosRetry, { isNetworkOrIdempotentRequestError, retryAfter } from "axios-retry";
|
|
66427
|
-
|
|
66428
|
-
// ../hyperline-lib/build/httpClient/logRedaction.js
|
|
66429
|
-
var REDACTED_KEY_NAMES = /* @__PURE__ */ new Set([
|
|
66430
|
-
"accesstoken",
|
|
66431
|
-
"apikey",
|
|
66432
|
-
"apitoken",
|
|
66433
|
-
"assertion",
|
|
66434
|
-
"authtoken",
|
|
66435
|
-
"clientassertion",
|
|
66436
|
-
"codeverifier",
|
|
66437
|
-
"credentials",
|
|
66438
|
-
"idtoken",
|
|
66439
|
-
"privatekey",
|
|
66440
|
-
"refreshtoken",
|
|
66441
|
-
"sessiontoken",
|
|
66442
|
-
"token"
|
|
66443
|
-
]);
|
|
66444
|
-
var REDACTED_KEY_SUFFIX_PATTERN = /(secret|password)$/;
|
|
66445
|
-
var REDACTED_KEY_CANDIDATE_PATTERN = /token|key|secret|password|assertion|verifier|credentials/i;
|
|
66446
|
-
var REDACTED_VALUE = "<redacted>";
|
|
66447
|
-
var MAX_REDACTION_DEPTH = 10;
|
|
66448
|
-
var MAX_PARSED_STRING_LENGTH = 16384;
|
|
66449
|
-
var MAX_VISITED_NODES = 1e3;
|
|
66450
|
-
var MAX_CONTAINER_ENTRIES = MAX_VISITED_NODES;
|
|
66451
|
-
function redactLogBody({ body }) {
|
|
66452
|
-
return redactValue({
|
|
66453
|
-
value: body,
|
|
66454
|
-
depth: MAX_REDACTION_DEPTH,
|
|
66455
|
-
budget: { remainingNodes: MAX_VISITED_NODES }
|
|
66456
|
-
});
|
|
66457
|
-
}
|
|
66458
|
-
function redactLogUrl({ url: url2 }) {
|
|
66459
|
-
const queryIndex = url2.indexOf("?");
|
|
66460
|
-
if (queryIndex === -1 || url2.length > MAX_PARSED_STRING_LENGTH) {
|
|
66461
|
-
return url2;
|
|
66462
|
-
}
|
|
66463
|
-
const redactedQuery = redactFormEncoded({ text: url2.slice(queryIndex + 1) });
|
|
66464
|
-
return redactedQuery === void 0 ? url2 : `${url2.slice(0, queryIndex)}?${redactedQuery}`;
|
|
66465
|
-
}
|
|
66466
|
-
function redactValue({ value, depth, budget }) {
|
|
66467
|
-
if (depth <= 0 || budget.remainingNodes <= 0) {
|
|
66468
|
-
return value;
|
|
66469
|
-
}
|
|
66470
|
-
budget.remainingNodes -= 1;
|
|
66471
|
-
if (typeof value === "string") {
|
|
66472
|
-
return redactString({ text: value, budget });
|
|
66473
|
-
}
|
|
66474
|
-
if (value instanceof URLSearchParams) {
|
|
66475
|
-
return redactFormEncoded({ text: value.toString() }) ?? value;
|
|
66476
|
-
}
|
|
66477
|
-
if (Array.isArray(value)) {
|
|
66478
|
-
return redactArray({ items: value, depth, budget });
|
|
66479
|
-
}
|
|
66480
|
-
if (isPlainObject2(value)) {
|
|
66481
|
-
return redactObject({ record: value, depth, budget });
|
|
66482
|
-
}
|
|
66483
|
-
return value;
|
|
66484
|
-
}
|
|
66485
|
-
function redactArray({ items, depth, budget }) {
|
|
66486
|
-
if (items.length > MAX_CONTAINER_ENTRIES) {
|
|
66487
|
-
return items;
|
|
66488
|
-
}
|
|
66489
|
-
let redactedItems;
|
|
66490
|
-
for (const [index, item] of items.entries()) {
|
|
66491
|
-
if (budget.remainingNodes <= 0) {
|
|
66492
|
-
break;
|
|
66493
|
-
}
|
|
66494
|
-
const redactedItem = redactValue({ value: item, depth: depth - 1, budget });
|
|
66495
|
-
if (redactedItem !== item) {
|
|
66496
|
-
redactedItems ??= [...items];
|
|
66497
|
-
redactedItems[index] = redactedItem;
|
|
66498
|
-
}
|
|
66499
|
-
}
|
|
66500
|
-
return redactedItems ?? items;
|
|
66501
|
-
}
|
|
66502
|
-
function redactObject({ record: record2, depth, budget }) {
|
|
66503
|
-
const redactedEntries = /* @__PURE__ */ new Map();
|
|
66504
|
-
let entryCount = 0;
|
|
66505
|
-
for (const key in record2) {
|
|
66506
|
-
if (!Object.hasOwn(record2, key)) {
|
|
66507
|
-
continue;
|
|
66508
|
-
}
|
|
66509
|
-
entryCount += 1;
|
|
66510
|
-
if (entryCount > MAX_CONTAINER_ENTRIES) {
|
|
66511
|
-
return record2;
|
|
66512
|
-
}
|
|
66513
|
-
if (budget.remainingNodes <= 0) {
|
|
66514
|
-
break;
|
|
66515
|
-
}
|
|
66516
|
-
const nestedValue = record2[key];
|
|
66517
|
-
const redactedNestedValue = isRedactedKey({ key }) && nestedValue != null ? REDACTED_VALUE : redactValue({ value: nestedValue, depth: depth - 1, budget });
|
|
66518
|
-
if (redactedNestedValue !== nestedValue) {
|
|
66519
|
-
redactedEntries.set(key, redactedNestedValue);
|
|
66520
|
-
}
|
|
66521
|
-
}
|
|
66522
|
-
return redactedEntries.size === 0 ? record2 : { ...record2, ...Object.fromEntries(redactedEntries) };
|
|
66523
|
-
}
|
|
66524
|
-
function redactString({ text, budget }) {
|
|
66525
|
-
if (text.length > MAX_PARSED_STRING_LENGTH) {
|
|
66526
|
-
return text;
|
|
66527
|
-
}
|
|
66528
|
-
const trimmedText = text.trim();
|
|
66529
|
-
if (trimmedText.startsWith("{") || trimmedText.startsWith("[")) {
|
|
66530
|
-
try {
|
|
66531
|
-
const parsedValue = JSON.parse(trimmedText);
|
|
66532
|
-
const redactedValue = redactValue({
|
|
66533
|
-
value: parsedValue,
|
|
66534
|
-
depth: MAX_REDACTION_DEPTH,
|
|
66535
|
-
budget
|
|
66536
|
-
});
|
|
66537
|
-
return redactedValue === parsedValue ? text : JSON.stringify(redactedValue);
|
|
66538
|
-
} catch {
|
|
66539
|
-
return text;
|
|
66540
|
-
}
|
|
66541
|
-
}
|
|
66542
|
-
return redactFormEncoded({ text }) ?? text;
|
|
66543
|
-
}
|
|
66544
|
-
function redactFormEncoded({ text }) {
|
|
66545
|
-
if (!text.includes("=") || !REDACTED_KEY_CANDIDATE_PATTERN.test(text)) {
|
|
66546
|
-
return void 0;
|
|
66547
|
-
}
|
|
66548
|
-
const params = new URLSearchParams(text);
|
|
66549
|
-
let hasRedactedParam = false;
|
|
66550
|
-
for (const key of new Set(params.keys())) {
|
|
66551
|
-
if (isRedactedKey({ key })) {
|
|
66552
|
-
params.set(key, REDACTED_VALUE);
|
|
66553
|
-
hasRedactedParam = true;
|
|
66554
|
-
}
|
|
66555
|
-
}
|
|
66556
|
-
return hasRedactedParam ? params.toString() : void 0;
|
|
66557
|
-
}
|
|
66558
|
-
function isRedactedKey({ key }) {
|
|
66559
|
-
const normalizedKey = key.toLowerCase().replace(/[_-]/g, "");
|
|
66560
|
-
return REDACTED_KEY_NAMES.has(normalizedKey) || REDACTED_KEY_SUFFIX_PATTERN.test(normalizedKey);
|
|
66561
|
-
}
|
|
66562
|
-
function isPlainObject2(value) {
|
|
66563
|
-
if (typeof value !== "object" || value === null) {
|
|
66564
|
-
return false;
|
|
66565
|
-
}
|
|
66566
|
-
const prototype = Object.getPrototypeOf(value);
|
|
66567
|
-
return prototype === Object.prototype || prototype === null;
|
|
66568
|
-
}
|
|
66569
|
-
|
|
66570
|
-
// ../hyperline-lib/build/httpClient/httpClient.js
|
|
66571
67417
|
import { AxiosError } from "axios";
|
|
66572
67418
|
var recommendedRetryConfig = {
|
|
66573
67419
|
retries: 3,
|
|
@@ -66635,14 +67481,14 @@ function isTooManyRequestsError(error48) {
|
|
|
66635
67481
|
return error48.response?.status === 429;
|
|
66636
67482
|
}
|
|
66637
67483
|
var toLogRequest = (config4) => {
|
|
66638
|
-
const url2 =
|
|
67484
|
+
const url2 = config4.url ?? "";
|
|
66639
67485
|
return {
|
|
66640
67486
|
method: config4.method ?? "",
|
|
66641
67487
|
url: url2,
|
|
66642
67488
|
path: url2,
|
|
66643
67489
|
hostname: config4.baseURL ?? "",
|
|
66644
67490
|
originalUrl: `${config4.baseURL ?? ""}${url2}`,
|
|
66645
|
-
body:
|
|
67491
|
+
body: config4.data,
|
|
66646
67492
|
headers: {}
|
|
66647
67493
|
};
|
|
66648
67494
|
};
|
|
@@ -66662,9 +67508,13 @@ import multer2 from "multer";
|
|
|
66662
67508
|
// ../hyperline-lib/build/httpRouter/file.js
|
|
66663
67509
|
import helmet from "helmet";
|
|
66664
67510
|
|
|
66665
|
-
// ../hyperline-lib/build/publicApi/auth/
|
|
67511
|
+
// ../hyperline-lib/build/publicApi/auth/apiKey.js
|
|
66666
67512
|
import { randomBytes as randomBytes2, scryptSync } from "node:crypto";
|
|
66667
67513
|
|
|
67514
|
+
// ../hyperline-lib/build/publicApi/auth/apiKeyHashCache.js
|
|
67515
|
+
import { createHash as createHash4 } from "node:crypto";
|
|
67516
|
+
var TTL_MS = 5 * 6e4;
|
|
67517
|
+
|
|
66668
67518
|
// ../hyperline-mcp/build/requestBuilder.js
|
|
66669
67519
|
function buildRequestConfig(path2, args, method, queryParamKeys = []) {
|
|
66670
67520
|
const { url: url2, usedKeys } = replacePathParams(path2, args);
|