@carlonicora/nextjs-jsonapi 3.15.1 → 3.16.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.
Files changed (71) hide show
  1. package/dist/{AbstractService-B0T7h8fX.d.mts → AbstractService-Ckm2X5fW.d.mts} +2 -5
  2. package/dist/{AbstractService-Cew0PD0L.d.ts → AbstractService-V3VGQMhL.d.ts} +2 -5
  3. package/dist/{BlockNoteEditor-6KPJWJJM.js → BlockNoteEditor-S43PQJEC.js} +93 -53
  4. package/dist/BlockNoteEditor-S43PQJEC.js.map +1 -0
  5. package/dist/{BlockNoteEditor-RRUV4TZY.mjs → BlockNoteEditor-SGISBQD5.mjs} +103 -63
  6. package/dist/BlockNoteEditor-SGISBQD5.mjs.map +1 -0
  7. package/dist/{BlockNoteViewer-P2VKEFRN.mjs → BlockNoteViewer-RK2RKOB7.mjs} +2 -2
  8. package/dist/{BlockNoteViewer-CWFPYYIU.js → BlockNoteViewer-SVVAZ6TQ.js} +3 -3
  9. package/dist/{BlockNoteViewer-CWFPYYIU.js.map → BlockNoteViewer-SVVAZ6TQ.js.map} +1 -1
  10. package/dist/{HandbookSectionInterface-CAXxbDw0.d.ts → HandbookSectionInterface-DFj2zErb.d.ts} +1 -1
  11. package/dist/{HandbookSectionInterface-BOxIdBdd.d.mts → HandbookSectionInterface-DqU_d0sy.d.mts} +1 -1
  12. package/dist/billing/index.js +401 -401
  13. package/dist/billing/index.mjs +3 -3
  14. package/dist/{chunk-2SP4NBQA.mjs → chunk-47CLHN2G.mjs} +19 -8
  15. package/dist/chunk-47CLHN2G.mjs.map +1 -0
  16. package/dist/{chunk-ZNAY65EO.js → chunk-AOWHVECO.js} +828 -817
  17. package/dist/chunk-AOWHVECO.js.map +1 -0
  18. package/dist/{chunk-VZKJIAND.mjs → chunk-IALPADOD.mjs} +2 -2
  19. package/dist/{chunk-XH4IURUD.js → chunk-ODH2LYWC.js} +7 -7
  20. package/dist/{chunk-XH4IURUD.js.map → chunk-ODH2LYWC.js.map} +1 -1
  21. package/dist/{chunk-IB7DTXWG.js → chunk-TBSMAL5Y.js} +120 -115
  22. package/dist/chunk-TBSMAL5Y.js.map +1 -0
  23. package/dist/{chunk-OSFYCSTW.mjs → chunk-YCFPSXLK.mjs} +22 -17
  24. package/dist/chunk-YCFPSXLK.mjs.map +1 -0
  25. package/dist/client/index.js +4 -4
  26. package/dist/client/index.mjs +3 -3
  27. package/dist/components/index.d.mts +37 -6
  28. package/dist/components/index.d.ts +37 -6
  29. package/dist/components/index.js +4 -4
  30. package/dist/components/index.mjs +3 -3
  31. package/dist/contexts/index.js +4 -4
  32. package/dist/contexts/index.mjs +3 -3
  33. package/dist/core/index.d.mts +12 -7
  34. package/dist/core/index.d.ts +12 -7
  35. package/dist/core/index.js +2 -2
  36. package/dist/core/index.mjs +1 -1
  37. package/dist/features/help/index.js +37 -37
  38. package/dist/features/help/index.mjs +3 -3
  39. package/dist/features/tokenusage/index.d.mts +1 -1
  40. package/dist/features/tokenusage/index.d.ts +1 -1
  41. package/dist/features/tokenusage/index.js +101 -101
  42. package/dist/features/tokenusage/index.mjs +3 -3
  43. package/dist/index.d.mts +5 -5
  44. package/dist/index.d.ts +5 -5
  45. package/dist/index.js +3 -3
  46. package/dist/index.mjs +2 -2
  47. package/dist/{s3.service-CUGarZs3.d.ts → s3.service-DJHqEZAp.d.ts} +1 -1
  48. package/dist/{s3.service-C0Yq2Sx3.d.mts → s3.service-DaRFLnrX.d.mts} +1 -1
  49. package/dist/server/index.d.mts +2 -2
  50. package/dist/server/index.d.ts +2 -2
  51. package/dist/server/index.js +3 -3
  52. package/dist/server/index.mjs +1 -1
  53. package/package.json +1 -1
  54. package/src/components/editors/BlockNoteEditor.tsx +70 -33
  55. package/src/components/editors/BlockNoteEditorAiActions.tsx +49 -0
  56. package/src/components/editors/__tests__/BlockNoteEditorAiActions.test.ts +25 -0
  57. package/src/components/editors/index.ts +2 -1
  58. package/src/components/forms/FormBlockNote.tsx +8 -0
  59. package/src/components/forms/FormFieldWrapper.tsx +22 -6
  60. package/src/core/abstracts/AbstractService.ts +9 -30
  61. package/src/core/abstracts/ClientAbstractService.ts +5 -0
  62. package/src/core/abstracts/__tests__/lastApiResponse.spec.ts +45 -0
  63. package/src/core/abstracts/lastApiResponse.ts +37 -0
  64. package/dist/BlockNoteEditor-6KPJWJJM.js.map +0 -1
  65. package/dist/BlockNoteEditor-RRUV4TZY.mjs.map +0 -1
  66. package/dist/chunk-2SP4NBQA.mjs.map +0 -1
  67. package/dist/chunk-IB7DTXWG.js.map +0 -1
  68. package/dist/chunk-OSFYCSTW.mjs.map +0 -1
  69. package/dist/chunk-ZNAY65EO.js.map +0 -1
  70. /package/dist/{BlockNoteViewer-P2VKEFRN.mjs.map → BlockNoteViewer-RK2RKOB7.mjs.map} +0 -0
  71. /package/dist/{chunk-VZKJIAND.mjs.map → chunk-IALPADOD.mjs.map} +0 -0
package/dist/index.d.mts CHANGED
@@ -1,18 +1,18 @@
1
- export { AppModuleDefinitions, Assistant, AssistantAction, AssistantActionInput, AssistantActionInterface, AssistantActionModule, AssistantActionService, AssistantActionStatus, AssistantMessage, AssistantMessageModule, AssistantMessageService, AssistantModule, AssistantService, AuditLog, AuditLogInterface, AuditLogModule, AuditLogService, Auth, AuthModule, AuthorModule, BackupCodeVerify, BackupCodeVerifyInput, BackupCodeVerifyModule, Billing, BillingModule, BillingService, BlockDiffOptions, BlockNoteDiffUtil, BlockNoteWordDiffRendererUtil, CURRENT_USER_STORAGE_KEY, Chunk, ChunkInput, ChunkModule, ClientAbstractService, ClientHttpMethod, ClientNextRef, ClientPreviousRef, ClientSelfRef, ClientTotalRef, CodiceFiscaleValidationOptions, Company, CompanyFields, CompanyModule, Content, ContentModule, DataClass, DataClass as DataClassRegistry, DiffBlock, DiffResult, ENV, EndpointCreator, EndpointQuery, EntityAiStatus, EntityObject, Feature, FeatureModule, FormatOption, FoundationModuleDefinitions, HandbookPage, HandbookPageFields, HandbookPageInput, HandbookPageModule, HandbookPageService, HandbookSection, HandbookSectionInput, HandbookSectionModule, HandbookSectionService, HandbookThread, HandbookThreadInput, HandbookThreadInterface, HandbookThreadMessage, HandbookThreadMessageInput, HandbookThreadMessageInterface, HandbookThreadMessageModule, HandbookThreadMessageService, HandbookThreadModule, HandbookThreadService, HowTo, HowToFields, HowToModule, HowToService, InviteValidation, JsonApiDataFactory, MOBILE_BREAKPOINT, Module, ModuleDefinitions, ModuleModule, ModulePathsModule, ModuleRegistrar, ModuleRegistry, Modules, Notification, NotificationFields, NotificationModule, OAuthClient, OAuthModule, OAuthService, Passkey, PasskeyAuthenticationOptions, PasskeyAuthenticationOptionsInput, PasskeyAuthenticationOptionsInterface, PasskeyAuthenticationOptionsModule, PasskeyModule, PasskeyRegistrationOptions, PasskeyRegistrationOptionsInput, PasskeyRegistrationOptionsInterface, PasskeyRegistrationOptionsModule, PasskeyRegistrationVerify, PasskeyRegistrationVerifyInput, PasskeyRegistrationVerifyModule, PasskeyRename, PasskeyRenameInput, PasskeyRenameModule, PasskeyVerifyLogin, PasskeyVerifyLoginInput, PasskeyVerifyLoginModule, PaymentMethod, PermissionMappingModule, Push, PushInput, PushInterface, PushModule, RbacMatrixModule, ReferralModule, ReferralService, ReferralStats, ReferralStatsModule, RehydrationFactory, Role, RoleModule, S3, S3Module, SearchResultInterface, StripeCustomer, StripeCustomerModule, StripeCustomerService, StripeInvoice, StripeInvoiceModule, StripeInvoiceService, StripePaymentMethodModule, StripePrice, StripePriceFields, StripePriceModule, StripePriceService, StripeProduct, StripeProductFields, StripeProductModule, StripeProductService, StripePromotionCode, StripePromotionCodeModule, StripePromotionCodeService, StripeSubscription, StripeSubscriptionModule, StripeSubscriptionService, StripeUsage, StripeUsageModule, StripeUsageService, TableOptions, ToastOptions, TotpAuthenticator, TotpAuthenticatorModule, TotpSetup, TotpSetupInput, TotpSetupInterface, TotpSetupModule, TotpVerify, TotpVerifyInput, TotpVerifyLogin, TotpVerifyLoginInput, TotpVerifyLoginModule, TotpVerifyModule, TwoFactorChallenge, TwoFactorChallengeInput, TwoFactorChallengeModule, TwoFactorEnable, TwoFactorEnableInput, TwoFactorEnableModule, TwoFactorService, TwoFactorStatus, TwoFactorStatusInterface, TwoFactorStatusModule, User, UserModule, UserObject, VIEWPORT_COOKIE_NAME, Waitlist, WaitlistInput, WaitlistInterface, WaitlistModule, WaitlistService, WaitlistStats, WaitlistStatsInterface, WaitlistStatsModule, WaitlistStatus, WordDiff, checkPermissions, checkPermissionsFromServer, cn, composeRefs, dismissToast, entityObjectSchema, exists, formatCodiceFiscale, formatDate, formatLocalDate, formatPartitaIva, getBootstrapper, getClientGlobalErrorHandler, getTableComponents, getTableOptions, getValueFromPath, handbookPageContent, handbookPageSummary, handbookPageTitle, handbookSectionSummary, handbookSectionTitle, hasBootstrapper, isRemoteImageSrc, rehydrate, rehydrateList, resetBootstrapStore, setBootstrapper, setClientGlobalErrorHandler, showCustomToast, showError, showToast, translateData, translateResponse, tryBootstrap, useComposedRefs, useIsMobile, userObjectSchema, validateCodiceFiscale, validateItalianTaxCode, validatePartitaIva } from './core/index.mjs';
1
+ export { AppModuleDefinitions, Assistant, AssistantAction, AssistantActionInput, AssistantActionInterface, AssistantActionModule, AssistantActionService, AssistantActionStatus, AssistantMessage, AssistantMessageModule, AssistantMessageService, AssistantModule, AssistantService, AuditLog, AuditLogInterface, AuditLogModule, AuditLogService, Auth, AuthModule, AuthorModule, BackupCodeVerify, BackupCodeVerifyInput, BackupCodeVerifyModule, Billing, BillingModule, BillingService, BlockDiffOptions, BlockNoteDiffUtil, BlockNoteWordDiffRendererUtil, CURRENT_USER_STORAGE_KEY, Chunk, ChunkInput, ChunkModule, ClientAbstractService, ClientHttpMethod, ClientNextRef, ClientPreviousRef, ClientSelfRef, ClientTotalRef, CodiceFiscaleValidationOptions, Company, CompanyFields, CompanyModule, Content, ContentModule, DataClass, DataClass as DataClassRegistry, DiffBlock, DiffResult, ENV, EndpointCreator, EndpointQuery, EntityAiStatus, EntityObject, Feature, FeatureModule, FormatOption, FoundationModuleDefinitions, HandbookPage, HandbookPageFields, HandbookPageInput, HandbookPageModule, HandbookPageService, HandbookSection, HandbookSectionInput, HandbookSectionModule, HandbookSectionService, HandbookThread, HandbookThreadInput, HandbookThreadInterface, HandbookThreadMessage, HandbookThreadMessageInput, HandbookThreadMessageInterface, HandbookThreadMessageModule, HandbookThreadMessageService, HandbookThreadModule, HandbookThreadService, HowTo, HowToFields, HowToModule, HowToService, InviteValidation, JsonApiDataFactory, MOBILE_BREAKPOINT, Module, ModuleDefinitions, ModuleModule, ModulePathsModule, ModuleRegistrar, ModuleRegistry, Modules, Notification, NotificationFields, NotificationModule, OAuthClient, OAuthModule, OAuthService, Passkey, PasskeyAuthenticationOptions, PasskeyAuthenticationOptionsInput, PasskeyAuthenticationOptionsInterface, PasskeyAuthenticationOptionsModule, PasskeyModule, PasskeyRegistrationOptions, PasskeyRegistrationOptionsInput, PasskeyRegistrationOptionsInterface, PasskeyRegistrationOptionsModule, PasskeyRegistrationVerify, PasskeyRegistrationVerifyInput, PasskeyRegistrationVerifyModule, PasskeyRename, PasskeyRenameInput, PasskeyRenameModule, PasskeyVerifyLogin, PasskeyVerifyLoginInput, PasskeyVerifyLoginModule, PaymentMethod, PermissionMappingModule, Push, PushInput, PushInterface, PushModule, RbacMatrixModule, ReferralModule, ReferralService, ReferralStats, ReferralStatsModule, RehydrationFactory, Role, RoleModule, S3, S3Module, SearchResultInterface, StripeCustomer, StripeCustomerModule, StripeCustomerService, StripeInvoice, StripeInvoiceModule, StripeInvoiceService, StripePaymentMethodModule, StripePrice, StripePriceFields, StripePriceModule, StripePriceService, StripeProduct, StripeProductFields, StripeProductModule, StripeProductService, StripePromotionCode, StripePromotionCodeModule, StripePromotionCodeService, StripeSubscription, StripeSubscriptionModule, StripeSubscriptionService, StripeUsage, StripeUsageModule, StripeUsageService, TableOptions, ToastOptions, TotpAuthenticator, TotpAuthenticatorModule, TotpSetup, TotpSetupInput, TotpSetupInterface, TotpSetupModule, TotpVerify, TotpVerifyInput, TotpVerifyLogin, TotpVerifyLoginInput, TotpVerifyLoginModule, TotpVerifyModule, TwoFactorChallenge, TwoFactorChallengeInput, TwoFactorChallengeModule, TwoFactorEnable, TwoFactorEnableInput, TwoFactorEnableModule, TwoFactorService, TwoFactorStatus, TwoFactorStatusInterface, TwoFactorStatusModule, User, UserModule, UserObject, VIEWPORT_COOKIE_NAME, Waitlist, WaitlistInput, WaitlistInterface, WaitlistModule, WaitlistService, WaitlistStats, WaitlistStatsInterface, WaitlistStatsModule, WaitlistStatus, WordDiff, checkPermissions, checkPermissionsFromServer, clearLastApiMeta, clearLastApiTotal, cn, composeRefs, dismissToast, entityObjectSchema, exists, formatCodiceFiscale, formatDate, formatLocalDate, formatPartitaIva, getBootstrapper, getClientGlobalErrorHandler, getLastApiMeta, getLastApiTotal, getTableComponents, getTableOptions, getValueFromPath, handbookPageContent, handbookPageSummary, handbookPageTitle, handbookSectionSummary, handbookSectionTitle, hasBootstrapper, isRemoteImageSrc, rehydrate, rehydrateList, resetBootstrapStore, setBootstrapper, setClientGlobalErrorHandler, showCustomToast, showError, showToast, translateData, translateResponse, tryBootstrap, useComposedRefs, useIsMobile, userObjectSchema, validateCodiceFiscale, validateItalianTaxCode, validatePartitaIva } from './core/index.mjs';
2
2
  export { A as ApiData } from './ApiData-DPKNfY-9.mjs';
