@joai/sdk 12.0.3 → 12.1.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/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, AppointmentPolicyUpsert, AppointmentRequest, Artifact, ArtifactCreatePayload, ArtifactDeliverPayload, ArtifactDelivery, ArtifactDeliveryPreview, 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, CampaignSendTestDraftPayload, 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, FollowListParams, FollowPayload, 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, Install, InstallClaimPayload, InstallOptOutPayload, InstallRegisterPayload, Integration, IntegrationType, Intent, Item, ItemCreatePayload, ItemUpdatePayload, JsonValue, KvEntryPayload, KvField, KvFieldWithEntries, Link, LinkCreatePayload, LinkStats, LinkUpdatePayload, LinkVariation, LinkVariationBatchCreatePayload, LinkVariationCreatePayload, LoyaltyAccount, LoyaltyCollectPointInput, LoyaltyCollectResponse, LoyaltyJoinResponse, LoyaltyMember, LoyaltyProgram, LoyaltyPromotion, LoyaltyReward, LoyaltyTier, LoyaltyTransaction, LoyaltyWalletAccount, 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, ProductDetailSection, 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";
2
+ import { Address, AddressCreatePayload, AddressInput, AddressType, AddressUpdatePayload, Affiliate, AffiliateTier, Agent, AgentActionHistoryEntry, AgentPrivate, AgentSettings, AgentTrustedActionRule, AiCostsResponse, Alert, AnalyticsConfiguration, ApiToken, AppEnv, AppIngestion, AppendKvEntryResult, AppointmentAvailability, AppointmentBooking, AppointmentPolicy, AppointmentPolicyUpsert, AppointmentRequest, Artifact, ArtifactCreatePayload, ArtifactDeliverPayload, ArtifactDelivery, ArtifactDeliveryPreview, ArtifactStatus, ArtifactType, ArtifactUpdatePayload, AuthUser, AuthUser as AuthUser$1, Automation, AutomationActionInput, AutomationAudiencePreview, AutomationCreatePayload, AutomationEnrollment, AutomationStats, AutomationUpdatePayload, Blueprint, BlueprintSettings, BrandBackend, BrandSiteConfig, BrandSourceConfig, CalendarFeed, CalendarFeedInput, CalendarFeedSyncResult, CalendarStatus, Campaign, CampaignAudiencePreview, CampaignAudiencePreviewPayload, CampaignCreatePayload, CampaignRecipient, CampaignRecipientStatus, CampaignSendTestDraftPayload, CampaignStats, CampaignUpdatePayload, Card, Cart, Cart as Cart$1, CartLine, ChangelogEntry, Character, CheckoutSnapshot, CheckoutSnapshot as CheckoutSnapshot$1, CheckoutSnapshotRequest, ClientProposal, CommissionAgreement, Configuration, Contact, ContactActivity, ContactCreatePayload, ContactFormData, ContactRelation, ContactRelationPayload, ContactRelationUpdatePayload, Content, ContentValue, ContentVersion, Contract, ContractCategoryName, ContractVersion, Coupon, CouponCondition, CouponRestrictedItem, CreateContentInput, CreateHookPayload, CreateHookPayload as CreateHookPayload$1, CreateInboundHookPayload, CreateInternalHookPayload, CreateKvFieldPayload, CreateWarpLinkedHookPayload, CreateWebHookPayload, Document, EarnResponse, Element, ElementSpec, ElementType, ElementVariation, EmbedStatus, Entity, Flow, FollowListParams, FollowPayload, 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, IdentifiedSiteEvent, Inquiry, InquiryType, Install, InstallClaimPayload, InstallOptOutPayload, InstallRegisterPayload, Integration, IntegrationType, Intent, Item, ItemCreatePayload, ItemUpdatePayload, JsonValue, KvEntryPayload, KvField, KvFieldWithEntries, Link, LinkCreatePayload, LinkStats, LinkUpdatePayload, LinkVariation, LinkVariationBatchCreatePayload, LinkVariationCreatePayload, LoyaltyAccount, LoyaltyCollectPointInput, LoyaltyCollectResponse, LoyaltyJoinResponse, LoyaltyMember, LoyaltyProgram, LoyaltyPromotion, LoyaltyReward, LoyaltyTier, LoyaltyTransaction, LoyaltyWalletAccount, 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, ProductDetailSection, ProductRelation, ProductVariation, ProgramSettings, Project, ProjectExportResponse, ProjectInputAssistIntent, ProjectInputAssistResponse, ProjectMutation, ProjectOutputPreset, ProjectOutputType, ProjectStudioHistoryEntry, Proposal, ProposalAction, ProposalCreateInput, ProposalPollOption, PublicFormResults, PurchaseResult, RampProviderInfo, Reactions, RedeemResponse, Reminder, Return, ReturnStatus, Room, RoomKind, Segment, SegmentCountPayload, SegmentCountResult, SegmentCreatePayload, Service, SetKvEntryResult, SharedArtifact, SharedProposal, SharedSocialPost, ShippingCarrierOption, ShippingRate, ShippingRate as ShippingRate$1, ShippingZone, Shortcut, Site, SiteBrand, SiteType, Skill, SkillScopeValue, SocialAuthProvider, SocialBot, SocialPlatform, SocialPost, SocialPostConnection, SocialPostCreatePayload, SocialPostGenerateCaptionPayload, SocialPostGeneratedCaption, SocialPostPlatform, SocialPostScheduleSlot, 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, TemplateMode, TemplateOverrides, TemplateSpec, 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
@@ -498,6 +498,14 @@ declare class DeskResource {
498
498
  }
499
499
  //#endregion
500
500
  //#region src/resources/elements.d.ts
501
+ type ElementRenderPayload = {
502
+ values?: Record<string, ContentValue>;
503
+ mode?: TemplateMode;
504
+ };
505
+ type ElementRenderResult = {
506
+ imageBase64: string;
507
+ mimeType: string;
508
+ };
501
509
  declare class ElementsResource {
502
510
  private readonly http;
503
511
  constructor(http: IHttpService);
@@ -505,35 +513,40 @@ declare class ElementsResource {
505
513
  description?: string | null;
506
514
  imageUrl?: string | null;
507
515
  imageDataUrl?: string | null;
508
- }): Promise<_$_joai_core0.IAppResponse<ElementSpec>>;
516
+ type?: ElementType | null;
517
+ }): Promise<_$_joai_core0.IAppResponse<ElementSpec | TemplateSpec>>;
509
518
  list(team: string): Promise<_$_joai_core0.IAppResponse<Element[]>>;
