@hexclave/react 1.0.44 → 1.0.46

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.
Files changed (75) hide show
  1. package/dist/{admin-app-impl-C-Z19hl9.d.ts → admin-app-impl-DZckHJ1C.d.ts} +10 -9
  2. package/dist/{admin-app-impl-C-Z19hl9.d.ts.map → admin-app-impl-DZckHJ1C.d.ts.map} +1 -1
  3. package/dist/clickmap/clickmap-core.d.ts +1 -1
  4. package/dist/clickmap/index.d.ts +1 -1
  5. package/dist/{client-app-DS6ngEpe.d.ts → client-app-mxsyAtl-.d.ts} +3 -3
  6. package/dist/client-app-mxsyAtl-.d.ts.map +1 -0
  7. package/dist/components/selected-team-switcher.d.ts +1 -1
  8. package/dist/components/team-icon.d.ts +1 -1
  9. package/dist/components/team-switcher.d.ts +1 -1
  10. package/dist/components-page/account-settings/payments/payments-page.d.ts +1 -1
  11. package/dist/components-page/account-settings/teams/leave-team-section.d.ts +1 -1
  12. package/dist/components-page/account-settings/teams/team-api-keys-section.d.ts +1 -1
  13. package/dist/components-page/account-settings/teams/team-display-name-section.d.ts +1 -1
  14. package/dist/components-page/account-settings/teams/team-member-invitation-section.d.ts +1 -1
  15. package/dist/components-page/account-settings/teams/team-member-list-section.d.ts +1 -1
  16. package/dist/components-page/account-settings/teams/team-page.d.ts +1 -1
  17. package/dist/components-page/account-settings/teams/team-profile-image-section.d.ts +1 -1
  18. package/dist/components-page/account-settings/teams/team-profile-user-section.d.ts +1 -1
  19. package/dist/components-page/hexclave-handler-client.d.ts +1 -1
  20. package/dist/components-page/hexclave-handler.d.ts +1 -1
  21. package/dist/dev-tool/dev-tool-core.d.ts +1 -1
  22. package/dist/dev-tool/index.d.ts +1 -1
  23. package/dist/esm/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts +3 -5
  24. package/dist/esm/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts.map +1 -1
  25. package/dist/esm/lib/hexclave-app/apps/implementations/admin-app-impl.js +8 -4
  26. package/dist/esm/lib/hexclave-app/apps/implementations/admin-app-impl.js.map +1 -1
  27. package/dist/esm/lib/hexclave-app/apps/implementations/client-app-impl.d.ts +2 -2
  28. package/dist/esm/lib/hexclave-app/apps/implementations/common.js +2 -2
  29. package/dist/esm/lib/hexclave-app/apps/implementations/server-app-impl.d.ts +3 -0
  30. package/dist/esm/lib/hexclave-app/apps/implementations/server-app-impl.d.ts.map +1 -1
  31. package/dist/esm/lib/hexclave-app/apps/implementations/server-app-impl.js +8 -0
  32. package/dist/esm/lib/hexclave-app/apps/implementations/server-app-impl.js.map +1 -1
  33. package/dist/esm/lib/hexclave-app/apps/interfaces/admin-app.d.ts +0 -2
  34. package/dist/esm/lib/hexclave-app/apps/interfaces/admin-app.d.ts.map +1 -1
  35. package/dist/esm/lib/hexclave-app/apps/interfaces/admin-app.js.map +1 -1
  36. package/dist/esm/lib/hexclave-app/apps/interfaces/server-app.d.ts +2 -0
  37. package/dist/esm/lib/hexclave-app/apps/interfaces/server-app.d.ts.map +1 -1
  38. package/dist/esm/lib/hexclave-app/apps/interfaces/server-app.js.map +1 -1
  39. package/dist/{hexclave-provider-OK80Y-u7.d.ts → hexclave-provider-BHgJzJWl.d.ts} +2 -2
  40. package/dist/{hexclave-provider-OK80Y-u7.d.ts.map → hexclave-provider-BHgJzJWl.d.ts.map} +1 -1
  41. package/dist/{hooks-Bn_CxStb.d.ts → hooks-UrxPrSEk.d.ts} +2 -2
  42. package/dist/{hooks-Bn_CxStb.d.ts.map → hooks-UrxPrSEk.d.ts.map} +1 -1
  43. package/dist/{index-BkjG7hKn.d.ts → index-DkfkBM_f.d.ts} +2 -2
  44. package/dist/{index-BkjG7hKn.d.ts.map → index-DkfkBM_f.d.ts.map} +1 -1
  45. package/dist/index.d.ts +4 -4
  46. package/dist/lib/hexclave-app/apps/implementations/admin-app-impl.d.ts +1 -1
  47. package/dist/lib/hexclave-app/apps/implementations/admin-app-impl.js +7 -3
  48. package/dist/lib/hexclave-app/apps/implementations/admin-app-impl.js.map +1 -1
  49. package/dist/lib/hexclave-app/apps/implementations/client-app-impl.d.ts +1 -1
  50. package/dist/lib/hexclave-app/apps/implementations/common.js +2 -2
  51. package/dist/lib/hexclave-app/apps/implementations/index.d.ts +1 -1
  52. package/dist/lib/hexclave-app/apps/implementations/server-app-impl.d.ts +1 -1
  53. package/dist/lib/hexclave-app/apps/implementations/server-app-impl.js +8 -0
  54. package/dist/lib/hexclave-app/apps/implementations/server-app-impl.js.map +1 -1
  55. package/dist/lib/hexclave-app/apps/index.d.ts +1 -1
  56. package/dist/lib/hexclave-app/apps/interfaces/admin-app.d.ts +1 -1
  57. package/dist/lib/hexclave-app/apps/interfaces/admin-app.js.map +1 -1
  58. package/dist/lib/hexclave-app/apps/interfaces/client-app.d.ts +1 -1
  59. package/dist/lib/hexclave-app/apps/interfaces/server-app.d.ts +1 -1
  60. package/dist/lib/hexclave-app/apps/interfaces/server-app.js.map +1 -1
  61. package/dist/lib/hexclave-app/index.d.ts +1 -1
  62. package/dist/lib/hexclave-app/projects/index.d.ts +1 -1
  63. package/dist/lib/hexclave-app/teams/index.d.ts +1 -1
  64. package/dist/lib/hexclave-app/users/index.d.ts +1 -1
  65. package/dist/lib/hooks.d.ts +1 -1
  66. package/dist/providers/hexclave-context.d.ts +1 -1
  67. package/dist/providers/hexclave-provider-client.d.ts +1 -1
  68. package/dist/providers/hexclave-provider.d.ts +1 -1
  69. package/dist/pushed-config-error-overlay/index.d.ts +1 -1
  70. package/package.json +3 -3
  71. package/src/lib/hexclave-app/apps/implementations/admin-app-impl.ts +15 -6
  72. package/src/lib/hexclave-app/apps/implementations/server-app-impl.ts +15 -0
  73. package/src/lib/hexclave-app/apps/interfaces/admin-app.ts +0 -2
  74. package/src/lib/hexclave-app/apps/interfaces/server-app.ts +3 -0
  75. package/dist/client-app-DS6ngEpe.d.ts.map +0 -1
@@ -1,3 +1,3 @@
1
- import { C as HexclaveAdminAppConstructorOptions, D as StackAdminApp, E as ManagedEmailProviderStatus, O as StackAdminAppConstructor, S as HexclaveAdminAppConstructor, T as ManagedEmailProviderSetupResult, b as EmailOutboxUpdateOptions, k as StackAdminAppConstructorOptions, v as EmailOutboxListOptions, w as ManagedEmailProviderListItem, x as HexclaveAdminApp, y as EmailOutboxListResult } from "../../../../client-app-DS6ngEpe.js";
1
+ import { C as HexclaveAdminAppConstructorOptions, D as StackAdminApp, E as ManagedEmailProviderStatus, O as StackAdminAppConstructor, S as HexclaveAdminAppConstructor, T as ManagedEmailProviderSetupResult, b as EmailOutboxUpdateOptions, k as StackAdminAppConstructorOptions, v as EmailOutboxListOptions, w as ManagedEmailProviderListItem, x as HexclaveAdminApp, y as EmailOutboxListResult } from "../../../../client-app-mxsyAtl-.js";
2
2
  import { a as ListSessionReplaysOptions, i as ListSessionReplayChunksResult, n as AdminSessionReplayChunk, o as ListSessionReplaysResult, r as ListSessionReplayChunksOptions, s as SessionReplayAllEventsResult, t as AdminSessionReplay } from "../../../../index-hYjsGKNc.js";
3
3
  export { type AdminSessionReplay, type AdminSessionReplayChunk, EmailOutboxListOptions, EmailOutboxListResult, EmailOutboxUpdateOptions, HexclaveAdminApp, HexclaveAdminAppConstructor, HexclaveAdminAppConstructorOptions, type ListSessionReplayChunksOptions, type ListSessionReplayChunksResult, type ListSessionReplaysOptions, type ListSessionReplaysResult, ManagedEmailProviderListItem, ManagedEmailProviderSetupResult, ManagedEmailProviderStatus, type SessionReplayAllEventsResult, StackAdminApp, StackAdminAppConstructor, StackAdminAppConstructorOptions };