3
3
  import { A as ApiDataInterface, J as JsonApiHydratedDataInterface } from './ApiDataInterface-BcZeXy5X.mjs';
4
4
  export { A as ApiRequestDataTypeInterface, F as FieldSelector, G as GetterKeys, c as createJsonApiInclusion } from './ApiRequestDataTypeInterface-CYEcRUrh.mjs';
5
5
  export { A as ApiResponseInterface } from './ApiResponseInterface-rsXRL_Hn.mjs';
6
6
  import { A as AbstractApiData } from './AbstractApiData-XLhBP5Tl.mjs';
7
- import { A as AbstractService } from './AbstractService-B0T7h8fX.mjs';
8
- export { H as HttpMethod, N as NextRef, P as PreviousRef, S as SelfRef, T as TotalRef, b as clearLastApiMeta, c as clearLastApiTotal, d as getGlobalErrorHandler, a as getLastApiMeta, g as getLastApiTotal, s as setGlobalErrorHandler } from './AbstractService-B0T7h8fX.mjs';
7
+ import { A as AbstractService } from './AbstractService-Ckm2X5fW.mjs';
8
+ export { H as HttpMethod, N as NextRef, P as PreviousRef, S as SelfRef, T as TotalRef, g as getGlobalErrorHandler, s as setGlobalErrorHandler } from './AbstractService-Ckm2X5fW.mjs';
9
9
  export { c as AssistantMessageInput, d as AssistantMessageInterface, A as AssistantMessageRole, b as AssistantMessageType, B as BreadcrumbItemData, e as ChunkInterface, C as ChunkRelationshipMeta, H as HowToInput, a as HowToInterface } from './AssistantMessageInterface-Du3ShThp.mjs';
10
10
  export { C as ContentFields, D as D3Link, a as D3Node, R as RoleFields, U as UserFields } from './content.fields-1AlHDtDb.mjs';
11
11
  export { ClassValue } from 'clsx';
12
- export { h as AiConnection, l as AiConnectionEnvDefaults, i as AiConnectionFields, n as AiConnectionInput, m as AiConnectionInterface, p as AiConnectionModule, o as AiConnectionService, j as AiProviderFieldDescriptor, k as AiProviderRegistry, A as AuthComponent, H as HandbookPageInterface, q as HandbookSectionInterface, P as PasskeyInterface, T as TotpAuthenticatorInterface, b as getIcon, a as getIconByModule, c as getIconByModuleName, g as getInitials, d as getLucideIcon, e as getLucideIconByModule, f as getLucideIconByModuleName } from './HandbookSectionInterface-BOxIdBdd.mjs';
12
+ export { h as AiConnection, l as AiConnectionEnvDefaults, i as AiConnectionFields, n as AiConnectionInput, m as AiConnectionInterface, p as AiConnectionModule, o as AiConnectionService, j as AiProviderFieldDescriptor, k as AiProviderRegistry, A as AuthComponent, H as HandbookPageInterface, q as HandbookSectionInterface, P as PasskeyInterface, T as TotpAuthenticatorInterface, b as getIcon, a as getIconByModule, c as getIconByModuleName, g as getInitials, d as getLucideIcon, e as getLucideIconByModule, f as getLucideIconByModuleName } from './HandbookSectionInterface-DqU_d0sy.mjs';
13
13
  export { A as Action, d as ModuleDefinition, a as ModuleFactory, c as ModulePermissionDefinition, M as ModuleWithPermissions, P as PageUrl, b as PermissionCheck, e as PermissionConfig, f as PermissionModule, g as PermissionUser } from './types-Bq_UA8Lg.mjs';
14
14
  export { A as AuthInput, b as AuthInterface, a as AuthQuery } from './auth.interface-dR2-6gPM.mjs';
15
- export { A as AuthService, C as CompanyService, a as ContentService, F as FeatureService, N as NotificationService, P as PushService, R as RoleService, b as S3Input, c as S3Interface, S as S3Service, T as TwoFactorChallengeInterface, U as UserService } from './s3.service-C0Yq2Sx3.mjs';
15
+ export { A as AuthService, C as CompanyService, a as ContentService, F as FeatureService, N as NotificationService, P as PushService, R as RoleService, b as S3Input, c as S3Interface, S as S3Service, T as TwoFactorChallengeInterface, U as UserService } from './s3.service-DaRFLnrX.mjs';
16
16
  export { I as InvoiceStatus, M as MeterInterface, o as MeterSummaryInterface, P as PaymentMethodInterface, e as PriceRecurring, q as PromotionCodeValidationResult, c as ProrationLineItem, b as ProrationPreviewInterface, R as ReportUsageInput, S as StripeCustomerInterface, a as StripeInvoiceInterface, f as StripePriceInput, d as StripePriceInterface, h as StripeProductInput, g as StripeProductInterface, l as StripeSubscriptionCreateMeta, m as StripeSubscriptionCreateResponse, k as StripeSubscriptionInput, j as StripeSubscriptionInterface, n as StripeUsageInterface, i as SubscriptionStatus, p as UsageRecordInterface, U as UsageSummaryInterface } from './stripe-promotion-code.interface-ClZ7DxS9.mjs';
17
17
  export { b as CompanyInput, c as CompanyInterface, a as ContentInput, C as ContentInterface, d as NotificationInput, N as NotificationInterface, R as RoleInput, e as RoleInterface, f as UserInput, U as UserInterface } from './notification.interface-MnRt1Tjm.mjs';
18
18
  export { A as AssistantInput, a as AssistantInterface } from './AssistantInterface-jL56dyNc.mjs';