510
519
  get(team: string, elementId: string): Promise<_$_joai_core0.IAppResponse<Element>>;
511
520
  create(team: string, payload: {
512
521
  name: string;
513
522
  type: string;
514
523
  description?: string | null;
515
- spec?: ElementSpec | null;
524
+ spec?: ElementSpec | TemplateSpec | null;
516
525
  media?: string[];
517
526
  }): Promise<_$_joai_core0.IAppResponse<Element>>;
518
527
  update(team: string, elementId: string, payload: {
519
528
  name?: string;
520
529
  type?: string;
521
530
  description?: string | null;
522
- spec?: ElementSpec | null;
531
+ spec?: ElementSpec | TemplateSpec | null;
523
532
  media?: string[];
524
533
  }): Promise<_$_joai_core0.IAppResponse<Element>>;
525
534
  delete(team: string, elementId: string): Promise<_$_joai_core0.IAppResponse<void>>;
526
535
  generateVariation(team: string, elementId: string, payload?: {
527
536
  label?: string | null;
528
- overrides?: ElementSpec | null;
537
+ overrides?: ElementSpec | TemplateOverrides | null;
529
538
  aspectRatio?: string | null;
539
+ mode?: TemplateMode;
530
540
  }): Promise<_$_joai_core0.IAppResponse<ElementVariation>>;
531
541
  updateVariation(team: string, elementId: string, variationId: string, payload: {
532
542
  label?: string | null;
533
- overrides?: ElementSpec | null;
543
+ overrides?: ElementSpec | TemplateOverrides | null;
534
544
  model?: string | null;
535
545
  aspectRatio?: string | null;
546
+ mode?: TemplateMode;
536
547
  }): Promise<_$_joai_core0.IAppResponse<ElementVariation>>;
548
+ render(team: string, elementId: string, payload: ElementRenderPayload): Promise<_$_joai_core0.IAppResponse<ElementRenderResult>>;
549
+ renderVariation(team: string, elementId: string, variationId: string, payload: ElementRenderPayload): Promise<_$_joai_core0.IAppResponse<ElementRenderResult>>;
537
550
  deleteVariation(team: string, elementId: string, variationId: string): Promise<_$_joai_core0.IAppResponse<void>>;