@@ -1 +1 @@
1
- {"version":3,"file":"admin-app.js","names":["_HexclaveAdminAppImpl"],"sources":["../../../../../src/lib/hexclave-app/apps/interfaces/admin-app.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY UNLESS YOU ALSO EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\nimport type { AnalyticsClickmapOptions, AnalyticsClickmapResponse, AnalyticsClickmapTokenResponse } from \"@hexclave/shared/dist/interface/admin-metrics\";\nimport { AnalyticsQueryOptions, AnalyticsQueryResponse } from \"@hexclave/shared/dist/interface/crud/analytics\";\nimport type { AdminGetSessionReplayChunkEventsResponse, AdminGetSessionReplayAllEventsResponse } from \"@hexclave/shared/dist/interface/crud/session-replays\";\nimport type { Transaction, TransactionType } from \"@hexclave/shared/dist/interface/crud/transactions\";\nimport { InternalSession } from \"@hexclave/shared/dist/sessions\";\nimport type { MoneyAmount } from \"@hexclave/shared/dist/utils/currency-constants\";\nimport { Result } from \"@hexclave/shared/dist/utils/results\";\nimport { AsyncStoreProperty, EmailConfig } from \"../../common\";\nimport { AdminEmailOutbox, AdminSentEmail } from \"../../email\";\nimport { InternalApiKey, InternalApiKeyCreateOptions, InternalApiKeyFirstView } from \"../../internal-api-keys\";\nimport { AdminProjectPermission, AdminProjectPermissionDefinition, AdminProjectPermissionDefinitionCreateOptions, AdminProjectPermissionDefinitionUpdateOptions, AdminTeamPermission, AdminTeamPermissionDefinition, AdminTeamPermissionDefinitionCreateOptions, AdminTeamPermissionDefinitionUpdateOptions } from \"../../permissions\";\nimport type { PlanUsage } from \"../../plan-usage\";\nimport { AdminProject } from \"../../projects\";\nimport { _HexclaveAdminAppImpl } from \"../implementations\";\nimport { StackServerApp, StackServerAppConstructorOptions } from \"./server-app\";\n\nexport type EmailOutboxListOptions = {\n status?: string,\n simpleStatus?: string,\n userId?: string,\n limit?: number,\n cursor?: string,\n};\n\nexport type EmailOutboxListResult = {\n items: AdminEmailOutbox[],\n nextCursor: string | null,\n};\n\nexport type EmailOutboxUpdateOptions = {\n isPaused?: boolean,\n scheduledAtMillis?: number,\n cancel?: boolean,\n tsxSource?: string,\n themeId?: string | null,\n};\n\nexport type ManagedEmailProviderSetupResult = {\n domainId: string,\n subdomain: string,\n senderLocalPart: string,\n nameServerRecords: string[],\n status: ManagedEmailProviderStatus[\"status\"],\n};\n\nexport type ManagedEmailProviderStatus = {\n status: \"pending_dns\" | \"pending_verification\" | \"verified\" | \"applied\" | \"failed\",\n};\n\nexport type ManagedEmailProviderListItem = {\n domainId: string,\n subdomain: string,\n senderLocalPart: string,\n status: ManagedEmailProviderStatus[\"status\"],\n nameServerRecords: string[],\n};\n\nimport type { AdminSessionReplay, ListSessionReplayChunksOptions, ListSessionReplayChunksResult, ListSessionReplaysOptions, ListSessionReplaysResult, SessionReplayAllEventsResult } from \"../../session-replays\";\nexport type { AdminSessionReplay, AdminSessionReplayChunk, ListSessionReplaysOptions, ListSessionReplaysResult, ListSessionReplayChunksOptions, ListSessionReplayChunksResult, SessionReplayAllEventsResult } from \"../../session-replays\";\n\n\n/** @deprecated Use `HexclaveAdminAppConstructorOptions` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackAdminAppConstructorOptions<HasTokenStore extends boolean, ProjectId extends string> = (\n & StackServerAppConstructorOptions<HasTokenStore, ProjectId>\n & {\n superSecretAdminKey?: string,\n projectOwnerSession?: InternalSession | (() => Promise<string | null>),\n }\n);\n\n\n/** @deprecated Use `HexclaveAdminApp` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackAdminApp<HasTokenStore extends boolean = boolean, ProjectId extends string = string> = (\n & AsyncStoreProperty<\"project\", [], AdminProject, false>\n & AsyncStoreProperty<\"planUsage\", [], PlanUsage, false>\n & AsyncStoreProperty<\"internalApiKeys\", [], InternalApiKey[], true>\n & AsyncStoreProperty<\"teamPermissionDefinitions\", [], AdminTeamPermissionDefinition[], true>\n & AsyncStoreProperty<\"projectPermissionDefinitions\", [], AdminProjectPermissionDefinition[], true>\n & AsyncStoreProperty<\"emailThemes\", [], { id: string, displayName: string }[], true>\n & AsyncStoreProperty<\"emailPreview\", [{ themeId?: string | null | false, themeTsxSource?: string, templateId?: string, templateTsxSource?: string }], string, false>\n & AsyncStoreProperty<\"emailPreviewWithEditableMarkers\", [{ themeId?: string | null | false, themeTsxSource?: string, templateId?: string, templateTsxSource?: string, editableSource?: 'template' | 'theme' | 'both' }], { html: string, editableRegions?: Record<string, unknown> }, false> // THIS_LINE_PLATFORM react-like\n & AsyncStoreProperty<\"emailTemplates\", [], { id: string, displayName: string, themeId?: string, tsxSource: string }[], true>\n & AsyncStoreProperty<\"emailDrafts\", [], { id: string, displayName: string, themeId: string | undefined | false, tsxSource: string, sentAt: Date | null }[], true>\n & AsyncStoreProperty<\"stripeAccountInfo\", [], { account_id: string, charges_enabled: boolean, details_submitted: boolean, payouts_enabled: boolean } | null, false>\n & AsyncStoreProperty<\n \"transactions\",\n [{\n cursor?: string,\n limit?: number,\n type?: TransactionType,\n customerType?: 'user' | 'team' | 'custom',\n customerId?: string,\n }],\n { transactions: Transaction[], nextCursor: string | null },\n true\n >\n & {\n createInternalApiKey(options: InternalApiKeyCreateOptions): Promise<InternalApiKeyFirstView>,\n\n createTeamPermissionDefinition(data: AdminTeamPermissionDefinitionCreateOptions): Promise<AdminTeamPermission>,\n updateTeamPermissionDefinition(permissionId: string, data: AdminTeamPermissionDefinitionUpdateOptions): Promise<void>,\n deleteTeamPermissionDefinition(permissionId: string): Promise<void>,\n /**\n * @param options.query Free-text search; matches against permission ID and description.\n */\n listTeamPermissionDefinitionsPaginated(options: { limit: number, cursor?: string, query?: string }): Promise<{ items: AdminTeamPermissionDefinition[], nextCursor: string | null }>,\n\n createProjectPermissionDefinition(data: AdminProjectPermissionDefinitionCreateOptions): Promise<AdminProjectPermission>,\n updateProjectPermissionDefinition(permissionId: string, data: AdminProjectPermissionDefinitionUpdateOptions): Promise<void>,\n deleteProjectPermissionDefinition(permissionId: string): Promise<void>,\n\n useSvixToken(): { token: string, url: string | undefined }, // THIS_LINE_PLATFORM react-like\n\n sendTestEmail(options: {\n recipientEmail: string,\n emailConfig: EmailConfig,\n }): Promise<Result<undefined, { errorMessage: string }>>,\n\n sendTestWebhook(options: { endpointId: string }): Promise<Result<undefined, { errorMessage: string }>>,\n\n sendSignInInvitationEmail(email: string, callbackUrl: string): Promise<void>,\n\n listSentEmails(): Promise<AdminSentEmail[]>,\n setupManagedEmailProvider(options: { subdomain: string, senderLocalPart: string }): Promise<ManagedEmailProviderSetupResult>,\n checkManagedEmailStatus(options: { domainId: string, subdomain: string, senderLocalPart: string }): Promise<ManagedEmailProviderStatus>,\n listManagedEmailDomains(): Promise<ManagedEmailProviderListItem[]>,\n applyManagedEmailProvider(options: { domainId: string }): Promise<{ status: \"applied\" }>,\n deleteManagedEmailDomain(options: { resendDomainId: string }): Promise<{ status: \"deleted\" }>,\n\n useEmailTheme(id: string): { displayName: string, tsxSource: string }, // THIS_LINE_PLATFORM react-like\n createEmailTheme(displayName: string): Promise<{ id: string }>,\n updateEmailTheme(id: string, tsxSource: string): Promise<void>,\n deleteEmailTheme(id: string): Promise<void>,\n saveChatMessage(threadId: string, message: any): Promise<void>,\n listChatMessages(threadId: string): Promise<{ messages: Array<any> }>,\n rewriteTemplateSourceWithAI(templateTsxSource: string): Promise<{ tsxSource: string }>,\n updateEmailTemplate(id: string, tsxSource: string, themeId: string | null | false): Promise<{ renderedHtml: string }>,\n createEmailTemplate(displayName: string): Promise<{ id: string }>,\n deleteEmailTemplate(id: string): Promise<void>,\n\n setupPayments(): Promise<{ url: string }>,\n createStripeWidgetAccountSession(): Promise<{ client_secret: string }>,\n getPaymentMethodConfigs(): Promise<{ configId: string, methods: Array<{ id: string, name: string, enabled: boolean, available: boolean, overridable: boolean }> } | null>,\n updatePaymentMethodConfigs(configId: string, updates: Record<string, 'on' | 'off'>): Promise<void>,\n createEmailDraft(options: { displayName: string, themeId?: string | undefined | false, tsxSource?: string }): Promise<{ id: string }>,\n updateEmailDraft(id: string, data: { displayName?: string, themeId?: string | undefined | false, tsxSource?: string }): Promise<void>,\n deleteEmailDraft(id: string): Promise<void>,\n refreshEmailDrafts(): Promise<void>,\n createItemQuantityChange(options: (\n { userId: string, itemId: string, quantity: number, expiresAt?: string, description?: string } |\n { teamId: string, itemId: string, quantity: number, expiresAt?: string, description?: string } |\n { customCustomerId: string, itemId: string, quantity: number, expiresAt?: string, description?: string }\n )): Promise<void>,\n refundTransaction(options: {\n type: \"subscription\" | \"one-time-purchase\",\n id: string,\n invoiceId?: string,\n amountUsd: MoneyAmount,\n endAction?: \"now\" | \"at-period-end\",\n }): Promise<{ refundTransactionId: string }>,\n queryAnalytics(options: AnalyticsQueryOptions): Promise<AnalyticsQueryResponse>,\n getAnalyticsClickmap(options: AnalyticsClickmapOptions): Promise<AnalyticsClickmapResponse>,\n createAnalyticsClickmapToken(options: { origin: string }): Promise<AnalyticsClickmapTokenResponse>,\n\n listSessionReplays(options?: ListSessionReplaysOptions): Promise<ListSessionReplaysResult>,\n getSessionReplay(sessionReplayId: string): Promise<AdminSessionReplay>,\n listSessionReplayChunks(sessionReplayId: string, options?: ListSessionReplayChunksOptions): Promise<ListSessionReplayChunksResult>,\n getSessionReplayChunkEvents(sessionReplayId: string, chunkId: string): Promise<AdminGetSessionReplayChunkEventsResponse>,\n getSessionReplayEvents(sessionReplayId: string, options?: { offset?: number, limit?: number }): Promise<SessionReplayAllEventsResult>,\n\n // Email Outbox methods\n listOutboxEmails(options?: EmailOutboxListOptions): Promise<EmailOutboxListResult>,\n getOutboxEmail(id: string): Promise<AdminEmailOutbox>,\n updateOutboxEmail(id: string, options: EmailOutboxUpdateOptions): Promise<AdminEmailOutbox>,\n pauseOutboxEmail(id: string): Promise<AdminEmailOutbox>,\n unpauseOutboxEmail(id: string): Promise<AdminEmailOutbox>,\n cancelOutboxEmail(id: string): Promise<AdminEmailOutbox>,\n }\n & StackServerApp<HasTokenStore, ProjectId>\n);\n/** @deprecated Use `HexclaveAdminAppConstructor` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackAdminAppConstructor = {\n new <\n HasTokenStore extends boolean,\n ProjectId extends string\n >(options: StackAdminAppConstructorOptions<HasTokenStore, ProjectId>): StackAdminApp<HasTokenStore, ProjectId>,\n new(options: StackAdminAppConstructorOptions<boolean, string>): StackAdminApp<boolean, string>,\n};\nexport type HexclaveAdminAppConstructorOptions<HasTokenStore extends boolean, ProjectId extends string> = StackAdminAppConstructorOptions<HasTokenStore, ProjectId>;\nexport type HexclaveAdminApp<HasTokenStore extends boolean = boolean, ProjectId extends string = string> = StackAdminApp<HasTokenStore, ProjectId>;\nexport type HexclaveAdminAppConstructor = StackAdminAppConstructor;\nexport const HexclaveAdminApp: HexclaveAdminAppConstructor = _HexclaveAdminAppImpl;\n/** @deprecated Use `HexclaveAdminApp` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport const StackAdminApp: StackAdminAppConstructor = HexclaveAdminApp;\n"],"mappings":";;AAmMA,MAAa,wDAAgDA,CAAAA,CAAAA;;AAE7D,MAAa,gBAA0C"}
1
+ {"version":3,"file":"admin-app.js","names":["_HexclaveAdminAppImpl"],"sources":["../../../../../src/lib/hexclave-app/apps/interfaces/admin-app.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY UNLESS YOU ALSO EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\nimport type { AnalyticsClickmapOptions, AnalyticsClickmapResponse, AnalyticsClickmapTokenResponse } from \"@hexclave/shared/dist/interface/admin-metrics\";\nimport type { AdminGetSessionReplayChunkEventsResponse, AdminGetSessionReplayAllEventsResponse } from \"@hexclave/shared/dist/interface/crud/session-replays\";\nimport type { Transaction, TransactionType } from \"@hexclave/shared/dist/interface/crud/transactions\";\nimport { InternalSession } from \"@hexclave/shared/dist/sessions\";\nimport type { MoneyAmount } from \"@hexclave/shared/dist/utils/currency-constants\";\nimport { Result } from \"@hexclave/shared/dist/utils/results\";\nimport { AsyncStoreProperty, EmailConfig } from \"../../common\";\nimport { AdminEmailOutbox, AdminSentEmail } from \"../../email\";\nimport { InternalApiKey, InternalApiKeyCreateOptions, InternalApiKeyFirstView } from \"../../internal-api-keys\";\nimport { AdminProjectPermission, AdminProjectPermissionDefinition, AdminProjectPermissionDefinitionCreateOptions, AdminProjectPermissionDefinitionUpdateOptions, AdminTeamPermission, AdminTeamPermissionDefinition, AdminTeamPermissionDefinitionCreateOptions, AdminTeamPermissionDefinitionUpdateOptions } from \"../../permissions\";\nimport type { PlanUsage } from \"../../plan-usage\";\nimport { AdminProject } from \"../../projects\";\nimport { _HexclaveAdminAppImpl } from \"../implementations\";\nimport { StackServerApp, StackServerAppConstructorOptions } from \"./server-app\";\n\nexport type EmailOutboxListOptions = {\n status?: string,\n simpleStatus?: string,\n userId?: string,\n limit?: number,\n cursor?: string,\n};\n\nexport type EmailOutboxListResult = {\n items: AdminEmailOutbox[],\n nextCursor: string | null,\n};\n\nexport type EmailOutboxUpdateOptions = {\n isPaused?: boolean,\n scheduledAtMillis?: number,\n cancel?: boolean,\n tsxSource?: string,\n themeId?: string | null,\n};\n\nexport type ManagedEmailProviderSetupResult = {\n domainId: string,\n subdomain: string,\n senderLocalPart: string,\n nameServerRecords: string[],\n status: ManagedEmailProviderStatus[\"status\"],\n};\n\nexport type ManagedEmailProviderStatus = {\n status: \"pending_dns\" | \"pending_verification\" | \"verified\" | \"applied\" | \"failed\",\n};\n\nexport type ManagedEmailProviderListItem = {\n domainId: string,\n subdomain: string,\n senderLocalPart: string,\n status: ManagedEmailProviderStatus[\"status\"],\n nameServerRecords: string[],\n};\n\nimport type { AdminSessionReplay, ListSessionReplayChunksOptions, ListSessionReplayChunksResult, ListSessionReplaysOptions, ListSessionReplaysResult, SessionReplayAllEventsResult } from \"../../session-replays\";\nexport type { AdminSessionReplay, AdminSessionReplayChunk, ListSessionReplaysOptions, ListSessionReplaysResult, ListSessionReplayChunksOptions, ListSessionReplayChunksResult, SessionReplayAllEventsResult } from \"../../session-replays\";\n\n\n/** @deprecated Use `HexclaveAdminAppConstructorOptions` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackAdminAppConstructorOptions<HasTokenStore extends boolean, ProjectId extends string> = (\n & StackServerAppConstructorOptions<HasTokenStore, ProjectId>\n & {\n superSecretAdminKey?: string,\n projectOwnerSession?: InternalSession | (() => Promise<string | null>),\n }\n);\n\n\n/** @deprecated Use `HexclaveAdminApp` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackAdminApp<HasTokenStore extends boolean = boolean, ProjectId extends string = string> = (\n & AsyncStoreProperty<\"project\", [], AdminProject, false>\n & AsyncStoreProperty<\"planUsage\", [], PlanUsage, false>\n & AsyncStoreProperty<\"internalApiKeys\", [], InternalApiKey[], true>\n & AsyncStoreProperty<\"teamPermissionDefinitions\", [], AdminTeamPermissionDefinition[], true>\n & AsyncStoreProperty<\"projectPermissionDefinitions\", [], AdminProjectPermissionDefinition[], true>\n & AsyncStoreProperty<\"emailThemes\", [], { id: string, displayName: string }[], true>\n & AsyncStoreProperty<\"emailPreview\", [{ themeId?: string | null | false, themeTsxSource?: string, templateId?: string, templateTsxSource?: string }], string, false>\n & AsyncStoreProperty<\"emailPreviewWithEditableMarkers\", [{ themeId?: string | null | false, themeTsxSource?: string, templateId?: string, templateTsxSource?: string, editableSource?: 'template' | 'theme' | 'both' }], { html: string, editableRegions?: Record<string, unknown> }, false> // THIS_LINE_PLATFORM react-like\n & AsyncStoreProperty<\"emailTemplates\", [], { id: string, displayName: string, themeId?: string, tsxSource: string }[], true>\n & AsyncStoreProperty<\"emailDrafts\", [], { id: string, displayName: string, themeId: string | undefined | false, tsxSource: string, sentAt: Date | null }[], true>\n & AsyncStoreProperty<\"stripeAccountInfo\", [], { account_id: string, charges_enabled: boolean, details_submitted: boolean, payouts_enabled: boolean } | null, false>\n & AsyncStoreProperty<\n \"transactions\",\n [{\n cursor?: string,\n limit?: number,\n type?: TransactionType,\n customerType?: 'user' | 'team' | 'custom',\n customerId?: string,\n }],\n { transactions: Transaction[], nextCursor: string | null },\n true\n >\n & {\n createInternalApiKey(options: InternalApiKeyCreateOptions): Promise<InternalApiKeyFirstView>,\n\n createTeamPermissionDefinition(data: AdminTeamPermissionDefinitionCreateOptions): Promise<AdminTeamPermission>,\n updateTeamPermissionDefinition(permissionId: string, data: AdminTeamPermissionDefinitionUpdateOptions): Promise<void>,\n deleteTeamPermissionDefinition(permissionId: string): Promise<void>,\n /**\n * @param options.query Free-text search; matches against permission ID and description.\n */\n listTeamPermissionDefinitionsPaginated(options: { limit: number, cursor?: string, query?: string }): Promise<{ items: AdminTeamPermissionDefinition[], nextCursor: string | null }>,\n\n createProjectPermissionDefinition(data: AdminProjectPermissionDefinitionCreateOptions): Promise<AdminProjectPermission>,\n updateProjectPermissionDefinition(permissionId: string, data: AdminProjectPermissionDefinitionUpdateOptions): Promise<void>,\n deleteProjectPermissionDefinition(permissionId: string): Promise<void>,\n\n useSvixToken(): { token: string, url: string | undefined }, // THIS_LINE_PLATFORM react-like\n\n sendTestEmail(options: {\n recipientEmail: string,\n emailConfig: EmailConfig,\n }): Promise<Result<undefined, { errorMessage: string }>>,\n\n sendTestWebhook(options: { endpointId: string }): Promise<Result<undefined, { errorMessage: string }>>,\n\n sendSignInInvitationEmail(email: string, callbackUrl: string): Promise<void>,\n\n listSentEmails(): Promise<AdminSentEmail[]>,\n setupManagedEmailProvider(options: { subdomain: string, senderLocalPart: string }): Promise<ManagedEmailProviderSetupResult>,\n checkManagedEmailStatus(options: { domainId: string, subdomain: string, senderLocalPart: string }): Promise<ManagedEmailProviderStatus>,\n listManagedEmailDomains(): Promise<ManagedEmailProviderListItem[]>,\n applyManagedEmailProvider(options: { domainId: string }): Promise<{ status: \"applied\" }>,\n deleteManagedEmailDomain(options: { resendDomainId: string }): Promise<{ status: \"deleted\" }>,\n\n useEmailTheme(id: string): { displayName: string, tsxSource: string }, // THIS_LINE_PLATFORM react-like\n createEmailTheme(displayName: string): Promise<{ id: string }>,\n updateEmailTheme(id: string, tsxSource: string): Promise<void>,\n deleteEmailTheme(id: string): Promise<void>,\n saveChatMessage(threadId: string, message: any): Promise<void>,\n listChatMessages(threadId: string): Promise<{ messages: Array<any> }>,\n rewriteTemplateSourceWithAI(templateTsxSource: string): Promise<{ tsxSource: string }>,\n updateEmailTemplate(id: string, tsxSource: string, themeId: string | null | false): Promise<{ renderedHtml: string }>,\n createEmailTemplate(displayName: string): Promise<{ id: string }>,\n deleteEmailTemplate(id: string): Promise<void>,\n\n setupPayments(): Promise<{ url: string }>,\n createStripeWidgetAccountSession(): Promise<{ client_secret: string }>,\n getPaymentMethodConfigs(): Promise<{ configId: string, methods: Array<{ id: string, name: string, enabled: boolean, available: boolean, overridable: boolean }> } | null>,\n updatePaymentMethodConfigs(configId: string, updates: Record<string, 'on' | 'off'>): Promise<void>,\n createEmailDraft(options: { displayName: string, themeId?: string | undefined | false, tsxSource?: string }): Promise<{ id: string }>,\n updateEmailDraft(id: string, data: { displayName?: string, themeId?: string | undefined | false, tsxSource?: string }): Promise<void>,\n deleteEmailDraft(id: string): Promise<void>,\n refreshEmailDrafts(): Promise<void>,\n createItemQuantityChange(options: (\n { userId: string, itemId: string, quantity: number, expiresAt?: string, description?: string } |\n { teamId: string, itemId: string, quantity: number, expiresAt?: string, description?: string } |\n { customCustomerId: string, itemId: string, quantity: number, expiresAt?: string, description?: string }\n )): Promise<void>,\n refundTransaction(options: {\n type: \"subscription\" | \"one-time-purchase\",\n id: string,\n invoiceId?: string,\n amountUsd: MoneyAmount,\n endAction?: \"now\" | \"at-period-end\",\n }): Promise<{ refundTransactionId: string }>,\n getAnalyticsClickmap(options: AnalyticsClickmapOptions): Promise<AnalyticsClickmapResponse>,\n createAnalyticsClickmapToken(options: { origin: string }): Promise<AnalyticsClickmapTokenResponse>,\n\n listSessionReplays(options?: ListSessionReplaysOptions): Promise<ListSessionReplaysResult>,\n getSessionReplay(sessionReplayId: string): Promise<AdminSessionReplay>,\n listSessionReplayChunks(sessionReplayId: string, options?: ListSessionReplayChunksOptions): Promise<ListSessionReplayChunksResult>,\n getSessionReplayChunkEvents(sessionReplayId: string, chunkId: string): Promise<AdminGetSessionReplayChunkEventsResponse>,\n getSessionReplayEvents(sessionReplayId: string, options?: { offset?: number, limit?: number }): Promise<SessionReplayAllEventsResult>,\n\n // Email Outbox methods\n listOutboxEmails(options?: EmailOutboxListOptions): Promise<EmailOutboxListResult>,\n getOutboxEmail(id: string): Promise<AdminEmailOutbox>,\n updateOutboxEmail(id: string, options: EmailOutboxUpdateOptions): Promise<AdminEmailOutbox>,\n pauseOutboxEmail(id: string): Promise<AdminEmailOutbox>,\n unpauseOutboxEmail(id: string): Promise<AdminEmailOutbox>,\n cancelOutboxEmail(id: string): Promise<AdminEmailOutbox>,\n }\n & StackServerApp<HasTokenStore, ProjectId>\n);\n/** @deprecated Use `HexclaveAdminAppConstructor` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackAdminAppConstructor = {\n new <\n HasTokenStore extends boolean,\n ProjectId extends string\n >(options: StackAdminAppConstructorOptions<HasTokenStore, ProjectId>): StackAdminApp<HasTokenStore, ProjectId>,\n new(options: StackAdminAppConstructorOptions<boolean, string>): StackAdminApp<boolean, string>,\n};\nexport type HexclaveAdminAppConstructorOptions<HasTokenStore extends boolean, ProjectId extends string> = StackAdminAppConstructorOptions<HasTokenStore, ProjectId>;\nexport type HexclaveAdminApp<HasTokenStore extends boolean = boolean, ProjectId extends string = string> = StackAdminApp<HasTokenStore, ProjectId>;\nexport type HexclaveAdminAppConstructor = StackAdminAppConstructor;\nexport const HexclaveAdminApp: HexclaveAdminAppConstructor = _HexclaveAdminAppImpl;\n/** @deprecated Use `HexclaveAdminApp` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport const StackAdminApp: StackAdminAppConstructor = HexclaveAdminApp;\n"],"mappings":";;AAiMA,MAAa,wDAAgDA,CAAAA,CAAAA;;AAE7D,MAAa,gBAA0C"}
@@ -1,2 +1,2 @@
1
- import { a as StackClientApp, c as StackClientAppJson, i as HexclaveClientAppJson, n as HexclaveClientAppConstructor, o as StackClientAppConstructor, r as HexclaveClientAppConstructorOptions, s as StackClientAppConstructorOptions, t as HexclaveClientApp } from "../../../../client-app-DS6ngEpe.js";
1
+ import { a as StackClientApp, c as StackClientAppJson, i as HexclaveClientAppJson, n as HexclaveClientAppConstructor, o as StackClientAppConstructor, r as HexclaveClientAppConstructorOptions, s as StackClientAppConstructorOptions, t as HexclaveClientApp } from "../../../../client-app-mxsyAtl-.js";
2
2
  export { HexclaveClientApp, HexclaveClientAppConstructor, HexclaveClientAppConstructorOptions, HexclaveClientAppJson, StackClientApp, StackClientAppConstructor, StackClientAppConstructorOptions, StackClientAppJson };