package/dist/index.d.ts CHANGED
@@ -1,18 +1,18 @@
1
- export { AppModuleDefinitions, Assistant, AssistantAction, AssistantActionInput, AssistantActionInterface, AssistantActionModule, AssistantActionService, AssistantActionStatus, AssistantMessage, AssistantMessageModule, AssistantMessageService, AssistantModule, AssistantService, AuditLog, AuditLogInterface, AuditLogModule, AuditLogService, Auth, AuthModule, AuthorModule, BackupCodeVerify, BackupCodeVerifyInput, BackupCodeVerifyModule, Billing, BillingModule, BillingService, BlockDiffOptions, BlockNoteDiffUtil, BlockNoteWordDiffRendererUtil, CURRENT_USER_STORAGE_KEY, Chunk, ChunkInput, ChunkModule, ClientAbstractService, ClientHttpMethod, ClientNextRef, ClientPreviousRef, ClientSelfRef, ClientTotalRef, CodiceFiscaleValidationOptions, Company, CompanyFields, CompanyModule, Content, ContentModule, DataClass, DataClass as DataClassRegistry, DiffBlock, DiffResult, ENV, EndpointCreator, EndpointQuery, EntityAiStatus, EntityObject, Feature, FeatureModule, FormatOption, FoundationModuleDefinitions, HandbookPage, HandbookPageFields, HandbookPageInput, HandbookPageModule, HandbookPageService, HandbookSection, HandbookSectionInput, HandbookSectionModule, HandbookSectionService, HandbookThread, HandbookThreadInput, HandbookThreadInterface, HandbookThreadMessage, HandbookThreadMessageInput, HandbookThreadMessageInterface, HandbookThreadMessageModule, HandbookThreadMessageService, HandbookThreadModule, HandbookThreadService, HowTo, HowToFields, HowToModule, HowToService, InviteValidation, JsonApiDataFactory, MOBILE_BREAKPOINT, Module, ModuleDefinitions, ModuleModule, ModulePathsModule, ModuleRegistrar, ModuleRegistry, Modules, Notification, NotificationFields, NotificationModule, OAuthClient, OAuthModule, OAuthService, Passkey, PasskeyAuthenticationOptions, PasskeyAuthenticationOptionsInput, PasskeyAuthenticationOptionsInterface, PasskeyAuthenticationOptionsModule, PasskeyModule, PasskeyRegistrationOptions, PasskeyRegistrationOptionsInput, PasskeyRegistrationOptionsInterface, PasskeyRegistrationOptionsModule, PasskeyRegistrationVerify, PasskeyRegistrationVerifyInput, PasskeyRegistrationVerifyModule, PasskeyRename, PasskeyRenameInput, PasskeyRenameModule, PasskeyVerifyLogin, PasskeyVerifyLoginInput, PasskeyVerifyLoginModule, PaymentMethod, PermissionMappingModule, Push, PushInput, PushInterface, PushModule, RbacMatrixModule, ReferralModule, ReferralService, ReferralStats, ReferralStatsModule, RehydrationFactory, Role, RoleModule, S3, S3Module, SearchResultInterface, StripeCustomer, StripeCustomerModule, StripeCustomerService, StripeInvoice, StripeInvoiceModule, StripeInvoiceService, StripePaymentMethodModule, StripePrice, StripePriceFields, StripePriceModule, StripePriceService, StripeProduct, StripeProductFields, StripeProductModule, StripeProductService, StripePromotionCode, StripePromotionCodeModule, StripePromotionCodeService, StripeSubscription, StripeSubscriptionModule, StripeSubscriptionService, StripeUsage, StripeUsageModule, StripeUsageService, TableOptions, ToastOptions, TotpAuthenticator, TotpAuthenticatorModule, TotpSetup, TotpSetupInput, TotpSetupInterface, TotpSetupModule, TotpVerify, TotpVerifyInput, TotpVerifyLogin, TotpVerifyLoginInput, TotpVerifyLoginModule, TotpVerifyModule, TwoFactorChallenge, TwoFactorChallengeInput, TwoFactorChallengeModule, TwoFactorEnable, TwoFactorEnableInput, TwoFactorEnableModule, TwoFactorService, TwoFactorStatus, TwoFactorStatusInterface, TwoFactorStatusModule, User, UserModule, UserObject, VIEWPORT_COOKIE_NAME, Waitlist, WaitlistInput, WaitlistInterface, WaitlistModule, WaitlistService, WaitlistStats, WaitlistStatsInterface, WaitlistStatsModule, WaitlistStatus, WordDiff, checkPermissions, checkPermissionsFromServer, cn, composeRefs, dismissToast, entityObjectSchema, exists, formatCodiceFiscale, formatDate, formatLocalDate, formatPartitaIva, getBootstrapper, getClientGlobalErrorHandler, getTableComponents, getTableOptions, getValueFromPath, handbookPageContent, handbookPageSummary, handbookPageTitle, handbookSectionSummary, handbookSectionTitle, hasBootstrapper, isRemoteImageSrc, rehydrate, rehydrateList, resetBootstrapStore, setBootstrapper, setClientGlobalErrorHandler, showCustomToast, showError, showToast, translateData, translateResponse, tryBootstrap, useComposedRefs, useIsMobile, userObjectSchema, validateCodiceFiscale, validateItalianTaxCode, validatePartitaIva } from './core/index.js';
1
+ export { AppModuleDefinitions, Assistant, AssistantAction, AssistantActionInput, AssistantActionInterface, AssistantActionModule, AssistantActionService, AssistantActionStatus, AssistantMessage, AssistantMessageModule, AssistantMessageService, AssistantModule, AssistantService, AuditLog, AuditLogInterface, AuditLogModule, AuditLogService, Auth, AuthModule, AuthorModule, BackupCodeVerify, BackupCodeVerifyInput, BackupCodeVerifyModule, Billing, BillingModule, BillingService, BlockDiffOptions, BlockNoteDiffUtil, BlockNoteWordDiffRendererUtil, CURRENT_USER_STORAGE_KEY, Chunk, ChunkInput, ChunkModule, ClientAbstractService, ClientHttpMethod, ClientNextRef, ClientPreviousRef, ClientSelfRef, ClientTotalRef, CodiceFiscaleValidationOptions, Company, CompanyFields, CompanyModule, Content, ContentModule, DataClass, DataClass as DataClassRegistry, DiffBlock, DiffResult, ENV, EndpointCreator, EndpointQuery, EntityAiStatus, EntityObject, Feature, FeatureModule, FormatOption, FoundationModuleDefinitions, HandbookPage, HandbookPageFields, HandbookPageInput, HandbookPageModule, HandbookPageService, HandbookSection, HandbookSectionInput, HandbookSectionModule, HandbookSectionService, HandbookThread, HandbookThreadInput, HandbookThreadInterface, HandbookThreadMessage, HandbookThreadMessageInput, HandbookThreadMessageInterface, HandbookThreadMessageModule, HandbookThreadMessageService, HandbookThreadModule, HandbookThreadService, HowTo, HowToFields, HowToModule, HowToService, InviteValidation, JsonApiDataFactory, MOBILE_BREAKPOINT, Module, ModuleDefinitions, ModuleModule, ModulePathsModule, ModuleRegistrar, ModuleRegistry, Modules, Notification, NotificationFields, NotificationModule, OAuthClient, OAuthModule, OAuthService, Passkey, PasskeyAuthenticationOptions, PasskeyAuthenticationOptionsInput, PasskeyAuthenticationOptionsInterface, PasskeyAuthenticationOptionsModule, PasskeyModule, PasskeyRegistrationOptions, PasskeyRegistrationOptionsInput, PasskeyRegistrationOptionsInterface, PasskeyRegistrationOptionsModule, PasskeyRegistrationVerify, PasskeyRegistrationVerifyInput, PasskeyRegistrationVerifyModule, PasskeyRename, PasskeyRenameInput, PasskeyRenameModule, PasskeyVerifyLogin, PasskeyVerifyLoginInput, PasskeyVerifyLoginModule, PaymentMethod, PermissionMappingModule, Push, PushInput, PushInterface, PushModule, RbacMatrixModule, ReferralModule, ReferralService, ReferralStats, ReferralStatsModule, RehydrationFactory, Role, RoleModule, S3, S3Module, SearchResultInterface, StripeCustomer, StripeCustomerModule, StripeCustomerService, StripeInvoice, StripeInvoiceModule, StripeInvoiceService, StripePaymentMethodModule, StripePrice, StripePriceFields, StripePriceModule, StripePriceService, StripeProduct, StripeProductFields, StripeProductModule, StripeProductService, StripePromotionCode, StripePromotionCodeModule, StripePromotionCodeService, StripeSubscription, StripeSubscriptionModule, StripeSubscriptionService, StripeUsage, StripeUsageModule, StripeUsageService, TableOptions, ToastOptions, TotpAuthenticator, TotpAuthenticatorModule, TotpSetup, TotpSetupInput, TotpSetupInterface, TotpSetupModule, TotpVerify, TotpVerifyInput, TotpVerifyLogin, TotpVerifyLoginInput, TotpVerifyLoginModule, TotpVerifyModule, TwoFactorChallenge, TwoFactorChallengeInput, TwoFactorChallengeModule, TwoFactorEnable, TwoFactorEnableInput, TwoFactorEnableModule, TwoFactorService, TwoFactorStatus, TwoFactorStatusInterface, TwoFactorStatusModule, User, UserModule, UserObject, VIEWPORT_COOKIE_NAME, Waitlist, WaitlistInput, WaitlistInterface, WaitlistModule, WaitlistService, WaitlistStats, WaitlistStatsInterface, WaitlistStatsModule, WaitlistStatus, WordDiff, checkPermissions, checkPermissionsFromServer, clearLastApiMeta, clearLastApiTotal, cn, composeRefs, dismissToast, entityObjectSchema, exists, formatCodiceFiscale, formatDate, formatLocalDate, formatPartitaIva, getBootstrapper, getClientGlobalErrorHandler, getLastApiMeta, getLastApiTotal, getTableComponents, getTableOptions, getValueFromPath, handbookPageContent, handbookPageSummary, handbookPageTitle, handbookSectionSummary, handbookSectionTitle, hasBootstrapper, isRemoteImageSrc, rehydrate, rehydrateList, resetBootstrapStore, setBootstrapper, setClientGlobalErrorHandler, showCustomToast, showError, showToast, translateData, translateResponse, tryBootstrap, useComposedRefs, useIsMobile, userObjectSchema, validateCodiceFiscale, validateItalianTaxCode, validatePartitaIva } from './core/index.js';
2
2
  export { A as ApiData } from './ApiData-DPKNfY-9.js';
3
3
  import { A as ApiDataInterface, J as JsonApiHydratedDataInterface } from './ApiDataInterface-BcZeXy5X.js';
4
4
  export { A as ApiRequestDataTypeInterface, F as FieldSelector, G as GetterKeys, c as createJsonApiInclusion } from './ApiRequestDataTypeInterface-CYEcRUrh.js';
5
5
  export { A as ApiResponseInterface } from './ApiResponseInterface-CWLvSCvS.js';
6
6
  import { A as AbstractApiData } from './AbstractApiData-DtitRWPz.js';
7
- import { A as AbstractService } from './AbstractService-Cew0PD0L.js';
8
- export { H as HttpMethod, N as NextRef, P as PreviousRef, S as SelfRef, T as TotalRef, b as clearLastApiMeta, c as clearLastApiTotal, d as getGlobalErrorHandler, a as getLastApiMeta, g as getLastApiTotal, s as setGlobalErrorHandler } from './AbstractService-Cew0PD0L.js';
7
+ import { A as AbstractService } from './AbstractService-V3VGQMhL.js';
8
+ export { H as HttpMethod, N as NextRef, P as PreviousRef, S as SelfRef, T as TotalRef, g as getGlobalErrorHandler, s as setGlobalErrorHandler } from './AbstractService-V3VGQMhL.js';
9
9
  export { c as AssistantMessageInput, d as AssistantMessageInterface, A as AssistantMessageRole, b as AssistantMessageType, B as BreadcrumbItemData, e as ChunkInterface, C as ChunkRelationshipMeta, H as HowToInput, a as HowToInterface } from './AssistantMessageInterface-CuaMDs2i.js';
10
10
  export { C as ContentFields, D as D3Link, a as D3Node, R as RoleFields, U as UserFields } from './content.fields-1AlHDtDb.js';
11
11
  export { ClassValue } from 'clsx';
12
- export { h as AiConnection, l as AiConnectionEnvDefaults, i as AiConnectionFields, n as AiConnectionInput, m as AiConnectionInterface, p as AiConnectionModule, o as AiConnectionService, j as AiProviderFieldDescriptor, k as AiProviderRegistry, A as AuthComponent, H as HandbookPageInterface, q as HandbookSectionInterface, P as PasskeyInterface, T as TotpAuthenticatorInterface, b as getIcon, a as getIconByModule, c as getIconByModuleName, g as getInitials, d as getLucideIcon, e as getLucideIconByModule, f as getLucideIconByModuleName } from './HandbookSectionInterface-CAXxbDw0.js';
12
+ export { h as AiConnection, l as AiConnectionEnvDefaults, i as AiConnectionFields, n as AiConnectionInput, m as AiConnectionInterface, p as AiConnectionModule, o as AiConnectionService, j as AiProviderFieldDescriptor, k as AiProviderRegistry, A as AuthComponent, H as HandbookPageInterface, q as HandbookSectionInterface, P as PasskeyInterface, T as TotpAuthenticatorInterface, b as getIcon, a as getIconByModule, c as getIconByModuleName, g as getInitials, d as getLucideIcon, e as getLucideIconByModule, f as getLucideIconByModuleName } from './HandbookSectionInterface-DFj2zErb.js';
13
13
  export { A as Action, d as ModuleDefinition, a as ModuleFactory, c as ModulePermissionDefinition, M as ModuleWithPermissions, P as PageUrl, b as PermissionCheck, e as PermissionConfig, f as PermissionModule, g as PermissionUser } from './types-bsm8Fp55.js';
14
14
  export { A as AuthInput, b as AuthInterface, a as AuthQuery } from './auth.interface-BC1jp_ni.js';
15
- export { A as AuthService, C as CompanyService, a as ContentService, F as FeatureService, N as NotificationService, P as PushService, R as RoleService, b as S3Input, c as S3Interface, S as S3Service, T as TwoFactorChallengeInterface, U as UserService } from './s3.service-CUGarZs3.js';
15
+ export { A as AuthService, C as CompanyService, a as ContentService, F as FeatureService, N as NotificationService, P as PushService, R as RoleService, b as S3Input, c as S3Interface, S as S3Service, T as TwoFactorChallengeInterface, U as UserService } from './s3.service-DJHqEZAp.js';
16
16
  export { I as InvoiceStatus, M as MeterInterface, o as MeterSummaryInterface, P as PaymentMethodInterface, e as PriceRecurring, q as PromotionCodeValidationResult, c as ProrationLineItem, b as ProrationPreviewInterface, R as ReportUsageInput, S as StripeCustomerInterface, a as StripeInvoiceInterface, f as StripePriceInput, d as StripePriceInterface, h as StripeProductInput, g as StripeProductInterface, l as StripeSubscriptionCreateMeta, m as StripeSubscriptionCreateResponse, k as StripeSubscriptionInput, j as StripeSubscriptionInterface, n as StripeUsageInterface, i as SubscriptionStatus, p as UsageRecordInterface, U as UsageSummaryInterface } from './stripe-promotion-code.interface-C3qqh3mi.js';
17
17
  export { b as CompanyInput, c as CompanyInterface, a as ContentInput, C as ContentInterface, d as NotificationInput, N as NotificationInterface, R as RoleInput, e as RoleInterface, f as UserInput, U as UserInterface } from './notification.interface-CjzV_KII.js';
18
18
  export { A as AssistantInput, a as AssistantInterface } from './AssistantInterface-RvZzlcA_.js';
package/dist/index.js CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
 
20
20
 
21
- var _chunkXH4IURUDjs = require('./chunk-XH4IURUD.js');
21
+ var _chunkODH2LYWCjs = require('./chunk-ODH2LYWC.js');
22
22
 
23
23
 
24
24
 
@@ -244,7 +244,7 @@ var _chunkXH4IURUDjs = require('./chunk-XH4IURUD.js');
244
244
 
245
245
 
246
246
 
247
- var _chunkIB7DTXWGjs = require('./chunk-IB7DTXWG.js');
247
+ var _chunkTBSMAL5Yjs = require('./chunk-TBSMAL5Y.js');
248
248
  require('./chunk-LXKSUWAV.js');
249
249
  require('./chunk-IBS6NI7D.js');
250
250
 
@@ -515,5 +515,5 @@ require('./chunk-7QVYU63E.js');
515
515
 
516
516
 
517
517
 
