@joai/sdk 7.0.6 → 7.0.7
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/index.d.mts +39 -10
- package/dist/index.mjs +48 -21
- package/package.json +3 -3
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _$_joai_core0 from "@joai/core";
|
|
2
|
-
import { Address, AddressCreatePayload, AddressInput, AddressType, AddressUpdatePayload, Affiliate, AffiliateTier, Agent, AgentActionHistoryEntry, AgentPrivate, AgentSettings, AgentTrustedActionRule, AiCostsResponse, Alert, ApiToken, AppEnv, AppIngestion, AppendKvEntryResult, AppointmentAvailability, AppointmentBooking, AppointmentPolicy, AppointmentRequest, Artifact, ArtifactCreatePayload, ArtifactDeliverPayload, ArtifactDelivery, ArtifactStatus, ArtifactType, ArtifactUpdatePayload, AuthUser, AuthUser as AuthUser$1, Automation, AutomationActionInput, AutomationAudiencePreview, AutomationCreatePayload, AutomationEnrollment, AutomationStats, AutomationUpdatePayload, Blueprint, BlueprintSettings, BrandBackend, BrandSiteConfig, BrandSourceConfig, CalendarStatus, Campaign, CampaignAudiencePreview, CampaignAudiencePreviewPayload, CampaignCreatePayload, CampaignRecipient, CampaignRecipientStatus, CampaignStats, CampaignUpdatePayload, Card, Cart, Cart as Cart$1, CartLine, ChangelogEntry, Character, CheckoutSnapshot, CheckoutSnapshot as CheckoutSnapshot$1, CheckoutSnapshotRequest, CommissionAgreement, Configuration, Contact, ContactActivity, ContactCreatePayload, ContactFormData, ContactRelation, ContactRelationPayload, ContactRelationUpdatePayload, Content, ContentVersion, Contract, ContractCategoryName, ContractVersion, Coupon, CouponCondition, CouponRestrictedItem, CreateContentInput, CreateHookPayload, CreateHookPayload as CreateHookPayload$1, CreateInboundHookPayload, CreateInternalHookPayload, CreateKvFieldPayload, CreateWarpLinkedHookPayload, CreateWebHookPayload, Document, EarnResponse, Element, ElementSpec, ElementVariation, EmbedStatus, Entity, Flow, Fulfillment, FulfillmentLocation, FulfillmentLocation as FulfillmentLocation$1, FulfillmentMethod, GamificationData, Goal, GoalCreatePayload, GuestBuyer, GuestBuyer as GuestBuyer$1, Hook, Hook as Hook$1, HookSample, HookSample as HookSample$1, HookTrigger, HookTriggerCondition, HookTriggerInput, IAppResponse, IHttpService, IRequestOptions, Inquiry, InquiryType, Integration, IntegrationType, Intent, Item, ItemCreatePayload, ItemUpdatePayload, JsonValue, KvEntryPayload, KvField, KvFieldWithEntries, Link, LinkCreatePayload, LinkStats, LinkUpdatePayload, LinkVariation, LinkVariationBatchCreatePayload, LinkVariationCreatePayload, LoyaltyAccount, LoyaltyMember, LoyaltyProgram, LoyaltyPromotion, LoyaltyReward, LoyaltyTier, LoyaltyTransaction, McpToolCall, Media, MediaAspectRatio, Meeting, MeetingJoinInfo, MeetingSpeakerAssignment, MeetingSummary, Memory, Message, MetricSource, MetricsResult, Mission, MissionCreatePayload, Notification, NotificationChannel, NotificationSetting, OfficeSnapshot, Order, Order as Order$1, OrderContext, OrderPriceMode, OrderPriceMode as OrderPriceMode$1, OrderStatus, OrderStatus as OrderStatus$1, OrderType, PaginatedResponse, Pass, PatchContentInput, PaymentAccount, PaymentAccountOnboarding, PaymentProvider, Plan, PlanFeature, Product, Product as Product$1, ProductRelation, ProductVariation, ProgramSettings, Project, ProjectExportResponse, ProjectInputAssistIntent, ProjectInputAssistResponse, ProjectMutation, ProjectOutputPreset, ProjectOutputType, ProjectStudioHistoryEntry, Proposal, ProposalAction, ProposalPollOption, PublicFormResults, PurchaseResult, RampProviderInfo, Reactions, RedeemResponse, Reminder, Return, ReturnStatus, Room, RoomKind, Segment, SegmentCountPayload, SegmentCountResult, SegmentCreatePayload, Service, SetKvEntryResult, SharedSocialPost, ShippingRate, ShippingRate as ShippingRate$1, ShippingZone, Shortcut, Site, SiteBrand, SiteType, Skill, SkillScopeValue, SocialAuthProvider, SocialBot, SocialPlatform, SocialPost, SocialPostConnection, SocialPostCreatePayload, SocialPostGenerateCaptionPayload, SocialPostGeneratedCaption, SocialPostPlatform, SocialPostStatus, SocialPostUpdatePayload, StampResponse, StoreAgent, StoreData, StorePriceTier, StorePurchaseResult, Subscription, Swarm, Tag, TagType, Task, Team, TeamAccessConfig, TeamCategory, TeamEarning, TeamEarningsBalance, TeamFeature, TeamFeatureUsage, TeamMember, TeamMeta, TeamOrderStats, TeamPayout, TeamPayoutAddress, TeamPrivate, TeamUsage, TerminalConnectionToken, TerminalPaymentIntent, ToggleKvFieldResult, TranslatableValue, Update, UpdateCreatePayload, UpdateRelation, UpdateStats, UpdateType, UpdateUpdatePayload, Upgrade, UpgradeStatus, UserPrivate, UserRole, UserSettings, VolumePrice, WarpBackend, WarpBackendStatus, WarpExecutionBackend, WebHookTriggerEvent, WorkspaceCloudFile, WorkspaceInfo, XIntegrationStatus } from "@joai/core";
|
|
2
|
+
import { Address, AddressCreatePayload, AddressInput, AddressType, AddressUpdatePayload, Affiliate, AffiliateTier, Agent, AgentActionHistoryEntry, AgentPrivate, AgentSettings, AgentTrustedActionRule, AiCostsResponse, Alert, ApiToken, AppEnv, AppIngestion, AppendKvEntryResult, AppointmentAvailability, AppointmentBooking, AppointmentPolicy, AppointmentPolicyUpsert, AppointmentRequest, Artifact, ArtifactCreatePayload, ArtifactDeliverPayload, ArtifactDelivery, ArtifactStatus, ArtifactType, ArtifactUpdatePayload, AuthUser, AuthUser as AuthUser$1, Automation, AutomationActionInput, AutomationAudiencePreview, AutomationCreatePayload, AutomationEnrollment, AutomationStats, AutomationUpdatePayload, Blueprint, BlueprintSettings, BrandBackend, BrandSiteConfig, BrandSourceConfig, CalendarStatus, Campaign, CampaignAudiencePreview, CampaignAudiencePreviewPayload, CampaignCreatePayload, CampaignRecipient, CampaignRecipientStatus, CampaignStats, CampaignUpdatePayload, Card, Cart, Cart as Cart$1, CartLine, ChangelogEntry, Character, CheckoutSnapshot, CheckoutSnapshot as CheckoutSnapshot$1, CheckoutSnapshotRequest, CommissionAgreement, Configuration, Contact, ContactActivity, ContactCreatePayload, ContactFormData, ContactRelation, ContactRelationPayload, ContactRelationUpdatePayload, Content, ContentVersion, Contract, ContractCategoryName, ContractVersion, Coupon, CouponCondition, CouponRestrictedItem, CreateContentInput, CreateHookPayload, CreateHookPayload as CreateHookPayload$1, CreateInboundHookPayload, CreateInternalHookPayload, CreateKvFieldPayload, CreateWarpLinkedHookPayload, CreateWebHookPayload, Document, EarnResponse, Element, ElementSpec, ElementVariation, EmbedStatus, Entity, Flow, Fulfillment, FulfillmentLocation, FulfillmentLocation as FulfillmentLocation$1, FulfillmentMethod, GamificationData, Goal, GoalCreatePayload, GuestBuyer, GuestBuyer as GuestBuyer$1, Hook, Hook as Hook$1, HookSample, HookSample as HookSample$1, HookTrigger, HookTriggerCondition, HookTriggerInput, IAppResponse, IHttpService, IRequestOptions, Inquiry, InquiryType, Integration, IntegrationType, Intent, Item, ItemCreatePayload, ItemUpdatePayload, JsonValue, KvEntryPayload, KvField, KvFieldWithEntries, Link, LinkCreatePayload, LinkStats, LinkUpdatePayload, LinkVariation, LinkVariationBatchCreatePayload, LinkVariationCreatePayload, LoyaltyAccount, LoyaltyMember, LoyaltyProgram, LoyaltyPromotion, LoyaltyReward, LoyaltyTier, LoyaltyTransaction, McpToolCall, Media, MediaAspectRatio, Meeting, MeetingJoinInfo, MeetingSpeakerAssignment, MeetingSummary, Memory, Message, MetricSource, MetricsResult, Mission, MissionCreatePayload, Notification, NotificationChannel, NotificationSetting, OfficeSnapshot, Order, Order as Order$1, OrderContext, OrderPriceMode, OrderPriceMode as OrderPriceMode$1, OrderStatus, OrderStatus as OrderStatus$1, OrderType, PaginatedResponse, Pass, PatchContentInput, PaymentAccount, PaymentAccountOnboarding, PaymentProvider, Plan, PlanFeature, Product, Product as Product$1, ProductRelation, ProductVariation, ProgramSettings, Project, ProjectExportResponse, ProjectInputAssistIntent, ProjectInputAssistResponse, ProjectMutation, ProjectOutputPreset, ProjectOutputType, ProjectStudioHistoryEntry, Proposal, ProposalAction, ProposalPollOption, PublicFormResults, PurchaseResult, RampProviderInfo, Reactions, RedeemResponse, Reminder, Return, ReturnStatus, Room, RoomKind, Segment, SegmentCountPayload, SegmentCountResult, SegmentCreatePayload, Service, SetKvEntryResult, SharedSocialPost, ShippingCarrierOption, ShippingRate, ShippingRate as ShippingRate$1, ShippingZone, Shortcut, Site, SiteBrand, SiteType, Skill, SkillScopeValue, SocialAuthProvider, SocialBot, SocialPlatform, SocialPost, SocialPostConnection, SocialPostCreatePayload, SocialPostGenerateCaptionPayload, SocialPostGeneratedCaption, SocialPostPlatform, SocialPostStatus, SocialPostUpdatePayload, StampResponse, StoreAgent, StoreData, StorePriceTier, StorePurchaseResult, Subscription, Swarm, Tag, TagType, Task, TaxClass, Team, TeamAccessConfig, TeamCategory, TeamEarning, TeamEarningsBalance, TeamFeature, TeamFeatureUsage, TeamMember, TeamMeta, TeamOrderStats, TeamPayout, TeamPayoutAddress, TeamPrivate, TeamUsage, TerminalConnectionToken, TerminalPaymentIntent, ToggleKvFieldResult, TranslatableValue, Update, UpdateCreatePayload, UpdateRelation, UpdateStats, UpdateType, UpdateUpdatePayload, Upgrade, UpgradeStatus, UserPrivate, UserRole, UserSettings, VolumePrice, WarpBackend, WarpBackendStatus, WarpExecutionBackend, WebHookTriggerEvent, WorkspaceCloudFile, WorkspaceInfo, XIntegrationStatus } from "@joai/core";
|
|
3
3
|
import { WarpChainName, WarpClient, WarpLocale, WarpText, WarpWalletProvider } from "@joai/warps";
|
|
4
4
|
|
|
5
5
|
//#region src/resources/agents.d.ts
|
|
@@ -109,10 +109,16 @@ declare class CheckoutResource {
|
|
|
109
109
|
}
|
|
110
110
|
//#endregion
|
|
111
111
|
//#region src/commerce/fulfillments.d.ts
|
|
112
|
+
type FulfillmentUpdateInput = {
|
|
113
|
+
status?: Fulfillment['status'];
|
|
114
|
+
carrierCode?: string | null;
|
|
115
|
+
trackingNumber?: string | null;
|
|
116
|
+
};
|
|
112
117
|
declare class FulfillmentsResource {
|
|
113
118
|
private readonly http;
|
|
114
119
|
constructor(http: IHttpService);
|
|
115
120
|
list(orderId: string): Promise<_$_joai_core0.IAppResponse<Fulfillment[]>>;
|
|
121
|
+
carriers(): Promise<_$_joai_core0.IAppResponse<ShippingCarrierOption[]>>;
|
|
116
122
|
create(orderId: string, data: {
|
|
117
123
|
items: {
|
|
118
124
|
orderItemId: number;
|
|
@@ -120,10 +126,9 @@ declare class FulfillmentsResource {
|
|
|
120
126
|
}[];
|
|
121
127
|
carrierCode?: string;
|
|
122
128
|
trackingNumber?: string;
|
|
123
|
-
trackingUrl?: string;
|
|
124
129
|
status?: Fulfillment['status'];
|
|
125
130
|
}): Promise<_$_joai_core0.IAppResponse<Fulfillment>>;
|
|
126
|
-
update(orderId: string, fulfillmentId: string,
|
|
131
|
+
update(orderId: string, fulfillmentId: string, data: FulfillmentUpdateInput | Fulfillment['status']): Promise<_$_joai_core0.IAppResponse<Fulfillment>>;
|
|
127
132
|
}
|
|
128
133
|
//#endregion
|
|
129
134
|
//#region src/commerce/returns.d.ts
|
|
@@ -192,6 +197,22 @@ declare class ShippingResource {
|
|
|
192
197
|
deleteLocation(team: string, locationId: string): Promise<_$_joai_core0.IAppResponse<void>>;
|
|
193
198
|
}
|
|
194
199
|
//#endregion
|
|
200
|
+
//#region src/commerce/taxClasses.d.ts
|
|
201
|
+
type TaxClassInput = {
|
|
202
|
+
name: string;
|
|
203
|
+
rate: number;
|
|
204
|
+
isDefault?: boolean;
|
|
205
|
+
position?: number;
|
|
206
|
+
};
|
|
207
|
+
declare class TaxClassesResource {
|
|
208
|
+
private readonly http;
|
|
209
|
+
constructor(http: IHttpService);
|
|
210
|
+
list(team: string): Promise<_$_joai_core0.IAppResponse<TaxClass[]>>;
|
|
211
|
+
create(team: string, data: TaxClassInput): Promise<_$_joai_core0.IAppResponse<TaxClass>>;
|
|
212
|
+
update(team: string, taxClassId: string, data: TaxClassInput): Promise<_$_joai_core0.IAppResponse<TaxClass>>;
|
|
213
|
+
delete(team: string, taxClassId: string): Promise<_$_joai_core0.IAppResponse<void>>;
|
|
214
|
+
}
|
|
215
|
+
//#endregion
|
|
195
216
|
//#region src/commerce/guest.d.ts
|
|
196
217
|
type GuestOrderAccess = {
|
|
197
218
|
orderId: string;
|
|
@@ -401,12 +422,14 @@ declare function revalidateGuestCoupon(options: {
|
|
|
401
422
|
}): Promise<RevalidateGuestCouponResult>;
|
|
402
423
|
//#endregion
|
|
403
424
|
//#region src/commerce/pickupSlotLabel.d.ts
|
|
404
|
-
|
|
425
|
+
/** Formats a pickup slot in a locale-aware 24h label. Pass timeZone when the meeting/policy provides one. */
|
|
426
|
+
declare const formatPickupSlotLabel: (iso: string, locale: string, timeZone?: string | null) => string;
|
|
405
427
|
//#endregion
|
|
406
428
|
//#region src/commerce/index.d.ts
|
|
407
429
|
declare class CommerceResource {
|
|
408
430
|
readonly checkout: CheckoutResource;
|
|
409
431
|
readonly shipping: ShippingResource;
|
|
432
|
+
readonly taxClasses: TaxClassesResource;
|
|
410
433
|
readonly fulfillments: FulfillmentsResource;
|
|
411
434
|
readonly returns: ReturnsResource;
|
|
412
435
|
constructor(http: IHttpService);
|
|
@@ -558,7 +581,7 @@ declare class AppointmentsResource {
|
|
|
558
581
|
private readonly config;
|
|
559
582
|
constructor(http: IHttpService, config: JoAiClientConfig);
|
|
560
583
|
getPolicy(): Promise<_$_joai_core0.IAppResponse<AppointmentPolicy | null>>;
|
|
561
|
-
upsertPolicy(data:
|
|
584
|
+
upsertPolicy(data: AppointmentPolicyUpsert): Promise<_$_joai_core0.IAppResponse<AppointmentPolicy>>;
|
|
562
585
|
checkAvailability(agentUuid: string, params: {
|
|
563
586
|
windowStart: string;
|
|
564
587
|
windowEnd: string;
|
|
@@ -701,7 +724,7 @@ declare class BillingResource {
|
|
|
701
724
|
orders(team: TeamPrivate | null, page?: number, filters?: {
|
|
702
725
|
contactId?: string;
|
|
703
726
|
couponId?: string;
|
|
704
|
-
}): Promise<_$_joai_core0.IAppResponse<Order$1[]>>;
|
|
727
|
+
}, perPage?: number): Promise<_$_joai_core0.IAppResponse<Order$1[]>>;
|
|
705
728
|
orderStats(team: string): Promise<_$_joai_core0.IAppResponse<TeamOrderStats>>;
|
|
706
729
|
payOrder(id: string, provider?: PaymentProvider, accessToken?: string): Promise<_$_joai_core0.IAppResponse<{
|
|
707
730
|
url: string;
|
|
@@ -901,12 +924,14 @@ declare class DocumentsResource {
|
|
|
901
924
|
blueprint?: string;
|
|
902
925
|
}): Promise<_$_joai_core0.IAppResponse<Document>>;
|
|
903
926
|
get(id: string): Promise<_$_joai_core0.IAppResponse<Document>>;
|
|
904
|
-
getShared(slug: string): Promise<_$_joai_core0.IAppResponse<Document>>;
|
|
927
|
+
getShared(slug: string, password?: string): Promise<_$_joai_core0.IAppResponse<Document>>;
|
|
905
928
|
update(id: string, data: {
|
|
906
929
|
title?: string;
|
|
907
930
|
content?: string;
|
|
908
931
|
public?: boolean;
|
|
909
932
|
archived?: boolean;
|
|
933
|
+
password?: string | null;
|
|
934
|
+
clearPassword?: boolean;
|
|
910
935
|
meta?: Record<string, unknown>;
|
|
911
936
|
}): Promise<_$_joai_core0.IAppResponse<Document>>;
|
|
912
937
|
delete(id: string): Promise<_$_joai_core0.IAppResponse<void>>;
|
|
@@ -1365,7 +1390,7 @@ declare class OfficeResource {
|
|
|
1365
1390
|
declare class OrdersResource {
|
|
1366
1391
|
private readonly http;
|
|
1367
1392
|
constructor(http: IHttpService);
|
|
1368
|
-
list(team: string): Promise<_$_joai_core0.IAppResponse<Order$1[]>>;
|
|
1393
|
+
list(team: string, page?: number, perPage?: number): Promise<_$_joai_core0.IAppResponse<Order$1[]>>;
|
|
1369
1394
|
get(id: string, accessToken?: string): Promise<_$_joai_core0.IAppResponse<Order$1>>;
|
|
1370
1395
|
create(data: {
|
|
1371
1396
|
contactId?: string;
|
|
@@ -1387,6 +1412,7 @@ declare class OrdersResource {
|
|
|
1387
1412
|
quantity: number;
|
|
1388
1413
|
name?: string;
|
|
1389
1414
|
unitPrice?: number;
|
|
1415
|
+
taxClassId?: string | null;
|
|
1390
1416
|
configuration?: Configuration;
|
|
1391
1417
|
}[];
|
|
1392
1418
|
fulfillmentMethod?: FulfillmentMethod;
|
|
@@ -1451,6 +1477,7 @@ declare class ProductsResource {
|
|
|
1451
1477
|
description?: TranslatableValue | null;
|
|
1452
1478
|
virtual?: boolean;
|
|
1453
1479
|
public?: boolean;
|
|
1480
|
+
taxClassId?: string | null;
|
|
1454
1481
|
}, teamSlug?: string): Promise<_$_joai_core0.IAppResponse<Product>>;
|
|
1455
1482
|
update(id: string, data: {
|
|
1456
1483
|
name?: TranslatableValue;
|
|
@@ -1461,6 +1488,7 @@ declare class ProductsResource {
|
|
|
1461
1488
|
active?: boolean;
|
|
1462
1489
|
public?: boolean;
|
|
1463
1490
|
virtual?: boolean;
|
|
1491
|
+
taxClassId?: string | null;
|
|
1464
1492
|
media?: string[];
|
|
1465
1493
|
}): Promise<_$_joai_core0.IAppResponse<Product>>;
|
|
1466
1494
|
delete(id: string): Promise<_$_joai_core0.IAppResponse<void>>;
|
|
@@ -1585,10 +1613,11 @@ declare class ServicesResource {
|
|
|
1585
1613
|
digital?: boolean;
|
|
1586
1614
|
public?: boolean;
|
|
1587
1615
|
bookable?: boolean;
|
|
1616
|
+
taxClassId?: string | null;
|
|
1588
1617
|
pricingModel?: string;
|
|
1589
1618
|
settings?: Record<string, unknown> | null;
|
|
1590
1619
|
}): Promise<_$_joai_core0.IAppResponse<Service>>;
|
|
1591
|
-
update(id: string, data: Partial<Pick<Service, 'name' | 'price' | 'description' | 'active' | 'digital' | 'public' | 'bookable'>> & {
|
|
1620
|
+
update(id: string, data: Partial<Pick<Service, 'name' | 'price' | 'description' | 'active' | 'digital' | 'public' | 'bookable' | 'taxClassId'>> & {
|
|
1592
1621
|
durationMinutes?: number | null;
|
|
1593
1622
|
settings?: Record<string, unknown> | null;
|
|
1594
1623
|
}): Promise<_$_joai_core0.IAppResponse<Service>>;
|
|
@@ -2359,4 +2388,4 @@ declare class DistributionResource {
|
|
|
2359
2388
|
private fetchDistribution;
|
|
2360
2389
|
}
|
|
2361
2390
|
//#endregion
|
|
2362
|
-
export { AddressesResource, AgentsResource, AlertsResource, ApiTokensResource, AppointmentsResource, type AttachedMedia, type AuthConfirmCodeRequest, type AuthConfirmCodeResponse, type AuthNativeSessionResponse, type AuthPortalSessionResponse, AuthResource, type AuthSendCodeRequest, type AuthUser, AutomationsResource, type BackendWarp, type BackendWarpBrand, BillingResource, BlueprintsResource, type CacheConfig, CachedHttpService, CampaignsResource, CardsResource, type Cart, CartsResource, ChangelogResource, CharactersResource, CheckoutResource, type CheckoutSnapshot, CommerceResource, ContactsResource, ContentResource, ContractsResource, type CreateEmptyGuestCheckoutOptions, type CreateHookPayload, type CreateInboundHookPayload, type CreateInternalHookPayload, type CreateWarpLinkedHookPayload, type CreateWebHookPayload, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, type FulfillmentLocation, type FulfillmentLocationInput, FulfillmentsResource, GoalsResource, type GuestBuyer, type GuestCartAmounts, type GuestCheckoutCartItem, type GuestCheckoutClient, type GuestCheckoutDraft, GuestCheckoutError, type GuestCheckoutErrorCode, type GuestCheckoutSnapshotResult, type GuestCheckoutState, type GuestCommerceStorage, type GuestCommerceStorageOptions, type GuestCouponClient, GuestCouponError, type GuestCouponErrorCode, type GuestCouponPreview, type GuestOrderAccess, type Hook, type HookSample, type HookTrigger, type HookTriggerCondition, type HookTriggerInput, HooksResource, IngestionsResource, InquiriesResource, IntegrationsResource, IntentsResource, type ItemListParams, ItemsResource, JoAiClient, type JoAiClientConfig, KvResource, LinksResource, LoyaltyResource, McpResource, type MediaUploadType, MeetingsResource, MemoriesResource, MessagesResource, MetricsResource, MissionsResource, NotificationsResource, OfficeResource, type OpenPortalSessionOptions, type OpeningHoursEntry, type OpeningHoursFormatOptions, type Order, type OrderPriceMode, type OrderStatus, OrdersResource, PersonaResource, type PlaceCheckoutOrderRequest, type PlaceGuestCheckoutOrderResult, type Product, type ProductVariation, ProductsResource, ProjectsResource, RemindersResource, ReturnsResource, type RevalidateGuestCouponResult, SegmentsResource, ServicesResource, type ShippingRate, type ShippingRateInput, ShippingResource, type ShippingZoneInput, ShortcutsResource, SitesResource, SkillsResource, SocialPostsResource, StatsResource, StoreResource, SubscriptionsResource, SwarmsResource, TagsResource, TasksResource, type TeamInviteInfo, TeamsResource, UpdatesResource, UpgradesResource, UsersResource, VoiceResource, WalletsResource, WarpsResource, type WebHookTriggerEvent, WorkspaceResource, assertGuestCheckoutReady, assertGuestPickupSlotReady, buildGuestCheckoutSnapshotRequest, buildGuestOrderReturnUrl, completePortalSession, createClient, createEmptyGuestCheckoutState, createGuestCheckoutSnapshot, createGuestCommerceStorage, formatOpeningHours, formatPickupSlotLabel, getAuthFragmentToken, guestCartAmounts, guestCouponMessageFromErrors, isAllowedRedirectUrl, isGuestCheckoutError, isGuestCouponError, isPortalCallbackUrl, openPortalSession, placeGuestCheckoutOrder, readGuestOrderReturnAccess, revalidateGuestCoupon, sanitizePortalCallbackUrl, stripGuestOrderReturnToken, toGuestCheckoutDraft, validateGuestCoupon };
|
|
2391
|
+
export { AddressesResource, AgentsResource, AlertsResource, ApiTokensResource, AppointmentsResource, type AttachedMedia, type AuthConfirmCodeRequest, type AuthConfirmCodeResponse, type AuthNativeSessionResponse, type AuthPortalSessionResponse, AuthResource, type AuthSendCodeRequest, type AuthUser, AutomationsResource, type BackendWarp, type BackendWarpBrand, BillingResource, BlueprintsResource, type CacheConfig, CachedHttpService, CampaignsResource, CardsResource, type Cart, CartsResource, ChangelogResource, CharactersResource, CheckoutResource, type CheckoutSnapshot, CommerceResource, ContactsResource, ContentResource, ContractsResource, type CreateEmptyGuestCheckoutOptions, type CreateHookPayload, type CreateInboundHookPayload, type CreateInternalHookPayload, type CreateWarpLinkedHookPayload, type CreateWebHookPayload, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, type FulfillmentLocation, type FulfillmentLocationInput, FulfillmentsResource, GoalsResource, type GuestBuyer, type GuestCartAmounts, type GuestCheckoutCartItem, type GuestCheckoutClient, type GuestCheckoutDraft, GuestCheckoutError, type GuestCheckoutErrorCode, type GuestCheckoutSnapshotResult, type GuestCheckoutState, type GuestCommerceStorage, type GuestCommerceStorageOptions, type GuestCouponClient, GuestCouponError, type GuestCouponErrorCode, type GuestCouponPreview, type GuestOrderAccess, type Hook, type HookSample, type HookTrigger, type HookTriggerCondition, type HookTriggerInput, HooksResource, IngestionsResource, InquiriesResource, IntegrationsResource, IntentsResource, type ItemListParams, ItemsResource, JoAiClient, type JoAiClientConfig, KvResource, LinksResource, LoyaltyResource, McpResource, type MediaUploadType, MeetingsResource, MemoriesResource, MessagesResource, MetricsResource, MissionsResource, NotificationsResource, OfficeResource, type OpenPortalSessionOptions, type OpeningHoursEntry, type OpeningHoursFormatOptions, type Order, type OrderPriceMode, type OrderStatus, OrdersResource, PersonaResource, type PlaceCheckoutOrderRequest, type PlaceGuestCheckoutOrderResult, type Product, type ProductVariation, ProductsResource, ProjectsResource, RemindersResource, ReturnsResource, type RevalidateGuestCouponResult, SegmentsResource, ServicesResource, type ShippingRate, type ShippingRateInput, ShippingResource, type ShippingZoneInput, ShortcutsResource, SitesResource, SkillsResource, SocialPostsResource, StatsResource, StoreResource, SubscriptionsResource, SwarmsResource, TagsResource, TasksResource, type TaxClassInput, TaxClassesResource, type TeamInviteInfo, TeamsResource, UpdatesResource, UpgradesResource, UsersResource, VoiceResource, WalletsResource, WarpsResource, type WebHookTriggerEvent, WorkspaceResource, assertGuestCheckoutReady, assertGuestPickupSlotReady, buildGuestCheckoutSnapshotRequest, buildGuestOrderReturnUrl, completePortalSession, createClient, createEmptyGuestCheckoutState, createGuestCheckoutSnapshot, createGuestCommerceStorage, formatOpeningHours, formatPickupSlotLabel, getAuthFragmentToken, guestCartAmounts, guestCouponMessageFromErrors, isAllowedRedirectUrl, isGuestCheckoutError, isGuestCouponError, isPortalCallbackUrl, openPortalSession, placeGuestCheckoutOrder, readGuestOrderReturnAccess, revalidateGuestCoupon, sanitizePortalCallbackUrl, stripGuestOrderReturnToken, toGuestCheckoutDraft, validateGuestCoupon };
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { HttpService, cartLineTotal, cartPayableTotal, getApiBaseUrl, isCompleteAddressInput } from "@joai/core";
|
|
1
|
+
import { HttpService, cartLineTotal, cartPayableTotal, firstValidationMessage, getApiBaseUrl, isCompleteAddressInput, validationMessageFor } from "@joai/core";
|
|
2
2
|
import { WarpClient } from "@joai/warps";
|
|
3
3
|
//#region src/resources/agents.ts
|
|
4
4
|
var AgentsResource = class {
|
|
@@ -162,11 +162,15 @@ var FulfillmentsResource = class {
|
|
|
162
162
|
list(orderId) {
|
|
163
163
|
return this.http.get(`orders/${orderId}/fulfillments`);
|
|
164
164
|
}
|
|
165
|
+
carriers() {
|
|
166
|
+
return this.http.get("shipping-carriers");
|
|
167
|
+
}
|
|
165
168
|
create(orderId, data) {
|
|
166
169
|
return this.http.post(`orders/${orderId}/fulfillments`, data);
|
|
167
170
|
}
|
|
168
|
-
update(orderId, fulfillmentId,
|
|
169
|
-
|
|
171
|
+
update(orderId, fulfillmentId, data) {
|
|
172
|
+
const body = typeof data === "string" ? { status: data } : data;
|
|
173
|
+
return this.http.patch(`orders/${orderId}/fulfillments/${fulfillmentId}`, body);
|
|
170
174
|
}
|
|
171
175
|
};
|
|
172
176
|
//#endregion
|
|
@@ -227,6 +231,25 @@ var ShippingResource = class {
|
|
|
227
231
|
}
|
|
228
232
|
};
|
|
229
233
|
//#endregion
|
|
234
|
+
//#region src/commerce/taxClasses.ts
|
|
235
|
+
var TaxClassesResource = class {
|
|
236
|
+
constructor(http) {
|
|
237
|
+
this.http = http;
|
|
238
|
+
}
|
|
239
|
+
list(team) {
|
|
240
|
+
return this.http.get(`teams/${team}/tax-classes`);
|
|
241
|
+
}
|
|
242
|
+
create(team, data) {
|
|
243
|
+
return this.http.post(`teams/${team}/tax-classes`, data);
|
|
244
|
+
}
|
|
245
|
+
update(team, taxClassId, data) {
|
|
246
|
+
return this.http.patch(`teams/${team}/tax-classes/${taxClassId}`, data);
|
|
247
|
+
}
|
|
248
|
+
delete(team, taxClassId) {
|
|
249
|
+
return this.http.delete(`teams/${team}/tax-classes/${taxClassId}`);
|
|
250
|
+
}
|
|
251
|
+
};
|
|
252
|
+
//#endregion
|
|
230
253
|
//#region src/commerce/guest.ts
|
|
231
254
|
const orderAccessPrefix = "joai:order-access:";
|
|
232
255
|
const checkoutKey = (namespace) => `joai:guest-checkout:${namespace}`;
|
|
@@ -518,7 +541,11 @@ async function placeGuestCheckoutOrder(options) {
|
|
|
518
541
|
serviceSlug: options.serviceSlug,
|
|
519
542
|
sendConfirmation: true
|
|
520
543
|
});
|
|
521
|
-
if (!order.ok || !order.data?.id)
|
|
544
|
+
if (!order.ok || !order.data?.id) {
|
|
545
|
+
const validationMessage = firstValidationMessage(order.errors);
|
|
546
|
+
if (validationMessage) throw new Error(validationMessage);
|
|
547
|
+
throw new GuestCheckoutError("order_failed");
|
|
548
|
+
}
|
|
522
549
|
const accessToken = typeof order.meta?.orderAccessToken === "string" ? order.meta.orderAccessToken : null;
|
|
523
550
|
if (options.pay === false) return {
|
|
524
551
|
order: order.data,
|
|
@@ -553,12 +580,7 @@ var GuestCouponError = class extends Error {
|
|
|
553
580
|
}
|
|
554
581
|
};
|
|
555
582
|
/** First `couponCode` validation message from an API error payload. */
|
|
556
|
-
const guestCouponMessageFromErrors = (errors) =>
|
|
557
|
-
if (!errors || typeof errors !== "object" || Array.isArray(errors)) return void 0;
|
|
558
|
-
const couponError = errors.couponCode;
|
|
559
|
-
if (Array.isArray(couponError) && typeof couponError[0] === "string") return couponError[0];
|
|
560
|
-
if (typeof couponError === "string") return couponError;
|
|
561
|
-
};
|
|
583
|
+
const guestCouponMessageFromErrors = (errors) => validationMessageFor(errors, "couponCode");
|
|
562
584
|
const isGuestCouponError = (error) => {
|
|
563
585
|
if (error instanceof GuestCouponError) return true;
|
|
564
586
|
return typeof error === "object" && error !== null && error.name === "GuestCouponError" && typeof error.code === "string";
|
|
@@ -628,13 +650,16 @@ async function revalidateGuestCoupon(options) {
|
|
|
628
650
|
}
|
|
629
651
|
//#endregion
|
|
630
652
|
//#region src/commerce/pickupSlotLabel.ts
|
|
653
|
+
/** Formats a pickup slot in a locale-aware 24h label. Pass timeZone when the meeting/policy provides one. */
|
|
631
654
|
const formatPickupSlotLabel = (iso, locale, timeZone) => new Intl.DateTimeFormat(locale, {
|
|
632
|
-
timeZone,
|
|
655
|
+
...timeZone ? { timeZone } : {},
|
|
633
656
|
weekday: "short",
|
|
634
|
-
day: "
|
|
635
|
-
month: "
|
|
657
|
+
day: "2-digit",
|
|
658
|
+
month: "2-digit",
|
|
659
|
+
year: "numeric",
|
|
636
660
|
hour: "2-digit",
|
|
637
|
-
minute: "2-digit"
|
|
661
|
+
minute: "2-digit",
|
|
662
|
+
hourCycle: "h23"
|
|
638
663
|
}).format(new Date(iso));
|
|
639
664
|
//#endregion
|
|
640
665
|
//#region src/commerce/index.ts
|
|
@@ -642,6 +667,7 @@ var CommerceResource = class {
|
|
|
642
667
|
constructor(http) {
|
|
643
668
|
this.checkout = new CheckoutResource(http);
|
|
644
669
|
this.shipping = new ShippingResource(http);
|
|
670
|
+
this.taxClasses = new TaxClassesResource(http);
|
|
645
671
|
this.fulfillments = new FulfillmentsResource(http);
|
|
646
672
|
this.returns = new ReturnsResource(http);
|
|
647
673
|
}
|
|
@@ -1012,8 +1038,8 @@ var BillingResource = class {
|
|
|
1012
1038
|
checkoutProduct(id) {
|
|
1013
1039
|
return this.http.get(`products/${id}`);
|
|
1014
1040
|
}
|
|
1015
|
-
orders(team, page = 1, filters = {}) {
|
|
1016
|
-
let params = `orders?page=${page}`;
|
|
1041
|
+
orders(team, page = 1, filters = {}, perPage = 10) {
|
|
1042
|
+
let params = `orders?page=${page}&perPage=${perPage}`;
|
|
1017
1043
|
if (filters.contactId) params += `&contactId=${encodeURIComponent(filters.contactId)}`;
|
|
1018
1044
|
if (filters.couponId) params += `&couponId=${encodeURIComponent(filters.couponId)}`;
|
|
1019
1045
|
return this.http.get(params, team ? { headers: { "X-Team": team.slug } } : void 0);
|
|
@@ -1365,8 +1391,9 @@ var DocumentsResource = class {
|
|
|
1365
1391
|
get(id) {
|
|
1366
1392
|
return this.http.get(`documents/${id}`);
|
|
1367
1393
|
}
|
|
1368
|
-
getShared(slug) {
|
|
1369
|
-
|
|
1394
|
+
getShared(slug, password) {
|
|
1395
|
+
const query = password ? `?password=${encodeURIComponent(password)}` : "";
|
|
1396
|
+
return this.http.get(`documents/shared/${encodeURIComponent(slug)}${query}`);
|
|
1370
1397
|
}
|
|
1371
1398
|
update(id, data) {
|
|
1372
1399
|
return this.http.put(`documents/${id}`, data);
|
|
@@ -2062,8 +2089,8 @@ var OrdersResource = class {
|
|
|
2062
2089
|
constructor(http) {
|
|
2063
2090
|
this.http = http;
|
|
2064
2091
|
}
|
|
2065
|
-
list(team) {
|
|
2066
|
-
return this.http.get(
|
|
2092
|
+
list(team, page = 1, perPage = 10) {
|
|
2093
|
+
return this.http.get(`orders?page=${page}&perPage=${perPage}`, { headers: { "X-Team": team } });
|
|
2067
2094
|
}
|
|
2068
2095
|
get(id, accessToken) {
|
|
2069
2096
|
return this.http.get(`orders/${id}`, orderAccessHeaders(accessToken));
|
|
@@ -3561,4 +3588,4 @@ var DistributionResource = class {
|
|
|
3561
3588
|
}
|
|
3562
3589
|
};
|
|
3563
3590
|
//#endregion
|
|
3564
|
-
export { AddressesResource, AgentsResource, AlertsResource, ApiTokensResource, AppointmentsResource, AuthResource, AutomationsResource, BillingResource, BlueprintsResource, CachedHttpService, CampaignsResource, CardsResource, CartsResource, ChangelogResource, CharactersResource, CheckoutResource, CommerceResource, ContactsResource, ContentResource, ContractsResource, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, FulfillmentsResource, GoalsResource, GuestCheckoutError, GuestCouponError, HooksResource, IngestionsResource, InquiriesResource, IntegrationsResource, IntentsResource, ItemsResource, JoAiClient, KvResource, LinksResource, LoyaltyResource, McpResource, MeetingsResource, MemoriesResource, MessagesResource, MetricsResource, MissionsResource, NotificationsResource, OfficeResource, OrdersResource, PersonaResource, ProductsResource, ProjectsResource, RemindersResource, ReturnsResource, SegmentsResource, ServicesResource, ShippingResource, ShortcutsResource, SitesResource, SkillsResource, SocialPostsResource, StatsResource, StoreResource, SubscriptionsResource, SwarmsResource, TagsResource, TasksResource, TeamsResource, UpdatesResource, UpgradesResource, UsersResource, VoiceResource, WalletsResource, WarpsResource, WorkspaceResource, assertGuestCheckoutReady, assertGuestPickupSlotReady, buildGuestCheckoutSnapshotRequest, buildGuestOrderReturnUrl, completePortalSession, createClient, createEmptyGuestCheckoutState, createGuestCheckoutSnapshot, createGuestCommerceStorage, formatOpeningHours, formatPickupSlotLabel, getAuthFragmentToken, guestCartAmounts, guestCouponMessageFromErrors, isAllowedRedirectUrl, isGuestCheckoutError, isGuestCouponError, isPortalCallbackUrl, openPortalSession, placeGuestCheckoutOrder, readGuestOrderReturnAccess, revalidateGuestCoupon, sanitizePortalCallbackUrl, stripGuestOrderReturnToken, toGuestCheckoutDraft, validateGuestCoupon };
|
|
3591
|
+
export { AddressesResource, AgentsResource, AlertsResource, ApiTokensResource, AppointmentsResource, AuthResource, AutomationsResource, BillingResource, BlueprintsResource, CachedHttpService, CampaignsResource, CardsResource, CartsResource, ChangelogResource, CharactersResource, CheckoutResource, CommerceResource, ContactsResource, ContentResource, ContractsResource, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, FulfillmentsResource, GoalsResource, GuestCheckoutError, GuestCouponError, HooksResource, IngestionsResource, InquiriesResource, IntegrationsResource, IntentsResource, ItemsResource, JoAiClient, KvResource, LinksResource, LoyaltyResource, McpResource, MeetingsResource, MemoriesResource, MessagesResource, MetricsResource, MissionsResource, NotificationsResource, OfficeResource, OrdersResource, PersonaResource, ProductsResource, ProjectsResource, RemindersResource, ReturnsResource, SegmentsResource, ServicesResource, ShippingResource, ShortcutsResource, SitesResource, SkillsResource, SocialPostsResource, StatsResource, StoreResource, SubscriptionsResource, SwarmsResource, TagsResource, TasksResource, TaxClassesResource, TeamsResource, UpdatesResource, UpgradesResource, UsersResource, VoiceResource, WalletsResource, WarpsResource, WorkspaceResource, assertGuestCheckoutReady, assertGuestPickupSlotReady, buildGuestCheckoutSnapshotRequest, buildGuestOrderReturnUrl, completePortalSession, createClient, createEmptyGuestCheckoutState, createGuestCheckoutSnapshot, createGuestCommerceStorage, formatOpeningHours, formatPickupSlotLabel, getAuthFragmentToken, guestCartAmounts, guestCouponMessageFromErrors, isAllowedRedirectUrl, isGuestCheckoutError, isGuestCouponError, isPortalCallbackUrl, openPortalSession, placeGuestCheckoutOrder, readGuestOrderReturnAccess, revalidateGuestCoupon, sanitizePortalCallbackUrl, stripGuestOrderReturnToken, toGuestCheckoutDraft, validateGuestCoupon };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@joai/sdk",
|
|
3
|
-
"version": "7.0.
|
|
3
|
+
"version": "7.0.7",
|
|
4
4
|
"description": "JoAi public API SDK — build with your AI agents",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -35,11 +35,11 @@
|
|
|
35
35
|
"test": "jest --config jest.config.js"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@joai/core": "^4.15.
|
|
38
|
+
"@joai/core": "^4.15.6",
|
|
39
39
|
"@joai/warps": "*"
|
|
40
40
|
},
|
|
41
41
|
"peerDependencies": {
|
|
42
|
-
"@joai/core": "^4.15.
|
|
42
|
+
"@joai/core": "^4.15.6"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"tsdown": "^0.21.0",
|