@@ -1,2 +1,2 @@
1
- import { A as HexclaveServerApp, F as StackServerAppConstructorOptions, M as HexclaveServerAppConstructorOptions, N as StackServerApp, P as StackServerAppConstructor, j as HexclaveServerAppConstructor } from "../../../../client-app-DS6ngEpe.js";
1
+ import { A as HexclaveServerApp, F as StackServerAppConstructorOptions, M as HexclaveServerAppConstructorOptions, N as StackServerApp, P as StackServerAppConstructor, j as HexclaveServerAppConstructor } from "../../../../client-app-mxsyAtl-.js";
2
2
  export { HexclaveServerApp, HexclaveServerAppConstructor, HexclaveServerAppConstructorOptions, StackServerApp, StackServerAppConstructor, StackServerAppConstructorOptions };
@@ -1 +1 @@
1
- {"version":3,"file":"server-app.js","names":["_HexclaveServerAppImpl"],"sources":["../../../../../src/lib/hexclave-app/apps/interfaces/server-app.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY UNLESS YOU ALSO EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\nimport { KnownErrors } from \"@hexclave/shared\";\nimport { Result } from \"@hexclave/shared/dist/utils/results\";\nimport type { GenericQueryCtx } from \"convex/server\";\nimport { AsyncStoreProperty, GetCurrentPartialUserOptions, GetCurrentUserOptions } from \"../../common\";\nimport { CustomerProductsList, CustomerProductsRequestOptions, InlineProduct, ServerItem } from \"../../customers\";\nimport { DataVaultStore } from \"../../data-vault\";\nimport { EmailDeliveryInfo, SendEmailOptions } from \"../../email\";\nimport { ServerListTeamsOptions, ServerListUsersOptions, ServerTeam, ServerTeamCreateOptions } from \"../../teams\";\nimport { ProjectCurrentServerUser, ServerOAuthProvider, ServerUser, ServerUserCreateOptions, SyncedPartialServerUser, TokenPartialUser } from \"../../users\";\nimport { _HexclaveServerAppImpl } from \"../implementations\";\nimport { StackClientApp, StackClientAppConstructorOptions } from \"./client-app\";\n\n\n/** @deprecated Use `HexclaveServerAppConstructorOptions` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackServerAppConstructorOptions<HasTokenStore extends boolean, ProjectId extends string> = StackClientAppConstructorOptions<HasTokenStore, ProjectId> & {\n secretServerKey?: string,\n};\n\n/** @deprecated Use `HexclaveServerApp` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackServerApp<HasTokenStore extends boolean = boolean, ProjectId extends string = string> = (\n & {\n createTeam(data: ServerTeamCreateOptions): Promise<ServerTeam>,\n /**\n * @deprecated use `getUser()` instead\n */\n getServerUser(): Promise<ProjectCurrentServerUser<ProjectId> | null>,\n\n createUser(options: ServerUserCreateOptions): Promise<ServerUser>,\n grantProduct(options: (\n ({ userId: string } | { teamId: string } | { customCustomerId: string }) &\n ({ productId: string } | { product: InlineProduct }) &\n { quantity?: number }\n )): Promise<void>,\n createCheckoutUrl(options: (\n ({ userId: string } | { teamId: string } | { customCustomerId: string }) &\n ({ productId: string } | { product: InlineProduct }) &\n { returnUrl?: string }\n )): Promise<string>,\n\n useUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'redirect' }): ProjectCurrentServerUser<ProjectId>,\n useUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'throw' }): ProjectCurrentServerUser<ProjectId>,\n useUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'anonymous' }): ProjectCurrentServerUser<ProjectId>,\n useUser(options?: GetCurrentUserOptions<HasTokenStore>): ProjectCurrentServerUser<ProjectId> | null,\n useUser(id: string): ServerUser | null,\n useUser(options: { apiKey: string, or?: \"return-null\" | \"anonymous\" }): ServerUser | null,\n useUser(options: { from: \"convex\", ctx: GenericQueryCtx<any>, or?: \"return-null\" | \"anonymous\" }): ServerUser | null,\n\n getUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'redirect' }): Promise<ProjectCurrentServerUser<ProjectId>>,\n getUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'throw' }): Promise<ProjectCurrentServerUser<ProjectId>>,\n getUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'anonymous' }): Promise<ProjectCurrentServerUser<ProjectId>>,\n getUser(options?: GetCurrentUserOptions<HasTokenStore>): Promise<ProjectCurrentServerUser<ProjectId> | null>,\n getUser(id: string): Promise<ServerUser | null>,\n getUser(options: { apiKey: string, or?: \"return-null\" | \"anonymous\" }): Promise<ServerUser | null>,\n getUser(options: { from: \"convex\", ctx: GenericQueryCtx<any>, or?: \"return-null\" | \"anonymous\" }): Promise<ServerUser | null>,\n\n // note: we don't special-case 'anonymous' here to return non-null, see GetPartialUserOptions for more details\n getPartialUser(options: GetCurrentPartialUserOptions<HasTokenStore> & { from: 'token' }): Promise<TokenPartialUser | null>,\n getPartialUser(options: GetCurrentPartialUserOptions<HasTokenStore> & { from: 'convex' }): Promise<TokenPartialUser | null>,\n getPartialUser(options: GetCurrentPartialUserOptions<HasTokenStore>): Promise<SyncedPartialServerUser | TokenPartialUser | null>,\n usePartialUser(options: GetCurrentPartialUserOptions<HasTokenStore> & { from: 'token' }): TokenPartialUser | null,\n usePartialUser(options: GetCurrentPartialUserOptions<HasTokenStore> & { from: 'convex' }): TokenPartialUser | null,\n usePartialUser(options: GetCurrentPartialUserOptions<HasTokenStore>): SyncedPartialServerUser | TokenPartialUser | null,\n useTeam(id: string): ServerTeam | null,\n useTeam(options: { apiKey: string }): ServerTeam | null,\n getTeam(id: string): Promise<ServerTeam | null>,\n getTeam(options: { apiKey: string }): Promise<ServerTeam | null>,\n\n\n useUsers(options?: ServerListUsersOptions): ServerUser[] & { nextCursor: string | null }, // THIS_LINE_PLATFORM react-like\n listUsers(options?: ServerListUsersOptions): Promise<ServerUser[] & { nextCursor: string | null }>,\n\n /**\n * Returns every direct (or recursive) team permission grant for every\n * member of the given team in one request. Use this instead of calling\n * `user.listPermissions(team)` per row when rendering a roster — that\n * pattern produces an N+1 over the team-member endpoint.\n */\n listTeamMemberPermissions(teamId: string, options?: { recursive?: boolean }): Promise<{ userId: string, permissionId: string }[]>,\n useTeamMemberPermissions(teamId: string, options?: { recursive?: boolean }): { userId: string, permissionId: string }[],\n\n // TODO this should actually be on ServerUser\n createOAuthProvider(options: {\n userId: string,\n accountId: string,\n providerConfigId: string,\n email: string,\n allowSignIn: boolean,\n allowConnectedAccounts: boolean,\n }): Promise<Result<ServerOAuthProvider, InstanceType<typeof KnownErrors.OAuthProviderAccountIdAlreadyUsedForSignIn>>>,\n\n sendEmail(options: SendEmailOptions): Promise<void>,\n\n getEmailDeliveryStats(): Promise<EmailDeliveryInfo>,\n useEmailDeliveryStats(): EmailDeliveryInfo,\n\n activateEmailCapacityBoost(): Promise<void>,\n }\n & AsyncStoreProperty<\"user\", [id: string], ServerUser | null, false>\n & Omit<AsyncStoreProperty<\"users\", [], ServerUser[], true>, \"listUsers\" | \"useUsers\">\n & AsyncStoreProperty<\"teams\", [options?: ServerListTeamsOptions], ServerTeam[] & { nextCursor: string | null }, true>\n & AsyncStoreProperty<\"dataVaultStore\", [id: string], DataVaultStore, false>\n & AsyncStoreProperty<\n \"item\",\n [{ itemId: string, userId: string } | { itemId: string, teamId: string } | { itemId: string, customCustomerId: string }],\n ServerItem,\n false\n >\n & AsyncStoreProperty<\n \"products\",\n [options: CustomerProductsRequestOptions],\n CustomerProductsList,\n true\n >\n & StackClientApp<HasTokenStore, ProjectId>\n);\n/** @deprecated Use `HexclaveServerAppConstructor` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackServerAppConstructor = {\n new <\n TokenStoreType extends string,\n HasTokenStore extends (TokenStoreType extends {} ? true : boolean),\n ProjectId extends string\n >(options: StackServerAppConstructorOptions<HasTokenStore, ProjectId>): StackServerApp<HasTokenStore, ProjectId>,\n new (options: StackServerAppConstructorOptions<boolean, string>): StackServerApp<boolean, string>,\n};\nexport type HexclaveServerAppConstructorOptions<HasTokenStore extends boolean, ProjectId extends string> = StackServerAppConstructorOptions<HasTokenStore, ProjectId>;\nexport type HexclaveServerApp<HasTokenStore extends boolean = boolean, ProjectId extends string = string> = StackServerApp<HasTokenStore, ProjectId>;\nexport type HexclaveServerAppConstructor = StackServerAppConstructor;\nexport const HexclaveServerApp: HexclaveServerAppConstructor = _HexclaveServerAppImpl;\n/** @deprecated Use `HexclaveServerApp` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport const StackServerApp: StackServerAppConstructor = HexclaveServerApp;\n"],"mappings":";;AAmIA,MAAa,yDAAkDA,CAAAA,CAAAA;;AAE/D,MAAa,iBAA4C"}
1
+ {"version":3,"file":"server-app.js","names":["_HexclaveServerAppImpl"],"sources":["../../../../../src/lib/hexclave-app/apps/interfaces/server-app.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY UNLESS YOU ALSO EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\nimport { KnownErrors } from \"@hexclave/shared\";\nimport { Result } from \"@hexclave/shared/dist/utils/results\";\nimport type { GenericQueryCtx } from \"convex/server\";\nimport type { AnalyticsQueryOptions, AnalyticsQueryResponse } from \"@hexclave/shared/dist/interface/crud/analytics\";\nimport { AsyncStoreProperty, GetCurrentPartialUserOptions, GetCurrentUserOptions } from \"../../common\";\nimport { CustomerProductsList, CustomerProductsRequestOptions, InlineProduct, ServerItem } from \"../../customers\";\nimport { DataVaultStore } from \"../../data-vault\";\nimport { EmailDeliveryInfo, SendEmailOptions } from \"../../email\";\nimport { ServerListTeamsOptions, ServerListUsersOptions, ServerTeam, ServerTeamCreateOptions } from \"../../teams\";\nimport { ProjectCurrentServerUser, ServerOAuthProvider, ServerUser, ServerUserCreateOptions, SyncedPartialServerUser, TokenPartialUser } from \"../../users\";\nimport { _HexclaveServerAppImpl } from \"../implementations\";\nimport { StackClientApp, StackClientAppConstructorOptions } from \"./client-app\";\n\n\n/** @deprecated Use `HexclaveServerAppConstructorOptions` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackServerAppConstructorOptions<HasTokenStore extends boolean, ProjectId extends string> = StackClientAppConstructorOptions<HasTokenStore, ProjectId> & {\n secretServerKey?: string,\n};\n\n/** @deprecated Use `HexclaveServerApp` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackServerApp<HasTokenStore extends boolean = boolean, ProjectId extends string = string> = (\n & {\n createTeam(data: ServerTeamCreateOptions): Promise<ServerTeam>,\n /**\n * @deprecated use `getUser()` instead\n */\n getServerUser(): Promise<ProjectCurrentServerUser<ProjectId> | null>,\n\n createUser(options: ServerUserCreateOptions): Promise<ServerUser>,\n grantProduct(options: (\n ({ userId: string } | { teamId: string } | { customCustomerId: string }) &\n ({ productId: string } | { product: InlineProduct }) &\n { quantity?: number }\n )): Promise<void>,\n createCheckoutUrl(options: (\n ({ userId: string } | { teamId: string } | { customCustomerId: string }) &\n ({ productId: string } | { product: InlineProduct }) &\n { returnUrl?: string }\n )): Promise<string>,\n\n useUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'redirect' }): ProjectCurrentServerUser<ProjectId>,\n useUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'throw' }): ProjectCurrentServerUser<ProjectId>,\n useUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'anonymous' }): ProjectCurrentServerUser<ProjectId>,\n useUser(options?: GetCurrentUserOptions<HasTokenStore>): ProjectCurrentServerUser<ProjectId> | null,\n useUser(id: string): ServerUser | null,\n useUser(options: { apiKey: string, or?: \"return-null\" | \"anonymous\" }): ServerUser | null,\n useUser(options: { from: \"convex\", ctx: GenericQueryCtx<any>, or?: \"return-null\" | \"anonymous\" }): ServerUser | null,\n\n getUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'redirect' }): Promise<ProjectCurrentServerUser<ProjectId>>,\n getUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'throw' }): Promise<ProjectCurrentServerUser<ProjectId>>,\n getUser(options: GetCurrentUserOptions<HasTokenStore> & { or: 'anonymous' }): Promise<ProjectCurrentServerUser<ProjectId>>,\n getUser(options?: GetCurrentUserOptions<HasTokenStore>): Promise<ProjectCurrentServerUser<ProjectId> | null>,\n getUser(id: string): Promise<ServerUser | null>,\n getUser(options: { apiKey: string, or?: \"return-null\" | \"anonymous\" }): Promise<ServerUser | null>,\n getUser(options: { from: \"convex\", ctx: GenericQueryCtx<any>, or?: \"return-null\" | \"anonymous\" }): Promise<ServerUser | null>,\n\n // note: we don't special-case 'anonymous' here to return non-null, see GetPartialUserOptions for more details\n getPartialUser(options: GetCurrentPartialUserOptions<HasTokenStore> & { from: 'token' }): Promise<TokenPartialUser | null>,\n getPartialUser(options: GetCurrentPartialUserOptions<HasTokenStore> & { from: 'convex' }): Promise<TokenPartialUser | null>,\n getPartialUser(options: GetCurrentPartialUserOptions<HasTokenStore>): Promise<SyncedPartialServerUser | TokenPartialUser | null>,\n usePartialUser(options: GetCurrentPartialUserOptions<HasTokenStore> & { from: 'token' }): TokenPartialUser | null,\n usePartialUser(options: GetCurrentPartialUserOptions<HasTokenStore> & { from: 'convex' }): TokenPartialUser | null,\n usePartialUser(options: GetCurrentPartialUserOptions<HasTokenStore>): SyncedPartialServerUser | TokenPartialUser | null,\n useTeam(id: string): ServerTeam | null,\n useTeam(options: { apiKey: string }): ServerTeam | null,\n getTeam(id: string): Promise<ServerTeam | null>,\n getTeam(options: { apiKey: string }): Promise<ServerTeam | null>,\n\n\n useUsers(options?: ServerListUsersOptions): ServerUser[] & { nextCursor: string | null }, // THIS_LINE_PLATFORM react-like\n listUsers(options?: ServerListUsersOptions): Promise<ServerUser[] & { nextCursor: string | null }>,\n\n /**\n * Returns every direct (or recursive) team permission grant for every\n * member of the given team in one request. Use this instead of calling\n * `user.listPermissions(team)` per row when rendering a roster — that\n * pattern produces an N+1 over the team-member endpoint.\n */\n listTeamMemberPermissions(teamId: string, options?: { recursive?: boolean }): Promise<{ userId: string, permissionId: string }[]>,\n useTeamMemberPermissions(teamId: string, options?: { recursive?: boolean }): { userId: string, permissionId: string }[],\n\n // TODO this should actually be on ServerUser\n createOAuthProvider(options: {\n userId: string,\n accountId: string,\n providerConfigId: string,\n email: string,\n allowSignIn: boolean,\n allowConnectedAccounts: boolean,\n }): Promise<Result<ServerOAuthProvider, InstanceType<typeof KnownErrors.OAuthProviderAccountIdAlreadyUsedForSignIn>>>,\n\n sendEmail(options: SendEmailOptions): Promise<void>,\n\n getEmailDeliveryStats(): Promise<EmailDeliveryInfo>,\n useEmailDeliveryStats(): EmailDeliveryInfo,\n\n activateEmailCapacityBoost(): Promise<void>,\n\n queryAnalytics(options: AnalyticsQueryOptions): Promise<AnalyticsQueryResponse>,\n }\n & AsyncStoreProperty<\"user\", [id: string], ServerUser | null, false>\n & Omit<AsyncStoreProperty<\"users\", [], ServerUser[], true>, \"listUsers\" | \"useUsers\">\n & AsyncStoreProperty<\"teams\", [options?: ServerListTeamsOptions], ServerTeam[] & { nextCursor: string | null }, true>\n & AsyncStoreProperty<\"dataVaultStore\", [id: string], DataVaultStore, false>\n & AsyncStoreProperty<\n \"item\",\n [{ itemId: string, userId: string } | { itemId: string, teamId: string } | { itemId: string, customCustomerId: string }],\n ServerItem,\n false\n >\n & AsyncStoreProperty<\n \"products\",\n [options: CustomerProductsRequestOptions],\n CustomerProductsList,\n true\n >\n & StackClientApp<HasTokenStore, ProjectId>\n);\n/** @deprecated Use `HexclaveServerAppConstructor` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport type StackServerAppConstructor = {\n new <\n TokenStoreType extends string,\n HasTokenStore extends (TokenStoreType extends {} ? true : boolean),\n ProjectId extends string\n >(options: StackServerAppConstructorOptions<HasTokenStore, ProjectId>): StackServerApp<HasTokenStore, ProjectId>,\n new (options: StackServerAppConstructorOptions<boolean, string>): StackServerApp<boolean, string>,\n};\nexport type HexclaveServerAppConstructorOptions<HasTokenStore extends boolean, ProjectId extends string> = StackServerAppConstructorOptions<HasTokenStore, ProjectId>;\nexport type HexclaveServerApp<HasTokenStore extends boolean = boolean, ProjectId extends string = string> = StackServerApp<HasTokenStore, ProjectId>;\nexport type HexclaveServerAppConstructor = StackServerAppConstructor;\nexport const HexclaveServerApp: HexclaveServerAppConstructor = _HexclaveServerAppImpl;\n/** @deprecated Use `HexclaveServerApp` from the `@hexclave/*` package instead — same symbol, new brand name. See https://docs.hexclave.com/migration. */\nexport const StackServerApp: StackServerAppConstructor = HexclaveServerApp;\n"],"mappings":";;AAsIA,MAAa,yDAAkDA,CAAAA,CAAAA;;AAE/D,MAAa,iBAA4C"}
@@ -5,7 +5,7 @@ import { a as AdminTeamPermission, c as AdminTeamPermissionDefinitionUpdateOptio
5
5
  import { a as PlanUsageRow, i as PlanUsagePlanId, n as PlanUsageKind, r as PlanUsageNextPlanId, t as PlanUsage } from "../../index-D7Vdg30O.js";
6
6
  import { r as OAuthConnection, t as Connection } from "../../index-C_kxyHao.js";
7
7
  import { i as ServerContactChannel, t as ContactChannel } from "../../index-DN04TjLM.js";
8
- import { A as HexclaveServerApp, B as ServerListUsersOptions, C as HexclaveAdminAppConstructorOptions, D as StackAdminApp, F as StackServerAppConstructorOptions, G as ServerTeamUser, H as ServerTeamCreateOptions, I as EditableTeamMemberProfile, J as TeamInvitation, K as Team, L as ReceivedTeamInvitation, M as HexclaveServerAppConstructorOptions, N as StackServerApp, O as StackAdminAppConstructor, P as StackServerAppConstructor, Q as TeamUser, R as SentTeamInvitation, S as HexclaveAdminAppConstructor, St as User, U as ServerTeamMemberProfile, V as ServerTeam, W as ServerTeamUpdateOptions, Y as TeamMemberProfile, Z as TeamUpdateOptions, a as StackClientApp, b as EmailOutboxUpdateOptions, c as StackClientAppJson, ct as CurrentServerUser, d as AdminProjectCreateOptions, dt as OAuthProvider, f as AdminProjectUpdateOptions, gt as ServerUser, h as PushedConfigSource, ht as ServerOAuthProvider, i as HexclaveClientAppJson, it as Auth, j as HexclaveServerAppConstructor, k as StackAdminAppConstructorOptions, l as AdminOwnedProject, lt as CurrentUser, n as HexclaveClientAppConstructor, o as StackClientAppConstructor, ot as CurrentInternalServerUser, p as Project, q as TeamCreateOptions, r as HexclaveClientAppConstructorOptions, s as StackClientAppConstructorOptions, st as CurrentInternalUser, t as HexclaveClientApp, u as AdminProject, v as EmailOutboxListOptions, x as HexclaveAdminApp, y as EmailOutboxListResult } from "../../client-app-DS6ngEpe.js";
8
+ import { A as HexclaveServerApp, B as ServerListUsersOptions, C as HexclaveAdminAppConstructorOptions, D as StackAdminApp, F as StackServerAppConstructorOptions, G as ServerTeamUser, H as ServerTeamCreateOptions, I as EditableTeamMemberProfile, J as TeamInvitation, K as Team, L as ReceivedTeamInvitation, M as HexclaveServerAppConstructorOptions, N as StackServerApp, O as StackAdminAppConstructor, P as StackServerAppConstructor, Q as TeamUser, R as SentTeamInvitation, S as HexclaveAdminAppConstructor, St as User, U as ServerTeamMemberProfile, V as ServerTeam, W as ServerTeamUpdateOptions, Y as TeamMemberProfile, Z as TeamUpdateOptions, a as StackClientApp, b as EmailOutboxUpdateOptions, c as StackClientAppJson, ct as CurrentServerUser, d as AdminProjectCreateOptions, dt as OAuthProvider, f as AdminProjectUpdateOptions, gt as ServerUser, h as PushedConfigSource, ht as ServerOAuthProvider, i as HexclaveClientAppJson, it as Auth, j as HexclaveServerAppConstructor, k as StackAdminAppConstructorOptions, l as AdminOwnedProject, lt as CurrentUser, n as HexclaveClientAppConstructor, o as StackClientAppConstructor, ot as CurrentInternalServerUser, p as Project, q as TeamCreateOptions, r as HexclaveClientAppConstructorOptions, s as StackClientAppConstructorOptions, st as CurrentInternalUser, t as HexclaveClientApp, u as AdminProject, v as EmailOutboxListOptions, x as HexclaveAdminApp, y as EmailOutboxListResult } from "../../client-app-mxsyAtl-.js";
9
9
  import { a as AdminProjectConfigUpdateOptions, i as AdminProjectConfig, n as AdminEmailConfig, o as OAuthProviderConfig, r as AdminOAuthProviderConfig, s as ProjectConfig, t as AdminDomainConfig } from "../../index-Dq4xsW7_.js";
10
10
  import { r as getPagePrompt } from "../../url-targets-DPTyLdTU.js";
11
11
  export { type AdminDomainConfig, type AdminEmailConfig, type AdminEmailOutbox, type AdminEmailOutboxRecipient, type AdminEmailOutboxSimpleStatus, type AdminEmailOutboxStatus, type AdminOAuthProviderConfig, type AdminOwnedProject, type AdminProject, type AdminProjectConfig, type AdminProjectConfigUpdateOptions, type AdminProjectCreateOptions, type AdminProjectPermission, type AdminProjectPermissionDefinition, type AdminProjectPermissionDefinitionCreateOptions, type AdminProjectPermissionDefinitionUpdateOptions, type AdminProjectUpdateOptions, type AdminSendAttemptError, type AdminSentEmail, type AdminTeamPermission, type AdminTeamPermissionDefinition, type AdminTeamPermissionDefinitionCreateOptions, type AdminTeamPermissionDefinitionUpdateOptions, type Auth, type Connection, type ContactChannel, type CurrentInternalServerUser, type CurrentInternalUser, type CurrentServerUser, type CurrentUser, type EditableTeamMemberProfile, type EmailOutboxListOptions, type EmailOutboxListResult, type EmailOutboxUpdateOptions, type GetCurrentUserOptions, type GetCurrentUserOptions as GetUserOptions, type HandlerUrlOptions, type HandlerUrls, HexclaveAdminApp, type HexclaveAdminAppConstructor, type HexclaveAdminAppConstructorOptions, HexclaveClientApp, type HexclaveClientAppConstructor, type HexclaveClientAppConstructorOptions, type HexclaveClientAppJson, HexclaveServerApp, type HexclaveServerAppConstructor, type HexclaveServerAppConstructorOptions, type InternalApiKey, type InternalApiKeyBase, type InternalApiKeyBaseCrudRead, type InternalApiKeyCreateOptions, type InternalApiKeyFirstView, type OAuthConnection, type OAuthProvider, type OAuthProviderConfig, type OAuthScopesOnSignIn, type PlanUsage, type PlanUsageKind, type PlanUsageNextPlanId, type PlanUsagePlanId, type PlanUsageRow, type Project, type ProjectConfig, type PushedConfigSource, type ReceivedTeamInvitation, type ResolvedHandlerUrls, type SentTeamInvitation, type ServerContactChannel, type ServerListUsersOptions, type ServerOAuthProvider, type ServerTeam, type ServerTeamCreateOptions, type ServerTeamMemberProfile, type ServerTeamUpdateOptions, type ServerTeamUser, type ServerUser, StackAdminApp, type StackAdminAppConstructor, type StackAdminAppConstructorOptions, StackClientApp, type StackClientAppConstructor, type StackClientAppConstructorOptions, type StackClientAppJson, StackServerApp, type StackServerAppConstructor, type StackServerAppConstructorOptions, type Team, type TeamCreateOptions, type TeamInvitation, type TeamMemberProfile, type TeamUpdateOptions, type TeamUser, type User, getPagePrompt, hexclaveAppInternalsSymbol };
@@ -1,2 +1,2 @@
1
- import { _ as adminProjectUpdateOptionsToCrud, d as AdminProjectCreateOptions, f as AdminProjectUpdateOptions, g as adminProjectCreateOptionsToCrud, h as PushedConfigSource, l as AdminOwnedProject, m as PushConfigOptions, p as Project, u as AdminProject } from "../../../client-app-DS6ngEpe.js";
1
+ import { _ as adminProjectUpdateOptionsToCrud, d as AdminProjectCreateOptions, f as AdminProjectUpdateOptions, g as adminProjectCreateOptionsToCrud, h as PushedConfigSource, l as AdminOwnedProject, m as PushConfigOptions, p as Project, u as AdminProject } from "../../../client-app-mxsyAtl-.js";
2
2
  export { AdminOwnedProject, AdminProject, AdminProjectCreateOptions, AdminProjectUpdateOptions, Project, PushConfigOptions, PushedConfigSource, adminProjectCreateOptionsToCrud, adminProjectUpdateOptionsToCrud };
@@ -1,2 +1,2 @@
1
- import { $ as serverTeamCreateOptionsToCrud, B as ServerListUsersOptions, G as ServerTeamUser, H as ServerTeamCreateOptions, I as EditableTeamMemberProfile, J as TeamInvitation, K as Team, L as ReceivedTeamInvitation, Q as TeamUser, R as SentTeamInvitation, U as ServerTeamMemberProfile, V as ServerTeam, W as ServerTeamUpdateOptions, X as TeamMemberProfileUpdateOptions, Y as TeamMemberProfile, Z as TeamUpdateOptions, et as serverTeamUpdateOptionsToCrud, nt as teamUpdateOptionsToCrud, q as TeamCreateOptions, tt as teamCreateOptionsToCrud, z as ServerListTeamsOptions } from "../../../client-app-DS6ngEpe.js";
1
+ import { $ as serverTeamCreateOptionsToCrud, B as ServerListUsersOptions, G as ServerTeamUser, H as ServerTeamCreateOptions, I as EditableTeamMemberProfile, J as TeamInvitation, K as Team, L as ReceivedTeamInvitation, Q as TeamUser, R as SentTeamInvitation, U as ServerTeamMemberProfile, V as ServerTeam, W as ServerTeamUpdateOptions, X as TeamMemberProfileUpdateOptions, Y as TeamMemberProfile, Z as TeamUpdateOptions, et as serverTeamUpdateOptionsToCrud, nt as teamUpdateOptionsToCrud, q as TeamCreateOptions, tt as teamCreateOptionsToCrud, z as ServerListTeamsOptions } from "../../../client-app-mxsyAtl-.js";
2
2
  export { EditableTeamMemberProfile, ReceivedTeamInvitation, SentTeamInvitation, ServerListTeamsOptions, ServerListUsersOptions, ServerTeam, ServerTeamCreateOptions, ServerTeamMemberProfile, ServerTeamUpdateOptions, ServerTeamUser, Team, TeamCreateOptions, TeamInvitation, TeamMemberProfile, TeamMemberProfileUpdateOptions, TeamUpdateOptions, TeamUser, serverTeamCreateOptionsToCrud, serverTeamUpdateOptionsToCrud, teamCreateOptionsToCrud, teamUpdateOptionsToCrud };
@@ -1,2 +1,2 @@
1
- import { Ct as UserExtra, Dt as userUpdateOptionsToCrud, Et as serverUserUpdateOptionsToCrud, Ot as withUserDestructureGuard, St as User, Tt as serverUserCreateOptionsToCrud, _t as ServerUserCreateOptions, at as BaseUser, bt as SyncedPartialUser, ct as CurrentServerUser, dt as OAuthProvider, ft as ProjectCurrentServerUser, gt as ServerUser, ht as ServerOAuthProvider, it as Auth, lt as CurrentUser, mt as ServerBaseUser, ot as CurrentInternalServerUser, pt as ProjectCurrentUser, rt as ActiveSession, st as CurrentInternalUser, ut as InternalUserExtra, vt as ServerUserUpdateOptions, wt as UserUpdateOptions, xt as TokenPartialUser, yt as SyncedPartialServerUser } from "../../../client-app-DS6ngEpe.js";
1
+ import { Ct as UserExtra, Dt as userUpdateOptionsToCrud, Et as serverUserUpdateOptionsToCrud, Ot as withUserDestructureGuard, St as User, Tt as serverUserCreateOptionsToCrud, _t as ServerUserCreateOptions, at as BaseUser, bt as SyncedPartialUser, ct as CurrentServerUser, dt as OAuthProvider, ft as ProjectCurrentServerUser, gt as ServerUser, ht as ServerOAuthProvider, it as Auth, lt as CurrentUser, mt as ServerBaseUser, ot as CurrentInternalServerUser, pt as ProjectCurrentUser, rt as ActiveSession, st as CurrentInternalUser, ut as InternalUserExtra, vt as ServerUserUpdateOptions, wt as UserUpdateOptions, xt as TokenPartialUser, yt as SyncedPartialServerUser } from "../../../client-app-mxsyAtl-.js";
2
2
  export { ActiveSession, Auth, BaseUser, CurrentInternalServerUser, CurrentInternalUser, CurrentServerUser, CurrentUser, InternalUserExtra, OAuthProvider, ProjectCurrentServerUser, ProjectCurrentUser, ServerBaseUser, ServerOAuthProvider, ServerUser, ServerUserCreateOptions, ServerUserUpdateOptions, SyncedPartialServerUser, SyncedPartialUser, TokenPartialUser, User, UserExtra, UserUpdateOptions, serverUserCreateOptionsToCrud, serverUserUpdateOptionsToCrud, userUpdateOptionsToCrud, withUserDestructureGuard };
@@ -1,2 +1,2 @@
1
- import { n as useStackApp, r as useUser, t as useHexclaveApp } from "../hooks-Bn_CxStb.js";
1
+ import { n as useStackApp, r as useUser, t as useHexclaveApp } from "../hooks-UrxPrSEk.js";
2
2
  export { useHexclaveApp, useStackApp, useUser };
@@ -1,4 +1,4 @@
1
- import { a as StackClientApp } from "../client-app-DS6ngEpe.js";
1
+ import { a as StackClientApp } from "../client-app-mxsyAtl-.js";
2
2
  import React from "react";
3
3
 
4
4
  //#region src/providers/hexclave-context.d.ts
@@ -1,4 +1,4 @@
1
- import { a as StackClientApp, c as StackClientAppJson } from "../client-app-DS6ngEpe.js";
1
+ import { a as StackClientApp, c as StackClientAppJson } from "../client-app-mxsyAtl-.js";
2
2
  import { CurrentUserCrud } from "@hexclave/shared/dist/interface/crud/current-user";
3
3
  import React from "react";
4
4
 
@@ -1,2 +1,2 @@
1
- import { n as HexclaveProvider, r as StackProvider, t as ActiveProvider } from "../hexclave-provider-OK80Y-u7.js";
1
+ import { n as HexclaveProvider, r as StackProvider, t as ActiveProvider } from "../hexclave-provider-BHgJzJWl.js";
2
2
  export { HexclaveProvider, StackProvider, ActiveProvider as default };
@@ -1,4 +1,4 @@
1
- import { a as StackClientApp } from "../client-app-DS6ngEpe.js";
1
+ import { a as StackClientApp } from "../client-app-mxsyAtl-.js";
2
2
  //#region src/pushed-config-error-overlay/index.d.ts
3
3
  declare function mountPushedConfigErrorOverlay(app: StackClientApp<true>): () => void;
4
4
  //#endregion
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "//": "THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY UNLESS YOU ALSO EDIT THE CORRESPONDING FILE IN packages/template (FOR package.json FILES, PLEASE EDIT package-template.json)",
3
3
  "name": "@hexclave/react",
4
- "version": "1.0.44",
4
+ "version": "1.0.46",
5
5
  "repository": "https://github.com/hexclave/hexclave",
6
6
  "sideEffects": false,
7
7
  "main": "./dist/index.js",
@@ -74,8 +74,8 @@
74
74
  "tailwindcss-animate": "^1.0.7",
75
75
  "rrweb": "^1.1.3",
76
76
  "yup": "^1.7.1",
77
- "@hexclave/shared": "1.0.44",
78
- "@hexclave/ui": "1.0.44"
77
+ "@hexclave/shared": "1.0.46",
78
+ "@hexclave/ui": "1.0.46"
79
79
  },