538
551
  regenerateVariation(team: string, elementId: string, variationId: string): Promise<_$_joai_core0.IAppResponse<{
539
552
  status: string;
@@ -678,7 +691,7 @@ declare class ContentResource {
678
691
  //#region src/resources/auth.d.ts
679
692
  type NativeSocialAuthProvider = Extract<SocialAuthProvider, 'apple' | 'google'>;
680
693
  type AuthSendCodeRequest = {
681
- name: string;
694
+ /** Required when the account is new or only has a placeholder name; omit when JoAi already has a usable name. */name?: string;
682
695
  phone?: string;
683
696
  email: string;
684
697
  team?: string;
@@ -751,6 +764,15 @@ declare class BillingResource {
751
764
  payOrder(id: string, provider?: PaymentProvider, accessToken?: string): Promise<_$_joai_core0.IAppResponse<{
752
765
  url: string;
753
766
  }>>;
767
+ checkout(input: {
768
+ team: string;
769
+ provider: PaymentProvider;
770
+ sku: string;
771
+ quantity?: number;
772
+ fresh?: boolean;
773
+ }): Promise<_$_joai_core0.IAppResponse<{
774
+ url: string;
775
+ }>>;
754
776
  deleteOrder(id: string): Promise<_$_joai_core0.IAppResponse<void>>;
755
777
  paymentAccount(team: string, provider: PaymentProvider): Promise<_$_joai_core0.IAppResponse<PaymentAccount>>;
756
778
  createPaymentAccountOnboarding(team: string, provider: PaymentProvider): Promise<_$_joai_core0.IAppResponse<PaymentAccountOnboarding>>;
@@ -874,6 +896,7 @@ declare class ContactsResource {
874
896
  create(payload: ContactCreatePayload): Promise<_$_joai_core0.IAppResponse<Contact>>;
875
897
  update(id: string, data: ContactFormData): Promise<_$_joai_core0.IAppResponse<Contact>>;
876
898
  delete(id: string): Promise<_$_joai_core0.IAppResponse<void>>;
899
+ merge(id: string, intoId: string): Promise<_$_joai_core0.IAppResponse<Contact>>;
877
900
  listActivities(id: string): Promise<_$_joai_core0.IAppResponse<ContactActivity[]>>;
878
901
  getTimeline<T = Record<string, JsonValue>>(id: string, page?: number): Promise<_$_joai_core0.IAppResponse<PaginatedResponse<T>>>;
879
902
  addActivity(id: string, data: {
@@ -1117,6 +1140,11 @@ declare class IntegrationsResource {
1117
1140
  confirmDevicePush(agent: string, eventIds: number[]): Promise<_$_joai_core0.IAppResponse<{
1118
1141
  confirmed: boolean;
1119
1142
  }>>;
1143
+ listCalendarFeeds(): Promise<_$_joai_core0.IAppResponse<CalendarFeed[]>>;
1144
+ createCalendarFeed(data: CalendarFeedInput): Promise<_$_joai_core0.IAppResponse<CalendarFeed>>;
1145
+ updateCalendarFeed(id: string, data: Partial<CalendarFeedInput>): Promise<_$_joai_core0.IAppResponse<CalendarFeed>>;
1146
+ deleteCalendarFeed(id: string): Promise<_$_joai_core0.IAppResponse<void>>;
1147
+ syncCalendarFeed(id: string): Promise<_$_joai_core0.IAppResponse<CalendarFeedSyncResult>>;
1120
1148
  setup(type: IntegrationType, agent: string, data?: Record<string, unknown>): Promise<_$_joai_core0.IAppResponse<Integration>>;
1121
1149
  }
1122
1150
  //#endregion
@@ -1256,7 +1284,7 @@ declare class LoyaltyResource {
1256
1284
  }): Promise<_$_joai_core0.IAppResponse<LoyaltyPromotion>>;
1257
1285
  deletePromotion(id: string): Promise<_$_joai_core0.IAppResponse<void>>;
1258
1286
  enroll(contactId: string): Promise<_$_joai_core0.IAppResponse<LoyaltyAccount>>;
1259
- getAccount(contactId: string): Promise<_$_joai_core0.IAppResponse<LoyaltyAccount>>;
1287
+ getAccount(contactId: string): Promise<_$_joai_core0.IAppResponse<LoyaltyAccount | null>>;
1260
1288
  stamp(contactId: string): Promise<_$_joai_core0.IAppResponse<StampResponse>>;
1261
1289
  earn(contactId: string, context?: {
1262
1290
  spendCents?: number;
@@ -1367,6 +1395,17 @@ declare class MetricsResource {
1367
1395
  query(params: MetricsQuery): Promise<_$_joai_core0.IAppResponse<MetricsResult>>;
1368
1396
  }
1369
1397
  //#endregion
1398
+ //#region src/resources/analytics.d.ts
1399
+ declare class AnalyticsResource {
1400
+ private readonly http;
1401
+ private readonly env;
1402
+ constructor(http: IHttpService, env: AppEnv);
1403
+ getConfiguration(siteKey: string): Promise<_$_joai_core0.IAppResponse<AnalyticsConfiguration>>;
1404
+ getScriptSnippet(siteKey: string): string;
1405
+ /** Records a CRM conversion for the caller's authenticated contact only. */
1406
+ recordEvent(siteId: string, data: IdentifiedSiteEvent): Promise<_$_joai_core0.IAppResponse<ContactActivity>>;
1407
+ }
1408
+ //#endregion
1370
1409
  //#region src/resources/meetings.d.ts
1371
1410
  declare class MeetingsResource {
1372
1411
  private readonly http;
@@ -1561,14 +1600,29 @@ declare class PersonaResource {
1561
1600
  }
1562
1601
  //#endregion
1563
1602
  //#region src/resources/products.d.ts
1603
+ type ProductsListParams = {
1604
+ includePrivate?: boolean;
1605
+ team?: string;
1606
+ page?: number;
1607
+ perPage?: number;
1608
+ search?: string;
1609
+ category?: string;
1610
+ all?: boolean;
1611
+ };
1612
+ type ProductCategories = {
1613
+ categories: string[];
1614
+ hasUntagged: boolean;
1615
+ };
1564
1616
  declare class ProductsResource {
1565
1617
  private readonly http;
1566
1618
  constructor(http: IHttpService);
1567
- list(params?: {
1568
- includePrivate?: boolean;
1619
+ list(params?: ProductsListParams): Promise<_$_joai_core0.IAppResponse<Product[]>>;
1620
+ listAll(params?: Omit<ProductsListParams, 'page' | 'perPage' | 'all'>): Promise<_$_joai_core0.IAppResponse<Product[]>>;
1621
+ categories(params?: {
1569
1622
  team?: string;
1570
- }): Promise<_$_joai_core0.IAppResponse<Product[]>>;
1623
+ }): Promise<_$_joai_core0.IAppResponse<ProductCategories>>;
1571
1624
  get(id: string): Promise<_$_joai_core0.IAppResponse<Product>>;
1625
+ getVariation(id: string): Promise<_$_joai_core0.IAppResponse<ProductVariation>>;
1572
1626
  create(data: {
1573
1627
  name: TranslatableValue;
1574
1628
  price?: number;
@@ -1663,6 +1717,16 @@ declare class ProjectsResource {
1663
1717
  exportProject(team: string, agent: string, projectId: string): Promise<_$_joai_core0.IAppResponse<ProjectExportResponse>>;
1664
1718
  }
1665
1719
  //#endregion
1720
+ //#region src/resources/proposals.d.ts
1721
+ declare class ProposalsResource {
1722
+ private readonly http;
1723
+ constructor(http: IHttpService);
1724
+ list(team: string): Promise<_$_joai_core0.IAppResponse<ClientProposal[]>>;
1725
+ create(team: string, data: ProposalCreateInput): Promise<_$_joai_core0.IAppResponse<ClientProposal>>;
1726
+ getShared(slug: string, password?: string): Promise<_$_joai_core0.IAppResponse<SharedProposal>>;
1727
+ confirm(slug: string, password: string | undefined, itemIds: string[]): Promise<_$_joai_core0.IAppResponse<SharedProposal>>;
1728
+ }
1729
+ //#endregion
1666
1730
  //#region src/resources/reminders.d.ts
1667
1731
  declare class RemindersResource {
1668
1732
  private readonly http;
@@ -1704,12 +1768,20 @@ declare class RoomsResource {
1704
1768
  }
1705
1769
  //#endregion
1706
1770
  //#region src/resources/services.d.ts
1771
+ type ServicesListParams = {
1772
+ includePrivate?: boolean;
1773
+ page?: number;
1774
+ perPage?: number;
1775
+ search?: string;
1776
+ tags?: string;
1777
+ bookable?: boolean;
1778
+ all?: boolean;
1779
+ };
1707
1780
  declare class ServicesResource {
1708
1781
  private readonly http;
1709
1782
  constructor(http: IHttpService);
1710
- list(params?: {
1711
- includePrivate?: boolean;
1712
- }): Promise<_$_joai_core0.IAppResponse<Service[]>>;
1783
+ list(params?: ServicesListParams): Promise<_$_joai_core0.IAppResponse<Service[]>>;
1784
+ listAll(params?: Omit<ServicesListParams, 'page' | 'perPage' | 'all'>): Promise<_$_joai_core0.IAppResponse<Service[]>>;
1713
1785
  get(slug: string): Promise<_$_joai_core0.IAppResponse<Service>>;
1714
1786
  store(team: string, data: {
1715
1787
  name: TranslatableValue;
@@ -1760,8 +1832,9 @@ declare class SitesResource {
1760
1832
  url?: string | null;
1761
1833
  type?: SiteType;
1762
1834
  contactId?: string | null;
1763
- metricsSource?: string | null;
1835
+ metricsSource?: MetricSource | null;
1764
1836
  metricsResource?: string | null;
1837
+ analyticsDomains?: string[];
1765
1838
  monthlyReport?: boolean;
1766
1839
  }): Promise<_$_joai_core0.IAppResponse<Site>>;
1767
1840
  provision(teamSlug: string, brandSlug: string, data?: {
@@ -1773,12 +1846,14 @@ declare class SitesResource {
1773
1846
  customDomain?: string | null;
1774
1847
  enabled?: boolean;
1775
1848
  modules?: string[];
1849
+ settings?: Record<string, unknown>;
1776
1850
  name?: string | null;
1777
1851
  url?: string | null;
1778
1852
  type?: SiteType;
1779
1853
  contactId?: string | null;
1780
- metricsSource?: string | null;
1854
+ metricsSource?: MetricSource | null;
1781
1855
  metricsResource?: string | null;
1856
+ analyticsDomains?: string[];
1782
1857
  monthlyReport?: boolean;
1783
1858
  }): Promise<_$_joai_core0.IAppResponse<Site>>;
1784
1859
  }
@@ -1991,6 +2066,7 @@ declare class ArtifactsResource {
1991
2066
  constructor(http: IHttpService);
1992
2067
  list(params?: ArtifactListParams): Promise<_$_joai_core0.IAppResponse<Artifact[]>>;
1993
2068
  get(id: string): Promise<_$_joai_core0.IAppResponse<Artifact>>;
2069
+ getShared(id: string, password?: string): Promise<_$_joai_core0.IAppResponse<SharedArtifact>>;
1994
2070
  create(payload: ArtifactCreatePayload): Promise<_$_joai_core0.IAppResponse<Artifact>>;
1995
2071
  update(id: string, payload: ArtifactUpdatePayload): Promise<_$_joai_core0.IAppResponse<Artifact>>;
1996
2072
  delete(id: string): Promise<_$_joai_core0.IAppResponse<void>>;
@@ -2098,7 +2174,10 @@ declare class UpdatesResource {
2098
2174
  upcoming?: boolean;
2099
2175
  past?: boolean;
2100
2176
  }): Promise<_$_joai_core0.IAppResponse<Update[]>>;
2101
- get(id: string): Promise<_$_joai_core0.IAppResponse<Update>>;
2177
+ /** Fetch by hashid or slug. Public for published updates when `team` is set (header or param). */
2178
+ get(id: string, params?: {
2179
+ team?: string;
2180
+ }): Promise<_$_joai_core0.IAppResponse<Update>>;
2102
2181
  create(payload: UpdateCreatePayload): Promise<_$_joai_core0.IAppResponse<Update>>;
2103
2182
  update(id: string, payload: UpdateUpdatePayload): Promise<_$_joai_core0.IAppResponse<Update>>;
2104
2183
  delete(id: string): Promise<_$_joai_core0.IAppResponse<void>>;
@@ -2111,6 +2190,11 @@ declare class SocialPostsResource {
2111
2190
  constructor(http: IHttpService);
2112
2191
  connections(): Promise<_$_joai_core0.IAppResponse<SocialPostConnection[]>>;
2113
2192
  generateCaption(payload: SocialPostGenerateCaptionPayload): Promise<_$_joai_core0.IAppResponse<SocialPostGeneratedCaption>>;
2193
+ bestTimes(params?: {
2194
+ platform?: SocialPostPlatform;
2195
+ accountId?: string | null;
2196
+ limit?: number;
2197
+ }): Promise<_$_joai_core0.IAppResponse<SocialPostScheduleSlot[]>>;
2114
2198
  list(params?: {
2115
2199
  status?: SocialPostStatus;
2116
2200
  platform?: SocialPostPlatform;
@@ -2156,6 +2240,7 @@ declare class UsersResource {
2156
2240
  updateEmail(email: string): Promise<_$_joai_core0.IAppResponse<UserPrivate>>;
2157
2241
  resendEmailVerification(): Promise<_$_joai_core0.IAppResponse<UserPrivate>>;
2158
2242
  delete(params?: DeleteUserParams): Promise<_$_joai_core0.IAppResponse<void>>;
2243
+ disconnectSocial(provider: string): Promise<_$_joai_core0.IAppResponse<UserPrivate>>;
2159
2244
  getAffiliate(code: string): Promise<_$_joai_core0.IAppResponse<Affiliate>>;
2160
2245
  getAffiliateTiers(): Promise<_$_joai_core0.IAppResponse<AffiliateTier[]>>;
2161
2246
  storeAffiliate(name: string, email: string, application: string): Promise<_$_joai_core0.IAppResponse<void>>;
@@ -2403,6 +2488,7 @@ declare class JoAiClient {
2403
2488
  readonly store: StoreResource;
2404
2489
  readonly media: MediaResource;
2405
2490
  readonly metrics: MetricsResource;
2491
+ readonly analytics: AnalyticsResource;
2406
2492
  readonly meetings: MeetingsResource;
2407
2493
  readonly memories: MemoriesResource;
2408
2494
  readonly messages: MessagesResource;
@@ -2415,6 +2501,7 @@ declare class JoAiClient {
2415
2501
  readonly privateWarps: WarpsResource;
2416
2502
  readonly products: ProductsResource;
2417
2503
  readonly projects: ProjectsResource;
2504
+ readonly proposals: ProposalsResource;
2418
2505
  readonly reminders: RemindersResource;
2419
2506
  readonly rooms: RoomsResource;
2420
2507
  readonly secrets: SecretsResource;
@@ -2511,4 +2598,4 @@ declare class DistributionResource {
2511
2598
  private fetchDistribution;
2512
2599
  }
2513
2600
  //#endregion
2514
- 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, type DeleteUserParams, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, FollowsResource, 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, InstallsResource, 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, type RecentlyViewedStorage, type RecentlyViewedStorageOptions, 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, createRecentlyViewedStorage, formatOpeningHours, formatPickupSlotLabel, getAuthFragmentToken, getRecentlyViewedSlugs, guestCartAmounts, guestCouponMessageFromErrors, isAllowedRedirectUrl, isGuestCheckoutError, isGuestCouponError, isPortalCallbackUrl, openPortalSession, placeGuestCheckoutOrder, readGuestOrderReturnAccess, revalidateGuestCoupon, sanitizePortalCallbackUrl, stripGuestOrderReturnToken, toGuestCheckoutDraft, trackRecentlyViewed, validateGuestCoupon };
2601
+ export { AddressesResource, AgentsResource, AlertsResource, AnalyticsResource, 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, type DeleteUserParams, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, FollowsResource, 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, InstallsResource, 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 ProductCategories, type ProductVariation, type ProductsListParams, ProductsResource, ProjectsResource, ProposalsResource, type RecentlyViewedStorage, type RecentlyViewedStorageOptions, RemindersResource, ReturnsResource, type RevalidateGuestCouponResult, SegmentsResource, type ServicesListParams, 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, createRecentlyViewedStorage, formatOpeningHours, formatPickupSlotLabel, getAuthFragmentToken, getRecentlyViewedSlugs, guestCartAmounts, guestCouponMessageFromErrors, isAllowedRedirectUrl, isGuestCheckoutError, isGuestCouponError, isPortalCallbackUrl, openPortalSession, placeGuestCheckoutOrder, readGuestOrderReturnAccess, revalidateGuestCoupon, sanitizePortalCallbackUrl, stripGuestOrderReturnToken, toGuestCheckoutDraft, trackRecentlyViewed, validateGuestCoupon };
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { HttpService, cartLineTotal, cartPayableTotal, firstValidationMessage, getApiBaseUrl, isCompleteAddressInput, validationMessageFor } from "@joai/core";
1
+ import { HttpService, cartLineTotal, cartPayableTotal, firstValidationMessage, getApiBaseUrl, getCortexBaseUrl, isCompleteAddressInput, validationMessageFor } from "@joai/core";
2
2
  import { WarpClient } from "@joai/warps";
3
3
  //#region src/resources/agents.ts
4
4
  var AgentsResource = class {
@@ -851,6 +851,12 @@ var ElementsResource = class {
851
851
  updateVariation(team, elementId, variationId, payload) {
852
852
  return this.http.put(`teams/${team}/elements/${elementId}/variations/${variationId}`, payload);
853
853
  }
854
+ render(team, elementId, payload) {
855
+ return this.http.post(`teams/${team}/elements/${elementId}/render`, payload);
856
+ }
857
+ renderVariation(team, elementId, variationId, payload) {
858
+ return this.http.post(`teams/${team}/elements/${elementId}/variations/${variationId}/render`, payload);
859
+ }
854
860
  deleteVariation(team, elementId, variationId) {
855
861
  return this.http.delete(`teams/${team}/elements/${elementId}/variations/${variationId}`);
856
862
  }
@@ -1123,6 +1129,10 @@ var BillingResource = class {
1123
1129
  payOrder(id, provider, accessToken) {
1124
1130
  return this.http.post(`orders/${id}/pay`, provider ? { provider } : {}, orderAccessHeaders$1(accessToken));
1125
1131
  }
1132
+ checkout(input) {
1133
+ const { team, ...payload } = input;
1134
+ return this.http.post("billing/checkout", payload, { headers: { "X-Team": team } });
1135
+ }
1126
1136
  deleteOrder(id) {
1127
1137
  return this.http.delete(`orders/${id}`);
1128
1138
  }
@@ -1337,6 +1347,9 @@ var ContactsResource = class {
1337
1347
  delete(id) {
1338
1348
  return this.http.delete(`contacts/${id}`);
1339
1349
  }
1350
+ merge(id, intoId) {
1351
+ return this.http.post(`contacts/${id}/merge`, { intoId });
1352
+ }
1340
1353
  listActivities(id) {
1341
1354
  return this.http.get(`contacts/${id}/activities`);
1342
1355
  }
@@ -1679,6 +1692,21 @@ var IntegrationsResource = class {
1679
1692
  confirmDevicePush(agent, eventIds) {
1680
1693
  return this.http.post("integrations/calendar/" + agent + "/confirm-push", { eventIds });
1681
1694
  }
1695
+ listCalendarFeeds() {
1696
+ return this.http.get("calendar/feeds");
1697
+ }
1698
+ createCalendarFeed(data) {
1699
+ return this.http.post("calendar/feeds", data);
1700
+ }
1701
+ updateCalendarFeed(id, data) {
1702
+ return this.http.patch("calendar/feeds/" + id, data);
1703
+ }
1704
+ deleteCalendarFeed(id) {
1705
+ return this.http.delete("calendar/feeds/" + id);
1706
+ }
1707
+ syncCalendarFeed(id) {
1708
+ return this.http.post("calendar/feeds/" + id + "/sync");
1709
+ }
1682
1710
  setup(type, agent, data) {
1683
1711
  return this.http.post(`integrations/${type}/${agent}/setup`, data ?? {});
1684
1712
  }
@@ -2073,6 +2101,24 @@ var MetricsResource = class {
2073
2101
  }
2074
2102
  };
2075
2103
  //#endregion
2104
+ //#region src/resources/analytics.ts
2105
+ var AnalyticsResource = class {
2106
+ constructor(http, env) {
2107
+ this.http = http;
2108
+ this.env = env;
2109
+ }
2110
+ getConfiguration(siteKey) {
2111
+ return this.http.get(`sites/analytics-config?key=${encodeURIComponent(siteKey)}`);
2112
+ }
2113
+ getScriptSnippet(siteKey) {
2114
+ return `<script async src="${getCortexBaseUrl(this.env)}/analytics/tracker.js" data-site="${siteKey}"><\/script>`;
2115
+ }
2116
+ /** Records a CRM conversion for the caller's authenticated contact only. */
2117
+ recordEvent(siteId, data) {
2118
+ return this.http.post(`sites/${siteId}/analytics/contact-events`, data);
2119
+ }
2120
+ };
2121
+ //#endregion
2076
2122
  //#region src/resources/meetings.ts
2077
2123
  var MeetingsResource = class {
2078
2124
  constructor(http, config) {
@@ -2312,12 +2358,33 @@ var ProductsResource = class {
2312
2358
  const search = new URLSearchParams();
2313
2359
  if (params?.includePrivate) search.set("includePrivate", "1");
2314
2360
  if (params?.team) search.set("team", params.team);
2361
+ if (params?.all) search.set("all", "1");
2362
+ else {
2363
+ if (params?.page) search.set("page", String(params.page));
2364
+ if (params?.perPage) search.set("perPage", String(params.perPage));
2365
+ }
2366
+ if (params?.search) search.set("search", params.search);
2367
+ if (params?.category) search.set("category", params.category);
2315
2368
  if (search.size) url += `?${search.toString()}`;
2316
2369
  return this.http.get(url);
2317
2370
  }
2371
+ listAll(params) {
2372
+ return this.list({
2373
+ ...params,
2374
+ all: true
2375
+ });
2376
+ }
2377
+ categories(params) {
2378
+ let url = "products/categories";
2379
+ if (params?.team) url += `?team=${encodeURIComponent(params.team)}`;
2380
+ return this.http.get(url);
2381
+ }
2318
2382
  get(id) {
2319
2383
  return this.http.get(`products/${id}`);
2320
2384
  }
2385
+ getVariation(id) {
2386
+ return this.http.get(`products/variations/${id}`);
2387
+ }
2321
2388
  create(data, teamSlug) {
2322
2389
  const url = teamSlug ? `products?team=${teamSlug}` : "products";
2323
2390
  return this.http.post(url, data);
@@ -2394,6 +2461,26 @@ var ProjectsResource = class {
2394
2461
  }
2395
2462
  };
2396
2463
  //#endregion
2464
+ //#region src/resources/proposals.ts
2465
+ const access = (password) => password ? { headers: { "X-Proposal-Password": password } } : void 0;
2466
+ var ProposalsResource = class {
2467
+ constructor(http) {
2468
+ this.http = http;
2469
+ }
2470
+ list(team) {
2471
+ return this.http.get("proposals", { headers: { "X-Team": team } });
2472
+ }
2473
+ create(team, data) {
2474
+ return this.http.post("proposals", data, { headers: { "X-Team": team } });
2475
+ }
2476
+ getShared(slug, password) {
2477
+ return this.http.get(`proposals/shared/${encodeURIComponent(slug)}`, access(password));
2478
+ }
2479
+ confirm(slug, password, itemIds) {
2480
+ return this.http.post(`proposals/shared/${encodeURIComponent(slug)}/confirm`, { itemIds }, access(password));
2481
+ }
2482
+ };
2483
+ //#endregion
2397
2484
  //#region src/resources/reminders.ts
2398
2485
  var RemindersResource = class {
2399
2486
  constructor(http) {
@@ -2458,9 +2545,25 @@ var ServicesResource = class {
2458
2545
  }
2459
2546
  list(params) {
2460
2547
  let url = "services";
2461
- if (params?.includePrivate) url += "?includePrivate=1";
2548
+ const search = new URLSearchParams();
2549
+ if (params?.includePrivate) search.set("includePrivate", "1");
2550
+ if (params?.all) search.set("all", "1");
2551
+ else {
2552
+ if (params?.page) search.set("page", String(params.page));
2553
+ if (params?.perPage) search.set("perPage", String(params.perPage));
2554
+ }
2555
+ if (params?.search) search.set("search", params.search);
2556
+ if (params?.tags) search.set("tags", params.tags);
2557
+ if (params?.bookable != null) search.set("bookable", params.bookable ? "1" : "0");
2558
+ if (search.size) url += `?${search.toString()}`;
2462
2559
  return this.http.get(url);
2463
2560
  }
2561
+ listAll(params) {
2562
+ return this.list({
2563
+ ...params,
2564
+ all: true
2565
+ });
2566
+ }
2464
2567
  get(slug) {
2465
2568
  return this.http.get(`services/${slug}`);
2466
2569
  }
@@ -2864,6 +2967,9 @@ var ArtifactsResource = class {
2864
2967
  get(id) {
2865
2968
  return this.http.get(`artifacts/${id}`);
2866
2969
  }
2970
+ getShared(id, password) {
2971
+ return this.http.get(`artifacts/shared/${encodeURIComponent(id)}`, { headers: password ? { "X-Artifact-Password": password } : void 0 });
2972
+ }
2867
2973
  create(payload) {
2868
2974
  return this.http.post("artifacts", payload);
2869
2975
  }
@@ -3064,8 +3170,12 @@ var UpdatesResource = class {
3064
3170
  const qs = query.toString();
3065
3171
  return this.http.get(`updates${qs ? "?" + qs : ""}`);
3066
3172
  }
3067
- get(id) {
3068
- return this.http.get(`updates/${id}`);
3173
+ /** Fetch by hashid or slug. Public for published updates when `team` is set (header or param). */
3174
+ get(id, params) {
3175
+ const query = new URLSearchParams();
3176
+ if (params?.team) query.set("team", params.team);
3177
+ const qs = query.toString();
3178
+ return this.http.get(`updates/${id}${qs ? "?" + qs : ""}`);
3069
3179
  }
3070
3180
  create(payload) {
3071
3181
  return this.http.post("updates", payload);
@@ -3092,6 +3202,14 @@ var SocialPostsResource = class {
3092
3202
  generateCaption(payload) {
3093
3203
  return this.http.post("social-posts/generate-caption", payload);
3094
3204
  }
3205
+ bestTimes(params) {
3206
+ const query = new URLSearchParams();
3207
+ if (params?.platform) query.set("platform", params.platform);
3208
+ if (params?.accountId) query.set("accountId", params.accountId);
3209
+ if (params?.limit) query.set("limit", String(params.limit));
3210
+ const qs = query.toString();
3211
+ return this.http.get(`social-posts/best-times${qs ? "?" + qs : ""}`);
3212
+ }
3095
3213
  list(params) {
3096
3214
  const query = new URLSearchParams();
3097
3215
  if (params?.status) query.set("status", params.status);
@@ -3196,6 +3314,9 @@ var UsersResource = class {
3196
3314
  });
3197
3315
  return this.http.delete(`me?${query.toString()}`);
3198
3316
  }
3317
+ disconnectSocial(provider) {
3318
+ return this.http.delete(`me/socials/${provider}`);
3319
+ }
3199
3320
  getAffiliate(code) {
3200
3321
  return this.http.get(`affiliates/${code}`);
3201
3322
  }
@@ -3356,7 +3477,7 @@ var WarpsResource = class {
3356
3477
  return this.http.post(`warps/${identifier}/install`, {});
3357
3478
  }
3358
3479
  sync(tx) {
3359
- return this.http.post("warps/sync", { tx });
3480
+ return this.http.post("warps/sync/alias", { tx });
3360
3481
  }
3361
3482
  listBrands(locale, options) {
3362
3483
  const params = new URLSearchParams();
@@ -3645,6 +3766,7 @@ var JoAiClient = class {
3645
3766
  this.store = new StoreResource(this.http);
3646
3767
  this.media = new MediaResource(this.http);
3647
3768
  this.metrics = new MetricsResource(this.http);
3769
+ this.analytics = new AnalyticsResource(this.http, config.env ?? "mainnet");
3648
3770
  this.meetings = new MeetingsResource(this.http, config);
3649
3771
  this.memories = new MemoriesResource(this.http);
3650
3772
  this.messages = new MessagesResource(this.http);
@@ -3657,6 +3779,7 @@ var JoAiClient = class {
3657
3779
  this.privateWarps = new WarpsResource(this.http);
3658
3780
  this.products = new ProductsResource(this.http);
3659
3781
  this.projects = new ProjectsResource(this.http);
3782
+ this.proposals = new ProposalsResource(this.http);
3660
3783
  this.reminders = new RemindersResource(this.http);
3661
3784
  this.rooms = new RoomsResource(this.http);
3662
3785
  this.secrets = new SecretsResource(this.http);
@@ -3789,4 +3912,4 @@ var DistributionResource = class {
3789
3912
  }
3790
3913
  };
3791
3914
  //#endregion
3792
- 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, FollowsResource, FulfillmentsResource, GoalsResource, GuestCheckoutError, GuestCouponError, HooksResource, IngestionsResource, InquiriesResource, InstallsResource, 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, createRecentlyViewedStorage, formatOpeningHours, formatPickupSlotLabel, getAuthFragmentToken, getRecentlyViewedSlugs, guestCartAmounts, guestCouponMessageFromErrors, isAllowedRedirectUrl, isGuestCheckoutError, isGuestCouponError, isPortalCallbackUrl, openPortalSession, placeGuestCheckoutOrder, readGuestOrderReturnAccess, revalidateGuestCoupon, sanitizePortalCallbackUrl, stripGuestOrderReturnToken, toGuestCheckoutDraft, trackRecentlyViewed, validateGuestCoupon };
3915
+ export { AddressesResource, AgentsResource, AlertsResource, AnalyticsResource, ApiTokensResource, AppointmentsResource, AuthResource, AutomationsResource, BillingResource, BlueprintsResource, CachedHttpService, CampaignsResource, CardsResource, CartsResource, ChangelogResource, CharactersResource, CheckoutResource, CommerceResource, ContactsResource, ContentResource, ContractsResource, DeskResource, DistributionResource, DocumentsResource, ElementsResource, EntitiesResource, FlowsResource, FollowsResource, FulfillmentsResource, GoalsResource, GuestCheckoutError, GuestCouponError, HooksResource, IngestionsResource, InquiriesResource, InstallsResource, IntegrationsResource, IntentsResource, ItemsResource, JoAiClient, KvResource, LinksResource, LoyaltyResource, McpResource, MeetingsResource, MemoriesResource, MessagesResource, MetricsResource, MissionsResource, NotificationsResource, OfficeResource, OrdersResource, PersonaResource, ProductsResource, ProjectsResource, ProposalsResource, 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, createRecentlyViewedStorage, formatOpeningHours, formatPickupSlotLabel, getAuthFragmentToken, getRecentlyViewedSlugs, guestCartAmounts, guestCouponMessageFromErrors, isAllowedRedirectUrl, isGuestCheckoutError, isGuestCouponError, isPortalCallbackUrl, openPortalSession, placeGuestCheckoutOrder, readGuestOrderReturnAccess, revalidateGuestCoupon, sanitizePortalCallbackUrl, stripGuestOrderReturnToken, toGuestCheckoutDraft, trackRecentlyViewed, validateGuestCoupon };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@joai/sdk",
3
- "version": "12.0.3",
3
+ "version": "12.1.0",
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": "^5.3.3",
38
+ "@joai/core": "^5.3.5",
39
39
  "@joai/warps": "*"
40
40
  },
41
41
  "peerDependencies": {
42
- "@joai/core": "^5.3.3"
42
+ "@joai/core": "^5.3.5"
43
43
  },
44
44
  "devDependencies": {
45
45
  "tsdown": "^0.21.0",