@capxul/cli 4.20.0-beta.30 → 4.20.0-beta.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -4
- package/dist/{entry-Cp3LiVYn.mjs → entry-CmnyAyYp.mjs} +4 -30
- package/dist/{entry-Cp3LiVYn.mjs.map → entry-CmnyAyYp.mjs.map} +1 -1
- package/dist/main.mjs +1 -1
- package/dist/{organizations-Dkb73lVO.mjs → organizations-CbmvwYH7.mjs} +3 -3
- package/dist/{organizations-Dkb73lVO.mjs.map → organizations-CbmvwYH7.mjs.map} +1 -1
- package/dist/{permission-approvals-C3cUSQeT.mjs → permission-approvals-CKzN6tEO.mjs} +2 -2
- package/dist/{permission-approvals-C3cUSQeT.mjs.map → permission-approvals-CKzN6tEO.mjs.map} +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -203,7 +203,7 @@ stops after that many seconds (1 to 3600) with exit 5 and the same command to ru
|
|
|
203
203
|
|
|
204
204
|
```sh
|
|
205
205
|
capxul payment retry PAYMENT_ID --json
|
|
206
|
-
capxul payment send rex@capxul.com 50 --
|
|
206
|
+
capxul payment send rex@capxul.com 50 --json
|
|
207
207
|
capxul payment cancel PAYMENT_ID --json
|
|
208
208
|
capxul payment redirect PAYMENT_ID sam@acme.co --json
|
|
209
209
|
capxul payment list --json
|
|
@@ -223,9 +223,12 @@ action. A failed Payment can be a completed observation. The timeout accepts
|
|
|
223
223
|
1–3600 seconds and includes session restoration. A timeout or unavailable read
|
|
224
224
|
prints exact get/wait commands. Waiting never resubmits a Payment.
|
|
225
225
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
226
|
+
Scheduled sends are unavailable while scheduled payments are rebuilt.
|
|
227
|
+
`send` has no release-date flag. The backend refuses scheduled timing with
|
|
228
|
+
`INVALID_INPUT` on `timing`: `scheduled payments are being rebuilt`.
|
|
229
|
+
|
|
230
|
+
Existing holds keep their claim, cancel and redirect operations. `cancel` returns
|
|
231
|
+
a held payment to whoever funded it; `redirect` sends it to someone else. For an
|
|
229
232
|
Organization's held payment only an Owner may cancel or redirect it; anyone else,
|
|
230
233
|
a Budget member included, is refused before anything is prepared. Both hand over
|
|
231
234
|
to the approval page as `send` does, then read the Payment until the chain shows
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { i as __exportAll, o as __require, r as __commonJSMin, s as __toESM } from "./lib-DnmstTkB.mjs";
|
|
2
2
|
import { _ as scopeArgs, c as chooseEnvironment, d as environmentOf, f as explicitOrganization$2, g as parseWhere, h as networkName, i as whoamiLines, m as flagValues, n as headerLine, o as ENVIRONMENT_NAMES, p as flagValue, r as styleFor, s as STAGING_ORIGIN, t as PLAIN, u as describeWhere } from "./where-view-DuGbrSLp.mjs";
|
|
3
3
|
import { n as readField, t as isRecord } from "./record-U7Yu4KQP.mjs";
|
|
4
|
-
import { $ as callOperation, $n as toPermissionId, $t as AuthClientError, A as ConvexCallPortTag, An as redactUrlSecrets, At as toHandle, B as makePaymentsMethods, Bn as images, Bt as toCapxulResult, C as SmartAccountPortTag, Cn as PayrollGroupInputSchema, Ct as signerFailure, D as ConvexAccountLayer, Dn as ORGANIZATION_SETUP_STATUSES, Dt as toCountryCode, E as makeAccountsMethods, En as ORGANIZATION_SETUP_REASONS, Et as makeClientRequestMethods, F as decodePayrollRunInput, Fn as keepRefillOnChange, Ft as publicIdentityFailure, G as formatAssetAmount, Gn as toLowerHex, Gt as ClockPortTag, H as makeCheckoutMethods, Hn as PaymentDocumentOptionsSchema, Ht as ActorFailure, I as toPayrollGroupId, In as diagnostics, It as runIdentityFacade, J as toRaw, Jn as DurationMsSchema, Jt as observationRequestHeaders, K as parseAssetAmount, Kn as PAYMENT_DIRECTIONS, Kt as BetterAuthNodeLayer, L as makeAccountMethods, Ln as AppIdSchema, Lt as runPortEffect, M as bindProductTelemetryInvocation, Mn as CAPXUL_ERROR_CODES, Mt as validateHandle, N as registerProductTelemetryInvocation, Nn as isExpectedOutcome, Nt as makeAuthMethods, O as AccountReadPortTag, On as decodeChainCause, Ot as toKycTier, P as makeApprovalsMethods, Pn as toOrgId, Pt as askIdentity, Q as BASE_SEPOLIA_CHAIN_ID, Qn as toPermissionAssignmentId, Qt as sanitizeObservationContext, R as logDroppedEvent, Rn as toAllowedOrigin, Rt as sessionFromActor, S as ConvexSmartAccountLayer, Sn as PayrollGroupIdSchema, St as recoverRawDigestSigner, T as PonderIndexerAdapter, Tn as setups, Tt as makeCurrentUserMethods, U as makeTargetsMethods, Un as isBytes32, Ut as carryInvocationParentSpan, V as makeDestinationsMethods, Vn as toAccountId, Vt as formatTraceparent, Wn as isHex, Wt as SystemClockLayer, X as fingerprintPaymentIntent, Xn as toEpochMs, Xt as copyInvocationObservation, Y as isMoneyParseError, Yn as EpochMsSchema, Yt as attachInvocationObservation, Z as TOKENS, Zn as toBudgetId, Zt as readInvocationObservation, _ as makeMeMethods, _n as isCapxulOperation, _t as UNOBSERVABLE_SIGNER_STATUS, an as redactTelemetryProps, ar as toAddress, at as postHogFailureObservation, b as makePaymentDocumentsMethods, bn as details, bt as isSignerNotReadySignal, c as deserializeCapxulError, cn as CliCommandStartedTelemetryEventSchema, cr as CapxulError, ct as observationContextProps, dn as CLI_CAPABILITIES, dr as isFailureMode, dt as SDK_VERSION$1, en as AuthClientPortTag, er as ChainIdSchema, et as asCapxulError, fn as CLI_COMMAND_NAMES, fr as getFunctionName, ft as normalizeExceptionErrorKind, g as bootIdentityFlow, gn as CAPXUL_OPERATIONS, gt as version$2, h as executeIdentityProductObservation, hn as stampTelemetryEnvelope, ht as safeExceptionLabel, in as AuthCachePortTag, ir as isEvmAddress, it as CAPXUL_SDK_EXPECTED_OUTCOME_EVENT, j as convexCallErrorFromCapxul, jn as isCredentialField, jt as toPartyId, k as TelemetryPortTag, kn as redactSecrets, kt as toTesterKind, ln as CliDiagnosticCompletedTelemetryEventSchema, lr as isCapxulError, lt as withCapturedAttemptContext, mn as EXCEPTION_EVENT_NAME, mt as projectSdkException, n as makeOrgMethods, nn as toAuthUserId, nr as toAssetId, nt as failureDetail, o as ConvexOrganizationAdapter, on as TELEMETRY_EVENT_SCHEMAS, or as Errors, ot as observeFailedResult, p as decodePermissionIntent, pn as CLI_INVOCATION_KINDS, pt as normalizeExceptionOperation, q as requireAsset, qn as PAYMENT_STATUSES, qt as BetterAuthBrowserLayer, rn as toEmail, rr as toCurrencyCode, rt as failureEvidenceProps, s as OrgPortTag, sn as CliCommandCompletedTelemetryEventSchema, sr as absurd, st as observeSdkClient, t as ConvexOrganizationSetupAdapter, tn as detectAuthCacheAdapter, tr as currencySymbolFor, tt as toPublicError, un as CliFirstUsedTelemetryEventSchema, ur as FAILURE_MODES, ut as EXCEPTION_MESSAGE, v as paymentPhase, vn as normalizeCapxulOperation, vt as causeChain, w as makeHoldingsMethods, wn as FixedOfferDraftSchema, wt as resolveFailureMode, x as makeSmartAccountMethods, xn as onboardings, xt as openfortSignerNotReadyCode, y as makeActivityMethods, yn as OPERATIONS, yt as isEcdsaSignatureHex, z as makeOfframpMethods, zn as toPublishableKey, zt as runCapxulEffect } from "./organizations-
|
|
4
|
+
import { $ as callOperation, $n as toPermissionId, $t as AuthClientError, A as ConvexCallPortTag, An as redactUrlSecrets, At as toHandle, B as makePaymentsMethods, Bn as images, Bt as toCapxulResult, C as SmartAccountPortTag, Cn as PayrollGroupInputSchema, Ct as signerFailure, D as ConvexAccountLayer, Dn as ORGANIZATION_SETUP_STATUSES, Dt as toCountryCode, E as makeAccountsMethods, En as ORGANIZATION_SETUP_REASONS, Et as makeClientRequestMethods, F as decodePayrollRunInput, Fn as keepRefillOnChange, Ft as publicIdentityFailure, G as formatAssetAmount, Gn as toLowerHex, Gt as ClockPortTag, H as makeCheckoutMethods, Hn as PaymentDocumentOptionsSchema, Ht as ActorFailure, I as toPayrollGroupId, In as diagnostics, It as runIdentityFacade, J as toRaw, Jn as DurationMsSchema, Jt as observationRequestHeaders, K as parseAssetAmount, Kn as PAYMENT_DIRECTIONS, Kt as BetterAuthNodeLayer, L as makeAccountMethods, Ln as AppIdSchema, Lt as runPortEffect, M as bindProductTelemetryInvocation, Mn as CAPXUL_ERROR_CODES, Mt as validateHandle, N as registerProductTelemetryInvocation, Nn as isExpectedOutcome, Nt as makeAuthMethods, O as AccountReadPortTag, On as decodeChainCause, Ot as toKycTier, P as makeApprovalsMethods, Pn as toOrgId, Pt as askIdentity, Q as BASE_SEPOLIA_CHAIN_ID, Qn as toPermissionAssignmentId, Qt as sanitizeObservationContext, R as logDroppedEvent, Rn as toAllowedOrigin, Rt as sessionFromActor, S as ConvexSmartAccountLayer, Sn as PayrollGroupIdSchema, St as recoverRawDigestSigner, T as PonderIndexerAdapter, Tn as setups, Tt as makeCurrentUserMethods, U as makeTargetsMethods, Un as isBytes32, Ut as carryInvocationParentSpan, V as makeDestinationsMethods, Vn as toAccountId, Vt as formatTraceparent, Wn as isHex, Wt as SystemClockLayer, X as fingerprintPaymentIntent, Xn as toEpochMs, Xt as copyInvocationObservation, Y as isMoneyParseError, Yn as EpochMsSchema, Yt as attachInvocationObservation, Z as TOKENS, Zn as toBudgetId, Zt as readInvocationObservation, _ as makeMeMethods, _n as isCapxulOperation, _t as UNOBSERVABLE_SIGNER_STATUS, an as redactTelemetryProps, ar as toAddress, at as postHogFailureObservation, b as makePaymentDocumentsMethods, bn as details, bt as isSignerNotReadySignal, c as deserializeCapxulError, cn as CliCommandStartedTelemetryEventSchema, cr as CapxulError, ct as observationContextProps, dn as CLI_CAPABILITIES, dr as isFailureMode, dt as SDK_VERSION$1, en as AuthClientPortTag, er as ChainIdSchema, et as asCapxulError, fn as CLI_COMMAND_NAMES, fr as getFunctionName, ft as normalizeExceptionErrorKind, g as bootIdentityFlow, gn as CAPXUL_OPERATIONS, gt as version$2, h as executeIdentityProductObservation, hn as stampTelemetryEnvelope, ht as safeExceptionLabel, in as AuthCachePortTag, ir as isEvmAddress, it as CAPXUL_SDK_EXPECTED_OUTCOME_EVENT, j as convexCallErrorFromCapxul, jn as isCredentialField, jt as toPartyId, k as TelemetryPortTag, kn as redactSecrets, kt as toTesterKind, ln as CliDiagnosticCompletedTelemetryEventSchema, lr as isCapxulError, lt as withCapturedAttemptContext, mn as EXCEPTION_EVENT_NAME, mt as projectSdkException, n as makeOrgMethods, nn as toAuthUserId, nr as toAssetId, nt as failureDetail, o as ConvexOrganizationAdapter, on as TELEMETRY_EVENT_SCHEMAS, or as Errors, ot as observeFailedResult, p as decodePermissionIntent, pn as CLI_INVOCATION_KINDS, pt as normalizeExceptionOperation, q as requireAsset, qn as PAYMENT_STATUSES, qt as BetterAuthBrowserLayer, rn as toEmail, rr as toCurrencyCode, rt as failureEvidenceProps, s as OrgPortTag, sn as CliCommandCompletedTelemetryEventSchema, sr as absurd, st as observeSdkClient, t as ConvexOrganizationSetupAdapter, tn as detectAuthCacheAdapter, tr as currencySymbolFor, tt as toPublicError, un as CliFirstUsedTelemetryEventSchema, ur as FAILURE_MODES, ut as EXCEPTION_MESSAGE, v as paymentPhase, vn as normalizeCapxulOperation, vt as causeChain, w as makeHoldingsMethods, wn as FixedOfferDraftSchema, wt as resolveFailureMode, x as makeSmartAccountMethods, xn as onboardings, xt as openfortSignerNotReadyCode, y as makeActivityMethods, yn as OPERATIONS, yt as isEcdsaSignatureHex, z as makeOfframpMethods, zn as toPublishableKey, zt as runCapxulEffect } from "./organizations-CbmvwYH7.mjs";
|
|
5
5
|
import { t as require_lib } from "./lib-CoGPQsbr.mjs";
|
|
6
6
|
import process$1, { arch, platform } from "node:process";
|
|
7
7
|
import { fileURLToPath } from "node:url";
|
|
@@ -33727,8 +33727,8 @@ const terminalText = (value) => value.replace(/[\p{Cc}\p{Cf}]/gu, (character) =>
|
|
|
33727
33727
|
const shellArgument = (value) => `'${value.replaceAll("'", "'\"'\"'")}'`;
|
|
33728
33728
|
//#endregion
|
|
33729
33729
|
//#region src/runtime/version.ts
|
|
33730
|
-
const cliVersion = "4.20.0-beta.
|
|
33731
|
-
const sdkVersion = "4.20.0-beta.
|
|
33730
|
+
const cliVersion = "4.20.0-beta.31";
|
|
33731
|
+
const sdkVersion = "4.20.0-beta.31";
|
|
33732
33732
|
const ReleaseVersion = Schema.String.check(Schema.isMaxLength(256), Schema.isPattern(/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*)?$/u)).pipe(Schema.brand("CliReleaseVersion"));
|
|
33733
33733
|
const parts = (version) => {
|
|
33734
33734
|
const [core = "", ...prerelease] = version.split("+")[0].split("-");
|
|
@@ -37922,8 +37922,6 @@ const heldStepPreview = (approval, payee) => {
|
|
|
37922
37922
|
"Fee none"
|
|
37923
37923
|
];
|
|
37924
37924
|
};
|
|
37925
|
-
/** `Release 1 Nov 2026 · held until then`, for a payment that waits for its date. */
|
|
37926
|
-
const releaseLine = (at) => `Release ${shownDate(at)} · held until then`;
|
|
37927
37925
|
/** Done: what moved where, and where the receipt is. */
|
|
37928
37926
|
const heldLines = (outcome, payment, receipt, style = PLAIN) => {
|
|
37929
37927
|
const amount = shownAmount(payment.amount);
|
|
@@ -37975,7 +37973,6 @@ const previewLines$1 = (approval, source) => {
|
|
|
37975
37973
|
`From ${terminalText(source.budget ?? from.label)}${left}`,
|
|
37976
37974
|
`To ${terminalText(named)}`,
|
|
37977
37975
|
`Amount ${amount === null ? "nothing moves" : shownAmount(amount)}`,
|
|
37978
|
-
...source.releaseAt === void 0 ? [] : [releaseLine(source.releaseAt)],
|
|
37979
37976
|
"Fee none"
|
|
37980
37977
|
];
|
|
37981
37978
|
};
|
|
@@ -44339,28 +44336,11 @@ const readPaymentInput = (source) => Effect.gen(function* () {
|
|
|
44339
44336
|
}).pipe(Effect.mapError((error) => error instanceof UpdateUnavailable ? inputRequired("Payment input exceeds 64 KiB.") : error));
|
|
44340
44337
|
//#endregion
|
|
44341
44338
|
//#region src/commands/payment/subcommands/send/execute.ts
|
|
44342
|
-
/**
|
|
44343
|
-
* `--release-at`: a date (midnight UTC) or an ISO time, still to come. The
|
|
44344
|
-
* payment is held until then; an Owner can cancel or redirect it meanwhile.
|
|
44345
|
-
*/
|
|
44346
|
-
const readReleaseAt = (value) => Effect.gen(function* () {
|
|
44347
|
-
const text = value.trim();
|
|
44348
|
-
const at = /^\d{4}-\d{2}-\d{2}$/u.test(text) ? Date.parse(`${text}T00:00:00Z`) : /^\d{4}-\d{2}-\d{2}T/u.test(text) ? Date.parse(text) : NaN;
|
|
44349
|
-
if (Number.isNaN(at)) return yield* inputRequired("Provide --release-at as a date like 2026-11-01.");
|
|
44350
|
-
if (at <= (yield* Clock.currentTimeMillis)) return yield* inputRequired("--release-at must be a date still to come.");
|
|
44351
|
-
return at;
|
|
44352
|
-
});
|
|
44353
|
-
/** A held payment's timing, or nothing for one that pays at once. */
|
|
44354
|
-
const releaseTiming = (at) => at === void 0 ? {} : { timing: {
|
|
44355
|
-
kind: "scheduled",
|
|
44356
|
-
at
|
|
44357
|
-
} };
|
|
44358
44339
|
/** The checks every send makes before a client: one source of the payment, the key and the follow time. */
|
|
44359
44340
|
const readSendFlags = (input) => Effect.gen(function* () {
|
|
44360
44341
|
if (input.source !== void 0 && (input.to !== void 0 || input.amount !== void 0)) return yield* inputRequired("Use <to> <amount> or --input, not both.");
|
|
44361
44342
|
if (input.to !== void 0) yield* readRecipient$1(input.to);
|
|
44362
44343
|
return {
|
|
44363
|
-
releaseAt: input.releaseAt === void 0 ? void 0 : yield* readReleaseAt(input.releaseAt),
|
|
44364
44344
|
requestKey: input.requestKey === void 0 ? void 0 : yield* readRequestKey(input.requestKey),
|
|
44365
44345
|
timeoutSeconds: input.timeoutSeconds === void 0 ? void 0 : yield* readWriteTimeout(input.timeoutSeconds)
|
|
44366
44346
|
};
|
|
@@ -44388,7 +44368,6 @@ const execute$15 = (config, input) => Effect.gen(function* () {
|
|
|
44388
44368
|
const payment = input.source === void 0 ? yield* readWords(input, account) : yield* readPaymentInput(input.source);
|
|
44389
44369
|
const approval = yield* withWaiting(Effect.promise((signal) => client.approvals.prepare({
|
|
44390
44370
|
...payment,
|
|
44391
|
-
...releaseTiming(flags.releaseAt),
|
|
44392
44371
|
...flags.requestKey === void 0 ? {} : { requestKey: flags.requestKey }
|
|
44393
44372
|
}, { signal })).pipe(Effect.flatMap(resultValue), Effect.mapError(namingRecipient(payment.to))), {
|
|
44394
44373
|
...runtime,
|
|
@@ -44402,7 +44381,6 @@ const execute$15 = (config, input) => Effect.gen(function* () {
|
|
|
44402
44381
|
value: held.available
|
|
44403
44382
|
},
|
|
44404
44383
|
recipient: typedEmail(payment.to),
|
|
44405
|
-
releaseAt: flags.releaseAt,
|
|
44406
44384
|
timeoutSeconds: flags.timeoutSeconds
|
|
44407
44385
|
});
|
|
44408
44386
|
});
|
|
@@ -44585,7 +44563,6 @@ const execute$14 = (config, orgId, input) => Effect.gen(function* () {
|
|
|
44585
44563
|
...payment,
|
|
44586
44564
|
organizationId: orgId,
|
|
44587
44565
|
permissionId: String(budget.id),
|
|
44588
|
-
...releaseTiming(flags.releaseAt),
|
|
44589
44566
|
...flags.requestKey === void 0 ? {} : { requestKey: flags.requestKey }
|
|
44590
44567
|
}, { signal })).pipe(Effect.flatMap(resultValue), Effect.mapError(namingRecipient(payment.to)), Effect.mapError(naming)), {
|
|
44591
44568
|
...runtime,
|
|
@@ -44597,7 +44574,6 @@ const execute$14 = (config, orgId, input) => Effect.gen(function* () {
|
|
|
44597
44574
|
budget: budget.label,
|
|
44598
44575
|
left: left ?? void 0,
|
|
44599
44576
|
recipient: typedEmail(payment.to),
|
|
44600
|
-
releaseAt: flags.releaseAt,
|
|
44601
44577
|
timeoutSeconds: flags.timeoutSeconds
|
|
44602
44578
|
});
|
|
44603
44579
|
});
|
|
@@ -44611,7 +44587,6 @@ const command$14 = Command.make("send", {
|
|
|
44611
44587
|
email: emailFlag,
|
|
44612
44588
|
input: sourceFlag,
|
|
44613
44589
|
requestKey: requestKeyFlag,
|
|
44614
|
-
releaseAt: Flag.String("release-at").pipe(Flag.withDescription("hold it until this date, like 2026-11-01 (midnight UTC)"), Flag.optional),
|
|
44615
44590
|
timeoutSeconds: Flag.Int("timeout-seconds").pipe(Flag.withDescription("how long to follow it (default: until the approval lapses)"), Flag.optional)
|
|
44616
44591
|
}, (flags) => {
|
|
44617
44592
|
const input = {
|
|
@@ -44623,7 +44598,6 @@ const command$14 = Command.make("send", {
|
|
|
44623
44598
|
email: Option.getOrUndefined(flags.email),
|
|
44624
44599
|
source: Option.getOrUndefined(flags.input),
|
|
44625
44600
|
requestKey: Option.getOrUndefined(flags.requestKey),
|
|
44626
|
-
releaseAt: Option.getOrUndefined(flags.releaseAt),
|
|
44627
44601
|
timeoutSeconds: Option.getOrUndefined(flags.timeoutSeconds)
|
|
44628
44602
|
};
|
|
44629
44603
|
return dispatch("send", {
|
|
@@ -46469,4 +46443,4 @@ const runCli = (platform) => Effect.uninterruptibleMask((restore) => Effect.gen(
|
|
|
46469
46443
|
//#endregion
|
|
46470
46444
|
export { runCli };
|
|
46471
46445
|
|
|
46472
|
-
//# sourceMappingURL=entry-
|
|
46446
|
+
//# sourceMappingURL=entry-CmnyAyYp.mjs.map
|