518
- exports.ACTION_TYPES = _chunkXH4IURUDjs.ACTION_TYPES; exports.AVAILABLE_OAUTH_SCOPES = _chunkIB7DTXWGjs.AVAILABLE_OAUTH_SCOPES; exports.AbstractApiData = _chunkIB7DTXWGjs.AbstractApiData; exports.AbstractService = _chunkIB7DTXWGjs.AbstractService; exports.Action = _chunkIB7DTXWGjs.Action; exports.AiConnection = _chunkIB7DTXWGjs.AiConnection; exports.AiConnectionFields = _chunkIB7DTXWGjs.AiConnectionFields; exports.AiConnectionModule = _chunkIB7DTXWGjs.AiConnectionModule; exports.AiConnectionService = _chunkIB7DTXWGjs.AiConnectionService; exports.Assistant = _chunkIB7DTXWGjs.Assistant; exports.AssistantAction = _chunkIB7DTXWGjs.AssistantAction; exports.AssistantActionModule = _chunkIB7DTXWGjs.AssistantActionModule; exports.AssistantActionService = _chunkIB7DTXWGjs.AssistantActionService; exports.AssistantMessage = _chunkIB7DTXWGjs.AssistantMessage; exports.AssistantMessageModule = _chunkIB7DTXWGjs.AssistantMessageModule; exports.AssistantMessageService = _chunkIB7DTXWGjs.AssistantMessageService; exports.AssistantModule = _chunkIB7DTXWGjs.AssistantModule; exports.AssistantService = _chunkIB7DTXWGjs.AssistantService; exports.AuditLog = _chunkIB7DTXWGjs.AuditLog; exports.AuditLogModule = _chunkIB7DTXWGjs.AuditLogModule; exports.AuditLogService = _chunkIB7DTXWGjs.AuditLogService; exports.Auth = _chunkIB7DTXWGjs.Auth; exports.AuthComponent = _chunkIB7DTXWGjs.AuthComponent; exports.AuthModule = _chunkIB7DTXWGjs.AuthModule; exports.AuthService = _chunkIB7DTXWGjs.AuthService; exports.AuthorModule = _chunkIB7DTXWGjs.AuthorModule; exports.BackupCodeVerify = _chunkIB7DTXWGjs.BackupCodeVerify; exports.BackupCodeVerifyModule = _chunkIB7DTXWGjs.BackupCodeVerifyModule; exports.Billing = _chunkIB7DTXWGjs.Billing; exports.BillingModule = _chunkIB7DTXWGjs.BillingModule; exports.BillingService = _chunkIB7DTXWGjs.BillingService; exports.BlockNoteDiffUtil = _chunkIB7DTXWGjs.BlockNoteDiffUtil; exports.BlockNoteWordDiffRendererUtil = _chunkIB7DTXWGjs.BlockNoteWordDiffRendererUtil; exports.COMPANY_ADMINISTRATOR_ROLE_ID = _chunkXH4IURUDjs.COMPANY_ADMINISTRATOR_ROLE_ID; exports.CURRENT_USER_STORAGE_KEY = _chunkIB7DTXWGjs.CURRENT_USER_STORAGE_KEY; exports.Chunk = _chunkIB7DTXWGjs.Chunk; exports.ChunkModule = _chunkIB7DTXWGjs.ChunkModule; exports.ClientAbstractService = _chunkIB7DTXWGjs.ClientAbstractService; exports.ClientHttpMethod = _chunkIB7DTXWGjs.ClientHttpMethod; exports.Company = _chunkIB7DTXWGjs.Company; exports.CompanyFields = _chunkIB7DTXWGjs.CompanyFields; exports.CompanyModule = _chunkIB7DTXWGjs.CompanyModule; exports.CompanyService = _chunkIB7DTXWGjs.CompanyService; exports.Content = _chunkIB7DTXWGjs.Content; exports.ContentFields = _chunkIB7DTXWGjs.ContentFields; exports.ContentModule = _chunkIB7DTXWGjs.ContentModule; exports.ContentService = _chunkIB7DTXWGjs.ContentService; exports.DEFAULT_GRANT_TYPES = _chunkIB7DTXWGjs.DEFAULT_GRANT_TYPES; exports.DataClass = _chunkLU7DJ4QFjs.DataClassRegistry; exports.DataClassRegistry = _chunkLU7DJ4QFjs.DataClassRegistry; exports.ENV = _chunkLU7DJ4QFjs.ENV; exports.EndpointCreator = _chunkIB7DTXWGjs.EndpointCreator; exports.EntityAiStatus = _chunkIB7DTXWGjs.EntityAiStatus; exports.Feature = _chunkIB7DTXWGjs.Feature; exports.FeatureModule = _chunkIB7DTXWGjs.FeatureModule; exports.FeatureService = _chunkIB7DTXWGjs.FeatureService; exports.HandbookPage = _chunkIB7DTXWGjs.HandbookPage; exports.HandbookPageFields = _chunkIB7DTXWGjs.HandbookPageFields; exports.HandbookPageModule = _chunkIB7DTXWGjs.HandbookPageModule; exports.HandbookPageService = _chunkIB7DTXWGjs.HandbookPageService; exports.HandbookSection = _chunkIB7DTXWGjs.HandbookSection; exports.HandbookSectionModule = _chunkIB7DTXWGjs.HandbookSectionModule; exports.HandbookSectionService = _chunkIB7DTXWGjs.HandbookSectionService; exports.HandbookThread = _chunkIB7DTXWGjs.HandbookThread; exports.HandbookThreadMessage = _chunkIB7DTXWGjs.HandbookThreadMessage; exports.HandbookThreadMessageModule = _chunkIB7DTXWGjs.HandbookThreadMessageModule; exports.HandbookThreadMessageService = _chunkIB7DTXWGjs.HandbookThreadMessageService; exports.HandbookThreadModule = _chunkIB7DTXWGjs.HandbookThreadModule; exports.HandbookThreadService = _chunkIB7DTXWGjs.HandbookThreadService; exports.HowTo = _chunkIB7DTXWGjs.HowTo; exports.HowToFields = _chunkIB7DTXWGjs.HowToFields; exports.HowToModule = _chunkIB7DTXWGjs.HowToModule; exports.HowToService = _chunkIB7DTXWGjs.HowToService; exports.HttpMethod = _chunkIB7DTXWGjs.HttpMethod; exports.InvoiceStatus = _chunkIB7DTXWGjs.InvoiceStatus; exports.JsonApiDataFactory = _chunkLU7DJ4QFjs.JsonApiDataFactory; exports.MOBILE_BREAKPOINT = _chunkIB7DTXWGjs.MOBILE_BREAKPOINT; exports.Module = _chunkIB7DTXWGjs.Module; exports.ModuleModule = _chunkIB7DTXWGjs.ModuleModule; exports.ModulePaths = _chunkIB7DTXWGjs.ModulePaths; exports.ModulePathsModule = _chunkIB7DTXWGjs.ModulePathsModule; exports.ModuleRegistrar = _chunkIB7DTXWGjs.ModuleRegistrar; exports.ModuleRegistry = _chunkIB7DTXWGjs.ModuleRegistry; exports.Modules = _chunkIB7DTXWGjs.Modules; exports.Notification = _chunkIB7DTXWGjs.Notification; exports.NotificationFields = _chunkIB7DTXWGjs.NotificationFields; exports.NotificationModule = _chunkIB7DTXWGjs.NotificationModule; exports.NotificationService = _chunkIB7DTXWGjs.NotificationService; exports.OAUTH_SCOPE_DISPLAY = _chunkIB7DTXWGjs.OAUTH_SCOPE_DISPLAY; exports.OAuthClient = _chunkIB7DTXWGjs.OAuthClient; exports.OAuthModule = _chunkIB7DTXWGjs.OAuthModule; exports.OAuthService = _chunkIB7DTXWGjs.OAuthService; exports.Passkey = _chunkIB7DTXWGjs.Passkey; exports.PasskeyAuthenticationOptions = _chunkIB7DTXWGjs.PasskeyAuthenticationOptions; exports.PasskeyAuthenticationOptionsModule = _chunkIB7DTXWGjs.PasskeyAuthenticationOptionsModule; exports.PasskeyModule = _chunkIB7DTXWGjs.PasskeyModule; exports.PasskeyRegistrationOptions = _chunkIB7DTXWGjs.PasskeyRegistrationOptions; exports.PasskeyRegistrationOptionsModule = _chunkIB7DTXWGjs.PasskeyRegistrationOptionsModule; exports.PasskeyRegistrationVerify = _chunkIB7DTXWGjs.PasskeyRegistrationVerify; exports.PasskeyRegistrationVerifyModule = _chunkIB7DTXWGjs.PasskeyRegistrationVerifyModule; exports.PasskeyRename = _chunkIB7DTXWGjs.PasskeyRename; exports.PasskeyRenameModule = _chunkIB7DTXWGjs.PasskeyRenameModule; exports.PasskeyVerifyLogin = _chunkIB7DTXWGjs.PasskeyVerifyLogin; exports.PasskeyVerifyLoginModule = _chunkIB7DTXWGjs.PasskeyVerifyLoginModule; exports.PaymentMethod = _chunkIB7DTXWGjs.PaymentMethod; exports.PermissionMapping = _chunkIB7DTXWGjs.PermissionMapping; exports.PermissionMappingModule = _chunkIB7DTXWGjs.PermissionMappingModule; exports.Push = _chunkIB7DTXWGjs.Push; exports.PushModule = _chunkIB7DTXWGjs.PushModule; exports.PushService = _chunkIB7DTXWGjs.PushService; exports.RbacMatrixModel = _chunkIB7DTXWGjs.RbacMatrixModel; exports.RbacMatrixModule = _chunkIB7DTXWGjs.RbacMatrixModule; exports.RbacService = _chunkXH4IURUDjs.RbacService; exports.ReferralModule = _chunkIB7DTXWGjs.ReferralModule; exports.ReferralService = _chunkIB7DTXWGjs.ReferralService; exports.ReferralStats = _chunkIB7DTXWGjs.ReferralStats; exports.ReferralStatsModule = _chunkIB7DTXWGjs.ReferralStatsModule; exports.RehydrationFactory = _chunkIB7DTXWGjs.RehydrationFactory; exports.Role = _chunkIB7DTXWGjs.Role; exports.RoleFields = _chunkIB7DTXWGjs.RoleFields; exports.RoleModule = _chunkIB7DTXWGjs.RoleModule; exports.RoleService = _chunkIB7DTXWGjs.RoleService; exports.S3 = _chunkIB7DTXWGjs.S3; exports.S3Module = _chunkIB7DTXWGjs.S3Module; exports.S3Service = _chunkIB7DTXWGjs.S3Service; exports.StripeCustomer = _chunkIB7DTXWGjs.StripeCustomer; exports.StripeCustomerModule = _chunkIB7DTXWGjs.StripeCustomerModule; exports.StripeCustomerService = _chunkIB7DTXWGjs.StripeCustomerService; exports.StripeInvoice = _chunkIB7DTXWGjs.StripeInvoice; exports.StripeInvoiceModule = _chunkIB7DTXWGjs.StripeInvoiceModule; exports.StripeInvoiceService = _chunkIB7DTXWGjs.StripeInvoiceService; exports.StripePaymentMethodModule = _chunkIB7DTXWGjs.StripePaymentMethodModule; exports.StripePrice = _chunkIB7DTXWGjs.StripePrice; exports.StripePriceFields = _chunkIB7DTXWGjs.StripePriceFields; exports.StripePriceModule = _chunkIB7DTXWGjs.StripePriceModule; exports.StripePriceService = _chunkIB7DTXWGjs.StripePriceService; exports.StripeProduct = _chunkIB7DTXWGjs.StripeProduct; exports.StripeProductFields = _chunkIB7DTXWGjs.StripeProductFields; exports.StripeProductModule = _chunkIB7DTXWGjs.StripeProductModule; exports.StripeProductService = _chunkIB7DTXWGjs.StripeProductService; exports.StripePromotionCode = _chunkIB7DTXWGjs.StripePromotionCode; exports.StripePromotionCodeModule = _chunkIB7DTXWGjs.StripePromotionCodeModule; exports.StripePromotionCodeService = _chunkIB7DTXWGjs.StripePromotionCodeService; exports.StripeSubscription = _chunkIB7DTXWGjs.StripeSubscription; exports.StripeSubscriptionModule = _chunkIB7DTXWGjs.StripeSubscriptionModule; exports.StripeSubscriptionService = _chunkIB7DTXWGjs.StripeSubscriptionService; exports.StripeUsage = _chunkIB7DTXWGjs.StripeUsage; exports.StripeUsageModule = _chunkIB7DTXWGjs.StripeUsageModule; exports.StripeUsageService = _chunkIB7DTXWGjs.StripeUsageService; exports.SubscriptionStatus = _chunkIB7DTXWGjs.SubscriptionStatus; exports.TableOptions = _chunkIB7DTXWGjs.TableOptions; exports.TokenUsageAdminBreakdownModule = _chunkIB7DTXWGjs.TokenUsageAdminBreakdownModule; exports.TokenUsageAdminSummaryModule = _chunkIB7DTXWGjs.TokenUsageAdminSummaryModule; exports.TokenUsageAdminTimelineModule = _chunkIB7DTXWGjs.TokenUsageAdminTimelineModule; exports.TotpAuthenticator = _chunkIB7DTXWGjs.TotpAuthenticator; exports.TotpAuthenticatorModule = _chunkIB7DTXWGjs.TotpAuthenticatorModule; exports.TotpSetup = _chunkIB7DTXWGjs.TotpSetup; exports.TotpSetupModule = _chunkIB7DTXWGjs.TotpSetupModule; exports.TotpVerify = _chunkIB7DTXWGjs.TotpVerify; exports.TotpVerifyLogin = _chunkIB7DTXWGjs.TotpVerifyLogin; exports.TotpVerifyLoginModule = _chunkIB7DTXWGjs.TotpVerifyLoginModule; exports.TotpVerifyModule = _chunkIB7DTXWGjs.TotpVerifyModule; exports.TwoFactorChallenge = _chunkIB7DTXWGjs.TwoFactorChallenge; exports.TwoFactorChallengeModule = _chunkIB7DTXWGjs.TwoFactorChallengeModule; exports.TwoFactorEnable = _chunkIB7DTXWGjs.TwoFactorEnable; exports.TwoFactorEnableModule = _chunkIB7DTXWGjs.TwoFactorEnableModule; exports.TwoFactorService = _chunkIB7DTXWGjs.TwoFactorService; exports.TwoFactorStatus = _chunkIB7DTXWGjs.TwoFactorStatus; exports.TwoFactorStatusModule = _chunkIB7DTXWGjs.TwoFactorStatusModule; exports.User = _chunkIB7DTXWGjs.User; exports.UserFields = _chunkIB7DTXWGjs.UserFields; exports.UserModule = _chunkIB7DTXWGjs.UserModule; exports.UserService = _chunkIB7DTXWGjs.UserService; exports.VIEWPORT_COOKIE_NAME = _chunkIB7DTXWGjs.VIEWPORT_COOKIE_NAME; exports.Waitlist = _chunkIB7DTXWGjs.Waitlist; exports.WaitlistModule = _chunkIB7DTXWGjs.WaitlistModule; exports.WaitlistService = _chunkIB7DTXWGjs.WaitlistService; exports.WaitlistStats = _chunkIB7DTXWGjs.WaitlistStats; exports.WaitlistStatsModule = _chunkIB7DTXWGjs.WaitlistStatsModule; exports.checkPermissions = _chunkIB7DTXWGjs.checkPermissions; exports.checkPermissionsFromServer = _chunkIB7DTXWGjs.checkPermissionsFromServer; exports.clearLastApiMeta = _chunkIB7DTXWGjs.clearLastApiMeta; exports.clearLastApiTotal = _chunkIB7DTXWGjs.clearLastApiTotal; exports.cn = _chunkIB7DTXWGjs.cn; exports.composeRefs = _chunkIB7DTXWGjs.composeRefs; exports.configureAuth = _chunkIB7DTXWGjs.configureAuth; exports.configureI18n = _chunkXH4IURUDjs.configureI18n; exports.configureJsonApi = _chunkXH4IURUDjs.configureJsonApi; exports.configureLogin = _chunkXH4IURUDjs.configureLogin; exports.configureReferral = _chunkXH4IURUDjs.configureReferral; exports.configureRoles = _chunkXH4IURUDjs.configureRoles; exports.configureTokenUsage = _chunkIB7DTXWGjs.configureTokenUsage; exports.configureWaitlist = _chunkXH4IURUDjs.configureWaitlist; exports.createJsonApiInclusion = _chunkIB7DTXWGjs.createJsonApiInclusion; exports.dismissToast = _chunkIB7DTXWGjs.dismissToast; exports.entityObjectSchema = _chunkIB7DTXWGjs.entityObjectSchema; exports.exists = _chunkIB7DTXWGjs.exists; exports.formatCodiceFiscale = _chunkIB7DTXWGjs.formatCodiceFiscale; exports.formatDate = _chunkIB7DTXWGjs.formatDate; exports.formatLocalDate = _chunkIB7DTXWGjs.formatLocalDate; exports.formatPartitaIva = _chunkIB7DTXWGjs.formatPartitaIva; exports.getApiUrl = _chunkXH4IURUDjs.getApiUrl; exports.getAppUrl = _chunkXH4IURUDjs.getAppUrl; exports.getBootstrapper = _chunkLU7DJ4QFjs.getBootstrapper; exports.getClientGlobalErrorHandler = _chunkIB7DTXWGjs.getClientGlobalErrorHandler; exports.getGlobalErrorHandler = _chunkIB7DTXWGjs.getGlobalErrorHandler; exports.getIcon = _chunkIB7DTXWGjs.getIcon; exports.getIconByModule = _chunkIB7DTXWGjs.getIconByModule; exports.getIconByModuleName = _chunkIB7DTXWGjs.getIconByModuleName; exports.getInitials = _chunkIB7DTXWGjs.getInitials; exports.getLastApiMeta = _chunkIB7DTXWGjs.getLastApiMeta; exports.getLastApiTotal = _chunkIB7DTXWGjs.getLastApiTotal; exports.getLucideIcon = _chunkIB7DTXWGjs.getLucideIcon; exports.getLucideIconByModule = _chunkIB7DTXWGjs.getLucideIconByModule; exports.getLucideIconByModuleName = _chunkIB7DTXWGjs.getLucideIconByModuleName; exports.getPublicApiUrl = _chunkXH4IURUDjs.getPublicApiUrl; exports.getReferralConfig = _chunkXH4IURUDjs.getReferralConfig; exports.getRoleId = _chunkXH4IURUDjs.getRoleId; exports.getStripePublishableKey = _chunkXH4IURUDjs.getStripePublishableKey; exports.getTableComponents = _chunkIB7DTXWGjs.getTableComponents; exports.getTableOptions = _chunkIB7DTXWGjs.getTableOptions; exports.getTokenHandler = _chunkIB7DTXWGjs.getTokenHandler; exports.getTokenUsageCurrency = _chunkIB7DTXWGjs.getTokenUsageCurrency; exports.getTrackablePages = _chunkXH4IURUDjs.getTrackablePages; exports.getValueFromPath = _chunkIB7DTXWGjs.getValueFromPath; exports.getWaitlistConfig = _chunkXH4IURUDjs.getWaitlistConfig; exports.handbookPageContent = _chunkIB7DTXWGjs.handbookPageContent; exports.handbookPageSummary = _chunkIB7DTXWGjs.handbookPageSummary; exports.handbookPageTitle = _chunkIB7DTXWGjs.handbookPageTitle; exports.handbookSectionSummary = _chunkIB7DTXWGjs.handbookSectionSummary; exports.handbookSectionTitle = _chunkIB7DTXWGjs.handbookSectionTitle; exports.hasBootstrapper = _chunkLU7DJ4QFjs.hasBootstrapper; exports.isReferralEnabled = _chunkXH4IURUDjs.isReferralEnabled; exports.isRemoteImageSrc = _chunkIB7DTXWGjs.isRemoteImageSrc; exports.isRolesConfigured = _chunkXH4IURUDjs.isRolesConfigured; exports.rehydrate = _chunkIB7DTXWGjs.rehydrate; exports.rehydrateList = _chunkIB7DTXWGjs.rehydrateList; exports.resetBootstrapStore = _chunkLU7DJ4QFjs.resetBootstrapStore; exports.setBootstrapper = _chunkLU7DJ4QFjs.setBootstrapper; exports.setClientGlobalErrorHandler = _chunkIB7DTXWGjs.setClientGlobalErrorHandler; exports.setGlobalErrorHandler = _chunkIB7DTXWGjs.setGlobalErrorHandler; exports.showCustomToast = _chunkIB7DTXWGjs.showCustomToast; exports.showError = _chunkIB7DTXWGjs.showError; exports.showToast = _chunkIB7DTXWGjs.showToast; exports.tokenUsageModules = _chunkIB7DTXWGjs.tokenUsageModules; exports.translateData = _chunkLU7DJ4QFjs.translateData; exports.translateResponse = _chunkLU7DJ4QFjs.translateResponse; exports.tryBootstrap = _chunkLU7DJ4QFjs.tryBootstrap; exports.useComposedRefs = _chunkIB7DTXWGjs.useComposedRefs; exports.useIsMobile = _chunkIB7DTXWGjs.useIsMobile; exports.userObjectSchema = _chunkIB7DTXWGjs.userObjectSchema; exports.validateCodiceFiscale = _chunkIB7DTXWGjs.validateCodiceFiscale; exports.validateItalianTaxCode = _chunkIB7DTXWGjs.validateItalianTaxCode; exports.validatePartitaIva = _chunkIB7DTXWGjs.validatePartitaIva;
518
+ exports.ACTION_TYPES = _chunkODH2LYWCjs.ACTION_TYPES; exports.AVAILABLE_OAUTH_SCOPES = _chunkTBSMAL5Yjs.AVAILABLE_OAUTH_SCOPES; exports.AbstractApiData = _chunkTBSMAL5Yjs.AbstractApiData; exports.AbstractService = _chunkTBSMAL5Yjs.AbstractService; exports.Action = _chunkTBSMAL5Yjs.Action; exports.AiConnection = _chunkTBSMAL5Yjs.AiConnection; exports.AiConnectionFields = _chunkTBSMAL5Yjs.AiConnectionFields; exports.AiConnectionModule = _chunkTBSMAL5Yjs.AiConnectionModule; exports.AiConnectionService = _chunkTBSMAL5Yjs.AiConnectionService; exports.Assistant = _chunkTBSMAL5Yjs.Assistant; exports.AssistantAction = _chunkTBSMAL5Yjs.AssistantAction; exports.AssistantActionModule = _chunkTBSMAL5Yjs.AssistantActionModule; exports.AssistantActionService = _chunkTBSMAL5Yjs.AssistantActionService; exports.AssistantMessage = _chunkTBSMAL5Yjs.AssistantMessage; exports.AssistantMessageModule = _chunkTBSMAL5Yjs.AssistantMessageModule; exports.AssistantMessageService = _chunkTBSMAL5Yjs.AssistantMessageService; exports.AssistantModule = _chunkTBSMAL5Yjs.AssistantModule; exports.AssistantService = _chunkTBSMAL5Yjs.AssistantService; exports.AuditLog = _chunkTBSMAL5Yjs.AuditLog; exports.AuditLogModule = _chunkTBSMAL5Yjs.AuditLogModule; exports.AuditLogService = _chunkTBSMAL5Yjs.AuditLogService; exports.Auth = _chunkTBSMAL5Yjs.Auth; exports.AuthComponent = _chunkTBSMAL5Yjs.AuthComponent; exports.AuthModule = _chunkTBSMAL5Yjs.AuthModule; exports.AuthService = _chunkTBSMAL5Yjs.AuthService; exports.AuthorModule = _chunkTBSMAL5Yjs.AuthorModule; exports.BackupCodeVerify = _chunkTBSMAL5Yjs.BackupCodeVerify; exports.BackupCodeVerifyModule = _chunkTBSMAL5Yjs.BackupCodeVerifyModule; exports.Billing = _chunkTBSMAL5Yjs.Billing; exports.BillingModule = _chunkTBSMAL5Yjs.BillingModule; exports.BillingService = _chunkTBSMAL5Yjs.BillingService; exports.BlockNoteDiffUtil = _chunkTBSMAL5Yjs.BlockNoteDiffUtil; exports.BlockNoteWordDiffRendererUtil = _chunkTBSMAL5Yjs.BlockNoteWordDiffRendererUtil; exports.COMPANY_ADMINISTRATOR_ROLE_ID = _chunkODH2LYWCjs.COMPANY_ADMINISTRATOR_ROLE_ID; exports.CURRENT_USER_STORAGE_KEY = _chunkTBSMAL5Yjs.CURRENT_USER_STORAGE_KEY; exports.Chunk = _chunkTBSMAL5Yjs.Chunk; exports.ChunkModule = _chunkTBSMAL5Yjs.ChunkModule; exports.ClientAbstractService = _chunkTBSMAL5Yjs.ClientAbstractService; exports.ClientHttpMethod = _chunkTBSMAL5Yjs.ClientHttpMethod; exports.Company = _chunkTBSMAL5Yjs.Company; exports.CompanyFields = _chunkTBSMAL5Yjs.CompanyFields; exports.CompanyModule = _chunkTBSMAL5Yjs.CompanyModule; exports.CompanyService = _chunkTBSMAL5Yjs.CompanyService; exports.Content = _chunkTBSMAL5Yjs.Content; exports.ContentFields = _chunkTBSMAL5Yjs.ContentFields; exports.ContentModule = _chunkTBSMAL5Yjs.ContentModule; exports.ContentService = _chunkTBSMAL5Yjs.ContentService; exports.DEFAULT_GRANT_TYPES = _chunkTBSMAL5Yjs.DEFAULT_GRANT_TYPES; exports.DataClass = _chunkLU7DJ4QFjs.DataClassRegistry; exports.DataClassRegistry = _chunkLU7DJ4QFjs.DataClassRegistry; exports.ENV = _chunkLU7DJ4QFjs.ENV; exports.EndpointCreator = _chunkTBSMAL5Yjs.EndpointCreator; exports.EntityAiStatus = _chunkTBSMAL5Yjs.EntityAiStatus; exports.Feature = _chunkTBSMAL5Yjs.Feature; exports.FeatureModule = _chunkTBSMAL5Yjs.FeatureModule; exports.FeatureService = _chunkTBSMAL5Yjs.FeatureService; exports.HandbookPage = _chunkTBSMAL5Yjs.HandbookPage; exports.HandbookPageFields = _chunkTBSMAL5Yjs.HandbookPageFields; exports.HandbookPageModule = _chunkTBSMAL5Yjs.HandbookPageModule; exports.HandbookPageService = _chunkTBSMAL5Yjs.HandbookPageService; exports.HandbookSection = _chunkTBSMAL5Yjs.HandbookSection; exports.HandbookSectionModule = _chunkTBSMAL5Yjs.HandbookSectionModule; exports.HandbookSectionService = _chunkTBSMAL5Yjs.HandbookSectionService; exports.HandbookThread = _chunkTBSMAL5Yjs.HandbookThread; exports.HandbookThreadMessage = _chunkTBSMAL5Yjs.HandbookThreadMessage; exports.HandbookThreadMessageModule = _chunkTBSMAL5Yjs.HandbookThreadMessageModule; exports.HandbookThreadMessageService = _chunkTBSMAL5Yjs.HandbookThreadMessageService; exports.HandbookThreadModule = _chunkTBSMAL5Yjs.HandbookThreadModule; exports.HandbookThreadService = _chunkTBSMAL5Yjs.HandbookThreadService; exports.HowTo = _chunkTBSMAL5Yjs.HowTo; exports.HowToFields = _chunkTBSMAL5Yjs.HowToFields; exports.HowToModule = _chunkTBSMAL5Yjs.HowToModule; exports.HowToService = _chunkTBSMAL5Yjs.HowToService; exports.HttpMethod = _chunkTBSMAL5Yjs.HttpMethod; exports.InvoiceStatus = _chunkTBSMAL5Yjs.InvoiceStatus; exports.JsonApiDataFactory = _chunkLU7DJ4QFjs.JsonApiDataFactory; exports.MOBILE_BREAKPOINT = _chunkTBSMAL5Yjs.MOBILE_BREAKPOINT; exports.Module = _chunkTBSMAL5Yjs.Module; exports.ModuleModule = _chunkTBSMAL5Yjs.ModuleModule; exports.ModulePaths = _chunkTBSMAL5Yjs.ModulePaths; exports.ModulePathsModule = _chunkTBSMAL5Yjs.ModulePathsModule; exports.ModuleRegistrar = _chunkTBSMAL5Yjs.ModuleRegistrar; exports.ModuleRegistry = _chunkTBSMAL5Yjs.ModuleRegistry; exports.Modules = _chunkTBSMAL5Yjs.Modules; exports.Notification = _chunkTBSMAL5Yjs.Notification; exports.NotificationFields = _chunkTBSMAL5Yjs.NotificationFields; exports.NotificationModule = _chunkTBSMAL5Yjs.NotificationModule; exports.NotificationService = _chunkTBSMAL5Yjs.NotificationService; exports.OAUTH_SCOPE_DISPLAY = _chunkTBSMAL5Yjs.OAUTH_SCOPE_DISPLAY; exports.OAuthClient = _chunkTBSMAL5Yjs.OAuthClient; exports.OAuthModule = _chunkTBSMAL5Yjs.OAuthModule; exports.OAuthService = _chunkTBSMAL5Yjs.OAuthService; exports.Passkey = _chunkTBSMAL5Yjs.Passkey; exports.PasskeyAuthenticationOptions = _chunkTBSMAL5Yjs.PasskeyAuthenticationOptions; exports.PasskeyAuthenticationOptionsModule = _chunkTBSMAL5Yjs.PasskeyAuthenticationOptionsModule; exports.PasskeyModule = _chunkTBSMAL5Yjs.PasskeyModule; exports.PasskeyRegistrationOptions = _chunkTBSMAL5Yjs.PasskeyRegistrationOptions; exports.PasskeyRegistrationOptionsModule = _chunkTBSMAL5Yjs.PasskeyRegistrationOptionsModule; exports.PasskeyRegistrationVerify = _chunkTBSMAL5Yjs.PasskeyRegistrationVerify; exports.PasskeyRegistrationVerifyModule = _chunkTBSMAL5Yjs.PasskeyRegistrationVerifyModule; exports.PasskeyRename = _chunkTBSMAL5Yjs.PasskeyRename; exports.PasskeyRenameModule = _chunkTBSMAL5Yjs.PasskeyRenameModule; exports.PasskeyVerifyLogin = _chunkTBSMAL5Yjs.PasskeyVerifyLogin; exports.PasskeyVerifyLoginModule = _chunkTBSMAL5Yjs.PasskeyVerifyLoginModule; exports.PaymentMethod = _chunkTBSMAL5Yjs.PaymentMethod; exports.PermissionMapping = _chunkTBSMAL5Yjs.PermissionMapping; exports.PermissionMappingModule = _chunkTBSMAL5Yjs.PermissionMappingModule; exports.Push = _chunkTBSMAL5Yjs.Push; exports.PushModule = _chunkTBSMAL5Yjs.PushModule; exports.PushService = _chunkTBSMAL5Yjs.PushService; exports.RbacMatrixModel = _chunkTBSMAL5Yjs.RbacMatrixModel; exports.RbacMatrixModule = _chunkTBSMAL5Yjs.RbacMatrixModule; exports.RbacService = _chunkODH2LYWCjs.RbacService; exports.ReferralModule = _chunkTBSMAL5Yjs.ReferralModule; exports.ReferralService = _chunkTBSMAL5Yjs.ReferralService; exports.ReferralStats = _chunkTBSMAL5Yjs.ReferralStats; exports.ReferralStatsModule = _chunkTBSMAL5Yjs.ReferralStatsModule; exports.RehydrationFactory = _chunkTBSMAL5Yjs.RehydrationFactory; exports.Role = _chunkTBSMAL5Yjs.Role; exports.RoleFields = _chunkTBSMAL5Yjs.RoleFields; exports.RoleModule = _chunkTBSMAL5Yjs.RoleModule; exports.RoleService = _chunkTBSMAL5Yjs.RoleService; exports.S3 = _chunkTBSMAL5Yjs.S3; exports.S3Module = _chunkTBSMAL5Yjs.S3Module; exports.S3Service = _chunkTBSMAL5Yjs.S3Service; exports.StripeCustomer = _chunkTBSMAL5Yjs.StripeCustomer; exports.StripeCustomerModule = _chunkTBSMAL5Yjs.StripeCustomerModule; exports.StripeCustomerService = _chunkTBSMAL5Yjs.StripeCustomerService; exports.StripeInvoice = _chunkTBSMAL5Yjs.StripeInvoice; exports.StripeInvoiceModule = _chunkTBSMAL5Yjs.StripeInvoiceModule; exports.StripeInvoiceService = _chunkTBSMAL5Yjs.StripeInvoiceService; exports.StripePaymentMethodModule = _chunkTBSMAL5Yjs.StripePaymentMethodModule; exports.StripePrice = _chunkTBSMAL5Yjs.StripePrice; exports.StripePriceFields = _chunkTBSMAL5Yjs.StripePriceFields; exports.StripePriceModule = _chunkTBSMAL5Yjs.StripePriceModule; exports.StripePriceService = _chunkTBSMAL5Yjs.StripePriceService; exports.StripeProduct = _chunkTBSMAL5Yjs.StripeProduct; exports.StripeProductFields = _chunkTBSMAL5Yjs.StripeProductFields; exports.StripeProductModule = _chunkTBSMAL5Yjs.StripeProductModule; exports.StripeProductService = _chunkTBSMAL5Yjs.StripeProductService; exports.StripePromotionCode = _chunkTBSMAL5Yjs.StripePromotionCode; exports.StripePromotionCodeModule = _chunkTBSMAL5Yjs.StripePromotionCodeModule; exports.StripePromotionCodeService = _chunkTBSMAL5Yjs.StripePromotionCodeService; exports.StripeSubscription = _chunkTBSMAL5Yjs.StripeSubscription; exports.StripeSubscriptionModule = _chunkTBSMAL5Yjs.StripeSubscriptionModule; exports.StripeSubscriptionService = _chunkTBSMAL5Yjs.StripeSubscriptionService; exports.StripeUsage = _chunkTBSMAL5Yjs.StripeUsage; exports.StripeUsageModule = _chunkTBSMAL5Yjs.StripeUsageModule; exports.StripeUsageService = _chunkTBSMAL5Yjs.StripeUsageService; exports.SubscriptionStatus = _chunkTBSMAL5Yjs.SubscriptionStatus; exports.TableOptions = _chunkTBSMAL5Yjs.TableOptions; exports.TokenUsageAdminBreakdownModule = _chunkTBSMAL5Yjs.TokenUsageAdminBreakdownModule; exports.TokenUsageAdminSummaryModule = _chunkTBSMAL5Yjs.TokenUsageAdminSummaryModule; exports.TokenUsageAdminTimelineModule = _chunkTBSMAL5Yjs.TokenUsageAdminTimelineModule; exports.TotpAuthenticator = _chunkTBSMAL5Yjs.TotpAuthenticator; exports.TotpAuthenticatorModule = _chunkTBSMAL5Yjs.TotpAuthenticatorModule; exports.TotpSetup = _chunkTBSMAL5Yjs.TotpSetup; exports.TotpSetupModule = _chunkTBSMAL5Yjs.TotpSetupModule; exports.TotpVerify = _chunkTBSMAL5Yjs.TotpVerify; exports.TotpVerifyLogin = _chunkTBSMAL5Yjs.TotpVerifyLogin; exports.TotpVerifyLoginModule = _chunkTBSMAL5Yjs.TotpVerifyLoginModule; exports.TotpVerifyModule = _chunkTBSMAL5Yjs.TotpVerifyModule; exports.TwoFactorChallenge = _chunkTBSMAL5Yjs.TwoFactorChallenge; exports.TwoFactorChallengeModule = _chunkTBSMAL5Yjs.TwoFactorChallengeModule; exports.TwoFactorEnable = _chunkTBSMAL5Yjs.TwoFactorEnable; exports.TwoFactorEnableModule = _chunkTBSMAL5Yjs.TwoFactorEnableModule; exports.TwoFactorService = _chunkTBSMAL5Yjs.TwoFactorService; exports.TwoFactorStatus = _chunkTBSMAL5Yjs.TwoFactorStatus; exports.TwoFactorStatusModule = _chunkTBSMAL5Yjs.TwoFactorStatusModule; exports.User = _chunkTBSMAL5Yjs.User; exports.UserFields = _chunkTBSMAL5Yjs.UserFields; exports.UserModule = _chunkTBSMAL5Yjs.UserModule; exports.UserService = _chunkTBSMAL5Yjs.UserService; exports.VIEWPORT_COOKIE_NAME = _chunkTBSMAL5Yjs.VIEWPORT_COOKIE_NAME; exports.Waitlist = _chunkTBSMAL5Yjs.Waitlist; exports.WaitlistModule = _chunkTBSMAL5Yjs.WaitlistModule; exports.WaitlistService = _chunkTBSMAL5Yjs.WaitlistService; exports.WaitlistStats = _chunkTBSMAL5Yjs.WaitlistStats; exports.WaitlistStatsModule = _chunkTBSMAL5Yjs.WaitlistStatsModule; exports.checkPermissions = _chunkTBSMAL5Yjs.checkPermissions; exports.checkPermissionsFromServer = _chunkTBSMAL5Yjs.checkPermissionsFromServer; exports.clearLastApiMeta = _chunkTBSMAL5Yjs.clearLastApiMeta; exports.clearLastApiTotal = _chunkTBSMAL5Yjs.clearLastApiTotal; exports.cn = _chunkTBSMAL5Yjs.cn; exports.composeRefs = _chunkTBSMAL5Yjs.composeRefs; exports.configureAuth = _chunkTBSMAL5Yjs.configureAuth; exports.configureI18n = _chunkODH2LYWCjs.configureI18n; exports.configureJsonApi = _chunkODH2LYWCjs.configureJsonApi; exports.configureLogin = _chunkODH2LYWCjs.configureLogin; exports.configureReferral = _chunkODH2LYWCjs.configureReferral; exports.configureRoles = _chunkODH2LYWCjs.configureRoles; exports.configureTokenUsage = _chunkTBSMAL5Yjs.configureTokenUsage; exports.configureWaitlist = _chunkODH2LYWCjs.configureWaitlist; exports.createJsonApiInclusion = _chunkTBSMAL5Yjs.createJsonApiInclusion; exports.dismissToast = _chunkTBSMAL5Yjs.dismissToast; exports.entityObjectSchema = _chunkTBSMAL5Yjs.entityObjectSchema; exports.exists = _chunkTBSMAL5Yjs.exists; exports.formatCodiceFiscale = _chunkTBSMAL5Yjs.formatCodiceFiscale; exports.formatDate = _chunkTBSMAL5Yjs.formatDate; exports.formatLocalDate = _chunkTBSMAL5Yjs.formatLocalDate; exports.formatPartitaIva = _chunkTBSMAL5Yjs.formatPartitaIva; exports.getApiUrl = _chunkODH2LYWCjs.getApiUrl; exports.getAppUrl = _chunkODH2LYWCjs.getAppUrl; exports.getBootstrapper = _chunkLU7DJ4QFjs.getBootstrapper; exports.getClientGlobalErrorHandler = _chunkTBSMAL5Yjs.getClientGlobalErrorHandler; exports.getGlobalErrorHandler = _chunkTBSMAL5Yjs.getGlobalErrorHandler; exports.getIcon = _chunkTBSMAL5Yjs.getIcon; exports.getIconByModule = _chunkTBSMAL5Yjs.getIconByModule; exports.getIconByModuleName = _chunkTBSMAL5Yjs.getIconByModuleName; exports.getInitials = _chunkTBSMAL5Yjs.getInitials; exports.getLastApiMeta = _chunkTBSMAL5Yjs.getLastApiMeta; exports.getLastApiTotal = _chunkTBSMAL5Yjs.getLastApiTotal; exports.getLucideIcon = _chunkTBSMAL5Yjs.getLucideIcon; exports.getLucideIconByModule = _chunkTBSMAL5Yjs.getLucideIconByModule; exports.getLucideIconByModuleName = _chunkTBSMAL5Yjs.getLucideIconByModuleName; exports.getPublicApiUrl = _chunkODH2LYWCjs.getPublicApiUrl; exports.getReferralConfig = _chunkODH2LYWCjs.getReferralConfig; exports.getRoleId = _chunkODH2LYWCjs.getRoleId; exports.getStripePublishableKey = _chunkODH2LYWCjs.getStripePublishableKey; exports.getTableComponents = _chunkTBSMAL5Yjs.getTableComponents; exports.getTableOptions = _chunkTBSMAL5Yjs.getTableOptions; exports.getTokenHandler = _chunkTBSMAL5Yjs.getTokenHandler; exports.getTokenUsageCurrency = _chunkTBSMAL5Yjs.getTokenUsageCurrency; exports.getTrackablePages = _chunkODH2LYWCjs.getTrackablePages; exports.getValueFromPath = _chunkTBSMAL5Yjs.getValueFromPath; exports.getWaitlistConfig = _chunkODH2LYWCjs.getWaitlistConfig; exports.handbookPageContent = _chunkTBSMAL5Yjs.handbookPageContent; exports.handbookPageSummary = _chunkTBSMAL5Yjs.handbookPageSummary; exports.handbookPageTitle = _chunkTBSMAL5Yjs.handbookPageTitle; exports.handbookSectionSummary = _chunkTBSMAL5Yjs.handbookSectionSummary; exports.handbookSectionTitle = _chunkTBSMAL5Yjs.handbookSectionTitle; exports.hasBootstrapper = _chunkLU7DJ4QFjs.hasBootstrapper; exports.isReferralEnabled = _chunkODH2LYWCjs.isReferralEnabled; exports.isRemoteImageSrc = _chunkTBSMAL5Yjs.isRemoteImageSrc; exports.isRolesConfigured = _chunkODH2LYWCjs.isRolesConfigured; exports.rehydrate = _chunkTBSMAL5Yjs.rehydrate; exports.rehydrateList = _chunkTBSMAL5Yjs.rehydrateList; exports.resetBootstrapStore = _chunkLU7DJ4QFjs.resetBootstrapStore; exports.setBootstrapper = _chunkLU7DJ4QFjs.setBootstrapper; exports.setClientGlobalErrorHandler = _chunkTBSMAL5Yjs.setClientGlobalErrorHandler; exports.setGlobalErrorHandler = _chunkTBSMAL5Yjs.setGlobalErrorHandler; exports.showCustomToast = _chunkTBSMAL5Yjs.showCustomToast; exports.showError = _chunkTBSMAL5Yjs.showError; exports.showToast = _chunkTBSMAL5Yjs.showToast; exports.tokenUsageModules = _chunkTBSMAL5Yjs.tokenUsageModules; exports.translateData = _chunkLU7DJ4QFjs.translateData; exports.translateResponse = _chunkLU7DJ4QFjs.translateResponse; exports.tryBootstrap = _chunkLU7DJ4QFjs.tryBootstrap; exports.useComposedRefs = _chunkTBSMAL5Yjs.useComposedRefs; exports.useIsMobile = _chunkTBSMAL5Yjs.useIsMobile; exports.userObjectSchema = _chunkTBSMAL5Yjs.userObjectSchema; exports.validateCodiceFiscale = _chunkTBSMAL5Yjs.validateCodiceFiscale; exports.validateItalianTaxCode = _chunkTBSMAL5Yjs.validateItalianTaxCode; exports.validatePartitaIva = _chunkTBSMAL5Yjs.validatePartitaIva;
519
519
  //# sourceMappingURL=index.js.map
