@capxul/sdk-react 4.20.0-beta.2 → 4.20.0-beta.20
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 +22 -7
- package/dist/{controllers-BWmKRFy6.d.mts → controllers-BMAU2kKH.d.mts} +2 -8
- package/dist/{controllers-DXmEHrnw.mjs → controllers-BV3e8WD3.mjs} +44 -39
- package/dist/index.d.mts +104 -55
- package/dist/index.mjs +658 -230
- package/dist/testing/index.d.mts +1 -1
- package/dist/testing/index.mjs +1 -1
- package/package.json +5 -4
package/README.md
CHANGED
|
@@ -27,13 +27,13 @@ export function Providers({ children }: { children: React.ReactNode }) {
|
|
|
27
27
|
- The provider restores Account readiness after a complete authenticated
|
|
28
28
|
session. Account and Organization readiness transitions refresh active
|
|
29
29
|
authenticated queries.
|
|
30
|
-
-
|
|
31
|
-
app-owned slots and render no SDK-owned DOM.
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
30
|
+
- CapxulAuthenticationController and CapxulOnboardingController select
|
|
31
|
+
app-owned slots and render no SDK-owned DOM. Organization create begins a
|
|
32
|
+
backend setup and returns its exact ID. The Core SDK actor subscribes to
|
|
33
|
+
that setup. Awaiting authorization, attention, and failure reach actionable
|
|
34
|
+
slots; processing and rechecking reach a finite progress slot.
|
|
35
|
+
- CapxulDashboardAccess combines current setup with current org.me authority.
|
|
36
|
+
A historical ready setup does not grant access after authority is revoked.
|
|
37
37
|
- Rich-data hooks such as `useCapxulProfile`, `useCapxulOrgs`, members, roles,
|
|
38
38
|
treasury, and money hooks remain TanStack Query projections. Personal
|
|
39
39
|
holdings and activity reads start only after the Account is claimed.
|
|
@@ -56,6 +56,8 @@ export function Providers({ children }: { children: React.ReactNode }) {
|
|
|
56
56
|
engine hook stays module-scoped. Both actor paths ship: a personal actor omits
|
|
57
57
|
`.Source` and spends the personal Account; an organization actor holds the
|
|
58
58
|
Budget the payment is drawn from and spends the treasury Account.
|
|
59
|
+
The submitted amount uses the selected registry AssetId and precision. This
|
|
60
|
+
includes 18-decimal WETH.
|
|
59
61
|
- `CapxulContacts` is the compound address-book component. One root owns the
|
|
60
62
|
book behaviour and draws nothing. The `.Summary`, `.List`, and `.Add` region
|
|
61
63
|
parts each hand the screen one finished slice, and a `.List` row carries its
|
|
@@ -75,6 +77,9 @@ export function Providers({ children }: { children: React.ReactNode }) {
|
|
|
75
77
|
and an amount the caller passed in `prefill` wins over it. Both engine hooks
|
|
76
78
|
stay module-scoped.
|
|
77
79
|
|
|
80
|
+
Activity groups use AssetId. The SDK resolves symbols and precision only for
|
|
81
|
+
display and CSV output. Assets with the same peg remain separate.
|
|
82
|
+
|
|
78
83
|
Payroll confirmation restores a saved run before enabling submission. An
|
|
79
84
|
uncertain run keeps its period, amounts, recipients, and SDK request key across
|
|
80
85
|
close/reopen and reload. Its fields remain fixed until Core confirms success or terminal closure.
|
|
@@ -98,6 +103,16 @@ The testing harness uses the real public provider and controllers and imports
|
|
|
98
103
|
its client factory only through `@capxul/sdk/testing`; it owns no renderer or
|
|
99
104
|
parallel identity state.
|
|
100
105
|
|
|
106
|
+
## Activity documents
|
|
107
|
+
|
|
108
|
+
`CapxulActivity.Detail` exposes `documents`, `selectedDocument`, and
|
|
109
|
+
`selectDocument({ documentHash, contentHash })`. Selection defaults to the
|
|
110
|
+
instruction, then the Movement Memo. `renderDocument()` returns safe semantic
|
|
111
|
+
HTML. `downloadDocument()` returns exact bytes for a deliberate download.
|
|
112
|
+
The host owns the panel and download action. Do not log these results.
|
|
113
|
+
Account or Organization changes clear selection and cancel pending reads.
|
|
114
|
+
These methods replace the receipt-only selector and action.
|
|
115
|
+
|
|
101
116
|
## Documentation
|
|
102
117
|
|
|
103
118
|
- [Maintainer context](./CONTEXT.md)
|
|
@@ -106,14 +106,8 @@ type AccountProgress = Exclude<Readiness, {
|
|
|
106
106
|
type AccountFailure = Extract<Readiness, {
|
|
107
107
|
at: "failed";
|
|
108
108
|
}>;
|
|
109
|
-
type OrgProgress =
|
|
110
|
-
|
|
111
|
-
} | {
|
|
112
|
-
at: "ready";
|
|
113
|
-
}>;
|
|
114
|
-
type OrgFailure = Extract<OrgLane, {
|
|
115
|
-
at: "failed";
|
|
116
|
-
}>;
|
|
109
|
+
type OrgProgress = OrgLane;
|
|
110
|
+
type OrgFailure = OrgLane;
|
|
117
111
|
type ReadyDestination = Extract<IdentityDestination, {
|
|
118
112
|
to: "dashboardPersonal" | "dashboardOrganization";
|
|
119
113
|
}>;
|
|
@@ -228,7 +228,7 @@ async function guarded(runtime, verb, options, run) {
|
|
|
228
228
|
}
|
|
229
229
|
}
|
|
230
230
|
function organizationFailure(reason, state) {
|
|
231
|
-
const stateFailure = state.phase === "faulted" ? state.failure : state.phase === "authenticated" && state.account.at === "failed" ? state.account.failure : state.phase === "authenticated" && state.account.at === "claimed"
|
|
231
|
+
const stateFailure = state.phase === "faulted" ? state.failure : state.phase === "authenticated" && state.account.at === "failed" ? state.account.failure : state.phase === "authenticated" && state.account.at === "claimed" ? state.account.org?.failure : void 0;
|
|
232
232
|
if (stateFailure?.code === reason) return {
|
|
233
233
|
ok: false,
|
|
234
234
|
reason,
|
|
@@ -266,8 +266,7 @@ function normalizeOrganization(organization) {
|
|
|
266
266
|
/** The Organization id when its lane is already running or finished, else null. */
|
|
267
267
|
const runningOrganization = (state) => {
|
|
268
268
|
if (state.phase !== "authenticated" || state.account.at !== "claimed") return null;
|
|
269
|
-
|
|
270
|
-
return org !== null && (org.at === "loading" || org.at === "settingUp" || org.at === "ready") ? org.orgId : null;
|
|
269
|
+
return state.account.org?.orgId ?? null;
|
|
271
270
|
};
|
|
272
271
|
/** A superseded session read waits at most this long for the winning read. */
|
|
273
272
|
const SESSION_SETTLE_LIMIT_MS = 3e4;
|
|
@@ -488,20 +487,6 @@ function createAuth(client, clearAuthenticatedQueries) {
|
|
|
488
487
|
ok: true,
|
|
489
488
|
orgId: running
|
|
490
489
|
};
|
|
491
|
-
if (current.phase === "authenticated" && current.account.at === "claimed") {
|
|
492
|
-
const org = current.account.org;
|
|
493
|
-
if (org?.at === "failed" && org.orgId !== null) {
|
|
494
|
-
if (!org.retryable) return {
|
|
495
|
-
ok: false,
|
|
496
|
-
reason: org.failure.code
|
|
497
|
-
};
|
|
498
|
-
const retried = await runtime.send({ _tag: "RetryOrganization" }, invocation);
|
|
499
|
-
return failure(retried) ?? {
|
|
500
|
-
ok: true,
|
|
501
|
-
orgId: org.orgId
|
|
502
|
-
};
|
|
503
|
-
}
|
|
504
|
-
}
|
|
505
490
|
const prepared = await prepareOrganization(submission, invocation);
|
|
506
491
|
if (!prepared.ok) return prepared;
|
|
507
492
|
const opened = runningOrganization(runtime.snapshot());
|
|
@@ -509,20 +494,24 @@ function createAuth(client, clearAuthenticatedQueries) {
|
|
|
509
494
|
ok: true,
|
|
510
495
|
orgId: opened
|
|
511
496
|
};
|
|
512
|
-
const
|
|
513
|
-
|
|
514
|
-
draft: prepared.organization
|
|
515
|
-
}, invocation);
|
|
516
|
-
const refused = failure(created);
|
|
517
|
-
if (refused !== null) return refused;
|
|
518
|
-
const state = created.state;
|
|
519
|
-
const org = state.phase === "authenticated" && state.account.at === "claimed" ? state.account.org : null;
|
|
520
|
-
return org?.at === "ready" && org.orgId !== null ? {
|
|
521
|
-
ok: true,
|
|
522
|
-
orgId: org.orgId
|
|
523
|
-
} : {
|
|
497
|
+
const begun = await client.onboarding.beginOrganization(prepared.organization, invocation);
|
|
498
|
+
if (!begun.ok) return {
|
|
524
499
|
ok: false,
|
|
525
|
-
reason:
|
|
500
|
+
reason: begun.error.code,
|
|
501
|
+
error: begun.error
|
|
502
|
+
};
|
|
503
|
+
const { orgId, setup } = begun.value;
|
|
504
|
+
if (setup.status === "awaitingAuthorization") {
|
|
505
|
+
const authorized = await client.org(orgId).setup.authorize(invocation);
|
|
506
|
+
if (!authorized.ok) return {
|
|
507
|
+
ok: false,
|
|
508
|
+
reason: authorized.error.code,
|
|
509
|
+
error: authorized.error
|
|
510
|
+
};
|
|
511
|
+
}
|
|
512
|
+
return {
|
|
513
|
+
ok: true,
|
|
514
|
+
orgId: String(orgId)
|
|
526
515
|
};
|
|
527
516
|
}).then((result) => {
|
|
528
517
|
if (result.ok) return result;
|
|
@@ -535,8 +524,21 @@ function createAuth(client, clearAuthenticatedQueries) {
|
|
|
535
524
|
}),
|
|
536
525
|
retry: (options) => guarded(runtime, "retry", options, async (invocation) => {
|
|
537
526
|
const state = runtime.snapshot();
|
|
538
|
-
const
|
|
539
|
-
|
|
527
|
+
const orgId = runningOrganization(state);
|
|
528
|
+
if (orgId !== null) {
|
|
529
|
+
const scoped = client.org(orgId);
|
|
530
|
+
const current = await scoped.setup.get(invocation);
|
|
531
|
+
if (!current.ok) return {
|
|
532
|
+
ok: false,
|
|
533
|
+
reason: current.error.code
|
|
534
|
+
};
|
|
535
|
+
const result = current.value.status === "awaitingAuthorization" ? await scoped.setup.authorize(invocation) : await scoped.setup.resume(invocation);
|
|
536
|
+
return result.ok ? { ok: true } : {
|
|
537
|
+
ok: false,
|
|
538
|
+
reason: result.error.code
|
|
539
|
+
};
|
|
540
|
+
}
|
|
541
|
+
const result = await runtime.send({ _tag: "RetryAccount" }, invocation);
|
|
540
542
|
return failure(result) ?? { ok: true };
|
|
541
543
|
}),
|
|
542
544
|
resumeSubmittedOrganization: (submission, options) => guarded(runtime, "createOrganization", options, async (invocation) => {
|
|
@@ -565,7 +567,7 @@ function CapxulIdentityProvider({ client, children }) {
|
|
|
565
567
|
if (!active) return;
|
|
566
568
|
state = runtime.snapshot();
|
|
567
569
|
}
|
|
568
|
-
if (state.phase === "authenticated" && state.profileComplete && state.account.at === "unknown") await runtime.send({ _tag: "EnsureAccount" }, { signal: controller.signal });
|
|
570
|
+
if (client._internal.accountSetup !== "explicit" && state.phase === "authenticated" && state.profileComplete && state.account.at === "unknown") await runtime.send({ _tag: "EnsureAccount" }, { signal: controller.signal });
|
|
569
571
|
}).catch(() => void 0);
|
|
570
572
|
return () => {
|
|
571
573
|
active = false;
|
|
@@ -580,7 +582,7 @@ function CapxulIdentityProvider({ client, children }) {
|
|
|
580
582
|
const account = actingAccount(state);
|
|
581
583
|
const accountChanged = previousAccount !== void 0 && account !== void 0 && account !== previousAccount;
|
|
582
584
|
previousAccount = account;
|
|
583
|
-
if (record.outcome === "applied" && (record.from !== record.to || accountChanged) && (record.to === "authenticated:claimed" || record.to === "authenticated:claimed:
|
|
585
|
+
if (record.outcome === "applied" && (record.from !== record.to || accountChanged) && (record.to === "authenticated:claimed" || record.to === "authenticated:claimed:organization")) queryClient.invalidateQueries({
|
|
584
586
|
queryKey: capxulKeys.root,
|
|
585
587
|
...accountChanged ? { refetchType: "none" } : {}
|
|
586
588
|
});
|
|
@@ -720,6 +722,7 @@ function clearClientScopedQueries(queryClient, ownsQueryClient) {
|
|
|
720
722
|
}
|
|
721
723
|
function CapxulProvider(props) {
|
|
722
724
|
const { publishableKey, client: injectedClient, requirement, signer, observability, bootstrapBaseUrl, queryClient, children } = props;
|
|
725
|
+
const accountSetup = "accountSetup" in props ? props.accountSetup : void 0;
|
|
723
726
|
const [resolvedQueryClient] = useState(() => queryClient ?? makeDefaultQueryClient());
|
|
724
727
|
const [ownsQueryClient] = useState(() => queryClient === void 0);
|
|
725
728
|
const [attempt, setAttempt] = useState(0);
|
|
@@ -731,13 +734,15 @@ function CapxulProvider(props) {
|
|
|
731
734
|
...requirement === void 0 ? {} : { requirement },
|
|
732
735
|
...signer === void 0 ? {} : { signer },
|
|
733
736
|
...observability === void 0 ? {} : { observability },
|
|
734
|
-
...bootstrapBaseUrl === void 0 ? {} : { bootstrapBaseUrl }
|
|
737
|
+
...bootstrapBaseUrl === void 0 ? {} : { bootstrapBaseUrl },
|
|
738
|
+
...accountSetup === void 0 ? {} : { accountSetup }
|
|
735
739
|
}, [
|
|
736
740
|
publishableKey,
|
|
737
741
|
requirement,
|
|
738
742
|
signer,
|
|
739
743
|
observability,
|
|
740
744
|
bootstrapBaseUrl,
|
|
745
|
+
accountSetup,
|
|
741
746
|
attempt
|
|
742
747
|
]);
|
|
743
748
|
const [ownedBootstrap, setOwnedBootstrap] = useState(null);
|
|
@@ -919,15 +924,15 @@ function CapxulOnboardingController(props) {
|
|
|
919
924
|
if (submission !== null && state.account.at === "claimed") {
|
|
920
925
|
const org = state.account.org;
|
|
921
926
|
if (org === null) return organizationForm(props, state, auth, submission);
|
|
922
|
-
if (org.
|
|
923
|
-
const retry = org.
|
|
927
|
+
if (org.observation === "error" || org.setup?.status === "failed" || org.setup?.status === "needsAttention" || org.setup?.status === "awaitingAuthorization") {
|
|
928
|
+
const retry = org.orgId === null ? (options) => auth.createOrganization(submission, options) : auth.retry;
|
|
924
929
|
return slots.organizationFailure({
|
|
925
930
|
state,
|
|
926
931
|
org,
|
|
927
|
-
|
|
932
|
+
retry
|
|
928
933
|
});
|
|
929
934
|
}
|
|
930
|
-
if (org.
|
|
935
|
+
if (org.setup?.status !== "ready" || org.observation !== "connected") return slots.organizationProgress({
|
|
931
936
|
state,
|
|
932
937
|
org
|
|
933
938
|
});
|
package/dist/index.d.mts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { A as entered, C as CreateOrganizationFailure, D as OrganizationDetails, E as InvocationOptions, F as useCapxulTransitions, M as useCapxulDestination, N as useCapxulIdentity, O as ProfileDetails, P as useCapxulSend, S as CapxulSend, T as Destination, _ as ReadyDestination, a as AuthenticationSlots, b as Slot, c as ControllerAction, d as OnboardingControllerProps, f as OrgFailure, g as ProfileSlotProps, h as PendingAuthState, i as AuthenticatedState, j as useCapxulAuth, k as SendResult, l as FaultedState, m as OtpPendingState, n as AccountProgress, o as CapxulAuthenticationController, p as OrgProgress, r as ActionResult, s as CapxulOnboardingController, t as AccountFailure, u as NavigationAction, v as RetryAction, w as CreateOrganizationSubmission, x as CapxulAuth, y as SignedOutState } from "./controllers-
|
|
1
|
+
import { A as entered, C as CreateOrganizationFailure, D as OrganizationDetails, E as InvocationOptions, F as useCapxulTransitions, M as useCapxulDestination, N as useCapxulIdentity, O as ProfileDetails, P as useCapxulSend, S as CapxulSend, T as Destination, _ as ReadyDestination, a as AuthenticationSlots, b as Slot, c as ControllerAction, d as OnboardingControllerProps, f as OrgFailure, g as ProfileSlotProps, h as PendingAuthState, i as AuthenticatedState, j as useCapxulAuth, k as SendResult, l as FaultedState, m as OtpPendingState, n as AccountProgress, o as CapxulAuthenticationController, p as OrgProgress, r as ActionResult, s as CapxulOnboardingController, t as AccountFailure, u as NavigationAction, v as RetryAction, w as CreateOrganizationSubmission, x as CapxulAuth, y as SignedOutState } from "./controllers-BMAU2kKH.mjs";
|
|
2
2
|
import { ReactNode, RefCallback } from "react";
|
|
3
3
|
import { QueryClient, UseMutationResult, UseQueryResult } from "@tanstack/react-query";
|
|
4
|
-
import { Account, AccountRequirement, ActivityAnnotation, ActivityAnnotationInput, ActivityDetail, ActivityKind, ActivityListParams, ActivityPage, ActivityPhase, ActivityRange, ActivityReference, ActorReference, AddressBookEntry, BudgetId, CapxulClient, CapxulError, CapxulResult, CapxulSigner,
|
|
4
|
+
import { Account, AccountRequirement, ActivityAnnotation, ActivityAnnotationInput, ActivityDetail, ActivityKind, ActivityListParams, ActivityPage, ActivityPhase, ActivityRange, ActivityReference, ActivitySummaryTotal, ActorReference, AddressBookEntry, AssetAmount, AssetId, BudgetId, CapxulClient, CapxulError, CapxulResult, CapxulSigner, CurrentHoldings, HostObservability, IdentityDestination, IdentityState, MemberView, Money, MoneyParseErrorReason, OrgId, OrganizationAccess, OrganizationOnboarding, OrganizationOnboardingInput, OrganizationPaymentBatchInput, OrganizationPaymentInput, PartyId, Payment, PaymentDirection, PaymentDocumentDownload, PaymentDocumentReadRef, PaymentDocumentRef, PaymentDocumentRender, PaymentStatus, PaymentTiming, PaymentType, PaymentsPayInput, PayrollGroupId, PayrollGroupInput, PayrollRunId, PayrollRunStatus, Permission, PermissionMethods, PermissionReadResult, Profile, RoleView, SubmittedPermissionExecution, isClaimed, isRestoring } from "@capxul/sdk";
|
|
5
5
|
//#region src/provider.d.ts
|
|
6
6
|
type CapxulProviderSharedProps = {
|
|
7
7
|
/** Bring your own QueryClient; otherwise the provider creates one. */
|
|
@@ -28,6 +28,11 @@ type CapxulProviderPublishableKeyProps = CapxulProviderSharedProps & {
|
|
|
28
28
|
* route cross-origin for the publishable key's allowed origins.
|
|
29
29
|
*/
|
|
30
30
|
readonly bootstrapBaseUrl?: string;
|
|
31
|
+
/**
|
|
32
|
+
* AUTH A3. Pass `"explicit"` on `/connect` so restore and OTP do not write
|
|
33
|
+
* Profile, Account, or invitations. Default automatic.
|
|
34
|
+
*/
|
|
35
|
+
readonly accountSetup?: "automatic" | "explicit";
|
|
31
36
|
};
|
|
32
37
|
/**
|
|
33
38
|
* Node / server / test path — a pre-built client is supplied; lifecycle stays
|
|
@@ -77,7 +82,7 @@ declare function useCapxulAccountBalance(options?: UseCapxulAccountBalanceOption
|
|
|
77
82
|
//#region src/hooks/use-capxul-account-fund.d.ts
|
|
78
83
|
type UseCapxulAccountFundReturn = UseMutationResult<{
|
|
79
84
|
readonly txHash: string;
|
|
80
|
-
}, CapxulError,
|
|
85
|
+
}, CapxulError, AssetAmount>;
|
|
81
86
|
declare function useCapxulAccountFund(): UseCapxulAccountFundReturn;
|
|
82
87
|
//#endregion
|
|
83
88
|
//#region src/hooks/use-capxul-money.d.ts
|
|
@@ -143,7 +148,7 @@ declare function useCapxulHoldings(params?: UseCapxulHoldingsParams): UseQueryRe
|
|
|
143
148
|
* List the Organizations that the current user can access. Binds directly to
|
|
144
149
|
* the locked `capxul.orgs()` SDK method.
|
|
145
150
|
*/
|
|
146
|
-
type UseCapxulOrgsReturn = UseQueryResult<readonly
|
|
151
|
+
type UseCapxulOrgsReturn = UseQueryResult<readonly OrganizationAccess[], CapxulError>;
|
|
147
152
|
type UseCapxulOrgsOptions = {
|
|
148
153
|
/**
|
|
149
154
|
* Gate the query on auth readiness. `client.orgs()` is a session-scoped
|
|
@@ -194,29 +199,11 @@ declare function useCapxulOrgTreasury(orgId: OrgId | undefined, options?: UseCap
|
|
|
194
199
|
//#region src/hooks/use-capxul-create-org.d.ts
|
|
195
200
|
/**
|
|
196
201
|
* Create an Organization. Binds directly to the
|
|
197
|
-
* `
|
|
202
|
+
* `onboarding.completeOrganization(input)` SDK method. On success, invalidates the org list.
|
|
198
203
|
*/
|
|
199
|
-
type UseCapxulCreateOrgReturn = UseMutationResult<
|
|
204
|
+
type UseCapxulCreateOrgReturn = UseMutationResult<OrganizationOnboarding, CapxulError, OrganizationOnboardingInput>;
|
|
200
205
|
declare function useCapxulCreateOrg(): UseCapxulCreateOrgReturn;
|
|
201
206
|
//#endregion
|
|
202
|
-
//#region src/hooks/use-capxul-invite-member.d.ts
|
|
203
|
-
/**
|
|
204
|
-
* R06 (#1964): `options` is the browser attempt the caller captured before the
|
|
205
|
-
* person pressed Send. It reaches the SDK operation unchanged, so the durable
|
|
206
|
-
* `org_invite_sent` and the later `org_invite_progressed` carry that attempt's
|
|
207
|
-
* correlation. Absent, the invitation keeps its own invocation context.
|
|
208
|
-
*/
|
|
209
|
-
type UseCapxulInviteMemberInput = InviteMemberInput & {
|
|
210
|
-
readonly options?: InvocationOptions;
|
|
211
|
-
};
|
|
212
|
-
/**
|
|
213
|
-
* Invite a member to an Organization by email. The hook uses the closed-over `orgId`.
|
|
214
|
-
* It binds directly to
|
|
215
|
-
* `capxul.org(orgId).invite(input)`. On success, invalidates the member list.
|
|
216
|
-
*/
|
|
217
|
-
type UseCapxulInviteMemberReturn = UseMutationResult<MemberView, CapxulError, UseCapxulInviteMemberInput>;
|
|
218
|
-
declare function useCapxulInviteMember(orgId: OrgId | undefined): UseCapxulInviteMemberReturn;
|
|
219
|
-
//#endregion
|
|
220
207
|
//#region src/headless/journey/journey-state.d.ts
|
|
221
208
|
type OnboardingIntent = "personal" | "organization";
|
|
222
209
|
type OnboardingStep = "profile" | "organization" | "provisioning";
|
|
@@ -456,7 +443,7 @@ interface CapxulContactsProps {
|
|
|
456
443
|
readonly onFailed: (error: CapxulError, options?: InvocationOptions) => void;
|
|
457
444
|
readonly children: ReactNode;
|
|
458
445
|
}
|
|
459
|
-
declare function Root$
|
|
446
|
+
declare function Root$7({ actor, onAdded, onFailed, children }: CapxulContactsProps): import("react/jsx-runtime").JSX.Element;
|
|
460
447
|
declare function Summary$3({ children }: {
|
|
461
448
|
readonly children: (slice: ContactsSummarySlice) => ReactNode;
|
|
462
449
|
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -467,7 +454,7 @@ declare function Add({ children }: {
|
|
|
467
454
|
readonly children: (slice: ContactsAddSlice) => ReactNode;
|
|
468
455
|
}): import("react/jsx-runtime").JSX.Element;
|
|
469
456
|
/** The compound shape the app's own design system already uses (`StatusTabs`). */
|
|
470
|
-
declare const CapxulContacts: typeof Root$
|
|
457
|
+
declare const CapxulContacts: typeof Root$7 & {
|
|
471
458
|
Summary: typeof Summary$3;
|
|
472
459
|
List: typeof List;
|
|
473
460
|
Add: typeof Add;
|
|
@@ -520,8 +507,8 @@ type ActivityRow = {
|
|
|
520
507
|
*/
|
|
521
508
|
type SummaryWindow = "all" | "last30days" | ActivityRange;
|
|
522
509
|
/**
|
|
523
|
-
* Finished
|
|
524
|
-
*
|
|
510
|
+
* Finished valuation strings in the display currency. Unrated assets remain
|
|
511
|
+
* separate. All four strings are `null` and `count` is `0`
|
|
525
512
|
* when the window holds no activity — we say there is nothing, the app says it
|
|
526
513
|
* in its own words.
|
|
527
514
|
*/
|
|
@@ -532,6 +519,7 @@ interface ActivitySummarySlice {
|
|
|
532
519
|
readonly moneyOut: string | null;
|
|
533
520
|
readonly net: string | null;
|
|
534
521
|
readonly pending: string | null;
|
|
522
|
+
readonly unrated: readonly ActivitySummaryTotal[];
|
|
535
523
|
/** A count is not money, so it is not formatted. */
|
|
536
524
|
readonly count: number;
|
|
537
525
|
readonly isLoading: boolean;
|
|
@@ -595,9 +583,12 @@ interface ActivityLoadMoreSlice {
|
|
|
595
583
|
interface ActivityDetailSlice {
|
|
596
584
|
/** Current Payment state from the existing detail read; absent for Movements. */
|
|
597
585
|
readonly payment?: Pick<Payment, "status" | "execution">;
|
|
598
|
-
|
|
599
|
-
readonly
|
|
600
|
-
readonly
|
|
586
|
+
readonly documents: readonly PaymentDocumentRef[];
|
|
587
|
+
readonly selectedDocument: PaymentDocumentRef | null;
|
|
588
|
+
readonly selectDocument: (ref: PaymentDocumentReadRef) => void;
|
|
589
|
+
readonly renderDocument: () => Promise<PaymentDocumentRender>;
|
|
590
|
+
/** Return exact bytes on a deliberate action. The host owns the download URL. */
|
|
591
|
+
readonly downloadDocument: () => Promise<PaymentDocumentDownload>;
|
|
601
592
|
readonly isOpeningDocument: boolean;
|
|
602
593
|
readonly memo: string;
|
|
603
594
|
readonly setMemo: (text: string) => void;
|
|
@@ -637,7 +628,7 @@ interface CapxulActivityProps {
|
|
|
637
628
|
readonly pageSize?: number;
|
|
638
629
|
readonly children: ReactNode;
|
|
639
630
|
}
|
|
640
|
-
declare function Root$
|
|
631
|
+
declare function Root$6({ actor, pageSize, children }: CapxulActivityProps): import("react/jsx-runtime").JSX.Element;
|
|
641
632
|
/**
|
|
642
633
|
* The one part that holds a query rather than reading the engine's: it takes a
|
|
643
634
|
* `window` prop, and two placements can ask for different windows, so a single
|
|
@@ -668,7 +659,7 @@ declare function Export({ children }: {
|
|
|
668
659
|
readonly children: (slice: ActivityExportSlice) => ReactNode;
|
|
669
660
|
}): import("react/jsx-runtime").JSX.Element;
|
|
670
661
|
/** The compound shape the app's own design system already uses (`StatusTabs`). */
|
|
671
|
-
declare const CapxulActivity: typeof Root$
|
|
662
|
+
declare const CapxulActivity: typeof Root$6 & {
|
|
672
663
|
Summary: typeof Summary$2;
|
|
673
664
|
Filters: typeof Filters;
|
|
674
665
|
Search: typeof Search;
|
|
@@ -703,7 +694,7 @@ type SentPayment = {
|
|
|
703
694
|
/** The backend payment row. */
|
|
704
695
|
readonly payment: Payment;
|
|
705
696
|
/** What we parsed and sent — `.value` is the comma-stripped major-unit string. */
|
|
706
|
-
readonly amount:
|
|
697
|
+
readonly amount: AssetAmount;
|
|
707
698
|
/** The trimmed text the person typed — the app's success toast interpolates it. */
|
|
708
699
|
readonly recipient: string;
|
|
709
700
|
};
|
|
@@ -711,7 +702,7 @@ type SentPayment = {
|
|
|
711
702
|
* Refusal CODES, never sentences (#1447 ruling 8). The app maps each code to
|
|
712
703
|
* the words it already prints; no English refusal string ships from here.
|
|
713
704
|
*/
|
|
714
|
-
type CapxulSendMoneyBlockedReason = "signer-not-ready" | "amount-invalid" | "recipient-unresolved" | "no-source" | "no-asset";
|
|
705
|
+
type CapxulSendMoneyBlockedReason = "signer-not-ready" | "amount-invalid" | "recipient-unresolved" | "no-source" | "no-asset" | "asset-unnamed";
|
|
715
706
|
/**
|
|
716
707
|
* One Budget the member can spend from — the id the payment carries, and
|
|
717
708
|
* nothing else.
|
|
@@ -736,7 +727,7 @@ interface SendMoneySourceSlice {
|
|
|
736
727
|
readonly isPending: boolean;
|
|
737
728
|
}
|
|
738
729
|
interface SendMoneyAssetOption {
|
|
739
|
-
readonly id:
|
|
730
|
+
readonly id: AssetId;
|
|
740
731
|
readonly symbol: string;
|
|
741
732
|
readonly availableDisplay: string;
|
|
742
733
|
}
|
|
@@ -771,7 +762,7 @@ interface CapxulSendMoneyProps {
|
|
|
771
762
|
readonly onFailed: (error: CapxulError) => void;
|
|
772
763
|
readonly children: ReactNode;
|
|
773
764
|
}
|
|
774
|
-
declare function Root$
|
|
765
|
+
declare function Root$5({ actor, onSent, onFailed, children }: CapxulSendMoneyProps): import("react/jsx-runtime").JSX.Element;
|
|
775
766
|
declare function Source({ children }: {
|
|
776
767
|
readonly children: (slice: SendMoneySourceSlice) => ReactNode;
|
|
777
768
|
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -788,7 +779,7 @@ declare function Actions$1({ children }: {
|
|
|
788
779
|
readonly children: (slice: SendMoneyActionsSlice) => ReactNode;
|
|
789
780
|
}): import("react/jsx-runtime").JSX.Element;
|
|
790
781
|
/** The compound shape the app's own design system already uses (`StatusTabs`). */
|
|
791
|
-
declare const CapxulSendMoney: typeof Root$
|
|
782
|
+
declare const CapxulSendMoney: typeof Root$5 & {
|
|
792
783
|
Source: typeof Source;
|
|
793
784
|
Asset: typeof Asset$1;
|
|
794
785
|
Amount: typeof Amount;
|
|
@@ -820,7 +811,7 @@ interface CapxulOrgMemberProps {
|
|
|
820
811
|
readonly orgId: OrgId | string | undefined;
|
|
821
812
|
readonly children: ReactNode;
|
|
822
813
|
}
|
|
823
|
-
declare function Root$
|
|
814
|
+
declare function Root$4({ orgId, children }: CapxulOrgMemberProps): import("react/jsx-runtime").JSX.Element;
|
|
824
815
|
/**
|
|
825
816
|
* One part serves all four denial idioms the app already uses: disabled with no
|
|
826
817
|
* explanation, disabled plus a native `title`, a whole-surface swap, and
|
|
@@ -835,7 +826,7 @@ declare function Standing({ children }: {
|
|
|
835
826
|
readonly children: (slice: OrgMemberStandingSlice) => ReactNode;
|
|
836
827
|
}): import("react/jsx-runtime").JSX.Element;
|
|
837
828
|
/** The compound shape the app's own design system already uses (`StatusTabs`). */
|
|
838
|
-
declare const CapxulOrgMember: typeof Root$
|
|
829
|
+
declare const CapxulOrgMember: typeof Root$4 & {
|
|
839
830
|
Can: typeof Can;
|
|
840
831
|
Standing: typeof Standing;
|
|
841
832
|
};
|
|
@@ -849,14 +840,14 @@ type DashboardScope = {
|
|
|
849
840
|
};
|
|
850
841
|
type DashboardAccessPhase = "checking" | "error" | "redirect" | "granted";
|
|
851
842
|
/**
|
|
852
|
-
* Which
|
|
843
|
+
* Which probe produced the error the screen is showing. The
|
|
853
844
|
* error code alone cannot say: a provider failure reads the same whether the
|
|
854
845
|
* session read, the membership list or the lifecycle read raised it, and a
|
|
855
846
|
* consumer that reports a displayed gate error has to keep those apart
|
|
856
847
|
* (#1963 R05-2). It names the SOURCE only; `retry` still re-runs every failed
|
|
857
848
|
* probe, exactly as before.
|
|
858
849
|
*/
|
|
859
|
-
type DashboardAccessProbe = "session" | "membership" | "lifecycle";
|
|
850
|
+
type DashboardAccessProbe = "session" | "membership" | "lifecycle" | "authority";
|
|
860
851
|
interface DashboardAccessErrorSlice {
|
|
861
852
|
readonly error: CapxulError;
|
|
862
853
|
/** The probe the surfaced error came from, in the frozen precedence order. */
|
|
@@ -871,9 +862,9 @@ interface CapxulDashboardAccessProps {
|
|
|
871
862
|
readonly scope: DashboardScope;
|
|
872
863
|
readonly children: ReactNode;
|
|
873
864
|
}
|
|
874
|
-
declare function Root$
|
|
865
|
+
declare function Root$3({ scope, children }: CapxulDashboardAccessProps): import("react/jsx-runtime").JSX.Element;
|
|
875
866
|
/** Hands nothing — today's app renders `null` here, exactly as it does now. */
|
|
876
|
-
declare function Checking({ children }: {
|
|
867
|
+
declare function Checking$1({ children }: {
|
|
877
868
|
readonly children?: ReactNode;
|
|
878
869
|
}): import("react/jsx-runtime").JSX.Element | null;
|
|
879
870
|
declare function DashboardError({ children }: {
|
|
@@ -892,8 +883,8 @@ declare function Granted({ children }: {
|
|
|
892
883
|
readonly children?: ReactNode;
|
|
893
884
|
}): import("react/jsx-runtime").JSX.Element | null;
|
|
894
885
|
/** The compound shape the app's own design system already uses (`StatusTabs`). */
|
|
895
|
-
declare const CapxulDashboardAccess: typeof Root$
|
|
896
|
-
Checking: typeof Checking;
|
|
886
|
+
declare const CapxulDashboardAccess: typeof Root$3 & {
|
|
887
|
+
Checking: typeof Checking$1;
|
|
897
888
|
Error: typeof DashboardError;
|
|
898
889
|
Redirect: typeof Redirect;
|
|
899
890
|
Granted: typeof Granted;
|
|
@@ -941,7 +932,7 @@ interface CapxulPayrollProps {
|
|
|
941
932
|
readonly orgId: OrgId | undefined;
|
|
942
933
|
readonly children: ReactNode;
|
|
943
934
|
}
|
|
944
|
-
declare function Root$
|
|
935
|
+
declare function Root$2({ orgId, children }: CapxulPayrollProps): import("react/jsx-runtime").JSX.Element;
|
|
945
936
|
declare function Summary$1({ children }: {
|
|
946
937
|
readonly children: (slice: PayrollSummarySlice) => ReactNode;
|
|
947
938
|
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -953,7 +944,7 @@ declare function Groups({ children }: {
|
|
|
953
944
|
* There is NO `.Runs` part (ruling Q6): no shipped region has the right shape
|
|
954
945
|
* for a run list, and a part without a production caller may not ship.
|
|
955
946
|
*/
|
|
956
|
-
declare const CapxulPayroll: typeof Root$
|
|
947
|
+
declare const CapxulPayroll: typeof Root$2 & {
|
|
957
948
|
Summary: typeof Summary$1;
|
|
958
949
|
Groups: typeof Groups;
|
|
959
950
|
};
|
|
@@ -975,10 +966,10 @@ interface PayrollRecipientOption {
|
|
|
975
966
|
//#region src/headless/payroll/use-payroll-run.d.ts
|
|
976
967
|
/**
|
|
977
968
|
* Refusal CODES, never sentences (ADR-0023 R1). `blockedReason` names the FIRST
|
|
978
|
-
* false fact in the fixed order
|
|
979
|
-
*
|
|
969
|
+
* false fact in the fixed order below, so the same composer state always
|
|
970
|
+
* yields the same code.
|
|
980
971
|
*/
|
|
981
|
-
type CapxulPayrollRunBlockedReason = "signer-not-ready" | "no-source" | "ambiguous-source" | "no-asset" | "no-recipients" | "amount-invalid" | "insufficient-funds";
|
|
972
|
+
type CapxulPayrollRunBlockedReason = "signer-not-ready" | "no-source" | "ambiguous-source" | "no-asset" | "no-recipients" | "amount-invalid" | "insufficient-funds" | "asset-unnamed";
|
|
982
973
|
interface PayrollRunGroupOption {
|
|
983
974
|
readonly id: PayrollGroupId;
|
|
984
975
|
readonly label: string;
|
|
@@ -1005,7 +996,7 @@ interface PayrollRunAmountEntry {
|
|
|
1005
996
|
/** True while the value is one we seeded and the employer has not edited. */
|
|
1006
997
|
readonly prefilled: boolean;
|
|
1007
998
|
/** The treasury asset's currency. Rows stay absent until this value exists. */
|
|
1008
|
-
readonly currency:
|
|
999
|
+
readonly currency: string;
|
|
1009
1000
|
}
|
|
1010
1001
|
interface PayrollRunAmountsSlice {
|
|
1011
1002
|
readonly entries: readonly PayrollRunAmountEntry[];
|
|
@@ -1058,7 +1049,7 @@ interface CapxulPayrollRunProps {
|
|
|
1058
1049
|
readonly onFailed: (error: CapxulError) => void;
|
|
1059
1050
|
readonly children: ReactNode;
|
|
1060
1051
|
}
|
|
1061
|
-
declare function Root({ orgId, prefill, onRun, onFailed, children }: CapxulPayrollRunProps): import("react/jsx-runtime").JSX.Element;
|
|
1052
|
+
declare function Root$1({ orgId, prefill, onRun, onFailed, children }: CapxulPayrollRunProps): import("react/jsx-runtime").JSX.Element;
|
|
1062
1053
|
declare function Recipients({ children }: {
|
|
1063
1054
|
readonly children: (slice: PayrollRunRecipientsSlice) => ReactNode;
|
|
1064
1055
|
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1075,7 +1066,7 @@ declare function Actions({ children }: {
|
|
|
1075
1066
|
readonly children: (slice: PayrollRunActionsSlice) => ReactNode;
|
|
1076
1067
|
}): import("react/jsx-runtime").JSX.Element;
|
|
1077
1068
|
/** The compound shape the app's own design system already uses (`StatusTabs`). */
|
|
1078
|
-
declare const CapxulPayrollRun: typeof Root & {
|
|
1069
|
+
declare const CapxulPayrollRun: typeof Root$1 & {
|
|
1079
1070
|
Recipients: typeof Recipients;
|
|
1080
1071
|
Amounts: typeof Amounts;
|
|
1081
1072
|
Asset: typeof Asset;
|
|
@@ -1083,6 +1074,64 @@ declare const CapxulPayrollRun: typeof Root & {
|
|
|
1083
1074
|
Actions: typeof Actions;
|
|
1084
1075
|
};
|
|
1085
1076
|
//#endregion
|
|
1077
|
+
//#region src/headless/client-connection/use-client-connection.d.ts
|
|
1078
|
+
interface OtpSlice {
|
|
1079
|
+
readonly email: string;
|
|
1080
|
+
readonly pending: boolean;
|
|
1081
|
+
readonly canResend: boolean;
|
|
1082
|
+
readonly verifyCode: (code: string) => Promise<void>;
|
|
1083
|
+
readonly resend: () => Promise<void>;
|
|
1084
|
+
}
|
|
1085
|
+
interface ConsentSlice {
|
|
1086
|
+
readonly verifiedEmail: string;
|
|
1087
|
+
readonly clientLabel: string;
|
|
1088
|
+
readonly scopeCodes: readonly string[];
|
|
1089
|
+
readonly purpose: "login" | "signup";
|
|
1090
|
+
readonly setupState: "not_required" | "new" | "resumable";
|
|
1091
|
+
readonly pending: boolean;
|
|
1092
|
+
readonly accept: () => Promise<void>;
|
|
1093
|
+
readonly cancel: () => Promise<void>;
|
|
1094
|
+
}
|
|
1095
|
+
interface CompleteSlice {
|
|
1096
|
+
readonly outcome: "connected";
|
|
1097
|
+
}
|
|
1098
|
+
interface FailureSlice {
|
|
1099
|
+
readonly code: string;
|
|
1100
|
+
readonly field?: string;
|
|
1101
|
+
readonly retry: () => Promise<void>;
|
|
1102
|
+
readonly cancel: () => Promise<void>;
|
|
1103
|
+
}
|
|
1104
|
+
//#endregion
|
|
1105
|
+
//#region src/headless/client-connection/client-connection.d.ts
|
|
1106
|
+
interface CapxulClientConnectionProps {
|
|
1107
|
+
readonly client: CapxulClient;
|
|
1108
|
+
readonly requestId: string;
|
|
1109
|
+
readonly children: ReactNode;
|
|
1110
|
+
}
|
|
1111
|
+
declare function Root({ client, requestId, children }: CapxulClientConnectionProps): import("react/jsx-runtime").JSX.Element;
|
|
1112
|
+
declare function Checking({ children }: {
|
|
1113
|
+
readonly children: ReactNode;
|
|
1114
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
1115
|
+
declare function Otp({ children }: {
|
|
1116
|
+
readonly children: (slice: OtpSlice) => ReactNode;
|
|
1117
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
1118
|
+
declare function Consent({ children }: {
|
|
1119
|
+
readonly children: (slice: ConsentSlice) => ReactNode;
|
|
1120
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
1121
|
+
declare function Complete({ children }: {
|
|
1122
|
+
readonly children: (slice: CompleteSlice) => ReactNode;
|
|
1123
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
1124
|
+
declare function Failure({ children }: {
|
|
1125
|
+
readonly children: (slice: FailureSlice) => ReactNode;
|
|
1126
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
1127
|
+
declare const CapxulClientConnection: typeof Root & {
|
|
1128
|
+
Checking: typeof Checking;
|
|
1129
|
+
Otp: typeof Otp;
|
|
1130
|
+
Consent: typeof Consent;
|
|
1131
|
+
Complete: typeof Complete;
|
|
1132
|
+
Failure: typeof Failure;
|
|
1133
|
+
};
|
|
1134
|
+
//#endregion
|
|
1086
1135
|
//#region src/internal/reactivity-keys.d.ts
|
|
1087
1136
|
declare const capxulKeys: {
|
|
1088
1137
|
root: readonly ["capxul"];
|
|
@@ -1113,4 +1162,4 @@ declare const capxulKeys: {
|
|
|
1113
1162
|
payment: (paymentId: string | undefined) => readonly ["capxul", "payments", string];
|
|
1114
1163
|
};
|
|
1115
1164
|
//#endregion
|
|
1116
|
-
export { type AccountFailure, type AccountProgress, type ActionResult, type ActivityDetailSlice, type ActivityExportSlice, type ActivityFilterValues, type ActivityFiltersSlice, type ActivityLoadMoreSlice, type ActivityReceipt, type ActivityRow, type ActivityRowsSlice, type ActivitySearchSlice, type ActivitySummarySlice, type AuthenticatedState, type AuthenticationSlots, type CanReason, CapxulActivity, type CapxulActivityProps, type CapxulAuth, CapxulAuthenticationController, type CapxulBootstrapState, type CapxulBootstrapStatus, CapxulContacts, type CapxulContactsProps, CapxulDashboardAccess, type CapxulDashboardAccessProps, CapxulOnboardingController, CapxulOrgMember, type CapxulOrgMemberProps, CapxulPayroll, type CapxulPayrollProps, CapxulPayrollRun, type CapxulPayrollRunBlockedReason, type CapxulPayrollRunProps, CapxulProvider, type CapxulProviderProps, type CapxulSend, CapxulSendMoney, type CapxulSendMoneyBlockedReason, type CapxulSendMoneyProps, type Contact, type ContactRelationship, type ContactRow, type ContactsActor, type ContactsAddBlockedReason, type ContactsAddError, type ContactsAddSlice, type ContactsListOptions, type ContactsListSlice, type ContactsRefusal, type ContactsSummarySlice, type ControllerAction, type CreateOrganizationFailure, type CreateOrganizationSubmission, type CsvExport, type DashboardAccessErrorSlice, type DashboardAccessPhase, type DashboardAccessProbe, type DashboardAccessRedirectSlice, type DashboardScope, type Destination, type FaultedState, type HandleAvailability, type ImageUploadInput, type ImageUploadTarget, type InvocationOptions, type NavigationAction, type OnboardingControllerProps, type OnboardingIntent, type OnboardingJourney, type OnboardingJourneyPosition, type OnboardingOrigin, type OnboardingStep, type OrgFailure, type OrgMemberAction, type OrgMemberCanSlice, type OrgMemberStanding, type OrgMemberStandingSlice, type OrgProgress, type OrganizationDetails, type OrganizationDraft, type OtpPendingState, type PayoutDraftChain, type PayoutDraftEntry, type PayrollGroupRow, type PayrollGroupsSlice, type PayrollRecipientOption, type PayrollRunActionsSlice, type PayrollRunAmountEntry, type PayrollRunAmountsSlice, type PayrollRunAssetSlice, type PayrollRunGroupOption, type PayrollRunPrefill, type PayrollRunRecipientsSlice, type PayrollRunStatus, type PayrollRunSummarySlice, type PayrollSummarySlice, type PendingAuthState, type ProfileDetails, type ProfileDraft, type ProfileSlotProps, type ReadyDestination, type RetryAction, type SendActor, type SendMoneyActionsSlice, type SendMoneyAmountSlice, type SendMoneyAssetError, type SendMoneyAssetOption, type SendMoneyAssetSlice, type SendMoneyRecipientSlice, type SendMoneyRecipientStatus, type SendMoneySourceError, type SendMoneySourceOption, type SendMoneySourceSlice, type SendResult, type SentPayment, type SentPayrollRun, type SignedOutState, type Slot, type SummaryWindow, type UseCapxulAccountBalanceOptions, type UseCapxulAccountBalanceReturn, type UseCapxulAccountFundReturn, type UseCapxulCreateCommitmentReturn, type UseCapxulCreateOrgReturn, type UseCapxulHandleAvailabilityReturn, type UseCapxulImageUploadReturn, type
|
|
1165
|
+
export { type AccountFailure, type AccountProgress, type ActionResult, type ActivityDetailSlice, type ActivityExportSlice, type ActivityFilterValues, type ActivityFiltersSlice, type ActivityLoadMoreSlice, type ActivityReceipt, type ActivityRow, type ActivityRowsSlice, type ActivitySearchSlice, type ActivitySummarySlice, type AuthenticatedState, type AuthenticationSlots, type CanReason, CapxulActivity, type CapxulActivityProps, type CapxulAuth, CapxulAuthenticationController, type CapxulBootstrapState, type CapxulBootstrapStatus, CapxulClientConnection, type CapxulClientConnectionProps, CapxulContacts, type CapxulContactsProps, CapxulDashboardAccess, type CapxulDashboardAccessProps, CapxulOnboardingController, CapxulOrgMember, type CapxulOrgMemberProps, CapxulPayroll, type CapxulPayrollProps, CapxulPayrollRun, type CapxulPayrollRunBlockedReason, type CapxulPayrollRunProps, CapxulProvider, type CapxulProviderProps, type CapxulSend, CapxulSendMoney, type CapxulSendMoneyBlockedReason, type CapxulSendMoneyProps, type CompleteSlice as ClientConnectionCompleteSlice, type ConsentSlice as ClientConnectionConsentSlice, type FailureSlice as ClientConnectionFailureSlice, type OtpSlice as ClientConnectionOtpSlice, type Contact, type ContactRelationship, type ContactRow, type ContactsActor, type ContactsAddBlockedReason, type ContactsAddError, type ContactsAddSlice, type ContactsListOptions, type ContactsListSlice, type ContactsRefusal, type ContactsSummarySlice, type ControllerAction, type CreateOrganizationFailure, type CreateOrganizationSubmission, type CsvExport, type DashboardAccessErrorSlice, type DashboardAccessPhase, type DashboardAccessProbe, type DashboardAccessRedirectSlice, type DashboardScope, type Destination, type FaultedState, type HandleAvailability, type ImageUploadInput, type ImageUploadTarget, type InvocationOptions, type NavigationAction, type OnboardingControllerProps, type OnboardingIntent, type OnboardingJourney, type OnboardingJourneyPosition, type OnboardingOrigin, type OnboardingStep, type OrgFailure, type OrgMemberAction, type OrgMemberCanSlice, type OrgMemberStanding, type OrgMemberStandingSlice, type OrgProgress, type OrganizationDetails, type OrganizationDraft, type OtpPendingState, type PayoutDraftChain, type PayoutDraftEntry, type PayrollGroupRow, type PayrollGroupsSlice, type PayrollRecipientOption, type PayrollRunActionsSlice, type PayrollRunAmountEntry, type PayrollRunAmountsSlice, type PayrollRunAssetSlice, type PayrollRunGroupOption, type PayrollRunPrefill, type PayrollRunRecipientsSlice, type PayrollRunStatus, type PayrollRunSummarySlice, type PayrollSummarySlice, type PendingAuthState, type ProfileDetails, type ProfileDraft, type ProfileSlotProps, type ReadyDestination, type RetryAction, type SendActor, type SendMoneyActionsSlice, type SendMoneyAmountSlice, type SendMoneyAssetError, type SendMoneyAssetOption, type SendMoneyAssetSlice, type SendMoneyRecipientSlice, type SendMoneyRecipientStatus, type SendMoneySourceError, type SendMoneySourceOption, type SendMoneySourceSlice, type SendResult, type SentPayment, type SentPayrollRun, type SignedOutState, type Slot, type SummaryWindow, type UseCapxulAccountBalanceOptions, type UseCapxulAccountBalanceReturn, type UseCapxulAccountFundReturn, type UseCapxulCreateCommitmentReturn, type UseCapxulCreateOrgReturn, type UseCapxulHandleAvailabilityReturn, type UseCapxulImageUploadReturn, type UseCapxulOrgMembersOptions, type UseCapxulOrgMembersReturn, type UseCapxulOrgRolesOptions, type UseCapxulOrgRolesReturn, type UseCapxulOrgTreasuryOptions, type UseCapxulOrgTreasuryReturn, type UseCapxulOrgsReturn, type UseCapxulPayReturn, type UseCapxulPaymentReturn, type UseCapxulPaymentsReturn, type UseCapxulProfileReturn, type UseCapxulRedirectPaymentReturn, type UseCapxulUploadImageReturn, acknowledgeOnboardingDestination, activeOnboardingRecovery, capxulKeys, clearOnboardingJourney, currentOnboardingJourneyId, entered, invalidateOnboardingJourneyObservation, isClaimed, isRestoring, loadOnboardingJourney, onboardingJourneyPosition, saveOnboardingJourney, startOnboardingJourney, useCapxul, useCapxulAccountBalance, useCapxulAccountFund, useCapxulActivity, useCapxulActivityDetail, useCapxulAnnotateMovement, useCapxulAuth, useCapxulCancelPayment, useCapxulClaimPayment, useCapxulClientOrNull, useCapxulCreateCommitment, useCapxulCreateOrg, useCapxulDestination, useCapxulHandleAvailability, useCapxulHoldings, useCapxulIdentity, useCapxulImageUpload, useCapxulOrgMembers, useCapxulOrgRoles, useCapxulOrgTreasury, useCapxulOrganizationPay, useCapxulOrganizationPayBatch, useCapxulOrgs, useCapxulPay, useCapxulPayment, useCapxulPayments, useCapxulPermission, useCapxulPermissionAssign, useCapxulPermissionChange, useCapxulPermissionCreate, useCapxulPermissionReplace, useCapxulPermissionRevoke, useCapxulPermissions, useCapxulProfile, useCapxulRedirectPayment, useCapxulSend, useCapxulTransitions, useCapxulUploadImage };
|