@capxul/sdk-react 4.1.3 → 4.2.0
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/{controllers-Dzk5AvfL.mjs → controllers-BPEhjKX9.mjs} +3 -1
- package/dist/{controllers-DIf8elqQ.d.mts → controllers-BWmKRFy6.d.mts} +6 -0
- package/dist/index.d.mts +21 -2
- package/dist/index.mjs +50 -6
- package/dist/testing/index.d.mts +1 -1
- package/dist/testing/index.mjs +1 -1
- package/package.json +2 -2
|
@@ -201,13 +201,15 @@ function normalizeOrganization(organization) {
|
|
|
201
201
|
if (name.length === 0) return null;
|
|
202
202
|
if (organization.bio !== void 0 && typeof organization.bio !== "string") return null;
|
|
203
203
|
if (organization.size !== void 0 && typeof organization.size !== "string") return null;
|
|
204
|
+
if (organization.logoStorageId !== void 0 && (typeof organization.logoStorageId !== "string" || organization.logoStorageId.length === 0)) return null;
|
|
204
205
|
try {
|
|
205
206
|
return {
|
|
206
207
|
name,
|
|
207
208
|
handle: toHandle(handle),
|
|
208
209
|
country: toCountryCode(organization.country),
|
|
209
210
|
...organization.bio === void 0 ? {} : { bio: organization.bio },
|
|
210
|
-
...organization.size === void 0 ? {} : { size: organization.size }
|
|
211
|
+
...organization.size === void 0 ? {} : { size: organization.size },
|
|
212
|
+
...organization.logoStorageId === void 0 ? {} : { logoStorageId: organization.logoStorageId }
|
|
211
213
|
};
|
|
212
214
|
} catch {
|
|
213
215
|
return null;
|
|
@@ -25,6 +25,12 @@ interface OrganizationDetails {
|
|
|
25
25
|
readonly country: string;
|
|
26
26
|
readonly bio?: string;
|
|
27
27
|
readonly size?: string;
|
|
28
|
+
/**
|
|
29
|
+
* #1955: the storage id `useCapxulUploadImage` handed back on file pick. The
|
|
30
|
+
* create call carries it, so the backend records the logo on the `orgs`
|
|
31
|
+
* insert instead of the app binding it afterwards.
|
|
32
|
+
*/
|
|
33
|
+
readonly logoStorageId?: string;
|
|
28
34
|
}
|
|
29
35
|
interface CreateOrganizationSubmission {
|
|
30
36
|
readonly profileDetails: ProfileDetails;
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
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-BWmKRFy6.mjs";
|
|
2
2
|
import { ReactNode, RefCallback } from "react";
|
|
3
3
|
import { QueryClient, UseMutationResult, UseQueryResult } from "@tanstack/react-query";
|
|
4
4
|
import { Account, AccountRequirement, ActivityAnnotation, ActivityAnnotationInput, ActivityDetail, ActivityKind, ActivityListParams, ActivityPage, ActivityPhase, ActivityRange, ActivityReference, ActorReference, AddressBookEntry, BudgetId, CapxulClient, CapxulError, CapxulResult, CapxulSigner, CreateOrgInput, CurrentHoldings, HostObservability, IdentityDestination, InviteMemberInput, MemberView, Money, MoneyParseErrorReason, OrgId, OrgView, OrganizationPaymentBatchInput, OrganizationPaymentInput, PartyId, Payment, PaymentDirection, PaymentDocumentRef, PaymentDocumentRender, PaymentStatus, PaymentTiming, PaymentType, PaymentsPayInput, PayrollGroupId, PayrollGroupInput, PayrollRunId, PayrollRunStatus, Permission, PermissionMethods, PermissionReadResult, Profile, RoleView, SubmittedPermissionExecution, isClaimed, isRestoring } from "@capxul/sdk";
|
|
@@ -222,6 +222,7 @@ type ProfileDraft = {
|
|
|
222
222
|
readonly withdrawalAddress: string;
|
|
223
223
|
readonly handle?: string;
|
|
224
224
|
readonly payoutAddresses?: readonly PayoutDraftEntry[];
|
|
225
|
+
readonly imageStorageId?: string;
|
|
225
226
|
};
|
|
226
227
|
type OrganizationDraft = {
|
|
227
228
|
readonly name: string;
|
|
@@ -229,6 +230,7 @@ type OrganizationDraft = {
|
|
|
229
230
|
readonly country: string;
|
|
230
231
|
readonly bio?: string;
|
|
231
232
|
readonly size?: string;
|
|
233
|
+
readonly logoStorageId?: string;
|
|
232
234
|
};
|
|
233
235
|
type OnboardingOrigin = {
|
|
234
236
|
readonly kind: "personal";
|
|
@@ -251,6 +253,8 @@ type OnboardingJourney = {
|
|
|
251
253
|
readonly organization?: OrganizationDraft;
|
|
252
254
|
readonly stableHandle?: string;
|
|
253
255
|
readonly organizationId?: string;
|
|
256
|
+
/** #1955: what the organization submit sent, kept for resume. */
|
|
257
|
+
readonly submission?: CreateOrganizationSubmission;
|
|
254
258
|
};
|
|
255
259
|
/**
|
|
256
260
|
* The app-facing projection input: where a resumed journey stands. Consumers
|
|
@@ -335,6 +339,21 @@ type UseCapxulImageUploadReturn = UseMutationResult<{
|
|
|
335
339
|
*/
|
|
336
340
|
declare function useCapxulImageUpload(): UseCapxulImageUploadReturn;
|
|
337
341
|
//#endregion
|
|
342
|
+
//#region src/headless/media/use-capxul-upload-image.d.ts
|
|
343
|
+
type UseCapxulUploadImageReturn = UseMutationResult<{
|
|
344
|
+
readonly storageId: string;
|
|
345
|
+
}, CapxulError, Blob>;
|
|
346
|
+
/**
|
|
347
|
+
* #1955: upload only. Hands back the storage id for a CREATE call to carry
|
|
348
|
+
* (`ProfileDetails.imageStorageId`, `OrganizationDetails.logoStorageId`).
|
|
349
|
+
*
|
|
350
|
+
* `useCapxulImageUpload` is upload+bind and stays as it is for the settings
|
|
351
|
+
* pages. It cannot serve onboarding: the row it binds to does not exist yet.
|
|
352
|
+
* Nothing is bound here, so nothing is invalidated either — the create call
|
|
353
|
+
* that carries the id owns the cache change.
|
|
354
|
+
*/
|
|
355
|
+
declare function useCapxulUploadImage(): UseCapxulUploadImageReturn;
|
|
356
|
+
//#endregion
|
|
338
357
|
//#region src/headless/contacts/use-contacts.d.ts
|
|
339
358
|
type ContactsActor = {
|
|
340
359
|
readonly kind: "personal";
|
|
@@ -1032,4 +1051,4 @@ declare const capxulKeys: {
|
|
|
1032
1051
|
payment: (paymentId: string | undefined) => readonly ["capxul", "payments", string];
|
|
1033
1052
|
};
|
|
1034
1053
|
//#endregion
|
|
1035
|
-
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 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 UseCapxulInviteMemberReturn, type UseCapxulOrgMembersOptions, type UseCapxulOrgMembersReturn, type UseCapxulOrgRolesOptions, type UseCapxulOrgRolesReturn, type UseCapxulOrgTreasuryOptions, type UseCapxulOrgTreasuryReturn, type UseCapxulOrgsReturn, type UseCapxulPayReturn, type UseCapxulPaymentReturn, type UseCapxulPaymentsReturn, type UseCapxulProfileReturn, type UseCapxulRedirectPaymentReturn, 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, useCapxulInviteMember, useCapxulOrgMembers, useCapxulOrgRoles, useCapxulOrgTreasury, useCapxulOrganizationPay, useCapxulOrganizationPayBatch, useCapxulOrgs, useCapxulPay, useCapxulPayment, useCapxulPayments, useCapxulPermission, useCapxulPermissionAssign, useCapxulPermissionChange, useCapxulPermissionCreate, useCapxulPermissionReplace, useCapxulPermissionRevoke, useCapxulPermissions, useCapxulProfile, useCapxulRedirectPayment, useCapxulSend, useCapxulTransitions };
|
|
1054
|
+
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 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 UseCapxulInviteMemberReturn, 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, useCapxulInviteMember, useCapxulOrgMembers, useCapxulOrgRoles, useCapxulOrgTreasury, useCapxulOrganizationPay, useCapxulOrganizationPayBatch, useCapxulOrgs, useCapxulPay, useCapxulPayment, useCapxulPayments, useCapxulPermission, useCapxulPermissionAssign, useCapxulPermissionChange, useCapxulPermissionCreate, useCapxulPermissionReplace, useCapxulPermissionRevoke, useCapxulPermissions, useCapxulProfile, useCapxulRedirectPayment, useCapxulSend, useCapxulTransitions, useCapxulUploadImage };
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { a as useCapxulAuth, c as useCapxulIdentityOrNull, d as capxulKeys, f as useCapxulClientOrNull, i as entered, l as useCapxulSend, n as CapxulOnboardingController, o as useCapxulDestination, p as useCapxul, r as CapxulProvider, s as useCapxulIdentity, t as CapxulAuthenticationController, u as useCapxulTransitions } from "./controllers-
|
|
2
|
+
import { a as useCapxulAuth, c as useCapxulIdentityOrNull, d as capxulKeys, f as useCapxulClientOrNull, i as entered, l as useCapxulSend, n as CapxulOnboardingController, o as useCapxulDestination, p as useCapxul, r as CapxulProvider, s as useCapxulIdentity, t as CapxulAuthenticationController, u as useCapxulTransitions } from "./controllers-BPEhjKX9.mjs";
|
|
3
3
|
import { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState, useSyncExternalStore } from "react";
|
|
4
4
|
import { useInfiniteQuery, useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
|
5
5
|
import { CAPXUL_OPERATIONS, CapxulError, EVM_ADDRESS_RE, Errors, HANDLE_RE, PAYMENT_DIRECTIONS, PAYMENT_STATUSES, fingerprintPaymentIntent, formatMoney, isCapxulError, isClaimed, isClaimed as isClaimed$1, isMoneyParseError, isRestoring, isRestoring as isRestoring$1, parseMoney, paymentPhase, resolveIdentityDestination, toEvmAddress, toPartyId } from "@capxul/sdk";
|
|
@@ -702,7 +702,8 @@ function isValidJourney(value) {
|
|
|
702
702
|
"profile",
|
|
703
703
|
"organization",
|
|
704
704
|
"stableHandle",
|
|
705
|
-
"organizationId"
|
|
705
|
+
"organizationId",
|
|
706
|
+
"submission"
|
|
706
707
|
])) return false;
|
|
707
708
|
if (!isBoundedId(value.ownerId)) return false;
|
|
708
709
|
if (!isBoundedId(value.journeyId) || !value.journeyId.startsWith("journey_")) return false;
|
|
@@ -712,6 +713,7 @@ function isValidJourney(value) {
|
|
|
712
713
|
if (value.origin !== void 0 && !isOrigin(value.origin)) return false;
|
|
713
714
|
if (value.profile !== void 0 && !isProfileDraft(value.profile)) return false;
|
|
714
715
|
if (value.organization !== void 0 && !isOrganizationDraft(value.organization)) return false;
|
|
716
|
+
if (value.submission !== void 0 && !isCreateOrganizationSubmission(value.submission)) return false;
|
|
715
717
|
if (value.stableHandle !== void 0 && !isDraftText(value.stableHandle)) return false;
|
|
716
718
|
if (value.organizationId !== void 0 && !isBoundedId(value.organizationId)) return false;
|
|
717
719
|
if (value.organization !== void 0 && value.stableHandle !== value.organization.handle) return false;
|
|
@@ -734,12 +736,33 @@ function isProfileDraft(value) {
|
|
|
734
736
|
"country",
|
|
735
737
|
"withdrawalAddress",
|
|
736
738
|
"handle",
|
|
737
|
-
"payoutAddresses"
|
|
739
|
+
"payoutAddresses",
|
|
740
|
+
"imageStorageId"
|
|
738
741
|
]) || !isDraftText(value.displayName) || !isDraftText(value.country) || !isDraftText(value.withdrawalAddress)) return false;
|
|
739
742
|
if (value.handle !== void 0 && !isDraftText(value.handle)) return false;
|
|
740
743
|
if (value.payoutAddresses !== void 0 && !isPayoutDraftList(value.payoutAddresses)) return false;
|
|
744
|
+
if (value.imageStorageId !== void 0 && !isBoundedId(value.imageStorageId)) return false;
|
|
741
745
|
return true;
|
|
742
746
|
}
|
|
747
|
+
/**
|
|
748
|
+
* The submitted organization (#1955). ONE validator now — the app's duplicate
|
|
749
|
+
* of it is deleted, so a submit cannot be written by two writers with
|
|
750
|
+
* disagreeing rules and then rejected here.
|
|
751
|
+
*/
|
|
752
|
+
function isCreateOrganizationSubmission(value) {
|
|
753
|
+
if (!isRecord(value) || !hasOnlyKeys(value, ["profileDetails", "organization"])) return false;
|
|
754
|
+
const { profileDetails, organization } = value;
|
|
755
|
+
if (!isRecord(profileDetails) || !hasOnlyKeys(profileDetails, [
|
|
756
|
+
"displayName",
|
|
757
|
+
"country",
|
|
758
|
+
"handle",
|
|
759
|
+
"imageStorageId",
|
|
760
|
+
"payoutAddresses"
|
|
761
|
+
]) || !isDraftText(profileDetails.displayName) || !isDraftText(profileDetails.country) || !isDraftText(profileDetails.handle)) return false;
|
|
762
|
+
if (profileDetails.imageStorageId !== void 0 && !isBoundedId(profileDetails.imageStorageId)) return false;
|
|
763
|
+
if (profileDetails.payoutAddresses !== void 0 && !isPayoutDraftList(profileDetails.payoutAddresses)) return false;
|
|
764
|
+
return isOrganizationDraft(organization);
|
|
765
|
+
}
|
|
743
766
|
function isPayoutDraftList(value) {
|
|
744
767
|
return Array.isArray(value) && value.length <= MAX_PAYOUT_DRAFT_ENTRIES && value.every((entry) => isRecord(entry) && hasOnlyKeys(entry, ["chain", "address"]) && (entry.chain === "evm" || entry.chain === "solana" || entry.chain === "starknet") && isDraftText(entry.address));
|
|
745
768
|
}
|
|
@@ -749,10 +772,12 @@ function isOrganizationDraft(value) {
|
|
|
749
772
|
"handle",
|
|
750
773
|
"country",
|
|
751
774
|
"bio",
|
|
752
|
-
"size"
|
|
775
|
+
"size",
|
|
776
|
+
"logoStorageId"
|
|
753
777
|
]) || !isDraftText(value.name) || !isDraftText(value.handle) || !isDraftText(value.country)) return false;
|
|
754
778
|
if (value.bio !== void 0 && !isDraftText(value.bio)) return false;
|
|
755
779
|
if (value.size !== void 0 && !isDraftText(value.size)) return false;
|
|
780
|
+
if (value.logoStorageId !== void 0 && !isBoundedId(value.logoStorageId)) return false;
|
|
756
781
|
return true;
|
|
757
782
|
}
|
|
758
783
|
function isDraftText(value) {
|
|
@@ -836,6 +861,23 @@ function useCapxulImageUpload() {
|
|
|
836
861
|
});
|
|
837
862
|
}
|
|
838
863
|
//#endregion
|
|
864
|
+
//#region src/headless/media/use-capxul-upload-image.ts
|
|
865
|
+
/**
|
|
866
|
+
* #1955: upload only. Hands back the storage id for a CREATE call to carry
|
|
867
|
+
* (`ProfileDetails.imageStorageId`, `OrganizationDetails.logoStorageId`).
|
|
868
|
+
*
|
|
869
|
+
* `useCapxulImageUpload` is upload+bind and stays as it is for the settings
|
|
870
|
+
* pages. It cannot serve onboarding: the row it binds to does not exist yet.
|
|
871
|
+
* Nothing is bound here, so nothing is invalidated either — the create call
|
|
872
|
+
* that carries the id owns the cache change.
|
|
873
|
+
*/
|
|
874
|
+
function useCapxulUploadImage() {
|
|
875
|
+
const client = useCapxulClientOrNull();
|
|
876
|
+
return useMutation({ mutationFn: async (blob) => {
|
|
877
|
+
return { storageId: unwrapCapxulResult(await requireBootstrappedClient(client, CAPXUL_OPERATIONS.media.uploadImage).media.uploadImage(blob)).storageId };
|
|
878
|
+
} });
|
|
879
|
+
}
|
|
880
|
+
//#endregion
|
|
839
881
|
//#region src/headless/contacts/use-contacts.ts
|
|
840
882
|
function useContacts(input) {
|
|
841
883
|
const { actor, onAdded, onFailed } = input;
|
|
@@ -2763,7 +2805,9 @@ async function executeRunDraft(candidate, work) {
|
|
|
2763
2805
|
localStorage.setItem(storageKey(draft.scope), JSON.stringify(next));
|
|
2764
2806
|
draft = next;
|
|
2765
2807
|
}, clear);
|
|
2766
|
-
|
|
2808
|
+
try {
|
|
2809
|
+
clear();
|
|
2810
|
+
} catch {}
|
|
2767
2811
|
return run;
|
|
2768
2812
|
});
|
|
2769
2813
|
} catch (cause) {
|
|
@@ -3297,4 +3341,4 @@ const CapxulPayrollRun = Object.assign(Root, {
|
|
|
3297
3341
|
Actions
|
|
3298
3342
|
});
|
|
3299
3343
|
//#endregion
|
|
3300
|
-
export { CapxulActivity, CapxulAuthenticationController, CapxulContacts, CapxulDashboardAccess, CapxulOnboardingController, CapxulOrgMember, CapxulPayroll, CapxulPayrollRun, CapxulProvider, CapxulSendMoney, 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, useCapxulInviteMember, useCapxulOrgMembers, useCapxulOrgRoles, useCapxulOrgTreasury, useCapxulOrganizationPay, useCapxulOrganizationPayBatch, useCapxulOrgs, useCapxulPay, useCapxulPayment, useCapxulPayments, useCapxulPermission, useCapxulPermissionAssign, useCapxulPermissionChange, useCapxulPermissionCreate, useCapxulPermissionReplace, useCapxulPermissionRevoke, useCapxulPermissions, useCapxulProfile, useCapxulRedirectPayment, useCapxulSend, useCapxulTransitions };
|
|
3344
|
+
export { CapxulActivity, CapxulAuthenticationController, CapxulContacts, CapxulDashboardAccess, CapxulOnboardingController, CapxulOrgMember, CapxulPayroll, CapxulPayrollRun, CapxulProvider, CapxulSendMoney, 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, useCapxulInviteMember, useCapxulOrgMembers, useCapxulOrgRoles, useCapxulOrgTreasury, useCapxulOrganizationPay, useCapxulOrganizationPayBatch, useCapxulOrgs, useCapxulPay, useCapxulPayment, useCapxulPayments, useCapxulPermission, useCapxulPermissionAssign, useCapxulPermissionChange, useCapxulPermissionCreate, useCapxulPermissionReplace, useCapxulPermissionRevoke, useCapxulPermissions, useCapxulProfile, useCapxulRedirectPayment, useCapxulSend, useCapxulTransitions, useCapxulUploadImage };
|
package/dist/testing/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as AuthenticationSlots, d as OnboardingControllerProps } from "../controllers-
|
|
1
|
+
import { a as AuthenticationSlots, d as OnboardingControllerProps } from "../controllers-BWmKRFy6.mjs";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import { ReactNode } from "react";
|
|
4
4
|
import { CapxulTestClient, CapxulTestClock, CapxulTestObservation, CreateCapxulTestClientOptions, SeedTestIdentityInput, createCapxulTestClient } from "@capxul/sdk/testing";
|
package/dist/testing/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as CapxulOnboardingController, r as CapxulProvider, t as CapxulAuthenticationController } from "../controllers-
|
|
1
|
+
import { n as CapxulOnboardingController, r as CapxulProvider, t as CapxulAuthenticationController } from "../controllers-BPEhjKX9.mjs";
|
|
2
2
|
import "react";
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
4
|
import { createCapxulTestClient } from "@capxul/sdk/testing";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@capxul/sdk-react",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.2.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/Xelmar-tech/infrastructure.git",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"access": "public"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@capxul/sdk": "4.
|
|
29
|
+
"@capxul/sdk": "4.2.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@tanstack/react-query": "^5.66.9",
|