80
80
  "peerDependencies": {
81
81
  "@types/react": ">=18.0.0",
@@ -6,7 +6,6 @@ import { KnownErrors, HexclaveAdminInterface } from "@hexclave/shared";
6
6
  import { getProductionModeErrors } from "@hexclave/shared/dist/helpers/production-mode";
7
7
  import { InternalApiKeyCreateCrudResponse } from "@hexclave/shared/dist/interface/admin-interface";
8
8
  import type { AnalyticsClickmapOptions, AnalyticsClickmapResponse, AnalyticsClickmapTokenResponse, MetricsResponse, MetricsUserCounts, UserActivityResponse } from "@hexclave/shared/dist/interface/admin-metrics";
9
- import { AnalyticsQueryOptions, AnalyticsQueryResponse } from "@hexclave/shared/dist/interface/crud/analytics";
10
9
  import { EmailTemplateCrud } from "@hexclave/shared/dist/interface/crud/email-templates";
11
10
  import { InternalApiKeysCrud } from "@hexclave/shared/dist/interface/crud/internal-api-keys";
12
11
  import { ProjectsCrud } from "@hexclave/shared/dist/interface/crud/projects";
@@ -14,7 +13,7 @@ import type { AdminGetSessionReplayChunkEventsResponse } from "@hexclave/shared/
14
13
  import type { Transaction, TransactionType } from "@hexclave/shared/dist/interface/crud/transactions";
15
14
  import type { RestrictedReason } from "@hexclave/shared/dist/schema-fields";
16
15
  import type { MoneyAmount } from "@hexclave/shared/dist/utils/currency-constants";
17
- import { HexclaveAssertionError, throwErr } from "@hexclave/shared/dist/utils/errors";
16
+ import { HexclaveAssertionError, captureError, throwErr } from "@hexclave/shared/dist/utils/errors";
18
17
  import type { Json } from "@hexclave/shared/dist/utils/json";
19
18
  import { pick, typedEntries, typedValues } from "@hexclave/shared/dist/utils/objects";
20
19
  import { Result } from "@hexclave/shared/dist/utils/results";
@@ -884,6 +883,20 @@ export class _HexclaveAdminAppImplIncomplete<HasTokenStore extends boolean, Proj
884
883
  allow_negative: true,
885
884
  }