package/dist/index.mjs CHANGED
@@ -18,7 +18,7 @@ import {
18
18
  getWaitlistConfig,
19
19
  isReferralEnabled,
20
20
  isRolesConfigured
21
- } from "./chunk-VZKJIAND.mjs";
21
+ } from "./chunk-IALPADOD.mjs";
22
22
  import {
23
23
  AVAILABLE_OAUTH_SCOPES,
24
24
  AbstractApiData,
@@ -244,7 +244,7 @@ import {
244
244
  validateCodiceFiscale,
245
245
  validateItalianTaxCode,
246
246
  validatePartitaIva
247
- } from "./chunk-OSFYCSTW.mjs";
247
+ } from "./chunk-YCFPSXLK.mjs";
248
248
  import "./chunk-AUXK7QSA.mjs";
249
249
  import "./chunk-C7C7VY4F.mjs";
250
250
  import {
@@ -1,4 +1,4 @@
1
- import { A as AbstractService, N as NextRef, P as PreviousRef } from './AbstractService-Cew0PD0L.js';
1
+ import { A as AbstractService, N as NextRef, P as PreviousRef } from './AbstractService-V3VGQMhL.js';
2
2
  import { F as FeatureInterface } from './feature.interface-BO25VLlx.js';
3
3
  import { e as RoleInterface, U as UserInterface, f as UserInput, c as CompanyInterface, b as CompanyInput, C as ContentInterface, N as NotificationInterface } from './notification.interface-CjzV_KII.js';
4
4
  import { A as ApiDataInterface, J as JsonApiHydratedDataInterface } from './ApiDataInterface-BcZeXy5X.js';
@@ -1,4 +1,4 @@
1
- import { A as AbstractService, N as NextRef, P as PreviousRef } from './AbstractService-B0T7h8fX.mjs';
1
+ import { A as AbstractService, N as NextRef, P as PreviousRef } from './AbstractService-Ckm2X5fW.mjs';
2
2
  import { F as FeatureInterface } from './feature.interface-CXb1-vNq.mjs';
3
3
  import { e as RoleInterface, U as UserInterface, f as UserInput, c as CompanyInterface, b as CompanyInput, C as ContentInterface, N as NotificationInterface } from './notification.interface-MnRt1Tjm.mjs';
4
4
  import { A as ApiDataInterface, J as JsonApiHydratedDataInterface } from './ApiDataInterface-BcZeXy5X.mjs';
@@ -2,10 +2,10 @@ import { A as ApiData } from '../ApiData-DPKNfY-9.mjs';
2
2
  import { M as ModuleWithPermissions, A as Action } from '../types-Bq_UA8Lg.mjs';
3
3
  import { A as ApiRequestDataTypeInterface } from '../ApiRequestDataTypeInterface-CYEcRUrh.mjs';
4
4
  import { A as ApiResponseInterface } from '../ApiResponseInterface-rsXRL_Hn.mjs';
5
- export { A as ServerAuthService, C as ServerCompanyService, a as ServerContentService, F as ServerFeatureService, N as ServerNotificationService, P as ServerPushService, R as ServerRoleService, S as ServerS3Service, U as ServerUserService } from '../s3.service-C0Yq2Sx3.mjs';
5
+ export { A as ServerAuthService, C as ServerCompanyService, a as ServerContentService, F as ServerFeatureService, N as ServerNotificationService, P as ServerPushService, R as ServerRoleService, S as ServerS3Service, U as ServerUserService } from '../s3.service-DaRFLnrX.mjs';
6
6
  import 'lucide-react';
7
7
  import '../ApiDataInterface-BcZeXy5X.mjs';
8
- import '../AbstractService-B0T7h8fX.mjs';
8
+ import '../AbstractService-Ckm2X5fW.mjs';
9
9
  import '../feature.interface-CXb1-vNq.mjs';
10
10
  import '../notification.interface-MnRt1Tjm.mjs';
11
11
  import '../auth.interface-dR2-6gPM.mjs';
@@ -2,10 +2,10 @@ import { A as ApiData } from '../ApiData-DPKNfY-9.js';
2
2
  import { M as ModuleWithPermissions, A as Action } from '../types-bsm8Fp55.js';
3
3
  import { A as ApiRequestDataTypeInterface } from '../ApiRequestDataTypeInterface-CYEcRUrh.js';
4
4
  import { A as ApiResponseInterface } from '../ApiResponseInterface-CWLvSCvS.js';
5
- export { A as ServerAuthService, C as ServerCompanyService, a as ServerContentService, F as ServerFeatureService, N as ServerNotificationService, P as ServerPushService, R as ServerRoleService, S as ServerS3Service, U as ServerUserService } from '../s3.service-CUGarZs3.js';
5
+ export { A as ServerAuthService, C as ServerCompanyService, a as ServerContentService, F as ServerFeatureService, N as ServerNotificationService, P as ServerPushService, R as ServerRoleService, S as ServerS3Service, U as ServerUserService } from '../s3.service-DJHqEZAp.js';
6
6
  import 'lucide-react';
7
7
  import '../ApiDataInterface-BcZeXy5X.js';
8
- import '../AbstractService-Cew0PD0L.js';
8
+ import '../AbstractService-V3VGQMhL.js';
9
9
  import '../feature.interface-BO25VLlx.js';
10
10
  import '../notification.interface-CjzV_KII.js';
11
11
  import '../auth.interface-BC1jp_ni.js';
@@ -15,7 +15,7 @@ var _chunkIOLU4ASDjs = require('../chunk-IOLU4ASD.js');
15
15
 
16
16
 
17
17
 
18
- var _chunkIB7DTXWGjs = require('../chunk-IB7DTXWG.js');
18
+ var _chunkTBSMAL5Yjs = require('../chunk-TBSMAL5Y.js');
19
19
  require('../chunk-LXKSUWAV.js');
20
20
  require('../chunk-IBS6NI7D.js');
21
21
 
@@ -87,7 +87,7 @@ var ServerSession = class {
87
87
  if (!rawModules) return false;
88
88
  const modules = JSON.parse(_pako.ungzip.call(void 0, Buffer.from(rawModules, "base64"), { toText: true }));
89
89
  const selectedModule = modules.find((module) => module.id === params.module.moduleId);
90
- return _chunkIB7DTXWGjs.checkPermissionsFromServer.call(void 0, {
90
+ return _chunkTBSMAL5Yjs.checkPermissionsFromServer.call(void 0, {
91
91
  module: params.module,
92
92
  action: params.action,
93
93
  data: params.data,
@@ -297,5 +297,5 @@ _chunk7QVYU63Ejs.__name.call(void 0, ServerJsonApiDelete, "ServerJsonApiDelete")
297
297
 
298
298
 
299
299
 
300
- exports.ServerAuthService = _chunkIB7DTXWGjs.AuthService; exports.ServerCompanyService = _chunkIB7DTXWGjs.CompanyService; exports.ServerContentService = _chunkIB7DTXWGjs.ContentService; exports.ServerFeatureService = _chunkIB7DTXWGjs.FeatureService; exports.ServerJsonApiDelete = ServerJsonApiDelete; exports.ServerJsonApiGet = ServerJsonApiGet; exports.ServerJsonApiPatch = ServerJsonApiPatch; exports.ServerJsonApiPost = ServerJsonApiPost; exports.ServerJsonApiPut = ServerJsonApiPut; exports.ServerNotificationService = _chunkIB7DTXWGjs.NotificationService; exports.ServerPushService = _chunkIB7DTXWGjs.PushService; exports.ServerRoleService = _chunkIB7DTXWGjs.RoleService; exports.ServerS3Service = _chunkIB7DTXWGjs.S3Service; exports.ServerSession = ServerSession; exports.ServerUserService = _chunkIB7DTXWGjs.UserService; exports.configureServerJsonApi = configureServerJsonApi; exports.getServerApiUrl = getServerApiUrl; exports.getServerAppUrl = getServerAppUrl; exports.getServerToken = _chunkYUO55Q5Ajs.getServerToken; exports.getServerTrackablePages = getServerTrackablePages; exports.invalidateCacheTag = invalidateCacheTag; exports.invalidateCacheTags = invalidateCacheTags; exports.serverRequest = _chunkIOLU4ASDjs.serverRequest;
300
+ exports.ServerAuthService = _chunkTBSMAL5Yjs.AuthService; exports.ServerCompanyService = _chunkTBSMAL5Yjs.CompanyService; exports.ServerContentService = _chunkTBSMAL5Yjs.ContentService; exports.ServerFeatureService = _chunkTBSMAL5Yjs.FeatureService; exports.ServerJsonApiDelete = ServerJsonApiDelete; exports.ServerJsonApiGet = ServerJsonApiGet; exports.ServerJsonApiPatch = ServerJsonApiPatch; exports.ServerJsonApiPost = ServerJsonApiPost; exports.ServerJsonApiPut = ServerJsonApiPut; exports.ServerNotificationService = _chunkTBSMAL5Yjs.NotificationService; exports.ServerPushService = _chunkTBSMAL5Yjs.PushService; exports.ServerRoleService = _chunkTBSMAL5Yjs.RoleService; exports.ServerS3Service = _chunkTBSMAL5Yjs.S3Service; exports.ServerSession = ServerSession; exports.ServerUserService = _chunkTBSMAL5Yjs.UserService; exports.configureServerJsonApi = configureServerJsonApi; exports.getServerApiUrl = getServerApiUrl; exports.getServerAppUrl = getServerAppUrl; exports.getServerToken = _chunkYUO55Q5Ajs.getServerToken; exports.getServerTrackablePages = getServerTrackablePages; exports.invalidateCacheTag = invalidateCacheTag; exports.invalidateCacheTags = invalidateCacheTags; exports.serverRequest = _chunkIOLU4ASDjs.serverRequest;
301
301
  //# sourceMappingURL=index.js.map
@@ -15,7 +15,7 @@ import {
15
15
  S3Service,
16
16
  UserService,
17
17
  checkPermissionsFromServer
18
- } from "../chunk-OSFYCSTW.mjs";
18
+ } from "../chunk-YCFPSXLK.mjs";
19
19
  import "../chunk-AUXK7QSA.mjs";
20
20
  import "../chunk-C7C7VY4F.mjs";
21
21
  import {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carlonicora/nextjs-jsonapi",
3
- "version": "3.15.1",
3
+ "version": "3.16.0",
4
4
  "description": "Next.js JSON:API client with server/client support and caching",
5
5
  "author": "Carlo Nicora",
6
6
  "license": "GPL-3.0-or-later",
@@ -26,15 +26,7 @@ import {
26
26
  import { en as aiEn } from "@blocknote/xl-ai/locales";
27
27
  import "@blocknote/xl-ai/style.css";
28
28
  import { DefaultChatTransport } from "ai";
29
- import {
30
- CheckIcon,
31
- LanguagesIcon,
32
- LayoutTemplateIcon,
33
- SparklesIcon,
34
- TypeIcon,
35
- WandSparklesIcon,
36
- XIcon,
37
- } from "lucide-react";
29
+ import { CheckIcon, LanguagesIcon, SparklesIcon, TypeIcon, WandSparklesIcon, XIcon } from "lucide-react";
38
30
  import { useTranslations } from "next-intl";
39
31
  import { useTheme } from "next-themes";
40
32
  import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
@@ -48,6 +40,7 @@ import { useI18nLocale } from "../../i18n/config";
48
40
  import { Button } from "../../shadcnui";
49
41
  import { BlockNoteDiffUtil, BlockNoteWordDiffRendererUtil, cn } from "../../utils";
50
42
  import { errorToast } from "../errors";
43
+ import { BlockNoteAiGenerateAction, generateActionItems } from "./BlockNoteEditorAiActions";
51
44
  import { BlockNoteEditorFormattingToolbar } from "./BlockNoteEditorFormattingToolbar";
52
45
  import { BlockNoteEditorMentionHoverCard } from "./BlockNoteEditorMentionHoverCard";
53
46
  import {
@@ -57,10 +50,21 @@ import {
57
50
  } from "./BlockNoteEditorMentionInlineContent";
58
51
  import { BlockNoteEditorMentionSuggestionMenu } from "./BlockNoteEditorSuggestionMenuController";
59
52
 
53
+ /**
54
+ * Lets app code trigger a whole-document AI action from OUTSIDE the editor
55
+ * (a visible button next to the field label, for instance) without owning the
56
+ * BlockNote instance. Delivered through a plain prop, not a React `ref`:
57
+ * `BlockNoteEditorContainer` is a `next/dynamic` import wrapped in
58
+ * `React.memo`, and refs do not pass through that reliably.
59
+ */
60
+ export type BlockNoteAiHandle = { invokeAi: (type: BlockNoteAiGenerateAction) => void };
61
+
60
62
  export type BlockNoteAiConfig = {
61
63
  endpoint: string;
62
64
  entityType: string;
63
65
  entityId?: string;
66
+ /** Whole-document actions shown when nothing is selected. Default: ["fill-template"]. */
67
+ actions?: BlockNoteAiGenerateAction[];
64
68
  };
65
69
 
66
70
  export type BlockNoteEditorProps = {
@@ -98,6 +102,10 @@ export type BlockNoteEditorProps = {
98
102
  // false, no AI extension is created, the AI toolbar button and AI slash
99
103
  // items are hidden, and the editor falls back to the plain slash menu.
100
104
  aiEnabled?: boolean;
105
+ // Filled with a {@link BlockNoteAiHandle} while the editor is mounted and AI
106
+ // is on, so a control outside the editor can run a whole-document AI action.
107
+ // Cleared on unmount and whenever AI is unavailable.
108
+ aiHandleRef?: React.MutableRefObject<BlockNoteAiHandle | null>;
101
109
  };
102
110
 
103
111
  function isBlockEmpty(block: any): boolean {
@@ -195,7 +203,7 @@ const createDiffActionsInlineContentSpec = (
195
203
  * The backend dispatcher reads `body.type` and routes to a per-type handler
196
204
  * with its own canonical prompt. NO prompt text lives in this file.
197
205
  */
198
- function NarrAIMenu() {
206
+ function NarrAIMenu({ actions }: { actions?: BlockNoteAiGenerateAction[] }) {
199
207
  const editor = useBlockNoteEditor();
200
208
  const ai = useExtension(AIExtension);
201
209
  const dict = useAIDictionary();
@@ -250,32 +258,26 @@ function NarrAIMenu() {
250
258
  // free-form (or pending-type) prompt instead of being hijacked.
251
259
  if (hasTyped) return [];
252
260
 
253
- // Generate from Template is shown in BOTH contexts (with and without
254
- // selection) because it operates on the whole document — it ignores any
255
- // active selection and runs the per-section template-fill flow. Listed
256
- // first so it's the default-highlighted item.
257
- const generateFromTemplate = {
258
- key: "generate_from_template",
259
- title: "Generate from Template",
260
- aliases: ["generate", "template", "fill"],
261
- icon: <LayoutTemplateIcon size={18} />,
262
- size: "small" as const,
263
- onItemClick: () => {
264
- void ai.invokeAI({
265
- userPrompt: "fill-template",
266
- useSelection: false,
267
- chatRequestOptions: { body: { type: "fill-template" } },
268
- });
269
- },
261
+ const invokeGenerate = (type: BlockNoteAiGenerateAction) => {
262
+ void ai.invokeAI({
263
+ userPrompt: type,
264
+ useSelection: false,
265
+ chatRequestOptions: { body: { type } },
266
+ });
270
267
  };
268
+ // Whole-document items are shown in BOTH contexts (with and without
269
+ // selection) because they operate on the whole document — they ignore any
270
+ // active selection. Listed first so the first one is the
271
+ // default-highlighted item.
272
+ const generateItems = generateActionItems(actions, invokeGenerate);
271
273
 
272
274
  if (hasSelection) {
273
- // Selection-edit items + the always-available Generate from Template.
275
+ // Selection-edit items + the always-available whole-document items.
274
276
  // Each selection item invokes ai.invokeAI with chatRequestOptions
275
277
  // carrying the `type` body field. The userPrompt is a short tag — the
276
278
  // backend ignores it and uses the canonical prompt for the type instead.
277
279
  return [
278
- generateFromTemplate,
280
+ ...generateItems,
279
281
  {
280
282
  key: "improve_writing",
281
283
  title: "Improve Writing",
@@ -341,11 +343,11 @@ function NarrAIMenu() {
341
343
  ];
342
344
  }
343
345
 
344
- // No selection (the /ai slash menu path): just Generate from Template.
346
+ // No selection (the /ai slash menu path): just the whole-document items.
345
347
  // Free-form typing still works — once the user types, items hide and
346
348
  // Enter submits with no type (backend defaults to fill-template).
347
- return [generateFromTemplate];
348
- }, [editor, status, prompt, ai, expandSelectionToBlocks]);
349
+ return generateItems;
350
+ }, [editor, status, prompt, ai, expandSelectionToBlocks, actions]);
349
351
 
350
352
  const handleSubmit = useCallback(
351
353
  async (userPrompt: string) => {
@@ -414,6 +416,7 @@ export default function BlockNoteEditor({
414
416
  aiConfig,
415
417
  stretch,
416
418
  aiEnabled = true,
419
+ aiHandleRef,
417
420
  }: BlockNoteEditorProps): React.JSX.Element {
418
421
  const t = useTranslations();
419
422
  const locale = useI18nLocale();
@@ -670,6 +673,40 @@ export default function BlockNoteEditor({
670
673
  ),
671
674
  );
672
675
 
676
+ // Publish the outside-the-editor AI trigger. `editor.getExtension(AIExtension)`
677
+ // is BlockNote 0.54's documented lookup by extension factory (core's
678
+ // `getExtension` resolves a function argument through `extensionFactories`),
679
+ // so the instance is reachable without the `useExtension` hook that only
680
+ // works inside the BlockNote context (NarrAIMenu). The menu MUST be opened
681
+ // first: `invokeAI` routes every status update through `setAIResponseStatus`,
682
+ // which is a no-op while `aiMenuState === "closed"` — without the open menu
683
+ // the request runs but the accept / reject UI never appears.
684
+ useEffect(() => {
685
+ if (!aiHandleRef) return;
686
+ if (!aiConfig || !aiEnabled) {
687
+ aiHandleRef.current = null;
688
+ return;
689
+ }
690
+ aiHandleRef.current = {
691
+ invokeAi: (type: BlockNoteAiGenerateAction) => {
692
+ const ai = editor.getExtension(AIExtension);
693
+ if (!ai) return;
694
+ editor.focus();
695
+ const blocks = editor.document;
696
+ const anchor = blocks?.[blocks.length - 1];
697
+ if (anchor?.id) ai.openAIMenuAtBlock(anchor.id);
698
+ void ai.invokeAI({
699
+ userPrompt: type,
700
+ useSelection: false,
701
+ chatRequestOptions: { body: { type } },
702
+ });
703
+ },
704
+ };
705
+ return () => {
706
+ aiHandleRef.current = null;
707
+ };
708
+ }, [aiHandleRef, aiConfig, aiEnabled, editor]);
709
+
673
710
  // Tracks the hash of the document the editor itself just emitted via onChange.
674
711
  // The sync effect below uses it to skip replaceBlocks when the parent's
675
712
  // initialContent is just an echo of our own emission (form-controlled flow).
@@ -885,7 +922,7 @@ export default function BlockNoteEditor({
885
922
  }
886
923
  />
887
924
  )}
888
- {aiConfig && aiEnabled && <AIMenuController aiMenu={() => <NarrAIMenu />} />}
925
+ {aiConfig && aiEnabled && <AIMenuController aiMenu={() => <NarrAIMenu actions={aiConfig.actions} />} />}
889
926
  </BlockNoteView>
890
927
  </div>
891
928
  );
@@ -0,0 +1,49 @@
1
+ import { LayoutTemplateIcon, SparklesIcon } from "lucide-react";
2
+ import React from "react";
3
+
4
+ /**
5
+ * Whole-document AI actions an editor can offer in its AI menu when nothing
6
+ * is selected. Each maps to a backend `type` discriminator; NO prompt text
7
+ * lives here. Selection-edit actions (Improve, Fix spelling, …) are separate
8
+ * and always available.
9
+ */
10
+ export type BlockNoteAiGenerateAction = "fill-template" | "draft-impression";
11
+
12
+ export const DEFAULT_AI_GENERATE_ACTIONS: BlockNoteAiGenerateAction[] = ["fill-template"];
13
+
14
+ export type AiGenerateMenuItem = {
15
+ key: string;
16
+ title: string;
17
+ aliases: string[];
18
+ /** BlockNote's DefaultReactSuggestionItem types icon as an element, not ReactNode. */
19
+ icon: React.JSX.Element;
20
+ size: "small";
21
+ onItemClick: () => void;
22
+ };
23
+
24
+ const ITEMS: Record<BlockNoteAiGenerateAction, Omit<AiGenerateMenuItem, "onItemClick">> = {
25
+ "fill-template": {
26
+ key: "generate_from_template",
27
+ title: "Generate from Template",
28
+ aliases: ["generate", "template", "fill"],
29
+ icon: <LayoutTemplateIcon size={18} />,
30
+ size: "small",
31
+ },
32
+ "draft-impression": {
33
+ key: "suggest_impression",
34
+ title: "Suggest impression",
35
+ aliases: ["suggest", "impression"],
36
+ icon: <SparklesIcon size={18} />,
37
+ size: "small",
38
+ },
39
+ };
40
+
41
+ export function generateActionItems(
42
+ actions: BlockNoteAiGenerateAction[] | undefined,
43
+ invoke: (type: BlockNoteAiGenerateAction) => void,
44
+ ): AiGenerateMenuItem[] {
45
+ return (actions ?? DEFAULT_AI_GENERATE_ACTIONS).map((type) => ({
46
+ ...ITEMS[type],
47
+ onItemClick: () => invoke(type),
48
+ }));
49
+ }
@@ -0,0 +1,25 @@
1
+ import { describe, expect, it, vi } from "vitest";
2
+ import { DEFAULT_AI_GENERATE_ACTIONS, generateActionItems } from "../BlockNoteEditorAiActions";
3
+
4
+ describe("generateActionItems", () => {
5
+ it("defaults to Generate from Template only, so existing editors are unchanged", () => {
6
+ const items = generateActionItems(undefined, vi.fn());
7
+ expect(DEFAULT_AI_GENERATE_ACTIONS).toEqual(["fill-template"]);
8
+ expect(items.map((i) => i.key)).toEqual(["generate_from_template"]);
9
+ expect(items[0].title).toBe("Generate from Template");
10
+ });
11
+
12
+ it("offers Suggest impression when asked, and invokes with that type", () => {
13
+ const invoke = vi.fn();
14
+ const items = generateActionItems(["draft-impression"], invoke);
15
+ expect(items.map((i) => i.key)).toEqual(["suggest_impression"]);
16
+ expect(items[0].title).toBe("Suggest impression");
17
+ items[0].onItemClick();
18
+ expect(invoke).toHaveBeenCalledWith("draft-impression");
19
+ });
20
+
21
+ it("keeps the caller's order when both are requested", () => {
22
+ const items = generateActionItems(["draft-impression", "fill-template"], vi.fn());
23
+ expect(items.map((i) => i.key)).toEqual(["suggest_impression", "generate_from_template"]);
24
+ });
25
+ });
@@ -2,4 +2,5 @@ export * from "./BlockNoteEditorContainer";
2
2
  export * from "./BlockNoteEditorMentionHoverCard";
3
3
  export * from "./BlockNoteEditorMentionInlineContent";
4
4
  export * from "./BlockNoteEditorSuggestionMenuController";
5
- export type { BlockNoteAiConfig, BlockNoteEditorProps } from "./BlockNoteEditor";
5
+ export type { BlockNoteAiConfig, BlockNoteAiHandle, BlockNoteEditorProps } from "./BlockNoteEditor";
6
+ export type { BlockNoteAiGenerateAction } from "./BlockNoteEditorAiActions";
@@ -29,6 +29,8 @@ export function FormBlockNote({
29
29
  mentionNameResolver,
30
30
  onWarmMentions,
31
31
  aiConfig,
32
+ aiHandleRef,
33
+ headerAction,
32
34
  }: {
33
35
  form: any;
34
36
  id: string;
@@ -58,6 +60,10 @@ export function FormBlockNote({
58
60
  mentionNameResolver?: MentionNameResolver;
59
61
  onWarmMentions?: (blocks: any[]) => void;
60
62
  aiConfig?: import("../editors/BlockNoteEditor").BlockNoteAiConfig;
63
+ /** Filled by the editor so a control outside it can run an AI action. */
64
+ aiHandleRef?: React.MutableRefObject<import("../editors/BlockNoteEditor").BlockNoteAiHandle | null>;
65
+ /** Rendered on the label row, right-aligned — e.g. a "Suggest impression" button. */
66
+ headerAction?: React.ReactNode;
61
67
  }) {
62
68
  const initialContentRef = useRef<any>(null);
63
69
  const lastEditorContentRef = useRef<any>(undefined);
@@ -74,6 +80,7 @@ export function FormBlockNote({
74
80
  form={form}
75
81
  name={id}
76
82
  label={name}
83
+ labelAction={headerAction}
77
84
  isRequired={isRequired}
78
85
  description={description}
79
86
  testId={testId}
@@ -108,6 +115,7 @@ export function FormBlockNote({
108
115
  mentionNameResolver={mentionNameResolver}
109
116
  onWarmMentions={onWarmMentions}
110
117
  aiConfig={aiConfig}
118
+ aiHandleRef={aiHandleRef}
111
119
  stretch={stretch}
112
120
  className={cn(stretch && "min-h-0 flex-1")}
113
121
  />