886
885
  );
886
+ const [customerType, customerId] = "userId" in options
887
+ ? ["user", options.userId] as const
888
+ : "teamId" in options
889
+ ? ["team", options.teamId] as const
890
+ : ["custom", options.customCustomerId] as const;
891
+ try {
892
+ // Best-effort: the quantity change is already persisted at this point, so
893
+ // a cache refresh failure must not make the mutation look failed (a retry
894
+ // would apply the delta twice).
895
+ await this._refreshItemCache(customerType, customerId, options.itemId);
896
+ await this._transactionsCache.invalidateWhere(() => true);
897
+ } catch (error) {
898
+ captureError("create-item-quantity-change-cache-refresh", error);
899
+ }
887
900
  }
888
901
 
889
902
  async refundTransaction(options: {
@@ -1192,10 +1205,6 @@ export class _HexclaveAdminAppImplIncomplete<HasTokenStore extends boolean, Proj
1192
1205
  return data;
1193
1206
  }
1194
1207
 
1195
- async queryAnalytics(options: AnalyticsQueryOptions): Promise<AnalyticsQueryResponse> {
1196
- return await this._interface.queryAnalytics(options);
1197
- }
1198
-
1199
1208
  async getAnalyticsClickmap(options: AnalyticsClickmapOptions): Promise<AnalyticsClickmapResponse> {
1200
1209
  return await this._interface.getAnalyticsClickmap({
1201
1210
  kind: options.kind,
@@ -3,6 +3,7 @@
3
3
  // THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY UNLESS YOU ALSO EDIT THE CORRESPONDING FILE IN packages/template
4
4
  //===========================================
5
5
  import { HexclaveServerInterface, KnownErrors } from "@hexclave/shared";
6
+ import type { AnalyticsQueryOptions, AnalyticsQueryResponse } from "@hexclave/shared/dist/interface/crud/analytics";
6
7
  import { ContactChannelsCrud } from "@hexclave/shared/dist/interface/crud/contact-channels";
7
8
  import { ItemCrud } from "@hexclave/shared/dist/interface/crud/items";
8
9
  import { NotificationPreferenceCrud } from "@hexclave/shared/dist/interface/crud/notification-preferences";
@@ -1395,6 +1396,16 @@ export class _HexclaveServerAppImplIncomplete<HasTokenStore extends boolean, Pro
1395
1396
  }
1396
1397
  }
1397
1398
 
1399
+ protected async _refreshItemCache(customerType: "user" | "team" | "custom", customerId: string, itemId: string): Promise<void> {
1400
+ if (customerType === "user") {
1401
+ await this._serverUserItemsCache.refresh([customerId, itemId]);
1402
+ } else if (customerType === "team") {
1403
+ await this._serverTeamItemsCache.refresh([customerId, itemId]);
1404
+ } else {
1405
+ await this._serverCustomItemsCache.refresh([customerId, itemId]);
1406
+ }
1407
+ }
1408
+
1398
1409
  async listProducts(options: CustomerProductsRequestOptions): Promise<CustomerProductsList> {
1399
1410
  if ("userId" in options) {
1400
1411
  const response = Result.orThrow(await this._serverUserProductsCache.getOrWait([options.userId, options.cursor ?? null, options.limit ?? null], "write-only"));
@@ -1584,6 +1595,10 @@ export class _HexclaveServerAppImplIncomplete<HasTokenStore extends boolean, Pro
1584
1595
  await this._emailDeliveryInfoCache.refresh([]);
1585
1596
  }
1586
1597
 
1598
+ async queryAnalytics(options: AnalyticsQueryOptions): Promise<AnalyticsQueryResponse> {
1599
+ return await this._interface.queryAnalytics(options);
1600
+ }
1601
+
1587
1602
  protected override async _refreshSession(session: InternalSession) {
1588
1603
  await Promise.all([
1589
1604
  super._refreshUser(session),
@@ -3,7 +3,6 @@
3
3
  // THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY UNLESS YOU ALSO EDIT THE CORRESPONDING FILE IN packages/template
4
4
  //===========================================
5
5
  import type { AnalyticsClickmapOptions, AnalyticsClickmapResponse, AnalyticsClickmapTokenResponse } from "@hexclave/shared/dist/interface/admin-metrics";
6
- import { AnalyticsQueryOptions, AnalyticsQueryResponse } from "@hexclave/shared/dist/interface/crud/analytics";
7
6
  import type { AdminGetSessionReplayChunkEventsResponse, AdminGetSessionReplayAllEventsResponse } from "@hexclave/shared/dist/interface/crud/session-replays";
8
7
  import type { Transaction, TransactionType } from "@hexclave/shared/dist/interface/crud/transactions";
9
8
  import { InternalSession } from "@hexclave/shared/dist/sessions";
@@ -162,7 +161,6 @@ export type StackAdminApp<HasTokenStore extends boolean = boolean, ProjectId ext
162
161
  amountUsd: MoneyAmount,
163
162
  endAction?: "now" | "at-period-end",
164
163
  }): Promise<{ refundTransactionId: string }>,
165
- queryAnalytics(options: AnalyticsQueryOptions): Promise<AnalyticsQueryResponse>,
166
164
  getAnalyticsClickmap(options: AnalyticsClickmapOptions): Promise<AnalyticsClickmapResponse>,
167
165
  createAnalyticsClickmapToken(options: { origin: string }): Promise<AnalyticsClickmapTokenResponse>,
168
166
 
@@ -5,6 +5,7 @@
5
5
  import { KnownErrors } from "@hexclave/shared";
6
6
  import { Result } from "@hexclave/shared/dist/utils/results";
7
7
  import type { GenericQueryCtx } from "convex/server";
8
+ import type { AnalyticsQueryOptions, AnalyticsQueryResponse } from "@hexclave/shared/dist/interface/crud/analytics";
8
9
  import { AsyncStoreProperty, GetCurrentPartialUserOptions, GetCurrentUserOptions } from "../../common";
9
10
  import { CustomerProductsList, CustomerProductsRequestOptions, InlineProduct, ServerItem } from "../../customers";
10
11
  import { DataVaultStore } from "../../data-vault";
@@ -98,6 +99,8 @@ export type StackServerApp<HasTokenStore extends boolean = boolean, ProjectId ex
98
99
  useEmailDeliveryStats(): EmailDeliveryInfo,
99
100
 
100
101
  activateEmailCapacityBoost(): Promise<void>,
102
+
103
+ queryAnalytics(options: AnalyticsQueryOptions): Promise<AnalyticsQueryResponse>,
101
104
  }
102
105
  & AsyncStoreProperty<"user", [id: string], ServerUser | null, false>
103
106
  & Omit<AsyncStoreProperty<"users", [], ServerUser[], true>, "listUsers" | "useUsers">
@@ -1 +0,0 @@
1
- {"version":3,"file":"client-app-DS6ngEpe.d.ts","names":[],"sources":["../src/lib/hexclave-app/users/index.ts","../src/lib/hexclave-app/teams/index.ts","../src/lib/hexclave-app/apps/interfaces/server-app.ts","../src/lib/hexclave-app/apps/interfaces/admin-app.ts","../src/lib/hexclave-app/projects/index.ts","../src/lib/hexclave-app/apps/interfaces/client-app.ts"],"mappings":"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"}